From 07f6380fc673d24c8b76a961b8cc5719352c1a4c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pradel=20Le=CC=81o?= Date: Mon, 23 Sep 2019 21:32:07 +0200 Subject: [PATCH 001/146] Start to implement authenticator-otp logic --- packages/authenticator-otp/README.md | 3 + packages/authenticator-otp/__tests__/index.ts | 15 ++++ packages/authenticator-otp/package.json | 45 ++++++++++ packages/authenticator-otp/src/index.ts | 85 +++++++++++++++++++ packages/authenticator-otp/tsconfig.json | 9 ++ yarn.lock | 12 +++ 6 files changed, 169 insertions(+) create mode 100644 packages/authenticator-otp/README.md create mode 100644 packages/authenticator-otp/__tests__/index.ts create mode 100644 packages/authenticator-otp/package.json create mode 100644 packages/authenticator-otp/src/index.ts create mode 100644 packages/authenticator-otp/tsconfig.json diff --git a/packages/authenticator-otp/README.md b/packages/authenticator-otp/README.md new file mode 100644 index 000000000..620e3cee7 --- /dev/null +++ b/packages/authenticator-otp/README.md @@ -0,0 +1,3 @@ +# @accounts/authenticator-otp + +TODO diff --git a/packages/authenticator-otp/__tests__/index.ts b/packages/authenticator-otp/__tests__/index.ts new file mode 100644 index 000000000..acd93b272 --- /dev/null +++ b/packages/authenticator-otp/__tests__/index.ts @@ -0,0 +1,15 @@ +import { AuthenticatorOtp } from '../src'; + +const authenticatorOtp = new AuthenticatorOtp(); + +describe('AuthenticatorOtp', () => { + describe('associate', () => { + it('should generate a random secret', async () => { + const result = await authenticatorOtp.associate('userId', {}); + expect(result).toEqual({ + secret: expect.any(String), + otpauthUri: expect.any(String), + }); + }); + }); +}); diff --git a/packages/authenticator-otp/package.json b/packages/authenticator-otp/package.json new file mode 100644 index 000000000..a1990c559 --- /dev/null +++ b/packages/authenticator-otp/package.json @@ -0,0 +1,45 @@ +{ + "name": "@accounts/authenticator-otp", + "version": "0.19.0", + "description": "@accounts/authenticator-otp", + "main": "lib/index.js", + "typings": "lib/index.d.ts", + "publishConfig": { + "access": "public" + }, + "scripts": { + "clean": "rimraf lib", + "start": "tsc --watch", + "precompile": "yarn clean", + "compile": "tsc", + "prepublishOnly": "yarn compile", + "test": "yarn testonly", + "test-ci": "yarn lint && yarn coverage", + "testonly": "jest", + "test:watch": "jest --watch", + "coverage": "yarn testonly --coverage" + }, + "jest": { + "preset": "ts-jest" + }, + "repository": { + "type": "git", + "url": "https://github.com/accounts-js/accounts/tree/master/packages/authenticator-otp" + }, + "author": "Leo Pradel", + "license": "MIT", + "devDependencies": { + "@accounts/server": "^0.19.0", + "@types/jest": "24.0.18", + "@types/node": "12.7.4", + "jest": "24.9.0", + "rimraf": "3.0.0" + }, + "dependencies": { + "@accounts/types": "^0.19.0", + "otplib": "11.0.1" + }, + "peerDependencies": { + "@accounts/server": "^0.19.0" + } +} diff --git a/packages/authenticator-otp/src/index.ts b/packages/authenticator-otp/src/index.ts new file mode 100644 index 000000000..8cc876a01 --- /dev/null +++ b/packages/authenticator-otp/src/index.ts @@ -0,0 +1,85 @@ +import { DatabaseInterface } from '@accounts/types'; +import { AccountsServer } from '@accounts/server'; +import * as otplib from 'otplib'; + +// DB object +interface Authenticator { + id: string; + type: string; + secret: string; +} + +interface AuthenticatorService { + server: any; + serviceName: string; + setStore(store: DatabaseInterface): void; + associate(userId: string, params: any): Promise; + authenticate(authenticatorId: string, params: any): Promise; +} + +export interface AuthenticatorOtpOptions { + /** + * Two factor app name that will be displayed inside the user authenticator app. + */ + appName?: string; + + /** + * Two factor user name that will be displayed inside the user authenticator app. + * Will be called every time a user register a new device. + */ + userName?: (userId: string) => Promise | string; +} + +const defaultOptions = { + appName: 'accounts-js', +}; + +export class AuthenticatorOtp implements AuthenticatorService { + public serviceName = 'otp'; + public server!: AccountsServer; + + private options: AuthenticatorOtpOptions & typeof defaultOptions; + private db!: DatabaseInterface; + + constructor(options: AuthenticatorOtpOptions = {}) { + this.options = { ...defaultOptions, ...options }; + } + + public setStore(store: DatabaseInterface) { + this.db = store; + } + + /** + * Start the association of a new OTP device + */ + public async associate(userId: string, params: any) { + const secret = otplib.authenticator.generateSecret(); + const userName = this.options.userName ? await this.options.userName(userId) : userId; + const otpauthUri = otplib.authenticator.keyuri(userName, this.options.appName, secret); + // TODO generate some recovery codes? + + // TODO let's not use service for that but a separate mongo collection + await this.db.addAuthenticator(userId, this.serviceName, { secret }); + + // TODO also return the id + return { + id: 'TODO', + secret, + otpauthUri, + }; + } + + public async authenticate(authenticatorId: string, { code }: { code?: string }) { + if (!code) { + throw new Error('Code required'); + } + + // Should this be in accounts-js server before calling authenticate? + const authenticator = (await this.db.getAuthenticator(authenticatorId)) as Authenticator | null; + if (!authenticator || authenticator.type !== this.serviceName) { + throw new Error('Authenticator not found'); + } + + return otplib.authenticator.check(code, authenticator.secret); + } +} diff --git a/packages/authenticator-otp/tsconfig.json b/packages/authenticator-otp/tsconfig.json new file mode 100644 index 000000000..4ec56d0f8 --- /dev/null +++ b/packages/authenticator-otp/tsconfig.json @@ -0,0 +1,9 @@ +{ + "extends": "../../tsconfig", + "compilerOptions": { + "rootDir": "./src", + "outDir": "./lib", + "importHelpers": true + }, + "exclude": ["node_modules", "__tests__", "lib"] +} diff --git a/yarn.lock b/yarn.lock index 9b9519cad..0b3a17ec6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -11047,6 +11047,13 @@ osenv@^0.1.4, osenv@^0.1.5: os-homedir "^1.0.0" os-tmpdir "^1.0.0" +otplib@11.0.1: + version "11.0.1" + resolved "https://registry.yarnpkg.com/otplib/-/otplib-11.0.1.tgz#7d64aa87029f07c99c7f96819fb10cdb67dea886" + integrity sha512-oi57teljNyWTC/JqJztHOtSGeFNDiDh5C1myd+faocUtFAX27Sm1mbx69kpEJ8/JqrblI3kAm4Pqd6tZJoOIBQ== + dependencies: + thirty-two "1.0.2" + p-defer@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c" @@ -14452,6 +14459,11 @@ thenify-all@^1.0.0: dependencies: any-promise "^1.0.0" +thirty-two@1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/thirty-two/-/thirty-two-1.0.2.tgz#4ca2fffc02a51290d2744b9e3f557693ca6b627a" + integrity sha1-TKL//AKlEpDSdEueP1V2k8prYno= + throat@^4.0.0: version "4.1.0" resolved "https://registry.yarnpkg.com/throat/-/throat-4.1.0.tgz#89037cbc92c56ab18926e6ba4cbb200e15672a6a" From 6ecb9a800c087cd7d38a1a927fe59b19778ef130 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pradel=20Le=CC=81o?= Date: Mon, 23 Sep 2019 21:39:16 +0200 Subject: [PATCH 002/146] createAuthenticator db interface --- packages/types/src/index.ts | 1 + .../authenticator/create-authenticator.ts | 5 +++ .../types/src/types/database-interface.ts | 34 +++++++++++++++---- 3 files changed, 34 insertions(+), 6 deletions(-) create mode 100644 packages/types/src/types/authenticator/create-authenticator.ts diff --git a/packages/types/src/index.ts b/packages/types/src/index.ts index 3b84ba8c4..879c785ab 100644 --- a/packages/types/src/index.ts +++ b/packages/types/src/index.ts @@ -12,3 +12,4 @@ export * from './types/login-user-identity'; export * from './types/hook-listener'; export * from './types/authentication-service'; export * from './types/hash-algorithm'; +export * from './types/authenticator/create-authenticator'; diff --git a/packages/types/src/types/authenticator/create-authenticator.ts b/packages/types/src/types/authenticator/create-authenticator.ts new file mode 100644 index 000000000..eaaeb9ab1 --- /dev/null +++ b/packages/types/src/types/authenticator/create-authenticator.ts @@ -0,0 +1,5 @@ +export interface CreateAuthenticator { + type?: string; + userId?: string; + [additionalKey: string]: any; +} diff --git a/packages/types/src/types/database-interface.ts b/packages/types/src/types/database-interface.ts index 175e5acdb..33ec4c439 100644 --- a/packages/types/src/types/database-interface.ts +++ b/packages/types/src/types/database-interface.ts @@ -2,28 +2,43 @@ import { User } from './user'; import { Session } from './session'; import { CreateUser } from './create-user'; import { ConnectionInformations } from './connection-informations'; +import { CreateAuthenticator } from './authenticator/create-authenticator'; export interface DatabaseInterface extends DatabaseInterfaceSessions { - // Find user by identity fields + /** + * Find user by identity fields + */ + findUserByEmail(email: string): Promise; findUserByUsername(username: string): Promise; findUserById(userId: string): Promise; - // Create and update users + setUserDeactivated(userId: string, deactivated: boolean): Promise; + + /** + * Create and update users + */ + createUser(user: CreateUser): Promise; setUsername(userId: string, newUsername: string): Promise; - // Auth services related operations + /** + * Auth services related operations + */ + findUserByServiceId(serviceName: string, serviceId: string): Promise; setService(userId: string, serviceName: string, data: object): Promise; unsetService(userId: string, serviceName: string): Promise; - // Password related operation + /** + * Password related operation + */ + findPasswordHash(userId: string): Promise; findUserByResetPasswordToken(token: string): Promise; @@ -44,7 +59,10 @@ export interface DatabaseInterface extends DatabaseInterfaceSessions { token: string ): Promise; - // Email related operations + /** + * Email related operations + */ + findUserByEmailVerificationToken(token: string): Promise; addEmail(userId: string, newEmail: string, verified: boolean): Promise; @@ -55,7 +73,11 @@ export interface DatabaseInterface extends DatabaseInterfaceSessions { addEmailVerificationToken(userId: string, email: string, token: string): Promise; - setUserDeactivated(userId: string, deactivated: boolean): Promise; + /** + * MFA related operations + */ + + createAuthenticator(authenticator: CreateAuthenticator): Promise; } export interface DatabaseInterfaceSessions { From 5579e03813264b54f4ed71383b264a5b94a50a10 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pradel=20Le=CC=81o?= Date: Mon, 23 Sep 2019 21:45:20 +0200 Subject: [PATCH 003/146] mongo createAuthenticator --- packages/database-mongo/src/mongo.ts | 23 +++++++++++++++++++++- packages/database-mongo/src/types/index.ts | 11 +++++++++++ 2 files changed, 33 insertions(+), 1 deletion(-) diff --git a/packages/database-mongo/src/mongo.ts b/packages/database-mongo/src/mongo.ts index 45a01e44e..fc19c3f4b 100644 --- a/packages/database-mongo/src/mongo.ts +++ b/packages/database-mongo/src/mongo.ts @@ -9,7 +9,7 @@ import { import { get, merge } from 'lodash'; import { Collection, Db, ObjectID } from 'mongodb'; -import { AccountsMongoOptions, MongoUser } from './types'; +import { AccountsMongoOptions, MongoUser, MongoAuthenticator } from './types'; const toMongoID = (objectId: string | ObjectID) => { if (typeof objectId === 'string') { @@ -21,6 +21,7 @@ const toMongoID = (objectId: string | ObjectID) => { const defaultOptions = { collectionName: 'users', sessionCollectionName: 'sessions', + authenticatorCollectionName: 'authenticators', timestamps: { createdAt: 'createdAt', updatedAt: 'updatedAt', @@ -40,6 +41,8 @@ export class Mongo implements DatabaseInterface { private collection: Collection; // Session collection private sessionCollection: Collection; + // Session collection + private authenticatorCollection: Collection; constructor(db: any, options?: AccountsMongoOptions) { this.options = merge({ ...defaultOptions }, options); @@ -49,6 +52,7 @@ export class Mongo implements DatabaseInterface { this.db = db; this.collection = this.db.collection(this.options.collectionName); this.sessionCollection = this.db.collection(this.options.sessionCollectionName); + this.authenticatorCollection = this.db.collection(this.options.authenticatorCollectionName); } public async setupIndexes(): Promise { @@ -427,4 +431,21 @@ export class Mongo implements DatabaseInterface { public async setResetPassword(userId: string, email: string, newPassword: string): Promise { await this.setPassword(userId, newPassword); } + + /** + * MFA related operations + */ + + public async createAuthenticator(newAuthenticator: CreateUser): Promise { + const authenticator: MongoAuthenticator = { + ...newAuthenticator, + [this.options.timestamps.createdAt]: this.options.dateProvider(), + [this.options.timestamps.updatedAt]: this.options.dateProvider(), + }; + if (this.options.idProvider) { + authenticator._id = this.options.idProvider(); + } + const ret = await this.authenticatorCollection.insertOne(authenticator); + return ret.ops[0]._id.toString(); + } } diff --git a/packages/database-mongo/src/types/index.ts b/packages/database-mongo/src/types/index.ts index 04c77c42e..0ffe63896 100644 --- a/packages/database-mongo/src/types/index.ts +++ b/packages/database-mongo/src/types/index.ts @@ -7,6 +7,10 @@ export interface AccountsMongoOptions { * The sessions collection name, default 'sessions'. */ sessionCollectionName?: string; + /** + * The authenticators collection name, default 'authenticators'. + */ + authenticatorCollectionName?: string; /** * The timestamps for the users and sessions collection, default 'createdAt' and 'updatedAt'. */ @@ -52,3 +56,10 @@ export interface MongoUser { ]; [key: string]: any; } + +export interface MongoAuthenticator { + _id?: string | object; + type?: string; + userId?: string; + [key: string]: any; +} From ffe94614a4d7dba2c671fd3b22d385a3b86a6fb7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pradel=20Le=CC=81o?= Date: Mon, 23 Sep 2019 21:50:30 +0200 Subject: [PATCH 004/146] Use the createAuthenticator function --- packages/authenticator-otp/src/index.ts | 15 ++++++++++----- .../types/authenticator/create-authenticator.ts | 4 ++-- 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/packages/authenticator-otp/src/index.ts b/packages/authenticator-otp/src/index.ts index 8cc876a01..c01e5c880 100644 --- a/packages/authenticator-otp/src/index.ts +++ b/packages/authenticator-otp/src/index.ts @@ -56,19 +56,24 @@ export class AuthenticatorOtp implements AuthenticatorService { const secret = otplib.authenticator.generateSecret(); const userName = this.options.userName ? await this.options.userName(userId) : userId; const otpauthUri = otplib.authenticator.keyuri(userName, this.options.appName, secret); - // TODO generate some recovery codes? + // TODO generate some recovery codes like slack is doing? - // TODO let's not use service for that but a separate mongo collection - await this.db.addAuthenticator(userId, this.serviceName, { secret }); + const authenticatorId = await this.db.createAuthenticator({ + type: this.serviceName, + userId, + secret, + }); - // TODO also return the id return { - id: 'TODO', + id: authenticatorId, secret, otpauthUri, }; } + /** + * Verify that the code provided by the user is valid + */ public async authenticate(authenticatorId: string, { code }: { code?: string }) { if (!code) { throw new Error('Code required'); diff --git a/packages/types/src/types/authenticator/create-authenticator.ts b/packages/types/src/types/authenticator/create-authenticator.ts index eaaeb9ab1..0467ae2ff 100644 --- a/packages/types/src/types/authenticator/create-authenticator.ts +++ b/packages/types/src/types/authenticator/create-authenticator.ts @@ -1,5 +1,5 @@ export interface CreateAuthenticator { - type?: string; - userId?: string; + type: string; + userId: string; [additionalKey: string]: any; } From 28501a0da4cf8bad7a6c5a5cd4d1405b3d009552 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pradel=20Le=CC=81o?= Date: Mon, 23 Sep 2019 21:52:13 +0200 Subject: [PATCH 005/146] Update database-interface.ts --- packages/types/src/types/database-interface.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/types/src/types/database-interface.ts b/packages/types/src/types/database-interface.ts index 33ec4c439..8b3e72f97 100644 --- a/packages/types/src/types/database-interface.ts +++ b/packages/types/src/types/database-interface.ts @@ -15,8 +15,6 @@ export interface DatabaseInterface extends DatabaseInterfaceSessions { findUserById(userId: string): Promise; - setUserDeactivated(userId: string, deactivated: boolean): Promise; - /** * Create and update users */ @@ -25,6 +23,8 @@ export interface DatabaseInterface extends DatabaseInterfaceSessions { setUsername(userId: string, newUsername: string): Promise; + setUserDeactivated(userId: string, deactivated: boolean): Promise; + /** * Auth services related operations */ From 4c20157f047d91f53219efbc6cb3ef67a7d56f8c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pradel=20Le=CC=81o?= Date: Mon, 23 Sep 2019 21:58:44 +0200 Subject: [PATCH 006/146] findAuthenticatorById --- packages/database-mongo/src/mongo.ts | 13 +++++++++++++ packages/database-mongo/src/types/index.ts | 4 ++++ packages/types/src/index.ts | 1 + .../types/src/types/authenticator/authenticator.ts | 5 +++++ packages/types/src/types/database-interface.ts | 3 +++ 5 files changed, 26 insertions(+) create mode 100644 packages/types/src/types/authenticator/authenticator.ts diff --git a/packages/database-mongo/src/mongo.ts b/packages/database-mongo/src/mongo.ts index fc19c3f4b..2529cb06a 100644 --- a/packages/database-mongo/src/mongo.ts +++ b/packages/database-mongo/src/mongo.ts @@ -5,6 +5,7 @@ import { DatabaseInterface, Session, User, + Authenticator, } from '@accounts/types'; import { get, merge } from 'lodash'; import { Collection, Db, ObjectID } from 'mongodb'; @@ -28,6 +29,7 @@ const defaultOptions = { }, convertUserIdToMongoObjectId: true, convertSessionIdToMongoObjectId: true, + convertAuthenticatorIdToMongoObjectId: true, caseSensitiveUserName: true, dateProvider: (date?: Date) => (date ? date.getTime() : Date.now()), }; @@ -448,4 +450,15 @@ export class Mongo implements DatabaseInterface { const ret = await this.authenticatorCollection.insertOne(authenticator); return ret.ops[0]._id.toString(); } + + public async findAuthenticatorById(authenticatorId: string): Promise { + const id = this.options.convertAuthenticatorIdToMongoObjectId + ? toMongoID(authenticatorId) + : authenticatorId; + const authenticator = await this.authenticatorCollection.findOne({ _id: id }); + if (authenticator) { + authenticator.id = authenticator._id.toString(); + } + return authenticator; + } } diff --git a/packages/database-mongo/src/types/index.ts b/packages/database-mongo/src/types/index.ts index 0ffe63896..064064ef2 100644 --- a/packages/database-mongo/src/types/index.ts +++ b/packages/database-mongo/src/types/index.ts @@ -26,6 +26,10 @@ export interface AccountsMongoOptions { * Should the session collection use _id as string or ObjectId, default 'true'. */ convertSessionIdToMongoObjectId?: boolean; + /** + * Should the authenticator collection use _id as string or ObjectId, default 'true'. + */ + convertAuthenticatorIdToMongoObjectId: boolean; /** * Perform case intensitive query for user name, default 'true'. */ diff --git a/packages/types/src/index.ts b/packages/types/src/index.ts index 879c785ab..c1795e80c 100644 --- a/packages/types/src/index.ts +++ b/packages/types/src/index.ts @@ -13,3 +13,4 @@ export * from './types/hook-listener'; export * from './types/authentication-service'; export * from './types/hash-algorithm'; export * from './types/authenticator/create-authenticator'; +export * from './types/authenticator/authenticator'; diff --git a/packages/types/src/types/authenticator/authenticator.ts b/packages/types/src/types/authenticator/authenticator.ts new file mode 100644 index 000000000..09e3a5a4a --- /dev/null +++ b/packages/types/src/types/authenticator/authenticator.ts @@ -0,0 +1,5 @@ +export interface Authenticator { + id: string; + type: string; + userId: string; +} diff --git a/packages/types/src/types/database-interface.ts b/packages/types/src/types/database-interface.ts index 8b3e72f97..68217acba 100644 --- a/packages/types/src/types/database-interface.ts +++ b/packages/types/src/types/database-interface.ts @@ -3,6 +3,7 @@ import { Session } from './session'; import { CreateUser } from './create-user'; import { ConnectionInformations } from './connection-informations'; import { CreateAuthenticator } from './authenticator/create-authenticator'; +import { Authenticator } from './authenticator/authenticator'; export interface DatabaseInterface extends DatabaseInterfaceSessions { /** @@ -78,6 +79,8 @@ export interface DatabaseInterface extends DatabaseInterfaceSessions { */ createAuthenticator(authenticator: CreateAuthenticator): Promise; + + findAuthenticatorById(authenticatorId: string): Promise; } export interface DatabaseInterfaceSessions { From d64f319629f8bade3b98801f407f7d0bb385c5ce Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pradel=20Le=CC=81o?= Date: Mon, 23 Sep 2019 22:08:41 +0200 Subject: [PATCH 007/146] Update tests --- packages/authenticator-otp/__tests__/index.ts | 21 ++++++++++++++++++- packages/authenticator-otp/src/index.ts | 9 +------- 2 files changed, 21 insertions(+), 9 deletions(-) diff --git a/packages/authenticator-otp/__tests__/index.ts b/packages/authenticator-otp/__tests__/index.ts index acd93b272..4e9964d53 100644 --- a/packages/authenticator-otp/__tests__/index.ts +++ b/packages/authenticator-otp/__tests__/index.ts @@ -2,11 +2,30 @@ import { AuthenticatorOtp } from '../src'; const authenticatorOtp = new AuthenticatorOtp(); +const mockedDb = { + createAuthenticator: jest.fn(), + findAuthenticatorById: jest.fn(), +}; + +authenticatorOtp.setStore(mockedDb as any); + describe('AuthenticatorOtp', () => { + beforeEach(() => { + jest.clearAllMocks(); + }); + describe('associate', () => { it('should generate a random secret', async () => { - const result = await authenticatorOtp.associate('userId', {}); + mockedDb.createAuthenticator.mockResolvedValueOnce('authenticatorIdtest'); + const result = await authenticatorOtp.associate('userIdTest', {}); + + expect(mockedDb.createAuthenticator).toBeCalledWith({ + type: 'otp', + userId: 'userIdTest', + secret: expect.any(String), + }); expect(result).toEqual({ + id: 'authenticatorIdtest', secret: expect.any(String), otpauthUri: expect.any(String), }); diff --git a/packages/authenticator-otp/src/index.ts b/packages/authenticator-otp/src/index.ts index c01e5c880..fc60dacf6 100644 --- a/packages/authenticator-otp/src/index.ts +++ b/packages/authenticator-otp/src/index.ts @@ -2,13 +2,6 @@ import { DatabaseInterface } from '@accounts/types'; import { AccountsServer } from '@accounts/server'; import * as otplib from 'otplib'; -// DB object -interface Authenticator { - id: string; - type: string; - secret: string; -} - interface AuthenticatorService { server: any; serviceName: string; @@ -80,7 +73,7 @@ export class AuthenticatorOtp implements AuthenticatorService { } // Should this be in accounts-js server before calling authenticate? - const authenticator = (await this.db.getAuthenticator(authenticatorId)) as Authenticator | null; + const authenticator: any = await this.db.findAuthenticatorById(authenticatorId); if (!authenticator || authenticator.type !== this.serviceName) { throw new Error('Authenticator not found'); } From c08ce3661a6b4df0b2b58e1da28db24f8ca9f7ee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pradel=20Le=CC=81o?= Date: Mon, 23 Sep 2019 22:09:12 +0200 Subject: [PATCH 008/146] Update index.ts --- packages/authenticator-otp/src/index.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/authenticator-otp/src/index.ts b/packages/authenticator-otp/src/index.ts index fc60dacf6..734ad6984 100644 --- a/packages/authenticator-otp/src/index.ts +++ b/packages/authenticator-otp/src/index.ts @@ -8,6 +8,7 @@ interface AuthenticatorService { setStore(store: DatabaseInterface): void; associate(userId: string, params: any): Promise; authenticate(authenticatorId: string, params: any): Promise; + // TODO ability to delete an authenticator } export interface AuthenticatorOtpOptions { From c7fadb02cb7d775d27bb70d9d5416facc103a62d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pradel=20Le=CC=81o?= Date: Mon, 23 Sep 2019 22:09:54 +0200 Subject: [PATCH 009/146] Update index.ts --- packages/authenticator-otp/src/index.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/authenticator-otp/src/index.ts b/packages/authenticator-otp/src/index.ts index 734ad6984..b9264b755 100644 --- a/packages/authenticator-otp/src/index.ts +++ b/packages/authenticator-otp/src/index.ts @@ -18,7 +18,8 @@ export interface AuthenticatorOtpOptions { appName?: string; /** - * Two factor user name that will be displayed inside the user authenticator app. + * Two factor user name that will be displayed inside the user authenticator app, + * usually a name, email etc.. * Will be called every time a user register a new device. */ userName?: (userId: string) => Promise | string; From 11a9e3e910797fa6d7e068e566edbe528eb7ca1e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pradel=20Le=CC=81o?= Date: Mon, 23 Sep 2019 22:21:48 +0200 Subject: [PATCH 010/146] prepare server --- packages/authenticator-otp/src/index.ts | 11 +------- packages/server/src/accounts-server.ts | 25 +++++++++++++++++++ packages/types/src/index.ts | 3 ++- .../authenticator/authenticator-service.ts | 10 ++++++++ 4 files changed, 38 insertions(+), 11 deletions(-) create mode 100644 packages/types/src/types/authenticator/authenticator-service.ts diff --git a/packages/authenticator-otp/src/index.ts b/packages/authenticator-otp/src/index.ts index b9264b755..2ad796794 100644 --- a/packages/authenticator-otp/src/index.ts +++ b/packages/authenticator-otp/src/index.ts @@ -1,16 +1,7 @@ -import { DatabaseInterface } from '@accounts/types'; +import { DatabaseInterface, AuthenticatorService } from '@accounts/types'; import { AccountsServer } from '@accounts/server'; import * as otplib from 'otplib'; -interface AuthenticatorService { - server: any; - serviceName: string; - setStore(store: DatabaseInterface): void; - associate(userId: string, params: any): Promise; - authenticate(authenticatorId: string, params: any): Promise; - // TODO ability to delete an authenticator -} - export interface AuthenticatorOtpOptions { /** * Two factor app name that will be displayed inside the user authenticator app. diff --git a/packages/server/src/accounts-server.ts b/packages/server/src/accounts-server.ts index 4c36b9087..4a499f2f6 100644 --- a/packages/server/src/accounts-server.ts +++ b/packages/server/src/accounts-server.ts @@ -10,6 +10,7 @@ import { HookListener, DatabaseInterface, AuthenticationService, + AuthenticatorService, ConnectionInformations, } from '@accounts/types'; @@ -43,6 +44,7 @@ const defaultOptions = { export class AccountsServer { public options: AccountsServerOptions & typeof defaultOptions; private services: { [key: string]: AuthenticationService }; + private authenticators: { [key: string]: AuthenticatorService }; private db: DatabaseInterface; private hooks: Emittery; @@ -59,6 +61,7 @@ Please change it with a strong random token.`); } this.services = services || {}; + this.authenticators = {}; this.db = this.options.db; // Set the db to all services @@ -531,6 +534,28 @@ Please change it with a strong random token.`); return userObjectSanitizer(this.internalUserSanitizer(user), omit as any, pick as any); } + /** + * MFA related operations + */ + + /** + * @description Start the association of a new authenticator + */ + public async mfaAssociate(serviceName: string) { + if (!this.authenticators[serviceName]) { + throw new Error(`No service with the name ${serviceName} was registered.`); + } + + // TODO see how to get the userId + const userId = 'TODO'; + const params = 'TODO'; + return this.authenticators[serviceName].associate(userId, params); + } + + /** + * Private methods + */ + private internalUserSanitizer(user: User): User { return omit(user, ['services']) as any; } diff --git a/packages/types/src/index.ts b/packages/types/src/index.ts index c1795e80c..1fca3e176 100644 --- a/packages/types/src/index.ts +++ b/packages/types/src/index.ts @@ -12,5 +12,6 @@ export * from './types/login-user-identity'; export * from './types/hook-listener'; export * from './types/authentication-service'; export * from './types/hash-algorithm'; -export * from './types/authenticator/create-authenticator'; +export * from './types/authenticator/authenticator-service'; export * from './types/authenticator/authenticator'; +export * from './types/authenticator/create-authenticator'; diff --git a/packages/types/src/types/authenticator/authenticator-service.ts b/packages/types/src/types/authenticator/authenticator-service.ts new file mode 100644 index 000000000..c4639903b --- /dev/null +++ b/packages/types/src/types/authenticator/authenticator-service.ts @@ -0,0 +1,10 @@ +import { DatabaseInterface } from '../database-interface'; + +export interface AuthenticatorService { + server: any; + serviceName: string; + setStore(store: DatabaseInterface): void; + associate(userId: string, params: any): Promise; + authenticate(authenticatorId: string, params: any): Promise; + // TODO ability to delete an authenticator +} From 2072eec274dd35ac98c795b73e3bc11b33be8e30 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pradel=20Le=CC=81o?= Date: Mon, 23 Sep 2019 22:39:09 +0200 Subject: [PATCH 011/146] Add comments --- packages/types/src/types/authenticator/authenticator.ts | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/packages/types/src/types/authenticator/authenticator.ts b/packages/types/src/types/authenticator/authenticator.ts index 09e3a5a4a..0270561c4 100644 --- a/packages/types/src/types/authenticator/authenticator.ts +++ b/packages/types/src/types/authenticator/authenticator.ts @@ -1,5 +1,14 @@ export interface Authenticator { + /** + * Db id + */ id: string; + /** + * Authenticator type + */ type: string; + /** + * User id linked to this authenticator + */ userId: string; } From 8e5fee6328b559c036f3118a0b39333151f87145 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pradel=20Le=CC=81o?= Date: Mon, 23 Sep 2019 22:48:01 +0200 Subject: [PATCH 012/146] Better typings --- packages/authenticator-otp/src/index.ts | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/packages/authenticator-otp/src/index.ts b/packages/authenticator-otp/src/index.ts index 2ad796794..efa480c00 100644 --- a/packages/authenticator-otp/src/index.ts +++ b/packages/authenticator-otp/src/index.ts @@ -1,7 +1,11 @@ -import { DatabaseInterface, AuthenticatorService } from '@accounts/types'; +import { DatabaseInterface, AuthenticatorService, Authenticator } from '@accounts/types'; import { AccountsServer } from '@accounts/server'; import * as otplib from 'otplib'; +interface DbAuthenticatorOtp extends Authenticator { + secret: string; +} + export interface AuthenticatorOtpOptions { /** * Two factor app name that will be displayed inside the user authenticator app. @@ -66,7 +70,9 @@ export class AuthenticatorOtp implements AuthenticatorService { } // Should this be in accounts-js server before calling authenticate? - const authenticator: any = await this.db.findAuthenticatorById(authenticatorId); + const authenticator = (await this.db.findAuthenticatorById( + authenticatorId + )) as DbAuthenticatorOtp | null; if (!authenticator || authenticator.type !== this.serviceName) { throw new Error('Authenticator not found'); } From 7c2df0c559ab0214ee69c6b3c3045faca1ad230b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pradel=20Le=CC=81o?= Date: Mon, 23 Sep 2019 22:59:38 +0200 Subject: [PATCH 013/146] Fix lint --- packages/authenticator-otp/__tests__/index.ts | 2 +- yarn.lock | 13 +++++++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/packages/authenticator-otp/__tests__/index.ts b/packages/authenticator-otp/__tests__/index.ts index 4e9964d53..4b5e8ee93 100644 --- a/packages/authenticator-otp/__tests__/index.ts +++ b/packages/authenticator-otp/__tests__/index.ts @@ -19,7 +19,7 @@ describe('AuthenticatorOtp', () => { mockedDb.createAuthenticator.mockResolvedValueOnce('authenticatorIdtest'); const result = await authenticatorOtp.associate('userIdTest', {}); - expect(mockedDb.createAuthenticator).toBeCalledWith({ + expect(mockedDb.createAuthenticator).toHaveBeenCalledWith({ type: 'otp', userId: 'userIdTest', secret: expect.any(String), diff --git a/yarn.lock b/yarn.lock index 52d30a1ee..33c755f66 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2404,6 +2404,11 @@ "@types/koa-compose" "*" "@types/node" "*" +"@types/lodash@4.14.136": + version "4.14.136" + resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.136.tgz#413e85089046b865d960c9ff1d400e04c31ab60f" + integrity sha512-0GJhzBdvsW2RUccNHOBkabI8HZVdOXmXbXhuKlDEd5Vv12P7oAVGfomGp3Ne21o5D/qu1WmthlNKFaoZJJeErA== + "@types/lodash@4.14.138", "@types/lodash@^4.14.138": version "4.14.138" resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.138.tgz#34f52640d7358230308344e579c15b378d91989e" @@ -2432,6 +2437,14 @@ "@types/bson" "*" "@types/node" "*" +"@types/mongoose@5.5.11": + version "5.5.11" + resolved "https://registry.yarnpkg.com/@types/mongoose/-/mongoose-5.5.11.tgz#8562bb84b4f3f41aebec27f263607bfe2183729e" + integrity sha512-Z1W2V3zrB+SeDGI6G1G5XR3JJkkMl4ni7a2Kmq10abdY0wapbaTtUT2/31N+UTPEzhB0KPXUgtQExeKxrc+hxQ== + dependencies: + "@types/mongodb" "*" + "@types/node" "*" + "@types/mongoose@5.5.17": version "5.5.17" resolved "https://registry.yarnpkg.com/@types/mongoose/-/mongoose-5.5.17.tgz#1f8eb3799368ae266758d2df1bd1a7cfca0f6875" From b1931c33fc9fd3412cb5d2de48001714e31b9d67 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pradel=20Le=CC=81o?= Date: Mon, 23 Sep 2019 23:13:42 +0200 Subject: [PATCH 014/146] Create rest express route --- .../rest-express/src/endpoints/mfa/associate.ts | 16 ++++++++++++++++ packages/rest-express/src/express-middleware.ts | 3 +++ packages/server/src/accounts-server.ts | 8 ++++++-- 3 files changed, 25 insertions(+), 2 deletions(-) create mode 100644 packages/rest-express/src/endpoints/mfa/associate.ts diff --git a/packages/rest-express/src/endpoints/mfa/associate.ts b/packages/rest-express/src/endpoints/mfa/associate.ts new file mode 100644 index 000000000..46535168d --- /dev/null +++ b/packages/rest-express/src/endpoints/mfa/associate.ts @@ -0,0 +1,16 @@ +import * as express from 'express'; +import { AccountsServer } from '@accounts/server'; +import { sendError } from '../../utils/send-error'; + +export const associate = (accountsServer: AccountsServer) => async ( + req: express.Request, + res: express.Response +) => { + try { + const { type } = req.body; + const loginToken = await accountsServer.mfaAssociate(type); + res.json(loginToken); + } catch (err) { + sendError(res, err); + } +}; diff --git a/packages/rest-express/src/express-middleware.ts b/packages/rest-express/src/express-middleware.ts index 6a70a26f2..d5baf9de1 100644 --- a/packages/rest-express/src/express-middleware.ts +++ b/packages/rest-express/src/express-middleware.ts @@ -12,6 +12,7 @@ import { serviceVerifyAuthentication } from './endpoints/verify-authentication'; import { registerPassword } from './endpoints/password/register'; import { twoFactorSecret, twoFactorSet, twoFactorUnset } from './endpoints/password/two-factor'; import { changePassword } from './endpoints/password/change-password'; +import { associate } from './endpoints/mfa/associate'; import { userLoader } from './user-loader'; import { AccountsExpressOptions } from './types'; @@ -46,6 +47,8 @@ const accountsExpress = ( router.post(`${path}/:service/authenticate`, serviceAuthenticate(accountsServer)); + router.post(`${path}/mfa/associate`, associate(accountsServer)); + const services = accountsServer.getServices(); // @accounts/password diff --git a/packages/server/src/accounts-server.ts b/packages/server/src/accounts-server.ts index 42c311988..2115dbef2 100644 --- a/packages/server/src/accounts-server.ts +++ b/packages/server/src/accounts-server.ts @@ -48,7 +48,11 @@ export class AccountsServer { private db: DatabaseInterface; private hooks: Emittery; - constructor(options: AccountsServerOptions, services: { [key: string]: AuthenticationService }) { + constructor( + options: AccountsServerOptions, + services: { [key: string]: AuthenticationService }, + authenticators?: { [key: string]: AuthenticatorService } + ) { this.options = merge({ ...defaultOptions }, options); if (!this.options.db) { throw new Error('A database driver is required'); @@ -60,7 +64,7 @@ Please change it with a strong random token.`); } this.services = services || {}; - this.authenticators = {}; + this.authenticators = authenticators || {}; this.db = this.options.db; // Set the db to all services From 50c55bbcbbe5aa3d7094eacfa0e5509c2d414a18 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pradel=20Le=CC=81o?= Date: Mon, 23 Sep 2019 23:19:36 +0200 Subject: [PATCH 015/146] Client mfaAssociate --- packages/rest-client/src/rest-client.ts | 12 ++++++++++++ packages/rest-express/src/endpoints/mfa/associate.ts | 4 ++-- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/packages/rest-client/src/rest-client.ts b/packages/rest-client/src/rest-client.ts index 004bf30d1..97d6c8082 100644 --- a/packages/rest-client/src/rest-client.ts +++ b/packages/rest-client/src/rest-client.ts @@ -224,6 +224,18 @@ export class RestClient implements TransportInterface { return this.authFetch('password/twoFactorUnset', args, customHeaders); } + /** + * MFA related operations + */ + + public async mfaAssociate(type: string, customHeaders?: object) { + const args = { + method: 'POST', + body: JSON.stringify({ type }), + }; + return this.fetch(`/mfa/associate`, args, customHeaders); + } + private _loadHeadersObject(plainHeaders: object): { [key: string]: string } { if (isPlainObject(plainHeaders)) { const customHeaders = headers; diff --git a/packages/rest-express/src/endpoints/mfa/associate.ts b/packages/rest-express/src/endpoints/mfa/associate.ts index 46535168d..85231ca0c 100644 --- a/packages/rest-express/src/endpoints/mfa/associate.ts +++ b/packages/rest-express/src/endpoints/mfa/associate.ts @@ -8,8 +8,8 @@ export const associate = (accountsServer: AccountsServer) => async ( ) => { try { const { type } = req.body; - const loginToken = await accountsServer.mfaAssociate(type); - res.json(loginToken); + const mfaAssociateResult = await accountsServer.mfaAssociate(type); + res.json(mfaAssociateResult); } catch (err) { sendError(res, err); } From e46c3cc72972e02ec0ac41b5848befad4e2e0bea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pradel=20Le=CC=81o?= Date: Mon, 23 Sep 2019 23:24:03 +0200 Subject: [PATCH 016/146] cleaner --- packages/client/src/transport-interface.ts | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/client/src/transport-interface.ts b/packages/client/src/transport-interface.ts index 9e4b43bce..38c228054 100644 --- a/packages/client/src/transport-interface.ts +++ b/packages/client/src/transport-interface.ts @@ -1,7 +1,7 @@ import { LoginResult, ImpersonationResult, CreateUser, User } from '@accounts/types'; import { AccountsClient } from './accounts-client'; -export interface TransportInterface { +export interface TransportInterface extends TransportMfaInterface { client: AccountsClient; createUser(user: CreateUser): Promise; authenticateWithService( @@ -33,3 +33,10 @@ export interface TransportInterface { } ): Promise; } + +/** + * MFA related operations + */ +interface TransportMfaInterface { + mfaAssociate(type: string): Promise; +} From b85e80df75935e29a595e233fbafa9c0e49e7e2d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pradel=20Le=CC=81o?= Date: Mon, 23 Sep 2019 23:25:42 +0200 Subject: [PATCH 017/146] Update accounts-client.ts --- packages/client/src/accounts-client.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/client/src/accounts-client.ts b/packages/client/src/accounts-client.ts index 09a4b7a41..e5680ce7c 100644 --- a/packages/client/src/accounts-client.ts +++ b/packages/client/src/accounts-client.ts @@ -198,6 +198,10 @@ export class AccountsClient { await this.clearTokens(); } + public mfaAssociate(type: string) { + return this.transport.mfaAssociate(type); + } + private getTokenKey(tokenName: TokenKey): string { return `${this.options.tokenStoragePrefix}:${tokenName}`; } From 3f3d6b8f49ed19c2fb8fdc2fec8a30c77d5e7a71 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pradel=20Le=CC=81o?= Date: Mon, 23 Sep 2019 23:37:31 +0200 Subject: [PATCH 018/146] try the associate endpoint with the REST example --- examples/react-rest-typescript/src/TwoFactor.tsx | 5 ++++- examples/rest-express-typescript/package.json | 1 + examples/rest-express-typescript/src/index.ts | 4 ++++ packages/authenticator-otp/package.json | 3 ++- packages/rest-client/src/rest-client.ts | 2 +- packages/server/src/accounts-server.ts | 6 ++++++ 6 files changed, 18 insertions(+), 3 deletions(-) diff --git a/examples/react-rest-typescript/src/TwoFactor.tsx b/examples/react-rest-typescript/src/TwoFactor.tsx index 1a9fbbd1b..3bde577aa 100644 --- a/examples/react-rest-typescript/src/TwoFactor.tsx +++ b/examples/react-rest-typescript/src/TwoFactor.tsx @@ -2,7 +2,7 @@ import React, { useState, useEffect } from 'react'; import { Button, Typography, FormControl, InputLabel, Input } from '@material-ui/core'; import QRCode from 'qrcode.react'; -import { accountsRest } from './accounts'; +import { accountsRest, accountsClient } from './accounts'; const TwoFactor = () => { const [secret, setSecret] = useState(); @@ -10,6 +10,9 @@ const TwoFactor = () => { const fetchTwoFactorSecret = async () => { const data = await accountsRest.getTwoFactorSecret(); + // TODO try catch and show error if needed + const data2 = await accountsClient.mfaAssociate('otp'); + console.log(data2); setSecret(data.secret); }; diff --git a/examples/rest-express-typescript/package.json b/examples/rest-express-typescript/package.json index 9737c1035..99f0837c6 100644 --- a/examples/rest-express-typescript/package.json +++ b/examples/rest-express-typescript/package.json @@ -10,6 +10,7 @@ "test": "yarn build" }, "dependencies": { + "@accounts/authenticator-otp": "^0.19.0", "@accounts/mongo": "^0.19.0", "@accounts/password": "^0.19.0", "@accounts/rest-express": "^0.19.0", diff --git a/examples/rest-express-typescript/src/index.ts b/examples/rest-express-typescript/src/index.ts index 68b572950..8bb700017 100644 --- a/examples/rest-express-typescript/src/index.ts +++ b/examples/rest-express-typescript/src/index.ts @@ -6,6 +6,7 @@ import { AccountsServer } from '@accounts/server'; import { AccountsPassword } from '@accounts/password'; import accountsExpress, { userLoader } from '@accounts/rest-express'; import MongoDBInterface from '@accounts/mongo'; +import { AuthenticatorOtp } from '@accounts/authenticator-otp'; mongoose.connect('mongodb://localhost:27017/accounts-js-rest-example', { useNewUrlParser: true }); const db = mongoose.connection; @@ -22,6 +23,9 @@ const accountsServer = new AccountsServer( }, { password: new AccountsPassword(), + }, + { + otp: new AuthenticatorOtp({}), } ); app.use(accountsExpress(accountsServer)); diff --git a/packages/authenticator-otp/package.json b/packages/authenticator-otp/package.json index a1990c559..83e2ef674 100644 --- a/packages/authenticator-otp/package.json +++ b/packages/authenticator-otp/package.json @@ -37,7 +37,8 @@ }, "dependencies": { "@accounts/types": "^0.19.0", - "otplib": "11.0.1" + "otplib": "11.0.1", + "tslib": "1.10.0" }, "peerDependencies": { "@accounts/server": "^0.19.0" diff --git a/packages/rest-client/src/rest-client.ts b/packages/rest-client/src/rest-client.ts index 97d6c8082..9d2a91075 100644 --- a/packages/rest-client/src/rest-client.ts +++ b/packages/rest-client/src/rest-client.ts @@ -233,7 +233,7 @@ export class RestClient implements TransportInterface { method: 'POST', body: JSON.stringify({ type }), }; - return this.fetch(`/mfa/associate`, args, customHeaders); + return this.fetch(`mfa/associate`, args, customHeaders); } private _loadHeadersObject(plainHeaders: object): { [key: string]: string } { diff --git a/packages/server/src/accounts-server.ts b/packages/server/src/accounts-server.ts index 2115dbef2..9b4c1f0fc 100644 --- a/packages/server/src/accounts-server.ts +++ b/packages/server/src/accounts-server.ts @@ -73,6 +73,12 @@ Please change it with a strong random token.`); this.services[service].server = this; } + // Set the db to all authenticators + for (const service in this.authenticators) { + this.authenticators[service].setStore(this.db); + this.authenticators[service].server = this; + } + // Initialize hooks this.hooks = new Emittery(); } From e422e64c3958e2e3046c838dcf577e5fef621885 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pradel=20Le=CC=81o?= Date: Mon, 23 Sep 2019 23:40:36 +0200 Subject: [PATCH 019/146] Update example ui --- .../react-rest-typescript/src/TwoFactor.tsx | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/examples/react-rest-typescript/src/TwoFactor.tsx b/examples/react-rest-typescript/src/TwoFactor.tsx index 3bde577aa..f8b9d92e5 100644 --- a/examples/react-rest-typescript/src/TwoFactor.tsx +++ b/examples/react-rest-typescript/src/TwoFactor.tsx @@ -4,16 +4,19 @@ import QRCode from 'qrcode.react'; import { accountsRest, accountsClient } from './accounts'; +interface OTP { + otpauthUri: string; + secret: string; +} + const TwoFactor = () => { - const [secret, setSecret] = useState(); + const [secret, setSecret] = useState(); const [oneTimeCode, setOneTimeCode] = useState(''); const fetchTwoFactorSecret = async () => { - const data = await accountsRest.getTwoFactorSecret(); // TODO try catch and show error if needed - const data2 = await accountsClient.mfaAssociate('otp'); - console.log(data2); - setSecret(data.secret); + const data = await accountsClient.mfaAssociate('otp'); + setSecret(data); }; useEffect(() => { @@ -35,9 +38,9 @@ const TwoFactor = () => {
Two-factor authentication Backup code: - {secret.base32} + {secret.secret} Use Google Authenticator for example - + Confirm with one-time code: One time code From 5a58b4fa732eed527299d3779a398a054ad569e5 Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 24 Sep 2019 08:41:50 +0200 Subject: [PATCH 020/146] Add an active field --- packages/authenticator-otp/__tests__/index.ts | 1 + packages/authenticator-otp/src/index.ts | 1 + packages/types/src/types/authenticator/authenticator.ts | 4 ++++ .../types/src/types/authenticator/create-authenticator.ts | 1 + 4 files changed, 7 insertions(+) diff --git a/packages/authenticator-otp/__tests__/index.ts b/packages/authenticator-otp/__tests__/index.ts index 4b5e8ee93..b37097331 100644 --- a/packages/authenticator-otp/__tests__/index.ts +++ b/packages/authenticator-otp/__tests__/index.ts @@ -23,6 +23,7 @@ describe('AuthenticatorOtp', () => { type: 'otp', userId: 'userIdTest', secret: expect.any(String), + active: false, }); expect(result).toEqual({ id: 'authenticatorIdtest', diff --git a/packages/authenticator-otp/src/index.ts b/packages/authenticator-otp/src/index.ts index efa480c00..d65a10d51 100644 --- a/packages/authenticator-otp/src/index.ts +++ b/packages/authenticator-otp/src/index.ts @@ -52,6 +52,7 @@ export class AuthenticatorOtp implements AuthenticatorService { type: this.serviceName, userId, secret, + active: false, }); return { diff --git a/packages/types/src/types/authenticator/authenticator.ts b/packages/types/src/types/authenticator/authenticator.ts index 0270561c4..86fbb2975 100644 --- a/packages/types/src/types/authenticator/authenticator.ts +++ b/packages/types/src/types/authenticator/authenticator.ts @@ -11,4 +11,8 @@ export interface Authenticator { * User id linked to this authenticator */ userId: string; + /** + * Is authenticator active + */ + active: boolean; } diff --git a/packages/types/src/types/authenticator/create-authenticator.ts b/packages/types/src/types/authenticator/create-authenticator.ts index 0467ae2ff..5236eb081 100644 --- a/packages/types/src/types/authenticator/create-authenticator.ts +++ b/packages/types/src/types/authenticator/create-authenticator.ts @@ -1,5 +1,6 @@ export interface CreateAuthenticator { type: string; userId: string; + active: boolean; [additionalKey: string]: any; } From 086aff281a8a66b012377af5d580b4612bbca3f6 Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 24 Sep 2019 08:45:33 +0200 Subject: [PATCH 021/146] Update index.ts --- packages/authenticator-otp/__tests__/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/authenticator-otp/__tests__/index.ts b/packages/authenticator-otp/__tests__/index.ts index b37097331..52b4e3e4f 100644 --- a/packages/authenticator-otp/__tests__/index.ts +++ b/packages/authenticator-otp/__tests__/index.ts @@ -15,7 +15,7 @@ describe('AuthenticatorOtp', () => { }); describe('associate', () => { - it('should generate a random secret', async () => { + it('should create a new database entry and return the secret and url', async () => { mockedDb.createAuthenticator.mockResolvedValueOnce('authenticatorIdtest'); const result = await authenticatorOtp.associate('userIdTest', {}); From bdb683e5e05f3cf7031ab75468f81bfd9b25dded Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 24 Sep 2019 09:49:07 +0200 Subject: [PATCH 022/146] Mongo findUserAuthenticators --- packages/database-mongo/src/mongo.ts | 8 ++++++++ packages/server/src/accounts-server.ts | 1 + packages/types/src/types/database-interface.ts | 2 ++ 3 files changed, 11 insertions(+) diff --git a/packages/database-mongo/src/mongo.ts b/packages/database-mongo/src/mongo.ts index 3c2587be2..28101d392 100644 --- a/packages/database-mongo/src/mongo.ts +++ b/packages/database-mongo/src/mongo.ts @@ -460,4 +460,12 @@ export class Mongo implements DatabaseInterface { } return authenticator; } + + public async findUserAuthenticators(userId: string): Promise { + let authenticators = await this.sessionCollection.find({ userId }).toArray(); + authenticators.forEach(authenticator => { + authenticator.id = authenticator._id.toString(); + }); + return authenticators; + } } diff --git a/packages/server/src/accounts-server.ts b/packages/server/src/accounts-server.ts index 9b4c1f0fc..2302d8761 100644 --- a/packages/server/src/accounts-server.ts +++ b/packages/server/src/accounts-server.ts @@ -548,6 +548,7 @@ Please change it with a strong random token.`); /** * @description Start the association of a new authenticator + * @param {string} serviceName - Service name of the authenticator service. */ public async mfaAssociate(serviceName: string) { if (!this.authenticators[serviceName]) { diff --git a/packages/types/src/types/database-interface.ts b/packages/types/src/types/database-interface.ts index 68217acba..213970379 100644 --- a/packages/types/src/types/database-interface.ts +++ b/packages/types/src/types/database-interface.ts @@ -81,6 +81,8 @@ export interface DatabaseInterface extends DatabaseInterfaceSessions { createAuthenticator(authenticator: CreateAuthenticator): Promise; findAuthenticatorById(authenticatorId: string): Promise; + + findUserAuthenticators(userId: string): Promise; } export interface DatabaseInterfaceSessions { From 51881d8ca07fd70c9096e91f68939bf901fbed88 Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 24 Sep 2019 09:53:38 +0200 Subject: [PATCH 023/146] use const --- packages/database-mongo/src/mongo.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/database-mongo/src/mongo.ts b/packages/database-mongo/src/mongo.ts index 28101d392..ed53ba4f7 100644 --- a/packages/database-mongo/src/mongo.ts +++ b/packages/database-mongo/src/mongo.ts @@ -462,7 +462,7 @@ export class Mongo implements DatabaseInterface { } public async findUserAuthenticators(userId: string): Promise { - let authenticators = await this.sessionCollection.find({ userId }).toArray(); + const authenticators = await this.sessionCollection.find({ userId }).toArray(); authenticators.forEach(authenticator => { authenticator.id = authenticator._id.toString(); }); From fcd426213fd6947c75694767ab19db2f7e660475 Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 24 Sep 2019 11:55:15 +0200 Subject: [PATCH 024/146] expose `findUserAuthenticators` --- packages/client/src/accounts-client.ts | 4 ++++ packages/client/src/transport-interface.ts | 3 ++- packages/rest-client/src/rest-client.ts | 7 +++++++ .../src/endpoints/mfa/authenticators.ts | 21 +++++++++++++++++++ .../rest-express/src/express-middleware.ts | 2 ++ packages/server/src/accounts-server.ts | 11 ++++++++++ 6 files changed, 47 insertions(+), 1 deletion(-) create mode 100644 packages/rest-express/src/endpoints/mfa/authenticators.ts diff --git a/packages/client/src/accounts-client.ts b/packages/client/src/accounts-client.ts index e5680ce7c..e5ebc35db 100644 --- a/packages/client/src/accounts-client.ts +++ b/packages/client/src/accounts-client.ts @@ -202,6 +202,10 @@ export class AccountsClient { return this.transport.mfaAssociate(type); } + public authenticators() { + return this.transport.authenticators(); + } + private getTokenKey(tokenName: TokenKey): string { return `${this.options.tokenStoragePrefix}:${tokenName}`; } diff --git a/packages/client/src/transport-interface.ts b/packages/client/src/transport-interface.ts index 38c228054..eb7cb7917 100644 --- a/packages/client/src/transport-interface.ts +++ b/packages/client/src/transport-interface.ts @@ -1,4 +1,4 @@ -import { LoginResult, ImpersonationResult, CreateUser, User } from '@accounts/types'; +import { LoginResult, ImpersonationResult, CreateUser, User, Authenticator } from '@accounts/types'; import { AccountsClient } from './accounts-client'; export interface TransportInterface extends TransportMfaInterface { @@ -39,4 +39,5 @@ export interface TransportInterface extends TransportMfaInterface { */ interface TransportMfaInterface { mfaAssociate(type: string): Promise; + authenticators(): Promise; } diff --git a/packages/rest-client/src/rest-client.ts b/packages/rest-client/src/rest-client.ts index 9d2a91075..7ffbb4b11 100644 --- a/packages/rest-client/src/rest-client.ts +++ b/packages/rest-client/src/rest-client.ts @@ -236,6 +236,13 @@ export class RestClient implements TransportInterface { return this.fetch(`mfa/associate`, args, customHeaders); } + public async authenticators(customHeaders?: object) { + const args = { + method: 'GET', + }; + return this.authFetch(`mfa/authenticators`, args, customHeaders); + } + private _loadHeadersObject(plainHeaders: object): { [key: string]: string } { if (isPlainObject(plainHeaders)) { const customHeaders = headers; diff --git a/packages/rest-express/src/endpoints/mfa/authenticators.ts b/packages/rest-express/src/endpoints/mfa/authenticators.ts new file mode 100644 index 000000000..ca7f94a6c --- /dev/null +++ b/packages/rest-express/src/endpoints/mfa/authenticators.ts @@ -0,0 +1,21 @@ +import * as express from 'express'; +import { AccountsServer } from '@accounts/server'; +import { sendError } from '../../utils/send-error'; + +export const authenticators = (accountsServer: AccountsServer) => async ( + req: express.Request, + res: express.Response +) => { + try { + if (!(req as any).userId) { + res.status(401); + res.json({ message: 'Unauthorized' }); + return; + } + + const userAuthenticators = await accountsServer.findUserAuthenticators((req as any).userId); + res.json(userAuthenticators); + } catch (err) { + sendError(res, err); + } +}; diff --git a/packages/rest-express/src/express-middleware.ts b/packages/rest-express/src/express-middleware.ts index d5baf9de1..c6f821547 100644 --- a/packages/rest-express/src/express-middleware.ts +++ b/packages/rest-express/src/express-middleware.ts @@ -49,6 +49,8 @@ const accountsExpress = ( router.post(`${path}/mfa/associate`, associate(accountsServer)); + router.get(`${path}/mfa/authenticators`, userLoader(accountsServer), associate(accountsServer)); + const services = accountsServer.getServices(); // @accounts/password diff --git a/packages/server/src/accounts-server.ts b/packages/server/src/accounts-server.ts index 2302d8761..8f7a7aa1a 100644 --- a/packages/server/src/accounts-server.ts +++ b/packages/server/src/accounts-server.ts @@ -12,6 +12,7 @@ import { AuthenticationService, AuthenticatorService, ConnectionInformations, + Authenticator, } from '@accounts/types'; import { generateAccessToken, generateRefreshToken, generateRandomToken } from './utils/tokens'; @@ -561,6 +562,16 @@ Please change it with a strong random token.`); return this.authenticators[serviceName].associate(userId, params); } + /** + * @description Return the list of the active and inactive authenticators for this user. + * @param {string} userId - User id linked to the authenticators. + */ + public async findUserAuthenticators(userId: string): Promise { + const authenticators = await this.db.findUserAuthenticators(userId); + // TODO need to whitelist the fields returned, eg OTP should not expose the secret property + return authenticators; + } + /** * Private methods */ From 46c87f49b61755793c0f362f587e9ac2b439140f Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 24 Sep 2019 15:40:37 +0200 Subject: [PATCH 025/146] Start writting OTP documentation --- website/docs/mfa/otp.md | 122 ++++++++++++++++++++++++++++++++++++++++ website/sidebars.js | 1 + 2 files changed, 123 insertions(+) create mode 100644 website/docs/mfa/otp.md diff --git a/website/docs/mfa/otp.md b/website/docs/mfa/otp.md new file mode 100644 index 000000000..26c18035a --- /dev/null +++ b/website/docs/mfa/otp.md @@ -0,0 +1,122 @@ +--- +id: otp +title: One-Time Password +sidebar_label: OTP +--- + +[Github](https://github.com/accounts-js/accounts/tree/master/packages/authenticator-api) | +[npm](https://www.npmjs.com/package/@accounts/authenticator-api) + +The `@accounts/authenticator-api` package provide a secure way to use OTP as a multi factor authentication step. +This package will give the ability to your users to link an authenticator app (eg: Google Authenticator) to secure their account. + +> In order to generate and verify the validity of the OTP codes we are using the [otplib](https://github.com/yeojz/otplib) npm package + +# Server configuration + +The first step is to setup the server configuration. + +## Install + +``` +# With yarn +yarn add @accounts/authenticator-api + +# Or if you use npm +npm install @accounts/authenticator-api --save +``` + +## Usage + +```javascript +import AccountsServer from '@accounts/server'; +import { AuthenticatorOtp } from '@accounts/authenticator-otp'; + +// We create a new password instance with some custom config +const authenticatorOtp = new AuthenticatorOtp(...config); + +// We pass the password instance the AccountsServer service list +const accountsServer = new AccountsServer( + ...config, + { + // Your services + }, + { + // List of MFA authenticators + otp: authenticatorOtp, + } +); +``` + +### Examples + +To see how to integrate the package into your app you can check these examples: + +- [GraphQL Server](https://github.com/accounts-js/accounts/tree/master/examples/graphql-server-typescript) +- [Express REST Server](https://github.com/accounts-js/accounts/tree/master/examples/rest-express-typescript) + +# Client configuration + +In order to follow this process you will need to have `AccountsClient` already setup (it will be referred as `accountsClient` variable). + +## Start the association + +First step will be to request a new association for the device. To do so, we have to call the `mfaAssociate` client function. + +```typescript +// This will trigger a request on the server +const data = await accountsClient.mfaAssociate('otp'); + +// Data have the following structure +{ + // Id of the object stored in the database + id: string; + // Secret to show to the user so they can save it in a safe place + secret: string; + // Otpauth formatted uri so you can + otpauthUri: string; +} +``` + +## Displaying a QR code to the user + +Second step will be to display a QR code that can be scanned by a user so it will be added easily to his authenticator app. + +- If you are using plain js you can do the following: + +```javascript +import qrcode from 'qrcode'; + +const data = await accountsClient.mfaAssociate('otp'); + +qrcode.toDataURL(data.otpauthUri, (err, imageUrl) => { + if (err) { + console.log('Error with QR'); + return; + } + // You can now display the imageUrl to the user so he can scan it with his authenticator app + console.log(imageUrl); +}); +``` + +- If you are using react you can do the following: + +```javascript +import QRCode from 'qrcode.react'; + +const data = await accountsClient.mfaAssociate('otp'); + +// In your render function +; +``` + +## Confirm the association + +TODO + +### Examples + +To see how to integrate the package into your app you can check these examples: + +- [React GraphQL](https://github.com/accounts-js/accounts/tree/master/examples/react-graphql-typescript) +- [React REST](https://github.com/accounts-js/accounts/tree/master/examples/react-rest-typescript) diff --git a/website/sidebars.js b/website/sidebars.js index 01af76a96..14642a946 100755 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -28,6 +28,7 @@ module.exports = { 'strategies/oauth', 'strategies/twitter', ], + MFA: ['mfa/otp'], Cookbook: ['cookbook/react-native'], }, api: { From df70b3bcb0bc0d96ebb70fd2fe3f59917335039d Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 24 Sep 2019 15:41:39 +0200 Subject: [PATCH 026/146] Update otp.md --- website/docs/mfa/otp.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/website/docs/mfa/otp.md b/website/docs/mfa/otp.md index 26c18035a..df2cd1f12 100644 --- a/website/docs/mfa/otp.md +++ b/website/docs/mfa/otp.md @@ -4,10 +4,10 @@ title: One-Time Password sidebar_label: OTP --- -[Github](https://github.com/accounts-js/accounts/tree/master/packages/authenticator-api) | -[npm](https://www.npmjs.com/package/@accounts/authenticator-api) +[Github](https://github.com/accounts-js/accounts/tree/master/packages/authenticator-otp) | +[npm](https://www.npmjs.com/package/@accounts/authenticator-otp) -The `@accounts/authenticator-api` package provide a secure way to use OTP as a multi factor authentication step. +The `@accounts/authenticator-otp` package provide a secure way to use OTP as a multi factor authentication step. This package will give the ability to your users to link an authenticator app (eg: Google Authenticator) to secure their account. > In order to generate and verify the validity of the OTP codes we are using the [otplib](https://github.com/yeojz/otplib) npm package @@ -20,10 +20,10 @@ The first step is to setup the server configuration. ``` # With yarn -yarn add @accounts/authenticator-api +yarn add @accounts/authenticator-otp # Or if you use npm -npm install @accounts/authenticator-api --save +npm install @accounts/authenticator-otp --save ``` ## Usage From 35f8bdb36629215abd31ad4e22f6f5fda4e7a678 Mon Sep 17 00:00:00 2001 From: pradel Date: Mon, 30 Sep 2019 10:21:28 +0200 Subject: [PATCH 027/146] missing id in interface --- examples/react-rest-typescript/src/TwoFactor.tsx | 1 + 1 file changed, 1 insertion(+) diff --git a/examples/react-rest-typescript/src/TwoFactor.tsx b/examples/react-rest-typescript/src/TwoFactor.tsx index f8b9d92e5..090550160 100644 --- a/examples/react-rest-typescript/src/TwoFactor.tsx +++ b/examples/react-rest-typescript/src/TwoFactor.tsx @@ -5,6 +5,7 @@ import QRCode from 'qrcode.react'; import { accountsRest, accountsClient } from './accounts'; interface OTP { + id: string; otpauthUri: string; secret: string; } From eb05aca85905cae4e354b5ebf3c8e716cce1da6e Mon Sep 17 00:00:00 2001 From: pradel Date: Mon, 30 Sep 2019 10:32:58 +0200 Subject: [PATCH 028/146] Update index.ts --- packages/authenticator-otp/src/index.ts | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/packages/authenticator-otp/src/index.ts b/packages/authenticator-otp/src/index.ts index d65a10d51..281685f8a 100644 --- a/packages/authenticator-otp/src/index.ts +++ b/packages/authenticator-otp/src/index.ts @@ -42,11 +42,14 @@ export class AuthenticatorOtp implements AuthenticatorService { /** * Start the association of a new OTP device */ - public async associate(userId: string, params: any) { + public async associate( + userId: string, + params: any + ): Promise<{ id: string; secret: string; otpauthUri: string }> { const secret = otplib.authenticator.generateSecret(); const userName = this.options.userName ? await this.options.userName(userId) : userId; const otpauthUri = otplib.authenticator.keyuri(userName, this.options.appName, secret); - // TODO generate some recovery codes like slack is doing? + // TODO generate some recovery codes like slack is doing (as an option)? const authenticatorId = await this.db.createAuthenticator({ type: this.serviceName, @@ -65,7 +68,10 @@ export class AuthenticatorOtp implements AuthenticatorService { /** * Verify that the code provided by the user is valid */ - public async authenticate(authenticatorId: string, { code }: { code?: string }) { + public async authenticate( + authenticatorId: string, + { code }: { code?: string } + ): Promise { if (!code) { throw new Error('Code required'); } From 08d5acabbb93d64d7fcf4f4364763a3a8db89db3 Mon Sep 17 00:00:00 2001 From: pradel Date: Mon, 18 Nov 2019 11:35:43 +0100 Subject: [PATCH 029/146] Update package.json --- packages/authenticator-otp/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/authenticator-otp/package.json b/packages/authenticator-otp/package.json index 83e2ef674..9bdff73fe 100644 --- a/packages/authenticator-otp/package.json +++ b/packages/authenticator-otp/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/authenticator-otp", - "version": "0.19.0", + "version": "0.20.0", "description": "@accounts/authenticator-otp", "main": "lib/index.js", "typings": "lib/index.d.ts", From 75a67ad391df0eaff1940ceb602a0f6aae37b4cc Mon Sep 17 00:00:00 2001 From: pradel Date: Mon, 18 Nov 2019 11:37:25 +0100 Subject: [PATCH 030/146] Update --- packages/authenticator-otp/package.json | 6 ++--- yarn.lock | 32 ------------------------- 2 files changed, 3 insertions(+), 35 deletions(-) diff --git a/packages/authenticator-otp/package.json b/packages/authenticator-otp/package.json index 9bdff73fe..b5c945c8c 100644 --- a/packages/authenticator-otp/package.json +++ b/packages/authenticator-otp/package.json @@ -29,18 +29,18 @@ "author": "Leo Pradel", "license": "MIT", "devDependencies": { - "@accounts/server": "^0.19.0", + "@accounts/server": "^0.20.0", "@types/jest": "24.0.18", "@types/node": "12.7.4", "jest": "24.9.0", "rimraf": "3.0.0" }, "dependencies": { - "@accounts/types": "^0.19.0", + "@accounts/types": "^0.20.0", "otplib": "11.0.1", "tslib": "1.10.0" }, "peerDependencies": { - "@accounts/server": "^0.19.0" + "@accounts/server": "^0.20.0" } } diff --git a/yarn.lock b/yarn.lock index 41dde31ed..f044571ca 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,26 +2,6 @@ # yarn lockfile v1 -"@accounts/server@^0.19.0": - version "0.19.0" - resolved "https://registry.yarnpkg.com/@accounts/server/-/server-0.19.0.tgz#701aaa2f874009a29aa210bb298b4bddb9d6b486" - integrity sha512-xdG/L1BnZLIdkU2Cf3+x2bO0oxbwMzQjbNotXHIJEKZ5fILJ9ZGFL7UF5w2OaTk5sMvsCtJNOF//lueH27Hjww== - dependencies: - "@accounts/types" "^0.19.0" - "@types/jsonwebtoken" "8.3.3" - emittery "0.4.1" - jsonwebtoken "8.5.1" - jwt-decode "2.2.0" - lodash "4.17.15" - tslib "1.10.0" - -"@accounts/types@^0.19.0": - version "0.19.0" - resolved "https://registry.yarnpkg.com/@accounts/types/-/types-0.19.0.tgz#283e5a236ad79e37a017ef843254ff6699ccbe78" - integrity sha512-Su72qBZN2SpNrlC5yIFg/eyV18dEIDvfKyqmiPNlwFlIFAzNUoQCFr9i3+r/F5Zz3DFzvHb7dYFRCzFgtozPCg== - dependencies: - tslib "1.10.0" - "@apollo/react-common@^3.1.2": version "3.1.3" resolved "https://registry.yarnpkg.com/@apollo/react-common/-/react-common-3.1.3.tgz#ddc34f6403f55d47c0da147fd4756dfd7c73dac5" @@ -2885,13 +2865,6 @@ resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.3.tgz#bdfd69d61e464dcc81b25159c270d75a73c1a636" integrity sha512-Il2DtDVRGDcqjDtE+rF8iqg1CArehSK84HZJCT7AMITlyXRBpuPhqGLDQMowraqqu1coEaimg4ZOqggt6L6L+A== -"@types/jsonwebtoken@8.3.3": - version "8.3.3" - resolved "https://registry.yarnpkg.com/@types/jsonwebtoken/-/jsonwebtoken-8.3.3.tgz#eafeea8239c74b02263d204c0e1175d5cd0bb85f" - integrity sha512-mofwpvFbm2AUxD5mg4iQPc2o/+ubM200R/L86kR17SeC99jM3gEnB9hy16ln3kZkxM5LnGpDJclxeUNEHhehng== - dependencies: - "@types/node" "*" - "@types/jsonwebtoken@8.3.5": version "8.3.5" resolved "https://registry.yarnpkg.com/@types/jsonwebtoken/-/jsonwebtoken-8.3.5.tgz#ff9be1151a844095df1ff5f723651298c2c07659" @@ -6433,11 +6406,6 @@ elliptic@^6.0.0: minimalistic-assert "^1.0.0" minimalistic-crypto-utils "^1.0.0" -emittery@0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.4.1.tgz#abe9d3297389ba424ac87e53d1c701962ce7433d" - integrity sha512-r4eRSeStEGf6M5SKdrQhhLK5bOwOBxQhIE3YSTnZE3GpKiLfnnhE+tPtrJE79+eDJgm39BM6LSoI8SCx4HbwlQ== - emittery@0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.5.1.tgz#9fbbf57e9aecc258d727d78858a598eb05ea5c96" From 4f32a70df0f69cfca053be5816e5f19c76f548da Mon Sep 17 00:00:00 2001 From: pradel Date: Mon, 18 Nov 2019 15:23:46 +0100 Subject: [PATCH 031/146] Upgrade deps --- examples/accounts-boost/package.json | 2 +- .../package.json | 2 +- .../graphql-server-typescript/package.json | 6 +- .../react-graphql-typescript/package.json | 2 +- examples/react-rest-typescript/package.json | 2 +- examples/rest-express-typescript/package.json | 4 +- package.json | 2 +- packages/authenticator-otp/package.json | 2 +- packages/client-password/package.json | 2 +- packages/client/package.json | 2 +- packages/database-manager/package.json | 2 +- packages/database-mongo/package.json | 4 +- packages/database-redis/package.json | 4 +- packages/database-tests/package.json | 2 +- packages/database-typeorm/package.json | 2 +- packages/e2e/package.json | 8 +- packages/error/package.json | 2 +- packages/express-session/package.json | 4 +- packages/graphql-api/package.json | 4 +- packages/graphql-client/package.json | 2 +- packages/oauth-instagram/package.json | 2 +- packages/oauth-twitter/package.json | 2 +- packages/oauth/package.json | 2 +- packages/password/package.json | 4 +- packages/rest-client/package.json | 4 +- packages/rest-express/package.json | 4 +- packages/server/package.json | 2 +- packages/two-factor/package.json | 4 +- packages/types/package.json | 2 +- yarn.lock | 100 +++++++++--------- 30 files changed, 93 insertions(+), 93 deletions(-) diff --git a/examples/accounts-boost/package.json b/examples/accounts-boost/package.json index aae121b4f..261c5c1c6 100644 --- a/examples/accounts-boost/package.json +++ b/examples/accounts-boost/package.json @@ -26,7 +26,7 @@ }, "devDependencies": { "nodemon": "1.19.4", - "ts-node": "8.5.0", + "ts-node": "8.5.2", "typescript": "3.7.2" } } diff --git a/examples/graphql-server-typeorm-postgres/package.json b/examples/graphql-server-typeorm-postgres/package.json index 043c1ede6..568280b06 100755 --- a/examples/graphql-server-typeorm-postgres/package.json +++ b/examples/graphql-server-typeorm-postgres/package.json @@ -28,7 +28,7 @@ "@accounts/types": "^0.20.0", "@types/node": "12.12.7", "nodemon": "1.19.4", - "ts-node": "8.5.0", + "ts-node": "8.5.2", "typescript": "3.7.2" } } diff --git a/examples/graphql-server-typescript/package.json b/examples/graphql-server-typescript/package.json index 21791fd5e..afca4570d 100644 --- a/examples/graphql-server-typescript/package.json +++ b/examples/graphql-server-typescript/package.json @@ -22,14 +22,14 @@ "graphql-toolkit": "0.6.8", "graphql-tools": "4.0.6", "lodash": "4.17.15", - "mongoose": "5.7.10", + "mongoose": "5.7.11", "tslib": "1.10.0" }, "devDependencies": { - "@types/mongoose": "5.5.30", + "@types/mongoose": "5.5.32", "@types/node": "12.12.7", "nodemon": "1.19.4", - "ts-node": "8.5.0", + "ts-node": "8.5.2", "typescript": "3.7.2" } } diff --git a/examples/react-graphql-typescript/package.json b/examples/react-graphql-typescript/package.json index 5288a899c..0fadc0eb9 100644 --- a/examples/react-graphql-typescript/package.json +++ b/examples/react-graphql-typescript/package.json @@ -48,7 +48,7 @@ "@types/qrcode.react": "0.9.0", "@types/react": "16.9.11", "@types/react-dom": "16.9.4", - "@types/react-router": "5.1.2", + "@types/react-router": "5.1.3", "@types/react-router-dom": "5.1.2", "react-scripts": "3.2.0", "typescript": "3.7.2" diff --git a/examples/react-rest-typescript/package.json b/examples/react-rest-typescript/package.json index 5c1379cc2..90e0e8802 100644 --- a/examples/react-rest-typescript/package.json +++ b/examples/react-rest-typescript/package.json @@ -40,7 +40,7 @@ "@types/qrcode.react": "0.9.0", "@types/react": "16.9.11", "@types/react-dom": "16.9.4", - "@types/react-router": "5.1.2", + "@types/react-router": "5.1.3", "@types/react-router-dom": "5.1.2", "react-scripts": "3.2.0", "typescript": "3.7.2" diff --git a/examples/rest-express-typescript/package.json b/examples/rest-express-typescript/package.json index 1ea117a77..9db8130de 100644 --- a/examples/rest-express-typescript/package.json +++ b/examples/rest-express-typescript/package.json @@ -18,13 +18,13 @@ "body-parser": "1.19.0", "cors": "2.8.5", "express": "4.17.1", - "mongoose": "5.7.10", + "mongoose": "5.7.11", "tslib": "1.10.0" }, "devDependencies": { "@types/node": "12.12.7", "nodemon": "1.19.4", - "ts-node": "8.5.0", + "ts-node": "8.5.2", "typescript": "3.7.2" } } diff --git a/package.json b/package.json index 3ee01b65e..4674d7407 100644 --- a/package.json +++ b/package.json @@ -69,7 +69,7 @@ "eslint-plugin-prettier": "3.1.1", "husky": "3.0.9", "lerna": "3.18.4", - "lint-staged": "9.4.2", + "lint-staged": "9.4.3", "opencollective": "1.0.3", "prettier": "1.19.1", "ts-jest": "24.1.0", diff --git a/packages/authenticator-otp/package.json b/packages/authenticator-otp/package.json index b5c945c8c..6eed0ef33 100644 --- a/packages/authenticator-otp/package.json +++ b/packages/authenticator-otp/package.json @@ -30,7 +30,7 @@ "license": "MIT", "devDependencies": { "@accounts/server": "^0.20.0", - "@types/jest": "24.0.18", + "@types/jest": "24.0.23", "@types/node": "12.7.4", "jest": "24.9.0", "rimraf": "3.0.0" diff --git a/packages/client-password/package.json b/packages/client-password/package.json index fb4fbac61..088170696 100644 --- a/packages/client-password/package.json +++ b/packages/client-password/package.json @@ -29,7 +29,7 @@ "author": "Leo Pradel", "license": "MIT", "devDependencies": { - "@types/jest": "24.0.22", + "@types/jest": "24.0.23", "@types/node": "12.12.7", "jest": "24.9.0", "rimraf": "3.0.0" diff --git a/packages/client/package.json b/packages/client/package.json index 22b867757..156dee68d 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -43,7 +43,7 @@ "author": "Tim Mikeladze", "license": "MIT", "devDependencies": { - "@types/jest": "24.0.22", + "@types/jest": "24.0.23", "@types/jwt-decode": "2.2.1", "@types/node": "12.12.7", "jest": "24.9.0", diff --git a/packages/database-manager/package.json b/packages/database-manager/package.json index 32503e3ea..b97f71554 100644 --- a/packages/database-manager/package.json +++ b/packages/database-manager/package.json @@ -35,7 +35,7 @@ "author": "Elies Lou (Aetherall)", "license": "MIT", "devDependencies": { - "@types/jest": "24.0.22", + "@types/jest": "24.0.23", "@types/node": "12.12.7", "jest": "24.9.0", "rimraf": "3.0.0" diff --git a/packages/database-mongo/package.json b/packages/database-mongo/package.json index 7aa3c62f6..539807f2f 100644 --- a/packages/database-mongo/package.json +++ b/packages/database-mongo/package.json @@ -30,8 +30,8 @@ "license": "MIT", "devDependencies": { "@accounts/database-tests": "^0.20.0", - "@types/jest": "24.0.22", - "@types/lodash": "4.14.146", + "@types/jest": "24.0.23", + "@types/lodash": "4.14.148", "@types/mongodb": "3.3.10", "@types/node": "12.12.7", "jest": "24.9.0" diff --git a/packages/database-redis/package.json b/packages/database-redis/package.json index 79732f670..5fb29cdf8 100644 --- a/packages/database-redis/package.json +++ b/packages/database-redis/package.json @@ -34,8 +34,8 @@ "devDependencies": { "@accounts/database-tests": "^0.20.0", "@types/ioredis": "4.0.19", - "@types/jest": "24.0.22", - "@types/lodash": "4.14.146", + "@types/jest": "24.0.23", + "@types/lodash": "4.14.148", "@types/node": "12.12.7", "@types/shortid": "0.0.29", "jest": "24.9.0" diff --git a/packages/database-tests/package.json b/packages/database-tests/package.json index a17ac106f..2f6f93255 100644 --- a/packages/database-tests/package.json +++ b/packages/database-tests/package.json @@ -18,7 +18,7 @@ "author": "Leo Pradel", "license": "MIT", "devDependencies": { - "@types/jest": "24.0.22", + "@types/jest": "24.0.23", "@types/node": "12.12.7", "jest": "24.9.0" }, diff --git a/packages/database-typeorm/package.json b/packages/database-typeorm/package.json index 45e3be2d3..6c929631d 100644 --- a/packages/database-typeorm/package.json +++ b/packages/database-typeorm/package.json @@ -27,7 +27,7 @@ "license": "MIT", "devDependencies": { "@accounts/database-tests": "^0.20.0", - "@types/jest": "24.0.22", + "@types/jest": "24.0.23", "@types/node": "12.12.7", "jest": "24.9.0", "pg": "7.12.1" diff --git a/packages/e2e/package.json b/packages/e2e/package.json index d759a323e..29f234e66 100644 --- a/packages/e2e/package.json +++ b/packages/e2e/package.json @@ -23,9 +23,9 @@ "devDependencies": { "@types/body-parser": "1.17.1", "@types/express": "4.17.2", - "@types/jest": "24.0.22", - "@types/lodash": "4.14.146", - "@types/mongoose": "5.5.30", + "@types/jest": "24.0.23", + "@types/lodash": "4.14.148", + "@types/mongoose": "5.5.32", "@types/node": "12.12.7", "@types/node-fetch": "2.5.3", "jest": "24.9.0", @@ -51,7 +51,7 @@ "express": "4.17.1", "graphql": "14.5.8", "lodash": "4.17.15", - "mongoose": "5.7.10", + "mongoose": "5.7.11", "node-fetch": "2.6.0", "tslib": "1.10.0", "typeorm": "0.2.20" diff --git a/packages/error/package.json b/packages/error/package.json index 9c5d6ae74..26ff58599 100644 --- a/packages/error/package.json +++ b/packages/error/package.json @@ -43,7 +43,7 @@ "tslib": "1.10.0" }, "devDependencies": { - "@types/jest": "24.0.22", + "@types/jest": "24.0.23", "@types/node": "12.12.7", "jest": "24.9.0", "rimraf": "3.0.0" diff --git a/packages/express-session/package.json b/packages/express-session/package.json index 04eb5d2e0..7419c4bba 100644 --- a/packages/express-session/package.json +++ b/packages/express-session/package.json @@ -37,8 +37,8 @@ "@accounts/server": "^0.20.0", "@types/express": "4.17.2", "@types/express-session": "1.15.15", - "@types/jest": "24.0.22", - "@types/lodash": "4.14.146", + "@types/jest": "24.0.23", + "@types/lodash": "4.14.148", "@types/request-ip": "0.0.34", "express": "4.17.1", "express-session": "1.17.0", diff --git a/packages/graphql-api/package.json b/packages/graphql-api/package.json index 6f01c8e5c..d0ef51cf5 100644 --- a/packages/graphql-api/package.json +++ b/packages/graphql-api/package.json @@ -40,14 +40,14 @@ "@graphql-codegen/typescript-resolvers": "1.8.3", "@graphql-codegen/typescript-type-graphql": "1.8.3", "@graphql-modules/core": "0.7.13", - "@types/jest": "24.0.22", + "@types/jest": "24.0.23", "@types/request-ip": "0.0.34", "concurrently": "5.0.0", "graphql": "14.5.8", "graphql-tools": "4.0.6", "jest": "24.9.0", "lodash": "4.17.15", - "ts-node": "8.5.0" + "ts-node": "8.5.2" }, "peerDependencies": { "@accounts/password": "^0.19.0", diff --git a/packages/graphql-client/package.json b/packages/graphql-client/package.json index e17c9ae15..9bd13bbab 100644 --- a/packages/graphql-client/package.json +++ b/packages/graphql-client/package.json @@ -25,7 +25,7 @@ }, "homepage": "https://github.com/js-accounts/graphql#readme", "devDependencies": { - "@types/jest": "24.0.22", + "@types/jest": "24.0.23", "jest": "24.9.0", "lodash": "4.17.15" }, diff --git a/packages/oauth-instagram/package.json b/packages/oauth-instagram/package.json index 1f430e947..b84a8b1ba 100644 --- a/packages/oauth-instagram/package.json +++ b/packages/oauth-instagram/package.json @@ -23,7 +23,7 @@ "tslib": "1.10.0" }, "devDependencies": { - "@types/jest": "24.0.22", + "@types/jest": "24.0.23", "@types/node": "12.12.7", "@types/request-promise": "4.1.44", "jest": "24.9.0" diff --git a/packages/oauth-twitter/package.json b/packages/oauth-twitter/package.json index d4a24d873..7f075c211 100644 --- a/packages/oauth-twitter/package.json +++ b/packages/oauth-twitter/package.json @@ -22,7 +22,7 @@ "tslib": "1.10.0" }, "devDependencies": { - "@types/jest": "24.0.22", + "@types/jest": "24.0.23", "@types/node": "12.12.7", "@types/oauth": "0.9.1", "jest": "24.9.0" diff --git a/packages/oauth/package.json b/packages/oauth/package.json index 0e12137af..ca2775673 100644 --- a/packages/oauth/package.json +++ b/packages/oauth/package.json @@ -24,7 +24,7 @@ }, "devDependencies": { "@accounts/server": "^0.20.0", - "@types/jest": "24.0.22", + "@types/jest": "24.0.23", "@types/node": "12.12.7", "jest": "24.9.0" } diff --git a/packages/password/package.json b/packages/password/package.json index 1b54f3e7b..9299dff21 100644 --- a/packages/password/package.json +++ b/packages/password/package.json @@ -27,8 +27,8 @@ "@accounts/server": "^0.20.0", "@accounts/types": "^0.20.0", "@types/bcryptjs": "2.4.2", - "@types/jest": "24.0.22", - "@types/lodash": "4.14.146", + "@types/jest": "24.0.23", + "@types/lodash": "4.14.148", "@types/node": "12.12.7", "jest": "24.9.0", "rimraf": "3.0.0" diff --git a/packages/rest-client/package.json b/packages/rest-client/package.json index b6423dc58..1a3273346 100644 --- a/packages/rest-client/package.json +++ b/packages/rest-client/package.json @@ -39,8 +39,8 @@ "license": "MIT", "devDependencies": { "@accounts/client": "^0.20.0", - "@types/jest": "24.0.22", - "@types/lodash": "4.14.146", + "@types/jest": "24.0.23", + "@types/lodash": "4.14.148", "@types/node": "12.12.7", "jest": "24.9.0", "node-fetch": "2.6.0" diff --git a/packages/rest-express/package.json b/packages/rest-express/package.json index a19369d3a..7df485131 100644 --- a/packages/rest-express/package.json +++ b/packages/rest-express/package.json @@ -37,8 +37,8 @@ "devDependencies": { "@accounts/server": "^0.20.0", "@types/express": "4.17.2", - "@types/jest": "24.0.22", - "@types/lodash": "4.14.146", + "@types/jest": "24.0.23", + "@types/lodash": "4.14.148", "@types/node": "12.12.7", "@types/request-ip": "0.0.34", "jest": "24.9.0" diff --git a/packages/server/package.json b/packages/server/package.json index 8b0f7f52d..2fb9462d4 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -49,7 +49,7 @@ "tslib": "1.10.0" }, "devDependencies": { - "@types/jest": "24.0.22", + "@types/jest": "24.0.23", "@types/jwt-decode": "2.2.1", "@types/node": "12.12.7", "jest": "24.9.0", diff --git a/packages/two-factor/package.json b/packages/two-factor/package.json index 4440de6aa..fb2fef94f 100644 --- a/packages/two-factor/package.json +++ b/packages/two-factor/package.json @@ -14,7 +14,7 @@ "compile": "tsc", "prepublishOnly": "yarn compile", "test": "npm run test", - "testonly": "jest --coverage", + "testonly": "jest", "coverage": "jest --coverage" }, "jest": { @@ -30,7 +30,7 @@ "tslib": "1.10.0" }, "devDependencies": { - "@types/jest": "24.0.22", + "@types/jest": "24.0.23", "@types/node": "12.12.7", "jest": "24.9.0" } diff --git a/packages/types/package.json b/packages/types/package.json index 2d249a77b..55097204b 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -43,7 +43,7 @@ "tslib": "1.10.0" }, "devDependencies": { - "@types/jest": "24.0.22", + "@types/jest": "24.0.23", "@types/node": "12.12.7", "jest": "24.9.0", "rimraf": "3.0.0" diff --git a/yarn.lock b/yarn.lock index f044571ca..eb652b3c0 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2841,24 +2841,12 @@ "@types/istanbul-lib-coverage" "*" "@types/istanbul-lib-report" "*" -"@types/jest-diff@*": - version "20.0.1" - resolved "https://registry.yarnpkg.com/@types/jest-diff/-/jest-diff-20.0.1.tgz#35cc15b9c4f30a18ef21852e255fdb02f6d59b89" - integrity sha512-yALhelO3i0hqZwhjtcr6dYyaLoCHbAMshwtj6cGxTvHZAKXHsYGdff6E8EPw3xLKY0ELUTQ69Q1rQiJENnccMA== - -"@types/jest@24.0.18": - version "24.0.18" - resolved "https://registry.yarnpkg.com/@types/jest/-/jest-24.0.18.tgz#9c7858d450c59e2164a8a9df0905fc5091944498" - integrity sha512-jcDDXdjTcrQzdN06+TSVsPPqxvsZA/5QkYfIZlq1JMw7FdP5AZylbOc+6B/cuDurctRe+MziUMtQ3xQdrbjqyQ== - dependencies: - "@types/jest-diff" "*" - -"@types/jest@24.0.22": - version "24.0.22" - resolved "https://registry.yarnpkg.com/@types/jest/-/jest-24.0.22.tgz#08a50be08e78aba850a1185626e71d31e2336145" - integrity sha512-t2OvhNZnrNjlzi2i0/cxbLVM59WN15I2r1Qtb7wDv28PnV9IzrPtagFRey/S9ezdLD0zyh1XGMQIEQND2YEfrw== +"@types/jest@24.0.23": + version "24.0.23" + resolved "https://registry.yarnpkg.com/@types/jest/-/jest-24.0.23.tgz#046f8e2ade026fe831623e361a36b6fb9a4463e4" + integrity sha512-L7MBvwfNpe7yVPTXLn32df/EK+AMBFAFvZrRuArGs7npEWnlziUXK+5GMIUTI4NIuwok3XibsjXCs5HxviYXjg== dependencies: - "@types/jest-diff" "*" + jest-diff "^24.3.0" "@types/json-schema@^7.0.3": version "7.0.3" @@ -2901,7 +2889,12 @@ "@types/koa-compose" "*" "@types/node" "*" -"@types/lodash@4.14.146", "@types/lodash@^4.14.138": +"@types/lodash@4.14.148": + version "4.14.148" + resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.148.tgz#ffa2786721707b335c6aa1465e6d3d74016fbd3e" + integrity sha512-05+sIGPev6pwpHF7NZKfP3jcXhXsIVFnYyVRT4WOB0me62E8OlWfTN+sKyt2/rqN+ETxuHAtgTSK1v71F0yncg== + +"@types/lodash@^4.14.138": version "4.14.146" resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.146.tgz#de0d2c8610012f12a6a796455054cbc654f8fecf" integrity sha512-JzJcmQ/ikHSv7pbvrVNKJU5j9jL9VLf3/gqs048CEnBVVVEv4kve3vLxoPHGvclutS+Il4SBIuQQ087m1eHffw== @@ -2936,10 +2929,10 @@ "@types/bson" "*" "@types/node" "*" -"@types/mongoose@5.5.30": - version "5.5.30" - resolved "https://registry.yarnpkg.com/@types/mongoose/-/mongoose-5.5.30.tgz#8b6b06e4142771204ae1abec5773157b8a94ec53" - integrity sha512-LQ7Q/MoRLhtYn1zGefsTrobeg4hieXe6MGYM2plbZHhqf4Ud1zRuEwjDQIjCgDIyMPnACiyCvPMTyzHaoSp0SA== +"@types/mongoose@5.5.32": + version "5.5.32" + resolved "https://registry.yarnpkg.com/@types/mongoose/-/mongoose-5.5.32.tgz#8a76c5be029086c1225bf88ed3ca83f01181121f" + integrity sha512-2BemWy7SynT87deweqc2eCzg6pRyTVlnnMat2JxsTNoyeSFKC27b19qBTeKRfBVt+SjtaWd/ud4faUaObONwBA== dependencies: "@types/mongodb" "*" "@types/node" "*" @@ -2951,11 +2944,21 @@ dependencies: "@types/node" "*" -"@types/node@*", "@types/node@12.12.7", "@types/node@12.7.4", "@types/node@>= 8", "@types/node@>=6", "@types/node@^10.1.0": +"@types/node@*", "@types/node@12.12.7", "@types/node@>= 8", "@types/node@>=6": version "12.12.7" resolved "https://registry.yarnpkg.com/@types/node/-/node-12.12.7.tgz#01e4ea724d9e3bd50d90c11fd5980ba317d8fa11" integrity sha512-E6Zn0rffhgd130zbCbAr/JdXfXkoOUFAKNs/rF8qnafSJ8KYaA/j3oz7dcwal+lYjLA7xvdd5J4wdYpCTlP8+w== +"@types/node@12.7.4": + version "12.7.4" + resolved "https://registry.yarnpkg.com/@types/node/-/node-12.7.4.tgz#64db61e0359eb5a8d99b55e05c729f130a678b04" + integrity sha512-W0+n1Y+gK/8G2P/piTkBBN38Qc5Q1ZSO6B5H3QmPCUewaiXOo2GCAWZ4ElZCcNhjJuBSUSLGFUJnmlCn5+nxOQ== + +"@types/node@^10.1.0": + version "10.17.5" + resolved "https://registry.yarnpkg.com/@types/node/-/node-10.17.5.tgz#c1920150f7b90708a7d0f3add12a06bc9123c055" + integrity sha512-RElZIr/7JreF1eY6oD5RF3kpmdcreuQPjg5ri4oQ5g9sq7YWU8HkfB3eH8GwAwxf5OaCh0VPi7r4N/yoTGelrA== + "@types/normalize-package-data@^2.4.0": version "2.4.0" resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz#e486d0d97396d79beedd0a6e33f4534ff6b4973e" @@ -3006,7 +3009,7 @@ "@types/react" "*" "@types/react-router" "*" -"@types/react-router@*", "@types/react-router@5.1.2": +"@types/react-router@*": version "5.1.2" resolved "https://registry.yarnpkg.com/@types/react-router/-/react-router-5.1.2.tgz#41e5e6aa333a7b9a2bfdac753c04e1ca4b3e0d21" integrity sha512-euC3SiwDg3NcjFdNmFL8uVuAFTpZJm0WMFUw+4eXMUnxa7M9RGFEG0szt0z+/Zgk4G2k9JBFhaEnY64RBiFmuw== @@ -3014,6 +3017,14 @@ "@types/history" "*" "@types/react" "*" +"@types/react-router@5.1.3": + version "5.1.3" + resolved "https://registry.yarnpkg.com/@types/react-router/-/react-router-5.1.3.tgz#7c7ca717399af64d8733d8cb338dd43641b96f2d" + integrity sha512-0gGhmerBqN8CzlnDmSgGNun3tuZFXerUclWkqEhozdLaJtfcJRUTGkKaEKk+/MpHd1KDS1+o2zb/3PkBUiv2qQ== + dependencies: + "@types/history" "*" + "@types/react" "*" + "@types/react-transition-group@^4.2.0": version "4.2.3" resolved "https://registry.yarnpkg.com/@types/react-transition-group/-/react-transition-group-4.2.3.tgz#4924133f7268694058e415bf7aea2d4c21131470" @@ -9153,7 +9164,7 @@ jest-config@^24.9.0: pretty-format "^24.9.0" realpath-native "^1.1.0" -jest-diff@^24.9.0: +jest-diff@^24.3.0, jest-diff@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-24.9.0.tgz#931b7d0d5778a1baf7452cb816e325e3724055da" integrity sha512-qMfrTs8AdJE2iqrTp0hzh7kTd2PQWrsFyj9tORoKmu32xjPjeE4NyjVRDz8ybYwqS2ik8N4hsIpiVTyFeo2lBQ== @@ -9916,10 +9927,10 @@ lines-and-columns@^1.1.6: resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.1.6.tgz#1c00c743b433cd0a4e80758f7b64a57440d9ff00" integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA= -lint-staged@9.4.2: - version "9.4.2" - resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-9.4.2.tgz#14cb577a9512f520691f8b5aefce6a8f7ead6c04" - integrity sha512-OFyGokJSWTn2M6vngnlLXjaHhi8n83VIZZ5/1Z26SULRUWgR3ITWpAEQC9Pnm3MC/EpCxlwts/mQWDHNji2+zA== +lint-staged@9.4.3: + version "9.4.3" + resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-9.4.3.tgz#f55ad5f94f6e105294bfd6499b23142961f7b982" + integrity sha512-PejnI+rwOAmKAIO+5UuAZU9gxdej/ovSEOAY34yMfC3OS4Ac82vCBPzAWLReR9zCPOMqeVwQRaZ3bUBpAsaL2Q== dependencies: chalk "^2.4.2" commander "^2.20.0" @@ -10677,18 +10688,7 @@ modify-values@^1.0.0: resolved "https://registry.yarnpkg.com/modify-values/-/modify-values-1.0.1.tgz#b3939fa605546474e3e3e3c63d64bd43b4ee6022" integrity sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw== -mongodb@3.3.3: - version "3.3.3" - resolved "https://registry.yarnpkg.com/mongodb/-/mongodb-3.3.3.tgz#509cad2225a1c56c65a331ed73a0d5d4ed5cbe67" - integrity sha512-MdRnoOjstmnrKJsK8PY0PjP6fyF/SBS4R8coxmhsfEU7tQ46/J6j+aSHF2n4c2/H8B+Hc/Klbfp8vggZfI0mmA== - dependencies: - bson "^1.1.1" - require_optional "^1.0.1" - safe-buffer "^5.1.2" - optionalDependencies: - saslprep "^1.0.0" - -mongodb@^3.3.4: +mongodb@3.3.4, mongodb@^3.3.4: version "3.3.4" resolved "https://registry.yarnpkg.com/mongodb/-/mongodb-3.3.4.tgz#f52eec4a04005101e63715d4d1f67bf784fa0aef" integrity sha512-6fmHu3FJTpeZxacJcfjUGIP3BSteG0l2cxLkSrf1nnnS1OrlnVGiP9P/wAC4aB6dM6H4vQ2io8YDjkuPkje7AA== @@ -10704,14 +10704,14 @@ mongoose-legacy-pluralize@1.0.2: resolved "https://registry.yarnpkg.com/mongoose-legacy-pluralize/-/mongoose-legacy-pluralize-1.0.2.tgz#3ba9f91fa507b5186d399fb40854bff18fb563e4" integrity sha512-Yo/7qQU4/EyIS8YDFSeenIvXxZN+ld7YdV9LqFVQJzTLye8unujAWPZ4NWKfFA+RNjh+wvTWKY9Z3E5XM6ZZiQ== -mongoose@5.7.10: - version "5.7.10" - resolved "https://registry.yarnpkg.com/mongoose/-/mongoose-5.7.10.tgz#92bf817f50cf56211f85a079445257a4cc55271f" - integrity sha512-KpQosHPXmlNJKZbiP19mtmC0icaziRlB+xZ14R8q7jY7+OgbbynLD9VWSFb1CyzJX5ebdkVSGmay9HXn341hTA== +mongoose@5.7.11: + version "5.7.11" + resolved "https://registry.yarnpkg.com/mongoose/-/mongoose-5.7.11.tgz#74a1293deb7a69d41abd447056f5d522e28bab64" + integrity sha512-KpXGBTXQTKfTlePpZMY+FBsk9wiyp2gzfph9AsLPfWleK1x2GJY+6xpKx2kKIgLustgNq16OOrqwlAOGUbv3kg== dependencies: bson "~1.1.1" kareem "2.3.1" - mongodb "3.3.3" + mongodb "3.3.4" mongoose-legacy-pluralize "1.0.2" mpath "0.6.0" mquery "3.2.2" @@ -15187,10 +15187,10 @@ ts-log@2.1.4: resolved "https://registry.yarnpkg.com/ts-log/-/ts-log-2.1.4.tgz#063c5ad1cbab5d49d258d18015963489fb6fb59a" integrity sha512-P1EJSoyV+N3bR/IWFeAqXzKPZwHpnLY6j7j58mAvewHRipo+BQM2Y1f9Y9BjEQznKwgqqZm7H8iuixmssU7tYQ== -ts-node@8.5.0: - version "8.5.0" - resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-8.5.0.tgz#bc7d5a39133d222bf25b1693651e4d893785f884" - integrity sha512-fbG32iZEupNV2E2Fd2m2yt1TdAwR3GTCrJQBHDevIiEBNy1A8kqnyl1fv7jmRmmbtcapFab2glZXHJvfD1ed0Q== +ts-node@8.5.2: + version "8.5.2" + resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-8.5.2.tgz#434f6c893bafe501a30b32ac94ee36809ba2adce" + integrity sha512-W1DK/a6BGoV/D4x/SXXm6TSQx6q3blECUzd5TN+j56YEMX3yPVMpHsICLedUw3DvGF3aTQ8hfdR9AKMaHjIi+A== dependencies: arg "^4.1.0" diff "^4.0.1" From b04d24ae2977c30a5999044e3b23a046f58acbe1 Mon Sep 17 00:00:00 2001 From: pradel Date: Mon, 18 Nov 2019 15:48:46 +0100 Subject: [PATCH 032/146] extract the user id for mfa associate --- packages/rest-client/src/rest-client.ts | 2 +- packages/rest-express/src/endpoints/mfa/associate.ts | 12 +++++++++++- packages/rest-express/src/express-middleware.ts | 2 +- packages/server/src/accounts-server.ts | 7 +++---- 4 files changed, 16 insertions(+), 7 deletions(-) diff --git a/packages/rest-client/src/rest-client.ts b/packages/rest-client/src/rest-client.ts index 7ffbb4b11..cbb07b7ab 100644 --- a/packages/rest-client/src/rest-client.ts +++ b/packages/rest-client/src/rest-client.ts @@ -233,7 +233,7 @@ export class RestClient implements TransportInterface { method: 'POST', body: JSON.stringify({ type }), }; - return this.fetch(`mfa/associate`, args, customHeaders); + return this.authFetch(`mfa/associate`, args, customHeaders); } public async authenticators(customHeaders?: object) { diff --git a/packages/rest-express/src/endpoints/mfa/associate.ts b/packages/rest-express/src/endpoints/mfa/associate.ts index 85231ca0c..72527ef0f 100644 --- a/packages/rest-express/src/endpoints/mfa/associate.ts +++ b/packages/rest-express/src/endpoints/mfa/associate.ts @@ -7,8 +7,18 @@ export const associate = (accountsServer: AccountsServer) => async ( res: express.Response ) => { try { + if (!(req as any).userId) { + res.status(401); + res.json({ message: 'Unauthorized' }); + return; + } + const { type } = req.body; - const mfaAssociateResult = await accountsServer.mfaAssociate(type); + const mfaAssociateResult = await accountsServer.mfaAssociate( + (req as any).userId, + type, + req.body + ); res.json(mfaAssociateResult); } catch (err) { sendError(res, err); diff --git a/packages/rest-express/src/express-middleware.ts b/packages/rest-express/src/express-middleware.ts index c6f821547..aaccc0ee3 100644 --- a/packages/rest-express/src/express-middleware.ts +++ b/packages/rest-express/src/express-middleware.ts @@ -47,7 +47,7 @@ const accountsExpress = ( router.post(`${path}/:service/authenticate`, serviceAuthenticate(accountsServer)); - router.post(`${path}/mfa/associate`, associate(accountsServer)); + router.post(`${path}/mfa/associate`, userLoader(accountsServer), associate(accountsServer)); router.get(`${path}/mfa/authenticators`, userLoader(accountsServer), associate(accountsServer)); diff --git a/packages/server/src/accounts-server.ts b/packages/server/src/accounts-server.ts index bf23b89c0..f1cfe1fa0 100644 --- a/packages/server/src/accounts-server.ts +++ b/packages/server/src/accounts-server.ts @@ -558,16 +558,15 @@ Please change it with a strong random token.`); /** * @description Start the association of a new authenticator + * @param {string} userId - User id to link the new authenticator. * @param {string} serviceName - Service name of the authenticator service. + * @param {any} params - Params for the the authenticator service. */ - public async mfaAssociate(serviceName: string) { + public async mfaAssociate(userId: string, serviceName: string, params: any) { if (!this.authenticators[serviceName]) { throw new Error(`No service with the name ${serviceName} was registered.`); } - // TODO see how to get the userId - const userId = 'TODO'; - const params = 'TODO'; return this.authenticators[serviceName].associate(userId, params); } From e275fa9d3bc9299f3ea8aa6bd54346702969c2f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pradel=20Le=CC=81o?= Date: Mon, 18 Nov 2019 18:28:31 +0100 Subject: [PATCH 033/146] upgrade more deps --- examples/accounts-boost/package.json | 2 +- .../package.json | 2 +- .../graphql-server-typescript/package.json | 2 +- .../react-graphql-typescript/package.json | 6 +- examples/react-rest-typescript/package.json | 6 +- package.json | 6 +- packages/boost/package.json | 2 +- packages/e2e/package.json | 2 +- packages/two-factor/package.json | 2 +- yarn.lock | 111 ++++++++++-------- 10 files changed, 74 insertions(+), 67 deletions(-) diff --git a/examples/accounts-boost/package.json b/examples/accounts-boost/package.json index 261c5c1c6..c6782fd18 100644 --- a/examples/accounts-boost/package.json +++ b/examples/accounts-boost/package.json @@ -16,7 +16,7 @@ "@accounts/boost": "^0.20.0", "apollo-link-context": "1.0.19", "apollo-link-http": "1.5.16", - "apollo-server": "2.9.7", + "apollo-server": "2.9.9", "graphql": "14.5.8", "graphql-toolkit": "0.6.8", "graphql-tools": "4.0.6", diff --git a/examples/graphql-server-typeorm-postgres/package.json b/examples/graphql-server-typeorm-postgres/package.json index 568280b06..9fea4b007 100755 --- a/examples/graphql-server-typeorm-postgres/package.json +++ b/examples/graphql-server-typeorm-postgres/package.json @@ -18,7 +18,7 @@ "@accounts/server": "^0.20.0", "@accounts/typeorm": "^0.20.0", "@graphql-modules/core": "0.7.13", - "apollo-server": "2.9.7", + "apollo-server": "2.9.9", "graphql": "14.5.8", "graphql-toolkit": "0.6.8", "pg": "7.12.1", diff --git a/examples/graphql-server-typescript/package.json b/examples/graphql-server-typescript/package.json index afca4570d..a17ef4bb3 100644 --- a/examples/graphql-server-typescript/package.json +++ b/examples/graphql-server-typescript/package.json @@ -17,7 +17,7 @@ "@accounts/rest-express": "^0.20.0", "@accounts/server": "^0.20.0", "@graphql-modules/core": "0.7.13", - "apollo-server": "2.9.7", + "apollo-server": "2.9.9", "graphql": "14.5.8", "graphql-toolkit": "0.6.8", "graphql-tools": "4.0.6", diff --git a/examples/react-graphql-typescript/package.json b/examples/react-graphql-typescript/package.json index 0fadc0eb9..8481c2738 100644 --- a/examples/react-graphql-typescript/package.json +++ b/examples/react-graphql-typescript/package.json @@ -29,7 +29,7 @@ "@accounts/client-password": "^0.20.0", "@accounts/graphql-client": "^0.20.0", "@apollo/react-hooks": "3.1.2", - "@material-ui/core": "4.6.0", + "@material-ui/core": "4.6.1", "@material-ui/styles": "4.6.0", "apollo-cache-inmemory": "1.6.3", "apollo-client": "2.6.4", @@ -37,9 +37,9 @@ "apollo-link-http": "1.5.16", "graphql": "14.5.8", "qrcode.react": "1.0.0", - "react": "16.11.0", + "react": "16.12.0", "react-apollo": "2.5.8", - "react-dom": "16.11.0", + "react-dom": "16.12.0", "react-router-dom": "5.1.2", "tslib": "1.10.0" }, diff --git a/examples/react-rest-typescript/package.json b/examples/react-rest-typescript/package.json index 90e0e8802..b0c521747 100644 --- a/examples/react-rest-typescript/package.json +++ b/examples/react-rest-typescript/package.json @@ -27,11 +27,11 @@ "@accounts/client": "^0.20.0", "@accounts/client-password": "^0.20.0", "@accounts/rest-client": "^0.20.0", - "@material-ui/core": "4.6.0", + "@material-ui/core": "4.6.1", "@material-ui/styles": "4.6.0", "qrcode.react": "1.0.0", - "react": "16.11.0", - "react-dom": "16.11.0", + "react": "16.12.0", + "react-dom": "16.12.0", "react-router-dom": "5.1.2", "tslib": "1.10.0" }, diff --git a/package.json b/package.json index 4674d7407..c53df01eb 100644 --- a/package.json +++ b/package.json @@ -64,10 +64,10 @@ "@typescript-eslint/eslint-plugin": "2.7.0", "@typescript-eslint/parser": "2.7.0", "eslint": "6.6.0", - "eslint-config-prettier": "6.5.0", - "eslint-plugin-jest": "23.0.3", + "eslint-config-prettier": "6.6.0", + "eslint-plugin-jest": "23.0.4", "eslint-plugin-prettier": "3.1.1", - "husky": "3.0.9", + "husky": "3.1.0", "lerna": "3.18.4", "lint-staged": "9.4.3", "opencollective": "1.0.3", diff --git a/packages/boost/package.json b/packages/boost/package.json index 0ac0935f1..0315c5f35 100644 --- a/packages/boost/package.json +++ b/packages/boost/package.json @@ -28,7 +28,7 @@ "@accounts/server": "^0.20.0", "@accounts/types": "^0.20.0", "@graphql-modules/core": "0.7.13", - "apollo-server": "^2.9.3", + "apollo-server": "^2.9.9", "graphql": "^14.5.4", "graphql-tools": "^4.0.6", "jsonwebtoken": "^8.5.1", diff --git a/packages/e2e/package.json b/packages/e2e/package.json index 29f234e66..f86818227 100644 --- a/packages/e2e/package.json +++ b/packages/e2e/package.json @@ -45,7 +45,7 @@ "@accounts/types": "^0.20.0", "@graphql-modules/core": "0.7.13", "apollo-boost": "0.4.4", - "apollo-server": "2.9.7", + "apollo-server": "2.9.9", "body-parser": "1.19.0", "core-js": "3.2.1", "express": "4.17.1", diff --git a/packages/two-factor/package.json b/packages/two-factor/package.json index fb2fef94f..80e9f6762 100644 --- a/packages/two-factor/package.json +++ b/packages/two-factor/package.json @@ -23,7 +23,7 @@ }, "dependencies": { "@accounts/types": "^0.20.0", - "@types/lodash": "^4.14.138", + "@types/lodash": "^4.14.148", "@types/speakeasy": "2.0.2", "lodash": "^4.17.15", "speakeasy": "^2.0.0", diff --git a/yarn.lock b/yarn.lock index eb652b3c0..896443b2f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2300,10 +2300,10 @@ npmlog "^4.1.2" write-file-atomic "^2.3.0" -"@material-ui/core@4.6.0": - version "4.6.0" - resolved "https://registry.yarnpkg.com/@material-ui/core/-/core-4.6.0.tgz#098a61d2af1778433d2d9a76de95be5f6aa87922" - integrity sha512-nzD0oO3R2dcX/+hmi5FUFSddMKySK76Ryuno3J/iOotbKvzXwbf9szzhL8KPNmsj+vizVNfkEfhzOuuCHRBKKQ== +"@material-ui/core@4.6.1": + version "4.6.1" + resolved "https://registry.yarnpkg.com/@material-ui/core/-/core-4.6.1.tgz#039f97443547a88c41d290deabfb4a044c6031ec" + integrity sha512-TljDMCJmi1zh7JhAFTp8qjIlbkVACiNftrcitzJJ+hAqpuP9PTO4euEkkAuYjISfUFZl3Z4kaOrBwN1HDrhIOQ== dependencies: "@babel/runtime" "^7.4.4" "@material-ui/styles" "^4.6.0" @@ -2889,16 +2889,11 @@ "@types/koa-compose" "*" "@types/node" "*" -"@types/lodash@4.14.148": +"@types/lodash@4.14.148", "@types/lodash@^4.14.148": version "4.14.148" resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.148.tgz#ffa2786721707b335c6aa1465e6d3d74016fbd3e" integrity sha512-05+sIGPev6pwpHF7NZKfP3jcXhXsIVFnYyVRT4WOB0me62E8OlWfTN+sKyt2/rqN+ETxuHAtgTSK1v71F0yncg== -"@types/lodash@^4.14.138": - version "4.14.146" - resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.146.tgz#de0d2c8610012f12a6a796455054cbc654f8fecf" - integrity sha512-JzJcmQ/ikHSv7pbvrVNKJU5j9jL9VLf3/gqs048CEnBVVVEv4kve3vLxoPHGvclutS+Il4SBIuQQ087m1eHffw== - "@types/long@^4.0.0": version "4.0.0" resolved "https://registry.yarnpkg.com/@types/long/-/long-4.0.0.tgz#719551d2352d301ac8b81db732acb6bdc28dbdef" @@ -3734,10 +3729,10 @@ apollo-server-caching@0.5.0, apollo-server-caching@^0.5.0: dependencies: lru-cache "^5.0.0" -apollo-server-core@^2.9.7: - version "2.9.7" - resolved "https://registry.yarnpkg.com/apollo-server-core/-/apollo-server-core-2.9.7.tgz#0f32344af90dec445ac780be95350bfa736fc416" - integrity sha512-EqKyROy+21sM93YHjGpy6wlnzK/vH0fnZh7RCf3uB69aQ3OjgdP4AQ5oWRQ62NDN+aoic7OLhChSDJeDonq/NQ== +apollo-server-core@^2.9.9: + version "2.9.9" + resolved "https://registry.yarnpkg.com/apollo-server-core/-/apollo-server-core-2.9.9.tgz#73df4989ac0ad09d20c20ef3e06f8c816bc7a13f" + integrity sha512-JxtYDasqeem5qUwPrCVh2IsBOgSQF4MKrRgy8dpxd+ymWfaaVelCUows1VE8vghgRxqDExnM9ibOxcZeI6mO6g== dependencies: "@apollographql/apollo-tools" "^0.4.0" "@apollographql/graphql-playground-html" "1.6.24" @@ -3774,10 +3769,10 @@ apollo-server-errors@^2.3.4: resolved "https://registry.yarnpkg.com/apollo-server-errors/-/apollo-server-errors-2.3.4.tgz#b70ef01322f616cbcd876f3e0168a1a86b82db34" integrity sha512-Y0PKQvkrb2Kd18d1NPlHdSqmlr8TgqJ7JQcNIfhNDgdb45CnqZlxL1abuIRhr8tiw8OhVOcFxz2KyglBi8TKdA== -apollo-server-express@^2.9.7: - version "2.9.7" - resolved "https://registry.yarnpkg.com/apollo-server-express/-/apollo-server-express-2.9.7.tgz#54fbaf93b68f0123ecb1dead26cbfda5b15bd10e" - integrity sha512-+DuJk1oq34Zx0bLYzgBgJH/eXS0JNxw2JycHQvV0+PAQ0Qi01oomJRA2r1S5isnfnSAnHb2E9jyBTptoHdw3MQ== +apollo-server-express@^2.9.9: + version "2.9.9" + resolved "https://registry.yarnpkg.com/apollo-server-express/-/apollo-server-express-2.9.9.tgz#2a379217d7a7be012f0329be8bf89a63e181d42e" + integrity sha512-qltC3ttGz8zvrut7HzrcqKOUg0vHpvVyYeeOy8jvghZpqXyWFuJhnw6uxAFcKNKCPl3mJ1psji83P1Um2ceJgg== dependencies: "@apollographql/graphql-playground-html" "1.6.24" "@types/accepts" "^1.3.5" @@ -3785,7 +3780,7 @@ apollo-server-express@^2.9.7: "@types/cors" "^2.8.4" "@types/express" "4.17.1" accepts "^1.3.5" - apollo-server-core "^2.9.7" + apollo-server-core "^2.9.9" apollo-server-types "^0.2.5" body-parser "^1.18.3" cors "^2.8.4" @@ -3812,13 +3807,13 @@ apollo-server-types@^0.2.5: apollo-server-caching "^0.5.0" apollo-server-env "^2.4.3" -apollo-server@2.9.7, apollo-server@^2.9.3: - version "2.9.7" - resolved "https://registry.yarnpkg.com/apollo-server/-/apollo-server-2.9.7.tgz#aab337b75c04ddea0fa9b171b30c4e91932c04d8" - integrity sha512-maGGCsK4Ft5ucox5ZJf6oaKhgPvzHY3jXWbA1F/mn0/EYX8e1RVO3Qtj8aQQ0/vCKx8r4vYgj+ctqBVaN/nr4A== +apollo-server@2.9.9, apollo-server@^2.9.9: + version "2.9.9" + resolved "https://registry.yarnpkg.com/apollo-server/-/apollo-server-2.9.9.tgz#f10249fa9884be2a0ad59876e301fdfccb456208" + integrity sha512-b4IfGxZDzhOnfaPTinAD0rx8XpgxkVMjNuwooRULOJEeYG8Vd/OiBYSS7LSGy1g3hdiLBgJhMFC0ce7pjdcyFw== dependencies: - apollo-server-core "^2.9.7" - apollo-server-express "^2.9.7" + apollo-server-core "^2.9.9" + apollo-server-express "^2.9.9" express "^4.0.0" graphql-subscriptions "^1.0.0" graphql-tools "^4.0.0" @@ -6584,10 +6579,10 @@ escodegen@^1.11.0, escodegen@^1.9.1: optionalDependencies: source-map "~0.6.1" -eslint-config-prettier@6.5.0: - version "6.5.0" - resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-6.5.0.tgz#aaf9a495e2a816865e541bfdbb73a65cc162b3eb" - integrity sha512-cjXp8SbO9VFGW/Z7mbTydqS9to8Z58E5aYhj3e1+Hx7lS9s6gL5ILKNpCqZAFOVYRcSkWPFYljHrEh8QFEK5EQ== +eslint-config-prettier@6.6.0: + version "6.6.0" + resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-6.6.0.tgz#4e039f65af8245e32d8fba4a2f5b83ed7186852e" + integrity sha512-6RGaj7jD+HeuSVHoIT6A0WkBhVEk0ULg74kp2FAWIwkYrOERae0TjIO09Cw33oN//gJWmt7aFhVJErEVta7uvA== dependencies: get-stdin "^6.0.0" @@ -6649,10 +6644,10 @@ eslint-plugin-import@2.18.2: read-pkg-up "^2.0.0" resolve "^1.11.0" -eslint-plugin-jest@23.0.3: - version "23.0.3" - resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-23.0.3.tgz#d3f157f7791f97713372c13259ba1dfc436eb4c1" - integrity sha512-9cNxr66zeOyz1S9AkQL4/ouilR6QHpYj8vKOQZ60fu9hAt5PJWS4KqWqfr1aqN5NFEZSPjFOla2Azn+KTWiGwg== +eslint-plugin-jest@23.0.4: + version "23.0.4" + resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-23.0.4.tgz#1ab81ffe3b16c5168efa72cbd4db14d335092aa0" + integrity sha512-OaP8hhT8chJNodUPvLJ6vl8gnalcsU/Ww1t9oR3HnGdEWjm/DdCCUXLOral+IPGAeWu/EwgVQCK/QtxALpH1Yw== dependencies: "@typescript-eslint/experimental-utils" "^2.5.0" @@ -8053,13 +8048,20 @@ hmac-drbg@^1.0.0: minimalistic-assert "^1.0.0" minimalistic-crypto-utils "^1.0.1" -hoist-non-react-statics@^3.1.0, hoist-non-react-statics@^3.2.1, hoist-non-react-statics@^3.3.0: +hoist-non-react-statics@^3.1.0, hoist-non-react-statics@^3.3.0: version "3.3.0" resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.0.tgz#b09178f0122184fb95acf525daaecb4d8f45958b" integrity sha512-0XsbTXxgiaCDYDIWFcwkmerZPSwywfUqYmwT4jzewKTQSWoE6FCMoUVOeBJWK3E/CrWbxRG3m5GzY4lnIwGRBA== dependencies: react-is "^16.7.0" +hoist-non-react-statics@^3.2.1: + version "3.3.1" + resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz#101685d3aff3b23ea213163f6e8e12f4f111e19f" + integrity sha512-wbg3bpgA/ZqWrZuMOeJi8+SKMhr7X9TesL/rXMjTzh0p0JUBo3II8DHboYbuIXWRlttrUFxwcu/5kygrCw8fJw== + dependencies: + react-is "^16.7.0" + hosted-git-info@^2.1.4, hosted-git-info@^2.7.1: version "2.8.5" resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.5.tgz#759cfcf2c4d156ade59b0b2dfabddc42a6b9c70c" @@ -8247,10 +8249,10 @@ humps@^2.0.0: resolved "https://registry.yarnpkg.com/humps/-/humps-2.0.1.tgz#dd02ea6081bd0568dc5d073184463957ba9ef9aa" integrity sha1-3QLqYIG9BWjcXQcxhEY5V7qe+ao= -husky@3.0.9: - version "3.0.9" - resolved "https://registry.yarnpkg.com/husky/-/husky-3.0.9.tgz#a2c3e9829bfd6b4957509a9500d2eef5dbfc8044" - integrity sha512-Yolhupm7le2/MqC1VYLk/cNmYxsSsqKkTyBhzQHhPK1jFnC89mmmNVuGtLNabjDI6Aj8UNIr0KpRNuBkiC4+sg== +husky@3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/husky/-/husky-3.1.0.tgz#5faad520ab860582ed94f0c1a77f0f04c90b57c0" + integrity sha512-FJkPoHHB+6s4a+jwPqBudBDvYZsoQW5/HBuMSehC8qDiCe50kpcxeqFoDSlow+9I6wg47YxBoT3WxaURlrDIIQ== dependencies: chalk "^2.4.2" ci-info "^2.0.0" @@ -13085,26 +13087,31 @@ react-dev-utils@^9.1.0: strip-ansi "5.2.0" text-table "0.2.0" -react-dom@16.11.0: - version "16.11.0" - resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.11.0.tgz#7e7c4a5a85a569d565c2462f5d345da2dd849af5" - integrity sha512-nrRyIUE1e7j8PaXSPtyRKtz+2y9ubW/ghNgqKFHHAHaeP0fpF5uXR+sq8IMRHC+ZUxw7W9NyCDTBtwWxvkb0iA== +react-dom@16.12.0: + version "16.12.0" + resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.12.0.tgz#0da4b714b8d13c2038c9396b54a92baea633fe11" + integrity sha512-LMxFfAGrcS3kETtQaCkTKjMiifahaMySFDn71fZUNpPHZQEzmk/GiAeIT8JSOrHB23fnuCOMruL2a8NYlw+8Gw== dependencies: loose-envify "^1.1.0" object-assign "^4.1.1" prop-types "^15.6.2" - scheduler "^0.17.0" + scheduler "^0.18.0" react-error-overlay@^6.0.3: version "6.0.3" resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-6.0.3.tgz#c378c4b0a21e88b2e159a3e62b2f531fd63bf60d" integrity sha512-bOUvMWFQVk5oz8Ded9Xb7WVdEi3QGLC8tH7HmYP0Fdp4Bn3qw0tRFmr5TW6mvahzvmrK4a6bqWGfCevBflP+Xw== -react-is@^16.6.0, react-is@^16.7.0, react-is@^16.8.1, react-is@^16.8.4, react-is@^16.8.6: +react-is@^16.6.0, react-is@^16.8.4: version "16.11.0" resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.11.0.tgz#b85dfecd48ad1ce469ff558a882ca8e8313928fa" integrity sha512-gbBVYR2p8mnriqAwWx9LbuUrShnAuSCNnuPGyc7GJrMVQtPDAh8iLpv7FRuMPFb56KkaVZIYSz1PrjI9q0QPCw== +react-is@^16.7.0, react-is@^16.8.1, react-is@^16.8.6: + version "16.12.0" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.12.0.tgz#2cc0fe0fba742d97fd527c42a13bec4eeb06241c" + integrity sha512-rPCkf/mWBtKc97aLL9/txD8DZdemK0vkA3JMLShjlJB3Pj3s+lpf1KaBzMfQrAmhMQB0n1cU/SUGgKKBCe837Q== + react-router-dom@5.1.2: version "5.1.2" resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-5.1.2.tgz#06701b834352f44d37fbb6311f870f84c76b9c18" @@ -13205,10 +13212,10 @@ react-transition-group@^4.3.0: loose-envify "^1.4.0" prop-types "^15.6.2" -react@16.11.0: - version "16.11.0" - resolved "https://registry.yarnpkg.com/react/-/react-16.11.0.tgz#d294545fe62299ccee83363599bf904e4a07fdbb" - integrity sha512-M5Y8yITaLmU0ynd0r1Yvfq98Rmll6q8AxaEe88c8e7LxO8fZ2cNgmFt0aGAS9wzf1Ao32NKXtCl+/tVVtkxq6g== +react@16.12.0: + version "16.12.0" + resolved "https://registry.yarnpkg.com/react/-/react-16.12.0.tgz#0c0a9c6a142429e3614834d5a778e18aa78a0b83" + integrity sha512-fglqy3k5E+81pA8s+7K0/T3DBCF0ZDOher1elBFzF7O6arXJgzyu/FW+COxFvAWXJoJN9KIZbT2LXlukwphYTA== dependencies: loose-envify "^1.1.0" object-assign "^4.1.1" @@ -13956,10 +13963,10 @@ saxes@^3.1.9: dependencies: xmlchars "^2.1.1" -scheduler@^0.17.0: - version "0.17.0" - resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.17.0.tgz#7c9c673e4ec781fac853927916d1c426b6f3ddfe" - integrity sha512-7rro8Io3tnCPuY4la/NuI5F2yfESpnfZyT6TtkXnSWVkcu0BCDJ+8gk5ozUaFaxpIyNuWAPXrH0yFcSi28fnDA== +scheduler@^0.18.0: + version "0.18.0" + resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.18.0.tgz#5901ad6659bc1d8f3fdaf36eb7a67b0d6746b1c4" + integrity sha512-agTSHR1Nbfi6ulI0kYNK0203joW2Y5W4po4l+v03tOoiJKpTBbxpNhWDvqc/4IcOw+KLmSiQLTasZ4cab2/UWQ== dependencies: loose-envify "^1.1.0" object-assign "^4.1.1" From c075449f9633e59582941b025b34b76ebbaeaecf Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 19 Nov 2019 13:17:02 +0100 Subject: [PATCH 034/146] Prepare mfaChallengeCollection for mongo --- packages/database-mongo/src/mongo.ts | 6 +++++- packages/database-mongo/src/types/index.ts | 4 ++++ yarn.lock | 12 +----------- 3 files changed, 10 insertions(+), 12 deletions(-) diff --git a/packages/database-mongo/src/mongo.ts b/packages/database-mongo/src/mongo.ts index 803bec46d..0a19f5105 100644 --- a/packages/database-mongo/src/mongo.ts +++ b/packages/database-mongo/src/mongo.ts @@ -22,6 +22,7 @@ const defaultOptions = { collectionName: 'users', sessionCollectionName: 'sessions', authenticatorCollectionName: 'authenticators', + mfaChallengeCollection: 'mfaChallenges', timestamps: { createdAt: 'createdAt', updatedAt: 'updatedAt', @@ -42,8 +43,10 @@ export class Mongo implements DatabaseInterface { private collection: Collection; // Session collection private sessionCollection: Collection; - // Session collection + // Authenticator collection private authenticatorCollection: Collection; + // Mfa challenge collection + private mfaChallengeCollection: Collection; constructor(db: any, options?: AccountsMongoOptions) { this.options = merge({ ...defaultOptions }, options); @@ -54,6 +57,7 @@ export class Mongo implements DatabaseInterface { this.collection = this.db.collection(this.options.collectionName); this.sessionCollection = this.db.collection(this.options.sessionCollectionName); this.authenticatorCollection = this.db.collection(this.options.authenticatorCollectionName); + this.mfaChallengeCollection = this.db.collection(this.options.mfaChallengeCollection); } public async setupIndexes(): Promise { diff --git a/packages/database-mongo/src/types/index.ts b/packages/database-mongo/src/types/index.ts index 064064ef2..4680aafd2 100644 --- a/packages/database-mongo/src/types/index.ts +++ b/packages/database-mongo/src/types/index.ts @@ -11,6 +11,10 @@ export interface AccountsMongoOptions { * The authenticators collection name, default 'authenticators'. */ authenticatorCollectionName?: string; + /** + * The mfa challenges collection name, default 'mfaChallenges'. + */ + mfaChallengeCollection?: string; /** * The timestamps for the users and sessions collection, default 'createdAt' and 'updatedAt'. */ diff --git a/yarn.lock b/yarn.lock index 896443b2f..d1d299509 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2939,21 +2939,11 @@ dependencies: "@types/node" "*" -"@types/node@*", "@types/node@12.12.7", "@types/node@>= 8", "@types/node@>=6": +"@types/node@*", "@types/node@12.12.7", "@types/node@12.7.4", "@types/node@>= 8", "@types/node@>=6", "@types/node@^10.1.0": version "12.12.7" resolved "https://registry.yarnpkg.com/@types/node/-/node-12.12.7.tgz#01e4ea724d9e3bd50d90c11fd5980ba317d8fa11" integrity sha512-E6Zn0rffhgd130zbCbAr/JdXfXkoOUFAKNs/rF8qnafSJ8KYaA/j3oz7dcwal+lYjLA7xvdd5J4wdYpCTlP8+w== -"@types/node@12.7.4": - version "12.7.4" - resolved "https://registry.yarnpkg.com/@types/node/-/node-12.7.4.tgz#64db61e0359eb5a8d99b55e05c729f130a678b04" - integrity sha512-W0+n1Y+gK/8G2P/piTkBBN38Qc5Q1ZSO6B5H3QmPCUewaiXOo2GCAWZ4ElZCcNhjJuBSUSLGFUJnmlCn5+nxOQ== - -"@types/node@^10.1.0": - version "10.17.5" - resolved "https://registry.yarnpkg.com/@types/node/-/node-10.17.5.tgz#c1920150f7b90708a7d0f3add12a06bc9123c055" - integrity sha512-RElZIr/7JreF1eY6oD5RF3kpmdcreuQPjg5ri4oQ5g9sq7YWU8HkfB3eH8GwAwxf5OaCh0VPi7r4N/yoTGelrA== - "@types/normalize-package-data@^2.4.0": version "2.4.0" resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz#e486d0d97396d79beedd0a6e33f4534ff6b4973e" From 61c0c2b6bf17ca4d97b6b502baee1e244e4f8245 Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 19 Nov 2019 13:22:03 +0100 Subject: [PATCH 035/146] createMfaChallenge --- packages/database-mongo/src/mongo.ts | 25 ++++++++++++++++--- packages/database-mongo/src/types/index.ts | 6 +++++ packages/types/src/index.ts | 1 + .../mfa-challenge/create-mfa-challenge.ts | 4 +++ 4 files changed, 33 insertions(+), 3 deletions(-) create mode 100644 packages/types/src/types/mfa-challenge/create-mfa-challenge.ts diff --git a/packages/database-mongo/src/mongo.ts b/packages/database-mongo/src/mongo.ts index 0a19f5105..554bd5365 100644 --- a/packages/database-mongo/src/mongo.ts +++ b/packages/database-mongo/src/mongo.ts @@ -5,11 +5,13 @@ import { Session, User, Authenticator, + CreateAuthenticator, + CreateMfaChallenge, } from '@accounts/types'; import { get, merge } from 'lodash'; import { Collection, Db, ObjectID } from 'mongodb'; -import { AccountsMongoOptions, MongoUser, MongoAuthenticator } from './types'; +import { AccountsMongoOptions, MongoUser, MongoAuthenticator, MongoMfaChallenge } from './types'; const toMongoID = (objectId: string | ObjectID) => { if (typeof objectId === 'string') { @@ -438,10 +440,10 @@ export class Mongo implements DatabaseInterface { } /** - * MFA related operations + * MFA authenticators related operations */ - public async createAuthenticator(newAuthenticator: CreateUser): Promise { + public async createAuthenticator(newAuthenticator: CreateAuthenticator): Promise { const authenticator: MongoAuthenticator = { ...newAuthenticator, [this.options.timestamps.createdAt]: this.options.dateProvider(), @@ -472,4 +474,21 @@ export class Mongo implements DatabaseInterface { }); return authenticators; } + + /** + * MFA challenges related operations + */ + + public async createMfaChallenge(newMfaChallenge: CreateMfaChallenge): Promise { + const mfaChallenge: MongoMfaChallenge = { + ...newMfaChallenge, + [this.options.timestamps.createdAt]: this.options.dateProvider(), + [this.options.timestamps.updatedAt]: this.options.dateProvider(), + }; + if (this.options.idProvider) { + mfaChallenge._id = this.options.idProvider(); + } + const ret = await this.authenticatorCollection.insertOne(mfaChallenge); + return ret.ops[0]._id.toString(); + } } diff --git a/packages/database-mongo/src/types/index.ts b/packages/database-mongo/src/types/index.ts index 4680aafd2..8646d0f06 100644 --- a/packages/database-mongo/src/types/index.ts +++ b/packages/database-mongo/src/types/index.ts @@ -71,3 +71,9 @@ export interface MongoAuthenticator { userId?: string; [key: string]: any; } + +export interface MongoMfaChallenge { + _id?: string | object; + userId?: string; + authenticatorId?: string; +} diff --git a/packages/types/src/index.ts b/packages/types/src/index.ts index 1fca3e176..61eda3cf7 100644 --- a/packages/types/src/index.ts +++ b/packages/types/src/index.ts @@ -15,3 +15,4 @@ export * from './types/hash-algorithm'; export * from './types/authenticator/authenticator-service'; export * from './types/authenticator/authenticator'; export * from './types/authenticator/create-authenticator'; +export * from './types/mfa-challenge/create-mfa-challenge'; diff --git a/packages/types/src/types/mfa-challenge/create-mfa-challenge.ts b/packages/types/src/types/mfa-challenge/create-mfa-challenge.ts new file mode 100644 index 000000000..052a32772 --- /dev/null +++ b/packages/types/src/types/mfa-challenge/create-mfa-challenge.ts @@ -0,0 +1,4 @@ +export interface CreateMfaChallenge { + userId: string; + authenticatorId?: string; +} From 03cf80b0576fe0e9c887768bcf843337b09206a7 Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 19 Nov 2019 13:25:18 +0100 Subject: [PATCH 036/146] Fix --- packages/database-mongo/src/mongo.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/database-mongo/src/mongo.ts b/packages/database-mongo/src/mongo.ts index 554bd5365..803df6349 100644 --- a/packages/database-mongo/src/mongo.ts +++ b/packages/database-mongo/src/mongo.ts @@ -453,7 +453,7 @@ export class Mongo implements DatabaseInterface { authenticator._id = this.options.idProvider(); } const ret = await this.authenticatorCollection.insertOne(authenticator); - return ret.ops[0]._id.toString(); + return (ret as any).ops[0]._id.toString(); } public async findAuthenticatorById(authenticatorId: string): Promise { @@ -488,7 +488,7 @@ export class Mongo implements DatabaseInterface { if (this.options.idProvider) { mfaChallenge._id = this.options.idProvider(); } - const ret = await this.authenticatorCollection.insertOne(mfaChallenge); - return ret.ops[0]._id.toString(); + const ret = await this.mfaChallengeCollection.insertOne(mfaChallenge); + return (ret as any).ops[0]._id.toString(); } } From 476e473d8c3cdf917417661e715ade67dd69eede Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 19 Nov 2019 13:36:36 +0100 Subject: [PATCH 037/146] findMfaChallengeByToken --- packages/database-mongo/src/mongo.ts | 9 +++++++++ packages/database-mongo/src/types/index.ts | 1 + packages/types/src/index.ts | 1 + packages/types/src/types/database-interface.ts | 12 +++++++++++- .../mfa-challenge/create-mfa-challenge.ts | 1 + .../src/types/mfa-challenge/mfa-challenge.ts | 18 ++++++++++++++++++ 6 files changed, 41 insertions(+), 1 deletion(-) create mode 100644 packages/types/src/types/mfa-challenge/mfa-challenge.ts diff --git a/packages/database-mongo/src/mongo.ts b/packages/database-mongo/src/mongo.ts index 803df6349..75b8b47a2 100644 --- a/packages/database-mongo/src/mongo.ts +++ b/packages/database-mongo/src/mongo.ts @@ -6,6 +6,7 @@ import { User, Authenticator, CreateAuthenticator, + MfaChallenge, CreateMfaChallenge, } from '@accounts/types'; import { get, merge } from 'lodash'; @@ -491,4 +492,12 @@ export class Mongo implements DatabaseInterface { const ret = await this.mfaChallengeCollection.insertOne(mfaChallenge); return (ret as any).ops[0]._id.toString(); } + + public async findMfaChallengeByToken(token: string): Promise { + const mfaChallenge = await this.mfaChallengeCollection.findOne({ token }); + if (mfaChallenge) { + mfaChallenge.id = mfaChallenge._id.toString(); + } + return mfaChallenge; + } } diff --git a/packages/database-mongo/src/types/index.ts b/packages/database-mongo/src/types/index.ts index 8646d0f06..dca7b7e42 100644 --- a/packages/database-mongo/src/types/index.ts +++ b/packages/database-mongo/src/types/index.ts @@ -76,4 +76,5 @@ export interface MongoMfaChallenge { _id?: string | object; userId?: string; authenticatorId?: string; + token: string; } diff --git a/packages/types/src/index.ts b/packages/types/src/index.ts index 61eda3cf7..842490fc9 100644 --- a/packages/types/src/index.ts +++ b/packages/types/src/index.ts @@ -16,3 +16,4 @@ export * from './types/authenticator/authenticator-service'; export * from './types/authenticator/authenticator'; export * from './types/authenticator/create-authenticator'; export * from './types/mfa-challenge/create-mfa-challenge'; +export * from './types/mfa-challenge/mfa-challenge'; diff --git a/packages/types/src/types/database-interface.ts b/packages/types/src/types/database-interface.ts index 213970379..e81579e49 100644 --- a/packages/types/src/types/database-interface.ts +++ b/packages/types/src/types/database-interface.ts @@ -4,6 +4,8 @@ import { CreateUser } from './create-user'; import { ConnectionInformations } from './connection-informations'; import { CreateAuthenticator } from './authenticator/create-authenticator'; import { Authenticator } from './authenticator/authenticator'; +import { CreateMfaChallenge } from './mfa-challenge/create-mfa-challenge'; +import { MfaChallenge } from './mfa-challenge/mfa-challenge'; export interface DatabaseInterface extends DatabaseInterfaceSessions { /** @@ -75,7 +77,7 @@ export interface DatabaseInterface extends DatabaseInterfaceSessions { addEmailVerificationToken(userId: string, email: string, token: string): Promise; /** - * MFA related operations + * MFA authenticator related operations */ createAuthenticator(authenticator: CreateAuthenticator): Promise; @@ -83,6 +85,14 @@ export interface DatabaseInterface extends DatabaseInterfaceSessions { findAuthenticatorById(authenticatorId: string): Promise; findUserAuthenticators(userId: string): Promise; + + /** + * MFA challenges related operations + */ + + createMfaChallenge(newMfaChallenge: CreateMfaChallenge): Promise; + + findMfaChallengeByToken(token: string): Promise; } export interface DatabaseInterfaceSessions { diff --git a/packages/types/src/types/mfa-challenge/create-mfa-challenge.ts b/packages/types/src/types/mfa-challenge/create-mfa-challenge.ts index 052a32772..95e5e4e9b 100644 --- a/packages/types/src/types/mfa-challenge/create-mfa-challenge.ts +++ b/packages/types/src/types/mfa-challenge/create-mfa-challenge.ts @@ -1,4 +1,5 @@ export interface CreateMfaChallenge { userId: string; authenticatorId?: string; + token: string; } diff --git a/packages/types/src/types/mfa-challenge/mfa-challenge.ts b/packages/types/src/types/mfa-challenge/mfa-challenge.ts new file mode 100644 index 000000000..84153b186 --- /dev/null +++ b/packages/types/src/types/mfa-challenge/mfa-challenge.ts @@ -0,0 +1,18 @@ +export interface MfaChallenge { + /** + * Db id + */ + id: string; + /** + * User id linked to this challenge + */ + userId: string; + /** + * Authenticator that will be used to resolve this challenge + */ + authenticatorId?: string; + /** + * Random token used to identify the challenge + */ + token: string; +} From b8f574aa8ce0d38668e685b319354de83381ca9e Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 19 Nov 2019 13:59:13 +0100 Subject: [PATCH 038/146] Create a new challenge when we associate a new authenticator --- examples/rest-express-typescript/src/index.ts | 5 ++++- packages/server/src/accounts-server.ts | 16 ++++++++++++++-- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/examples/rest-express-typescript/src/index.ts b/examples/rest-express-typescript/src/index.ts index 9094fd0ec..42c1b3bcd 100644 --- a/examples/rest-express-typescript/src/index.ts +++ b/examples/rest-express-typescript/src/index.ts @@ -8,7 +8,10 @@ import accountsExpress, { userLoader } from '@accounts/rest-express'; import MongoDBInterface from '@accounts/mongo'; import { AuthenticatorOtp } from '@accounts/authenticator-otp'; -mongoose.connect('mongodb://localhost:27017/accounts-js-rest-example', { useNewUrlParser: true }); +mongoose.connect('mongodb://localhost:27017/accounts-js-rest-example', { + useNewUrlParser: true, + useUnifiedTopology: true, +}); const db = mongoose.connection; const app = express(); diff --git a/packages/server/src/accounts-server.ts b/packages/server/src/accounts-server.ts index f1cfe1fa0..ee89d3f64 100644 --- a/packages/server/src/accounts-server.ts +++ b/packages/server/src/accounts-server.ts @@ -562,12 +562,24 @@ Please change it with a strong random token.`); * @param {string} serviceName - Service name of the authenticator service. * @param {any} params - Params for the the authenticator service. */ - public async mfaAssociate(userId: string, serviceName: string, params: any) { + public async mfaAssociate(userId: string, serviceName: string, params: any): Promise { if (!this.authenticators[serviceName]) { throw new Error(`No service with the name ${serviceName} was registered.`); } - return this.authenticators[serviceName].associate(userId, params); + const associate = await this.authenticators[serviceName].associate(userId, params); + const mfaChallengeToken = generateRandomToken(); + // associate.id refer to the authenticator id + await this.db.createMfaChallenge({ + userId, + authenticatorId: associate.id, + token: mfaChallengeToken, + }); + + return { + ...associate, + mfaToken: mfaChallengeToken, + }; } /** From a9a855378457e6f86fdb8d7106083a87238e2626 Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 19 Nov 2019 16:06:32 +0100 Subject: [PATCH 039/146] Add some comment --- packages/server/src/accounts-server.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/server/src/accounts-server.ts b/packages/server/src/accounts-server.ts index ee89d3f64..757985a82 100644 --- a/packages/server/src/accounts-server.ts +++ b/packages/server/src/accounts-server.ts @@ -568,6 +568,8 @@ Please change it with a strong random token.`); } const associate = await this.authenticators[serviceName].associate(userId, params); + + // We create a new challenge for the authenticator so it can be verified later const mfaChallengeToken = generateRandomToken(); // associate.id refer to the authenticator id await this.db.createMfaChallenge({ From 767349ba080c5b5f9bf7e71d7379734c312933b8 Mon Sep 17 00:00:00 2001 From: pradel Date: Sun, 1 Dec 2019 12:17:35 +0100 Subject: [PATCH 040/146] Activate an authenticator --- .../react-rest-typescript/src/TwoFactor.tsx | 10 ++++- packages/authenticator-otp/src/index.ts | 13 ++----- packages/database-mongo/src/mongo.ts | 17 ++++++++- packages/server/src/accounts-server.ts | 38 ++++++++++++++++++- .../authenticator/authenticator-service.ts | 3 +- .../types/src/types/database-interface.ts | 2 + .../mfa-challenge/create-mfa-challenge.ts | 1 + .../src/types/mfa-challenge/mfa-challenge.ts | 4 ++ 8 files changed, 74 insertions(+), 14 deletions(-) diff --git a/examples/react-rest-typescript/src/TwoFactor.tsx b/examples/react-rest-typescript/src/TwoFactor.tsx index 090550160..3599f39c7 100644 --- a/examples/react-rest-typescript/src/TwoFactor.tsx +++ b/examples/react-rest-typescript/src/TwoFactor.tsx @@ -5,6 +5,7 @@ import QRCode from 'qrcode.react'; import { accountsRest, accountsClient } from './accounts'; interface OTP { + mfaToken: string; id: string; otpauthUri: string; secret: string; @@ -25,8 +26,15 @@ const TwoFactor = () => { }, []); const onSetTwoFactor = async () => { + if (!secret) return; + try { - await accountsRest.twoFactorSet(secret, oneTimeCode); + // await accountsRest.twoFactorSet(secret, oneTimeCode); + const res = await accountsRest.loginWithService('mfa', { + mfaToken: secret.mfaToken, + code: oneTimeCode, + }); + console.log(res); } catch (err) { alert(err.message); } diff --git a/packages/authenticator-otp/src/index.ts b/packages/authenticator-otp/src/index.ts index 281685f8a..16964268a 100644 --- a/packages/authenticator-otp/src/index.ts +++ b/packages/authenticator-otp/src/index.ts @@ -16,6 +16,7 @@ export interface AuthenticatorOtpOptions { * Two factor user name that will be displayed inside the user authenticator app, * usually a name, email etc.. * Will be called every time a user register a new device. + * That way you can display something like "Github (accounts-js)" in the authenticator app. */ userName?: (userId: string) => Promise | string; } @@ -49,7 +50,7 @@ export class AuthenticatorOtp implements AuthenticatorService { const secret = otplib.authenticator.generateSecret(); const userName = this.options.userName ? await this.options.userName(userId) : userId; const otpauthUri = otplib.authenticator.keyuri(userName, this.options.appName, secret); - // TODO generate some recovery codes like slack is doing (as an option)? + // TODO generate some recovery codes like slack is doing (as an option, or maybe should just be a separate authenticator so it can be used by anything)? const authenticatorId = await this.db.createAuthenticator({ type: this.serviceName, @@ -69,21 +70,13 @@ export class AuthenticatorOtp implements AuthenticatorService { * Verify that the code provided by the user is valid */ public async authenticate( - authenticatorId: string, + authenticator: DbAuthenticatorOtp, { code }: { code?: string } ): Promise { if (!code) { throw new Error('Code required'); } - // Should this be in accounts-js server before calling authenticate? - const authenticator = (await this.db.findAuthenticatorById( - authenticatorId - )) as DbAuthenticatorOtp | null; - if (!authenticator || authenticator.type !== this.serviceName) { - throw new Error('Authenticator not found'); - } - return otplib.authenticator.check(code, authenticator.secret); } } diff --git a/packages/database-mongo/src/mongo.ts b/packages/database-mongo/src/mongo.ts index 75b8b47a2..0792f4b65 100644 --- a/packages/database-mongo/src/mongo.ts +++ b/packages/database-mongo/src/mongo.ts @@ -469,13 +469,28 @@ export class Mongo implements DatabaseInterface { } public async findUserAuthenticators(userId: string): Promise { - const authenticators = await this.sessionCollection.find({ userId }).toArray(); + const authenticators = await this.authenticatorCollection.find({ userId }).toArray(); authenticators.forEach(authenticator => { authenticator.id = authenticator._id.toString(); }); return authenticators; } + public async activateAuthenticator(authenticatorId: string): Promise { + const id = this.options.convertAuthenticatorIdToMongoObjectId + ? toMongoID(authenticatorId) + : authenticatorId; + await this.authenticatorCollection.updateOne( + { _id: id }, + { + $set: { + active: true, + activatedAt: this.options.dateProvider(), + }, + } + ); + } + /** * MFA challenges related operations */ diff --git a/packages/server/src/accounts-server.ts b/packages/server/src/accounts-server.ts index 757985a82..3eeacce70 100644 --- a/packages/server/src/accounts-server.ts +++ b/packages/server/src/accounts-server.ts @@ -160,6 +160,41 @@ Please change it with a strong random token.`); params, }; try { + if (serviceName === 'mfa') { + const mfaToken = params.mfaToken; + if (!mfaToken) { + throw new Error('Mfa token is required'); + } + const mfaChallenge = await this.db.findMfaChallengeByToken(mfaToken); + if (!mfaChallenge || !mfaChallenge.authenticatorId) { + throw new Error('Mfa token invalid'); + } + const authenticator = await this.db.findAuthenticatorById(mfaChallenge.authenticatorId); + if (!authenticator) { + throw new Error('Mfa token invalid'); + } + if (!this.authenticators[authenticator.type]) { + throw new Error(`No authenticator with the name ${serviceName} was registered.`); + } + // TODO we need to implement some time checking for the mfaToken (eg: expire after X minutes, probably based on the authenticator configuration) + if (!(await this.authenticators[authenticator.type].authenticate(authenticator, params))) { + throw new Error(`Authenticator ${authenticator.type} was not able to authenticate user`); + } + // We activate the authenticator if user is using a challenge with scope 'associate' + if (!authenticator.active && mfaChallenge.scope === 'associate') { + await this.db.activateAuthenticator(authenticator.id); + } else if (!authenticator.active) { + throw new Error('Authenticator is not active'); + } + + // TODO invalidate the current challenge + // TODO return a new session + + console.log(mfaChallenge, authenticator); + + throw new Error('Not implemented'); + } + if (!this.services[serviceName]) { throw new Error(`No service with the name ${serviceName} was registered.`); } @@ -564,7 +599,7 @@ Please change it with a strong random token.`); */ public async mfaAssociate(userId: string, serviceName: string, params: any): Promise { if (!this.authenticators[serviceName]) { - throw new Error(`No service with the name ${serviceName} was registered.`); + throw new Error(`No authenticator with the name ${serviceName} was registered.`); } const associate = await this.authenticators[serviceName].associate(userId, params); @@ -576,6 +611,7 @@ Please change it with a strong random token.`); userId, authenticatorId: associate.id, token: mfaChallengeToken, + scope: 'associate', }); return { diff --git a/packages/types/src/types/authenticator/authenticator-service.ts b/packages/types/src/types/authenticator/authenticator-service.ts index c4639903b..25d113d4e 100644 --- a/packages/types/src/types/authenticator/authenticator-service.ts +++ b/packages/types/src/types/authenticator/authenticator-service.ts @@ -1,10 +1,11 @@ import { DatabaseInterface } from '../database-interface'; +import { Authenticator } from './authenticator'; export interface AuthenticatorService { server: any; serviceName: string; setStore(store: DatabaseInterface): void; associate(userId: string, params: any): Promise; - authenticate(authenticatorId: string, params: any): Promise; + authenticate(authenticator: Authenticator, params: any): Promise; // TODO ability to delete an authenticator } diff --git a/packages/types/src/types/database-interface.ts b/packages/types/src/types/database-interface.ts index e81579e49..b37e917ca 100644 --- a/packages/types/src/types/database-interface.ts +++ b/packages/types/src/types/database-interface.ts @@ -86,6 +86,8 @@ export interface DatabaseInterface extends DatabaseInterfaceSessions { findUserAuthenticators(userId: string): Promise; + activateAuthenticator(authenticatorId: string): Promise; + /** * MFA challenges related operations */ diff --git a/packages/types/src/types/mfa-challenge/create-mfa-challenge.ts b/packages/types/src/types/mfa-challenge/create-mfa-challenge.ts index 95e5e4e9b..59fd5d846 100644 --- a/packages/types/src/types/mfa-challenge/create-mfa-challenge.ts +++ b/packages/types/src/types/mfa-challenge/create-mfa-challenge.ts @@ -2,4 +2,5 @@ export interface CreateMfaChallenge { userId: string; authenticatorId?: string; token: string; + scope?: 'associate'; } diff --git a/packages/types/src/types/mfa-challenge/mfa-challenge.ts b/packages/types/src/types/mfa-challenge/mfa-challenge.ts index 84153b186..10b07b0fd 100644 --- a/packages/types/src/types/mfa-challenge/mfa-challenge.ts +++ b/packages/types/src/types/mfa-challenge/mfa-challenge.ts @@ -15,4 +15,8 @@ export interface MfaChallenge { * Random token used to identify the challenge */ token: string; + /** + * If scope is set to associate, the authenticate function will verify the authenticator next time the user call it + */ + scope?: 'associate'; } From 50aa33d6fa4c4288fc8fbb3731c2414b6c74f2ee Mon Sep 17 00:00:00 2001 From: pradel Date: Fri, 13 Dec 2019 14:09:35 +0100 Subject: [PATCH 041/146] Add functions to database manager --- .../database-manager/src/database-manager.ts | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/packages/database-manager/src/database-manager.ts b/packages/database-manager/src/database-manager.ts index 0c5878f4e..2fef9d8b0 100644 --- a/packages/database-manager/src/database-manager.ts +++ b/packages/database-manager/src/database-manager.ts @@ -154,4 +154,34 @@ export class DatabaseManager implements DatabaseInterface { public get setUserDeactivated(): DatabaseInterface['setUserDeactivated'] { return this.userStorage.setUserDeactivated.bind(this.userStorage); } + + // Return the findAuthenticatorById function from the userStorage + public get findAuthenticatorById(): DatabaseInterface['findAuthenticatorById'] { + return this.userStorage.findAuthenticatorById.bind(this.userStorage); + } + + // Return the findUserAuthenticators function from the userStorage + public get findUserAuthenticators(): DatabaseInterface['findUserAuthenticators'] { + return this.userStorage.findUserAuthenticators.bind(this.userStorage); + } + + // Return the createAuthenticator function from the userStorage + public get createAuthenticator(): DatabaseInterface['createAuthenticator'] { + return this.userStorage.createAuthenticator.bind(this.userStorage); + } + + // Return the activateAuthenticator function from the userStorage + public get activateAuthenticator(): DatabaseInterface['activateAuthenticator'] { + return this.userStorage.activateAuthenticator.bind(this.userStorage); + } + + // Return the createMfaChallenge function from the userStorage + public get createMfaChallenge(): DatabaseInterface['createMfaChallenge'] { + return this.userStorage.createMfaChallenge.bind(this.userStorage); + } + + // Return the findMfaChallengeByToken function from the userStorage + public get findMfaChallengeByToken(): DatabaseInterface['findMfaChallengeByToken'] { + return this.userStorage.findMfaChallengeByToken.bind(this.userStorage); + } } From 1a8761eb003be69089a13e88cc37616dd54d6c21 Mon Sep 17 00:00:00 2001 From: pradel Date: Fri, 13 Dec 2019 14:19:15 +0100 Subject: [PATCH 042/146] Upgrade deps --- examples/accounts-boost/package.json | 8 +- .../package.json | 10 +- .../graphql-server-typescript/package.json | 12 +- .../react-graphql-typescript/package.json | 12 +- examples/react-rest-typescript/package.json | 10 +- examples/rest-express-typescript/package.json | 8 +- package.json | 16 +- packages/boost/package.json | 2 +- packages/database-mongo/package.json | 6 +- packages/database-redis/package.json | 4 +- packages/database-typeorm/package.json | 2 +- packages/e2e/package.json | 10 +- packages/express-session/package.json | 4 +- packages/graphql-api/package.json | 4 +- packages/oauth-instagram/package.json | 2 +- packages/password/package.json | 2 +- packages/rest-client/package.json | 2 +- packages/rest-express/package.json | 2 +- packages/two-factor/package.json | 2 +- yarn.lock | 557 ++++++++++-------- 20 files changed, 384 insertions(+), 291 deletions(-) diff --git a/examples/accounts-boost/package.json b/examples/accounts-boost/package.json index c6782fd18..38415812a 100644 --- a/examples/accounts-boost/package.json +++ b/examples/accounts-boost/package.json @@ -16,7 +16,7 @@ "@accounts/boost": "^0.20.0", "apollo-link-context": "1.0.19", "apollo-link-http": "1.5.16", - "apollo-server": "2.9.9", + "apollo-server": "2.9.13", "graphql": "14.5.8", "graphql-toolkit": "0.6.8", "graphql-tools": "4.0.6", @@ -25,8 +25,8 @@ "tslib": "1.10.0" }, "devDependencies": { - "nodemon": "1.19.4", - "ts-node": "8.5.2", - "typescript": "3.7.2" + "nodemon": "2.0.2", + "ts-node": "8.5.4", + "typescript": "3.7.3" } } diff --git a/examples/graphql-server-typeorm-postgres/package.json b/examples/graphql-server-typeorm-postgres/package.json index 9fea4b007..3a626adfc 100755 --- a/examples/graphql-server-typeorm-postgres/package.json +++ b/examples/graphql-server-typeorm-postgres/package.json @@ -18,17 +18,17 @@ "@accounts/server": "^0.20.0", "@accounts/typeorm": "^0.20.0", "@graphql-modules/core": "0.7.13", - "apollo-server": "2.9.9", + "apollo-server": "2.9.13", "graphql": "14.5.8", "graphql-toolkit": "0.6.8", - "pg": "7.12.1", + "pg": "7.14.0", "typeorm": "0.2.20" }, "devDependencies": { "@accounts/types": "^0.20.0", "@types/node": "12.12.7", - "nodemon": "1.19.4", - "ts-node": "8.5.2", - "typescript": "3.7.2" + "nodemon": "2.0.2", + "ts-node": "8.5.4", + "typescript": "3.7.3" } } diff --git a/examples/graphql-server-typescript/package.json b/examples/graphql-server-typescript/package.json index a17ef4bb3..9599156e6 100644 --- a/examples/graphql-server-typescript/package.json +++ b/examples/graphql-server-typescript/package.json @@ -17,19 +17,19 @@ "@accounts/rest-express": "^0.20.0", "@accounts/server": "^0.20.0", "@graphql-modules/core": "0.7.13", - "apollo-server": "2.9.9", + "apollo-server": "2.9.13", "graphql": "14.5.8", "graphql-toolkit": "0.6.8", "graphql-tools": "4.0.6", "lodash": "4.17.15", - "mongoose": "5.7.11", + "mongoose": "5.8.1", "tslib": "1.10.0" }, "devDependencies": { - "@types/mongoose": "5.5.32", + "@types/mongoose": "5.5.34", "@types/node": "12.12.7", - "nodemon": "1.19.4", - "ts-node": "8.5.2", - "typescript": "3.7.2" + "nodemon": "2.0.2", + "ts-node": "8.5.4", + "typescript": "3.7.3" } } diff --git a/examples/react-graphql-typescript/package.json b/examples/react-graphql-typescript/package.json index 8481c2738..bbb0e94d0 100644 --- a/examples/react-graphql-typescript/package.json +++ b/examples/react-graphql-typescript/package.json @@ -28,9 +28,9 @@ "@accounts/client": "^0.20.0", "@accounts/client-password": "^0.20.0", "@accounts/graphql-client": "^0.20.0", - "@apollo/react-hooks": "3.1.2", - "@material-ui/core": "4.6.1", - "@material-ui/styles": "4.6.0", + "@apollo/react-hooks": "3.1.3", + "@material-ui/core": "4.7.2", + "@material-ui/styles": "4.7.1", "apollo-cache-inmemory": "1.6.3", "apollo-client": "2.6.4", "apollo-link": "1.2.13", @@ -46,11 +46,11 @@ "devDependencies": { "@types/node": "12.12.7", "@types/qrcode.react": "0.9.0", - "@types/react": "16.9.11", + "@types/react": "16.9.16", "@types/react-dom": "16.9.4", "@types/react-router": "5.1.3", - "@types/react-router-dom": "5.1.2", + "@types/react-router-dom": "5.1.3", "react-scripts": "3.2.0", - "typescript": "3.7.2" + "typescript": "3.7.3" } } diff --git a/examples/react-rest-typescript/package.json b/examples/react-rest-typescript/package.json index b0c521747..63f1e3301 100644 --- a/examples/react-rest-typescript/package.json +++ b/examples/react-rest-typescript/package.json @@ -27,8 +27,8 @@ "@accounts/client": "^0.20.0", "@accounts/client-password": "^0.20.0", "@accounts/rest-client": "^0.20.0", - "@material-ui/core": "4.6.1", - "@material-ui/styles": "4.6.0", + "@material-ui/core": "4.7.2", + "@material-ui/styles": "4.7.1", "qrcode.react": "1.0.0", "react": "16.12.0", "react-dom": "16.12.0", @@ -38,11 +38,11 @@ "devDependencies": { "@types/node": "12.12.7", "@types/qrcode.react": "0.9.0", - "@types/react": "16.9.11", + "@types/react": "16.9.16", "@types/react-dom": "16.9.4", "@types/react-router": "5.1.3", - "@types/react-router-dom": "5.1.2", + "@types/react-router-dom": "5.1.3", "react-scripts": "3.2.0", - "typescript": "3.7.2" + "typescript": "3.7.3" } } diff --git a/examples/rest-express-typescript/package.json b/examples/rest-express-typescript/package.json index 9db8130de..dbcfcdda0 100644 --- a/examples/rest-express-typescript/package.json +++ b/examples/rest-express-typescript/package.json @@ -18,13 +18,13 @@ "body-parser": "1.19.0", "cors": "2.8.5", "express": "4.17.1", - "mongoose": "5.7.11", + "mongoose": "5.8.1", "tslib": "1.10.0" }, "devDependencies": { "@types/node": "12.12.7", - "nodemon": "1.19.4", - "ts-node": "8.5.2", - "typescript": "3.7.2" + "nodemon": "2.0.2", + "ts-node": "8.5.4", + "typescript": "3.7.3" } } diff --git a/package.json b/package.json index c53df01eb..58f7ec4ed 100644 --- a/package.json +++ b/package.json @@ -61,19 +61,19 @@ }, "license": "MIT", "devDependencies": { - "@typescript-eslint/eslint-plugin": "2.7.0", - "@typescript-eslint/parser": "2.7.0", - "eslint": "6.6.0", - "eslint-config-prettier": "6.6.0", - "eslint-plugin-jest": "23.0.4", + "@typescript-eslint/eslint-plugin": "2.11.0", + "@typescript-eslint/parser": "2.11.0", + "eslint": "6.7.2", + "eslint-config-prettier": "6.7.0", + "eslint-plugin-jest": "23.1.1", "eslint-plugin-prettier": "3.1.1", "husky": "3.1.0", "lerna": "3.18.4", - "lint-staged": "9.4.3", + "lint-staged": "9.5.0", "opencollective": "1.0.3", "prettier": "1.19.1", - "ts-jest": "24.1.0", - "typescript": "3.7.2" + "ts-jest": "24.2.0", + "typescript": "3.7.3" }, "collective": { "type": "opencollective", diff --git a/packages/boost/package.json b/packages/boost/package.json index 0315c5f35..a4a9ff040 100644 --- a/packages/boost/package.json +++ b/packages/boost/package.json @@ -28,7 +28,7 @@ "@accounts/server": "^0.20.0", "@accounts/types": "^0.20.0", "@graphql-modules/core": "0.7.13", - "apollo-server": "^2.9.9", + "apollo-server": "^2.9.13", "graphql": "^14.5.4", "graphql-tools": "^4.0.6", "jsonwebtoken": "^8.5.1", diff --git a/packages/database-mongo/package.json b/packages/database-mongo/package.json index 539807f2f..7cda172fe 100644 --- a/packages/database-mongo/package.json +++ b/packages/database-mongo/package.json @@ -31,15 +31,15 @@ "devDependencies": { "@accounts/database-tests": "^0.20.0", "@types/jest": "24.0.23", - "@types/lodash": "4.14.148", - "@types/mongodb": "3.3.10", + "@types/lodash": "4.14.149", + "@types/mongodb": "3.3.12", "@types/node": "12.12.7", "jest": "24.9.0" }, "dependencies": { "@accounts/types": "^0.20.0", "lodash": "^4.17.15", - "mongodb": "^3.3.4", + "mongodb": "^3.4.0", "tslib": "1.10.0" } } diff --git a/packages/database-redis/package.json b/packages/database-redis/package.json index 5fb29cdf8..1e35e69fc 100644 --- a/packages/database-redis/package.json +++ b/packages/database-redis/package.json @@ -33,9 +33,9 @@ "license": "MIT", "devDependencies": { "@accounts/database-tests": "^0.20.0", - "@types/ioredis": "4.0.19", + "@types/ioredis": "4.14.2", "@types/jest": "24.0.23", - "@types/lodash": "4.14.148", + "@types/lodash": "4.14.149", "@types/node": "12.12.7", "@types/shortid": "0.0.29", "jest": "24.9.0" diff --git a/packages/database-typeorm/package.json b/packages/database-typeorm/package.json index 6c929631d..b22180405 100644 --- a/packages/database-typeorm/package.json +++ b/packages/database-typeorm/package.json @@ -30,7 +30,7 @@ "@types/jest": "24.0.23", "@types/node": "12.12.7", "jest": "24.9.0", - "pg": "7.12.1" + "pg": "7.14.0" }, "dependencies": { "@accounts/types": "^0.20.0", diff --git a/packages/e2e/package.json b/packages/e2e/package.json index f86818227..b65b4e998 100644 --- a/packages/e2e/package.json +++ b/packages/e2e/package.json @@ -24,10 +24,10 @@ "@types/body-parser": "1.17.1", "@types/express": "4.17.2", "@types/jest": "24.0.23", - "@types/lodash": "4.14.148", - "@types/mongoose": "5.5.32", + "@types/lodash": "4.14.149", + "@types/mongoose": "5.5.34", "@types/node": "12.12.7", - "@types/node-fetch": "2.5.3", + "@types/node-fetch": "2.5.4", "jest": "24.9.0", "jest-localstorage-mock": "2.4.0" }, @@ -45,13 +45,13 @@ "@accounts/types": "^0.20.0", "@graphql-modules/core": "0.7.13", "apollo-boost": "0.4.4", - "apollo-server": "2.9.9", + "apollo-server": "2.9.13", "body-parser": "1.19.0", "core-js": "3.2.1", "express": "4.17.1", "graphql": "14.5.8", "lodash": "4.17.15", - "mongoose": "5.7.11", + "mongoose": "5.8.1", "node-fetch": "2.6.0", "tslib": "1.10.0", "typeorm": "0.2.20" diff --git a/packages/express-session/package.json b/packages/express-session/package.json index 7419c4bba..9db3e626a 100644 --- a/packages/express-session/package.json +++ b/packages/express-session/package.json @@ -36,9 +36,9 @@ "devDependencies": { "@accounts/server": "^0.20.0", "@types/express": "4.17.2", - "@types/express-session": "1.15.15", + "@types/express-session": "1.15.16", "@types/jest": "24.0.23", - "@types/lodash": "4.14.148", + "@types/lodash": "4.14.149", "@types/request-ip": "0.0.34", "express": "4.17.1", "express-session": "1.17.0", diff --git a/packages/graphql-api/package.json b/packages/graphql-api/package.json index d0ef51cf5..7e8ba93fc 100644 --- a/packages/graphql-api/package.json +++ b/packages/graphql-api/package.json @@ -42,12 +42,12 @@ "@graphql-modules/core": "0.7.13", "@types/jest": "24.0.23", "@types/request-ip": "0.0.34", - "concurrently": "5.0.0", + "concurrently": "5.0.1", "graphql": "14.5.8", "graphql-tools": "4.0.6", "jest": "24.9.0", "lodash": "4.17.15", - "ts-node": "8.5.2" + "ts-node": "8.5.4" }, "peerDependencies": { "@accounts/password": "^0.19.0", diff --git a/packages/oauth-instagram/package.json b/packages/oauth-instagram/package.json index b84a8b1ba..b4f6d104b 100644 --- a/packages/oauth-instagram/package.json +++ b/packages/oauth-instagram/package.json @@ -25,7 +25,7 @@ "devDependencies": { "@types/jest": "24.0.23", "@types/node": "12.12.7", - "@types/request-promise": "4.1.44", + "@types/request-promise": "4.1.45", "jest": "24.9.0" } } diff --git a/packages/password/package.json b/packages/password/package.json index 9299dff21..093d61f13 100644 --- a/packages/password/package.json +++ b/packages/password/package.json @@ -28,7 +28,7 @@ "@accounts/types": "^0.20.0", "@types/bcryptjs": "2.4.2", "@types/jest": "24.0.23", - "@types/lodash": "4.14.148", + "@types/lodash": "4.14.149", "@types/node": "12.12.7", "jest": "24.9.0", "rimraf": "3.0.0" diff --git a/packages/rest-client/package.json b/packages/rest-client/package.json index 1a3273346..b65ca0d8f 100644 --- a/packages/rest-client/package.json +++ b/packages/rest-client/package.json @@ -40,7 +40,7 @@ "devDependencies": { "@accounts/client": "^0.20.0", "@types/jest": "24.0.23", - "@types/lodash": "4.14.148", + "@types/lodash": "4.14.149", "@types/node": "12.12.7", "jest": "24.9.0", "node-fetch": "2.6.0" diff --git a/packages/rest-express/package.json b/packages/rest-express/package.json index 7df485131..8677b00cc 100644 --- a/packages/rest-express/package.json +++ b/packages/rest-express/package.json @@ -38,7 +38,7 @@ "@accounts/server": "^0.20.0", "@types/express": "4.17.2", "@types/jest": "24.0.23", - "@types/lodash": "4.14.148", + "@types/lodash": "4.14.149", "@types/node": "12.12.7", "@types/request-ip": "0.0.34", "jest": "24.9.0" diff --git a/packages/two-factor/package.json b/packages/two-factor/package.json index 80e9f6762..0788008f8 100644 --- a/packages/two-factor/package.json +++ b/packages/two-factor/package.json @@ -23,7 +23,7 @@ }, "dependencies": { "@accounts/types": "^0.20.0", - "@types/lodash": "^4.14.148", + "@types/lodash": "^4.14.149", "@types/speakeasy": "2.0.2", "lodash": "^4.17.15", "speakeasy": "^2.0.0", diff --git a/yarn.lock b/yarn.lock index d1d299509..07a4cb4c2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,7 +2,26 @@ # yarn lockfile v1 -"@apollo/react-common@^3.1.2": +"@apollo/protobufjs@^1.0.3": + version "1.0.3" + resolved "https://registry.yarnpkg.com/@apollo/protobufjs/-/protobufjs-1.0.3.tgz#02c655aedd4ba7c7f64cbc3d2b1dd9a000a391ba" + integrity sha512-gqeT810Ect9WIqsrgfUvr+ljSB5m1PyBae9HGdrRyQ3HjHjTcjVvxpsMYXlUk4rUHnrfUqyoGvLSy2yLlRGEOw== + dependencies: + "@protobufjs/aspromise" "^1.1.2" + "@protobufjs/base64" "^1.1.2" + "@protobufjs/codegen" "^2.0.4" + "@protobufjs/eventemitter" "^1.1.0" + "@protobufjs/fetch" "^1.1.0" + "@protobufjs/float" "^1.0.2" + "@protobufjs/inquire" "^1.1.0" + "@protobufjs/path" "^1.1.2" + "@protobufjs/pool" "^1.1.0" + "@protobufjs/utf8" "^1.1.0" + "@types/long" "^4.0.0" + "@types/node" "^10.1.0" + long "^4.0.0" + +"@apollo/react-common@^3.1.3": version "3.1.3" resolved "https://registry.yarnpkg.com/@apollo/react-common/-/react-common-3.1.3.tgz#ddc34f6403f55d47c0da147fd4756dfd7c73dac5" integrity sha512-Q7ZjDOeqjJf/AOGxUMdGxKF+JVClRXrYBGVq+SuVFqANRpd68MxtVV2OjCWavsFAN0eqYnRqRUrl7vtUCiJqeg== @@ -10,12 +29,12 @@ ts-invariant "^0.4.4" tslib "^1.10.0" -"@apollo/react-hooks@3.1.2": - version "3.1.2" - resolved "https://registry.yarnpkg.com/@apollo/react-hooks/-/react-hooks-3.1.2.tgz#3f889f9448ebb32faf164117f1f63d9ffa18f5d9" - integrity sha512-PV5u40E9iwfwM7u61r2P9PTjcGaM3zRwiwrJGDKOKaOn1Y9wTHhKOVEQa7YOsCWciSaMVK1slpKMvQbD2Ypqtw== +"@apollo/react-hooks@3.1.3": + version "3.1.3" + resolved "https://registry.yarnpkg.com/@apollo/react-hooks/-/react-hooks-3.1.3.tgz#ad42c7af78e81fee0f30e53242640410d5bd0293" + integrity sha512-reIRO9xKdfi+B4gT/o/hnXuopUnm7WED/ru8VQydPw+C/KG/05Ssg1ZdxFKHa3oxwiTUIDnevtccIH35POanbA== dependencies: - "@apollo/react-common" "^3.1.2" + "@apollo/react-common" "^3.1.3" "@wry/equality" "^0.1.9" ts-invariant "^0.4.4" tslib "^1.10.0" @@ -2300,16 +2319,16 @@ npmlog "^4.1.2" write-file-atomic "^2.3.0" -"@material-ui/core@4.6.1": - version "4.6.1" - resolved "https://registry.yarnpkg.com/@material-ui/core/-/core-4.6.1.tgz#039f97443547a88c41d290deabfb4a044c6031ec" - integrity sha512-TljDMCJmi1zh7JhAFTp8qjIlbkVACiNftrcitzJJ+hAqpuP9PTO4euEkkAuYjISfUFZl3Z4kaOrBwN1HDrhIOQ== +"@material-ui/core@4.7.2": + version "4.7.2" + resolved "https://registry.yarnpkg.com/@material-ui/core/-/core-4.7.2.tgz#b4396eded7c85214c43c17a18bad66e94742f92c" + integrity sha512-ZbeO6xshTEHcMU2jMNjBY26u9p5ILQFj0y7HvOPZ9WT6POaN6qNKYX2PdXnnRDE1MpN8W2K1cxM4KKkiYWNkCQ== dependencies: "@babel/runtime" "^7.4.4" - "@material-ui/styles" "^4.6.0" - "@material-ui/system" "^4.5.2" + "@material-ui/styles" "^4.7.1" + "@material-ui/system" "^4.7.1" "@material-ui/types" "^4.1.1" - "@material-ui/utils" "^4.5.2" + "@material-ui/utils" "^4.7.1" "@types/react-transition-group" "^4.2.0" clsx "^1.0.2" convert-css-length "^2.0.1" @@ -2317,17 +2336,18 @@ normalize-scroll-left "^0.2.0" popper.js "^1.14.1" prop-types "^15.7.2" + react-is "^16.8.0" react-transition-group "^4.3.0" -"@material-ui/styles@4.6.0", "@material-ui/styles@^4.6.0": - version "4.6.0" - resolved "https://registry.yarnpkg.com/@material-ui/styles/-/styles-4.6.0.tgz#15679fab6dcbe0cc2416f01a22966f3ea26607c5" - integrity sha512-lqqh4UEMdIYcU1Yth4pQyMTah02uAkg3NOT3MirN9FUexdL8pNA6zCHigEgDSfwmvnXyxHhxTkphfy0DRfnt9w== +"@material-ui/styles@4.7.1", "@material-ui/styles@^4.7.1": + version "4.7.1" + resolved "https://registry.yarnpkg.com/@material-ui/styles/-/styles-4.7.1.tgz#48fa70f06441c35e301a9c4b6c825526a97b7a29" + integrity sha512-BBfxVThaPrglqHmKtSdrZJxnbFGJqKdZ5ZvDarj3HsmkteGCXsP1ohrDi5TWoa5JEJFo9S6q6NywqsENZn9rZA== dependencies: "@babel/runtime" "^7.4.4" "@emotion/hash" "^0.7.1" "@material-ui/types" "^4.1.1" - "@material-ui/utils" "^4.5.2" + "@material-ui/utils" "^4.7.1" clsx "^1.0.2" csstype "^2.5.2" hoist-non-react-statics "^3.2.1" @@ -2341,13 +2361,13 @@ jss-plugin-vendor-prefixer "^10.0.0" prop-types "^15.7.2" -"@material-ui/system@^4.5.2": - version "4.5.2" - resolved "https://registry.yarnpkg.com/@material-ui/system/-/system-4.5.2.tgz#7143bd8422a3f33f435c23f378136254004bbd60" - integrity sha512-h9RWvdM9XKlHHqwiuhyvWdobptQkHli+m2jJFs7i1AI/hmGsIc4reDmS7fInhETgt/Txx7uiAIznfRNIIVHmQw== +"@material-ui/system@^4.7.1": + version "4.7.1" + resolved "https://registry.yarnpkg.com/@material-ui/system/-/system-4.7.1.tgz#d928dacc0eeae6bea569ff3ee079f409efb3517d" + integrity sha512-zH02p+FOimXLSKOW/OT2laYkl9bB3dD1AvnZqsHYoseUaq0aVrpbl2BGjQi+vJ5lg8w73uYlt9zOWzb3+1UdMQ== dependencies: "@babel/runtime" "^7.4.4" - "@material-ui/utils" "^4.5.2" + "@material-ui/utils" "^4.7.1" prop-types "^15.7.2" "@material-ui/types@^4.1.1": @@ -2357,14 +2377,14 @@ dependencies: "@types/react" "*" -"@material-ui/utils@^4.5.2": - version "4.5.2" - resolved "https://registry.yarnpkg.com/@material-ui/utils/-/utils-4.5.2.tgz#4c2fb531d357cf0da8cece53b588dff9b0bde934" - integrity sha512-zhbNfHd1gLa8At6RPDG7uMZubHxbY+LtM6IkSfeWi6Lo4Ax80l62YaN1QmUpO1IvGCkn/j62tQX3yObiQZrJsQ== +"@material-ui/utils@^4.7.1": + version "4.7.1" + resolved "https://registry.yarnpkg.com/@material-ui/utils/-/utils-4.7.1.tgz#dc16c7f0d2cd02fbcdd5cfe601fd6863ae3cc652" + integrity sha512-+ux0SlLdlehvzCk2zdQ3KiS3/ylWvuo/JwAGhvb8dFVvwR21K28z0PU9OQW2PGogrMEdvX3miEI5tGxTwwWiwQ== dependencies: "@babel/runtime" "^7.4.4" prop-types "^15.7.2" - react-is "^16.8.6" + react-is "^16.8.0" "@mrmlnc/readdir-enhanced@^2.2.1": version "2.2.1" @@ -2747,10 +2767,10 @@ "@types/node" "*" "@types/range-parser" "*" -"@types/express-session@1.15.15": - version "1.15.15" - resolved "https://registry.yarnpkg.com/@types/express-session/-/express-session-1.15.15.tgz#8e2e2b2ffd4e2ac62465a8ff78fff30ed81a8c8f" - integrity sha512-D75AXBID8QBz0faDgkZd71VY/X1dk7ow2OeQsef7D+dWDtvtWlGcTaD12NPttdNLKdXUDWvJ5hrE2vEfcUoJgQ== +"@types/express-session@1.15.16": + version "1.15.16" + resolved "https://registry.yarnpkg.com/@types/express-session/-/express-session-1.15.16.tgz#91ba1f47a2fc2088811e8d7c17702ec92d8a8b23" + integrity sha512-vWQpNt9t/zc4bTX+Ow5powZb9n3NwOM0SYsAJ7PYj5vliB6FA40ye5sW5fZTw8+ekbzJf/sgvtQocf7IryJBJw== dependencies: "@types/express" "*" "@types/node" "*" @@ -2809,10 +2829,10 @@ resolved "https://registry.yarnpkg.com/@types/http-assert/-/http-assert-1.5.1.tgz#d775e93630c2469c2f980fc27e3143240335db3b" integrity sha512-PGAK759pxyfXE78NbKxyfRcWYA/KwW17X290cNev/qAsn9eQIxkH4shoNBafH37wewhDG/0p1cHPbK6+SzZjWQ== -"@types/ioredis@4.0.19": - version "4.0.19" - resolved "https://registry.yarnpkg.com/@types/ioredis/-/ioredis-4.0.19.tgz#9e28b6d36ede7fed7ea56f5f1cb1b486f696962a" - integrity sha512-kBewWNiNiEIOagoT7YDD928eRbyfk9d8ZVxAspNhS09EDP25ym/W7MRjgQcczpobeIIA4JPHAAE6BzQE5HXLDw== +"@types/ioredis@4.14.2": + version "4.14.2" + resolved "https://registry.yarnpkg.com/@types/ioredis/-/ioredis-4.14.2.tgz#77e9c2d04ec62f8d1928077dce90544907149d5f" + integrity sha512-IKiASxMJunaPYlR3Z12uInJmN+yE9Db+O4mh7xYtJy9Jsj0eDstkvFUZJaqv5BAOcn6lyC7d17tKWJwZXvDgcg== dependencies: "@types/node" "*" @@ -2889,10 +2909,10 @@ "@types/koa-compose" "*" "@types/node" "*" -"@types/lodash@4.14.148", "@types/lodash@^4.14.148": - version "4.14.148" - resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.148.tgz#ffa2786721707b335c6aa1465e6d3d74016fbd3e" - integrity sha512-05+sIGPev6pwpHF7NZKfP3jcXhXsIVFnYyVRT4WOB0me62E8OlWfTN+sKyt2/rqN+ETxuHAtgTSK1v71F0yncg== +"@types/lodash@4.14.149", "@types/lodash@^4.14.149": + version "4.14.149" + resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.149.tgz#1342d63d948c6062838fbf961012f74d4e638440" + integrity sha512-ijGqzZt/b7BfzcK9vTrS6MFljQRPn5BFWOx8oE0GYxribu6uV+aA9zZuXI1zc/etK9E8nrgdoF2+LgUw7+9tJQ== "@types/long@^4.0.0": version "4.0.0" @@ -2916,7 +2936,7 @@ dependencies: "@types/node" "*" -"@types/mongodb@*", "@types/mongodb@3.3.10": +"@types/mongodb@*": version "3.3.10" resolved "https://registry.yarnpkg.com/@types/mongodb/-/mongodb-3.3.10.tgz#ef8255cc78b32ecd8afd901796e458f4379d9bc2" integrity sha512-0irlIjqs0UVcs+1ih7qdA9Rs4gkN9hBX7PI6IBWYu/kcMQ52L+oLW19gKT8wBJD2uMBkgT4mVKDmEo6ygObnHA== @@ -2924,18 +2944,26 @@ "@types/bson" "*" "@types/node" "*" -"@types/mongoose@5.5.32": - version "5.5.32" - resolved "https://registry.yarnpkg.com/@types/mongoose/-/mongoose-5.5.32.tgz#8a76c5be029086c1225bf88ed3ca83f01181121f" - integrity sha512-2BemWy7SynT87deweqc2eCzg6pRyTVlnnMat2JxsTNoyeSFKC27b19qBTeKRfBVt+SjtaWd/ud4faUaObONwBA== +"@types/mongodb@3.3.12": + version "3.3.12" + resolved "https://registry.yarnpkg.com/@types/mongodb/-/mongodb-3.3.12.tgz#c5afa2de5ee5558603ecee8c9366e86e24576703" + integrity sha512-gWIdrA8YKC4OetBk4eT5Zsp4p3oy/BJQKt80tXfgPnfBuLigumcmwNZseVSkLQJ3XkN/1OR0/kIunGWlew3rmQ== + dependencies: + "@types/bson" "*" + "@types/node" "*" + +"@types/mongoose@5.5.34": + version "5.5.34" + resolved "https://registry.yarnpkg.com/@types/mongoose/-/mongoose-5.5.34.tgz#b77fdd8f5a80d1315c47a53d9166c6ff95f63898" + integrity sha512-XSXKMIZimxx8q17RGQArawrTVI8021PPbP21WEq71YTUMpVuaJaN9yFQll5KtEif5Jw1cphxEFkNwrDmuG+NFA== dependencies: "@types/mongodb" "*" "@types/node" "*" -"@types/node-fetch@2.5.3": - version "2.5.3" - resolved "https://registry.yarnpkg.com/@types/node-fetch/-/node-fetch-2.5.3.tgz#b84127facd93642b1fb6439bc630ba0612e3ec50" - integrity sha512-X3TNlzZ7SuSwZsMkb5fV7GrPbVKvHc2iwHmslb8bIxRKWg2iqkfm3F/Wd79RhDpOXR7wCtKAwc5Y2JE6n/ibyw== +"@types/node-fetch@2.5.4": + version "2.5.4" + resolved "https://registry.yarnpkg.com/@types/node-fetch/-/node-fetch-2.5.4.tgz#5245b6d8841fc3a6208b82291119bc11c4e0ce44" + integrity sha512-Oz6id++2qAOFuOlE1j0ouk1dzl3mmI1+qINPNBhi9nt/gVOz0G+13Ao6qjhdF0Ys+eOkhu6JnFmt38bR3H0POQ== dependencies: "@types/node" "*" @@ -2985,10 +3013,10 @@ dependencies: "@types/react" "*" -"@types/react-router-dom@5.1.2": - version "5.1.2" - resolved "https://registry.yarnpkg.com/@types/react-router-dom/-/react-router-dom-5.1.2.tgz#853f229f1f297513c0be84f7c914a08b778cfdf5" - integrity sha512-kRx8hoBflE4Dp7uus+j/0uMHR5uGTAvQtc4A3vOTWKS+epe0leCuxEx7HNT7XGUd1lH53/moWM51MV2YUyhzAg== +"@types/react-router-dom@5.1.3": + version "5.1.3" + resolved "https://registry.yarnpkg.com/@types/react-router-dom/-/react-router-dom-5.1.3.tgz#b5d28e7850bd274d944c0fbbe5d57e6b30d71196" + integrity sha512-pCq7AkOvjE65jkGS5fQwQhvUp4+4PVD9g39gXLZViP2UqFiFzsEpB3PKf0O6mdbKsewSK8N14/eegisa/0CwnA== dependencies: "@types/history" "*" "@types/react" "*" @@ -3017,7 +3045,7 @@ dependencies: "@types/react" "*" -"@types/react@*", "@types/react@16.9.11": +"@types/react@*": version "16.9.11" resolved "https://registry.yarnpkg.com/@types/react/-/react-16.9.11.tgz#70e0b7ad79058a7842f25ccf2999807076ada120" integrity sha512-UBT4GZ3PokTXSWmdgC/GeCGEJXE5ofWyibCcecRLUVN2ZBpXQGVgQGtG2foS7CrTKFKlQVVswLvf7Js6XA/CVQ== @@ -3025,6 +3053,14 @@ "@types/prop-types" "*" csstype "^2.2.0" +"@types/react@16.9.16": + version "16.9.16" + resolved "https://registry.yarnpkg.com/@types/react/-/react-16.9.16.tgz#4f12515707148b1f53a8eaa4341dae5dfefb066d" + integrity sha512-dQ3wlehuBbYlfvRXfF5G+5TbZF3xqgkikK7DWAsQXe2KnzV+kjD4W2ea+ThCrKASZn9h98bjjPzoTYzfRqyBkw== + dependencies: + "@types/prop-types" "*" + csstype "^2.2.0" + "@types/request-ip@0.0.34": version "0.0.34" resolved "https://registry.yarnpkg.com/@types/request-ip/-/request-ip-0.0.34.tgz#9709f9b23ddbda925fba16c6c52ffb782f6c2b73" @@ -3032,10 +3068,10 @@ dependencies: "@types/node" "*" -"@types/request-promise@4.1.44": - version "4.1.44" - resolved "https://registry.yarnpkg.com/@types/request-promise/-/request-promise-4.1.44.tgz#05b59cd18445832fae16b68d5bb3d4621b549485" - integrity sha512-RId7eFsUKxfal1LirDDIcOp9u3MM3NXFDBcC3sqIMcmu7f4U6DsCEMD8RbLZtnPrQlN5Jc79di/WPsIEDO4keg== +"@types/request-promise@4.1.45": + version "4.1.45" + resolved "https://registry.yarnpkg.com/@types/request-promise/-/request-promise-4.1.45.tgz#7fcdd39fd920674ab7bfb44197270f225fb4e585" + integrity sha512-KFagTY/a7CzAj86DkhaAtqP0ViYTNam+CfEokSwtPFUIuq9Qrq+Rq2X4nuaB6OJmM2s0xWeiS085Ro7vR0tt9Q== dependencies: "@types/bluebird" "*" "@types/request" "*" @@ -3107,7 +3143,18 @@ resolved "https://registry.yarnpkg.com/@types/zen-observable/-/zen-observable-0.8.0.tgz#8b63ab7f1aa5321248aad5ac890a485656dcea4d" integrity sha512-te5lMAWii1uEJ4FwLjzdlbw3+n0FZNOvFXHxQDKeT0dilh7HOzdMzV2TrJVUzq8ep7J4Na8OUYPRLSQkJHAlrg== -"@typescript-eslint/eslint-plugin@2.7.0", "@typescript-eslint/eslint-plugin@^2.2.0": +"@typescript-eslint/eslint-plugin@2.11.0": + version "2.11.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-2.11.0.tgz#4477c33491ccf0a9a3f4a30ef84978fa0ea0cad2" + integrity sha512-G2HHA1vpMN0EEbUuWubiCCfd0R3a30BB+UdvnFkxwZIxYEGOrWEXDv8tBFO9f44CWc47Xv9lLM3VSn4ORLI2bA== + dependencies: + "@typescript-eslint/experimental-utils" "2.11.0" + eslint-utils "^1.4.3" + functional-red-black-tree "^1.0.1" + regexpp "^3.0.0" + tsutils "^3.17.1" + +"@typescript-eslint/eslint-plugin@^2.2.0": version "2.7.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-2.7.0.tgz#dff176bdb73dfd7e2e43062452189bd1b9db6021" integrity sha512-H5G7yi0b0FgmqaEUpzyBlVh0d9lq4cWG2ap0RKa6BkF3rpBb6IrAoubt1NWh9R2kRs/f0k6XwRDiDz3X/FqXhQ== @@ -3118,6 +3165,15 @@ regexpp "^2.0.1" tsutils "^3.17.1" +"@typescript-eslint/experimental-utils@2.11.0": + version "2.11.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-2.11.0.tgz#cef18e6b122706c65248a5d8984a9779ed1e52ac" + integrity sha512-YxcA/y0ZJaCc/fB/MClhcDxHI0nOBB7v2/WxBju2cOTanX7jO9ttQq6Fy4yW9UaY5bPd9xL3cun3lDVqk67sPQ== + dependencies: + "@types/json-schema" "^7.0.3" + "@typescript-eslint/typescript-estree" "2.11.0" + eslint-scope "^5.0.0" + "@typescript-eslint/experimental-utils@2.7.0", "@typescript-eslint/experimental-utils@^2.5.0": version "2.7.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-2.7.0.tgz#58d790a3884df3041b5a5e08f9e5e6b7c41864b5" @@ -3127,7 +3183,17 @@ "@typescript-eslint/typescript-estree" "2.7.0" eslint-scope "^5.0.0" -"@typescript-eslint/parser@2.7.0", "@typescript-eslint/parser@^2.2.0": +"@typescript-eslint/parser@2.11.0": + version "2.11.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-2.11.0.tgz#cdcc3be73ee31cbef089af5ff97ccaa380ef6e8b" + integrity sha512-DyGXeqhb3moMioEFZIHIp7oXBBh7dEfPTzGrlyP0Mi9ScCra4SWEGs3kPd18mG7Sy9Wy8z88zmrw5tSGL6r/6A== + dependencies: + "@types/eslint-visitor-keys" "^1.0.0" + "@typescript-eslint/experimental-utils" "2.11.0" + "@typescript-eslint/typescript-estree" "2.11.0" + eslint-visitor-keys "^1.1.0" + +"@typescript-eslint/parser@^2.2.0": version "2.7.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-2.7.0.tgz#b5e6a4944e2b68dba1e7fbfd5242e09ff552fd12" integrity sha512-ctC0g0ZvYclxMh/xI+tyqP0EC2fAo6KicN9Wm2EIao+8OppLfxji7KAGJosQHSGBj3TcqUrA96AjgXuKa5ob2g== @@ -3137,6 +3203,19 @@ "@typescript-eslint/typescript-estree" "2.7.0" eslint-visitor-keys "^1.1.0" +"@typescript-eslint/typescript-estree@2.11.0": + version "2.11.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-2.11.0.tgz#21ada6504274cd1644855926312c798fc697e9fb" + integrity sha512-HGY4+d4MagO6cKMcKfIKaTMxcAv7dEVnji2Zi+vi5VV8uWAM631KjAB5GxFcexMYrwKT0EekRiiGK1/Sd7VFGA== + dependencies: + debug "^4.1.1" + eslint-visitor-keys "^1.1.0" + glob "^7.1.6" + is-glob "^4.0.1" + lodash.unescape "4.0.1" + semver "^6.3.0" + tsutils "^3.17.1" + "@typescript-eslint/typescript-estree@2.7.0": version "2.7.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-2.7.0.tgz#34fd98c77a07b40d04d5b4203eddd3abeab909f4" @@ -3581,13 +3660,13 @@ apollo-boost@0.4.4: ts-invariant "^0.4.0" tslib "^1.9.3" -apollo-cache-control@^0.8.5: - version "0.8.5" - resolved "https://registry.yarnpkg.com/apollo-cache-control/-/apollo-cache-control-0.8.5.tgz#d4b34691f6ca1cefac9d82b99a94a0815a85a5a8" - integrity sha512-2yQ1vKgJQ54SGkoQS/ZLZrDX3La6cluAYYdruFYJMJtL4zQrSdeOCy11CQliCMYEd6eKNyE70Rpln51QswW2Og== +apollo-cache-control@^0.8.8: + version "0.8.8" + resolved "https://registry.yarnpkg.com/apollo-cache-control/-/apollo-cache-control-0.8.8.tgz#c6de9ef3a154560f6cf26ce7159e62438c1ac022" + integrity sha512-hpIJg3Tmb6quA111lrVO+d3qcyYRlJ8JqbeQdcgwLT3fb2VQzk21SrBZYl2oMM4ZqSOWCZWg4/Cn9ARYqdWjKA== dependencies: apollo-server-env "^2.4.3" - graphql-extensions "^0.10.4" + graphql-extensions "^0.10.7" apollo-cache-inmemory@1.6.3, apollo-cache-inmemory@^1.6.3: version "1.6.3" @@ -3630,25 +3709,25 @@ apollo-datasource@^0.6.3: apollo-server-caching "^0.5.0" apollo-server-env "^2.4.3" -apollo-engine-reporting-protobuf@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/apollo-engine-reporting-protobuf/-/apollo-engine-reporting-protobuf-0.4.1.tgz#c0a35bcf28487f87dcbc452b03277f575192f5d2" - integrity sha512-d7vFFZ2oUrvGaN0Hpet8joe2ZG0X0lIGilN+SwgVP38dJnOuadjsaYMyrD9JudGQJg0bJA5wVQfYzcCVy0slrw== +apollo-engine-reporting-protobuf@^0.4.4: + version "0.4.4" + resolved "https://registry.yarnpkg.com/apollo-engine-reporting-protobuf/-/apollo-engine-reporting-protobuf-0.4.4.tgz#73a064f8c9f2d6605192d1673729c66ec47d9cb7" + integrity sha512-SGrIkUR7Q/VjU8YG98xcvo340C4DaNUhg/TXOtGsMlfiJDzHwVau/Bv6zifAzBafp2lj0XND6Daj5kyT/eSI/w== dependencies: - protobufjs "^6.8.6" + "@apollo/protobufjs" "^1.0.3" -apollo-engine-reporting@^1.4.7: - version "1.4.7" - resolved "https://registry.yarnpkg.com/apollo-engine-reporting/-/apollo-engine-reporting-1.4.7.tgz#6ca69ebdc1c17200969e2e4e07a0be64d748c27e" - integrity sha512-qsKDz9VkoctFhojM3Nj3nvRBO98t8TS2uTgtiIjUGs3Hln2poKMP6fIQ37Nm2Q2B3JJst76HQtpPwXmRJd1ZUg== +apollo-engine-reporting@^1.4.11: + version "1.4.11" + resolved "https://registry.yarnpkg.com/apollo-engine-reporting/-/apollo-engine-reporting-1.4.11.tgz#ea4501925c201e62729a11ce36284a89f1eaa4f5" + integrity sha512-7ZkbOGvPfWppN8+1KHzyHPrJTMOmrMUy38unao2c9TTToOAnEvx2MtUTo6mr3aw/g8UQYUf0x2Cq+K2YSlUTPw== dependencies: - apollo-engine-reporting-protobuf "^0.4.1" + apollo-engine-reporting-protobuf "^0.4.4" apollo-graphql "^0.3.4" apollo-server-caching "^0.5.0" apollo-server-env "^2.4.3" - apollo-server-types "^0.2.5" + apollo-server-types "^0.2.8" async-retry "^1.2.1" - graphql-extensions "^0.10.4" + graphql-extensions "^0.10.7" apollo-env@0.5.1, apollo-env@^0.5.1: version "0.5.1" @@ -3719,26 +3798,26 @@ apollo-server-caching@0.5.0, apollo-server-caching@^0.5.0: dependencies: lru-cache "^5.0.0" -apollo-server-core@^2.9.9: - version "2.9.9" - resolved "https://registry.yarnpkg.com/apollo-server-core/-/apollo-server-core-2.9.9.tgz#73df4989ac0ad09d20c20ef3e06f8c816bc7a13f" - integrity sha512-JxtYDasqeem5qUwPrCVh2IsBOgSQF4MKrRgy8dpxd+ymWfaaVelCUows1VE8vghgRxqDExnM9ibOxcZeI6mO6g== +apollo-server-core@^2.9.13: + version "2.9.13" + resolved "https://registry.yarnpkg.com/apollo-server-core/-/apollo-server-core-2.9.13.tgz#29fee69be56d30605b0a06cd755fd39e0409915f" + integrity sha512-iXTGNCtouB0Xe37ySovuZO69NBYOByJlZfUc87gj0pdcz0WbdfUp7qUtNzy3onp63Zo60TFkHWhGNcBJYFluzw== dependencies: "@apollographql/apollo-tools" "^0.4.0" "@apollographql/graphql-playground-html" "1.6.24" "@types/graphql-upload" "^8.0.0" "@types/ws" "^6.0.0" - apollo-cache-control "^0.8.5" + apollo-cache-control "^0.8.8" apollo-datasource "^0.6.3" - apollo-engine-reporting "^1.4.7" + apollo-engine-reporting "^1.4.11" apollo-server-caching "^0.5.0" apollo-server-env "^2.4.3" apollo-server-errors "^2.3.4" - apollo-server-plugin-base "^0.6.5" - apollo-server-types "^0.2.5" - apollo-tracing "^0.8.5" + apollo-server-plugin-base "^0.6.8" + apollo-server-types "^0.2.8" + apollo-tracing "^0.8.8" fast-json-stable-stringify "^2.0.0" - graphql-extensions "^0.10.4" + graphql-extensions "^0.10.7" graphql-tag "^2.9.2" graphql-tools "^4.0.0" graphql-upload "^8.0.2" @@ -3759,10 +3838,10 @@ apollo-server-errors@^2.3.4: resolved "https://registry.yarnpkg.com/apollo-server-errors/-/apollo-server-errors-2.3.4.tgz#b70ef01322f616cbcd876f3e0168a1a86b82db34" integrity sha512-Y0PKQvkrb2Kd18d1NPlHdSqmlr8TgqJ7JQcNIfhNDgdb45CnqZlxL1abuIRhr8tiw8OhVOcFxz2KyglBi8TKdA== -apollo-server-express@^2.9.9: - version "2.9.9" - resolved "https://registry.yarnpkg.com/apollo-server-express/-/apollo-server-express-2.9.9.tgz#2a379217d7a7be012f0329be8bf89a63e181d42e" - integrity sha512-qltC3ttGz8zvrut7HzrcqKOUg0vHpvVyYeeOy8jvghZpqXyWFuJhnw6uxAFcKNKCPl3mJ1psji83P1Um2ceJgg== +apollo-server-express@^2.9.13: + version "2.9.13" + resolved "https://registry.yarnpkg.com/apollo-server-express/-/apollo-server-express-2.9.13.tgz#abb00bcf85d86a6e0e9105ce3b7fae9a7748156b" + integrity sha512-M306e07dpZ8YpZx4VBYa0FWlt+wopj4Bwn0Iy1iJ6VjaRyGx2HCUJvLpHZ+D0TIXtQ2nX3DTYeOouVaDDwJeqQ== dependencies: "@apollographql/graphql-playground-html" "1.6.24" "@types/accepts" "^1.3.5" @@ -3770,8 +3849,8 @@ apollo-server-express@^2.9.9: "@types/cors" "^2.8.4" "@types/express" "4.17.1" accepts "^1.3.5" - apollo-server-core "^2.9.9" - apollo-server-types "^0.2.5" + apollo-server-core "^2.9.13" + apollo-server-types "^0.2.8" body-parser "^1.18.3" cors "^2.8.4" express "^4.17.1" @@ -3781,40 +3860,40 @@ apollo-server-express@^2.9.9: subscriptions-transport-ws "^0.9.16" type-is "^1.6.16" -apollo-server-plugin-base@^0.6.5: - version "0.6.5" - resolved "https://registry.yarnpkg.com/apollo-server-plugin-base/-/apollo-server-plugin-base-0.6.5.tgz#eebe27734c51bf6a45b6a9ec8738750b132ffde7" - integrity sha512-z2ve7HEPWmZI3EzL0iiY9qyt1i0hitT+afN5PzssCw594LB6DfUQWsI14UW+W+gcw8hvl8VQUpXByfUntAx5vw== +apollo-server-plugin-base@^0.6.8: + version "0.6.8" + resolved "https://registry.yarnpkg.com/apollo-server-plugin-base/-/apollo-server-plugin-base-0.6.8.tgz#94cb9a6d806b7057d1d42202292d2adcf2cf0e7a" + integrity sha512-0pKCjcg9gHBK8qlb280+N0jl99meixQtxXnMJFyIfD+45OpKQ+WolHIbO0oZgNEt7r/lNWwH8v3l5yYm1ghz1A== dependencies: - apollo-server-types "^0.2.5" + apollo-server-types "^0.2.8" -apollo-server-types@^0.2.5: - version "0.2.5" - resolved "https://registry.yarnpkg.com/apollo-server-types/-/apollo-server-types-0.2.5.tgz#2d63924706ffc1a59480cbbc93e9fe86655a57a5" - integrity sha512-6iJQsPh59FWu4K7ABrVmpnQVgeK8Ockx8BcawBh+saFYWTlVczwcLyGSZPeV1tPSKwFwKZutyEslrYSafcarXQ== +apollo-server-types@^0.2.8: + version "0.2.8" + resolved "https://registry.yarnpkg.com/apollo-server-types/-/apollo-server-types-0.2.8.tgz#729208a8dd72831af3aa4f1eb584022ada146e6b" + integrity sha512-5OclxkAqjhuO75tTNHpSO/+doJZ+VlRtTefnrPJdK/uwVew9U/VUCWkYdryZWwEyVe1nvQ/4E7RYR4tGb8l8wA== dependencies: - apollo-engine-reporting-protobuf "^0.4.1" + apollo-engine-reporting-protobuf "^0.4.4" apollo-server-caching "^0.5.0" apollo-server-env "^2.4.3" -apollo-server@2.9.9, apollo-server@^2.9.9: - version "2.9.9" - resolved "https://registry.yarnpkg.com/apollo-server/-/apollo-server-2.9.9.tgz#f10249fa9884be2a0ad59876e301fdfccb456208" - integrity sha512-b4IfGxZDzhOnfaPTinAD0rx8XpgxkVMjNuwooRULOJEeYG8Vd/OiBYSS7LSGy1g3hdiLBgJhMFC0ce7pjdcyFw== +apollo-server@2.9.13, apollo-server@^2.9.13: + version "2.9.13" + resolved "https://registry.yarnpkg.com/apollo-server/-/apollo-server-2.9.13.tgz#f93005a2a9d2b29a047f170eeb900bf464bfe62d" + integrity sha512-Aedj/aHRMCDMUwtM+hXiliX1OkFNl1NyiQUADbwm6AMV3OrfT9TUbbSI1AN2qsx+rg6dIhpAiHLUf73uDy3V/g== dependencies: - apollo-server-core "^2.9.9" - apollo-server-express "^2.9.9" + apollo-server-core "^2.9.13" + apollo-server-express "^2.9.13" express "^4.0.0" graphql-subscriptions "^1.0.0" graphql-tools "^4.0.0" -apollo-tracing@^0.8.5: - version "0.8.5" - resolved "https://registry.yarnpkg.com/apollo-tracing/-/apollo-tracing-0.8.5.tgz#f07c4584d95bcf750e44bfe9845e073b03774941" - integrity sha512-lZn10/GRBZUlMxVYLghLMFsGcLN0jTYDd98qZfBtxw+wEWUx+PKkZdljDT+XNoOm/kDvEutFGmi5tSLhArIzWQ== +apollo-tracing@^0.8.8: + version "0.8.8" + resolved "https://registry.yarnpkg.com/apollo-tracing/-/apollo-tracing-0.8.8.tgz#bfaffd76dc12ed5cc1c1198b5411864affdb1b83" + integrity sha512-aIwT2PsH7VZZPaNrIoSjzLKMlG644d2Uf+GYcoMd3X6UEyg1sXdWqkKfCeoS6ChJKH2khO7MXAvOZC03UnCumQ== dependencies: apollo-server-env "^2.4.3" - graphql-extensions "^0.10.4" + graphql-extensions "^0.10.7" apollo-utilities@1.3.2, apollo-utilities@^1.0.1, apollo-utilities@^1.3.0, apollo-utilities@^1.3.2: version "1.3.2" @@ -4863,7 +4942,7 @@ chardet@^0.7.0: resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== -chokidar@3.3.0: +chokidar@3.3.0, chokidar@^3.2.2: version "3.3.0" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.3.0.tgz#12c0714668c55800f659e262d4962a97faf554a6" integrity sha512-dGmKLDdT3Gdl7fBUe8XK+gAtGmzy5Fn0XkkWQuYxGIgWVPPse2CxFA5mtrlD0TOHaHjEUqkWNyP1XdHoJES/4A== @@ -4878,7 +4957,7 @@ chokidar@3.3.0: optionalDependencies: fsevents "~2.1.1" -chokidar@^2.0.0, chokidar@^2.0.2, chokidar@^2.0.4, chokidar@^2.1.8: +chokidar@^2.0.0, chokidar@^2.0.2, chokidar@^2.0.4: version "2.1.8" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.8.tgz#804b3a7b6a99358c3c5c61e71d8728f041cff917" integrity sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg== @@ -5231,10 +5310,10 @@ concat-stream@^2.0.0: readable-stream "^3.0.2" typedarray "^0.0.6" -concurrently@5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/concurrently/-/concurrently-5.0.0.tgz#99c7567d009411fbdc98299d553c4b99a978612c" - integrity sha512-1yDvK8mduTIdxIxV9C60KoiOySUl/lfekpdbI+U5GXaPrgdffEavFa9QZB3vh68oWOpbCC+TuvxXV9YRPMvUrA== +concurrently@5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/concurrently/-/concurrently-5.0.1.tgz#9d15e0e7bb7ebe5c3bcd86deb8393501c35dd003" + integrity sha512-fPKUlOAXEXpktp3z7RqIvzTSCowfDo8oQbdKoGKGZVm+G2hGFbIIAFm4qwWcGl/sIHmpMSgPqeCbjld3kdPXvA== dependencies: chalk "^2.4.2" date-fns "^2.0.1" @@ -5242,9 +5321,9 @@ concurrently@5.0.0: read-pkg "^4.0.1" rxjs "^6.5.2" spawn-command "^0.0.2-1" - supports-color "^4.5.0" + supports-color "^6.1.0" tree-kill "^1.2.1" - yargs "^12.0.5" + yargs "^13.3.0" config-chain@^1.1.11: version "1.1.12" @@ -6569,10 +6648,10 @@ escodegen@^1.11.0, escodegen@^1.9.1: optionalDependencies: source-map "~0.6.1" -eslint-config-prettier@6.6.0: - version "6.6.0" - resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-6.6.0.tgz#4e039f65af8245e32d8fba4a2f5b83ed7186852e" - integrity sha512-6RGaj7jD+HeuSVHoIT6A0WkBhVEk0ULg74kp2FAWIwkYrOERae0TjIO09Cw33oN//gJWmt7aFhVJErEVta7uvA== +eslint-config-prettier@6.7.0: + version "6.7.0" + resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-6.7.0.tgz#9a876952e12df2b284adbd3440994bf1f39dfbb9" + integrity sha512-FamQVKM3jjUVwhG4hEMnbtsq7xOIDm+SY5iBPfR8gKsJoAB2IQnNF+bk1+8Fy44Nq7PPJaLvkRxILYdJWoguKQ== dependencies: get-stdin "^6.0.0" @@ -6634,10 +6713,10 @@ eslint-plugin-import@2.18.2: read-pkg-up "^2.0.0" resolve "^1.11.0" -eslint-plugin-jest@23.0.4: - version "23.0.4" - resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-23.0.4.tgz#1ab81ffe3b16c5168efa72cbd4db14d335092aa0" - integrity sha512-OaP8hhT8chJNodUPvLJ6vl8gnalcsU/Ww1t9oR3HnGdEWjm/DdCCUXLOral+IPGAeWu/EwgVQCK/QtxALpH1Yw== +eslint-plugin-jest@23.1.1: + version "23.1.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-23.1.1.tgz#1220ab53d5a4bf5c3c4cd07c0dabc6199d4064dd" + integrity sha512-2oPxHKNh4j1zmJ6GaCBuGcb8FVZU7YjFUOJzGOPnl9ic7VA/MGAskArLJiRIlnFUmi1EUxY+UiATAy8dv8s5JA== dependencies: "@typescript-eslint/experimental-utils" "^2.5.0" @@ -6711,7 +6790,50 @@ eslint-visitor-keys@^1.0.0, eslint-visitor-keys@^1.1.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz#e2a82cea84ff246ad6fb57f9bde5b46621459ec2" integrity sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A== -eslint@6.6.0, eslint@^6.1.0: +eslint@6.7.2: + version "6.7.2" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-6.7.2.tgz#c17707ca4ad7b2d8af986a33feba71e18a9fecd1" + integrity sha512-qMlSWJaCSxDFr8fBPvJM9kJwbazrhNcBU3+DszDW1OlEwKBBRWsJc7NJFelvwQpanHCR14cOLD41x8Eqvo3Nng== + dependencies: + "@babel/code-frame" "^7.0.0" + ajv "^6.10.0" + chalk "^2.1.0" + cross-spawn "^6.0.5" + debug "^4.0.1" + doctrine "^3.0.0" + eslint-scope "^5.0.0" + eslint-utils "^1.4.3" + eslint-visitor-keys "^1.1.0" + espree "^6.1.2" + esquery "^1.0.1" + esutils "^2.0.2" + file-entry-cache "^5.0.1" + functional-red-black-tree "^1.0.1" + glob-parent "^5.0.0" + globals "^12.1.0" + ignore "^4.0.6" + import-fresh "^3.0.0" + imurmurhash "^0.1.4" + inquirer "^7.0.0" + is-glob "^4.0.0" + js-yaml "^3.13.1" + json-stable-stringify-without-jsonify "^1.0.1" + levn "^0.3.0" + lodash "^4.17.14" + minimatch "^3.0.4" + mkdirp "^0.5.1" + natural-compare "^1.4.0" + optionator "^0.8.3" + progress "^2.0.0" + regexpp "^2.0.1" + semver "^6.1.2" + strip-ansi "^5.2.0" + strip-json-comments "^3.0.1" + table "^5.2.3" + text-table "^0.2.0" + v8-compile-cache "^2.0.3" + +eslint@^6.1.0: version "6.6.0" resolved "https://registry.yarnpkg.com/eslint/-/eslint-6.6.0.tgz#4a01a2fb48d32aacef5530ee9c5a78f11a8afd04" integrity sha512-PpEBq7b6qY/qrOmpYQ/jTMDYfuQMELR4g4WI1M/NaSDDD/bdcMb+dj4Hgks7p41kW2caXsPsEZAEAyAgjVVC0g== @@ -7619,7 +7741,7 @@ glob@7.1.5: once "^1.3.0" path-is-absolute "^1.0.0" -glob@7.1.6, glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4: +glob@7.1.6, glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: version "7.1.6" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== @@ -7659,6 +7781,13 @@ globals@^11.1.0, globals@^11.7.0: resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== +globals@^12.1.0: + version "12.3.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-12.3.0.tgz#1e564ee5c4dded2ab098b0f88f24702a3c56be13" + integrity sha512-wAfjdLgFsPZsklLJvOBUBmzYE8/CwhEqSBEMRXA3qxIiNtyqvjYurAtIfDh6chlEPUfmTY3MnZh5Hfh4q0UlIw== + dependencies: + type-fest "^0.8.1" + globby@10.0.1, globby@^10.0.1: version "10.0.1" resolved "https://registry.yarnpkg.com/globby/-/globby-10.0.1.tgz#4782c34cb75dd683351335c5829cc3420e606b22" @@ -7746,14 +7875,14 @@ graphql-config@3.0.0-alpha.14: cosmiconfig "5.2.1" minimatch "3.0.4" -graphql-extensions@^0.10.4: - version "0.10.4" - resolved "https://registry.yarnpkg.com/graphql-extensions/-/graphql-extensions-0.10.4.tgz#af851b0d44ea6838cf54de9df3cfc6a8e575e571" - integrity sha512-lE6MroluEYocbR/ICwccv39w+Pz4cBPadJ11z1rJkbZv5wstISEganbDOwl9qN21rcZGiWzh7QUNxUiFUXXEDw== +graphql-extensions@^0.10.7: + version "0.10.7" + resolved "https://registry.yarnpkg.com/graphql-extensions/-/graphql-extensions-0.10.7.tgz#ca9f8ec3cb0af1739b48ca42280ec9162ad116d1" + integrity sha512-YuP7VQxNePG4bWRQ5Vk+KRMbZ9r1IWCqCCogOMz/1ueeQ4gZe93eGRcb0vhpOdMFnCX6Vyvd4+sC+N6LR3YFOQ== dependencies: "@apollographql/apollo-tools" "^0.4.0" apollo-server-env "^2.4.3" - apollo-server-types "^0.2.5" + apollo-server-types "^0.2.8" graphql-import@0.7.1: version "0.7.1" @@ -7915,11 +8044,6 @@ has-ansi@^2.0.0: dependencies: ansi-regex "^2.0.0" -has-flag@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51" - integrity sha1-6CB68cx7MNRGzHC3NLXovhj4jVE= - has-flag@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" @@ -9919,10 +10043,10 @@ lines-and-columns@^1.1.6: resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.1.6.tgz#1c00c743b433cd0a4e80758f7b64a57440d9ff00" integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA= -lint-staged@9.4.3: - version "9.4.3" - resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-9.4.3.tgz#f55ad5f94f6e105294bfd6499b23142961f7b982" - integrity sha512-PejnI+rwOAmKAIO+5UuAZU9gxdej/ovSEOAY34yMfC3OS4Ac82vCBPzAWLReR9zCPOMqeVwQRaZ3bUBpAsaL2Q== +lint-staged@9.5.0: + version "9.5.0" + resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-9.5.0.tgz#290ec605252af646d9b74d73a0fa118362b05a33" + integrity sha512-nawMob9cb/G1J98nb8v3VC/E8rcX1rryUYXVZ69aT9kde6YWX+uvNOEHY5yf2gcWcTJGiD0kqXmCnS3oD75GIA== dependencies: chalk "^2.4.2" commander "^2.20.0" @@ -10680,10 +10804,21 @@ modify-values@^1.0.0: resolved "https://registry.yarnpkg.com/modify-values/-/modify-values-1.0.1.tgz#b3939fa605546474e3e3e3c63d64bd43b4ee6022" integrity sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw== -mongodb@3.3.4, mongodb@^3.3.4: - version "3.3.4" - resolved "https://registry.yarnpkg.com/mongodb/-/mongodb-3.3.4.tgz#f52eec4a04005101e63715d4d1f67bf784fa0aef" - integrity sha512-6fmHu3FJTpeZxacJcfjUGIP3BSteG0l2cxLkSrf1nnnS1OrlnVGiP9P/wAC4aB6dM6H4vQ2io8YDjkuPkje7AA== +mongodb@3.3.5: + version "3.3.5" + resolved "https://registry.yarnpkg.com/mongodb/-/mongodb-3.3.5.tgz#38d531013afede92b0dd282e3b9f3c08c9bdff3b" + integrity sha512-6NAv5gTFdwRyVfCz+O+KDszvjpyxmZw+VlmqmqKR2GmpkeKrKFRv/ZslgTtZba2dc9JYixIf99T5Gih7TIWv7Q== + dependencies: + bson "^1.1.1" + require_optional "^1.0.1" + safe-buffer "^5.1.2" + optionalDependencies: + saslprep "^1.0.0" + +mongodb@^3.4.0: + version "3.4.0" + resolved "https://registry.yarnpkg.com/mongodb/-/mongodb-3.4.0.tgz#3490bcdcadb9acfbf77e5ce14548bd59ba33a5f6" + integrity sha512-W90jm/n8F0Edm47ljkVRK9l8qGW9g8T9ZSiZWRiUP58wLhsCJCeN/JxdpVnH0CUwwAw2hITUcCo9x58udpX2Uw== dependencies: bson "^1.1.1" require_optional "^1.0.1" @@ -10696,14 +10831,14 @@ mongoose-legacy-pluralize@1.0.2: resolved "https://registry.yarnpkg.com/mongoose-legacy-pluralize/-/mongoose-legacy-pluralize-1.0.2.tgz#3ba9f91fa507b5186d399fb40854bff18fb563e4" integrity sha512-Yo/7qQU4/EyIS8YDFSeenIvXxZN+ld7YdV9LqFVQJzTLye8unujAWPZ4NWKfFA+RNjh+wvTWKY9Z3E5XM6ZZiQ== -mongoose@5.7.11: - version "5.7.11" - resolved "https://registry.yarnpkg.com/mongoose/-/mongoose-5.7.11.tgz#74a1293deb7a69d41abd447056f5d522e28bab64" - integrity sha512-KpXGBTXQTKfTlePpZMY+FBsk9wiyp2gzfph9AsLPfWleK1x2GJY+6xpKx2kKIgLustgNq16OOrqwlAOGUbv3kg== +mongoose@5.8.1: + version "5.8.1" + resolved "https://registry.yarnpkg.com/mongoose/-/mongoose-5.8.1.tgz#9a14a17a1e764d3d3397db95326b7ba03146b8eb" + integrity sha512-8Cffl52cMK2iBlpLipoRKW/RdrhkxvVzXsy+xVsfbKHQBCWkFiS0T0jU4smYzomTMP4gW0sReJoRA7Gu/7VVgQ== dependencies: bson "~1.1.1" kareem "2.3.1" - mongodb "3.3.4" + mongodb "3.3.5" mongoose-legacy-pluralize "1.0.2" mpath "0.6.0" mquery "3.2.2" @@ -10991,12 +11126,12 @@ node-releases@^1.1.29, node-releases@^1.1.38: dependencies: semver "^6.3.0" -nodemon@1.19.4: - version "1.19.4" - resolved "https://registry.yarnpkg.com/nodemon/-/nodemon-1.19.4.tgz#56db5c607408e0fdf8920d2b444819af1aae0971" - integrity sha512-VGPaqQBNk193lrJFotBU8nvWZPqEZY2eIzymy2jjY0fJ9qIsxA0sxQ8ATPl0gZC645gijYEc1jtZvpS8QWzJGQ== +nodemon@2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/nodemon/-/nodemon-2.0.2.tgz#9c7efeaaf9b8259295a97e5d4585ba8f0cbe50b0" + integrity sha512-GWhYPMfde2+M0FsHnggIHXTqPDHXia32HRhh6H0d75Mt9FKUoCBvumNHr7LdrpPBTKxsWmIEOjoN+P4IU6Hcaw== dependencies: - chokidar "^2.1.8" + chokidar "^3.2.2" debug "^3.2.6" ignore-by-default "^1.0.1" minimatch "^3.0.4" @@ -11389,7 +11524,7 @@ optimize-css-assets-webpack-plugin@5.0.3: cssnano "^4.1.10" last-call-webpack-plugin "^3.0.0" -optionator@^0.8.1, optionator@^0.8.2: +optionator@^0.8.1, optionator@^0.8.2, optionator@^0.8.3: version "0.8.3" resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" integrity sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA== @@ -11845,7 +11980,7 @@ pg-int8@1.0.1: resolved "https://registry.yarnpkg.com/pg-int8/-/pg-int8-1.0.1.tgz#943bd463bf5b71b4170115f80f8efc9a0c0eb78c" integrity sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw== -pg-pool@^2.0.4: +pg-pool@^2.0.7: version "2.0.7" resolved "https://registry.yarnpkg.com/pg-pool/-/pg-pool-2.0.7.tgz#f14ecab83507941062c313df23f6adcd9fd0ce54" integrity sha512-UiJyO5B9zZpu32GSlP0tXy8J2NsJ9EFGFfz5v6PSbdz/1hBLX1rNiiy5+mAm5iJJYwfCv4A0EBcQLGWwjbpzZw== @@ -11861,15 +11996,15 @@ pg-types@^2.1.0: postgres-date "~1.0.4" postgres-interval "^1.1.0" -pg@7.12.1: - version "7.12.1" - resolved "https://registry.yarnpkg.com/pg/-/pg-7.12.1.tgz#880636d46d2efbe0968e64e9fe0eeece8ef72a7e" - integrity sha512-l1UuyfEvoswYfcUe6k+JaxiN+5vkOgYcVSbSuw3FvdLqDbaoa2RJo1zfJKfPsSYPFVERd4GHvX3s2PjG1asSDA== +pg@7.14.0: + version "7.14.0" + resolved "https://registry.yarnpkg.com/pg/-/pg-7.14.0.tgz#f46727845ad19c2670a7e8151063a670338b6057" + integrity sha512-TLsdOWKFu44vHdejml4Uoo8h0EwCjdIj9Z9kpz7pA5i8iQxOTwVb1+Fy+X86kW5AXKxQpYpYDs4j/qPDbro/lg== dependencies: buffer-writer "2.0.0" packet-reader "1.0.0" pg-connection-string "0.1.3" - pg-pool "^2.0.4" + pg-pool "^2.0.7" pg-types "^2.1.0" pgpass "1.x" semver "4.3.2" @@ -12801,25 +12936,6 @@ proto-list@~1.2.1: resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" integrity sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk= -protobufjs@^6.8.6: - version "6.8.8" - resolved "https://registry.yarnpkg.com/protobufjs/-/protobufjs-6.8.8.tgz#c8b4f1282fd7a90e6f5b109ed11c84af82908e7c" - integrity sha512-AAmHtD5pXgZfi7GMpllpO3q1Xw1OYldr+dMUlAnffGTAhqkg72WdmSY71uKBF/JuyiKs8psYbtKrhi0ASCD8qw== - dependencies: - "@protobufjs/aspromise" "^1.1.2" - "@protobufjs/base64" "^1.1.2" - "@protobufjs/codegen" "^2.0.4" - "@protobufjs/eventemitter" "^1.1.0" - "@protobufjs/fetch" "^1.1.0" - "@protobufjs/float" "^1.0.2" - "@protobufjs/inquire" "^1.1.0" - "@protobufjs/path" "^1.1.2" - "@protobufjs/pool" "^1.1.0" - "@protobufjs/utf8" "^1.1.0" - "@types/long" "^4.0.0" - "@types/node" "^10.1.0" - long "^4.0.0" - protocols@^1.1.0, protocols@^1.4.0: version "1.4.7" resolved "https://registry.yarnpkg.com/protocols/-/protocols-1.4.7.tgz#95f788a4f0e979b291ffefcf5636ad113d037d32" @@ -13097,7 +13213,7 @@ react-is@^16.6.0, react-is@^16.8.4: resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.11.0.tgz#b85dfecd48ad1ce469ff558a882ca8e8313928fa" integrity sha512-gbBVYR2p8mnriqAwWx9LbuUrShnAuSCNnuPGyc7GJrMVQtPDAh8iLpv7FRuMPFb56KkaVZIYSz1PrjI9q0QPCw== -react-is@^16.7.0, react-is@^16.8.1, react-is@^16.8.6: +react-is@^16.7.0, react-is@^16.8.0, react-is@^16.8.1: version "16.12.0" resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.12.0.tgz#2cc0fe0fba742d97fd527c42a13bec4eeb06241c" integrity sha512-rPCkf/mWBtKc97aLL9/txD8DZdemK0vkA3JMLShjlJB3Pj3s+lpf1KaBzMfQrAmhMQB0n1cU/SUGgKKBCe837Q== @@ -13488,6 +13604,11 @@ regexpp@^2.0.1: resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-2.0.1.tgz#8d19d31cf632482b589049f8281f93dbcba4d07f" integrity sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw== +regexpp@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.0.0.tgz#dd63982ee3300e67b41c1956f850aa680d9d330e" + integrity sha512-Z+hNr7RAVWxznLPuA7DIh8UNX1j9CDrUQxskw9IrBE1Dxue2lyXT+shqEIeLUjrokxIP8CMy1WkjgG3rTsd5/g== + regexpu-core@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.6.0.tgz#2037c18b327cfce8a6fea2a4ec441f2432afb8b6" @@ -14797,13 +14918,6 @@ supports-color@^2.0.0: resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= -supports-color@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.5.0.tgz#be7a0de484dec5c5cddf8b3d59125044912f635b" - integrity sha1-vnoN5ITexcXN34s9WRJQRJEvY1s= - dependencies: - has-flag "^2.0.0" - supports-color@^5.3.0, supports-color@^5.5.0: version "5.5.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" @@ -15163,10 +15277,10 @@ ts-invariant@^0.4.0, ts-invariant@^0.4.2, ts-invariant@^0.4.4: dependencies: tslib "^1.9.3" -ts-jest@24.1.0: - version "24.1.0" - resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-24.1.0.tgz#2eaa813271a2987b7e6c3fefbda196301c131734" - integrity sha512-HEGfrIEAZKfu1pkaxB9au17b1d9b56YZSqz5eCVE8mX68+5reOvlM93xGOzzCREIov9mdH7JBG+s0UyNAqr0tQ== +ts-jest@24.2.0: + version "24.2.0" + resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-24.2.0.tgz#7abca28c2b4b0a1fdd715cd667d65d047ea4e768" + integrity sha512-Yc+HLyldlIC9iIK8xEN7tV960Or56N49MDP7hubCZUeI7EbIOTsas6rXCMB4kQjLACJ7eDOF4xWEO5qumpKsag== dependencies: bs-logger "0.x" buffer-from "1.x" @@ -15184,10 +15298,10 @@ ts-log@2.1.4: resolved "https://registry.yarnpkg.com/ts-log/-/ts-log-2.1.4.tgz#063c5ad1cbab5d49d258d18015963489fb6fb59a" integrity sha512-P1EJSoyV+N3bR/IWFeAqXzKPZwHpnLY6j7j58mAvewHRipo+BQM2Y1f9Y9BjEQznKwgqqZm7H8iuixmssU7tYQ== -ts-node@8.5.2: - version "8.5.2" - resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-8.5.2.tgz#434f6c893bafe501a30b32ac94ee36809ba2adce" - integrity sha512-W1DK/a6BGoV/D4x/SXXm6TSQx6q3blECUzd5TN+j56YEMX3yPVMpHsICLedUw3DvGF3aTQ8hfdR9AKMaHjIi+A== +ts-node@8.5.4: + version "8.5.4" + resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-8.5.4.tgz#a152add11fa19c221d0b48962c210cf467262ab2" + integrity sha512-izbVCRV68EasEPQ8MSIGBNK9dc/4sYJJKYA+IarMQct1RtEot6Xp0bXuClsbUSnKpg50ho+aOAx8en5c+y4OFw== dependencies: arg "^4.1.0" diff "^4.0.1" @@ -15256,6 +15370,11 @@ type-fest@^0.6.0: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.6.0.tgz#8d2a2370d3df886eb5c90ada1c5bf6188acf838b" integrity sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg== +type-fest@^0.8.1: + version "0.8.1" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" + integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== + type-is@^1.6.16, type-is@~1.6.17, type-is@~1.6.18: version "1.6.18" resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" @@ -15299,10 +15418,10 @@ typeorm@0.2.20, typeorm@^0.2.18: yargonaut "^1.1.2" yargs "^13.2.1" -typescript@3.7.2: - version "3.7.2" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.7.2.tgz#27e489b95fa5909445e9fef5ee48d81697ad18fb" - integrity sha512-ml7V7JfiN2Xwvcer+XAf2csGO1bPBdRbFCkYBczNZggrBZ9c7G3riSUeJmqEU5uOtXNPMhE3n+R4FA/3YOAWOQ== +typescript@3.7.3: + version "3.7.3" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.7.3.tgz#b36840668a16458a7025b9eabfad11b66ab85c69" + integrity sha512-Mcr/Qk7hXqFBXMN7p7Lusj1ktCBydylfQM/FZCk5glCNQJrCUKPkMHdo9R0MTFWsC/4kPFvDS0fDPvukfCkFsw== ua-parser-js@^0.7.18: version "0.7.20" @@ -16210,14 +16329,6 @@ yargs-parser@10.x, yargs-parser@^10.1.0: dependencies: camelcase "^4.1.0" -yargs-parser@^11.1.1: - version "11.1.1" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-11.1.1.tgz#879a0865973bca9f6bab5cbdf3b1c67ec7d3bcf4" - integrity sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ== - dependencies: - camelcase "^5.0.0" - decamelize "^1.2.0" - yargs-parser@^13.1.1: version "13.1.1" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.1.tgz#d26058532aa06d365fe091f6a1fc06b2f7e5eca0" @@ -16259,24 +16370,6 @@ yargs@12.0.2: y18n "^3.2.1 || ^4.0.0" yargs-parser "^10.1.0" -yargs@^12.0.5: - version "12.0.5" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-12.0.5.tgz#05f5997b609647b64f66b81e3b4b10a368e7ad13" - integrity sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw== - dependencies: - cliui "^4.0.0" - decamelize "^1.2.0" - find-up "^3.0.0" - get-caller-file "^1.0.1" - os-locale "^3.0.0" - require-directory "^2.1.1" - require-main-filename "^1.0.1" - set-blocking "^2.0.0" - string-width "^2.0.0" - which-module "^2.0.0" - y18n "^3.2.1 || ^4.0.0" - yargs-parser "^11.1.1" - yargs@^13.2.1, yargs@^13.3.0: version "13.3.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.0.tgz#4c657a55e07e5f2cf947f8a366567c04a0dedc83" From bccefc7b899c5e445fcc4a6d76113ec157649ddb Mon Sep 17 00:00:00 2001 From: pradel Date: Fri, 13 Dec 2019 14:31:27 +0100 Subject: [PATCH 043/146] Documentation "Confirm the association" --- website/docs/mfa/otp.md | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/website/docs/mfa/otp.md b/website/docs/mfa/otp.md index df2cd1f12..cdba1de73 100644 --- a/website/docs/mfa/otp.md +++ b/website/docs/mfa/otp.md @@ -69,6 +69,8 @@ const data = await accountsClient.mfaAssociate('otp'); // Data have the following structure { + // Token that will be used later to activate the new authenticator + mfaToken: string; // Id of the object stored in the database id: string; // Secret to show to the user so they can save it in a safe place @@ -112,7 +114,20 @@ const data = await accountsClient.mfaAssociate('otp'); ## Confirm the association -TODO +Finally, in order to activate the new authenticator, we need to validate the OTP code. +You will need to login using the `mfa` service by using the code you collected from the user coming from his authenticator app. + +```javascript +// oneTimeCode is the OTP code entered by the user +const oneTimeCode = '...'; + +await accountsRest.loginWithService('mfa', { + mfaToken: secret.mfaToken, + code: oneTimeCode, +}); +``` + +If the call was successful, the authenticator is now activated and will be required next time the user try to login. ### Examples From 4319e30c7e581df0863d8d69b5ee6d67c0a7bd40 Mon Sep 17 00:00:00 2001 From: pradel Date: Fri, 13 Dec 2019 15:19:13 +0100 Subject: [PATCH 044/146] Add activatedAt to authenticator type --- packages/types/src/types/authenticator/authenticator.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/types/src/types/authenticator/authenticator.ts b/packages/types/src/types/authenticator/authenticator.ts index 86fbb2975..9649e6344 100644 --- a/packages/types/src/types/authenticator/authenticator.ts +++ b/packages/types/src/types/authenticator/authenticator.ts @@ -15,4 +15,8 @@ export interface Authenticator { * Is authenticator active */ active: boolean; + /** + * If active is true, contain the date when the authenticator was activated + */ + activatedAt?: string; } From 1b5b7cb8c02a379077211d45f75df9a5e80289df Mon Sep 17 00:00:00 2001 From: pradel Date: Fri, 13 Dec 2019 15:53:26 +0100 Subject: [PATCH 045/146] Finish authenticator registration flow --- .../database-manager/src/database-manager.ts | 5 +++++ packages/database-mongo/src/mongo.ts | 21 ++++++++++++++++++- packages/database-mongo/src/types/index.ts | 6 +++++- packages/server/src/accounts-server.ts | 15 ++++++++----- .../types/src/types/database-interface.ts | 2 ++ .../src/types/mfa-challenge/mfa-challenge.ts | 8 +++++++ 6 files changed, 50 insertions(+), 7 deletions(-) diff --git a/packages/database-manager/src/database-manager.ts b/packages/database-manager/src/database-manager.ts index 2fef9d8b0..7ab5cd924 100644 --- a/packages/database-manager/src/database-manager.ts +++ b/packages/database-manager/src/database-manager.ts @@ -184,4 +184,9 @@ export class DatabaseManager implements DatabaseInterface { public get findMfaChallengeByToken(): DatabaseInterface['findMfaChallengeByToken'] { return this.userStorage.findMfaChallengeByToken.bind(this.userStorage); } + + // Return the deactivateMfaChallenge function from the userStorage + public get deactivateMfaChallenge(): DatabaseInterface['deactivateMfaChallenge'] { + return this.userStorage.deactivateMfaChallenge.bind(this.userStorage); + } } diff --git a/packages/database-mongo/src/mongo.ts b/packages/database-mongo/src/mongo.ts index 0792f4b65..55ead94e8 100644 --- a/packages/database-mongo/src/mongo.ts +++ b/packages/database-mongo/src/mongo.ts @@ -33,6 +33,7 @@ const defaultOptions = { convertUserIdToMongoObjectId: true, convertSessionIdToMongoObjectId: true, convertAuthenticatorIdToMongoObjectId: true, + convertMfaChallengeIdToMongoObjectId: true, caseSensitiveUserName: true, dateProvider: (date?: Date) => (date ? date.getTime() : Date.now()), }; @@ -509,10 +510,28 @@ export class Mongo implements DatabaseInterface { } public async findMfaChallengeByToken(token: string): Promise { - const mfaChallenge = await this.mfaChallengeCollection.findOne({ token }); + const mfaChallenge = await this.mfaChallengeCollection.findOne({ + token, + deactivated: { $exists: false }, + }); if (mfaChallenge) { mfaChallenge.id = mfaChallenge._id.toString(); } return mfaChallenge; } + + public async deactivateMfaChallenge(mfaChallengeId: string): Promise { + const id = this.options.convertMfaChallengeIdToMongoObjectId + ? toMongoID(mfaChallengeId) + : mfaChallengeId; + await this.mfaChallengeCollection.updateOne( + { _id: id }, + { + $set: { + deactivated: true, + deactivatedAt: this.options.dateProvider(), + }, + } + ); + } } diff --git a/packages/database-mongo/src/types/index.ts b/packages/database-mongo/src/types/index.ts index dca7b7e42..fbaa504c0 100644 --- a/packages/database-mongo/src/types/index.ts +++ b/packages/database-mongo/src/types/index.ts @@ -35,7 +35,11 @@ export interface AccountsMongoOptions { */ convertAuthenticatorIdToMongoObjectId: boolean; /** - * Perform case intensitive query for user name, default 'true'. + * Should the mfa challenge collection use _id as string or ObjectId, default 'true'. + */ + convertMfaChallengeIdToMongoObjectId: boolean; + /** + * Perform case insensitive query for user name, default 'true'. */ caseSensitiveUserName?: boolean; /** diff --git a/packages/server/src/accounts-server.ts b/packages/server/src/accounts-server.ts index 3eeacce70..cbc7f0726 100644 --- a/packages/server/src/accounts-server.ts +++ b/packages/server/src/accounts-server.ts @@ -187,12 +187,17 @@ Please change it with a strong random token.`); throw new Error('Authenticator is not active'); } - // TODO invalidate the current challenge - // TODO return a new session + // We invalidate the current mfa challenge so it can't be reused later + await this.db.deactivateMfaChallenge(mfaChallenge.id); - console.log(mfaChallenge, authenticator); - - throw new Error('Not implemented'); + const user = await this.db.findUserById(mfaChallenge.userId); + if (!user) { + throw new Error('user not found'); + } + hooksInfo.user = user; + const loginResult = await this.loginWithUser(user, infos); + this.hooks.emit(ServerHooks.LoginSuccess, hooksInfo); + return loginResult; } if (!this.services[serviceName]) { diff --git a/packages/types/src/types/database-interface.ts b/packages/types/src/types/database-interface.ts index b37e917ca..78f934afa 100644 --- a/packages/types/src/types/database-interface.ts +++ b/packages/types/src/types/database-interface.ts @@ -95,6 +95,8 @@ export interface DatabaseInterface extends DatabaseInterfaceSessions { createMfaChallenge(newMfaChallenge: CreateMfaChallenge): Promise; findMfaChallengeByToken(token: string): Promise; + + deactivateMfaChallenge(mfaChallengeId: string): Promise; } export interface DatabaseInterfaceSessions { diff --git a/packages/types/src/types/mfa-challenge/mfa-challenge.ts b/packages/types/src/types/mfa-challenge/mfa-challenge.ts index 10b07b0fd..a5a3bc210 100644 --- a/packages/types/src/types/mfa-challenge/mfa-challenge.ts +++ b/packages/types/src/types/mfa-challenge/mfa-challenge.ts @@ -19,4 +19,12 @@ export interface MfaChallenge { * If scope is set to associate, the authenticate function will verify the authenticator next time the user call it */ scope?: 'associate'; + /** + * If deactivated is set to true, it means that challenge was already used and can't be used anymore + */ + deactivated: boolean; + /** + * If deactivated is true, contain the date when the challenge was used + */ + deactivatedAt?: string; } From 49d0ce5217e02f18948669a511dd7fce38b4b77d Mon Sep 17 00:00:00 2001 From: pradel Date: Fri, 13 Dec 2019 16:15:31 +0100 Subject: [PATCH 046/146] cleanup types --- .../types/authenticator/database-interface.ts | 12 +++++++ .../types/src/types/database-interface.ts | 33 ++++--------------- .../types/mfa-challenge/database-interface.ts | 10 ++++++ 3 files changed, 28 insertions(+), 27 deletions(-) create mode 100644 packages/types/src/types/authenticator/database-interface.ts create mode 100644 packages/types/src/types/mfa-challenge/database-interface.ts diff --git a/packages/types/src/types/authenticator/database-interface.ts b/packages/types/src/types/authenticator/database-interface.ts new file mode 100644 index 000000000..0d547fa0f --- /dev/null +++ b/packages/types/src/types/authenticator/database-interface.ts @@ -0,0 +1,12 @@ +import { CreateAuthenticator } from '../authenticator/create-authenticator'; +import { Authenticator } from '../authenticator/authenticator'; + +export interface DatabaseInterfaceAuthenticators { + createAuthenticator(authenticator: CreateAuthenticator): Promise; + + findAuthenticatorById(authenticatorId: string): Promise; + + findUserAuthenticators(userId: string): Promise; + + activateAuthenticator(authenticatorId: string): Promise; +} diff --git a/packages/types/src/types/database-interface.ts b/packages/types/src/types/database-interface.ts index 78f934afa..f348ce8f5 100644 --- a/packages/types/src/types/database-interface.ts +++ b/packages/types/src/types/database-interface.ts @@ -2,12 +2,13 @@ import { User } from './user'; import { Session } from './session'; import { CreateUser } from './create-user'; import { ConnectionInformations } from './connection-informations'; -import { CreateAuthenticator } from './authenticator/create-authenticator'; -import { Authenticator } from './authenticator/authenticator'; -import { CreateMfaChallenge } from './mfa-challenge/create-mfa-challenge'; -import { MfaChallenge } from './mfa-challenge/mfa-challenge'; +import { DatabaseInterfaceAuthenticators } from './authenticator/database-interface'; +import { DatabaseInterfaceMfaChallenges } from './mfa-challenge/database-interface'; -export interface DatabaseInterface extends DatabaseInterfaceSessions { +export interface DatabaseInterface + extends DatabaseInterfaceSessions, + DatabaseInterfaceAuthenticators, + DatabaseInterfaceMfaChallenges { /** * Find user by identity fields */ @@ -75,28 +76,6 @@ export interface DatabaseInterface extends DatabaseInterfaceSessions { verifyEmail(userId: string, email: string): Promise; addEmailVerificationToken(userId: string, email: string, token: string): Promise; - - /** - * MFA authenticator related operations - */ - - createAuthenticator(authenticator: CreateAuthenticator): Promise; - - findAuthenticatorById(authenticatorId: string): Promise; - - findUserAuthenticators(userId: string): Promise; - - activateAuthenticator(authenticatorId: string): Promise; - - /** - * MFA challenges related operations - */ - - createMfaChallenge(newMfaChallenge: CreateMfaChallenge): Promise; - - findMfaChallengeByToken(token: string): Promise; - - deactivateMfaChallenge(mfaChallengeId: string): Promise; } export interface DatabaseInterfaceSessions { diff --git a/packages/types/src/types/mfa-challenge/database-interface.ts b/packages/types/src/types/mfa-challenge/database-interface.ts new file mode 100644 index 000000000..826a2c5ee --- /dev/null +++ b/packages/types/src/types/mfa-challenge/database-interface.ts @@ -0,0 +1,10 @@ +import { CreateMfaChallenge } from './create-mfa-challenge'; +import { MfaChallenge } from './mfa-challenge'; + +export interface DatabaseInterfaceMfaChallenges { + createMfaChallenge(newMfaChallenge: CreateMfaChallenge): Promise; + + findMfaChallengeByToken(token: string): Promise; + + deactivateMfaChallenge(mfaChallengeId: string): Promise; +} From af61d8c9fce73746d89f07422f08046e303ab347 Mon Sep 17 00:00:00 2001 From: pradel Date: Fri, 13 Dec 2019 16:18:10 +0100 Subject: [PATCH 047/146] Do the same for sessions --- packages/types/src/index.ts | 2 +- .../types/src/types/database-interface.ts | 26 +------------------ .../src/types/session/database-interface.ts | 25 ++++++++++++++++++ .../types/src/types/{ => session}/session.ts | 0 4 files changed, 27 insertions(+), 26 deletions(-) create mode 100644 packages/types/src/types/session/database-interface.ts rename packages/types/src/types/{ => session}/session.ts (100%) diff --git a/packages/types/src/index.ts b/packages/types/src/index.ts index 842490fc9..3cd072f33 100644 --- a/packages/types/src/index.ts +++ b/packages/types/src/index.ts @@ -2,7 +2,6 @@ export * from './types/database-interface'; export * from './types/connection-informations'; export * from './types/tokens'; export * from './types/token-record'; -export * from './types/session'; export * from './types/user'; export * from './types/create-user'; export * from './types/email-record'; @@ -12,6 +11,7 @@ export * from './types/login-user-identity'; export * from './types/hook-listener'; export * from './types/authentication-service'; export * from './types/hash-algorithm'; +export * from './types/session/session'; export * from './types/authenticator/authenticator-service'; export * from './types/authenticator/authenticator'; export * from './types/authenticator/create-authenticator'; diff --git a/packages/types/src/types/database-interface.ts b/packages/types/src/types/database-interface.ts index f348ce8f5..13a037d37 100644 --- a/packages/types/src/types/database-interface.ts +++ b/packages/types/src/types/database-interface.ts @@ -1,7 +1,6 @@ import { User } from './user'; -import { Session } from './session'; import { CreateUser } from './create-user'; -import { ConnectionInformations } from './connection-informations'; +import { DatabaseInterfaceSessions } from './session/database-interface'; import { DatabaseInterfaceAuthenticators } from './authenticator/database-interface'; import { DatabaseInterfaceMfaChallenges } from './mfa-challenge/database-interface'; @@ -77,26 +76,3 @@ export interface DatabaseInterface addEmailVerificationToken(userId: string, email: string, token: string): Promise; } - -export interface DatabaseInterfaceSessions { - findSessionById(sessionId: string): Promise; - - findSessionByToken(token: string): Promise; - - createSession( - userId: string, - token: string, - connection: ConnectionInformations, - extraData?: object - ): Promise; - - updateSession( - sessionId: string, - connection: ConnectionInformations, - newToken?: string - ): Promise; - - invalidateSession(sessionId: string): Promise; - - invalidateAllSessions(userId: string): Promise; -} diff --git a/packages/types/src/types/session/database-interface.ts b/packages/types/src/types/session/database-interface.ts new file mode 100644 index 000000000..8bd09716a --- /dev/null +++ b/packages/types/src/types/session/database-interface.ts @@ -0,0 +1,25 @@ +import { ConnectionInformations } from '../connection-informations'; +import { Session } from './session'; + +export interface DatabaseInterfaceSessions { + findSessionById(sessionId: string): Promise; + + findSessionByToken(token: string): Promise; + + createSession( + userId: string, + token: string, + connection: ConnectionInformations, + extraData?: object + ): Promise; + + updateSession( + sessionId: string, + connection: ConnectionInformations, + newToken?: string + ): Promise; + + invalidateSession(sessionId: string): Promise; + + invalidateAllSessions(userId: string): Promise; +} diff --git a/packages/types/src/types/session.ts b/packages/types/src/types/session/session.ts similarity index 100% rename from packages/types/src/types/session.ts rename to packages/types/src/types/session/session.ts From 99ccdf4d76ab94f44eed530ed4ae60990c15b78b Mon Sep 17 00:00:00 2001 From: pradel Date: Fri, 13 Dec 2019 18:51:55 +0100 Subject: [PATCH 048/146] upgrade react-scripts --- .../react-graphql-typescript/package.json | 2 +- examples/react-rest-typescript/package.json | 2 +- yarn.lock | 1982 ++++++++++++----- 3 files changed, 1387 insertions(+), 599 deletions(-) diff --git a/examples/react-graphql-typescript/package.json b/examples/react-graphql-typescript/package.json index bbb0e94d0..450a8f687 100644 --- a/examples/react-graphql-typescript/package.json +++ b/examples/react-graphql-typescript/package.json @@ -50,7 +50,7 @@ "@types/react-dom": "16.9.4", "@types/react-router": "5.1.3", "@types/react-router-dom": "5.1.3", - "react-scripts": "3.2.0", + "react-scripts": "3.3.0", "typescript": "3.7.3" } } diff --git a/examples/react-rest-typescript/package.json b/examples/react-rest-typescript/package.json index 63f1e3301..a77199987 100644 --- a/examples/react-rest-typescript/package.json +++ b/examples/react-rest-typescript/package.json @@ -42,7 +42,7 @@ "@types/react-dom": "16.9.4", "@types/react-router": "5.1.3", "@types/react-router-dom": "5.1.3", - "react-scripts": "3.2.0", + "react-scripts": "3.3.0", "typescript": "3.7.3" } } diff --git a/yarn.lock b/yarn.lock index 07a4cb4c2..132bb36ce 100644 --- a/yarn.lock +++ b/yarn.lock @@ -58,19 +58,19 @@ dependencies: "@babel/highlight" "^7.0.0" -"@babel/core@7.6.0": - version "7.6.0" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.6.0.tgz#9b00f73554edd67bebc86df8303ef678be3d7b48" - integrity sha512-FuRhDRtsd6IptKpHXAa+4WPZYY2ZzgowkbLBecEDDSje1X/apG7jQM33or3NdOmjXBKWGOg4JmSiRfUfuTtHXw== +"@babel/core@7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.7.4.tgz#37e864532200cb6b50ee9a4045f5f817840166ab" + integrity sha512-+bYbx56j4nYBmpsWtnPUsKW3NdnYxbqyfrP2w9wILBuHzdfIKz9prieZK0DFPyIzkjYVUe4QkusGL07r5pXznQ== dependencies: "@babel/code-frame" "^7.5.5" - "@babel/generator" "^7.6.0" - "@babel/helpers" "^7.6.0" - "@babel/parser" "^7.6.0" - "@babel/template" "^7.6.0" - "@babel/traverse" "^7.6.0" - "@babel/types" "^7.6.0" - convert-source-map "^1.1.0" + "@babel/generator" "^7.7.4" + "@babel/helpers" "^7.7.4" + "@babel/parser" "^7.7.4" + "@babel/template" "^7.7.4" + "@babel/traverse" "^7.7.4" + "@babel/types" "^7.7.4" + convert-source-map "^1.7.0" debug "^4.1.0" json5 "^2.1.0" lodash "^4.17.13" @@ -98,7 +98,7 @@ semver "^5.4.1" source-map "^0.5.0" -"@babel/generator@^7.0.0", "@babel/generator@^7.4.0", "@babel/generator@^7.6.0", "@babel/generator@^7.7.2": +"@babel/generator@^7.0.0", "@babel/generator@^7.4.0", "@babel/generator@^7.7.2": version "7.7.2" resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.7.2.tgz#2f4852d04131a5e17ea4f6645488b5da66ebf3af" integrity sha512-WthSArvAjYLz4TcbKOi88me+KmDJdKSlfwwN8CnUYn9jBkzhq0ZEPuBfkAWIvjJ3AdEV1Cf/+eSQTnp3IDJKlQ== @@ -108,6 +108,16 @@ lodash "^4.17.13" source-map "^0.5.0" +"@babel/generator@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.7.4.tgz#db651e2840ca9aa66f327dcec1dc5f5fa9611369" + integrity sha512-m5qo2WgdOJeyYngKImbkyQrnUN1mPceaG5BV+G0E3gWsa4l/jCSryWJdM2x8OuGAOyh+3d5pVYfZWCiNFtynxg== + dependencies: + "@babel/types" "^7.7.4" + jsesc "^2.5.1" + lodash "^4.17.13" + source-map "^0.5.0" + "@babel/helper-annotate-as-pure@^7.0.0", "@babel/helper-annotate-as-pure@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.7.0.tgz#efc54032d43891fe267679e63f6860aa7dbf4a5e" @@ -115,6 +125,13 @@ dependencies: "@babel/types" "^7.7.0" +"@babel/helper-annotate-as-pure@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.7.4.tgz#bb3faf1e74b74bd547e867e48f551fa6b098b6ce" + integrity sha512-2BQmQgECKzYKFPpiycoF9tlb5HA4lrVyAmLLVK177EcQAqjVLciUb2/R+n1boQ9y5ENV3uz2ZqiNw7QMBBw1Og== + dependencies: + "@babel/types" "^7.7.4" + "@babel/helper-builder-binary-assignment-operator-visitor@^7.1.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.7.0.tgz#32dd9551d6ed3a5fc2edc50d6912852aa18274d9" @@ -123,6 +140,14 @@ "@babel/helper-explode-assignable-expression" "^7.7.0" "@babel/types" "^7.7.0" +"@babel/helper-builder-binary-assignment-operator-visitor@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.7.4.tgz#5f73f2b28580e224b5b9bd03146a4015d6217f5f" + integrity sha512-Biq/d/WtvfftWZ9Uf39hbPBYDUo986m5Bb4zhkeYDGUllF43D+nUe5M6Vuo6/8JDK/0YX/uBdeoQpyaNhNugZQ== + dependencies: + "@babel/helper-explode-assignable-expression" "^7.7.4" + "@babel/types" "^7.7.4" + "@babel/helper-builder-react-jsx@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.7.0.tgz#c6b8254d305bacd62beb648e4dea7d3ed79f352d" @@ -131,6 +156,14 @@ "@babel/types" "^7.7.0" esutils "^2.0.0" +"@babel/helper-builder-react-jsx@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.7.4.tgz#da188d247508b65375b2c30cf59de187be6b0c66" + integrity sha512-kvbfHJNN9dg4rkEM4xn1s8d1/h6TYNvajy9L1wx4qLn9HFg0IkTsQi4rfBe92nxrPUFcMsHoMV+8rU7MJb3fCA== + dependencies: + "@babel/types" "^7.7.4" + esutils "^2.0.0" + "@babel/helper-call-delegate@^7.4.4": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/helper-call-delegate/-/helper-call-delegate-7.7.0.tgz#df8942452c2c1a217335ca7e393b9afc67f668dc" @@ -140,7 +173,16 @@ "@babel/traverse" "^7.7.0" "@babel/types" "^7.7.0" -"@babel/helper-create-class-features-plugin@^7.5.5", "@babel/helper-create-class-features-plugin@^7.6.0", "@babel/helper-create-class-features-plugin@^7.7.0": +"@babel/helper-call-delegate@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-call-delegate/-/helper-call-delegate-7.7.4.tgz#621b83e596722b50c0066f9dc37d3232e461b801" + integrity sha512-8JH9/B7J7tCYJ2PpWVpw9JhPuEVHztagNVuQAFBVFYluRMlpG7F1CgKEgGeL6KFqcsIa92ZYVj6DSc0XwmN1ZA== + dependencies: + "@babel/helper-hoist-variables" "^7.7.4" + "@babel/traverse" "^7.7.4" + "@babel/types" "^7.7.4" + +"@babel/helper-create-class-features-plugin@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.7.0.tgz#bcdc223abbfdd386f94196ae2544987f8df775e8" integrity sha512-MZiB5qvTWoyiFOgootmRSDV1udjIqJW/8lmxgzKq6oDqxdmHUjeP2ZUOmgHdYjmUVNABqRrHjYAYRvj8Eox/UA== @@ -152,6 +194,18 @@ "@babel/helper-replace-supers" "^7.7.0" "@babel/helper-split-export-declaration" "^7.7.0" +"@babel/helper-create-class-features-plugin@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.7.4.tgz#fce60939fd50618610942320a8d951b3b639da2d" + integrity sha512-l+OnKACG4uiDHQ/aJT8dwpR+LhCJALxL0mJ6nzjB25e5IPwqV1VOsY7ah6UB1DG+VOXAIMtuC54rFJGiHkxjgA== + dependencies: + "@babel/helper-function-name" "^7.7.4" + "@babel/helper-member-expression-to-functions" "^7.7.4" + "@babel/helper-optimise-call-expression" "^7.7.4" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-replace-supers" "^7.7.4" + "@babel/helper-split-export-declaration" "^7.7.4" + "@babel/helper-create-regexp-features-plugin@^7.7.0": version "7.7.2" resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.7.2.tgz#6f20443778c8fce2af2ff4206284afc0ced65db6" @@ -160,6 +214,14 @@ "@babel/helper-regex" "^7.4.4" regexpu-core "^4.6.0" +"@babel/helper-create-regexp-features-plugin@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.7.4.tgz#6d5762359fd34f4da1500e4cff9955b5299aaf59" + integrity sha512-Mt+jBKaxL0zfOIWrfQpnfYCN7/rS6GKx6CCCfuoqVVd+17R8zNDlzVYmIi9qyb2wOk002NsmSTDymkIygDUH7A== + dependencies: + "@babel/helper-regex" "^7.4.4" + regexpu-core "^4.6.0" + "@babel/helper-define-map@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.7.0.tgz#60b0e9fd60def9de5054c38afde8c8ee409c7529" @@ -169,6 +231,15 @@ "@babel/types" "^7.7.0" lodash "^4.17.13" +"@babel/helper-define-map@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.7.4.tgz#2841bf92eb8bd9c906851546fe6b9d45e162f176" + integrity sha512-v5LorqOa0nVQUvAUTUF3KPastvUt/HzByXNamKQ6RdJRTV7j8rLL+WB5C/MzzWAwOomxDhYFb1wLLxHqox86lg== + dependencies: + "@babel/helper-function-name" "^7.7.4" + "@babel/types" "^7.7.4" + lodash "^4.17.13" + "@babel/helper-explode-assignable-expression@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.7.0.tgz#db2a6705555ae1f9f33b4b8212a546bc7f9dc3ef" @@ -177,6 +248,14 @@ "@babel/traverse" "^7.7.0" "@babel/types" "^7.7.0" +"@babel/helper-explode-assignable-expression@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.7.4.tgz#fa700878e008d85dc51ba43e9fb835cddfe05c84" + integrity sha512-2/SicuFrNSXsZNBxe5UGdLr+HZg+raWBLE9vC98bdYOKX/U6PY0mdGlYUJdtTDPSU0Lw0PNbKKDpwYHJLn2jLg== + dependencies: + "@babel/traverse" "^7.7.4" + "@babel/types" "^7.7.4" + "@babel/helper-function-name@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.7.0.tgz#44a5ad151cfff8ed2599c91682dda2ec2c8430a3" @@ -186,6 +265,15 @@ "@babel/template" "^7.7.0" "@babel/types" "^7.7.0" +"@babel/helper-function-name@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.7.4.tgz#ab6e041e7135d436d8f0a3eca15de5b67a341a2e" + integrity sha512-AnkGIdiBhEuiwdoMnKm7jfPfqItZhgRaZfMg1XX3bS25INOnLPjPG1Ppnajh8eqgt5kPJnfqrRHqFqmjKDZLzQ== + dependencies: + "@babel/helper-get-function-arity" "^7.7.4" + "@babel/template" "^7.7.4" + "@babel/types" "^7.7.4" + "@babel/helper-get-function-arity@^7.0.0", "@babel/helper-get-function-arity@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.7.0.tgz#c604886bc97287a1d1398092bc666bc3d7d7aa2d" @@ -193,6 +281,13 @@ dependencies: "@babel/types" "^7.7.0" +"@babel/helper-get-function-arity@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.7.4.tgz#cb46348d2f8808e632f0ab048172130e636005f0" + integrity sha512-QTGKEdCkjgzgfJ3bAyRwF4yyT3pg+vDgan8DSivq1eS0gwi+KGKE5x8kRcbeFTb/673mkO5SN1IZfmCfA5o+EA== + dependencies: + "@babel/types" "^7.7.4" + "@babel/helper-hoist-variables@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.7.0.tgz#b4552e4cfe5577d7de7b183e193e84e4ec538c81" @@ -200,6 +295,13 @@ dependencies: "@babel/types" "^7.7.0" +"@babel/helper-hoist-variables@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.7.4.tgz#612384e3d823fdfaaf9fce31550fe5d4db0f3d12" + integrity sha512-wQC4xyvc1Jo/FnLirL6CEgPgPCa8M74tOdjWpRhQYapz5JC7u3NYU1zCVoVAGCE3EaIP9T1A3iW0WLJ+reZlpQ== + dependencies: + "@babel/types" "^7.7.4" + "@babel/helper-member-expression-to-functions@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.7.0.tgz#472b93003a57071f95a541ea6c2b098398bcad8a" @@ -207,13 +309,27 @@ dependencies: "@babel/types" "^7.7.0" -"@babel/helper-module-imports@^7.0.0", "@babel/helper-module-imports@^7.7.0": +"@babel/helper-member-expression-to-functions@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.7.4.tgz#356438e2569df7321a8326644d4b790d2122cb74" + integrity sha512-9KcA1X2E3OjXl/ykfMMInBK+uVdfIVakVe7W7Lg3wfXUNyS3Q1HWLFRwZIjhqiCGbslummPDnmb7vIekS0C1vw== + dependencies: + "@babel/types" "^7.7.4" + +"@babel/helper-module-imports@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.7.0.tgz#99c095889466e5f7b6d66d98dffc58baaf42654d" integrity sha512-Dv3hLKIC1jyfTkClvyEkYP2OlkzNvWs5+Q8WgPbxM5LMeorons7iPP91JM+DU7tRbhqA1ZeooPaMFvQrn23RHw== dependencies: "@babel/types" "^7.7.0" +"@babel/helper-module-imports@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.7.4.tgz#e5a92529f8888bf319a6376abfbd1cebc491ad91" + integrity sha512-dGcrX6K9l8258WFjyDLJwuVKxR4XZfU0/vTUgOQYWEnRD8mgr+p4d6fCUMq/ys0h4CCt/S5JhbvtyErjWouAUQ== + dependencies: + "@babel/types" "^7.7.4" + "@babel/helper-module-transforms@^7.1.0", "@babel/helper-module-transforms@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.7.0.tgz#154a69f0c5b8fd4d39e49750ff7ac4faa3f36786" @@ -226,6 +342,18 @@ "@babel/types" "^7.7.0" lodash "^4.17.13" +"@babel/helper-module-transforms@^7.7.4", "@babel/helper-module-transforms@^7.7.5": + version "7.7.5" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.7.5.tgz#d044da7ffd91ec967db25cd6748f704b6b244835" + integrity sha512-A7pSxyJf1gN5qXVcidwLWydjftUN878VkalhXX5iQDuGyiGK3sOrrKKHF4/A4fwHtnsotv/NipwAeLzY4KQPvw== + dependencies: + "@babel/helper-module-imports" "^7.7.4" + "@babel/helper-simple-access" "^7.7.4" + "@babel/helper-split-export-declaration" "^7.7.4" + "@babel/template" "^7.7.4" + "@babel/types" "^7.7.4" + lodash "^4.17.13" + "@babel/helper-optimise-call-expression@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.7.0.tgz#4f66a216116a66164135dc618c5d8b7a959f9365" @@ -233,6 +361,13 @@ dependencies: "@babel/types" "^7.7.0" +"@babel/helper-optimise-call-expression@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.7.4.tgz#034af31370d2995242aa4df402c3b7794b2dcdf2" + integrity sha512-VB7gWZ2fDkSuqW6b1AKXkJWO5NyNI3bFL/kK79/30moK57blr6NbH8xcl2XcKCwOmJosftWunZqfO84IGq3ZZg== + dependencies: + "@babel/types" "^7.7.4" + "@babel/helper-plugin-utils@^7.0.0": version "7.0.0" resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz#bbb3fbee98661c569034237cc03967ba99b4f250" @@ -256,6 +391,17 @@ "@babel/traverse" "^7.7.0" "@babel/types" "^7.7.0" +"@babel/helper-remap-async-to-generator@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.7.4.tgz#c68c2407350d9af0e061ed6726afb4fff16d0234" + integrity sha512-Sk4xmtVdM9sA/jCI80f+KS+Md+ZHIpjuqmYPk1M7F/upHou5e4ReYmExAiu6PVe65BhJPZA2CY9x9k4BqE5klw== + dependencies: + "@babel/helper-annotate-as-pure" "^7.7.4" + "@babel/helper-wrap-function" "^7.7.4" + "@babel/template" "^7.7.4" + "@babel/traverse" "^7.7.4" + "@babel/types" "^7.7.4" + "@babel/helper-replace-supers@^7.5.5", "@babel/helper-replace-supers@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.7.0.tgz#d5365c8667fe7cbd13b8ddddceb9bd7f2b387512" @@ -266,6 +412,16 @@ "@babel/traverse" "^7.7.0" "@babel/types" "^7.7.0" +"@babel/helper-replace-supers@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.7.4.tgz#3c881a6a6a7571275a72d82e6107126ec9e2cdd2" + integrity sha512-pP0tfgg9hsZWo5ZboYGuBn/bbYT/hdLPVSS4NMmiRJdwWhP0IznPwN9AE1JwyGsjSPLC364I0Qh5p+EPkGPNpg== + dependencies: + "@babel/helper-member-expression-to-functions" "^7.7.4" + "@babel/helper-optimise-call-expression" "^7.7.4" + "@babel/traverse" "^7.7.4" + "@babel/types" "^7.7.4" + "@babel/helper-simple-access@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.7.0.tgz#97a8b6c52105d76031b86237dc1852b44837243d" @@ -274,6 +430,14 @@ "@babel/template" "^7.7.0" "@babel/types" "^7.7.0" +"@babel/helper-simple-access@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.7.4.tgz#a169a0adb1b5f418cfc19f22586b2ebf58a9a294" + integrity sha512-zK7THeEXfan7UlWsG2A6CI/L9jVnI5+xxKZOdej39Y0YtDYKx9raHk5F2EtK9K8DHRTihYwg20ADt9S36GR78A== + dependencies: + "@babel/template" "^7.7.4" + "@babel/types" "^7.7.4" + "@babel/helper-split-export-declaration@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.7.0.tgz#1365e74ea6c614deeb56ebffabd71006a0eb2300" @@ -281,6 +445,13 @@ dependencies: "@babel/types" "^7.7.0" +"@babel/helper-split-export-declaration@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.7.4.tgz#57292af60443c4a3622cf74040ddc28e68336fd8" + integrity sha512-guAg1SXFcVr04Guk9eq0S4/rWS++sbmyqosJzVs8+1fH5NI+ZcmkaSkc7dmtAFbHFva6yRJnjW3yAcGxjueDug== + dependencies: + "@babel/types" "^7.7.4" + "@babel/helper-wrap-function@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.7.0.tgz#15af3d3e98f8417a60554acbb6c14e75e0b33b74" @@ -291,7 +462,17 @@ "@babel/traverse" "^7.7.0" "@babel/types" "^7.7.0" -"@babel/helpers@^7.6.0", "@babel/helpers@^7.7.0": +"@babel/helper-wrap-function@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.7.4.tgz#37ab7fed5150e22d9d7266e830072c0cdd8baace" + integrity sha512-VsfzZt6wmsocOaVU0OokwrIytHND55yvyT4BPB9AIIgwr8+x7617hetdJTsuGwygN5RC6mxA9EJztTjuwm2ofg== + dependencies: + "@babel/helper-function-name" "^7.7.4" + "@babel/template" "^7.7.4" + "@babel/traverse" "^7.7.4" + "@babel/types" "^7.7.4" + +"@babel/helpers@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.7.0.tgz#359bb5ac3b4726f7c1fde0ec75f64b3f4275d60b" integrity sha512-VnNwL4YOhbejHb7x/b5F39Zdg5vIQpUUNzJwx0ww1EcVRt41bbGRZWhAURrfY32T5zTT3qwNOQFWpn+P0i0a2g== @@ -300,6 +481,15 @@ "@babel/traverse" "^7.7.0" "@babel/types" "^7.7.0" +"@babel/helpers@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.7.4.tgz#62c215b9e6c712dadc15a9a0dcab76c92a940302" + integrity sha512-ak5NGZGJ6LV85Q1Zc9gn2n+ayXOizryhjSUBTdu5ih1tlVCJeuQENzc4ItyCVhINVXvIT/ZQ4mheGIsfBkpskg== + dependencies: + "@babel/template" "^7.7.4" + "@babel/traverse" "^7.7.4" + "@babel/types" "^7.7.4" + "@babel/highlight@^7.0.0": version "7.5.0" resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.5.0.tgz#56d11312bd9248fa619591d02472be6e8cb32540" @@ -314,12 +504,17 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.6.4.tgz#cb9b36a7482110282d5cb6dd424ec9262b473d81" integrity sha512-D8RHPW5qd0Vbyo3qb+YjO5nvUVRTXFLQ/FsDxJU2Nqz4uB5EnUN0ZQSEYpvTIbRuttig1XbHWU5oMeQwQSAA+A== -"@babel/parser@^7.0.0", "@babel/parser@^7.1.0", "@babel/parser@^7.4.3", "@babel/parser@^7.4.4", "@babel/parser@^7.6.0", "@babel/parser@^7.7.0", "@babel/parser@^7.7.2": +"@babel/parser@^7.0.0", "@babel/parser@^7.1.0", "@babel/parser@^7.4.3", "@babel/parser@^7.4.4", "@babel/parser@^7.7.0", "@babel/parser@^7.7.2": version "7.7.3" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.7.3.tgz#5fad457c2529de476a248f75b0f090b3060af043" integrity sha512-bqv+iCo9i+uLVbI0ILzKkvMorqxouI+GbV13ivcARXn9NNEabi2IEz912IgNpT/60BNXac5dgcfjb94NjsF33A== -"@babel/plugin-proposal-async-generator-functions@^7.2.0", "@babel/plugin-proposal-async-generator-functions@^7.7.0": +"@babel/parser@^7.7.4": + version "7.7.5" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.7.5.tgz#cbf45321619ac12d83363fcf9c94bb67fa646d71" + integrity sha512-KNlOe9+/nk4i29g0VXgl8PEXIRms5xKLJeuZ6UptN0fHv+jDiriG+y94X6qAgWTR0h3KaoM1wK5G5h7MHFRSig== + +"@babel/plugin-proposal-async-generator-functions@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.7.0.tgz#83ef2d6044496b4c15d8b4904e2219e6dccc6971" integrity sha512-ot/EZVvf3mXtZq0Pd0+tSOfGWMizqmOohXmNZg6LNFjHOV+wOPv7BvVYh8oPR8LhpIP3ye8nNooKL50YRWxpYA== @@ -328,12 +523,21 @@ "@babel/helper-remap-async-to-generator" "^7.7.0" "@babel/plugin-syntax-async-generators" "^7.2.0" -"@babel/plugin-proposal-class-properties@7.5.5": - version "7.5.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.5.5.tgz#a974cfae1e37c3110e71f3c6a2e48b8e71958cd4" - integrity sha512-AF79FsnWFxjlaosgdi421vmYG6/jg79bVD0dpD44QdgobzHKuLZ6S3vl8la9qIeSwGi8i1fS0O1mfuDAAdo1/A== +"@babel/plugin-proposal-async-generator-functions@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.7.4.tgz#0351c5ac0a9e927845fffd5b82af476947b7ce6d" + integrity sha512-1ypyZvGRXriY/QP668+s8sFr2mqinhkRDMPSQLNghCQE+GAkFtp+wkHVvg2+Hdki8gwP+NFzJBJ/N1BfzCCDEw== dependencies: - "@babel/helper-create-class-features-plugin" "^7.5.5" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-remap-async-to-generator" "^7.7.4" + "@babel/plugin-syntax-async-generators" "^7.7.4" + +"@babel/plugin-proposal-class-properties@7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.7.4.tgz#2f964f0cb18b948450362742e33e15211e77c2ba" + integrity sha512-EcuXeV4Hv1X3+Q1TsuOmyyxeTRiSqurGJ26+I/FW1WbymmRRapVORm6x1Zl3iDIHyRxEs+VXWp6qnlcfcJSbbw== + dependencies: + "@babel/helper-create-class-features-plugin" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-proposal-class-properties@^7.0.0": @@ -344,16 +548,16 @@ "@babel/helper-create-class-features-plugin" "^7.7.0" "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-proposal-decorators@7.6.0": - version "7.6.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.6.0.tgz#6659d2572a17d70abd68123e89a12a43d90aa30c" - integrity sha512-ZSyYw9trQI50sES6YxREXKu+4b7MAg6Qx2cvyDDYjP2Hpzd3FleOUwC9cqn1+za8d0A2ZU8SHujxFao956efUg== +"@babel/plugin-proposal-decorators@7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.7.4.tgz#58c1e21d21ea12f9f5f0a757e46e687b94a7ab2b" + integrity sha512-GftcVDcLCwVdzKmwOBDjATd548+IE+mBo7ttgatqNDR7VG7GqIuZPtRWlMLHbhTXhcnFZiGER8iIYl1n/imtsg== dependencies: - "@babel/helper-create-class-features-plugin" "^7.6.0" + "@babel/helper-create-class-features-plugin" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-decorators" "^7.2.0" + "@babel/plugin-syntax-decorators" "^7.7.4" -"@babel/plugin-proposal-dynamic-import@^7.5.0", "@babel/plugin-proposal-dynamic-import@^7.7.0": +"@babel/plugin-proposal-dynamic-import@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.7.0.tgz#dc02a8bad8d653fb59daf085516fa416edd2aa7f" integrity sha512-7poL3Xi+QFPC7sGAzEIbXUyYzGJwbc2+gSD0AkiC5k52kH2cqHdqxm5hNFfLW3cRSTcx9bN0Fl7/6zWcLLnKAQ== @@ -361,6 +565,14 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-syntax-dynamic-import" "^7.2.0" +"@babel/plugin-proposal-dynamic-import@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.7.4.tgz#dde64a7f127691758cbfed6cf70de0fa5879d52d" + integrity sha512-StH+nGAdO6qDB1l8sZ5UBV8AC3F2VW2I8Vfld73TMKyptMU9DY5YsJAS8U81+vEtxcH3Y/La0wG0btDrhpnhjQ== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-dynamic-import" "^7.7.4" + "@babel/plugin-proposal-json-strings@^7.2.0": version "7.2.0" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.2.0.tgz#568ecc446c6148ae6b267f02551130891e29f317" @@ -369,15 +581,39 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-syntax-json-strings" "^7.2.0" -"@babel/plugin-proposal-object-rest-spread@7.5.5": - version "7.5.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.5.5.tgz#61939744f71ba76a3ae46b5eea18a54c16d22e58" - integrity sha512-F2DxJJSQ7f64FyTVl5cw/9MWn6naXGdk3Q3UhDbFEEHv+EilCPoeRD3Zh/Utx1CJz4uyKlQ4uH+bJPbEhMV7Zw== +"@babel/plugin-proposal-json-strings@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.7.4.tgz#7700a6bfda771d8dc81973249eac416c6b4c697d" + integrity sha512-wQvt3akcBTfLU/wYoqm/ws7YOAQKu8EVJEvHip/mzkNtjaclQoCCIqKXFP5/eyfnfbQCDV3OLRIK3mIVyXuZlw== dependencies: "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-object-rest-spread" "^7.2.0" + "@babel/plugin-syntax-json-strings" "^7.7.4" + +"@babel/plugin-proposal-nullish-coalescing-operator@7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.7.4.tgz#7db302c83bc30caa89e38fee935635ef6bd11c28" + integrity sha512-TbYHmr1Gl1UC7Vo2HVuj/Naci5BEGNZ0AJhzqD2Vpr6QPFWpUmBRLrIDjedzx7/CShq0bRDS2gI4FIs77VHLVQ== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-nullish-coalescing-operator" "^7.7.4" + +"@babel/plugin-proposal-numeric-separator@7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.7.4.tgz#7819a17445f4197bb9575e5750ed349776da858a" + integrity sha512-CG605v7lLpVgVldSY6kxsN9ui1DxFOyepBfuX2AzU2TNriMAYApoU55mrGw9Jr4TlrTzPCG10CL8YXyi+E/iPw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-numeric-separator" "^7.7.4" + +"@babel/plugin-proposal-object-rest-spread@7.7.4", "@babel/plugin-proposal-object-rest-spread@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.7.4.tgz#cc57849894a5c774214178c8ab64f6334ec8af71" + integrity sha512-rnpnZR3/iWKmiQyJ3LKJpSwLDcX/nSXhdLk4Aq/tXOApIvyu7qoabrige0ylsAJffaUC51WiBu209Q0U+86OWQ== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-object-rest-spread" "^7.7.4" -"@babel/plugin-proposal-object-rest-spread@^7.0.0", "@babel/plugin-proposal-object-rest-spread@^7.5.5", "@babel/plugin-proposal-object-rest-spread@^7.6.2": +"@babel/plugin-proposal-object-rest-spread@^7.0.0", "@babel/plugin-proposal-object-rest-spread@^7.6.2": version "7.6.2" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.6.2.tgz#8ffccc8f3a6545e9f78988b6bf4fe881b88e8096" integrity sha512-LDBXlmADCsMZV1Y9OQwMc0MyGZ8Ta/zlD9N67BfQT8uYwkRswiu2hU6nJKrjrt/58aH/vqfQlR/9yId/7A2gWw== @@ -393,7 +629,23 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-syntax-optional-catch-binding" "^7.2.0" -"@babel/plugin-proposal-unicode-property-regex@^7.4.4", "@babel/plugin-proposal-unicode-property-regex@^7.7.0": +"@babel/plugin-proposal-optional-catch-binding@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.7.4.tgz#ec21e8aeb09ec6711bc0a39ca49520abee1de379" + integrity sha512-DyM7U2bnsQerCQ+sejcTNZh8KQEUuC3ufzdnVnSiUv/qoGJp2Z3hanKL18KDhsBT5Wj6a7CMT5mdyCNJsEaA9w== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-optional-catch-binding" "^7.7.4" + +"@babel/plugin-proposal-optional-chaining@7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.7.4.tgz#3f04c2de1a942cbd3008324df8144b9cbc0ca0ba" + integrity sha512-JmgaS+ygAWDR/STPe3/7y0lNlHgS+19qZ9aC06nYLwQ/XB7c0q5Xs+ksFU3EDnp9EiEsO0dnRAOKeyLHTZuW3A== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-optional-chaining" "^7.7.4" + +"@babel/plugin-proposal-unicode-property-regex@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.7.0.tgz#549fe1717a1bd0a2a7e63163841cb37e78179d5d" integrity sha512-mk34H+hp7kRBWJOOAR0ZMGCydgKMD4iN9TpDRp3IIcbunltxEY89XSimc6WbtSLCDrwcdy/EEw7h5CFCzxTchw== @@ -401,6 +653,14 @@ "@babel/helper-create-regexp-features-plugin" "^7.7.0" "@babel/helper-plugin-utils" "^7.0.0" +"@babel/plugin-proposal-unicode-property-regex@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.7.4.tgz#7c239ccaf09470dbe1d453d50057460e84517ebb" + integrity sha512-cHgqHgYvffluZk85dJ02vloErm3Y6xtH+2noOBOJ2kXOJH3aVCDnj5eR/lVNlTnYu4hndAPJD3rTFjW3qee0PA== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.7.4" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-async-generators@^7.2.0": version "7.2.0" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.2.0.tgz#69e1f0db34c6f5a0cf7e2b3323bf159a76c8cb7f" @@ -408,6 +668,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" +"@babel/plugin-syntax-async-generators@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.7.4.tgz#331aaf310a10c80c44a66b238b6e49132bd3c889" + integrity sha512-Li4+EjSpBgxcsmeEF8IFcfV/+yJGxHXDirDkEoyFjumuwbmfCVHUt0HuowD/iGM7OhIRyXJH9YXxqiH6N815+g== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-class-properties@^7.0.0": version "7.2.0" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.2.0.tgz#23b3b7b9bcdabd73672a9149f728cd3be6214812" @@ -415,14 +682,21 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-syntax-decorators@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.2.0.tgz#c50b1b957dcc69e4b1127b65e1c33eef61570c1b" - integrity sha512-38QdqVoXdHUQfTpZo3rQwqQdWtCn5tMv4uV6r2RMfTqNBuv4ZBhz79SfaQWKTVmxHjeFv/DnXVC/+agHCklYWA== +"@babel/plugin-syntax-decorators@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.7.4.tgz#3c91cfee2a111663ff3ac21b851140f5a52a4e0b" + integrity sha512-0oNLWNH4k5ZbBVfAwiTU53rKFWIeTh6ZlaWOXWJc4ywxs0tjz5fc3uZ6jKAnZSxN98eXVgg7bJIuzjX+3SXY+A== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-syntax-dynamic-import@7.2.0", "@babel/plugin-syntax-dynamic-import@^7.2.0": +"@babel/plugin-syntax-dynamic-import@7.7.4", "@babel/plugin-syntax-dynamic-import@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.7.4.tgz#29ca3b4415abfe4a5ec381e903862ad1a54c3aec" + integrity sha512-jHQW0vbRGvwQNgyVxwDh4yuXu4bH1f5/EICJLAhl1SblLs2CDhrsmCk+v5XLdE9wxtAFRyxx+P//Iw+a5L/tTg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-dynamic-import@^7.2.0": version "7.2.0" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.2.0.tgz#69c159ffaf4998122161ad8ebc5e6d1f55df8612" integrity sha512-mVxuJ0YroI/h/tbFTPGZR8cv6ai+STMKNBq0f8hFxsxWjl94qqhsb+wXbpNMDPU3cfR1TIsVFzU3nXyZMqyK4w== @@ -436,6 +710,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" +"@babel/plugin-syntax-flow@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.7.4.tgz#6d91b59e1a0e4c17f36af2e10dd64ef220919d7b" + integrity sha512-2AMAWl5PsmM5KPkB22cvOkUyWk6MjUaqhHNU5nSPUl/ns3j5qLfw2SuYP5RbVZ0tfLvePr4zUScbICtDP2CUNw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-json-strings@^7.2.0": version "7.2.0" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.2.0.tgz#72bd13f6ffe1d25938129d2a186b11fd62951470" @@ -443,6 +724,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" +"@babel/plugin-syntax-json-strings@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.7.4.tgz#86e63f7d2e22f9e27129ac4e83ea989a382e86cc" + integrity sha512-QpGupahTQW1mHRXddMG5srgpHWqRLwJnJZKXTigB9RPFCCGbDGCgBeM/iC82ICXp414WeYx/tD54w7M2qRqTMg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-jsx@^7.0.0", "@babel/plugin-syntax-jsx@^7.2.0": version "7.2.0" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.2.0.tgz#0b85a3b4bc7cdf4cc4b8bf236335b907ca22e7c7" @@ -450,6 +738,27 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" +"@babel/plugin-syntax-jsx@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.7.4.tgz#dab2b56a36fb6c3c222a1fbc71f7bf97f327a9ec" + integrity sha512-wuy6fiMe9y7HeZBWXYCGt2RGxZOj0BImZ9EyXJVnVGBKO/Br592rbR3rtIQn0eQhAk9vqaKP5n8tVqEFBQMfLg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-nullish-coalescing-operator@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.7.4.tgz#e53b751d0c3061b1ba3089242524b65a7a9da12b" + integrity sha512-XKh/yIRPiQTOeBg0QJjEus5qiSKucKAiApNtO1psqG7D17xmE+X2i5ZqBEuSvo0HRuyPaKaSN/Gy+Ha9KFQolw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-numeric-separator@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.7.4.tgz#39818f8042a09d4c6248d85d82555369da4da5c4" + integrity sha512-vmlUUBlLuFnbpaR+1kKIdo62xQEN+THWbtAHSEilo+0rHl2dKKCn6GLUVKpI848wL/T0ZPQgAy8asRJ9yYEjog== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-object-rest-spread@^7.0.0", "@babel/plugin-syntax-object-rest-spread@^7.2.0": version "7.2.0" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.2.0.tgz#3b7a3e733510c57e820b9142a6579ac8b0dfad2e" @@ -457,6 +766,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" +"@babel/plugin-syntax-object-rest-spread@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.7.4.tgz#47cf220d19d6d0d7b154304701f468fc1cc6ff46" + integrity sha512-mObR+r+KZq0XhRVS2BrBKBpr5jqrqzlPvS9C9vuOf5ilSwzloAl7RPWLrgKdWS6IreaVrjHxTjtyqFiOisaCwg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-optional-catch-binding@^7.2.0": version "7.2.0" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.2.0.tgz#a94013d6eda8908dfe6a477e7f9eda85656ecf5c" @@ -464,6 +780,20 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" +"@babel/plugin-syntax-optional-catch-binding@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.7.4.tgz#a3e38f59f4b6233867b4a92dcb0ee05b2c334aa6" + integrity sha512-4ZSuzWgFxqHRE31Glu+fEr/MirNZOMYmD/0BhBWyLyOOQz/gTAl7QmWm2hX1QxEIXsr2vkdlwxIzTyiYRC4xcQ== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-optional-chaining@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.7.4.tgz#c91fdde6de85d2eb8906daea7b21944c3610c901" + integrity sha512-2MqYD5WjZSbJdUagnJvIdSfkb/ucOC9/1fRJxm7GAxY6YQLWlUvkfxoNbUPcPLHJyetKUDQ4+yyuUyAoc0HriA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-top-level-await@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.7.0.tgz#f5699549f50bbe8d12b1843a4e82f0a37bb65f4d" @@ -471,10 +801,17 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-syntax-typescript@^7.2.0": - version "7.3.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.3.3.tgz#a7cc3f66119a9f7ebe2de5383cce193473d65991" - integrity sha512-dGwbSMA1YhVS8+31CnPR7LB4pcbrzcV99wQzby4uAfrkZPYZlQ7ImwdpzLqi6Z6IL02b8IAL379CaMwo0x5Lag== +"@babel/plugin-syntax-top-level-await@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.7.4.tgz#bd7d8fa7b9fee793a36e4027fd6dd1aa32f946da" + integrity sha512-wdsOw0MvkL1UIgiQ/IFr3ETcfv1xb8RMM0H9wbiDyLaJFyiDg5oZvDLCXosIXmFeIlweML5iOBXAkqddkYNizg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-typescript@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.7.4.tgz#5d037ffa10f3b25a16f32570ebbe7a8c2efa304b" + integrity sha512-77blgY18Hud4NM1ggTA8xVT/dBENQf17OpiToSa2jSmEY3fWXD2jwrdVlO4kq5yzUTeF15WSQ6b4fByNvJcjpQ== dependencies: "@babel/helper-plugin-utils" "^7.0.0" @@ -485,7 +822,14 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-async-to-generator@^7.5.0", "@babel/plugin-transform-async-to-generator@^7.7.0": +"@babel/plugin-transform-arrow-functions@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.7.4.tgz#76309bd578addd8aee3b379d809c802305a98a12" + integrity sha512-zUXy3e8jBNPiffmqkHRNDdZM2r8DWhCB7HhcoyZjiK1TxYEluLHAvQuYnTT+ARqRpabWqy/NHkO6e3MsYB5YfA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-async-to-generator@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.7.0.tgz#e2b84f11952cf5913fe3438b7d2585042772f492" integrity sha512-vLI2EFLVvRBL3d8roAMqtVY0Bm9C1QzLkdS57hiKrjUBSqsQYrBsMCeOg/0KK7B0eK9V71J5mWcha9yyoI2tZw== @@ -494,6 +838,15 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/helper-remap-async-to-generator" "^7.7.0" +"@babel/plugin-transform-async-to-generator@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.7.4.tgz#694cbeae6d613a34ef0292713fa42fb45c4470ba" + integrity sha512-zpUTZphp5nHokuy8yLlyafxCJ0rSlFoSHypTUWgpdwoDXWQcseaect7cJ8Ppk6nunOM6+5rPMkod4OYKPR5MUg== + dependencies: + "@babel/helper-module-imports" "^7.7.4" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-remap-async-to-generator" "^7.7.4" + "@babel/plugin-transform-block-scoped-functions@^7.0.0", "@babel/plugin-transform-block-scoped-functions@^7.2.0": version "7.2.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.2.0.tgz#5d3cc11e8d5ddd752aa64c9148d0db6cb79fd190" @@ -501,7 +854,14 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-block-scoping@^7.0.0", "@babel/plugin-transform-block-scoping@^7.6.0", "@babel/plugin-transform-block-scoping@^7.6.3": +"@babel/plugin-transform-block-scoped-functions@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.7.4.tgz#d0d9d5c269c78eaea76227ace214b8d01e4d837b" + integrity sha512-kqtQzwtKcpPclHYjLK//3lH8OFsCDuDJBaFhVwf8kqdnF6MN4l618UDlcA7TfRs3FayrHj+svYnSX8MC9zmUyQ== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-block-scoping@^7.0.0", "@babel/plugin-transform-block-scoping@^7.6.3": version "7.6.3" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.6.3.tgz#6e854e51fbbaa84351b15d4ddafe342f3a5d542a" integrity sha512-7hvrg75dubcO3ZI2rjYTzUrEuh1E9IyDEhhB6qfcooxhDA33xx2MasuLVgdxzcP6R/lipAC6n9ub9maNW6RKdw== @@ -509,7 +869,15 @@ "@babel/helper-plugin-utils" "^7.0.0" lodash "^4.17.13" -"@babel/plugin-transform-classes@^7.0.0", "@babel/plugin-transform-classes@^7.5.5", "@babel/plugin-transform-classes@^7.7.0": +"@babel/plugin-transform-block-scoping@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.7.4.tgz#200aad0dcd6bb80372f94d9e628ea062c58bf224" + integrity sha512-2VBe9u0G+fDt9B5OV5DQH4KBf5DoiNkwFKOz0TCvBWvdAN2rOykCTkrL+jTLxfCAm76l9Qo5OqL7HBOx2dWggg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + lodash "^4.17.13" + +"@babel/plugin-transform-classes@^7.0.0", "@babel/plugin-transform-classes@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.7.0.tgz#b411ecc1b8822d24b81e5d184f24149136eddd4a" integrity sha512-/b3cKIZwGeUesZheU9jNYcwrEA7f/Bo4IdPmvp7oHgvks2majB5BoT5byAql44fiNQYOPzhk2w8DbgfuafkMoA== @@ -523,6 +891,20 @@ "@babel/helper-split-export-declaration" "^7.7.0" globals "^11.1.0" +"@babel/plugin-transform-classes@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.7.4.tgz#c92c14be0a1399e15df72667067a8f510c9400ec" + integrity sha512-sK1mjWat7K+buWRuImEzjNf68qrKcrddtpQo3swi9j7dUcG6y6R6+Di039QN2bD1dykeswlagupEmpOatFHHUg== + dependencies: + "@babel/helper-annotate-as-pure" "^7.7.4" + "@babel/helper-define-map" "^7.7.4" + "@babel/helper-function-name" "^7.7.4" + "@babel/helper-optimise-call-expression" "^7.7.4" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-replace-supers" "^7.7.4" + "@babel/helper-split-export-declaration" "^7.7.4" + globals "^11.1.0" + "@babel/plugin-transform-computed-properties@^7.0.0", "@babel/plugin-transform-computed-properties@^7.2.0": version "7.2.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.2.0.tgz#83a7df6a658865b1c8f641d510c6f3af220216da" @@ -530,14 +912,28 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-destructuring@7.6.0", "@babel/plugin-transform-destructuring@^7.0.0", "@babel/plugin-transform-destructuring@^7.6.0": +"@babel/plugin-transform-computed-properties@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.7.4.tgz#e856c1628d3238ffe12d668eb42559f79a81910d" + integrity sha512-bSNsOsZnlpLLyQew35rl4Fma3yKWqK3ImWMSC/Nc+6nGjC9s5NFWAer1YQ899/6s9HxO2zQC1WoFNfkOqRkqRQ== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-destructuring@7.7.4", "@babel/plugin-transform-destructuring@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.7.4.tgz#2b713729e5054a1135097b6a67da1b6fe8789267" + integrity sha512-4jFMXI1Cu2aXbcXXl8Lr6YubCn6Oc7k9lLsu8v61TZh+1jny2BWmdtvY9zSUlLdGUvcy9DMAWyZEOqjsbeg/wA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-destructuring@^7.0.0", "@babel/plugin-transform-destructuring@^7.6.0": version "7.6.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.6.0.tgz#44bbe08b57f4480094d57d9ffbcd96d309075ba6" integrity sha512-2bGIS5P1v4+sWTCnKNDZDxbGvEqi0ijeqM/YqHtVGrvG2y0ySgnEEhXErvE9dA0bnIzY9bIzdFK0jFA46ASIIQ== dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-dotall-regex@^7.4.4", "@babel/plugin-transform-dotall-regex@^7.7.0": +"@babel/plugin-transform-dotall-regex@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.7.0.tgz#c5c9ecacab3a5e0c11db6981610f0c32fd698b3b" integrity sha512-3QQlF7hSBnSuM1hQ0pS3pmAbWLax/uGNCbPBND9y+oJ4Y776jsyujG2k0Sn2Aj2a0QwVOiOFL5QVPA7spjvzSA== @@ -545,6 +941,14 @@ "@babel/helper-create-regexp-features-plugin" "^7.7.0" "@babel/helper-plugin-utils" "^7.0.0" +"@babel/plugin-transform-dotall-regex@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.7.4.tgz#f7ccda61118c5b7a2599a72d5e3210884a021e96" + integrity sha512-mk0cH1zyMa/XHeb6LOTXTbG7uIJ8Rrjlzu91pUx/KS3JpcgaTDwMS8kM+ar8SLOvlL2Lofi4CGBAjCo3a2x+lw== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.7.4" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-transform-duplicate-keys@^7.5.0": version "7.5.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.5.0.tgz#c5dbf5106bf84cdf691222c0974c12b1df931853" @@ -552,6 +956,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" +"@babel/plugin-transform-duplicate-keys@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.7.4.tgz#3d21731a42e3f598a73835299dd0169c3b90ac91" + integrity sha512-g1y4/G6xGWMD85Tlft5XedGaZBCIVN+/P0bs6eabmcPP9egFleMAo65OOjlhcz1njpwagyY3t0nsQC9oTFegJA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-transform-exponentiation-operator@^7.2.0": version "7.2.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.2.0.tgz#a63868289e5b4007f7054d46491af51435766008" @@ -560,13 +971,21 @@ "@babel/helper-builder-binary-assignment-operator-visitor" "^7.1.0" "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-flow-strip-types@7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.4.4.tgz#d267a081f49a8705fc9146de0768c6b58dccd8f7" - integrity sha512-WyVedfeEIILYEaWGAUWzVNyqG4sfsNooMhXWsu/YzOvVGcsnPb5PguysjJqI3t3qiaYj0BR8T2f5njdjTGe44Q== +"@babel/plugin-transform-exponentiation-operator@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.7.4.tgz#dd30c0191e3a1ba19bcc7e389bdfddc0729d5db9" + integrity sha512-MCqiLfCKm6KEA1dglf6Uqq1ElDIZwFuzz1WH5mTf8k2uQSxEJMbOIEh7IZv7uichr7PMfi5YVSrr1vz+ipp7AQ== dependencies: + "@babel/helper-builder-binary-assignment-operator-visitor" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-flow" "^7.2.0" + +"@babel/plugin-transform-flow-strip-types@7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.7.4.tgz#cc73f85944782df1d77d80977bc097920a8bf31a" + integrity sha512-w9dRNlHY5ElNimyMYy0oQowvQpwt/PRHI0QS98ZJCTZU2bvSnKXo5zEiD5u76FBPigTm8TkqzmnUTg16T7qbkA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-flow" "^7.7.4" "@babel/plugin-transform-flow-strip-types@^7.0.0": version "7.6.3" @@ -583,7 +1002,14 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-function-name@^7.0.0", "@babel/plugin-transform-function-name@^7.4.4", "@babel/plugin-transform-function-name@^7.7.0": +"@babel/plugin-transform-for-of@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.7.4.tgz#248800e3a5e507b1f103d8b4ca998e77c63932bc" + integrity sha512-zZ1fD1B8keYtEcKF+M1TROfeHTKnijcVQm0yO/Yu1f7qoDoxEIc/+GX6Go430Bg84eM/xwPFp0+h4EbZg7epAA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-function-name@^7.0.0", "@babel/plugin-transform-function-name@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.7.0.tgz#0fa786f1eef52e3b7d4fc02e54b2129de8a04c2a" integrity sha512-P5HKu0d9+CzZxP5jcrWdpe7ZlFDe24bmqP6a6X8BHEBl/eizAsY8K6LX8LASZL0Jxdjm5eEfzp+FIrxCm/p8bA== @@ -591,6 +1017,14 @@ "@babel/helper-function-name" "^7.7.0" "@babel/helper-plugin-utils" "^7.0.0" +"@babel/plugin-transform-function-name@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.7.4.tgz#75a6d3303d50db638ff8b5385d12451c865025b1" + integrity sha512-E/x09TvjHNhsULs2IusN+aJNRV5zKwxu1cpirZyRPw+FyyIKEHPXTsadj48bVpc1R5Qq1B5ZkzumuFLytnbT6g== + dependencies: + "@babel/helper-function-name" "^7.7.4" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-transform-literals@^7.0.0", "@babel/plugin-transform-literals@^7.2.0": version "7.2.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.2.0.tgz#690353e81f9267dad4fd8cfd77eafa86aba53ea1" @@ -598,6 +1032,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" +"@babel/plugin-transform-literals@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.7.4.tgz#27fe87d2b5017a2a5a34d1c41a6b9f6a6262643e" + integrity sha512-X2MSV7LfJFm4aZfxd0yLVFrEXAgPqYoDG53Br/tCKiKYfX0MjVjQeWPIhPHHsCqzwQANq+FLN786fF5rgLS+gw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-transform-member-expression-literals@^7.0.0", "@babel/plugin-transform-member-expression-literals@^7.2.0": version "7.2.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.2.0.tgz#fa10aa5c58a2cb6afcf2c9ffa8cb4d8b3d489a2d" @@ -605,6 +1046,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" +"@babel/plugin-transform-member-expression-literals@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.7.4.tgz#aee127f2f3339fc34ce5e3055d7ffbf7aa26f19a" + integrity sha512-9VMwMO7i69LHTesL0RdGy93JU6a+qOPuvB4F4d0kR0zyVjJRVJRaoaGjhtki6SzQUu8yen/vxPKN6CWnCUw6bA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-transform-modules-amd@^7.5.0": version "7.5.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.5.0.tgz#ef00435d46da0a5961aa728a1d2ecff063e4fb91" @@ -614,7 +1062,16 @@ "@babel/helper-plugin-utils" "^7.0.0" babel-plugin-dynamic-import-node "^2.3.0" -"@babel/plugin-transform-modules-commonjs@^7.0.0", "@babel/plugin-transform-modules-commonjs@^7.6.0", "@babel/plugin-transform-modules-commonjs@^7.7.0": +"@babel/plugin-transform-modules-amd@^7.7.4": + version "7.7.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.7.5.tgz#39e0fb717224b59475b306402bb8eedab01e729c" + integrity sha512-CT57FG4A2ZUNU1v+HdvDSDrjNWBrtCmSH6YbbgN3Lrf0Di/q/lWRxZrE72p3+HCCz9UjfZOEBdphgC0nzOS6DQ== + dependencies: + "@babel/helper-module-transforms" "^7.7.5" + "@babel/helper-plugin-utils" "^7.0.0" + babel-plugin-dynamic-import-node "^2.3.0" + +"@babel/plugin-transform-modules-commonjs@^7.0.0", "@babel/plugin-transform-modules-commonjs@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.7.0.tgz#3e5ffb4fd8c947feede69cbe24c9554ab4113fe3" integrity sha512-KEMyWNNWnjOom8vR/1+d+Ocz/mILZG/eyHHO06OuBQ2aNhxT62fr4y6fGOplRx+CxCSp3IFwesL8WdINfY/3kg== @@ -624,7 +1081,17 @@ "@babel/helper-simple-access" "^7.7.0" babel-plugin-dynamic-import-node "^2.3.0" -"@babel/plugin-transform-modules-systemjs@^7.5.0", "@babel/plugin-transform-modules-systemjs@^7.7.0": +"@babel/plugin-transform-modules-commonjs@^7.7.4": + version "7.7.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.7.5.tgz#1d27f5eb0bcf7543e774950e5b2fa782e637b345" + integrity sha512-9Cq4zTFExwFhQI6MT1aFxgqhIsMWQWDVwOgLzl7PTWJHsNaqFvklAU+Oz6AQLAS0dJKTwZSOCo20INwktxpi3Q== + dependencies: + "@babel/helper-module-transforms" "^7.7.5" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-simple-access" "^7.7.4" + babel-plugin-dynamic-import-node "^2.3.0" + +"@babel/plugin-transform-modules-systemjs@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.7.0.tgz#9baf471213af9761c1617bb12fd278e629041417" integrity sha512-ZAuFgYjJzDNv77AjXRqzQGlQl4HdUM6j296ee4fwKVZfhDR9LAGxfvXjBkb06gNETPnN0sLqRm9Gxg4wZH6dXg== @@ -633,7 +1100,16 @@ "@babel/helper-plugin-utils" "^7.0.0" babel-plugin-dynamic-import-node "^2.3.0" -"@babel/plugin-transform-modules-umd@^7.2.0", "@babel/plugin-transform-modules-umd@^7.7.0": +"@babel/plugin-transform-modules-systemjs@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.7.4.tgz#cd98152339d3e763dfe838b7d4273edaf520bb30" + integrity sha512-y2c96hmcsUi6LrMqvmNDPBBiGCiQu0aYqpHatVVu6kD4mFEXKjyNxd/drc18XXAf9dv7UXjrZwBVmTTGaGP8iw== + dependencies: + "@babel/helper-hoist-variables" "^7.7.4" + "@babel/helper-plugin-utils" "^7.0.0" + babel-plugin-dynamic-import-node "^2.3.0" + +"@babel/plugin-transform-modules-umd@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.7.0.tgz#d62c7da16670908e1d8c68ca0b5d4c0097b69966" integrity sha512-u7eBA03zmUswQ9LQ7Qw0/ieC1pcAkbp5OQatbWUzY1PaBccvuJXUkYzoN1g7cqp7dbTu6Dp9bXyalBvD04AANA== @@ -641,13 +1117,28 @@ "@babel/helper-module-transforms" "^7.7.0" "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-named-capturing-groups-regex@^7.6.0", "@babel/plugin-transform-named-capturing-groups-regex@^7.7.0": +"@babel/plugin-transform-modules-umd@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.7.4.tgz#1027c355a118de0aae9fee00ad7813c584d9061f" + integrity sha512-u2B8TIi0qZI4j8q4C51ktfO7E3cQ0qnaXFI1/OXITordD40tt17g/sXqgNNCcMTcBFKrUPcGDx+TBJuZxLx7tw== + dependencies: + "@babel/helper-module-transforms" "^7.7.4" + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-named-capturing-groups-regex@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.7.0.tgz#358e6fd869b9a4d8f5cbc79e4ed4fc340e60dcaf" integrity sha512-+SicSJoKouPctL+j1pqktRVCgy+xAch1hWWTMy13j0IflnyNjaoskj+DwRQFimHbLqO3sq2oN2CXMvXq3Bgapg== dependencies: "@babel/helper-create-regexp-features-plugin" "^7.7.0" +"@babel/plugin-transform-named-capturing-groups-regex@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.7.4.tgz#fb3bcc4ee4198e7385805007373d6b6f42c98220" + integrity sha512-jBUkiqLKvUWpv9GLSuHUFYdmHg0ujC1JEYoZUfeOOfNydZXp1sXObgyPatpcwjWgsdBGsagWW0cdJpX/DO2jMw== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.7.4" + "@babel/plugin-transform-new-target@^7.4.4": version "7.4.4" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.4.4.tgz#18d120438b0cc9ee95a47f2c72bc9768fbed60a5" @@ -655,6 +1146,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" +"@babel/plugin-transform-new-target@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.7.4.tgz#4a0753d2d60639437be07b592a9e58ee00720167" + integrity sha512-CnPRiNtOG1vRodnsyGX37bHQleHE14B9dnnlgSeEs3ek3fHN1A1SScglTCg1sfbe7sRQ2BUcpgpTpWSfMKz3gg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-transform-object-super@^7.0.0", "@babel/plugin-transform-object-super@^7.5.5": version "7.5.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.5.5.tgz#c70021df834073c65eb613b8679cc4a381d1a9f9" @@ -663,6 +1161,14 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/helper-replace-supers" "^7.5.5" +"@babel/plugin-transform-object-super@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.7.4.tgz#48488937a2d586c0148451bf51af9d7dda567262" + integrity sha512-ho+dAEhC2aRnff2JCA0SAK7V2R62zJd/7dmtoe7MHcso4C2mS+vZjn1Pb1pCVZvJs1mgsvv5+7sT+m3Bysb6eg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-replace-supers" "^7.7.4" + "@babel/plugin-transform-parameters@^7.0.0", "@babel/plugin-transform-parameters@^7.4.4": version "7.4.4" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.4.4.tgz#7556cf03f318bd2719fe4c922d2d808be5571e16" @@ -672,6 +1178,15 @@ "@babel/helper-get-function-arity" "^7.0.0" "@babel/helper-plugin-utils" "^7.0.0" +"@babel/plugin-transform-parameters@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.7.4.tgz#da4555c97f39b51ac089d31c7380f03bca4075ce" + integrity sha512-VJwhVePWPa0DqE9vcfptaJSzNDKrWU/4FbYCjZERtmqEs05g3UMXnYMZoXja7JAJ7Y7sPZipwm/pGApZt7wHlw== + dependencies: + "@babel/helper-call-delegate" "^7.7.4" + "@babel/helper-get-function-arity" "^7.7.4" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-transform-property-literals@^7.0.0", "@babel/plugin-transform-property-literals@^7.2.0": version "7.2.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.2.0.tgz#03e33f653f5b25c4eb572c98b9485055b389e905" @@ -679,6 +1194,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" +"@babel/plugin-transform-property-literals@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.7.4.tgz#2388d6505ef89b266103f450f9167e6bd73f98c2" + integrity sha512-MatJhlC4iHsIskWYyawl53KuHrt+kALSADLQQ/HkhTjX954fkxIEh4q5slL4oRAnsm/eDoZ4q0CIZpcqBuxhJQ== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-transform-react-constant-elements@^7.0.0": version "7.6.3" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.6.3.tgz#9fc9ea060b983c7c035acbe481cbe1fb1245bfff" @@ -687,7 +1209,14 @@ "@babel/helper-annotate-as-pure" "^7.0.0" "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-react-display-name@7.2.0", "@babel/plugin-transform-react-display-name@^7.0.0": +"@babel/plugin-transform-react-display-name@7.7.4", "@babel/plugin-transform-react-display-name@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.7.4.tgz#9f2b80b14ebc97eef4a9b29b612c58ed9c0d10dd" + integrity sha512-sBbIvqYkthai0X0vkD2xsAwluBp+LtNHH+/V4a5ydifmTtb8KOVOlrMIk/MYmIc4uTYDnjZUHQildYNo36SRJw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-react-display-name@^7.0.0": version "7.2.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.2.0.tgz#ebfaed87834ce8dc4279609a4f0c324c156e3eb0" integrity sha512-Htf/tPa5haZvRMiNSQSFifK12gtr/8vwfr+A9y69uF0QcU77AVu4K7MiHEkTxF7lQoHOL0F9ErqgfNEAKgXj7A== @@ -702,6 +1231,14 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-syntax-jsx" "^7.2.0" +"@babel/plugin-transform-react-jsx-self@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.7.4.tgz#81b8fbfd14b2215e8f1c2c3adfba266127b0231c" + integrity sha512-PWYjSfqrO273mc1pKCRTIJXyqfc9vWYBax88yIhQb+bpw3XChVC7VWS4VwRVs63wFHKxizvGSd00XEr+YB9Q2A== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-jsx" "^7.7.4" + "@babel/plugin-transform-react-jsx-source@^7.0.0": version "7.5.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.5.0.tgz#583b10c49cf057e237085bcbd8cc960bd83bd96b" @@ -710,6 +1247,14 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-syntax-jsx" "^7.2.0" +"@babel/plugin-transform-react-jsx-source@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.7.4.tgz#8994b1bf6014b133f5a46d3b7d1ee5f5e3e72c10" + integrity sha512-5ZU9FnPhqtHsOXxutRtXZAzoEJwDaP32QcobbMP1/qt7NYcsCNK8XgzJcJfoEr/ZnzVvUNInNjIW22Z6I8p9mg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-jsx" "^7.7.4" + "@babel/plugin-transform-react-jsx@^7.0.0", "@babel/plugin-transform-react-jsx@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.7.0.tgz#834b0723ba78cd4d24d7d629300c2270f516d0b7" @@ -719,13 +1264,29 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-syntax-jsx" "^7.2.0" -"@babel/plugin-transform-regenerator@^7.4.5", "@babel/plugin-transform-regenerator@^7.7.0": +"@babel/plugin-transform-react-jsx@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.7.4.tgz#d91205717fae4e2f84d020cd3057ec02a10f11da" + integrity sha512-LixU4BS95ZTEAZdPaIuyg/k8FiiqN9laQ0dMHB4MlpydHY53uQdWCUrwjLr5o6ilS6fAgZey4Q14XBjl5tL6xw== + dependencies: + "@babel/helper-builder-react-jsx" "^7.7.4" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-jsx" "^7.7.4" + +"@babel/plugin-transform-regenerator@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.7.0.tgz#f1b20b535e7716b622c99e989259d7dd942dd9cc" integrity sha512-AXmvnC+0wuj/cFkkS/HFHIojxH3ffSXE+ttulrqWjZZRaUOonfJc60e1wSNT4rV8tIunvu/R3wCp71/tLAa9xg== dependencies: regenerator-transform "^0.14.0" +"@babel/plugin-transform-regenerator@^7.7.4": + version "7.7.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.7.5.tgz#3a8757ee1a2780f390e89f246065ecf59c26fce9" + integrity sha512-/8I8tPvX2FkuEyWbjRCt4qTAgZK0DVy8QRguhA524UH48RfGJy94On2ri+dCuwOpcerPRl9O4ebQkRcVzIaGBw== + dependencies: + regenerator-transform "^0.14.0" + "@babel/plugin-transform-reserved-words@^7.2.0": version "7.2.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.2.0.tgz#4792af87c998a49367597d07fedf02636d2e1634" @@ -733,12 +1294,19 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-runtime@7.6.0": - version "7.6.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.6.0.tgz#85a3cce402b28586138e368fce20ab3019b9713e" - integrity sha512-Da8tMf7uClzwUm/pnJ1S93m/aRXmoYNDD7TkHua8xBDdaAs54uZpTWvEt6NGwmoVMb9mZbntfTqmG2oSzN/7Vg== +"@babel/plugin-transform-reserved-words@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.7.4.tgz#6a7cf123ad175bb5c69aec8f6f0770387ed3f1eb" + integrity sha512-OrPiUB5s5XvkCO1lS7D8ZtHcswIC57j62acAnJZKqGGnHP+TIc/ljQSrgdX/QyOTdEK5COAhuc820Hi1q2UgLQ== dependencies: - "@babel/helper-module-imports" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-runtime@7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.7.4.tgz#51fe458c1c1fa98a8b07934f4ed38b6cd62177a6" + integrity sha512-O8kSkS5fP74Ad/8pfsCMGa8sBRdLxYoSReaARRNSz3FbFQj3z/QUvoUmJ28gn9BO93YfnXc3j+Xyaqe8cKDNBQ== + dependencies: + "@babel/helper-module-imports" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" resolve "^1.8.1" semver "^5.5.1" @@ -750,13 +1318,27 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-spread@^7.0.0", "@babel/plugin-transform-spread@^7.2.0", "@babel/plugin-transform-spread@^7.6.2": +"@babel/plugin-transform-shorthand-properties@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.7.4.tgz#74a0a9b2f6d67a684c6fbfd5f0458eb7ba99891e" + integrity sha512-q+suddWRfIcnyG5YiDP58sT65AJDZSUhXQDZE3r04AuqD6d/XLaQPPXSBzP2zGerkgBivqtQm9XKGLuHqBID6Q== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-spread@^7.0.0", "@babel/plugin-transform-spread@^7.6.2": version "7.6.2" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.6.2.tgz#fc77cf798b24b10c46e1b51b1b88c2bf661bb8dd" integrity sha512-DpSvPFryKdK1x+EDJYCy28nmAaIMdxmhot62jAXF/o99iA33Zj2Lmcp3vDmz+MUh0LNYVPvfj5iC3feb3/+PFg== dependencies: "@babel/helper-plugin-utils" "^7.0.0" +"@babel/plugin-transform-spread@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.7.4.tgz#aa673b356fe6b7e70d69b6e33a17fef641008578" + integrity sha512-8OSs0FLe5/80cndziPlg4R0K6HcWSM0zyNhHhLsmw/Nc5MaA49cAsnoJ/t/YZf8qkG7fD+UjTRaApVDB526d7Q== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-transform-sticky-regex@^7.2.0": version "7.2.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.2.0.tgz#a1e454b5995560a9c1e0d537dfc15061fd2687e1" @@ -765,6 +1347,14 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/helper-regex" "^7.0.0" +"@babel/plugin-transform-sticky-regex@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.7.4.tgz#ffb68c05090c30732076b1285dc1401b404a123c" + integrity sha512-Ls2NASyL6qtVe1H1hXts9yuEeONV2TJZmplLONkMPUG158CtmnrzW5Q5teibM5UVOFjG0D3IC5mzXR6pPpUY7A== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-regex" "^7.0.0" + "@babel/plugin-transform-template-literals@^7.0.0", "@babel/plugin-transform-template-literals@^7.4.4": version "7.4.4" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.4.4.tgz#9d28fea7bbce637fb7612a0750989d8321d4bcb0" @@ -773,6 +1363,14 @@ "@babel/helper-annotate-as-pure" "^7.0.0" "@babel/helper-plugin-utils" "^7.0.0" +"@babel/plugin-transform-template-literals@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.7.4.tgz#1eb6411736dd3fe87dbd20cc6668e5121c17d604" + integrity sha512-sA+KxLwF3QwGj5abMHkHgshp9+rRz+oY9uoRil4CyLtgEuE/88dpkeWgNk5qKVsJE9iSfly3nvHapdRiIS2wnQ== + dependencies: + "@babel/helper-annotate-as-pure" "^7.7.4" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-transform-typeof-symbol@^7.2.0": version "7.2.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.2.0.tgz#117d2bcec2fbf64b4b59d1f9819894682d29f2b2" @@ -780,16 +1378,23 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-transform-typescript@^7.6.0": - version "7.7.2" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.7.2.tgz#eb9f14c516b5d36f4d6f3a9d7badae6d0fc313d4" - integrity sha512-UWhDaJRqdPUtdK1s0sKYdoRuqK0NepjZto2UZltvuCgMoMZmdjhgz5hcRokie/3aYEaSz3xvusyoayVaq4PjRg== +"@babel/plugin-transform-typeof-symbol@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.7.4.tgz#3174626214f2d6de322882e498a38e8371b2140e" + integrity sha512-KQPUQ/7mqe2m0B8VecdyaW5XcQYaePyl9R7IsKd+irzj6jvbhoGnRE+M0aNkyAzI07VfUQ9266L5xMARitV3wg== dependencies: - "@babel/helper-create-class-features-plugin" "^7.7.0" "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-typescript" "^7.2.0" -"@babel/plugin-transform-unicode-regex@^7.4.4", "@babel/plugin-transform-unicode-regex@^7.7.0": +"@babel/plugin-transform-typescript@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.7.4.tgz#2974fd05f4e85c695acaf497f432342de9fc0636" + integrity sha512-X8e3tcPEKnwwPVG+vP/vSqEShkwODOEeyQGod82qrIuidwIrfnsGn11qPM1jBLF4MqguTXXYzm58d0dY+/wdpg== + dependencies: + "@babel/helper-create-class-features-plugin" "^7.7.4" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-typescript" "^7.7.4" + +"@babel/plugin-transform-unicode-regex@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.7.0.tgz#743d9bcc44080e3cc7d49259a066efa30f9187a3" integrity sha512-RrThb0gdrNwFAqEAAx9OWgtx6ICK69x7i9tCnMdVrxQwSDp/Abu9DXFU5Hh16VP33Rmxh04+NGW28NsIkFvFKA== @@ -797,56 +1402,65 @@ "@babel/helper-create-regexp-features-plugin" "^7.7.0" "@babel/helper-plugin-utils" "^7.0.0" -"@babel/preset-env@7.6.0": - version "7.6.0" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.6.0.tgz#aae4141c506100bb2bfaa4ac2a5c12b395619e50" - integrity sha512-1efzxFv/TcPsNXlRhMzRnkBFMeIqBBgzwmZwlFDw5Ubj0AGLeufxugirwZmkkX/ayi3owsSqoQ4fw8LkfK9SYg== +"@babel/plugin-transform-unicode-regex@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.7.4.tgz#a3c0f65b117c4c81c5b6484f2a5e7b95346b83ae" + integrity sha512-N77UUIV+WCvE+5yHw+oks3m18/umd7y392Zv7mYTpFqHtkpcc+QUz+gLJNTWVlWROIWeLqY0f3OjZxV5TcXnRw== dependencies: - "@babel/helper-module-imports" "^7.0.0" + "@babel/helper-create-regexp-features-plugin" "^7.7.4" "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-proposal-async-generator-functions" "^7.2.0" - "@babel/plugin-proposal-dynamic-import" "^7.5.0" - "@babel/plugin-proposal-json-strings" "^7.2.0" - "@babel/plugin-proposal-object-rest-spread" "^7.5.5" - "@babel/plugin-proposal-optional-catch-binding" "^7.2.0" - "@babel/plugin-proposal-unicode-property-regex" "^7.4.4" - "@babel/plugin-syntax-async-generators" "^7.2.0" - "@babel/plugin-syntax-dynamic-import" "^7.2.0" - "@babel/plugin-syntax-json-strings" "^7.2.0" - "@babel/plugin-syntax-object-rest-spread" "^7.2.0" - "@babel/plugin-syntax-optional-catch-binding" "^7.2.0" - "@babel/plugin-transform-arrow-functions" "^7.2.0" - "@babel/plugin-transform-async-to-generator" "^7.5.0" - "@babel/plugin-transform-block-scoped-functions" "^7.2.0" - "@babel/plugin-transform-block-scoping" "^7.6.0" - "@babel/plugin-transform-classes" "^7.5.5" - "@babel/plugin-transform-computed-properties" "^7.2.0" - "@babel/plugin-transform-destructuring" "^7.6.0" - "@babel/plugin-transform-dotall-regex" "^7.4.4" - "@babel/plugin-transform-duplicate-keys" "^7.5.0" - "@babel/plugin-transform-exponentiation-operator" "^7.2.0" - "@babel/plugin-transform-for-of" "^7.4.4" - "@babel/plugin-transform-function-name" "^7.4.4" - "@babel/plugin-transform-literals" "^7.2.0" - "@babel/plugin-transform-member-expression-literals" "^7.2.0" - "@babel/plugin-transform-modules-amd" "^7.5.0" - "@babel/plugin-transform-modules-commonjs" "^7.6.0" - "@babel/plugin-transform-modules-systemjs" "^7.5.0" - "@babel/plugin-transform-modules-umd" "^7.2.0" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.6.0" - "@babel/plugin-transform-new-target" "^7.4.4" - "@babel/plugin-transform-object-super" "^7.5.5" - "@babel/plugin-transform-parameters" "^7.4.4" - "@babel/plugin-transform-property-literals" "^7.2.0" - "@babel/plugin-transform-regenerator" "^7.4.5" - "@babel/plugin-transform-reserved-words" "^7.2.0" - "@babel/plugin-transform-shorthand-properties" "^7.2.0" - "@babel/plugin-transform-spread" "^7.2.0" - "@babel/plugin-transform-sticky-regex" "^7.2.0" - "@babel/plugin-transform-template-literals" "^7.4.4" - "@babel/plugin-transform-typeof-symbol" "^7.2.0" - "@babel/plugin-transform-unicode-regex" "^7.4.4" - "@babel/types" "^7.6.0" + +"@babel/preset-env@7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.7.4.tgz#ccaf309ae8d1ee2409c85a4e2b5e280ceee830f8" + integrity sha512-Dg+ciGJjwvC1NIe/DGblMbcGq1HOtKbw8RLl4nIjlfcILKEOkWT/vRqPpumswABEBVudii6dnVwrBtzD7ibm4g== + dependencies: + "@babel/helper-module-imports" "^7.7.4" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-proposal-async-generator-functions" "^7.7.4" + "@babel/plugin-proposal-dynamic-import" "^7.7.4" + "@babel/plugin-proposal-json-strings" "^7.7.4" + "@babel/plugin-proposal-object-rest-spread" "^7.7.4" + "@babel/plugin-proposal-optional-catch-binding" "^7.7.4" + "@babel/plugin-proposal-unicode-property-regex" "^7.7.4" + "@babel/plugin-syntax-async-generators" "^7.7.4" + "@babel/plugin-syntax-dynamic-import" "^7.7.4" + "@babel/plugin-syntax-json-strings" "^7.7.4" + "@babel/plugin-syntax-object-rest-spread" "^7.7.4" + "@babel/plugin-syntax-optional-catch-binding" "^7.7.4" + "@babel/plugin-syntax-top-level-await" "^7.7.4" + "@babel/plugin-transform-arrow-functions" "^7.7.4" + "@babel/plugin-transform-async-to-generator" "^7.7.4" + "@babel/plugin-transform-block-scoped-functions" "^7.7.4" + "@babel/plugin-transform-block-scoping" "^7.7.4" + "@babel/plugin-transform-classes" "^7.7.4" + "@babel/plugin-transform-computed-properties" "^7.7.4" + "@babel/plugin-transform-destructuring" "^7.7.4" + "@babel/plugin-transform-dotall-regex" "^7.7.4" + "@babel/plugin-transform-duplicate-keys" "^7.7.4" + "@babel/plugin-transform-exponentiation-operator" "^7.7.4" + "@babel/plugin-transform-for-of" "^7.7.4" + "@babel/plugin-transform-function-name" "^7.7.4" + "@babel/plugin-transform-literals" "^7.7.4" + "@babel/plugin-transform-member-expression-literals" "^7.7.4" + "@babel/plugin-transform-modules-amd" "^7.7.4" + "@babel/plugin-transform-modules-commonjs" "^7.7.4" + "@babel/plugin-transform-modules-systemjs" "^7.7.4" + "@babel/plugin-transform-modules-umd" "^7.7.4" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.7.4" + "@babel/plugin-transform-new-target" "^7.7.4" + "@babel/plugin-transform-object-super" "^7.7.4" + "@babel/plugin-transform-parameters" "^7.7.4" + "@babel/plugin-transform-property-literals" "^7.7.4" + "@babel/plugin-transform-regenerator" "^7.7.4" + "@babel/plugin-transform-reserved-words" "^7.7.4" + "@babel/plugin-transform-shorthand-properties" "^7.7.4" + "@babel/plugin-transform-spread" "^7.7.4" + "@babel/plugin-transform-sticky-regex" "^7.7.4" + "@babel/plugin-transform-template-literals" "^7.7.4" + "@babel/plugin-transform-typeof-symbol" "^7.7.4" + "@babel/plugin-transform-unicode-regex" "^7.7.4" + "@babel/types" "^7.7.4" browserslist "^4.6.0" core-js-compat "^3.1.1" invariant "^2.2.2" @@ -910,16 +1524,16 @@ js-levenshtein "^1.1.3" semver "^5.5.0" -"@babel/preset-react@7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.0.0.tgz#e86b4b3d99433c7b3e9e91747e2653958bc6b3c0" - integrity sha512-oayxyPS4Zj+hF6Et11BwuBkmpgT/zMxyuZgFrMeZID6Hdh3dGlk4sHCAhdBCpuCKW2ppBfl2uCCetlrUIJRY3w== +"@babel/preset-react@7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.7.4.tgz#3fe2ea698d8fb536d8e7881a592c3c1ee8bf5707" + integrity sha512-j+vZtg0/8pQr1H8wKoaJyGL2IEk3rG/GIvua7Sec7meXVIvGycihlGMx5xcU00kqCJbwzHs18xTu3YfREOqQ+g== dependencies: "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-transform-react-display-name" "^7.0.0" - "@babel/plugin-transform-react-jsx" "^7.0.0" - "@babel/plugin-transform-react-jsx-self" "^7.0.0" - "@babel/plugin-transform-react-jsx-source" "^7.0.0" + "@babel/plugin-transform-react-display-name" "^7.7.4" + "@babel/plugin-transform-react-jsx" "^7.7.4" + "@babel/plugin-transform-react-jsx-self" "^7.7.4" + "@babel/plugin-transform-react-jsx-source" "^7.7.4" "@babel/preset-react@^7.0.0": version "7.7.0" @@ -932,29 +1546,36 @@ "@babel/plugin-transform-react-jsx-self" "^7.0.0" "@babel/plugin-transform-react-jsx-source" "^7.0.0" -"@babel/preset-typescript@7.6.0": - version "7.6.0" - resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.6.0.tgz#25768cb8830280baf47c45ab1a519a9977498c98" - integrity sha512-4xKw3tTcCm0qApyT6PqM9qniseCE79xGHiUnNdKGdxNsGUc2X7WwZybqIpnTmoukg3nhPceI5KPNzNqLNeIJww== +"@babel/preset-typescript@7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.7.4.tgz#780059a78e6fa7f7a4c87f027292a86b31ce080a" + integrity sha512-rqrjxfdiHPsnuPur0jKrIIGQCIgoTWMTjlbWE69G4QJ6TIOVnnRnIJhUxNTL/VwDmEAVX08Tq3B1nirer5341w== dependencies: "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-transform-typescript" "^7.6.0" + "@babel/plugin-transform-typescript" "^7.7.4" -"@babel/runtime@7.6.0": - version "7.6.0" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.6.0.tgz#4fc1d642a9fd0299754e8b5de62c631cf5568205" - integrity sha512-89eSBLJsxNxOERC0Op4vd+0Bqm6wRMqMbFtV3i0/fbaWw/mJ8Q3eBvgX0G4SyrOOLCtbu98HspF8o09MRT+KzQ== +"@babel/runtime@7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.7.4.tgz#b23a856751e4bf099262f867767889c0e3fe175b" + integrity sha512-r24eVUUr0QqNZa+qrImUk8fn5SPhHq+IfYvIoIMg0do3GdK9sMdiLKP3GYVVaxpPKORgm8KRKaNTEhAjgIpLMw== dependencies: regenerator-runtime "^0.13.2" -"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.3.1", "@babel/runtime@^7.3.4", "@babel/runtime@^7.4.0", "@babel/runtime@^7.4.2", "@babel/runtime@^7.4.4", "@babel/runtime@^7.4.5", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.2", "@babel/runtime@^7.6.3": +"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.3.1", "@babel/runtime@^7.3.4", "@babel/runtime@^7.4.0", "@babel/runtime@^7.4.4", "@babel/runtime@^7.4.5", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.2", "@babel/runtime@^7.6.3": version "7.7.2" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.7.2.tgz#111a78002a5c25fc8e3361bedc9529c696b85a6a" integrity sha512-JONRbXbTXc9WQE2mAZd1p0Z3DZ/6vaQIkgYMSTP3KjRCyd7rCZCcfhCyX+YjwcKxcZ82UrxbRD358bpExNgrjw== dependencies: regenerator-runtime "^0.13.2" -"@babel/template@^7.4.0", "@babel/template@^7.6.0", "@babel/template@^7.7.0": +"@babel/runtime@^7.7.2": + version "7.7.6" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.7.6.tgz#d18c511121aff1b4f2cd1d452f1bac9601dd830f" + integrity sha512-BWAJxpNVa0QlE5gZdWjSxXtemZyZ9RmrmVozxt3NUXeZhVIJ5ANyqmMc0JDrivBZyxUuQvFxlvH4OWWOogGfUw== + dependencies: + regenerator-runtime "^0.13.2" + +"@babel/template@^7.4.0", "@babel/template@^7.7.0": version "7.7.0" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.7.0.tgz#4fadc1b8e734d97f56de39c77de76f2562e597d0" integrity sha512-OKcwSYOW1mhWbnTBgQY5lvg1Fxg+VyfQGjcBduZFljfc044J5iDlnDSfhQ867O17XHiSCxYHUxHg2b7ryitbUQ== @@ -963,7 +1584,16 @@ "@babel/parser" "^7.7.0" "@babel/types" "^7.7.0" -"@babel/traverse@^7.0.0", "@babel/traverse@^7.1.0", "@babel/traverse@^7.4.3", "@babel/traverse@^7.4.4", "@babel/traverse@^7.6.0", "@babel/traverse@^7.7.0", "@babel/traverse@^7.7.2": +"@babel/template@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.7.4.tgz#428a7d9eecffe27deac0a98e23bf8e3675d2a77b" + integrity sha512-qUzihgVPguAzXCK7WXw8pqs6cEwi54s3E+HrejlkuWO6ivMKx9hZl3Y2fSXp9i5HgyWmj7RKP+ulaYnKM4yYxw== + dependencies: + "@babel/code-frame" "^7.0.0" + "@babel/parser" "^7.7.4" + "@babel/types" "^7.7.4" + +"@babel/traverse@^7.0.0", "@babel/traverse@^7.1.0", "@babel/traverse@^7.4.3", "@babel/traverse@^7.4.4", "@babel/traverse@^7.7.0", "@babel/traverse@^7.7.2": version "7.7.2" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.7.2.tgz#ef0a65e07a2f3c550967366b3d9b62a2dcbeae09" integrity sha512-TM01cXib2+rgIZrGJOLaHV/iZUAxf4A0dt5auY6KNZ+cm6aschuJGqKJM3ROTt3raPUdIDk9siAufIFEleRwtw== @@ -978,7 +1608,22 @@ globals "^11.1.0" lodash "^4.17.13" -"@babel/types@^7.0.0", "@babel/types@^7.3.0", "@babel/types@^7.4.0", "@babel/types@^7.4.4", "@babel/types@^7.6.0", "@babel/types@^7.7.0", "@babel/types@^7.7.1", "@babel/types@^7.7.2": +"@babel/traverse@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.7.4.tgz#9c1e7c60fb679fe4fcfaa42500833333c2058558" + integrity sha512-P1L58hQyupn8+ezVA2z5KBm4/Zr4lCC8dwKCMYzsa5jFMDMQAzaBNy9W5VjB+KAmBjb40U7a/H6ao+Xo+9saIw== + dependencies: + "@babel/code-frame" "^7.5.5" + "@babel/generator" "^7.7.4" + "@babel/helper-function-name" "^7.7.4" + "@babel/helper-split-export-declaration" "^7.7.4" + "@babel/parser" "^7.7.4" + "@babel/types" "^7.7.4" + debug "^4.1.0" + globals "^11.1.0" + lodash "^4.17.13" + +"@babel/types@^7.0.0", "@babel/types@^7.3.0", "@babel/types@^7.4.0", "@babel/types@^7.4.4", "@babel/types@^7.7.0", "@babel/types@^7.7.1", "@babel/types@^7.7.2": version "7.7.2" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.7.2.tgz#550b82e5571dcd174af576e23f0adba7ffc683f7" integrity sha512-YTf6PXoh3+eZgRCBzzP25Bugd2ngmpQVrk7kXX0i5N9BO7TFBtIgZYs7WtxtOGs8e6A4ZI7ECkbBCEHeXocvOA== @@ -987,6 +1632,15 @@ lodash "^4.17.13" to-fast-properties "^2.0.0" +"@babel/types@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.7.4.tgz#516570d539e44ddf308c07569c258ff94fde9193" + integrity sha512-cz5Ji23KCi4T+YIE/BolWosrJuSmoZeN1EFnRtBwF+KKLi8GG/Z2c2hOJJeCXPk4mwk4QFvTmwIodJowXgttRA== + dependencies: + esutils "^2.0.2" + lodash "^4.17.13" + to-fast-properties "^2.0.0" + "@cnakazawa/watch@^1.0.3": version "1.0.3" resolved "https://registry.yarnpkg.com/@cnakazawa/watch/-/watch-1.0.3.tgz#099139eaec7ebf07a27c1786a3ff64f39464d2ef" @@ -1000,10 +1654,10 @@ resolved "https://registry.yarnpkg.com/@csstools/convert-colors/-/convert-colors-1.4.0.tgz#ad495dc41b12e75d588c6db8b9834f08fa131eb7" integrity sha512-5a6wqoJV/xEdbRNKVo6I4hO3VjyDq//8q2f9I6PBAvMesJHFauXDorcNCsr9RzvsZnaWi5NYCcfyqP1QeFHFbw== -"@csstools/normalize.css@^9.0.1": - version "9.0.1" - resolved "https://registry.yarnpkg.com/@csstools/normalize.css/-/normalize.css-9.0.1.tgz#c27b391d8457d1e893f1eddeaf5e5412d12ffbb5" - integrity sha512-6It2EVfGskxZCQhuykrfnALg7oVeiI6KclWSmGDqB0AiInVrTGB9Jp9i4/Ad21u9Jde/voVQz6eFX/eSg/UsPA== +"@csstools/normalize.css@^10.1.0": + version "10.1.0" + resolved "https://registry.yarnpkg.com/@csstools/normalize.css/-/normalize.css-10.1.0.tgz#f0950bba18819512d42f7197e56c518aa491cf18" + integrity sha512-ij4wRiunFfaJxjB0BdrYHIH8FxBJpOwNPhhAcunlmPdXudL1WQV1qoP9un6JsEBAgQH+7UXyyjh0g7jTxXK6tg== "@emotion/hash@^0.7.1": version "0.7.3" @@ -2596,7 +3250,7 @@ "@svgr/babel-plugin-transform-react-native-svg" "^4.2.0" "@svgr/babel-plugin-transform-svg-component" "^4.2.0" -"@svgr/core@^4.3.2": +"@svgr/core@^4.3.3": version "4.3.3" resolved "https://registry.yarnpkg.com/@svgr/core/-/core-4.3.3.tgz#b37b89d5b757dc66e8c74156d00c368338d24293" integrity sha512-qNuGF1QON1626UCaZamWt5yedpgOytvLj5BQZe2j1k1B8DUG4OyugZyfEwBeXozCUwhLEpsrgPrE+eCu4fY17w== @@ -2612,7 +3266,7 @@ dependencies: "@babel/types" "^7.4.4" -"@svgr/plugin-jsx@^4.3.2", "@svgr/plugin-jsx@^4.3.3": +"@svgr/plugin-jsx@^4.3.3": version "4.3.3" resolved "https://registry.yarnpkg.com/@svgr/plugin-jsx/-/plugin-jsx-4.3.3.tgz#e2ba913dbdfbe85252a34db101abc7ebd50992fa" integrity sha512-cLOCSpNWQnDB1/v+SUENHH7a0XY09bfuMKdq9+gYvtuwzC2rU4I0wKGFEp1i24holdQdwodCtDQdFtJiTCWc+w== @@ -2631,17 +3285,17 @@ merge-deep "^3.0.2" svgo "^1.2.2" -"@svgr/webpack@4.3.2": - version "4.3.2" - resolved "https://registry.yarnpkg.com/@svgr/webpack/-/webpack-4.3.2.tgz#319d4471c8f3d5c3af35059274834d9b5b8fb956" - integrity sha512-F3VE5OvyOWBEd2bF7BdtFRyI6E9it3mN7teDw0JQTlVtc4HZEYiiLSl+Uf9Uub6IYHVGc+qIrxxDyeedkQru2w== +"@svgr/webpack@4.3.3": + version "4.3.3" + resolved "https://registry.yarnpkg.com/@svgr/webpack/-/webpack-4.3.3.tgz#13cc2423bf3dff2d494f16b17eb7eacb86895017" + integrity sha512-bjnWolZ6KVsHhgyCoYRFmbd26p8XVbulCzSG53BDQqAr+JOAderYK7CuYrB3bDjHJuF6LJ7Wrr42+goLRV9qIg== dependencies: "@babel/core" "^7.4.5" "@babel/plugin-transform-react-constant-elements" "^7.0.0" "@babel/preset-env" "^7.4.5" "@babel/preset-react" "^7.0.0" - "@svgr/core" "^4.3.2" - "@svgr/plugin-jsx" "^4.3.2" + "@svgr/core" "^4.3.3" + "@svgr/plugin-jsx" "^4.3.3" "@svgr/plugin-svgo" "^4.3.1" loader-utils "^1.2.3" @@ -2967,11 +3621,21 @@ dependencies: "@types/node" "*" -"@types/node@*", "@types/node@12.12.7", "@types/node@12.7.4", "@types/node@>= 8", "@types/node@>=6", "@types/node@^10.1.0": +"@types/node@*", "@types/node@12.12.7", "@types/node@>= 8", "@types/node@>=6": version "12.12.7" resolved "https://registry.yarnpkg.com/@types/node/-/node-12.12.7.tgz#01e4ea724d9e3bd50d90c11fd5980ba317d8fa11" integrity sha512-E6Zn0rffhgd130zbCbAr/JdXfXkoOUFAKNs/rF8qnafSJ8KYaA/j3oz7dcwal+lYjLA7xvdd5J4wdYpCTlP8+w== +"@types/node@12.7.4": + version "12.7.4" + resolved "https://registry.yarnpkg.com/@types/node/-/node-12.7.4.tgz#64db61e0359eb5a8d99b55e05c729f130a678b04" + integrity sha512-W0+n1Y+gK/8G2P/piTkBBN38Qc5Q1ZSO6B5H3QmPCUewaiXOo2GCAWZ4ElZCcNhjJuBSUSLGFUJnmlCn5+nxOQ== + +"@types/node@^10.1.0": + version "10.17.9" + resolved "https://registry.yarnpkg.com/@types/node/-/node-10.17.9.tgz#4f251a1ed77ac7ef09d456247d67fc8173f6b9da" + integrity sha512-+6VygF9LbG7Gaqeog2G7u1+RUcmo0q1rI+2ZxdIg2fAUngk5Vz9fOCHXdloNUOHEPd1EuuOpL5O0CdgN9Fx5UQ== + "@types/normalize-package-data@^2.4.0": version "2.4.0" resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz#e486d0d97396d79beedd0a6e33f4534ff6b4973e" @@ -2984,6 +3648,11 @@ dependencies: "@types/node" "*" +"@types/parse-json@^4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" + integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== + "@types/prop-types@*": version "15.7.3" resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.3.tgz#2ab0d5da2e5815f94b0b9d4b95d1e5f243ab2ca7" @@ -3143,7 +3812,7 @@ resolved "https://registry.yarnpkg.com/@types/zen-observable/-/zen-observable-0.8.0.tgz#8b63ab7f1aa5321248aad5ac890a485656dcea4d" integrity sha512-te5lMAWii1uEJ4FwLjzdlbw3+n0FZNOvFXHxQDKeT0dilh7HOzdMzV2TrJVUzq8ep7J4Na8OUYPRLSQkJHAlrg== -"@typescript-eslint/eslint-plugin@2.11.0": +"@typescript-eslint/eslint-plugin@2.11.0", "@typescript-eslint/eslint-plugin@^2.8.0": version "2.11.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-2.11.0.tgz#4477c33491ccf0a9a3f4a30ef84978fa0ea0cad2" integrity sha512-G2HHA1vpMN0EEbUuWubiCCfd0R3a30BB+UdvnFkxwZIxYEGOrWEXDv8tBFO9f44CWc47Xv9lLM3VSn4ORLI2bA== @@ -3154,17 +3823,6 @@ regexpp "^3.0.0" tsutils "^3.17.1" -"@typescript-eslint/eslint-plugin@^2.2.0": - version "2.7.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-2.7.0.tgz#dff176bdb73dfd7e2e43062452189bd1b9db6021" - integrity sha512-H5G7yi0b0FgmqaEUpzyBlVh0d9lq4cWG2ap0RKa6BkF3rpBb6IrAoubt1NWh9R2kRs/f0k6XwRDiDz3X/FqXhQ== - dependencies: - "@typescript-eslint/experimental-utils" "2.7.0" - eslint-utils "^1.4.2" - functional-red-black-tree "^1.0.1" - regexpp "^2.0.1" - tsutils "^3.17.1" - "@typescript-eslint/experimental-utils@2.11.0": version "2.11.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-2.11.0.tgz#cef18e6b122706c65248a5d8984a9779ed1e52ac" @@ -3174,7 +3832,7 @@ "@typescript-eslint/typescript-estree" "2.11.0" eslint-scope "^5.0.0" -"@typescript-eslint/experimental-utils@2.7.0", "@typescript-eslint/experimental-utils@^2.5.0": +"@typescript-eslint/experimental-utils@^2.5.0": version "2.7.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-2.7.0.tgz#58d790a3884df3041b5a5e08f9e5e6b7c41864b5" integrity sha512-9/L/OJh2a5G2ltgBWJpHRfGnt61AgDeH6rsdg59BH0naQseSwR7abwHq3D5/op0KYD/zFT4LS5gGvWcMmegTEg== @@ -3183,7 +3841,7 @@ "@typescript-eslint/typescript-estree" "2.7.0" eslint-scope "^5.0.0" -"@typescript-eslint/parser@2.11.0": +"@typescript-eslint/parser@2.11.0", "@typescript-eslint/parser@^2.8.0": version "2.11.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-2.11.0.tgz#cdcc3be73ee31cbef089af5ff97ccaa380ef6e8b" integrity sha512-DyGXeqhb3moMioEFZIHIp7oXBBh7dEfPTzGrlyP0Mi9ScCra4SWEGs3kPd18mG7Sy9Wy8z88zmrw5tSGL6r/6A== @@ -3193,16 +3851,6 @@ "@typescript-eslint/typescript-estree" "2.11.0" eslint-visitor-keys "^1.1.0" -"@typescript-eslint/parser@^2.2.0": - version "2.7.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-2.7.0.tgz#b5e6a4944e2b68dba1e7fbfd5242e09ff552fd12" - integrity sha512-ctC0g0ZvYclxMh/xI+tyqP0EC2fAo6KicN9Wm2EIao+8OppLfxji7KAGJosQHSGBj3TcqUrA96AjgXuKa5ob2g== - dependencies: - "@types/eslint-visitor-keys" "^1.0.0" - "@typescript-eslint/experimental-utils" "2.7.0" - "@typescript-eslint/typescript-estree" "2.7.0" - eslint-visitor-keys "^1.1.0" - "@typescript-eslint/typescript-estree@2.11.0": version "2.11.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-2.11.0.tgz#21ada6504274cd1644855926312c798fc697e9fb" @@ -4243,19 +4891,19 @@ babel-plugin-jest-hoist@^24.9.0: dependencies: "@types/babel__traverse" "^7.0.6" -babel-plugin-macros@2.6.1: - version "2.6.1" - resolved "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-2.6.1.tgz#41f7ead616fc36f6a93180e89697f69f51671181" - integrity sha512-6W2nwiXme6j1n2erPOnmRiWfObUhWH7Qw1LMi9XZy8cj+KtESu3T6asZvtk5bMQQjX8te35o7CFueiSdL/2NmQ== +babel-plugin-macros@2.7.1: + version "2.7.1" + resolved "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-2.7.1.tgz#ee294383c1a38f9d6535be3d89734824cb3ed415" + integrity sha512-HNM284amlKSQ6FddI4jLXD+XTqF0cTYOe5uemOIZxHJHnamC+OhFQ57rMF9sgnYhkJQptVl9U1SKVZsV9/GLQQ== dependencies: - "@babel/runtime" "^7.4.2" - cosmiconfig "^5.2.0" - resolve "^1.10.0" + "@babel/runtime" "^7.7.2" + cosmiconfig "^6.0.0" + resolve "^1.12.0" -babel-plugin-named-asset-import@^0.3.4: - version "0.3.4" - resolved "https://registry.yarnpkg.com/babel-plugin-named-asset-import/-/babel-plugin-named-asset-import-0.3.4.tgz#4a8fc30e9a3e2b1f5ed36883386ab2d84e1089bd" - integrity sha512-S6d+tEzc5Af1tKIMbsf2QirCcPdQ+mKUCY2H1nJj1DyA1ShwpsoxEOAwbWsG5gcXNV/olpvQd9vrUWRx4bnhpw== +babel-plugin-named-asset-import@^0.3.5: + version "0.3.5" + resolved "https://registry.yarnpkg.com/babel-plugin-named-asset-import/-/babel-plugin-named-asset-import-0.3.5.tgz#d3fa1a7f1f4babd4ed0785b75e2f926df0d70d0d" + integrity sha512-sGhfINU+AuMw9oFAdIn/nD5sem3pn/WgxAfDZ//Q3CnF+5uaho7C7shh2rKLk6sKE/XkfmyibghocwKdVjLIKg== babel-plugin-syntax-object-rest-spread@^6.8.0: version "6.13.0" @@ -4330,26 +4978,29 @@ babel-preset-jest@^24.9.0: "@babel/plugin-syntax-object-rest-spread" "^7.0.0" babel-plugin-jest-hoist "^24.9.0" -babel-preset-react-app@^9.0.2: - version "9.0.2" - resolved "https://registry.yarnpkg.com/babel-preset-react-app/-/babel-preset-react-app-9.0.2.tgz#247d37e883d6d6f4b4691e5f23711bb2dd80567d" - integrity sha512-aXD+CTH8Chn8sNJr4tO/trWKqe5sSE4hdO76j9fhVezJSzmpWYWUSc5JoPmdSxADwef5kQFNGKXd433vvkd2VQ== - dependencies: - "@babel/core" "7.6.0" - "@babel/plugin-proposal-class-properties" "7.5.5" - "@babel/plugin-proposal-decorators" "7.6.0" - "@babel/plugin-proposal-object-rest-spread" "7.5.5" - "@babel/plugin-syntax-dynamic-import" "7.2.0" - "@babel/plugin-transform-destructuring" "7.6.0" - "@babel/plugin-transform-flow-strip-types" "7.4.4" - "@babel/plugin-transform-react-display-name" "7.2.0" - "@babel/plugin-transform-runtime" "7.6.0" - "@babel/preset-env" "7.6.0" - "@babel/preset-react" "7.0.0" - "@babel/preset-typescript" "7.6.0" - "@babel/runtime" "7.6.0" +babel-preset-react-app@^9.1.0: + version "9.1.0" + resolved "https://registry.yarnpkg.com/babel-preset-react-app/-/babel-preset-react-app-9.1.0.tgz#74c644d809f098d4b131646730c7bed0696084ca" + integrity sha512-0qMOv/pCcCQWxX1eNyKD9GlzZTdzZIK/Pq3O6TGe65tZSJTSplw1pFlaPujm0GjBj4g3GeCQbP08vvzlH7OGHg== + dependencies: + "@babel/core" "7.7.4" + "@babel/plugin-proposal-class-properties" "7.7.4" + "@babel/plugin-proposal-decorators" "7.7.4" + "@babel/plugin-proposal-nullish-coalescing-operator" "7.7.4" + "@babel/plugin-proposal-numeric-separator" "7.7.4" + "@babel/plugin-proposal-object-rest-spread" "7.7.4" + "@babel/plugin-proposal-optional-chaining" "7.7.4" + "@babel/plugin-syntax-dynamic-import" "7.7.4" + "@babel/plugin-transform-destructuring" "7.7.4" + "@babel/plugin-transform-flow-strip-types" "7.7.4" + "@babel/plugin-transform-react-display-name" "7.7.4" + "@babel/plugin-transform-runtime" "7.7.4" + "@babel/preset-env" "7.7.4" + "@babel/preset-react" "7.7.4" + "@babel/preset-typescript" "7.7.4" + "@babel/runtime" "7.7.4" babel-plugin-dynamic-import-node "2.3.0" - babel-plugin-macros "2.6.1" + babel-plugin-macros "2.7.1" babel-plugin-transform-react-remove-prop-types "0.4.24" babel-runtime@^6.22.0, babel-runtime@^6.26.0: @@ -4612,16 +5263,16 @@ browserify-zlib@^0.2.0: dependencies: pako "~1.0.5" -browserslist@4.7.0: - version "4.7.0" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.7.0.tgz#9ee89225ffc07db03409f2fee524dc8227458a17" - integrity sha512-9rGNDtnj+HaahxiVV38Gn8n8Lr8REKsel68v1sPFfIGEK6uSXTY3h9acgiT1dZVtOOUtifo/Dn8daDQ5dUgVsA== +browserslist@4.7.3: + version "4.7.3" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.7.3.tgz#02341f162b6bcc1e1028e30624815d4924442dc3" + integrity sha512-jWvmhqYpx+9EZm/FxcZSbUZyDEvDTLDi3nSAKbzEkyWvtI0mNSmUosey+5awDW1RUlrgXbQb5A6qY1xQH9U6MQ== dependencies: - caniuse-lite "^1.0.30000989" - electron-to-chromium "^1.3.247" - node-releases "^1.1.29" + caniuse-lite "^1.0.30001010" + electron-to-chromium "^1.3.306" + node-releases "^1.1.40" -browserslist@^4.0.0, browserslist@^4.1.1, browserslist@^4.6.0, browserslist@^4.6.4, browserslist@^4.7.2: +browserslist@^4.0.0, browserslist@^4.6.0, browserslist@^4.6.4, browserslist@^4.7.2: version "4.7.2" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.7.2.tgz#1bb984531a476b5d389cedecb195b2cd69fb1348" integrity sha512-uZavT/gZXJd2UTi9Ov7/Z340WOSQ3+m1iBVRUknf+okKxonL9P83S3ctiBDtuRmRu8PiCHjqyueqQ9HYlJhxiw== @@ -4630,6 +5281,15 @@ browserslist@^4.0.0, browserslist@^4.1.1, browserslist@^4.6.0, browserslist@^4.6 electron-to-chromium "^1.3.295" node-releases "^1.1.38" +browserslist@^4.6.2: + version "4.8.2" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.8.2.tgz#b45720ad5fbc8713b7253c20766f701c9a694289" + integrity sha512-+M4oeaTplPm/f1pXDw84YohEv7B1i/2Aisei8s4s6k3QsoSHa7i5sz8u/cGQkkatCPxMASKxPualR4wwYgVboA== + dependencies: + caniuse-lite "^1.0.30001015" + electron-to-chromium "^1.3.322" + node-releases "^1.1.42" + bs-logger@0.x: version "0.2.6" resolved "https://registry.yarnpkg.com/bs-logger/-/bs-logger-0.2.6.tgz#eb7d365307a72cf974cc6cda76b68354ad336bd8" @@ -4754,6 +5414,30 @@ cacache@^12.0.0, cacache@^12.0.2, cacache@^12.0.3: unique-filename "^1.1.1" y18n "^4.0.0" +cacache@^13.0.1: + version "13.0.1" + resolved "https://registry.yarnpkg.com/cacache/-/cacache-13.0.1.tgz#a8000c21697089082f85287a1aec6e382024a71c" + integrity sha512-5ZvAxd05HDDU+y9BVvcqYu2LLXmPnQ0hW62h32g4xBTgL/MppR4/04NHfj/ycM2y6lmTnbw6HVi+1eN0Psba6w== + dependencies: + chownr "^1.1.2" + figgy-pudding "^3.5.1" + fs-minipass "^2.0.0" + glob "^7.1.4" + graceful-fs "^4.2.2" + infer-owner "^1.0.4" + lru-cache "^5.1.1" + minipass "^3.0.0" + minipass-collect "^1.0.2" + minipass-flush "^1.0.5" + minipass-pipeline "^1.2.2" + mkdirp "^0.5.1" + move-concurrently "^1.0.1" + p-map "^3.0.0" + promise-inflight "^1.0.1" + rimraf "^2.7.1" + ssri "^7.0.0" + unique-filename "^1.1.1" + cache-base@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" @@ -4828,6 +5512,11 @@ camelcase@5.0.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.0.0.tgz#03295527d58bd3cd4aa75363f35b2e8d97be2f42" integrity sha512-faqwZqnWxbxn+F1d399ygeamQNy3lPp/H9H6rNrqYh4FSVCtcY+3cub1MxA8o9mDd55mM8Aghuu/kuyYA6VTsA== +camelcase@5.3.1, camelcase@^5.0.0, camelcase@^5.3.1: + version "5.3.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" + integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== + camelcase@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" @@ -4838,11 +5527,6 @@ camelcase@^4.0.0, camelcase@^4.1.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" integrity sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0= -camelcase@^5.0.0, camelcase@^5.2.0, camelcase@^5.3.1: - version "5.3.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" - integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== - caniuse-api@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-3.0.0.tgz#5e4d90e2274961d46291997df599e3ed008ee4c0" @@ -4853,11 +5537,16 @@ caniuse-api@^3.0.0: lodash.memoize "^4.1.2" lodash.uniq "^4.5.0" -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000981, caniuse-lite@^1.0.30000989, caniuse-lite@^1.0.30001004, caniuse-lite@^1.0.30001006: +caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000981, caniuse-lite@^1.0.30001004, caniuse-lite@^1.0.30001006: version "1.0.30001008" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001008.tgz#b8841b1df78a9f5ed9702537ef592f1f8772c0d9" integrity sha512-b8DJyb+VVXZGRgJUa30cbk8gKHZ3LOZTBLaUEEVr2P4xpmFigOCc62CO4uzquW641Ouq1Rm9N+rWLWdSYDaDIw== +caniuse-lite@^1.0.30001010, caniuse-lite@^1.0.30001015: + version "1.0.30001015" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001015.tgz#15a7ddf66aba786a71d99626bc8f2b91c6f0f5f0" + integrity sha512-/xL2AbW/XWHNu1gnIrO8UitBGoFthcsDgU9VLK1/dpsoxbaD5LscHozKze05R6WLsBvLhqv78dAPozMFQBYLbQ== + capture-exit@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/capture-exit/-/capture-exit-2.0.0.tgz#fb953bfaebeb781f62898239dabb426d08a509a4" @@ -4957,7 +5646,7 @@ chokidar@3.3.0, chokidar@^3.2.2: optionalDependencies: fsevents "~2.1.1" -chokidar@^2.0.0, chokidar@^2.0.2, chokidar@^2.0.4: +chokidar@^2.0.2, chokidar@^2.0.4, chokidar@^2.1.8: version "2.1.8" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.8.tgz#804b3a7b6a99358c3c5c61e71d8728f041cff917" integrity sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg== @@ -5272,7 +5961,7 @@ compressible@~2.0.16: dependencies: mime-db ">= 1.40.0 < 2" -compression@^1.5.2: +compression@^1.7.4: version "1.7.4" resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.4.tgz#95523eff170ca57c29a0ca41e6fe131f41e5bb8f" integrity sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ== @@ -5350,7 +6039,7 @@ confusing-browser-globals@^1.0.9: resolved "https://registry.yarnpkg.com/confusing-browser-globals/-/confusing-browser-globals-1.0.9.tgz#72bc13b483c0276801681871d4898516f8f54fdd" integrity sha512-KbS1Y0jMtyPgIxjO7ZzMAuUpAKMt1SzCL9fsrKsX6b0zJPTaT0SiSPmewwVZg9UAO83HVIlEhZF84LIjZ0lmAw== -connect-history-api-fallback@^1.3.0: +connect-history-api-fallback@^1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz#8b32089359308d111115d81cad3fceab888f97bc" integrity sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg== @@ -5483,10 +6172,10 @@ convert-css-length@^2.0.1: resolved "https://registry.yarnpkg.com/convert-css-length/-/convert-css-length-2.0.1.tgz#90a76bde5bfd24d72881a5b45d02249b2c1d257c" integrity sha512-iGpbcvhLPRKUbBc0Quxx7w/bV14AC3ItuBEGMahA5WTYqB8lq9jH0kTXFheCBASsYnqeMFZhiTruNxr1N59Axg== -convert-source-map@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.6.0.tgz#51b537a8c43e0f04dec1993bffcdd504e758ac20" - integrity sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A== +convert-source-map@1.7.0, convert-source-map@^1.4.0, convert-source-map@^1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.7.0.tgz#17a2cb882d7f77d3490585e2ce6c524424a3a442" + integrity sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA== dependencies: safe-buffer "~5.1.1" @@ -5495,13 +6184,6 @@ convert-source-map@^0.3.3: resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-0.3.5.tgz#f1d802950af7dd2631a1febe0596550c86ab3190" integrity sha1-8dgClQr33SYxof6+BZZVDIarMZA= -convert-source-map@^1.1.0, convert-source-map@^1.4.0, convert-source-map@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.7.0.tgz#17a2cb882d7f77d3490585e2ce6c524424a3a442" - integrity sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA== - dependencies: - safe-buffer "~5.1.1" - cookie-signature@1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" @@ -5552,6 +6234,11 @@ core-js@^3.0.1: resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.4.1.tgz#76dd6828412900ab27c8ce0b22e6114d7ce21b18" integrity sha512-KX/dnuY/J8FtEwbnrzmAjUYgLqtk+cxM86hfG60LGiW3MmltIc2yAmDgBgEkfm0blZhUrdr1Zd84J2Y14mLxzg== +core-js@^3.4.1: + version "3.5.0" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.5.0.tgz#66df8e49be4bd775e6f952a9d083b756ad41c1ed" + integrity sha512-Ifh3kj78gzQ7NAoJXeTu+XwzDld0QRIwjBLRqAMhuLhP3d2Av5wmgE9ycfnvK6NAEjTkQ1sDPeoEZAWO3Hx1Uw== + core-util-is@1.0.2, core-util-is@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" @@ -5565,7 +6252,7 @@ cors@2.8.5, cors@^2.8.4: object-assign "^4" vary "^1" -cosmiconfig@5.2.1, cosmiconfig@^5.0.0, cosmiconfig@^5.1.0, cosmiconfig@^5.2.0, cosmiconfig@^5.2.1: +cosmiconfig@5.2.1, cosmiconfig@^5.0.0, cosmiconfig@^5.1.0, cosmiconfig@^5.2.1: version "5.2.1" resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.2.1.tgz#040f726809c591e77a17c0a3626ca45b4f168b1a" integrity sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA== @@ -5575,6 +6262,17 @@ cosmiconfig@5.2.1, cosmiconfig@^5.0.0, cosmiconfig@^5.1.0, cosmiconfig@^5.2.0, c js-yaml "^3.13.1" parse-json "^4.0.0" +cosmiconfig@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-6.0.0.tgz#da4fee853c52f6b1e6935f41c1a2fc50bd4a9982" + integrity sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg== + dependencies: + "@types/parse-json" "^4.0.0" + import-fresh "^3.1.0" + parse-json "^5.0.0" + path-type "^4.0.0" + yaml "^1.7.2" + create-ecdh@^4.0.0: version "4.0.3" resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.3.tgz#c9111b6f33045c4697f144787f9254cdc77c45ff" @@ -5700,22 +6398,23 @@ css-has-pseudo@^0.10.0: postcss "^7.0.6" postcss-selector-parser "^5.0.0-rc.4" -css-loader@2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-2.1.1.tgz#d8254f72e412bb2238bb44dd674ffbef497333ea" - integrity sha512-OcKJU/lt232vl1P9EEDamhoO9iKY3tIjY5GU+XDLblAykTdgs6Ux9P1hTHve8nFKy5KPpOXOsVI/hIwi3841+w== +css-loader@3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-3.2.0.tgz#bb570d89c194f763627fcf1f80059c6832d009b2" + integrity sha512-QTF3Ud5H7DaZotgdcJjGMvyDj5F3Pn1j/sC6VBEOVp94cbwqyIBdcs/quzj4MC1BKQSrTpQznegH/5giYbhnCQ== dependencies: - camelcase "^5.2.0" - icss-utils "^4.1.0" + camelcase "^5.3.1" + cssesc "^3.0.0" + icss-utils "^4.1.1" loader-utils "^1.2.3" normalize-path "^3.0.0" - postcss "^7.0.14" + postcss "^7.0.17" postcss-modules-extract-imports "^2.0.0" - postcss-modules-local-by-default "^2.0.6" + postcss-modules-local-by-default "^3.0.2" postcss-modules-scope "^2.1.0" - postcss-modules-values "^2.0.0" - postcss-value-parser "^3.3.0" - schema-utils "^1.0.0" + postcss-modules-values "^3.0.0" + postcss-value-parser "^4.0.0" + schema-utils "^2.0.0" css-prefers-color-scheme@^3.1.1: version "3.1.1" @@ -6011,13 +6710,6 @@ decamelize@^1.1.0, decamelize@^1.1.1, decamelize@^1.1.2, decamelize@^1.2.0: resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= -decamelize@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-2.0.0.tgz#656d7bbc8094c4c788ea53c5840908c9c7d063c7" - integrity sha512-Ikpp5scV3MSYxY39ymh45ZLEecsTdv/Xj2CaQfI8RLMuwi7XvjX9H/fhraiSuU+C5w5NTDu4ZU72xNiZnurBPg== - dependencies: - xregexp "4.0.0" - decode-uri-component@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" @@ -6109,17 +6801,18 @@ define-property@^2.0.2: is-descriptor "^1.0.2" isobject "^3.0.1" -del@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/del/-/del-3.0.0.tgz#53ecf699ffcbcb39637691ab13baf160819766e5" - integrity sha1-U+z2mf/LyzljdpGrE7rxYIGXZuU= +del@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/del/-/del-4.1.1.tgz#9e8f117222ea44a31ff3a156c049b99052a9f0b4" + integrity sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ== dependencies: + "@types/glob" "^7.1.1" globby "^6.1.0" - is-path-cwd "^1.0.0" - is-path-in-cwd "^1.0.0" - p-map "^1.1.1" - pify "^3.0.0" - rimraf "^2.2.8" + is-path-cwd "^2.0.0" + is-path-in-cwd "^2.0.0" + p-map "^2.0.0" + pify "^4.0.1" + rimraf "^2.6.3" del@^5.0.0: version "5.1.0" @@ -6413,7 +7106,12 @@ dotenv-expand@5.1.0: resolved "https://registry.yarnpkg.com/dotenv-expand/-/dotenv-expand-5.1.0.tgz#3fbaf020bfd794884072ea26b1e9791d45a629f0" integrity sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA== -dotenv@6.2.0, dotenv@^6.2.0: +dotenv@8.2.0: + version "8.2.0" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-8.2.0.tgz#97e619259ada750eea3e4ea3e26bceea5424b16a" + integrity sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw== + +dotenv@^6.2.0: version "6.2.0" resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-6.2.0.tgz#941c0410535d942c8becf28d3f357dbd9d476064" integrity sha512-HygQCKUBSFl8wKQZBSemMywRWcEDNidvNbjGVyZu3nbZ8qq9ubiPoGLMdRDpfSrpkkm9BXYFkpKxxFX38o/76w== @@ -6458,11 +7156,16 @@ ee-first@1.1.1: resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= -electron-to-chromium@^1.3.247, electron-to-chromium@^1.3.295: +electron-to-chromium@^1.3.295: version "1.3.306" resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.306.tgz#e8265301d053d5f74e36cb876486830261fbe946" integrity sha512-frDqXvrIROoYvikSKTIKbHbzO6M3/qC6kCIt/1FOa9kALe++c4VAJnwjSFvf1tYLEUsP2n9XZ4XSCyqc3l7A/A== +electron-to-chromium@^1.3.306, electron-to-chromium@^1.3.322: + version "1.3.322" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.322.tgz#a6f7e1c79025c2b05838e8e344f6e89eb83213a8" + integrity sha512-Tc8JQEfGQ1MzfSzI/bTlSr7btJv/FFO7Yh6tanqVmIWOuNCu6/D1MilIEgLtmWqIrsv+o4IjpLAhgMBr/ncNAA== + elegant-spinner@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/elegant-spinner/-/elegant-spinner-1.0.1.tgz#db043521c95d7e303fd8f345bedc3349cfb0729e" @@ -6655,10 +7358,10 @@ eslint-config-prettier@6.7.0: dependencies: get-stdin "^6.0.0" -eslint-config-react-app@^5.0.2: - version "5.0.2" - resolved "https://registry.yarnpkg.com/eslint-config-react-app/-/eslint-config-react-app-5.0.2.tgz#df40d73a1402986030680c040bbee520db5a32a4" - integrity sha512-VhlESAQM83uULJ9jsvcKxx2Ab0yrmjUt8kDz5DyhTQufqWE0ssAnejlWri5LXv25xoXfdqOyeDPdfJS9dXKagQ== +eslint-config-react-app@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/eslint-config-react-app/-/eslint-config-react-app-5.1.0.tgz#a37b3f2d4f56f856f93277281ef52bd791273e63" + integrity sha512-hBaxisHC6HXRVvxX+/t1n8mOdmCVIKgkXsf2WoUkJi7upHJTwYTsdCmx01QPOjKNT34QMQQ9sL0tVBlbiMFjxA== dependencies: confusing-browser-globals "^1.0.9" @@ -6747,20 +7450,20 @@ eslint-plugin-react-hooks@^1.6.1: resolved "https://registry.yarnpkg.com/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-1.7.0.tgz#6210b6d5a37205f0b92858f895a4e827020a7d04" integrity sha512-iXTCFcOmlWvw4+TOE8CLWj6yX1GwzT0Y6cUfHHZqWnSk144VmVIRcVGtUAzrLES7C798lmvnt02C7rxaOX1HNA== -eslint-plugin-react@7.14.3: - version "7.14.3" - resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.14.3.tgz#911030dd7e98ba49e1b2208599571846a66bdf13" - integrity sha512-EzdyyBWC4Uz2hPYBiEJrKCUi2Fn+BJ9B/pJQcjw5X+x/H2Nm59S4MJIvL4O5NEE0+WbnQwEBxWY03oUk+Bc3FA== +eslint-plugin-react@7.16.0: + version "7.16.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.16.0.tgz#9928e4f3e2122ed3ba6a5b56d0303ba3e41d8c09" + integrity sha512-GacBAATewhhptbK3/vTP09CbFrgUJmBSaaRcWdbQLFvUZy9yVcQxigBNHGPU/KE2AyHpzj3AWXpxoMTsIDiHug== dependencies: array-includes "^3.0.3" doctrine "^2.1.0" has "^1.0.3" - jsx-ast-utils "^2.1.0" + jsx-ast-utils "^2.2.1" object.entries "^1.1.0" object.fromentries "^2.0.0" object.values "^1.1.0" prop-types "^15.7.2" - resolve "^1.10.1" + resolve "^1.12.0" eslint-scope@^4.0.3: version "4.0.3" @@ -6778,7 +7481,7 @@ eslint-scope@^5.0.0: esrecurse "^4.1.0" estraverse "^4.1.1" -eslint-utils@^1.4.2, eslint-utils@^1.4.3: +eslint-utils@^1.4.3: version "1.4.3" resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.4.3.tgz#74fec7c54d0776b6f67e0251040b5806564e981f" integrity sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q== @@ -6790,7 +7493,7 @@ eslint-visitor-keys@^1.0.0, eslint-visitor-keys@^1.1.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz#e2a82cea84ff246ad6fb57f9bde5b46621459ec2" integrity sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A== -eslint@6.7.2: +eslint@6.7.2, eslint@^6.6.0: version "6.7.2" resolved "https://registry.yarnpkg.com/eslint/-/eslint-6.7.2.tgz#c17707ca4ad7b2d8af986a33feba71e18a9fecd1" integrity sha512-qMlSWJaCSxDFr8fBPvJM9kJwbazrhNcBU3+DszDW1OlEwKBBRWsJc7NJFelvwQpanHCR14cOLD41x8Eqvo3Nng== @@ -6833,49 +7536,6 @@ eslint@6.7.2: text-table "^0.2.0" v8-compile-cache "^2.0.3" -eslint@^6.1.0: - version "6.6.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-6.6.0.tgz#4a01a2fb48d32aacef5530ee9c5a78f11a8afd04" - integrity sha512-PpEBq7b6qY/qrOmpYQ/jTMDYfuQMELR4g4WI1M/NaSDDD/bdcMb+dj4Hgks7p41kW2caXsPsEZAEAyAgjVVC0g== - dependencies: - "@babel/code-frame" "^7.0.0" - ajv "^6.10.0" - chalk "^2.1.0" - cross-spawn "^6.0.5" - debug "^4.0.1" - doctrine "^3.0.0" - eslint-scope "^5.0.0" - eslint-utils "^1.4.3" - eslint-visitor-keys "^1.1.0" - espree "^6.1.2" - esquery "^1.0.1" - esutils "^2.0.2" - file-entry-cache "^5.0.1" - functional-red-black-tree "^1.0.1" - glob-parent "^5.0.0" - globals "^11.7.0" - ignore "^4.0.6" - import-fresh "^3.0.0" - imurmurhash "^0.1.4" - inquirer "^7.0.0" - is-glob "^4.0.0" - js-yaml "^3.13.1" - json-stable-stringify-without-jsonify "^1.0.1" - levn "^0.3.0" - lodash "^4.17.14" - minimatch "^3.0.4" - mkdirp "^0.5.1" - natural-compare "^1.4.0" - optionator "^0.8.2" - progress "^2.0.0" - regexpp "^2.0.1" - semver "^6.1.2" - strip-ansi "^5.2.0" - strip-json-comments "^3.0.1" - table "^5.2.3" - text-table "^0.2.0" - v8-compile-cache "^2.0.3" - espree@^6.1.2: version "6.1.2" resolved "https://registry.yarnpkg.com/espree/-/espree-6.1.2.tgz#6c272650932b4f91c3714e5e7b5f5e2ecf47262d" @@ -7044,7 +7704,7 @@ express-session@1.17.0: safe-buffer "5.2.0" uid-safe "~2.1.5" -express@4.17.1, express@^4.0.0, express@^4.16.2, express@^4.17.0, express@^4.17.1: +express@4.17.1, express@^4.0.0, express@^4.17.0, express@^4.17.1: version "4.17.1" resolved "https://registry.yarnpkg.com/express/-/express-4.17.1.tgz#4491fc38605cf51f8629d39c2b5d026f98a4c134" integrity sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g== @@ -7278,13 +7938,13 @@ file-entry-cache@^5.0.1: dependencies: flat-cache "^2.0.1" -file-loader@3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-3.0.1.tgz#f8e0ba0b599918b51adfe45d66d1e771ad560faa" - integrity sha512-4sNIOXgtH/9WZq4NvlfU3Opn5ynUsqBwSLyM+I7UOwdGigTBYfVVQEwe/msZNX/j4pCJTIM14Fsw66Svo1oVrw== +file-loader@4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-4.3.0.tgz#780f040f729b3d18019f20605f723e844b8a58af" + integrity sha512-aKrYPYjF1yG3oX0kWRrqrSMfgftm7oJW5M+m4owoldH5C51C0RkIwB++JbRvEW3IU6/ZG5n8UvEcdgwOt2UOWA== dependencies: - loader-utils "^1.0.2" - schema-utils "^1.0.0" + loader-utils "^1.2.3" + schema-utils "^2.5.0" filesize@3.6.1: version "3.6.1" @@ -7339,6 +7999,15 @@ find-cache-dir@^2.0.0, find-cache-dir@^2.1.0: make-dir "^2.0.0" pkg-dir "^3.0.0" +find-cache-dir@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.2.0.tgz#e7fe44c1abc1299f516146e563108fd1006c1874" + integrity sha512-1JKclkYYsf1q9WIJKLZa9S9muC+08RIjzAlLrK4QcYLJMS6mk9yombQ9qf+zJ7H9LS800k0s44L4sDq9VYzqyg== + dependencies: + commondir "^1.0.1" + make-dir "^3.0.0" + pkg-dir "^4.1.0" + find-up@3.0.0, find-up@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" @@ -7425,10 +8094,10 @@ forever-agent@~0.6.1: resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= -fork-ts-checker-webpack-plugin@1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-1.5.0.tgz#ce1d77190b44d81a761b10b6284a373795e41f0c" - integrity sha512-zEhg7Hz+KhZlBhILYpXy+Beu96gwvkROWJiTXOCyOOMMrdBIRPvsBpBqgTI4jfJGrJXcqGwJR8zsBGDmzY0jsA== +fork-ts-checker-webpack-plugin@3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-3.1.0.tgz#fb411a4b2c3697e1cd7f83436d4feeacbcc70c7b" + integrity sha512-6OkRfjuNMNqb14f01xokcWcKV5Ekknc2FvziNpcTYru+kxIYFA2MtuuBI19MHThZnjSBhoi35Dcq+I0oUkFjmQ== dependencies: babel-code-frame "^6.22.0" chalk "^2.4.1" @@ -7487,19 +8156,19 @@ fs-capacitor@^2.0.4: resolved "https://registry.yarnpkg.com/fs-capacitor/-/fs-capacitor-2.0.4.tgz#5a22e72d40ae5078b4fe64fe4d08c0d3fc88ad3c" integrity sha512-8S4f4WsCryNw2mJJchi46YgB6CR5Ze+4L1h8ewl9tEpL4SJ3ZO+c/bS4BWhB8bK+O3TMqhuZarTitd0S0eh2pA== -fs-extra@7.0.1, fs-extra@^7.0.0: - version "7.0.1" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-7.0.1.tgz#4f189c44aa123b895f722804f55ea23eadc348e9" - integrity sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw== +fs-extra@^4.0.2: + version "4.0.3" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-4.0.3.tgz#0d852122e5bc5beb453fb028e9c0c9bf36340c94" + integrity sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg== dependencies: graceful-fs "^4.1.2" jsonfile "^4.0.0" universalify "^0.1.0" -fs-extra@^4.0.2: - version "4.0.3" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-4.0.3.tgz#0d852122e5bc5beb453fb028e9c0c9bf36340c94" - integrity sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg== +fs-extra@^7.0.0: + version "7.0.1" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-7.0.1.tgz#4f189c44aa123b895f722804f55ea23eadc348e9" + integrity sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw== dependencies: graceful-fs "^4.1.2" jsonfile "^4.0.0" @@ -7521,6 +8190,13 @@ fs-minipass@^1.2.5: dependencies: minipass "^2.6.0" +fs-minipass@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.0.0.tgz#a6415edab02fae4b9e9230bc87ee2e4472003cd1" + integrity sha512-40Qz+LFXmd9tzYVnnBmZvFfvAADfUA14TXPK1s7IfElJTIZ97rA8w4Kin7Wt5JBrC3ShnnFJO/5vPjPEeJIq9A== + dependencies: + minipass "^3.0.0" + fs-write-stream-atomic@^1.0.8: version "1.0.10" resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" @@ -7536,10 +8212,10 @@ fs.realpath@^1.0.0: resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= -fsevents@2.0.7: - version "2.0.7" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.0.7.tgz#382c9b443c6cbac4c57187cdda23aa3bf1ccfc2a" - integrity sha512-a7YT0SV3RB+DjYcppwVDLtn13UQnmg0SWZS7ezZD0UjnLwXmy8Zm21GMVGLaFGimIqcvyMQaOJBrop8MyOp1kQ== +fsevents@2.1.2, fsevents@~2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.2.tgz#4c0a1fb34bc68e543b4b82a9ec392bfbda840805" + integrity sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA== fsevents@^1.2.7: version "1.2.9" @@ -7549,11 +8225,6 @@ fsevents@^1.2.7: nan "^2.12.1" node-pre-gyp "^0.12.0" -fsevents@~2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.2.tgz#4c0a1fb34bc68e543b4b82a9ec392bfbda840805" - integrity sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA== - function-bind@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" @@ -7776,7 +8447,7 @@ global-prefix@^3.0.0: kind-of "^6.0.2" which "^1.3.1" -globals@^11.1.0, globals@^11.7.0: +globals@^11.1.0: version "11.12.0" resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== @@ -8213,7 +8884,7 @@ html-encoding-sniffer@^1.0.2: dependencies: whatwg-encoding "^1.0.1" -html-entities@^1.2.0: +html-entities@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.2.1.tgz#0df29351f0721163515dfb9e5543e5f6eed5162f" integrity sha1-DfKTUfByEWNRXfueVUPl9u7VFi8= @@ -8310,7 +8981,7 @@ http-proxy-agent@^2.1.0: agent-base "4" debug "3.1.0" -http-proxy-middleware@^0.19.1: +http-proxy-middleware@0.19.1: version "0.19.1" resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz#183c7dc4aa1479150306498c210cdaf96080a43a" integrity sha512-yHYTgWMQO8VvwNS22eLLloAkvungsKdKTLO8AJlftYIKNfJr3GK3zK0ZCfzDDGUBttdGc8xFy1mCitvNKQtC3Q== @@ -8392,12 +9063,7 @@ iconv-lite@0.4.24, iconv-lite@^0.4.17, iconv-lite@^0.4.24, iconv-lite@^0.4.4, ic dependencies: safer-buffer ">= 2.1.2 < 3" -icss-replace-symbols@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz#06ea6f83679a7749e386cfe1fe812ae5db223ded" - integrity sha1-Bupvg2ead0njhs/h/oEq5dsiPe0= - -icss-utils@^4.1.0: +icss-utils@^4.0.0, icss-utils@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-4.1.1.tgz#21170b53789ee27447c2f47dd683081403f9a467" integrity sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA== @@ -8481,6 +9147,14 @@ import-fresh@^3.0.0: parent-module "^1.0.0" resolve-from "^4.0.0" +import-fresh@^3.1.0: + version "3.2.1" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.2.1.tgz#633ff618506e793af5ac91bf48b72677e15cbe66" + integrity sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ== + dependencies: + parent-module "^1.0.0" + resolve-from "^4.0.0" + import-from@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/import-from/-/import-from-3.0.0.tgz#055cfec38cd5a27d8057ca51376d7d3bf0891966" @@ -8658,7 +9332,7 @@ inquirer@^6.2.0: strip-ansi "^5.1.0" through "^2.3.6" -internal-ip@^4.2.0: +internal-ip@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/internal-ip/-/internal-ip-4.3.0.tgz#845452baad9d2ca3b69c635a137acb9a0dad0907" integrity sha512-S1zBo1D6zcsyuC6PMmY5+55YMILQ9av8lotMx447Bq6SAgo/sDK6y6uUKmuYhW7eacnIhFfsPmCNYdDzsnnDCg== @@ -8723,6 +9397,11 @@ is-absolute-url@^2.0.0: resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-2.1.0.tgz#50530dfb84fcc9aa7dbe7852e83a37b93b9f2aa6" integrity sha1-UFMN+4T8yap9vnhS6Do3uTufKqY= +is-absolute-url@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-3.0.3.tgz#96c6a22b6a23929b11ea0afb1836c36ad4a5d698" + integrity sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q== + is-accessor-descriptor@^0.1.6: version "0.1.6" resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" @@ -8972,22 +9651,17 @@ is-observable@^1.1.0: dependencies: symbol-observable "^1.1.0" -is-path-cwd@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" - integrity sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0= - -is-path-cwd@^2.2.0: +is-path-cwd@^2.0.0, is-path-cwd@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-2.2.0.tgz#67d43b82664a7b5191fd9119127eb300048a9fdb" integrity sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ== -is-path-in-cwd@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz#5ac48b345ef675339bd6c7a48a912110b241cf52" - integrity sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ== +is-path-in-cwd@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz#bfe2dca26c69f397265a4009963602935a053acb" + integrity sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ== dependencies: - is-path-inside "^1.0.0" + is-path-inside "^2.1.0" is-path-inside@^1.0.0: version "1.0.1" @@ -8996,6 +9670,13 @@ is-path-inside@^1.0.0: dependencies: path-is-inside "^1.0.1" +is-path-inside@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-2.1.0.tgz#7c9810587d659a40d27bcdb4d5616eab059494b2" + integrity sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg== + dependencies: + path-is-inside "^1.0.2" + is-path-inside@^3.0.1: version "3.0.2" resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.2.tgz#f5220fc82a3e233757291dddc9c5877f2a1f3017" @@ -9129,6 +9810,11 @@ is-wsl@^1.1.0: resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" integrity sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0= +is-wsl@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.1.1.tgz#4a1c152d429df3d441669498e2486d3596ebaf1d" + integrity sha512-umZHcSrwlDHo2TGMXv0DZ8dIUGunZ2Iv68YZnrmCiBPkZ4aaOhtv7pXJKeki9k3qJ3RJr0cDyitcl5wEH3AYog== + is_js@^0.9.0: version "0.9.0" resolved "https://registry.yarnpkg.com/is_js/-/is_js-0.9.0.tgz#0ab94540502ba7afa24c856aa985561669e9c52d" @@ -9568,13 +10254,14 @@ jest-validate@^24.9.0: leven "^3.1.0" pretty-format "^24.9.0" -jest-watch-typeahead@0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/jest-watch-typeahead/-/jest-watch-typeahead-0.4.0.tgz#4d5356839a85421588ce452d2440bf0d25308397" - integrity sha512-bJR/HPNgOQnkmttg1OkBIrYFAYuxFxExtgQh67N2qPvaWGVC8TCkedRNPKBfmZfVXFD3u2sCH+9OuS5ApBfCgA== +jest-watch-typeahead@0.4.2: + version "0.4.2" + resolved "https://registry.yarnpkg.com/jest-watch-typeahead/-/jest-watch-typeahead-0.4.2.tgz#e5be959698a7fa2302229a5082c488c3c8780a4a" + integrity sha512-f7VpLebTdaXs81rg/oj4Vg/ObZy2QtGzAmGLNsqUS5G5KtSN68tFcIsbvNODfNyQxU78g7D8x77o3bgfBTR+2Q== dependencies: ansi-escapes "^4.2.1" chalk "^2.4.1" + jest-regex-util "^24.9.0" jest-watcher "^24.3.0" slash "^3.0.0" string-length "^3.1.0" @@ -9882,7 +10569,7 @@ jss@10.0.0, jss@^10.0.0: is-in-browser "^1.1.3" tiny-warning "^1.0.2" -jsx-ast-utils@^2.1.0, jsx-ast-utils@^2.2.1: +jsx-ast-utils@^2.2.1: version "2.2.3" resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-2.2.3.tgz#8a9364e402448a3ce7f14d357738310d9248054f" integrity sha512-EdIHFMm+1BPynpKOpdPqiOsvnIrInRGJD7bzPZdPkjitQEqpdpUuFpq4T0npZFKTiB3RhWFdGN+oqOJIdhDhQA== @@ -9917,7 +10604,7 @@ kareem@2.3.1: resolved "https://registry.yarnpkg.com/kareem/-/kareem-2.3.1.tgz#def12d9c941017fabfb00f873af95e9c99e1be87" integrity sha512-l3hLhffs9zqoDe8zjmb/mAN4B8VT3L56EUvKNqLFVs9YlFA+zx7ke1DO8STAdDyYNkeSo1nKmjuvQeI12So8Xw== -killable@^1.0.0: +killable@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/killable/-/killable-1.0.1.tgz#4c8ce441187a061c7474fb87ca08e2a638194892" integrity sha512-LzqtLKlUwirEUyl/nicirVmNiPvYs7l5n8wOPP7fyJVpUPkvCnW/vuiXGpylGUlnPDnB7311rARzAt3Mhswpjg== @@ -10162,7 +10849,7 @@ loader-runner@^2.4.0: resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.4.0.tgz#ed47066bfe534d7e84c4c7b9998c2a75607d9357" integrity sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw== -loader-utils@1.2.3, loader-utils@^1.0.1, loader-utils@^1.0.2, loader-utils@^1.1.0, loader-utils@^1.2.3: +loader-utils@1.2.3, loader-utils@^1.0.2, loader-utils@^1.1.0, loader-utils@^1.2.3: version "1.2.3" resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.2.3.tgz#1ff5dc6911c9f0a062531a4c04b609406108c2c7" integrity sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA== @@ -10346,7 +11033,7 @@ log-update@^2.3.0: cli-cursor "^2.0.0" wrap-ansi "^3.0.1" -loglevel@^1.4.1: +loglevel@^1.6.4: version "1.6.6" resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.6.6.tgz#0ee6300cc058db6b3551fa1c4bf73b83bb771312" integrity sha512-Sgr5lbboAUBo3eXCSPL4/KoVz3ROKquOjcctxmHIt+vol2DrqTQe3SwkKKuYhEiWB5kYa13YyopJ69deJ1irzQ== @@ -10423,6 +11110,13 @@ make-dir@^2.0.0, make-dir@^2.1.0: pify "^4.0.1" semver "^5.6.0" +make-dir@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.0.0.tgz#1b5f39f6b9270ed33f9f054c5c0f84304989f801" + integrity sha512-grNJDhb8b1Jm1qeqW5R/O63wUo4UXo2v2HMic6YT9i/HBlF93S8jkMgH7yugvY9ABDShH4VZMn8I+U8+fCNegw== + dependencies: + semver "^6.0.0" + make-error@1.x, make-error@^1.1.1: version "1.3.5" resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.5.tgz#efe4e81f6db28cadd605c70f29c831b58ef776c8" @@ -10738,6 +11432,27 @@ minimist@~0.0.1: resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf" integrity sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8= +minipass-collect@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/minipass-collect/-/minipass-collect-1.0.2.tgz#22b813bf745dc6edba2576b940022ad6edc8c617" + integrity sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA== + dependencies: + minipass "^3.0.0" + +minipass-flush@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373" + integrity sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw== + dependencies: + minipass "^3.0.0" + +minipass-pipeline@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/minipass-pipeline/-/minipass-pipeline-1.2.2.tgz#3dcb6bb4a546e32969c7ad710f2c79a86abba93a" + integrity sha512-3JS5A2DKhD2g0Gg8x3yamO0pj7YeKGwVlDS90pF++kxptwx/F+B//roxf9SqYil5tQo65bijy+dAuAFZmYOouA== + dependencies: + minipass "^3.0.0" + minipass@^2.3.5, minipass@^2.6.0, minipass@^2.8.6, minipass@^2.9.0: version "2.9.0" resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6" @@ -10746,6 +11461,13 @@ minipass@^2.3.5, minipass@^2.6.0, minipass@^2.8.6, minipass@^2.9.0: safe-buffer "^5.1.2" yallist "^3.0.0" +minipass@^3.0.0, minipass@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.1.1.tgz#7607ce778472a185ad6d89082aa2070f79cedcd5" + integrity sha512-UFqVihv6PQgwj8/yTGvl9kPz7xIAY+R5z6XYjRInD3Gk3qx6QGSD6zEcpeG4Dy/lQnv1J6zv8ejV90hyYIKf3w== + dependencies: + yallist "^4.0.0" + minizlib@^1.2.1: version "1.3.3" resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d" @@ -11119,13 +11841,20 @@ node-pre-gyp@^0.12.0: semver "^5.3.0" tar "^4" -node-releases@^1.1.29, node-releases@^1.1.38: +node-releases@^1.1.38: version "1.1.39" resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.39.tgz#c1011f30343aff5b633153b10ff691d278d08e8d" integrity sha512-8MRC/ErwNCHOlAFycy9OPca46fQYUjbJRDcZTHVWIGXIjYLM73k70vv3WkYutVnM4cCo4hE0MqBVVZjP6vjISA== dependencies: semver "^6.3.0" +node-releases@^1.1.40, node-releases@^1.1.42: + version "1.1.42" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.42.tgz#a999f6a62f8746981f6da90627a8d2fc090bbad7" + integrity sha512-OQ/ESmUqGawI2PRX+XIRao44qWYBBfN54ImQYdWVTQqUckuejOg76ysSqDBK8NG3zwySRVnX36JwDQ6x+9GxzA== + dependencies: + semver "^6.3.0" + nodemon@2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/nodemon/-/nodemon-2.0.2.tgz#9c7efeaaf9b8259295a97e5d4585ba8f0cbe50b0" @@ -11318,7 +12047,7 @@ oauth@^0.9.15: resolved "https://registry.yarnpkg.com/oauth/-/oauth-0.9.15.tgz#bd1fefaf686c96b75475aed5196412ff60cfb9c1" integrity sha1-vR/vr2hslrdUda7VGWQS/2DPucE= -object-assign@4.1.1, object-assign@^4, object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1: +object-assign@^4, object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= @@ -11462,12 +12191,12 @@ onetime@^5.1.0: dependencies: mimic-fn "^2.1.0" -open@^6.3.0: - version "6.4.0" - resolved "https://registry.yarnpkg.com/open/-/open-6.4.0.tgz#5c13e96d0dc894686164f18965ecfe889ecfc8a9" - integrity sha512-IFenVPgF70fSm1keSd2iDBIDIBZkroLeuffXq+wKTzTJlBpesFWojV9lb8mzOfaAzM1sr7HQHuO0vtV0zYekGg== +open@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/open/-/open-7.0.0.tgz#7e52999b14eb73f90f0f0807fe93897c4ae73ec9" + integrity sha512-K6EKzYqnwQzk+/dzJAQSBORub3xlBTxMz+ntpZpH/LyCa1o6KjXhuN+2npAaI9jaSmU3R1Q8NWf4KUWcyytGsQ== dependencies: - is-wsl "^1.1.0" + is-wsl "^2.1.0" opencollective-postinstall@^2.0.2: version "2.0.2" @@ -11494,7 +12223,7 @@ opn@4.0.2: object-assign "^4.0.1" pinkie-promise "^2.0.0" -opn@^5.1.0: +opn@^5.5.0: version "5.5.0" resolved "https://registry.yarnpkg.com/opn/-/opn-5.5.0.tgz#fc7164fab56d235904c51c3b27da6758ca3b9bfc" integrity sha512-PqHpggC9bLV0VeWcdKhkpxY+3JTzetLSqTCWL/z/tFIbI6G8JCjondXklT1JinczLz2Xib62sSp0T/gKT4KksA== @@ -11524,7 +12253,7 @@ optimize-css-assets-webpack-plugin@5.0.3: cssnano "^4.1.10" last-call-webpack-plugin "^3.0.0" -optionator@^0.8.1, optionator@^0.8.2, optionator@^0.8.3: +optionator@^0.8.1, optionator@^0.8.3: version "0.8.3" resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" integrity sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA== @@ -11668,11 +12397,6 @@ p-map-series@^1.0.0: dependencies: p-reduce "^1.0.0" -p-map@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-1.2.0.tgz#e4e94f311eabbc8633a1e79908165fca26241b6b" - integrity sha512-r6zKACMNhjPJMTl8KcFH4li//gkrXWfbD6feV8l6doRHlzljFWGJ2AP6iKaCJXyZmAUMOPtvbW7EXkbWO/pLEA== - p-map@^2.0.0, p-map@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/p-map/-/p-map-2.1.0.tgz#310928feef9c9ecc65b68b17693018a665cea175" @@ -11702,6 +12426,13 @@ p-reduce@^1.0.0: resolved "https://registry.yarnpkg.com/p-reduce/-/p-reduce-1.0.0.tgz#18c2b0dd936a4690a529f8231f58a0fdb6a47dfa" integrity sha1-GMKw3ZNqRpClKfgjH1ig/bakffo= +p-retry@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/p-retry/-/p-retry-3.0.1.tgz#316b4c8893e2c8dc1cfa891f406c4b422bebf328" + integrity sha512-XE6G4+YTTkT2a0UWb2kjZe8xNwf8bIbnqpc/IS/idOBVhyves0mK5OJgeocjx7q5pvX/6m23xuzVPYT1uGM73w== + dependencies: + retry "^0.12.0" + p-try@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" @@ -11894,7 +12625,7 @@ path-is-absolute@^1.0.0: resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= -path-is-inside@^1.0.1: +path-is-inside@^1.0.1, path-is-inside@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" integrity sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM= @@ -12076,7 +12807,7 @@ pkg-dir@^3.0.0: dependencies: find-up "^3.0.0" -pkg-dir@^4.2.0: +pkg-dir@^4.1.0, pkg-dir@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== @@ -12114,7 +12845,7 @@ popper.js@^1.14.1: resolved "https://registry.yarnpkg.com/popper.js/-/popper.js-1.16.0.tgz#2e1816bcbbaa518ea6c2e15a466f4cb9c6e2fbb3" integrity sha512-+G+EkOPoE5S/zChTpmBSSDYmhXJ5PsW8eMhH8cP/CQHMFPBG/kC9Y5IIw6qNYgdJ+/COf0ddY2li28iHaZRSjw== -portfinder@^1.0.9: +portfinder@^1.0.25: version "1.0.25" resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.25.tgz#254fd337ffba869f4b9d37edc298059cb4d35eca" integrity sha512-6ElJnHBbxVA1XSLgBp7G1FiCkQdlqGzuF7DswL5tcea+E8UpuvPU7beVAjjRwCioTS9ZluNbu+ZyRvgTsmqEBg== @@ -12136,12 +12867,12 @@ postcss-attribute-case-insensitive@^4.0.1: postcss "^7.0.2" postcss-selector-parser "^5.0.0" -postcss-browser-comments@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-browser-comments/-/postcss-browser-comments-2.0.0.tgz#dc48d6a8ddbff188a80a000b7393436cb18aed88" - integrity sha512-xGG0UvoxwBc4Yx4JX3gc0RuDl1kc4bVihCzzk6UC72YPfq5fu3c717Nu8Un3nvnq1BJ31gBnFXIG/OaUTnpHgA== +postcss-browser-comments@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/postcss-browser-comments/-/postcss-browser-comments-3.0.0.tgz#1248d2d935fb72053c8e1f61a84a57292d9f65e9" + integrity sha512-qfVjLfq7HFd2e0HW4s1dvU8X080OZdG46fFbIBFjW7US7YPDcWfRvdElvwMJr2LI6hMmD+7LnH2HcmXTs+uOig== dependencies: - postcss "^7.0.2" + postcss "^7" postcss-calc@^7.0.1: version "7.0.1" @@ -12450,14 +13181,15 @@ postcss-modules-extract-imports@^2.0.0: dependencies: postcss "^7.0.5" -postcss-modules-local-by-default@^2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-2.0.6.tgz#dd9953f6dd476b5fd1ef2d8830c8929760b56e63" - integrity sha512-oLUV5YNkeIBa0yQl7EYnxMgy4N6noxmiwZStaEJUSe2xPMcdNc8WmBQuQCx18H5psYbVxz8zoHk0RAAYZXP9gA== +postcss-modules-local-by-default@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.2.tgz#e8a6561be914aaf3c052876377524ca90dbb7915" + integrity sha512-jM/V8eqM4oJ/22j0gx4jrp63GSvDH6v86OqyTHHUvk4/k1vceipZsaymiZ5PvocqZOl5SFHiFJqjs3la0wnfIQ== dependencies: - postcss "^7.0.6" - postcss-selector-parser "^6.0.0" - postcss-value-parser "^3.3.1" + icss-utils "^4.1.1" + postcss "^7.0.16" + postcss-selector-parser "^6.0.2" + postcss-value-parser "^4.0.0" postcss-modules-scope@^2.1.0: version "2.1.0" @@ -12467,12 +13199,12 @@ postcss-modules-scope@^2.1.0: postcss "^7.0.6" postcss-selector-parser "^6.0.0" -postcss-modules-values@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-2.0.0.tgz#479b46dc0c5ca3dc7fa5270851836b9ec7152f64" - integrity sha512-Ki7JZa7ff1N3EIMlPnGTZfUMe69FFwiQPnVSXC9mnn3jozCRBYIxiZd44yJOV2AmabOo4qFf8s0dC/+lweG7+w== +postcss-modules-values@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz#5b5000d6ebae29b4255301b4a3a54574423e7f10" + integrity sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg== dependencies: - icss-replace-symbols "^1.1.0" + icss-utils "^4.0.0" postcss "^7.0.6" postcss-nesting@^7.0.0: @@ -12563,15 +13295,16 @@ postcss-normalize-whitespace@^4.0.2: postcss "^7.0.0" postcss-value-parser "^3.0.0" -postcss-normalize@7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize/-/postcss-normalize-7.0.1.tgz#eb51568d962b8aa61a8318383c8bb7e54332282e" - integrity sha512-NOp1fwrG+6kVXWo7P9SizCHX6QvioxFD/hZcI2MLxPmVnFJFC0j0DDpIuNw2tUDeCFMni59gCVgeJ1/hYhj2OQ== +postcss-normalize@8.0.1: + version "8.0.1" + resolved "https://registry.yarnpkg.com/postcss-normalize/-/postcss-normalize-8.0.1.tgz#90e80a7763d7fdf2da6f2f0f82be832ce4f66776" + integrity sha512-rt9JMS/m9FHIRroDDBGSMsyW1c0fkvOJPy62ggxSHUldJO7B195TqFMqIf+lY5ezpDcYOV4j86aUp3/XbxzCCQ== dependencies: - "@csstools/normalize.css" "^9.0.1" - browserslist "^4.1.1" - postcss "^7.0.2" - postcss-browser-comments "^2.0.0" + "@csstools/normalize.css" "^10.1.0" + browserslist "^4.6.2" + postcss "^7.0.17" + postcss-browser-comments "^3.0.0" + sanitize.css "^10.0.0" postcss-ordered-values@^4.1.2: version "4.1.2" @@ -12723,7 +13456,7 @@ postcss-selector-parser@^5.0.0, postcss-selector-parser@^5.0.0-rc.3, postcss-sel indexes-of "^1.0.1" uniq "^1.0.1" -postcss-selector-parser@^6.0.0: +postcss-selector-parser@^6.0.0, postcss-selector-parser@^6.0.2: version "6.0.2" resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.2.tgz#934cf799d016c83411859e09dcecade01286ec5c" integrity sha512-36P2QR59jDTOAiIkqEprfJDsoNrvwFei3eCqKd1Y0tUsBimsq39BLp7RD+JWny3WgB1zGhJX8XVePwm9k4wdBg== @@ -12751,12 +13484,12 @@ postcss-unique-selectors@^4.0.1: postcss "^7.0.0" uniqs "^2.0.0" -postcss-value-parser@^3.0.0, postcss-value-parser@^3.3.0, postcss-value-parser@^3.3.1: +postcss-value-parser@^3.0.0, postcss-value-parser@^3.3.1: version "3.3.1" resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz#9ff822547e2893213cf1c30efa51ac5fd1ba8281" integrity sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ== -postcss-value-parser@^4.0.2: +postcss-value-parser@^4.0.0, postcss-value-parser@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.0.2.tgz#482282c09a42706d1fc9a069b73f44ec08391dc9" integrity sha512-LmeoohTpp/K4UiyQCwuGWlONxXamGzCMtFxLq4W1nZVGIQLYvMCJx3yAF9qyyuFpflABI9yVdtJAqbihOsCsJQ== @@ -12770,19 +13503,19 @@ postcss-values-parser@^2.0.0, postcss-values-parser@^2.0.1: indexes-of "^1.0.1" uniq "^1.0.1" -postcss@7.0.14: - version "7.0.14" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.14.tgz#4527ed6b1ca0d82c53ce5ec1a2041c2346bbd6e5" - integrity sha512-NsbD6XUUMZvBxtQAJuWDJeeC4QFsmWsfozWxCJPWf3M55K9iu2iMDaKqyoOdTJ1R4usBXuxlVFAIo8rZPQD4Bg== +postcss@7.0.21, postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.17, postcss@^7.0.2, postcss@^7.0.21, postcss@^7.0.5, postcss@^7.0.6: + version "7.0.21" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.21.tgz#06bb07824c19c2021c5d056d5b10c35b989f7e17" + integrity sha512-uIFtJElxJo29QC753JzhidoAhvp/e/Exezkdhfmt8AymWT6/5B7W1WmponYWkHk2eg6sONyTch0A3nkMPun3SQ== dependencies: chalk "^2.4.2" source-map "^0.6.1" supports-color "^6.1.0" -postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.17, postcss@^7.0.2, postcss@^7.0.21, postcss@^7.0.5, postcss@^7.0.6: - version "7.0.21" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.21.tgz#06bb07824c19c2021c5d056d5b10c35b989f7e17" - integrity sha512-uIFtJElxJo29QC753JzhidoAhvp/e/Exezkdhfmt8AymWT6/5B7W1WmponYWkHk2eg6sONyTch0A3nkMPun3SQ== +postcss@^7, postcss@^7.0.16: + version "7.0.24" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.24.tgz#972c3c5be431b32e40caefe6c81b5a19117704c2" + integrity sha512-Xl0XvdNWg+CblAXzNvbSOUvgJXwSjmbAKORqyw9V2AlHrm1js2gFw9y3jibBAhpKZi8b5JzJCVh/FyzPsTtgTA== dependencies: chalk "^2.4.2" source-map "^0.6.1" @@ -12893,13 +13626,6 @@ promise-retry@^1.1.1: err-code "^1.0.0" retry "^0.10.0" -promise@8.0.3: - version "8.0.3" - resolved "https://registry.yarnpkg.com/promise/-/promise-8.0.3.tgz#f592e099c6cddc000d538ee7283bb190452b0bf6" - integrity sha512-HeRDUL1RJiLhyA0/grn+PTShlBAcLuh/1BJGtrvjwbvRDCTLLMEz9rOGCV+R3vHY4MixIuoMEd9Yq/XvsTPcjw== - dependencies: - asap "~2.0.6" - promise@^7.1.1: version "7.3.1" resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf" @@ -12907,6 +13633,13 @@ promise@^7.1.1: dependencies: asap "~2.0.3" +promise@^8.0.3: + version "8.0.3" + resolved "https://registry.yarnpkg.com/promise/-/promise-8.0.3.tgz#f592e099c6cddc000d538ee7283bb190452b0bf6" + integrity sha512-HeRDUL1RJiLhyA0/grn+PTShlBAcLuh/1BJGtrvjwbvRDCTLLMEz9rOGCV+R3vHY4MixIuoMEd9Yq/XvsTPcjw== + dependencies: + asap "~2.0.6" + prompts@^2.0.1: version "2.3.0" resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.3.0.tgz#a444e968fa4cc7e86689a74050685ac8006c4cc4" @@ -13085,7 +13818,7 @@ quick-lru@^1.0.0: resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-1.1.0.tgz#4360b17c61136ad38078397ff11416e186dcfbb8" integrity sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g= -raf@3.4.1: +raf@^3.4.1: version "3.4.1" resolved "https://registry.yarnpkg.com/raf/-/raf-3.4.1.tgz#0742e99a4a6552f445d73e3ee0328af0ff1ede39" integrity sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA== @@ -13150,33 +13883,33 @@ react-apollo@2.5.8: ts-invariant "^0.4.2" tslib "^1.9.3" -react-app-polyfill@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/react-app-polyfill/-/react-app-polyfill-1.0.4.tgz#4dd2636846b585c2d842b1e44e1bc29044345874" - integrity sha512-5Vte6ki7jpNsNCUKaboyofAhmURmCn2Y6Hu7ydJ6Iu4dct1CIGoh/1FT7gUZKAbowVX2lxVPlijvp1nKxfAl4w== - dependencies: - core-js "3.2.1" - object-assign "4.1.1" - promise "8.0.3" - raf "3.4.1" - regenerator-runtime "0.13.3" - whatwg-fetch "3.0.0" +react-app-polyfill@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/react-app-polyfill/-/react-app-polyfill-1.0.5.tgz#59c7377a0b9ed25692eeaca7ad9b12ef2d064709" + integrity sha512-RcbV6+msbvZJZUIK/LX3UafPtoaDSJgUWu4sqBxHKTVmBsnlU2QWCKJRBRmgjxu+ivW/GPINbPWRM4Ppa6Lbgw== + dependencies: + core-js "^3.4.1" + object-assign "^4.1.1" + promise "^8.0.3" + raf "^3.4.1" + regenerator-runtime "^0.13.3" + whatwg-fetch "^3.0.0" -react-dev-utils@^9.1.0: - version "9.1.0" - resolved "https://registry.yarnpkg.com/react-dev-utils/-/react-dev-utils-9.1.0.tgz#3ad2bb8848a32319d760d0a84c56c14bdaae5e81" - integrity sha512-X2KYF/lIGyGwP/F/oXgGDF24nxDA2KC4b7AFto+eqzc/t838gpSGiaU8trTqHXOohuLxxc5qi1eDzsl9ucPDpg== +react-dev-utils@^10.0.0: + version "10.0.0" + resolved "https://registry.yarnpkg.com/react-dev-utils/-/react-dev-utils-10.0.0.tgz#bd2d16426c7e4cbfed1b46fb9e2ac98ec06fcdfa" + integrity sha512-8OKSJvl8ccXJDNf0YGw377L9v1OnT16skD/EuZWm0M/yr255etP4x4kuUCT1EfFfJ7Rhc4ZTpPTfPrvgiXa50Q== dependencies: "@babel/code-frame" "7.5.5" address "1.1.2" - browserslist "4.7.0" + browserslist "4.7.3" chalk "2.4.2" cross-spawn "6.0.5" detect-port-alt "1.1.6" escape-string-regexp "1.0.5" filesize "3.6.1" find-up "3.0.0" - fork-ts-checker-webpack-plugin "1.5.0" + fork-ts-checker-webpack-plugin "3.1.0" global-modules "2.0.0" globby "8.0.2" gzip-size "5.1.1" @@ -13184,12 +13917,11 @@ react-dev-utils@^9.1.0: inquirer "6.5.0" is-root "2.1.0" loader-utils "1.2.3" - open "^6.3.0" + open "^7.0.0" pkg-up "2.0.0" - react-error-overlay "^6.0.3" + react-error-overlay "^6.0.4" recursive-readdir "2.2.2" shell-quote "1.7.2" - sockjs-client "1.4.0" strip-ansi "5.2.0" text-table "0.2.0" @@ -13203,10 +13935,10 @@ react-dom@16.12.0: prop-types "^15.6.2" scheduler "^0.18.0" -react-error-overlay@^6.0.3: - version "6.0.3" - resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-6.0.3.tgz#c378c4b0a21e88b2e159a3e62b2f531fd63bf60d" - integrity sha512-bOUvMWFQVk5oz8Ded9Xb7WVdEi3QGLC8tH7HmYP0Fdp4Bn3qw0tRFmr5TW6mvahzvmrK4a6bqWGfCevBflP+Xw== +react-error-overlay@^6.0.4: + version "6.0.4" + resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-6.0.4.tgz#0d165d6d27488e660bc08e57bdabaad741366f7a" + integrity sha512-ueZzLmHltszTshDMwyfELDq8zOA803wQ1ZuzCccXa1m57k1PxSHfflPD5W9YIiTXLs0JTLzoj6o1LuM5N6zzNA== react-is@^16.6.0, react-is@^16.8.4: version "16.11.0" @@ -13247,66 +13979,65 @@ react-router@5.1.2: tiny-invariant "^1.0.2" tiny-warning "^1.0.0" -react-scripts@3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/react-scripts/-/react-scripts-3.2.0.tgz#58ccd6b4ffa27f1b4d2986cbdcaa916660e9e33c" - integrity sha512-6LzuKbE2B4eFQG6i1FnTScn9HDcWBfXXnOwW9xKFPJ/E3rK8i1ufbOZ0ocKyRPxJAKdN7iqg3i7lt0+oxkSVOA== +react-scripts@3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/react-scripts/-/react-scripts-3.3.0.tgz#f26a21f208f20bd04770f43e50b5bbc151920c2a" + integrity sha512-hzPc6bxCc9GnsspWqk494c2Gpd0dRbk/C8q76BNQIENi9GMwoxFljOEcZoZcpFpJgQ45alxFR6QaLt+51qie7g== dependencies: - "@babel/core" "7.6.0" - "@svgr/webpack" "4.3.2" - "@typescript-eslint/eslint-plugin" "^2.2.0" - "@typescript-eslint/parser" "^2.2.0" + "@babel/core" "7.7.4" + "@svgr/webpack" "4.3.3" + "@typescript-eslint/eslint-plugin" "^2.8.0" + "@typescript-eslint/parser" "^2.8.0" babel-eslint "10.0.3" babel-jest "^24.9.0" babel-loader "8.0.6" - babel-plugin-named-asset-import "^0.3.4" - babel-preset-react-app "^9.0.2" - camelcase "^5.2.0" + babel-plugin-named-asset-import "^0.3.5" + babel-preset-react-app "^9.1.0" + camelcase "^5.3.1" case-sensitive-paths-webpack-plugin "2.2.0" - css-loader "2.1.1" - dotenv "6.2.0" + css-loader "3.2.0" + dotenv "8.2.0" dotenv-expand "5.1.0" - eslint "^6.1.0" - eslint-config-react-app "^5.0.2" + eslint "^6.6.0" + eslint-config-react-app "^5.1.0" eslint-loader "3.0.2" eslint-plugin-flowtype "3.13.0" eslint-plugin-import "2.18.2" eslint-plugin-jsx-a11y "6.2.3" - eslint-plugin-react "7.14.3" + eslint-plugin-react "7.16.0" eslint-plugin-react-hooks "^1.6.1" - file-loader "3.0.1" - fs-extra "7.0.1" + file-loader "4.3.0" + fs-extra "^8.1.0" html-webpack-plugin "4.0.0-beta.5" identity-obj-proxy "3.0.0" - is-wsl "^1.1.0" jest "24.9.0" jest-environment-jsdom-fourteen "0.1.0" jest-resolve "24.9.0" - jest-watch-typeahead "0.4.0" + jest-watch-typeahead "0.4.2" mini-css-extract-plugin "0.8.0" optimize-css-assets-webpack-plugin "5.0.3" pnp-webpack-plugin "1.5.0" postcss-flexbugs-fixes "4.1.0" postcss-loader "3.0.0" - postcss-normalize "7.0.1" + postcss-normalize "8.0.1" postcss-preset-env "6.7.0" postcss-safe-parser "4.0.1" - react-app-polyfill "^1.0.4" - react-dev-utils "^9.1.0" - resolve "1.12.0" - resolve-url-loader "3.1.0" - sass-loader "7.2.0" + react-app-polyfill "^1.0.5" + react-dev-utils "^10.0.0" + resolve "1.12.2" + resolve-url-loader "3.1.1" + sass-loader "8.0.0" semver "6.3.0" style-loader "1.0.0" - terser-webpack-plugin "1.4.1" - ts-pnp "1.1.4" - url-loader "2.1.0" - webpack "4.41.0" - webpack-dev-server "3.2.1" - webpack-manifest-plugin "2.1.1" + terser-webpack-plugin "2.2.1" + ts-pnp "1.1.5" + url-loader "2.3.0" + webpack "4.41.2" + webpack-dev-server "3.9.0" + webpack-manifest-plugin "2.2.0" workbox-webpack-plugin "4.3.1" optionalDependencies: - fsevents "2.0.7" + fsevents "2.1.2" react-transition-group@^4.3.0: version "4.3.0" @@ -13552,11 +14283,6 @@ regenerate@^1.4.0: resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.0.tgz#4a856ec4b56e4077c557589cae85e7a4c8869a11" integrity sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg== -regenerator-runtime@0.13.3, regenerator-runtime@^0.13.2: - version "0.13.3" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.3.tgz#7cf6a77d8f5c6f60eb73c5fc1955b2ceb01e6bf5" - integrity sha512-naKIZz2GQ8JWh///G7L3X6LaQUAMp2lvb1rvwwsURe/VXwD6VMfr+/1NuNw3ag8v2kY1aQ/go5SNn79O9JU7yw== - regenerator-runtime@^0.10.0: version "0.10.5" resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz#336c3efc1220adcedda2c9fab67b5a7955a33658" @@ -13567,6 +14293,11 @@ regenerator-runtime@^0.11.0: resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg== +regenerator-runtime@^0.13.2, regenerator-runtime@^0.13.3: + version "0.13.3" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.3.tgz#7cf6a77d8f5c6f60eb73c5fc1955b2ceb01e6bf5" + integrity sha512-naKIZz2GQ8JWh///G7L3X6LaQUAMp2lvb1rvwwsURe/VXwD6VMfr+/1NuNw3ag8v2kY1aQ/go5SNn79O9JU7yw== + regenerator-transform@^0.14.0: version "0.14.1" resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.14.1.tgz#3b2fce4e1ab7732c08f665dfdb314749c7ddd2fb" @@ -13845,18 +14576,18 @@ resolve-pathname@^3.0.0: resolved "https://registry.yarnpkg.com/resolve-pathname/-/resolve-pathname-3.0.0.tgz#99d02224d3cf263689becbb393bc560313025dcd" integrity sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng== -resolve-url-loader@3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/resolve-url-loader/-/resolve-url-loader-3.1.0.tgz#54d8181d33cd1b66a59544d05cadf8e4aa7d37cc" - integrity sha512-2QcrA+2QgVqsMJ1Hn5NnJXIGCX1clQ1F6QJTqOeiaDw9ACo1G2k+8/shq3mtqne03HOFyskAClqfxKyFBriXZg== +resolve-url-loader@3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/resolve-url-loader/-/resolve-url-loader-3.1.1.tgz#28931895fa1eab9be0647d3b2958c100ae3c0bf0" + integrity sha512-K1N5xUjj7v0l2j/3Sgs5b8CjrrgtC70SmdCuZiJ8tSyb5J+uk3FoeZ4b7yTnH6j7ngI+Bc5bldHJIa8hYdu2gQ== dependencies: adjust-sourcemap-loader "2.0.0" - camelcase "5.0.0" + camelcase "5.3.1" compose-function "3.0.3" - convert-source-map "1.6.0" + convert-source-map "1.7.0" es6-iterator "2.0.3" loader-utils "1.2.3" - postcss "7.0.14" + postcss "7.0.21" rework "1.0.1" rework-visit "1.0.0" source-map "0.6.1" @@ -13871,7 +14602,14 @@ resolve@1.1.7: resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" integrity sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs= -resolve@1.12.0, resolve@1.x, resolve@^1.10.0, resolve@^1.10.1, resolve@^1.11.0, resolve@^1.12.0, resolve@^1.3.2, resolve@^1.5.0, resolve@^1.8.1: +resolve@1.12.2: + version "1.12.2" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.12.2.tgz#08b12496d9aa8659c75f534a8f05f0d892fff594" + integrity sha512-cAVTI2VLHWYsGOirfeYVVQ7ZDejtQ9fp4YhYckWDEkFfqbVjaT11iM8k6xSAfGFMM+gDpZjMnFssPu8we+mqFw== + dependencies: + path-parse "^1.0.6" + +resolve@1.x, resolve@^1.10.0, resolve@^1.11.0, resolve@^1.12.0, resolve@^1.3.2, resolve@^1.5.0, resolve@^1.8.1: version "1.12.0" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.12.0.tgz#3fc644a35c84a48554609ff26ec52b66fa577df6" integrity sha512-B/dOmuoAik5bKcD6s6nXDCjzUKnaDvdkRyAk6rsmsKLipWj4797iothd7jmmUhWTfinVMU+wc56rYKsit2Qy4w== @@ -13899,7 +14637,7 @@ ret@~0.1.10: resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== -retry@0.12.0: +retry@0.12.0, retry@^0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" integrity sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs= @@ -13937,7 +14675,7 @@ rgba-regex@^1.0.0: resolved "https://registry.yarnpkg.com/rgba-regex/-/rgba-regex-1.0.0.tgz#43374e2e2ca0968b0ef1523460b7d730ff22eeb3" integrity sha1-QzdOLiyglosO8VI0YLfXMP8i7rM= -rimraf@2, rimraf@^2.2.8, rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.2, rimraf@^2.6.3: +rimraf@2, rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.2, rimraf@^2.6.3, rimraf@^2.7.1: version "2.7.1" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== @@ -14044,6 +14782,11 @@ sane@^4.0.3: minimist "^1.1.1" walker "~1.0.5" +sanitize.css@^10.0.0: + version "10.0.0" + resolved "https://registry.yarnpkg.com/sanitize.css/-/sanitize.css-10.0.0.tgz#b5cb2547e96d8629a60947544665243b1dc3657a" + integrity sha512-vTxrZz4dX5W86M6oVWVdOVe72ZiPs41Oi7Z6Km4W5Turyz28mrXSJhhEBZoRtzJWIv3833WKVwLSDWWkEfupMg== + saslprep@^1.0.0: version "1.0.3" resolved "https://registry.yarnpkg.com/saslprep/-/saslprep-1.0.3.tgz#4c02f946b56cf54297e347ba1093e7acac4cf226" @@ -14051,16 +14794,16 @@ saslprep@^1.0.0: dependencies: sparse-bitfield "^3.0.3" -sass-loader@7.2.0: - version "7.2.0" - resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-7.2.0.tgz#e34115239309d15b2527cb62b5dfefb62a96ff7f" - integrity sha512-h8yUWaWtsbuIiOCgR9fd9c2lRXZ2uG+h8Dzg/AGNj+Hg/3TO8+BBAW9mEP+mh8ei+qBKqSJ0F1FLlYjNBc61OA== +sass-loader@8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-8.0.0.tgz#e7b07a3e357f965e6b03dd45b016b0a9746af797" + integrity sha512-+qeMu563PN7rPdit2+n5uuYVR0SSVwm0JsOUsaJXzgYcClWSlmX0iHDnmeOobPkf5kUglVot3QS6SyLyaQoJ4w== dependencies: clone-deep "^4.0.1" - loader-utils "^1.0.1" - neo-async "^2.5.0" - pify "^4.0.1" - semver "^5.5.0" + loader-utils "^1.2.3" + neo-async "^2.6.1" + schema-utils "^2.1.0" + semver "^6.3.0" sax@>=0.6.0, sax@^1.2.4, sax@~1.2.4: version "1.2.4" @@ -14099,12 +14842,20 @@ schema-utils@^2.0.0, schema-utils@^2.0.1, schema-utils@^2.2.0: ajv "^6.10.2" ajv-keywords "^3.4.1" +schema-utils@^2.1.0, schema-utils@^2.5.0: + version "2.6.1" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.6.1.tgz#eb78f0b945c7bcfa2082b3565e8db3548011dc4f" + integrity sha512-0WXHDs1VDJyo+Zqs9TKLKyD/h7yDpHUhEFsM2CzkICFdoX1av+GBq/J2xRTFfsQO5kBfhZzANf2VcIm84jqDbg== + dependencies: + ajv "^6.10.2" + ajv-keywords "^3.4.1" + select-hose@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" integrity sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo= -selfsigned@^1.9.1: +selfsigned@^1.10.7: version "1.10.7" resolved "https://registry.yarnpkg.com/selfsigned/-/selfsigned-1.10.7.tgz#da5819fd049d5574f28e88a9bcc6dbc6e6f3906b" integrity sha512-8M3wBCzeWIJnQfl43IKwOmC4H/RAp50S8DF60znzjW5GVqTcSe2vWclt7hmYVPkKPlHWOu5EaWOMZ2Y6W8ZXTA== @@ -14175,7 +14926,12 @@ serialize-javascript@^1.7.0: resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-1.9.1.tgz#cfc200aef77b600c47da9bb8149c943e798c2fdb" integrity sha512-0Vb/54WJ6k5v8sSWN09S0ora+Hnr+cX40r9F170nT+mSkaxltoE/7R3OrIdBSUv1OoiobH1QoWQbCnAO+e8J1A== -serve-index@^1.7.2: +serialize-javascript@^2.1.0: + version "2.1.2" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-2.1.2.tgz#ecec53b0e0317bdc95ef76ab7074b7384785fa61" + integrity sha512-rs9OggEUF0V4jUSecXazOYsLfu7OGK2qIn3c7IPBiffz32XniEp/TX9Xmc9LQfK2nQ2QKHvZ2oygKUGU0lG4jQ== + +serve-index@^1.9.1: version "1.9.1" resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239" integrity sha1-03aNabHn2C5c4FD/9bRTvqEqkjk= @@ -14409,18 +15165,6 @@ snapdragon@^0.8.1: source-map-resolve "^0.5.0" use "^3.1.0" -sockjs-client@1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.3.0.tgz#12fc9d6cb663da5739d3dc5fb6e8687da95cb177" - integrity sha512-R9jxEzhnnrdxLCNln0xg5uGHqMnkhPSTzUZH2eXcR03S/On9Yvoq2wyUZILRUhZCNVu2PmwWVoyuiPz8th8zbg== - dependencies: - debug "^3.2.5" - eventsource "^1.0.7" - faye-websocket "~0.11.1" - inherits "^2.0.3" - json3 "^3.3.2" - url-parse "^1.4.3" - sockjs-client@1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.4.0.tgz#c9f2568e19c8fd8173b4997ea3420e0bb306c7d5" @@ -14560,7 +15304,7 @@ spdy-transport@^3.0.0: readable-stream "^3.0.6" wbuf "^1.7.3" -spdy@^4.0.0: +spdy@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/spdy/-/spdy-4.0.1.tgz#6f12ed1c5db7ea4f24ebb8b89ba58c87c08257f2" integrity sha512-HeZS3PBdMA+sZSu0qwpCxl3DeALD5ASx8pAX0jZdKXSpPWbQ6SYGnlg3BBmYLx5LtiZrmkAZfErCm2oECBcioA== @@ -14626,6 +15370,14 @@ ssri@^6.0.0, ssri@^6.0.1: dependencies: figgy-pudding "^3.5.1" +ssri@^7.0.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/ssri/-/ssri-7.1.0.tgz#92c241bf6de82365b5c7fb4bd76e975522e1294d" + integrity sha512-77/WrDZUWocK0mvA5NTRQyveUf+wsrIc6vyrxpS8tVvYBcX215QbafrJR3KtkpskIzoFLqqNuuYQvxaMjXJ/0g== + dependencies: + figgy-pudding "^3.5.1" + minipass "^3.1.1" + stable@^0.1.8: version "0.1.8" resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" @@ -15033,7 +15785,21 @@ term-size@^1.2.0: dependencies: execa "^0.7.0" -terser-webpack-plugin@1.4.1, terser-webpack-plugin@^1.4.1: +terser-webpack-plugin@2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-2.2.1.tgz#5569e6c7d8be79e5e43d6da23acc3b6ba77d22bd" + integrity sha512-jwdauV5Al7zopR6OAYvIIRcxXCSvLjZjr7uZE8l2tIWb/ryrGN48sJftqGf5k9z09tWhajx53ldp0XPI080YnA== + dependencies: + cacache "^13.0.1" + find-cache-dir "^3.0.0" + jest-worker "^24.9.0" + schema-utils "^2.5.0" + serialize-javascript "^2.1.0" + source-map "^0.6.1" + terser "^4.3.9" + webpack-sources "^1.4.3" + +terser-webpack-plugin@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.4.1.tgz#61b18e40eaee5be97e771cdbb10ed1280888c2b4" integrity sha512-ZXmmfiwtCLfz8WKZyYUuuHf3dMYEjg8NrjHMb0JqHVHVOSkzp3cW2/XG1fP3tRhqEqSzMwzzRQGtAPbs4Cncxg== @@ -15057,6 +15823,15 @@ terser@^4.1.2: source-map "~0.6.1" source-map-support "~0.5.12" +terser@^4.3.9: + version "4.4.2" + resolved "https://registry.yarnpkg.com/terser/-/terser-4.4.2.tgz#448fffad0245f4c8a277ce89788b458bfd7706e8" + integrity sha512-Uufrsvhj9O1ikwgITGsZ5EZS6qPokUOkCegS7fYOdGTv+OA90vndUbU6PEjr5ePqHfNUbGyMO7xyIZv2MhsALQ== + dependencies: + commander "^2.20.0" + source-map "~0.6.1" + source-map-support "~0.5.12" + test-exclude@^5.2.3: version "5.2.3" resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-5.2.3.tgz#c3d3e1e311eb7ee405e092dac10aefd09091eac0" @@ -15309,12 +16084,7 @@ ts-node@8.5.4: source-map-support "^0.5.6" yn "^3.0.0" -ts-pnp@1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/ts-pnp/-/ts-pnp-1.1.4.tgz#ae27126960ebaefb874c6d7fa4729729ab200d90" - integrity sha512-1J/vefLC+BWSo+qe8OnJQfWTYRS6ingxjwqmHMqaMxXMj7kFtKLgAaYW3JeX3mktjgUL+etlU8/B4VUAUI9QGw== - -ts-pnp@^1.1.2: +ts-pnp@1.1.5, ts-pnp@^1.1.2: version "1.1.5" resolved "https://registry.yarnpkg.com/ts-pnp/-/ts-pnp-1.1.5.tgz#840e0739c89fce5f3abd9037bb091dbff16d9dec" integrity sha512-ti7OGMOUOzo66wLF3liskw6YQIaSsBgc4GOAlWRnIEj8htCxJUxskanMUoJOD6MDCRAXo36goXJZch+nOS0VMA== @@ -15612,14 +16382,14 @@ urix@^0.1.0: resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= -url-loader@2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-2.1.0.tgz#bcc1ecabbd197e913eca23f5e0378e24b4412961" - integrity sha512-kVrp/8VfEm5fUt+fl2E0FQyrpmOYgMEkBsv8+UDP1wFhszECq5JyGF33I7cajlVY90zRZ6MyfgKXngLvHYZX8A== +url-loader@2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-2.3.0.tgz#e0e2ef658f003efb8ca41b0f3ffbf76bab88658b" + integrity sha512-goSdg8VY+7nPZKUEChZSEtW5gjbS66USIGCeSJ1OVOJ7Yfuh/36YxCwMi5HVEJh6mqUYOoy3NJ0vlOMrWsSHog== dependencies: loader-utils "^1.2.3" mime "^2.4.4" - schema-utils "^2.0.0" + schema-utils "^2.5.0" url-parse-lax@^1.0.0: version "1.0.0" @@ -15803,7 +16573,7 @@ webidl-conversions@^4.0.2: resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" integrity sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg== -webpack-dev-middleware@^3.5.1: +webpack-dev-middleware@^3.7.2: version "3.7.2" resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-3.7.2.tgz#0019c3db716e3fa5cecbf64f2ab88a74bab331f3" integrity sha512-1xC42LxbYoqLNAhV6YzTYacicgMZQTqRd27Sim9wn5hJrX3I5nxYy1SxSd4+gjUFsz1dQFj+yEe6zEVmSkeJjw== @@ -15814,41 +16584,44 @@ webpack-dev-middleware@^3.5.1: range-parser "^1.2.1" webpack-log "^2.0.0" -webpack-dev-server@3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-3.2.1.tgz#1b45ce3ecfc55b6ebe5e36dab2777c02bc508c4e" - integrity sha512-sjuE4mnmx6JOh9kvSbPYw3u/6uxCLHNWfhWaIPwcXWsvWOPN+nc5baq4i9jui3oOBRXGonK9+OI0jVkaz6/rCw== +webpack-dev-server@3.9.0: + version "3.9.0" + resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-3.9.0.tgz#27c3b5d0f6b6677c4304465ac817623c8b27b89c" + integrity sha512-E6uQ4kRrTX9URN9s/lIbqTAztwEPdvzVrcmHE8EQ9YnuT9J8Es5Wrd8n9BKg1a0oZ5EgEke/EQFgUsp18dSTBw== dependencies: ansi-html "0.0.7" bonjour "^3.5.0" - chokidar "^2.0.0" - compression "^1.5.2" - connect-history-api-fallback "^1.3.0" + chokidar "^2.1.8" + compression "^1.7.4" + connect-history-api-fallback "^1.6.0" debug "^4.1.1" - del "^3.0.0" - express "^4.16.2" - html-entities "^1.2.0" - http-proxy-middleware "^0.19.1" + del "^4.1.1" + express "^4.17.1" + html-entities "^1.2.1" + http-proxy-middleware "0.19.1" import-local "^2.0.0" - internal-ip "^4.2.0" + internal-ip "^4.3.0" ip "^1.1.5" - killable "^1.0.0" - loglevel "^1.4.1" - opn "^5.1.0" - portfinder "^1.0.9" + is-absolute-url "^3.0.3" + killable "^1.0.1" + loglevel "^1.6.4" + opn "^5.5.0" + p-retry "^3.0.1" + portfinder "^1.0.25" schema-utils "^1.0.0" - selfsigned "^1.9.1" - semver "^5.6.0" - serve-index "^1.7.2" + selfsigned "^1.10.7" + semver "^6.3.0" + serve-index "^1.9.1" sockjs "0.3.19" - sockjs-client "1.3.0" - spdy "^4.0.0" - strip-ansi "^3.0.0" + sockjs-client "1.4.0" + spdy "^4.0.1" + strip-ansi "^3.0.1" supports-color "^6.1.0" url "^0.11.0" - webpack-dev-middleware "^3.5.1" + webpack-dev-middleware "^3.7.2" webpack-log "^2.0.0" - yargs "12.0.2" + ws "^6.2.1" + yargs "12.0.5" webpack-log@^2.0.0: version "2.0.0" @@ -15858,17 +16631,17 @@ webpack-log@^2.0.0: ansi-colors "^3.0.0" uuid "^3.3.2" -webpack-manifest-plugin@2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/webpack-manifest-plugin/-/webpack-manifest-plugin-2.1.1.tgz#6b3e280327815b83152c79f42d0ca13b665773c4" - integrity sha512-2zqJ6mvc3yoiqfDjghAIpljhLSDh/G7vqGrzYcYqqRCd/ZZZCAuc/YPE5xG0LGpLgDJRhUNV1H+znyyhIxahzA== +webpack-manifest-plugin@2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/webpack-manifest-plugin/-/webpack-manifest-plugin-2.2.0.tgz#19ca69b435b0baec7e29fbe90fb4015de2de4f16" + integrity sha512-9S6YyKKKh/Oz/eryM1RyLVDVmy3NSPV0JXMRhZ18fJsq+AwGxUY34X54VNwkzYcEmEkDwNxuEOboCZEebJXBAQ== dependencies: fs-extra "^7.0.0" lodash ">=3.5 <5" object.entries "^1.1.0" tapable "^1.0.0" -webpack-sources@^1.1.0, webpack-sources@^1.4.0, webpack-sources@^1.4.1: +webpack-sources@^1.1.0, webpack-sources@^1.4.0, webpack-sources@^1.4.1, webpack-sources@^1.4.3: version "1.4.3" resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933" integrity sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ== @@ -15876,10 +16649,10 @@ webpack-sources@^1.1.0, webpack-sources@^1.4.0, webpack-sources@^1.4.1: source-list-map "^2.0.0" source-map "~0.6.1" -webpack@4.41.0: - version "4.41.0" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.41.0.tgz#db6a254bde671769f7c14e90a1a55e73602fc70b" - integrity sha512-yNV98U4r7wX1VJAj5kyMsu36T8RPPQntcb5fJLOsMz/pt/WrKC0Vp1bAlqPLkA1LegSwQwf6P+kAbyhRKVQ72g== +webpack@4.41.2: + version "4.41.2" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.41.2.tgz#c34ec76daa3a8468c9b61a50336d8e3303dce74e" + integrity sha512-Zhw69edTGfbz9/8JJoyRQ/pq8FYUoY0diOXqW0T6yhgdhCv6wr0hra5DwwWexNRns2Z2+gsnrNcbe9hbGBgk/A== dependencies: "@webassemblyjs/ast" "1.8.5" "@webassemblyjs/helper-module-context" "1.8.5" @@ -15926,7 +16699,7 @@ whatwg-encoding@^1.0.1, whatwg-encoding@^1.0.3, whatwg-encoding@^1.0.5: dependencies: iconv-lite "0.4.24" -whatwg-fetch@3.0.0, whatwg-fetch@>=0.10.0: +whatwg-fetch@3.0.0, whatwg-fetch@>=0.10.0, whatwg-fetch@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.0.0.tgz#fc804e458cc460009b1a2b966bc8817d2578aefb" integrity sha512-9GSJUgz1D4MfyKU7KRqwOjXCXTqWdFNvEr7eUBYchQiVc744mqK/MzXPNR2WsPkmkOa4ywfg8C2n8h+13Bey1Q== @@ -16247,7 +17020,7 @@ ws@^5.2.0: dependencies: async-limiter "~1.0.0" -ws@^6.0.0, ws@^6.1.2: +ws@^6.0.0, ws@^6.1.2, ws@^6.2.1: version "6.2.1" resolved "https://registry.yarnpkg.com/ws/-/ws-6.2.1.tgz#442fdf0a47ed64f59b6a5d8ff130f4748ed524fb" integrity sha512-GIyAXC2cB7LjvpgMt9EKS2ldqr0MTrORaleiOno6TweZ6r3TKtoFQWay/2PceJ3RuBasOHzXNn5Lrw1X0bEjqA== @@ -16283,11 +17056,6 @@ xmlchars@^2.1.1: resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw== -xregexp@4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/xregexp/-/xregexp-4.0.0.tgz#e698189de49dd2a18cc5687b05e17c8e43943020" - integrity sha512-PHyM+sQouu7xspQQwELlGwwd05mXUFqwFYfqPO0cC7x4fxyHnnuetmQr6CjJiafIDoH4MogHb9dOoJzR/Y4rFg== - xtend@^4.0.0, xtend@~4.0.1: version "4.0.2" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" @@ -16313,6 +17081,18 @@ yallist@^3.0.0, yallist@^3.0.2, yallist@^3.0.3: resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== +yallist@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" + integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== + +yaml@^1.7.2: + version "1.7.2" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.7.2.tgz#f26aabf738590ab61efaca502358e48dc9f348b2" + integrity sha512-qXROVp90sb83XtAoqE8bP9RwAkTTZbugRUTm5YeFCBfNRPEp2YzTeqWiz7m5OORHzEvrA/qcGS8hp/E+MMROYw== + dependencies: + "@babel/runtime" "^7.6.3" + yargonaut@^1.1.2: version "1.1.4" resolved "https://registry.yarnpkg.com/yargonaut/-/yargonaut-1.1.4.tgz#c64f56432c7465271221f53f5cc517890c3d6e0c" @@ -16322,13 +17102,21 @@ yargonaut@^1.1.2: figlet "^1.1.1" parent-require "^1.0.0" -yargs-parser@10.x, yargs-parser@^10.1.0: +yargs-parser@10.x: version "10.1.0" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-10.1.0.tgz#7202265b89f7e9e9f2e5765e0fe735a905edbaa8" integrity sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ== dependencies: camelcase "^4.1.0" +yargs-parser@^11.1.1: + version "11.1.1" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-11.1.1.tgz#879a0865973bca9f6bab5cbdf3b1c67ec7d3bcf4" + integrity sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ== + dependencies: + camelcase "^5.0.0" + decamelize "^1.2.0" + yargs-parser@^13.1.1: version "13.1.1" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.1.tgz#d26058532aa06d365fe091f6a1fc06b2f7e5eca0" @@ -16352,13 +17140,13 @@ yargs-parser@^7.0.0: dependencies: camelcase "^4.1.0" -yargs@12.0.2: - version "12.0.2" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-12.0.2.tgz#fe58234369392af33ecbef53819171eff0f5aadc" - integrity sha512-e7SkEx6N6SIZ5c5H22RTZae61qtn3PYUE8JYbBFlK9sYmh3DMQ6E5ygtaG/2BW0JZi4WGgTR2IV5ChqlqrDGVQ== +yargs@12.0.5: + version "12.0.5" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-12.0.5.tgz#05f5997b609647b64f66b81e3b4b10a368e7ad13" + integrity sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw== dependencies: cliui "^4.0.0" - decamelize "^2.0.0" + decamelize "^1.2.0" find-up "^3.0.0" get-caller-file "^1.0.1" os-locale "^3.0.0" @@ -16368,7 +17156,7 @@ yargs@12.0.2: string-width "^2.0.0" which-module "^2.0.0" y18n "^3.2.1 || ^4.0.0" - yargs-parser "^10.1.0" + yargs-parser "^11.1.1" yargs@^13.2.1, yargs@^13.3.0: version "13.3.0" From 87f5bacdfc488d7910fa89de89bd095d2d9c623b Mon Sep 17 00:00:00 2001 From: pradel Date: Sun, 15 Dec 2019 12:08:11 +0100 Subject: [PATCH 049/146] Fix express authenticators route --- packages/rest-express/src/express-middleware.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/rest-express/src/express-middleware.ts b/packages/rest-express/src/express-middleware.ts index aaccc0ee3..bc7e9832c 100644 --- a/packages/rest-express/src/express-middleware.ts +++ b/packages/rest-express/src/express-middleware.ts @@ -13,6 +13,7 @@ import { registerPassword } from './endpoints/password/register'; import { twoFactorSecret, twoFactorSet, twoFactorUnset } from './endpoints/password/two-factor'; import { changePassword } from './endpoints/password/change-password'; import { associate } from './endpoints/mfa/associate'; +import { authenticators } from './endpoints/mfa/authenticators'; import { userLoader } from './user-loader'; import { AccountsExpressOptions } from './types'; @@ -49,7 +50,11 @@ const accountsExpress = ( router.post(`${path}/mfa/associate`, userLoader(accountsServer), associate(accountsServer)); - router.get(`${path}/mfa/authenticators`, userLoader(accountsServer), associate(accountsServer)); + router.get( + `${path}/mfa/authenticators`, + userLoader(accountsServer), + authenticators(accountsServer) + ); const services = accountsServer.getServices(); From 5285bab248cc272eb1bea0e0a0ba5a3f340e73c4 Mon Sep 17 00:00:00 2001 From: pradel Date: Sun, 15 Dec 2019 12:08:29 +0100 Subject: [PATCH 050/146] Start security page --- examples/react-rest-typescript/package.json | 1 + examples/react-rest-typescript/src/Router.tsx | 2 + .../react-rest-typescript/src/Security.tsx | 38 +++++++++++++++++++ yarn.lock | 19 ++++------ 4 files changed, 49 insertions(+), 11 deletions(-) create mode 100644 examples/react-rest-typescript/src/Security.tsx diff --git a/examples/react-rest-typescript/package.json b/examples/react-rest-typescript/package.json index a77199987..e628aaff5 100644 --- a/examples/react-rest-typescript/package.json +++ b/examples/react-rest-typescript/package.json @@ -28,6 +28,7 @@ "@accounts/client-password": "^0.20.0", "@accounts/rest-client": "^0.20.0", "@material-ui/core": "4.7.2", + "@material-ui/icons": "4.5.1", "@material-ui/styles": "4.7.1", "qrcode.react": "1.0.0", "react": "16.12.0", diff --git a/examples/react-rest-typescript/src/Router.tsx b/examples/react-rest-typescript/src/Router.tsx index 19ffffea9..b41aac336 100644 --- a/examples/react-rest-typescript/src/Router.tsx +++ b/examples/react-rest-typescript/src/Router.tsx @@ -9,6 +9,7 @@ import Home from './Home'; import ResetPassword from './ResetPassword'; import VerifyEmail from './VerifyEmail'; import TwoFactor from './TwoFactor'; +import { Security } from './Security'; const useStyles = makeStyles({ root: { @@ -31,6 +32,7 @@ const Router = () => { + diff --git a/examples/react-rest-typescript/src/Security.tsx b/examples/react-rest-typescript/src/Security.tsx new file mode 100644 index 000000000..d213038fd --- /dev/null +++ b/examples/react-rest-typescript/src/Security.tsx @@ -0,0 +1,38 @@ +import React, { useState, useEffect } from 'react'; +import FiberManualRecordIcon from '@material-ui/icons/FiberManualRecord'; +import { Authenticator } from '@accounts/types'; +import { accountsClient } from './accounts'; + +export const Security = () => { + const [authenticators, setAuthenticators] = useState([]); + + useEffect(() => { + const fetchAuthenticators = async () => { + const data = await accountsClient.authenticators(); + setAuthenticators(data); + console.log(data); + }; + + fetchAuthenticators(); + }, []); + + return ( +
+

TWO-FACTOR AUTHENTICATION

+ {authenticators.map(authenticator => { + if (authenticator.type === 'otp') { + return ( +
+

+ Authenticator App +

+

Created at: {(authenticator as any).createdAt}

+

Activated at: {authenticator.activatedAt}

+
+ ); + } + return null; + })} +
+ ); +}; diff --git a/yarn.lock b/yarn.lock index 132bb36ce..99a2bad6d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2993,6 +2993,13 @@ react-is "^16.8.0" react-transition-group "^4.3.0" +"@material-ui/icons@4.5.1": + version "4.5.1" + resolved "https://registry.yarnpkg.com/@material-ui/icons/-/icons-4.5.1.tgz#6963bad139e938702ece85ca43067688018f04f8" + integrity sha512-YZ/BgJbXX4a0gOuKWb30mBaHaoXRqPanlePam83JQPZ/y4kl+3aW0Wv9tlR70hB5EGAkEJGW5m4ktJwMgxQAeA== + dependencies: + "@babel/runtime" "^7.4.4" + "@material-ui/styles@4.7.1", "@material-ui/styles@^4.7.1": version "4.7.1" resolved "https://registry.yarnpkg.com/@material-ui/styles/-/styles-4.7.1.tgz#48fa70f06441c35e301a9c4b6c825526a97b7a29" @@ -3621,21 +3628,11 @@ dependencies: "@types/node" "*" -"@types/node@*", "@types/node@12.12.7", "@types/node@>= 8", "@types/node@>=6": +"@types/node@*", "@types/node@12.12.7", "@types/node@12.7.4", "@types/node@>= 8", "@types/node@>=6", "@types/node@^10.1.0": version "12.12.7" resolved "https://registry.yarnpkg.com/@types/node/-/node-12.12.7.tgz#01e4ea724d9e3bd50d90c11fd5980ba317d8fa11" integrity sha512-E6Zn0rffhgd130zbCbAr/JdXfXkoOUFAKNs/rF8qnafSJ8KYaA/j3oz7dcwal+lYjLA7xvdd5J4wdYpCTlP8+w== -"@types/node@12.7.4": - version "12.7.4" - resolved "https://registry.yarnpkg.com/@types/node/-/node-12.7.4.tgz#64db61e0359eb5a8d99b55e05c729f130a678b04" - integrity sha512-W0+n1Y+gK/8G2P/piTkBBN38Qc5Q1ZSO6B5H3QmPCUewaiXOo2GCAWZ4ElZCcNhjJuBSUSLGFUJnmlCn5+nxOQ== - -"@types/node@^10.1.0": - version "10.17.9" - resolved "https://registry.yarnpkg.com/@types/node/-/node-10.17.9.tgz#4f251a1ed77ac7ef09d456247d67fc8173f6b9da" - integrity sha512-+6VygF9LbG7Gaqeog2G7u1+RUcmo0q1rI+2ZxdIg2fAUngk5Vz9fOCHXdloNUOHEPd1EuuOpL5O0CdgN9Fx5UQ== - "@types/normalize-package-data@^2.4.0": version "2.4.0" resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz#e486d0d97396d79beedd0a6e33f4534ff6b4973e" From 78b3ad09b6f65fae00cd71eb21b5ffbbc82dc170 Mon Sep 17 00:00:00 2001 From: pradel Date: Mon, 20 Jan 2020 17:35:35 +0100 Subject: [PATCH 051/146] Fix package version --- examples/rest-express-typescript/package.json | 2 +- packages/authenticator-otp/package.json | 8 ++++---- yarn.lock | 20 ------------------- 3 files changed, 5 insertions(+), 25 deletions(-) diff --git a/examples/rest-express-typescript/package.json b/examples/rest-express-typescript/package.json index 593da2345..a911dddef 100644 --- a/examples/rest-express-typescript/package.json +++ b/examples/rest-express-typescript/package.json @@ -10,7 +10,7 @@ "test": "yarn build" }, "dependencies": { - "@accounts/authenticator-otp": "^0.20.0", + "@accounts/authenticator-otp": "^0.21.0", "@accounts/mongo": "^0.21.0", "@accounts/password": "^0.21.0", "@accounts/rest-express": "^0.21.0", diff --git a/packages/authenticator-otp/package.json b/packages/authenticator-otp/package.json index 6eed0ef33..464889bc7 100644 --- a/packages/authenticator-otp/package.json +++ b/packages/authenticator-otp/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/authenticator-otp", - "version": "0.20.0", + "version": "0.21.0", "description": "@accounts/authenticator-otp", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -29,18 +29,18 @@ "author": "Leo Pradel", "license": "MIT", "devDependencies": { - "@accounts/server": "^0.20.0", + "@accounts/server": "^0.21.0", "@types/jest": "24.0.23", "@types/node": "12.7.4", "jest": "24.9.0", "rimraf": "3.0.0" }, "dependencies": { - "@accounts/types": "^0.20.0", + "@accounts/types": "^0.21.0", "otplib": "11.0.1", "tslib": "1.10.0" }, "peerDependencies": { - "@accounts/server": "^0.20.0" + "@accounts/server": "^0.21.0" } } diff --git a/yarn.lock b/yarn.lock index 432360b6a..d46740069 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,26 +2,6 @@ # yarn lockfile v1 -"@accounts/server@^0.20.0": - version "0.20.1" - resolved "https://registry.yarnpkg.com/@accounts/server/-/server-0.20.1.tgz#526b16dedb627799a5568847d51c29ea2eda7b1c" - integrity sha512-zfOXgshyF/0bUyPjX2XRdi1ft9FnWx+dvSIkyovLyuvLL16olM7KDeSaSLuNDIPAtHLAWVDlDMJ3hww2UL+b4A== - dependencies: - "@accounts/types" "^0.20.1" - "@types/jsonwebtoken" "8.3.5" - emittery "0.5.1" - jsonwebtoken "8.5.1" - jwt-decode "2.2.0" - lodash "4.17.15" - tslib "1.10.0" - -"@accounts/types@^0.20.0", "@accounts/types@^0.20.1": - version "0.20.1" - resolved "https://registry.yarnpkg.com/@accounts/types/-/types-0.20.1.tgz#134de1586713844a926398b0cc081ecb8747cc90" - integrity sha512-k0c9XiePI9BU5WtgkB2WNwnqc13AUKmtlQxAtqdGIemMsHql1LUIuaV5TyhSAxEA6phe88dhlFW5Brlt2VRWrQ== - dependencies: - tslib "1.10.0" - "@apollo/protobufjs@^1.0.3": version "1.0.3" resolved "https://registry.yarnpkg.com/@apollo/protobufjs/-/protobufjs-1.0.3.tgz#02c655aedd4ba7c7f64cbc3d2b1dd9a000a391ba" From 8186630ba5c211aa463afb38b308ee7ecbb7659e Mon Sep 17 00:00:00 2001 From: pradel Date: Mon, 20 Jan 2020 17:44:58 +0100 Subject: [PATCH 052/146] Update TwoFactor.tsx --- .../react-rest-typescript/src/TwoFactor.tsx | 23 +++++++++++++++---- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/examples/react-rest-typescript/src/TwoFactor.tsx b/examples/react-rest-typescript/src/TwoFactor.tsx index a9ea36ff5..4acc9918c 100644 --- a/examples/react-rest-typescript/src/TwoFactor.tsx +++ b/examples/react-rest-typescript/src/TwoFactor.tsx @@ -12,7 +12,7 @@ import { } from '@material-ui/core'; import QRCode from 'qrcode.react'; import { useFormik, FormikErrors } from 'formik'; -import { accountsRest } from './accounts'; +import { accountsClient, accountsRest } from './accounts'; const useStyles = makeStyles(theme => ({ card: { @@ -36,13 +36,20 @@ const useStyles = makeStyles(theme => ({ }, })); +interface OTP { + mfaToken: string; + id: string; + otpauthUri: string; + secret: string; +} + interface TwoFactorValues { oneTimeCode: string; } export const TwoFactor = () => { const classes = useStyles(); - const [secret, setSecret] = useState(); + const [secret, setSecret] = useState(); const formik = useFormik({ initialValues: { oneTimeCode: '', @@ -55,8 +62,14 @@ export const TwoFactor = () => { return errors; }, onSubmit: async (values, { setSubmitting }) => { + if (!secret) return; + try { - await accountsRest.twoFactorSet(secret, values.oneTimeCode); + const res = await accountsRest.loginWithService('mfa', { + mfaToken: secret.mfaToken, + code: values.oneTimeCode, + }); + console.log(res); // TODO success message } catch (error) { // TODO snackbar? @@ -85,8 +98,8 @@ export const TwoFactor = () => { - Authenticator secret: {secret.base32} - + Authenticator secret: {secret.secret} + Date: Mon, 20 Jan 2020 17:55:20 +0100 Subject: [PATCH 053/146] cleanup example --- .../react-rest-typescript/src/TwoFactor.tsx | 107 ++++----------- .../src/TwoFactorOtp.tsx | 128 ++++++++++++++++++ 2 files changed, 155 insertions(+), 80 deletions(-) create mode 100644 examples/react-rest-typescript/src/TwoFactorOtp.tsx diff --git a/examples/react-rest-typescript/src/TwoFactor.tsx b/examples/react-rest-typescript/src/TwoFactor.tsx index 4acc9918c..8ebf00980 100644 --- a/examples/react-rest-typescript/src/TwoFactor.tsx +++ b/examples/react-rest-typescript/src/TwoFactor.tsx @@ -11,7 +11,7 @@ import { TextField, } from '@material-ui/core'; import QRCode from 'qrcode.react'; -import { useFormik, FormikErrors } from 'formik'; +import { Authenticator } from '@accounts/types'; import { accountsClient, accountsRest } from './accounts'; const useStyles = makeStyles(theme => ({ @@ -36,93 +36,40 @@ const useStyles = makeStyles(theme => ({ }, })); -interface OTP { - mfaToken: string; - id: string; - otpauthUri: string; - secret: string; -} - -interface TwoFactorValues { - oneTimeCode: string; -} - export const TwoFactor = () => { const classes = useStyles(); - const [secret, setSecret] = useState(); - const formik = useFormik({ - initialValues: { - oneTimeCode: '', - }, - validate: values => { - const errors: FormikErrors = {}; - if (!values.oneTimeCode) { - errors.oneTimeCode = 'Required'; - } - return errors; - }, - onSubmit: async (values, { setSubmitting }) => { - if (!secret) return; - - try { - const res = await accountsRest.loginWithService('mfa', { - mfaToken: secret.mfaToken, - code: values.oneTimeCode, - }); - console.log(res); - // TODO success message - } catch (error) { - // TODO snackbar? - alert(error); - } - setSubmitting(false); - }, - }); - - const fetchTwoFactorSecret = async () => { - // TODO try catch and show error if needed - const data = await accountsClient.mfaAssociate('otp'); - setSecret(data); - }; + const [authenticators, setAuthenticators] = useState([]); useEffect(() => { - fetchTwoFactorSecret(); + const fetchAuthenticators = async () => { + const data = await accountsClient.authenticators(); + setAuthenticators(data); + console.log(data); + }; + + fetchAuthenticators(); }, []); - if (!secret) { - return null; - } return ( -
- - - - Authenticator secret: {secret.secret} - - - - - - - - + + + + {authenticators.map(authenticator => { + if (authenticator.type === 'otp') { + return ( +
+ {/*

+ Authenticator App +

*/} +

Created at: {(authenticator as any).createdAt}

+

Activated at: {authenticator.activatedAt}

+
+ ); + } + return null; + })} +
); }; diff --git a/examples/react-rest-typescript/src/TwoFactorOtp.tsx b/examples/react-rest-typescript/src/TwoFactorOtp.tsx new file mode 100644 index 000000000..ba49066d3 --- /dev/null +++ b/examples/react-rest-typescript/src/TwoFactorOtp.tsx @@ -0,0 +1,128 @@ +import React, { useState, useEffect } from 'react'; +import { + Button, + Typography, + makeStyles, + Card, + CardContent, + CardHeader, + Divider, + CardActions, + TextField, +} from '@material-ui/core'; +import QRCode from 'qrcode.react'; +import { useFormik, FormikErrors } from 'formik'; +import { accountsClient, accountsRest } from './accounts'; + +const useStyles = makeStyles(theme => ({ + card: { + marginTop: theme.spacing(3), + }, + cardHeader: { + paddingLeft: theme.spacing(3), + paddingRight: theme.spacing(3), + }, + cardContent: { + padding: theme.spacing(3), + }, + cardActions: { + padding: theme.spacing(3), + }, + qrCode: { + marginTop: theme.spacing(2), + }, + textField: { + marginTop: theme.spacing(2), + }, +})); + +interface OTP { + mfaToken: string; + id: string; + otpauthUri: string; + secret: string; +} + +interface TwoFactorOtpValues { + oneTimeCode: string; +} + +export const TwoFactorOtp = () => { + const classes = useStyles(); + const [secret, setSecret] = useState(); + const formik = useFormik({ + initialValues: { + oneTimeCode: '', + }, + validate: values => { + const errors: FormikErrors = {}; + if (!values.oneTimeCode) { + errors.oneTimeCode = 'Required'; + } + return errors; + }, + onSubmit: async (values, { setSubmitting }) => { + if (!secret) return; + + try { + const res = await accountsRest.loginWithService('mfa', { + mfaToken: secret.mfaToken, + code: values.oneTimeCode, + }); + console.log(res); + // TODO success message + } catch (error) { + // TODO snackbar? + alert(error); + } + setSubmitting(false); + }, + }); + + const fetchTwoFactorSecret = async () => { + // TODO try catch and show error if needed + const data = await accountsClient.mfaAssociate('otp'); + setSecret(data); + }; + + useEffect(() => { + fetchTwoFactorSecret(); + }, []); + + if (!secret) { + return null; + } + return ( + +
+ + + + Authenticator secret: {secret.secret} + + + + + + + + +
+ ); +}; From 78f430a0164a7bdc532fa87b8dc43de0ac7603e4 Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 21 Jan 2020 08:26:11 +0100 Subject: [PATCH 054/146] Cleanup example --- examples/react-rest-typescript/src/Router.tsx | 7 ++- .../react-rest-typescript/src/TwoFactor.tsx | 50 ++++++++++++++----- 2 files changed, 43 insertions(+), 14 deletions(-) diff --git a/examples/react-rest-typescript/src/Router.tsx b/examples/react-rest-typescript/src/Router.tsx index 9dfab350d..046bb7148 100644 --- a/examples/react-rest-typescript/src/Router.tsx +++ b/examples/react-rest-typescript/src/Router.tsx @@ -9,6 +9,7 @@ import ResetPassword from './ResetPassword'; import VerifyEmail from './VerifyEmail'; import { Email } from './Email'; import { Security } from './Security'; +import { TwoFactorOtp } from './TwoFactorOtp'; // A wrapper for that redirects to the login // screen if you're not yet authenticated. @@ -46,9 +47,13 @@ const Router = () => { - + + + + + {/* TODO */} {/* Unauthenticated routes */} diff --git a/examples/react-rest-typescript/src/TwoFactor.tsx b/examples/react-rest-typescript/src/TwoFactor.tsx index 8ebf00980..2cfb7e619 100644 --- a/examples/react-rest-typescript/src/TwoFactor.tsx +++ b/examples/react-rest-typescript/src/TwoFactor.tsx @@ -10,9 +10,10 @@ import { CardActions, TextField, } from '@material-ui/core'; -import QRCode from 'qrcode.react'; +import FiberManualRecordIcon from '@material-ui/icons/FiberManualRecord'; import { Authenticator } from '@accounts/types'; import { accountsClient, accountsRest } from './accounts'; +import { useHistory } from 'react-router'; const useStyles = makeStyles(theme => ({ card: { @@ -25,19 +26,23 @@ const useStyles = makeStyles(theme => ({ cardContent: { padding: theme.spacing(3), }, - cardActions: { - padding: theme.spacing(3), + authenticatorItem: { + display: 'flex', + alignItems: 'center', + justifyContent: 'space-between', + minHeight: 48, }, - qrCode: { - marginTop: theme.spacing(2), + authenticatorItemTitle: { + display: 'flex', }, - textField: { - marginTop: theme.spacing(2), + authenticatorItemDot: { + marginRight: theme.spacing(2), }, })); export const TwoFactor = () => { const classes = useStyles(); + const history = useHistory(); const [authenticators, setAuthenticators] = useState([]); useEffect(() => { @@ -58,12 +63,31 @@ export const TwoFactor = () => { {authenticators.map(authenticator => { if (authenticator.type === 'otp') { return ( -
- {/*

- Authenticator App -

*/} -

Created at: {(authenticator as any).createdAt}

-

Activated at: {authenticator.activatedAt}

+
+
+ + Authenticator App +
+ {authenticator.active ? ( + + ) : ( + + )}
); } From b0cdf0b22f87fcc8966a9593925bf8fc88c4cde3 Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 21 Jan 2020 08:34:48 +0100 Subject: [PATCH 055/146] show otp error --- examples/react-rest-typescript/package.json | 1 + examples/react-rest-typescript/src/TwoFactor.tsx | 4 +--- examples/react-rest-typescript/src/TwoFactorOtp.tsx | 13 +++++++++++-- yarn.lock | 13 ++++++++++++- 4 files changed, 25 insertions(+), 6 deletions(-) diff --git a/examples/react-rest-typescript/package.json b/examples/react-rest-typescript/package.json index c271b455e..f4a1f1996 100644 --- a/examples/react-rest-typescript/package.json +++ b/examples/react-rest-typescript/package.json @@ -29,6 +29,7 @@ "@accounts/rest-client": "^0.21.0", "@material-ui/core": "4.8.1", "@material-ui/icons": "4.5.1", + "@material-ui/lab": "4.0.0-alpha.39", "@material-ui/styles": "4.7.1", "formik": "2.0.8", "qrcode.react": "1.0.0", diff --git a/examples/react-rest-typescript/src/TwoFactor.tsx b/examples/react-rest-typescript/src/TwoFactor.tsx index 2cfb7e619..7181179c4 100644 --- a/examples/react-rest-typescript/src/TwoFactor.tsx +++ b/examples/react-rest-typescript/src/TwoFactor.tsx @@ -7,12 +7,10 @@ import { CardContent, CardHeader, Divider, - CardActions, - TextField, } from '@material-ui/core'; import FiberManualRecordIcon from '@material-ui/icons/FiberManualRecord'; import { Authenticator } from '@accounts/types'; -import { accountsClient, accountsRest } from './accounts'; +import { accountsClient } from './accounts'; import { useHistory } from 'react-router'; const useStyles = makeStyles(theme => ({ diff --git a/examples/react-rest-typescript/src/TwoFactorOtp.tsx b/examples/react-rest-typescript/src/TwoFactorOtp.tsx index ba49066d3..ae763f9dc 100644 --- a/examples/react-rest-typescript/src/TwoFactorOtp.tsx +++ b/examples/react-rest-typescript/src/TwoFactorOtp.tsx @@ -10,6 +10,7 @@ import { CardActions, TextField, } from '@material-ui/core'; +import { Alert } from '@material-ui/lab'; import QRCode from 'qrcode.react'; import { useFormik, FormikErrors } from 'formik'; import { accountsClient, accountsRest } from './accounts'; @@ -34,6 +35,9 @@ const useStyles = makeStyles(theme => ({ textField: { marginTop: theme.spacing(2), }, + alertError: { + marginTop: theme.spacing(2), + }, })); interface OTP { @@ -50,6 +54,7 @@ interface TwoFactorOtpValues { export const TwoFactorOtp = () => { const classes = useStyles(); const [secret, setSecret] = useState(); + const [error, setError] = useState(); const formik = useFormik({ initialValues: { oneTimeCode: '', @@ -72,8 +77,7 @@ export const TwoFactorOtp = () => { console.log(res); // TODO success message } catch (error) { - // TODO snackbar? - alert(error); + setError(error.message); } setSubmitting(false); }, @@ -115,6 +119,11 @@ export const TwoFactorOtp = () => { : 'Scan the code with your Two-Factor app and enter the one time password to confirm' } /> + {error && ( + + {error} + + )} diff --git a/yarn.lock b/yarn.lock index d46740069..d29b1f63b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2373,6 +2373,17 @@ dependencies: "@babel/runtime" "^7.4.4" +"@material-ui/lab@4.0.0-alpha.39": + version "4.0.0-alpha.39" + resolved "https://registry.yarnpkg.com/@material-ui/lab/-/lab-4.0.0-alpha.39.tgz#715ec621111ce876f1744bde1e55018341c4be3e" + integrity sha512-TbYfqS0zWdOzH44K7x74+dcLlMe6o5zrIvvHA2y6IZ1l9a9/qLUZGLwBIOtkBPHDDDJ32rv/bOPzOGGbnxLUDw== + dependencies: + "@babel/runtime" "^7.4.4" + "@material-ui/utils" "^4.7.1" + clsx "^1.0.4" + prop-types "^15.7.2" + react-is "^16.8.0" + "@material-ui/styles@4.7.1", "@material-ui/styles@^4.7.1": version "4.7.1" resolved "https://registry.yarnpkg.com/@material-ui/styles/-/styles-4.7.1.tgz#48fa70f06441c35e301a9c4b6c825526a97b7a29" @@ -5341,7 +5352,7 @@ clone@^1.0.2: resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" integrity sha1-2jCcwmPfFZlMaIypAheco8fNfH4= -clsx@^1.0.2: +clsx@^1.0.2, clsx@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/clsx/-/clsx-1.0.4.tgz#0c0171f6d5cb2fe83848463c15fcc26b4df8c2ec" integrity sha512-1mQ557MIZTrL/140j+JVdRM6e31/OA4vTYxXgqIIZlndyfjHpyawKZia1Im05Vp9BWmImkcNrNtFYQMyFcgJDg== From 216b0b9a9b03ea0304b393f6b13c31ba000d6dd9 Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 21 Jan 2020 09:06:25 +0100 Subject: [PATCH 056/146] Update TwoFactorOtp.tsx --- .../src/TwoFactorOtp.tsx | 83 ++++++++++--------- 1 file changed, 46 insertions(+), 37 deletions(-) diff --git a/examples/react-rest-typescript/src/TwoFactorOtp.tsx b/examples/react-rest-typescript/src/TwoFactorOtp.tsx index ae763f9dc..f76b9ed28 100644 --- a/examples/react-rest-typescript/src/TwoFactorOtp.tsx +++ b/examples/react-rest-typescript/src/TwoFactorOtp.tsx @@ -14,8 +14,12 @@ import { Alert } from '@material-ui/lab'; import QRCode from 'qrcode.react'; import { useFormik, FormikErrors } from 'formik'; import { accountsClient, accountsRest } from './accounts'; +import { AuthenticatedContainer } from './components/AuthenticatedContainer'; const useStyles = makeStyles(theme => ({ + divider: { + marginTop: theme.spacing(2), + }, card: { marginTop: theme.spacing(3), }, @@ -75,7 +79,7 @@ export const TwoFactorOtp = () => { code: values.oneTimeCode, }); console.log(res); - // TODO success message + // TODO success message or redirect to the MFA page } catch (error) { setError(error.message); } @@ -96,42 +100,47 @@ export const TwoFactorOtp = () => { if (!secret) { return null; } + return ( - -
- - - - Authenticator secret: {secret.secret} - - - {error && ( - - {error} - - )} - - - - - - -
+ + Authenticator App + + +
+ + + + Authenticator secret: {secret.secret} + + + {error && ( + + {error} + + )} + + + + + + +
+
); }; From 5aa5b138486d1d28595229af6a91137264f7f066 Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 21 Jan 2020 09:08:48 +0100 Subject: [PATCH 057/146] redirect on success --- examples/react-rest-typescript/src/TwoFactorOtp.tsx | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/examples/react-rest-typescript/src/TwoFactorOtp.tsx b/examples/react-rest-typescript/src/TwoFactorOtp.tsx index f76b9ed28..20be12e15 100644 --- a/examples/react-rest-typescript/src/TwoFactorOtp.tsx +++ b/examples/react-rest-typescript/src/TwoFactorOtp.tsx @@ -11,6 +11,7 @@ import { TextField, } from '@material-ui/core'; import { Alert } from '@material-ui/lab'; +import { useHistory } from 'react-router'; import QRCode from 'qrcode.react'; import { useFormik, FormikErrors } from 'formik'; import { accountsClient, accountsRest } from './accounts'; @@ -57,6 +58,7 @@ interface TwoFactorOtpValues { export const TwoFactorOtp = () => { const classes = useStyles(); + const history = useHistory(); const [secret, setSecret] = useState(); const [error, setError] = useState(); const formik = useFormik({ @@ -74,12 +76,11 @@ export const TwoFactorOtp = () => { if (!secret) return; try { - const res = await accountsRest.loginWithService('mfa', { + await accountsRest.loginWithService('mfa', { mfaToken: secret.mfaToken, code: values.oneTimeCode, }); - console.log(res); - // TODO success message or redirect to the MFA page + history.push('/security'); } catch (error) { setError(error.message); } From 437511c460d345258e309ac51a3b104886793539 Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 21 Jan 2020 09:11:13 +0100 Subject: [PATCH 058/146] remove duplicate key prop --- examples/react-rest-typescript/src/TwoFactor.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/react-rest-typescript/src/TwoFactor.tsx b/examples/react-rest-typescript/src/TwoFactor.tsx index 7181179c4..23cdfe644 100644 --- a/examples/react-rest-typescript/src/TwoFactor.tsx +++ b/examples/react-rest-typescript/src/TwoFactor.tsx @@ -62,7 +62,7 @@ export const TwoFactor = () => { if (authenticator.type === 'otp') { return (
-
+
Date: Thu, 27 Feb 2020 15:38:32 +0100 Subject: [PATCH 059/146] add options to otp doc --- packages/authenticator-otp/src/index.ts | 2 +- website/docs/mfa/otp.md | 21 ++++++++++++++++++++- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/packages/authenticator-otp/src/index.ts b/packages/authenticator-otp/src/index.ts index 16964268a..60ac530cf 100644 --- a/packages/authenticator-otp/src/index.ts +++ b/packages/authenticator-otp/src/index.ts @@ -16,7 +16,7 @@ export interface AuthenticatorOtpOptions { * Two factor user name that will be displayed inside the user authenticator app, * usually a name, email etc.. * Will be called every time a user register a new device. - * That way you can display something like "Github (accounts-js)" in the authenticator app. + * That way you can display something like "Github (leo@accountsjs.com)" in the authenticator app. */ userName?: (userId: string) => Promise | string; } diff --git a/website/docs/mfa/otp.md b/website/docs/mfa/otp.md index cdba1de73..c3db76ab0 100644 --- a/website/docs/mfa/otp.md +++ b/website/docs/mfa/otp.md @@ -48,7 +48,26 @@ const accountsServer = new AccountsServer( ); ``` -### Examples +## Options + +```typescript +interface AuthenticatorOtpOptions { + /** + * Two factor app name that will be displayed inside the user authenticator app. + */ + appName?: string; + + /** + * Two factor user name that will be displayed inside the user authenticator app, + * usually a name, email etc.. + * Will be called every time a user register a new device. + * That way you can display something like "Github (leo@accountsjs.com)" in the authenticator app. + */ + userName?: (userId: string) => Promise | string; +} +``` + +## Examples To see how to integrate the package into your app you can check these examples: From 466fe98523ec4979c5b592a9ed1f6a916073eb63 Mon Sep 17 00:00:00 2001 From: pradel Date: Thu, 27 Feb 2020 15:39:41 +0100 Subject: [PATCH 060/146] Update otp.md --- website/docs/mfa/otp.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/mfa/otp.md b/website/docs/mfa/otp.md index c3db76ab0..d307e9645 100644 --- a/website/docs/mfa/otp.md +++ b/website/docs/mfa/otp.md @@ -148,7 +148,7 @@ await accountsRest.loginWithService('mfa', { If the call was successful, the authenticator is now activated and will be required next time the user try to login. -### Examples +## Examples To see how to integrate the package into your app you can check these examples: From a7d9d188fe96368bec3f9e9b6c172dbccc3070b7 Mon Sep 17 00:00:00 2001 From: pradel Date: Thu, 9 Apr 2020 14:05:03 +0200 Subject: [PATCH 061/146] Update package.json --- packages/authenticator-otp/package.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/authenticator-otp/package.json b/packages/authenticator-otp/package.json index 464889bc7..0aaf0ef76 100644 --- a/packages/authenticator-otp/package.json +++ b/packages/authenticator-otp/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/authenticator-otp", - "version": "0.21.0", + "version": "0.25.0", "description": "@accounts/authenticator-otp", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -29,14 +29,14 @@ "author": "Leo Pradel", "license": "MIT", "devDependencies": { - "@accounts/server": "^0.21.0", + "@accounts/server": "^0.25.0", "@types/jest": "24.0.23", "@types/node": "12.7.4", "jest": "24.9.0", "rimraf": "3.0.0" }, "dependencies": { - "@accounts/types": "^0.21.0", + "@accounts/types": "^0.25.0", "otplib": "11.0.1", "tslib": "1.10.0" }, From e936ad9b7e5ca7b78f3da13f3674ed7e7c7e358a Mon Sep 17 00:00:00 2001 From: pradel Date: Thu, 9 Apr 2020 14:08:56 +0200 Subject: [PATCH 062/146] revert --- packages/types/src/types/database-interface.ts | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/packages/types/src/types/database-interface.ts b/packages/types/src/types/database-interface.ts index 857a4da36..8a8a370a2 100644 --- a/packages/types/src/types/database-interface.ts +++ b/packages/types/src/types/database-interface.ts @@ -13,10 +13,7 @@ export interface DatabaseInterface // Find user by identity fields findUserById(userId: string): Promise; - /** - * Create and update users - */ - + // Create and update users createUser(user: CreateUser): Promise; // Auth services related operations From 53453c0bec2401d37a9d0c0dd7652a2980b5f544 Mon Sep 17 00:00:00 2001 From: pradel Date: Thu, 9 Apr 2020 14:13:41 +0200 Subject: [PATCH 063/146] Update graphql-client.ts --- packages/graphql-client/src/graphql-client.ts | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/packages/graphql-client/src/graphql-client.ts b/packages/graphql-client/src/graphql-client.ts index aff2300a0..526ad775d 100644 --- a/packages/graphql-client/src/graphql-client.ts +++ b/packages/graphql-client/src/graphql-client.ts @@ -151,14 +151,23 @@ export default class GraphQLClient implements TransportInterface { return this.mutate(changePasswordMutation, 'changePassword', { oldPassword, newPassword }); } + /** + * @inheritDoc + */ public async getTwoFactorSecret(): Promise { return this.query(getTwoFactorSecretQuery, 'twoFactorSecret', {}); } + /** + * @inheritDoc + */ public async twoFactorSet(secret: any, code: string): Promise { return this.mutate(twoFactorSetMutation, 'twoFactorSet', { secret, code }); } + /** + * @inheritDoc + */ public async twoFactorUnset(code: string): Promise { return this.mutate(twoFactorUnsetMutation, 'twoFactorUnset', { code }); } From fe2f6b6aafe0a17d56f1115e916c2effcff38c55 Mon Sep 17 00:00:00 2001 From: pradel Date: Thu, 9 Apr 2020 14:22:08 +0200 Subject: [PATCH 064/146] pass compilation --- packages/database-typeorm/src/typeorm.ts | 46 ++++++++++++++++++- packages/graphql-client/src/graphql-client.ts | 15 ++++++ 2 files changed, 60 insertions(+), 1 deletion(-) diff --git a/packages/database-typeorm/src/typeorm.ts b/packages/database-typeorm/src/typeorm.ts index e894f329e..834a672c3 100644 --- a/packages/database-typeorm/src/typeorm.ts +++ b/packages/database-typeorm/src/typeorm.ts @@ -1,4 +1,12 @@ -import { ConnectionInformations, CreateUser, DatabaseInterface } from '@accounts/types'; +import { + ConnectionInformations, + CreateUser, + DatabaseInterface, + CreateAuthenticator, + Authenticator, + CreateMfaChallenge, + MfaChallenge, +} from '@accounts/types'; import { Repository, getRepository } from 'typeorm'; import { User } from './entity/User'; import { UserEmail } from './entity/UserEmail'; @@ -432,4 +440,40 @@ export class AccountsTypeorm implements DatabaseInterface { } ); } + + /** + * MFA authenticators related operations + */ + + public async createAuthenticator(newAuthenticator: CreateAuthenticator): Promise { + throw new Error('Not implemented yet'); + } + + public async findAuthenticatorById(authenticatorId: string): Promise { + throw new Error('Not implemented yet'); + } + + public async findUserAuthenticators(userId: string): Promise { + throw new Error('Not implemented yet'); + } + + public async activateAuthenticator(authenticatorId: string): Promise { + throw new Error('Not implemented yet'); + } + + /** + * MFA challenges related operations + */ + + public async createMfaChallenge(newMfaChallenge: CreateMfaChallenge): Promise { + throw new Error('Not implemented yet'); + } + + public async findMfaChallengeByToken(token: string): Promise { + throw new Error('Not implemented yet'); + } + + public async deactivateMfaChallenge(mfaChallengeId: string): Promise { + throw new Error('Not implemented yet'); + } } diff --git a/packages/graphql-client/src/graphql-client.ts b/packages/graphql-client/src/graphql-client.ts index 526ad775d..ffd90dd9e 100644 --- a/packages/graphql-client/src/graphql-client.ts +++ b/packages/graphql-client/src/graphql-client.ts @@ -5,6 +5,7 @@ import { LoginResult, User, CreateUserResult, + Authenticator, } from '@accounts/types'; import { print } from 'graphql'; import gql from 'graphql-tag'; @@ -190,6 +191,20 @@ export default class GraphQLClient implements TransportInterface { }); } + /** + * @inheritDoc + */ + public async mfaAssociate(type: string, customHeaders?: object): Promise { + throw new Error('Not implemented yet'); + } + + /** + * @inheritDoc + */ + public async authenticators(customHeaders?: object): Promise { + throw new Error('Not implemented yet'); + } + private async mutate(mutation: any, resultField: any, variables: any = {}) { // If we are executing a refresh token mutation do not call refresh session again // otherwise it will end up in an infinite loop From bfcf4bc8f00c37851b3937ae0ca81a9d74671d3d Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 14 Apr 2020 12:01:48 +0200 Subject: [PATCH 065/146] Update findUserAuthenticators description --- packages/server/src/accounts-server.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/server/src/accounts-server.ts b/packages/server/src/accounts-server.ts index 8ffab43bb..81f04d635 100644 --- a/packages/server/src/accounts-server.ts +++ b/packages/server/src/accounts-server.ts @@ -679,6 +679,8 @@ Please set ambiguousErrorMessages to false to be able to use autologin.` /** * @description Return the list of the active and inactive authenticators for this user. + * The authenticators objects are whitelisted to not expose any sensitive informations to the client. + * If you want to get all the fields from the database, use the database `findUserAuthenticators` method directly. * @param {string} userId - User id linked to the authenticators. */ public async findUserAuthenticators(userId: string): Promise { From b4b51d3d91ed165ffc9a957949d51444a9850faf Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 14 Apr 2020 12:22:18 +0200 Subject: [PATCH 066/146] Add sanitize method --- packages/authenticator-otp/__tests__/index.ts | 13 +++++++++++++ packages/authenticator-otp/src/index.ts | 14 ++++++++++++-- packages/server/src/accounts-server.ts | 11 +++++++++-- .../types/authenticator/authenticator-service.ts | 1 + 4 files changed, 35 insertions(+), 4 deletions(-) diff --git a/packages/authenticator-otp/__tests__/index.ts b/packages/authenticator-otp/__tests__/index.ts index 52b4e3e4f..e811f50dc 100644 --- a/packages/authenticator-otp/__tests__/index.ts +++ b/packages/authenticator-otp/__tests__/index.ts @@ -32,4 +32,17 @@ describe('AuthenticatorOtp', () => { }); }); }); + + describe('sanitize', () => { + it('should remove the secret property', async () => { + const authenticator = { + id: '123', + secret: 'shouldBeRemoved', + }; + const result = authenticatorOtp.sanitize(authenticator as any); + expect(result).toEqual({ + id: authenticator.id, + }); + }); + }); }); diff --git a/packages/authenticator-otp/src/index.ts b/packages/authenticator-otp/src/index.ts index 60ac530cf..1f97eb3de 100644 --- a/packages/authenticator-otp/src/index.ts +++ b/packages/authenticator-otp/src/index.ts @@ -41,7 +41,7 @@ export class AuthenticatorOtp implements AuthenticatorService { } /** - * Start the association of a new OTP device + * @description Start the association of a new OTP device */ public async associate( userId: string, @@ -67,7 +67,7 @@ export class AuthenticatorOtp implements AuthenticatorService { } /** - * Verify that the code provided by the user is valid + * @description Verify that the code provided by the user is valid */ public async authenticate( authenticator: DbAuthenticatorOtp, @@ -79,4 +79,14 @@ export class AuthenticatorOtp implements AuthenticatorService { return otplib.authenticator.check(code, authenticator.secret); } + + /** + * @description Remove the sensitive fields from the database authenticator. The object + * returned by this function can be exposed to the user safely. + */ + public sanitize(authenticator: DbAuthenticatorOtp): Authenticator { + // The secret key should never be exposed to the user after the authenticator is linked + const { secret, ...safeAuthenticator } = authenticator; + return safeAuthenticator; + } } diff --git a/packages/server/src/accounts-server.ts b/packages/server/src/accounts-server.ts index 81f04d635..a3d194693 100644 --- a/packages/server/src/accounts-server.ts +++ b/packages/server/src/accounts-server.ts @@ -685,8 +685,15 @@ Please set ambiguousErrorMessages to false to be able to use autologin.` */ public async findUserAuthenticators(userId: string): Promise { const authenticators = await this.db.findUserAuthenticators(userId); - // TODO need to whitelist the fields returned, eg OTP should not expose the secret property - return authenticators; + return authenticators.map(authenticator => { + if ( + this.authenticators[authenticator.type] && + this.authenticators[authenticator.type].sanitize + ) { + return this.authenticators[authenticator.type].sanitize(authenticator); + } + return authenticator; + }); } /** diff --git a/packages/types/src/types/authenticator/authenticator-service.ts b/packages/types/src/types/authenticator/authenticator-service.ts index 25d113d4e..7f66fad66 100644 --- a/packages/types/src/types/authenticator/authenticator-service.ts +++ b/packages/types/src/types/authenticator/authenticator-service.ts @@ -7,5 +7,6 @@ export interface AuthenticatorService { setStore(store: DatabaseInterface): void; associate(userId: string, params: any): Promise; authenticate(authenticator: Authenticator, params: any): Promise; + sanitize?(authenticator: Authenticator): Authenticator; // TODO ability to delete an authenticator } From 2520896c907944bcc2df7a43595137fceea53c11 Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 14 Apr 2020 12:36:41 +0200 Subject: [PATCH 067/146] prettier --- packages/database-mongo/src/mongo.ts | 2 +- packages/server/src/accounts-server.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/database-mongo/src/mongo.ts b/packages/database-mongo/src/mongo.ts index 4c21921e7..382ff363b 100644 --- a/packages/database-mongo/src/mongo.ts +++ b/packages/database-mongo/src/mongo.ts @@ -483,7 +483,7 @@ export class Mongo implements DatabaseInterface { public async findUserAuthenticators(userId: string): Promise { const authenticators = await this.authenticatorCollection.find({ userId }).toArray(); - authenticators.forEach(authenticator => { + authenticators.forEach((authenticator) => { authenticator.id = authenticator._id.toString(); }); return authenticators; diff --git a/packages/server/src/accounts-server.ts b/packages/server/src/accounts-server.ts index a3d194693..9525569ba 100644 --- a/packages/server/src/accounts-server.ts +++ b/packages/server/src/accounts-server.ts @@ -685,7 +685,7 @@ Please set ambiguousErrorMessages to false to be able to use autologin.` */ public async findUserAuthenticators(userId: string): Promise { const authenticators = await this.db.findUserAuthenticators(userId); - return authenticators.map(authenticator => { + return authenticators.map((authenticator) => { if ( this.authenticators[authenticator.type] && this.authenticators[authenticator.type].sanitize From 2a1bd57172b577a988c05191af361403fef87873 Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 14 Apr 2020 12:42:26 +0200 Subject: [PATCH 068/146] Fix ts compilation --- packages/server/src/accounts-server.ts | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/packages/server/src/accounts-server.ts b/packages/server/src/accounts-server.ts index 9525569ba..fae331a95 100644 --- a/packages/server/src/accounts-server.ts +++ b/packages/server/src/accounts-server.ts @@ -686,11 +686,9 @@ Please set ambiguousErrorMessages to false to be able to use autologin.` public async findUserAuthenticators(userId: string): Promise { const authenticators = await this.db.findUserAuthenticators(userId); return authenticators.map((authenticator) => { - if ( - this.authenticators[authenticator.type] && - this.authenticators[authenticator.type].sanitize - ) { - return this.authenticators[authenticator.type].sanitize(authenticator); + const authenticatorService = this.authenticators[authenticator.type]; + if (authenticatorService && authenticatorService.sanitize) { + return authenticatorService.sanitize(authenticator); } return authenticator; }); From 3a70723b737854ce951bd516e00078cfbb3faae0 Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 14 Apr 2020 12:43:43 +0200 Subject: [PATCH 069/146] Update accounts-server.ts --- packages/server/src/accounts-server.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/server/src/accounts-server.ts b/packages/server/src/accounts-server.ts index fae331a95..576cd18d3 100644 --- a/packages/server/src/accounts-server.ts +++ b/packages/server/src/accounts-server.ts @@ -687,7 +687,7 @@ Please set ambiguousErrorMessages to false to be able to use autologin.` const authenticators = await this.db.findUserAuthenticators(userId); return authenticators.map((authenticator) => { const authenticatorService = this.authenticators[authenticator.type]; - if (authenticatorService && authenticatorService.sanitize) { + if (authenticatorService?.sanitize) { return authenticatorService.sanitize(authenticator); } return authenticator; From c773d3ec2d8b35abe1b3089b7412d24105392abc Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 14 Apr 2020 12:52:46 +0200 Subject: [PATCH 070/146] fix otp lint --- packages/authenticator-otp/src/index.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/authenticator-otp/src/index.ts b/packages/authenticator-otp/src/index.ts index 1f97eb3de..4d3348de3 100644 --- a/packages/authenticator-otp/src/index.ts +++ b/packages/authenticator-otp/src/index.ts @@ -45,6 +45,7 @@ export class AuthenticatorOtp implements AuthenticatorService { */ public async associate( userId: string, + // eslint-disable-next-line @typescript-eslint/no-unused-vars params: any ): Promise<{ id: string; secret: string; otpauthUri: string }> { const secret = otplib.authenticator.generateSecret(); @@ -86,7 +87,11 @@ export class AuthenticatorOtp implements AuthenticatorService { */ public sanitize(authenticator: DbAuthenticatorOtp): Authenticator { // The secret key should never be exposed to the user after the authenticator is linked - const { secret, ...safeAuthenticator } = authenticator; + const { + // eslint-disable-next-line @typescript-eslint/no-unused-vars + secret, + ...safeAuthenticator + } = authenticator; return safeAuthenticator; } } From 177fd40f30723b597fd5093c768d838d7892d0cb Mon Sep 17 00:00:00 2001 From: pradel Date: Thu, 16 Apr 2020 11:05:00 +0200 Subject: [PATCH 071/146] comments --- .../src/types/authenticator/create-authenticator.ts | 9 +++++++++ .../src/types/mfa-challenge/create-mfa-challenge.ts | 12 ++++++++++++ 2 files changed, 21 insertions(+) diff --git a/packages/types/src/types/authenticator/create-authenticator.ts b/packages/types/src/types/authenticator/create-authenticator.ts index 5236eb081..f29c3aa0f 100644 --- a/packages/types/src/types/authenticator/create-authenticator.ts +++ b/packages/types/src/types/authenticator/create-authenticator.ts @@ -1,6 +1,15 @@ export interface CreateAuthenticator { + /** + * Authenticator type + */ type: string; + /** + * User id linked to this authenticator + */ userId: string; + /** + * Is authenticator active + */ active: boolean; [additionalKey: string]: any; } diff --git a/packages/types/src/types/mfa-challenge/create-mfa-challenge.ts b/packages/types/src/types/mfa-challenge/create-mfa-challenge.ts index 59fd5d846..7c78e272d 100644 --- a/packages/types/src/types/mfa-challenge/create-mfa-challenge.ts +++ b/packages/types/src/types/mfa-challenge/create-mfa-challenge.ts @@ -1,6 +1,18 @@ export interface CreateMfaChallenge { + /** + * User id linked to this challenge + */ userId: string; + /** + * Authenticator that will be used to resolve this challenge + */ authenticatorId?: string; + /** + * Random token used to identify the challenge + */ token: string; + /** + * If scope is set to associate, the authenticate function will verify the authenticator next time the user call it + */ scope?: 'associate'; } From 59f25634a7113df0b92e12cfd1d16cb7cd1f0a13 Mon Sep 17 00:00:00 2001 From: pradel Date: Thu, 16 Apr 2020 17:11:18 +0200 Subject: [PATCH 072/146] add some doc --- website/docs/mfa/create-custom.md | 52 +++++++++++++++++++++++++++++++ website/docs/mfa/introduction.md | 25 +++++++++++++++ website/sidebars.js | 2 +- 3 files changed, 78 insertions(+), 1 deletion(-) create mode 100644 website/docs/mfa/create-custom.md create mode 100644 website/docs/mfa/introduction.md diff --git a/website/docs/mfa/create-custom.md b/website/docs/mfa/create-custom.md new file mode 100644 index 000000000..2e32bdaa7 --- /dev/null +++ b/website/docs/mfa/create-custom.md @@ -0,0 +1,52 @@ +--- +id: create-custom +title: Creating a custom factor +sidebar_label: Creating a custom factor +--- + +One of the features of accounts-js it's his modular architecture. This allow you to easily create your custom factors if the lib not provide the one you are looking for. + +_Since accounts-js is written in typescript, in this guide we will also assume that your factor is written in typescript. But the same logic can be applied to javascript._ + +## Default template + +All you need to do is to create a new file in your project (eg: `my-custom-factor.ts`) and then copy paste the following template: + +```ts +import { DatabaseInterface, AuthenticatorService, Authenticator } from '@accounts/types'; +import { AccountsServer } from '@accounts/server'; + +interface DbAuthenticatorMyCustomFactor extends Authenticator {} + +export class AuthenticatorMyCustomFactor implements AuthenticatorService { + public serviceName = 'my-custom-factor'; + + public server!: AccountsServer; + + private options: AuthenticatorOtpOptions & typeof defaultOptions; + private db!: DatabaseInterface; + + public setStore(store: DatabaseInterface) { + this.db = store; + } + + public async associate(userId: string, params: any): Promise { + // This method is called when a user start the association of a new factor. + } + + public async authenticate(authenticator: DbAuthenticatorOtp, params: any): Promise { + // This method is called when we need to resolve the challenge for the user. + // eg: when a user login or is trying to finish the association of an authenticator. + } + + public sanitize(authenticator: DbAuthenticatorMyCustomFactor): Authenticator { + // This methods is called every time a user query for the authenticators linked to his account. + } +} +``` + +Add your custom logic and then link it to your accounts-js server. + +For best practices and inspiration you should check the source code of the official factors we provide: + +- [One-Time Password](https://github.com/accounts-js/accounts/tree/master/packages/authenticator-otp) diff --git a/website/docs/mfa/introduction.md b/website/docs/mfa/introduction.md new file mode 100644 index 000000000..ccaa5dfbf --- /dev/null +++ b/website/docs/mfa/introduction.md @@ -0,0 +1,25 @@ +--- +id: introduction +title: Multi-factor Authentication +sidebar_label: Introduction +--- + +Multi-factor authentication (MFA) is an authentication method in which a computer user is granted access only after successfully presenting two or more pieces of evidence (or factors) to an authentication mechanism: + +- knowledge (something the user and only the user knows) +- possession (something the user and only the user has) +- inherence (something the user and only the user is) + +https://en.wikipedia.org/wiki/Multi-factor_authentication + +## Official factors + +For now, we provide the following official factors: + +- [One-Time Password](/docs/mfa/otp) + +## Community factors + +- Create a pull request to add your own. + +Not finding the one you are looking for? Check the guide to see how to [create a custom factor](/docs/mfa/create-custom). diff --git a/website/sidebars.js b/website/sidebars.js index b73b017c9..c01c18cd4 100755 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -46,7 +46,7 @@ module.exports = { 'strategies/oauth', 'strategies/twitter', ], - MFA: ['mfa/otp'], + MFA: ['mfa/introduction', 'mfa/otp', 'mfa/create-custom'], Cookbook: ['cookbook/react-native'], }, api: generatedApi, From 9fc0869b4beb83aa4480c137e066504886c5ccaa Mon Sep 17 00:00:00 2001 From: pradel Date: Fri, 17 Apr 2020 16:17:15 +0200 Subject: [PATCH 073/146] Update package.json --- packages/authenticator-otp/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/authenticator-otp/package.json b/packages/authenticator-otp/package.json index 0aaf0ef76..a8048bc1b 100644 --- a/packages/authenticator-otp/package.json +++ b/packages/authenticator-otp/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/authenticator-otp", - "version": "0.25.0", + "version": "0.25.1", "description": "@accounts/authenticator-otp", "main": "lib/index.js", "typings": "lib/index.d.ts", From 0e9eb3bcdf3c5416555647d97c91b817b07850f7 Mon Sep 17 00:00:00 2001 From: pradel Date: Fri, 17 Apr 2020 16:20:56 +0200 Subject: [PATCH 074/146] v0.26.0-alpha.0 --- examples/accounts-boost/package.json | 4 ++-- .../package.json | 12 +++++----- .../graphql-server-typescript/package.json | 14 +++++------ .../react-graphql-typescript/package.json | 10 ++++---- examples/react-rest-typescript/package.json | 8 +++---- examples/rest-express-typescript/package.json | 12 +++++----- lerna.json | 2 +- packages/apollo-link-accounts/package.json | 4 ++-- packages/authenticator-otp/package.json | 6 ++--- packages/boost/package.json | 10 ++++---- packages/client-password/package.json | 6 ++--- packages/client/package.json | 4 ++-- packages/database-manager/package.json | 4 ++-- packages/database-mongo/package.json | 6 ++--- packages/database-redis/package.json | 6 ++--- packages/database-tests/package.json | 4 ++-- packages/database-typeorm/package.json | 6 ++--- packages/e2e/package.json | 24 +++++++++---------- packages/error/package.json | 2 +- packages/express-session/package.json | 6 ++--- packages/graphql-api/package.json | 8 +++---- packages/graphql-client/package.json | 6 ++--- packages/oauth-instagram/package.json | 2 +- packages/oauth-twitter/package.json | 2 +- packages/oauth/package.json | 6 ++--- packages/password/package.json | 8 +++---- packages/rest-client/package.json | 6 ++--- packages/rest-express/package.json | 8 +++---- packages/server/package.json | 4 ++-- packages/two-factor/package.json | 4 ++-- packages/types/package.json | 2 +- 31 files changed, 103 insertions(+), 103 deletions(-) diff --git a/examples/accounts-boost/package.json b/examples/accounts-boost/package.json index 847d8468f..414bd1886 100644 --- a/examples/accounts-boost/package.json +++ b/examples/accounts-boost/package.json @@ -1,7 +1,7 @@ { "name": "@examples/accounts-boost", "private": true, - "version": "0.25.1", + "version": "0.26.0-alpha.0", "main": "lib/index.js", "license": "MIT", "scripts": { @@ -13,7 +13,7 @@ "test": "yarn build" }, "dependencies": { - "@accounts/boost": "^0.25.1", + "@accounts/boost": "^0.26.0-alpha.0", "apollo-link-context": "1.0.19", "apollo-link-http": "1.5.16", "apollo-server": "2.9.13", diff --git a/examples/graphql-server-typeorm-postgres/package.json b/examples/graphql-server-typeorm-postgres/package.json index db9da6fc4..0647ed0a8 100755 --- a/examples/graphql-server-typeorm-postgres/package.json +++ b/examples/graphql-server-typeorm-postgres/package.json @@ -1,7 +1,7 @@ { "name": "@examples/graphql-typeorm-typescript", "private": true, - "version": "0.25.1", + "version": "0.26.0-alpha.0", "main": "lib/index.js", "license": "Unlicensed", "scripts": { @@ -13,10 +13,10 @@ "test": "yarn build" }, "dependencies": { - "@accounts/graphql-api": "^0.25.1", - "@accounts/password": "^0.25.1", - "@accounts/server": "^0.25.1", - "@accounts/typeorm": "^0.25.1", + "@accounts/graphql-api": "^0.26.0-alpha.0", + "@accounts/password": "^0.26.0-alpha.0", + "@accounts/server": "^0.26.0-alpha.0", + "@accounts/typeorm": "^0.26.0-alpha.0", "@graphql-modules/core": "0.7.13", "apollo-server": "2.9.13", "graphql": "14.5.8", @@ -25,7 +25,7 @@ "typeorm": "0.2.22" }, "devDependencies": { - "@accounts/types": "^0.25.1", + "@accounts/types": "^0.26.0-alpha.0", "@types/node": "13.7.7", "nodemon": "2.0.2", "ts-node": "8.6.2", diff --git a/examples/graphql-server-typescript/package.json b/examples/graphql-server-typescript/package.json index 1da278fa4..f4fd6e150 100644 --- a/examples/graphql-server-typescript/package.json +++ b/examples/graphql-server-typescript/package.json @@ -1,7 +1,7 @@ { "name": "@examples/graphql-server-typescript", "private": true, - "version": "0.25.1", + "version": "0.26.0-alpha.0", "main": "lib/index.js", "license": "MIT", "scripts": { @@ -10,12 +10,12 @@ "test": "yarn build" }, "dependencies": { - "@accounts/database-manager": "^0.25.1", - "@accounts/graphql-api": "^0.25.1", - "@accounts/mongo": "^0.25.1", - "@accounts/password": "^0.25.1", - "@accounts/rest-express": "^0.25.1", - "@accounts/server": "^0.25.1", + "@accounts/database-manager": "^0.26.0-alpha.0", + "@accounts/graphql-api": "^0.26.0-alpha.0", + "@accounts/mongo": "^0.26.0-alpha.0", + "@accounts/password": "^0.26.0-alpha.0", + "@accounts/rest-express": "^0.26.0-alpha.0", + "@accounts/server": "^0.26.0-alpha.0", "@graphql-modules/core": "0.7.13", "apollo-server": "2.9.13", "graphql": "14.5.8", diff --git a/examples/react-graphql-typescript/package.json b/examples/react-graphql-typescript/package.json index eec8a6369..83d3fc170 100644 --- a/examples/react-graphql-typescript/package.json +++ b/examples/react-graphql-typescript/package.json @@ -1,6 +1,6 @@ { "name": "@examples/react-graphql-typescript", - "version": "0.25.1", + "version": "0.26.0-alpha.0", "private": true, "scripts": { "start": "SKIP_PREFLIGHT_CHECK=true react-scripts start", @@ -24,10 +24,10 @@ ] }, "dependencies": { - "@accounts/apollo-link": "^0.25.1", - "@accounts/client": "^0.25.1", - "@accounts/client-password": "^0.25.1", - "@accounts/graphql-client": "^0.25.1", + "@accounts/apollo-link": "^0.26.0-alpha.0", + "@accounts/client": "^0.26.0-alpha.0", + "@accounts/client-password": "^0.26.0-alpha.0", + "@accounts/graphql-client": "^0.26.0-alpha.0", "@apollo/react-hooks": "3.1.2", "@material-ui/core": "4.8.1", "@material-ui/styles": "4.7.1", diff --git a/examples/react-rest-typescript/package.json b/examples/react-rest-typescript/package.json index 3616010ff..ae0b8308c 100644 --- a/examples/react-rest-typescript/package.json +++ b/examples/react-rest-typescript/package.json @@ -1,6 +1,6 @@ { "name": "@examples/react-rest-typescript", - "version": "0.25.1", + "version": "0.26.0-alpha.0", "private": true, "scripts": { "start": "SKIP_PREFLIGHT_CHECK=true react-scripts start", @@ -24,9 +24,9 @@ ] }, "dependencies": { - "@accounts/client": "^0.25.1", - "@accounts/client-password": "^0.25.1", - "@accounts/rest-client": "^0.25.1", + "@accounts/client": "^0.26.0-alpha.0", + "@accounts/client-password": "^0.26.0-alpha.0", + "@accounts/rest-client": "^0.26.0-alpha.0", "@material-ui/core": "4.8.1", "@material-ui/icons": "4.5.1", "@material-ui/lab": "4.0.0-alpha.39", diff --git a/examples/rest-express-typescript/package.json b/examples/rest-express-typescript/package.json index 6c6807c82..0d1b5c6f5 100644 --- a/examples/rest-express-typescript/package.json +++ b/examples/rest-express-typescript/package.json @@ -1,7 +1,7 @@ { "name": "@examples/rest-express-typescript", "private": true, - "version": "0.25.1", + "version": "0.26.0-alpha.0", "main": "lib/index.js", "license": "MIT", "scripts": { @@ -10,11 +10,11 @@ "test": "yarn build" }, "dependencies": { - "@accounts/authenticator-otp": "^0.25.1", - "@accounts/mongo": "^0.25.1", - "@accounts/password": "^0.25.1", - "@accounts/rest-express": "^0.25.1", - "@accounts/server": "^0.25.1", + "@accounts/authenticator-otp": "^0.26.0-alpha.0", + "@accounts/mongo": "^0.26.0-alpha.0", + "@accounts/password": "^0.26.0-alpha.0", + "@accounts/rest-express": "^0.26.0-alpha.0", + "@accounts/server": "^0.26.0-alpha.0", "body-parser": "1.19.0", "cors": "2.8.5", "express": "4.17.1", diff --git a/lerna.json b/lerna.json index 80cf169ba..1f42491e0 100644 --- a/lerna.json +++ b/lerna.json @@ -2,5 +2,5 @@ "lerna": "2.11.0", "npmClient": "yarn", "useWorkspaces": true, - "version": "0.25.1" + "version": "0.26.0-alpha.0" } diff --git a/packages/apollo-link-accounts/package.json b/packages/apollo-link-accounts/package.json index b55eed795..35f658eec 100644 --- a/packages/apollo-link-accounts/package.json +++ b/packages/apollo-link-accounts/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/apollo-link", - "version": "0.25.1", + "version": "0.26.0-alpha.0", "description": "Apollo link for account-js", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -20,7 +20,7 @@ }, "license": "MIT", "devDependencies": { - "@accounts/client": "^0.25.1", + "@accounts/client": "^0.26.0-alpha.0", "apollo-link": "1.2.13", "rimraf": "3.0.0" }, diff --git a/packages/authenticator-otp/package.json b/packages/authenticator-otp/package.json index a8048bc1b..433448ffc 100644 --- a/packages/authenticator-otp/package.json +++ b/packages/authenticator-otp/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/authenticator-otp", - "version": "0.25.1", + "version": "0.26.0-alpha.0", "description": "@accounts/authenticator-otp", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -29,14 +29,14 @@ "author": "Leo Pradel", "license": "MIT", "devDependencies": { - "@accounts/server": "^0.25.0", + "@accounts/server": "^0.26.0-alpha.0", "@types/jest": "24.0.23", "@types/node": "12.7.4", "jest": "24.9.0", "rimraf": "3.0.0" }, "dependencies": { - "@accounts/types": "^0.25.0", + "@accounts/types": "^0.26.0-alpha.0", "otplib": "11.0.1", "tslib": "1.10.0" }, diff --git a/packages/boost/package.json b/packages/boost/package.json index f70d36ac7..2da549157 100644 --- a/packages/boost/package.json +++ b/packages/boost/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/boost", - "version": "0.25.1", + "version": "0.26.0-alpha.0", "description": "Ready to use GraphQL accounts server", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -23,10 +23,10 @@ "rimraf": "3.0.0" }, "dependencies": { - "@accounts/database-manager": "^0.25.1", - "@accounts/graphql-api": "^0.25.1", - "@accounts/server": "^0.25.1", - "@accounts/types": "^0.25.1", + "@accounts/database-manager": "^0.26.0-alpha.0", + "@accounts/graphql-api": "^0.26.0-alpha.0", + "@accounts/server": "^0.26.0-alpha.0", + "@accounts/types": "^0.26.0-alpha.0", "@graphql-modules/core": "0.7.14", "apollo-server": "^2.9.13", "graphql": "^14.5.4", diff --git a/packages/client-password/package.json b/packages/client-password/package.json index 66529566d..39e34c75b 100644 --- a/packages/client-password/package.json +++ b/packages/client-password/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/client-password", - "version": "0.25.1", + "version": "0.26.0-alpha.0", "description": "@accounts/client-password", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -35,8 +35,8 @@ "rimraf": "3.0.0" }, "dependencies": { - "@accounts/client": "^0.25.1", - "@accounts/types": "^0.25.1", + "@accounts/client": "^0.26.0-alpha.0", + "@accounts/types": "^0.26.0-alpha.0", "tslib": "1.10.0" } } diff --git a/packages/client/package.json b/packages/client/package.json index f06af03ad..7ab213deb 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/client", - "version": "0.25.1", + "version": "0.26.0-alpha.0", "description": "Fullstack authentication and accounts-management", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -53,7 +53,7 @@ "rimraf": "3.0.0" }, "dependencies": { - "@accounts/types": "^0.25.1", + "@accounts/types": "^0.26.0-alpha.0", "jwt-decode": "2.2.0", "tslib": "1.10.0" } diff --git a/packages/database-manager/package.json b/packages/database-manager/package.json index 346a60484..2f417657f 100644 --- a/packages/database-manager/package.json +++ b/packages/database-manager/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/database-manager", - "version": "0.25.1", + "version": "0.26.0-alpha.0", "description": "Accounts Database Manager, allow the use of separate databases for session and user", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -41,7 +41,7 @@ "rimraf": "3.0.0" }, "dependencies": { - "@accounts/types": "^0.25.1", + "@accounts/types": "^0.26.0-alpha.0", "tslib": "1.10.0" } } diff --git a/packages/database-mongo/package.json b/packages/database-mongo/package.json index 9de72ed1f..56ef75dfd 100644 --- a/packages/database-mongo/package.json +++ b/packages/database-mongo/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/mongo", - "version": "0.25.1", + "version": "0.26.0-alpha.0", "description": "MongoDB adaptor for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -29,7 +29,7 @@ "author": "Leo Pradel", "license": "MIT", "devDependencies": { - "@accounts/database-tests": "^0.25.1", + "@accounts/database-tests": "^0.26.0-alpha.0", "@types/jest": "25.1.4", "@types/lodash": "4.14.149", "@types/mongodb": "3.5.4", @@ -37,7 +37,7 @@ "jest": "25.1.0" }, "dependencies": { - "@accounts/types": "^0.25.1", + "@accounts/types": "^0.26.0-alpha.0", "lodash": "^4.17.15", "mongodb": "^3.4.1", "tslib": "1.10.0" diff --git a/packages/database-redis/package.json b/packages/database-redis/package.json index 7612ff8c0..51ba0bcf8 100644 --- a/packages/database-redis/package.json +++ b/packages/database-redis/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/redis", - "version": "0.25.1", + "version": "0.26.0-alpha.0", "description": "Redis adaptor for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -32,7 +32,7 @@ "author": "Leo Pradel", "license": "MIT", "devDependencies": { - "@accounts/database-tests": "^0.25.1", + "@accounts/database-tests": "^0.26.0-alpha.0", "@types/ioredis": "4.14.9", "@types/jest": "25.1.4", "@types/lodash": "4.14.149", @@ -41,7 +41,7 @@ "jest": "25.1.0" }, "dependencies": { - "@accounts/types": "^0.25.1", + "@accounts/types": "^0.26.0-alpha.0", "ioredis": "^4.14.1", "lodash": "^4.17.15", "shortid": "^2.2.15", diff --git a/packages/database-tests/package.json b/packages/database-tests/package.json index 91c5fd926..626839017 100644 --- a/packages/database-tests/package.json +++ b/packages/database-tests/package.json @@ -1,7 +1,7 @@ { "name": "@accounts/database-tests", "private": true, - "version": "0.25.1", + "version": "0.26.0-alpha.0", "main": "lib/index.js", "typings": "lib/index.d.ts", "scripts": { @@ -23,7 +23,7 @@ "jest": "25.1.0" }, "dependencies": { - "@accounts/types": "^0.25.1", + "@accounts/types": "^0.26.0-alpha.0", "tslib": "1.10.0" } } diff --git a/packages/database-typeorm/package.json b/packages/database-typeorm/package.json index 136da1689..d3bd16a9f 100644 --- a/packages/database-typeorm/package.json +++ b/packages/database-typeorm/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/typeorm", - "version": "0.25.1", + "version": "0.26.0-alpha.0", "description": "TypeORM adaptor for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -26,14 +26,14 @@ "author": "Birkir Gudjonsson ", "license": "MIT", "devDependencies": { - "@accounts/database-tests": "^0.25.1", + "@accounts/database-tests": "^0.26.0-alpha.0", "@types/jest": "25.1.4", "@types/node": "13.9.8", "jest": "25.1.0", "pg": "7.15.1" }, "dependencies": { - "@accounts/types": "^0.25.1", + "@accounts/types": "^0.26.0-alpha.0", "lodash": "^4.17.15", "reflect-metadata": "^0.1.13", "tslib": "1.10.0", diff --git a/packages/e2e/package.json b/packages/e2e/package.json index aea5fe0d3..13657d7c8 100644 --- a/packages/e2e/package.json +++ b/packages/e2e/package.json @@ -1,7 +1,7 @@ { "name": "@accounts/e2e", "private": true, - "version": "0.25.1", + "version": "0.26.0-alpha.0", "main": "lib/index.js", "typings": "lib/index.d.ts", "scripts": { @@ -32,17 +32,17 @@ "jest-localstorage-mock": "2.4.0" }, "dependencies": { - "@accounts/client": "^0.25.1", - "@accounts/client-password": "^0.25.1", - "@accounts/graphql-api": "^0.25.1", - "@accounts/graphql-client": "^0.25.1", - "@accounts/mongo": "^0.25.1", - "@accounts/password": "^0.25.1", - "@accounts/rest-client": "^0.25.1", - "@accounts/rest-express": "^0.25.1", - "@accounts/server": "^0.25.1", - "@accounts/typeorm": "^0.25.1", - "@accounts/types": "^0.25.1", + "@accounts/client": "^0.26.0-alpha.0", + "@accounts/client-password": "^0.26.0-alpha.0", + "@accounts/graphql-api": "^0.26.0-alpha.0", + "@accounts/graphql-client": "^0.26.0-alpha.0", + "@accounts/mongo": "^0.26.0-alpha.0", + "@accounts/password": "^0.26.0-alpha.0", + "@accounts/rest-client": "^0.26.0-alpha.0", + "@accounts/rest-express": "^0.26.0-alpha.0", + "@accounts/server": "^0.26.0-alpha.0", + "@accounts/typeorm": "^0.26.0-alpha.0", + "@accounts/types": "^0.26.0-alpha.0", "@graphql-modules/core": "0.7.14", "apollo-boost": "0.4.7", "apollo-server": "2.9.15", diff --git a/packages/error/package.json b/packages/error/package.json index 328f4c7f6..2e7401ece 100644 --- a/packages/error/package.json +++ b/packages/error/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/error", - "version": "0.25.1", + "version": "0.26.0-alpha.0", "description": "Accounts-js Error", "main": "lib/index.js", "typings": "lib/index.d.ts", diff --git a/packages/express-session/package.json b/packages/express-session/package.json index 9e7ff9921..d12a39715 100644 --- a/packages/express-session/package.json +++ b/packages/express-session/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/express-session", - "version": "0.25.1", + "version": "0.26.0-alpha.0", "description": "", "main": "lib/index", "typings": "lib/index", @@ -34,7 +34,7 @@ "author": "Kamil Kisiela", "license": "MIT", "devDependencies": { - "@accounts/server": "^0.25.1", + "@accounts/server": "^0.26.0-alpha.0", "@types/express": "4.17.4", "@types/express-session": "1.17.0", "@types/jest": "25.1.4", @@ -50,7 +50,7 @@ "express-session": "^1.15.6" }, "dependencies": { - "@accounts/types": "^0.25.1", + "@accounts/types": "^0.26.0-alpha.0", "lodash": "^4.17.15", "request-ip": "^2.1.3", "tslib": "1.10.0" diff --git a/packages/graphql-api/package.json b/packages/graphql-api/package.json index 23454a215..e8aed721b 100644 --- a/packages/graphql-api/package.json +++ b/packages/graphql-api/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/graphql-api", - "version": "0.25.1", + "version": "0.26.0-alpha.0", "description": "Server side GraphQL transport for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -28,9 +28,9 @@ }, "homepage": "https://github.com/js-accounts/graphql-api", "devDependencies": { - "@accounts/password": "^0.25.1", - "@accounts/server": "^0.25.1", - "@accounts/types": "^0.25.1", + "@accounts/password": "^0.26.0-alpha.0", + "@accounts/server": "^0.26.0-alpha.0", + "@accounts/types": "^0.26.0-alpha.0", "@gql2ts/from-schema": "1.10.1", "@gql2ts/types": "1.9.0", "@graphql-codegen/add": "1.8.3", diff --git a/packages/graphql-client/package.json b/packages/graphql-client/package.json index d8612aa2f..c7d7fa800 100644 --- a/packages/graphql-client/package.json +++ b/packages/graphql-client/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/graphql-client", - "version": "0.25.1", + "version": "0.26.0-alpha.0", "description": "GraphQL client transport for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -30,8 +30,8 @@ "lodash": "4.17.15" }, "dependencies": { - "@accounts/client": "^0.25.1", - "@accounts/types": "^0.25.1", + "@accounts/client": "^0.26.0-alpha.0", + "@accounts/types": "^0.26.0-alpha.0", "graphql-tag": "^2.10.0", "tslib": "1.10.0" }, diff --git a/packages/oauth-instagram/package.json b/packages/oauth-instagram/package.json index 1a3a17c96..a7734f929 100644 --- a/packages/oauth-instagram/package.json +++ b/packages/oauth-instagram/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/oauth-instagram", - "version": "0.25.1", + "version": "0.26.0-alpha.0", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", diff --git a/packages/oauth-twitter/package.json b/packages/oauth-twitter/package.json index 87588a786..098305c72 100644 --- a/packages/oauth-twitter/package.json +++ b/packages/oauth-twitter/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/oauth-twitter", - "version": "0.25.1", + "version": "0.26.0-alpha.0", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", diff --git a/packages/oauth/package.json b/packages/oauth/package.json index 4991d5ce9..e58c1db78 100644 --- a/packages/oauth/package.json +++ b/packages/oauth/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/oauth", - "version": "0.25.1", + "version": "0.26.0-alpha.0", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -18,12 +18,12 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/types": "^0.25.1", + "@accounts/types": "^0.26.0-alpha.0", "request-promise": "^4.2.5", "tslib": "1.10.0" }, "devDependencies": { - "@accounts/server": "^0.25.1", + "@accounts/server": "^0.26.0-alpha.0", "@types/jest": "25.1.4", "@types/node": "13.9.8", "jest": "25.1.0" diff --git a/packages/password/package.json b/packages/password/package.json index 82219bc98..8db334d60 100644 --- a/packages/password/package.json +++ b/packages/password/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/password", - "version": "0.25.1", + "version": "0.26.0-alpha.0", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -18,14 +18,14 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/two-factor": "^0.25.1", + "@accounts/two-factor": "^0.26.0-alpha.0", "bcryptjs": "^2.4.3", "lodash": "^4.17.15", "tslib": "1.10.0" }, "devDependencies": { - "@accounts/server": "^0.25.1", - "@accounts/types": "^0.25.1", + "@accounts/server": "^0.26.0-alpha.0", + "@accounts/types": "^0.26.0-alpha.0", "@types/bcryptjs": "2.4.2", "@types/jest": "25.1.4", "@types/lodash": "4.14.149", diff --git a/packages/rest-client/package.json b/packages/rest-client/package.json index 32d872f62..ae58927fb 100644 --- a/packages/rest-client/package.json +++ b/packages/rest-client/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/rest-client", - "version": "0.25.1", + "version": "0.26.0-alpha.0", "description": "REST client for accounts", "main": "lib/index", "typings": "lib/index", @@ -38,7 +38,7 @@ "author": "Tim Mikeladze", "license": "MIT", "devDependencies": { - "@accounts/client": "^0.25.1", + "@accounts/client": "^0.26.0-alpha.0", "@types/jest": "25.1.4", "@types/lodash": "4.14.149", "@types/node": "13.9.8", @@ -49,7 +49,7 @@ "@accounts/client": "^0.19.0" }, "dependencies": { - "@accounts/types": "^0.25.1", + "@accounts/types": "^0.26.0-alpha.0", "lodash": "^4.17.15", "tslib": "1.10.0" } diff --git a/packages/rest-express/package.json b/packages/rest-express/package.json index 25391d5d1..08277df86 100644 --- a/packages/rest-express/package.json +++ b/packages/rest-express/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/rest-express", - "version": "0.25.1", + "version": "0.26.0-alpha.0", "description": "Server side REST express middleware for accounts", "main": "lib/index", "typings": "lib/index", @@ -35,8 +35,8 @@ "author": "Tim Mikeladze", "license": "MIT", "devDependencies": { - "@accounts/password": "^0.25.1", - "@accounts/server": "^0.25.1", + "@accounts/password": "^0.26.0-alpha.0", + "@accounts/server": "^0.26.0-alpha.0", "@types/express": "4.17.4", "@types/jest": "25.1.4", "@types/lodash": "4.14.149", @@ -48,7 +48,7 @@ "@accounts/server": "^0.19.0" }, "dependencies": { - "@accounts/types": "^0.25.1", + "@accounts/types": "^0.26.0-alpha.0", "express": "^4.17.0", "lodash": "^4.17.15", "request-ip": "^2.1.3", diff --git a/packages/server/package.json b/packages/server/package.json index b21ded363..7fd91ea60 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/server", - "version": "0.25.1", + "version": "0.26.0-alpha.0", "description": "Fullstack authentication and accounts-management", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -40,7 +40,7 @@ "author": "Tim Mikeladze", "license": "MIT", "dependencies": { - "@accounts/types": "^0.25.1", + "@accounts/types": "^0.26.0-alpha.0", "@types/jsonwebtoken": "8.3.5", "emittery": "0.5.1", "jsonwebtoken": "8.5.1", diff --git a/packages/two-factor/package.json b/packages/two-factor/package.json index cef310a38..3da378d9f 100644 --- a/packages/two-factor/package.json +++ b/packages/two-factor/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/two-factor", - "version": "0.25.1", + "version": "0.26.0-alpha.0", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -22,7 +22,7 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/types": "^0.25.1", + "@accounts/types": "^0.26.0-alpha.0", "@types/lodash": "^4.14.138", "@types/speakeasy": "2.0.2", "lodash": "^4.17.15", diff --git a/packages/types/package.json b/packages/types/package.json index 6232f9151..a0fc17d0e 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/types", - "version": "0.25.1", + "version": "0.26.0-alpha.0", "description": "Accounts-js Types", "main": "lib/index.js", "typings": "lib/index.d.ts", From 9d7a982f4aefb602176996bbf0ae33fa80f9b069 Mon Sep 17 00:00:00 2001 From: pradel Date: Fri, 17 Apr 2020 16:39:53 +0200 Subject: [PATCH 075/146] require factor on login --- packages/server/src/accounts-server.ts | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/packages/server/src/accounts-server.ts b/packages/server/src/accounts-server.ts index 576cd18d3..0152a6545 100644 --- a/packages/server/src/accounts-server.ts +++ b/packages/server/src/accounts-server.ts @@ -53,6 +53,12 @@ const defaultOptions = { useInternalUserObjectSanitizer: true, }; +interface MultiFactorResult { + mfaToken: string; +} + +type AuthenticationResult = LoginResult | MultiFactorResult; + export class AccountsServer { public options: AccountsServerOptions & typeof defaultOptions; private services: { [key: string]: AuthenticationService }; @@ -183,7 +189,7 @@ Please set ambiguousErrorMessages to false to be able to use autologin.` serviceName: string, params: any, infos: ConnectionInformations - ): Promise { + ): Promise { const hooksInfo: any = { // The service name, such as “password” or “twitter”. service: serviceName, @@ -255,6 +261,22 @@ Please set ambiguousErrorMessages to false to be able to use autologin.` ); } + // We check if the user have at least one active authenticator + // If yes we create a new mfaChallenge for the user to resolve + // If no we can login the user + const authenticators = await this.db.findUserAuthenticators(user.id); + const activeAuthenticator = authenticators.find((authenticator) => authenticator.active); + if (activeAuthenticator) { + // We create a new challenge for the authenticator so it can be verified later + const mfaChallengeToken = generateRandomToken(); + // associate.id refer to the authenticator id + await this.db.createMfaChallenge({ + userId: user.id, + token: mfaChallengeToken, + }); + return { mfaToken: mfaChallengeToken }; + } + // Let the user validate the login attempt await this.hooks.emitSerial(ServerHooks.ValidateLogin, hooksInfo); const loginResult = await this.loginWithUser(user, infos); From 1baa3777f1ec55f6beac5b87844f6c0cdbd5539d Mon Sep 17 00:00:00 2001 From: pradel Date: Fri, 17 Apr 2020 16:48:09 +0200 Subject: [PATCH 076/146] Fix build --- packages/graphql-api/src/models.ts | 25 +++++++++++++++++-- .../src/modules/accounts/schema/mutation.ts | 2 +- .../graphql-api/src/modules/core/schema.ts | 6 +++++ .../src/endpoints/oauth/provider-callback.ts | 6 +++-- 4 files changed, 34 insertions(+), 5 deletions(-) diff --git a/packages/graphql-api/src/models.ts b/packages/graphql-api/src/models.ts index 699927f8c..40f11396f 100644 --- a/packages/graphql-api/src/models.ts +++ b/packages/graphql-api/src/models.ts @@ -22,6 +22,8 @@ export type AuthenticateParamsInput = { code?: Maybe, }; +export type AuthenticationResult = LoginResult | MultiFactorResult; + export type CreateUserInput = { username?: Maybe, email?: Maybe, @@ -54,6 +56,11 @@ export type LoginResult = { user?: Maybe, }; +export type MultiFactorResult = { + __typename?: 'MultiFactorResult', + mfaToken: Scalars['String'], +}; + export type Mutation = { __typename?: 'Mutation', createUser?: Maybe, @@ -68,7 +75,7 @@ export type Mutation = { impersonate?: Maybe, refreshTokens?: Maybe, logout?: Maybe, - authenticate?: Maybe, + authenticate?: Maybe, verifyAuthentication?: Maybe, }; @@ -271,6 +278,8 @@ export type ResolversTypes = { ImpersonateReturn: ResolverTypeWrapper, AuthenticateParamsInput: AuthenticateParamsInput, UserInput: UserInput, + AuthenticationResult: ResolversTypes['LoginResult'] | ResolversTypes['MultiFactorResult'], + MultiFactorResult: ResolverTypeWrapper, }; /** Mapping between all available schema types and the resolvers parents */ @@ -291,10 +300,16 @@ export type ResolversParentTypes = { ImpersonateReturn: ImpersonateReturn, AuthenticateParamsInput: AuthenticateParamsInput, UserInput: UserInput, + AuthenticationResult: ResolversParentTypes['LoginResult'] | ResolversParentTypes['MultiFactorResult'], + MultiFactorResult: MultiFactorResult, }; export type AuthDirectiveResolver = DirectiveResolverFn; +export type AuthenticationResultResolvers = { + __resolveType: TypeResolveFn<'LoginResult' | 'MultiFactorResult', ParentType, ContextType> +}; + export type CreateUserResultResolvers = { userId?: Resolver, ParentType, ContextType>, loginResult?: Resolver, ParentType, ContextType>, @@ -317,6 +332,10 @@ export type LoginResultResolvers, ParentType, ContextType>, }; +export type MultiFactorResultResolvers = { + mfaToken?: Resolver, +}; + export type MutationResolvers = { createUser?: Resolver, ParentType, ContextType, RequireFields>, verifyEmail?: Resolver, ParentType, ContextType, RequireFields>, @@ -330,7 +349,7 @@ export type MutationResolvers, ParentType, ContextType, RequireFields>, refreshTokens?: Resolver, ParentType, ContextType, RequireFields>, logout?: Resolver, ParentType, ContextType>, - authenticate?: Resolver, ParentType, ContextType, RequireFields>, + authenticate?: Resolver, ParentType, ContextType, RequireFields>, verifyAuthentication?: Resolver, ParentType, ContextType, RequireFields>, }; @@ -362,10 +381,12 @@ export type UserResolvers = { + AuthenticationResult?: AuthenticationResultResolvers, CreateUserResult?: CreateUserResultResolvers, EmailRecord?: EmailRecordResolvers, ImpersonateReturn?: ImpersonateReturnResolvers, LoginResult?: LoginResultResolvers, + MultiFactorResult?: MultiFactorResultResolvers, Mutation?: MutationResolvers, Query?: QueryResolvers, Tokens?: TokensResolvers, diff --git a/packages/graphql-api/src/modules/accounts/schema/mutation.ts b/packages/graphql-api/src/modules/accounts/schema/mutation.ts index ce7a8dde8..570bf8635 100644 --- a/packages/graphql-api/src/modules/accounts/schema/mutation.ts +++ b/packages/graphql-api/src/modules/accounts/schema/mutation.ts @@ -9,7 +9,7 @@ export default (config: AccountsModuleConfig) => gql` # Example: Login with password # authenticate(serviceName: "password", params: {password: "", user: {email: ""}}) - authenticate(serviceName: String!, params: AuthenticateParamsInput!): LoginResult + authenticate(serviceName: String!, params: AuthenticateParamsInput!): AuthenticationResult verifyAuthentication(serviceName: String!, params: AuthenticateParamsInput!): Boolean } `; diff --git a/packages/graphql-api/src/modules/core/schema.ts b/packages/graphql-api/src/modules/core/schema.ts index 2ecfbb9e9..b0fb801af 100644 --- a/packages/graphql-api/src/modules/core/schema.ts +++ b/packages/graphql-api/src/modules/core/schema.ts @@ -23,4 +23,10 @@ export default ({ userAsInterface }: CoreAccountsModuleConfig) => gql` tokens: Tokens user: User } + + type MultiFactorResult { + mfaToken: String! + } + + union AuthenticationResult = LoginResult | MultiFactorResult `; diff --git a/packages/rest-express/src/endpoints/oauth/provider-callback.ts b/packages/rest-express/src/endpoints/oauth/provider-callback.ts index 2002a5789..cd2c87b73 100644 --- a/packages/rest-express/src/endpoints/oauth/provider-callback.ts +++ b/packages/rest-express/src/endpoints/oauth/provider-callback.ts @@ -4,6 +4,7 @@ import { AccountsServer } from '@accounts/server'; import { getUserAgent } from '../../utils/get-user-agent'; import { sendError } from '../../utils/send-error'; import { AccountsExpressOptions } from '../../types'; +import { LoginResult } from '@accounts/types'; interface RequestWithSession extends express.Request { session: any; @@ -16,7 +17,7 @@ export const providerCallback = ( try { const userAgent = getUserAgent(req); const ip = requestIp.getClientIp(req); - const loggedInUser = await accountsServer.loginWithService( + const loggedInUser = (await accountsServer.loginWithService( 'oauth', { ...(req.params || {}), @@ -25,7 +26,8 @@ export const providerCallback = ( ...((req as RequestWithSession).session || {}), }, { ip, userAgent } - ); + // TODO fix this, can require mfa when login with oauth + )) as LoginResult; if (options && options.onOAuthSuccess) { options.onOAuthSuccess(req, res, loggedInUser); From 1efdd1f3468f1961b765cdafe7a38d38627398bb Mon Sep 17 00:00:00 2001 From: pradel Date: Fri, 17 Apr 2020 16:54:12 +0200 Subject: [PATCH 077/146] move AuthenticationResult to types --- packages/server/src/accounts-server.ts | 7 +------ packages/types/src/index.ts | 1 + packages/types/src/types/authentication-result.ts | 7 +++++++ 3 files changed, 9 insertions(+), 6 deletions(-) create mode 100644 packages/types/src/types/authentication-result.ts diff --git a/packages/server/src/accounts-server.ts b/packages/server/src/accounts-server.ts index 0152a6545..5f7e2e21a 100644 --- a/packages/server/src/accounts-server.ts +++ b/packages/server/src/accounts-server.ts @@ -13,6 +13,7 @@ import { AuthenticatorService, ConnectionInformations, Authenticator, + AuthenticationResult, } from '@accounts/types'; import { generateAccessToken, generateRefreshToken, generateRandomToken } from './utils/tokens'; @@ -53,12 +54,6 @@ const defaultOptions = { useInternalUserObjectSanitizer: true, }; -interface MultiFactorResult { - mfaToken: string; -} - -type AuthenticationResult = LoginResult | MultiFactorResult; - export class AccountsServer { public options: AccountsServerOptions & typeof defaultOptions; private services: { [key: string]: AuthenticationService }; diff --git a/packages/types/src/index.ts b/packages/types/src/index.ts index b8343b9ab..6b5570c6d 100644 --- a/packages/types/src/index.ts +++ b/packages/types/src/index.ts @@ -7,6 +7,7 @@ export * from './types/create-user'; export * from './types/create-user-result'; export * from './types/email-record'; export * from './types/login-result'; +export * from './types/authentication-result'; export * from './types/impersonation-result'; export * from './types/login-user-identity'; export * from './types/hook-listener'; diff --git a/packages/types/src/types/authentication-result.ts b/packages/types/src/types/authentication-result.ts new file mode 100644 index 000000000..a2d365b71 --- /dev/null +++ b/packages/types/src/types/authentication-result.ts @@ -0,0 +1,7 @@ +import { LoginResult } from './login-result'; + +interface MultiFactorResult { + mfaToken: string; +} + +export type AuthenticationResult = LoginResult | MultiFactorResult; From 8e5e7e6d47724fe679d53e281a40dc80a63762c1 Mon Sep 17 00:00:00 2001 From: pradel Date: Mon, 20 Apr 2020 09:25:49 +0200 Subject: [PATCH 078/146] Fix client login type --- packages/client-password/src/client-password.ts | 3 ++- packages/client/src/accounts-client.ts | 8 +++++--- packages/client/src/transport-interface.ts | 5 +++-- packages/rest-client/src/rest-client.ts | 3 ++- 4 files changed, 12 insertions(+), 7 deletions(-) diff --git a/packages/client-password/src/client-password.ts b/packages/client-password/src/client-password.ts index 65a5d1232..980189fb9 100644 --- a/packages/client-password/src/client-password.ts +++ b/packages/client-password/src/client-password.ts @@ -4,6 +4,7 @@ import { CreateUserServicePassword, CreateUserResult, LoginUserPasswordService, + AuthenticationResult, } from '@accounts/types'; import { AccountsClientPasswordOptions } from './types'; @@ -39,7 +40,7 @@ export class AccountsClientPassword { /** * Log the user in with a password. */ - public async login(user: LoginUserPasswordService): Promise { + public async login(user: LoginUserPasswordService): Promise { const hashedPassword = this.hashPassword(user.password as string); return this.client.loginWithService('password', { ...user, diff --git a/packages/client/src/accounts-client.ts b/packages/client/src/accounts-client.ts index e5ebc35db..e0f719824 100644 --- a/packages/client/src/accounts-client.ts +++ b/packages/client/src/accounts-client.ts @@ -1,4 +1,4 @@ -import { LoginResult, Tokens, ImpersonationResult, User } from '@accounts/types'; +import { Tokens, ImpersonationResult, User, AuthenticationResult } from '@accounts/types'; import { TransportInterface } from './transport-interface'; import { TokenStorage, AccountsClientOptions } from './types'; import { tokenStorageLocal } from './token-storage-local'; @@ -102,9 +102,11 @@ export class AccountsClient { public async loginWithService( service: string, credentials: { [key: string]: any } - ): Promise { + ): Promise { const response = await this.transport.loginWithService(service, credentials); - await this.setTokens(response.tokens); + if ('tokens' in response) { + await this.setTokens(response.tokens); + } return response; } diff --git a/packages/client/src/transport-interface.ts b/packages/client/src/transport-interface.ts index b5ad6baa8..e3b1f9b48 100644 --- a/packages/client/src/transport-interface.ts +++ b/packages/client/src/transport-interface.ts @@ -1,10 +1,11 @@ import { - LoginResult, + AuthenticationResult, ImpersonationResult, CreateUser, User, CreateUserResult, Authenticator, + LoginResult, } from '@accounts/types'; import { AccountsClient } from './accounts-client'; @@ -22,7 +23,7 @@ export interface TransportInterface extends TransportMfaInterface { authenticateParams: { [key: string]: string | object; } - ): Promise; + ): Promise; logout(): Promise; getUser(): Promise; refreshTokens(accessToken: string, refreshToken: string): Promise; diff --git a/packages/rest-client/src/rest-client.ts b/packages/rest-client/src/rest-client.ts index 5ba18409f..720baa4ae 100644 --- a/packages/rest-client/src/rest-client.ts +++ b/packages/rest-client/src/rest-client.ts @@ -3,6 +3,7 @@ import { TransportInterface, AccountsClient } from '@accounts/client'; import { User, LoginResult, + AuthenticationResult, CreateUser, ImpersonationResult, LoginUserIdentity, @@ -79,7 +80,7 @@ export class RestClient implements TransportInterface { provider: string, data: any, customHeaders?: object - ): Promise { + ): Promise { const args = { method: 'POST', body: JSON.stringify({ From ff4793186e7da810b5d91734e5c00c69b28a70ee Mon Sep 17 00:00:00 2001 From: pradel Date: Mon, 20 Apr 2020 10:01:00 +0200 Subject: [PATCH 079/146] redirect to mfa route if needed --- examples/react-rest-typescript/src/Login.tsx | 25 ++++++------------- examples/react-rest-typescript/src/Router.tsx | 3 ++- .../src/components/AuthContext.tsx | 13 ++++++---- 3 files changed, 17 insertions(+), 24 deletions(-) diff --git a/examples/react-rest-typescript/src/Login.tsx b/examples/react-rest-typescript/src/Login.tsx index 8eb70d235..e49973d3b 100644 --- a/examples/react-rest-typescript/src/Login.tsx +++ b/examples/react-rest-typescript/src/Login.tsx @@ -17,7 +17,7 @@ import { SnackBarContentError } from './components/SnackBarContentError'; import { useAuth } from './components/AuthContext'; import { UnauthenticatedContainer } from './components/UnauthenticatedContainer'; -const useStyles = makeStyles(theme => ({ +const useStyles = makeStyles((theme) => ({ cardContent: { padding: theme.spacing(3), }, @@ -41,7 +41,6 @@ const ResetPasswordLink = React.forwardRef((props, ref) => ( interface LoginValues { email: string; password: string; - code: string; } const Login = ({ history }: RouteComponentProps<{}>) => { @@ -52,9 +51,8 @@ const Login = ({ history }: RouteComponentProps<{}>) => { initialValues: { email: '', password: '', - code: '', }, - validate: values => { + validate: (values) => { const errors: FormikErrors = {}; if (!values.email) { errors.email = 'Required'; @@ -66,13 +64,16 @@ const Login = ({ history }: RouteComponentProps<{}>) => { }, onSubmit: async (values, { setSubmitting }) => { try { - await loginWithService('password', { + const loginResponse = await loginWithService('password', { user: { email: values.email, }, password: values.password, - code: values.code, }); + if ('mfaToken' in loginResponse) { + history.push('/login/mfa', { mfaToken: loginResponse.mfaToken }); + return; + } history.push('/'); } catch (error) { setError(error.message); @@ -130,18 +131,6 @@ const Login = ({ history }: RouteComponentProps<{}>) => { helperText={formik.touched.password && formik.errors.password} /> - - - + + + + + + + ); +}; diff --git a/examples/react-rest-typescript/src/Router.tsx b/examples/react-rest-typescript/src/Router.tsx index d82a08a27..2637c8bae 100644 --- a/examples/react-rest-typescript/src/Router.tsx +++ b/examples/react-rest-typescript/src/Router.tsx @@ -4,6 +4,7 @@ import { CssBaseline } from '@material-ui/core'; import { AuthProvider, useAuth } from './components/AuthContext'; import Signup from './Signup'; import Login from './Login'; +import { LoginMfa } from './LoginMfa'; import Home from './Home'; import ResetPassword from './ResetPassword'; import VerifyEmail from './VerifyEmail'; @@ -58,7 +59,7 @@ const Router = () => { {/* Unauthenticated routes */} - + From 03eb9dde620cd95fb2d46f0c58a7272878337684 Mon Sep 17 00:00:00 2001 From: pradel Date: Mon, 20 Apr 2020 11:01:05 +0200 Subject: [PATCH 081/146] Allow user to list authenticators with mfaToken --- .../react-rest-typescript/src/LoginMfa.tsx | 15 ++++++++++-- packages/client/src/accounts-client.ts | 4 ++-- packages/client/src/transport-interface.ts | 2 +- packages/rest-client/src/rest-client.ts | 8 +++++-- .../src/endpoints/mfa/authenticators.ts | 13 ++++++++-- packages/server/src/accounts-server.ts | 24 +++++++++++++++++++ 6 files changed, 57 insertions(+), 9 deletions(-) diff --git a/examples/react-rest-typescript/src/LoginMfa.tsx b/examples/react-rest-typescript/src/LoginMfa.tsx index 0473697db..f8b6b44b0 100644 --- a/examples/react-rest-typescript/src/LoginMfa.tsx +++ b/examples/react-rest-typescript/src/LoginMfa.tsx @@ -1,4 +1,4 @@ -import React, { useState } from 'react'; +import React, { useState, useEffect } from 'react'; import { RouteComponentProps, useLocation } from 'react-router-dom'; import { Button, @@ -14,6 +14,7 @@ import { useFormik, FormikErrors } from 'formik'; import { SnackBarContentError } from './components/SnackBarContentError'; import { useAuth } from './components/AuthContext'; import { UnauthenticatedContainer } from './components/UnauthenticatedContainer'; +import { accountsClient } from './accounts'; const useStyles = makeStyles((theme) => ({ cardContent: { @@ -36,6 +37,7 @@ interface LoginMfaValues { export const LoginMfa = ({ history }: RouteComponentProps<{}>) => { const classes = useStyles(); const location = useLocation(); + const mfaToken: string = location.state.mfaToken; const { loginWithService } = useAuth(); const [error, setError] = useState(); const formik = useFormik({ @@ -52,7 +54,7 @@ export const LoginMfa = ({ history }: RouteComponentProps<{}>) => { onSubmit: async (values, { setSubmitting }) => { try { await loginWithService('mfa', { - mfaToken: location.state.mfaToken, + mfaToken, code: values.code, }); history.push('/'); @@ -63,6 +65,15 @@ export const LoginMfa = ({ history }: RouteComponentProps<{}>) => { }, }); + useEffect(() => { + const fetchAuthenticators = async () => { + const data = await accountsClient.authenticators(mfaToken); + console.log(data); + }; + + fetchAuthenticators(); + }, []); + return ( ; - authenticators(): Promise; + authenticators(mfaToken?: string): Promise; } diff --git a/packages/rest-client/src/rest-client.ts b/packages/rest-client/src/rest-client.ts index 720baa4ae..9d4afd667 100644 --- a/packages/rest-client/src/rest-client.ts +++ b/packages/rest-client/src/rest-client.ts @@ -254,11 +254,15 @@ export class RestClient implements TransportInterface { return this.authFetch(`mfa/associate`, args, customHeaders); } - public async authenticators(customHeaders?: object) { + public async authenticators(mfaToken?: string, customHeaders?: object) { const args = { method: 'GET', }; - return this.authFetch(`mfa/authenticators`, args, customHeaders); + let route = `mfa/authenticators`; + if (mfaToken) { + route = `${route}?mfaToken=${mfaToken}`; + } + return this.authFetch(route, args, customHeaders); } private _loadHeadersObject(plainHeaders: object): { [key: string]: string } { diff --git a/packages/rest-express/src/endpoints/mfa/authenticators.ts b/packages/rest-express/src/endpoints/mfa/authenticators.ts index ca7f94a6c..b42d63594 100644 --- a/packages/rest-express/src/endpoints/mfa/authenticators.ts +++ b/packages/rest-express/src/endpoints/mfa/authenticators.ts @@ -2,18 +2,27 @@ import * as express from 'express'; import { AccountsServer } from '@accounts/server'; import { sendError } from '../../utils/send-error'; +/** + * If user is authenticated, this route will return all the authenticators of the user. + * If user is not authenticated, he needs to provide a valid mfa token in order to + * get a list of the authenticators that can be used to resolve the mfa challenge. + */ export const authenticators = (accountsServer: AccountsServer) => async ( req: express.Request, res: express.Response ) => { try { - if (!(req as any).userId) { + const userId = (req as any).userId; + const { mfaToken } = req.query; + if (!mfaToken && !userId) { res.status(401); res.json({ message: 'Unauthorized' }); return; } - const userAuthenticators = await accountsServer.findUserAuthenticators((req as any).userId); + const userAuthenticators = mfaToken + ? await accountsServer.findUserAuthenticatorsByMfaToken(mfaToken) + : await accountsServer.findUserAuthenticators(userId); res.json(userAuthenticators); } catch (err) { sendError(res, err); diff --git a/packages/server/src/accounts-server.ts b/packages/server/src/accounts-server.ts index 5f7e2e21a..52390168b 100644 --- a/packages/server/src/accounts-server.ts +++ b/packages/server/src/accounts-server.ts @@ -711,6 +711,30 @@ Please set ambiguousErrorMessages to false to be able to use autologin.` }); } + /** + * @description Return the list of the active authenticators for this user. + * @param {string} mfaToken - A valid mfa token you obtained during the login process.. + */ + public async findUserAuthenticatorsByMfaToken(mfaToken: string): Promise { + if (!mfaToken) { + throw new Error('Mfa token invalid'); + } + const mfaChallenge = await this.db.findMfaChallengeByToken(mfaToken); + if (!mfaChallenge || mfaChallenge.deactivated) { + throw new Error('Mfa token invalid'); + } + const authenticators = await this.db.findUserAuthenticators(mfaChallenge.userId); + return authenticators + .filter((authenticator) => authenticator.active) + .map((authenticator) => { + const authenticatorService = this.authenticators[authenticator.type]; + if (authenticatorService?.sanitize) { + return authenticatorService.sanitize(authenticator); + } + return authenticator; + }); + } + /** * Private methods */ From 8a0b9e889a346857605be780ffd030def0d3a32d Mon Sep 17 00:00:00 2001 From: pradel Date: Mon, 20 Apr 2020 11:04:40 +0200 Subject: [PATCH 082/146] add TODO --- examples/react-rest-typescript/src/LoginMfa.tsx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/examples/react-rest-typescript/src/LoginMfa.tsx b/examples/react-rest-typescript/src/LoginMfa.tsx index f8b6b44b0..dbd16566d 100644 --- a/examples/react-rest-typescript/src/LoginMfa.tsx +++ b/examples/react-rest-typescript/src/LoginMfa.tsx @@ -67,12 +67,13 @@ export const LoginMfa = ({ history }: RouteComponentProps<{}>) => { useEffect(() => { const fetchAuthenticators = async () => { + // TODO try catch const data = await accountsClient.authenticators(mfaToken); console.log(data); }; fetchAuthenticators(); - }, []); + }, [mfaToken]); return ( From 27dbb5970a2b754c86fd0824603bf57bd871bc92 Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 21 Apr 2020 09:28:32 +0200 Subject: [PATCH 083/146] add updateMfaChallenge --- packages/database-mongo/src/mongo.ts | 17 +++++++++++++++++ .../types/mfa-challenge/database-interface.ts | 2 ++ 2 files changed, 19 insertions(+) diff --git a/packages/database-mongo/src/mongo.ts b/packages/database-mongo/src/mongo.ts index 382ff363b..04b0d1f05 100644 --- a/packages/database-mongo/src/mongo.ts +++ b/packages/database-mongo/src/mongo.ts @@ -499,6 +499,7 @@ export class Mongo implements DatabaseInterface { $set: { active: true, activatedAt: this.options.dateProvider(), + [this.options.timestamps.updatedAt]: this.options.dateProvider(), }, } ); @@ -542,6 +543,22 @@ export class Mongo implements DatabaseInterface { $set: { deactivated: true, deactivatedAt: this.options.dateProvider(), + [this.options.timestamps.updatedAt]: this.options.dateProvider(), + }, + } + ); + } + + public async updateMfaChallenge(mfaChallengeId: string, data: any): Promise { + const id = this.options.convertMfaChallengeIdToMongoObjectId + ? toMongoID(mfaChallengeId) + : mfaChallengeId; + await this.mfaChallengeCollection.updateOne( + { _id: id }, + { + $set: { + ...data, + [this.options.timestamps.updatedAt]: this.options.dateProvider(), }, } ); diff --git a/packages/types/src/types/mfa-challenge/database-interface.ts b/packages/types/src/types/mfa-challenge/database-interface.ts index 826a2c5ee..90a394850 100644 --- a/packages/types/src/types/mfa-challenge/database-interface.ts +++ b/packages/types/src/types/mfa-challenge/database-interface.ts @@ -6,5 +6,7 @@ export interface DatabaseInterfaceMfaChallenges { findMfaChallengeByToken(token: string): Promise; + updateMfaChallenge(mfaChallengeId: string, data: any): Promise; + deactivateMfaChallenge(mfaChallengeId: string): Promise; } From 236df513f9b7c7e1e9d23b2a8d5181b3e690315c Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 21 Apr 2020 09:39:09 +0200 Subject: [PATCH 084/146] create mfaChallenge --- packages/client/src/transport-interface.ts | 1 + packages/rest-client/src/rest-client.ts | 8 ++++ .../src/endpoints/mfa/challenge.ts | 16 ++++++++ .../rest-express/src/express-middleware.ts | 3 ++ packages/server/src/accounts-server.ts | 39 ++++++++++++++++++- .../authenticator/authenticator-service.ts | 2 + 6 files changed, 68 insertions(+), 1 deletion(-) create mode 100644 packages/rest-express/src/endpoints/mfa/challenge.ts diff --git a/packages/client/src/transport-interface.ts b/packages/client/src/transport-interface.ts index 7a45030c9..b1e031042 100644 --- a/packages/client/src/transport-interface.ts +++ b/packages/client/src/transport-interface.ts @@ -49,4 +49,5 @@ export interface TransportInterface extends TransportMfaInterface { interface TransportMfaInterface { mfaAssociate(type: string): Promise; authenticators(mfaToken?: string): Promise; + mfaChallenge(mfaToken: string, authenticatorId: string): Promise; } diff --git a/packages/rest-client/src/rest-client.ts b/packages/rest-client/src/rest-client.ts index 9d4afd667..68163fdaf 100644 --- a/packages/rest-client/src/rest-client.ts +++ b/packages/rest-client/src/rest-client.ts @@ -246,6 +246,14 @@ export class RestClient implements TransportInterface { * MFA related operations */ + public async mfaChallenge(mfaToken: string, authenticatorId: string, customHeaders?: object) { + const args = { + method: 'POST', + body: JSON.stringify({ mfaToken, authenticatorId }), + }; + return this.authFetch(`mfa/challenge`, args, customHeaders); + } + public async mfaAssociate(type: string, customHeaders?: object) { const args = { method: 'POST', diff --git a/packages/rest-express/src/endpoints/mfa/challenge.ts b/packages/rest-express/src/endpoints/mfa/challenge.ts new file mode 100644 index 000000000..a5eeafd3c --- /dev/null +++ b/packages/rest-express/src/endpoints/mfa/challenge.ts @@ -0,0 +1,16 @@ +import * as express from 'express'; +import { AccountsServer } from '@accounts/server'; +import { sendError } from '../../utils/send-error'; + +export const challenge = (accountsServer: AccountsServer) => async ( + req: express.Request, + res: express.Response +) => { + try { + const { mfaToken, authenticatorId } = req.body; + const mfaAssociateResult = await accountsServer.mfaChallenge(mfaToken, authenticatorId); + res.json(mfaAssociateResult); + } catch (err) { + sendError(res, err); + } +}; diff --git a/packages/rest-express/src/express-middleware.ts b/packages/rest-express/src/express-middleware.ts index 9572875bb..69f45d3c9 100644 --- a/packages/rest-express/src/express-middleware.ts +++ b/packages/rest-express/src/express-middleware.ts @@ -14,6 +14,7 @@ import { twoFactorSecret, twoFactorSet, twoFactorUnset } from './endpoints/passw import { changePassword } from './endpoints/password/change-password'; import { associate } from './endpoints/mfa/associate'; import { authenticators } from './endpoints/mfa/authenticators'; +import { challenge } from './endpoints/mfa/challenge'; import { addEmail } from './endpoints/password/add-email'; import { userLoader } from './user-loader'; import { AccountsExpressOptions } from './types'; @@ -57,6 +58,8 @@ const accountsExpress = ( authenticators(accountsServer) ); + router.post(`${path}/mfa/challenge`, challenge(accountsServer)); + const services = accountsServer.getServices(); // @accounts/password diff --git a/packages/server/src/accounts-server.ts b/packages/server/src/accounts-server.ts index 52390168b..b55551524 100644 --- a/packages/server/src/accounts-server.ts +++ b/packages/server/src/accounts-server.ts @@ -665,6 +665,42 @@ Please set ambiguousErrorMessages to false to be able to use autologin.` * MFA related operations */ + /** + * @description Request a challenge for the MFA authentication + * @param {string} mfaToken - A valid mfa token you obtained during the login process. + * @param {string} authenticatorId - The ID of the authenticator to challenge. + */ + public async mfaChallenge(mfaToken: string, authenticatorId: string): Promise { + if (!mfaToken) { + throw new Error('Mfa token invalid'); + } + const mfaChallenge = await this.db.findMfaChallengeByToken(mfaToken); + // TODO need to check that the challenge is not expired + if (!mfaChallenge || mfaChallenge.deactivated) { + throw new Error('Mfa token invalid'); + } + const authenticator = await this.db.findAuthenticatorById(authenticatorId); + if (!authenticator) { + throw new Error('Authenticator not found'); + } + // A user should be able to challenge only is own authenticators + if (mfaChallenge.userId !== authenticator.userId) { + throw new Error('Mfa token invalid'); + } + const authenticatorService = this.authenticators[authenticator.type]; + if (!authenticatorService) { + throw new Error(`No authenticator with the name ${authenticator.type} was registered.`); + } + // We trigger the good authenticator challenge + if (authenticatorService.challenge) { + await authenticatorService.challenge(mfaChallenge, authenticator); + } + // Then we attach the authenticator id that will be used to resolve the challenge + await this.db.updateMfaChallenge(mfaChallenge.id, { + authenticatorId: authenticator.id, + }); + } + /** * @description Start the association of a new authenticator * @param {string} userId - User id to link the new authenticator. @@ -713,13 +749,14 @@ Please set ambiguousErrorMessages to false to be able to use autologin.` /** * @description Return the list of the active authenticators for this user. - * @param {string} mfaToken - A valid mfa token you obtained during the login process.. + * @param {string} mfaToken - A valid mfa token you obtained during the login process. */ public async findUserAuthenticatorsByMfaToken(mfaToken: string): Promise { if (!mfaToken) { throw new Error('Mfa token invalid'); } const mfaChallenge = await this.db.findMfaChallengeByToken(mfaToken); + // TODO need to check that the challenge is not expired if (!mfaChallenge || mfaChallenge.deactivated) { throw new Error('Mfa token invalid'); } diff --git a/packages/types/src/types/authenticator/authenticator-service.ts b/packages/types/src/types/authenticator/authenticator-service.ts index 7f66fad66..1becfd3f8 100644 --- a/packages/types/src/types/authenticator/authenticator-service.ts +++ b/packages/types/src/types/authenticator/authenticator-service.ts @@ -1,10 +1,12 @@ import { DatabaseInterface } from '../database-interface'; import { Authenticator } from './authenticator'; +import { MfaChallenge } from '../mfa-challenge/mfa-challenge'; export interface AuthenticatorService { server: any; serviceName: string; setStore(store: DatabaseInterface): void; + challenge?(mfaChallenge: MfaChallenge, authenticator: Authenticator): Promise; associate(userId: string, params: any): Promise; authenticate(authenticator: Authenticator, params: any): Promise; sanitize?(authenticator: Authenticator): Authenticator; From a35076dce793b7f75f8014a9d7d138514efb68ab Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 21 Apr 2020 09:50:22 +0200 Subject: [PATCH 085/146] fix mfa challenge --- packages/client/src/accounts-client.ts | 4 ++++ packages/rest-client/src/rest-client.ts | 2 +- packages/rest-express/src/endpoints/mfa/challenge.ts | 4 ++-- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/packages/client/src/accounts-client.ts b/packages/client/src/accounts-client.ts index 13fda5c70..dc27e5ca1 100644 --- a/packages/client/src/accounts-client.ts +++ b/packages/client/src/accounts-client.ts @@ -200,6 +200,10 @@ export class AccountsClient { await this.clearTokens(); } + public mfaChallenge(mfaToken: string, authenticatorId: string) { + return this.transport.mfaChallenge(mfaToken, authenticatorId); + } + public mfaAssociate(type: string) { return this.transport.mfaAssociate(type); } diff --git a/packages/rest-client/src/rest-client.ts b/packages/rest-client/src/rest-client.ts index 68163fdaf..b8fcb063d 100644 --- a/packages/rest-client/src/rest-client.ts +++ b/packages/rest-client/src/rest-client.ts @@ -251,7 +251,7 @@ export class RestClient implements TransportInterface { method: 'POST', body: JSON.stringify({ mfaToken, authenticatorId }), }; - return this.authFetch(`mfa/challenge`, args, customHeaders); + return this.fetch(`mfa/challenge`, args, customHeaders); } public async mfaAssociate(type: string, customHeaders?: object) { diff --git a/packages/rest-express/src/endpoints/mfa/challenge.ts b/packages/rest-express/src/endpoints/mfa/challenge.ts index a5eeafd3c..1f6d15fa5 100644 --- a/packages/rest-express/src/endpoints/mfa/challenge.ts +++ b/packages/rest-express/src/endpoints/mfa/challenge.ts @@ -8,8 +8,8 @@ export const challenge = (accountsServer: AccountsServer) => async ( ) => { try { const { mfaToken, authenticatorId } = req.body; - const mfaAssociateResult = await accountsServer.mfaChallenge(mfaToken, authenticatorId); - res.json(mfaAssociateResult); + await accountsServer.mfaChallenge(mfaToken, authenticatorId); + res.json(null); } catch (err) { sendError(res, err); } From 65b33f6581ec367ab8a96b24bc994bf8a7efa98c Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 21 Apr 2020 09:50:49 +0200 Subject: [PATCH 086/146] example use challenge --- examples/react-rest-typescript/src/LoginMfa.tsx | 3 +++ 1 file changed, 3 insertions(+) diff --git a/examples/react-rest-typescript/src/LoginMfa.tsx b/examples/react-rest-typescript/src/LoginMfa.tsx index dbd16566d..f5aee2ba1 100644 --- a/examples/react-rest-typescript/src/LoginMfa.tsx +++ b/examples/react-rest-typescript/src/LoginMfa.tsx @@ -70,6 +70,9 @@ export const LoginMfa = ({ history }: RouteComponentProps<{}>) => { // TODO try catch const data = await accountsClient.authenticators(mfaToken); console.log(data); + const authenticator = data[0]; + const challengeResponse = await accountsClient.mfaChallenge(mfaToken, authenticator.id); + console.log(challengeResponse); }; fetchAuthenticators(); From 5a04d720deac2d0de2bb5a3bc13a194e485a29d9 Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 21 Apr 2020 11:21:58 +0200 Subject: [PATCH 087/146] fix merge with master --- packages/oauth-instagram/package.json | 2 +- packages/oauth-twitter/package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/oauth-instagram/package.json b/packages/oauth-instagram/package.json index 551ff2bf1..16705a554 100644 --- a/packages/oauth-instagram/package.json +++ b/packages/oauth-instagram/package.json @@ -18,7 +18,7 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/oauth": "^0.25.0", + "@accounts/oauth": "^0.26.0-alpha.0", "request": "^2.88.0", "request-promise": "^4.2.5", "tslib": "1.10.0" diff --git a/packages/oauth-twitter/package.json b/packages/oauth-twitter/package.json index b06938f5d..1d596d164 100644 --- a/packages/oauth-twitter/package.json +++ b/packages/oauth-twitter/package.json @@ -18,7 +18,7 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/oauth": "^0.25.0", + "@accounts/oauth": "^0.26.0-alpha.0", "oauth": "^0.9.15", "tslib": "1.10.0" }, From 9ba2ea902948b3cf0b3cb52f05a98d783163f15f Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 21 Apr 2020 11:40:20 +0200 Subject: [PATCH 088/146] Fix build step --- .../database-manager/src/database-manager.ts | 5 + packages/database-typeorm/src/typeorm.ts | 4 + packages/graphql-client/src/graphql-client.ts | 13 +- .../src/endpoints/mfa/associate.ts | 2 +- .../src/endpoints/mfa/authenticators.ts | 4 +- .../src/endpoints/mfa/challenge.ts | 2 +- packages/server/src/accounts-mfa.ts | 119 ++++++++++++++++++ packages/server/src/accounts-server.ts | 117 +---------------- 8 files changed, 149 insertions(+), 117 deletions(-) create mode 100644 packages/server/src/accounts-mfa.ts diff --git a/packages/database-manager/src/database-manager.ts b/packages/database-manager/src/database-manager.ts index 933862523..9b2f6e93d 100644 --- a/packages/database-manager/src/database-manager.ts +++ b/packages/database-manager/src/database-manager.ts @@ -194,4 +194,9 @@ export class DatabaseManager implements DatabaseInterface { public get deactivateMfaChallenge(): DatabaseInterface['deactivateMfaChallenge'] { return this.userStorage.deactivateMfaChallenge.bind(this.userStorage); } + + // Return the updateMfaChallenge function from the userStorage + public get updateMfaChallenge(): DatabaseInterface['updateMfaChallenge'] { + return this.userStorage.updateMfaChallenge.bind(this.userStorage); + } } diff --git a/packages/database-typeorm/src/typeorm.ts b/packages/database-typeorm/src/typeorm.ts index 1f007354e..f6e1ce19e 100644 --- a/packages/database-typeorm/src/typeorm.ts +++ b/packages/database-typeorm/src/typeorm.ts @@ -476,4 +476,8 @@ export class AccountsTypeorm implements DatabaseInterface { public async deactivateMfaChallenge(mfaChallengeId: string): Promise { throw new Error('Not implemented yet'); } + + public async updateMfaChallenge(mfaChallengeId: string): Promise { + throw new Error('Not implemented yet'); + } } diff --git a/packages/graphql-client/src/graphql-client.ts b/packages/graphql-client/src/graphql-client.ts index f28c7b0ae..ae224b121 100644 --- a/packages/graphql-client/src/graphql-client.ts +++ b/packages/graphql-client/src/graphql-client.ts @@ -202,7 +202,18 @@ export default class GraphQLClient implements TransportInterface { /** * @inheritDoc */ - public async authenticators(customHeaders?: object): Promise { + public async authenticators(mfaToken?: string, customHeaders?: object): Promise { + throw new Error('Not implemented yet'); + } + + /** + * @inheritDoc + */ + public async mfaChallenge( + mfaToken: string, + authenticatorId: string, + customHeaders?: object + ): Promise { throw new Error('Not implemented yet'); } diff --git a/packages/rest-express/src/endpoints/mfa/associate.ts b/packages/rest-express/src/endpoints/mfa/associate.ts index 72527ef0f..526e11a5b 100644 --- a/packages/rest-express/src/endpoints/mfa/associate.ts +++ b/packages/rest-express/src/endpoints/mfa/associate.ts @@ -14,7 +14,7 @@ export const associate = (accountsServer: AccountsServer) => async ( } const { type } = req.body; - const mfaAssociateResult = await accountsServer.mfaAssociate( + const mfaAssociateResult = await accountsServer.mfa.associate( (req as any).userId, type, req.body diff --git a/packages/rest-express/src/endpoints/mfa/authenticators.ts b/packages/rest-express/src/endpoints/mfa/authenticators.ts index b42d63594..e92d4b696 100644 --- a/packages/rest-express/src/endpoints/mfa/authenticators.ts +++ b/packages/rest-express/src/endpoints/mfa/authenticators.ts @@ -21,8 +21,8 @@ export const authenticators = (accountsServer: AccountsServer) => async ( } const userAuthenticators = mfaToken - ? await accountsServer.findUserAuthenticatorsByMfaToken(mfaToken) - : await accountsServer.findUserAuthenticators(userId); + ? await accountsServer.mfa.findUserAuthenticatorsByMfaToken(mfaToken) + : await accountsServer.mfa.findUserAuthenticators(userId); res.json(userAuthenticators); } catch (err) { sendError(res, err); diff --git a/packages/rest-express/src/endpoints/mfa/challenge.ts b/packages/rest-express/src/endpoints/mfa/challenge.ts index 1f6d15fa5..befa47528 100644 --- a/packages/rest-express/src/endpoints/mfa/challenge.ts +++ b/packages/rest-express/src/endpoints/mfa/challenge.ts @@ -8,7 +8,7 @@ export const challenge = (accountsServer: AccountsServer) => async ( ) => { try { const { mfaToken, authenticatorId } = req.body; - await accountsServer.mfaChallenge(mfaToken, authenticatorId); + await accountsServer.mfa.challenge(mfaToken, authenticatorId); res.json(null); } catch (err) { sendError(res, err); diff --git a/packages/server/src/accounts-mfa.ts b/packages/server/src/accounts-mfa.ts new file mode 100644 index 000000000..a15e55ec7 --- /dev/null +++ b/packages/server/src/accounts-mfa.ts @@ -0,0 +1,119 @@ +import { DatabaseInterface, Authenticator, AuthenticatorService } from '@accounts/types'; +import { generateRandomToken } from './utils/tokens'; + +export class AccountsMFA { + private db: DatabaseInterface; + private authenticators: { [key: string]: AuthenticatorService }; + + constructor(db: DatabaseInterface, authenticators?: { [key: string]: AuthenticatorService }) { + this.db = db; + this.authenticators = authenticators || {}; + } + + /** + * @description Request a challenge for the MFA authentication + * @param {string} mfaToken - A valid mfa token you obtained during the login process. + * @param {string} authenticatorId - The ID of the authenticator to challenge. + */ + public async challenge(mfaToken: string, authenticatorId: string): Promise { + if (!mfaToken) { + throw new Error('Mfa token invalid'); + } + const mfaChallenge = await this.db.findMfaChallengeByToken(mfaToken); + // TODO need to check that the challenge is not expired + if (!mfaChallenge || mfaChallenge.deactivated) { + throw new Error('Mfa token invalid'); + } + const authenticator = await this.db.findAuthenticatorById(authenticatorId); + if (!authenticator) { + throw new Error('Authenticator not found'); + } + // A user should be able to challenge only is own authenticators + if (mfaChallenge.userId !== authenticator.userId) { + throw new Error('Mfa token invalid'); + } + const authenticatorService = this.authenticators[authenticator.type]; + if (!authenticatorService) { + throw new Error(`No authenticator with the name ${authenticator.type} was registered.`); + } + // We trigger the good authenticator challenge + if (authenticatorService.challenge) { + await authenticatorService.challenge(mfaChallenge, authenticator); + } + // Then we attach the authenticator id that will be used to resolve the challenge + await this.db.updateMfaChallenge(mfaChallenge.id, { + authenticatorId: authenticator.id, + }); + } + + /** + * @description Start the association of a new authenticator + * @param {string} userId - User id to link the new authenticator. + * @param {string} serviceName - Service name of the authenticator service. + * @param {any} params - Params for the the authenticator service. + */ + public async associate(userId: string, serviceName: string, params: any): Promise { + if (!this.authenticators[serviceName]) { + throw new Error(`No authenticator with the name ${serviceName} was registered.`); + } + + const associate = await this.authenticators[serviceName].associate(userId, params); + + // We create a new challenge for the authenticator so it can be verified later + const mfaChallengeToken = generateRandomToken(); + // associate.id refer to the authenticator id + await this.db.createMfaChallenge({ + userId, + authenticatorId: associate.id, + token: mfaChallengeToken, + scope: 'associate', + }); + + return { + ...associate, + mfaToken: mfaChallengeToken, + }; + } + + /** + * @description Return the list of the active and inactive authenticators for this user. + * The authenticators objects are whitelisted to not expose any sensitive informations to the client. + * If you want to get all the fields from the database, use the database `findUserAuthenticators` method directly. + * @param {string} userId - User id linked to the authenticators. + */ + public async findUserAuthenticators(userId: string): Promise { + const authenticators = await this.db.findUserAuthenticators(userId); + return authenticators.map((authenticator) => { + const authenticatorService = this.authenticators[authenticator.type]; + if (authenticatorService?.sanitize) { + return authenticatorService.sanitize(authenticator); + } + return authenticator; + }); + } + + /** + * @description Return the list of the active authenticators for this user. + * @param {string} mfaToken - A valid mfa token you obtained during the login process. + */ + public async findUserAuthenticatorsByMfaToken(mfaToken: string): Promise { + if (!mfaToken) { + throw new Error('Mfa token invalid'); + } + const mfaChallenge = await this.db.findMfaChallengeByToken(mfaToken); + // TODO need to check that the challenge is not expired + if (!mfaChallenge || mfaChallenge.deactivated) { + throw new Error('Mfa token invalid'); + } + const authenticators = await this.db.findUserAuthenticators(mfaChallenge.userId); + return authenticators + .filter((authenticator) => authenticator.active) + .map((authenticator) => { + const authenticatorService = this.authenticators[authenticator.type]; + if (authenticatorService?.sanitize) { + return authenticatorService.sanitize(authenticator); + } + return authenticator; + }); + } +} diff --git a/packages/server/src/accounts-server.ts b/packages/server/src/accounts-server.ts index b55551524..ef741fc0b 100644 --- a/packages/server/src/accounts-server.ts +++ b/packages/server/src/accounts-server.ts @@ -12,7 +12,6 @@ import { AuthenticationService, AuthenticatorService, ConnectionInformations, - Authenticator, AuthenticationResult, } from '@accounts/types'; @@ -34,6 +33,7 @@ import { LogoutErrors, ResumeSessionErrors, } from './errors'; +import { AccountsMFA } from './accounts-mfa'; const defaultOptions = { ambiguousErrorMessages: true, @@ -56,6 +56,7 @@ const defaultOptions = { export class AccountsServer { public options: AccountsServerOptions & typeof defaultOptions; + public mfa: AccountsMFA; private services: { [key: string]: AuthenticationService }; private authenticators: { [key: string]: AuthenticatorService }; private db: DatabaseInterface; @@ -98,6 +99,9 @@ Please set ambiguousErrorMessages to false to be able to use autologin.` this.authenticators[service].server = this; } + // Initialize the MFA module + this.mfa = new AccountsMFA(this.options.db, authenticators); + // Initialize hooks this.hooks = new Emittery(); } @@ -661,117 +665,6 @@ Please set ambiguousErrorMessages to false to be able to use autologin.` return userObjectSanitizer(baseUser, omit as any, pick as any); } - /** - * MFA related operations - */ - - /** - * @description Request a challenge for the MFA authentication - * @param {string} mfaToken - A valid mfa token you obtained during the login process. - * @param {string} authenticatorId - The ID of the authenticator to challenge. - */ - public async mfaChallenge(mfaToken: string, authenticatorId: string): Promise { - if (!mfaToken) { - throw new Error('Mfa token invalid'); - } - const mfaChallenge = await this.db.findMfaChallengeByToken(mfaToken); - // TODO need to check that the challenge is not expired - if (!mfaChallenge || mfaChallenge.deactivated) { - throw new Error('Mfa token invalid'); - } - const authenticator = await this.db.findAuthenticatorById(authenticatorId); - if (!authenticator) { - throw new Error('Authenticator not found'); - } - // A user should be able to challenge only is own authenticators - if (mfaChallenge.userId !== authenticator.userId) { - throw new Error('Mfa token invalid'); - } - const authenticatorService = this.authenticators[authenticator.type]; - if (!authenticatorService) { - throw new Error(`No authenticator with the name ${authenticator.type} was registered.`); - } - // We trigger the good authenticator challenge - if (authenticatorService.challenge) { - await authenticatorService.challenge(mfaChallenge, authenticator); - } - // Then we attach the authenticator id that will be used to resolve the challenge - await this.db.updateMfaChallenge(mfaChallenge.id, { - authenticatorId: authenticator.id, - }); - } - - /** - * @description Start the association of a new authenticator - * @param {string} userId - User id to link the new authenticator. - * @param {string} serviceName - Service name of the authenticator service. - * @param {any} params - Params for the the authenticator service. - */ - public async mfaAssociate(userId: string, serviceName: string, params: any): Promise { - if (!this.authenticators[serviceName]) { - throw new Error(`No authenticator with the name ${serviceName} was registered.`); - } - - const associate = await this.authenticators[serviceName].associate(userId, params); - - // We create a new challenge for the authenticator so it can be verified later - const mfaChallengeToken = generateRandomToken(); - // associate.id refer to the authenticator id - await this.db.createMfaChallenge({ - userId, - authenticatorId: associate.id, - token: mfaChallengeToken, - scope: 'associate', - }); - - return { - ...associate, - mfaToken: mfaChallengeToken, - }; - } - - /** - * @description Return the list of the active and inactive authenticators for this user. - * The authenticators objects are whitelisted to not expose any sensitive informations to the client. - * If you want to get all the fields from the database, use the database `findUserAuthenticators` method directly. - * @param {string} userId - User id linked to the authenticators. - */ - public async findUserAuthenticators(userId: string): Promise { - const authenticators = await this.db.findUserAuthenticators(userId); - return authenticators.map((authenticator) => { - const authenticatorService = this.authenticators[authenticator.type]; - if (authenticatorService?.sanitize) { - return authenticatorService.sanitize(authenticator); - } - return authenticator; - }); - } - - /** - * @description Return the list of the active authenticators for this user. - * @param {string} mfaToken - A valid mfa token you obtained during the login process. - */ - public async findUserAuthenticatorsByMfaToken(mfaToken: string): Promise { - if (!mfaToken) { - throw new Error('Mfa token invalid'); - } - const mfaChallenge = await this.db.findMfaChallengeByToken(mfaToken); - // TODO need to check that the challenge is not expired - if (!mfaChallenge || mfaChallenge.deactivated) { - throw new Error('Mfa token invalid'); - } - const authenticators = await this.db.findUserAuthenticators(mfaChallenge.userId); - return authenticators - .filter((authenticator) => authenticator.active) - .map((authenticator) => { - const authenticatorService = this.authenticators[authenticator.type]; - if (authenticatorService?.sanitize) { - return authenticatorService.sanitize(authenticator); - } - return authenticator; - }); - } - /** * Private methods */ From 455496510d8e8ef26a03fc31e7aaedbaaecd6a4d Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 21 Apr 2020 12:10:02 +0200 Subject: [PATCH 089/146] Add Vocabulary --- website/docs/mfa/introduction.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/website/docs/mfa/introduction.md b/website/docs/mfa/introduction.md index ccaa5dfbf..8502780c9 100644 --- a/website/docs/mfa/introduction.md +++ b/website/docs/mfa/introduction.md @@ -12,6 +12,12 @@ Multi-factor authentication (MFA) is an authentication method in which a compute https://en.wikipedia.org/wiki/Multi-factor_authentication +## Vocabulary + +- **Factor**: Service responsible of the authentication flow, for example OTM, sms, device binding... +- **Authenticator**: Entity representing the hardware or software piece that will be used by a factor to resolve a challenge. +- **Challenge**: Entity the user needs to resolve in order to get a successful authentication. + ## Official factors For now, we provide the following official factors: @@ -20,6 +26,6 @@ For now, we provide the following official factors: ## Community factors -- Create a pull request to add your own. +- Create a pull request if you want your factor to be listed here. Not finding the one you are looking for? Check the guide to see how to [create a custom factor](/docs/mfa/create-custom). From 092fec2e49715cdcb218bd6bbb82b753e9ca8ec9 Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 21 Apr 2020 12:31:00 +0200 Subject: [PATCH 090/146] Example link to setup the first authenticator from the settings --- .../react-rest-typescript/src/TwoFactor.tsx | 83 ++++++++++++------- 1 file changed, 53 insertions(+), 30 deletions(-) diff --git a/examples/react-rest-typescript/src/TwoFactor.tsx b/examples/react-rest-typescript/src/TwoFactor.tsx index 23cdfe644..9cca6deb5 100644 --- a/examples/react-rest-typescript/src/TwoFactor.tsx +++ b/examples/react-rest-typescript/src/TwoFactor.tsx @@ -13,7 +13,7 @@ import { Authenticator } from '@accounts/types'; import { accountsClient } from './accounts'; import { useHistory } from 'react-router'; -const useStyles = makeStyles(theme => ({ +const useStyles = makeStyles((theme) => ({ card: { marginTop: theme.spacing(3), }, @@ -36,8 +36,55 @@ const useStyles = makeStyles(theme => ({ authenticatorItemDot: { marginRight: theme.spacing(2), }, + authenticatorItemDescription: { + marginTop: theme.spacing(1), + }, })); +interface AuthenticatorOtpProps { + authenticator?: Authenticator; +} + +const AuthenticatorOtp = ({ authenticator }: AuthenticatorOtpProps) => { + const classes = useStyles(); + const history = useHistory(); + + return ( + +
+
+ + Authenticator App (OTP) +
+ {authenticator?.active ? ( + + ) : ( + + )} +
+ + An authenticator application that supports TOTP (like Google Authenticator or 1Password) can + be used to conveniently secure your account. A new token is generated every 30 seconds. + +
+ ); +}; + export const TwoFactor = () => { const classes = useStyles(); const history = useHistory(); @@ -53,41 +100,17 @@ export const TwoFactor = () => { fetchAuthenticators(); }, []); + const haveOtpFactor = authenticators.find((authenticator) => authenticator.type === 'otp'); + return ( - {authenticators.map(authenticator => { + {!haveOtpFactor && } + {authenticators.map((authenticator) => { if (authenticator.type === 'otp') { - return ( -
-
- - Authenticator App -
- {authenticator.active ? ( - - ) : ( - - )} -
- ); + return ; } return null; })} From 97c94dced77a9586317caf0701e98f2294385446 Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 21 Apr 2020 12:31:22 +0200 Subject: [PATCH 091/146] fix lint --- examples/react-rest-typescript/src/TwoFactor.tsx | 1 - 1 file changed, 1 deletion(-) diff --git a/examples/react-rest-typescript/src/TwoFactor.tsx b/examples/react-rest-typescript/src/TwoFactor.tsx index 9cca6deb5..47c5a5bc4 100644 --- a/examples/react-rest-typescript/src/TwoFactor.tsx +++ b/examples/react-rest-typescript/src/TwoFactor.tsx @@ -87,7 +87,6 @@ const AuthenticatorOtp = ({ authenticator }: AuthenticatorOtpProps) => { export const TwoFactor = () => { const classes = useStyles(); - const history = useHistory(); const [authenticators, setAuthenticators] = useState([]); useEffect(() => { From facd74f99aef9f3e97c0330f4795cd2782c4afc7 Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 21 Apr 2020 13:00:20 +0200 Subject: [PATCH 092/146] Prepare MfaAuthenticator screen --- .../src/MfaAuthenticator.tsx | 47 +++++++++++++++++++ examples/react-rest-typescript/src/Router.tsx | 5 +- 2 files changed, 51 insertions(+), 1 deletion(-) create mode 100644 examples/react-rest-typescript/src/MfaAuthenticator.tsx diff --git a/examples/react-rest-typescript/src/MfaAuthenticator.tsx b/examples/react-rest-typescript/src/MfaAuthenticator.tsx new file mode 100644 index 000000000..c6f1da602 --- /dev/null +++ b/examples/react-rest-typescript/src/MfaAuthenticator.tsx @@ -0,0 +1,47 @@ +import React from 'react'; +import { makeStyles, Typography, Divider, Card, CardHeader, CardContent } from '@material-ui/core'; +import { AuthenticatedContainer } from './components/AuthenticatedContainer'; + +const useStyles = makeStyles((theme) => ({ + divider: { + marginTop: theme.spacing(2), + }, + card: { + marginTop: theme.spacing(3), + }, + cardHeader: { + paddingLeft: theme.spacing(3), + paddingRight: theme.spacing(3), + }, + cardContent: { + padding: theme.spacing(3), + }, + authenticatorDescription: { + marginTop: theme.spacing(1), + }, +})); + +export const MfaAuthenticator = () => { + const classes = useStyles(); + + return ( + + Authenticator Details + + + {/* TODO title and content based on the type */} + + + + TODO + + An authenticator application that supports TOTP (like Google Authenticator or 1Password) + can be used to conveniently secure your account. A new token is generated every 30 + seconds. + + + + + + ); +}; diff --git a/examples/react-rest-typescript/src/Router.tsx b/examples/react-rest-typescript/src/Router.tsx index 2637c8bae..1be29955b 100644 --- a/examples/react-rest-typescript/src/Router.tsx +++ b/examples/react-rest-typescript/src/Router.tsx @@ -11,6 +11,7 @@ import VerifyEmail from './VerifyEmail'; import { Email } from './Email'; import { Security } from './Security'; import { TwoFactorOtp } from './TwoFactorOtp'; +import { MfaAuthenticator } from './MfaAuthenticator'; // A wrapper for that redirects to the login // screen if you're not yet authenticated. @@ -54,7 +55,9 @@ const Router = () => { - {/* TODO */} + + + {/* Unauthenticated routes */} From ce6f04495e4de9ba5dcb04396aada2bb31e5880b Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 21 Apr 2020 13:53:18 +0200 Subject: [PATCH 093/146] v0.26.0-alpha.1 --- examples/accounts-boost/package.json | 4 ++-- .../package.json | 12 +++++----- .../graphql-server-typescript/package.json | 14 +++++------ .../react-graphql-typescript/package.json | 10 ++++---- examples/react-rest-typescript/package.json | 8 +++---- examples/rest-express-typescript/package.json | 12 +++++----- lerna.json | 2 +- packages/apollo-link-accounts/package.json | 4 ++-- packages/authenticator-otp/package.json | 6 ++--- packages/boost/package.json | 10 ++++---- packages/client-password/package.json | 6 ++--- packages/client/package.json | 4 ++-- packages/database-manager/package.json | 4 ++-- packages/database-mongo/package.json | 6 ++--- packages/database-redis/package.json | 6 ++--- packages/database-tests/package.json | 4 ++-- packages/database-typeorm/package.json | 6 ++--- packages/e2e/package.json | 24 +++++++++---------- packages/error/package.json | 2 +- packages/express-session/package.json | 6 ++--- packages/graphql-api/package.json | 8 +++---- packages/graphql-client/package.json | 6 ++--- packages/oauth-instagram/package.json | 4 ++-- packages/oauth-twitter/package.json | 4 ++-- packages/oauth/package.json | 6 ++--- packages/password/package.json | 8 +++---- packages/rest-client/package.json | 6 ++--- packages/rest-express/package.json | 8 +++---- packages/server/package.json | 4 ++-- packages/two-factor/package.json | 4 ++-- packages/types/package.json | 2 +- 31 files changed, 105 insertions(+), 105 deletions(-) diff --git a/examples/accounts-boost/package.json b/examples/accounts-boost/package.json index 414bd1886..d7c71029d 100644 --- a/examples/accounts-boost/package.json +++ b/examples/accounts-boost/package.json @@ -1,7 +1,7 @@ { "name": "@examples/accounts-boost", "private": true, - "version": "0.26.0-alpha.0", + "version": "0.26.0-alpha.1", "main": "lib/index.js", "license": "MIT", "scripts": { @@ -13,7 +13,7 @@ "test": "yarn build" }, "dependencies": { - "@accounts/boost": "^0.26.0-alpha.0", + "@accounts/boost": "^0.26.0-alpha.1", "apollo-link-context": "1.0.19", "apollo-link-http": "1.5.16", "apollo-server": "2.9.13", diff --git a/examples/graphql-server-typeorm-postgres/package.json b/examples/graphql-server-typeorm-postgres/package.json index 0647ed0a8..c6f9499ab 100755 --- a/examples/graphql-server-typeorm-postgres/package.json +++ b/examples/graphql-server-typeorm-postgres/package.json @@ -1,7 +1,7 @@ { "name": "@examples/graphql-typeorm-typescript", "private": true, - "version": "0.26.0-alpha.0", + "version": "0.26.0-alpha.1", "main": "lib/index.js", "license": "Unlicensed", "scripts": { @@ -13,10 +13,10 @@ "test": "yarn build" }, "dependencies": { - "@accounts/graphql-api": "^0.26.0-alpha.0", - "@accounts/password": "^0.26.0-alpha.0", - "@accounts/server": "^0.26.0-alpha.0", - "@accounts/typeorm": "^0.26.0-alpha.0", + "@accounts/graphql-api": "^0.26.0-alpha.1", + "@accounts/password": "^0.26.0-alpha.1", + "@accounts/server": "^0.26.0-alpha.1", + "@accounts/typeorm": "^0.26.0-alpha.1", "@graphql-modules/core": "0.7.13", "apollo-server": "2.9.13", "graphql": "14.5.8", @@ -25,7 +25,7 @@ "typeorm": "0.2.22" }, "devDependencies": { - "@accounts/types": "^0.26.0-alpha.0", + "@accounts/types": "^0.26.0-alpha.1", "@types/node": "13.7.7", "nodemon": "2.0.2", "ts-node": "8.6.2", diff --git a/examples/graphql-server-typescript/package.json b/examples/graphql-server-typescript/package.json index f4fd6e150..3a8c44611 100644 --- a/examples/graphql-server-typescript/package.json +++ b/examples/graphql-server-typescript/package.json @@ -1,7 +1,7 @@ { "name": "@examples/graphql-server-typescript", "private": true, - "version": "0.26.0-alpha.0", + "version": "0.26.0-alpha.1", "main": "lib/index.js", "license": "MIT", "scripts": { @@ -10,12 +10,12 @@ "test": "yarn build" }, "dependencies": { - "@accounts/database-manager": "^0.26.0-alpha.0", - "@accounts/graphql-api": "^0.26.0-alpha.0", - "@accounts/mongo": "^0.26.0-alpha.0", - "@accounts/password": "^0.26.0-alpha.0", - "@accounts/rest-express": "^0.26.0-alpha.0", - "@accounts/server": "^0.26.0-alpha.0", + "@accounts/database-manager": "^0.26.0-alpha.1", + "@accounts/graphql-api": "^0.26.0-alpha.1", + "@accounts/mongo": "^0.26.0-alpha.1", + "@accounts/password": "^0.26.0-alpha.1", + "@accounts/rest-express": "^0.26.0-alpha.1", + "@accounts/server": "^0.26.0-alpha.1", "@graphql-modules/core": "0.7.13", "apollo-server": "2.9.13", "graphql": "14.5.8", diff --git a/examples/react-graphql-typescript/package.json b/examples/react-graphql-typescript/package.json index 83d3fc170..a4bf7b7d3 100644 --- a/examples/react-graphql-typescript/package.json +++ b/examples/react-graphql-typescript/package.json @@ -1,6 +1,6 @@ { "name": "@examples/react-graphql-typescript", - "version": "0.26.0-alpha.0", + "version": "0.26.0-alpha.1", "private": true, "scripts": { "start": "SKIP_PREFLIGHT_CHECK=true react-scripts start", @@ -24,10 +24,10 @@ ] }, "dependencies": { - "@accounts/apollo-link": "^0.26.0-alpha.0", - "@accounts/client": "^0.26.0-alpha.0", - "@accounts/client-password": "^0.26.0-alpha.0", - "@accounts/graphql-client": "^0.26.0-alpha.0", + "@accounts/apollo-link": "^0.26.0-alpha.1", + "@accounts/client": "^0.26.0-alpha.1", + "@accounts/client-password": "^0.26.0-alpha.1", + "@accounts/graphql-client": "^0.26.0-alpha.1", "@apollo/react-hooks": "3.1.2", "@material-ui/core": "4.8.1", "@material-ui/styles": "4.7.1", diff --git a/examples/react-rest-typescript/package.json b/examples/react-rest-typescript/package.json index ae0b8308c..8fd4b2937 100644 --- a/examples/react-rest-typescript/package.json +++ b/examples/react-rest-typescript/package.json @@ -1,6 +1,6 @@ { "name": "@examples/react-rest-typescript", - "version": "0.26.0-alpha.0", + "version": "0.26.0-alpha.1", "private": true, "scripts": { "start": "SKIP_PREFLIGHT_CHECK=true react-scripts start", @@ -24,9 +24,9 @@ ] }, "dependencies": { - "@accounts/client": "^0.26.0-alpha.0", - "@accounts/client-password": "^0.26.0-alpha.0", - "@accounts/rest-client": "^0.26.0-alpha.0", + "@accounts/client": "^0.26.0-alpha.1", + "@accounts/client-password": "^0.26.0-alpha.1", + "@accounts/rest-client": "^0.26.0-alpha.1", "@material-ui/core": "4.8.1", "@material-ui/icons": "4.5.1", "@material-ui/lab": "4.0.0-alpha.39", diff --git a/examples/rest-express-typescript/package.json b/examples/rest-express-typescript/package.json index 0d1b5c6f5..f7b771b77 100644 --- a/examples/rest-express-typescript/package.json +++ b/examples/rest-express-typescript/package.json @@ -1,7 +1,7 @@ { "name": "@examples/rest-express-typescript", "private": true, - "version": "0.26.0-alpha.0", + "version": "0.26.0-alpha.1", "main": "lib/index.js", "license": "MIT", "scripts": { @@ -10,11 +10,11 @@ "test": "yarn build" }, "dependencies": { - "@accounts/authenticator-otp": "^0.26.0-alpha.0", - "@accounts/mongo": "^0.26.0-alpha.0", - "@accounts/password": "^0.26.0-alpha.0", - "@accounts/rest-express": "^0.26.0-alpha.0", - "@accounts/server": "^0.26.0-alpha.0", + "@accounts/authenticator-otp": "^0.26.0-alpha.1", + "@accounts/mongo": "^0.26.0-alpha.1", + "@accounts/password": "^0.26.0-alpha.1", + "@accounts/rest-express": "^0.26.0-alpha.1", + "@accounts/server": "^0.26.0-alpha.1", "body-parser": "1.19.0", "cors": "2.8.5", "express": "4.17.1", diff --git a/lerna.json b/lerna.json index 1f42491e0..8ff652dae 100644 --- a/lerna.json +++ b/lerna.json @@ -2,5 +2,5 @@ "lerna": "2.11.0", "npmClient": "yarn", "useWorkspaces": true, - "version": "0.26.0-alpha.0" + "version": "0.26.0-alpha.1" } diff --git a/packages/apollo-link-accounts/package.json b/packages/apollo-link-accounts/package.json index 35f658eec..915d22a53 100644 --- a/packages/apollo-link-accounts/package.json +++ b/packages/apollo-link-accounts/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/apollo-link", - "version": "0.26.0-alpha.0", + "version": "0.26.0-alpha.1", "description": "Apollo link for account-js", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -20,7 +20,7 @@ }, "license": "MIT", "devDependencies": { - "@accounts/client": "^0.26.0-alpha.0", + "@accounts/client": "^0.26.0-alpha.1", "apollo-link": "1.2.13", "rimraf": "3.0.0" }, diff --git a/packages/authenticator-otp/package.json b/packages/authenticator-otp/package.json index 433448ffc..c37abf0c9 100644 --- a/packages/authenticator-otp/package.json +++ b/packages/authenticator-otp/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/authenticator-otp", - "version": "0.26.0-alpha.0", + "version": "0.26.0-alpha.1", "description": "@accounts/authenticator-otp", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -29,14 +29,14 @@ "author": "Leo Pradel", "license": "MIT", "devDependencies": { - "@accounts/server": "^0.26.0-alpha.0", + "@accounts/server": "^0.26.0-alpha.1", "@types/jest": "24.0.23", "@types/node": "12.7.4", "jest": "24.9.0", "rimraf": "3.0.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.0", + "@accounts/types": "^0.26.0-alpha.1", "otplib": "11.0.1", "tslib": "1.10.0" }, diff --git a/packages/boost/package.json b/packages/boost/package.json index 2da549157..06c329c4e 100644 --- a/packages/boost/package.json +++ b/packages/boost/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/boost", - "version": "0.26.0-alpha.0", + "version": "0.26.0-alpha.1", "description": "Ready to use GraphQL accounts server", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -23,10 +23,10 @@ "rimraf": "3.0.0" }, "dependencies": { - "@accounts/database-manager": "^0.26.0-alpha.0", - "@accounts/graphql-api": "^0.26.0-alpha.0", - "@accounts/server": "^0.26.0-alpha.0", - "@accounts/types": "^0.26.0-alpha.0", + "@accounts/database-manager": "^0.26.0-alpha.1", + "@accounts/graphql-api": "^0.26.0-alpha.1", + "@accounts/server": "^0.26.0-alpha.1", + "@accounts/types": "^0.26.0-alpha.1", "@graphql-modules/core": "0.7.14", "apollo-server": "^2.9.13", "graphql": "^14.5.4", diff --git a/packages/client-password/package.json b/packages/client-password/package.json index 39e34c75b..b6e13b9f5 100644 --- a/packages/client-password/package.json +++ b/packages/client-password/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/client-password", - "version": "0.26.0-alpha.0", + "version": "0.26.0-alpha.1", "description": "@accounts/client-password", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -35,8 +35,8 @@ "rimraf": "3.0.0" }, "dependencies": { - "@accounts/client": "^0.26.0-alpha.0", - "@accounts/types": "^0.26.0-alpha.0", + "@accounts/client": "^0.26.0-alpha.1", + "@accounts/types": "^0.26.0-alpha.1", "tslib": "1.10.0" } } diff --git a/packages/client/package.json b/packages/client/package.json index 7ab213deb..9a08a2ceb 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/client", - "version": "0.26.0-alpha.0", + "version": "0.26.0-alpha.1", "description": "Fullstack authentication and accounts-management", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -53,7 +53,7 @@ "rimraf": "3.0.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.0", + "@accounts/types": "^0.26.0-alpha.1", "jwt-decode": "2.2.0", "tslib": "1.10.0" } diff --git a/packages/database-manager/package.json b/packages/database-manager/package.json index 2f417657f..25297beaf 100644 --- a/packages/database-manager/package.json +++ b/packages/database-manager/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/database-manager", - "version": "0.26.0-alpha.0", + "version": "0.26.0-alpha.1", "description": "Accounts Database Manager, allow the use of separate databases for session and user", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -41,7 +41,7 @@ "rimraf": "3.0.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.0", + "@accounts/types": "^0.26.0-alpha.1", "tslib": "1.10.0" } } diff --git a/packages/database-mongo/package.json b/packages/database-mongo/package.json index 56ef75dfd..48a04860f 100644 --- a/packages/database-mongo/package.json +++ b/packages/database-mongo/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/mongo", - "version": "0.26.0-alpha.0", + "version": "0.26.0-alpha.1", "description": "MongoDB adaptor for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -29,7 +29,7 @@ "author": "Leo Pradel", "license": "MIT", "devDependencies": { - "@accounts/database-tests": "^0.26.0-alpha.0", + "@accounts/database-tests": "^0.26.0-alpha.1", "@types/jest": "25.1.4", "@types/lodash": "4.14.149", "@types/mongodb": "3.5.4", @@ -37,7 +37,7 @@ "jest": "25.1.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.0", + "@accounts/types": "^0.26.0-alpha.1", "lodash": "^4.17.15", "mongodb": "^3.4.1", "tslib": "1.10.0" diff --git a/packages/database-redis/package.json b/packages/database-redis/package.json index 51ba0bcf8..2585be892 100644 --- a/packages/database-redis/package.json +++ b/packages/database-redis/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/redis", - "version": "0.26.0-alpha.0", + "version": "0.26.0-alpha.1", "description": "Redis adaptor for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -32,7 +32,7 @@ "author": "Leo Pradel", "license": "MIT", "devDependencies": { - "@accounts/database-tests": "^0.26.0-alpha.0", + "@accounts/database-tests": "^0.26.0-alpha.1", "@types/ioredis": "4.14.9", "@types/jest": "25.1.4", "@types/lodash": "4.14.149", @@ -41,7 +41,7 @@ "jest": "25.1.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.0", + "@accounts/types": "^0.26.0-alpha.1", "ioredis": "^4.14.1", "lodash": "^4.17.15", "shortid": "^2.2.15", diff --git a/packages/database-tests/package.json b/packages/database-tests/package.json index 626839017..bbc0e8a24 100644 --- a/packages/database-tests/package.json +++ b/packages/database-tests/package.json @@ -1,7 +1,7 @@ { "name": "@accounts/database-tests", "private": true, - "version": "0.26.0-alpha.0", + "version": "0.26.0-alpha.1", "main": "lib/index.js", "typings": "lib/index.d.ts", "scripts": { @@ -23,7 +23,7 @@ "jest": "25.1.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.0", + "@accounts/types": "^0.26.0-alpha.1", "tslib": "1.10.0" } } diff --git a/packages/database-typeorm/package.json b/packages/database-typeorm/package.json index d3bd16a9f..4ebc93655 100644 --- a/packages/database-typeorm/package.json +++ b/packages/database-typeorm/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/typeorm", - "version": "0.26.0-alpha.0", + "version": "0.26.0-alpha.1", "description": "TypeORM adaptor for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -26,14 +26,14 @@ "author": "Birkir Gudjonsson ", "license": "MIT", "devDependencies": { - "@accounts/database-tests": "^0.26.0-alpha.0", + "@accounts/database-tests": "^0.26.0-alpha.1", "@types/jest": "25.1.4", "@types/node": "13.9.8", "jest": "25.1.0", "pg": "7.15.1" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.0", + "@accounts/types": "^0.26.0-alpha.1", "lodash": "^4.17.15", "reflect-metadata": "^0.1.13", "tslib": "1.10.0", diff --git a/packages/e2e/package.json b/packages/e2e/package.json index 13657d7c8..b7b930e88 100644 --- a/packages/e2e/package.json +++ b/packages/e2e/package.json @@ -1,7 +1,7 @@ { "name": "@accounts/e2e", "private": true, - "version": "0.26.0-alpha.0", + "version": "0.26.0-alpha.1", "main": "lib/index.js", "typings": "lib/index.d.ts", "scripts": { @@ -32,17 +32,17 @@ "jest-localstorage-mock": "2.4.0" }, "dependencies": { - "@accounts/client": "^0.26.0-alpha.0", - "@accounts/client-password": "^0.26.0-alpha.0", - "@accounts/graphql-api": "^0.26.0-alpha.0", - "@accounts/graphql-client": "^0.26.0-alpha.0", - "@accounts/mongo": "^0.26.0-alpha.0", - "@accounts/password": "^0.26.0-alpha.0", - "@accounts/rest-client": "^0.26.0-alpha.0", - "@accounts/rest-express": "^0.26.0-alpha.0", - "@accounts/server": "^0.26.0-alpha.0", - "@accounts/typeorm": "^0.26.0-alpha.0", - "@accounts/types": "^0.26.0-alpha.0", + "@accounts/client": "^0.26.0-alpha.1", + "@accounts/client-password": "^0.26.0-alpha.1", + "@accounts/graphql-api": "^0.26.0-alpha.1", + "@accounts/graphql-client": "^0.26.0-alpha.1", + "@accounts/mongo": "^0.26.0-alpha.1", + "@accounts/password": "^0.26.0-alpha.1", + "@accounts/rest-client": "^0.26.0-alpha.1", + "@accounts/rest-express": "^0.26.0-alpha.1", + "@accounts/server": "^0.26.0-alpha.1", + "@accounts/typeorm": "^0.26.0-alpha.1", + "@accounts/types": "^0.26.0-alpha.1", "@graphql-modules/core": "0.7.14", "apollo-boost": "0.4.7", "apollo-server": "2.9.15", diff --git a/packages/error/package.json b/packages/error/package.json index 2e7401ece..6408c411c 100644 --- a/packages/error/package.json +++ b/packages/error/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/error", - "version": "0.26.0-alpha.0", + "version": "0.26.0-alpha.1", "description": "Accounts-js Error", "main": "lib/index.js", "typings": "lib/index.d.ts", diff --git a/packages/express-session/package.json b/packages/express-session/package.json index d12a39715..d93be659a 100644 --- a/packages/express-session/package.json +++ b/packages/express-session/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/express-session", - "version": "0.26.0-alpha.0", + "version": "0.26.0-alpha.1", "description": "", "main": "lib/index", "typings": "lib/index", @@ -34,7 +34,7 @@ "author": "Kamil Kisiela", "license": "MIT", "devDependencies": { - "@accounts/server": "^0.26.0-alpha.0", + "@accounts/server": "^0.26.0-alpha.1", "@types/express": "4.17.4", "@types/express-session": "1.17.0", "@types/jest": "25.1.4", @@ -50,7 +50,7 @@ "express-session": "^1.15.6" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.0", + "@accounts/types": "^0.26.0-alpha.1", "lodash": "^4.17.15", "request-ip": "^2.1.3", "tslib": "1.10.0" diff --git a/packages/graphql-api/package.json b/packages/graphql-api/package.json index e8aed721b..166cd2da6 100644 --- a/packages/graphql-api/package.json +++ b/packages/graphql-api/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/graphql-api", - "version": "0.26.0-alpha.0", + "version": "0.26.0-alpha.1", "description": "Server side GraphQL transport for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -28,9 +28,9 @@ }, "homepage": "https://github.com/js-accounts/graphql-api", "devDependencies": { - "@accounts/password": "^0.26.0-alpha.0", - "@accounts/server": "^0.26.0-alpha.0", - "@accounts/types": "^0.26.0-alpha.0", + "@accounts/password": "^0.26.0-alpha.1", + "@accounts/server": "^0.26.0-alpha.1", + "@accounts/types": "^0.26.0-alpha.1", "@gql2ts/from-schema": "1.10.1", "@gql2ts/types": "1.9.0", "@graphql-codegen/add": "1.8.3", diff --git a/packages/graphql-client/package.json b/packages/graphql-client/package.json index c7d7fa800..b2035bb02 100644 --- a/packages/graphql-client/package.json +++ b/packages/graphql-client/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/graphql-client", - "version": "0.26.0-alpha.0", + "version": "0.26.0-alpha.1", "description": "GraphQL client transport for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -30,8 +30,8 @@ "lodash": "4.17.15" }, "dependencies": { - "@accounts/client": "^0.26.0-alpha.0", - "@accounts/types": "^0.26.0-alpha.0", + "@accounts/client": "^0.26.0-alpha.1", + "@accounts/types": "^0.26.0-alpha.1", "graphql-tag": "^2.10.0", "tslib": "1.10.0" }, diff --git a/packages/oauth-instagram/package.json b/packages/oauth-instagram/package.json index 16705a554..c162ab530 100644 --- a/packages/oauth-instagram/package.json +++ b/packages/oauth-instagram/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/oauth-instagram", - "version": "0.26.0-alpha.0", + "version": "0.26.0-alpha.1", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -18,7 +18,7 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/oauth": "^0.26.0-alpha.0", + "@accounts/oauth": "^0.26.0-alpha.1", "request": "^2.88.0", "request-promise": "^4.2.5", "tslib": "1.10.0" diff --git a/packages/oauth-twitter/package.json b/packages/oauth-twitter/package.json index 1d596d164..c6fd894e3 100644 --- a/packages/oauth-twitter/package.json +++ b/packages/oauth-twitter/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/oauth-twitter", - "version": "0.26.0-alpha.0", + "version": "0.26.0-alpha.1", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -18,7 +18,7 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/oauth": "^0.26.0-alpha.0", + "@accounts/oauth": "^0.26.0-alpha.1", "oauth": "^0.9.15", "tslib": "1.10.0" }, diff --git a/packages/oauth/package.json b/packages/oauth/package.json index e58c1db78..ac757ca1f 100644 --- a/packages/oauth/package.json +++ b/packages/oauth/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/oauth", - "version": "0.26.0-alpha.0", + "version": "0.26.0-alpha.1", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -18,12 +18,12 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.0", + "@accounts/types": "^0.26.0-alpha.1", "request-promise": "^4.2.5", "tslib": "1.10.0" }, "devDependencies": { - "@accounts/server": "^0.26.0-alpha.0", + "@accounts/server": "^0.26.0-alpha.1", "@types/jest": "25.1.4", "@types/node": "13.9.8", "jest": "25.1.0" diff --git a/packages/password/package.json b/packages/password/package.json index 8db334d60..260a1e32e 100644 --- a/packages/password/package.json +++ b/packages/password/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/password", - "version": "0.26.0-alpha.0", + "version": "0.26.0-alpha.1", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -18,14 +18,14 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/two-factor": "^0.26.0-alpha.0", + "@accounts/two-factor": "^0.26.0-alpha.1", "bcryptjs": "^2.4.3", "lodash": "^4.17.15", "tslib": "1.10.0" }, "devDependencies": { - "@accounts/server": "^0.26.0-alpha.0", - "@accounts/types": "^0.26.0-alpha.0", + "@accounts/server": "^0.26.0-alpha.1", + "@accounts/types": "^0.26.0-alpha.1", "@types/bcryptjs": "2.4.2", "@types/jest": "25.1.4", "@types/lodash": "4.14.149", diff --git a/packages/rest-client/package.json b/packages/rest-client/package.json index ae58927fb..c79911a8a 100644 --- a/packages/rest-client/package.json +++ b/packages/rest-client/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/rest-client", - "version": "0.26.0-alpha.0", + "version": "0.26.0-alpha.1", "description": "REST client for accounts", "main": "lib/index", "typings": "lib/index", @@ -38,7 +38,7 @@ "author": "Tim Mikeladze", "license": "MIT", "devDependencies": { - "@accounts/client": "^0.26.0-alpha.0", + "@accounts/client": "^0.26.0-alpha.1", "@types/jest": "25.1.4", "@types/lodash": "4.14.149", "@types/node": "13.9.8", @@ -49,7 +49,7 @@ "@accounts/client": "^0.19.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.0", + "@accounts/types": "^0.26.0-alpha.1", "lodash": "^4.17.15", "tslib": "1.10.0" } diff --git a/packages/rest-express/package.json b/packages/rest-express/package.json index 08277df86..ced562485 100644 --- a/packages/rest-express/package.json +++ b/packages/rest-express/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/rest-express", - "version": "0.26.0-alpha.0", + "version": "0.26.0-alpha.1", "description": "Server side REST express middleware for accounts", "main": "lib/index", "typings": "lib/index", @@ -35,8 +35,8 @@ "author": "Tim Mikeladze", "license": "MIT", "devDependencies": { - "@accounts/password": "^0.26.0-alpha.0", - "@accounts/server": "^0.26.0-alpha.0", + "@accounts/password": "^0.26.0-alpha.1", + "@accounts/server": "^0.26.0-alpha.1", "@types/express": "4.17.4", "@types/jest": "25.1.4", "@types/lodash": "4.14.149", @@ -48,7 +48,7 @@ "@accounts/server": "^0.19.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.0", + "@accounts/types": "^0.26.0-alpha.1", "express": "^4.17.0", "lodash": "^4.17.15", "request-ip": "^2.1.3", diff --git a/packages/server/package.json b/packages/server/package.json index 7fd91ea60..3a13ea2fc 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/server", - "version": "0.26.0-alpha.0", + "version": "0.26.0-alpha.1", "description": "Fullstack authentication and accounts-management", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -40,7 +40,7 @@ "author": "Tim Mikeladze", "license": "MIT", "dependencies": { - "@accounts/types": "^0.26.0-alpha.0", + "@accounts/types": "^0.26.0-alpha.1", "@types/jsonwebtoken": "8.3.5", "emittery": "0.5.1", "jsonwebtoken": "8.5.1", diff --git a/packages/two-factor/package.json b/packages/two-factor/package.json index 3da378d9f..ffc2a36c2 100644 --- a/packages/two-factor/package.json +++ b/packages/two-factor/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/two-factor", - "version": "0.26.0-alpha.0", + "version": "0.26.0-alpha.1", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -22,7 +22,7 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.0", + "@accounts/types": "^0.26.0-alpha.1", "@types/lodash": "^4.14.138", "@types/speakeasy": "2.0.2", "lodash": "^4.17.15", diff --git a/packages/types/package.json b/packages/types/package.json index a0fc17d0e..6b22fa61a 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/types", - "version": "0.26.0-alpha.0", + "version": "0.26.0-alpha.1", "description": "Accounts-js Types", "main": "lib/index.js", "typings": "lib/index.d.ts", From 246b76be1c268e025fbcd2a56e05bdb6e216779f Mon Sep 17 00:00:00 2001 From: pradel Date: Wed, 22 Apr 2020 15:29:46 +0200 Subject: [PATCH 094/146] convertAuthenticatorIdToMongoObjectId and convertMfaChallengeIdToMongoObjectId should be optional --- packages/database-mongo/src/types/index.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/database-mongo/src/types/index.ts b/packages/database-mongo/src/types/index.ts index fbaa504c0..41842b895 100644 --- a/packages/database-mongo/src/types/index.ts +++ b/packages/database-mongo/src/types/index.ts @@ -33,11 +33,11 @@ export interface AccountsMongoOptions { /** * Should the authenticator collection use _id as string or ObjectId, default 'true'. */ - convertAuthenticatorIdToMongoObjectId: boolean; + convertAuthenticatorIdToMongoObjectId?: boolean; /** * Should the mfa challenge collection use _id as string or ObjectId, default 'true'. */ - convertMfaChallengeIdToMongoObjectId: boolean; + convertMfaChallengeIdToMongoObjectId?: boolean; /** * Perform case insensitive query for user name, default 'true'. */ From 4008cfc898ec8414f986d76f912ac644b214f703 Mon Sep 17 00:00:00 2001 From: pradel Date: Thu, 23 Apr 2020 10:07:44 +0200 Subject: [PATCH 095/146] graphql api mfa module --- packages/graphql-api/src/models.ts | 45 ++++++++++++++++--- .../src/modules/accounts-mfa/index.ts | 44 ++++++++++++++++++ .../accounts-mfa/resolvers/mutation.ts | 11 +++++ .../modules/accounts-mfa/resolvers/query.ts | 18 ++++++++ .../modules/accounts-mfa/schema/mutation.ts | 8 ++++ .../src/modules/accounts-mfa/schema/query.ts | 8 ++++ .../src/modules/accounts-mfa/schema/types.ts | 10 +++++ .../graphql-api/src/modules/accounts/index.ts | 4 ++ packages/graphql-api/src/modules/index.ts | 1 + packages/server/src/accounts-mfa.ts | 3 ++ 10 files changed, 146 insertions(+), 6 deletions(-) create mode 100644 packages/graphql-api/src/modules/accounts-mfa/index.ts create mode 100644 packages/graphql-api/src/modules/accounts-mfa/resolvers/mutation.ts create mode 100644 packages/graphql-api/src/modules/accounts-mfa/resolvers/query.ts create mode 100644 packages/graphql-api/src/modules/accounts-mfa/schema/mutation.ts create mode 100644 packages/graphql-api/src/modules/accounts-mfa/schema/query.ts create mode 100644 packages/graphql-api/src/modules/accounts-mfa/schema/types.ts diff --git a/packages/graphql-api/src/models.ts b/packages/graphql-api/src/models.ts index 40f11396f..6f5b38492 100644 --- a/packages/graphql-api/src/models.ts +++ b/packages/graphql-api/src/models.ts @@ -24,6 +24,14 @@ export type AuthenticateParamsInput = { export type AuthenticationResult = LoginResult | MultiFactorResult; +export type Authenticator = { + __typename?: 'Authenticator', + id?: Maybe, + type?: Maybe, + active?: Maybe, + activatedAt?: Maybe, +}; + export type CreateUserInput = { username?: Maybe, email?: Maybe, @@ -63,6 +71,7 @@ export type MultiFactorResult = { export type Mutation = { __typename?: 'Mutation', + challenge?: Maybe, createUser?: Maybe, verifyEmail?: Maybe, resetPassword?: Maybe, @@ -80,6 +89,12 @@ export type Mutation = { }; +export type MutationChallengeArgs = { + mfaToken: Scalars['String'], + authenticatorId: Scalars['String'] +}; + + export type MutationCreateUserArgs = { user: CreateUserInput }; @@ -153,10 +168,16 @@ export type MutationVerifyAuthenticationArgs = { export type Query = { __typename?: 'Query', + authenticators?: Maybe>>, twoFactorSecret?: Maybe, getUser?: Maybe, }; + +export type QueryAuthenticatorsArgs = { + mfaToken?: Maybe +}; + export type Tokens = { __typename?: 'Tokens', refreshToken?: Maybe, @@ -263,12 +284,13 @@ export type DirectiveResolverFn, - TwoFactorSecretKey: ResolverTypeWrapper, String: ResolverTypeWrapper, - User: ResolverTypeWrapper, + Authenticator: ResolverTypeWrapper, ID: ResolverTypeWrapper, - EmailRecord: ResolverTypeWrapper, Boolean: ResolverTypeWrapper, + TwoFactorSecretKey: ResolverTypeWrapper, + User: ResolverTypeWrapper, + EmailRecord: ResolverTypeWrapper, Mutation: ResolverTypeWrapper<{}>, CreateUserInput: CreateUserInput, CreateUserResult: ResolverTypeWrapper, @@ -285,12 +307,13 @@ export type ResolversTypes = { /** Mapping between all available schema types and the resolvers parents */ export type ResolversParentTypes = { Query: {}, - TwoFactorSecretKey: TwoFactorSecretKey, String: Scalars['String'], - User: User, + Authenticator: Authenticator, ID: Scalars['ID'], - EmailRecord: EmailRecord, Boolean: Scalars['Boolean'], + TwoFactorSecretKey: TwoFactorSecretKey, + User: User, + EmailRecord: EmailRecord, Mutation: {}, CreateUserInput: CreateUserInput, CreateUserResult: CreateUserResult, @@ -310,6 +333,13 @@ export type AuthenticationResultResolvers }; +export type AuthenticatorResolvers = { + id?: Resolver, ParentType, ContextType>, + type?: Resolver, ParentType, ContextType>, + active?: Resolver, ParentType, ContextType>, + activatedAt?: Resolver, ParentType, ContextType>, +}; + export type CreateUserResultResolvers = { userId?: Resolver, ParentType, ContextType>, loginResult?: Resolver, ParentType, ContextType>, @@ -337,6 +367,7 @@ export type MultiFactorResultResolvers = { + challenge?: Resolver, ParentType, ContextType, RequireFields>, createUser?: Resolver, ParentType, ContextType, RequireFields>, verifyEmail?: Resolver, ParentType, ContextType, RequireFields>, resetPassword?: Resolver, ParentType, ContextType, RequireFields>, @@ -354,6 +385,7 @@ export type MutationResolvers = { + authenticators?: Resolver>>, ParentType, ContextType, QueryAuthenticatorsArgs>, twoFactorSecret?: Resolver, ParentType, ContextType>, getUser?: Resolver, ParentType, ContextType>, }; @@ -382,6 +414,7 @@ export type UserResolvers = { AuthenticationResult?: AuthenticationResultResolvers, + Authenticator?: AuthenticatorResolvers, CreateUserResult?: CreateUserResultResolvers, EmailRecord?: EmailRecordResolvers, ImpersonateReturn?: ImpersonateReturnResolvers, diff --git a/packages/graphql-api/src/modules/accounts-mfa/index.ts b/packages/graphql-api/src/modules/accounts-mfa/index.ts new file mode 100644 index 000000000..a1ec64970 --- /dev/null +++ b/packages/graphql-api/src/modules/accounts-mfa/index.ts @@ -0,0 +1,44 @@ +import { GraphQLModule } from '@graphql-modules/core'; +import { AccountsServer } from '@accounts/server'; +import TypesTypeDefs from './schema/types'; +import getQueryTypeDefs from './schema/query'; +import getMutationTypeDefs from './schema/mutation'; +import { Query } from './resolvers/query'; +import { Mutation } from './resolvers/mutation'; +import { AccountsRequest } from '../accounts'; +import { context } from '../../utils'; +import { CoreAccountsModule } from '../core'; + +export interface AccountsMfaModuleConfig { + accountsServer: AccountsServer; + rootQueryName?: string; + rootMutationName?: string; + extendTypeDefs?: boolean; + withSchemaDefinition?: boolean; + headerName?: string; + userAsInterface?: boolean; + excludeAddUserInContext?: boolean; +} + +export const AccountsMfaModule = new GraphQLModule({ + name: 'accounts-mfa', + typeDefs: ({ config }) => [TypesTypeDefs, getQueryTypeDefs(config), getMutationTypeDefs(config)], + resolvers: ({ config }) => + ({ + [config.rootQueryName || 'Query']: Query, + [config.rootMutationName || 'Mutation']: Mutation, + } as any), + imports: ({ config }) => [ + CoreAccountsModule.forRoot({ + userAsInterface: config.userAsInterface, + }), + ], + providers: ({ config }) => [ + { + provide: AccountsServer, + useValue: config.accountsServer, + }, + ], + context: context('accounts-mfa'), + configRequired: true, +}); diff --git a/packages/graphql-api/src/modules/accounts-mfa/resolvers/mutation.ts b/packages/graphql-api/src/modules/accounts-mfa/resolvers/mutation.ts new file mode 100644 index 000000000..976a676f4 --- /dev/null +++ b/packages/graphql-api/src/modules/accounts-mfa/resolvers/mutation.ts @@ -0,0 +1,11 @@ +import { ModuleContext } from '@graphql-modules/core'; +import { AccountsServer } from '@accounts/server'; +import { AccountsModuleContext } from '../../accounts'; +import { MutationResolvers } from '../../../models'; + +export const Mutation: MutationResolvers> = { + challenge: async (_, { mfaToken, authenticatorId }, { injector }) => { + await injector.get(AccountsServer).mfa.challenge(mfaToken, authenticatorId); + return true; + }, +}; diff --git a/packages/graphql-api/src/modules/accounts-mfa/resolvers/query.ts b/packages/graphql-api/src/modules/accounts-mfa/resolvers/query.ts new file mode 100644 index 000000000..2e2ab9a1b --- /dev/null +++ b/packages/graphql-api/src/modules/accounts-mfa/resolvers/query.ts @@ -0,0 +1,18 @@ +import { ModuleContext } from '@graphql-modules/core'; +import { AccountsServer } from '@accounts/server'; +import { QueryResolvers } from '../../../models'; +import { AccountsModuleContext } from '../../accounts'; + +export const Query: QueryResolvers> = { + authenticators: async (_, { mfaToken }, { user, injector }) => { + const userId = user?.id; + if (!mfaToken && !userId) { + throw new Error('Unauthorized'); + } + + const userAuthenticators = mfaToken + ? await injector.get(AccountsServer).mfa.findUserAuthenticatorsByMfaToken(mfaToken) + : await injector.get(AccountsServer).mfa.findUserAuthenticators(userId!); + return userAuthenticators; + }, +}; diff --git a/packages/graphql-api/src/modules/accounts-mfa/schema/mutation.ts b/packages/graphql-api/src/modules/accounts-mfa/schema/mutation.ts new file mode 100644 index 000000000..52e7a44cf --- /dev/null +++ b/packages/graphql-api/src/modules/accounts-mfa/schema/mutation.ts @@ -0,0 +1,8 @@ +import gql from 'graphql-tag'; +import { AccountsMfaModuleConfig } from '..'; + +export default (config: AccountsMfaModuleConfig) => gql` + ${config.extendTypeDefs ? 'extend' : ''} type ${config.rootMutationName || 'Mutation'} { + challenge(mfaToken: String!, authenticatorId: String!): Boolean + } +`; diff --git a/packages/graphql-api/src/modules/accounts-mfa/schema/query.ts b/packages/graphql-api/src/modules/accounts-mfa/schema/query.ts new file mode 100644 index 000000000..5977dfc31 --- /dev/null +++ b/packages/graphql-api/src/modules/accounts-mfa/schema/query.ts @@ -0,0 +1,8 @@ +import gql from 'graphql-tag'; +import { AccountsMfaModuleConfig } from '..'; + +export default (config: AccountsMfaModuleConfig) => gql` + ${config.extendTypeDefs ? 'extend' : ''} type ${config.rootQueryName || 'Query'} { + authenticators(mfaToken: String): [Authenticator] + } +`; diff --git a/packages/graphql-api/src/modules/accounts-mfa/schema/types.ts b/packages/graphql-api/src/modules/accounts-mfa/schema/types.ts new file mode 100644 index 000000000..e5a4f32b9 --- /dev/null +++ b/packages/graphql-api/src/modules/accounts-mfa/schema/types.ts @@ -0,0 +1,10 @@ +import gql from 'graphql-tag'; + +export default gql` + type Authenticator { + id: ID + type: String + active: Boolean + activatedAt: String + } +`; diff --git a/packages/graphql-api/src/modules/accounts/index.ts b/packages/graphql-api/src/modules/accounts/index.ts index 8afce259f..96a714fe1 100644 --- a/packages/graphql-api/src/modules/accounts/index.ts +++ b/packages/graphql-api/src/modules/accounts/index.ts @@ -10,6 +10,7 @@ import { Mutation } from './resolvers/mutation'; import { User as UserResolvers } from './resolvers/user'; import { User } from '@accounts/types'; import { AccountsPasswordModule } from '../accounts-password'; +import { AccountsMfaModule } from '../accounts-mfa'; import { AuthenticatedDirective } from '../../utils/authenticated-directive'; import { context } from '../../utils'; import AccountsPassword from '@accounts/password'; @@ -70,6 +71,9 @@ export const AccountsModule: GraphQLModule< CoreAccountsModule.forRoot({ userAsInterface: config.userAsInterface, }), + AccountsMfaModule.forRoot({ + ...config, + }), ...(config.accountsServer.getServices().password ? [ AccountsPasswordModule.forRoot({ diff --git a/packages/graphql-api/src/modules/index.ts b/packages/graphql-api/src/modules/index.ts index 18319d5cd..9446bff79 100644 --- a/packages/graphql-api/src/modules/index.ts +++ b/packages/graphql-api/src/modules/index.ts @@ -1,2 +1,3 @@ export * from './accounts'; export * from './accounts-password'; +export * from './accounts-mfa'; diff --git a/packages/server/src/accounts-mfa.ts b/packages/server/src/accounts-mfa.ts index a15e55ec7..30cf54a64 100644 --- a/packages/server/src/accounts-mfa.ts +++ b/packages/server/src/accounts-mfa.ts @@ -19,6 +19,9 @@ export class AccountsMFA { if (!mfaToken) { throw new Error('Mfa token invalid'); } + if (!authenticatorId) { + throw new Error('Authenticator id invalid'); + } const mfaChallenge = await this.db.findMfaChallengeByToken(mfaToken); // TODO need to check that the challenge is not expired if (!mfaChallenge || mfaChallenge.deactivated) { From 294bd582b3348e8cb84fccbc23a244c51acc71cc Mon Sep 17 00:00:00 2001 From: pradel Date: Thu, 23 Apr 2020 10:13:44 +0200 Subject: [PATCH 096/146] client authenticators query --- packages/graphql-client/src/graphql-client.ts | 7 ++++--- .../graphql-client/src/graphql/authenticators.query.ts | 9 +++++++++ 2 files changed, 13 insertions(+), 3 deletions(-) create mode 100644 packages/graphql-client/src/graphql/authenticators.query.ts diff --git a/packages/graphql-client/src/graphql-client.ts b/packages/graphql-client/src/graphql-client.ts index ae224b121..6a87e203b 100644 --- a/packages/graphql-client/src/graphql-client.ts +++ b/packages/graphql-client/src/graphql-client.ts @@ -25,6 +25,7 @@ import { sendVerificationEmailMutation } from './graphql/send-verification-email import { twoFactorSetMutation } from './graphql/two-factor-set.mutation'; import { twoFactorUnsetMutation } from './graphql/two-factor-unset.mutation'; import { verifyEmailMutation } from './graphql/verify-email.mutation'; +import { authenticatorsQuery } from './graphql/authenticators.query'; import { GraphQLErrorList } from './GraphQLErrorList'; export interface AuthenticateParams { @@ -195,15 +196,15 @@ export default class GraphQLClient implements TransportInterface { /** * @inheritDoc */ - public async mfaAssociate(type: string, customHeaders?: object): Promise { + public async mfaAssociate(type: string): Promise { throw new Error('Not implemented yet'); } /** * @inheritDoc */ - public async authenticators(mfaToken?: string, customHeaders?: object): Promise { - throw new Error('Not implemented yet'); + public async authenticators(mfaToken?: string): Promise { + return this.query(authenticatorsQuery, 'authenticators', { mfaToken }); } /** diff --git a/packages/graphql-client/src/graphql/authenticators.query.ts b/packages/graphql-client/src/graphql/authenticators.query.ts new file mode 100644 index 000000000..2c314ddc8 --- /dev/null +++ b/packages/graphql-client/src/graphql/authenticators.query.ts @@ -0,0 +1,9 @@ +import gql from 'graphql-tag'; + +export const authenticatorsQuery = gql` + query authenticators($mfaToken: String) { + authenticators(mfaToken: $mfaToken) { + id + } + } +`; From 13081426f29b0dd1fb2f0c89855f7a8f566d7b24 Mon Sep 17 00:00:00 2001 From: pradel Date: Thu, 23 Apr 2020 10:21:40 +0200 Subject: [PATCH 097/146] client challengeMutation --- packages/graphql-client/src/graphql-client.ts | 11 ++++------- .../{ => accounts-mfa}/authenticators.query.ts | 3 +++ .../src/graphql/accounts-mfa/challenge.mutation.ts | 7 +++++++ 3 files changed, 14 insertions(+), 7 deletions(-) rename packages/graphql-client/src/graphql/{ => accounts-mfa}/authenticators.query.ts (81%) create mode 100644 packages/graphql-client/src/graphql/accounts-mfa/challenge.mutation.ts diff --git a/packages/graphql-client/src/graphql-client.ts b/packages/graphql-client/src/graphql-client.ts index 6a87e203b..58e660a47 100644 --- a/packages/graphql-client/src/graphql-client.ts +++ b/packages/graphql-client/src/graphql-client.ts @@ -25,7 +25,8 @@ import { sendVerificationEmailMutation } from './graphql/send-verification-email import { twoFactorSetMutation } from './graphql/two-factor-set.mutation'; import { twoFactorUnsetMutation } from './graphql/two-factor-unset.mutation'; import { verifyEmailMutation } from './graphql/verify-email.mutation'; -import { authenticatorsQuery } from './graphql/authenticators.query'; +import { authenticatorsQuery } from './graphql/accounts-mfa/authenticators.query'; +import { challengeMutation } from './graphql/accounts-mfa/challenge.mutation'; import { GraphQLErrorList } from './GraphQLErrorList'; export interface AuthenticateParams { @@ -210,12 +211,8 @@ export default class GraphQLClient implements TransportInterface { /** * @inheritDoc */ - public async mfaChallenge( - mfaToken: string, - authenticatorId: string, - customHeaders?: object - ): Promise { - throw new Error('Not implemented yet'); + public async mfaChallenge(mfaToken: string, authenticatorId: string): Promise { + return this.mutate(challengeMutation, 'challenge', { mfaToken, authenticatorId }); } private async mutate(mutation: any, resultField: any, variables: any = {}) { diff --git a/packages/graphql-client/src/graphql/authenticators.query.ts b/packages/graphql-client/src/graphql/accounts-mfa/authenticators.query.ts similarity index 81% rename from packages/graphql-client/src/graphql/authenticators.query.ts rename to packages/graphql-client/src/graphql/accounts-mfa/authenticators.query.ts index 2c314ddc8..bd1cdc18d 100644 --- a/packages/graphql-client/src/graphql/authenticators.query.ts +++ b/packages/graphql-client/src/graphql/accounts-mfa/authenticators.query.ts @@ -4,6 +4,9 @@ export const authenticatorsQuery = gql` query authenticators($mfaToken: String) { authenticators(mfaToken: $mfaToken) { id + type + active + activatedAt } } `; diff --git a/packages/graphql-client/src/graphql/accounts-mfa/challenge.mutation.ts b/packages/graphql-client/src/graphql/accounts-mfa/challenge.mutation.ts new file mode 100644 index 000000000..755eecd44 --- /dev/null +++ b/packages/graphql-client/src/graphql/accounts-mfa/challenge.mutation.ts @@ -0,0 +1,7 @@ +import gql from 'graphql-tag'; + +export const challengeMutation = gql` + mutation challenge($mfaToken: String!, $authenticatorId: String!) { + challenge(mfaToken: $mfaToken, authenticatorId: $authenticatorId) + } +`; From 124af749a5931c20cf20e2a330ad1ed5380208e1 Mon Sep 17 00:00:00 2001 From: pradel Date: Fri, 24 Apr 2020 10:28:13 +0200 Subject: [PATCH 098/146] change options for authenticator interface --- packages/authenticator-otp/src/index.ts | 8 +++++- .../accounts-mfa/resolvers/mutation.ts | 4 +-- .../src/endpoints/mfa/associate.ts | 8 +++++- .../src/endpoints/mfa/challenge.ts | 7 ++++- packages/server/src/accounts-mfa.ts | 26 +++++++++++++++---- packages/server/src/accounts-server.ts | 9 ++++++- .../authenticator/authenticator-service.ts | 16 +++++++++--- 7 files changed, 64 insertions(+), 14 deletions(-) diff --git a/packages/authenticator-otp/src/index.ts b/packages/authenticator-otp/src/index.ts index 4d3348de3..2c4504bc3 100644 --- a/packages/authenticator-otp/src/index.ts +++ b/packages/authenticator-otp/src/index.ts @@ -1,4 +1,9 @@ -import { DatabaseInterface, AuthenticatorService, Authenticator } from '@accounts/types'; +import { + DatabaseInterface, + AuthenticatorService, + Authenticator, + MfaChallenge, +} from '@accounts/types'; import { AccountsServer } from '@accounts/server'; import * as otplib from 'otplib'; @@ -71,6 +76,7 @@ export class AuthenticatorOtp implements AuthenticatorService { * @description Verify that the code provided by the user is valid */ public async authenticate( + mfaChallenge: MfaChallenge, authenticator: DbAuthenticatorOtp, { code }: { code?: string } ): Promise { diff --git a/packages/graphql-api/src/modules/accounts-mfa/resolvers/mutation.ts b/packages/graphql-api/src/modules/accounts-mfa/resolvers/mutation.ts index 976a676f4..d215f51d3 100644 --- a/packages/graphql-api/src/modules/accounts-mfa/resolvers/mutation.ts +++ b/packages/graphql-api/src/modules/accounts-mfa/resolvers/mutation.ts @@ -4,8 +4,8 @@ import { AccountsModuleContext } from '../../accounts'; import { MutationResolvers } from '../../../models'; export const Mutation: MutationResolvers> = { - challenge: async (_, { mfaToken, authenticatorId }, { injector }) => { - await injector.get(AccountsServer).mfa.challenge(mfaToken, authenticatorId); + challenge: async (_, { mfaToken, authenticatorId }, { injector, ip, userAgent }) => { + await injector.get(AccountsServer).mfa.challenge(mfaToken, authenticatorId, { ip, userAgent }); return true; }, }; diff --git a/packages/rest-express/src/endpoints/mfa/associate.ts b/packages/rest-express/src/endpoints/mfa/associate.ts index 526e11a5b..2e6e809c0 100644 --- a/packages/rest-express/src/endpoints/mfa/associate.ts +++ b/packages/rest-express/src/endpoints/mfa/associate.ts @@ -1,6 +1,8 @@ import * as express from 'express'; +import * as requestIp from 'request-ip'; import { AccountsServer } from '@accounts/server'; import { sendError } from '../../utils/send-error'; +import { getUserAgent } from '../../utils/get-user-agent'; export const associate = (accountsServer: AccountsServer) => async ( req: express.Request, @@ -13,11 +15,15 @@ export const associate = (accountsServer: AccountsServer) => async ( return; } + const userAgent = getUserAgent(req); + const ip = requestIp.getClientIp(req); + const { type } = req.body; const mfaAssociateResult = await accountsServer.mfa.associate( (req as any).userId, type, - req.body + req.body, + { userAgent, ip } ); res.json(mfaAssociateResult); } catch (err) { diff --git a/packages/rest-express/src/endpoints/mfa/challenge.ts b/packages/rest-express/src/endpoints/mfa/challenge.ts index befa47528..a388d231f 100644 --- a/packages/rest-express/src/endpoints/mfa/challenge.ts +++ b/packages/rest-express/src/endpoints/mfa/challenge.ts @@ -1,14 +1,19 @@ import * as express from 'express'; +import * as requestIp from 'request-ip'; import { AccountsServer } from '@accounts/server'; import { sendError } from '../../utils/send-error'; +import { getUserAgent } from '../../utils/get-user-agent'; export const challenge = (accountsServer: AccountsServer) => async ( req: express.Request, res: express.Response ) => { try { + const userAgent = getUserAgent(req); + const ip = requestIp.getClientIp(req); + const { mfaToken, authenticatorId } = req.body; - await accountsServer.mfa.challenge(mfaToken, authenticatorId); + await accountsServer.mfa.challenge(mfaToken, authenticatorId, { userAgent, ip }); res.json(null); } catch (err) { sendError(res, err); diff --git a/packages/server/src/accounts-mfa.ts b/packages/server/src/accounts-mfa.ts index 30cf54a64..4f97cfa58 100644 --- a/packages/server/src/accounts-mfa.ts +++ b/packages/server/src/accounts-mfa.ts @@ -1,4 +1,9 @@ -import { DatabaseInterface, Authenticator, AuthenticatorService } from '@accounts/types'; +import { + DatabaseInterface, + Authenticator, + AuthenticatorService, + ConnectionInformations, +} from '@accounts/types'; import { generateRandomToken } from './utils/tokens'; export class AccountsMFA { @@ -14,8 +19,13 @@ export class AccountsMFA { * @description Request a challenge for the MFA authentication * @param {string} mfaToken - A valid mfa token you obtained during the login process. * @param {string} authenticatorId - The ID of the authenticator to challenge. + * @param {ConnectionInformations} infos - User connection informations. */ - public async challenge(mfaToken: string, authenticatorId: string): Promise { + public async challenge( + mfaToken: string, + authenticatorId: string, + infos: ConnectionInformations + ): Promise { if (!mfaToken) { throw new Error('Mfa token invalid'); } @@ -41,7 +51,7 @@ export class AccountsMFA { } // We trigger the good authenticator challenge if (authenticatorService.challenge) { - await authenticatorService.challenge(mfaChallenge, authenticator); + await authenticatorService.challenge(mfaChallenge, authenticator, infos); } // Then we attach the authenticator id that will be used to resolve the challenge await this.db.updateMfaChallenge(mfaChallenge.id, { @@ -54,13 +64,19 @@ export class AccountsMFA { * @param {string} userId - User id to link the new authenticator. * @param {string} serviceName - Service name of the authenticator service. * @param {any} params - Params for the the authenticator service. + * @param {ConnectionInformations} infos - User connection informations. */ - public async associate(userId: string, serviceName: string, params: any): Promise { + public async associate( + userId: string, + serviceName: string, + params: any, + infos: ConnectionInformations + ): Promise { if (!this.authenticators[serviceName]) { throw new Error(`No authenticator with the name ${serviceName} was registered.`); } - const associate = await this.authenticators[serviceName].associate(userId, params); + const associate = await this.authenticators[serviceName].associate(userId, params, infos); // We create a new challenge for the authenticator so it can be verified later const mfaChallengeToken = generateRandomToken(); diff --git a/packages/server/src/accounts-server.ts b/packages/server/src/accounts-server.ts index ef741fc0b..db853d6d5 100644 --- a/packages/server/src/accounts-server.ts +++ b/packages/server/src/accounts-server.ts @@ -215,7 +215,14 @@ Please set ambiguousErrorMessages to false to be able to use autologin.` throw new Error(`No authenticator with the name ${serviceName} was registered.`); } // TODO we need to implement some time checking for the mfaToken (eg: expire after X minutes, probably based on the authenticator configuration) - if (!(await this.authenticators[authenticator.type].authenticate(authenticator, params))) { + if ( + !(await this.authenticators[authenticator.type].authenticate( + mfaChallenge, + authenticator, + params, + infos + )) + ) { throw new Error(`Authenticator ${authenticator.type} was not able to authenticate user`); } // We activate the authenticator if user is using a challenge with scope 'associate' diff --git a/packages/types/src/types/authenticator/authenticator-service.ts b/packages/types/src/types/authenticator/authenticator-service.ts index 1becfd3f8..3c343e336 100644 --- a/packages/types/src/types/authenticator/authenticator-service.ts +++ b/packages/types/src/types/authenticator/authenticator-service.ts @@ -1,14 +1,24 @@ import { DatabaseInterface } from '../database-interface'; import { Authenticator } from './authenticator'; import { MfaChallenge } from '../mfa-challenge/mfa-challenge'; +import { ConnectionInformations } from '../connection-informations'; export interface AuthenticatorService { server: any; serviceName: string; setStore(store: DatabaseInterface): void; - challenge?(mfaChallenge: MfaChallenge, authenticator: Authenticator): Promise; - associate(userId: string, params: any): Promise; - authenticate(authenticator: Authenticator, params: any): Promise; + associate(userId: string, params: any, infos: ConnectionInformations): Promise; + challenge?( + mfaChallenge: MfaChallenge, + authenticator: Authenticator, + infos: ConnectionInformations + ): Promise; + authenticate( + mfaChallenge: MfaChallenge, + authenticator: Authenticator, + params: any, + infos: ConnectionInformations + ): Promise; sanitize?(authenticator: Authenticator): Authenticator; // TODO ability to delete an authenticator } From ad0914817551b832a11600613981ae5dba11c09d Mon Sep 17 00:00:00 2001 From: pradel Date: Fri, 24 Apr 2020 10:28:40 +0200 Subject: [PATCH 099/146] v0.26.0-alpha.2 --- examples/accounts-boost/package.json | 4 ++-- .../package.json | 12 +++++----- .../graphql-server-typescript/package.json | 14 +++++------ .../react-graphql-typescript/package.json | 10 ++++---- examples/react-rest-typescript/package.json | 8 +++---- examples/rest-express-typescript/package.json | 12 +++++----- lerna.json | 2 +- packages/apollo-link-accounts/package.json | 4 ++-- packages/authenticator-otp/package.json | 6 ++--- packages/boost/package.json | 10 ++++---- packages/client-password/package.json | 6 ++--- packages/client/package.json | 4 ++-- packages/database-manager/package.json | 4 ++-- packages/database-mongo/package.json | 6 ++--- packages/database-redis/package.json | 6 ++--- packages/database-tests/package.json | 4 ++-- packages/database-typeorm/package.json | 6 ++--- packages/e2e/package.json | 24 +++++++++---------- packages/error/package.json | 2 +- packages/express-session/package.json | 6 ++--- packages/graphql-api/package.json | 8 +++---- packages/graphql-client/package.json | 6 ++--- packages/oauth-instagram/package.json | 4 ++-- packages/oauth-twitter/package.json | 4 ++-- packages/oauth/package.json | 6 ++--- packages/password/package.json | 8 +++---- packages/rest-client/package.json | 6 ++--- packages/rest-express/package.json | 8 +++---- packages/server/package.json | 4 ++-- packages/two-factor/package.json | 4 ++-- packages/types/package.json | 2 +- 31 files changed, 105 insertions(+), 105 deletions(-) diff --git a/examples/accounts-boost/package.json b/examples/accounts-boost/package.json index d7c71029d..03b52408f 100644 --- a/examples/accounts-boost/package.json +++ b/examples/accounts-boost/package.json @@ -1,7 +1,7 @@ { "name": "@examples/accounts-boost", "private": true, - "version": "0.26.0-alpha.1", + "version": "0.26.0-alpha.2", "main": "lib/index.js", "license": "MIT", "scripts": { @@ -13,7 +13,7 @@ "test": "yarn build" }, "dependencies": { - "@accounts/boost": "^0.26.0-alpha.1", + "@accounts/boost": "^0.26.0-alpha.2", "apollo-link-context": "1.0.19", "apollo-link-http": "1.5.16", "apollo-server": "2.9.13", diff --git a/examples/graphql-server-typeorm-postgres/package.json b/examples/graphql-server-typeorm-postgres/package.json index c6f9499ab..1211f0f29 100755 --- a/examples/graphql-server-typeorm-postgres/package.json +++ b/examples/graphql-server-typeorm-postgres/package.json @@ -1,7 +1,7 @@ { "name": "@examples/graphql-typeorm-typescript", "private": true, - "version": "0.26.0-alpha.1", + "version": "0.26.0-alpha.2", "main": "lib/index.js", "license": "Unlicensed", "scripts": { @@ -13,10 +13,10 @@ "test": "yarn build" }, "dependencies": { - "@accounts/graphql-api": "^0.26.0-alpha.1", - "@accounts/password": "^0.26.0-alpha.1", - "@accounts/server": "^0.26.0-alpha.1", - "@accounts/typeorm": "^0.26.0-alpha.1", + "@accounts/graphql-api": "^0.26.0-alpha.2", + "@accounts/password": "^0.26.0-alpha.2", + "@accounts/server": "^0.26.0-alpha.2", + "@accounts/typeorm": "^0.26.0-alpha.2", "@graphql-modules/core": "0.7.13", "apollo-server": "2.9.13", "graphql": "14.5.8", @@ -25,7 +25,7 @@ "typeorm": "0.2.22" }, "devDependencies": { - "@accounts/types": "^0.26.0-alpha.1", + "@accounts/types": "^0.26.0-alpha.2", "@types/node": "13.7.7", "nodemon": "2.0.2", "ts-node": "8.6.2", diff --git a/examples/graphql-server-typescript/package.json b/examples/graphql-server-typescript/package.json index 3a8c44611..f174321ae 100644 --- a/examples/graphql-server-typescript/package.json +++ b/examples/graphql-server-typescript/package.json @@ -1,7 +1,7 @@ { "name": "@examples/graphql-server-typescript", "private": true, - "version": "0.26.0-alpha.1", + "version": "0.26.0-alpha.2", "main": "lib/index.js", "license": "MIT", "scripts": { @@ -10,12 +10,12 @@ "test": "yarn build" }, "dependencies": { - "@accounts/database-manager": "^0.26.0-alpha.1", - "@accounts/graphql-api": "^0.26.0-alpha.1", - "@accounts/mongo": "^0.26.0-alpha.1", - "@accounts/password": "^0.26.0-alpha.1", - "@accounts/rest-express": "^0.26.0-alpha.1", - "@accounts/server": "^0.26.0-alpha.1", + "@accounts/database-manager": "^0.26.0-alpha.2", + "@accounts/graphql-api": "^0.26.0-alpha.2", + "@accounts/mongo": "^0.26.0-alpha.2", + "@accounts/password": "^0.26.0-alpha.2", + "@accounts/rest-express": "^0.26.0-alpha.2", + "@accounts/server": "^0.26.0-alpha.2", "@graphql-modules/core": "0.7.13", "apollo-server": "2.9.13", "graphql": "14.5.8", diff --git a/examples/react-graphql-typescript/package.json b/examples/react-graphql-typescript/package.json index a4bf7b7d3..5fdf9e2ca 100644 --- a/examples/react-graphql-typescript/package.json +++ b/examples/react-graphql-typescript/package.json @@ -1,6 +1,6 @@ { "name": "@examples/react-graphql-typescript", - "version": "0.26.0-alpha.1", + "version": "0.26.0-alpha.2", "private": true, "scripts": { "start": "SKIP_PREFLIGHT_CHECK=true react-scripts start", @@ -24,10 +24,10 @@ ] }, "dependencies": { - "@accounts/apollo-link": "^0.26.0-alpha.1", - "@accounts/client": "^0.26.0-alpha.1", - "@accounts/client-password": "^0.26.0-alpha.1", - "@accounts/graphql-client": "^0.26.0-alpha.1", + "@accounts/apollo-link": "^0.26.0-alpha.2", + "@accounts/client": "^0.26.0-alpha.2", + "@accounts/client-password": "^0.26.0-alpha.2", + "@accounts/graphql-client": "^0.26.0-alpha.2", "@apollo/react-hooks": "3.1.2", "@material-ui/core": "4.8.1", "@material-ui/styles": "4.7.1", diff --git a/examples/react-rest-typescript/package.json b/examples/react-rest-typescript/package.json index 8fd4b2937..abe3e8ee2 100644 --- a/examples/react-rest-typescript/package.json +++ b/examples/react-rest-typescript/package.json @@ -1,6 +1,6 @@ { "name": "@examples/react-rest-typescript", - "version": "0.26.0-alpha.1", + "version": "0.26.0-alpha.2", "private": true, "scripts": { "start": "SKIP_PREFLIGHT_CHECK=true react-scripts start", @@ -24,9 +24,9 @@ ] }, "dependencies": { - "@accounts/client": "^0.26.0-alpha.1", - "@accounts/client-password": "^0.26.0-alpha.1", - "@accounts/rest-client": "^0.26.0-alpha.1", + "@accounts/client": "^0.26.0-alpha.2", + "@accounts/client-password": "^0.26.0-alpha.2", + "@accounts/rest-client": "^0.26.0-alpha.2", "@material-ui/core": "4.8.1", "@material-ui/icons": "4.5.1", "@material-ui/lab": "4.0.0-alpha.39", diff --git a/examples/rest-express-typescript/package.json b/examples/rest-express-typescript/package.json index f7b771b77..9516df61a 100644 --- a/examples/rest-express-typescript/package.json +++ b/examples/rest-express-typescript/package.json @@ -1,7 +1,7 @@ { "name": "@examples/rest-express-typescript", "private": true, - "version": "0.26.0-alpha.1", + "version": "0.26.0-alpha.2", "main": "lib/index.js", "license": "MIT", "scripts": { @@ -10,11 +10,11 @@ "test": "yarn build" }, "dependencies": { - "@accounts/authenticator-otp": "^0.26.0-alpha.1", - "@accounts/mongo": "^0.26.0-alpha.1", - "@accounts/password": "^0.26.0-alpha.1", - "@accounts/rest-express": "^0.26.0-alpha.1", - "@accounts/server": "^0.26.0-alpha.1", + "@accounts/authenticator-otp": "^0.26.0-alpha.2", + "@accounts/mongo": "^0.26.0-alpha.2", + "@accounts/password": "^0.26.0-alpha.2", + "@accounts/rest-express": "^0.26.0-alpha.2", + "@accounts/server": "^0.26.0-alpha.2", "body-parser": "1.19.0", "cors": "2.8.5", "express": "4.17.1", diff --git a/lerna.json b/lerna.json index 8ff652dae..cc6012950 100644 --- a/lerna.json +++ b/lerna.json @@ -2,5 +2,5 @@ "lerna": "2.11.0", "npmClient": "yarn", "useWorkspaces": true, - "version": "0.26.0-alpha.1" + "version": "0.26.0-alpha.2" } diff --git a/packages/apollo-link-accounts/package.json b/packages/apollo-link-accounts/package.json index 915d22a53..4f3d66a11 100644 --- a/packages/apollo-link-accounts/package.json +++ b/packages/apollo-link-accounts/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/apollo-link", - "version": "0.26.0-alpha.1", + "version": "0.26.0-alpha.2", "description": "Apollo link for account-js", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -20,7 +20,7 @@ }, "license": "MIT", "devDependencies": { - "@accounts/client": "^0.26.0-alpha.1", + "@accounts/client": "^0.26.0-alpha.2", "apollo-link": "1.2.13", "rimraf": "3.0.0" }, diff --git a/packages/authenticator-otp/package.json b/packages/authenticator-otp/package.json index c37abf0c9..55594f4f1 100644 --- a/packages/authenticator-otp/package.json +++ b/packages/authenticator-otp/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/authenticator-otp", - "version": "0.26.0-alpha.1", + "version": "0.26.0-alpha.2", "description": "@accounts/authenticator-otp", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -29,14 +29,14 @@ "author": "Leo Pradel", "license": "MIT", "devDependencies": { - "@accounts/server": "^0.26.0-alpha.1", + "@accounts/server": "^0.26.0-alpha.2", "@types/jest": "24.0.23", "@types/node": "12.7.4", "jest": "24.9.0", "rimraf": "3.0.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.1", + "@accounts/types": "^0.26.0-alpha.2", "otplib": "11.0.1", "tslib": "1.10.0" }, diff --git a/packages/boost/package.json b/packages/boost/package.json index 06c329c4e..5b9e2d686 100644 --- a/packages/boost/package.json +++ b/packages/boost/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/boost", - "version": "0.26.0-alpha.1", + "version": "0.26.0-alpha.2", "description": "Ready to use GraphQL accounts server", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -23,10 +23,10 @@ "rimraf": "3.0.0" }, "dependencies": { - "@accounts/database-manager": "^0.26.0-alpha.1", - "@accounts/graphql-api": "^0.26.0-alpha.1", - "@accounts/server": "^0.26.0-alpha.1", - "@accounts/types": "^0.26.0-alpha.1", + "@accounts/database-manager": "^0.26.0-alpha.2", + "@accounts/graphql-api": "^0.26.0-alpha.2", + "@accounts/server": "^0.26.0-alpha.2", + "@accounts/types": "^0.26.0-alpha.2", "@graphql-modules/core": "0.7.14", "apollo-server": "^2.9.13", "graphql": "^14.5.4", diff --git a/packages/client-password/package.json b/packages/client-password/package.json index b6e13b9f5..f11449036 100644 --- a/packages/client-password/package.json +++ b/packages/client-password/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/client-password", - "version": "0.26.0-alpha.1", + "version": "0.26.0-alpha.2", "description": "@accounts/client-password", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -35,8 +35,8 @@ "rimraf": "3.0.0" }, "dependencies": { - "@accounts/client": "^0.26.0-alpha.1", - "@accounts/types": "^0.26.0-alpha.1", + "@accounts/client": "^0.26.0-alpha.2", + "@accounts/types": "^0.26.0-alpha.2", "tslib": "1.10.0" } } diff --git a/packages/client/package.json b/packages/client/package.json index 9a08a2ceb..452be26d6 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/client", - "version": "0.26.0-alpha.1", + "version": "0.26.0-alpha.2", "description": "Fullstack authentication and accounts-management", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -53,7 +53,7 @@ "rimraf": "3.0.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.1", + "@accounts/types": "^0.26.0-alpha.2", "jwt-decode": "2.2.0", "tslib": "1.10.0" } diff --git a/packages/database-manager/package.json b/packages/database-manager/package.json index 25297beaf..205fe468a 100644 --- a/packages/database-manager/package.json +++ b/packages/database-manager/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/database-manager", - "version": "0.26.0-alpha.1", + "version": "0.26.0-alpha.2", "description": "Accounts Database Manager, allow the use of separate databases for session and user", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -41,7 +41,7 @@ "rimraf": "3.0.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.1", + "@accounts/types": "^0.26.0-alpha.2", "tslib": "1.10.0" } } diff --git a/packages/database-mongo/package.json b/packages/database-mongo/package.json index 48a04860f..579bebe78 100644 --- a/packages/database-mongo/package.json +++ b/packages/database-mongo/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/mongo", - "version": "0.26.0-alpha.1", + "version": "0.26.0-alpha.2", "description": "MongoDB adaptor for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -29,7 +29,7 @@ "author": "Leo Pradel", "license": "MIT", "devDependencies": { - "@accounts/database-tests": "^0.26.0-alpha.1", + "@accounts/database-tests": "^0.26.0-alpha.2", "@types/jest": "25.1.4", "@types/lodash": "4.14.149", "@types/mongodb": "3.5.4", @@ -37,7 +37,7 @@ "jest": "25.1.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.1", + "@accounts/types": "^0.26.0-alpha.2", "lodash": "^4.17.15", "mongodb": "^3.4.1", "tslib": "1.10.0" diff --git a/packages/database-redis/package.json b/packages/database-redis/package.json index 2585be892..0f6d67bb7 100644 --- a/packages/database-redis/package.json +++ b/packages/database-redis/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/redis", - "version": "0.26.0-alpha.1", + "version": "0.26.0-alpha.2", "description": "Redis adaptor for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -32,7 +32,7 @@ "author": "Leo Pradel", "license": "MIT", "devDependencies": { - "@accounts/database-tests": "^0.26.0-alpha.1", + "@accounts/database-tests": "^0.26.0-alpha.2", "@types/ioredis": "4.14.9", "@types/jest": "25.1.4", "@types/lodash": "4.14.149", @@ -41,7 +41,7 @@ "jest": "25.1.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.1", + "@accounts/types": "^0.26.0-alpha.2", "ioredis": "^4.14.1", "lodash": "^4.17.15", "shortid": "^2.2.15", diff --git a/packages/database-tests/package.json b/packages/database-tests/package.json index bbc0e8a24..6990968b9 100644 --- a/packages/database-tests/package.json +++ b/packages/database-tests/package.json @@ -1,7 +1,7 @@ { "name": "@accounts/database-tests", "private": true, - "version": "0.26.0-alpha.1", + "version": "0.26.0-alpha.2", "main": "lib/index.js", "typings": "lib/index.d.ts", "scripts": { @@ -23,7 +23,7 @@ "jest": "25.1.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.1", + "@accounts/types": "^0.26.0-alpha.2", "tslib": "1.10.0" } } diff --git a/packages/database-typeorm/package.json b/packages/database-typeorm/package.json index 4ebc93655..ca1196782 100644 --- a/packages/database-typeorm/package.json +++ b/packages/database-typeorm/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/typeorm", - "version": "0.26.0-alpha.1", + "version": "0.26.0-alpha.2", "description": "TypeORM adaptor for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -26,14 +26,14 @@ "author": "Birkir Gudjonsson ", "license": "MIT", "devDependencies": { - "@accounts/database-tests": "^0.26.0-alpha.1", + "@accounts/database-tests": "^0.26.0-alpha.2", "@types/jest": "25.1.4", "@types/node": "13.9.8", "jest": "25.1.0", "pg": "7.15.1" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.1", + "@accounts/types": "^0.26.0-alpha.2", "lodash": "^4.17.15", "reflect-metadata": "^0.1.13", "tslib": "1.10.0", diff --git a/packages/e2e/package.json b/packages/e2e/package.json index b7b930e88..fe0b0b11c 100644 --- a/packages/e2e/package.json +++ b/packages/e2e/package.json @@ -1,7 +1,7 @@ { "name": "@accounts/e2e", "private": true, - "version": "0.26.0-alpha.1", + "version": "0.26.0-alpha.2", "main": "lib/index.js", "typings": "lib/index.d.ts", "scripts": { @@ -32,17 +32,17 @@ "jest-localstorage-mock": "2.4.0" }, "dependencies": { - "@accounts/client": "^0.26.0-alpha.1", - "@accounts/client-password": "^0.26.0-alpha.1", - "@accounts/graphql-api": "^0.26.0-alpha.1", - "@accounts/graphql-client": "^0.26.0-alpha.1", - "@accounts/mongo": "^0.26.0-alpha.1", - "@accounts/password": "^0.26.0-alpha.1", - "@accounts/rest-client": "^0.26.0-alpha.1", - "@accounts/rest-express": "^0.26.0-alpha.1", - "@accounts/server": "^0.26.0-alpha.1", - "@accounts/typeorm": "^0.26.0-alpha.1", - "@accounts/types": "^0.26.0-alpha.1", + "@accounts/client": "^0.26.0-alpha.2", + "@accounts/client-password": "^0.26.0-alpha.2", + "@accounts/graphql-api": "^0.26.0-alpha.2", + "@accounts/graphql-client": "^0.26.0-alpha.2", + "@accounts/mongo": "^0.26.0-alpha.2", + "@accounts/password": "^0.26.0-alpha.2", + "@accounts/rest-client": "^0.26.0-alpha.2", + "@accounts/rest-express": "^0.26.0-alpha.2", + "@accounts/server": "^0.26.0-alpha.2", + "@accounts/typeorm": "^0.26.0-alpha.2", + "@accounts/types": "^0.26.0-alpha.2", "@graphql-modules/core": "0.7.14", "apollo-boost": "0.4.7", "apollo-server": "2.9.15", diff --git a/packages/error/package.json b/packages/error/package.json index 6408c411c..d4ee70cf4 100644 --- a/packages/error/package.json +++ b/packages/error/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/error", - "version": "0.26.0-alpha.1", + "version": "0.26.0-alpha.2", "description": "Accounts-js Error", "main": "lib/index.js", "typings": "lib/index.d.ts", diff --git a/packages/express-session/package.json b/packages/express-session/package.json index d93be659a..8591f33f3 100644 --- a/packages/express-session/package.json +++ b/packages/express-session/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/express-session", - "version": "0.26.0-alpha.1", + "version": "0.26.0-alpha.2", "description": "", "main": "lib/index", "typings": "lib/index", @@ -34,7 +34,7 @@ "author": "Kamil Kisiela", "license": "MIT", "devDependencies": { - "@accounts/server": "^0.26.0-alpha.1", + "@accounts/server": "^0.26.0-alpha.2", "@types/express": "4.17.4", "@types/express-session": "1.17.0", "@types/jest": "25.1.4", @@ -50,7 +50,7 @@ "express-session": "^1.15.6" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.1", + "@accounts/types": "^0.26.0-alpha.2", "lodash": "^4.17.15", "request-ip": "^2.1.3", "tslib": "1.10.0" diff --git a/packages/graphql-api/package.json b/packages/graphql-api/package.json index 166cd2da6..a72fece23 100644 --- a/packages/graphql-api/package.json +++ b/packages/graphql-api/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/graphql-api", - "version": "0.26.0-alpha.1", + "version": "0.26.0-alpha.2", "description": "Server side GraphQL transport for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -28,9 +28,9 @@ }, "homepage": "https://github.com/js-accounts/graphql-api", "devDependencies": { - "@accounts/password": "^0.26.0-alpha.1", - "@accounts/server": "^0.26.0-alpha.1", - "@accounts/types": "^0.26.0-alpha.1", + "@accounts/password": "^0.26.0-alpha.2", + "@accounts/server": "^0.26.0-alpha.2", + "@accounts/types": "^0.26.0-alpha.2", "@gql2ts/from-schema": "1.10.1", "@gql2ts/types": "1.9.0", "@graphql-codegen/add": "1.8.3", diff --git a/packages/graphql-client/package.json b/packages/graphql-client/package.json index b2035bb02..97722786e 100644 --- a/packages/graphql-client/package.json +++ b/packages/graphql-client/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/graphql-client", - "version": "0.26.0-alpha.1", + "version": "0.26.0-alpha.2", "description": "GraphQL client transport for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -30,8 +30,8 @@ "lodash": "4.17.15" }, "dependencies": { - "@accounts/client": "^0.26.0-alpha.1", - "@accounts/types": "^0.26.0-alpha.1", + "@accounts/client": "^0.26.0-alpha.2", + "@accounts/types": "^0.26.0-alpha.2", "graphql-tag": "^2.10.0", "tslib": "1.10.0" }, diff --git a/packages/oauth-instagram/package.json b/packages/oauth-instagram/package.json index c162ab530..c1c1be66c 100644 --- a/packages/oauth-instagram/package.json +++ b/packages/oauth-instagram/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/oauth-instagram", - "version": "0.26.0-alpha.1", + "version": "0.26.0-alpha.2", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -18,7 +18,7 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/oauth": "^0.26.0-alpha.1", + "@accounts/oauth": "^0.26.0-alpha.2", "request": "^2.88.0", "request-promise": "^4.2.5", "tslib": "1.10.0" diff --git a/packages/oauth-twitter/package.json b/packages/oauth-twitter/package.json index c6fd894e3..fd210423a 100644 --- a/packages/oauth-twitter/package.json +++ b/packages/oauth-twitter/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/oauth-twitter", - "version": "0.26.0-alpha.1", + "version": "0.26.0-alpha.2", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -18,7 +18,7 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/oauth": "^0.26.0-alpha.1", + "@accounts/oauth": "^0.26.0-alpha.2", "oauth": "^0.9.15", "tslib": "1.10.0" }, diff --git a/packages/oauth/package.json b/packages/oauth/package.json index ac757ca1f..0ad9e09f2 100644 --- a/packages/oauth/package.json +++ b/packages/oauth/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/oauth", - "version": "0.26.0-alpha.1", + "version": "0.26.0-alpha.2", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -18,12 +18,12 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.1", + "@accounts/types": "^0.26.0-alpha.2", "request-promise": "^4.2.5", "tslib": "1.10.0" }, "devDependencies": { - "@accounts/server": "^0.26.0-alpha.1", + "@accounts/server": "^0.26.0-alpha.2", "@types/jest": "25.1.4", "@types/node": "13.9.8", "jest": "25.1.0" diff --git a/packages/password/package.json b/packages/password/package.json index 260a1e32e..d00d1692f 100644 --- a/packages/password/package.json +++ b/packages/password/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/password", - "version": "0.26.0-alpha.1", + "version": "0.26.0-alpha.2", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -18,14 +18,14 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/two-factor": "^0.26.0-alpha.1", + "@accounts/two-factor": "^0.26.0-alpha.2", "bcryptjs": "^2.4.3", "lodash": "^4.17.15", "tslib": "1.10.0" }, "devDependencies": { - "@accounts/server": "^0.26.0-alpha.1", - "@accounts/types": "^0.26.0-alpha.1", + "@accounts/server": "^0.26.0-alpha.2", + "@accounts/types": "^0.26.0-alpha.2", "@types/bcryptjs": "2.4.2", "@types/jest": "25.1.4", "@types/lodash": "4.14.149", diff --git a/packages/rest-client/package.json b/packages/rest-client/package.json index c79911a8a..fd40472dd 100644 --- a/packages/rest-client/package.json +++ b/packages/rest-client/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/rest-client", - "version": "0.26.0-alpha.1", + "version": "0.26.0-alpha.2", "description": "REST client for accounts", "main": "lib/index", "typings": "lib/index", @@ -38,7 +38,7 @@ "author": "Tim Mikeladze", "license": "MIT", "devDependencies": { - "@accounts/client": "^0.26.0-alpha.1", + "@accounts/client": "^0.26.0-alpha.2", "@types/jest": "25.1.4", "@types/lodash": "4.14.149", "@types/node": "13.9.8", @@ -49,7 +49,7 @@ "@accounts/client": "^0.19.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.1", + "@accounts/types": "^0.26.0-alpha.2", "lodash": "^4.17.15", "tslib": "1.10.0" } diff --git a/packages/rest-express/package.json b/packages/rest-express/package.json index ced562485..eb71a05c5 100644 --- a/packages/rest-express/package.json +++ b/packages/rest-express/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/rest-express", - "version": "0.26.0-alpha.1", + "version": "0.26.0-alpha.2", "description": "Server side REST express middleware for accounts", "main": "lib/index", "typings": "lib/index", @@ -35,8 +35,8 @@ "author": "Tim Mikeladze", "license": "MIT", "devDependencies": { - "@accounts/password": "^0.26.0-alpha.1", - "@accounts/server": "^0.26.0-alpha.1", + "@accounts/password": "^0.26.0-alpha.2", + "@accounts/server": "^0.26.0-alpha.2", "@types/express": "4.17.4", "@types/jest": "25.1.4", "@types/lodash": "4.14.149", @@ -48,7 +48,7 @@ "@accounts/server": "^0.19.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.1", + "@accounts/types": "^0.26.0-alpha.2", "express": "^4.17.0", "lodash": "^4.17.15", "request-ip": "^2.1.3", diff --git a/packages/server/package.json b/packages/server/package.json index 3a13ea2fc..51203212e 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/server", - "version": "0.26.0-alpha.1", + "version": "0.26.0-alpha.2", "description": "Fullstack authentication and accounts-management", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -40,7 +40,7 @@ "author": "Tim Mikeladze", "license": "MIT", "dependencies": { - "@accounts/types": "^0.26.0-alpha.1", + "@accounts/types": "^0.26.0-alpha.2", "@types/jsonwebtoken": "8.3.5", "emittery": "0.5.1", "jsonwebtoken": "8.5.1", diff --git a/packages/two-factor/package.json b/packages/two-factor/package.json index ffc2a36c2..c0bed5bc6 100644 --- a/packages/two-factor/package.json +++ b/packages/two-factor/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/two-factor", - "version": "0.26.0-alpha.1", + "version": "0.26.0-alpha.2", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -22,7 +22,7 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.1", + "@accounts/types": "^0.26.0-alpha.2", "@types/lodash": "^4.14.138", "@types/speakeasy": "2.0.2", "lodash": "^4.17.15", diff --git a/packages/types/package.json b/packages/types/package.json index 6b22fa61a..bc89e71c6 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/types", - "version": "0.26.0-alpha.1", + "version": "0.26.0-alpha.2", "description": "Accounts-js Types", "main": "lib/index.js", "typings": "lib/index.d.ts", From 5a3130ff5d43918919a6ddb47684e34f9fd447fa Mon Sep 17 00:00:00 2001 From: pradel Date: Wed, 29 Apr 2020 12:33:55 +0200 Subject: [PATCH 100/146] rename mfaChallengeCollection to mfaChallengeCollectionName --- packages/database-mongo/src/mongo.ts | 4 ++-- packages/database-mongo/src/types/index.ts | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/database-mongo/src/mongo.ts b/packages/database-mongo/src/mongo.ts index 04b0d1f05..e60bba9e7 100644 --- a/packages/database-mongo/src/mongo.ts +++ b/packages/database-mongo/src/mongo.ts @@ -25,7 +25,7 @@ const defaultOptions = { collectionName: 'users', sessionCollectionName: 'sessions', authenticatorCollectionName: 'authenticators', - mfaChallengeCollection: 'mfaChallenges', + mfaChallengeCollectionName: 'mfaChallenges', timestamps: { createdAt: 'createdAt', updatedAt: 'updatedAt', @@ -61,7 +61,7 @@ export class Mongo implements DatabaseInterface { this.collection = this.db.collection(this.options.collectionName); this.sessionCollection = this.db.collection(this.options.sessionCollectionName); this.authenticatorCollection = this.db.collection(this.options.authenticatorCollectionName); - this.mfaChallengeCollection = this.db.collection(this.options.mfaChallengeCollection); + this.mfaChallengeCollection = this.db.collection(this.options.mfaChallengeCollectionName); } public async setupIndexes(): Promise { diff --git a/packages/database-mongo/src/types/index.ts b/packages/database-mongo/src/types/index.ts index 41842b895..fafa5dc70 100644 --- a/packages/database-mongo/src/types/index.ts +++ b/packages/database-mongo/src/types/index.ts @@ -14,7 +14,7 @@ export interface AccountsMongoOptions { /** * The mfa challenges collection name, default 'mfaChallenges'. */ - mfaChallengeCollection?: string; + mfaChallengeCollectionName?: string; /** * The timestamps for the users and sessions collection, default 'createdAt' and 'updatedAt'. */ From 4c0dd921293856d1705a47daca3316c2719ce8eb Mon Sep 17 00:00:00 2001 From: pradel Date: Wed, 29 Apr 2020 12:35:51 +0200 Subject: [PATCH 101/146] fix bad merge --- packages/server/src/accounts-server.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/server/src/accounts-server.ts b/packages/server/src/accounts-server.ts index 3a2d1a433..0df9317cb 100644 --- a/packages/server/src/accounts-server.ts +++ b/packages/server/src/accounts-server.ts @@ -56,6 +56,7 @@ const defaultOptions = { export class AccountsServer { public options: AccountsServerOptions & typeof defaultOptions; + public mfa: AccountsMFA; private services: { [key: string]: AuthenticationService }; private authenticators: { [key: string]: AuthenticatorService }; private db: DatabaseInterface; From c222893eb8b8143e02eda2960c50a8304c5f327b Mon Sep 17 00:00:00 2001 From: pradel Date: Wed, 29 Apr 2020 16:10:48 +0200 Subject: [PATCH 102/146] Allow challenge to return any data to the client --- packages/graphql-api/src/models.ts | 13 ++++++++-- .../accounts-mfa/resolvers/mutation.ts | 6 +++-- .../modules/accounts-mfa/schema/mutation.ts | 2 +- .../src/modules/accounts-mfa/schema/types.ts | 2 ++ packages/graphql-client/src/graphql-client.ts | 8 ++++-- .../accounts-mfa/challenge.mutation.ts | 6 +++-- .../src/endpoints/mfa/challenge.ts | 7 +++-- packages/server/src/accounts-mfa.ts | 26 ++++++++++++------- 8 files changed, 50 insertions(+), 20 deletions(-) diff --git a/packages/graphql-api/src/models.ts b/packages/graphql-api/src/models.ts index 6f5b38492..944cc71db 100644 --- a/packages/graphql-api/src/models.ts +++ b/packages/graphql-api/src/models.ts @@ -32,6 +32,8 @@ export type Authenticator = { activatedAt?: Maybe, }; +export type ChallengeResult = Scalars['Boolean']; + export type CreateUserInput = { username?: Maybe, email?: Maybe, @@ -71,7 +73,7 @@ export type MultiFactorResult = { export type Mutation = { __typename?: 'Mutation', - challenge?: Maybe, + challenge?: Maybe, createUser?: Maybe, verifyEmail?: Maybe, resetPassword?: Maybe, @@ -292,6 +294,7 @@ export type ResolversTypes = { User: ResolverTypeWrapper, EmailRecord: ResolverTypeWrapper, Mutation: ResolverTypeWrapper<{}>, + ChallengeResult: ResolversTypes['Boolean'], CreateUserInput: CreateUserInput, CreateUserResult: ResolverTypeWrapper, LoginResult: ResolverTypeWrapper, @@ -315,6 +318,7 @@ export type ResolversParentTypes = { User: User, EmailRecord: EmailRecord, Mutation: {}, + ChallengeResult: ResolversParentTypes['Boolean'], CreateUserInput: CreateUserInput, CreateUserResult: CreateUserResult, LoginResult: LoginResult, @@ -340,6 +344,10 @@ export type AuthenticatorResolvers, ParentType, ContextType>, }; +export type ChallengeResultResolvers = { + __resolveType: TypeResolveFn<'Boolean', ParentType, ContextType> +}; + export type CreateUserResultResolvers = { userId?: Resolver, ParentType, ContextType>, loginResult?: Resolver, ParentType, ContextType>, @@ -367,7 +375,7 @@ export type MultiFactorResultResolvers = { - challenge?: Resolver, ParentType, ContextType, RequireFields>, + challenge?: Resolver, ParentType, ContextType, RequireFields>, createUser?: Resolver, ParentType, ContextType, RequireFields>, verifyEmail?: Resolver, ParentType, ContextType, RequireFields>, resetPassword?: Resolver, ParentType, ContextType, RequireFields>, @@ -415,6 +423,7 @@ export type UserResolvers = { AuthenticationResult?: AuthenticationResultResolvers, Authenticator?: AuthenticatorResolvers, + ChallengeResult?: ChallengeResultResolvers, CreateUserResult?: CreateUserResultResolvers, EmailRecord?: EmailRecordResolvers, ImpersonateReturn?: ImpersonateReturnResolvers, diff --git a/packages/graphql-api/src/modules/accounts-mfa/resolvers/mutation.ts b/packages/graphql-api/src/modules/accounts-mfa/resolvers/mutation.ts index d215f51d3..dd49592be 100644 --- a/packages/graphql-api/src/modules/accounts-mfa/resolvers/mutation.ts +++ b/packages/graphql-api/src/modules/accounts-mfa/resolvers/mutation.ts @@ -5,7 +5,9 @@ import { MutationResolvers } from '../../../models'; export const Mutation: MutationResolvers> = { challenge: async (_, { mfaToken, authenticatorId }, { injector, ip, userAgent }) => { - await injector.get(AccountsServer).mfa.challenge(mfaToken, authenticatorId, { ip, userAgent }); - return true; + const challengeResponse = await injector + .get(AccountsServer) + .mfa.challenge(mfaToken, authenticatorId, { ip, userAgent }); + return challengeResponse; }, }; diff --git a/packages/graphql-api/src/modules/accounts-mfa/schema/mutation.ts b/packages/graphql-api/src/modules/accounts-mfa/schema/mutation.ts index 52e7a44cf..f8fd09858 100644 --- a/packages/graphql-api/src/modules/accounts-mfa/schema/mutation.ts +++ b/packages/graphql-api/src/modules/accounts-mfa/schema/mutation.ts @@ -3,6 +3,6 @@ import { AccountsMfaModuleConfig } from '..'; export default (config: AccountsMfaModuleConfig) => gql` ${config.extendTypeDefs ? 'extend' : ''} type ${config.rootMutationName || 'Mutation'} { - challenge(mfaToken: String!, authenticatorId: String!): Boolean + challenge(mfaToken: String!, authenticatorId: String!): ChallengeResult } `; diff --git a/packages/graphql-api/src/modules/accounts-mfa/schema/types.ts b/packages/graphql-api/src/modules/accounts-mfa/schema/types.ts index e5a4f32b9..26687dc5a 100644 --- a/packages/graphql-api/src/modules/accounts-mfa/schema/types.ts +++ b/packages/graphql-api/src/modules/accounts-mfa/schema/types.ts @@ -7,4 +7,6 @@ export default gql` active: Boolean activatedAt: String } + + union ChallengeResult = Boolean `; diff --git a/packages/graphql-client/src/graphql-client.ts b/packages/graphql-client/src/graphql-client.ts index a95b444e9..7b5104951 100644 --- a/packages/graphql-client/src/graphql-client.ts +++ b/packages/graphql-client/src/graphql-client.ts @@ -36,6 +36,7 @@ export interface AuthenticateParams { export interface OptionsType { graphQLClient: any; userFieldsFragment?: any; + challengeFieldsFragment?: string; } export default class GraphQLClient implements TransportInterface { @@ -211,8 +212,11 @@ export default class GraphQLClient implements TransportInterface { /** * @inheritDoc */ - public async mfaChallenge(mfaToken: string, authenticatorId: string): Promise { - return this.mutate(challengeMutation, 'challenge', { mfaToken, authenticatorId }); + public async mfaChallenge(mfaToken: string, authenticatorId: string): Promise { + return this.mutate(challengeMutation(this.options.challengeFieldsFragment), 'challenge', { + mfaToken, + authenticatorId, + }); } private async mutate(mutation: any, resultField: any, variables: any = {}) { diff --git a/packages/graphql-client/src/graphql/accounts-mfa/challenge.mutation.ts b/packages/graphql-client/src/graphql/accounts-mfa/challenge.mutation.ts index 755eecd44..9d8e973b9 100644 --- a/packages/graphql-client/src/graphql/accounts-mfa/challenge.mutation.ts +++ b/packages/graphql-client/src/graphql/accounts-mfa/challenge.mutation.ts @@ -1,7 +1,9 @@ import gql from 'graphql-tag'; -export const challengeMutation = gql` +export const challengeMutation = (challengeFieldsFragment?: any) => gql` mutation challenge($mfaToken: String!, $authenticatorId: String!) { - challenge(mfaToken: $mfaToken, authenticatorId: $authenticatorId) + challenge(mfaToken: $mfaToken, authenticatorId: $authenticatorId) ${ + challengeFieldsFragment || '' + } } `; diff --git a/packages/rest-express/src/endpoints/mfa/challenge.ts b/packages/rest-express/src/endpoints/mfa/challenge.ts index a388d231f..8479201dd 100644 --- a/packages/rest-express/src/endpoints/mfa/challenge.ts +++ b/packages/rest-express/src/endpoints/mfa/challenge.ts @@ -13,8 +13,11 @@ export const challenge = (accountsServer: AccountsServer) => async ( const ip = requestIp.getClientIp(req); const { mfaToken, authenticatorId } = req.body; - await accountsServer.mfa.challenge(mfaToken, authenticatorId, { userAgent, ip }); - res.json(null); + const challengeResult = await accountsServer.mfa.challenge(mfaToken, authenticatorId, { + userAgent, + ip, + }); + res.json(challengeResult); } catch (err) { sendError(res, err); } diff --git a/packages/server/src/accounts-mfa.ts b/packages/server/src/accounts-mfa.ts index 4f97cfa58..64d1c8bf4 100644 --- a/packages/server/src/accounts-mfa.ts +++ b/packages/server/src/accounts-mfa.ts @@ -3,6 +3,7 @@ import { Authenticator, AuthenticatorService, ConnectionInformations, + MfaChallenge, } from '@accounts/types'; import { generateRandomToken } from './utils/tokens'; @@ -25,7 +26,7 @@ export class AccountsMFA { mfaToken: string, authenticatorId: string, infos: ConnectionInformations - ): Promise { + ): Promise { if (!mfaToken) { throw new Error('Mfa token invalid'); } @@ -34,7 +35,7 @@ export class AccountsMFA { } const mfaChallenge = await this.db.findMfaChallengeByToken(mfaToken); // TODO need to check that the challenge is not expired - if (!mfaChallenge || mfaChallenge.deactivated) { + if (!mfaChallenge || !this.isMfaChallengeValid(mfaChallenge)) { throw new Error('Mfa token invalid'); } const authenticator = await this.db.findAuthenticatorById(authenticatorId); @@ -49,14 +50,14 @@ export class AccountsMFA { if (!authenticatorService) { throw new Error(`No authenticator with the name ${authenticator.type} was registered.`); } - // We trigger the good authenticator challenge - if (authenticatorService.challenge) { - await authenticatorService.challenge(mfaChallenge, authenticator, infos); + // If authenticator do not have a challenge method, we attach the authenticator id to the challenge + if (!authenticatorService.challenge) { + await this.db.updateMfaChallenge(mfaChallenge.id, { + authenticatorId: authenticator.id, + }); + return null; } - // Then we attach the authenticator id that will be used to resolve the challenge - await this.db.updateMfaChallenge(mfaChallenge.id, { - authenticatorId: authenticator.id, - }); + return authenticatorService.challenge(mfaChallenge, authenticator, infos); } /** @@ -135,4 +136,11 @@ export class AccountsMFA { return authenticator; }); } + + public isMfaChallengeValid(mfaChallenge: MfaChallenge): boolean { + if (mfaChallenge.deactivated) { + return false; + } + return true; + } } From 7d845399e19d0029df6a865a01571b1fd4318fe6 Mon Sep 17 00:00:00 2001 From: pradel Date: Mon, 4 May 2020 09:56:32 +0200 Subject: [PATCH 103/146] option to enforce to register a new authenticator before login --- packages/authenticator-otp/src/index.ts | 32 ++++++++--- packages/server/src/accounts-mfa.ts | 53 +++++++++++++------ packages/server/src/accounts-server.ts | 13 +++++ .../src/types/accounts-server-options.ts | 5 ++ .../authenticator/authenticator-service.ts | 6 ++- 5 files changed, 85 insertions(+), 24 deletions(-) diff --git a/packages/authenticator-otp/src/index.ts b/packages/authenticator-otp/src/index.ts index 2c4504bc3..30e11e432 100644 --- a/packages/authenticator-otp/src/index.ts +++ b/packages/authenticator-otp/src/index.ts @@ -4,7 +4,7 @@ import { Authenticator, MfaChallenge, } from '@accounts/types'; -import { AccountsServer } from '@accounts/server'; +import { AccountsServer, generateRandomToken } from '@accounts/server'; import * as otplib from 'otplib'; interface DbAuthenticatorOtp extends Authenticator { @@ -49,14 +49,15 @@ export class AuthenticatorOtp implements AuthenticatorService { * @description Start the association of a new OTP device */ public async associate( - userId: string, - // eslint-disable-next-line @typescript-eslint/no-unused-vars - params: any - ): Promise<{ id: string; secret: string; otpauthUri: string }> { + userIdOrMfaChallenge: string | MfaChallenge + ): Promise<{ id: string; mfaToken: string; secret: string; otpauthUri: string }> { + const userId = + typeof userIdOrMfaChallenge === 'string' ? userIdOrMfaChallenge : userIdOrMfaChallenge.userId; + const mfaChallenge = typeof userIdOrMfaChallenge === 'string' ? null : userIdOrMfaChallenge; + const secret = otplib.authenticator.generateSecret(); const userName = this.options.userName ? await this.options.userName(userId) : userId; const otpauthUri = otplib.authenticator.keyuri(userName, this.options.appName, secret); - // TODO generate some recovery codes like slack is doing (as an option, or maybe should just be a separate authenticator so it can be used by anything)? const authenticatorId = await this.db.createAuthenticator({ type: this.serviceName, @@ -65,8 +66,27 @@ export class AuthenticatorOtp implements AuthenticatorService { active: false, }); + let mfaToken: string; + if (mfaChallenge) { + mfaToken = mfaChallenge.token; + await this.db.updateMfaChallenge(mfaChallenge.id, { + authenticatorId, + }); + } else { + // We create a new challenge for the authenticator so it can be verified later + mfaToken = generateRandomToken(); + // associate.id refer to the authenticator id + await this.db.createMfaChallenge({ + userId, + authenticatorId, + token: mfaToken, + scope: 'associate', + }); + } + return { id: authenticatorId, + mfaToken, secret, otpauthUri, }; diff --git a/packages/server/src/accounts-mfa.ts b/packages/server/src/accounts-mfa.ts index 64d1c8bf4..85fd65432 100644 --- a/packages/server/src/accounts-mfa.ts +++ b/packages/server/src/accounts-mfa.ts @@ -17,7 +17,7 @@ export class AccountsMFA { } /** - * @description Request a challenge for the MFA authentication + * @description Request a challenge for the MFA authentication. * @param {string} mfaToken - A valid mfa token you obtained during the login process. * @param {string} authenticatorId - The ID of the authenticator to challenge. * @param {ConnectionInformations} infos - User connection informations. @@ -61,7 +61,7 @@ export class AccountsMFA { } /** - * @description Start the association of a new authenticator + * @description Start the association of a new authenticator. * @param {string} userId - User id to link the new authenticator. * @param {string} serviceName - Service name of the authenticator service. * @param {any} params - Params for the the authenticator service. @@ -78,21 +78,40 @@ export class AccountsMFA { } const associate = await this.authenticators[serviceName].associate(userId, params, infos); + return associate; + } - // We create a new challenge for the authenticator so it can be verified later - const mfaChallengeToken = generateRandomToken(); - // associate.id refer to the authenticator id - await this.db.createMfaChallenge({ - userId, - authenticatorId: associate.id, - token: mfaChallengeToken, - scope: 'associate', - }); + /** + * @description Associate a new authenticator, this method is called when the user is enforced to + * associate an authenticator before the first login. + * @param {string} userId - User id to link the new authenticator. + * @param {string} serviceName - Service name of the authenticator service. + * @param {any} params - Params for the the authenticator service. + * @param {ConnectionInformations} infos - User connection informations. + */ + public async associateByMfaToken( + mfaToken: string, + serviceName: string, + params: any, + infos: ConnectionInformations + ): Promise { + if (!this.authenticators[serviceName]) { + throw new Error(`No authenticator with the name ${serviceName} was registered.`); + } + if (!mfaToken) { + throw new Error('Mfa token invalid'); + } + const mfaChallenge = await this.db.findMfaChallengeByToken(mfaToken); + if ( + !mfaChallenge || + !this.isMfaChallengeValid(mfaChallenge) || + mfaChallenge.scope !== 'associate' + ) { + throw new Error('Mfa token invalid'); + } - return { - ...associate, - mfaToken: mfaChallengeToken, - }; + const associate = await this.authenticators[serviceName].associate(mfaChallenge, params, infos); + return associate; } /** @@ -121,8 +140,7 @@ export class AccountsMFA { throw new Error('Mfa token invalid'); } const mfaChallenge = await this.db.findMfaChallengeByToken(mfaToken); - // TODO need to check that the challenge is not expired - if (!mfaChallenge || mfaChallenge.deactivated) { + if (!mfaChallenge || !this.isMfaChallengeValid(mfaChallenge)) { throw new Error('Mfa token invalid'); } const authenticators = await this.db.findUserAuthenticators(mfaChallenge.userId); @@ -138,6 +156,7 @@ export class AccountsMFA { } public isMfaChallengeValid(mfaChallenge: MfaChallenge): boolean { + // TODO need to check that the challenge is not expired if (mfaChallenge.deactivated) { return false; } diff --git a/packages/server/src/accounts-server.ts b/packages/server/src/accounts-server.ts index 0df9317cb..0fe469f72 100644 --- a/packages/server/src/accounts-server.ts +++ b/packages/server/src/accounts-server.ts @@ -52,6 +52,7 @@ const defaultOptions = { userObjectSanitizer: (user: User) => user, createNewSessionTokenOnRefresh: false, useInternalUserObjectSanitizer: true, + enforceMfaForLogin: false, }; export class AccountsServer { @@ -283,6 +284,18 @@ Please set ambiguousErrorMessages to false to be able to use autologin.` return { mfaToken: mfaChallengeToken }; } + // We force the user to register a new device before first login + if (this.options.enforceMfaForLogin) { + // We create a new challenge for the authenticator so it can be verified later + const mfaChallengeToken = generateRandomToken(); + await this.db.createMfaChallenge({ + userId: user.id, + token: mfaChallengeToken, + scope: 'associate', + }); + return { mfaToken: mfaChallengeToken }; + } + // Let the user validate the login attempt await this.hooks.emitSerial(ServerHooks.ValidateLogin, hooksInfo); const loginResult = await this.loginWithUser(user, infos); diff --git a/packages/server/src/types/accounts-server-options.ts b/packages/server/src/types/accounts-server-options.ts index 9d2c9b956..4777a025d 100644 --- a/packages/server/src/types/accounts-server-options.ts +++ b/packages/server/src/types/accounts-server-options.ts @@ -45,4 +45,9 @@ export interface AccountsServerOptions { * the original User object as-is. */ useInternalUserObjectSanitizer?: boolean; + /** + * If set to true, the user will be asked to register a new MFA authenticator the first time + * he tries to login. + */ + enforceMfaForLogin?: boolean; } diff --git a/packages/types/src/types/authenticator/authenticator-service.ts b/packages/types/src/types/authenticator/authenticator-service.ts index 3c343e336..1d568f8a2 100644 --- a/packages/types/src/types/authenticator/authenticator-service.ts +++ b/packages/types/src/types/authenticator/authenticator-service.ts @@ -7,7 +7,11 @@ export interface AuthenticatorService { server: any; serviceName: string; setStore(store: DatabaseInterface): void; - associate(userId: string, params: any, infos: ConnectionInformations): Promise; + associate( + userIdOrMfaChallenge: string | MfaChallenge, + params: any, + infos: ConnectionInformations + ): Promise; challenge?( mfaChallenge: MfaChallenge, authenticator: Authenticator, From c117b8980f2153d497be744f1280bb2db2470514 Mon Sep 17 00:00:00 2001 From: pradel Date: Mon, 4 May 2020 12:13:19 +0200 Subject: [PATCH 104/146] v0.26.0-alpha.3 --- examples/accounts-boost/package.json | 4 ++-- .../package.json | 12 +++++----- .../graphql-server-typescript/package.json | 14 +++++------ .../react-graphql-typescript/package.json | 10 ++++---- examples/react-rest-typescript/package.json | 8 +++---- examples/rest-express-typescript/package.json | 12 +++++----- lerna.json | 2 +- packages/apollo-link-accounts/package.json | 4 ++-- packages/authenticator-otp/package.json | 6 ++--- packages/boost/package.json | 10 ++++---- packages/client-password/package.json | 6 ++--- packages/client/package.json | 4 ++-- packages/database-manager/package.json | 4 ++-- packages/database-mongo/package.json | 6 ++--- packages/database-redis/package.json | 6 ++--- packages/database-tests/package.json | 4 ++-- packages/database-typeorm/package.json | 6 ++--- packages/e2e/package.json | 24 +++++++++---------- packages/error/package.json | 2 +- packages/express-session/package.json | 6 ++--- packages/graphql-api/package.json | 8 +++---- packages/graphql-client/package.json | 6 ++--- packages/oauth-instagram/package.json | 4 ++-- packages/oauth-twitter/package.json | 4 ++-- packages/oauth/package.json | 6 ++--- packages/password/package.json | 8 +++---- packages/rest-client/package.json | 6 ++--- packages/rest-express/package.json | 8 +++---- packages/server/package.json | 4 ++-- packages/two-factor/package.json | 4 ++-- packages/types/package.json | 2 +- 31 files changed, 105 insertions(+), 105 deletions(-) diff --git a/examples/accounts-boost/package.json b/examples/accounts-boost/package.json index 03b52408f..0971737b1 100644 --- a/examples/accounts-boost/package.json +++ b/examples/accounts-boost/package.json @@ -1,7 +1,7 @@ { "name": "@examples/accounts-boost", "private": true, - "version": "0.26.0-alpha.2", + "version": "0.26.0-alpha.3", "main": "lib/index.js", "license": "MIT", "scripts": { @@ -13,7 +13,7 @@ "test": "yarn build" }, "dependencies": { - "@accounts/boost": "^0.26.0-alpha.2", + "@accounts/boost": "^0.26.0-alpha.3", "apollo-link-context": "1.0.19", "apollo-link-http": "1.5.16", "apollo-server": "2.9.13", diff --git a/examples/graphql-server-typeorm-postgres/package.json b/examples/graphql-server-typeorm-postgres/package.json index 1211f0f29..72d0674fe 100755 --- a/examples/graphql-server-typeorm-postgres/package.json +++ b/examples/graphql-server-typeorm-postgres/package.json @@ -1,7 +1,7 @@ { "name": "@examples/graphql-typeorm-typescript", "private": true, - "version": "0.26.0-alpha.2", + "version": "0.26.0-alpha.3", "main": "lib/index.js", "license": "Unlicensed", "scripts": { @@ -13,10 +13,10 @@ "test": "yarn build" }, "dependencies": { - "@accounts/graphql-api": "^0.26.0-alpha.2", - "@accounts/password": "^0.26.0-alpha.2", - "@accounts/server": "^0.26.0-alpha.2", - "@accounts/typeorm": "^0.26.0-alpha.2", + "@accounts/graphql-api": "^0.26.0-alpha.3", + "@accounts/password": "^0.26.0-alpha.3", + "@accounts/server": "^0.26.0-alpha.3", + "@accounts/typeorm": "^0.26.0-alpha.3", "@graphql-modules/core": "0.7.13", "apollo-server": "2.9.13", "graphql": "14.5.8", @@ -25,7 +25,7 @@ "typeorm": "0.2.22" }, "devDependencies": { - "@accounts/types": "^0.26.0-alpha.2", + "@accounts/types": "^0.26.0-alpha.3", "@types/node": "13.7.7", "nodemon": "2.0.2", "ts-node": "8.6.2", diff --git a/examples/graphql-server-typescript/package.json b/examples/graphql-server-typescript/package.json index f174321ae..bcdfc217f 100644 --- a/examples/graphql-server-typescript/package.json +++ b/examples/graphql-server-typescript/package.json @@ -1,7 +1,7 @@ { "name": "@examples/graphql-server-typescript", "private": true, - "version": "0.26.0-alpha.2", + "version": "0.26.0-alpha.3", "main": "lib/index.js", "license": "MIT", "scripts": { @@ -10,12 +10,12 @@ "test": "yarn build" }, "dependencies": { - "@accounts/database-manager": "^0.26.0-alpha.2", - "@accounts/graphql-api": "^0.26.0-alpha.2", - "@accounts/mongo": "^0.26.0-alpha.2", - "@accounts/password": "^0.26.0-alpha.2", - "@accounts/rest-express": "^0.26.0-alpha.2", - "@accounts/server": "^0.26.0-alpha.2", + "@accounts/database-manager": "^0.26.0-alpha.3", + "@accounts/graphql-api": "^0.26.0-alpha.3", + "@accounts/mongo": "^0.26.0-alpha.3", + "@accounts/password": "^0.26.0-alpha.3", + "@accounts/rest-express": "^0.26.0-alpha.3", + "@accounts/server": "^0.26.0-alpha.3", "@graphql-modules/core": "0.7.13", "apollo-server": "2.9.13", "graphql": "14.5.8", diff --git a/examples/react-graphql-typescript/package.json b/examples/react-graphql-typescript/package.json index bbc1cc04b..f31ae3f5a 100644 --- a/examples/react-graphql-typescript/package.json +++ b/examples/react-graphql-typescript/package.json @@ -1,6 +1,6 @@ { "name": "@examples/react-graphql-typescript", - "version": "0.26.0-alpha.2", + "version": "0.26.0-alpha.3", "private": true, "scripts": { "start": "SKIP_PREFLIGHT_CHECK=true react-scripts start", @@ -24,10 +24,10 @@ ] }, "dependencies": { - "@accounts/apollo-link": "^0.26.0-alpha.2", - "@accounts/client": "^0.26.0-alpha.2", - "@accounts/client-password": "^0.26.0-alpha.2", - "@accounts/graphql-client": "^0.26.0-alpha.2", + "@accounts/apollo-link": "^0.26.0-alpha.3", + "@accounts/client": "^0.26.0-alpha.3", + "@accounts/client-password": "^0.26.0-alpha.3", + "@accounts/graphql-client": "^0.26.0-alpha.3", "@apollo/react-hooks": "3.1.5", "@material-ui/core": "4.9.11", "@material-ui/styles": "4.9.10", diff --git a/examples/react-rest-typescript/package.json b/examples/react-rest-typescript/package.json index b03a487c9..d7e0af11f 100644 --- a/examples/react-rest-typescript/package.json +++ b/examples/react-rest-typescript/package.json @@ -1,6 +1,6 @@ { "name": "@examples/react-rest-typescript", - "version": "0.26.0-alpha.2", + "version": "0.26.0-alpha.3", "private": true, "scripts": { "start": "SKIP_PREFLIGHT_CHECK=true react-scripts start", @@ -24,9 +24,9 @@ ] }, "dependencies": { - "@accounts/client": "^0.26.0-alpha.2", - "@accounts/client-password": "^0.26.0-alpha.2", - "@accounts/rest-client": "^0.26.0-alpha.2", + "@accounts/client": "^0.26.0-alpha.3", + "@accounts/client-password": "^0.26.0-alpha.3", + "@accounts/rest-client": "^0.26.0-alpha.3", "@material-ui/core": "4.9.11", "@material-ui/icons": "4.9.1", "@material-ui/lab": "4.0.0-alpha.50", diff --git a/examples/rest-express-typescript/package.json b/examples/rest-express-typescript/package.json index 9516df61a..5c5bd5cd2 100644 --- a/examples/rest-express-typescript/package.json +++ b/examples/rest-express-typescript/package.json @@ -1,7 +1,7 @@ { "name": "@examples/rest-express-typescript", "private": true, - "version": "0.26.0-alpha.2", + "version": "0.26.0-alpha.3", "main": "lib/index.js", "license": "MIT", "scripts": { @@ -10,11 +10,11 @@ "test": "yarn build" }, "dependencies": { - "@accounts/authenticator-otp": "^0.26.0-alpha.2", - "@accounts/mongo": "^0.26.0-alpha.2", - "@accounts/password": "^0.26.0-alpha.2", - "@accounts/rest-express": "^0.26.0-alpha.2", - "@accounts/server": "^0.26.0-alpha.2", + "@accounts/authenticator-otp": "^0.26.0-alpha.3", + "@accounts/mongo": "^0.26.0-alpha.3", + "@accounts/password": "^0.26.0-alpha.3", + "@accounts/rest-express": "^0.26.0-alpha.3", + "@accounts/server": "^0.26.0-alpha.3", "body-parser": "1.19.0", "cors": "2.8.5", "express": "4.17.1", diff --git a/lerna.json b/lerna.json index cc6012950..2264ab23a 100644 --- a/lerna.json +++ b/lerna.json @@ -2,5 +2,5 @@ "lerna": "2.11.0", "npmClient": "yarn", "useWorkspaces": true, - "version": "0.26.0-alpha.2" + "version": "0.26.0-alpha.3" } diff --git a/packages/apollo-link-accounts/package.json b/packages/apollo-link-accounts/package.json index 4f3d66a11..f5e83ad28 100644 --- a/packages/apollo-link-accounts/package.json +++ b/packages/apollo-link-accounts/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/apollo-link", - "version": "0.26.0-alpha.2", + "version": "0.26.0-alpha.3", "description": "Apollo link for account-js", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -20,7 +20,7 @@ }, "license": "MIT", "devDependencies": { - "@accounts/client": "^0.26.0-alpha.2", + "@accounts/client": "^0.26.0-alpha.3", "apollo-link": "1.2.13", "rimraf": "3.0.0" }, diff --git a/packages/authenticator-otp/package.json b/packages/authenticator-otp/package.json index 55594f4f1..56bab6895 100644 --- a/packages/authenticator-otp/package.json +++ b/packages/authenticator-otp/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/authenticator-otp", - "version": "0.26.0-alpha.2", + "version": "0.26.0-alpha.3", "description": "@accounts/authenticator-otp", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -29,14 +29,14 @@ "author": "Leo Pradel", "license": "MIT", "devDependencies": { - "@accounts/server": "^0.26.0-alpha.2", + "@accounts/server": "^0.26.0-alpha.3", "@types/jest": "24.0.23", "@types/node": "12.7.4", "jest": "24.9.0", "rimraf": "3.0.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.2", + "@accounts/types": "^0.26.0-alpha.3", "otplib": "11.0.1", "tslib": "1.10.0" }, diff --git a/packages/boost/package.json b/packages/boost/package.json index 5b9e2d686..5afe5a924 100644 --- a/packages/boost/package.json +++ b/packages/boost/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/boost", - "version": "0.26.0-alpha.2", + "version": "0.26.0-alpha.3", "description": "Ready to use GraphQL accounts server", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -23,10 +23,10 @@ "rimraf": "3.0.0" }, "dependencies": { - "@accounts/database-manager": "^0.26.0-alpha.2", - "@accounts/graphql-api": "^0.26.0-alpha.2", - "@accounts/server": "^0.26.0-alpha.2", - "@accounts/types": "^0.26.0-alpha.2", + "@accounts/database-manager": "^0.26.0-alpha.3", + "@accounts/graphql-api": "^0.26.0-alpha.3", + "@accounts/server": "^0.26.0-alpha.3", + "@accounts/types": "^0.26.0-alpha.3", "@graphql-modules/core": "0.7.14", "apollo-server": "^2.9.13", "graphql": "^14.5.4", diff --git a/packages/client-password/package.json b/packages/client-password/package.json index f11449036..3b237e61d 100644 --- a/packages/client-password/package.json +++ b/packages/client-password/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/client-password", - "version": "0.26.0-alpha.2", + "version": "0.26.0-alpha.3", "description": "@accounts/client-password", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -35,8 +35,8 @@ "rimraf": "3.0.0" }, "dependencies": { - "@accounts/client": "^0.26.0-alpha.2", - "@accounts/types": "^0.26.0-alpha.2", + "@accounts/client": "^0.26.0-alpha.3", + "@accounts/types": "^0.26.0-alpha.3", "tslib": "1.10.0" } } diff --git a/packages/client/package.json b/packages/client/package.json index 452be26d6..df32d97d4 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/client", - "version": "0.26.0-alpha.2", + "version": "0.26.0-alpha.3", "description": "Fullstack authentication and accounts-management", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -53,7 +53,7 @@ "rimraf": "3.0.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.2", + "@accounts/types": "^0.26.0-alpha.3", "jwt-decode": "2.2.0", "tslib": "1.10.0" } diff --git a/packages/database-manager/package.json b/packages/database-manager/package.json index 205fe468a..d02b06fea 100644 --- a/packages/database-manager/package.json +++ b/packages/database-manager/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/database-manager", - "version": "0.26.0-alpha.2", + "version": "0.26.0-alpha.3", "description": "Accounts Database Manager, allow the use of separate databases for session and user", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -41,7 +41,7 @@ "rimraf": "3.0.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.2", + "@accounts/types": "^0.26.0-alpha.3", "tslib": "1.10.0" } } diff --git a/packages/database-mongo/package.json b/packages/database-mongo/package.json index 579bebe78..3ecde0a76 100644 --- a/packages/database-mongo/package.json +++ b/packages/database-mongo/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/mongo", - "version": "0.26.0-alpha.2", + "version": "0.26.0-alpha.3", "description": "MongoDB adaptor for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -29,7 +29,7 @@ "author": "Leo Pradel", "license": "MIT", "devDependencies": { - "@accounts/database-tests": "^0.26.0-alpha.2", + "@accounts/database-tests": "^0.26.0-alpha.3", "@types/jest": "25.1.4", "@types/lodash": "4.14.149", "@types/mongodb": "3.5.4", @@ -37,7 +37,7 @@ "jest": "25.1.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.2", + "@accounts/types": "^0.26.0-alpha.3", "lodash": "^4.17.15", "mongodb": "^3.4.1", "tslib": "1.10.0" diff --git a/packages/database-redis/package.json b/packages/database-redis/package.json index 0f6d67bb7..7ed35a1d2 100644 --- a/packages/database-redis/package.json +++ b/packages/database-redis/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/redis", - "version": "0.26.0-alpha.2", + "version": "0.26.0-alpha.3", "description": "Redis adaptor for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -32,7 +32,7 @@ "author": "Leo Pradel", "license": "MIT", "devDependencies": { - "@accounts/database-tests": "^0.26.0-alpha.2", + "@accounts/database-tests": "^0.26.0-alpha.3", "@types/ioredis": "4.14.9", "@types/jest": "25.1.4", "@types/lodash": "4.14.149", @@ -41,7 +41,7 @@ "jest": "25.1.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.2", + "@accounts/types": "^0.26.0-alpha.3", "ioredis": "^4.14.1", "lodash": "^4.17.15", "shortid": "^2.2.15", diff --git a/packages/database-tests/package.json b/packages/database-tests/package.json index 6990968b9..265c6761f 100644 --- a/packages/database-tests/package.json +++ b/packages/database-tests/package.json @@ -1,7 +1,7 @@ { "name": "@accounts/database-tests", "private": true, - "version": "0.26.0-alpha.2", + "version": "0.26.0-alpha.3", "main": "lib/index.js", "typings": "lib/index.d.ts", "scripts": { @@ -23,7 +23,7 @@ "jest": "25.1.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.2", + "@accounts/types": "^0.26.0-alpha.3", "tslib": "1.10.0" } } diff --git a/packages/database-typeorm/package.json b/packages/database-typeorm/package.json index ca1196782..47aece1ef 100644 --- a/packages/database-typeorm/package.json +++ b/packages/database-typeorm/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/typeorm", - "version": "0.26.0-alpha.2", + "version": "0.26.0-alpha.3", "description": "TypeORM adaptor for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -26,14 +26,14 @@ "author": "Birkir Gudjonsson ", "license": "MIT", "devDependencies": { - "@accounts/database-tests": "^0.26.0-alpha.2", + "@accounts/database-tests": "^0.26.0-alpha.3", "@types/jest": "25.1.4", "@types/node": "13.9.8", "jest": "25.1.0", "pg": "7.15.1" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.2", + "@accounts/types": "^0.26.0-alpha.3", "lodash": "^4.17.15", "reflect-metadata": "^0.1.13", "tslib": "1.10.0", diff --git a/packages/e2e/package.json b/packages/e2e/package.json index fe0b0b11c..36e551c28 100644 --- a/packages/e2e/package.json +++ b/packages/e2e/package.json @@ -1,7 +1,7 @@ { "name": "@accounts/e2e", "private": true, - "version": "0.26.0-alpha.2", + "version": "0.26.0-alpha.3", "main": "lib/index.js", "typings": "lib/index.d.ts", "scripts": { @@ -32,17 +32,17 @@ "jest-localstorage-mock": "2.4.0" }, "dependencies": { - "@accounts/client": "^0.26.0-alpha.2", - "@accounts/client-password": "^0.26.0-alpha.2", - "@accounts/graphql-api": "^0.26.0-alpha.2", - "@accounts/graphql-client": "^0.26.0-alpha.2", - "@accounts/mongo": "^0.26.0-alpha.2", - "@accounts/password": "^0.26.0-alpha.2", - "@accounts/rest-client": "^0.26.0-alpha.2", - "@accounts/rest-express": "^0.26.0-alpha.2", - "@accounts/server": "^0.26.0-alpha.2", - "@accounts/typeorm": "^0.26.0-alpha.2", - "@accounts/types": "^0.26.0-alpha.2", + "@accounts/client": "^0.26.0-alpha.3", + "@accounts/client-password": "^0.26.0-alpha.3", + "@accounts/graphql-api": "^0.26.0-alpha.3", + "@accounts/graphql-client": "^0.26.0-alpha.3", + "@accounts/mongo": "^0.26.0-alpha.3", + "@accounts/password": "^0.26.0-alpha.3", + "@accounts/rest-client": "^0.26.0-alpha.3", + "@accounts/rest-express": "^0.26.0-alpha.3", + "@accounts/server": "^0.26.0-alpha.3", + "@accounts/typeorm": "^0.26.0-alpha.3", + "@accounts/types": "^0.26.0-alpha.3", "@graphql-modules/core": "0.7.14", "apollo-boost": "0.4.7", "apollo-server": "2.9.15", diff --git a/packages/error/package.json b/packages/error/package.json index d4ee70cf4..2355c89d0 100644 --- a/packages/error/package.json +++ b/packages/error/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/error", - "version": "0.26.0-alpha.2", + "version": "0.26.0-alpha.3", "description": "Accounts-js Error", "main": "lib/index.js", "typings": "lib/index.d.ts", diff --git a/packages/express-session/package.json b/packages/express-session/package.json index 8591f33f3..c7bfd50dd 100644 --- a/packages/express-session/package.json +++ b/packages/express-session/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/express-session", - "version": "0.26.0-alpha.2", + "version": "0.26.0-alpha.3", "description": "", "main": "lib/index", "typings": "lib/index", @@ -34,7 +34,7 @@ "author": "Kamil Kisiela", "license": "MIT", "devDependencies": { - "@accounts/server": "^0.26.0-alpha.2", + "@accounts/server": "^0.26.0-alpha.3", "@types/express": "4.17.4", "@types/express-session": "1.17.0", "@types/jest": "25.1.4", @@ -50,7 +50,7 @@ "express-session": "^1.15.6" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.2", + "@accounts/types": "^0.26.0-alpha.3", "lodash": "^4.17.15", "request-ip": "^2.1.3", "tslib": "1.10.0" diff --git a/packages/graphql-api/package.json b/packages/graphql-api/package.json index a72fece23..15e08f043 100644 --- a/packages/graphql-api/package.json +++ b/packages/graphql-api/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/graphql-api", - "version": "0.26.0-alpha.2", + "version": "0.26.0-alpha.3", "description": "Server side GraphQL transport for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -28,9 +28,9 @@ }, "homepage": "https://github.com/js-accounts/graphql-api", "devDependencies": { - "@accounts/password": "^0.26.0-alpha.2", - "@accounts/server": "^0.26.0-alpha.2", - "@accounts/types": "^0.26.0-alpha.2", + "@accounts/password": "^0.26.0-alpha.3", + "@accounts/server": "^0.26.0-alpha.3", + "@accounts/types": "^0.26.0-alpha.3", "@gql2ts/from-schema": "1.10.1", "@gql2ts/types": "1.9.0", "@graphql-codegen/add": "1.8.3", diff --git a/packages/graphql-client/package.json b/packages/graphql-client/package.json index 97722786e..f25101fd7 100644 --- a/packages/graphql-client/package.json +++ b/packages/graphql-client/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/graphql-client", - "version": "0.26.0-alpha.2", + "version": "0.26.0-alpha.3", "description": "GraphQL client transport for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -30,8 +30,8 @@ "lodash": "4.17.15" }, "dependencies": { - "@accounts/client": "^0.26.0-alpha.2", - "@accounts/types": "^0.26.0-alpha.2", + "@accounts/client": "^0.26.0-alpha.3", + "@accounts/types": "^0.26.0-alpha.3", "graphql-tag": "^2.10.0", "tslib": "1.10.0" }, diff --git a/packages/oauth-instagram/package.json b/packages/oauth-instagram/package.json index c1c1be66c..7a0de0cca 100644 --- a/packages/oauth-instagram/package.json +++ b/packages/oauth-instagram/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/oauth-instagram", - "version": "0.26.0-alpha.2", + "version": "0.26.0-alpha.3", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -18,7 +18,7 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/oauth": "^0.26.0-alpha.2", + "@accounts/oauth": "^0.26.0-alpha.3", "request": "^2.88.0", "request-promise": "^4.2.5", "tslib": "1.10.0" diff --git a/packages/oauth-twitter/package.json b/packages/oauth-twitter/package.json index fd210423a..6964b1bf2 100644 --- a/packages/oauth-twitter/package.json +++ b/packages/oauth-twitter/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/oauth-twitter", - "version": "0.26.0-alpha.2", + "version": "0.26.0-alpha.3", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -18,7 +18,7 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/oauth": "^0.26.0-alpha.2", + "@accounts/oauth": "^0.26.0-alpha.3", "oauth": "^0.9.15", "tslib": "1.10.0" }, diff --git a/packages/oauth/package.json b/packages/oauth/package.json index 0ad9e09f2..3bb388bb0 100644 --- a/packages/oauth/package.json +++ b/packages/oauth/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/oauth", - "version": "0.26.0-alpha.2", + "version": "0.26.0-alpha.3", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -18,12 +18,12 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.2", + "@accounts/types": "^0.26.0-alpha.3", "request-promise": "^4.2.5", "tslib": "1.10.0" }, "devDependencies": { - "@accounts/server": "^0.26.0-alpha.2", + "@accounts/server": "^0.26.0-alpha.3", "@types/jest": "25.1.4", "@types/node": "13.9.8", "jest": "25.1.0" diff --git a/packages/password/package.json b/packages/password/package.json index d00d1692f..3370e5042 100644 --- a/packages/password/package.json +++ b/packages/password/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/password", - "version": "0.26.0-alpha.2", + "version": "0.26.0-alpha.3", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -18,14 +18,14 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/two-factor": "^0.26.0-alpha.2", + "@accounts/two-factor": "^0.26.0-alpha.3", "bcryptjs": "^2.4.3", "lodash": "^4.17.15", "tslib": "1.10.0" }, "devDependencies": { - "@accounts/server": "^0.26.0-alpha.2", - "@accounts/types": "^0.26.0-alpha.2", + "@accounts/server": "^0.26.0-alpha.3", + "@accounts/types": "^0.26.0-alpha.3", "@types/bcryptjs": "2.4.2", "@types/jest": "25.1.4", "@types/lodash": "4.14.149", diff --git a/packages/rest-client/package.json b/packages/rest-client/package.json index fd40472dd..25f3103f4 100644 --- a/packages/rest-client/package.json +++ b/packages/rest-client/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/rest-client", - "version": "0.26.0-alpha.2", + "version": "0.26.0-alpha.3", "description": "REST client for accounts", "main": "lib/index", "typings": "lib/index", @@ -38,7 +38,7 @@ "author": "Tim Mikeladze", "license": "MIT", "devDependencies": { - "@accounts/client": "^0.26.0-alpha.2", + "@accounts/client": "^0.26.0-alpha.3", "@types/jest": "25.1.4", "@types/lodash": "4.14.149", "@types/node": "13.9.8", @@ -49,7 +49,7 @@ "@accounts/client": "^0.19.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.2", + "@accounts/types": "^0.26.0-alpha.3", "lodash": "^4.17.15", "tslib": "1.10.0" } diff --git a/packages/rest-express/package.json b/packages/rest-express/package.json index eb71a05c5..3b25f8193 100644 --- a/packages/rest-express/package.json +++ b/packages/rest-express/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/rest-express", - "version": "0.26.0-alpha.2", + "version": "0.26.0-alpha.3", "description": "Server side REST express middleware for accounts", "main": "lib/index", "typings": "lib/index", @@ -35,8 +35,8 @@ "author": "Tim Mikeladze", "license": "MIT", "devDependencies": { - "@accounts/password": "^0.26.0-alpha.2", - "@accounts/server": "^0.26.0-alpha.2", + "@accounts/password": "^0.26.0-alpha.3", + "@accounts/server": "^0.26.0-alpha.3", "@types/express": "4.17.4", "@types/jest": "25.1.4", "@types/lodash": "4.14.149", @@ -48,7 +48,7 @@ "@accounts/server": "^0.19.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.2", + "@accounts/types": "^0.26.0-alpha.3", "express": "^4.17.0", "lodash": "^4.17.15", "request-ip": "^2.1.3", diff --git a/packages/server/package.json b/packages/server/package.json index 51203212e..c27a2dde9 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/server", - "version": "0.26.0-alpha.2", + "version": "0.26.0-alpha.3", "description": "Fullstack authentication and accounts-management", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -40,7 +40,7 @@ "author": "Tim Mikeladze", "license": "MIT", "dependencies": { - "@accounts/types": "^0.26.0-alpha.2", + "@accounts/types": "^0.26.0-alpha.3", "@types/jsonwebtoken": "8.3.5", "emittery": "0.5.1", "jsonwebtoken": "8.5.1", diff --git a/packages/two-factor/package.json b/packages/two-factor/package.json index c0bed5bc6..f7736b352 100644 --- a/packages/two-factor/package.json +++ b/packages/two-factor/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/two-factor", - "version": "0.26.0-alpha.2", + "version": "0.26.0-alpha.3", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -22,7 +22,7 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.2", + "@accounts/types": "^0.26.0-alpha.3", "@types/lodash": "^4.14.138", "@types/speakeasy": "2.0.2", "lodash": "^4.17.15", diff --git a/packages/types/package.json b/packages/types/package.json index bc89e71c6..b53d210a0 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/types", - "version": "0.26.0-alpha.2", + "version": "0.26.0-alpha.3", "description": "Accounts-js Types", "main": "lib/index.js", "typings": "lib/index.d.ts", From c5ece8964debef1fa4bc1692d2d887692c409266 Mon Sep 17 00:00:00 2001 From: pradel Date: Mon, 4 May 2020 15:31:51 +0200 Subject: [PATCH 105/146] fix lint --- packages/database-typeorm/src/typeorm.ts | 16 ++++++++++++++++ packages/graphql-client/src/graphql-client.ts | 2 ++ packages/server/src/accounts-mfa.ts | 1 - 3 files changed, 18 insertions(+), 1 deletion(-) diff --git a/packages/database-typeorm/src/typeorm.ts b/packages/database-typeorm/src/typeorm.ts index f6e1ce19e..a04a17f9f 100644 --- a/packages/database-typeorm/src/typeorm.ts +++ b/packages/database-typeorm/src/typeorm.ts @@ -445,19 +445,27 @@ export class AccountsTypeorm implements DatabaseInterface { * MFA authenticators related operations */ + // eslint-disable-next-line @typescript-eslint/no-unused-vars public async createAuthenticator(newAuthenticator: CreateAuthenticator): Promise { + // TODO throw new Error('Not implemented yet'); } + // eslint-disable-next-line @typescript-eslint/no-unused-vars public async findAuthenticatorById(authenticatorId: string): Promise { + // TODO throw new Error('Not implemented yet'); } + // eslint-disable-next-line @typescript-eslint/no-unused-vars public async findUserAuthenticators(userId: string): Promise { + // TODO throw new Error('Not implemented yet'); } + // eslint-disable-next-line @typescript-eslint/no-unused-vars public async activateAuthenticator(authenticatorId: string): Promise { + // TODO throw new Error('Not implemented yet'); } @@ -465,19 +473,27 @@ export class AccountsTypeorm implements DatabaseInterface { * MFA challenges related operations */ + // eslint-disable-next-line @typescript-eslint/no-unused-vars public async createMfaChallenge(newMfaChallenge: CreateMfaChallenge): Promise { + // TODO throw new Error('Not implemented yet'); } + // eslint-disable-next-line @typescript-eslint/no-unused-vars public async findMfaChallengeByToken(token: string): Promise { + // TODO throw new Error('Not implemented yet'); } + // eslint-disable-next-line @typescript-eslint/no-unused-vars public async deactivateMfaChallenge(mfaChallengeId: string): Promise { + // TODO throw new Error('Not implemented yet'); } + // eslint-disable-next-line @typescript-eslint/no-unused-vars public async updateMfaChallenge(mfaChallengeId: string): Promise { + // TODO throw new Error('Not implemented yet'); } } diff --git a/packages/graphql-client/src/graphql-client.ts b/packages/graphql-client/src/graphql-client.ts index 7b5104951..3e64312d0 100644 --- a/packages/graphql-client/src/graphql-client.ts +++ b/packages/graphql-client/src/graphql-client.ts @@ -198,7 +198,9 @@ export default class GraphQLClient implements TransportInterface { /** * @inheritDoc */ + // eslint-disable-next-line @typescript-eslint/no-unused-vars public async mfaAssociate(type: string): Promise { + // TODO throw new Error('Not implemented yet'); } diff --git a/packages/server/src/accounts-mfa.ts b/packages/server/src/accounts-mfa.ts index 85fd65432..e129cef72 100644 --- a/packages/server/src/accounts-mfa.ts +++ b/packages/server/src/accounts-mfa.ts @@ -5,7 +5,6 @@ import { ConnectionInformations, MfaChallenge, } from '@accounts/types'; -import { generateRandomToken } from './utils/tokens'; export class AccountsMFA { private db: DatabaseInterface; From 41f7ce2ce9c4e0724104e7a08fdfe551727d610b Mon Sep 17 00:00:00 2001 From: pradel Date: Mon, 4 May 2020 15:46:12 +0200 Subject: [PATCH 106/146] fix database-manager tests --- .../__tests__/database-manager.ts | 68 +++++++++++++++++++ 1 file changed, 68 insertions(+) diff --git a/packages/database-manager/__tests__/database-manager.ts b/packages/database-manager/__tests__/database-manager.ts index eda226589..ac85a130f 100644 --- a/packages/database-manager/__tests__/database-manager.ts +++ b/packages/database-manager/__tests__/database-manager.ts @@ -111,6 +111,38 @@ export default class Database { public setUserDeactivated() { return this.name; } + + public findAuthenticatorById() { + return this.name; + } + + public findUserAuthenticators() { + return this.name; + } + + public createAuthenticator() { + return this.name; + } + + public activateAuthenticator() { + return this.name; + } + + public createMfaChallenge() { + return this.name; + } + + public findMfaChallengeByToken() { + return this.name; + } + + public deactivateMfaChallenge() { + return this.name; + } + + public updateMfaChallenge() { + return this.name; + } } const databaseManager = new DatabaseManager({ @@ -253,4 +285,40 @@ describe('DatabaseManager', () => { it('removeAllResetPasswordTokens should be called on userStorage', () => { expect(databaseManager.removeAllResetPasswordTokens('userId')).toBe('userStorage'); }); + + it('findAuthenticatorById should be called on userStorage', () => { + expect(databaseManager.findAuthenticatorById('authenticatorId')).toBe('userStorage'); + }); + + it('findUserAuthenticators should be called on userStorage', () => { + expect(databaseManager.findUserAuthenticators('userId')).toBe('userStorage'); + }); + + it('createAuthenticator should be called on userStorage', () => { + expect( + databaseManager.createAuthenticator({ userId: 'userId', type: 'type', active: true }) + ).toBe('userStorage'); + }); + + it('activateAuthenticator should be called on userStorage', () => { + expect(databaseManager.activateAuthenticator('userId')).toBe('userStorage'); + }); + + it('createMfaChallenge should be called on userStorage', () => { + expect(databaseManager.createMfaChallenge({ userId: 'userId', token: 'token' })).toBe( + 'userStorage' + ); + }); + + it('findMfaChallengeByToken should be called on userStorage', () => { + expect(databaseManager.findMfaChallengeByToken('userId')).toBe('userStorage'); + }); + + it('deactivateMfaChallenge should be called on userStorage', () => { + expect(databaseManager.deactivateMfaChallenge('userId')).toBe('userStorage'); + }); + + it('updateMfaChallenge should be called on userStorage', () => { + expect(databaseManager.updateMfaChallenge('userId', {})).toBe('userStorage'); + }); }); From f686afc59ec78dce27ee7a24672d9bdff4c938ae Mon Sep 17 00:00:00 2001 From: pradel Date: Thu, 7 May 2020 10:57:54 +0200 Subject: [PATCH 107/146] Fix graphql ChallengeResult --- .../graphql-api/src/modules/accounts-mfa/schema/types.ts | 7 ++++++- packages/server/src/accounts-mfa.ts | 5 ++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/packages/graphql-api/src/modules/accounts-mfa/schema/types.ts b/packages/graphql-api/src/modules/accounts-mfa/schema/types.ts index 26687dc5a..058e519a0 100644 --- a/packages/graphql-api/src/modules/accounts-mfa/schema/types.ts +++ b/packages/graphql-api/src/modules/accounts-mfa/schema/types.ts @@ -8,5 +8,10 @@ export default gql` activatedAt: String } - union ChallengeResult = Boolean + type DefaultChallengeResult { + mfaToken: String + authenticatorId: String + } + + union ChallengeResult = DefaultChallengeResult `; diff --git a/packages/server/src/accounts-mfa.ts b/packages/server/src/accounts-mfa.ts index e129cef72..4c6cd4cf9 100644 --- a/packages/server/src/accounts-mfa.ts +++ b/packages/server/src/accounts-mfa.ts @@ -54,7 +54,10 @@ export class AccountsMFA { await this.db.updateMfaChallenge(mfaChallenge.id, { authenticatorId: authenticator.id, }); - return null; + return { + mfaToken: mfaChallenge.token, + authenticatorId: authenticator.id, + }; } return authenticatorService.challenge(mfaChallenge, authenticator, infos); } From 8c5becbdee398bf8fbf8d9efbf1f6392a0824b3a Mon Sep 17 00:00:00 2001 From: pradel Date: Thu, 7 May 2020 12:08:24 +0200 Subject: [PATCH 108/146] separate mfa token operations --- packages/client/src/accounts-client.ts | 8 ++- packages/client/src/transport-interface.ts | 4 +- packages/graphql-api/src/models.ts | 72 ++++++++++++++++--- .../modules/accounts-mfa/resolvers/query.ts | 12 ++-- .../modules/accounts-mfa/schema/mutation.ts | 7 ++ .../src/modules/accounts-mfa/schema/query.ts | 6 +- .../src/modules/accounts-mfa/schema/types.ts | 7 ++ packages/graphql-client/src/graphql-client.ts | 35 +++++++-- .../accounts-mfa/associate.mutation.ts | 13 ++++ .../associateByMfaToken.mutation.ts | 13 ++++ .../accounts-mfa/authenticators.query.ts | 4 +- .../authenticatorsByMfaToken.query.ts | 12 ++++ packages/rest-client/src/rest-client.ts | 20 ++++-- .../src/endpoints/mfa/associate.ts | 21 ++++++ .../src/endpoints/mfa/authenticators.ts | 26 ++++--- .../rest-express/src/express-middleware.ts | 8 ++- packages/server/src/accounts-mfa.ts | 4 +- 17 files changed, 228 insertions(+), 44 deletions(-) create mode 100644 packages/graphql-client/src/graphql/accounts-mfa/associate.mutation.ts create mode 100644 packages/graphql-client/src/graphql/accounts-mfa/associateByMfaToken.mutation.ts create mode 100644 packages/graphql-client/src/graphql/accounts-mfa/authenticatorsByMfaToken.query.ts diff --git a/packages/client/src/accounts-client.ts b/packages/client/src/accounts-client.ts index dc27e5ca1..e49eca1a7 100644 --- a/packages/client/src/accounts-client.ts +++ b/packages/client/src/accounts-client.ts @@ -208,8 +208,12 @@ export class AccountsClient { return this.transport.mfaAssociate(type); } - public authenticators(mfaToken?: string) { - return this.transport.authenticators(mfaToken); + public authenticators() { + return this.transport.authenticators(); + } + + public authenticatorsByMfaToken(mfaToken: string) { + return this.transport.authenticatorsByMfaToken(mfaToken); } private getTokenKey(tokenName: TokenKey): string { diff --git a/packages/client/src/transport-interface.ts b/packages/client/src/transport-interface.ts index b1e031042..cd9001e58 100644 --- a/packages/client/src/transport-interface.ts +++ b/packages/client/src/transport-interface.ts @@ -47,7 +47,9 @@ export interface TransportInterface extends TransportMfaInterface { * MFA related operations */ interface TransportMfaInterface { + authenticators(): Promise; + authenticatorsByMfaToken(mfaToken?: string): Promise; mfaAssociate(type: string): Promise; - authenticators(mfaToken?: string): Promise; + mfaAssociateByMfaToken(mfaToken: string, type: string): Promise; mfaChallenge(mfaToken: string, authenticatorId: string): Promise; } diff --git a/packages/graphql-api/src/models.ts b/packages/graphql-api/src/models.ts index 944cc71db..6c6872e4c 100644 --- a/packages/graphql-api/src/models.ts +++ b/packages/graphql-api/src/models.ts @@ -13,6 +13,8 @@ export type Scalars = { }; +export type AssociationResult = OtpAssociationResult; + export type AuthenticateParamsInput = { access_token?: Maybe, access_token_secret?: Maybe, @@ -32,7 +34,7 @@ export type Authenticator = { activatedAt?: Maybe, }; -export type ChallengeResult = Scalars['Boolean']; +export type ChallengeResult = DefaultChallengeResult; export type CreateUserInput = { username?: Maybe, @@ -46,6 +48,12 @@ export type CreateUserResult = { loginResult?: Maybe, }; +export type DefaultChallengeResult = { + __typename?: 'DefaultChallengeResult', + mfaToken?: Maybe, + authenticatorId?: Maybe, +}; + export type EmailRecord = { __typename?: 'EmailRecord', address?: Maybe, @@ -74,6 +82,8 @@ export type MultiFactorResult = { export type Mutation = { __typename?: 'Mutation', challenge?: Maybe, + associate?: Maybe, + associateByMfaToken?: Maybe, createUser?: Maybe, verifyEmail?: Maybe, resetPassword?: Maybe, @@ -97,6 +107,17 @@ export type MutationChallengeArgs = { }; +export type MutationAssociateArgs = { + type: Scalars['String'] +}; + + +export type MutationAssociateByMfaTokenArgs = { + mfaToken: Scalars['String'], + type: Scalars['String'] +}; + + export type MutationCreateUserArgs = { user: CreateUserInput }; @@ -168,16 +189,23 @@ export type MutationVerifyAuthenticationArgs = { params: AuthenticateParamsInput }; +export type OtpAssociationResult = { + __typename?: 'OTPAssociationResult', + mfaToken?: Maybe, + authenticatorId?: Maybe, +}; + export type Query = { __typename?: 'Query', authenticators?: Maybe>>, + authenticatorsByMfaToken?: Maybe>>, twoFactorSecret?: Maybe, getUser?: Maybe, }; -export type QueryAuthenticatorsArgs = { - mfaToken?: Maybe +export type QueryAuthenticatorsByMfaTokenArgs = { + mfaToken: Scalars['String'] }; export type Tokens = { @@ -286,15 +314,18 @@ export type DirectiveResolverFn, - String: ResolverTypeWrapper, Authenticator: ResolverTypeWrapper, ID: ResolverTypeWrapper, + String: ResolverTypeWrapper, Boolean: ResolverTypeWrapper, TwoFactorSecretKey: ResolverTypeWrapper, User: ResolverTypeWrapper, EmailRecord: ResolverTypeWrapper, Mutation: ResolverTypeWrapper<{}>, - ChallengeResult: ResolversTypes['Boolean'], + ChallengeResult: ResolversTypes['DefaultChallengeResult'], + DefaultChallengeResult: ResolverTypeWrapper, + AssociationResult: ResolversTypes['OTPAssociationResult'], + OTPAssociationResult: ResolverTypeWrapper, CreateUserInput: CreateUserInput, CreateUserResult: ResolverTypeWrapper, LoginResult: ResolverTypeWrapper, @@ -310,15 +341,18 @@ export type ResolversTypes = { /** Mapping between all available schema types and the resolvers parents */ export type ResolversParentTypes = { Query: {}, - String: Scalars['String'], Authenticator: Authenticator, ID: Scalars['ID'], + String: Scalars['String'], Boolean: Scalars['Boolean'], TwoFactorSecretKey: TwoFactorSecretKey, User: User, EmailRecord: EmailRecord, Mutation: {}, - ChallengeResult: ResolversParentTypes['Boolean'], + ChallengeResult: ResolversParentTypes['DefaultChallengeResult'], + DefaultChallengeResult: DefaultChallengeResult, + AssociationResult: ResolversParentTypes['OTPAssociationResult'], + OTPAssociationResult: OtpAssociationResult, CreateUserInput: CreateUserInput, CreateUserResult: CreateUserResult, LoginResult: LoginResult, @@ -333,6 +367,10 @@ export type ResolversParentTypes = { export type AuthDirectiveResolver = DirectiveResolverFn; +export type AssociationResultResolvers = { + __resolveType: TypeResolveFn<'OTPAssociationResult', ParentType, ContextType> +}; + export type AuthenticationResultResolvers = { __resolveType: TypeResolveFn<'LoginResult' | 'MultiFactorResult', ParentType, ContextType> }; @@ -345,7 +383,7 @@ export type AuthenticatorResolvers = { - __resolveType: TypeResolveFn<'Boolean', ParentType, ContextType> + __resolveType: TypeResolveFn<'DefaultChallengeResult', ParentType, ContextType> }; export type CreateUserResultResolvers = { @@ -353,6 +391,11 @@ export type CreateUserResultResolvers, ParentType, ContextType>, }; +export type DefaultChallengeResultResolvers = { + mfaToken?: Resolver, ParentType, ContextType>, + authenticatorId?: Resolver, ParentType, ContextType>, +}; + export type EmailRecordResolvers = { address?: Resolver, ParentType, ContextType>, verified?: Resolver, ParentType, ContextType>, @@ -376,6 +419,8 @@ export type MultiFactorResultResolvers = { challenge?: Resolver, ParentType, ContextType, RequireFields>, + associate?: Resolver, ParentType, ContextType, RequireFields>, + associateByMfaToken?: Resolver, ParentType, ContextType, RequireFields>, createUser?: Resolver, ParentType, ContextType, RequireFields>, verifyEmail?: Resolver, ParentType, ContextType, RequireFields>, resetPassword?: Resolver, ParentType, ContextType, RequireFields>, @@ -392,8 +437,14 @@ export type MutationResolvers, ParentType, ContextType, RequireFields>, }; +export type OtpAssociationResultResolvers = { + mfaToken?: Resolver, ParentType, ContextType>, + authenticatorId?: Resolver, ParentType, ContextType>, +}; + export type QueryResolvers = { - authenticators?: Resolver>>, ParentType, ContextType, QueryAuthenticatorsArgs>, + authenticators?: Resolver>>, ParentType, ContextType>, + authenticatorsByMfaToken?: Resolver>>, ParentType, ContextType, RequireFields>, twoFactorSecret?: Resolver, ParentType, ContextType>, getUser?: Resolver, ParentType, ContextType>, }; @@ -421,15 +472,18 @@ export type UserResolvers = { + AssociationResult?: AssociationResultResolvers, AuthenticationResult?: AuthenticationResultResolvers, Authenticator?: AuthenticatorResolvers, ChallengeResult?: ChallengeResultResolvers, CreateUserResult?: CreateUserResultResolvers, + DefaultChallengeResult?: DefaultChallengeResultResolvers, EmailRecord?: EmailRecordResolvers, ImpersonateReturn?: ImpersonateReturnResolvers, LoginResult?: LoginResultResolvers, MultiFactorResult?: MultiFactorResultResolvers, Mutation?: MutationResolvers, + OTPAssociationResult?: OtpAssociationResultResolvers, Query?: QueryResolvers, Tokens?: TokensResolvers, TwoFactorSecretKey?: TwoFactorSecretKeyResolvers, diff --git a/packages/graphql-api/src/modules/accounts-mfa/resolvers/query.ts b/packages/graphql-api/src/modules/accounts-mfa/resolvers/query.ts index 2e2ab9a1b..d7fcbe29e 100644 --- a/packages/graphql-api/src/modules/accounts-mfa/resolvers/query.ts +++ b/packages/graphql-api/src/modules/accounts-mfa/resolvers/query.ts @@ -4,15 +4,15 @@ import { QueryResolvers } from '../../../models'; import { AccountsModuleContext } from '../../accounts'; export const Query: QueryResolvers> = { - authenticators: async (_, { mfaToken }, { user, injector }) => { + authenticators: async (_, __, { user, injector }) => { const userId = user?.id; - if (!mfaToken && !userId) { + if (!userId) { throw new Error('Unauthorized'); } - const userAuthenticators = mfaToken - ? await injector.get(AccountsServer).mfa.findUserAuthenticatorsByMfaToken(mfaToken) - : await injector.get(AccountsServer).mfa.findUserAuthenticators(userId!); - return userAuthenticators; + return injector.get(AccountsServer).mfa.findUserAuthenticators(userId); + }, + authenticatorsByMfaToken: async (_, { mfaToken }, { injector }) => { + return injector.get(AccountsServer).mfa.findUserAuthenticatorsByMfaToken(mfaToken); }, }; diff --git a/packages/graphql-api/src/modules/accounts-mfa/schema/mutation.ts b/packages/graphql-api/src/modules/accounts-mfa/schema/mutation.ts index f8fd09858..60e3dcbb2 100644 --- a/packages/graphql-api/src/modules/accounts-mfa/schema/mutation.ts +++ b/packages/graphql-api/src/modules/accounts-mfa/schema/mutation.ts @@ -3,6 +3,13 @@ import { AccountsMfaModuleConfig } from '..'; export default (config: AccountsMfaModuleConfig) => gql` ${config.extendTypeDefs ? 'extend' : ''} type ${config.rootMutationName || 'Mutation'} { + # Request a challenge for the MFA authentication. challenge(mfaToken: String!, authenticatorId: String!): ChallengeResult + + # Start the association of a new authenticator. + associate(type: String!): AssociationResult + + # Start the association of a new authenticator, this method is called when the user is enforced to associate an authenticator before the first login. + associateByMfaToken(mfaToken: String!, type: String!): AssociationResult } `; diff --git a/packages/graphql-api/src/modules/accounts-mfa/schema/query.ts b/packages/graphql-api/src/modules/accounts-mfa/schema/query.ts index 5977dfc31..1e24e0993 100644 --- a/packages/graphql-api/src/modules/accounts-mfa/schema/query.ts +++ b/packages/graphql-api/src/modules/accounts-mfa/schema/query.ts @@ -3,6 +3,10 @@ import { AccountsMfaModuleConfig } from '..'; export default (config: AccountsMfaModuleConfig) => gql` ${config.extendTypeDefs ? 'extend' : ''} type ${config.rootQueryName || 'Query'} { - authenticators(mfaToken: String): [Authenticator] + # Return the list of the active and inactive authenticators for this user. + authenticators: [Authenticator] + + # Return the list of the active authenticators for this user. + authenticatorsByMfaToken(mfaToken: String!): [Authenticator] } `; diff --git a/packages/graphql-api/src/modules/accounts-mfa/schema/types.ts b/packages/graphql-api/src/modules/accounts-mfa/schema/types.ts index 058e519a0..4b816d2f1 100644 --- a/packages/graphql-api/src/modules/accounts-mfa/schema/types.ts +++ b/packages/graphql-api/src/modules/accounts-mfa/schema/types.ts @@ -14,4 +14,11 @@ export default gql` } union ChallengeResult = DefaultChallengeResult + + type OTPAssociationResult { + mfaToken: String + authenticatorId: String + } + + union AssociationResult = OTPAssociationResult `; diff --git a/packages/graphql-client/src/graphql-client.ts b/packages/graphql-client/src/graphql-client.ts index 3e64312d0..5a613a566 100644 --- a/packages/graphql-client/src/graphql-client.ts +++ b/packages/graphql-client/src/graphql-client.ts @@ -26,7 +26,10 @@ import { twoFactorSetMutation } from './graphql/two-factor-set.mutation'; import { twoFactorUnsetMutation } from './graphql/two-factor-unset.mutation'; import { verifyEmailMutation } from './graphql/verify-email.mutation'; import { authenticatorsQuery } from './graphql/accounts-mfa/authenticators.query'; +import { authenticatorsByMfaTokenQuery } from './graphql/accounts-mfa/authenticatorsByMfaToken.query'; import { challengeMutation } from './graphql/accounts-mfa/challenge.mutation'; +import { associateMutation } from './graphql/accounts-mfa/associate.mutation'; +import { associateByMfaTokenMutation } from './graphql/accounts-mfa/associateByMfaToken.mutation'; import { GraphQLErrorList } from './GraphQLErrorList'; export interface AuthenticateParams { @@ -37,6 +40,7 @@ export interface OptionsType { graphQLClient: any; userFieldsFragment?: any; challengeFieldsFragment?: string; + associateFieldsFragment?: string; } export default class GraphQLClient implements TransportInterface { @@ -198,17 +202,38 @@ export default class GraphQLClient implements TransportInterface { /** * @inheritDoc */ - // eslint-disable-next-line @typescript-eslint/no-unused-vars public async mfaAssociate(type: string): Promise { - // TODO - throw new Error('Not implemented yet'); + return this.mutate(associateMutation(this.options.associateFieldsFragment), 'associate', { + type, + }); + } + + /** + * @inheritDoc + */ + public async mfaAssociateByMfaToken(mfaToken: string, type: string): Promise { + return this.mutate( + associateByMfaTokenMutation(this.options.associateFieldsFragment), + 'associateByMfaToken', + { + mfaToken, + type, + } + ); + } + + /** + * @inheritDoc + */ + public async authenticators(): Promise { + return this.query(authenticatorsQuery, 'authenticators'); } /** * @inheritDoc */ - public async authenticators(mfaToken?: string): Promise { - return this.query(authenticatorsQuery, 'authenticators', { mfaToken }); + public async authenticatorsByMfaToken(mfaToken?: string): Promise { + return this.query(authenticatorsByMfaTokenQuery, 'authenticatorsByMfaToken', { mfaToken }); } /** diff --git a/packages/graphql-client/src/graphql/accounts-mfa/associate.mutation.ts b/packages/graphql-client/src/graphql/accounts-mfa/associate.mutation.ts new file mode 100644 index 000000000..49545b009 --- /dev/null +++ b/packages/graphql-client/src/graphql/accounts-mfa/associate.mutation.ts @@ -0,0 +1,13 @@ +import gql from 'graphql-tag'; + +export const associateMutation = (associateFieldsFragment?: any) => gql` + mutation associate($type: String!) { + associate(type: $type) { + ... on OTPAssociationResult { + mfaToken + authenticatorId + } + ${associateFieldsFragment} + } + } +`; diff --git a/packages/graphql-client/src/graphql/accounts-mfa/associateByMfaToken.mutation.ts b/packages/graphql-client/src/graphql/accounts-mfa/associateByMfaToken.mutation.ts new file mode 100644 index 000000000..f71d5669f --- /dev/null +++ b/packages/graphql-client/src/graphql/accounts-mfa/associateByMfaToken.mutation.ts @@ -0,0 +1,13 @@ +import gql from 'graphql-tag'; + +export const associateByMfaTokenMutation = (associateFieldsFragment?: any) => gql` + mutation associateByMfaToken($mfaToken: String!, $type: String!) { + associateByMfaToken(mfaToken: $mfaToken, type: $type) { + ... on OTPAssociationResult { + mfaToken + authenticatorId + } + ${associateFieldsFragment} + } + } +`; diff --git a/packages/graphql-client/src/graphql/accounts-mfa/authenticators.query.ts b/packages/graphql-client/src/graphql/accounts-mfa/authenticators.query.ts index bd1cdc18d..8a6219909 100644 --- a/packages/graphql-client/src/graphql/accounts-mfa/authenticators.query.ts +++ b/packages/graphql-client/src/graphql/accounts-mfa/authenticators.query.ts @@ -1,8 +1,8 @@ import gql from 'graphql-tag'; export const authenticatorsQuery = gql` - query authenticators($mfaToken: String) { - authenticators(mfaToken: $mfaToken) { + query authenticators() { + authenticators() { id type active diff --git a/packages/graphql-client/src/graphql/accounts-mfa/authenticatorsByMfaToken.query.ts b/packages/graphql-client/src/graphql/accounts-mfa/authenticatorsByMfaToken.query.ts new file mode 100644 index 000000000..9edf77b61 --- /dev/null +++ b/packages/graphql-client/src/graphql/accounts-mfa/authenticatorsByMfaToken.query.ts @@ -0,0 +1,12 @@ +import gql from 'graphql-tag'; + +export const authenticatorsByMfaTokenQuery = gql` + query authenticatorsByMfaToken($mfaToken: String) { + authenticatorsByMfaToken(mfaToken: $mfaToken) { + id + type + active + activatedAt + } + } +`; diff --git a/packages/rest-client/src/rest-client.ts b/packages/rest-client/src/rest-client.ts index b8fcb063d..027007fbb 100644 --- a/packages/rest-client/src/rest-client.ts +++ b/packages/rest-client/src/rest-client.ts @@ -262,17 +262,29 @@ export class RestClient implements TransportInterface { return this.authFetch(`mfa/associate`, args, customHeaders); } - public async authenticators(mfaToken?: string, customHeaders?: object) { + public async mfaAssociateByMfaToken(mfaToken: string, type: string, customHeaders?: object) { + const args = { + method: 'POST', + body: JSON.stringify({ mfaToken, type }), + }; + return this.fetch(`mfa/associateByMfaToken`, args, customHeaders); + } + + public async authenticators(customHeaders?: object) { const args = { method: 'GET', }; let route = `mfa/authenticators`; - if (mfaToken) { - route = `${route}?mfaToken=${mfaToken}`; - } return this.authFetch(route, args, customHeaders); } + public async authenticatorsByMfaToken(mfaToken: string, customHeaders?: object) { + const args = { + method: 'GET', + }; + return this.fetch(`mfa/authenticators?mfaToken=${mfaToken}`, args, customHeaders); + } + private _loadHeadersObject(plainHeaders: object): { [key: string]: string } { if (isPlainObject(plainHeaders)) { const customHeaders = headers; diff --git a/packages/rest-express/src/endpoints/mfa/associate.ts b/packages/rest-express/src/endpoints/mfa/associate.ts index 2e6e809c0..f10caeff5 100644 --- a/packages/rest-express/src/endpoints/mfa/associate.ts +++ b/packages/rest-express/src/endpoints/mfa/associate.ts @@ -30,3 +30,24 @@ export const associate = (accountsServer: AccountsServer) => async ( sendError(res, err); } }; + +export const associateByMfaToken = (accountsServer: AccountsServer) => async ( + req: express.Request, + res: express.Response +) => { + try { + const userAgent = getUserAgent(req); + const ip = requestIp.getClientIp(req); + + const { mfaToken, type } = req.body; + const mfaAssociateResult = await accountsServer.mfa.associateByMfaToken( + mfaToken, + type, + req.body, + { userAgent, ip } + ); + res.json(mfaAssociateResult); + } catch (err) { + sendError(res, err); + } +}; diff --git a/packages/rest-express/src/endpoints/mfa/authenticators.ts b/packages/rest-express/src/endpoints/mfa/authenticators.ts index e92d4b696..5c1c9a4cf 100644 --- a/packages/rest-express/src/endpoints/mfa/authenticators.ts +++ b/packages/rest-express/src/endpoints/mfa/authenticators.ts @@ -2,27 +2,33 @@ import * as express from 'express'; import { AccountsServer } from '@accounts/server'; import { sendError } from '../../utils/send-error'; -/** - * If user is authenticated, this route will return all the authenticators of the user. - * If user is not authenticated, he needs to provide a valid mfa token in order to - * get a list of the authenticators that can be used to resolve the mfa challenge. - */ export const authenticators = (accountsServer: AccountsServer) => async ( req: express.Request, res: express.Response ) => { try { const userId = (req as any).userId; - const { mfaToken } = req.query; - if (!mfaToken && !userId) { + if (!userId) { res.status(401); res.json({ message: 'Unauthorized' }); return; } - const userAuthenticators = mfaToken - ? await accountsServer.mfa.findUserAuthenticatorsByMfaToken(mfaToken) - : await accountsServer.mfa.findUserAuthenticators(userId); + const userAuthenticators = await accountsServer.mfa.findUserAuthenticators(userId); + res.json(userAuthenticators); + } catch (err) { + sendError(res, err); + } +}; + +export const authenticatorsByMfaToken = (accountsServer: AccountsServer) => async ( + req: express.Request, + res: express.Response +) => { + try { + const { mfaToken } = req.query; + + const userAuthenticators = await accountsServer.mfa.findUserAuthenticatorsByMfaToken(mfaToken); res.json(userAuthenticators); } catch (err) { sendError(res, err); diff --git a/packages/rest-express/src/express-middleware.ts b/packages/rest-express/src/express-middleware.ts index 69f45d3c9..22e5532d7 100644 --- a/packages/rest-express/src/express-middleware.ts +++ b/packages/rest-express/src/express-middleware.ts @@ -12,8 +12,8 @@ import { serviceVerifyAuthentication } from './endpoints/verify-authentication'; import { registerPassword } from './endpoints/password/register'; import { twoFactorSecret, twoFactorSet, twoFactorUnset } from './endpoints/password/two-factor'; import { changePassword } from './endpoints/password/change-password'; -import { associate } from './endpoints/mfa/associate'; -import { authenticators } from './endpoints/mfa/authenticators'; +import { associate, associateByMfaToken } from './endpoints/mfa/associate'; +import { authenticators, authenticatorsByMfaToken } from './endpoints/mfa/authenticators'; import { challenge } from './endpoints/mfa/challenge'; import { addEmail } from './endpoints/password/add-email'; import { userLoader } from './user-loader'; @@ -52,12 +52,16 @@ const accountsExpress = ( router.post(`${path}/mfa/associate`, userLoader(accountsServer), associate(accountsServer)); + router.post(`${path}/mfa/associateByMfaToken`, associateByMfaToken(accountsServer)); + router.get( `${path}/mfa/authenticators`, userLoader(accountsServer), authenticators(accountsServer) ); + router.get(`${path}/mfa/authenticatorsByMfaToken`, authenticatorsByMfaToken(accountsServer)); + router.post(`${path}/mfa/challenge`, challenge(accountsServer)); const services = accountsServer.getServices(); diff --git a/packages/server/src/accounts-mfa.ts b/packages/server/src/accounts-mfa.ts index 4c6cd4cf9..fdf7e3aac 100644 --- a/packages/server/src/accounts-mfa.ts +++ b/packages/server/src/accounts-mfa.ts @@ -84,8 +84,8 @@ export class AccountsMFA { } /** - * @description Associate a new authenticator, this method is called when the user is enforced to - * associate an authenticator before the first login. + * @description Start the association of a new authenticator, this method is called when the user is + * enforced to associate an authenticator before the first login. * @param {string} userId - User id to link the new authenticator. * @param {string} serviceName - Service name of the authenticator service. * @param {any} params - Params for the the authenticator service. From df64531622ef97718abfe5ed5436873ddf58d164 Mon Sep 17 00:00:00 2001 From: pradel Date: Thu, 7 May 2020 12:09:58 +0200 Subject: [PATCH 109/146] v0.26.0-alpha.4 --- examples/accounts-boost/package.json | 4 ++-- .../package.json | 12 +++++----- .../graphql-server-typescript/package.json | 14 +++++------ .../react-graphql-typescript/package.json | 10 ++++---- examples/react-rest-typescript/package.json | 8 +++---- examples/rest-express-typescript/package.json | 12 +++++----- lerna.json | 2 +- packages/apollo-link-accounts/package.json | 4 ++-- packages/authenticator-otp/package.json | 6 ++--- packages/boost/package.json | 10 ++++---- packages/client-password/package.json | 6 ++--- packages/client/package.json | 4 ++-- packages/database-manager/package.json | 4 ++-- packages/database-mongo/package.json | 6 ++--- packages/database-redis/package.json | 6 ++--- packages/database-tests/package.json | 4 ++-- packages/database-typeorm/package.json | 6 ++--- packages/e2e/package.json | 24 +++++++++---------- packages/error/package.json | 2 +- packages/express-session/package.json | 6 ++--- packages/graphql-api/package.json | 8 +++---- packages/graphql-client/package.json | 6 ++--- packages/oauth-instagram/package.json | 4 ++-- packages/oauth-twitter/package.json | 4 ++-- packages/oauth/package.json | 6 ++--- packages/password/package.json | 8 +++---- packages/rest-client/package.json | 6 ++--- packages/rest-express/package.json | 8 +++---- packages/server/package.json | 4 ++-- packages/two-factor/package.json | 4 ++-- packages/types/package.json | 2 +- 31 files changed, 105 insertions(+), 105 deletions(-) diff --git a/examples/accounts-boost/package.json b/examples/accounts-boost/package.json index 0971737b1..f1518df7b 100644 --- a/examples/accounts-boost/package.json +++ b/examples/accounts-boost/package.json @@ -1,7 +1,7 @@ { "name": "@examples/accounts-boost", "private": true, - "version": "0.26.0-alpha.3", + "version": "0.26.0-alpha.4", "main": "lib/index.js", "license": "MIT", "scripts": { @@ -13,7 +13,7 @@ "test": "yarn build" }, "dependencies": { - "@accounts/boost": "^0.26.0-alpha.3", + "@accounts/boost": "^0.26.0-alpha.4", "apollo-link-context": "1.0.19", "apollo-link-http": "1.5.16", "apollo-server": "2.9.13", diff --git a/examples/graphql-server-typeorm-postgres/package.json b/examples/graphql-server-typeorm-postgres/package.json index 72d0674fe..1a0b32d82 100755 --- a/examples/graphql-server-typeorm-postgres/package.json +++ b/examples/graphql-server-typeorm-postgres/package.json @@ -1,7 +1,7 @@ { "name": "@examples/graphql-typeorm-typescript", "private": true, - "version": "0.26.0-alpha.3", + "version": "0.26.0-alpha.4", "main": "lib/index.js", "license": "Unlicensed", "scripts": { @@ -13,10 +13,10 @@ "test": "yarn build" }, "dependencies": { - "@accounts/graphql-api": "^0.26.0-alpha.3", - "@accounts/password": "^0.26.0-alpha.3", - "@accounts/server": "^0.26.0-alpha.3", - "@accounts/typeorm": "^0.26.0-alpha.3", + "@accounts/graphql-api": "^0.26.0-alpha.4", + "@accounts/password": "^0.26.0-alpha.4", + "@accounts/server": "^0.26.0-alpha.4", + "@accounts/typeorm": "^0.26.0-alpha.4", "@graphql-modules/core": "0.7.13", "apollo-server": "2.9.13", "graphql": "14.5.8", @@ -25,7 +25,7 @@ "typeorm": "0.2.22" }, "devDependencies": { - "@accounts/types": "^0.26.0-alpha.3", + "@accounts/types": "^0.26.0-alpha.4", "@types/node": "13.7.7", "nodemon": "2.0.2", "ts-node": "8.6.2", diff --git a/examples/graphql-server-typescript/package.json b/examples/graphql-server-typescript/package.json index bcdfc217f..d30034559 100644 --- a/examples/graphql-server-typescript/package.json +++ b/examples/graphql-server-typescript/package.json @@ -1,7 +1,7 @@ { "name": "@examples/graphql-server-typescript", "private": true, - "version": "0.26.0-alpha.3", + "version": "0.26.0-alpha.4", "main": "lib/index.js", "license": "MIT", "scripts": { @@ -10,12 +10,12 @@ "test": "yarn build" }, "dependencies": { - "@accounts/database-manager": "^0.26.0-alpha.3", - "@accounts/graphql-api": "^0.26.0-alpha.3", - "@accounts/mongo": "^0.26.0-alpha.3", - "@accounts/password": "^0.26.0-alpha.3", - "@accounts/rest-express": "^0.26.0-alpha.3", - "@accounts/server": "^0.26.0-alpha.3", + "@accounts/database-manager": "^0.26.0-alpha.4", + "@accounts/graphql-api": "^0.26.0-alpha.4", + "@accounts/mongo": "^0.26.0-alpha.4", + "@accounts/password": "^0.26.0-alpha.4", + "@accounts/rest-express": "^0.26.0-alpha.4", + "@accounts/server": "^0.26.0-alpha.4", "@graphql-modules/core": "0.7.13", "apollo-server": "2.9.13", "graphql": "14.5.8", diff --git a/examples/react-graphql-typescript/package.json b/examples/react-graphql-typescript/package.json index f31ae3f5a..600852c53 100644 --- a/examples/react-graphql-typescript/package.json +++ b/examples/react-graphql-typescript/package.json @@ -1,6 +1,6 @@ { "name": "@examples/react-graphql-typescript", - "version": "0.26.0-alpha.3", + "version": "0.26.0-alpha.4", "private": true, "scripts": { "start": "SKIP_PREFLIGHT_CHECK=true react-scripts start", @@ -24,10 +24,10 @@ ] }, "dependencies": { - "@accounts/apollo-link": "^0.26.0-alpha.3", - "@accounts/client": "^0.26.0-alpha.3", - "@accounts/client-password": "^0.26.0-alpha.3", - "@accounts/graphql-client": "^0.26.0-alpha.3", + "@accounts/apollo-link": "^0.26.0-alpha.4", + "@accounts/client": "^0.26.0-alpha.4", + "@accounts/client-password": "^0.26.0-alpha.4", + "@accounts/graphql-client": "^0.26.0-alpha.4", "@apollo/react-hooks": "3.1.5", "@material-ui/core": "4.9.11", "@material-ui/styles": "4.9.10", diff --git a/examples/react-rest-typescript/package.json b/examples/react-rest-typescript/package.json index d7e0af11f..b86ab1904 100644 --- a/examples/react-rest-typescript/package.json +++ b/examples/react-rest-typescript/package.json @@ -1,6 +1,6 @@ { "name": "@examples/react-rest-typescript", - "version": "0.26.0-alpha.3", + "version": "0.26.0-alpha.4", "private": true, "scripts": { "start": "SKIP_PREFLIGHT_CHECK=true react-scripts start", @@ -24,9 +24,9 @@ ] }, "dependencies": { - "@accounts/client": "^0.26.0-alpha.3", - "@accounts/client-password": "^0.26.0-alpha.3", - "@accounts/rest-client": "^0.26.0-alpha.3", + "@accounts/client": "^0.26.0-alpha.4", + "@accounts/client-password": "^0.26.0-alpha.4", + "@accounts/rest-client": "^0.26.0-alpha.4", "@material-ui/core": "4.9.11", "@material-ui/icons": "4.9.1", "@material-ui/lab": "4.0.0-alpha.50", diff --git a/examples/rest-express-typescript/package.json b/examples/rest-express-typescript/package.json index 5c5bd5cd2..6be0dca15 100644 --- a/examples/rest-express-typescript/package.json +++ b/examples/rest-express-typescript/package.json @@ -1,7 +1,7 @@ { "name": "@examples/rest-express-typescript", "private": true, - "version": "0.26.0-alpha.3", + "version": "0.26.0-alpha.4", "main": "lib/index.js", "license": "MIT", "scripts": { @@ -10,11 +10,11 @@ "test": "yarn build" }, "dependencies": { - "@accounts/authenticator-otp": "^0.26.0-alpha.3", - "@accounts/mongo": "^0.26.0-alpha.3", - "@accounts/password": "^0.26.0-alpha.3", - "@accounts/rest-express": "^0.26.0-alpha.3", - "@accounts/server": "^0.26.0-alpha.3", + "@accounts/authenticator-otp": "^0.26.0-alpha.4", + "@accounts/mongo": "^0.26.0-alpha.4", + "@accounts/password": "^0.26.0-alpha.4", + "@accounts/rest-express": "^0.26.0-alpha.4", + "@accounts/server": "^0.26.0-alpha.4", "body-parser": "1.19.0", "cors": "2.8.5", "express": "4.17.1", diff --git a/lerna.json b/lerna.json index 2264ab23a..fb1d4682c 100644 --- a/lerna.json +++ b/lerna.json @@ -2,5 +2,5 @@ "lerna": "2.11.0", "npmClient": "yarn", "useWorkspaces": true, - "version": "0.26.0-alpha.3" + "version": "0.26.0-alpha.4" } diff --git a/packages/apollo-link-accounts/package.json b/packages/apollo-link-accounts/package.json index 1b3920d06..7fee1d5ba 100644 --- a/packages/apollo-link-accounts/package.json +++ b/packages/apollo-link-accounts/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/apollo-link", - "version": "0.26.0-alpha.3", + "version": "0.26.0-alpha.4", "description": "Apollo link for account-js", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -20,7 +20,7 @@ }, "license": "MIT", "devDependencies": { - "@accounts/client": "^0.26.0-alpha.3", + "@accounts/client": "^0.26.0-alpha.4", "apollo-link": "1.2.14", "rimraf": "3.0.0" }, diff --git a/packages/authenticator-otp/package.json b/packages/authenticator-otp/package.json index 56bab6895..b1385c2d2 100644 --- a/packages/authenticator-otp/package.json +++ b/packages/authenticator-otp/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/authenticator-otp", - "version": "0.26.0-alpha.3", + "version": "0.26.0-alpha.4", "description": "@accounts/authenticator-otp", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -29,14 +29,14 @@ "author": "Leo Pradel", "license": "MIT", "devDependencies": { - "@accounts/server": "^0.26.0-alpha.3", + "@accounts/server": "^0.26.0-alpha.4", "@types/jest": "24.0.23", "@types/node": "12.7.4", "jest": "24.9.0", "rimraf": "3.0.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.3", + "@accounts/types": "^0.26.0-alpha.4", "otplib": "11.0.1", "tslib": "1.10.0" }, diff --git a/packages/boost/package.json b/packages/boost/package.json index 5afe5a924..6831a5fe1 100644 --- a/packages/boost/package.json +++ b/packages/boost/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/boost", - "version": "0.26.0-alpha.3", + "version": "0.26.0-alpha.4", "description": "Ready to use GraphQL accounts server", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -23,10 +23,10 @@ "rimraf": "3.0.0" }, "dependencies": { - "@accounts/database-manager": "^0.26.0-alpha.3", - "@accounts/graphql-api": "^0.26.0-alpha.3", - "@accounts/server": "^0.26.0-alpha.3", - "@accounts/types": "^0.26.0-alpha.3", + "@accounts/database-manager": "^0.26.0-alpha.4", + "@accounts/graphql-api": "^0.26.0-alpha.4", + "@accounts/server": "^0.26.0-alpha.4", + "@accounts/types": "^0.26.0-alpha.4", "@graphql-modules/core": "0.7.14", "apollo-server": "^2.9.13", "graphql": "^14.5.4", diff --git a/packages/client-password/package.json b/packages/client-password/package.json index 3b237e61d..3c9fabd83 100644 --- a/packages/client-password/package.json +++ b/packages/client-password/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/client-password", - "version": "0.26.0-alpha.3", + "version": "0.26.0-alpha.4", "description": "@accounts/client-password", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -35,8 +35,8 @@ "rimraf": "3.0.0" }, "dependencies": { - "@accounts/client": "^0.26.0-alpha.3", - "@accounts/types": "^0.26.0-alpha.3", + "@accounts/client": "^0.26.0-alpha.4", + "@accounts/types": "^0.26.0-alpha.4", "tslib": "1.10.0" } } diff --git a/packages/client/package.json b/packages/client/package.json index df32d97d4..23fd5f3a5 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/client", - "version": "0.26.0-alpha.3", + "version": "0.26.0-alpha.4", "description": "Fullstack authentication and accounts-management", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -53,7 +53,7 @@ "rimraf": "3.0.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.3", + "@accounts/types": "^0.26.0-alpha.4", "jwt-decode": "2.2.0", "tslib": "1.10.0" } diff --git a/packages/database-manager/package.json b/packages/database-manager/package.json index d02b06fea..f15af8f16 100644 --- a/packages/database-manager/package.json +++ b/packages/database-manager/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/database-manager", - "version": "0.26.0-alpha.3", + "version": "0.26.0-alpha.4", "description": "Accounts Database Manager, allow the use of separate databases for session and user", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -41,7 +41,7 @@ "rimraf": "3.0.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.3", + "@accounts/types": "^0.26.0-alpha.4", "tslib": "1.10.0" } } diff --git a/packages/database-mongo/package.json b/packages/database-mongo/package.json index 3ecde0a76..aa328b8cd 100644 --- a/packages/database-mongo/package.json +++ b/packages/database-mongo/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/mongo", - "version": "0.26.0-alpha.3", + "version": "0.26.0-alpha.4", "description": "MongoDB adaptor for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -29,7 +29,7 @@ "author": "Leo Pradel", "license": "MIT", "devDependencies": { - "@accounts/database-tests": "^0.26.0-alpha.3", + "@accounts/database-tests": "^0.26.0-alpha.4", "@types/jest": "25.1.4", "@types/lodash": "4.14.149", "@types/mongodb": "3.5.4", @@ -37,7 +37,7 @@ "jest": "25.1.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.3", + "@accounts/types": "^0.26.0-alpha.4", "lodash": "^4.17.15", "mongodb": "^3.4.1", "tslib": "1.10.0" diff --git a/packages/database-redis/package.json b/packages/database-redis/package.json index 7ed35a1d2..f7465b2ca 100644 --- a/packages/database-redis/package.json +++ b/packages/database-redis/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/redis", - "version": "0.26.0-alpha.3", + "version": "0.26.0-alpha.4", "description": "Redis adaptor for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -32,7 +32,7 @@ "author": "Leo Pradel", "license": "MIT", "devDependencies": { - "@accounts/database-tests": "^0.26.0-alpha.3", + "@accounts/database-tests": "^0.26.0-alpha.4", "@types/ioredis": "4.14.9", "@types/jest": "25.1.4", "@types/lodash": "4.14.149", @@ -41,7 +41,7 @@ "jest": "25.1.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.3", + "@accounts/types": "^0.26.0-alpha.4", "ioredis": "^4.14.1", "lodash": "^4.17.15", "shortid": "^2.2.15", diff --git a/packages/database-tests/package.json b/packages/database-tests/package.json index 265c6761f..1f922eef3 100644 --- a/packages/database-tests/package.json +++ b/packages/database-tests/package.json @@ -1,7 +1,7 @@ { "name": "@accounts/database-tests", "private": true, - "version": "0.26.0-alpha.3", + "version": "0.26.0-alpha.4", "main": "lib/index.js", "typings": "lib/index.d.ts", "scripts": { @@ -23,7 +23,7 @@ "jest": "25.1.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.3", + "@accounts/types": "^0.26.0-alpha.4", "tslib": "1.10.0" } } diff --git a/packages/database-typeorm/package.json b/packages/database-typeorm/package.json index 47aece1ef..ddf495c13 100644 --- a/packages/database-typeorm/package.json +++ b/packages/database-typeorm/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/typeorm", - "version": "0.26.0-alpha.3", + "version": "0.26.0-alpha.4", "description": "TypeORM adaptor for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -26,14 +26,14 @@ "author": "Birkir Gudjonsson ", "license": "MIT", "devDependencies": { - "@accounts/database-tests": "^0.26.0-alpha.3", + "@accounts/database-tests": "^0.26.0-alpha.4", "@types/jest": "25.1.4", "@types/node": "13.9.8", "jest": "25.1.0", "pg": "7.15.1" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.3", + "@accounts/types": "^0.26.0-alpha.4", "lodash": "^4.17.15", "reflect-metadata": "^0.1.13", "tslib": "1.10.0", diff --git a/packages/e2e/package.json b/packages/e2e/package.json index 09dc855e6..5cf3215ab 100644 --- a/packages/e2e/package.json +++ b/packages/e2e/package.json @@ -1,7 +1,7 @@ { "name": "@accounts/e2e", "private": true, - "version": "0.26.0-alpha.3", + "version": "0.26.0-alpha.4", "main": "lib/index.js", "typings": "lib/index.d.ts", "scripts": { @@ -32,17 +32,17 @@ "jest-localstorage-mock": "2.4.0" }, "dependencies": { - "@accounts/client": "^0.26.0-alpha.3", - "@accounts/client-password": "^0.26.0-alpha.3", - "@accounts/graphql-api": "^0.26.0-alpha.3", - "@accounts/graphql-client": "^0.26.0-alpha.3", - "@accounts/mongo": "^0.26.0-alpha.3", - "@accounts/password": "^0.26.0-alpha.3", - "@accounts/rest-client": "^0.26.0-alpha.3", - "@accounts/rest-express": "^0.26.0-alpha.3", - "@accounts/server": "^0.26.0-alpha.3", - "@accounts/typeorm": "^0.26.0-alpha.3", - "@accounts/types": "^0.26.0-alpha.3", + "@accounts/client": "^0.26.0-alpha.4", + "@accounts/client-password": "^0.26.0-alpha.4", + "@accounts/graphql-api": "^0.26.0-alpha.4", + "@accounts/graphql-client": "^0.26.0-alpha.4", + "@accounts/mongo": "^0.26.0-alpha.4", + "@accounts/password": "^0.26.0-alpha.4", + "@accounts/rest-client": "^0.26.0-alpha.4", + "@accounts/rest-express": "^0.26.0-alpha.4", + "@accounts/server": "^0.26.0-alpha.4", + "@accounts/typeorm": "^0.26.0-alpha.4", + "@accounts/types": "^0.26.0-alpha.4", "@graphql-modules/core": "0.7.14", "apollo-boost": "0.4.7", "apollo-server": "2.12.0", diff --git a/packages/error/package.json b/packages/error/package.json index 2355c89d0..ba4d304f8 100644 --- a/packages/error/package.json +++ b/packages/error/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/error", - "version": "0.26.0-alpha.3", + "version": "0.26.0-alpha.4", "description": "Accounts-js Error", "main": "lib/index.js", "typings": "lib/index.d.ts", diff --git a/packages/express-session/package.json b/packages/express-session/package.json index c7bfd50dd..ea9008392 100644 --- a/packages/express-session/package.json +++ b/packages/express-session/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/express-session", - "version": "0.26.0-alpha.3", + "version": "0.26.0-alpha.4", "description": "", "main": "lib/index", "typings": "lib/index", @@ -34,7 +34,7 @@ "author": "Kamil Kisiela", "license": "MIT", "devDependencies": { - "@accounts/server": "^0.26.0-alpha.3", + "@accounts/server": "^0.26.0-alpha.4", "@types/express": "4.17.4", "@types/express-session": "1.17.0", "@types/jest": "25.1.4", @@ -50,7 +50,7 @@ "express-session": "^1.15.6" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.3", + "@accounts/types": "^0.26.0-alpha.4", "lodash": "^4.17.15", "request-ip": "^2.1.3", "tslib": "1.10.0" diff --git a/packages/graphql-api/package.json b/packages/graphql-api/package.json index 907e5984b..5f7ab1040 100644 --- a/packages/graphql-api/package.json +++ b/packages/graphql-api/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/graphql-api", - "version": "0.26.0-alpha.3", + "version": "0.26.0-alpha.4", "description": "Server side GraphQL transport for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -28,9 +28,9 @@ }, "homepage": "https://github.com/js-accounts/graphql-api", "devDependencies": { - "@accounts/password": "^0.26.0-alpha.3", - "@accounts/server": "^0.26.0-alpha.3", - "@accounts/types": "^0.26.0-alpha.3", + "@accounts/password": "^0.26.0-alpha.4", + "@accounts/server": "^0.26.0-alpha.4", + "@accounts/types": "^0.26.0-alpha.4", "@gql2ts/from-schema": "1.10.1", "@gql2ts/types": "1.9.0", "@graphql-codegen/add": "1.8.3", diff --git a/packages/graphql-client/package.json b/packages/graphql-client/package.json index f25101fd7..3150ca23d 100644 --- a/packages/graphql-client/package.json +++ b/packages/graphql-client/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/graphql-client", - "version": "0.26.0-alpha.3", + "version": "0.26.0-alpha.4", "description": "GraphQL client transport for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -30,8 +30,8 @@ "lodash": "4.17.15" }, "dependencies": { - "@accounts/client": "^0.26.0-alpha.3", - "@accounts/types": "^0.26.0-alpha.3", + "@accounts/client": "^0.26.0-alpha.4", + "@accounts/types": "^0.26.0-alpha.4", "graphql-tag": "^2.10.0", "tslib": "1.10.0" }, diff --git a/packages/oauth-instagram/package.json b/packages/oauth-instagram/package.json index 7a0de0cca..63b7ebb81 100644 --- a/packages/oauth-instagram/package.json +++ b/packages/oauth-instagram/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/oauth-instagram", - "version": "0.26.0-alpha.3", + "version": "0.26.0-alpha.4", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -18,7 +18,7 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/oauth": "^0.26.0-alpha.3", + "@accounts/oauth": "^0.26.0-alpha.4", "request": "^2.88.0", "request-promise": "^4.2.5", "tslib": "1.10.0" diff --git a/packages/oauth-twitter/package.json b/packages/oauth-twitter/package.json index 6964b1bf2..dd53d55f8 100644 --- a/packages/oauth-twitter/package.json +++ b/packages/oauth-twitter/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/oauth-twitter", - "version": "0.26.0-alpha.3", + "version": "0.26.0-alpha.4", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -18,7 +18,7 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/oauth": "^0.26.0-alpha.3", + "@accounts/oauth": "^0.26.0-alpha.4", "oauth": "^0.9.15", "tslib": "1.10.0" }, diff --git a/packages/oauth/package.json b/packages/oauth/package.json index 3bb388bb0..5e85bea20 100644 --- a/packages/oauth/package.json +++ b/packages/oauth/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/oauth", - "version": "0.26.0-alpha.3", + "version": "0.26.0-alpha.4", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -18,12 +18,12 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.3", + "@accounts/types": "^0.26.0-alpha.4", "request-promise": "^4.2.5", "tslib": "1.10.0" }, "devDependencies": { - "@accounts/server": "^0.26.0-alpha.3", + "@accounts/server": "^0.26.0-alpha.4", "@types/jest": "25.1.4", "@types/node": "13.9.8", "jest": "25.1.0" diff --git a/packages/password/package.json b/packages/password/package.json index 3370e5042..2a9848e7a 100644 --- a/packages/password/package.json +++ b/packages/password/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/password", - "version": "0.26.0-alpha.3", + "version": "0.26.0-alpha.4", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -18,14 +18,14 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/two-factor": "^0.26.0-alpha.3", + "@accounts/two-factor": "^0.26.0-alpha.4", "bcryptjs": "^2.4.3", "lodash": "^4.17.15", "tslib": "1.10.0" }, "devDependencies": { - "@accounts/server": "^0.26.0-alpha.3", - "@accounts/types": "^0.26.0-alpha.3", + "@accounts/server": "^0.26.0-alpha.4", + "@accounts/types": "^0.26.0-alpha.4", "@types/bcryptjs": "2.4.2", "@types/jest": "25.1.4", "@types/lodash": "4.14.149", diff --git a/packages/rest-client/package.json b/packages/rest-client/package.json index 25f3103f4..9094e857c 100644 --- a/packages/rest-client/package.json +++ b/packages/rest-client/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/rest-client", - "version": "0.26.0-alpha.3", + "version": "0.26.0-alpha.4", "description": "REST client for accounts", "main": "lib/index", "typings": "lib/index", @@ -38,7 +38,7 @@ "author": "Tim Mikeladze", "license": "MIT", "devDependencies": { - "@accounts/client": "^0.26.0-alpha.3", + "@accounts/client": "^0.26.0-alpha.4", "@types/jest": "25.1.4", "@types/lodash": "4.14.149", "@types/node": "13.9.8", @@ -49,7 +49,7 @@ "@accounts/client": "^0.19.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.3", + "@accounts/types": "^0.26.0-alpha.4", "lodash": "^4.17.15", "tslib": "1.10.0" } diff --git a/packages/rest-express/package.json b/packages/rest-express/package.json index 3b25f8193..223c6c397 100644 --- a/packages/rest-express/package.json +++ b/packages/rest-express/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/rest-express", - "version": "0.26.0-alpha.3", + "version": "0.26.0-alpha.4", "description": "Server side REST express middleware for accounts", "main": "lib/index", "typings": "lib/index", @@ -35,8 +35,8 @@ "author": "Tim Mikeladze", "license": "MIT", "devDependencies": { - "@accounts/password": "^0.26.0-alpha.3", - "@accounts/server": "^0.26.0-alpha.3", + "@accounts/password": "^0.26.0-alpha.4", + "@accounts/server": "^0.26.0-alpha.4", "@types/express": "4.17.4", "@types/jest": "25.1.4", "@types/lodash": "4.14.149", @@ -48,7 +48,7 @@ "@accounts/server": "^0.19.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.3", + "@accounts/types": "^0.26.0-alpha.4", "express": "^4.17.0", "lodash": "^4.17.15", "request-ip": "^2.1.3", diff --git a/packages/server/package.json b/packages/server/package.json index c27a2dde9..6e7fe7067 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/server", - "version": "0.26.0-alpha.3", + "version": "0.26.0-alpha.4", "description": "Fullstack authentication and accounts-management", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -40,7 +40,7 @@ "author": "Tim Mikeladze", "license": "MIT", "dependencies": { - "@accounts/types": "^0.26.0-alpha.3", + "@accounts/types": "^0.26.0-alpha.4", "@types/jsonwebtoken": "8.3.5", "emittery": "0.5.1", "jsonwebtoken": "8.5.1", diff --git a/packages/two-factor/package.json b/packages/two-factor/package.json index f7736b352..e6c276875 100644 --- a/packages/two-factor/package.json +++ b/packages/two-factor/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/two-factor", - "version": "0.26.0-alpha.3", + "version": "0.26.0-alpha.4", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -22,7 +22,7 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.3", + "@accounts/types": "^0.26.0-alpha.4", "@types/lodash": "^4.14.138", "@types/speakeasy": "2.0.2", "lodash": "^4.17.15", diff --git a/packages/types/package.json b/packages/types/package.json index b53d210a0..099d99eed 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/types", - "version": "0.26.0-alpha.3", + "version": "0.26.0-alpha.4", "description": "Accounts-js Types", "main": "lib/index.js", "typings": "lib/index.d.ts", From b758939874c22dd8026e6f2e93fda827f497a9af Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 16 Jun 2020 10:24:07 +0200 Subject: [PATCH 110/146] Merge branch 'master' of github.com:accounts-js/accounts into feature/authenticator-api From aa2e296d902f8dfff5345a8bdb81e3f1e3f0c826 Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 16 Jun 2020 10:24:11 +0200 Subject: [PATCH 111/146] Update package.json --- packages/authenticator-otp/package.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/authenticator-otp/package.json b/packages/authenticator-otp/package.json index b1385c2d2..171b6aea5 100644 --- a/packages/authenticator-otp/package.json +++ b/packages/authenticator-otp/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/authenticator-otp", - "version": "0.26.0-alpha.4", + "version": "0.27.0", "description": "@accounts/authenticator-otp", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -29,14 +29,14 @@ "author": "Leo Pradel", "license": "MIT", "devDependencies": { - "@accounts/server": "^0.26.0-alpha.4", + "@accounts/server": "^0.27.0", "@types/jest": "24.0.23", "@types/node": "12.7.4", "jest": "24.9.0", "rimraf": "3.0.0" }, "dependencies": { - "@accounts/types": "^0.26.0-alpha.4", + "@accounts/types": "^0.27.0", "otplib": "11.0.1", "tslib": "1.10.0" }, From 40a13f5a1da4b0274fedd835a9b7660d7f254292 Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 16 Jun 2020 10:42:49 +0200 Subject: [PATCH 112/146] fix compilation --- packages/authenticator-otp/package.json | 2 +- packages/database-typeorm/src/typeorm.ts | 10 +++++++++- .../src/endpoints/mfa/authenticators.ts | 2 +- yarn.lock | 20 ------------------- 4 files changed, 11 insertions(+), 23 deletions(-) diff --git a/packages/authenticator-otp/package.json b/packages/authenticator-otp/package.json index 171b6aea5..8b648b755 100644 --- a/packages/authenticator-otp/package.json +++ b/packages/authenticator-otp/package.json @@ -41,6 +41,6 @@ "tslib": "1.10.0" }, "peerDependencies": { - "@accounts/server": "^0.21.0" + "@accounts/server": "^0.27.0" } } diff --git a/packages/database-typeorm/src/typeorm.ts b/packages/database-typeorm/src/typeorm.ts index 7347d0007..1d7957d7c 100644 --- a/packages/database-typeorm/src/typeorm.ts +++ b/packages/database-typeorm/src/typeorm.ts @@ -1,4 +1,12 @@ -import { ConnectionInformations, CreateUser, DatabaseInterface } from '@accounts/types'; +import { + ConnectionInformations, + CreateUser, + DatabaseInterface, + CreateAuthenticator, + Authenticator, + CreateMfaChallenge, + MfaChallenge, +} from '@accounts/types'; import { Repository, getRepository, Not, In, FindOperator } from 'typeorm'; import { User } from './entity/User'; import { UserEmail } from './entity/UserEmail'; diff --git a/packages/rest-express/src/endpoints/mfa/authenticators.ts b/packages/rest-express/src/endpoints/mfa/authenticators.ts index 5c1c9a4cf..818d4cc8b 100644 --- a/packages/rest-express/src/endpoints/mfa/authenticators.ts +++ b/packages/rest-express/src/endpoints/mfa/authenticators.ts @@ -26,7 +26,7 @@ export const authenticatorsByMfaToken = (accountsServer: AccountsServer) => asyn res: express.Response ) => { try { - const { mfaToken } = req.query; + const { mfaToken } = req.query as { mfaToken: string }; const userAuthenticators = await accountsServer.mfa.findUserAuthenticatorsByMfaToken(mfaToken); res.json(userAuthenticators); diff --git a/yarn.lock b/yarn.lock index ce6efa07b..be0459df5 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,26 +2,6 @@ # yarn lockfile v1 -"@accounts/server@^0.26.0-alpha.4": - version "0.26.0" - resolved "https://registry.yarnpkg.com/@accounts/server/-/server-0.26.0.tgz#ff344e0edf68fb5fedc9f58d079b024a68161966" - integrity sha512-p5cUh8vou1OFLuM4AGDFYn2z0/e4yHam9oR/gAdzJjFw+rezGmiJ3pYFwK5eAUkcK9aVU2b4KiUox99F7sdg0A== - dependencies: - "@accounts/types" "^0.26.0" - "@types/jsonwebtoken" "8.3.9" - emittery "0.5.1" - jsonwebtoken "8.5.1" - jwt-decode "2.2.0" - lodash "4.17.15" - tslib "1.11.2" - -"@accounts/types@^0.26.0", "@accounts/types@^0.26.0-alpha.4": - version "0.26.0" - resolved "https://registry.yarnpkg.com/@accounts/types/-/types-0.26.0.tgz#89defe77376a26b3df95360b1559bb63aece6875" - integrity sha512-zU11hUC79SDDUj4MGLPCf0XgEiow/gbpltJqC0nvQXx+K5COufulpfsuz0/b7aoBWclWfIAr4XYZ9lOR8ZLw6Q== - dependencies: - tslib "1.11.2" - "@apollo/protobufjs@^1.0.3": version "1.0.4" resolved "https://registry.yarnpkg.com/@apollo/protobufjs/-/protobufjs-1.0.4.tgz#cf01747a55359066341f31b5ce8db17df44244e0" From 546d3856b83974cf99711aa396fbb0dc4e004677 Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 16 Jun 2020 11:10:42 +0200 Subject: [PATCH 113/146] cleanup types --- packages/database-manager/src/database-manager.ts | 5 +++++ packages/types/src/index.ts | 10 +++++----- packages/types/src/types/database-interface.ts | 4 ++-- .../{ => mfa}/authenticator/authenticator-service.ts | 6 +++--- .../src/types/{ => mfa}/authenticator/authenticator.ts | 4 ++++ .../{ => mfa}/authenticator/create-authenticator.ts | 3 +++ .../{ => mfa}/authenticator/database-interface.ts | 2 ++ .../challenge}/create-mfa-challenge.ts | 4 ++++ .../challenge}/database-interface.ts | 2 +- .../{mfa-challenge => mfa/challenge}/mfa-challenge.ts | 4 ++++ 10 files changed, 33 insertions(+), 11 deletions(-) rename packages/types/src/types/{ => mfa}/authenticator/authenticator-service.ts (78%) rename packages/types/src/types/{ => mfa}/authenticator/authenticator.ts (84%) rename packages/types/src/types/{ => mfa}/authenticator/create-authenticator.ts (88%) rename packages/types/src/types/{ => mfa}/authenticator/database-interface.ts (83%) rename packages/types/src/types/{mfa-challenge => mfa/challenge}/create-mfa-challenge.ts (86%) rename packages/types/src/types/{mfa-challenge => mfa/challenge}/database-interface.ts (80%) rename packages/types/src/types/{mfa-challenge => mfa/challenge}/mfa-challenge.ts (91%) diff --git a/packages/database-manager/src/database-manager.ts b/packages/database-manager/src/database-manager.ts index 9b2f6e93d..5e3edaed9 100644 --- a/packages/database-manager/src/database-manager.ts +++ b/packages/database-manager/src/database-manager.ts @@ -180,6 +180,11 @@ export class DatabaseManager implements DatabaseInterface { return this.userStorage.activateAuthenticator.bind(this.userStorage); } + // Return the updateAuthenticator function from the userStorage + public get updateAuthenticator(): DatabaseInterface['updateAuthenticator'] { + return this.userStorage.updateAuthenticator.bind(this.userStorage); + } + // Return the createMfaChallenge function from the userStorage public get createMfaChallenge(): DatabaseInterface['createMfaChallenge'] { return this.userStorage.createMfaChallenge.bind(this.userStorage); diff --git a/packages/types/src/index.ts b/packages/types/src/index.ts index 6b5570c6d..32b0ae09d 100644 --- a/packages/types/src/index.ts +++ b/packages/types/src/index.ts @@ -17,8 +17,8 @@ export * from './types/session/session'; export * from './types/services/password/create-user'; export * from './types/services/password/database-interface'; export * from './types/services/password/login-user'; -export * from './types/authenticator/authenticator-service'; -export * from './types/authenticator/authenticator'; -export * from './types/authenticator/create-authenticator'; -export * from './types/mfa-challenge/create-mfa-challenge'; -export * from './types/mfa-challenge/mfa-challenge'; +export * from './types/mfa/authenticator/authenticator-service'; +export * from './types/mfa/authenticator/authenticator'; +export * from './types/mfa/authenticator/create-authenticator'; +export * from './types/mfa/challenge/create-mfa-challenge'; +export * from './types/mfa/challenge/mfa-challenge'; diff --git a/packages/types/src/types/database-interface.ts b/packages/types/src/types/database-interface.ts index 6e125e7be..96212d902 100644 --- a/packages/types/src/types/database-interface.ts +++ b/packages/types/src/types/database-interface.ts @@ -2,8 +2,8 @@ import { User } from './user'; import { CreateUser } from './create-user'; import { DatabaseInterfaceSessions } from './session/database-interface'; import { DatabaseInterfaceServicePassword } from './services/password/database-interface'; -import { DatabaseInterfaceAuthenticators } from './authenticator/database-interface'; -import { DatabaseInterfaceMfaChallenges } from './mfa-challenge/database-interface'; +import { DatabaseInterfaceAuthenticators } from './mfa/authenticator/database-interface'; +import { DatabaseInterfaceMfaChallenges } from './mfa/challenge/database-interface'; export interface DatabaseInterface extends DatabaseInterfaceSessions, diff --git a/packages/types/src/types/authenticator/authenticator-service.ts b/packages/types/src/types/mfa/authenticator/authenticator-service.ts similarity index 78% rename from packages/types/src/types/authenticator/authenticator-service.ts rename to packages/types/src/types/mfa/authenticator/authenticator-service.ts index 1d568f8a2..e0318d692 100644 --- a/packages/types/src/types/authenticator/authenticator-service.ts +++ b/packages/types/src/types/mfa/authenticator/authenticator-service.ts @@ -1,7 +1,7 @@ -import { DatabaseInterface } from '../database-interface'; +import { DatabaseInterface } from '../../database-interface'; import { Authenticator } from './authenticator'; -import { MfaChallenge } from '../mfa-challenge/mfa-challenge'; -import { ConnectionInformations } from '../connection-informations'; +import { MfaChallenge } from '../challenge/mfa-challenge'; +import { ConnectionInformations } from '../../connection-informations'; export interface AuthenticatorService { server: any; diff --git a/packages/types/src/types/authenticator/authenticator.ts b/packages/types/src/types/mfa/authenticator/authenticator.ts similarity index 84% rename from packages/types/src/types/authenticator/authenticator.ts rename to packages/types/src/types/mfa/authenticator/authenticator.ts index 9649e6344..3580592a9 100644 --- a/packages/types/src/types/authenticator/authenticator.ts +++ b/packages/types/src/types/mfa/authenticator/authenticator.ts @@ -19,4 +19,8 @@ export interface Authenticator { * If active is true, contain the date when the authenticator was activated */ activatedAt?: string; + /** + * Custom properties + */ + [additionalKey: string]: any; } diff --git a/packages/types/src/types/authenticator/create-authenticator.ts b/packages/types/src/types/mfa/authenticator/create-authenticator.ts similarity index 88% rename from packages/types/src/types/authenticator/create-authenticator.ts rename to packages/types/src/types/mfa/authenticator/create-authenticator.ts index f29c3aa0f..266cca2cc 100644 --- a/packages/types/src/types/authenticator/create-authenticator.ts +++ b/packages/types/src/types/mfa/authenticator/create-authenticator.ts @@ -11,5 +11,8 @@ export interface CreateAuthenticator { * Is authenticator active */ active: boolean; + /** + * Custom properties + */ [additionalKey: string]: any; } diff --git a/packages/types/src/types/authenticator/database-interface.ts b/packages/types/src/types/mfa/authenticator/database-interface.ts similarity index 83% rename from packages/types/src/types/authenticator/database-interface.ts rename to packages/types/src/types/mfa/authenticator/database-interface.ts index 0d547fa0f..95a7fb71e 100644 --- a/packages/types/src/types/authenticator/database-interface.ts +++ b/packages/types/src/types/mfa/authenticator/database-interface.ts @@ -9,4 +9,6 @@ export interface DatabaseInterfaceAuthenticators { findUserAuthenticators(userId: string): Promise; activateAuthenticator(authenticatorId: string): Promise; + + updateAuthenticator(authenticatorId: string, data: Partial): Promise; } diff --git a/packages/types/src/types/mfa-challenge/create-mfa-challenge.ts b/packages/types/src/types/mfa/challenge/create-mfa-challenge.ts similarity index 86% rename from packages/types/src/types/mfa-challenge/create-mfa-challenge.ts rename to packages/types/src/types/mfa/challenge/create-mfa-challenge.ts index 7c78e272d..b9837138f 100644 --- a/packages/types/src/types/mfa-challenge/create-mfa-challenge.ts +++ b/packages/types/src/types/mfa/challenge/create-mfa-challenge.ts @@ -15,4 +15,8 @@ export interface CreateMfaChallenge { * If scope is set to associate, the authenticate function will verify the authenticator next time the user call it */ scope?: 'associate'; + /** + * Custom properties + */ + [additionalKey: string]: any; } diff --git a/packages/types/src/types/mfa-challenge/database-interface.ts b/packages/types/src/types/mfa/challenge/database-interface.ts similarity index 80% rename from packages/types/src/types/mfa-challenge/database-interface.ts rename to packages/types/src/types/mfa/challenge/database-interface.ts index 90a394850..642914319 100644 --- a/packages/types/src/types/mfa-challenge/database-interface.ts +++ b/packages/types/src/types/mfa/challenge/database-interface.ts @@ -6,7 +6,7 @@ export interface DatabaseInterfaceMfaChallenges { findMfaChallengeByToken(token: string): Promise; - updateMfaChallenge(mfaChallengeId: string, data: any): Promise; + updateMfaChallenge(mfaChallengeId: string, data: Partial): Promise; deactivateMfaChallenge(mfaChallengeId: string): Promise; } diff --git a/packages/types/src/types/mfa-challenge/mfa-challenge.ts b/packages/types/src/types/mfa/challenge/mfa-challenge.ts similarity index 91% rename from packages/types/src/types/mfa-challenge/mfa-challenge.ts rename to packages/types/src/types/mfa/challenge/mfa-challenge.ts index a5a3bc210..084ba7710 100644 --- a/packages/types/src/types/mfa-challenge/mfa-challenge.ts +++ b/packages/types/src/types/mfa/challenge/mfa-challenge.ts @@ -27,4 +27,8 @@ export interface MfaChallenge { * If deactivated is true, contain the date when the challenge was used */ deactivatedAt?: string; + /** + * Custom properties + */ + [additionalKey: string]: any; } From 0cdde158da40ab904da8a8fc98fa93997e335155 Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 16 Jun 2020 11:15:41 +0200 Subject: [PATCH 114/146] update db --- packages/database-mongo/src/mongo.ts | 23 ++++++++++++++++++++++- packages/database-typeorm/src/typeorm.ts | 6 ++++++ 2 files changed, 28 insertions(+), 1 deletion(-) diff --git a/packages/database-mongo/src/mongo.ts b/packages/database-mongo/src/mongo.ts index c29c7bf09..367db3793 100644 --- a/packages/database-mongo/src/mongo.ts +++ b/packages/database-mongo/src/mongo.ts @@ -534,6 +534,24 @@ export class Mongo implements DatabaseInterface { ); } + public async updateAuthenticator( + authenticatorId: string, + data: Partial + ): Promise { + const id = this.options.convertAuthenticatorIdToMongoObjectId + ? toMongoID(authenticatorId) + : authenticatorId; + await this.authenticatorCollection.updateOne( + { _id: id }, + { + $set: { + ...data, + [this.options.timestamps.updatedAt]: this.options.dateProvider(), + }, + } + ); + } + /** * MFA challenges related operations */ @@ -578,7 +596,10 @@ export class Mongo implements DatabaseInterface { ); } - public async updateMfaChallenge(mfaChallengeId: string, data: any): Promise { + public async updateMfaChallenge( + mfaChallengeId: string, + data: Partial + ): Promise { const id = this.options.convertMfaChallengeIdToMongoObjectId ? toMongoID(mfaChallengeId) : mfaChallengeId; diff --git a/packages/database-typeorm/src/typeorm.ts b/packages/database-typeorm/src/typeorm.ts index 1d7957d7c..340672ada 100644 --- a/packages/database-typeorm/src/typeorm.ts +++ b/packages/database-typeorm/src/typeorm.ts @@ -470,6 +470,12 @@ export class AccountsTypeorm implements DatabaseInterface { throw new Error('Not implemented yet'); } + // eslint-disable-next-line @typescript-eslint/no-unused-vars + public async updateAuthenticator(authenticatorId: string): Promise { + // TODO + throw new Error('Not implemented yet'); + } + /** * MFA challenges related operations */ From 3d42b396c98ab98a84f977098d7728f44597b159 Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 16 Jun 2020 15:12:08 +0200 Subject: [PATCH 115/146] add deactivateAuthenticator --- .../database-manager/src/database-manager.ts | 5 +++++ packages/database-mongo/src/mongo.ts | 16 ++++++++++++++++ packages/database-typeorm/src/typeorm.ts | 6 ++++++ .../src/types/mfa/authenticator/authenticator.ts | 4 ++++ .../mfa/authenticator/database-interface.ts | 2 ++ 5 files changed, 33 insertions(+) diff --git a/packages/database-manager/src/database-manager.ts b/packages/database-manager/src/database-manager.ts index 5e3edaed9..740d38dec 100644 --- a/packages/database-manager/src/database-manager.ts +++ b/packages/database-manager/src/database-manager.ts @@ -180,6 +180,11 @@ export class DatabaseManager implements DatabaseInterface { return this.userStorage.activateAuthenticator.bind(this.userStorage); } + // Return the deactivateAuthenticator function from the userStorage + public get deactivateAuthenticator(): DatabaseInterface['deactivateAuthenticator'] { + return this.userStorage.deactivateAuthenticator.bind(this.userStorage); + } + // Return the updateAuthenticator function from the userStorage public get updateAuthenticator(): DatabaseInterface['updateAuthenticator'] { return this.userStorage.updateAuthenticator.bind(this.userStorage); diff --git a/packages/database-mongo/src/mongo.ts b/packages/database-mongo/src/mongo.ts index 367db3793..d31ca01d4 100644 --- a/packages/database-mongo/src/mongo.ts +++ b/packages/database-mongo/src/mongo.ts @@ -534,6 +534,22 @@ export class Mongo implements DatabaseInterface { ); } + public async deactivateAuthenticator(authenticatorId: string): Promise { + const id = this.options.convertAuthenticatorIdToMongoObjectId + ? toMongoID(authenticatorId) + : authenticatorId; + await this.authenticatorCollection.updateOne( + { _id: id }, + { + $set: { + active: false, + deactivatedAt: this.options.dateProvider(), + [this.options.timestamps.updatedAt]: this.options.dateProvider(), + }, + } + ); + } + public async updateAuthenticator( authenticatorId: string, data: Partial diff --git a/packages/database-typeorm/src/typeorm.ts b/packages/database-typeorm/src/typeorm.ts index 340672ada..97f867de3 100644 --- a/packages/database-typeorm/src/typeorm.ts +++ b/packages/database-typeorm/src/typeorm.ts @@ -470,6 +470,12 @@ export class AccountsTypeorm implements DatabaseInterface { throw new Error('Not implemented yet'); } + // eslint-disable-next-line @typescript-eslint/no-unused-vars + public async deactivateAuthenticator(authenticatorId: string): Promise { + // TODO + throw new Error('Not implemented yet'); + } + // eslint-disable-next-line @typescript-eslint/no-unused-vars public async updateAuthenticator(authenticatorId: string): Promise { // TODO diff --git a/packages/types/src/types/mfa/authenticator/authenticator.ts b/packages/types/src/types/mfa/authenticator/authenticator.ts index 3580592a9..dfe9820f8 100644 --- a/packages/types/src/types/mfa/authenticator/authenticator.ts +++ b/packages/types/src/types/mfa/authenticator/authenticator.ts @@ -19,6 +19,10 @@ export interface Authenticator { * If active is true, contain the date when the authenticator was activated */ activatedAt?: string; + /** + * If active is true, contain the date when the authenticator was activated + */ + deactivatedAt?: string; /** * Custom properties */ diff --git a/packages/types/src/types/mfa/authenticator/database-interface.ts b/packages/types/src/types/mfa/authenticator/database-interface.ts index 95a7fb71e..fccfeb586 100644 --- a/packages/types/src/types/mfa/authenticator/database-interface.ts +++ b/packages/types/src/types/mfa/authenticator/database-interface.ts @@ -10,5 +10,7 @@ export interface DatabaseInterfaceAuthenticators { activateAuthenticator(authenticatorId: string): Promise; + deactivateAuthenticator(authenticatorId: string): Promise; + updateAuthenticator(authenticatorId: string, data: Partial): Promise; } From 4e8f6ced97a16896ac4d0670f55d9bcd90d01f2c Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 16 Jun 2020 15:39:25 +0200 Subject: [PATCH 116/146] allow custom params for associate --- packages/graphql-api/src/models.ts | 8 ++++++++ .../modules/accounts-mfa/resolvers/mutation.ts | 17 +++++++++++++++++ .../src/modules/accounts-mfa/schema/mutation.ts | 4 ++-- .../src/modules/accounts-mfa/schema/types.ts | 4 ++++ .../rest-express/src/endpoints/mfa/associate.ts | 8 ++++---- 5 files changed, 35 insertions(+), 6 deletions(-) diff --git a/packages/graphql-api/src/models.ts b/packages/graphql-api/src/models.ts index 923f17e9c..01a6d549d 100644 --- a/packages/graphql-api/src/models.ts +++ b/packages/graphql-api/src/models.ts @@ -13,6 +13,10 @@ export type Scalars = { }; +export type AssociateParamsInput = { + _?: Maybe; +}; + export type AssociationResult = OtpAssociationResult; export type AuthenticateParamsInput = { @@ -115,12 +119,14 @@ export type MutationChallengeArgs = { export type MutationAssociateArgs = { type: Scalars['String']; + params?: Maybe; }; export type MutationAssociateByMfaTokenArgs = { mfaToken: Scalars['String']; type: Scalars['String']; + params?: Maybe; }; @@ -332,6 +338,7 @@ export type ResolversTypes = { Mutation: ResolverTypeWrapper<{}>, ChallengeResult: ResolversTypes['DefaultChallengeResult'], DefaultChallengeResult: ResolverTypeWrapper, + AssociateParamsInput: AssociateParamsInput, AssociationResult: ResolversTypes['OTPAssociationResult'], OTPAssociationResult: ResolverTypeWrapper, CreateUserInput: CreateUserInput, @@ -360,6 +367,7 @@ export type ResolversParentTypes = { Mutation: {}, ChallengeResult: ResolversParentTypes['DefaultChallengeResult'], DefaultChallengeResult: DefaultChallengeResult, + AssociateParamsInput: AssociateParamsInput, AssociationResult: ResolversParentTypes['OTPAssociationResult'], OTPAssociationResult: OtpAssociationResult, CreateUserInput: CreateUserInput, diff --git a/packages/graphql-api/src/modules/accounts-mfa/resolvers/mutation.ts b/packages/graphql-api/src/modules/accounts-mfa/resolvers/mutation.ts index dd49592be..34f7faf90 100644 --- a/packages/graphql-api/src/modules/accounts-mfa/resolvers/mutation.ts +++ b/packages/graphql-api/src/modules/accounts-mfa/resolvers/mutation.ts @@ -10,4 +10,21 @@ export const Mutation: MutationResolvers> = .mfa.challenge(mfaToken, authenticatorId, { ip, userAgent }); return challengeResponse; }, + associate: async (_, { type, params }, { injector, user, ip, userAgent }) => { + const userId = user?.id; + if (!userId) { + throw new Error('Unauthorized'); + } + + const associateResponse = await injector + .get(AccountsServer) + .mfa.associate(userId, type, params, { ip, userAgent }); + return associateResponse; + }, + associateByMfaToken: async (_, { mfaToken, type, params }, { injector, ip, userAgent }) => { + const associateResponse = await injector + .get(AccountsServer) + .mfa.associateByMfaToken(mfaToken, type, params, { ip, userAgent }); + return associateResponse; + }, }; diff --git a/packages/graphql-api/src/modules/accounts-mfa/schema/mutation.ts b/packages/graphql-api/src/modules/accounts-mfa/schema/mutation.ts index 60e3dcbb2..3fd705680 100644 --- a/packages/graphql-api/src/modules/accounts-mfa/schema/mutation.ts +++ b/packages/graphql-api/src/modules/accounts-mfa/schema/mutation.ts @@ -7,9 +7,9 @@ export default (config: AccountsMfaModuleConfig) => gql` challenge(mfaToken: String!, authenticatorId: String!): ChallengeResult # Start the association of a new authenticator. - associate(type: String!): AssociationResult + associate(type: String!, params: AssociateParamsInput): AssociationResult # Start the association of a new authenticator, this method is called when the user is enforced to associate an authenticator before the first login. - associateByMfaToken(mfaToken: String!, type: String!): AssociationResult + associateByMfaToken(mfaToken: String!, type: String!, params: AssociateParamsInput): AssociationResult } `; diff --git a/packages/graphql-api/src/modules/accounts-mfa/schema/types.ts b/packages/graphql-api/src/modules/accounts-mfa/schema/types.ts index 4b816d2f1..3d060d3e7 100644 --- a/packages/graphql-api/src/modules/accounts-mfa/schema/types.ts +++ b/packages/graphql-api/src/modules/accounts-mfa/schema/types.ts @@ -21,4 +21,8 @@ export default gql` } union AssociationResult = OTPAssociationResult + + input AssociateParamsInput { + _: String + } `; diff --git a/packages/rest-express/src/endpoints/mfa/associate.ts b/packages/rest-express/src/endpoints/mfa/associate.ts index f10caeff5..6e4b0c107 100644 --- a/packages/rest-express/src/endpoints/mfa/associate.ts +++ b/packages/rest-express/src/endpoints/mfa/associate.ts @@ -18,11 +18,11 @@ export const associate = (accountsServer: AccountsServer) => async ( const userAgent = getUserAgent(req); const ip = requestIp.getClientIp(req); - const { type } = req.body; + const { type, params } = req.body; const mfaAssociateResult = await accountsServer.mfa.associate( (req as any).userId, type, - req.body, + params, { userAgent, ip } ); res.json(mfaAssociateResult); @@ -39,11 +39,11 @@ export const associateByMfaToken = (accountsServer: AccountsServer) => async ( const userAgent = getUserAgent(req); const ip = requestIp.getClientIp(req); - const { mfaToken, type } = req.body; + const { mfaToken, type, params } = req.body; const mfaAssociateResult = await accountsServer.mfa.associateByMfaToken( mfaToken, type, - req.body, + params, { userAgent, ip } ); res.json(mfaAssociateResult); From 3c350819efe20ca67650964c75d3afc9d515852a Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 16 Jun 2020 15:45:44 +0200 Subject: [PATCH 117/146] allow custom associate params from client --- packages/client/src/accounts-client.ts | 8 ++++++-- packages/client/src/transport-interface.ts | 4 ++-- packages/graphql-client/src/graphql-client.ts | 6 ++++-- .../src/graphql/accounts-mfa/associate.mutation.ts | 4 ++-- .../accounts-mfa/associateByMfaToken.mutation.ts | 4 ++-- packages/rest-client/src/rest-client.ts | 13 +++++++++---- 6 files changed, 25 insertions(+), 14 deletions(-) diff --git a/packages/client/src/accounts-client.ts b/packages/client/src/accounts-client.ts index e49eca1a7..2db27f3c3 100644 --- a/packages/client/src/accounts-client.ts +++ b/packages/client/src/accounts-client.ts @@ -204,8 +204,12 @@ export class AccountsClient { return this.transport.mfaChallenge(mfaToken, authenticatorId); } - public mfaAssociate(type: string) { - return this.transport.mfaAssociate(type); + public mfaAssociate(type: string, params?: any) { + return this.transport.mfaAssociate(type, params); + } + + public mfaAssociateByMfaToken(mfaToken: string, type: string, params?: any) { + return this.transport.mfaAssociateByMfaToken(mfaToken, type, params); } public authenticators() { diff --git a/packages/client/src/transport-interface.ts b/packages/client/src/transport-interface.ts index 9aef87378..f6e45036b 100644 --- a/packages/client/src/transport-interface.ts +++ b/packages/client/src/transport-interface.ts @@ -43,7 +43,7 @@ export interface TransportInterface extends TransportMfaInterface { interface TransportMfaInterface { authenticators(): Promise; authenticatorsByMfaToken(mfaToken?: string): Promise; - mfaAssociate(type: string): Promise; - mfaAssociateByMfaToken(mfaToken: string, type: string): Promise; + mfaAssociate(type: string, params?: any): Promise; + mfaAssociateByMfaToken(mfaToken: string, type: string, params?: any): Promise; mfaChallenge(mfaToken: string, authenticatorId: string): Promise; } diff --git a/packages/graphql-client/src/graphql-client.ts b/packages/graphql-client/src/graphql-client.ts index 5a613a566..42d8f1ed8 100644 --- a/packages/graphql-client/src/graphql-client.ts +++ b/packages/graphql-client/src/graphql-client.ts @@ -202,22 +202,24 @@ export default class GraphQLClient implements TransportInterface { /** * @inheritDoc */ - public async mfaAssociate(type: string): Promise { + public async mfaAssociate(type: string, params?: any): Promise { return this.mutate(associateMutation(this.options.associateFieldsFragment), 'associate', { type, + params, }); } /** * @inheritDoc */ - public async mfaAssociateByMfaToken(mfaToken: string, type: string): Promise { + public async mfaAssociateByMfaToken(mfaToken: string, type: string, params?: any): Promise { return this.mutate( associateByMfaTokenMutation(this.options.associateFieldsFragment), 'associateByMfaToken', { mfaToken, type, + params, } ); } diff --git a/packages/graphql-client/src/graphql/accounts-mfa/associate.mutation.ts b/packages/graphql-client/src/graphql/accounts-mfa/associate.mutation.ts index 49545b009..a54d47994 100644 --- a/packages/graphql-client/src/graphql/accounts-mfa/associate.mutation.ts +++ b/packages/graphql-client/src/graphql/accounts-mfa/associate.mutation.ts @@ -1,8 +1,8 @@ import gql from 'graphql-tag'; export const associateMutation = (associateFieldsFragment?: any) => gql` - mutation associate($type: String!) { - associate(type: $type) { + mutation associate($type: String!, $params: AssociateParamsInput) { + associate(type: $type, params: $params) { ... on OTPAssociationResult { mfaToken authenticatorId diff --git a/packages/graphql-client/src/graphql/accounts-mfa/associateByMfaToken.mutation.ts b/packages/graphql-client/src/graphql/accounts-mfa/associateByMfaToken.mutation.ts index f71d5669f..8871b774d 100644 --- a/packages/graphql-client/src/graphql/accounts-mfa/associateByMfaToken.mutation.ts +++ b/packages/graphql-client/src/graphql/accounts-mfa/associateByMfaToken.mutation.ts @@ -1,8 +1,8 @@ import gql from 'graphql-tag'; export const associateByMfaTokenMutation = (associateFieldsFragment?: any) => gql` - mutation associateByMfaToken($mfaToken: String!, $type: String!) { - associateByMfaToken(mfaToken: $mfaToken, type: $type) { + mutation associateByMfaToken($mfaToken: String!, $type: String!, $params: AssociateParamsInput) { + associateByMfaToken(mfaToken: $mfaToken, type: $type, params: $params) { ... on OTPAssociationResult { mfaToken authenticatorId diff --git a/packages/rest-client/src/rest-client.ts b/packages/rest-client/src/rest-client.ts index eeb32bfc4..e050f144b 100644 --- a/packages/rest-client/src/rest-client.ts +++ b/packages/rest-client/src/rest-client.ts @@ -254,18 +254,23 @@ export class RestClient implements TransportInterface { return this.fetch(`mfa/challenge`, args, customHeaders); } - public async mfaAssociate(type: string, customHeaders?: object) { + public async mfaAssociate(type: string, params?: any, customHeaders?: object) { const args = { method: 'POST', - body: JSON.stringify({ type }), + body: JSON.stringify({ type, params }), }; return this.authFetch(`mfa/associate`, args, customHeaders); } - public async mfaAssociateByMfaToken(mfaToken: string, type: string, customHeaders?: object) { + public async mfaAssociateByMfaToken( + mfaToken: string, + type: string, + params?: any, + customHeaders?: object + ) { const args = { method: 'POST', - body: JSON.stringify({ mfaToken, type }), + body: JSON.stringify({ mfaToken, type, params }), }; return this.fetch(`mfa/associateByMfaToken`, args, customHeaders); } From b10af60147a4fd8f67de3e4777ffc5c2fbd5bc54 Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 16 Jun 2020 16:03:41 +0200 Subject: [PATCH 118/146] Update package.json --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index b6d6e0682..ac712da6b 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "private": true, - "version": "0.22.0", + "version": "0.27.0", "scripts": { "setup": "lerna bootstrap; yarn run link", "start": "lerna exec -- yarn start", From 9d3a051504a7c8a1698fd3c9cd8b1dbb11fcd906 Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 16 Jun 2020 16:14:18 +0200 Subject: [PATCH 119/146] v0.28.0-alpha.0 --- examples/accounts-boost/package.json | 4 ++-- .../package.json | 12 +++++----- .../graphql-server-typescript/package.json | 14 +++++------ .../react-graphql-typescript/package.json | 10 ++++---- examples/react-rest-typescript/package.json | 8 +++---- examples/rest-express-typescript/package.json | 12 +++++----- lerna.json | 2 +- packages/apollo-link-accounts/package.json | 4 ++-- packages/authenticator-otp/package.json | 6 ++--- packages/boost/package.json | 10 ++++---- packages/client-password/package.json | 6 ++--- packages/client/package.json | 4 ++-- packages/database-manager/package.json | 4 ++-- packages/database-mongo/package.json | 6 ++--- packages/database-redis/package.json | 6 ++--- packages/database-tests/package.json | 4 ++-- packages/database-typeorm/package.json | 6 ++--- packages/e2e/package.json | 24 +++++++++---------- packages/error/package.json | 2 +- packages/express-session/package.json | 6 ++--- packages/graphql-api/package.json | 8 +++---- packages/graphql-client/package.json | 6 ++--- packages/oauth-instagram/package.json | 4 ++-- packages/oauth-twitter/package.json | 4 ++-- packages/oauth/package.json | 6 ++--- packages/password/package.json | 8 +++---- packages/rest-client/package.json | 6 ++--- packages/rest-express/package.json | 8 +++---- packages/server/package.json | 4 ++-- packages/two-factor/package.json | 4 ++-- packages/types/package.json | 2 +- 31 files changed, 105 insertions(+), 105 deletions(-) diff --git a/examples/accounts-boost/package.json b/examples/accounts-boost/package.json index 5580b13a7..11f8d0e8f 100644 --- a/examples/accounts-boost/package.json +++ b/examples/accounts-boost/package.json @@ -1,7 +1,7 @@ { "name": "@examples/accounts-boost", "private": true, - "version": "0.27.0", + "version": "0.28.0-alpha.0", "main": "lib/index.js", "license": "MIT", "scripts": { @@ -13,7 +13,7 @@ "test": "yarn build" }, "dependencies": { - "@accounts/boost": "^0.27.0", + "@accounts/boost": "^0.28.0-alpha.0", "@graphql-toolkit/schema-merging": "0.10.6", "apollo-link-context": "1.0.20", "apollo-link-http": "1.5.17", diff --git a/examples/graphql-server-typeorm-postgres/package.json b/examples/graphql-server-typeorm-postgres/package.json index 6f6dbd103..d1d93312a 100755 --- a/examples/graphql-server-typeorm-postgres/package.json +++ b/examples/graphql-server-typeorm-postgres/package.json @@ -1,7 +1,7 @@ { "name": "@examples/graphql-typeorm-typescript", "private": true, - "version": "0.27.0", + "version": "0.28.0-alpha.0", "main": "lib/index.js", "license": "Unlicensed", "scripts": { @@ -13,10 +13,10 @@ "test": "yarn build" }, "dependencies": { - "@accounts/graphql-api": "^0.27.0", - "@accounts/password": "^0.27.0", - "@accounts/server": "^0.27.0", - "@accounts/typeorm": "^0.27.0", + "@accounts/graphql-api": "^0.28.0-alpha.0", + "@accounts/password": "^0.28.0-alpha.0", + "@accounts/server": "^0.28.0-alpha.0", + "@accounts/typeorm": "^0.28.0-alpha.0", "@graphql-modules/core": "0.7.16", "@graphql-toolkit/schema-merging": "0.10.6", "apollo-server": "2.14.4", @@ -25,7 +25,7 @@ "typeorm": "0.2.25" }, "devDependencies": { - "@accounts/types": "^0.27.0", + "@accounts/types": "^0.28.0-alpha.0", "@types/node": "14.0.13", "nodemon": "2.0.3", "ts-node": "8.10.1", diff --git a/examples/graphql-server-typescript/package.json b/examples/graphql-server-typescript/package.json index 246144ba7..ece12218e 100644 --- a/examples/graphql-server-typescript/package.json +++ b/examples/graphql-server-typescript/package.json @@ -1,7 +1,7 @@ { "name": "@examples/graphql-server-typescript", "private": true, - "version": "0.27.0", + "version": "0.28.0-alpha.0", "main": "lib/index.js", "license": "MIT", "scripts": { @@ -10,12 +10,12 @@ "test": "yarn build" }, "dependencies": { - "@accounts/database-manager": "^0.27.0", - "@accounts/graphql-api": "^0.27.0", - "@accounts/mongo": "^0.27.0", - "@accounts/password": "^0.27.0", - "@accounts/rest-express": "^0.27.0", - "@accounts/server": "^0.27.0", + "@accounts/database-manager": "^0.28.0-alpha.0", + "@accounts/graphql-api": "^0.28.0-alpha.0", + "@accounts/mongo": "^0.28.0-alpha.0", + "@accounts/password": "^0.28.0-alpha.0", + "@accounts/rest-express": "^0.28.0-alpha.0", + "@accounts/server": "^0.28.0-alpha.0", "@graphql-modules/core": "0.7.16", "@graphql-toolkit/schema-merging": "0.10.6", "apollo-server": "2.14.4", diff --git a/examples/react-graphql-typescript/package.json b/examples/react-graphql-typescript/package.json index 19319d737..4589cca3a 100644 --- a/examples/react-graphql-typescript/package.json +++ b/examples/react-graphql-typescript/package.json @@ -1,6 +1,6 @@ { "name": "@examples/react-graphql-typescript", - "version": "0.27.0", + "version": "0.28.0-alpha.0", "private": true, "scripts": { "start": "SKIP_PREFLIGHT_CHECK=true react-scripts start", @@ -24,10 +24,10 @@ ] }, "dependencies": { - "@accounts/apollo-link": "^0.27.0", - "@accounts/client": "^0.27.0", - "@accounts/client-password": "^0.27.0", - "@accounts/graphql-client": "^0.27.0", + "@accounts/apollo-link": "^0.28.0-alpha.0", + "@accounts/client": "^0.28.0-alpha.0", + "@accounts/client-password": "^0.28.0-alpha.0", + "@accounts/graphql-client": "^0.28.0-alpha.0", "@apollo/react-hooks": "3.1.5", "@material-ui/core": "4.9.13", "@material-ui/styles": "4.9.13", diff --git a/examples/react-rest-typescript/package.json b/examples/react-rest-typescript/package.json index 292240170..ed708f125 100644 --- a/examples/react-rest-typescript/package.json +++ b/examples/react-rest-typescript/package.json @@ -1,6 +1,6 @@ { "name": "@examples/react-rest-typescript", - "version": "0.27.0", + "version": "0.28.0-alpha.0", "private": true, "scripts": { "start": "SKIP_PREFLIGHT_CHECK=true react-scripts start", @@ -24,9 +24,9 @@ ] }, "dependencies": { - "@accounts/client": "^0.27.0", - "@accounts/client-password": "^0.27.0", - "@accounts/rest-client": "^0.27.0", + "@accounts/client": "^0.28.0-alpha.0", + "@accounts/client-password": "^0.28.0-alpha.0", + "@accounts/rest-client": "^0.28.0-alpha.0", "@material-ui/core": "4.9.13", "@material-ui/icons": "4.9.1", "@material-ui/lab": "4.0.0-alpha.50", diff --git a/examples/rest-express-typescript/package.json b/examples/rest-express-typescript/package.json index 36290d418..905e56444 100644 --- a/examples/rest-express-typescript/package.json +++ b/examples/rest-express-typescript/package.json @@ -1,7 +1,7 @@ { "name": "@examples/rest-express-typescript", "private": true, - "version": "0.27.0", + "version": "0.28.0-alpha.0", "main": "lib/index.js", "license": "MIT", "scripts": { @@ -10,11 +10,11 @@ "test": "yarn build" }, "dependencies": { - "@accounts/authenticator-otp": "^0.27.0", - "@accounts/mongo": "^0.27.0", - "@accounts/password": "^0.27.0", - "@accounts/rest-express": "^0.27.0", - "@accounts/server": "^0.27.0", + "@accounts/authenticator-otp": "^0.28.0-alpha.0", + "@accounts/mongo": "^0.28.0-alpha.0", + "@accounts/password": "^0.28.0-alpha.0", + "@accounts/rest-express": "^0.28.0-alpha.0", + "@accounts/server": "^0.28.0-alpha.0", "body-parser": "1.19.0", "cors": "2.8.5", "express": "4.17.1", diff --git a/lerna.json b/lerna.json index 94369c98e..72f6734ae 100644 --- a/lerna.json +++ b/lerna.json @@ -2,5 +2,5 @@ "lerna": "2.11.0", "npmClient": "yarn", "useWorkspaces": true, - "version": "0.27.0" + "version": "0.28.0-alpha.0" } diff --git a/packages/apollo-link-accounts/package.json b/packages/apollo-link-accounts/package.json index 1ff34267b..0028f36ba 100644 --- a/packages/apollo-link-accounts/package.json +++ b/packages/apollo-link-accounts/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/apollo-link", - "version": "0.27.0", + "version": "0.28.0-alpha.0", "description": "Apollo link for account-js", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -20,7 +20,7 @@ }, "license": "MIT", "devDependencies": { - "@accounts/client": "^0.27.0", + "@accounts/client": "^0.28.0-alpha.0", "apollo-link": "1.2.14", "rimraf": "3.0.2" }, diff --git a/packages/authenticator-otp/package.json b/packages/authenticator-otp/package.json index 8b648b755..412fde3f2 100644 --- a/packages/authenticator-otp/package.json +++ b/packages/authenticator-otp/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/authenticator-otp", - "version": "0.27.0", + "version": "0.28.0-alpha.0", "description": "@accounts/authenticator-otp", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -29,14 +29,14 @@ "author": "Leo Pradel", "license": "MIT", "devDependencies": { - "@accounts/server": "^0.27.0", + "@accounts/server": "^0.28.0-alpha.0", "@types/jest": "24.0.23", "@types/node": "12.7.4", "jest": "24.9.0", "rimraf": "3.0.0" }, "dependencies": { - "@accounts/types": "^0.27.0", + "@accounts/types": "^0.28.0-alpha.0", "otplib": "11.0.1", "tslib": "1.10.0" }, diff --git a/packages/boost/package.json b/packages/boost/package.json index 834b3b127..72752f3b1 100644 --- a/packages/boost/package.json +++ b/packages/boost/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/boost", - "version": "0.27.0", + "version": "0.28.0-alpha.0", "description": "Ready to use GraphQL accounts server", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -23,10 +23,10 @@ "rimraf": "3.0.2" }, "dependencies": { - "@accounts/database-manager": "^0.27.0", - "@accounts/graphql-api": "^0.27.0", - "@accounts/server": "^0.27.0", - "@accounts/types": "^0.27.0", + "@accounts/database-manager": "^0.28.0-alpha.0", + "@accounts/graphql-api": "^0.28.0-alpha.0", + "@accounts/server": "^0.28.0-alpha.0", + "@accounts/types": "^0.28.0-alpha.0", "@graphql-modules/core": "0.7.16", "apollo-server": "^2.9.3", "graphql": "^14.5.4", diff --git a/packages/client-password/package.json b/packages/client-password/package.json index 283f1d4fb..9053b1606 100644 --- a/packages/client-password/package.json +++ b/packages/client-password/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/client-password", - "version": "0.27.0", + "version": "0.28.0-alpha.0", "description": "@accounts/client-password", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -35,8 +35,8 @@ "rimraf": "3.0.2" }, "dependencies": { - "@accounts/client": "^0.27.0", - "@accounts/types": "^0.27.0", + "@accounts/client": "^0.28.0-alpha.0", + "@accounts/types": "^0.28.0-alpha.0", "tslib": "2.0.0" } } diff --git a/packages/client/package.json b/packages/client/package.json index de9125aca..64ec263ef 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/client", - "version": "0.27.0", + "version": "0.28.0-alpha.0", "description": "Fullstack authentication and accounts-management", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -53,7 +53,7 @@ "rimraf": "3.0.2" }, "dependencies": { - "@accounts/types": "^0.27.0", + "@accounts/types": "^0.28.0-alpha.0", "jwt-decode": "2.2.0", "tslib": "2.0.0" } diff --git a/packages/database-manager/package.json b/packages/database-manager/package.json index e5093c235..679c707af 100644 --- a/packages/database-manager/package.json +++ b/packages/database-manager/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/database-manager", - "version": "0.27.0", + "version": "0.28.0-alpha.0", "description": "Accounts Database Manager, allow the use of separate databases for session and user", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -41,7 +41,7 @@ "rimraf": "3.0.2" }, "dependencies": { - "@accounts/types": "^0.27.0", + "@accounts/types": "^0.28.0-alpha.0", "tslib": "2.0.0" } } diff --git a/packages/database-mongo/package.json b/packages/database-mongo/package.json index 45724c62a..bc33c9b58 100644 --- a/packages/database-mongo/package.json +++ b/packages/database-mongo/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/mongo", - "version": "0.27.0", + "version": "0.28.0-alpha.0", "description": "MongoDB adaptor for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -29,7 +29,7 @@ "author": "Leo Pradel", "license": "MIT", "devDependencies": { - "@accounts/database-tests": "^0.27.0", + "@accounts/database-tests": "^0.28.0-alpha.0", "@types/jest": "25.2.1", "@types/lodash": "4.14.150", "@types/mongodb": "3.5.16", @@ -37,7 +37,7 @@ "jest": "26.0.1" }, "dependencies": { - "@accounts/types": "^0.27.0", + "@accounts/types": "^0.28.0-alpha.0", "lodash": "^4.17.15", "mongodb": "^3.4.1", "tslib": "2.0.0" diff --git a/packages/database-redis/package.json b/packages/database-redis/package.json index 0dd9be1d1..71f5fcc25 100644 --- a/packages/database-redis/package.json +++ b/packages/database-redis/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/redis", - "version": "0.27.0", + "version": "0.28.0-alpha.0", "description": "Redis adaptor for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -32,7 +32,7 @@ "author": "Leo Pradel", "license": "MIT", "devDependencies": { - "@accounts/database-tests": "^0.27.0", + "@accounts/database-tests": "^0.28.0-alpha.0", "@types/ioredis": "4.14.9", "@types/jest": "25.2.1", "@types/lodash": "4.14.150", @@ -41,7 +41,7 @@ "jest": "26.0.1" }, "dependencies": { - "@accounts/types": "^0.27.0", + "@accounts/types": "^0.28.0-alpha.0", "ioredis": "^4.14.1", "lodash": "^4.17.15", "shortid": "^2.2.15", diff --git a/packages/database-tests/package.json b/packages/database-tests/package.json index fe886ef2c..d023a0ee9 100644 --- a/packages/database-tests/package.json +++ b/packages/database-tests/package.json @@ -1,7 +1,7 @@ { "name": "@accounts/database-tests", "private": true, - "version": "0.27.0", + "version": "0.28.0-alpha.0", "main": "lib/index.js", "typings": "lib/index.d.ts", "scripts": { @@ -23,7 +23,7 @@ "jest": "26.0.1" }, "dependencies": { - "@accounts/types": "^0.27.0", + "@accounts/types": "^0.28.0-alpha.0", "tslib": "2.0.0" } } diff --git a/packages/database-typeorm/package.json b/packages/database-typeorm/package.json index 25ae50cc7..fa009d9c1 100644 --- a/packages/database-typeorm/package.json +++ b/packages/database-typeorm/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/typeorm", - "version": "0.27.0", + "version": "0.28.0-alpha.0", "description": "TypeORM adaptor for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -26,14 +26,14 @@ "author": "Birkir Gudjonsson ", "license": "MIT", "devDependencies": { - "@accounts/database-tests": "^0.27.0", + "@accounts/database-tests": "^0.28.0-alpha.0", "@types/jest": "25.2.1", "@types/node": "14.0.13", "jest": "26.0.1", "pg": "8.1.0" }, "dependencies": { - "@accounts/types": "^0.27.0", + "@accounts/types": "^0.28.0-alpha.0", "lodash": "^4.17.15", "reflect-metadata": "^0.1.13", "tslib": "2.0.0", diff --git a/packages/e2e/package.json b/packages/e2e/package.json index d27f45594..79222714c 100644 --- a/packages/e2e/package.json +++ b/packages/e2e/package.json @@ -1,7 +1,7 @@ { "name": "@accounts/e2e", "private": true, - "version": "0.27.0", + "version": "0.28.0-alpha.0", "main": "lib/index.js", "typings": "lib/index.d.ts", "scripts": { @@ -32,17 +32,17 @@ "jest-localstorage-mock": "2.4.2" }, "dependencies": { - "@accounts/client": "^0.27.0", - "@accounts/client-password": "^0.27.0", - "@accounts/graphql-api": "^0.27.0", - "@accounts/graphql-client": "^0.27.0", - "@accounts/mongo": "^0.27.0", - "@accounts/password": "^0.27.0", - "@accounts/rest-client": "^0.27.0", - "@accounts/rest-express": "^0.27.0", - "@accounts/server": "^0.27.0", - "@accounts/typeorm": "^0.27.0", - "@accounts/types": "^0.27.0", + "@accounts/client": "^0.28.0-alpha.0", + "@accounts/client-password": "^0.28.0-alpha.0", + "@accounts/graphql-api": "^0.28.0-alpha.0", + "@accounts/graphql-client": "^0.28.0-alpha.0", + "@accounts/mongo": "^0.28.0-alpha.0", + "@accounts/password": "^0.28.0-alpha.0", + "@accounts/rest-client": "^0.28.0-alpha.0", + "@accounts/rest-express": "^0.28.0-alpha.0", + "@accounts/server": "^0.28.0-alpha.0", + "@accounts/typeorm": "^0.28.0-alpha.0", + "@accounts/types": "^0.28.0-alpha.0", "@graphql-modules/core": "0.7.16", "apollo-boost": "0.4.8", "apollo-server": "2.14.4", diff --git a/packages/error/package.json b/packages/error/package.json index 71a38b5be..287c8b3d2 100644 --- a/packages/error/package.json +++ b/packages/error/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/error", - "version": "0.27.0", + "version": "0.28.0-alpha.0", "description": "Accounts-js Error", "main": "lib/index.js", "typings": "lib/index.d.ts", diff --git a/packages/express-session/package.json b/packages/express-session/package.json index e3d89d740..efeb73cc3 100644 --- a/packages/express-session/package.json +++ b/packages/express-session/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/express-session", - "version": "0.27.0", + "version": "0.28.0-alpha.0", "description": "", "main": "lib/index", "typings": "lib/index", @@ -34,7 +34,7 @@ "author": "Kamil Kisiela", "license": "MIT", "devDependencies": { - "@accounts/server": "^0.27.0", + "@accounts/server": "^0.28.0-alpha.0", "@types/express": "4.17.6", "@types/express-session": "1.17.0", "@types/jest": "25.2.1", @@ -50,7 +50,7 @@ "express-session": "^1.15.6" }, "dependencies": { - "@accounts/types": "^0.27.0", + "@accounts/types": "^0.28.0-alpha.0", "lodash": "^4.17.15", "request-ip": "^2.1.3", "tslib": "2.0.0" diff --git a/packages/graphql-api/package.json b/packages/graphql-api/package.json index 7e9dad76c..60796ed13 100644 --- a/packages/graphql-api/package.json +++ b/packages/graphql-api/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/graphql-api", - "version": "0.27.0", + "version": "0.28.0-alpha.0", "description": "Server side GraphQL transport for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -28,9 +28,9 @@ }, "homepage": "https://github.com/js-accounts/graphql-api", "devDependencies": { - "@accounts/password": "^0.27.0", - "@accounts/server": "^0.27.0", - "@accounts/types": "^0.27.0", + "@accounts/password": "^0.28.0-alpha.0", + "@accounts/server": "^0.28.0-alpha.0", + "@accounts/types": "^0.28.0-alpha.0", "@graphql-codegen/add": "1.13.5", "@graphql-codegen/cli": "1.13.5", "@graphql-codegen/typescript": "1.13.5", diff --git a/packages/graphql-client/package.json b/packages/graphql-client/package.json index 50e8595ca..b1d13e044 100644 --- a/packages/graphql-client/package.json +++ b/packages/graphql-client/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/graphql-client", - "version": "0.27.0", + "version": "0.28.0-alpha.0", "description": "GraphQL client transport for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -30,8 +30,8 @@ "lodash": "4.17.15" }, "dependencies": { - "@accounts/client": "^0.27.0", - "@accounts/types": "^0.27.0", + "@accounts/client": "^0.28.0-alpha.0", + "@accounts/types": "^0.28.0-alpha.0", "graphql-tag": "^2.10.0", "tslib": "2.0.0" }, diff --git a/packages/oauth-instagram/package.json b/packages/oauth-instagram/package.json index 19e5d32d8..965c37730 100644 --- a/packages/oauth-instagram/package.json +++ b/packages/oauth-instagram/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/oauth-instagram", - "version": "0.27.0", + "version": "0.28.0-alpha.0", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -18,7 +18,7 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/oauth": "^0.27.0", + "@accounts/oauth": "^0.28.0-alpha.0", "request": "^2.88.0", "request-promise": "^4.2.5", "tslib": "2.0.0" diff --git a/packages/oauth-twitter/package.json b/packages/oauth-twitter/package.json index 153ef971d..cb8cb823a 100644 --- a/packages/oauth-twitter/package.json +++ b/packages/oauth-twitter/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/oauth-twitter", - "version": "0.27.0", + "version": "0.28.0-alpha.0", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -18,7 +18,7 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/oauth": "^0.27.0", + "@accounts/oauth": "^0.28.0-alpha.0", "oauth": "^0.9.15", "tslib": "2.0.0" }, diff --git a/packages/oauth/package.json b/packages/oauth/package.json index ad2dcd395..f7c98236b 100644 --- a/packages/oauth/package.json +++ b/packages/oauth/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/oauth", - "version": "0.27.0", + "version": "0.28.0-alpha.0", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -18,11 +18,11 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/types": "^0.27.0", + "@accounts/types": "^0.28.0-alpha.0", "tslib": "2.0.0" }, "devDependencies": { - "@accounts/server": "^0.27.0", + "@accounts/server": "^0.28.0-alpha.0", "@types/jest": "25.2.1", "@types/node": "14.0.13", "jest": "26.0.1" diff --git a/packages/password/package.json b/packages/password/package.json index a11c3d338..f47092004 100644 --- a/packages/password/package.json +++ b/packages/password/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/password", - "version": "0.27.0", + "version": "0.28.0-alpha.0", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -18,14 +18,14 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/two-factor": "^0.27.0", + "@accounts/two-factor": "^0.28.0-alpha.0", "bcryptjs": "^2.4.3", "lodash": "^4.17.15", "tslib": "2.0.0" }, "devDependencies": { - "@accounts/server": "^0.27.0", - "@accounts/types": "^0.27.0", + "@accounts/server": "^0.28.0-alpha.0", + "@accounts/types": "^0.28.0-alpha.0", "@types/bcryptjs": "2.4.2", "@types/jest": "25.2.1", "@types/lodash": "4.14.150", diff --git a/packages/rest-client/package.json b/packages/rest-client/package.json index da415d29f..40c27df1a 100644 --- a/packages/rest-client/package.json +++ b/packages/rest-client/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/rest-client", - "version": "0.27.0", + "version": "0.28.0-alpha.0", "description": "REST client for accounts", "main": "lib/index", "typings": "lib/index", @@ -38,7 +38,7 @@ "author": "Tim Mikeladze", "license": "MIT", "devDependencies": { - "@accounts/client": "^0.27.0", + "@accounts/client": "^0.28.0-alpha.0", "@types/jest": "25.2.1", "@types/lodash": "4.14.150", "@types/node": "14.0.13", @@ -49,7 +49,7 @@ "@accounts/client": "^0.19.0" }, "dependencies": { - "@accounts/types": "^0.27.0", + "@accounts/types": "^0.28.0-alpha.0", "lodash": "^4.17.15", "tslib": "2.0.0" } diff --git a/packages/rest-express/package.json b/packages/rest-express/package.json index ed7124349..101d6ce59 100644 --- a/packages/rest-express/package.json +++ b/packages/rest-express/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/rest-express", - "version": "0.27.0", + "version": "0.28.0-alpha.0", "description": "Server side REST express middleware for accounts", "main": "lib/index", "typings": "lib/index", @@ -35,8 +35,8 @@ "author": "Tim Mikeladze", "license": "MIT", "devDependencies": { - "@accounts/password": "^0.27.0", - "@accounts/server": "^0.27.0", + "@accounts/password": "^0.28.0-alpha.0", + "@accounts/server": "^0.28.0-alpha.0", "@types/express": "4.17.6", "@types/jest": "25.2.1", "@types/lodash": "4.14.150", @@ -48,7 +48,7 @@ "@accounts/server": "^0.19.0" }, "dependencies": { - "@accounts/types": "^0.27.0", + "@accounts/types": "^0.28.0-alpha.0", "express": "^4.17.0", "lodash": "^4.17.15", "request-ip": "^2.1.3", diff --git a/packages/server/package.json b/packages/server/package.json index cc5036094..86a04f7ed 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/server", - "version": "0.27.0", + "version": "0.28.0-alpha.0", "description": "Fullstack authentication and accounts-management", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -40,7 +40,7 @@ "author": "Tim Mikeladze", "license": "MIT", "dependencies": { - "@accounts/types": "^0.27.0", + "@accounts/types": "^0.28.0-alpha.0", "@types/jsonwebtoken": "8.3.9", "emittery": "0.5.1", "jsonwebtoken": "8.5.1", diff --git a/packages/two-factor/package.json b/packages/two-factor/package.json index 2af4875b9..d420c4b96 100644 --- a/packages/two-factor/package.json +++ b/packages/two-factor/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/two-factor", - "version": "0.27.0", + "version": "0.28.0-alpha.0", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -22,7 +22,7 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/types": "^0.27.0", + "@accounts/types": "^0.28.0-alpha.0", "@types/lodash": "^4.14.138", "@types/speakeasy": "2.0.2", "lodash": "^4.17.15", diff --git a/packages/types/package.json b/packages/types/package.json index c1c4bda74..ca2f4d29a 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/types", - "version": "0.27.0", + "version": "0.28.0-alpha.0", "description": "Accounts-js Types", "main": "lib/index.js", "typings": "lib/index.d.ts", From abe04ef602c4be6d86a1ae5c3a27585903c8ae3b Mon Sep 17 00:00:00 2001 From: pradel Date: Thu, 18 Jun 2020 09:51:16 +0200 Subject: [PATCH 120/146] named import otplib --- packages/authenticator-otp/src/index.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/authenticator-otp/src/index.ts b/packages/authenticator-otp/src/index.ts index 30e11e432..86af724fc 100644 --- a/packages/authenticator-otp/src/index.ts +++ b/packages/authenticator-otp/src/index.ts @@ -5,7 +5,7 @@ import { MfaChallenge, } from '@accounts/types'; import { AccountsServer, generateRandomToken } from '@accounts/server'; -import * as otplib from 'otplib'; +import { authenticator as optlibAuthenticator } from 'otplib'; interface DbAuthenticatorOtp extends Authenticator { secret: string; @@ -55,9 +55,9 @@ export class AuthenticatorOtp implements AuthenticatorService { typeof userIdOrMfaChallenge === 'string' ? userIdOrMfaChallenge : userIdOrMfaChallenge.userId; const mfaChallenge = typeof userIdOrMfaChallenge === 'string' ? null : userIdOrMfaChallenge; - const secret = otplib.authenticator.generateSecret(); + const secret = optlibAuthenticator.generateSecret(); const userName = this.options.userName ? await this.options.userName(userId) : userId; - const otpauthUri = otplib.authenticator.keyuri(userName, this.options.appName, secret); + const otpauthUri = optlibAuthenticator.keyuri(userName, this.options.appName, secret); const authenticatorId = await this.db.createAuthenticator({ type: this.serviceName, @@ -104,7 +104,7 @@ export class AuthenticatorOtp implements AuthenticatorService { throw new Error('Code required'); } - return otplib.authenticator.check(code, authenticator.secret); + return optlibAuthenticator.check(code, authenticator.secret); } /** From 245c43c1a347f319599e2b9abaef2864f63d00af Mon Sep 17 00:00:00 2001 From: pradel Date: Thu, 18 Jun 2020 10:40:32 +0200 Subject: [PATCH 121/146] improve authenticator-otp tests --- packages/authenticator-otp/__tests__/index.ts | 42 ++++++++++++++++--- packages/authenticator-otp/package.json | 6 +-- packages/authenticator-otp/src/index.ts | 1 - yarn.lock | 24 ++++------- 4 files changed, 49 insertions(+), 24 deletions(-) diff --git a/packages/authenticator-otp/__tests__/index.ts b/packages/authenticator-otp/__tests__/index.ts index e811f50dc..eb319b677 100644 --- a/packages/authenticator-otp/__tests__/index.ts +++ b/packages/authenticator-otp/__tests__/index.ts @@ -3,8 +3,10 @@ import { AuthenticatorOtp } from '../src'; const authenticatorOtp = new AuthenticatorOtp(); const mockedDb = { - createAuthenticator: jest.fn(), + createAuthenticator: jest.fn(() => Promise.resolve('authenticatorIdTest')), findAuthenticatorById: jest.fn(), + createMfaChallenge: jest.fn(), + updateMfaChallenge: jest.fn(), }; authenticatorOtp.setStore(mockedDb as any); @@ -15,9 +17,8 @@ describe('AuthenticatorOtp', () => { }); describe('associate', () => { - it('should create a new database entry and return the secret and url', async () => { - mockedDb.createAuthenticator.mockResolvedValueOnce('authenticatorIdtest'); - const result = await authenticatorOtp.associate('userIdTest', {}); + it('create a new mfa challenge when userId is passed', async () => { + const result = await authenticatorOtp.associate('userIdTest'); expect(mockedDb.createAuthenticator).toHaveBeenCalledWith({ type: 'otp', @@ -25,8 +26,39 @@ describe('AuthenticatorOtp', () => { secret: expect.any(String), active: false, }); + expect(mockedDb.createMfaChallenge).toHaveBeenCalledWith({ + authenticatorId: 'authenticatorIdTest', + scope: 'associate', + token: expect.any(String), + userId: 'userIdTest', + }); + expect(result).toEqual({ + id: 'authenticatorIdTest', + mfaToken: expect.any(String), + secret: expect.any(String), + otpauthUri: expect.any(String), + }); + }); + + it('update mfa challenge when challenge is passed', async () => { + const result = await authenticatorOtp.associate({ + id: 'mfaChallengeIdTest', + token: 'mfaChallengeTokenTest', + userId: 'userIdTest', + } as any); + + expect(mockedDb.createAuthenticator).toHaveBeenCalledWith({ + type: 'otp', + userId: 'userIdTest', + secret: expect.any(String), + active: false, + }); + expect(mockedDb.updateMfaChallenge).toHaveBeenCalledWith('mfaChallengeIdTest', { + authenticatorId: 'authenticatorIdTest', + }); expect(result).toEqual({ - id: 'authenticatorIdtest', + id: 'authenticatorIdTest', + mfaToken: expect.any(String), secret: expect.any(String), otpauthUri: expect.any(String), }); diff --git a/packages/authenticator-otp/package.json b/packages/authenticator-otp/package.json index 412fde3f2..27bbba136 100644 --- a/packages/authenticator-otp/package.json +++ b/packages/authenticator-otp/package.json @@ -30,10 +30,10 @@ "license": "MIT", "devDependencies": { "@accounts/server": "^0.28.0-alpha.0", - "@types/jest": "24.0.23", + "@types/jest": "26.0.0", "@types/node": "12.7.4", - "jest": "24.9.0", - "rimraf": "3.0.0" + "jest": "26.0.1", + "rimraf": "3.0.2" }, "dependencies": { "@accounts/types": "^0.28.0-alpha.0", diff --git a/packages/authenticator-otp/src/index.ts b/packages/authenticator-otp/src/index.ts index 86af724fc..fb7cc0025 100644 --- a/packages/authenticator-otp/src/index.ts +++ b/packages/authenticator-otp/src/index.ts @@ -75,7 +75,6 @@ export class AuthenticatorOtp implements AuthenticatorService { } else { // We create a new challenge for the authenticator so it can be verified later mfaToken = generateRandomToken(); - // associate.id refer to the authenticator id await this.db.createMfaChallenge({ userId, authenticatorId, diff --git a/yarn.lock b/yarn.lock index be0459df5..feb2e9698 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3357,13 +3357,6 @@ "@types/istanbul-lib-coverage" "*" "@types/istanbul-lib-report" "*" -"@types/jest@24.0.23": - version "24.0.23" - resolved "https://registry.yarnpkg.com/@types/jest/-/jest-24.0.23.tgz#046f8e2ade026fe831623e361a36b6fb9a4463e4" - integrity sha512-L7MBvwfNpe7yVPTXLn32df/EK+AMBFAFvZrRuArGs7npEWnlziUXK+5GMIUTI4NIuwok3XibsjXCs5HxviYXjg== - dependencies: - jest-diff "^24.3.0" - "@types/jest@25.2.1": version "25.2.1" resolved "https://registry.yarnpkg.com/@types/jest/-/jest-25.2.1.tgz#9544cd438607955381c1bdbdb97767a249297db5" @@ -3372,6 +3365,14 @@ jest-diff "^25.2.1" pretty-format "^25.2.1" +"@types/jest@26.0.0": + version "26.0.0" + resolved "https://registry.yarnpkg.com/@types/jest/-/jest-26.0.0.tgz#a6d7573dffa9c68cbbdf38f2e0de26f159e11134" + integrity sha512-/yeMsH9HQ1RLORlXAwoLXe8S98xxvhNtUz3yrgrwbaxYjT+6SFPZZRksmRKRA6L5vsUtSHeN71viDOTTyYAD+g== + dependencies: + jest-diff "^25.2.1" + pretty-format "^25.2.1" + "@types/json-schema@^7.0.3", "@types/json-schema@^7.0.4": version "7.0.5" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.5.tgz#dcce4430e64b443ba8945f0290fb564ad5bac6dd" @@ -10366,7 +10367,7 @@ jest-config@^26.0.1: micromatch "^4.0.2" pretty-format "^26.0.1" -jest-diff@^24.3.0, jest-diff@^24.9.0: +jest-diff@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-24.9.0.tgz#931b7d0d5778a1baf7452cb816e325e3724055da" integrity sha512-qMfrTs8AdJE2iqrTp0hzh7kTd2PQWrsFyj9tORoKmu32xjPjeE4NyjVRDz8ybYwqS2ik8N4hsIpiVTyFeo2lBQ== @@ -15661,13 +15662,6 @@ rimraf@2.6.3: dependencies: glob "^7.1.3" -rimraf@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.0.tgz#614176d4b3010b75e5c390eb0ee96f6dc0cebb9b" - integrity sha512-NDGVxTsjqfunkds7CqsOiEnxln4Bo7Nddl3XhS4pXg5OzwkLqJ971ZVAAnB+DDLnF76N+VnDEiBHaVV8I06SUg== - dependencies: - glob "^7.1.3" - rimraf@3.0.2, rimraf@^3.0.0: version "3.0.2" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" From c1479e1b213f50c9ded48bda0d1bca4019b03aea Mon Sep 17 00:00:00 2001 From: pradel Date: Fri, 17 Jul 2020 12:29:38 +0200 Subject: [PATCH 122/146] fix graphql client queries and mutations --- .../src/graphql/accounts-mfa/associate.mutation.ts | 2 +- .../src/graphql/accounts-mfa/authenticators.query.ts | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/graphql-client/src/graphql/accounts-mfa/associate.mutation.ts b/packages/graphql-client/src/graphql/accounts-mfa/associate.mutation.ts index a54d47994..0470fb202 100644 --- a/packages/graphql-client/src/graphql/accounts-mfa/associate.mutation.ts +++ b/packages/graphql-client/src/graphql/accounts-mfa/associate.mutation.ts @@ -7,7 +7,7 @@ export const associateMutation = (associateFieldsFragment?: any) => gql` mfaToken authenticatorId } - ${associateFieldsFragment} + ${associateFieldsFragment || ''} } } `; diff --git a/packages/graphql-client/src/graphql/accounts-mfa/authenticators.query.ts b/packages/graphql-client/src/graphql/accounts-mfa/authenticators.query.ts index 8a6219909..5c68563db 100644 --- a/packages/graphql-client/src/graphql/accounts-mfa/authenticators.query.ts +++ b/packages/graphql-client/src/graphql/accounts-mfa/authenticators.query.ts @@ -1,8 +1,8 @@ import gql from 'graphql-tag'; export const authenticatorsQuery = gql` - query authenticators() { - authenticators() { + query authenticators { + authenticators { id type active From 03d0aad30bb87a8d5de34524549013325b43d674 Mon Sep 17 00:00:00 2001 From: pradel Date: Mon, 20 Jul 2020 10:04:48 +0200 Subject: [PATCH 123/146] fix other client issues --- .../src/graphql/accounts-mfa/associateByMfaToken.mutation.ts | 2 +- .../src/graphql/accounts-mfa/authenticatorsByMfaToken.query.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/graphql-client/src/graphql/accounts-mfa/associateByMfaToken.mutation.ts b/packages/graphql-client/src/graphql/accounts-mfa/associateByMfaToken.mutation.ts index 8871b774d..e00c88a1e 100644 --- a/packages/graphql-client/src/graphql/accounts-mfa/associateByMfaToken.mutation.ts +++ b/packages/graphql-client/src/graphql/accounts-mfa/associateByMfaToken.mutation.ts @@ -7,7 +7,7 @@ export const associateByMfaTokenMutation = (associateFieldsFragment?: any) => gq mfaToken authenticatorId } - ${associateFieldsFragment} + ${associateFieldsFragment || ''} } } `; diff --git a/packages/graphql-client/src/graphql/accounts-mfa/authenticatorsByMfaToken.query.ts b/packages/graphql-client/src/graphql/accounts-mfa/authenticatorsByMfaToken.query.ts index 9edf77b61..c5771aada 100644 --- a/packages/graphql-client/src/graphql/accounts-mfa/authenticatorsByMfaToken.query.ts +++ b/packages/graphql-client/src/graphql/accounts-mfa/authenticatorsByMfaToken.query.ts @@ -1,7 +1,7 @@ import gql from 'graphql-tag'; export const authenticatorsByMfaTokenQuery = gql` - query authenticatorsByMfaToken($mfaToken: String) { + query authenticatorsByMfaToken($mfaToken: String!) { authenticatorsByMfaToken(mfaToken: $mfaToken) { id type From cdeb32e488cefb4042cf1fe092d92ea73a87c64f Mon Sep 17 00:00:00 2001 From: pradel Date: Mon, 20 Jul 2020 12:24:00 +0200 Subject: [PATCH 124/146] v0.28.0-alpha.1 --- examples/accounts-boost/package.json | 4 ++-- .../package.json | 12 +++++----- .../graphql-server-typescript/package.json | 14 +++++------ .../react-graphql-typescript/package.json | 10 ++++---- examples/react-rest-typescript/package.json | 8 +++---- examples/rest-express-typescript/package.json | 12 +++++----- lerna.json | 2 +- packages/apollo-link-accounts/package.json | 4 ++-- packages/authenticator-otp/package.json | 6 ++--- packages/boost/package.json | 10 ++++---- packages/client-password/package.json | 6 ++--- packages/client/package.json | 4 ++-- packages/database-manager/package.json | 4 ++-- packages/database-mongo/package.json | 6 ++--- packages/database-redis/package.json | 6 ++--- packages/database-tests/package.json | 4 ++-- packages/database-typeorm/package.json | 6 ++--- packages/e2e/package.json | 24 +++++++++---------- packages/error/package.json | 2 +- packages/express-session/package.json | 6 ++--- packages/graphql-api/package.json | 8 +++---- packages/graphql-client/package.json | 6 ++--- packages/oauth-instagram/package.json | 4 ++-- packages/oauth-twitter/package.json | 4 ++-- packages/oauth/package.json | 6 ++--- packages/password/package.json | 8 +++---- packages/rest-client/package.json | 6 ++--- packages/rest-express/package.json | 8 +++---- packages/server/package.json | 4 ++-- packages/two-factor/package.json | 4 ++-- packages/types/package.json | 2 +- 31 files changed, 105 insertions(+), 105 deletions(-) diff --git a/examples/accounts-boost/package.json b/examples/accounts-boost/package.json index 3760859ae..3082918ea 100644 --- a/examples/accounts-boost/package.json +++ b/examples/accounts-boost/package.json @@ -1,7 +1,7 @@ { "name": "@examples/accounts-boost", "private": true, - "version": "0.28.0-alpha.0", + "version": "0.28.0-alpha.1", "main": "lib/index.js", "license": "MIT", "scripts": { @@ -13,7 +13,7 @@ "test": "yarn build" }, "dependencies": { - "@accounts/boost": "^0.28.0-alpha.0", + "@accounts/boost": "^0.28.0-alpha.1", "@graphql-tools/merge": "6.0.11", "apollo-link-context": "1.0.20", "apollo-link-http": "1.5.17", diff --git a/examples/graphql-server-typeorm-postgres/package.json b/examples/graphql-server-typeorm-postgres/package.json index 2eff91cbf..8598686a4 100755 --- a/examples/graphql-server-typeorm-postgres/package.json +++ b/examples/graphql-server-typeorm-postgres/package.json @@ -1,7 +1,7 @@ { "name": "@examples/graphql-typeorm-typescript", "private": true, - "version": "0.28.0-alpha.0", + "version": "0.28.0-alpha.1", "main": "lib/index.js", "license": "Unlicensed", "scripts": { @@ -12,10 +12,10 @@ "test": "yarn build" }, "dependencies": { - "@accounts/graphql-api": "^0.28.0-alpha.0", - "@accounts/password": "^0.28.0-alpha.0", - "@accounts/server": "^0.28.0-alpha.0", - "@accounts/typeorm": "^0.28.0-alpha.0", + "@accounts/graphql-api": "^0.28.0-alpha.1", + "@accounts/password": "^0.28.0-alpha.1", + "@accounts/server": "^0.28.0-alpha.1", + "@accounts/typeorm": "^0.28.0-alpha.1", "@graphql-modules/core": "0.7.17", "@graphql-tools/merge": "6.0.11", "apollo-server": "2.14.4", @@ -25,7 +25,7 @@ "typeorm": "0.2.25" }, "devDependencies": { - "@accounts/types": "^0.28.0-alpha.0", + "@accounts/types": "^0.28.0-alpha.1", "@types/node": "14.0.13", "nodemon": "2.0.3", "ts-node": "8.10.1", diff --git a/examples/graphql-server-typescript/package.json b/examples/graphql-server-typescript/package.json index fd089f20a..7c96785ce 100644 --- a/examples/graphql-server-typescript/package.json +++ b/examples/graphql-server-typescript/package.json @@ -1,7 +1,7 @@ { "name": "@examples/graphql-server-typescript", "private": true, - "version": "0.28.0-alpha.0", + "version": "0.28.0-alpha.1", "main": "lib/index.js", "license": "MIT", "scripts": { @@ -10,12 +10,12 @@ "test": "yarn build" }, "dependencies": { - "@accounts/database-manager": "^0.28.0-alpha.0", - "@accounts/graphql-api": "^0.28.0-alpha.0", - "@accounts/mongo": "^0.28.0-alpha.0", - "@accounts/password": "^0.28.0-alpha.0", - "@accounts/rest-express": "^0.28.0-alpha.0", - "@accounts/server": "^0.28.0-alpha.0", + "@accounts/database-manager": "^0.28.0-alpha.1", + "@accounts/graphql-api": "^0.28.0-alpha.1", + "@accounts/mongo": "^0.28.0-alpha.1", + "@accounts/password": "^0.28.0-alpha.1", + "@accounts/rest-express": "^0.28.0-alpha.1", + "@accounts/server": "^0.28.0-alpha.1", "@graphql-modules/core": "0.7.17", "@graphql-tools/merge": "6.0.11", "apollo-server": "2.14.4", diff --git a/examples/react-graphql-typescript/package.json b/examples/react-graphql-typescript/package.json index 4589cca3a..54d9bb152 100644 --- a/examples/react-graphql-typescript/package.json +++ b/examples/react-graphql-typescript/package.json @@ -1,6 +1,6 @@ { "name": "@examples/react-graphql-typescript", - "version": "0.28.0-alpha.0", + "version": "0.28.0-alpha.1", "private": true, "scripts": { "start": "SKIP_PREFLIGHT_CHECK=true react-scripts start", @@ -24,10 +24,10 @@ ] }, "dependencies": { - "@accounts/apollo-link": "^0.28.0-alpha.0", - "@accounts/client": "^0.28.0-alpha.0", - "@accounts/client-password": "^0.28.0-alpha.0", - "@accounts/graphql-client": "^0.28.0-alpha.0", + "@accounts/apollo-link": "^0.28.0-alpha.1", + "@accounts/client": "^0.28.0-alpha.1", + "@accounts/client-password": "^0.28.0-alpha.1", + "@accounts/graphql-client": "^0.28.0-alpha.1", "@apollo/react-hooks": "3.1.5", "@material-ui/core": "4.9.13", "@material-ui/styles": "4.9.13", diff --git a/examples/react-rest-typescript/package.json b/examples/react-rest-typescript/package.json index ed708f125..daf119b11 100644 --- a/examples/react-rest-typescript/package.json +++ b/examples/react-rest-typescript/package.json @@ -1,6 +1,6 @@ { "name": "@examples/react-rest-typescript", - "version": "0.28.0-alpha.0", + "version": "0.28.0-alpha.1", "private": true, "scripts": { "start": "SKIP_PREFLIGHT_CHECK=true react-scripts start", @@ -24,9 +24,9 @@ ] }, "dependencies": { - "@accounts/client": "^0.28.0-alpha.0", - "@accounts/client-password": "^0.28.0-alpha.0", - "@accounts/rest-client": "^0.28.0-alpha.0", + "@accounts/client": "^0.28.0-alpha.1", + "@accounts/client-password": "^0.28.0-alpha.1", + "@accounts/rest-client": "^0.28.0-alpha.1", "@material-ui/core": "4.9.13", "@material-ui/icons": "4.9.1", "@material-ui/lab": "4.0.0-alpha.50", diff --git a/examples/rest-express-typescript/package.json b/examples/rest-express-typescript/package.json index 905e56444..70a7e08a8 100644 --- a/examples/rest-express-typescript/package.json +++ b/examples/rest-express-typescript/package.json @@ -1,7 +1,7 @@ { "name": "@examples/rest-express-typescript", "private": true, - "version": "0.28.0-alpha.0", + "version": "0.28.0-alpha.1", "main": "lib/index.js", "license": "MIT", "scripts": { @@ -10,11 +10,11 @@ "test": "yarn build" }, "dependencies": { - "@accounts/authenticator-otp": "^0.28.0-alpha.0", - "@accounts/mongo": "^0.28.0-alpha.0", - "@accounts/password": "^0.28.0-alpha.0", - "@accounts/rest-express": "^0.28.0-alpha.0", - "@accounts/server": "^0.28.0-alpha.0", + "@accounts/authenticator-otp": "^0.28.0-alpha.1", + "@accounts/mongo": "^0.28.0-alpha.1", + "@accounts/password": "^0.28.0-alpha.1", + "@accounts/rest-express": "^0.28.0-alpha.1", + "@accounts/server": "^0.28.0-alpha.1", "body-parser": "1.19.0", "cors": "2.8.5", "express": "4.17.1", diff --git a/lerna.json b/lerna.json index 72f6734ae..90310c8fc 100644 --- a/lerna.json +++ b/lerna.json @@ -2,5 +2,5 @@ "lerna": "2.11.0", "npmClient": "yarn", "useWorkspaces": true, - "version": "0.28.0-alpha.0" + "version": "0.28.0-alpha.1" } diff --git a/packages/apollo-link-accounts/package.json b/packages/apollo-link-accounts/package.json index 0028f36ba..24fb3c94a 100644 --- a/packages/apollo-link-accounts/package.json +++ b/packages/apollo-link-accounts/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/apollo-link", - "version": "0.28.0-alpha.0", + "version": "0.28.0-alpha.1", "description": "Apollo link for account-js", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -20,7 +20,7 @@ }, "license": "MIT", "devDependencies": { - "@accounts/client": "^0.28.0-alpha.0", + "@accounts/client": "^0.28.0-alpha.1", "apollo-link": "1.2.14", "rimraf": "3.0.2" }, diff --git a/packages/authenticator-otp/package.json b/packages/authenticator-otp/package.json index 27bbba136..416e247e7 100644 --- a/packages/authenticator-otp/package.json +++ b/packages/authenticator-otp/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/authenticator-otp", - "version": "0.28.0-alpha.0", + "version": "0.28.0-alpha.1", "description": "@accounts/authenticator-otp", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -29,14 +29,14 @@ "author": "Leo Pradel", "license": "MIT", "devDependencies": { - "@accounts/server": "^0.28.0-alpha.0", + "@accounts/server": "^0.28.0-alpha.1", "@types/jest": "26.0.0", "@types/node": "12.7.4", "jest": "26.0.1", "rimraf": "3.0.2" }, "dependencies": { - "@accounts/types": "^0.28.0-alpha.0", + "@accounts/types": "^0.28.0-alpha.1", "otplib": "11.0.1", "tslib": "1.10.0" }, diff --git a/packages/boost/package.json b/packages/boost/package.json index c6b0226ee..3bc52ed66 100644 --- a/packages/boost/package.json +++ b/packages/boost/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/boost", - "version": "0.28.0-alpha.0", + "version": "0.28.0-alpha.1", "description": "Ready to use GraphQL accounts server", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -23,10 +23,10 @@ "rimraf": "3.0.2" }, "dependencies": { - "@accounts/database-manager": "^0.28.0-alpha.0", - "@accounts/graphql-api": "^0.28.0-alpha.0", - "@accounts/server": "^0.28.0-alpha.0", - "@accounts/types": "^0.28.0-alpha.0", + "@accounts/database-manager": "^0.28.0-alpha.1", + "@accounts/graphql-api": "^0.28.0-alpha.1", + "@accounts/server": "^0.28.0-alpha.1", + "@accounts/types": "^0.28.0-alpha.1", "@graphql-modules/core": "0.7.17", "apollo-server": "^2.9.3", "graphql": "^14.5.4", diff --git a/packages/client-password/package.json b/packages/client-password/package.json index 6e2da2c3d..e0997911e 100644 --- a/packages/client-password/package.json +++ b/packages/client-password/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/client-password", - "version": "0.28.0-alpha.0", + "version": "0.28.0-alpha.1", "description": "@accounts/client-password", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -35,8 +35,8 @@ "rimraf": "3.0.2" }, "dependencies": { - "@accounts/client": "^0.28.0-alpha.0", - "@accounts/types": "^0.28.0-alpha.0", + "@accounts/client": "^0.28.0-alpha.1", + "@accounts/types": "^0.28.0-alpha.1", "tslib": "2.0.0" } } diff --git a/packages/client/package.json b/packages/client/package.json index 4a27e165e..4090eddf2 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/client", - "version": "0.28.0-alpha.0", + "version": "0.28.0-alpha.1", "description": "Fullstack authentication and accounts-management", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -53,7 +53,7 @@ "rimraf": "3.0.2" }, "dependencies": { - "@accounts/types": "^0.28.0-alpha.0", + "@accounts/types": "^0.28.0-alpha.1", "jwt-decode": "2.2.0", "tslib": "2.0.0" } diff --git a/packages/database-manager/package.json b/packages/database-manager/package.json index c3dcbe8f7..9928f1ed5 100644 --- a/packages/database-manager/package.json +++ b/packages/database-manager/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/database-manager", - "version": "0.28.0-alpha.0", + "version": "0.28.0-alpha.1", "description": "Accounts Database Manager, allow the use of separate databases for session and user", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -41,7 +41,7 @@ "rimraf": "3.0.2" }, "dependencies": { - "@accounts/types": "^0.28.0-alpha.0", + "@accounts/types": "^0.28.0-alpha.1", "tslib": "2.0.0" } } diff --git a/packages/database-mongo/package.json b/packages/database-mongo/package.json index 81bfdff5a..adc8d6689 100644 --- a/packages/database-mongo/package.json +++ b/packages/database-mongo/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/mongo", - "version": "0.28.0-alpha.0", + "version": "0.28.0-alpha.1", "description": "MongoDB adaptor for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -29,7 +29,7 @@ "author": "Leo Pradel", "license": "MIT", "devDependencies": { - "@accounts/database-tests": "^0.28.0-alpha.0", + "@accounts/database-tests": "^0.28.0-alpha.1", "@types/jest": "25.2.3", "@types/lodash": "4.14.157", "@types/mongodb": "3.5.25", @@ -37,7 +37,7 @@ "jest": "26.0.1" }, "dependencies": { - "@accounts/types": "^0.28.0-alpha.0", + "@accounts/types": "^0.28.0-alpha.1", "lodash": "^4.17.15", "mongodb": "^3.4.1", "tslib": "2.0.0" diff --git a/packages/database-redis/package.json b/packages/database-redis/package.json index a8ba824d6..8d9b60190 100644 --- a/packages/database-redis/package.json +++ b/packages/database-redis/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/redis", - "version": "0.28.0-alpha.0", + "version": "0.28.0-alpha.1", "description": "Redis adaptor for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -32,7 +32,7 @@ "author": "Leo Pradel", "license": "MIT", "devDependencies": { - "@accounts/database-tests": "^0.28.0-alpha.0", + "@accounts/database-tests": "^0.28.0-alpha.1", "@types/ioredis": "4.14.9", "@types/jest": "25.2.3", "@types/lodash": "4.14.157", @@ -41,7 +41,7 @@ "jest": "26.0.1" }, "dependencies": { - "@accounts/types": "^0.28.0-alpha.0", + "@accounts/types": "^0.28.0-alpha.1", "ioredis": "^4.14.1", "lodash": "^4.17.15", "shortid": "^2.2.15", diff --git a/packages/database-tests/package.json b/packages/database-tests/package.json index 4ed340d73..e5d572647 100644 --- a/packages/database-tests/package.json +++ b/packages/database-tests/package.json @@ -1,7 +1,7 @@ { "name": "@accounts/database-tests", "private": true, - "version": "0.28.0-alpha.0", + "version": "0.28.0-alpha.1", "main": "lib/index.js", "typings": "lib/index.d.ts", "scripts": { @@ -23,7 +23,7 @@ "jest": "26.0.1" }, "dependencies": { - "@accounts/types": "^0.28.0-alpha.0", + "@accounts/types": "^0.28.0-alpha.1", "tslib": "2.0.0" } } diff --git a/packages/database-typeorm/package.json b/packages/database-typeorm/package.json index ab7f734b9..fe7895ae0 100644 --- a/packages/database-typeorm/package.json +++ b/packages/database-typeorm/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/typeorm", - "version": "0.28.0-alpha.0", + "version": "0.28.0-alpha.1", "description": "TypeORM adaptor for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -26,14 +26,14 @@ "author": "Birkir Gudjonsson ", "license": "MIT", "devDependencies": { - "@accounts/database-tests": "^0.28.0-alpha.0", + "@accounts/database-tests": "^0.28.0-alpha.1", "@types/jest": "25.2.3", "@types/node": "14.0.14", "jest": "26.0.1", "pg": "8.1.0" }, "dependencies": { - "@accounts/types": "^0.28.0-alpha.0", + "@accounts/types": "^0.28.0-alpha.1", "lodash": "^4.17.15", "reflect-metadata": "^0.1.13", "tslib": "2.0.0", diff --git a/packages/e2e/package.json b/packages/e2e/package.json index 323efc8b9..c249376a4 100644 --- a/packages/e2e/package.json +++ b/packages/e2e/package.json @@ -1,7 +1,7 @@ { "name": "@accounts/e2e", "private": true, - "version": "0.28.0-alpha.0", + "version": "0.28.0-alpha.1", "main": "lib/index.js", "typings": "lib/index.d.ts", "scripts": { @@ -32,17 +32,17 @@ "jest-localstorage-mock": "2.4.2" }, "dependencies": { - "@accounts/client": "^0.28.0-alpha.0", - "@accounts/client-password": "^0.28.0-alpha.0", - "@accounts/graphql-api": "^0.28.0-alpha.0", - "@accounts/graphql-client": "^0.28.0-alpha.0", - "@accounts/mongo": "^0.28.0-alpha.0", - "@accounts/password": "^0.28.0-alpha.0", - "@accounts/rest-client": "^0.28.0-alpha.0", - "@accounts/rest-express": "^0.28.0-alpha.0", - "@accounts/server": "^0.28.0-alpha.0", - "@accounts/typeorm": "^0.28.0-alpha.0", - "@accounts/types": "^0.28.0-alpha.0", + "@accounts/client": "^0.28.0-alpha.1", + "@accounts/client-password": "^0.28.0-alpha.1", + "@accounts/graphql-api": "^0.28.0-alpha.1", + "@accounts/graphql-client": "^0.28.0-alpha.1", + "@accounts/mongo": "^0.28.0-alpha.1", + "@accounts/password": "^0.28.0-alpha.1", + "@accounts/rest-client": "^0.28.0-alpha.1", + "@accounts/rest-express": "^0.28.0-alpha.1", + "@accounts/server": "^0.28.0-alpha.1", + "@accounts/typeorm": "^0.28.0-alpha.1", + "@accounts/types": "^0.28.0-alpha.1", "@graphql-modules/core": "0.7.17", "apollo-boost": "0.4.8", "apollo-server": "2.14.4", diff --git a/packages/error/package.json b/packages/error/package.json index e412ada9f..6822e2da6 100644 --- a/packages/error/package.json +++ b/packages/error/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/error", - "version": "0.28.0-alpha.0", + "version": "0.28.0-alpha.1", "description": "Accounts-js Error", "main": "lib/index.js", "typings": "lib/index.d.ts", diff --git a/packages/express-session/package.json b/packages/express-session/package.json index 9b60291b9..2b1edd80d 100644 --- a/packages/express-session/package.json +++ b/packages/express-session/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/express-session", - "version": "0.28.0-alpha.0", + "version": "0.28.0-alpha.1", "description": "", "main": "lib/index", "typings": "lib/index", @@ -34,7 +34,7 @@ "author": "Kamil Kisiela", "license": "MIT", "devDependencies": { - "@accounts/server": "^0.28.0-alpha.0", + "@accounts/server": "^0.28.0-alpha.1", "@types/express": "4.17.6", "@types/express-session": "1.17.0", "@types/jest": "25.2.3", @@ -50,7 +50,7 @@ "express-session": "^1.15.6" }, "dependencies": { - "@accounts/types": "^0.28.0-alpha.0", + "@accounts/types": "^0.28.0-alpha.1", "lodash": "^4.17.15", "request-ip": "^2.1.3", "tslib": "2.0.0" diff --git a/packages/graphql-api/package.json b/packages/graphql-api/package.json index d3c92e933..3d04a7aef 100644 --- a/packages/graphql-api/package.json +++ b/packages/graphql-api/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/graphql-api", - "version": "0.28.0-alpha.0", + "version": "0.28.0-alpha.1", "description": "Server side GraphQL transport for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -28,9 +28,9 @@ }, "homepage": "https://github.com/js-accounts/graphql-api", "devDependencies": { - "@accounts/password": "^0.28.0-alpha.0", - "@accounts/server": "^0.28.0-alpha.0", - "@accounts/types": "^0.28.0-alpha.0", + "@accounts/password": "^0.28.0-alpha.1", + "@accounts/server": "^0.28.0-alpha.1", + "@accounts/types": "^0.28.0-alpha.1", "@graphql-codegen/add": "1.16.0", "@graphql-codegen/cli": "1.16.0", "@graphql-codegen/typescript": "1.16.0", diff --git a/packages/graphql-client/package.json b/packages/graphql-client/package.json index 2eaaaeee6..f05eae5d6 100644 --- a/packages/graphql-client/package.json +++ b/packages/graphql-client/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/graphql-client", - "version": "0.28.0-alpha.0", + "version": "0.28.0-alpha.1", "description": "GraphQL client transport for accounts", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -30,8 +30,8 @@ "lodash": "4.17.15" }, "dependencies": { - "@accounts/client": "^0.28.0-alpha.0", - "@accounts/types": "^0.28.0-alpha.0", + "@accounts/client": "^0.28.0-alpha.1", + "@accounts/types": "^0.28.0-alpha.1", "graphql-tag": "^2.10.0", "tslib": "2.0.0" }, diff --git a/packages/oauth-instagram/package.json b/packages/oauth-instagram/package.json index 334456dc1..580af83c8 100644 --- a/packages/oauth-instagram/package.json +++ b/packages/oauth-instagram/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/oauth-instagram", - "version": "0.28.0-alpha.0", + "version": "0.28.0-alpha.1", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -18,7 +18,7 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/oauth": "^0.28.0-alpha.0", + "@accounts/oauth": "^0.28.0-alpha.1", "request": "^2.88.0", "request-promise": "^4.2.5", "tslib": "2.0.0" diff --git a/packages/oauth-twitter/package.json b/packages/oauth-twitter/package.json index 141cd2ee5..63dfe96b0 100644 --- a/packages/oauth-twitter/package.json +++ b/packages/oauth-twitter/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/oauth-twitter", - "version": "0.28.0-alpha.0", + "version": "0.28.0-alpha.1", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -18,7 +18,7 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/oauth": "^0.28.0-alpha.0", + "@accounts/oauth": "^0.28.0-alpha.1", "oauth": "^0.9.15", "tslib": "2.0.0" }, diff --git a/packages/oauth/package.json b/packages/oauth/package.json index e686a63c2..bcb979700 100644 --- a/packages/oauth/package.json +++ b/packages/oauth/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/oauth", - "version": "0.28.0-alpha.0", + "version": "0.28.0-alpha.1", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -18,11 +18,11 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/types": "^0.28.0-alpha.0", + "@accounts/types": "^0.28.0-alpha.1", "tslib": "2.0.0" }, "devDependencies": { - "@accounts/server": "^0.28.0-alpha.0", + "@accounts/server": "^0.28.0-alpha.1", "@types/jest": "25.2.3", "@types/node": "14.0.14", "jest": "26.0.1" diff --git a/packages/password/package.json b/packages/password/package.json index da28b0379..95d8a672f 100644 --- a/packages/password/package.json +++ b/packages/password/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/password", - "version": "0.28.0-alpha.0", + "version": "0.28.0-alpha.1", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -18,14 +18,14 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/two-factor": "^0.28.0-alpha.0", + "@accounts/two-factor": "^0.28.0-alpha.1", "bcryptjs": "^2.4.3", "lodash": "^4.17.15", "tslib": "2.0.0" }, "devDependencies": { - "@accounts/server": "^0.28.0-alpha.0", - "@accounts/types": "^0.28.0-alpha.0", + "@accounts/server": "^0.28.0-alpha.1", + "@accounts/types": "^0.28.0-alpha.1", "@types/bcryptjs": "2.4.2", "@types/jest": "25.2.3", "@types/lodash": "4.14.157", diff --git a/packages/rest-client/package.json b/packages/rest-client/package.json index f0151c81a..ed637145d 100644 --- a/packages/rest-client/package.json +++ b/packages/rest-client/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/rest-client", - "version": "0.28.0-alpha.0", + "version": "0.28.0-alpha.1", "description": "REST client for accounts", "main": "lib/index", "typings": "lib/index", @@ -38,7 +38,7 @@ "author": "Tim Mikeladze", "license": "MIT", "devDependencies": { - "@accounts/client": "^0.28.0-alpha.0", + "@accounts/client": "^0.28.0-alpha.1", "@types/jest": "25.2.3", "@types/lodash": "4.14.157", "@types/node": "14.0.14", @@ -49,7 +49,7 @@ "@accounts/client": "^0.19.0" }, "dependencies": { - "@accounts/types": "^0.28.0-alpha.0", + "@accounts/types": "^0.28.0-alpha.1", "lodash": "^4.17.15", "tslib": "2.0.0" } diff --git a/packages/rest-express/package.json b/packages/rest-express/package.json index 067f1a89e..1b48fdbe7 100644 --- a/packages/rest-express/package.json +++ b/packages/rest-express/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/rest-express", - "version": "0.28.0-alpha.0", + "version": "0.28.0-alpha.1", "description": "Server side REST express middleware for accounts", "main": "lib/index", "typings": "lib/index", @@ -35,8 +35,8 @@ "author": "Tim Mikeladze", "license": "MIT", "devDependencies": { - "@accounts/password": "^0.28.0-alpha.0", - "@accounts/server": "^0.28.0-alpha.0", + "@accounts/password": "^0.28.0-alpha.1", + "@accounts/server": "^0.28.0-alpha.1", "@types/express": "4.17.6", "@types/jest": "25.2.3", "@types/node": "14.0.14", @@ -47,7 +47,7 @@ "@accounts/server": "^0.19.0" }, "dependencies": { - "@accounts/types": "^0.28.0-alpha.0", + "@accounts/types": "^0.28.0-alpha.1", "express": "^4.17.0", "request-ip": "^2.1.3", "tslib": "2.0.0" diff --git a/packages/server/package.json b/packages/server/package.json index 2dcbcd487..048015cc1 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/server", - "version": "0.28.0-alpha.0", + "version": "0.28.0-alpha.1", "description": "Fullstack authentication and accounts-management", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -40,7 +40,7 @@ "author": "Tim Mikeladze", "license": "MIT", "dependencies": { - "@accounts/types": "^0.28.0-alpha.0", + "@accounts/types": "^0.28.0-alpha.1", "@types/jsonwebtoken": "8.3.9", "emittery": "0.5.1", "jsonwebtoken": "8.5.1", diff --git a/packages/two-factor/package.json b/packages/two-factor/package.json index 2f536fecb..a3ace5601 100644 --- a/packages/two-factor/package.json +++ b/packages/two-factor/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/two-factor", - "version": "0.28.0-alpha.0", + "version": "0.28.0-alpha.1", "license": "MIT", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -22,7 +22,7 @@ "preset": "ts-jest" }, "dependencies": { - "@accounts/types": "^0.28.0-alpha.0", + "@accounts/types": "^0.28.0-alpha.1", "@types/lodash": "^4.14.138", "@types/speakeasy": "2.0.2", "lodash": "^4.17.15", diff --git a/packages/types/package.json b/packages/types/package.json index 28b96bb62..5b73238bb 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/types", - "version": "0.28.0-alpha.0", + "version": "0.28.0-alpha.1", "description": "Accounts-js Types", "main": "lib/index.js", "typings": "lib/index.d.ts", From 609e890052cc0c29f5cbd4e0d7b02a5d9976bcbb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Pradel?= Date: Thu, 6 Aug 2020 14:30:56 +0200 Subject: [PATCH 125/146] feat(types): create database mfa types (#1035) --- .../__tests__/database-manager.ts | 84 +++++++++++++++++++ .../database-manager/src/database-manager.ts | 50 +++++++++++ packages/database-mongo/__tests__/index.ts | 60 +++++++++++++ packages/database-mongo/src/mongo.ts | 62 ++++++++++++++ packages/database-typeorm/src/typeorm.ts | 68 ++++++++++++++- packages/types/src/index.ts | 5 ++ .../types/src/types/database-interface.ts | 4 +- packages/types/src/types/mfa/authenticator.ts | 30 +++++++ .../src/types/mfa/create-authenticator.ts | 18 ++++ .../src/types/mfa/create-mfa-challenge.ts | 22 +++++ .../types/src/types/mfa/database-interface.ts | 56 +++++++++++++ packages/types/src/types/mfa/mfa-challenge.ts | 34 ++++++++ 12 files changed, 491 insertions(+), 2 deletions(-) create mode 100644 packages/types/src/types/mfa/authenticator.ts create mode 100644 packages/types/src/types/mfa/create-authenticator.ts create mode 100644 packages/types/src/types/mfa/create-mfa-challenge.ts create mode 100644 packages/types/src/types/mfa/database-interface.ts create mode 100644 packages/types/src/types/mfa/mfa-challenge.ts diff --git a/packages/database-manager/__tests__/database-manager.ts b/packages/database-manager/__tests__/database-manager.ts index eda226589..af0d28aa7 100644 --- a/packages/database-manager/__tests__/database-manager.ts +++ b/packages/database-manager/__tests__/database-manager.ts @@ -111,6 +111,46 @@ export default class Database { public setUserDeactivated() { return this.name; } + + public findAuthenticatorById() { + return this.name; + } + + public findUserAuthenticators() { + return this.name; + } + + public createAuthenticator() { + return this.name; + } + + public activateAuthenticator() { + return this.name; + } + + public deactivateAuthenticator() { + return this.name; + } + + public updateAuthenticator() { + return this.name; + } + + public createMfaChallenge() { + return this.name; + } + + public findMfaChallengeByToken() { + return this.name; + } + + public deactivateMfaChallenge() { + return this.name; + } + + public updateMfaChallenge() { + return this.name; + } } const databaseManager = new DatabaseManager({ @@ -253,4 +293,48 @@ describe('DatabaseManager', () => { it('removeAllResetPasswordTokens should be called on userStorage', () => { expect(databaseManager.removeAllResetPasswordTokens('userId')).toBe('userStorage'); }); + + it('findAuthenticatorById should be called on userStorage', () => { + expect(databaseManager.findAuthenticatorById('authenticatorId')).toBe('userStorage'); + }); + + it('findUserAuthenticators should be called on userStorage', () => { + expect(databaseManager.findUserAuthenticators('userId')).toBe('userStorage'); + }); + + it('createAuthenticator should be called on userStorage', () => { + expect( + databaseManager.createAuthenticator({ userId: 'userId', type: 'type', active: true }) + ).toBe('userStorage'); + }); + + it('activateAuthenticator should be called on userStorage', () => { + expect(databaseManager.activateAuthenticator('userId')).toBe('userStorage'); + }); + + it('deactivateAuthenticator should be called on userStorage', () => { + expect(databaseManager.deactivateAuthenticator('userId')).toBe('userStorage'); + }); + + it('updateAuthenticator should be called on userStorage', () => { + expect(databaseManager.updateAuthenticator('userId', {})).toBe('userStorage'); + }); + + it('createMfaChallenge should be called on userStorage', () => { + expect(databaseManager.createMfaChallenge({ userId: 'userId', token: 'token' })).toBe( + 'userStorage' + ); + }); + + it('findMfaChallengeByToken should be called on userStorage', () => { + expect(databaseManager.findMfaChallengeByToken('userId')).toBe('userStorage'); + }); + + it('deactivateMfaChallenge should be called on userStorage', () => { + expect(databaseManager.deactivateMfaChallenge('userId')).toBe('userStorage'); + }); + + it('updateMfaChallenge should be called on userStorage', () => { + expect(databaseManager.updateMfaChallenge('userId', {})).toBe('userStorage'); + }); }); diff --git a/packages/database-manager/src/database-manager.ts b/packages/database-manager/src/database-manager.ts index ba45bf3e2..740d38dec 100644 --- a/packages/database-manager/src/database-manager.ts +++ b/packages/database-manager/src/database-manager.ts @@ -159,4 +159,54 @@ export class DatabaseManager implements DatabaseInterface { public get setUserDeactivated(): DatabaseInterface['setUserDeactivated'] { return this.userStorage.setUserDeactivated.bind(this.userStorage); } + + // Return the findAuthenticatorById function from the userStorage + public get findAuthenticatorById(): DatabaseInterface['findAuthenticatorById'] { + return this.userStorage.findAuthenticatorById.bind(this.userStorage); + } + + // Return the findUserAuthenticators function from the userStorage + public get findUserAuthenticators(): DatabaseInterface['findUserAuthenticators'] { + return this.userStorage.findUserAuthenticators.bind(this.userStorage); + } + + // Return the createAuthenticator function from the userStorage + public get createAuthenticator(): DatabaseInterface['createAuthenticator'] { + return this.userStorage.createAuthenticator.bind(this.userStorage); + } + + // Return the activateAuthenticator function from the userStorage + public get activateAuthenticator(): DatabaseInterface['activateAuthenticator'] { + return this.userStorage.activateAuthenticator.bind(this.userStorage); + } + + // Return the deactivateAuthenticator function from the userStorage + public get deactivateAuthenticator(): DatabaseInterface['deactivateAuthenticator'] { + return this.userStorage.deactivateAuthenticator.bind(this.userStorage); + } + + // Return the updateAuthenticator function from the userStorage + public get updateAuthenticator(): DatabaseInterface['updateAuthenticator'] { + return this.userStorage.updateAuthenticator.bind(this.userStorage); + } + + // Return the createMfaChallenge function from the userStorage + public get createMfaChallenge(): DatabaseInterface['createMfaChallenge'] { + return this.userStorage.createMfaChallenge.bind(this.userStorage); + } + + // Return the findMfaChallengeByToken function from the userStorage + public get findMfaChallengeByToken(): DatabaseInterface['findMfaChallengeByToken'] { + return this.userStorage.findMfaChallengeByToken.bind(this.userStorage); + } + + // Return the deactivateMfaChallenge function from the userStorage + public get deactivateMfaChallenge(): DatabaseInterface['deactivateMfaChallenge'] { + return this.userStorage.deactivateMfaChallenge.bind(this.userStorage); + } + + // Return the updateMfaChallenge function from the userStorage + public get updateMfaChallenge(): DatabaseInterface['updateMfaChallenge'] { + return this.userStorage.updateMfaChallenge.bind(this.userStorage); + } } diff --git a/packages/database-mongo/__tests__/index.ts b/packages/database-mongo/__tests__/index.ts index b767b465d..9b7636b1e 100644 --- a/packages/database-mongo/__tests__/index.ts +++ b/packages/database-mongo/__tests__/index.ts @@ -877,4 +877,64 @@ describe('Mongo', () => { expect((retUser as any).createdAt).not.toEqual((retUser as any).updatedAt); }); }); + + describe('createAuthenticator', () => { + it('should throw an error', async () => { + await expect(databaseTests.database.createAuthenticator({} as any)).rejects.toThrowError(); + }); + }); + + describe('findAuthenticatorById', () => { + it('should throw an error', async () => { + await expect(databaseTests.database.findAuthenticatorById('userId')).rejects.toThrowError(); + }); + }); + + describe('findUserAuthenticators', () => { + it('should throw an error', async () => { + await expect(databaseTests.database.findUserAuthenticators('userId')).rejects.toThrowError(); + }); + }); + + describe('activateAuthenticator', () => { + it('should throw an error', async () => { + await expect(databaseTests.database.activateAuthenticator('userId')).rejects.toThrowError(); + }); + }); + + describe('deactivateAuthenticator', () => { + it('should throw an error', async () => { + await expect(databaseTests.database.deactivateAuthenticator('userId')).rejects.toThrowError(); + }); + }); + + describe('updateAuthenticator', () => { + it('should throw an error', async () => { + await expect(databaseTests.database.updateAuthenticator('userId')).rejects.toThrowError(); + }); + }); + + describe('createMfaChallenge', () => { + it('should throw an error', async () => { + await expect(databaseTests.database.createMfaChallenge({} as any)).rejects.toThrowError(); + }); + }); + + describe('findMfaChallengeByToken', () => { + it('should throw an error', async () => { + await expect(databaseTests.database.findMfaChallengeByToken('userId')).rejects.toThrowError(); + }); + }); + + describe('deactivateMfaChallenge', () => { + it('should throw an error', async () => { + await expect(databaseTests.database.deactivateMfaChallenge('userId')).rejects.toThrowError(); + }); + }); + + describe('updateMfaChallenge', () => { + it('should throw an error', async () => { + await expect(databaseTests.database.updateMfaChallenge('userId')).rejects.toThrowError(); + }); + }); }); diff --git a/packages/database-mongo/src/mongo.ts b/packages/database-mongo/src/mongo.ts index 43117f8cc..6d5b5e446 100644 --- a/packages/database-mongo/src/mongo.ts +++ b/packages/database-mongo/src/mongo.ts @@ -4,6 +4,10 @@ import { DatabaseInterface, Session, User, + CreateAuthenticator, + Authenticator, + CreateMfaChallenge, + MfaChallenge, } from '@accounts/types'; import { get, merge } from 'lodash'; import { Collection, Db, ObjectID, IndexOptions } from 'mongodb'; @@ -467,4 +471,62 @@ export class Mongo implements DatabaseInterface { public async setResetPassword(userId: string, email: string, newPassword: string): Promise { await this.setPassword(userId, newPassword); } + + /** + * MFA authenticators related operations + */ + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + public async createAuthenticator(newAuthenticator: CreateAuthenticator): Promise { + throw new Error('Mfa for mongo is not yet implemented'); + } + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + public async findAuthenticatorById(authenticatorId: string): Promise { + throw new Error('Mfa for mongo is not yet implemented'); + } + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + public async findUserAuthenticators(userId: string): Promise { + throw new Error('Mfa for mongo is not yet implemented'); + } + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + public async activateAuthenticator(authenticatorId: string): Promise { + throw new Error('Mfa for mongo is not yet implemented'); + } + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + public async deactivateAuthenticator(authenticatorId: string): Promise { + throw new Error('Mfa for mongo is not yet implemented'); + } + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + public async updateAuthenticator(authenticatorId: string): Promise { + throw new Error('Mfa for mongo is not yet implemented'); + } + + /** + * MFA challenges related operations + */ + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + public async createMfaChallenge(newMfaChallenge: CreateMfaChallenge): Promise { + throw new Error('Mfa for mongo is not yet implemented'); + } + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + public async findMfaChallengeByToken(token: string): Promise { + throw new Error('Mfa for mongo is not yet implemented'); + } + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + public async deactivateMfaChallenge(mfaChallengeId: string): Promise { + throw new Error('Mfa for mongo is not yet implemented'); + } + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + public async updateMfaChallenge(mfaChallengeId: string): Promise { + throw new Error('Mfa for mongo is not yet implemented'); + } } diff --git a/packages/database-typeorm/src/typeorm.ts b/packages/database-typeorm/src/typeorm.ts index 95346fd08..8e644c035 100644 --- a/packages/database-typeorm/src/typeorm.ts +++ b/packages/database-typeorm/src/typeorm.ts @@ -1,4 +1,12 @@ -import { ConnectionInformations, CreateUser, DatabaseInterface } from '@accounts/types'; +import { + ConnectionInformations, + CreateUser, + DatabaseInterface, + CreateAuthenticator, + Authenticator, + CreateMfaChallenge, + MfaChallenge, +} from '@accounts/types'; import { Repository, getRepository, Not, In, FindOperator } from 'typeorm'; import { User } from './entity/User'; import { UserEmail } from './entity/UserEmail'; @@ -433,4 +441,62 @@ export class AccountsTypeorm implements DatabaseInterface { valid: false, }); } + + /** + * MFA authenticators related operations + */ + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + public async createAuthenticator(newAuthenticator: CreateAuthenticator): Promise { + throw new Error('Mfa for typeorm is not yet implemented'); + } + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + public async findAuthenticatorById(authenticatorId: string): Promise { + throw new Error('Mfa for typeorm is not yet implemented'); + } + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + public async findUserAuthenticators(userId: string): Promise { + throw new Error('Mfa for typeorm is not yet implemented'); + } + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + public async activateAuthenticator(authenticatorId: string): Promise { + throw new Error('Mfa for typeorm is not yet implemented'); + } + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + public async deactivateAuthenticator(authenticatorId: string): Promise { + throw new Error('Mfa for typeorm is not yet implemented'); + } + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + public async updateAuthenticator(authenticatorId: string): Promise { + throw new Error('Mfa for typeorm is not yet implemented'); + } + + /** + * MFA challenges related operations + */ + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + public async createMfaChallenge(newMfaChallenge: CreateMfaChallenge): Promise { + throw new Error('Mfa for typeorm is not yet implemented'); + } + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + public async findMfaChallengeByToken(token: string): Promise { + throw new Error('Mfa for typeorm is not yet implemented'); + } + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + public async deactivateMfaChallenge(mfaChallengeId: string): Promise { + throw new Error('Mfa for typeorm is not yet implemented'); + } + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + public async updateMfaChallenge(mfaChallengeId: string): Promise { + throw new Error('Mfa for typeorm is not yet implemented'); + } } diff --git a/packages/types/src/index.ts b/packages/types/src/index.ts index 84d15b4f0..ff895c1eb 100644 --- a/packages/types/src/index.ts +++ b/packages/types/src/index.ts @@ -16,3 +16,8 @@ export * from './types/session/session'; export * from './types/services/password/create-user'; export * from './types/services/password/database-interface'; export * from './types/services/password/login-user'; +export * from './types/mfa/database-interface'; +export * from './types/mfa/authenticator'; +export * from './types/mfa/create-authenticator'; +export * from './types/mfa/mfa-challenge'; +export * from './types/mfa/create-mfa-challenge'; diff --git a/packages/types/src/types/database-interface.ts b/packages/types/src/types/database-interface.ts index a23c147f8..cdb634009 100644 --- a/packages/types/src/types/database-interface.ts +++ b/packages/types/src/types/database-interface.ts @@ -2,10 +2,12 @@ import { User } from './user'; import { CreateUser } from './create-user'; import { DatabaseInterfaceSessions } from './session/database-interface'; import { DatabaseInterfaceServicePassword } from './services/password/database-interface'; +import { DatabaseInterfaceMfa } from './mfa/database-interface'; export interface DatabaseInterface extends DatabaseInterfaceSessions, - DatabaseInterfaceServicePassword { + DatabaseInterfaceServicePassword, + DatabaseInterfaceMfa { // Find user by identity fields findUserById(userId: string): Promise; diff --git a/packages/types/src/types/mfa/authenticator.ts b/packages/types/src/types/mfa/authenticator.ts new file mode 100644 index 000000000..dfe9820f8 --- /dev/null +++ b/packages/types/src/types/mfa/authenticator.ts @@ -0,0 +1,30 @@ +export interface Authenticator { + /** + * Db id + */ + id: string; + /** + * Authenticator type + */ + type: string; + /** + * User id linked to this authenticator + */ + userId: string; + /** + * Is authenticator active + */ + active: boolean; + /** + * If active is true, contain the date when the authenticator was activated + */ + activatedAt?: string; + /** + * If active is true, contain the date when the authenticator was activated + */ + deactivatedAt?: string; + /** + * Custom properties + */ + [additionalKey: string]: any; +} diff --git a/packages/types/src/types/mfa/create-authenticator.ts b/packages/types/src/types/mfa/create-authenticator.ts new file mode 100644 index 000000000..266cca2cc --- /dev/null +++ b/packages/types/src/types/mfa/create-authenticator.ts @@ -0,0 +1,18 @@ +export interface CreateAuthenticator { + /** + * Authenticator type + */ + type: string; + /** + * User id linked to this authenticator + */ + userId: string; + /** + * Is authenticator active + */ + active: boolean; + /** + * Custom properties + */ + [additionalKey: string]: any; +} diff --git a/packages/types/src/types/mfa/create-mfa-challenge.ts b/packages/types/src/types/mfa/create-mfa-challenge.ts new file mode 100644 index 000000000..b9837138f --- /dev/null +++ b/packages/types/src/types/mfa/create-mfa-challenge.ts @@ -0,0 +1,22 @@ +export interface CreateMfaChallenge { + /** + * User id linked to this challenge + */ + userId: string; + /** + * Authenticator that will be used to resolve this challenge + */ + authenticatorId?: string; + /** + * Random token used to identify the challenge + */ + token: string; + /** + * If scope is set to associate, the authenticate function will verify the authenticator next time the user call it + */ + scope?: 'associate'; + /** + * Custom properties + */ + [additionalKey: string]: any; +} diff --git a/packages/types/src/types/mfa/database-interface.ts b/packages/types/src/types/mfa/database-interface.ts new file mode 100644 index 000000000..60a9baab7 --- /dev/null +++ b/packages/types/src/types/mfa/database-interface.ts @@ -0,0 +1,56 @@ +import { CreateAuthenticator } from './create-authenticator'; +import { Authenticator } from './authenticator'; +import { MfaChallenge } from './mfa-challenge'; +import { CreateMfaChallenge } from './create-mfa-challenge'; + +export interface DatabaseInterfaceMfa { + /** + * Create a new authenticator for the user. + */ + createAuthenticator(authenticator: CreateAuthenticator): Promise; + + /** + * Find an authenticator by his id. + */ + findAuthenticatorById(authenticatorId: string): Promise; + + /** + * Return all the authenticators of the user. + */ + findUserAuthenticators(userId: string): Promise; + + /** + * Activate the authenticator by his id. + */ + activateAuthenticator(authenticatorId: string): Promise; + + /** + * Deactivate the authenticator by his id. + */ + deactivateAuthenticator(authenticatorId: string): Promise; + + /** + * Update the authenticator. + */ + updateAuthenticator(authenticatorId: string, data: Partial): Promise; + + /** + * Create a new mfa challenge for the user. + */ + createMfaChallenge(newMfaChallenge: CreateMfaChallenge): Promise; + + /** + * Find the mfa challenge by his id. + */ + findMfaChallengeByToken(token: string): Promise; + + /** + * Update the mfa challenge. + */ + updateMfaChallenge(mfaChallengeId: string, data: Partial): Promise; + + /** + * Deactivate the mfa challenge by his id. + */ + deactivateMfaChallenge(mfaChallengeId: string): Promise; +} diff --git a/packages/types/src/types/mfa/mfa-challenge.ts b/packages/types/src/types/mfa/mfa-challenge.ts new file mode 100644 index 000000000..084ba7710 --- /dev/null +++ b/packages/types/src/types/mfa/mfa-challenge.ts @@ -0,0 +1,34 @@ +export interface MfaChallenge { + /** + * Db id + */ + id: string; + /** + * User id linked to this challenge + */ + userId: string; + /** + * Authenticator that will be used to resolve this challenge + */ + authenticatorId?: string; + /** + * Random token used to identify the challenge + */ + token: string; + /** + * If scope is set to associate, the authenticate function will verify the authenticator next time the user call it + */ + scope?: 'associate'; + /** + * If deactivated is set to true, it means that challenge was already used and can't be used anymore + */ + deactivated: boolean; + /** + * If deactivated is true, contain the date when the challenge was used + */ + deactivatedAt?: string; + /** + * Custom properties + */ + [additionalKey: string]: any; +} From 7c755b08b571dcdbf2ed5f445da8a353aa91416f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Pradel?= Date: Thu, 6 Aug 2020 15:35:02 +0200 Subject: [PATCH 126/146] feat(mongo): implement mfa methods (#1036) --- .../__tests__/database-tests.ts | 5 +- packages/database-mongo/__tests__/index.ts | 197 ++++++++++++++++-- packages/database-mongo/src/mongo.ts | 155 ++++++++++++-- packages/database-mongo/src/types/index.ts | 32 +++ 4 files changed, 345 insertions(+), 44 deletions(-) diff --git a/packages/database-mongo/__tests__/database-tests.ts b/packages/database-mongo/__tests__/database-tests.ts index 9af26cd0d..11e116558 100644 --- a/packages/database-mongo/__tests__/database-tests.ts +++ b/packages/database-mongo/__tests__/database-tests.ts @@ -27,7 +27,10 @@ export class DatabaseTests { public createConnection = async () => { const url = 'mongodb://localhost:27017'; - this.client = await mongodb.MongoClient.connect(url, { useNewUrlParser: true }); + this.client = await mongodb.MongoClient.connect(url, { + useNewUrlParser: true, + useUnifiedTopology: true, + }); this.db = this.client.db('accounts-mongo-tests'); this.database = new Mongo(this.db, this.options); }; diff --git a/packages/database-mongo/__tests__/index.ts b/packages/database-mongo/__tests__/index.ts index 9b7636b1e..e4181af8a 100644 --- a/packages/database-mongo/__tests__/index.ts +++ b/packages/database-mongo/__tests__/index.ts @@ -19,6 +19,15 @@ const session = { userAgent: 'user agent', }; +const authenticator = { + type: 'otp', + userId: '123', + active: false, +}; +const mfaChallenge = { + userId: '123', +}; + function delay(time: number) { return new Promise((resolve) => setTimeout(() => resolve(), time)); } @@ -879,62 +888,210 @@ describe('Mongo', () => { }); describe('createAuthenticator', () => { - it('should throw an error', async () => { - await expect(databaseTests.database.createAuthenticator({} as any)).rejects.toThrowError(); + it('create an authenticator', async () => { + const authenticatorId = await databaseTests.database.createAuthenticator(authenticator); + const ret = await databaseTests.database.findAuthenticatorById(authenticatorId); + expect(authenticatorId).toBeTruthy(); + expect(ret).toEqual({ + _id: expect.any(ObjectID), + id: expect.any(String), + active: false, + type: 'otp', + userId: '123', + createdAt: expect.any(Number), + updatedAt: expect.any(Number), + }); + }); + + it('call options.idProvider', async () => { + const mongoOptions = new Mongo(databaseTests.db, { + idProvider: () => 'toto', + convertAuthenticatorIdToMongoObjectId: false, + }); + const authenticatorId = await mongoOptions.createAuthenticator(authenticator); + const ret = await mongoOptions.findAuthenticatorById(authenticatorId); + expect(authenticatorId).toBe('toto'); + expect(ret?.id).toBe('toto'); }); }); describe('findAuthenticatorById', () => { - it('should throw an error', async () => { - await expect(databaseTests.database.findAuthenticatorById('userId')).rejects.toThrowError(); + it('should return null for not found authenticator', async () => { + const ret = await databaseTests.database.findAuthenticatorById('589871d1c9393d445745a57c'); + expect(ret).not.toBeTruthy(); + }); + + it('should find authenticator', async () => { + const authenticatorId = await databaseTests.database.createAuthenticator(authenticator); + const ret = await databaseTests.database.findAuthenticatorById(authenticatorId); + expect(ret).toBeTruthy(); }); }); describe('findUserAuthenticators', () => { - it('should throw an error', async () => { - await expect(databaseTests.database.findUserAuthenticators('userId')).rejects.toThrowError(); + it('should find authenticators of the current user', async () => { + await Promise.all([ + databaseTests.database.createAuthenticator(authenticator), + databaseTests.database.createAuthenticator(authenticator), + databaseTests.database.createAuthenticator(authenticator), + // create an authenticator for another user that should not be returned + databaseTests.database.createAuthenticator({ ...authenticator, userId: '456' }), + ]); + const ret = await databaseTests.database.findUserAuthenticators(authenticator.userId); + expect(ret.length).toBe(3); }); }); describe('activateAuthenticator', () => { - it('should throw an error', async () => { - await expect(databaseTests.database.activateAuthenticator('userId')).rejects.toThrowError(); + // eslint-disable-next-line jest/expect-expect + it('should not convert id', async () => { + const mongoOptions = new Mongo(databaseTests.db, { + convertAuthenticatorIdToMongoObjectId: false, + }); + await mongoOptions.activateAuthenticator('toto'); + }); + + it('activate an authenticator', async () => { + const authenticatorId = await databaseTests.database.createAuthenticator(authenticator); + await databaseTests.database.activateAuthenticator(authenticatorId); + const ret = await databaseTests.database.findAuthenticatorById(authenticatorId); + expect(ret?.active).toEqual(true); + expect(ret?.activatedAt).not.toEqual(ret?.createdAt); + expect(ret?.updatedAt).not.toEqual(ret?.createdAt); }); }); describe('deactivateAuthenticator', () => { - it('should throw an error', async () => { - await expect(databaseTests.database.deactivateAuthenticator('userId')).rejects.toThrowError(); + // eslint-disable-next-line jest/expect-expect + it('should not convert id', async () => { + const mongoOptions = new Mongo(databaseTests.db, { + convertAuthenticatorIdToMongoObjectId: false, + }); + await mongoOptions.deactivateAuthenticator('toto'); + }); + + it('deactivate an authenticator', async () => { + const authenticatorId = await databaseTests.database.createAuthenticator(authenticator); + await databaseTests.database.deactivateAuthenticator(authenticatorId); + const ret = await databaseTests.database.findAuthenticatorById(authenticatorId); + expect(ret?.active).toEqual(false); + expect(ret?.deactivatedAt).not.toEqual(ret?.createdAt); + expect(ret?.updatedAt).not.toEqual(ret?.createdAt); }); }); describe('updateAuthenticator', () => { - it('should throw an error', async () => { - await expect(databaseTests.database.updateAuthenticator('userId')).rejects.toThrowError(); + // eslint-disable-next-line jest/expect-expect + it('should not convert id', async () => { + const mongoOptions = new Mongo(databaseTests.db, { + convertAuthenticatorIdToMongoObjectId: false, + }); + await mongoOptions.updateAuthenticator('toto', { extra: true }); + }); + + it('update an authenticator', async () => { + const authenticatorId = await databaseTests.database.createAuthenticator(authenticator); + await databaseTests.database.updateAuthenticator(authenticatorId, { extraData: true }); + const ret = await databaseTests.database.findAuthenticatorById(authenticatorId); + expect(ret?.extraData).toEqual(true); + expect(ret?.updatedAt).not.toEqual(ret?.createdAt); }); }); describe('createMfaChallenge', () => { - it('should throw an error', async () => { - await expect(databaseTests.database.createMfaChallenge({} as any)).rejects.toThrowError(); + it('create a mfa challenge', async () => { + const token = generateRandomToken(); + const mfaChallengeId = await databaseTests.database.createMfaChallenge({ + ...mfaChallenge, + token, + }); + const ret = await databaseTests.database.findMfaChallengeByToken(token); + expect(mfaChallengeId).toBeTruthy(); + expect(ret).toEqual({ + _id: expect.any(ObjectID), + id: expect.any(String), + token, + userId: '123', + createdAt: expect.any(Number), + updatedAt: expect.any(Number), + }); + }); + + it('call options.idProvider', async () => { + const mongoOptions = new Mongo(databaseTests.db, { + idProvider: () => 'toto', + convertMfaChallengeIdToMongoObjectId: false, + }); + const token = generateRandomToken(); + const mfaChallengeId = await mongoOptions.createMfaChallenge({ + ...mfaChallenge, + token, + }); + const ret = await mongoOptions.findMfaChallengeByToken(token); + expect(mfaChallengeId).toBe('toto'); + expect(ret?.id).toBe('toto'); }); }); describe('findMfaChallengeByToken', () => { - it('should throw an error', async () => { - await expect(databaseTests.database.findMfaChallengeByToken('userId')).rejects.toThrowError(); + it('should return null for not found authenticator', async () => { + const ret = await databaseTests.database.findMfaChallengeByToken('589871d1c9393d445745a57c'); + expect(ret).not.toBeTruthy(); + }); + + it('should find authenticator', async () => { + const token = generateRandomToken(); + await databaseTests.database.createMfaChallenge({ + ...mfaChallenge, + token, + }); + const ret = await databaseTests.database.findMfaChallengeByToken(token); + expect(ret).toBeTruthy(); }); }); describe('deactivateMfaChallenge', () => { - it('should throw an error', async () => { - await expect(databaseTests.database.deactivateMfaChallenge('userId')).rejects.toThrowError(); + // eslint-disable-next-line jest/expect-expect + it('should not convert id', async () => { + const mongoOptions = new Mongo(databaseTests.db, { + convertMfaChallengeIdToMongoObjectId: false, + }); + await mongoOptions.deactivateMfaChallenge('toto'); + }); + + it('deactivate an mfa challenge', async () => { + const token = generateRandomToken(); + const mfaChallengeId = await databaseTests.database.createMfaChallenge({ + ...mfaChallenge, + token, + }); + await databaseTests.database.deactivateMfaChallenge(mfaChallengeId); + const ret = await databaseTests.database.findMfaChallengeByToken(token); + expect(ret?.deactivated).toEqual(true); + expect(ret?.deactivatedAt).not.toEqual(ret?.createdAt); + expect(ret?.updatedAt).not.toEqual(ret?.createdAt); }); }); describe('updateMfaChallenge', () => { - it('should throw an error', async () => { - await expect(databaseTests.database.updateMfaChallenge('userId')).rejects.toThrowError(); + // eslint-disable-next-line jest/expect-expect + it('should not convert id', async () => { + const mongoOptions = new Mongo(databaseTests.db, { + convertMfaChallengeIdToMongoObjectId: false, + }); + await mongoOptions.updateMfaChallenge('toto', { extra: true }); + }); + + it('update an mfa challenge', async () => { + const token = generateRandomToken(); + const mfaChallengeId = await databaseTests.database.createMfaChallenge({ + ...mfaChallenge, + token, + }); + await databaseTests.database.updateMfaChallenge(mfaChallengeId, { extraData: true }); + const ret = await databaseTests.database.findMfaChallengeByToken(token); + expect(ret?.extraData).toEqual(true); + expect(ret?.updatedAt).not.toEqual(ret?.createdAt); }); }); }); diff --git a/packages/database-mongo/src/mongo.ts b/packages/database-mongo/src/mongo.ts index 6d5b5e446..29cc0fcf1 100644 --- a/packages/database-mongo/src/mongo.ts +++ b/packages/database-mongo/src/mongo.ts @@ -12,7 +12,7 @@ import { import { get, merge } from 'lodash'; import { Collection, Db, ObjectID, IndexOptions } from 'mongodb'; -import { AccountsMongoOptions, MongoUser } from './types'; +import { AccountsMongoOptions, MongoUser, MongoAuthenticator, MongoMfaChallenge } from './types'; const toMongoID = (objectId: string | ObjectID) => { if (typeof objectId === 'string') { @@ -24,12 +24,16 @@ const toMongoID = (objectId: string | ObjectID) => { const defaultOptions = { collectionName: 'users', sessionCollectionName: 'sessions', + authenticatorCollectionName: 'authenticators', + mfaChallengeCollectionName: 'mfaChallenges', timestamps: { createdAt: 'createdAt', updatedAt: 'updatedAt', }, convertUserIdToMongoObjectId: true, convertSessionIdToMongoObjectId: true, + convertAuthenticatorIdToMongoObjectId: true, + convertMfaChallengeIdToMongoObjectId: true, caseSensitiveUserName: true, dateProvider: (date?: Date) => (date ? date.getTime() : Date.now()), }; @@ -43,6 +47,10 @@ export class Mongo implements DatabaseInterface { private collection: Collection; // Session collection private sessionCollection: Collection; + // Authenticator collection + private authenticatorCollection: Collection; + // Mfa challenge collection + private mfaChallengeCollection: Collection; constructor(db: any, options?: AccountsMongoOptions) { this.options = merge({ ...defaultOptions }, options); @@ -52,6 +60,8 @@ export class Mongo implements DatabaseInterface { this.db = db; this.collection = this.db.collection(this.options.collectionName); this.sessionCollection = this.db.collection(this.options.sessionCollectionName); + this.authenticatorCollection = this.db.collection(this.options.authenticatorCollectionName); + this.mfaChallengeCollection = this.db.collection(this.options.mfaChallengeCollectionName); } /** @@ -83,6 +93,16 @@ export class Mongo implements DatabaseInterface { ...options, sparse: true, }); + // Index related to the mfa service + await this.authenticatorCollection.createIndex('userId', { + ...options, + sparse: true, + }); + await this.mfaChallengeCollection.createIndex('token', { + ...options, + unique: true, + sparse: true, + }); } public async createUser({ @@ -476,57 +496,146 @@ export class Mongo implements DatabaseInterface { * MFA authenticators related operations */ - // eslint-disable-next-line @typescript-eslint/no-unused-vars public async createAuthenticator(newAuthenticator: CreateAuthenticator): Promise { - throw new Error('Mfa for mongo is not yet implemented'); + const authenticator: MongoAuthenticator = { + ...newAuthenticator, + [this.options.timestamps.createdAt]: this.options.dateProvider(), + [this.options.timestamps.updatedAt]: this.options.dateProvider(), + }; + if (this.options.idProvider) { + authenticator._id = this.options.idProvider(); + } + const ret = await this.authenticatorCollection.insertOne(authenticator); + return (ret.ops[0]._id as ObjectID).toString(); } - // eslint-disable-next-line @typescript-eslint/no-unused-vars public async findAuthenticatorById(authenticatorId: string): Promise { - throw new Error('Mfa for mongo is not yet implemented'); + const id = this.options.convertAuthenticatorIdToMongoObjectId + ? toMongoID(authenticatorId) + : authenticatorId; + const authenticator = await this.authenticatorCollection.findOne({ _id: id }); + if (authenticator) { + authenticator.id = authenticator._id.toString(); + } + return authenticator; } - // eslint-disable-next-line @typescript-eslint/no-unused-vars public async findUserAuthenticators(userId: string): Promise { - throw new Error('Mfa for mongo is not yet implemented'); + const authenticators = await this.authenticatorCollection.find({ userId }).toArray(); + authenticators.forEach((authenticator) => { + authenticator.id = authenticator._id.toString(); + }); + return authenticators; } - // eslint-disable-next-line @typescript-eslint/no-unused-vars public async activateAuthenticator(authenticatorId: string): Promise { - throw new Error('Mfa for mongo is not yet implemented'); + const id = this.options.convertAuthenticatorIdToMongoObjectId + ? toMongoID(authenticatorId) + : authenticatorId; + await this.authenticatorCollection.updateOne( + { _id: id }, + { + $set: { + active: true, + activatedAt: this.options.dateProvider(), + [this.options.timestamps.updatedAt]: this.options.dateProvider(), + }, + } + ); } - // eslint-disable-next-line @typescript-eslint/no-unused-vars public async deactivateAuthenticator(authenticatorId: string): Promise { - throw new Error('Mfa for mongo is not yet implemented'); + const id = this.options.convertAuthenticatorIdToMongoObjectId + ? toMongoID(authenticatorId) + : authenticatorId; + await this.authenticatorCollection.updateOne( + { _id: id }, + { + $set: { + active: false, + deactivatedAt: this.options.dateProvider(), + [this.options.timestamps.updatedAt]: this.options.dateProvider(), + }, + } + ); } - // eslint-disable-next-line @typescript-eslint/no-unused-vars - public async updateAuthenticator(authenticatorId: string): Promise { - throw new Error('Mfa for mongo is not yet implemented'); + public async updateAuthenticator( + authenticatorId: string, + data: Partial + ): Promise { + const id = this.options.convertAuthenticatorIdToMongoObjectId + ? toMongoID(authenticatorId) + : authenticatorId; + await this.authenticatorCollection.updateOne( + { _id: id }, + { + $set: { + ...data, + [this.options.timestamps.updatedAt]: this.options.dateProvider(), + }, + } + ); } /** * MFA challenges related operations */ - // eslint-disable-next-line @typescript-eslint/no-unused-vars public async createMfaChallenge(newMfaChallenge: CreateMfaChallenge): Promise { - throw new Error('Mfa for mongo is not yet implemented'); + const mfaChallenge: MongoMfaChallenge = { + ...newMfaChallenge, + [this.options.timestamps.createdAt]: this.options.dateProvider(), + [this.options.timestamps.updatedAt]: this.options.dateProvider(), + }; + if (this.options.idProvider) { + mfaChallenge._id = this.options.idProvider(); + } + const ret = await this.mfaChallengeCollection.insertOne(mfaChallenge); + return (ret.ops[0]._id as ObjectID).toString(); } - // eslint-disable-next-line @typescript-eslint/no-unused-vars public async findMfaChallengeByToken(token: string): Promise { - throw new Error('Mfa for mongo is not yet implemented'); + const mfaChallenge = await this.mfaChallengeCollection.findOne({ + token, + }); + if (mfaChallenge) { + mfaChallenge.id = mfaChallenge._id.toString(); + } + return mfaChallenge; } - // eslint-disable-next-line @typescript-eslint/no-unused-vars public async deactivateMfaChallenge(mfaChallengeId: string): Promise { - throw new Error('Mfa for mongo is not yet implemented'); + const id = this.options.convertMfaChallengeIdToMongoObjectId + ? toMongoID(mfaChallengeId) + : mfaChallengeId; + await this.mfaChallengeCollection.updateOne( + { _id: id }, + { + $set: { + deactivated: true, + deactivatedAt: this.options.dateProvider(), + [this.options.timestamps.updatedAt]: this.options.dateProvider(), + }, + } + ); } - // eslint-disable-next-line @typescript-eslint/no-unused-vars - public async updateMfaChallenge(mfaChallengeId: string): Promise { - throw new Error('Mfa for mongo is not yet implemented'); + public async updateMfaChallenge( + mfaChallengeId: string, + data: Partial + ): Promise { + const id = this.options.convertMfaChallengeIdToMongoObjectId + ? toMongoID(mfaChallengeId) + : mfaChallengeId; + await this.mfaChallengeCollection.updateOne( + { _id: id }, + { + $set: { + ...data, + [this.options.timestamps.updatedAt]: this.options.dateProvider(), + }, + } + ); } } diff --git a/packages/database-mongo/src/types/index.ts b/packages/database-mongo/src/types/index.ts index a40af67b4..87110173f 100644 --- a/packages/database-mongo/src/types/index.ts +++ b/packages/database-mongo/src/types/index.ts @@ -4,6 +4,14 @@ export interface AccountsMongoOptions { * Default 'users'. */ collectionName?: string; + /** + * The authenticators collection name, default 'authenticators'. + */ + authenticatorCollectionName?: string; + /** + * The mfa challenges collection name, default 'mfaChallenges'. + */ + mfaChallengeCollectionName?: string; /** * The sessions collection name. * Default 'sessions'. @@ -27,6 +35,16 @@ export interface AccountsMongoOptions { * Default 'true'. */ convertSessionIdToMongoObjectId?: boolean; + /** + * Should the authenticator collection use _id as string or ObjectId. + * Default 'true'. + */ + convertAuthenticatorIdToMongoObjectId?: boolean; + /** + * Should the mfa challenge collection use _id as string or ObjectId. + * Default 'true'. + */ + convertMfaChallengeIdToMongoObjectId?: boolean; /** * Perform case intensitive query for user name. * Default 'true'. @@ -59,3 +77,17 @@ export interface MongoUser { ]; [key: string]: any; } + +export interface MongoAuthenticator { + _id?: string | object; + type?: string; + userId?: string; + [key: string]: any; +} + +export interface MongoMfaChallenge { + _id?: string | object; + userId?: string; + authenticatorId?: string; + token: string; +} From a8dbc3401ca8a9e087b7b5daae8628725a87b975 Mon Sep 17 00:00:00 2001 From: pradel Date: Thu, 6 Aug 2020 16:09:07 +0200 Subject: [PATCH 127/146] fix graphql-client --- packages/authenticator-otp/package.json | 6 +- packages/graphql-api/introspection.json | 2 +- packages/graphql-api/src/models.ts | 6 +- .../graphql-client/src/graphql-operations.ts | 142 +++++++++++++++++- .../accounts-mfa/associate.mutation.ts | 13 -- .../associateByMfaToken.mutation.ts | 13 -- .../accounts-mfa/authenticators.query.ts | 12 -- .../authenticatorsByMfaToken.query.ts | 12 -- .../accounts-mfa/challenge.mutation.ts | 9 -- .../accounts-mfa/mutations/associate.graphql | 8 + .../mutations/associateByMfaToken.graphql | 8 + .../accounts-mfa/mutations/challenge.graphql | 9 ++ .../queries/authenticators.graphql | 9 ++ .../queries/authenticatorsByMfaToken.graphql | 8 + .../mutations/login-with-service.graphql | 16 +- .../authenticator-service.ts | 6 +- .../types/mfa/authenticator/authenticator.ts | 30 ---- .../mfa/authenticator/create-authenticator.ts | 18 --- .../mfa/authenticator/database-interface.ts | 16 -- .../mfa/challenge/create-mfa-challenge.ts | 22 --- .../types/mfa/challenge/database-interface.ts | 12 -- .../src/types/mfa/challenge/mfa-challenge.ts | 34 ----- 22 files changed, 200 insertions(+), 211 deletions(-) delete mode 100644 packages/graphql-client/src/graphql/accounts-mfa/associate.mutation.ts delete mode 100644 packages/graphql-client/src/graphql/accounts-mfa/associateByMfaToken.mutation.ts delete mode 100644 packages/graphql-client/src/graphql/accounts-mfa/authenticators.query.ts delete mode 100644 packages/graphql-client/src/graphql/accounts-mfa/authenticatorsByMfaToken.query.ts delete mode 100644 packages/graphql-client/src/graphql/accounts-mfa/challenge.mutation.ts create mode 100644 packages/graphql-client/src/graphql/accounts-mfa/mutations/associate.graphql create mode 100644 packages/graphql-client/src/graphql/accounts-mfa/mutations/associateByMfaToken.graphql create mode 100644 packages/graphql-client/src/graphql/accounts-mfa/mutations/challenge.graphql create mode 100644 packages/graphql-client/src/graphql/accounts-mfa/queries/authenticators.graphql create mode 100644 packages/graphql-client/src/graphql/accounts-mfa/queries/authenticatorsByMfaToken.graphql rename packages/types/src/types/mfa/{authenticator => }/authenticator-service.ts (78%) delete mode 100644 packages/types/src/types/mfa/authenticator/authenticator.ts delete mode 100644 packages/types/src/types/mfa/authenticator/create-authenticator.ts delete mode 100644 packages/types/src/types/mfa/authenticator/database-interface.ts delete mode 100644 packages/types/src/types/mfa/challenge/create-mfa-challenge.ts delete mode 100644 packages/types/src/types/mfa/challenge/database-interface.ts delete mode 100644 packages/types/src/types/mfa/challenge/mfa-challenge.ts diff --git a/packages/authenticator-otp/package.json b/packages/authenticator-otp/package.json index 416e247e7..77303a950 100644 --- a/packages/authenticator-otp/package.json +++ b/packages/authenticator-otp/package.json @@ -1,6 +1,6 @@ { "name": "@accounts/authenticator-otp", - "version": "0.28.0-alpha.1", + "version": "0.29.0", "description": "@accounts/authenticator-otp", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -29,14 +29,14 @@ "author": "Leo Pradel", "license": "MIT", "devDependencies": { - "@accounts/server": "^0.28.0-alpha.1", + "@accounts/server": "^0.29.0", "@types/jest": "26.0.0", "@types/node": "12.7.4", "jest": "26.0.1", "rimraf": "3.0.2" }, "dependencies": { - "@accounts/types": "^0.28.0-alpha.1", + "@accounts/types": "^0.29.0", "otplib": "11.0.1", "tslib": "1.10.0" }, diff --git a/packages/graphql-api/introspection.json b/packages/graphql-api/introspection.json index ecad15584..a940fb721 100644 --- a/packages/graphql-api/introspection.json +++ b/packages/graphql-api/introspection.json @@ -1 +1 @@ -{"__schema":{"queryType":{"name":"Query"},"mutationType":{"name":"Mutation"},"subscriptionType":null,"types":[{"kind":"OBJECT","name":"Query","description":null,"fields":[{"name":"twoFactorSecret","description":null,"args":[],"type":{"kind":"OBJECT","name":"TwoFactorSecretKey","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"getUser","description":null,"args":[],"type":{"kind":"OBJECT","name":"User","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"TwoFactorSecretKey","description":null,"fields":[{"name":"ascii","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"base32","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"hex","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"qr_code_ascii","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"qr_code_hex","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"qr_code_base32","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"google_auth_qr","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"otpauth_url","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"String","description":"The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"User","description":null,"fields":[{"name":"id","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"emails","description":null,"args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"EmailRecord","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"username","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"ID","description":"The `ID` scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as `\"4\"`) or integer (such as `4`) input value will be accepted as an ID.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"EmailRecord","description":null,"fields":[{"name":"address","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"verified","description":null,"args":[],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"Boolean","description":"The `Boolean` scalar type represents `true` or `false`.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"Mutation","description":null,"fields":[{"name":"createUser","description":null,"args":[{"name":"user","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"INPUT_OBJECT","name":"CreateUserInput","ofType":null}},"defaultValue":null}],"type":{"kind":"OBJECT","name":"CreateUserResult","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"verifyEmail","description":null,"args":[{"name":"token","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"resetPassword","description":null,"args":[{"name":"token","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"newPassword","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"OBJECT","name":"LoginResult","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"sendVerificationEmail","description":null,"args":[{"name":"email","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"sendResetPasswordEmail","description":null,"args":[{"name":"email","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"addEmail","description":null,"args":[{"name":"newEmail","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"changePassword","description":null,"args":[{"name":"oldPassword","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"newPassword","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"twoFactorSet","description":null,"args":[{"name":"secret","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"INPUT_OBJECT","name":"TwoFactorSecretKeyInput","ofType":null}},"defaultValue":null},{"name":"code","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"twoFactorUnset","description":null,"args":[{"name":"code","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"impersonate","description":null,"args":[{"name":"accessToken","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"impersonated","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"INPUT_OBJECT","name":"ImpersonationUserIdentityInput","ofType":null}},"defaultValue":null}],"type":{"kind":"OBJECT","name":"ImpersonateReturn","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"refreshTokens","description":null,"args":[{"name":"accessToken","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"refreshToken","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"OBJECT","name":"LoginResult","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"logout","description":null,"args":[],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"authenticate","description":null,"args":[{"name":"serviceName","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"params","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"INPUT_OBJECT","name":"AuthenticateParamsInput","ofType":null}},"defaultValue":null}],"type":{"kind":"OBJECT","name":"LoginResult","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"verifyAuthentication","description":null,"args":[{"name":"serviceName","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"params","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"INPUT_OBJECT","name":"AuthenticateParamsInput","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"CreateUserInput","description":null,"fields":null,"inputFields":[{"name":"username","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"email","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"password","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"CreateUserResult","description":null,"fields":[{"name":"userId","description":null,"args":[],"type":{"kind":"SCALAR","name":"ID","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"loginResult","description":null,"args":[],"type":{"kind":"OBJECT","name":"LoginResult","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"LoginResult","description":null,"fields":[{"name":"sessionId","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"tokens","description":null,"args":[],"type":{"kind":"OBJECT","name":"Tokens","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"user","description":null,"args":[],"type":{"kind":"OBJECT","name":"User","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"Tokens","description":null,"fields":[{"name":"refreshToken","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"accessToken","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"TwoFactorSecretKeyInput","description":null,"fields":null,"inputFields":[{"name":"ascii","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"base32","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"hex","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"qr_code_ascii","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"qr_code_hex","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"qr_code_base32","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"google_auth_qr","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"otpauth_url","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"ImpersonationUserIdentityInput","description":null,"fields":null,"inputFields":[{"name":"userId","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"username","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"email","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"ImpersonateReturn","description":null,"fields":[{"name":"authorized","description":null,"args":[],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"tokens","description":null,"args":[],"type":{"kind":"OBJECT","name":"Tokens","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"user","description":null,"args":[],"type":{"kind":"OBJECT","name":"User","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"AuthenticateParamsInput","description":null,"fields":null,"inputFields":[{"name":"access_token","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"access_token_secret","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"provider","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"password","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"user","description":null,"type":{"kind":"INPUT_OBJECT","name":"UserInput","ofType":null},"defaultValue":null},{"name":"code","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"UserInput","description":null,"fields":null,"inputFields":[{"name":"id","description":null,"type":{"kind":"SCALAR","name":"ID","ofType":null},"defaultValue":null},{"name":"email","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"username","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__Schema","description":"A GraphQL Schema defines the capabilities of a GraphQL server. It exposes all available types and directives on the server, as well as the entry points for query, mutation, and subscription operations.","fields":[{"name":"types","description":"A list of all types supported by this server.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}}}},"isDeprecated":false,"deprecationReason":null},{"name":"queryType","description":"The type that query operations will be rooted at.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"mutationType","description":"If this server supports mutation, the type that mutation operations will be rooted at.","args":[],"type":{"kind":"OBJECT","name":"__Type","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"subscriptionType","description":"If this server support subscription, the type that subscription operations will be rooted at.","args":[],"type":{"kind":"OBJECT","name":"__Type","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"directives","description":"A list of all directives supported by this server.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Directive","ofType":null}}}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__Type","description":"The fundamental unit of any GraphQL Schema is the type. There are many kinds of types in GraphQL as represented by the `__TypeKind` enum.\n\nDepending on the kind of a type, certain fields describe information about that type. Scalar types provide no information beyond a name and description, while Enum types provide their values. Object and Interface types provide the fields they describe. Abstract types, Union and Interface, provide the Object types possible at runtime. List and NonNull types compose other types.","fields":[{"name":"kind","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"ENUM","name":"__TypeKind","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"name","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"fields","description":null,"args":[{"name":"includeDeprecated","description":null,"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"defaultValue":"false"}],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Field","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"interfaces","description":null,"args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"possibleTypes","description":null,"args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"enumValues","description":null,"args":[{"name":"includeDeprecated","description":null,"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"defaultValue":"false"}],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__EnumValue","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"inputFields","description":null,"args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__InputValue","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"ofType","description":null,"args":[],"type":{"kind":"OBJECT","name":"__Type","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"ENUM","name":"__TypeKind","description":"An enum describing what kind of type a given `__Type` is.","fields":null,"inputFields":null,"interfaces":null,"enumValues":[{"name":"SCALAR","description":"Indicates this type is a scalar.","isDeprecated":false,"deprecationReason":null},{"name":"OBJECT","description":"Indicates this type is an object. `fields` and `interfaces` are valid fields.","isDeprecated":false,"deprecationReason":null},{"name":"INTERFACE","description":"Indicates this type is an interface. `fields` and `possibleTypes` are valid fields.","isDeprecated":false,"deprecationReason":null},{"name":"UNION","description":"Indicates this type is a union. `possibleTypes` is a valid field.","isDeprecated":false,"deprecationReason":null},{"name":"ENUM","description":"Indicates this type is an enum. `enumValues` is a valid field.","isDeprecated":false,"deprecationReason":null},{"name":"INPUT_OBJECT","description":"Indicates this type is an input object. `inputFields` is a valid field.","isDeprecated":false,"deprecationReason":null},{"name":"LIST","description":"Indicates this type is a list. `ofType` is a valid field.","isDeprecated":false,"deprecationReason":null},{"name":"NON_NULL","description":"Indicates this type is a non-null. `ofType` is a valid field.","isDeprecated":false,"deprecationReason":null}],"possibleTypes":null},{"kind":"OBJECT","name":"__Field","description":"Object and Interface types are described by a list of Fields, each of which has a name, potentially a list of arguments, and a return type.","fields":[{"name":"name","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"args","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__InputValue","ofType":null}}}},"isDeprecated":false,"deprecationReason":null},{"name":"type","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"isDeprecated","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"deprecationReason","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__InputValue","description":"Arguments provided to Fields or Directives and the input fields of an InputObject are represented as Input Values which describe their type and optionally a default value.","fields":[{"name":"name","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"type","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"defaultValue","description":"A GraphQL-formatted string representing the default value for this input value.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__EnumValue","description":"One possible value for a given Enum. Enum values are unique values, not a placeholder for a string or numeric value. However an Enum value is returned in a JSON response as a string.","fields":[{"name":"name","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"isDeprecated","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"deprecationReason","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__Directive","description":"A Directive provides a way to describe alternate runtime execution and type validation behavior in a GraphQL document.\n\nIn some cases, you need to provide options to alter GraphQL's execution behavior in ways field arguments will not suffice, such as conditionally including or skipping a field. Directives provide this by describing additional information to the executor.","fields":[{"name":"name","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"locations","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"ENUM","name":"__DirectiveLocation","ofType":null}}}},"isDeprecated":false,"deprecationReason":null},{"name":"args","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__InputValue","ofType":null}}}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"ENUM","name":"__DirectiveLocation","description":"A Directive can be adjacent to many parts of the GraphQL language, a __DirectiveLocation describes one such possible adjacencies.","fields":null,"inputFields":null,"interfaces":null,"enumValues":[{"name":"QUERY","description":"Location adjacent to a query operation.","isDeprecated":false,"deprecationReason":null},{"name":"MUTATION","description":"Location adjacent to a mutation operation.","isDeprecated":false,"deprecationReason":null},{"name":"SUBSCRIPTION","description":"Location adjacent to a subscription operation.","isDeprecated":false,"deprecationReason":null},{"name":"FIELD","description":"Location adjacent to a field.","isDeprecated":false,"deprecationReason":null},{"name":"FRAGMENT_DEFINITION","description":"Location adjacent to a fragment definition.","isDeprecated":false,"deprecationReason":null},{"name":"FRAGMENT_SPREAD","description":"Location adjacent to a fragment spread.","isDeprecated":false,"deprecationReason":null},{"name":"INLINE_FRAGMENT","description":"Location adjacent to an inline fragment.","isDeprecated":false,"deprecationReason":null},{"name":"VARIABLE_DEFINITION","description":"Location adjacent to a variable definition.","isDeprecated":false,"deprecationReason":null},{"name":"SCHEMA","description":"Location adjacent to a schema definition.","isDeprecated":false,"deprecationReason":null},{"name":"SCALAR","description":"Location adjacent to a scalar definition.","isDeprecated":false,"deprecationReason":null},{"name":"OBJECT","description":"Location adjacent to an object type definition.","isDeprecated":false,"deprecationReason":null},{"name":"FIELD_DEFINITION","description":"Location adjacent to a field definition.","isDeprecated":false,"deprecationReason":null},{"name":"ARGUMENT_DEFINITION","description":"Location adjacent to an argument definition.","isDeprecated":false,"deprecationReason":null},{"name":"INTERFACE","description":"Location adjacent to an interface definition.","isDeprecated":false,"deprecationReason":null},{"name":"UNION","description":"Location adjacent to a union definition.","isDeprecated":false,"deprecationReason":null},{"name":"ENUM","description":"Location adjacent to an enum definition.","isDeprecated":false,"deprecationReason":null},{"name":"ENUM_VALUE","description":"Location adjacent to an enum value definition.","isDeprecated":false,"deprecationReason":null},{"name":"INPUT_OBJECT","description":"Location adjacent to an input object type definition.","isDeprecated":false,"deprecationReason":null},{"name":"INPUT_FIELD_DEFINITION","description":"Location adjacent to an input object field definition.","isDeprecated":false,"deprecationReason":null}],"possibleTypes":null}],"directives":[{"name":"auth","description":null,"locations":["FIELD_DEFINITION","OBJECT"],"args":[]},{"name":"skip","description":"Directs the executor to skip this field or fragment when the `if` argument is true.","locations":["FIELD","FRAGMENT_SPREAD","INLINE_FRAGMENT"],"args":[{"name":"if","description":"Skipped when true.","type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"defaultValue":null}]},{"name":"include","description":"Directs the executor to include this field or fragment only when the `if` argument is true.","locations":["FIELD","FRAGMENT_SPREAD","INLINE_FRAGMENT"],"args":[{"name":"if","description":"Included when true.","type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"defaultValue":null}]},{"name":"deprecated","description":"Marks an element of a GraphQL schema as no longer supported.","locations":["FIELD_DEFINITION","ENUM_VALUE"],"args":[{"name":"reason","description":"Explains why this element was deprecated, usually also including a suggestion for how to access supported similar data. Formatted using the Markdown syntax (as specified by [CommonMark](https://commonmark.org/).","type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":"\"No longer supported\""}]}]}} \ No newline at end of file +{"__schema":{"queryType":{"name":"Query"},"mutationType":{"name":"Mutation"},"subscriptionType":null,"types":[{"kind":"OBJECT","name":"Query","description":null,"fields":[{"name":"authenticators","description":null,"args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"OBJECT","name":"Authenticator","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"authenticatorsByMfaToken","description":null,"args":[{"name":"mfaToken","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"LIST","name":null,"ofType":{"kind":"OBJECT","name":"Authenticator","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"twoFactorSecret","description":null,"args":[],"type":{"kind":"OBJECT","name":"TwoFactorSecretKey","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"getUser","description":null,"args":[],"type":{"kind":"OBJECT","name":"User","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"Authenticator","description":null,"fields":[{"name":"id","description":null,"args":[],"type":{"kind":"SCALAR","name":"ID","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"type","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"active","description":null,"args":[],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"activatedAt","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"ID","description":"The `ID` scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as `\"4\"`) or integer (such as `4`) input value will be accepted as an ID.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"String","description":"The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"Boolean","description":"The `Boolean` scalar type represents `true` or `false`.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"TwoFactorSecretKey","description":null,"fields":[{"name":"ascii","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"base32","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"hex","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"qr_code_ascii","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"qr_code_hex","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"qr_code_base32","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"google_auth_qr","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"otpauth_url","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"User","description":null,"fields":[{"name":"id","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"emails","description":null,"args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"EmailRecord","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"username","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"EmailRecord","description":null,"fields":[{"name":"address","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"verified","description":null,"args":[],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"Mutation","description":null,"fields":[{"name":"challenge","description":null,"args":[{"name":"mfaToken","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"authenticatorId","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"UNION","name":"ChallengeResult","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"associate","description":null,"args":[{"name":"type","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"params","description":null,"type":{"kind":"INPUT_OBJECT","name":"AssociateParamsInput","ofType":null},"defaultValue":null}],"type":{"kind":"UNION","name":"AssociationResult","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"associateByMfaToken","description":null,"args":[{"name":"mfaToken","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"type","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"params","description":null,"type":{"kind":"INPUT_OBJECT","name":"AssociateParamsInput","ofType":null},"defaultValue":null}],"type":{"kind":"UNION","name":"AssociationResult","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"createUser","description":null,"args":[{"name":"user","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"INPUT_OBJECT","name":"CreateUserInput","ofType":null}},"defaultValue":null}],"type":{"kind":"OBJECT","name":"CreateUserResult","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"verifyEmail","description":null,"args":[{"name":"token","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"resetPassword","description":null,"args":[{"name":"token","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"newPassword","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"OBJECT","name":"LoginResult","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"sendVerificationEmail","description":null,"args":[{"name":"email","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"sendResetPasswordEmail","description":null,"args":[{"name":"email","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"addEmail","description":null,"args":[{"name":"newEmail","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"changePassword","description":null,"args":[{"name":"oldPassword","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"newPassword","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"twoFactorSet","description":null,"args":[{"name":"secret","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"INPUT_OBJECT","name":"TwoFactorSecretKeyInput","ofType":null}},"defaultValue":null},{"name":"code","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"twoFactorUnset","description":null,"args":[{"name":"code","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"impersonate","description":null,"args":[{"name":"accessToken","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"impersonated","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"INPUT_OBJECT","name":"ImpersonationUserIdentityInput","ofType":null}},"defaultValue":null}],"type":{"kind":"OBJECT","name":"ImpersonateReturn","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"refreshTokens","description":null,"args":[{"name":"accessToken","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"refreshToken","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"OBJECT","name":"LoginResult","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"logout","description":null,"args":[],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"authenticate","description":null,"args":[{"name":"serviceName","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"params","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"INPUT_OBJECT","name":"AuthenticateParamsInput","ofType":null}},"defaultValue":null}],"type":{"kind":"UNION","name":"AuthenticationResult","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"verifyAuthentication","description":null,"args":[{"name":"serviceName","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"params","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"INPUT_OBJECT","name":"AuthenticateParamsInput","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"UNION","name":"ChallengeResult","description":null,"fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":[{"kind":"OBJECT","name":"DefaultChallengeResult","ofType":null}]},{"kind":"OBJECT","name":"DefaultChallengeResult","description":null,"fields":[{"name":"mfaToken","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"authenticatorId","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"AssociateParamsInput","description":null,"fields":null,"inputFields":[{"name":"_","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"UNION","name":"AssociationResult","description":null,"fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":[{"kind":"OBJECT","name":"OTPAssociationResult","ofType":null}]},{"kind":"OBJECT","name":"OTPAssociationResult","description":null,"fields":[{"name":"mfaToken","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"authenticatorId","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"CreateUserInput","description":null,"fields":null,"inputFields":[{"name":"username","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"email","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"password","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"CreateUserResult","description":null,"fields":[{"name":"userId","description":null,"args":[],"type":{"kind":"SCALAR","name":"ID","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"loginResult","description":null,"args":[],"type":{"kind":"OBJECT","name":"LoginResult","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"LoginResult","description":null,"fields":[{"name":"sessionId","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"tokens","description":null,"args":[],"type":{"kind":"OBJECT","name":"Tokens","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"user","description":null,"args":[],"type":{"kind":"OBJECT","name":"User","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"Tokens","description":null,"fields":[{"name":"refreshToken","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"accessToken","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"TwoFactorSecretKeyInput","description":null,"fields":null,"inputFields":[{"name":"ascii","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"base32","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"hex","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"qr_code_ascii","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"qr_code_hex","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"qr_code_base32","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"google_auth_qr","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"otpauth_url","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"ImpersonationUserIdentityInput","description":null,"fields":null,"inputFields":[{"name":"userId","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"username","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"email","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"ImpersonateReturn","description":null,"fields":[{"name":"authorized","description":null,"args":[],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"tokens","description":null,"args":[],"type":{"kind":"OBJECT","name":"Tokens","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"user","description":null,"args":[],"type":{"kind":"OBJECT","name":"User","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"AuthenticateParamsInput","description":null,"fields":null,"inputFields":[{"name":"access_token","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"access_token_secret","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"provider","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"password","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"user","description":null,"type":{"kind":"INPUT_OBJECT","name":"UserInput","ofType":null},"defaultValue":null},{"name":"code","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"UserInput","description":null,"fields":null,"inputFields":[{"name":"id","description":null,"type":{"kind":"SCALAR","name":"ID","ofType":null},"defaultValue":null},{"name":"email","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"username","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"UNION","name":"AuthenticationResult","description":null,"fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":[{"kind":"OBJECT","name":"LoginResult","ofType":null},{"kind":"OBJECT","name":"MultiFactorResult","ofType":null}]},{"kind":"OBJECT","name":"MultiFactorResult","description":null,"fields":[{"name":"mfaToken","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__Schema","description":"A GraphQL Schema defines the capabilities of a GraphQL server. It exposes all available types and directives on the server, as well as the entry points for query, mutation, and subscription operations.","fields":[{"name":"types","description":"A list of all types supported by this server.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}}}},"isDeprecated":false,"deprecationReason":null},{"name":"queryType","description":"The type that query operations will be rooted at.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"mutationType","description":"If this server supports mutation, the type that mutation operations will be rooted at.","args":[],"type":{"kind":"OBJECT","name":"__Type","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"subscriptionType","description":"If this server support subscription, the type that subscription operations will be rooted at.","args":[],"type":{"kind":"OBJECT","name":"__Type","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"directives","description":"A list of all directives supported by this server.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Directive","ofType":null}}}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__Type","description":"The fundamental unit of any GraphQL Schema is the type. There are many kinds of types in GraphQL as represented by the `__TypeKind` enum.\n\nDepending on the kind of a type, certain fields describe information about that type. Scalar types provide no information beyond a name and description, while Enum types provide their values. Object and Interface types provide the fields they describe. Abstract types, Union and Interface, provide the Object types possible at runtime. List and NonNull types compose other types.","fields":[{"name":"kind","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"ENUM","name":"__TypeKind","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"name","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"fields","description":null,"args":[{"name":"includeDeprecated","description":null,"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"defaultValue":"false"}],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Field","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"interfaces","description":null,"args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"possibleTypes","description":null,"args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"enumValues","description":null,"args":[{"name":"includeDeprecated","description":null,"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"defaultValue":"false"}],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__EnumValue","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"inputFields","description":null,"args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__InputValue","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"ofType","description":null,"args":[],"type":{"kind":"OBJECT","name":"__Type","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"ENUM","name":"__TypeKind","description":"An enum describing what kind of type a given `__Type` is.","fields":null,"inputFields":null,"interfaces":null,"enumValues":[{"name":"SCALAR","description":"Indicates this type is a scalar.","isDeprecated":false,"deprecationReason":null},{"name":"OBJECT","description":"Indicates this type is an object. `fields` and `interfaces` are valid fields.","isDeprecated":false,"deprecationReason":null},{"name":"INTERFACE","description":"Indicates this type is an interface. `fields` and `possibleTypes` are valid fields.","isDeprecated":false,"deprecationReason":null},{"name":"UNION","description":"Indicates this type is a union. `possibleTypes` is a valid field.","isDeprecated":false,"deprecationReason":null},{"name":"ENUM","description":"Indicates this type is an enum. `enumValues` is a valid field.","isDeprecated":false,"deprecationReason":null},{"name":"INPUT_OBJECT","description":"Indicates this type is an input object. `inputFields` is a valid field.","isDeprecated":false,"deprecationReason":null},{"name":"LIST","description":"Indicates this type is a list. `ofType` is a valid field.","isDeprecated":false,"deprecationReason":null},{"name":"NON_NULL","description":"Indicates this type is a non-null. `ofType` is a valid field.","isDeprecated":false,"deprecationReason":null}],"possibleTypes":null},{"kind":"OBJECT","name":"__Field","description":"Object and Interface types are described by a list of Fields, each of which has a name, potentially a list of arguments, and a return type.","fields":[{"name":"name","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"args","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__InputValue","ofType":null}}}},"isDeprecated":false,"deprecationReason":null},{"name":"type","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"isDeprecated","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"deprecationReason","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__InputValue","description":"Arguments provided to Fields or Directives and the input fields of an InputObject are represented as Input Values which describe their type and optionally a default value.","fields":[{"name":"name","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"type","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"defaultValue","description":"A GraphQL-formatted string representing the default value for this input value.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__EnumValue","description":"One possible value for a given Enum. Enum values are unique values, not a placeholder for a string or numeric value. However an Enum value is returned in a JSON response as a string.","fields":[{"name":"name","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"isDeprecated","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"deprecationReason","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__Directive","description":"A Directive provides a way to describe alternate runtime execution and type validation behavior in a GraphQL document.\n\nIn some cases, you need to provide options to alter GraphQL's execution behavior in ways field arguments will not suffice, such as conditionally including or skipping a field. Directives provide this by describing additional information to the executor.","fields":[{"name":"name","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"locations","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"ENUM","name":"__DirectiveLocation","ofType":null}}}},"isDeprecated":false,"deprecationReason":null},{"name":"args","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__InputValue","ofType":null}}}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"ENUM","name":"__DirectiveLocation","description":"A Directive can be adjacent to many parts of the GraphQL language, a __DirectiveLocation describes one such possible adjacencies.","fields":null,"inputFields":null,"interfaces":null,"enumValues":[{"name":"QUERY","description":"Location adjacent to a query operation.","isDeprecated":false,"deprecationReason":null},{"name":"MUTATION","description":"Location adjacent to a mutation operation.","isDeprecated":false,"deprecationReason":null},{"name":"SUBSCRIPTION","description":"Location adjacent to a subscription operation.","isDeprecated":false,"deprecationReason":null},{"name":"FIELD","description":"Location adjacent to a field.","isDeprecated":false,"deprecationReason":null},{"name":"FRAGMENT_DEFINITION","description":"Location adjacent to a fragment definition.","isDeprecated":false,"deprecationReason":null},{"name":"FRAGMENT_SPREAD","description":"Location adjacent to a fragment spread.","isDeprecated":false,"deprecationReason":null},{"name":"INLINE_FRAGMENT","description":"Location adjacent to an inline fragment.","isDeprecated":false,"deprecationReason":null},{"name":"VARIABLE_DEFINITION","description":"Location adjacent to a variable definition.","isDeprecated":false,"deprecationReason":null},{"name":"SCHEMA","description":"Location adjacent to a schema definition.","isDeprecated":false,"deprecationReason":null},{"name":"SCALAR","description":"Location adjacent to a scalar definition.","isDeprecated":false,"deprecationReason":null},{"name":"OBJECT","description":"Location adjacent to an object type definition.","isDeprecated":false,"deprecationReason":null},{"name":"FIELD_DEFINITION","description":"Location adjacent to a field definition.","isDeprecated":false,"deprecationReason":null},{"name":"ARGUMENT_DEFINITION","description":"Location adjacent to an argument definition.","isDeprecated":false,"deprecationReason":null},{"name":"INTERFACE","description":"Location adjacent to an interface definition.","isDeprecated":false,"deprecationReason":null},{"name":"UNION","description":"Location adjacent to a union definition.","isDeprecated":false,"deprecationReason":null},{"name":"ENUM","description":"Location adjacent to an enum definition.","isDeprecated":false,"deprecationReason":null},{"name":"ENUM_VALUE","description":"Location adjacent to an enum value definition.","isDeprecated":false,"deprecationReason":null},{"name":"INPUT_OBJECT","description":"Location adjacent to an input object type definition.","isDeprecated":false,"deprecationReason":null},{"name":"INPUT_FIELD_DEFINITION","description":"Location adjacent to an input object field definition.","isDeprecated":false,"deprecationReason":null}],"possibleTypes":null}],"directives":[{"name":"auth","description":null,"locations":["FIELD_DEFINITION","OBJECT"],"args":[]},{"name":"skip","description":"Directs the executor to skip this field or fragment when the `if` argument is true.","locations":["FIELD","FRAGMENT_SPREAD","INLINE_FRAGMENT"],"args":[{"name":"if","description":"Skipped when true.","type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"defaultValue":null}]},{"name":"include","description":"Directs the executor to include this field or fragment only when the `if` argument is true.","locations":["FIELD","FRAGMENT_SPREAD","INLINE_FRAGMENT"],"args":[{"name":"if","description":"Included when true.","type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"defaultValue":null}]},{"name":"deprecated","description":"Marks an element of a GraphQL schema as no longer supported.","locations":["FIELD_DEFINITION","ENUM_VALUE"],"args":[{"name":"reason","description":"Explains why this element was deprecated, usually also including a suggestion for how to access supported similar data. Formatted using the Markdown syntax (as specified by [CommonMark](https://commonmark.org/).","type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":"\"No longer supported\""}]}]}} \ No newline at end of file diff --git a/packages/graphql-api/src/models.ts b/packages/graphql-api/src/models.ts index 4703b0d92..d81a581a5 100644 --- a/packages/graphql-api/src/models.ts +++ b/packages/graphql-api/src/models.ts @@ -504,10 +504,10 @@ export type UserResolvers = { - AssociationResult?: AssociationResultResolvers; - AuthenticationResult?: AuthenticationResultResolvers; + AssociationResult?: AssociationResultResolvers; + AuthenticationResult?: AuthenticationResultResolvers; Authenticator?: AuthenticatorResolvers; - ChallengeResult?: ChallengeResultResolvers; + ChallengeResult?: ChallengeResultResolvers; CreateUserResult?: CreateUserResultResolvers; DefaultChallengeResult?: DefaultChallengeResultResolvers; EmailRecord?: EmailRecordResolvers; diff --git a/packages/graphql-client/src/graphql-operations.ts b/packages/graphql-client/src/graphql-operations.ts index 4a639ec5e..e0066ca6a 100644 --- a/packages/graphql-client/src/graphql-operations.ts +++ b/packages/graphql-client/src/graphql-operations.ts @@ -13,6 +13,12 @@ export type Scalars = { Float: number; }; +export type AssociateParamsInput = { + _?: Maybe; +}; + +export type AssociationResult = OtpAssociationResult; + export type AuthenticateParamsInput = { access_token?: Maybe; access_token_secret?: Maybe; @@ -22,6 +28,18 @@ export type AuthenticateParamsInput = { code?: Maybe; }; +export type AuthenticationResult = LoginResult | MultiFactorResult; + +export type Authenticator = { + __typename?: 'Authenticator'; + id?: Maybe; + type?: Maybe; + active?: Maybe; + activatedAt?: Maybe; +}; + +export type ChallengeResult = DefaultChallengeResult; + export type CreateUserInput = { username?: Maybe; email?: Maybe; @@ -34,6 +52,12 @@ export type CreateUserResult = { loginResult?: Maybe; }; +export type DefaultChallengeResult = { + __typename?: 'DefaultChallengeResult'; + mfaToken?: Maybe; + authenticatorId?: Maybe; +}; + export type EmailRecord = { __typename?: 'EmailRecord'; address?: Maybe; @@ -60,8 +84,16 @@ export type LoginResult = { user?: Maybe; }; +export type MultiFactorResult = { + __typename?: 'MultiFactorResult'; + mfaToken: Scalars['String']; +}; + export type Mutation = { __typename?: 'Mutation'; + challenge?: Maybe; + associate?: Maybe; + associateByMfaToken?: Maybe; createUser?: Maybe; verifyEmail?: Maybe; resetPassword?: Maybe; @@ -74,11 +106,30 @@ export type Mutation = { impersonate?: Maybe; refreshTokens?: Maybe; logout?: Maybe; - authenticate?: Maybe; + authenticate?: Maybe; verifyAuthentication?: Maybe; }; +export type MutationChallengeArgs = { + mfaToken: Scalars['String']; + authenticatorId: Scalars['String']; +}; + + +export type MutationAssociateArgs = { + type: Scalars['String']; + params?: Maybe; +}; + + +export type MutationAssociateByMfaTokenArgs = { + mfaToken: Scalars['String']; + type: Scalars['String']; + params?: Maybe; +}; + + export type MutationCreateUserArgs = { user: CreateUserInput; }; @@ -150,12 +201,25 @@ export type MutationVerifyAuthenticationArgs = { params: AuthenticateParamsInput; }; +export type OtpAssociationResult = { + __typename?: 'OTPAssociationResult'; + mfaToken?: Maybe; + authenticatorId?: Maybe; +}; + export type Query = { __typename?: 'Query'; + authenticators?: Maybe>>; + authenticatorsByMfaToken?: Maybe>>; twoFactorSecret?: Maybe; getUser?: Maybe; }; + +export type QueryAuthenticatorsByMfaTokenArgs = { + mfaToken: Scalars['String']; +}; + export type Tokens = { __typename?: 'Tokens'; refreshToken?: Maybe; @@ -198,6 +262,73 @@ export type UserInput = { username?: Maybe; }; +export type AssociateMutationVariables = Exact<{ + type: Scalars['String']; + params?: Maybe; +}>; + + +export type AssociateMutation = ( + { __typename?: 'Mutation' } + & { associate?: Maybe<( + { __typename?: 'OTPAssociationResult' } + & Pick + )> } +); + +export type AssociateByMfaTokenMutationVariables = Exact<{ + mfaToken: Scalars['String']; + type: Scalars['String']; + params?: Maybe; +}>; + + +export type AssociateByMfaTokenMutation = ( + { __typename?: 'Mutation' } + & { associateByMfaToken?: Maybe<( + { __typename?: 'OTPAssociationResult' } + & Pick + )> } +); + +export type ChallengeMutationVariables = Exact<{ + mfaToken: Scalars['String']; + authenticatorId: Scalars['String']; +}>; + + +export type ChallengeMutation = ( + { __typename?: 'Mutation' } + & { challenge?: Maybe<( + { __typename?: 'DefaultChallengeResult' } + & Pick + )> } +); + +export type AuthenticatorsQueryVariables = Exact<{ [key: string]: never; }>; + + +export type AuthenticatorsQuery = ( + { __typename?: 'Query' } + & { authenticators?: Maybe + )>>> } +); + +export type AuthenticatorsByMfaTokenQueryVariables = Exact<{ + mfaToken: Scalars['String']; +}>; + + +export type AuthenticatorsByMfaTokenQuery = ( + { __typename?: 'Query' } + & { authenticatorsByMfaToken?: Maybe + )>>> } +); + export type UserFieldsFragment = ( { __typename?: 'User' } & Pick @@ -302,7 +433,7 @@ export type AuthenticateMutation = ( { __typename?: 'User' } & UserFieldsFragment )> } - )> } + ) | { __typename?: 'MultiFactorResult' }> } ); export type LogoutMutationVariables = Exact<{ [key: string]: never; }>; @@ -423,12 +554,17 @@ export type GetUserQuery = ( ); export const UserFieldsFragmentDoc: DocumentNode = {"kind":"Document","definitions":[{"kind":"FragmentDefinition","name":{"kind":"Name","value":"userFields"},"typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"User"}},"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"emails"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"address"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"verified"},"arguments":[],"directives":[]}]}},{"kind":"Field","name":{"kind":"Name","value":"username"},"arguments":[],"directives":[]}]}}]}; +export const AssociateDocument: TypedDocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"associate"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"type"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"params"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"AssociateParamsInput"}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"associate"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"type"},"value":{"kind":"Variable","name":{"kind":"Name","value":"type"}}},{"kind":"Argument","name":{"kind":"Name","value":"params"},"value":{"kind":"Variable","name":{"kind":"Name","value":"params"}}}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"OTPAssociationResult"}},"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"mfaToken"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"authenticatorId"},"arguments":[],"directives":[]}]}}]}}]}}]}; +export const AssociateByMfaTokenDocument: TypedDocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"associateByMfaToken"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"mfaToken"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"type"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"params"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"AssociateParamsInput"}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"associateByMfaToken"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"mfaToken"},"value":{"kind":"Variable","name":{"kind":"Name","value":"mfaToken"}}},{"kind":"Argument","name":{"kind":"Name","value":"type"},"value":{"kind":"Variable","name":{"kind":"Name","value":"type"}}},{"kind":"Argument","name":{"kind":"Name","value":"params"},"value":{"kind":"Variable","name":{"kind":"Name","value":"params"}}}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"OTPAssociationResult"}},"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"mfaToken"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"authenticatorId"},"arguments":[],"directives":[]}]}}]}}]}}]}; +export const ChallengeDocument: TypedDocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"challenge"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"mfaToken"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"authenticatorId"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"challenge"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"mfaToken"},"value":{"kind":"Variable","name":{"kind":"Name","value":"mfaToken"}}},{"kind":"Argument","name":{"kind":"Name","value":"authenticatorId"},"value":{"kind":"Variable","name":{"kind":"Name","value":"authenticatorId"}}}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"DefaultChallengeResult"}},"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"mfaToken"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"authenticatorId"},"arguments":[],"directives":[]}]}}]}}]}}]}; +export const AuthenticatorsDocument: TypedDocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"authenticators"},"variableDefinitions":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"authenticators"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"type"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"active"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"activatedAt"},"arguments":[],"directives":[]}]}}]}}]}; +export const AuthenticatorsByMfaTokenDocument: TypedDocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"authenticatorsByMfaToken"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"mfaToken"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"authenticatorsByMfaToken"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"mfaToken"},"value":{"kind":"Variable","name":{"kind":"Name","value":"mfaToken"}}}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"type"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"active"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"activatedAt"},"arguments":[],"directives":[]}]}}]}}]}; export const AddEmailDocument: TypedDocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"addEmail"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"newEmail"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"addEmail"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"newEmail"},"value":{"kind":"Variable","name":{"kind":"Name","value":"newEmail"}}}],"directives":[]}]}}]}; export const AuthenticateWithServiceDocument: TypedDocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"authenticateWithService"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"serviceName"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"params"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"AuthenticateParamsInput"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"verifyAuthentication"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"serviceName"},"value":{"kind":"Variable","name":{"kind":"Name","value":"serviceName"}}},{"kind":"Argument","name":{"kind":"Name","value":"params"},"value":{"kind":"Variable","name":{"kind":"Name","value":"params"}}}],"directives":[]}]}}]}; export const ChangePasswordDocument: TypedDocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"changePassword"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"oldPassword"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"newPassword"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"changePassword"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"oldPassword"},"value":{"kind":"Variable","name":{"kind":"Name","value":"oldPassword"}}},{"kind":"Argument","name":{"kind":"Name","value":"newPassword"},"value":{"kind":"Variable","name":{"kind":"Name","value":"newPassword"}}}],"directives":[]}]}}]}; export const CreateUserDocument: TypedDocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"createUser"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"user"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"CreateUserInput"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"createUser"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"user"},"value":{"kind":"Variable","name":{"kind":"Name","value":"user"}}}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"userId"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"loginResult"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"sessionId"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"tokens"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"refreshToken"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"accessToken"},"arguments":[],"directives":[]}]}},{"kind":"Field","name":{"kind":"Name","value":"user"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"FragmentSpread","name":{"kind":"Name","value":"userFields"},"directives":[]}]}}]}}]}}]}},...UserFieldsFragmentDoc.definitions]}; export const ImpersonateDocument: TypedDocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"impersonate"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"accessToken"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"impersonated"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"ImpersonationUserIdentityInput"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"impersonate"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"accessToken"},"value":{"kind":"Variable","name":{"kind":"Name","value":"accessToken"}}},{"kind":"Argument","name":{"kind":"Name","value":"impersonated"},"value":{"kind":"Variable","name":{"kind":"Name","value":"impersonated"}}}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"authorized"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"tokens"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"refreshToken"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"accessToken"},"arguments":[],"directives":[]}]}},{"kind":"Field","name":{"kind":"Name","value":"user"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"FragmentSpread","name":{"kind":"Name","value":"userFields"},"directives":[]}]}}]}}]}},...UserFieldsFragmentDoc.definitions]}; -export const AuthenticateDocument: TypedDocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"authenticate"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"serviceName"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"params"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"AuthenticateParamsInput"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"authenticate"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"serviceName"},"value":{"kind":"Variable","name":{"kind":"Name","value":"serviceName"}}},{"kind":"Argument","name":{"kind":"Name","value":"params"},"value":{"kind":"Variable","name":{"kind":"Name","value":"params"}}}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"sessionId"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"tokens"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"refreshToken"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"accessToken"},"arguments":[],"directives":[]}]}},{"kind":"Field","name":{"kind":"Name","value":"user"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"FragmentSpread","name":{"kind":"Name","value":"userFields"},"directives":[]}]}}]}}]}},...UserFieldsFragmentDoc.definitions]}; +export const AuthenticateDocument: TypedDocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"authenticate"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"serviceName"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"params"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"AuthenticateParamsInput"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"authenticate"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"serviceName"},"value":{"kind":"Variable","name":{"kind":"Name","value":"serviceName"}}},{"kind":"Argument","name":{"kind":"Name","value":"params"},"value":{"kind":"Variable","name":{"kind":"Name","value":"params"}}}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"LoginResult"}},"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"sessionId"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"tokens"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"refreshToken"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"accessToken"},"arguments":[],"directives":[]}]}},{"kind":"Field","name":{"kind":"Name","value":"user"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"FragmentSpread","name":{"kind":"Name","value":"userFields"},"directives":[]}]}}]}}]}}]}},...UserFieldsFragmentDoc.definitions]}; export const LogoutDocument: TypedDocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"logout"},"variableDefinitions":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"logout"},"arguments":[],"directives":[]}]}}]}; export const RefreshTokensDocument: TypedDocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"refreshTokens"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"accessToken"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"refreshToken"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"refreshTokens"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"accessToken"},"value":{"kind":"Variable","name":{"kind":"Name","value":"accessToken"}}},{"kind":"Argument","name":{"kind":"Name","value":"refreshToken"},"value":{"kind":"Variable","name":{"kind":"Name","value":"refreshToken"}}}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"sessionId"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"tokens"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"refreshToken"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"accessToken"},"arguments":[],"directives":[]}]}}]}}]}}]}; export const ResetPasswordDocument: TypedDocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"resetPassword"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"token"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"newPassword"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"resetPassword"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"token"},"value":{"kind":"Variable","name":{"kind":"Name","value":"token"}}},{"kind":"Argument","name":{"kind":"Name","value":"newPassword"},"value":{"kind":"Variable","name":{"kind":"Name","value":"newPassword"}}}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"sessionId"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"tokens"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"refreshToken"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"accessToken"},"arguments":[],"directives":[]}]}}]}}]}}]}; diff --git a/packages/graphql-client/src/graphql/accounts-mfa/associate.mutation.ts b/packages/graphql-client/src/graphql/accounts-mfa/associate.mutation.ts deleted file mode 100644 index 0470fb202..000000000 --- a/packages/graphql-client/src/graphql/accounts-mfa/associate.mutation.ts +++ /dev/null @@ -1,13 +0,0 @@ -import gql from 'graphql-tag'; - -export const associateMutation = (associateFieldsFragment?: any) => gql` - mutation associate($type: String!, $params: AssociateParamsInput) { - associate(type: $type, params: $params) { - ... on OTPAssociationResult { - mfaToken - authenticatorId - } - ${associateFieldsFragment || ''} - } - } -`; diff --git a/packages/graphql-client/src/graphql/accounts-mfa/associateByMfaToken.mutation.ts b/packages/graphql-client/src/graphql/accounts-mfa/associateByMfaToken.mutation.ts deleted file mode 100644 index e00c88a1e..000000000 --- a/packages/graphql-client/src/graphql/accounts-mfa/associateByMfaToken.mutation.ts +++ /dev/null @@ -1,13 +0,0 @@ -import gql from 'graphql-tag'; - -export const associateByMfaTokenMutation = (associateFieldsFragment?: any) => gql` - mutation associateByMfaToken($mfaToken: String!, $type: String!, $params: AssociateParamsInput) { - associateByMfaToken(mfaToken: $mfaToken, type: $type, params: $params) { - ... on OTPAssociationResult { - mfaToken - authenticatorId - } - ${associateFieldsFragment || ''} - } - } -`; diff --git a/packages/graphql-client/src/graphql/accounts-mfa/authenticators.query.ts b/packages/graphql-client/src/graphql/accounts-mfa/authenticators.query.ts deleted file mode 100644 index 5c68563db..000000000 --- a/packages/graphql-client/src/graphql/accounts-mfa/authenticators.query.ts +++ /dev/null @@ -1,12 +0,0 @@ -import gql from 'graphql-tag'; - -export const authenticatorsQuery = gql` - query authenticators { - authenticators { - id - type - active - activatedAt - } - } -`; diff --git a/packages/graphql-client/src/graphql/accounts-mfa/authenticatorsByMfaToken.query.ts b/packages/graphql-client/src/graphql/accounts-mfa/authenticatorsByMfaToken.query.ts deleted file mode 100644 index c5771aada..000000000 --- a/packages/graphql-client/src/graphql/accounts-mfa/authenticatorsByMfaToken.query.ts +++ /dev/null @@ -1,12 +0,0 @@ -import gql from 'graphql-tag'; - -export const authenticatorsByMfaTokenQuery = gql` - query authenticatorsByMfaToken($mfaToken: String!) { - authenticatorsByMfaToken(mfaToken: $mfaToken) { - id - type - active - activatedAt - } - } -`; diff --git a/packages/graphql-client/src/graphql/accounts-mfa/challenge.mutation.ts b/packages/graphql-client/src/graphql/accounts-mfa/challenge.mutation.ts deleted file mode 100644 index 9d8e973b9..000000000 --- a/packages/graphql-client/src/graphql/accounts-mfa/challenge.mutation.ts +++ /dev/null @@ -1,9 +0,0 @@ -import gql from 'graphql-tag'; - -export const challengeMutation = (challengeFieldsFragment?: any) => gql` - mutation challenge($mfaToken: String!, $authenticatorId: String!) { - challenge(mfaToken: $mfaToken, authenticatorId: $authenticatorId) ${ - challengeFieldsFragment || '' - } - } -`; diff --git a/packages/graphql-client/src/graphql/accounts-mfa/mutations/associate.graphql b/packages/graphql-client/src/graphql/accounts-mfa/mutations/associate.graphql new file mode 100644 index 000000000..c476de4cb --- /dev/null +++ b/packages/graphql-client/src/graphql/accounts-mfa/mutations/associate.graphql @@ -0,0 +1,8 @@ +mutation associate($type: String!, $params: AssociateParamsInput) { + associate(type: $type, params: $params) { + ... on OTPAssociationResult { + mfaToken + authenticatorId + } + } +} diff --git a/packages/graphql-client/src/graphql/accounts-mfa/mutations/associateByMfaToken.graphql b/packages/graphql-client/src/graphql/accounts-mfa/mutations/associateByMfaToken.graphql new file mode 100644 index 000000000..6c2a9f508 --- /dev/null +++ b/packages/graphql-client/src/graphql/accounts-mfa/mutations/associateByMfaToken.graphql @@ -0,0 +1,8 @@ +mutation associateByMfaToken($mfaToken: String!, $type: String!, $params: AssociateParamsInput) { + associateByMfaToken(mfaToken: $mfaToken, type: $type, params: $params) { + ... on OTPAssociationResult { + mfaToken + authenticatorId + } + } +} diff --git a/packages/graphql-client/src/graphql/accounts-mfa/mutations/challenge.graphql b/packages/graphql-client/src/graphql/accounts-mfa/mutations/challenge.graphql new file mode 100644 index 000000000..bf79f6da1 --- /dev/null +++ b/packages/graphql-client/src/graphql/accounts-mfa/mutations/challenge.graphql @@ -0,0 +1,9 @@ +mutation challenge($mfaToken: String!, $authenticatorId: String!) { + challenge(mfaToken: $mfaToken, authenticatorId: $authenticatorId) { + # TODO allow to customise this + ... on DefaultChallengeResult { + mfaToken + authenticatorId + } + } +} diff --git a/packages/graphql-client/src/graphql/accounts-mfa/queries/authenticators.graphql b/packages/graphql-client/src/graphql/accounts-mfa/queries/authenticators.graphql new file mode 100644 index 000000000..e7264f217 --- /dev/null +++ b/packages/graphql-client/src/graphql/accounts-mfa/queries/authenticators.graphql @@ -0,0 +1,9 @@ +# TODO union for returned authenticators? +query authenticators { + authenticators { + id + type + active + activatedAt + } +} diff --git a/packages/graphql-client/src/graphql/accounts-mfa/queries/authenticatorsByMfaToken.graphql b/packages/graphql-client/src/graphql/accounts-mfa/queries/authenticatorsByMfaToken.graphql new file mode 100644 index 000000000..d8f3e3f8c --- /dev/null +++ b/packages/graphql-client/src/graphql/accounts-mfa/queries/authenticatorsByMfaToken.graphql @@ -0,0 +1,8 @@ +query authenticatorsByMfaToken($mfaToken: String!) { + authenticatorsByMfaToken(mfaToken: $mfaToken) { + id + type + active + activatedAt + } +} diff --git a/packages/graphql-client/src/graphql/mutations/login-with-service.graphql b/packages/graphql-client/src/graphql/mutations/login-with-service.graphql index 421ef4457..bd87b8ee9 100644 --- a/packages/graphql-client/src/graphql/mutations/login-with-service.graphql +++ b/packages/graphql-client/src/graphql/mutations/login-with-service.graphql @@ -1,12 +1,14 @@ mutation authenticate($serviceName: String!, $params: AuthenticateParamsInput!) { authenticate(serviceName: $serviceName, params: $params) { - sessionId - tokens { - refreshToken - accessToken - } - user { - ...userFields + ... on LoginResult { + sessionId + tokens { + refreshToken + accessToken + } + user { + ...userFields + } } } } diff --git a/packages/types/src/types/mfa/authenticator/authenticator-service.ts b/packages/types/src/types/mfa/authenticator-service.ts similarity index 78% rename from packages/types/src/types/mfa/authenticator/authenticator-service.ts rename to packages/types/src/types/mfa/authenticator-service.ts index e0318d692..eab399a1b 100644 --- a/packages/types/src/types/mfa/authenticator/authenticator-service.ts +++ b/packages/types/src/types/mfa/authenticator-service.ts @@ -1,7 +1,7 @@ -import { DatabaseInterface } from '../../database-interface'; +import { DatabaseInterface } from '../database-interface'; import { Authenticator } from './authenticator'; -import { MfaChallenge } from '../challenge/mfa-challenge'; -import { ConnectionInformations } from '../../connection-informations'; +import { MfaChallenge } from './mfa-challenge'; +import { ConnectionInformations } from '../connection-informations'; export interface AuthenticatorService { server: any; diff --git a/packages/types/src/types/mfa/authenticator/authenticator.ts b/packages/types/src/types/mfa/authenticator/authenticator.ts deleted file mode 100644 index dfe9820f8..000000000 --- a/packages/types/src/types/mfa/authenticator/authenticator.ts +++ /dev/null @@ -1,30 +0,0 @@ -export interface Authenticator { - /** - * Db id - */ - id: string; - /** - * Authenticator type - */ - type: string; - /** - * User id linked to this authenticator - */ - userId: string; - /** - * Is authenticator active - */ - active: boolean; - /** - * If active is true, contain the date when the authenticator was activated - */ - activatedAt?: string; - /** - * If active is true, contain the date when the authenticator was activated - */ - deactivatedAt?: string; - /** - * Custom properties - */ - [additionalKey: string]: any; -} diff --git a/packages/types/src/types/mfa/authenticator/create-authenticator.ts b/packages/types/src/types/mfa/authenticator/create-authenticator.ts deleted file mode 100644 index 266cca2cc..000000000 --- a/packages/types/src/types/mfa/authenticator/create-authenticator.ts +++ /dev/null @@ -1,18 +0,0 @@ -export interface CreateAuthenticator { - /** - * Authenticator type - */ - type: string; - /** - * User id linked to this authenticator - */ - userId: string; - /** - * Is authenticator active - */ - active: boolean; - /** - * Custom properties - */ - [additionalKey: string]: any; -} diff --git a/packages/types/src/types/mfa/authenticator/database-interface.ts b/packages/types/src/types/mfa/authenticator/database-interface.ts deleted file mode 100644 index fccfeb586..000000000 --- a/packages/types/src/types/mfa/authenticator/database-interface.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { CreateAuthenticator } from '../authenticator/create-authenticator'; -import { Authenticator } from '../authenticator/authenticator'; - -export interface DatabaseInterfaceAuthenticators { - createAuthenticator(authenticator: CreateAuthenticator): Promise; - - findAuthenticatorById(authenticatorId: string): Promise; - - findUserAuthenticators(userId: string): Promise; - - activateAuthenticator(authenticatorId: string): Promise; - - deactivateAuthenticator(authenticatorId: string): Promise; - - updateAuthenticator(authenticatorId: string, data: Partial): Promise; -} diff --git a/packages/types/src/types/mfa/challenge/create-mfa-challenge.ts b/packages/types/src/types/mfa/challenge/create-mfa-challenge.ts deleted file mode 100644 index b9837138f..000000000 --- a/packages/types/src/types/mfa/challenge/create-mfa-challenge.ts +++ /dev/null @@ -1,22 +0,0 @@ -export interface CreateMfaChallenge { - /** - * User id linked to this challenge - */ - userId: string; - /** - * Authenticator that will be used to resolve this challenge - */ - authenticatorId?: string; - /** - * Random token used to identify the challenge - */ - token: string; - /** - * If scope is set to associate, the authenticate function will verify the authenticator next time the user call it - */ - scope?: 'associate'; - /** - * Custom properties - */ - [additionalKey: string]: any; -} diff --git a/packages/types/src/types/mfa/challenge/database-interface.ts b/packages/types/src/types/mfa/challenge/database-interface.ts deleted file mode 100644 index 642914319..000000000 --- a/packages/types/src/types/mfa/challenge/database-interface.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { CreateMfaChallenge } from './create-mfa-challenge'; -import { MfaChallenge } from './mfa-challenge'; - -export interface DatabaseInterfaceMfaChallenges { - createMfaChallenge(newMfaChallenge: CreateMfaChallenge): Promise; - - findMfaChallengeByToken(token: string): Promise; - - updateMfaChallenge(mfaChallengeId: string, data: Partial): Promise; - - deactivateMfaChallenge(mfaChallengeId: string): Promise; -} diff --git a/packages/types/src/types/mfa/challenge/mfa-challenge.ts b/packages/types/src/types/mfa/challenge/mfa-challenge.ts deleted file mode 100644 index 084ba7710..000000000 --- a/packages/types/src/types/mfa/challenge/mfa-challenge.ts +++ /dev/null @@ -1,34 +0,0 @@ -export interface MfaChallenge { - /** - * Db id - */ - id: string; - /** - * User id linked to this challenge - */ - userId: string; - /** - * Authenticator that will be used to resolve this challenge - */ - authenticatorId?: string; - /** - * Random token used to identify the challenge - */ - token: string; - /** - * If scope is set to associate, the authenticate function will verify the authenticator next time the user call it - */ - scope?: 'associate'; - /** - * If deactivated is set to true, it means that challenge was already used and can't be used anymore - */ - deactivated: boolean; - /** - * If deactivated is true, contain the date when the challenge was used - */ - deactivatedAt?: string; - /** - * Custom properties - */ - [additionalKey: string]: any; -} From e30fb5876dba5354231be9a68deb19acf1583193 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Pradel?= Date: Thu, 6 Aug 2020 16:36:25 +0200 Subject: [PATCH 128/146] chore: upgrade jest (#1037) --- package.json | 2 +- packages/client-password/package.json | 4 +- packages/client/package.json | 4 +- packages/database-manager/package.json | 4 +- packages/database-mongo/package.json | 4 +- packages/database-redis/package.json | 4 +- packages/database-tests/package.json | 4 +- packages/database-typeorm/package.json | 4 +- packages/e2e/package.json | 4 +- packages/error/package.json | 4 +- packages/express-session/package.json | 4 +- packages/graphql-api/package.json | 4 +- packages/graphql-client/package.json | 4 +- packages/oauth-instagram/package.json | 4 +- packages/oauth-twitter/package.json | 4 +- packages/oauth/package.json | 4 +- packages/password/package.json | 4 +- packages/rest-client/package.json | 4 +- packages/rest-express/package.json | 4 +- packages/server/package.json | 4 +- packages/two-factor/package.json | 4 +- packages/types/package.json | 4 +- yarn.lock | 737 +++++++++++++------------ 23 files changed, 430 insertions(+), 393 deletions(-) diff --git a/package.json b/package.json index 74ec95f2c..690c50a6f 100644 --- a/package.json +++ b/package.json @@ -72,7 +72,7 @@ "lint-staged": "10.2.11", "opencollective": "1.0.3", "prettier": "2.0.5", - "ts-jest": "25.5.1", + "ts-jest": "26.1.4", "typescript": "3.9.5" }, "collective": { diff --git a/packages/client-password/package.json b/packages/client-password/package.json index e795d7753..bb3a72b69 100644 --- a/packages/client-password/package.json +++ b/packages/client-password/package.json @@ -33,9 +33,9 @@ "author": "Leo Pradel", "license": "MIT", "devDependencies": { - "@types/jest": "25.2.3", + "@types/jest": "26.0.9", "@types/node": "14.0.14", - "jest": "26.0.1", + "jest": "26.2.2", "rimraf": "3.0.2" }, "dependencies": { diff --git a/packages/client/package.json b/packages/client/package.json index 5ad6a89f1..975990409 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -47,10 +47,10 @@ "author": "Tim Mikeladze", "license": "MIT", "devDependencies": { - "@types/jest": "25.2.3", + "@types/jest": "26.0.9", "@types/jwt-decode": "2.2.1", "@types/node": "14.0.14", - "jest": "26.0.1", + "jest": "26.2.2", "jest-localstorage-mock": "2.4.2", "jsonwebtoken": "8.5.1", "localstorage-polyfill": "1.0.1", diff --git a/packages/database-manager/package.json b/packages/database-manager/package.json index 96f971989..52ebf754d 100644 --- a/packages/database-manager/package.json +++ b/packages/database-manager/package.json @@ -39,9 +39,9 @@ "author": "Elies Lou (Aetherall)", "license": "MIT", "devDependencies": { - "@types/jest": "25.2.3", + "@types/jest": "26.0.9", "@types/node": "14.0.14", - "jest": "26.0.1", + "jest": "26.2.2", "rimraf": "3.0.2" }, "dependencies": { diff --git a/packages/database-mongo/package.json b/packages/database-mongo/package.json index 7f577baf2..5dcae3ef4 100644 --- a/packages/database-mongo/package.json +++ b/packages/database-mongo/package.json @@ -30,11 +30,11 @@ "license": "MIT", "devDependencies": { "@accounts/database-tests": "^0.29.0", - "@types/jest": "25.2.3", + "@types/jest": "26.0.9", "@types/lodash": "4.14.157", "@types/mongodb": "3.5.25", "@types/node": "14.0.14", - "jest": "26.0.1" + "jest": "26.2.2" }, "dependencies": { "@accounts/types": "^0.29.0", diff --git a/packages/database-redis/package.json b/packages/database-redis/package.json index 4298b8628..c9e174bb6 100644 --- a/packages/database-redis/package.json +++ b/packages/database-redis/package.json @@ -34,11 +34,11 @@ "devDependencies": { "@accounts/database-tests": "^0.29.0", "@types/ioredis": "4.14.9", - "@types/jest": "25.2.3", + "@types/jest": "26.0.9", "@types/lodash": "4.14.157", "@types/node": "14.0.14", "@types/shortid": "0.0.29", - "jest": "26.0.1" + "jest": "26.2.2" }, "dependencies": { "@accounts/types": "^0.29.0", diff --git a/packages/database-tests/package.json b/packages/database-tests/package.json index 7a66550ce..c3aaa3e5a 100644 --- a/packages/database-tests/package.json +++ b/packages/database-tests/package.json @@ -22,9 +22,9 @@ "author": "Leo Pradel", "license": "MIT", "devDependencies": { - "@types/jest": "25.2.3", + "@types/jest": "26.0.9", "@types/node": "14.0.14", - "jest": "26.0.1" + "jest": "26.2.2" }, "dependencies": { "@accounts/types": "^0.29.0", diff --git a/packages/database-typeorm/package.json b/packages/database-typeorm/package.json index b4aaf39e4..c6c3deb4c 100644 --- a/packages/database-typeorm/package.json +++ b/packages/database-typeorm/package.json @@ -27,9 +27,9 @@ "license": "MIT", "devDependencies": { "@accounts/database-tests": "^0.29.0", - "@types/jest": "25.2.3", + "@types/jest": "26.0.9", "@types/node": "14.0.14", - "jest": "26.0.1", + "jest": "26.2.2", "pg": "8.1.0" }, "dependencies": { diff --git a/packages/e2e/package.json b/packages/e2e/package.json index 79c1c3447..50caf12d1 100644 --- a/packages/e2e/package.json +++ b/packages/e2e/package.json @@ -27,12 +27,12 @@ "devDependencies": { "@types/body-parser": "1.19.0", "@types/express": "4.17.6", - "@types/jest": "25.2.3", + "@types/jest": "26.0.9", "@types/lodash": "4.14.157", "@types/mongoose": "5.7.16", "@types/node": "14.0.14", "@types/node-fetch": "2.5.7", - "jest": "26.0.1", + "jest": "26.2.2", "jest-localstorage-mock": "2.4.2" }, "dependencies": { diff --git a/packages/error/package.json b/packages/error/package.json index ef9eefbbd..1cf01f7f1 100644 --- a/packages/error/package.json +++ b/packages/error/package.json @@ -47,9 +47,9 @@ "tslib": "2.0.0" }, "devDependencies": { - "@types/jest": "25.2.3", + "@types/jest": "26.0.9", "@types/node": "14.0.14", - "jest": "26.0.1", + "jest": "26.2.2", "rimraf": "3.0.2" } } diff --git a/packages/express-session/package.json b/packages/express-session/package.json index d866abff6..a51dbabd3 100644 --- a/packages/express-session/package.json +++ b/packages/express-session/package.json @@ -41,12 +41,12 @@ "@accounts/server": "^0.29.0", "@types/express": "4.17.6", "@types/express-session": "1.17.0", - "@types/jest": "25.2.3", + "@types/jest": "26.0.9", "@types/lodash": "4.14.157", "@types/request-ip": "0.0.35", "express": "4.17.1", "express-session": "1.17.1", - "jest": "26.0.1" + "jest": "26.2.2" }, "peerDependencies": { "@accounts/server": "^0.19.0", diff --git a/packages/graphql-api/package.json b/packages/graphql-api/package.json index ae54298eb..2f242fab1 100644 --- a/packages/graphql-api/package.json +++ b/packages/graphql-api/package.json @@ -57,12 +57,12 @@ "@graphql-codegen/typescript-resolvers": "1.17.4", "@graphql-codegen/typescript-type-graphql": "1.17.4", "@graphql-modules/core": "0.7.17", - "@types/jest": "25.2.3", + "@types/jest": "26.0.9", "@types/request-ip": "0.0.35", "concurrently": "5.2.0", "graphql": "14.6.0", "graphql-tools": "5.0.0", - "jest": "26.0.1", + "jest": "26.2.2", "lodash": "4.17.15", "ts-node": "8.10.1" } diff --git a/packages/graphql-client/package.json b/packages/graphql-client/package.json index 172679ecb..402b81721 100644 --- a/packages/graphql-client/package.json +++ b/packages/graphql-client/package.json @@ -44,9 +44,9 @@ "@graphql-codegen/typed-document-node": "1.17.4", "@graphql-codegen/typescript": "1.17.4", "@graphql-codegen/typescript-operations": "1.17.4", - "@types/jest": "25.2.3", + "@types/jest": "26.0.9", "graphql": "14.6.0", - "jest": "26.0.1", + "jest": "26.2.2", "lodash": "4.17.19" } } diff --git a/packages/oauth-instagram/package.json b/packages/oauth-instagram/package.json index 7e11fa1ab..241a8a8ba 100644 --- a/packages/oauth-instagram/package.json +++ b/packages/oauth-instagram/package.json @@ -28,9 +28,9 @@ "tslib": "2.0.0" }, "devDependencies": { - "@types/jest": "25.2.3", + "@types/jest": "26.0.9", "@types/node": "14.0.14", "@types/request-promise": "4.1.46", - "jest": "26.0.1" + "jest": "26.2.2" } } diff --git a/packages/oauth-twitter/package.json b/packages/oauth-twitter/package.json index 8761c4805..62e5cbddd 100644 --- a/packages/oauth-twitter/package.json +++ b/packages/oauth-twitter/package.json @@ -27,9 +27,9 @@ "tslib": "2.0.0" }, "devDependencies": { - "@types/jest": "25.2.3", + "@types/jest": "26.0.9", "@types/node": "14.0.14", "@types/oauth": "0.9.1", - "jest": "26.0.1" + "jest": "26.2.2" } } diff --git a/packages/oauth/package.json b/packages/oauth/package.json index fcb2b21c2..478194366 100644 --- a/packages/oauth/package.json +++ b/packages/oauth/package.json @@ -27,8 +27,8 @@ }, "devDependencies": { "@accounts/server": "^0.29.0", - "@types/jest": "25.2.3", + "@types/jest": "26.0.9", "@types/node": "14.0.14", - "jest": "26.0.1" + "jest": "26.2.2" } } diff --git a/packages/password/package.json b/packages/password/package.json index 2639860b5..5ce5f26d1 100644 --- a/packages/password/package.json +++ b/packages/password/package.json @@ -31,10 +31,10 @@ "@accounts/server": "^0.29.0", "@accounts/types": "^0.29.0", "@types/bcryptjs": "2.4.2", - "@types/jest": "25.2.3", + "@types/jest": "26.0.9", "@types/lodash": "4.14.157", "@types/node": "14.0.14", - "jest": "26.0.1", + "jest": "26.2.2", "rimraf": "3.0.2" }, "peerDependencies": { diff --git a/packages/rest-client/package.json b/packages/rest-client/package.json index ab0d6a392..c05a4542d 100644 --- a/packages/rest-client/package.json +++ b/packages/rest-client/package.json @@ -43,10 +43,10 @@ "license": "MIT", "devDependencies": { "@accounts/client": "^0.29.0", - "@types/jest": "25.2.3", + "@types/jest": "26.0.9", "@types/lodash": "4.14.157", "@types/node": "14.0.14", - "jest": "26.0.1", + "jest": "26.2.2", "node-fetch": "2.6.0" }, "peerDependencies": { diff --git a/packages/rest-express/package.json b/packages/rest-express/package.json index 9895a7db1..ab46f110e 100644 --- a/packages/rest-express/package.json +++ b/packages/rest-express/package.json @@ -42,10 +42,10 @@ "@accounts/password": "^0.29.0", "@accounts/server": "^0.29.0", "@types/express": "4.17.6", - "@types/jest": "25.2.3", + "@types/jest": "26.0.9", "@types/node": "14.0.14", "@types/request-ip": "0.0.35", - "jest": "26.0.1" + "jest": "26.2.2" }, "peerDependencies": { "@accounts/server": "^0.19.0" diff --git a/packages/server/package.json b/packages/server/package.json index 3dc84f846..d86111820 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -53,10 +53,10 @@ "tslib": "2.0.0" }, "devDependencies": { - "@types/jest": "25.2.3", + "@types/jest": "26.0.9", "@types/jwt-decode": "2.2.1", "@types/node": "14.0.14", - "jest": "26.0.1", + "jest": "26.2.2", "rimraf": "3.0.2" } } diff --git a/packages/two-factor/package.json b/packages/two-factor/package.json index 39de8da33..c9d3c3e6d 100644 --- a/packages/two-factor/package.json +++ b/packages/two-factor/package.json @@ -34,8 +34,8 @@ "tslib": "2.0.0" }, "devDependencies": { - "@types/jest": "25.2.3", + "@types/jest": "26.0.9", "@types/node": "14.0.14", - "jest": "26.0.1" + "jest": "26.2.2" } } diff --git a/packages/types/package.json b/packages/types/package.json index 6f348466c..21394eefe 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -47,9 +47,9 @@ "tslib": "2.0.0" }, "devDependencies": { - "@types/jest": "25.2.3", + "@types/jest": "26.0.9", "@types/node": "14.0.14", - "jest": "26.0.1", + "jest": "26.2.2", "rimraf": "3.0.2" } } diff --git a/yarn.lock b/yarn.lock index 542cedc97..11dc435a9 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1832,15 +1832,16 @@ chalk "^2.0.1" slash "^2.0.0" -"@jest/console@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/console/-/console-26.0.1.tgz#62b3b2fa8990f3cbffbef695c42ae9ddbc8f4b39" - integrity sha512-9t1KUe/93coV1rBSxMmBAOIK3/HVpwxArCA1CxskKyRiv6o8J70V8C/V3OJminVCTa2M0hQI9AWRd5wxu2dAHw== +"@jest/console@^26.2.0": + version "26.2.0" + resolved "https://registry.yarnpkg.com/@jest/console/-/console-26.2.0.tgz#d18f2659b90930e7ec3925fb7209f1ba2cf463f0" + integrity sha512-mXQfx3nSLwiHm1i7jbu+uvi+vvpVjNGzIQYLCfsat9rapC+MJkS4zBseNrgJE0vU921b3P67bQzhduphjY3Tig== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.2.0" + "@types/node" "*" chalk "^4.0.0" - jest-message-util "^26.0.1" - jest-util "^26.0.1" + jest-message-util "^26.2.0" + jest-util "^26.2.0" slash "^3.0.0" "@jest/core@^24.9.0": @@ -1877,33 +1878,34 @@ slash "^2.0.0" strip-ansi "^5.0.0" -"@jest/core@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/core/-/core-26.0.1.tgz#aa538d52497dfab56735efb00e506be83d841fae" - integrity sha512-Xq3eqYnxsG9SjDC+WLeIgf7/8KU6rddBxH+SCt18gEpOhAGYC/Mq+YbtlNcIdwjnnT+wDseXSbU0e5X84Y4jTQ== +"@jest/core@^26.2.2": + version "26.2.2" + resolved "https://registry.yarnpkg.com/@jest/core/-/core-26.2.2.tgz#63de01ffce967618003dd7a0164b05c8041b81a9" + integrity sha512-UwA8gNI8aeV4FHGfGAUfO/DHjrFVvlBravF1Tm9Kt6qFE+6YHR47kFhgdepOFpADEKstyO+MVdPvkV6/dyt9sA== dependencies: - "@jest/console" "^26.0.1" - "@jest/reporters" "^26.0.1" - "@jest/test-result" "^26.0.1" - "@jest/transform" "^26.0.1" - "@jest/types" "^26.0.1" + "@jest/console" "^26.2.0" + "@jest/reporters" "^26.2.2" + "@jest/test-result" "^26.2.0" + "@jest/transform" "^26.2.2" + "@jest/types" "^26.2.0" + "@types/node" "*" ansi-escapes "^4.2.1" chalk "^4.0.0" exit "^0.1.2" graceful-fs "^4.2.4" - jest-changed-files "^26.0.1" - jest-config "^26.0.1" - jest-haste-map "^26.0.1" - jest-message-util "^26.0.1" + jest-changed-files "^26.2.0" + jest-config "^26.2.2" + jest-haste-map "^26.2.2" + jest-message-util "^26.2.0" jest-regex-util "^26.0.0" - jest-resolve "^26.0.1" - jest-resolve-dependencies "^26.0.1" - jest-runner "^26.0.1" - jest-runtime "^26.0.1" - jest-snapshot "^26.0.1" - jest-util "^26.0.1" - jest-validate "^26.0.1" - jest-watcher "^26.0.1" + jest-resolve "^26.2.2" + jest-resolve-dependencies "^26.2.2" + jest-runner "^26.2.2" + jest-runtime "^26.2.2" + jest-snapshot "^26.2.2" + jest-util "^26.2.0" + jest-validate "^26.2.0" + jest-watcher "^26.2.0" micromatch "^4.0.2" p-each-series "^2.1.0" rimraf "^3.0.0" @@ -1920,14 +1922,15 @@ "@jest/types" "^24.9.0" jest-mock "^24.9.0" -"@jest/environment@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-26.0.1.tgz#82f519bba71959be9b483675ee89de8c8f72a5c8" - integrity sha512-xBDxPe8/nx251u0VJ2dFAFz2H23Y98qdIaNwnMK6dFQr05jc+Ne/2np73lOAx+5mSBO/yuQldRrQOf6hP1h92g== +"@jest/environment@^26.2.0": + version "26.2.0" + resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-26.2.0.tgz#f6faee1630fcc2fad208953164bccb31dbe0e45f" + integrity sha512-oCgp9NmEiJ5rbq9VI/v/yYLDpladAAVvFxZgNsnJxOETuzPZ0ZcKKHYjKYwCtPOP1WCrM5nmyuOhMStXFGHn+g== dependencies: - "@jest/fake-timers" "^26.0.1" - "@jest/types" "^26.0.1" - jest-mock "^26.0.1" + "@jest/fake-timers" "^26.2.0" + "@jest/types" "^26.2.0" + "@types/node" "*" + jest-mock "^26.2.0" "@jest/fake-timers@^24.3.0", "@jest/fake-timers@^24.9.0": version "24.9.0" @@ -1938,25 +1941,26 @@ jest-message-util "^24.9.0" jest-mock "^24.9.0" -"@jest/fake-timers@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-26.0.1.tgz#f7aeff13b9f387e9d0cac9a8de3bba538d19d796" - integrity sha512-Oj/kCBnTKhm7CR+OJSjZty6N1bRDr9pgiYQr4wY221azLz5PHi08x/U+9+QpceAYOWheauLP8MhtSVFrqXQfhg== +"@jest/fake-timers@^26.2.0": + version "26.2.0" + resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-26.2.0.tgz#b485c57dc4c74d61406a339807a9af4bac74b75a" + integrity sha512-45Gfe7YzYTKqTayBrEdAF0qYyAsNRBzfkV0IyVUm3cx7AsCWlnjilBM4T40w7IXT5VspOgMPikQlV0M6gHwy/g== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.2.0" "@sinonjs/fake-timers" "^6.0.1" - jest-message-util "^26.0.1" - jest-mock "^26.0.1" - jest-util "^26.0.1" + "@types/node" "*" + jest-message-util "^26.2.0" + jest-mock "^26.2.0" + jest-util "^26.2.0" -"@jest/globals@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-26.0.1.tgz#3f67b508a7ce62b6e6efc536f3d18ec9deb19a9c" - integrity sha512-iuucxOYB7BRCvT+TYBzUqUNuxFX1hqaR6G6IcGgEqkJ5x4htNKo1r7jk1ji9Zj8ZMiMw0oB5NaA7k5Tx6MVssA== +"@jest/globals@^26.2.0": + version "26.2.0" + resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-26.2.0.tgz#ad78f1104f250c1a4bf5184a2ba51facc59b23f6" + integrity sha512-Hoc6ScEIPaym7RNytIL2ILSUWIGKlwEv+JNFof9dGYOdvPjb2evEURSslvCMkNuNg1ECEClTE8PH7ULlMJntYA== dependencies: - "@jest/environment" "^26.0.1" - "@jest/types" "^26.0.1" - expect "^26.0.1" + "@jest/environment" "^26.2.0" + "@jest/types" "^26.2.0" + expect "^26.2.0" "@jest/reporters@^24.9.0": version "24.9.0" @@ -1985,30 +1989,30 @@ source-map "^0.6.0" string-length "^2.0.0" -"@jest/reporters@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-26.0.1.tgz#14ae00e7a93e498cec35b0c00ab21c375d9b078f" - integrity sha512-NWWy9KwRtE1iyG/m7huiFVF9YsYv/e+mbflKRV84WDoJfBqUrNRyDbL/vFxQcYLl8IRqI4P3MgPn386x76Gf2g== +"@jest/reporters@^26.2.2": + version "26.2.2" + resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-26.2.2.tgz#5a8632ab410f4fc57782bc05dcf115e91818e869" + integrity sha512-7854GPbdFTAorWVh+RNHyPO9waRIN6TcvCezKVxI1khvFq9YjINTW7J3WU+tbR038Ynn6WjYred6vtT0YmIWVQ== dependencies: "@bcoe/v8-coverage" "^0.2.3" - "@jest/console" "^26.0.1" - "@jest/test-result" "^26.0.1" - "@jest/transform" "^26.0.1" - "@jest/types" "^26.0.1" + "@jest/console" "^26.2.0" + "@jest/test-result" "^26.2.0" + "@jest/transform" "^26.2.2" + "@jest/types" "^26.2.0" chalk "^4.0.0" collect-v8-coverage "^1.0.0" exit "^0.1.2" glob "^7.1.2" graceful-fs "^4.2.4" istanbul-lib-coverage "^3.0.0" - istanbul-lib-instrument "^4.0.0" + istanbul-lib-instrument "^4.0.3" istanbul-lib-report "^3.0.0" istanbul-lib-source-maps "^4.0.0" istanbul-reports "^3.0.2" - jest-haste-map "^26.0.1" - jest-resolve "^26.0.1" - jest-util "^26.0.1" - jest-worker "^26.0.0" + jest-haste-map "^26.2.2" + jest-resolve "^26.2.2" + jest-util "^26.2.0" + jest-worker "^26.2.1" slash "^3.0.0" source-map "^0.6.0" string-length "^4.0.1" @@ -2026,10 +2030,10 @@ graceful-fs "^4.1.15" source-map "^0.6.0" -"@jest/source-map@^26.0.0": - version "26.0.0" - resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-26.0.0.tgz#fd7706484a7d3faf7792ae29783933bbf48a4749" - integrity sha512-S2Z+Aj/7KOSU2TfW0dyzBze7xr95bkm5YXNUqqCek+HE0VbNNSNzrRwfIi5lf7wvzDTSS0/ib8XQ1krFNyYgbQ== +"@jest/source-map@^26.1.0": + version "26.1.0" + resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-26.1.0.tgz#a6a020d00e7d9478f4b690167c5e8b77e63adb26" + integrity sha512-XYRPYx4eEVX15cMT9mstnO7hkHP3krNtKfxUYd8L7gbtia8JvZZ6bMzSwa6IQJENbudTwKMw5R1BePRD+bkEmA== dependencies: callsites "^3.0.0" graceful-fs "^4.2.4" @@ -2044,13 +2048,13 @@ "@jest/types" "^24.9.0" "@types/istanbul-lib-coverage" "^2.0.0" -"@jest/test-result@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-26.0.1.tgz#1ffdc1ba4bc289919e54b9414b74c9c2f7b2b718" - integrity sha512-oKwHvOI73ICSYRPe8WwyYPTtiuOAkLSbY8/MfWF3qDEd/sa8EDyZzin3BaXTqufir/O/Gzea4E8Zl14XU4Mlyg== +"@jest/test-result@^26.2.0": + version "26.2.0" + resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-26.2.0.tgz#51c9b165c8851cfcf7a3466019114785e154f76b" + integrity sha512-kgPlmcVafpmfyQEu36HClK+CWI6wIaAWDHNxfQtGuKsgoa2uQAYdlxjMDBEa3CvI40+2U3v36gQF6oZBkoKatw== dependencies: - "@jest/console" "^26.0.1" - "@jest/types" "^26.0.1" + "@jest/console" "^26.2.0" + "@jest/types" "^26.2.0" "@types/istanbul-lib-coverage" "^2.0.0" collect-v8-coverage "^1.0.0" @@ -2064,16 +2068,16 @@ jest-runner "^24.9.0" jest-runtime "^24.9.0" -"@jest/test-sequencer@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-26.0.1.tgz#b0563424728f3fe9e75d1442b9ae4c11da73f090" - integrity sha512-ssga8XlwfP8YjbDcmVhwNlrmblddMfgUeAkWIXts1V22equp2GMIHxm7cyeD5Q/B0ZgKPK/tngt45sH99yLLGg== +"@jest/test-sequencer@^26.2.2": + version "26.2.2" + resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-26.2.2.tgz#5e8091f2e6c61fdf242af566cb820a4eadc6c4af" + integrity sha512-SliZWon5LNqV/lVXkeowSU6L8++FGOu3f43T01L1Gv6wnFDP00ER0utV9jyK9dVNdXqfMNCN66sfcyar/o7BNw== dependencies: - "@jest/test-result" "^26.0.1" + "@jest/test-result" "^26.2.0" graceful-fs "^4.2.4" - jest-haste-map "^26.0.1" - jest-runner "^26.0.1" - jest-runtime "^26.0.1" + jest-haste-map "^26.2.2" + jest-runner "^26.2.2" + jest-runtime "^26.2.2" "@jest/transform@^24.9.0": version "24.9.0" @@ -2097,21 +2101,21 @@ source-map "^0.6.1" write-file-atomic "2.4.1" -"@jest/transform@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-26.0.1.tgz#0e3ecbb34a11cd4b2080ed0a9c4856cf0ceb0639" - integrity sha512-pPRkVkAQ91drKGbzCfDOoHN838+FSbYaEAvBXvKuWeeRRUD8FjwXkqfUNUZL6Ke48aA/1cqq/Ni7kVMCoqagWA== +"@jest/transform@^26.2.2": + version "26.2.2" + resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-26.2.2.tgz#86c005c8d5d749ac54d8df53ea58675fffe7a97e" + integrity sha512-c1snhvi5wRVre1XyoO3Eef5SEWpuBCH/cEbntBUd9tI5sNYiBDmO0My/lc5IuuGYKp/HFIHV1eZpSx5yjdkhKw== dependencies: "@babel/core" "^7.1.0" - "@jest/types" "^26.0.1" + "@jest/types" "^26.2.0" babel-plugin-istanbul "^6.0.0" chalk "^4.0.0" convert-source-map "^1.4.0" fast-json-stable-stringify "^2.0.0" graceful-fs "^4.2.4" - jest-haste-map "^26.0.1" + jest-haste-map "^26.2.2" jest-regex-util "^26.0.0" - jest-util "^26.0.1" + jest-util "^26.2.0" micromatch "^4.0.2" pirates "^4.0.1" slash "^3.0.0" @@ -2137,13 +2141,14 @@ "@types/yargs" "^15.0.0" chalk "^3.0.0" -"@jest/types@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.0.1.tgz#b78333fbd113fa7aec8d39de24f88de8686dac67" - integrity sha512-IbtjvqI9+eS1qFnOIEL7ggWmT+iK/U+Vde9cGWtYb/b6XgKb3X44ZAe/z9YZzoAAZ/E92m0DqrilF934IGNnQA== +"@jest/types@^26.2.0": + version "26.2.0" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.2.0.tgz#b28ca1fb517a4eb48c0addea7fcd9edc4ab45721" + integrity sha512-lvm3rJvctxd7+wxKSxxbzpDbr4FXDLaC57WEKdUIZ2cjTYuxYSc0zlyD7Z4Uqr5VdKxRUrtwIkiqBuvgf8uKJA== dependencies: "@types/istanbul-lib-coverage" "^2.0.0" "@types/istanbul-reports" "^1.1.1" + "@types/node" "*" "@types/yargs" "^15.0.0" chalk "^4.0.0" @@ -3318,6 +3323,17 @@ dependencies: "@types/node" "*" +"@types/babel__core@^7.0.0": + version "7.1.9" + resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.9.tgz#77e59d438522a6fb898fa43dc3455c6e72f3963d" + integrity sha512-sY2RsIJ5rpER1u3/aQ8OFSI7qGIy8o1NEEbgb2UaJcvOtXOMpd39ko723NBpjQFg9SIX7TXtjejZVGeIMLhoOw== + dependencies: + "@babel/parser" "^7.1.0" + "@babel/types" "^7.0.0" + "@types/babel__generator" "*" + "@types/babel__template" "*" + "@types/babel__traverse" "*" + "@types/babel__core@^7.1.0", "@types/babel__core@^7.1.7": version "7.1.8" resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.8.tgz#057f725aca3641f49fc11c7a87a9de5ec588a5d7" @@ -3526,10 +3542,10 @@ "@types/istanbul-lib-coverage" "*" "@types/istanbul-lib-report" "*" -"@types/jest@25.2.3": - version "25.2.3" - resolved "https://registry.yarnpkg.com/@types/jest/-/jest-25.2.3.tgz#33d27e4c4716caae4eced355097a47ad363fdcaf" - integrity sha512-JXc1nK/tXHiDhV55dvfzqtmP4S3sy3T3ouV2tkViZgxY/zeUkcpQcQPGRlgF4KmWzWW5oiWYSZwtCB+2RsE4Fw== +"@types/jest@26.0.9": + version "26.0.9" + resolved "https://registry.yarnpkg.com/@types/jest/-/jest-26.0.9.tgz#0543b57da5f0cd949c5f423a00c56c492289c989" + integrity sha512-k4qFfJ5AUKrWok5KYXp2EPm89b0P/KZpl7Vg4XuOTVVQEhLDBDBU3iBFrjjdgd8fLw96aAtmnwhXHl63bWeBQQ== dependencies: jest-diff "^25.2.1" pretty-format "^25.2.1" @@ -5100,16 +5116,16 @@ babel-jest@^24.9.0: chalk "^2.4.2" slash "^2.0.0" -babel-jest@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-26.0.1.tgz#450139ce4b6c17174b136425bda91885c397bc46" - integrity sha512-Z4GGmSNQ8pX3WS1O+6v3fo41YItJJZsVxG5gIQ+HuB/iuAQBJxMTHTwz292vuYws1LnHfwSRgoqI+nxdy/pcvw== +babel-jest@^26.2.2: + version "26.2.2" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-26.2.2.tgz#70f618f2d7016ed71b232241199308985462f812" + integrity sha512-JmLuePHgA+DSOdOL8lPxCgD2LhPPm+rdw1vnxR73PpIrnmKCS2/aBhtkAcxQWuUcW2hBrH8MJ3LKXE7aWpNZyA== dependencies: - "@jest/transform" "^26.0.1" - "@jest/types" "^26.0.1" + "@jest/transform" "^26.2.2" + "@jest/types" "^26.2.0" "@types/babel__core" "^7.1.7" babel-plugin-istanbul "^6.0.0" - babel-preset-jest "^26.0.0" + babel-preset-jest "^26.2.0" chalk "^4.0.0" graceful-fs "^4.2.4" slash "^3.0.0" @@ -5160,13 +5176,14 @@ babel-plugin-jest-hoist@^24.9.0: dependencies: "@types/babel__traverse" "^7.0.6" -babel-plugin-jest-hoist@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.0.0.tgz#fd1d35f95cf8849fc65cb01b5e58aedd710b34a8" - integrity sha512-+AuoehOrjt9irZL7DOt2+4ZaTM6dlu1s5TTS46JBa0/qem4dy7VNW3tMb96qeEqcIh20LD73TVNtmVEeymTG7w== +babel-plugin-jest-hoist@^26.2.0: + version "26.2.0" + resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.2.0.tgz#bdd0011df0d3d513e5e95f76bd53b51147aca2dd" + integrity sha512-B/hVMRv8Nh1sQ1a3EY8I0n4Y1Wty3NrR5ebOyVT302op+DOAau+xNEImGMsUWOC3++ZlMooCytKz+NgN8aKGbA== dependencies: "@babel/template" "^7.3.3" "@babel/types" "^7.3.3" + "@types/babel__core" "^7.0.0" "@types/babel__traverse" "^7.0.6" babel-plugin-macros@2.8.0: @@ -5272,12 +5289,12 @@ babel-preset-jest@^24.9.0: "@babel/plugin-syntax-object-rest-spread" "^7.0.0" babel-plugin-jest-hoist "^24.9.0" -babel-preset-jest@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-26.0.0.tgz#1eac82f513ad36c4db2e9263d7c485c825b1faa6" - integrity sha512-9ce+DatAa31DpR4Uir8g4Ahxs5K4W4L8refzt+qHWQANb6LhGcAEfIFgLUwk67oya2cCUd6t4eUMtO/z64ocNw== +babel-preset-jest@^26.2.0: + version "26.2.0" + resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-26.2.0.tgz#f198201a4e543a43eb40bc481e19736e095fd3e0" + integrity sha512-R1k8kdP3R9phYQugXeNnK/nvCGlBzG4m3EoIIukC80GXb6wCv2XiwPhK6K9MAkQcMszWBYvl2Wm+yigyXFQqXg== dependencies: - babel-plugin-jest-hoist "^26.0.0" + babel-plugin-jest-hoist "^26.2.0" babel-preset-current-node-syntax "^0.1.2" babel-preset-react-app@^9.1.2: @@ -7719,6 +7736,11 @@ emittery@0.5.1: resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.5.1.tgz#9fbbf57e9aecc258d727d78858a598eb05ea5c96" integrity sha512-sYZXNHH9PhTfs98ROEFVC3bLiR8KSqXQsEHIwZ9J6H0RaQObC3JYq4G8IvDd0b45/LxfGKYBpmaUN4LiKytaNw== +emittery@^0.7.1: + version "0.7.1" + resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.7.1.tgz#c02375a927a40948c0345cc903072597f5270451" + integrity sha512-d34LN4L6h18Bzz9xpoku2nPwKxCPlPMr3EEKTkoEBi+1/+b0lcRkRJ1UVyyZaKNeqGR3swcGl6s390DNO4YVgQ== + emoji-regex@^7.0.1, emoji-regex@^7.0.2: version "7.0.3" resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" @@ -8302,16 +8324,16 @@ expect@^24.9.0: jest-message-util "^24.9.0" jest-regex-util "^24.9.0" -expect@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/expect/-/expect-26.0.1.tgz#18697b9611a7e2725e20ba3ceadda49bc9865421" - integrity sha512-QcCy4nygHeqmbw564YxNbHTJlXh47dVID2BUP52cZFpLU9zHViMFK6h07cC1wf7GYCTIigTdAXhVua8Yl1FkKg== +expect@^26.2.0: + version "26.2.0" + resolved "https://registry.yarnpkg.com/expect/-/expect-26.2.0.tgz#0140dd9cc7376d7833852e9cda88c05414f1efba" + integrity sha512-8AMBQ9UVcoUXt0B7v+5/U5H6yiUR87L6eKCfjE3spx7Ya5lF+ebUo37MCFBML2OiLfkX1sxmQOZhIDonyVTkcw== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.2.0" ansi-styles "^4.0.0" jest-get-type "^26.0.0" - jest-matcher-utils "^26.0.1" - jest-message-util "^26.0.1" + jest-matcher-utils "^26.2.0" + jest-message-util "^26.2.0" jest-regex-util "^26.0.0" express-session@1.17.1: @@ -10571,7 +10593,7 @@ istanbul-lib-instrument@^3.0.1, istanbul-lib-instrument@^3.3.0: istanbul-lib-coverage "^2.0.5" semver "^6.0.0" -istanbul-lib-instrument@^4.0.0: +istanbul-lib-instrument@^4.0.0, istanbul-lib-instrument@^4.0.3: version "4.0.3" resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz#873c6fff897450118222774696a3f28902d77c1d" integrity sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ== @@ -10648,12 +10670,12 @@ jest-changed-files@^24.9.0: execa "^1.0.0" throat "^4.0.0" -jest-changed-files@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-26.0.1.tgz#1334630c6a1ad75784120f39c3aa9278e59f349f" - integrity sha512-q8LP9Sint17HaE2LjxQXL+oYWW/WeeXMPE2+Op9X3mY8IEGFVc14xRxFjUuXUbcPAlDLhtWdIEt59GdQbn76Hw== +jest-changed-files@^26.2.0: + version "26.2.0" + resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-26.2.0.tgz#b4946201defe0c919a2f3d601e9f98cb21dacc15" + integrity sha512-+RyJb+F1K/XBLIYiL449vo5D+CvlHv29QveJUWNPXuUicyZcq+tf1wNxmmFeRvAU1+TzhwqczSjxnCCFt7+8iA== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.2.0" execa "^4.0.0" throat "^5.0.0" @@ -10676,22 +10698,22 @@ jest-cli@^24.9.0: realpath-native "^1.1.0" yargs "^13.3.0" -jest-cli@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-26.0.1.tgz#3a42399a4cbc96a519b99ad069a117d955570cac" - integrity sha512-pFLfSOBcbG9iOZWaMK4Een+tTxi/Wcm34geqZEqrst9cZDkTQ1LZ2CnBrTlHWuYAiTMFr0EQeK52ScyFU8wK+w== +jest-cli@^26.2.2: + version "26.2.2" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-26.2.2.tgz#4c273e5474baafac1eb15fd25aaafb4703f5ffbc" + integrity sha512-vVcly0n/ijZvdy6gPQiQt0YANwX2hLTPQZHtW7Vi3gcFdKTtif7YpI85F8R8JYy5DFSWz4x1OW0arnxlziu5Lw== dependencies: - "@jest/core" "^26.0.1" - "@jest/test-result" "^26.0.1" - "@jest/types" "^26.0.1" + "@jest/core" "^26.2.2" + "@jest/test-result" "^26.2.0" + "@jest/types" "^26.2.0" chalk "^4.0.0" exit "^0.1.2" graceful-fs "^4.2.4" import-local "^3.0.2" is-ci "^2.0.0" - jest-config "^26.0.1" - jest-util "^26.0.1" - jest-validate "^26.0.1" + jest-config "^26.2.2" + jest-util "^26.2.0" + jest-validate "^26.2.0" prompts "^2.0.1" yargs "^15.3.1" @@ -10718,29 +10740,29 @@ jest-config@^24.9.0: pretty-format "^24.9.0" realpath-native "^1.1.0" -jest-config@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-26.0.1.tgz#096a3d4150afadf719d1fab00e9a6fb2d6d67507" - integrity sha512-9mWKx2L1LFgOXlDsC4YSeavnblN6A4CPfXFiobq+YYLaBMymA/SczN7xYTSmLaEYHZOcB98UdoN4m5uNt6tztg== +jest-config@^26.2.2: + version "26.2.2" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-26.2.2.tgz#f3ebc7e2bc3f49de8ed3f8007152f345bb111917" + integrity sha512-2lhxH0y4YFOijMJ65usuf78m7+9/8+hAb1PZQtdRdgnQpAb4zP6KcVDDktpHEkspBKnc2lmFu+RQdHukUUbiTg== dependencies: "@babel/core" "^7.1.0" - "@jest/test-sequencer" "^26.0.1" - "@jest/types" "^26.0.1" - babel-jest "^26.0.1" + "@jest/test-sequencer" "^26.2.2" + "@jest/types" "^26.2.0" + babel-jest "^26.2.2" chalk "^4.0.0" deepmerge "^4.2.2" glob "^7.1.1" graceful-fs "^4.2.4" - jest-environment-jsdom "^26.0.1" - jest-environment-node "^26.0.1" + jest-environment-jsdom "^26.2.0" + jest-environment-node "^26.2.0" jest-get-type "^26.0.0" - jest-jasmine2 "^26.0.1" + jest-jasmine2 "^26.2.2" jest-regex-util "^26.0.0" - jest-resolve "^26.0.1" - jest-util "^26.0.1" - jest-validate "^26.0.1" + jest-resolve "^26.2.2" + jest-util "^26.2.0" + jest-validate "^26.2.0" micromatch "^4.0.2" - pretty-format "^26.0.1" + pretty-format "^26.2.0" jest-diff@^24.9.0: version "24.9.0" @@ -10762,15 +10784,15 @@ jest-diff@^25.2.1: jest-get-type "^25.2.6" pretty-format "^25.5.0" -jest-diff@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-26.0.1.tgz#c44ab3cdd5977d466de69c46929e0e57f89aa1de" - integrity sha512-odTcHyl5X+U+QsczJmOjWw5tPvww+y9Yim5xzqxVl/R1j4z71+fHW4g8qu1ugMmKdFdxw+AtQgs5mupPnzcIBQ== +jest-diff@^26.2.0: + version "26.2.0" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-26.2.0.tgz#dee62c771adbb23ae585f3f1bd289a6e8ef4f298" + integrity sha512-Wu4Aopi2nzCsHWLBlD48TgRy3Z7OsxlwvHNd1YSnHc7q1NJfrmyCPoUXrTIrydQOG5ApaYpsAsdfnMbJqV1/wQ== dependencies: chalk "^4.0.0" diff-sequences "^26.0.0" jest-get-type "^26.0.0" - pretty-format "^26.0.1" + pretty-format "^26.2.0" jest-docblock@^24.3.0: version "24.9.0" @@ -10797,16 +10819,16 @@ jest-each@^24.9.0: jest-util "^24.9.0" pretty-format "^24.9.0" -jest-each@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-26.0.1.tgz#633083061619302fc90dd8f58350f9d77d67be04" - integrity sha512-OTgJlwXCAR8NIWaXFL5DBbeS4QIYPuNASkzSwMCJO+ywo9BEa6TqkaSWsfR7VdbMLdgYJqSfQcIyjJCNwl5n4Q== +jest-each@^26.2.0: + version "26.2.0" + resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-26.2.0.tgz#aec8efa01d072d7982c900e74940863385fa884e" + integrity sha512-gHPCaho1twWHB5bpcfnozlc6mrMi+VAewVPNgmwf81x2Gzr6XO4dl+eOrwPWxbkYlgjgrYjWK2xgKnixbzH3Ew== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.2.0" chalk "^4.0.0" jest-get-type "^26.0.0" - jest-util "^26.0.1" - pretty-format "^26.0.1" + jest-util "^26.2.0" + pretty-format "^26.2.0" jest-environment-jsdom-fourteen@1.0.1: version "1.0.1" @@ -10832,16 +10854,17 @@ jest-environment-jsdom@^24.9.0: jest-util "^24.9.0" jsdom "^11.5.1" -jest-environment-jsdom@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-26.0.1.tgz#217690852e5bdd7c846a4e3b50c8ffd441dfd249" - integrity sha512-u88NJa3aptz2Xix2pFhihRBAatwZHWwSiRLBDBQE1cdJvDjPvv7ZGA0NQBxWwDDn7D0g1uHqxM8aGgfA9Bx49g== +jest-environment-jsdom@^26.2.0: + version "26.2.0" + resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-26.2.0.tgz#6443a6f3569297dcaa4371dddf93acaf167302dc" + integrity sha512-sDG24+5M4NuIGzkI3rJW8XUlrpkvIdE9Zz4jhD8OBnVxAw+Y1jUk9X+lAOD48nlfUTlnt3lbAI3k2Ox+WF3S0g== dependencies: - "@jest/environment" "^26.0.1" - "@jest/fake-timers" "^26.0.1" - "@jest/types" "^26.0.1" - jest-mock "^26.0.1" - jest-util "^26.0.1" + "@jest/environment" "^26.2.0" + "@jest/fake-timers" "^26.2.0" + "@jest/types" "^26.2.0" + "@types/node" "*" + jest-mock "^26.2.0" + jest-util "^26.2.0" jsdom "^16.2.2" jest-environment-node@^24.9.0: @@ -10855,16 +10878,17 @@ jest-environment-node@^24.9.0: jest-mock "^24.9.0" jest-util "^24.9.0" -jest-environment-node@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-26.0.1.tgz#584a9ff623124ff6eeb49e0131b5f7612b310b13" - integrity sha512-4FRBWcSn5yVo0KtNav7+5NH5Z/tEgDLp7VRQVS5tCouWORxj+nI+1tOLutM07Zb2Qi7ja+HEDoOUkjBSWZg/IQ== +jest-environment-node@^26.2.0: + version "26.2.0" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-26.2.0.tgz#fee89e06bdd4bed3f75ee2978d73ede9bb57a681" + integrity sha512-4M5ExTYkJ19efBzkiXtBi74JqKLDciEk4CEsp5tTjWGYMrlKFQFtwIVG3tW1OGE0AlXhZjuHPwubuRYY4j4uOw== dependencies: - "@jest/environment" "^26.0.1" - "@jest/fake-timers" "^26.0.1" - "@jest/types" "^26.0.1" - jest-mock "^26.0.1" - jest-util "^26.0.1" + "@jest/environment" "^26.2.0" + "@jest/fake-timers" "^26.2.0" + "@jest/types" "^26.2.0" + "@types/node" "*" + jest-mock "^26.2.0" + jest-util "^26.2.0" jest-get-type@^24.9.0: version "24.9.0" @@ -10900,23 +10924,24 @@ jest-haste-map@^24.9.0: optionalDependencies: fsevents "^1.2.7" -jest-haste-map@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-26.0.1.tgz#40dcc03c43ac94d25b8618075804d09cd5d49de7" - integrity sha512-J9kBl/EdjmDsvyv7CiyKY5+DsTvVOScenprz/fGqfLg/pm1gdjbwwQ98nW0t+OIt+f+5nAVaElvn/6wP5KO7KA== +jest-haste-map@^26.2.2: + version "26.2.2" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-26.2.2.tgz#6d4267b1903854bfdf6a871419f35a82f03ae71e" + integrity sha512-3sJlMSt+NHnzCB+0KhJ1Ut4zKJBiJOlbrqEYNdRQGlXTv8kqzZWjUKQRY3pkjmlf+7rYjAV++MQ4D6g4DhAyOg== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.2.0" "@types/graceful-fs" "^4.1.2" + "@types/node" "*" anymatch "^3.0.3" fb-watchman "^2.0.0" graceful-fs "^4.2.4" - jest-serializer "^26.0.0" - jest-util "^26.0.1" - jest-worker "^26.0.0" + jest-regex-util "^26.0.0" + jest-serializer "^26.2.0" + jest-util "^26.2.0" + jest-worker "^26.2.1" micromatch "^4.0.2" sane "^4.0.3" walker "^1.0.7" - which "^2.0.2" optionalDependencies: fsevents "^2.1.2" @@ -10942,27 +10967,28 @@ jest-jasmine2@^24.9.0: pretty-format "^24.9.0" throat "^4.0.0" -jest-jasmine2@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-26.0.1.tgz#947c40ee816636ba23112af3206d6fa7b23c1c1c" - integrity sha512-ILaRyiWxiXOJ+RWTKupzQWwnPaeXPIoLS5uW41h18varJzd9/7I0QJGqg69fhTT1ev9JpSSo9QtalriUN0oqOg== +jest-jasmine2@^26.2.2: + version "26.2.2" + resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-26.2.2.tgz#d82b1721fac2b153a4f8b3f0c95e81e702812de2" + integrity sha512-Q8AAHpbiZMVMy4Hz9j1j1bg2yUmPa1W9StBvcHqRaKa9PHaDUMwds8LwaDyzP/2fkybcTQE4+pTMDOG9826tEw== dependencies: "@babel/traverse" "^7.1.0" - "@jest/environment" "^26.0.1" - "@jest/source-map" "^26.0.0" - "@jest/test-result" "^26.0.1" - "@jest/types" "^26.0.1" + "@jest/environment" "^26.2.0" + "@jest/source-map" "^26.1.0" + "@jest/test-result" "^26.2.0" + "@jest/types" "^26.2.0" + "@types/node" "*" chalk "^4.0.0" co "^4.6.0" - expect "^26.0.1" + expect "^26.2.0" is-generator-fn "^2.0.0" - jest-each "^26.0.1" - jest-matcher-utils "^26.0.1" - jest-message-util "^26.0.1" - jest-runtime "^26.0.1" - jest-snapshot "^26.0.1" - jest-util "^26.0.1" - pretty-format "^26.0.1" + jest-each "^26.2.0" + jest-matcher-utils "^26.2.0" + jest-message-util "^26.2.0" + jest-runtime "^26.2.2" + jest-snapshot "^26.2.2" + jest-util "^26.2.0" + pretty-format "^26.2.0" throat "^5.0.0" jest-leak-detector@^24.9.0: @@ -10973,13 +10999,13 @@ jest-leak-detector@^24.9.0: jest-get-type "^24.9.0" pretty-format "^24.9.0" -jest-leak-detector@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-26.0.1.tgz#79b19ab3f41170e0a78eb8fa754a116d3447fb8c" - integrity sha512-93FR8tJhaYIWrWsbmVN1pQ9ZNlbgRpfvrnw5LmgLRX0ckOJ8ut/I35CL7awi2ecq6Ca4lL59bEK9hr7nqoHWPA== +jest-leak-detector@^26.2.0: + version "26.2.0" + resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-26.2.0.tgz#073ee6d8db7a9af043e7ce99d8eea17a4fb0cc50" + integrity sha512-aQdzTX1YiufkXA1teXZu5xXOJgy7wZQw6OJ0iH5CtQlOETe6gTSocaYKUNui1SzQ91xmqEUZ/WRavg9FD82rtQ== dependencies: jest-get-type "^26.0.0" - pretty-format "^26.0.1" + pretty-format "^26.2.0" jest-localstorage-mock@2.4.2: version "2.4.2" @@ -10996,15 +11022,15 @@ jest-matcher-utils@^24.9.0: jest-get-type "^24.9.0" pretty-format "^24.9.0" -jest-matcher-utils@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-26.0.1.tgz#12e1fc386fe4f14678f4cc8dbd5ba75a58092911" - integrity sha512-PUMlsLth0Azen8Q2WFTwnSkGh2JZ8FYuwijC8NR47vXKpsrKmA1wWvgcj1CquuVfcYiDEdj985u5Wmg7COEARw== +jest-matcher-utils@^26.2.0: + version "26.2.0" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-26.2.0.tgz#b107af98c2b8c557ffd46c1adf06f794aa52d622" + integrity sha512-2cf/LW2VFb3ayPHrH36ZDjp9+CAeAe/pWBAwsV8t3dKcrINzXPVxq8qMWOxwt5BaeBCx4ZupVGH7VIgB8v66vQ== dependencies: chalk "^4.0.0" - jest-diff "^26.0.1" + jest-diff "^26.2.0" jest-get-type "^26.0.0" - pretty-format "^26.0.1" + pretty-format "^26.2.0" jest-message-util@^24.9.0: version "24.9.0" @@ -11020,13 +11046,13 @@ jest-message-util@^24.9.0: slash "^2.0.0" stack-utils "^1.0.1" -jest-message-util@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-26.0.1.tgz#07af1b42fc450b4cc8e90e4c9cef11b33ce9b0ac" - integrity sha512-CbK8uQREZ8umUfo8+zgIfEt+W7HAHjQCoRaNs4WxKGhAYBGwEyvxuK81FXa7VeB9pwDEXeeKOB2qcsNVCAvB7Q== +jest-message-util@^26.2.0: + version "26.2.0" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-26.2.0.tgz#757fbc1323992297092bb9016a71a2eb12fd22ea" + integrity sha512-g362RhZaJuqeqG108n1sthz5vNpzTNy926eNDszo4ncRbmmcMRIUAZibnd6s5v2XSBCChAxQtCoN25gnzp7JbQ== dependencies: "@babel/code-frame" "^7.0.0" - "@jest/types" "^26.0.1" + "@jest/types" "^26.2.0" "@types/stack-utils" "^1.0.1" chalk "^4.0.0" graceful-fs "^4.2.4" @@ -11041,18 +11067,24 @@ jest-mock@^24.0.0, jest-mock@^24.9.0: dependencies: "@jest/types" "^24.9.0" -jest-mock@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-26.0.1.tgz#7fd1517ed4955397cf1620a771dc2d61fad8fd40" - integrity sha512-MpYTBqycuPYSY6xKJognV7Ja46/TeRbAZept987Zp+tuJvMN0YBWyyhG9mXyYQaU3SBI0TUlSaO5L3p49agw7Q== +jest-mock@^26.2.0: + version "26.2.0" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-26.2.0.tgz#a1b3303ab38c34aa1dbbc16ab57cdc1a59ed50d1" + integrity sha512-XeC7yWtWmWByoyVOHSsE7NYsbXJLtJNgmhD7z4MKumKm6ET0si81bsSLbQ64L5saK3TgsHo2B/UqG5KNZ1Sp/Q== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.2.0" + "@types/node" "*" jest-pnp-resolver@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.1.tgz#ecdae604c077a7fbc70defb6d517c3c1c898923a" integrity sha512-pgFw2tm54fzgYvc/OHrnysABEObZCUNFnhjoRjaVOCN8NYc032/gVjPaHD4Aq6ApkSieWtfKAFQtmDKAmhupnQ== +jest-pnp-resolver@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz#b704ac0ae028a89108a4d040b3f919dfddc8e33c" + integrity sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w== + jest-regex-util@^24.3.0, jest-regex-util@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-24.9.0.tgz#c13fb3380bde22bf6575432c493ea8fe37965636" @@ -11072,14 +11104,14 @@ jest-resolve-dependencies@^24.9.0: jest-regex-util "^24.3.0" jest-snapshot "^24.9.0" -jest-resolve-dependencies@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-26.0.1.tgz#607ba7ccc32151d185a477cff45bf33bce417f0b" - integrity sha512-9d5/RS/ft0vB/qy7jct/qAhzJsr6fRQJyGAFigK3XD4hf9kIbEH5gks4t4Z7kyMRhowU6HWm/o8ILqhaHdSqLw== +jest-resolve-dependencies@^26.2.2: + version "26.2.2" + resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-26.2.2.tgz#2ad3cd9281730e9a5c487cd846984c5324e47929" + integrity sha512-S5vufDmVbQXnpP7435gr710xeBGUFcKNpNswke7RmFvDQtmqPjPVU/rCeMlEU0p6vfpnjhwMYeaVjKZAy5QYJA== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.2.0" jest-regex-util "^26.0.0" - jest-snapshot "^26.0.1" + jest-snapshot "^26.2.2" jest-resolve@24.9.0, jest-resolve@^24.9.0: version "24.9.0" @@ -11092,16 +11124,16 @@ jest-resolve@24.9.0, jest-resolve@^24.9.0: jest-pnp-resolver "^1.2.1" realpath-native "^1.1.0" -jest-resolve@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-26.0.1.tgz#21d1ee06f9ea270a343a8893051aeed940cde736" - integrity sha512-6jWxk0IKZkPIVTvq6s72RH735P8f9eCJW3IM5CX/SJFeKq1p2cZx0U49wf/SdMlhaB/anann5J2nCJj6HrbezQ== +jest-resolve@^26.2.2: + version "26.2.2" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-26.2.2.tgz#324a20a516148d61bffa0058ed0c77c510ecfd3e" + integrity sha512-ye9Tj/ILn/0OgFPE/3dGpQPUqt4dHwIocxt5qSBkyzxQD8PbL0bVxBogX2FHxsd3zJA7V2H/cHXnBnNyyT9YoQ== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.2.0" chalk "^4.0.0" graceful-fs "^4.2.4" - jest-pnp-resolver "^1.2.1" - jest-util "^26.0.1" + jest-pnp-resolver "^1.2.2" + jest-util "^26.2.0" read-pkg-up "^7.0.1" resolve "^1.17.0" slash "^3.0.0" @@ -11131,28 +11163,29 @@ jest-runner@^24.9.0: source-map-support "^0.5.6" throat "^4.0.0" -jest-runner@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-26.0.1.tgz#ea03584b7ae4bacfb7e533d680a575a49ae35d50" - integrity sha512-CApm0g81b49Znm4cZekYQK67zY7kkB4umOlI2Dx5CwKAzdgw75EN+ozBHRvxBzwo1ZLYZ07TFxkaPm+1t4d8jA== +jest-runner@^26.2.2: + version "26.2.2" + resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-26.2.2.tgz#6d03d057886e9c782e10b2cf37443f902fe0e39e" + integrity sha512-/qb6ptgX+KQ+aNMohJf1We695kaAfuu3u3ouh66TWfhTpLd9WbqcF6163d/tMoEY8GqPztXPLuyG0rHRVDLxCA== dependencies: - "@jest/console" "^26.0.1" - "@jest/environment" "^26.0.1" - "@jest/test-result" "^26.0.1" - "@jest/types" "^26.0.1" + "@jest/console" "^26.2.0" + "@jest/environment" "^26.2.0" + "@jest/test-result" "^26.2.0" + "@jest/types" "^26.2.0" + "@types/node" "*" chalk "^4.0.0" + emittery "^0.7.1" exit "^0.1.2" graceful-fs "^4.2.4" - jest-config "^26.0.1" + jest-config "^26.2.2" jest-docblock "^26.0.0" - jest-haste-map "^26.0.1" - jest-jasmine2 "^26.0.1" - jest-leak-detector "^26.0.1" - jest-message-util "^26.0.1" - jest-resolve "^26.0.1" - jest-runtime "^26.0.1" - jest-util "^26.0.1" - jest-worker "^26.0.0" + jest-haste-map "^26.2.2" + jest-leak-detector "^26.2.0" + jest-message-util "^26.2.0" + jest-resolve "^26.2.2" + jest-runtime "^26.2.2" + jest-util "^26.2.0" + jest-worker "^26.2.1" source-map-support "^0.5.6" throat "^5.0.0" @@ -11185,34 +11218,34 @@ jest-runtime@^24.9.0: strip-bom "^3.0.0" yargs "^13.3.0" -jest-runtime@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-26.0.1.tgz#a121a6321235987d294168e282d52b364d7d3f89" - integrity sha512-Ci2QhYFmANg5qaXWf78T2Pfo6GtmIBn2rRaLnklRyEucmPccmCKvS9JPljcmtVamsdMmkyNkVFb9pBTD6si9Lw== - dependencies: - "@jest/console" "^26.0.1" - "@jest/environment" "^26.0.1" - "@jest/fake-timers" "^26.0.1" - "@jest/globals" "^26.0.1" - "@jest/source-map" "^26.0.0" - "@jest/test-result" "^26.0.1" - "@jest/transform" "^26.0.1" - "@jest/types" "^26.0.1" +jest-runtime@^26.2.2: + version "26.2.2" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-26.2.2.tgz#2480ff79320680a643031dd21998d7c63d83ab68" + integrity sha512-a8VXM3DxCDnCIdl9+QucWFfQ28KdqmyVFqeKLigHdErtsx56O2ZIdQkhFSuP1XtVrG9nTNHbKxjh5XL1UaFDVQ== + dependencies: + "@jest/console" "^26.2.0" + "@jest/environment" "^26.2.0" + "@jest/fake-timers" "^26.2.0" + "@jest/globals" "^26.2.0" + "@jest/source-map" "^26.1.0" + "@jest/test-result" "^26.2.0" + "@jest/transform" "^26.2.2" + "@jest/types" "^26.2.0" "@types/yargs" "^15.0.0" chalk "^4.0.0" collect-v8-coverage "^1.0.0" exit "^0.1.2" glob "^7.1.3" graceful-fs "^4.2.4" - jest-config "^26.0.1" - jest-haste-map "^26.0.1" - jest-message-util "^26.0.1" - jest-mock "^26.0.1" + jest-config "^26.2.2" + jest-haste-map "^26.2.2" + jest-message-util "^26.2.0" + jest-mock "^26.2.0" jest-regex-util "^26.0.0" - jest-resolve "^26.0.1" - jest-snapshot "^26.0.1" - jest-util "^26.0.1" - jest-validate "^26.0.1" + jest-resolve "^26.2.2" + jest-snapshot "^26.2.2" + jest-util "^26.2.0" + jest-validate "^26.2.0" slash "^3.0.0" strip-bom "^4.0.0" yargs "^15.3.1" @@ -11222,11 +11255,12 @@ jest-serializer@^24.9.0: resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-24.9.0.tgz#e6d7d7ef96d31e8b9079a714754c5d5c58288e73" integrity sha512-DxYipDr8OvfrKH3Kel6NdED3OXxjvxXZ1uIY2I9OFbGg+vUkkg7AGvi65qbhbWNPvDckXmzMPbK3u3HaDO49bQ== -jest-serializer@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-26.0.0.tgz#f6c521ddb976943b93e662c0d4d79245abec72a3" - integrity sha512-sQGXLdEGWFAE4wIJ2ZaIDb+ikETlUirEOBsLXdoBbeLhTHkZUJwgk3+M8eyFizhM6le43PDCCKPA1hzkSDo4cQ== +jest-serializer@^26.2.0: + version "26.2.0" + resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-26.2.0.tgz#92dcae5666322410f4bf50211dd749274959ddac" + integrity sha512-V7snZI9IVmyJEu0Qy0inmuXgnMWDtrsbV2p9CRAcmlmPVwpC2ZM8wXyYpiugDQnwLHx0V4+Pnog9Exb3UO8M6Q== dependencies: + "@types/node" "*" graceful-fs "^4.2.4" jest-snapshot@^24.9.0: @@ -11248,27 +11282,39 @@ jest-snapshot@^24.9.0: pretty-format "^24.9.0" semver "^6.2.0" -jest-snapshot@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-26.0.1.tgz#1baa942bd83d47b837a84af7fcf5fd4a236da399" - integrity sha512-jxd+cF7+LL+a80qh6TAnTLUZHyQoWwEHSUFJjkw35u3Gx+BZUNuXhYvDqHXr62UQPnWo2P6fvQlLjsU93UKyxA== +jest-snapshot@^26.2.2: + version "26.2.2" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-26.2.2.tgz#9d2eda083a4a1017b157e351868749bd63211799" + integrity sha512-NdjD8aJS7ePu268Wy/n/aR1TUisG0BOY+QOW4f6h46UHEKOgYmmkvJhh2BqdVZQ0BHSxTMt04WpCf9njzx8KtA== dependencies: "@babel/types" "^7.0.0" - "@jest/types" "^26.0.1" + "@jest/types" "^26.2.0" "@types/prettier" "^2.0.0" chalk "^4.0.0" - expect "^26.0.1" + expect "^26.2.0" graceful-fs "^4.2.4" - jest-diff "^26.0.1" + jest-diff "^26.2.0" jest-get-type "^26.0.0" - jest-matcher-utils "^26.0.1" - jest-message-util "^26.0.1" - jest-resolve "^26.0.1" - make-dir "^3.0.0" + jest-haste-map "^26.2.2" + jest-matcher-utils "^26.2.0" + jest-message-util "^26.2.0" + jest-resolve "^26.2.2" natural-compare "^1.4.0" - pretty-format "^26.0.1" + pretty-format "^26.2.0" semver "^7.3.2" +jest-util@26.x, jest-util@^26.2.0: + version "26.2.0" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-26.2.0.tgz#0597d2a27c559340957609f106c408c17c1d88ac" + integrity sha512-YmDwJxLZ1kFxpxPfhSJ0rIkiZOM0PQbRcfH0TzJOhqCisCAsI1WcmoQqO83My9xeVA2k4n+rzg2UuexVKzPpig== + dependencies: + "@jest/types" "^26.2.0" + "@types/node" "*" + chalk "^4.0.0" + graceful-fs "^4.2.4" + is-ci "^2.0.0" + micromatch "^4.0.2" + jest-util@^24.0.0, jest-util@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-24.9.0.tgz#7396814e48536d2e85a37de3e4c431d7cb140162" @@ -11287,17 +11333,6 @@ jest-util@^24.0.0, jest-util@^24.9.0: slash "^2.0.0" source-map "^0.6.0" -jest-util@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-26.0.1.tgz#72c4c51177b695fdd795ca072a6f94e3d7cef00a" - integrity sha512-byQ3n7ad1BO/WyFkYvlWQHTsomB6GIewBh8tlGtusiylAlaxQ1UpS0XYH0ngOyhZuHVLN79Qvl6/pMiDMSSG1g== - dependencies: - "@jest/types" "^26.0.1" - chalk "^4.0.0" - graceful-fs "^4.2.4" - is-ci "^2.0.0" - make-dir "^3.0.0" - jest-validate@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-24.9.0.tgz#0775c55360d173cd854e40180756d4ff52def8ab" @@ -11310,17 +11345,17 @@ jest-validate@^24.9.0: leven "^3.1.0" pretty-format "^24.9.0" -jest-validate@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-26.0.1.tgz#a62987e1da5b7f724130f904725e22f4e5b2e23c" - integrity sha512-u0xRc+rbmov/VqXnX3DlkxD74rHI/CfS5xaV2VpeaVySjbb1JioNVOyly5b56q2l9ZKe7bVG5qWmjfctkQb0bA== +jest-validate@^26.2.0: + version "26.2.0" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-26.2.0.tgz#97fedf3e7984b7608854cbf925b9ca6ebcbdb78a" + integrity sha512-8XKn3hM6VIVmLNuyzYLCPsRCT83o8jMZYhbieh4dAyKLc4Ypr36rVKC+c8WMpWkfHHpGnEkvWUjjIAyobEIY/Q== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.2.0" camelcase "^6.0.0" chalk "^4.0.0" jest-get-type "^26.0.0" leven "^3.1.0" - pretty-format "^26.0.1" + pretty-format "^26.2.0" jest-watch-typeahead@0.4.2: version "0.4.2" @@ -11348,16 +11383,17 @@ jest-watcher@^24.3.0, jest-watcher@^24.9.0: jest-util "^24.9.0" string-length "^2.0.0" -jest-watcher@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-26.0.1.tgz#5b5e3ebbdf10c240e22a98af66d645631afda770" - integrity sha512-pdZPydsS8475f89kGswaNsN3rhP6lnC3/QDCppP7bg1L9JQz7oU9Mb/5xPETk1RHDCWeqmVC47M4K5RR7ejxFw== +jest-watcher@^26.2.0: + version "26.2.0" + resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-26.2.0.tgz#45bdf2fecadd19c0a501f3b071a474dca636825b" + integrity sha512-674Boco4Joe0CzgKPL6K4Z9LgyLx+ZvW2GilbpYb8rFEUkmDGgsZdv1Hv5rxsRpb1HLgKUOL/JfbttRCuFdZXQ== dependencies: - "@jest/test-result" "^26.0.1" - "@jest/types" "^26.0.1" + "@jest/test-result" "^26.2.0" + "@jest/types" "^26.2.0" + "@types/node" "*" ansi-escapes "^4.2.1" chalk "^4.0.0" - jest-util "^26.0.1" + jest-util "^26.2.0" string-length "^4.0.1" jest-worker@^24.6.0, jest-worker@^24.9.0: @@ -11376,11 +11412,12 @@ jest-worker@^25.1.0: merge-stream "^2.0.0" supports-color "^7.0.0" -jest-worker@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.0.0.tgz#4920c7714f0a96c6412464718d0c58a3df3fb066" - integrity sha512-pPaYa2+JnwmiZjK9x7p9BoZht+47ecFCDFA/CJxspHzeDvQcfVBLWzCiWyo+EGrSiQMWZtCFo9iSvMZnAAo8vw== +jest-worker@^26.2.1: + version "26.2.1" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.2.1.tgz#5d630ab93f666b53f911615bc13e662b382bd513" + integrity sha512-+XcGMMJDTeEGncRb5M5Zq9P7K4sQ1sirhjdOxsN1462h6lFo9w59bl2LVQmdGEEeU3m+maZCkS2Tcc9SfCHO4A== dependencies: + "@types/node" "*" merge-stream "^2.0.0" supports-color "^7.0.0" @@ -11392,14 +11429,14 @@ jest@24.9.0: import-local "^2.0.0" jest-cli "^24.9.0" -jest@26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest/-/jest-26.0.1.tgz#5c51a2e58dff7525b65f169721767173bf832694" - integrity sha512-29Q54kn5Bm7ZGKIuH2JRmnKl85YRigp0o0asTc6Sb6l2ch1DCXIeZTLLFy9ultJvhkTqbswF5DEx4+RlkmCxWg== +jest@26.2.2: + version "26.2.2" + resolved "https://registry.yarnpkg.com/jest/-/jest-26.2.2.tgz#a022303887b145147204c5f66e6a5c832333c7e7" + integrity sha512-EkJNyHiAG1+A8pqSz7cXttoVa34hOEzN/MrnJhYnfp5VHxflVcf2pu3oJSrhiy6LfIutLdWo+n6q63tjcoIeig== dependencies: - "@jest/core" "^26.0.1" + "@jest/core" "^26.2.2" import-local "^3.0.2" - jest-cli "^26.0.1" + jest-cli "^26.2.2" "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" @@ -12508,14 +12545,6 @@ microevent.ts@~0.1.1: resolved "https://registry.yarnpkg.com/microevent.ts/-/microevent.ts-0.1.1.tgz#70b09b83f43df5172d0205a63025bce0f7357fa0" integrity sha512-jo1OfR4TaEwd5HOrt5+tAZ9mqT4jmpNAusXtyfNzqVm9uiSYFZlKM1wYL4oU7azZW/PxQW53wM0S6OR1JHNa2g== -micromatch@4.x, micromatch@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.2.tgz#4fcb0999bf9fbc2fcbdd212f6d629b9a56c39259" - integrity sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q== - dependencies: - braces "^3.0.1" - picomatch "^2.0.5" - micromatch@^3.1.10, micromatch@^3.1.4: version "3.1.10" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" @@ -12535,6 +12564,14 @@ micromatch@^3.1.10, micromatch@^3.1.4: snapdragon "^0.8.1" to-regex "^3.0.2" +micromatch@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.2.tgz#4fcb0999bf9fbc2fcbdd212f6d629b9a56c39259" + integrity sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q== + dependencies: + braces "^3.0.1" + picomatch "^2.0.5" + miller-rabin@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d" @@ -12738,12 +12775,12 @@ mkdirp-promise@^5.0.1: dependencies: mkdirp "*" -mkdirp@*, mkdirp@1.0.4, mkdirp@^1.0.3: +mkdirp@*, mkdirp@1.0.4, mkdirp@1.x, mkdirp@^1.0.3: version "1.0.4" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== -mkdirp@0.x, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@~0.5.1: +mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@~0.5.1: version "0.5.5" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== @@ -14921,12 +14958,12 @@ pretty-format@^25.2.1, pretty-format@^25.5.0: ansi-styles "^4.0.0" react-is "^16.12.0" -pretty-format@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-26.0.1.tgz#a4fe54fe428ad2fd3413ca6bbd1ec8c2e277e197" - integrity sha512-SWxz6MbupT3ZSlL0Po4WF/KujhQaVehijR2blyRDCzk9e45EaYMVhMBn49fnRuHxtkSpXTes1GxNpVmH86Bxfw== +pretty-format@^26.2.0: + version "26.2.0" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-26.2.0.tgz#83ecc8d7de676ff224225055e72bd64821cec4f1" + integrity sha512-qi/8IuBu2clY9G7qCXgCdD1Bf9w+sXakdHTRToknzMtVy0g7c4MBWaZy7MfB7ndKZovRO6XRwJiAYqq+MC7SDA== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.2.0" ansi-regex "^5.0.0" ansi-styles "^4.0.0" react-is "^16.12.0" @@ -16341,7 +16378,7 @@ semver@4.3.2: resolved "https://registry.yarnpkg.com/semver/-/semver-4.3.2.tgz#c7a07158a80bedd052355b770d82d6640f803be7" integrity sha1-x6BxWKgL7dBSNVt3DYLWZA+AO+c= -semver@6.3.0, semver@6.x, semver@^6.0.0, semver@^6.1.2, semver@^6.2.0, semver@^6.3.0: +semver@6.3.0, semver@^6.0.0, semver@^6.1.2, semver@^6.2.0, semver@^6.3.0: version "6.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== @@ -16351,7 +16388,7 @@ semver@7.0.0: resolved "https://registry.yarnpkg.com/semver/-/semver-7.0.0.tgz#5f3ca35761e47e05b206c6daff2cf814f0316b8e" integrity sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A== -semver@^7.2.1, semver@^7.3.2: +semver@7.x, semver@^7.2.1, semver@^7.3.2: version "7.3.2" resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.2.tgz#604962b052b81ed0786aae84389ffba70ffd3938" integrity sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ== @@ -17628,20 +17665,20 @@ ts-invariant@^0.4.0, ts-invariant@^0.4.4: dependencies: tslib "^1.9.3" -ts-jest@25.5.1: - version "25.5.1" - resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-25.5.1.tgz#2913afd08f28385d54f2f4e828be4d261f4337c7" - integrity sha512-kHEUlZMK8fn8vkxDjwbHlxXRB9dHYpyzqKIGDNxbzs+Rz+ssNDSDNusEK8Fk/sDd4xE6iKoQLfFkFVaskmTJyw== +ts-jest@26.1.4: + version "26.1.4" + resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-26.1.4.tgz#87d41a96016a8efe4b8cc14501d3785459af6fa6" + integrity sha512-Nd7diUX6NZWfWq6FYyvcIPR/c7GbEF75fH1R6coOp3fbNzbRJBZZAn0ueVS0r8r9ral1VcrpneAFAwB3TsVS1Q== dependencies: bs-logger "0.x" buffer-from "1.x" fast-json-stable-stringify "2.x" + jest-util "26.x" json5 "2.x" lodash.memoize "4.x" make-error "1.x" - micromatch "4.x" - mkdirp "0.x" - semver "6.x" + mkdirp "1.x" + semver "7.x" yargs-parser "18.x" ts-log@2.1.4: From b0814beb5cb10bfc29246dcc5018996b67c4fe65 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Pradel?= Date: Mon, 10 Aug 2020 10:57:47 +0200 Subject: [PATCH 129/146] chore: use yarn v2 berry (#1041) --- .github/workflows/nodejs.yml | 7 +- .gitignore | 5 +- .../@yarnpkg/plugin-interactive-tools.cjs | 38 + .../@yarnpkg/plugin-workspace-tools.cjs | 29 + .yarn/releases/yarn-berry.js | 106764 +++++++++++++++ .yarnrc.yml | 10 + CONTRIBUTING.md | 2 +- .../react-graphql-typescript/package.json | 2 +- netlify.toml | 4 +- package.json | 5 +- packages/apollo-link-accounts/package.json | 4 +- packages/database-typeorm/package.json | 1 + packages/e2e/package.json | 2 +- packages/graphql-api/package.json | 14 +- packages/graphql-client/package.json | 10 +- packages/server/package.json | 1 + website/docs/contributing.md | 2 +- website/docs/strategies/password.md | 2 +- website/docusaurus.config.js | 2 +- website/package.json | 4 +- website/yarn.lock | 9796 -- yarn.lock | 47114 ++++--- 22 files changed, 134933 insertions(+), 28885 deletions(-) create mode 100644 .yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs create mode 100644 .yarn/plugins/@yarnpkg/plugin-workspace-tools.cjs create mode 100755 .yarn/releases/yarn-berry.js create mode 100644 .yarnrc.yml delete mode 100644 website/yarn.lock diff --git a/.github/workflows/nodejs.yml b/.github/workflows/nodejs.yml index ac99c00c6..c9b4345b2 100644 --- a/.github/workflows/nodejs.yml +++ b/.github/workflows/nodejs.yml @@ -20,7 +20,7 @@ jobs: run: docker-compose up -d - name: Get yarn cache directory path id: yarn-cache-dir-path - run: echo "::set-output name=dir::$(yarn cache dir)" + run: echo "::set-output name=dir::$(yarn config get cacheFolder)" - uses: actions/cache@v2 id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`) with: @@ -29,9 +29,7 @@ jobs: restore-keys: | ${{ runner.os }}-yarn- - name: Install Dependencies - run: yarn install --frozen-lockfile - - name: Lerna bootstrap - run: yarn run lerna bootstrap + run: yarn install --immutable - name: Check lint run: yarn test:lint - name: Compile packages @@ -48,7 +46,6 @@ jobs: - name: Test documentation run: | cd website - yarn install --frozen-lockfile yarn generate-api-docs yarn build env: diff --git a/.gitignore b/.gitignore index 312e72f88..475cc1837 100644 --- a/.gitignore +++ b/.gitignore @@ -9,5 +9,8 @@ yarn-error.log packages/*/package-lock.json schema.json .DS_Store - build/ +.yarn/* +!.yarn/releases +!.yarn/plugins +.pnp.* diff --git a/.yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs b/.yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs new file mode 100644 index 000000000..3e64b4b34 --- /dev/null +++ b/.yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs @@ -0,0 +1,38 @@ +/* eslint-disable */ +module.exports = { +name: "@yarnpkg/plugin-interactive-tools", +factory: function (require) { +var plugin;plugin=(()=>{var __webpack_modules__={120:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>H});function r(e,t,n,r){var i,o=arguments.length,u=o<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)u=Reflect.decorate(e,t,n,r);else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(u=(o<3?i(u):o>3?i(t,n,u):i(t,n))||u);return o>3&&u&&Object.defineProperty(t,n,u),u}var i,o=n(2594),u=n(966),a=n(4930),l=n(7382),s=n.n(l);!function(e){e.BEFORE="before",e.AFTER="after"}(i||(i={}));const c=function(e,t,{active:n,minus:r,plus:i,set:o,loop:u=!0}){const{stdin:s}=(0,l.useContext)(a.StdinContext);(0,l.useEffect)(()=>{if(!n)return;const a=(n,a)=>{const l=t.indexOf(e);switch(a.name){case r:{const e=l-1;if(u)return void o(t[(t.length+e)%t.length]);if(e<0)return;o(t[e])}break;case i:{const e=l+1;if(u)return void o(t[e%t.length]);if(e>=t.length)return;o(t[e])}}};return s.on("keypress",a),()=>{s.off("keypress",a)}},[t,e,n])},f=({active:e=!0,children:t=[],radius:n=10,size:r=1,loop:o=!0,onFocusRequest:u,willReachEnd:f})=>{const d=s().Children.map(t,e=>(e=>{if(null===e.key)throw new Error("Expected all children to have a key");return e.key})(e)),p=d[0],[h,m]=(0,l.useState)(p),v=d.indexOf(h);(0,l.useEffect)(()=>{d.includes(h)||m(p)},[t]),(0,l.useEffect)(()=>{f&&v>=d.length-2&&f()},[v]),function({active:e,handler:t}){const{stdin:n}=(0,l.useContext)(a.StdinContext);(0,l.useEffect)(()=>{if(!e||void 0===t)return;const r=(e,n)=>{"tab"===n.name&&(n.shift?t(i.BEFORE):t(i.AFTER))};return n.on("keypress",r),()=>{n.off("keypress",r)}},[e,t])}({active:e,handler:u}),c(h,d,{active:e,minus:"up",plus:"down",set:m,loop:o});let b=v-n,g=v+n;g>d.length&&(b-=g-d.length,g=d.length),b<0&&(g+=-b,b=0),g>=d.length&&(g=d.length-1);const _=[];for(let n=b;n<=g;++n){const i=d[n],o=e&&i===h;_.push(s().createElement(a.Box,{key:i,height:r},s().createElement(a.Box,{marginLeft:1,marginRight:1},o?s().createElement(a.Color,{cyan:!0,bold:!0},">"):" "),s().createElement(a.Box,null,s().cloneElement(t[n],{active:o}))))}return s().createElement(a.Box,{flexDirection:"column",width:"100%"},_)},d=s().createContext(null),p=function({children:e}){const{setRawMode:t}=(0,l.useContext)(a.StdinContext);(0,l.useEffect)(()=>{t&&t(!0)},[]);const[n,r]=(0,l.useState)(new Map),i=(0,l.useMemo)(()=>({getAll:()=>n,get:e=>n.get(e),set:(e,t)=>r(new Map([...n,[e,t]]))}),[n,r]);return s().createElement(d.Provider,{value:i,children:e})};function h(e,t){const n=(0,l.useContext)(d);if(null===n)throw new Error("Expected this hook to run with a ministore context attached");if(void 0===e)return n.getAll();const r=(0,l.useCallback)(t=>{n.set(e,t)},[e,n.set]);let i=n.get(e);return void 0===i&&(i=t),[i,r]}async function m(e,t){let n;const{waitUntilExit:r}=(0,a.render)(s().createElement(p,null,s().createElement(e,Object.assign({},t,{useSubmit:e=>{const{exit:t}=(0,l.useContext)(a.AppContext),{stdin:r}=(0,l.useContext)(a.StdinContext);(0,l.useEffect)(()=>{const i=(r,i)=>{"return"===i.name&&(n=e,t())};return r.on("keypress",i),()=>{r.off("keypress",i)}},[r,t,e])}}))));return await r(),n}var v=n(8042),b=n(9645),g=n(4410);const _={appId:"OFCNCOG2CU",apiKey:"6fe4476ee5a1832882e326b506d14126",indexName:"npm-search"},y=n.n(g)()(_.appId,_.apiKey).initIndex(_.indexName),D=async(e,t=0)=>await y.search(e,{analyticsTags:["yarn-plugin-interactive-tools"],attributesToRetrieve:["name","version","owner","repository","humanDownloadsLast30Days"],page:t,hitsPerPage:10}),w=["regular","dev","peer"];class E extends o.BaseCommand{async execute(){const e=await u.Configuration.find(this.context.cwd,this.context.plugins),t=()=>s().createElement(a.Box,{flexDirection:"row"},s().createElement(a.Box,{flexDirection:"column",width:48},s().createElement(a.Box,null,"Press ",s().createElement(a.Color,{bold:!0,cyanBright:!0},""),"/",s().createElement(a.Color,{bold:!0,cyanBright:!0},"")," to move between packages."),s().createElement(a.Box,null,"Press ",s().createElement(a.Color,{bold:!0,cyanBright:!0},"")," to select a package."),s().createElement(a.Box,null,"Press ",s().createElement(a.Color,{bold:!0,cyanBright:!0},"")," again to change the target.")),s().createElement(a.Box,{flexDirection:"column"},s().createElement(a.Box,{marginLeft:1},"Press ",s().createElement(a.Color,{bold:!0,cyanBright:!0},"")," to install the selected packages."),s().createElement(a.Box,{marginLeft:1},"Press ",s().createElement(a.Color,{bold:!0,cyanBright:!0},"")," to abort."))),n=()=>s().createElement(s().Fragment,null,s().createElement(a.Box,{width:15},s().createElement(a.Color,{bold:!0,underline:!0,gray:!0},"Owner")),s().createElement(a.Box,{width:11},s().createElement(a.Color,{bold:!0,underline:!0,gray:!0},"Version")),s().createElement(a.Box,{width:10},s().createElement(a.Color,{bold:!0,underline:!0,gray:!0},"Downloads"))),r=()=>s().createElement(a.Box,{width:17},s().createElement(a.Color,{bold:!0,underline:!0,gray:!0},"Target")),i=({hit:t,active:n})=>{const[r,i]=h(t.name,null);!function({active:e,handler:t}){const{stdin:n}=(0,l.useContext)(a.StdinContext);(0,l.useEffect)(()=>{if(!e)return;const r=(e,n)=>{"space"===n.name&&t()};return n.on("keypress",r),()=>{n.off("keypress",r)}},[t])}({active:n,handler:()=>{if(!r)return void i(w[0]);const e=w.indexOf(r)+1;e===w.length?i(null):i(w[e])}});const o=u.structUtils.parseIdent(t.name),c=u.structUtils.prettyIdent(e,o);return s().createElement(a.Box,null,s().createElement(a.Box,{width:45,textWrap:"wrap"},s().createElement(a.Text,{bold:!0},c)),s().createElement(a.Box,{width:14,textWrap:"truncate",marginLeft:1},s().createElement(a.Text,{bold:!0},t.owner.name)),s().createElement(a.Box,{width:10,textWrap:"truncate",marginLeft:1},s().createElement(a.Text,{italic:!0},t.version)),s().createElement(a.Box,{width:16,textWrap:"truncate",marginLeft:1},t.humanDownloadsLast30Days))},o=({name:t,active:n})=>{const[r]=h(t,null),i=u.structUtils.parseIdent(t);return s().createElement(a.Box,null,s().createElement(a.Box,{width:47},s().createElement(a.Text,{bold:!0}," - ",u.structUtils.prettyIdent(e,i))),w.map(e=>s().createElement(a.Box,{key:e,width:14,marginLeft:1},r===e?s().createElement(a.Color,{green:!0}," ◉ "):s().createElement(a.Color,{yellow:!0}," ◯ "),s().createElement(a.Text,{bold:!0},e))))},c=()=>s().createElement(a.Box,{marginTop:1},s().createElement(a.Text,null,"Powered by Algolia.")),d=await m(({useSubmit:e})=>{const u=h();e(u);const d=Array.from(u.keys()).filter(e=>null!==u.get(e)),[p,m]=(0,l.useState)(""),[v,g]=(0,l.useState)(0),[_,y]=(0,l.useState)([]);(0,l.useEffect)(()=>{p?(async()=>{g(0);const e=await D(p);e.query===p&&y(e.hits)})():y([])},[p]);const w=b.ZP;return s().createElement(a.Box,{flexDirection:"column"},s().createElement(t,null),s().createElement(a.Box,{flexDirection:"row",marginTop:1},s().createElement(a.Text,{bold:!0},"Search: "),s().createElement(a.Box,{width:41},s().createElement(w,{value:p,onChange:e=>{e.match(/\t| /)||m(e)},placeholder:"i.e. babel, webpack, react...",showCursor:!1})),s().createElement(n,null)),_.length?s().createElement(f,{radius:2,loop:!1,children:_.map(e=>s().createElement(i,{key:e.name,hit:e,active:!1})),willReachEnd:async()=>{const e=await D(p,v+1);e.query===p&&e.page-1===v&&(g(e.page),y([..._,...e.hits]))}}):s().createElement(a.Color,{gray:!0},"Start typing..."),s().createElement(a.Box,{flexDirection:"row",marginTop:1},s().createElement(a.Box,{width:49},s().createElement(a.Text,{bold:!0},"Selected:")),s().createElement(r,null)),d.length?d.map(e=>s().createElement(o,{key:e,name:e,active:!1})):s().createElement(a.Color,{gray:!0},"No selected packages..."),s().createElement(c,null))},{});if(void 0===d)return 1;const p=Array.from(d.keys()).filter(e=>"regular"===d.get(e)),v=Array.from(d.keys()).filter(e=>"dev"===d.get(e)),g=Array.from(d.keys()).filter(e=>"peer"===d.get(e));return p.length&&await this.cli.run(["add",...p]),v.length&&await this.cli.run(["add","--dev",...v]),g&&await this.cli.run(["add","--peer",...g]),0}}E.usage=v.Command.Usage({category:"Interactive commands",description:"open the search interface",details:"\n This command opens a fullscreen terminal interface where you can search for and install packages from the npm registry.\n ",examples:[["Open the search window","yarn search"]]}),r([v.Command.Path("search")],E.prototype,"execute",null);const C=function({active:e,options:t,value:n,onChange:r,sizes:i=[]}){const o=t.map(({value:e})=>e),u=o.indexOf(n);return c(n,o,{active:e,minus:"left",plus:"right",set:r}),s().createElement(s().Fragment,null,t.map(({label:e},t)=>t===u?s().createElement(a.Box,{key:e,width:i[t]-1||0,marginLeft:1,textWrap:"truncate"},s().createElement(a.Color,{green:!0}," ◉ ")," ",s().createElement(a.Text,{bold:!0},e)):s().createElement(a.Box,{key:e,width:i[t]-1||0,marginLeft:1,textWrap:"truncate"},s().createElement(a.Color,{yellow:!0}," ◯ ")," ",s().createElement(a.Text,{bold:!0},e))))};var T=n(4850);function k(){}function S(e,t,n,r,i){for(var o=0,u=t.length,a=0,l=0;oe.length?n:e})),s.value=e.join(f)}else s.value=e.join(n.slice(a,a+s.count));a+=s.count,s.added||(l+=s.count)}}var d=t[u-1];return u>1&&"string"==typeof d.value&&(d.added||d.removed)&&e.equals("",d.value)&&(t[u-2].value+=d.value,t.pop()),t}function M(e){return{newPos:e.newPos,components:e.components.slice(0)}}k.prototype={diff:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=n.callback;"function"==typeof n&&(r=n,n={}),this.options=n;var i=this;function o(e){return r?(setTimeout((function(){r(void 0,e)}),0),!0):e}e=this.castInput(e),t=this.castInput(t),e=this.removeEmpty(this.tokenize(e));var u=(t=this.removeEmpty(this.tokenize(t))).length,a=e.length,l=1,s=u+a,c=[{newPos:-1,components:[]}],f=this.extractCommon(c[0],t,e,0);if(c[0].newPos+1>=u&&f+1>=a)return o([{value:this.join(t),count:t.length}]);function d(){for(var n=-1*l;n<=l;n+=2){var r=void 0,s=c[n-1],f=c[n+1],d=(f?f.newPos:0)-n;s&&(c[n-1]=void 0);var p=s&&s.newPos+1=u&&d+1>=a)return o(S(i,r.components,t,e,i.useLongestToken));c[n]=r}else c[n]=void 0}l++}if(r)!function e(){setTimeout((function(){if(l>s)return r();d()||e()}),0)}();else for(;l<=s;){var p=d();if(p)return p}},pushComponent:function(e,t,n){var r=e[e.length-1];r&&r.added===t&&r.removed===n?e[e.length-1]={count:r.count+1,added:t,removed:n}:e.push({count:1,added:t,removed:n})},extractCommon:function(e,t,n,r){for(var i=t.length,o=n.length,u=e.newPos,a=u-r,l=0;u+1=?)?)([0-9]+)(\.[0-9]+)(\.[0-9]+)((?:-\S+)?)$/;class q extends o.BaseCommand{async execute(){const e=await u.Configuration.find(this.context.cwd,this.context.plugins),{project:t,workspace:n}=await u.Project.find(e,this.context.cwd),r=await u.Cache.find(e);if(!n)throw new o.WorkspaceRequiredError(t.cwd,this.context.cwd);const i=(t,n)=>{const r=(i=t,o=n,u=x(u,{ignoreWhitespace:!0}),O.diff(i,o,u));var i,o,u;let a="";for(const t of r)t.added?a+=e.format(t.value,"green"):t.removed||(a+=t.value);return a},c=(t,n)=>{if(t===n)return n;const r=u.structUtils.parseRange(t),o=u.structUtils.parseRange(n),a=r.selector.match(z),l=o.selector.match(z);if(!a||!l)return i(t,n);const s=["gray","red","yellow","green","magenta"];let c=null,f="";for(let t=1;t{const o=await T.suggestUtils.fetchDescriptorFrom(e,i,{project:t,cache:r,preserveModifier:n});return null!==o?o.range:e.range},p=()=>s().createElement(a.Box,{flexDirection:"row"},s().createElement(a.Box,{flexDirection:"column",width:49},s().createElement(a.Box,{marginLeft:1},"Press ",s().createElement(a.Color,{bold:!0,cyanBright:!0},""),"/",s().createElement(a.Color,{bold:!0,cyanBright:!0},"")," to select packages."),s().createElement(a.Box,{marginLeft:1},"Press ",s().createElement(a.Color,{bold:!0,cyanBright:!0},""),"/",s().createElement(a.Color,{bold:!0,cyanBright:!0},"")," to select versions.")),s().createElement(a.Box,{flexDirection:"column"},s().createElement(a.Box,{marginLeft:1},"Press ",s().createElement(a.Color,{bold:!0,cyanBright:!0},"")," to install."),s().createElement(a.Box,{marginLeft:1},"Press ",s().createElement(a.Color,{bold:!0,cyanBright:!0},"")," to abort."))),v=()=>s().createElement(a.Box,{flexDirection:"row",paddingTop:1,paddingBottom:1},s().createElement(a.Box,{width:50},s().createElement(a.Text,{bold:!0},s().createElement(a.Color,{greenBright:!0},"?")," Pick the packages you want to upgrade.")),s().createElement(a.Box,{width:17},s().createElement(a.Color,{bold:!0,underline:!0,gray:!0},"Current")),s().createElement(a.Box,{width:17},s().createElement(a.Color,{bold:!0,underline:!0,gray:!0},"Range/Latest"))),b=({active:t,descriptor:n})=>{const[r,i]=h(n.descriptorHash,null),[o,f]=(0,l.useState)(null),p=(0,l.useRef)(!0);return(0,l.useEffect)(()=>()=>{p.current=!1},[]),(0,l.useEffect)(()=>{(async e=>{const t=W().valid(e.range)?"^"+e.range:e.range,[n,r]=await Promise.all([d(e,e.range,t),d(e,e.range,"latest")]),i=[{value:null,label:e.range}];return n!==e.range&&i.push({value:n,label:c(e.range,n)}),r!==n&&r!==e.range&&i.push({value:r,label:c(e.range,r)}),i})(n).then(e=>{p.current&&f(e)})},[n.descriptorHash]),s().createElement(a.Box,null,s().createElement(a.Box,{width:45,textWrap:"wrap"},s().createElement(a.Text,{bold:!0},u.structUtils.prettyIdent(e,n))),null!==o?s().createElement(C,{active:t,options:o,value:r,onChange:i,sizes:[17,17,17]}):s().createElement(a.Box,{marginLeft:2},s().createElement(a.Color,{gray:!0},"Fetching suggestions...")))},g=await m(({useSubmit:e})=>{e(h());const n=new Map;for(const e of t.workspaces)for(const r of["dependencies","devDependencies"])for(const i of e.manifest[r].values())null===t.tryWorkspaceByDescriptor(i)&&n.set(i.descriptorHash,i);const r=u.miscUtils.sortMap(n.values(),e=>u.structUtils.stringifyDescriptor(e));return s().createElement(s().Fragment,null,s().createElement(a.Box,{flexDirection:"column"},s().createElement(p,null),s().createElement(v,null),s().createElement(f,{radius:10,children:r.map(e=>s().createElement(b,{key:e.descriptorHash,active:!1,descriptor:e}))})))},{});if(void 0===g)return 1;let _=!1;for(const e of t.workspaces)for(const t of["dependencies","devDependencies"]){const n=e.manifest[t];for(const e of n.values()){const t=g.get(e.descriptorHash);null!=t&&(n.set(e.identHash,u.structUtils.makeDescriptor(e,t)),_=!0)}}if(!_)return 0;return(await u.StreamReport.start({configuration:e,stdout:this.context.stdout,includeLogs:!this.context.quiet},async e=>{await t.install({cache:r,report:e})})).exitCode()}}q.usage=v.Command.Usage({category:"Interactive commands",description:"open the upgrade interface",details:"\n This command opens a fullscreen terminal interface where you can see the packages used by your application, their status compared to the latest versions available on the remote registry, and let you upgrade.\n ",examples:[["Open the upgrade window","yarn upgrade-interactive"]]}),r([v.Command.Path("upgrade-interactive")],q.prototype,"execute",null);const H={commands:[E,q]}},9645:(e,t,n)=>{"use strict";t.ZP=void 0;var r=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var t=l();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){var o=r?Object.getOwnPropertyDescriptor(e,i):null;o&&(o.get||o.set)?Object.defineProperty(n,i,o):n[i]=e[i]}n.default=e,t&&t.set(e,n);return n}(n(7382)),i=a(n(6271)),o=n(4930),u=a(n(5882));function a(e){return e&&e.__esModule?e:{default:e}}function l(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return l=function(){return e},e}function s(){return(s=Object.assign||function(e){for(var t=1;t{const{value:t,focus:n,showCursor:r,mask:i,onChange:o,onSubmit:u}=this.props,{cursorOffset:a}=this.state;if(!1===n||!1===this.isMounted)return;const l=String(e);if(""===l||""===l||""===l)return;if("\r"===l)return void(u&&u(t));let s=a,c=t,f=0;""===l?r&&!i&&s--:""===l?r&&!i&&s++:"\b"===l||""===l?(c=c.slice(0,s-1)+c.slice(s,c.length),s--):(c=c.slice(0,s)+l+c.slice(s,c.length),s+=l.length,l.length>1&&(f=l.length)),s<0&&(s=0),s>c.length&&(s=c.length),this.setState({cursorOffset:s,cursorWidth:f}),c!==t&&o(c)})}render(){const{value:e,placeholder:t,showCursor:n,focus:i,mask:a,highlightPastedText:l}=this.props,{cursorOffset:s,cursorWidth:c}=this.state,f=e.length>0;let d=e;const p=l?c:0;if(n&&!a&&i){d=e.length>0?"":u.default.inverse(" ");let t=0;for(const n of e)d+=t>=s-p&&t<=s?u.default.inverse(n):n,t++;e.length>0&&s===e.length&&(d+=u.default.inverse(" "))}return a&&(d=a.repeat(d.length)),r.default.createElement(o.Color,{dim:!f&&t},t?f?d:t:d)}componentDidMount(){const{stdin:e,setRawMode:t}=this.props;this.isMounted=!0,t(!0),e.on("data",this.handleInput)}componentWillUnmount(){const{stdin:e,setRawMode:t}=this.props;this.isMounted=!1,e.removeListener("data",this.handleInput),t(!1)}}c(f,"propTypes",{value:i.default.string.isRequired,placeholder:i.default.string,focus:i.default.bool,mask:i.default.string,highlightPastedText:i.default.bool,showCursor:i.default.bool,stdin:i.default.object.isRequired,setRawMode:i.default.func.isRequired,onChange:i.default.func.isRequired,onSubmit:i.default.func}),c(f,"defaultProps",{placeholder:"",showCursor:!0,focus:!0,mask:void 0,highlightPastedText:!1,onSubmit:void 0});class d extends r.PureComponent{render(){return r.default.createElement(o.StdinContext.Consumer,null,({stdin:e,setRawMode:t})=>r.default.createElement(f,s({},this.props,{stdin:e,setRawMode:t})))}}t.ZP=d;class p extends r.PureComponent{constructor(...e){super(...e),c(this,"state",{value:""}),c(this,"setValue",this.setValue.bind(this))}setValue(e){this.setState({value:e})}render(){return r.default.createElement(d,s({},this.props,{value:this.state.value,onChange:this.setValue}))}}},9043:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,i=(r=n(2821))&&r.__esModule?r:{default:r};const o=(e,t)=>({}.hasOwnProperty.call(e,t));t.default=(e,t={})=>{((e,t)=>{t.margin&&(e.setMargin(i.default.EDGE_TOP,t.margin),e.setMargin(i.default.EDGE_BOTTOM,t.margin),e.setMargin(i.default.EDGE_START,t.margin),e.setMargin(i.default.EDGE_END,t.margin)),t.marginX&&(e.setMargin(i.default.EDGE_START,t.marginX),e.setMargin(i.default.EDGE_END,t.marginX)),t.marginY&&(e.setMargin(i.default.EDGE_TOP,t.marginY),e.setMargin(i.default.EDGE_BOTTOM,t.marginY)),t.marginTop&&e.setMargin(i.default.EDGE_TOP,t.marginTop),t.marginBottom&&e.setMargin(i.default.EDGE_BOTTOM,t.marginBottom),t.marginLeft&&e.setMargin(i.default.EDGE_START,t.marginLeft),t.marginRight&&e.setMargin(i.default.EDGE_END,t.marginRight)})(e,t),((e,t)=>{t.padding&&(e.setPadding(i.default.EDGE_TOP,t.padding),e.setPadding(i.default.EDGE_BOTTOM,t.padding),e.setPadding(i.default.EDGE_LEFT,t.padding),e.setPadding(i.default.EDGE_RIGHT,t.padding)),t.paddingX&&(e.setPadding(i.default.EDGE_LEFT,t.paddingX),e.setPadding(i.default.EDGE_RIGHT,t.paddingX)),t.paddingY&&(e.setPadding(i.default.EDGE_TOP,t.paddingY),e.setPadding(i.default.EDGE_BOTTOM,t.paddingY)),t.paddingTop&&e.setPadding(i.default.EDGE_TOP,t.paddingTop),t.paddingBottom&&e.setPadding(i.default.EDGE_BOTTOM,t.paddingBottom),t.paddingLeft&&e.setPadding(i.default.EDGE_LEFT,t.paddingLeft),t.paddingRight&&e.setPadding(i.default.EDGE_RIGHT,t.paddingRight)})(e,t),((e,t)=>{t.flexGrow&&e.setFlexGrow(t.flexGrow),t.flexShrink&&e.setFlexShrink(t.flexShrink),t.flexDirection&&("row"===t.flexDirection&&e.setFlexDirection(i.default.FLEX_DIRECTION_ROW),"row-reverse"===t.flexDirection&&e.setFlexDirection(i.default.FLEX_DIRECTION_ROW_REVERSE),"column"===t.flexDirection&&e.setFlexDirection(i.default.FLEX_DIRECTION_COLUMN),"column-reverse"===t.flexDirection&&e.setFlexDirection(i.default.FLEX_DIRECTION_COLUMN_REVERSE)),o(t,"flexBasis")&&e.setFlexBasis(t.flexBasis),t.alignItems&&("flex-start"===t.alignItems&&e.setAlignItems(i.default.ALIGN_FLEX_START),"center"===t.alignItems&&e.setAlignItems(i.default.ALIGN_CENTER),"flex-end"===t.alignItems&&e.setAlignItems(i.default.ALIGN_FLEX_END)),t.justifyContent&&("flex-start"===t.justifyContent&&e.setJustifyContent(i.default.JUSTIFY_FLEX_START),"center"===t.justifyContent&&e.setJustifyContent(i.default.JUSTIFY_CENTER),"flex-end"===t.justifyContent&&e.setJustifyContent(i.default.JUSTIFY_FLEX_END),"space-between"===t.justifyContent&&e.setJustifyContent(i.default.JUSTIFY_SPACE_BETWEEN),"space-around"===t.justifyContent&&e.setJustifyContent(i.default.JUSTIFY_SPACE_AROUND))})(e,t),((e,t)=>{o(t,"width")&&e.setWidth(t.width),o(t,"height")&&e.setHeight(t.height),o(t,"minWidth")&&e.setMinWidth(t.minWidth),o(t,"minHeight")&&e.setMinHeight(t.minHeight)})(e,t)}},1:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=u(n(2821)),i=u(n(9043)),o=u(n(3425));function u(e){return e&&e.__esModule?e:{default:e}}const a=(e,t)=>{const{config:n,terminalWidth:u,skipStaticElements:l}=t,s=r.default.Node.create(n);e.yogaNode=s;const c=e.style||{};if("ROOT"===e.nodeName){if(s.setWidth(u||100),e.childNodes.length>0){const n=e.childNodes.filter(e=>!l||!e.unstable__static);for(const[e,r]of Object.entries(n)){const n=a(r,t).yogaNode;s.insertChild(n,e)}}return e}if((0,i.default)(s,c),e.textContent||e.nodeValue){const{width:t,height:n}=(0,o.default)(e.textContent||e.nodeValue);return s.setWidth(c.width||t),s.setHeight(c.height||n),e}if(Array.isArray(e.childNodes)&&e.childNodes.length>0){const n=e.childNodes.filter(e=>!l||!e.unstable__static);for(const[e,r]of Object.entries(n)){const{yogaNode:n}=a(r,t);s.insertChild(n,e)}}return e};var l=a;t.default=l},1752:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=c(n(1058)),i=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){var r=Object.defineProperty&&Object.getOwnPropertyDescriptor?Object.getOwnPropertyDescriptor(e,n):{};r.get||r.set?Object.defineProperty(t,n,r):t[n]=e[n]}return t.default=e,t}(n(7382)),o=c(n(6271)),u=c(n(1305)),a=c(n(4974)),l=c(n(7454)),s=c(n(3742));function c(e){return e&&e.__esModule?e:{default:e}}function f(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class d extends i.PureComponent{isRawModeSupported(){return this.props.stdin.isTTY}constructor(){super(),f(this,"handleSetRawMode",e=>{const{stdin:t}=this.props;if(!this.isRawModeSupported())throw t===process.stdin?new Error("Raw mode is not supported on the current process.stdin, which Ink uses as input stream by default.\nRead about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported"):new Error("Raw mode is not supported on the stdin provided to Ink.\nRead about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported");if(t.setEncoding("utf8"),e)return 0===this.rawModeEnabledCount&&(t.addListener("data",this.handleInput),t.resume(),t.setRawMode(!0),r.default.emitKeypressEvents(t)),void this.rawModeEnabledCount++;0==--this.rawModeEnabledCount&&(t.setRawMode(!1),t.removeListener("data",this.handleInput),t.pause())}),f(this,"handleInput",e=>{""===e&&this.props.exitOnCtrlC&&this.handleExit()}),f(this,"handleExit",e=>{this.isRawModeSupported()&&this.handleSetRawMode(!1),this.props.onExit(e)}),this.rawModeEnabledCount=0}render(){return i.default.createElement(a.default.Provider,{value:{exit:this.handleExit}},i.default.createElement(l.default.Provider,{value:{stdin:this.props.stdin,setRawMode:this.handleSetRawMode,isRawModeSupported:this.isRawModeSupported()}},i.default.createElement(s.default.Provider,{value:{stdout:this.props.stdout}},this.props.children)))}componentDidMount(){u.default.hide(this.props.stdout)}componentWillUnmount(){u.default.show(this.props.stdout),this.isRawModeSupported()&&this.handleSetRawMode(!1)}componentDidCatch(e){this.handleExit(e)}}t.default=d,f(d,"propTypes",{children:o.default.node.isRequired,stdin:o.default.object.isRequired,stdout:o.default.object.isRequired,exitOnCtrlC:o.default.bool.isRequired,onExit:o.default.func.isRequired})},4974:(e,t,n)=>{"use strict";var r;Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=((r=n(7382))&&r.__esModule?r:{default:r}).default.createContext({exit(){}});t.default=i},522:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,i=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){var r=Object.defineProperty&&Object.getOwnPropertyDescriptor?Object.getOwnPropertyDescriptor(e,n):{};r.get||r.set?Object.defineProperty(t,n,r):t[n]=e[n]}return t.default=e,t}(n(7382)),o=(r=n(6271))&&r.__esModule?r:{default:r};function u(e,t){if(null==e)return{};var n,r,i=function(e,t){if(null==e)return{};var n,r,i={},o=Object.keys(e);for(r=0;r=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class l extends i.PureComponent{constructor(){super(),this.nodeRef=i.default.createRef()}render(){const e=this.props,{children:t,unstable__transformChildren:n}=e,r=u(e,["children","unstable__transformChildren"]);return i.default.createElement("div",{ref:this.nodeRef,style:r,unstable__transformChildren:n},t)}unstable__getComputedWidth(){return this.nodeRef.current.yogaNode.getComputedWidth()}}t.default=l,a(l,"propTypes",{margin:o.default.number,marginX:o.default.number,marginY:o.default.number,marginTop:o.default.number,marginBottom:o.default.number,marginLeft:o.default.number,marginRight:o.default.number,padding:o.default.number,paddingX:o.default.number,paddingY:o.default.number,paddingTop:o.default.number,paddingBottom:o.default.number,paddingLeft:o.default.number,paddingRight:o.default.number,width:o.default.oneOfType([o.default.number,o.default.string]),minWidth:o.default.number,height:o.default.oneOfType([o.default.number,o.default.string]),minHeight:o.default.number,flexGrow:o.default.number,flexShrink:o.default.number,flexDirection:o.default.oneOf(["row","row-reverse","column","column-reverse"]),flexBasis:o.default.oneOfType([o.default.number,o.default.string]),alignItems:o.default.oneOf(["flex-start","center","flex-end"]),justifyContent:o.default.oneOf(["flex-start","center","flex-end","space-between","space-around"]),textWrap:o.default.oneOf(["wrap","truncate","truncate-start","truncate-middle","truncate-end"]),unstable__transformChildren:o.default.func,children:o.default.node}),a(l,"defaultProps",{flexDirection:"row",flexGrow:0,flexShrink:1})},3862:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=a(n(7382)),i=a(n(6271)),o=a(n(3810)),u=a(n(9244));function a(e){return e&&e.__esModule?e:{default:e}}function l(e,t){if(null==e)return{};var n,r,i=function(e,t){if(null==e)return{};var n,r,i={},o=Object.keys(e);for(r=0;r=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}const s=["hex","hsl","hsv","hwb","rgb","keyword","bgHex","bgHsl","bgHsv","bgHwb","bgRgb","bgKeyword"],c=e=>{let{children:t}=e,n=l(e,["children"]);return r.default.createElement("span",{style:{flexDirection:"row"},unstable__transformChildren:e=>(Object.keys(n).forEach(t=>{n[t]&&(s.includes(t)?e=u.default[t](...(0,o.default)(n[t]))(e):"function"==typeof u.default[t]&&(e=u.default[t](e)))}),e)},t)};c.propTypes={children:i.default.node.isRequired};var f=c;t.default=f},8075:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,i=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){var r=Object.defineProperty&&Object.getOwnPropertyDescriptor?Object.getOwnPropertyDescriptor(e,n):{};r.get||r.set?Object.defineProperty(t,n,r):t[n]=e[n]}return t.default=e,t}(n(7382)),o=(r=n(6271))&&r.__esModule?r:{default:r};function u(e,t){if(null==e)return{};var n,r,i=function(e,t){if(null==e)return{};var n,r,i={},o=Object.keys(e);for(r=0;r=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const l=e=>Array.isArray(e)?e:[e];class s extends i.Component{constructor(...e){super(...e),a(this,"state",{lastIndex:null})}render(){const e=this.props,{children:t}=e,n=u(e,["children"]),{lastIndex:r}=this.state;let o=t;return"number"==typeof r&&(o=l(t).slice(r)),i.default.createElement("div",{unstable__static:!0,style:n},o)}componentDidMount(){this.saveLastIndex(this.props.children)}componentDidUpdate(e,t){t.lastIndex===this.state.lastIndex&&this.saveLastIndex(this.props.children)}saveLastIndex(e){const t=l(e).length;this.state.lastIndex!==t&&this.setState({lastIndex:t})}}t.default=s,a(s,"propTypes",{children:o.default.node})},7454:(e,t,n)=>{"use strict";var r;Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=((r=n(7382))&&r.__esModule?r:{default:r}).default.createContext({stdin:void 0,setRawMode:void 0});t.default=i},3742:(e,t,n)=>{"use strict";var r;Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=((r=n(7382))&&r.__esModule?r:{default:r}).default.createContext({stdout:void 0});t.default=i},4127:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=u(n(7382)),i=u(n(6271)),o=u(n(9244));function u(e){return e&&e.__esModule?e:{default:e}}const a=({bold:e,italic:t,underline:n,strikethrough:i,children:u,unstable__transformChildren:a})=>r.default.createElement("span",{style:{flexDirection:"row"},unstable__transformChildren:r=>(e&&(r=o.default.bold(r)),t&&(r=o.default.italic(r)),n&&(r=o.default.underline(r)),i&&(r=o.default.strikethrough(r)),a&&(r=a(r)),r)},u);a.propTypes={bold:i.default.bool,italic:i.default.bool,underline:i.default.bool,strikethrough:i.default.bool,children:i.default.node.isRequired,unstable__transformChildren:i.default.func},a.defaultProps={bold:!1,italic:!1,underline:!1,strikethrough:!1,unstable__transformChildren:void 0};var l=a;t.default=l},3976:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.createTextNode=t.setAttribute=t.removeChildNode=t.insertBeforeNode=t.appendStaticNode=t.appendChildNode=t.createNode=void 0;t.createNode=e=>({nodeName:e.toUpperCase(),style:{},attributes:{},childNodes:[],parentNode:null});t.appendChildNode=(e,t)=>{t.parentNode&&n(t.parentNode,t),t.parentNode=e,e.childNodes.push(t)};t.appendStaticNode=(e,t)=>{e.childNodes.push(t)};t.insertBeforeNode=(e,t,r)=>{t.parentNode&&n(t.parentNode,t),t.parentNode=e;const i=e.childNodes.indexOf(r);i>=0?e.childNodes.splice(i,0,t):e.childNodes.push(t)};const n=(e,t)=>{t.parentNode=null;const n=e.childNodes.indexOf(t);n>=0&&e.childNodes.splice(n,1)};t.removeChildNode=n;t.setAttribute=(e,t,n)=>{e.attributes[t]=n};t.createTextNode=e=>({nodeName:"#text",nodeValue:e})},4431:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=e=>e.getComputedWidth()-2*e.getComputedPadding()},4930:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"render",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(t,"Box",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(t,"Text",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(t,"Color",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(t,"AppContext",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(t,"StdinContext",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(t,"StdoutContext",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(t,"Static",{enumerable:!0,get:function(){return c.default}});var r=f(n(4763)),i=f(n(522)),o=f(n(4127)),u=f(n(3862)),a=f(n(4974)),l=f(n(7454)),s=f(n(3742)),c=f(n(8075));function f(e){return e&&e.__esModule?e:{default:e}}},7018:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=h(n(7382)),i=h(n(4623)),o=h(n(2939)),u=h(n(4046)),a=h(n(2738)),l=h(n(6458)),s=h(n(7190)),c=h(n(9646)),f=n(3976),d=h(n(4455)),p=h(n(1752));function h(e){return e&&e.__esModule?e:{default:e}}t.default=class{constructor(e){(0,o.default)(this),this.options=e,this.rootNode=(0,f.createNode)("root"),this.rootNode.onRender=this.onRender,this.renderer=(0,c.default)({terminalWidth:e.stdout.columns}),this.log=u.default.create(e.stdout),this.throttledLog=e.debug?this.log:(0,i.default)(this.log,{leading:!0,trailing:!0}),this.isUnmounted=!1,this.lastOutput="",this.fullStaticOutput="",this.container=s.default.createContainer(this.rootNode,!1,!1),this.exitPromise=new Promise((e,t)=>{this.resolveExitPromise=e,this.rejectExitPromise=t}),this.unsubscribeExit=(0,l.default)(this.unmount,{alwaysLast:!1})}onRender(){if(this.isUnmounted)return;const{output:e,staticOutput:t}=this.renderer(this.rootNode),n=t&&"\n"!==t;if(this.options.debug)return n&&(this.fullStaticOutput+=t),void this.options.stdout.write(this.fullStaticOutput+e);n&&(a.default||this.log.clear(),this.options.stdout.write(t),a.default||this.log(e)),e!==this.lastOutput&&(a.default||this.throttledLog(e),this.lastOutput=e)}render(e){const t=r.default.createElement(p.default,{stdin:this.options.stdin,stdout:this.options.stdout,exitOnCtrlC:this.options.exitOnCtrlC,onExit:this.unmount},e);s.default.updateContainer(t,this.container)}unmount(e){this.isUnmounted||(this.onRender(),this.unsubscribeExit(),a.default?this.options.stdout.write(this.lastOutput+"\n"):this.options.debug||this.log.done(),this.isUnmounted=!0,s.default.updateContainer(null,this.container),d.default.delete(this.options.stdout),e instanceof Error?this.rejectExitPromise(e):this.resolveExitPromise())}waitUntilExit(){return this.exitPromise}}},4455:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=new WeakMap;t.default=n},3425:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,i=(r=n(128))&&r.__esModule?r:{default:r};t.default=e=>({width:(0,i.default)(e),height:e.split("\n").length})},6734:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=o(n(2989)),i=o(n(7498));function o(e){return e&&e.__esModule?e:{default:e}}t.default=class{constructor({width:e,height:t}){const n=[];for(let r=0;re.trimRight()).join("\n")}}},7190:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,i=n(5201),o=(r=n(9437))&&r.__esModule?r:{default:r},u=n(3976);const a={schedulePassiveEffects:i.unstable_scheduleCallback,cancelPassiveEffects:i.unstable_cancelCallback,now:Date.now,getRootHostContext:()=>!0,prepareForCommit:()=>{},resetAfterCommit:e=>{e.onRender()},getChildHostContext:()=>!0,shouldSetTextContent:(e,t)=>"string"==typeof t.children||"number"==typeof t.children,createInstance:(e,t)=>{const n=(0,u.createNode)(e);for(const[r,i]of Object.entries(t))if("children"===r){if("string"==typeof i||"number"==typeof i){if("div"===e){const e=(0,u.createNode)("div");e.textContent=String(i),(0,u.appendChildNode)(n,e)}"span"===e&&(n.textContent=String(i))}}else"style"===r?Object.assign(n.style,i):"unstable__transformChildren"===r?n.unstable__transformChildren=i:"unstable__static"===r?n.unstable__static=!0:(0,u.setAttribute)(n,r,i);return n},createTextInstance:u.createTextNode,resetTextContent:e=>{if(e.textContent&&(e.textContent=""),e.childNodes.length>0)for(const t of e.childNodes)t.yogaNode.free(),(0,u.removeChildNode)(e,t)},getPublicInstance:e=>e,appendInitialChild:u.appendChildNode,appendChild:u.appendChildNode,insertBefore:u.insertBeforeNode,finalizeInitialChildren:()=>{},supportsMutation:!0,appendChildToContainer:u.appendChildNode,insertInContainerBefore:u.insertBeforeNode,removeChildFromContainer:u.removeChildNode,prepareUpdate:()=>!0,commitUpdate:(e,t,n,r,i)=>{for(const[t,r]of Object.entries(i))if("children"===t){if("string"==typeof r||"number"==typeof r){if("div"===n)if(0===e.childNodes.length){const t=(0,u.createNode)("div");t.textContent=String(r),(0,u.appendChildNode)(e,t)}else e.childNodes[0].textContent=String(r);"span"===n&&(e.textContent=String(r))}}else"style"===t?Object.assign(e.style,r):"unstable__transformChildren"===t?e.unstable__transformChildren=r:"unstable__static"===t?e.unstable__static=!0:(0,u.setAttribute)(e,t,r)},commitTextUpdate:(e,t,n)=>{"#text"===e.nodeName?e.nodeValue=n:e.textContent=n},removeChild:u.removeChildNode};var l=(0,o.default)(a);t.default=l},3496:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=u(n(128)),i=u(n(335)),o=u(n(4431));function u(e){return e&&e.__esModule?e:{default:e}}const a=e=>{if("#text"===e.nodeName)return!0;if("SPAN"===e.nodeName){if(e.textContent)return!0;if(Array.isArray(e.childNodes))return e.childNodes.every(a)}return!1},l=e=>{let t="";for(const n of e.childNodes){let e;"#text"===n.nodeName&&(e=n.nodeValue),"SPAN"===n.nodeName&&(e=n.textContent||l(n)),n.unstable__transformChildren&&(e=n.unstable__transformChildren(e)),t+=e}return t},s=(e,t,{offsetX:n=0,offsetY:u=0,transformers:c=[],skipStaticElements:f})=>{if(e.unstable__static&&f)return;const{yogaNode:d}=e,p=n+d.getComputedLeft(),h=u+d.getComputedTop();let m=c;if(e.unstable__transformChildren&&(m=[e.unstable__transformChildren,...c]),e.textContent){let n=e.textContent;if(e.parentNode.style.textWrap){const t=(0,r.default)(n),u=(0,o.default)(e.parentNode.yogaNode);t>u&&(n=(0,i.default)(n,u,{textWrap:e.parentNode.style.textWrap}))}t.write(p,h,n,{transformers:m})}else if("#text"!==e.nodeName){if(Array.isArray(e.childNodes)&&e.childNodes.length>0){if("row"===e.style.flexDirection&&e.childNodes.every(a)){let n=l(e);if(e.style.textWrap){const t=(0,r.default)(n),u=(0,o.default)(d);t>u&&(n=(0,i.default)(n,u,{textWrap:e.style.textWrap}))}return void t.write(p,h,n,{transformers:m})}for(const n of e.childNodes)s(n,t,{offsetX:p,offsetY:h,transformers:m,skipStaticElements:f})}}else t.write(p,h,e.nodeValue,{transformers:m})};var c=s;t.default=c},4763:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=o(n(7018)),i=o(n(4455));function o(e){return e&&e.__esModule?e:{default:e}}function u(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}t.default=(e,t={})=>{let n;return"function"==typeof t.write&&(t={stdout:t,stdin:process.stdin}),t=function(e){for(var t=1;tn.unmount(),waitUntilExit:n.waitUntilExit,cleanup:()=>i.default.delete(t.stdout)}}},9646:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=f(n(2821)),i=f(n(6734)),o=n(3976),u=f(n(1)),a=f(n(3496)),l=f(n(3425)),s=f(n(335)),c=f(n(4431));function f(e){return e&&e.__esModule?e:{default:e}}const d=e=>{if(e.textContent&&"string"==typeof e.parentNode.style.textWrap){const{yogaNode:t}=e,n=e.parentNode.yogaNode,r=(0,c.default)(n);if(t.getComputedWidth()>r){const{textWrap:n}=e.parentNode.style,i=(0,s.default)(e.textContent,r,{textWrap:n}),{width:o,height:u}=(0,l.default)(i);t.setWidth(o),t.setHeight(u)}}else if(Array.isArray(e.childNodes)&&e.childNodes.length>0)for(const t of e.childNodes)d(t)},p=e=>{const t=[];for(const n of e.childNodes)n.unstable__static&&t.push(n),Array.isArray(n.childNodes)&&n.childNodes.length>0&&t.push(...p(n));return t};t.default=({terminalWidth:e})=>{const t=r.default.Config.create();let n,l;return s=>{n&&n.freeRecursive(),l&&l.freeRecursive();const c=p(s);let f;if(c.length,1===c.length){const n=(0,o.createNode)("root");(0,o.appendStaticNode)(n,c[0]);const{yogaNode:s}=(0,u.default)(n,{config:t,terminalWidth:e,skipStaticElements:!1});s.calculateLayout(r.default.UNDEFINED,r.default.UNDEFINED,r.default.DIRECTION_LTR),d(n),s.calculateLayout(r.default.UNDEFINED,r.default.UNDEFINED,r.default.DIRECTION_LTR),l=s,f=new i.default({width:s.getComputedWidth(),height:s.getComputedHeight()}),(0,a.default)(n,f,{skipStaticElements:!1})}const{yogaNode:h}=(0,u.default)(s,{config:t,terminalWidth:e,skipStaticElements:!0});h.calculateLayout(r.default.UNDEFINED,r.default.UNDEFINED,r.default.DIRECTION_LTR),d(s),h.calculateLayout(r.default.UNDEFINED,r.default.UNDEFINED,r.default.DIRECTION_LTR),n=h;const m=new i.default({width:h.getComputedWidth(),height:h.getComputedHeight()});return(0,a.default)(s,m,{skipStaticElements:!0}),{output:m.get(),staticOutput:f?f.get()+"\n":void 0}}}},335:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=o(n(5449)),i=o(n(4093));function o(e){return e&&e.__esModule?e:{default:e}}t.default=(e,t,{textWrap:n}={})=>{if("wrap"===n)return(0,r.default)(e,t,{trim:!1,hard:!0});if(String(n).startsWith("truncate")){let r;return"truncate"!==n&&"truncate-end"!==n||(r="end"),"truncate-middle"===n&&(r="middle"),"truncate-start"===n&&(r="start"),(0,i.default)(e,t,{position:r})}return e}},5591:(e,t,n)=>{ +/** @license React v0.20.4 + * react-reconciler.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ +e.exports=function t(r){"use strict";var i=n(9381),o=n(7382),u=n(5201);function a(e,t,n,r,i,o,u,a){if(!e){if(e=void 0,void 0===t)e=Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var l=[n,r,i,o,u,a],s=0;(e=Error(t.replace(/%s/g,(function(){return l[s++]})))).name="Invariant Violation"}throw e.framesToPop=1,e}}function l(e){for(var t=arguments.length-1,n="https://reactjs.org/docs/error-decoder.html?invariant="+e,r=0;rOe||(e.current=Pe[Oe],Pe[Oe]=null,Oe--)}function Ne(e,t){Oe++,Pe[Oe]=e.current,e.current=t}var Ie={},Fe={current:Ie},Be={current:!1},Le=Ie;function Ue(e,t){var n=e.type.contextTypes;if(!n)return Ie;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var i,o={};for(i in n)o[i]=t[i];return r&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=o),o}function je(e){return null!=(e=e.childContextTypes)}function We(e){Re(Be),Re(Fe)}function ze(e){Re(Be),Re(Fe)}function qe(e,t,n){Fe.current!==Ie&&l("168"),Ne(Fe,t),Ne(Be,n)}function He(e,t,n){var r=e.stateNode;if(e=t.childContextTypes,"function"!=typeof r.getChildContext)return n;for(var o in r=r.getChildContext())o in e||l("108",T(t)||"Unknown",o);return i({},n,r)}function Ge(e){var t=e.stateNode;return t=t&&t.__reactInternalMemoizedMergedChildContext||Ie,Le=Fe.current,Ne(Fe,t),Ne(Be,Be.current),!0}function Ve(e,t,n){var r=e.stateNode;r||l("169"),n?(t=He(e,t,Le),r.__reactInternalMemoizedMergedChildContext=t,Re(Be),Re(Fe),Ne(Fe,t)):Re(Be),Ne(Be,n)}var Ye=null,Ke=null;function $e(e){return function(t){try{return e(t)}catch(e){}}}function Xe(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.contextDependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.effectTag=0,this.lastEffect=this.firstEffect=this.nextEffect=null,this.childExpirationTime=this.expirationTime=0,this.alternate=null}function Je(e,t,n,r){return new Xe(e,t,n,r)}function Qe(e){return!(!(e=e.prototype)||!e.isReactComponent)}function Ze(e,t){var n=e.alternate;return null===n?((n=Je(e.tag,t,e.key,e.mode)).elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.effectTag=0,n.nextEffect=null,n.firstEffect=null,n.lastEffect=null),n.childExpirationTime=e.childExpirationTime,n.expirationTime=e.expirationTime,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,n.contextDependencies=e.contextDependencies,n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function et(e,t,n,r,i,o){var u=2;if(r=e,"function"==typeof e)Qe(e)&&(u=1);else if("string"==typeof e)u=5;else e:switch(e){case p:return tt(n.children,i,o,t);case g:return nt(n,3|i,o,t);case h:return nt(n,2|i,o,t);case m:return(e=Je(12,n,t,4|i)).elementType=m,e.type=m,e.expirationTime=o,e;case y:return(e=Je(13,n,t,i)).elementType=y,e.type=y,e.expirationTime=o,e;default:if("object"==typeof e&&null!==e)switch(e.$$typeof){case v:u=10;break e;case b:u=9;break e;case _:u=11;break e;case D:u=14;break e;case w:u=16,r=null;break e}l("130",null==e?e:typeof e,"")}return(t=Je(u,n,t,i)).elementType=e,t.type=r,t.expirationTime=o,t}function tt(e,t,n,r){return(e=Je(7,e,r,t)).expirationTime=n,e}function nt(e,t,n,r){return e=Je(8,e,r,t),t=0==(1&t)?h:g,e.elementType=t,e.type=t,e.expirationTime=n,e}function rt(e,t,n){return(e=Je(6,e,null,t)).expirationTime=n,e}function it(e,t,n){return(t=Je(4,null!==e.children?e.children:[],e.key,t)).expirationTime=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function ot(e,t){e.didError=!1;var n=e.earliestPendingTime;0===n?e.earliestPendingTime=e.latestPendingTime=t:nt&&(e.latestPendingTime=t),lt(t,e)}function ut(e,t){e.didError=!1,e.latestPingedTime>=t&&(e.latestPingedTime=0);var n=e.earliestPendingTime,r=e.latestPendingTime;n===t?e.earliestPendingTime=r===t?e.latestPendingTime=0:r:r===t&&(e.latestPendingTime=n),n=e.earliestSuspendedTime,r=e.latestSuspendedTime,0===n?e.earliestSuspendedTime=e.latestSuspendedTime=t:nt&&(e.latestSuspendedTime=t),lt(t,e)}function at(e,t){var n=e.earliestPendingTime;return n>t&&(t=n),(e=e.earliestSuspendedTime)>t&&(t=e),t}function lt(e,t){var n=t.earliestSuspendedTime,r=t.latestSuspendedTime,i=t.earliestPendingTime,o=t.latestPingedTime;0===(i=0!==i?i:o)&&(0===e||re&&(e=n),t.nextExpirationTimeToWorkOn=i,t.expirationTime=e}function st(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t}var ct=Object.prototype.hasOwnProperty;function ft(e,t){if(st(e,t))return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;rd?(p=f,f=null):p=f.sibling;var h=v(i,f,a[d],l);if(null===h){null===f&&(f=p);break}e&&f&&null===h.alternate&&t(i,f),u=o(h,u,d),null===c?s=h:c.sibling=h,c=h,f=p}if(d===a.length)return n(i,f),s;if(null===f){for(;dp?(h=d,d=null):h=d.sibling;var _=v(i,d,g.value,s);if(null===_){d||(d=h);break}e&&d&&null===_.alternate&&t(i,d),u=o(_,u,p),null===f?c=_:f.sibling=_,f=_,d=h}if(g.done)return n(i,d),c;if(null===d){for(;!g.done;p++,g=a.next())null!==(g=m(i,g.value,s))&&(u=o(g,u,p),null===f?c=g:f.sibling=g,f=g);return c}for(d=r(i,d);!g.done;p++,g=a.next())null!==(g=b(d,i,p,g.value,s))&&(e&&null!==g.alternate&&d.delete(null===g.key?p:g.key),u=o(g,u,p),null===f?c=g:f.sibling=g,f=g);return e&&d.forEach((function(e){return t(i,e)})),c}return function(e,r,o,a){var s="object"==typeof o&&null!==o&&o.type===p&&null===o.key;s&&(o=o.props.children);var c="object"==typeof o&&null!==o;if(c)switch(o.$$typeof){case f:e:{for(c=o.key,s=r;null!==s;){if(s.key===c){if(7===s.tag?o.type===p:s.elementType===o.type){n(e,s.sibling),(r=i(s,o.type===p?o.props.children:o.props)).ref=Dt(e,s,o),r.return=e,e=r;break e}n(e,s);break}t(e,s),s=s.sibling}o.type===p?((r=tt(o.props.children,e.mode,a,o.key)).return=e,e=r):((a=et(o.type,o.key,o.props,null,e.mode,a)).ref=Dt(e,r,o),a.return=e,e=a)}return u(e);case d:e:{for(s=o.key;null!==r;){if(r.key===s){if(4===r.tag&&r.stateNode.containerInfo===o.containerInfo&&r.stateNode.implementation===o.implementation){n(e,r.sibling),(r=i(r,o.children||[])).return=e,e=r;break e}n(e,r);break}t(e,r),r=r.sibling}(r=it(o,e.mode,a)).return=e,e=r}return u(e)}if("string"==typeof o||"number"==typeof o)return o=""+o,null!==r&&6===r.tag?(n(e,r.sibling),(r=i(r,o)).return=e,e=r):(n(e,r),(r=rt(o,e.mode,a)).return=e,e=r),u(e);if(yt(o))return g(e,r,o,a);if(C(o))return _(e,r,o,a);if(c&&wt(e,o),void 0===o&&!s)switch(e.tag){case 1:case 0:l("152",(a=e.type).displayName||a.name||"Component")}return n(e,r)}}var Ct=Et(!0),Tt=Et(!1),kt={},St={current:kt},Mt={current:kt},xt={current:kt};function At(e){return e===kt&&l("174"),e}function Pt(e,t){Ne(xt,t),Ne(Mt,e),Ne(St,kt),t=P(t),Re(St),Ne(St,t)}function Ot(e){Re(St),Re(Mt),Re(xt)}function Rt(){return At(St.current)}function Nt(e){var t=At(xt.current),n=At(St.current);n!==(t=O(n,e.type,t))&&(Ne(Mt,e),Ne(St,t))}function It(e){Mt.current===e&&(Re(St),Re(Mt))}var Ft=s.ReactCurrentDispatcher,Bt=0,Lt=null,Ut=null,jt=null,Wt=null,zt=null,qt=null,Ht=0,Gt=null,Vt=0,Yt=!1,Kt=null,$t=0;function Xt(){l("321")}function Jt(e,t){if(null===t)return!1;for(var n=0;nHt&&(Ht=f)):o=s.eagerReducer===e?s.eagerState:e(o,s.action),u=s,s=s.next}while(null!==s&&s!==r);c||(a=u,i=o),st(o,t.memoizedState)||(Cn=!0),t.memoizedState=o,t.baseUpdate=a,t.baseState=i,n.lastRenderedState=o}return[t.memoizedState,n.dispatch]}function on(e,t,n,r){return e={tag:e,create:t,destroy:n,deps:r,next:null},null===Gt?(Gt={lastEffect:null}).lastEffect=e.next=e:null===(t=Gt.lastEffect)?Gt.lastEffect=e.next=e:(n=t.next,t.next=e,e.next=n,Gt.lastEffect=e),e}function un(e,t,n,r){var i=en();Vt|=e,i.memoizedState=on(t,n,void 0,void 0===r?null:r)}function an(e,t,n,r){var i=tn();r=void 0===r?null:r;var o=void 0;if(null!==Ut){var u=Ut.memoizedState;if(o=u.destroy,null!==r&&Jt(r,u.deps))return void on(0,n,o,r)}Vt|=e,i.memoizedState=on(t,n,o,r)}function ln(e,t){return"function"==typeof t?(e=e(),t(e),function(){t(null)}):null!=t?(e=e(),t.current=e,function(){t.current=null}):void 0}function sn(){}function cn(e,t,n){25>$t||l("301");var r=e.alternate;if(e===Lt||null!==r&&r===Lt)if(Yt=!0,e={expirationTime:Bt,action:n,eagerReducer:null,eagerState:null,next:null},null===Kt&&(Kt=new Map),void 0===(n=Kt.get(t)))Kt.set(t,e);else{for(t=n;null!==t.next;)t=t.next;t.next=e}else{Vr();var i=Si(),o={expirationTime:i=Qr(i,e),action:n,eagerReducer:null,eagerState:null,next:null},u=t.last;if(null===u)o.next=o;else{var a=u.next;null!==a&&(o.next=a),u.next=o}if(t.last=o,0===e.expirationTime&&(null===r||0===r.expirationTime)&&null!==(r=t.lastRenderedReducer))try{var s=t.lastRenderedState,c=r(s,n);if(o.eagerReducer=r,o.eagerState=c,st(c,s))return}catch(e){}ni(e,i)}}var fn={readContext:Hn,useCallback:Xt,useContext:Xt,useEffect:Xt,useImperativeHandle:Xt,useLayoutEffect:Xt,useMemo:Xt,useReducer:Xt,useRef:Xt,useState:Xt,useDebugValue:Xt},dn={readContext:Hn,useCallback:function(e,t){return en().memoizedState=[e,void 0===t?null:t],e},useContext:Hn,useEffect:function(e,t){return un(516,192,e,t)},useImperativeHandle:function(e,t,n){return n=null!=n?n.concat([e]):null,un(4,36,ln.bind(null,t,e),n)},useLayoutEffect:function(e,t){return un(4,36,e,t)},useMemo:function(e,t){var n=en();return t=void 0===t?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=en();return t=void 0!==n?n(t):t,r.memoizedState=r.baseState=t,e=(e=r.queue={last:null,dispatch:null,lastRenderedReducer:e,lastRenderedState:t}).dispatch=cn.bind(null,Lt,e),[r.memoizedState,e]},useRef:function(e){return e={current:e},en().memoizedState=e},useState:function(e){var t=en();return"function"==typeof e&&(e=e()),t.memoizedState=t.baseState=e,e=(e=t.queue={last:null,dispatch:null,lastRenderedReducer:nn,lastRenderedState:e}).dispatch=cn.bind(null,Lt,e),[t.memoizedState,e]},useDebugValue:sn},pn={readContext:Hn,useCallback:function(e,t){var n=tn();t=void 0===t?null:t;var r=n.memoizedState;return null!==r&&null!==t&&Jt(t,r[1])?r[0]:(n.memoizedState=[e,t],e)},useContext:Hn,useEffect:function(e,t){return an(516,192,e,t)},useImperativeHandle:function(e,t,n){return n=null!=n?n.concat([e]):null,an(4,36,ln.bind(null,t,e),n)},useLayoutEffect:function(e,t){return an(4,36,e,t)},useMemo:function(e,t){var n=tn();t=void 0===t?null:t;var r=n.memoizedState;return null!==r&&null!==t&&Jt(t,r[1])?r[0]:(e=e(),n.memoizedState=[e,t],e)},useReducer:rn,useRef:function(){return tn().memoizedState},useState:function(e){return rn(nn)},useDebugValue:sn},hn=null,mn=null,vn=!1;function bn(e,t){var n=Je(5,null,null,0);n.elementType="DELETED",n.type="DELETED",n.stateNode=t,n.return=e,n.effectTag=8,null!==e.lastEffect?(e.lastEffect.nextEffect=n,e.lastEffect=n):e.firstEffect=e.lastEffect=n}function gn(e,t){switch(e.tag){case 5:return null!==(t=Ee(t,e.type,e.pendingProps))&&(e.stateNode=t,!0);case 6:return null!==(t=Ce(t,e.pendingProps))&&(e.stateNode=t,!0);case 13:default:return!1}}function _n(e){if(vn){var t=mn;if(t){var n=t;if(!gn(e,t)){if(!(t=Te(n))||!gn(e,t))return e.effectTag|=2,vn=!1,void(hn=e);bn(hn,n)}hn=e,mn=ke(t)}else e.effectTag|=2,vn=!1,hn=e}}function yn(e){for(e=e.return;null!==e&&5!==e.tag&&3!==e.tag&&18!==e.tag;)e=e.return;hn=e}function Dn(e){if(!ee||e!==hn)return!1;if(!vn)return yn(e),vn=!0,!1;var t=e.type;if(5!==e.tag||"head"!==t&&"body"!==t&&!U(t,e.memoizedProps))for(t=mn;t;)bn(e,t),t=Te(t);return yn(e),mn=hn?Te(e.stateNode):null,!0}function wn(){ee&&(mn=hn=null,vn=!1)}var En=s.ReactCurrentOwner,Cn=!1;function Tn(e,t,n,r){t.child=null===e?Tt(t,null,n,r):Ct(t,e.child,n,r)}function kn(e,t,n,r,i){n=n.render;var o=t.ref;return qn(t,i),r=Qt(e,t,n,r,o,i),null===e||Cn?(t.effectTag|=1,Tn(e,t,r,i),t.child):(t.updateQueue=e.updateQueue,t.effectTag&=-517,e.expirationTime<=i&&(e.expirationTime=0),In(e,t,i))}function Sn(e,t,n,r,i,o){if(null===e){var u=n.type;return"function"!=typeof u||Qe(u)||void 0!==u.defaultProps||null!==n.compare||void 0!==n.defaultProps?((e=et(n.type,null,r,null,t.mode,o)).ref=t.ref,e.return=t,t.child=e):(t.tag=15,t.type=u,Mn(e,t,u,r,i,o))}return u=e.child,i=n?Nn(e,t,n):null!==(t=In(e,t,n))?t.sibling:null}return In(e,t,n)}}else Cn=!1;switch(t.expirationTime=0,t.tag){case 2:r=t.elementType,null!==e&&(e.alternate=null,t.alternate=null,t.effectTag|=2),e=t.pendingProps;var i=Ue(t,Fe.current);if(qn(t,n),i=Qt(null,t,r,e,i,n),t.effectTag|=1,"object"==typeof i&&null!==i&&"function"==typeof i.render&&void 0===i.$$typeof){if(t.tag=1,Zt(),je(r)){var o=!0;Ge(t)}else o=!1;t.memoizedState=null!==i.state&&void 0!==i.state?i.state:null;var u=r.getDerivedStateFromProps;"function"==typeof u&&ht(t,r,u,e),i.updater=mt,t.stateNode=i,i._reactInternalFiber=t,_t(t,r,e,n),t=On(null,t,r,!0,o,n)}else t.tag=0,Tn(null,t,i,n),t=t.child;return t;case 16:switch(i=t.elementType,null!==e&&(e.alternate=null,t.alternate=null,t.effectTag|=2),o=t.pendingProps,e=function(e){var t=e._result;switch(e._status){case 1:return t;case 2:case 0:throw t;default:switch(e._status=0,(t=(t=e._ctor)()).then((function(t){0===e._status&&(t=t.default,e._status=1,e._result=t)}),(function(t){0===e._status&&(e._status=2,e._result=t)})),e._status){case 1:return e._result;case 2:throw e._result}throw e._result=t,t}}(i),t.type=e,i=t.tag=function(e){if("function"==typeof e)return Qe(e)?1:0;if(null!=e){if((e=e.$$typeof)===_)return 11;if(e===D)return 14}return 2}(e),o=dt(e,o),u=void 0,i){case 0:u=An(null,t,e,o,n);break;case 1:u=Pn(null,t,e,o,n);break;case 11:u=kn(null,t,e,o,n);break;case 14:u=Sn(null,t,e,dt(e.type,o),r,n);break;default:l("306",e,"")}return u;case 0:return r=t.type,i=t.pendingProps,An(e,t,r,i=t.elementType===r?i:dt(r,i),n);case 1:return r=t.type,i=t.pendingProps,Pn(e,t,r,i=t.elementType===r?i:dt(r,i),n);case 3:return Rn(t),null===(r=t.updateQueue)&&l("282"),i=null!==(i=t.memoizedState)?i.element:null,nr(t,r,t.pendingProps,null,n),(r=t.memoizedState.element)===i?(wn(),t=In(e,t,n)):(i=t.stateNode,(i=(null===e||null===e.child)&&i.hydrate)&&(ee?(mn=ke(t.stateNode.containerInfo),hn=t,i=vn=!0):i=!1),i?(t.effectTag|=2,t.child=Tt(t,null,r,n)):(Tn(e,t,r,n),wn()),t=t.child),t;case 5:return Nt(t),null===e&&_n(t),r=t.type,i=t.pendingProps,o=null!==e?e.memoizedProps:null,u=i.children,U(r,i)?u=null:null!==o&&U(r,o)&&(t.effectTag|=16),xn(e,t),1!==n&&1&t.mode&&j(r,i)?(t.expirationTime=t.childExpirationTime=1,t=null):(Tn(e,t,u,n),t=t.child),t;case 6:return null===e&&_n(t),null;case 13:return Nn(e,t,n);case 4:return Pt(t,t.stateNode.containerInfo),r=t.pendingProps,null===e?t.child=Ct(t,null,r,n):Tn(e,t,r,n),t.child;case 11:return r=t.type,i=t.pendingProps,kn(e,t,r,i=t.elementType===r?i:dt(r,i),n);case 7:return Tn(e,t,t.pendingProps,n),t.child;case 8:case 12:return Tn(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,i=t.pendingProps,u=t.memoizedProps,Wn(t,o=i.value),null!==u){var a=u.value;if(0===(o=st(a,o)?0:0|("function"==typeof r._calculateChangedBits?r._calculateChangedBits(a,o):1073741823))){if(u.children===i.children&&!Be.current){t=In(e,t,n);break e}}else for(null!==(a=t.child)&&(a.return=t);null!==a;){var s=a.contextDependencies;if(null!==s){u=a.child;for(var c=s.first;null!==c;){if(c.context===r&&0!=(c.observedBits&o)){1===a.tag&&((c=Xn(n)).tag=Vn,Qn(a,c)),a.expirationTime=t&&(Cn=!0),e.contextDependencies=null}function Hn(e,t){return jn!==e&&!1!==t&&0!==t&&("number"==typeof t&&1073741823!==t||(jn=e,t=1073741823),t={context:e,observedBits:t,next:null},null===Un?(null===Ln&&l("308"),Un=t,Ln.contextDependencies={first:t,expirationTime:0}):Un=Un.next=t),J?e._currentValue:e._currentValue2}var Gn=1,Vn=2,Yn=!1;function Kn(e){return{baseState:e,firstUpdate:null,lastUpdate:null,firstCapturedUpdate:null,lastCapturedUpdate:null,firstEffect:null,lastEffect:null,firstCapturedEffect:null,lastCapturedEffect:null}}function $n(e){return{baseState:e.baseState,firstUpdate:e.firstUpdate,lastUpdate:e.lastUpdate,firstCapturedUpdate:null,lastCapturedUpdate:null,firstEffect:null,lastEffect:null,firstCapturedEffect:null,lastCapturedEffect:null}}function Xn(e){return{expirationTime:e,tag:0,payload:null,callback:null,next:null,nextEffect:null}}function Jn(e,t){null===e.lastUpdate?e.firstUpdate=e.lastUpdate=t:(e.lastUpdate.next=t,e.lastUpdate=t)}function Qn(e,t){var n=e.alternate;if(null===n){var r=e.updateQueue,i=null;null===r&&(r=e.updateQueue=Kn(e.memoizedState))}else r=e.updateQueue,i=n.updateQueue,null===r?null===i?(r=e.updateQueue=Kn(e.memoizedState),i=n.updateQueue=Kn(n.memoizedState)):r=e.updateQueue=$n(i):null===i&&(i=n.updateQueue=$n(r));null===i||r===i?Jn(r,t):null===r.lastUpdate||null===i.lastUpdate?(Jn(r,t),Jn(i,t)):(Jn(r,t),i.lastUpdate=t)}function Zn(e,t){var n=e.updateQueue;null===(n=null===n?e.updateQueue=Kn(e.memoizedState):er(e,n)).lastCapturedUpdate?n.firstCapturedUpdate=n.lastCapturedUpdate=t:(n.lastCapturedUpdate.next=t,n.lastCapturedUpdate=t)}function er(e,t){var n=e.alternate;return null!==n&&t===n.updateQueue&&(t=e.updateQueue=$n(t)),t}function tr(e,t,n,r,o,u){switch(n.tag){case Gn:return"function"==typeof(e=n.payload)?e.call(u,r,o):e;case 3:e.effectTag=-2049&e.effectTag|64;case 0:if(null==(o="function"==typeof(e=n.payload)?e.call(u,r,o):e))break;return i({},r,o);case Vn:Yn=!0}return r}function nr(e,t,n,r,i){Yn=!1;for(var o=(t=er(e,t)).baseState,u=null,a=0,l=t.firstUpdate,s=o;null!==l;){var c=l.expirationTime;ct?e.earliestPendingTime=e.latestPendingTime=0:e.earliestPendingTime>t&&(e.earliestPendingTime=e.latestPendingTime)),0===(n=e.earliestSuspendedTime)?ot(e,t):tn&&ot(e,t)}lt(0,e)}(e,i>r?i:r),Sr.current=null,r=void 0,1n?t:n)&&(jr=null),function(e,t){e.expirationTime=t,e.finishedWork=null}(e,t)}function Kr(e){for(;;){var t=e.alternate,n=e.return,r=e.sibling;if(0==(1024&e.effectTag)){Ar=e;e:{var i=t,o=Or,u=(t=e).pendingProps;switch(t.tag){case 2:case 16:break;case 15:case 0:break;case 1:je(t.type)&&We();break;case 3:Ot(),ze(),(u=t.stateNode).pendingContext&&(u.context=u.pendingContext,u.pendingContext=null),null!==i&&null!==i.child||(Dn(t),t.effectTag&=-3),lr(t);break;case 5:It(t),o=At(xt.current);var a=t.type;if(null!==i&&null!=t.stateNode)sr(i,t,a,u,o),i.ref!==t.ref&&(t.effectTag|=128);else if(u){if(i=Rt(),Dn(t))u=t,ee||l("175"),i=Se(u.stateNode,u.type,u.memoizedProps,o,i,u),u.updateQueue=i,(i=null!==i)&&ur(t);else{var s=I(a,u,o,i,t);ar(s,t,!1,!1),B(s,a,u,o,i)&&ur(t),t.stateNode=s}null!==t.ref&&(t.effectTag|=128)}else null===t.stateNode&&l("166");break;case 6:i&&null!=t.stateNode?cr(i,t,i.memoizedProps,u):("string"!=typeof u&&(null===t.stateNode&&l("166")),i=At(xt.current),o=Rt(),Dn(t)?(i=t,ee||l("176"),(i=Me(i.stateNode,i.memoizedProps,i))&&ur(t)):t.stateNode=W(u,i,o,t));break;case 11:break;case 13:if(u=t.memoizedState,0!=(64&t.effectTag)){t.expirationTime=o,Ar=t;break e}u=null!==u,o=null!==i&&null!==i.memoizedState,null!==i&&!u&&o&&(null!==(i=i.child.sibling)&&(null!==(a=t.firstEffect)?(t.firstEffect=i,i.nextEffect=a):(t.firstEffect=t.lastEffect=i,i.nextEffect=null),i.effectTag=8)),(u||o)&&(t.effectTag|=4);break;case 7:case 8:case 12:break;case 4:Ot(),lr(t);break;case 10:zn(t);break;case 9:case 14:break;case 17:je(t.type)&&We();break;case 18:break;default:l("156")}Ar=null}if(t=e,1===Or||1!==t.childExpirationTime){for(i=0,u=t.child;null!==u;)(o=u.expirationTime)>i&&(i=o),(a=u.childExpirationTime)>i&&(i=a),u=u.sibling;t.childExpirationTime=i}if(null!==Ar)return Ar;null!==n&&0==(1024&n.effectTag)&&(null===n.firstEffect&&(n.firstEffect=e.firstEffect),null!==e.lastEffect&&(null!==n.lastEffect&&(n.lastEffect.nextEffect=e.firstEffect),n.lastEffect=e.lastEffect),1=m?p=0:(-1===p||m component higher in the tree to provide a loading indicator or placeholder to display."+Ae(c))}Nr=!0,f=or(f,c),a=s;do{switch(a.tag){case 3:a.effectTag|=2048,a.expirationTime=u,Zn(a,u=Er(a,f,u));break e;case 1:if(p=f,h=a.type,c=a.stateNode,0==(64&a.effectTag)&&("function"==typeof h.getDerivedStateFromError||null!==c&&"function"==typeof c.componentDidCatch&&(null===jr||!jr.has(c)))){a.effectTag|=2048,a.expirationTime=u,Zn(a,u=Cr(a,p,u));break e}}a=a.return}while(null!==a)}Ar=Kr(o);continue}i=!0,Bi(t)}}break}if(xr=!1,kr.current=n,jn=Un=Ln=null,Zt(),i)Pr=null,e.finishedWork=null;else if(null!==Ar)e.finishedWork=null;else{if(null===(n=e.current.alternate)&&l("281"),Pr=null,Nr){if(i=e.latestPendingTime,o=e.latestSuspendedTime,u=e.latestPingedTime,0!==i&&it?0:t)):(e.pendingCommitExpirationTime=r,e.finishedWork=n)}}function Jr(e,t){for(var n=e.return;null!==n;){switch(n.tag){case 1:var r=n.stateNode;if("function"==typeof n.type.getDerivedStateFromError||"function"==typeof r.componentDidCatch&&(null===jr||!jr.has(r)))return Qn(n,e=Cr(n,e=or(t,e),1073741823)),void ni(n,1073741823);break;case 3:return Qn(n,e=Er(n,e=or(t,e),1073741823)),void ni(n,1073741823)}n=n.return}3===e.tag&&(Qn(e,n=Er(e,n=or(t,e),1073741823)),ni(e,1073741823))}function Qr(e,t){var n=u.unstable_getCurrentPriorityLevel(),r=void 0;if(0==(1&t.mode))r=1073741823;else if(xr&&!Fr)r=Or;else{switch(n){case u.unstable_ImmediatePriority:r=1073741823;break;case u.unstable_UserBlockingPriority:r=1073741822-10*(1+((1073741822-e+15)/10|0));break;case u.unstable_NormalPriority:r=1073741822-25*(1+((1073741822-e+500)/25|0));break;case u.unstable_LowPriority:case u.unstable_IdlePriority:r=1;break;default:l("313")}null!==Pr&&r===Or&&--r}return n===u.unstable_UserBlockingPriority&&(0===fi||r=r&&(e.didError=!1,(0===(t=e.latestPingedTime)||t>n)&&(e.latestPingedTime=n),lt(n,e),0!==(n=e.expirationTime)&&Mi(e,n)))}function ei(e,t){var n=e.stateNode;null!==n&&n.delete(t),null!==(e=ti(e,t=Qr(t=Si(),e)))&&(ot(e,t),0!==(t=e.expirationTime)&&Mi(e,t))}function ti(e,t){e.expirationTimeOr&&Wr(),ot(e,t),xr&&!Fr&&Pr===e||Mi(e,e.expirationTime),Di>yi&&(Di=0,l("185")))}function ri(e,t,n,r,i){return u.unstable_runWithPriority(u.unstable_ImmediatePriority,(function(){return e(t,n,r,i)}))}var ii=null,oi=null,ui=0,ai=void 0,li=!1,si=null,ci=0,fi=0,di=!1,pi=null,hi=!1,mi=!1,vi=null,bi=X(),gi=1073741822-(bi/10|0),_i=gi,yi=50,Di=0,wi=null;function Ei(){gi=1073741822-((X()-bi)/10|0)}function Ci(e,t){if(0!==ui){if(te.expirationTime&&(e.expirationTime=t),li||(hi?mi&&(si=e,ci=1073741823,Ii(e,1073741823,!1)):1073741823===t?Ri(1073741823,!1):Ci(e,t))}function xi(){var e=0,t=null;if(null!==oi)for(var n=oi,r=ii;null!==r;){var i=r.expirationTime;if(0===i){if((null===n||null===oi)&&l("244"),r===r.nextScheduledRoot){ii=oi=r.nextScheduledRoot=null;break}if(r===ii)ii=i=r.nextScheduledRoot,oi.nextScheduledRoot=i,r.nextScheduledRoot=null;else{if(r===oi){(oi=n).nextScheduledRoot=ii,r.nextScheduledRoot=null;break}n.nextScheduledRoot=r.nextScheduledRoot,r.nextScheduledRoot=null}r=n.nextScheduledRoot}else{if(i>e&&(e=i,t=r),r===oi)break;if(1073741823===e)break;n=r,r=r.nextScheduledRoot}}si=t,ci=e}var Ai=!1;function Pi(){return!!Ai||!!H()&&(Ai=!0)}function Oi(){try{if(!Pi()&&null!==ii){Ei();var e=ii;do{var t=e.expirationTime;0!==t&&gi<=t&&(e.nextExpirationTimeToWorkOn=gi),e=e.nextScheduledRoot}while(e!==ii)}Ri(0,!0)}finally{Ai=!1}}function Ri(e,t){if(xi(),t)for(Ei(),_i=gi;null!==si&&0!==ci&&e<=ci&&!(Ai&&gi>ci);)Ii(si,ci,gi>ci),xi(),Ei(),_i=gi;else for(;null!==si&&0!==ci&&e<=ci;)Ii(si,ci,!1),xi();if(t&&(ui=0,ai=null),0!==ci&&Ci(si,ci),Di=0,wi=null,null!==vi)for(e=vi,vi=null,t=0;t=n&&(null===vi?vi=[r]:vi.push(r),r._defer))return e.finishedWork=t,void(e.expirationTime=0);e.finishedWork=null,e===wi?Di++:(wi=e,Di=0),u.unstable_runWithPriority(u.unstable_ImmediatePriority,(function(){Yr(e,t)}))}function Bi(e){null===si&&l("246"),si.expirationTime=0,di||(di=!0,pi=e)}function Li(e,t,n,r,i){var o=t.current;e:if(n){t:{2===k(n=n._reactInternalFiber)&&1===n.tag||l("170");var u=n;do{switch(u.tag){case 3:u=u.stateNode.context;break t;case 1:if(je(u.type)){u=u.stateNode.__reactInternalMemoizedMergedChildContext;break t}}u=u.return}while(null!==u);l("171"),u=void 0}if(1===n.tag){var a=n.type;if(je(a)){n=He(n,a,u);break e}}n=u}else n=Ie;return null===t.context?t.context=n:t.pendingContext=n,t=i,(i=Xn(r)).payload={element:e},null!==(t=void 0===t?null:t)&&(i.callback=t),Vr(),Qn(o,i),ni(o,r),r}function Ui(e){var t=e._reactInternalFiber;return void 0===t&&("function"==typeof e.render?l("188"):l("268",Object.keys(e))),null===(e=x(t))?null:e.stateNode}var ji={updateContainerAtExpirationTime:Li,createContainer:function(e,t,n){return e={current:t=Je(3,null,null,t?3:0),containerInfo:e,pendingChildren:null,pingCache:null,earliestPendingTime:0,latestPendingTime:0,earliestSuspendedTime:0,latestSuspendedTime:0,latestPingedTime:0,didError:!1,pendingCommitExpirationTime:0,finishedWork:null,timeoutHandle:Y,context:null,pendingContext:null,hydrate:n,nextExpirationTimeToWorkOn:0,expirationTime:0,firstBatch:null,nextScheduledRoot:null},t.stateNode=e},updateContainer:function(e,t,n,r){var i=t.current;return Li(e,t,n,i=Qr(Si(),i),r)},flushRoot:Ni,requestWork:Mi,computeUniqueAsyncExpiration:function(){var e=1073741822-25*(1+((1073741822-Si()+500)/25|0));return e>=Mr&&(e=Mr-1),Mr=e},batchedUpdates:function(e,t){var n=hi;hi=!0;try{return e(t)}finally{(hi=n)||li||Ri(1073741823,!1)}},unbatchedUpdates:function(e,t){if(hi&&!mi){mi=!0;try{return e(t)}finally{mi=!1}}return e(t)},deferredUpdates:u.unstable_next,syncUpdates:ri,interactiveUpdates:function(e,t,n){hi||li||0===fi||(Ri(fi,!1),fi=0);var r=hi;hi=!0;try{return u.unstable_runWithPriority(u.unstable_UserBlockingPriority,(function(){return e(t,n)}))}finally{(hi=r)||li||Ri(1073741823,!1)}},flushInteractiveUpdates:function(){li||0===fi||(Ri(fi,!1),fi=0)},flushControlled:function(e){var t=hi;hi=!0;try{ri(e)}finally{(hi=t)||li||Ri(1073741823,!1)}},flushSync:function(e,t){li&&l("187");var n=hi;hi=!0;try{return ri(e,t)}finally{hi=n,Ri(1073741823,!1)}},getPublicRootInstance:function(e){if(!(e=e.current).child)return null;switch(e.child.tag){case 5:return A(e.child.stateNode);default:return e.child.stateNode}},findHostInstance:Ui,findHostInstanceWithWarning:function(e){return Ui(e)},findHostInstanceWithNoPortals:function(e){return null===(e=function(e){if(!(e=M(e)))return null;for(var t=e;;){if(5===t.tag||6===t.tag)return t;if(t.child&&4!==t.tag)t.child.return=t,t=t.child;else{if(t===e)break;for(;!t.sibling;){if(!t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}}return null}(e))?null:e.stateNode},injectIntoDevTools:function(e){var t=e.findFiberByHostInstance;return function(e){if("undefined"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__)return!1;var t=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(t.isDisabled||!t.supportsFiber)return!0;try{var n=t.inject(e);Ye=$e((function(e){return t.onCommitFiberRoot(n,e)})),Ke=$e((function(e){return t.onCommitFiberUnmount(n,e)}))}catch(e){}return!0}(i({},e,{overrideProps:null,currentDispatcherRef:s.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return null===(e=x(e))?null:e.stateNode},findFiberByHostInstance:function(e){return t?t(e):null}}))}};e.exports=ji.default||ji;var Wi=e.exports;return e.exports=t,Wi}},9437:(e,t,n)=>{"use strict";e.exports=n(5591)},469:(e,t,n)=>{"use strict";function r(e){const t=[...e.caches],n=t.shift();return void 0===n?i():{get:(e,i,o={miss:()=>Promise.resolve()})=>n.get(e,i,o).catch(()=>r({caches:t}).get(e,i,o)),set:(e,i)=>n.set(e,i).catch(()=>r({caches:t}).set(e,i)),delete:e=>n.delete(e).catch(()=>r({caches:t}).delete(e)),clear:()=>n.clear().catch(()=>r({caches:t}).clear())}}function i(){return{get:(e,t,n={miss:()=>Promise.resolve()})=>t().then(e=>Promise.all([e,n.miss(e)])).then(([e])=>e),set:(e,t)=>Promise.resolve(t),delete:e=>Promise.resolve(),clear:()=>Promise.resolve()}}n.r(t),n.d(t,{createFallbackableCache:()=>r,createNullCache:()=>i})},6712:(e,t,n)=>{"use strict";function r(e={serializable:!0}){let t={};return{get(n,r,i={miss:()=>Promise.resolve()}){const o=JSON.stringify(n);if(o in t)return Promise.resolve(e.serializable?JSON.parse(t[o]):t[o]);const u=r(),a=i&&i.miss||(()=>Promise.resolve());return u.then(e=>a(e)).then(()=>u)},set:(n,r)=>(t[JSON.stringify(n)]=e.serializable?JSON.stringify(r):r,Promise.resolve(r)),delete:e=>(delete t[JSON.stringify(e)],Promise.resolve()),clear:()=>(t={},Promise.resolve())}}n.r(t),n.d(t,{createInMemoryCache:()=>r})},2223:(e,t,n)=>{"use strict";n.r(t),n.d(t,{addABTest:()=>a,createAnalyticsClient:()=>u,deleteABTest:()=>l,getABTest:()=>s,getABTests:()=>c,stopABTest:()=>f});var r=n(1757),i=n(7858),o=n(5541);const u=e=>{const t=e.region||"us",n=(0,r.createAuth)(r.AuthMode.WithinHeaders,e.appId,e.apiKey),o=(0,i.createTransporter)({hosts:[{url:`analytics.${t}.algolia.com`}],...e,headers:{...n.headers(),"content-type":"application/json",...e.headers},queryParameters:{...n.queryParameters(),...e.queryParameters}}),u=e.appId;return(0,r.addMethods)({appId:u,transporter:o},e.methods)},a=e=>(t,n)=>e.transporter.write({method:o.N.Post,path:"2/abtests",data:t},n),l=e=>(t,n)=>e.transporter.write({method:o.N.Delete,path:(0,r.encode)("2/abtests/%s",t)},n),s=e=>(t,n)=>e.transporter.read({method:o.N.Get,path:(0,r.encode)("2/abtests/%s",t)},n),c=e=>t=>e.transporter.read({method:o.N.Get,path:"2/abtests"},t),f=e=>(t,n)=>e.transporter.write({method:o.N.Post,path:(0,r.encode)("2/abtests/%s/stop",t)},n)},1757:(e,t,n)=>{"use strict";function r(e,t,n){const r={"x-algolia-api-key":n,"x-algolia-application-id":t};return{headers:()=>e===f.WithinHeaders?r:{},queryParameters:()=>e===f.WithinQueryParameters?r:{}}}function i(e){let t=0;const n=()=>(t++,new Promise(r=>{setTimeout(()=>{r(e(n))},Math.min(100*t,1e3))}));return e(n)}function o(e,t=((e,t)=>Promise.resolve())){return Object.assign(e,{wait:n=>o(e.then(e=>Promise.all([t(e,n),e])).then(e=>e[1]))})}function u(e){let t=e.length-1;for(;t>0;t--){const n=Math.floor(Math.random()*(t+1)),r=e[t];e[t]=e[n],e[n]=r}return e}function a(e,t){return Object.keys(void 0!==t?t:{}).forEach(n=>{e[n]=t[n](e)}),e}function l(e,...t){let n=0;return e.replace(/%s/g,()=>encodeURIComponent(t[n++]))}n.r(t),n.d(t,{AuthMode:()=>f,addMethods:()=>a,createAuth:()=>r,createRetryablePromise:()=>i,createWaitablePromise:()=>o,destroy:()=>c,encode:()=>l,shuffle:()=>u,version:()=>s});const s="4.2.0",c=e=>()=>e.transporter.requester.destroy(),f={WithinQueryParameters:0,WithinHeaders:1}},103:(e,t,n)=>{"use strict";n.r(t),n.d(t,{createRecommendationClient:()=>u,getPersonalizationStrategy:()=>a,setPersonalizationStrategy:()=>l});var r=n(1757),i=n(7858),o=n(5541);const u=e=>{const t=e.region||"us",n=(0,r.createAuth)(r.AuthMode.WithinHeaders,e.appId,e.apiKey),o=(0,i.createTransporter)({hosts:[{url:`recommendation.${t}.algolia.com`}],...e,headers:{...n.headers(),"content-type":"application/json",...e.headers},queryParameters:{...n.queryParameters(),...e.queryParameters}});return(0,r.addMethods)({appId:e.appId,transporter:o},e.methods)},a=e=>t=>e.transporter.read({method:o.N.Get,path:"1/strategies/personalization"},t),l=e=>(t,n)=>e.transporter.write({method:o.N.Post,path:"1/strategies/personalization",data:t},n)},6586:(e,t,n)=>{"use strict";n.r(t),n.d(t,{ApiKeyACLEnum:()=>Se,BatchActionEnum:()=>Me,ScopeEnum:()=>xe,StrategyEnum:()=>Ae,SynonymEnum:()=>Pe,addApiKey:()=>d,assignUserID:()=>p,assignUserIDs:()=>h,batch:()=>W,browseObjects:()=>z,browseRules:()=>q,browseSynonyms:()=>H,chunkedBatch:()=>G,clearObjects:()=>V,clearRules:()=>Y,clearSynonyms:()=>K,copyIndex:()=>m,copyRules:()=>v,copySettings:()=>b,copySynonyms:()=>g,createBrowsablePromise:()=>a,createMissingObjectIDError:()=>s,createObjectNotFoundError:()=>c,createSearchClient:()=>l,createValidUntilNotFoundError:()=>f,deleteApiKey:()=>_,deleteBy:()=>$,deleteIndex:()=>X,deleteObject:()=>J,deleteObjects:()=>Q,deleteRule:()=>Z,deleteSynonym:()=>ee,exists:()=>te,findObject:()=>ne,generateSecuredApiKey:()=>y,getApiKey:()=>D,getLogs:()=>w,getObject:()=>re,getObjectPosition:()=>ie,getObjects:()=>oe,getRule:()=>ue,getSecuredApiKeyRemainingValidity:()=>E,getSettings:()=>ae,getSynonym:()=>le,getTask:()=>se,getTopUserIDs:()=>C,getUserID:()=>T,hasPendingMappings:()=>k,initIndex:()=>S,listApiKeys:()=>M,listClusters:()=>x,listIndices:()=>A,listUserIDs:()=>P,moveIndex:()=>O,multipleBatch:()=>R,multipleGetObjects:()=>N,multipleQueries:()=>I,multipleSearchForFacetValues:()=>F,partialUpdateObject:()=>ce,partialUpdateObjects:()=>fe,removeUserID:()=>B,replaceAllObjects:()=>de,replaceAllRules:()=>pe,replaceAllSynonyms:()=>he,restoreApiKey:()=>L,saveObject:()=>me,saveObjects:()=>ve,saveRule:()=>be,saveRules:()=>ge,saveSynonym:()=>_e,saveSynonyms:()=>ye,search:()=>De,searchForFacetValues:()=>we,searchRules:()=>Ee,searchSynonyms:()=>Ce,searchUserIDs:()=>U,setSettings:()=>Te,updateApiKey:()=>j,waitTask:()=>ke});var r=n(1757),i=n(7858),o=n(5541),u=n(6417);function a(e){const t=n=>e.request(n).then(r=>{if(void 0!==e.batch&&e.batch(r.hits),!e.shouldStop(r))return r.cursor?t({cursor:r.cursor}):t({page:(n.page||0)+1})});return t({})}const l=e=>{const t=e.appId,n=(0,r.createAuth)(void 0!==e.authMode?e.authMode:r.AuthMode.WithinHeaders,t,e.apiKey),o=(0,i.createTransporter)({hosts:[{url:t+"-dsn.algolia.net",accept:i.CallEnum.Read},{url:t+".algolia.net",accept:i.CallEnum.Write}].concat((0,r.shuffle)([{url:t+"-1.algolianet.com"},{url:t+"-2.algolianet.com"},{url:t+"-3.algolianet.com"}])),...e,headers:{...n.headers(),"content-type":"application/x-www-form-urlencoded",...e.headers},queryParameters:{...n.queryParameters(),...e.queryParameters}}),u={transporter:o,appId:t,addAlgoliaAgent(e,t){o.userAgent.add({segment:e,version:t})},clearCache:()=>Promise.all([o.requestsCache.clear(),o.responsesCache.clear()]).then(()=>{})};return(0,r.addMethods)(u,e.methods)};function s(){return{name:"MissingObjectIDError",message:"All objects must have an unique objectID (like a primary key) to be valid. Algolia is also able to generate objectIDs automatically but *it's not recommended*. To do it, use the `{'autoGenerateObjectIDIfNotExist': true}` option."}}function c(){return{name:"ObjectNotFoundError",message:"Object not found."}}function f(){return{name:"ValidUntilNotFoundError",message:"ValidUntil not found in given secured api key."}}const d=e=>(t,n)=>{const{queryParameters:i,...u}=n||{},a={acl:t,...void 0!==i?{queryParameters:i}:{}};return(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:"1/keys",data:a},u),(t,n)=>(0,r.createRetryablePromise)(r=>D(e)(t.key,n).catch(e=>{if(404!==e.status)throw e;return r()})))},p=e=>(t,n,r)=>{const u=(0,i.createMappedRequestOptions)(r);return u.queryParameters["X-Algolia-User-ID"]=t,e.transporter.write({method:o.N.Post,path:"1/clusters/mapping",data:{cluster:n}},u)},h=e=>(t,n,r)=>e.transporter.write({method:o.N.Post,path:"1/clusters/mapping/batch",data:{users:t,cluster:n}},r),m=e=>(t,n,i)=>(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/operation",t),data:{operation:"copy",destination:n}},i),(n,r)=>S(e)(t,{methods:{waitTask:ke}}).waitTask(n.taskID,r)),v=e=>(t,n,r)=>m(e)(t,n,{...r,scope:[xe.Rules]}),b=e=>(t,n,r)=>m(e)(t,n,{...r,scope:[xe.Settings]}),g=e=>(t,n,r)=>m(e)(t,n,{...r,scope:[xe.Synonyms]}),_=e=>(t,n)=>(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Delete,path:(0,r.encode)("1/keys/%s",t)},n),(n,i)=>(0,r.createRetryablePromise)(n=>D(e)(t,i).then(n).catch(e=>{if(404!==e.status)throw e}))),y=()=>(e,t)=>{const n=(0,i.serializeQueryParameters)(t),r=(0,u.createHmac)("sha256",e).update(n).digest("hex");return Buffer.from(r+n).toString("base64")},D=e=>(t,n)=>e.transporter.read({method:o.N.Get,path:(0,r.encode)("1/keys/%s",t)},n),w=e=>t=>e.transporter.read({method:o.N.Get,path:"1/logs"},t),E=()=>e=>{const t=Buffer.from(e,"base64").toString("ascii").match(/validUntil=(\d+)/);if(null===t)throw{name:"ValidUntilNotFoundError",message:"ValidUntil not found in given secured api key."};return parseInt(t[1],10)-Math.round((new Date).getTime()/1e3)},C=e=>t=>e.transporter.read({method:o.N.Get,path:"1/clusters/mapping/top"},t),T=e=>(t,n)=>e.transporter.read({method:o.N.Get,path:(0,r.encode)("1/clusters/mapping/%s",t)},n),k=e=>t=>{const{retrieveMappings:n,...r}=t||{};return!0===n&&(r.getClusters=!0),e.transporter.read({method:o.N.Get,path:"1/clusters/mapping/pending"},r)},S=e=>(t,n={})=>{const i={transporter:e.transporter,appId:e.appId,indexName:t};return(0,r.addMethods)(i,n.methods)},M=e=>t=>e.transporter.read({method:o.N.Get,path:"1/keys"},t),x=e=>t=>e.transporter.read({method:o.N.Get,path:"1/clusters"},t),A=e=>t=>e.transporter.read({method:o.N.Get,path:"1/indexes"},t),P=e=>t=>e.transporter.read({method:o.N.Get,path:"1/clusters/mapping"},t),O=e=>(t,n,i)=>(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/operation",t),data:{operation:"move",destination:n}},i),(n,r)=>S(e)(t,{methods:{waitTask:ke}}).waitTask(n.taskID,r)),R=e=>(t,n)=>(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:"1/indexes/*/batch",data:{requests:t}},n),(t,n)=>Promise.all(Object.keys(t.taskID).map(r=>S(e)(r,{methods:{waitTask:ke}}).waitTask(t.taskID[r],n)))),N=e=>(t,n)=>e.transporter.read({method:o.N.Post,path:"1/indexes/*/objects",data:{requests:t}},n),I=e=>(t,n)=>{const r=t.map(e=>({...e,params:(0,i.serializeQueryParameters)(e.params||{})}));return e.transporter.read({method:o.N.Post,path:"1/indexes/*/queries",data:{requests:r},cacheable:!0},n)},F=e=>(t,n)=>Promise.all(t.map(t=>{const{facetName:r,facetQuery:i,...o}=t.params;return S(e)(t.indexName,{methods:{searchForFacetValues:we}}).searchForFacetValues(r,i,{...n,...o})})),B=e=>(t,n)=>{const r=(0,i.createMappedRequestOptions)(n);return r.queryParameters["X-Algolia-User-ID"]=t,e.transporter.write({method:o.N.Delete,path:"1/clusters/mapping"},r)},L=e=>(t,n)=>(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/keys/%s/restore",t)},n),(n,i)=>(0,r.createRetryablePromise)(n=>D(e)(t,i).catch(e=>{if(404!==e.status)throw e;return n()}))),U=e=>(t,n)=>e.transporter.read({method:o.N.Post,path:"1/clusters/mapping/search",data:{query:t}},n),j=e=>(t,n)=>{const i=Object.assign({},n),{queryParameters:u,...a}=n||{},l=u?{queryParameters:u}:{},s=["acl","indexes","referers","restrictSources","queryParameters","description","maxQueriesPerIPPerHour","maxHitsPerQuery"];return(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Put,path:(0,r.encode)("1/keys/%s",t),data:l},a),(n,o)=>(0,r.createRetryablePromise)(n=>D(e)(t,o).then(e=>(e=>Object.keys(i).filter(e=>-1!==s.indexOf(e)).every(t=>e[t]===i[t]))(e)?Promise.resolve():n())))},W=e=>(t,n)=>(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/batch",e.indexName),data:{requests:t}},n),(t,n)=>ke(e)(t.taskID,n)),z=e=>t=>a({...t,shouldStop:e=>void 0===e.cursor,request:n=>e.transporter.read({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/browse",e.indexName),data:n},t)}),q=e=>t=>{const n={hitsPerPage:1e3,...t};return a({...n,shouldStop:e=>e.hits.lengthEe(e)("",{...n,...t}).then(e=>({...e,hits:e.hits.map(e=>(delete e._highlightResult,e))}))})},H=e=>t=>{const n={hitsPerPage:1e3,...t};return a({...n,shouldStop:e=>e.hits.lengthCe(e)("",{...n,...t}).then(e=>({...e,hits:e.hits.map(e=>(delete e._highlightResult,e))}))})},G=e=>(t,n,i)=>{const{batchSize:o,...u}=i||{},a={taskIDs:[],objectIDs:[]},l=(r=0)=>{const i=[];let s;for(s=r;s({action:n,body:e})),u).then(e=>(a.objectIDs=a.objectIDs.concat(e.objectIDs),a.taskIDs.push(e.taskID),s++,l(s)))};return(0,r.createWaitablePromise)(l(),(t,n)=>Promise.all(t.taskIDs.map(t=>ke(e)(t,n))))},V=e=>t=>(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/clear",e.indexName)},t),(t,n)=>ke(e)(t.taskID,n)),Y=e=>t=>{const{forwardToReplicas:n,...u}=t||{},a=(0,i.createMappedRequestOptions)(u);return n&&(a.queryParameters.forwardToReplicas=1),(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/rules/clear",e.indexName)},a),(t,n)=>ke(e)(t.taskID,n))},K=e=>t=>{const{forwardToReplicas:n,...u}=t||{},a=(0,i.createMappedRequestOptions)(u);return n&&(a.queryParameters.forwardToReplicas=1),(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/synonyms/clear",e.indexName)},a),(t,n)=>ke(e)(t.taskID,n))},$=e=>(t,n)=>(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/deleteByQuery",e.indexName),data:t},n),(t,n)=>ke(e)(t.taskID,n)),X=e=>t=>(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Delete,path:(0,r.encode)("1/indexes/%s",e.indexName)},t),(t,n)=>ke(e)(t.taskID,n)),J=e=>(t,n)=>(0,r.createWaitablePromise)(Q(e)([t],n).then(e=>({taskID:e.taskIDs[0]})),(t,n)=>ke(e)(t.taskID,n)),Q=e=>(t,n)=>{const r=t.map(e=>({objectID:e}));return G(e)(r,Me.DeleteObject,n)},Z=e=>(t,n)=>{const{forwardToReplicas:u,...a}=n||{},l=(0,i.createMappedRequestOptions)(a);return u&&(l.queryParameters.forwardToReplicas=1),(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Delete,path:(0,r.encode)("1/indexes/%s/rules/%s",e.indexName,t)},l),(t,n)=>ke(e)(t.taskID,n))},ee=e=>(t,n)=>{const{forwardToReplicas:u,...a}=n||{},l=(0,i.createMappedRequestOptions)(a);return u&&(l.queryParameters.forwardToReplicas=1),(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Delete,path:(0,r.encode)("1/indexes/%s/synonyms/%s",e.indexName,t)},l),(t,n)=>ke(e)(t.taskID,n))},te=e=>t=>ae(e)(t).then(()=>!0).catch(e=>{if(404!==e.status)throw e;return!1}),ne=e=>(t,n)=>{const{query:r,paginate:i,...o}=n||{};let u=0;const a=()=>De(e)(r||"",{...o,page:u}).then(e=>{for(const[n,r]of Object.entries(e.hits))if(t(r))return{object:r,position:parseInt(n,10),page:u};if(u++,!1===i||u>=e.nbPages)throw{name:"ObjectNotFoundError",message:"Object not found."};return a()});return a()},re=e=>(t,n)=>e.transporter.read({method:o.N.Get,path:(0,r.encode)("1/indexes/%s/%s",e.indexName,t)},n),ie=()=>(e,t)=>{for(const[n,r]of Object.entries(e.hits))if(r.objectID===t)return parseInt(n,10);return-1},oe=e=>(t,n)=>{const{attributesToRetrieve:r,...i}=n||{},u=t.map(t=>({indexName:e.indexName,objectID:t,...r?{attributesToRetrieve:r}:{}}));return e.transporter.read({method:o.N.Post,path:"1/indexes/*/objects",data:{requests:u}},i)},ue=e=>(t,n)=>e.transporter.read({method:o.N.Get,path:(0,r.encode)("1/indexes/%s/rules/%s",e.indexName,t)},n),ae=e=>t=>e.transporter.read({method:o.N.Get,path:(0,r.encode)("1/indexes/%s/settings",e.indexName),data:{getVersion:2}},t),le=e=>(t,n)=>e.transporter.read({method:o.N.Get,path:(0,r.encode)("1/indexes/%s/synonyms/%s",e.indexName,t)},n),se=e=>(t,n)=>e.transporter.read({method:o.N.Get,path:(0,r.encode)("1/indexes/%s/task/%s",e.indexName,t.toString())},n),ce=e=>(t,n)=>(0,r.createWaitablePromise)(fe(e)([t],n).then(e=>({objectID:e.objectIDs[0],taskID:e.taskIDs[0]})),(t,n)=>ke(e)(t.taskID,n)),fe=e=>(t,n)=>{const{createIfNotExists:r,...i}=n||{},o=r?Me.PartialUpdateObject:Me.PartialUpdateObjectNoCreate;return G(e)(t,o,i)},de=e=>(t,n)=>{const{safe:i,autoGenerateObjectIDIfNotExist:u,batchSize:a,...l}=n||{},s=(t,n,i,u)=>(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/operation",t),data:{operation:i,destination:n}},u),(t,n)=>ke(e)(t.taskID,n)),c=Math.random().toString(36).substring(7),f=`${e.indexName}_tmp_${c}`,d=ve({appId:e.appId,transporter:e.transporter,indexName:f});let p=[];const h=s(e.indexName,f,"copy",{...l,scope:["settings","synonyms","rules"]});p.push(h);const m=(i?h.wait(l):h).then(()=>{const e=d(t,{...l,autoGenerateObjectIDIfNotExist:u,batchSize:a});return p.push(e),i?e.wait(l):e}).then(()=>{const t=s(f,e.indexName,"move",l);return p.push(t),i?t.wait(l):t}).then(()=>Promise.all(p)).then(([e,t,n])=>({objectIDs:t.objectIDs,taskIDs:[e.taskID,...t.taskIDs,n.taskID]}));return(0,r.createWaitablePromise)(m,(e,t)=>Promise.all(p.map(e=>e.wait(t))))},pe=e=>(t,n)=>ge(e)(t,{...n,clearExistingRules:!0}),he=e=>(t,n)=>ye(e)(t,{...n,replaceExistingSynonyms:!0}),me=e=>(t,n)=>(0,r.createWaitablePromise)(ve(e)([t],n).then(e=>({objectID:e.objectIDs[0],taskID:e.taskIDs[0]})),(t,n)=>ke(e)(t.taskID,n)),ve=e=>(t,n)=>{const{autoGenerateObjectIDIfNotExist:i,...o}=n||{},u=i?Me.AddObject:Me.UpdateObject;if(u===Me.UpdateObject)for(const e of t)if(void 0===e.objectID)return(0,r.createWaitablePromise)(Promise.reject({name:"MissingObjectIDError",message:"All objects must have an unique objectID (like a primary key) to be valid. Algolia is also able to generate objectIDs automatically but *it's not recommended*. To do it, use the `{'autoGenerateObjectIDIfNotExist': true}` option."}));return G(e)(t,u,o)},be=e=>(t,n)=>ge(e)([t],n),ge=e=>(t,n)=>{const{forwardToReplicas:u,clearExistingRules:a,...l}=n||{},s=(0,i.createMappedRequestOptions)(l);return u&&(s.queryParameters.forwardToReplicas=1),a&&(s.queryParameters.clearExistingRules=1),(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/rules/batch",e.indexName),data:t},s),(t,n)=>ke(e)(t.taskID,n))},_e=e=>(t,n)=>ye(e)([t],n),ye=e=>(t,n)=>{const{forwardToReplicas:u,replaceExistingSynonyms:a,...l}=n||{},s=(0,i.createMappedRequestOptions)(l);return u&&(s.queryParameters.forwardToReplicas=1),a&&(s.queryParameters.replaceExistingSynonyms=1),(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/synonyms/batch",e.indexName),data:t},s),(t,n)=>ke(e)(t.taskID,n))},De=e=>(t,n)=>e.transporter.read({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/query",e.indexName),data:{query:t},cacheable:!0},n),we=e=>(t,n,i)=>e.transporter.read({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/facets/%s/query",e.indexName,t),data:{facetQuery:n},cacheable:!0},i),Ee=e=>(t,n)=>e.transporter.read({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/rules/search",e.indexName),data:{query:t}},n),Ce=e=>(t,n)=>e.transporter.read({method:o.N.Post,path:(0,r.encode)("1/indexes/%s/synonyms/search",e.indexName),data:{query:t}},n),Te=e=>(t,n)=>{const{forwardToReplicas:u,...a}=n||{},l=(0,i.createMappedRequestOptions)(a);return u&&(l.queryParameters.forwardToReplicas=1),(0,r.createWaitablePromise)(e.transporter.write({method:o.N.Put,path:(0,r.encode)("1/indexes/%s/settings",e.indexName),data:t},l),(t,n)=>ke(e)(t.taskID,n))},ke=e=>(t,n)=>(0,r.createRetryablePromise)(r=>se(e)(t,n).then(e=>"published"!==e.status?r():void 0)),Se={AddObject:"addObject",Analytics:"analytics",Browser:"browse",DeleteIndex:"deleteIndex",DeleteObject:"deleteObject",EditSettings:"editSettings",ListIndexes:"listIndexes",Logs:"logs",Recommendation:"recommendation",Search:"search",SeeUnretrievableAttributes:"seeUnretrievableAttributes",Settings:"settings",Usage:"usage"},Me={AddObject:"addObject",UpdateObject:"updateObject",PartialUpdateObject:"partialUpdateObject",PartialUpdateObjectNoCreate:"partialUpdateObjectNoCreate",DeleteObject:"deleteObject"},xe={Settings:"settings",Synonyms:"synonyms",Rules:"rules"},Ae={None:"none",StopIfEnoughMatches:"stopIfEnoughMatches"},Pe={Synonym:"synonym",OneWaySynonym:"oneWaySynonym",AltCorrection1:"altCorrection1",AltCorrection2:"altCorrection2",Placeholder:"placeholder"}},8045:(e,t,n)=>{"use strict";function r(){return{debug:(e,t)=>Promise.resolve(),info:(e,t)=>Promise.resolve(),error:(e,t)=>Promise.resolve()}}n.r(t),n.d(t,{LogLevelEnum:()=>i,createNullLogger:()=>r});const i={Debug:1,Info:2,Error:3}},5541:(e,t,n)=>{"use strict";n.d(t,{N:()=>r});const r={Delete:"DELETE",Get:"GET",Post:"POST",Put:"PUT"}},9178:(e,t,n)=>{"use strict";n.r(t),n.d(t,{createNodeHttpRequester:()=>u});var r=n(8605),i=n(7211),o=n(8835);function u(){const e={keepAlive:!0},t=new r.Agent(e),n=new i.Agent(e);return{send:e=>new Promise(u=>{const a=(0,o.parse)(e.url),l=null===a.query?a.pathname:`${a.pathname}?${a.query}`,s={agent:"https:"===a.protocol?n:t,hostname:a.hostname,path:l,method:e.method,headers:e.headers,...void 0!==a.port?{port:a.port||""}:{}},c=("https:"===a.protocol?i:r).request(s,e=>{let t="";e.on("data",e=>t+=e),e.on("end",()=>{clearTimeout(d),clearTimeout(p),u({status:e.statusCode||0,content:t,isTimedOut:!1})})}),f=(e,t)=>setTimeout(()=>{c.abort(),u({status:0,content:t,isTimedOut:!0})},1e3*e),d=f(e.connectTimeout,"Connection timeout");let p;c.on("error",e=>{clearTimeout(d),clearTimeout(p),u({status:0,content:e.message,isTimedOut:!1})}),c.once("response",()=>{clearTimeout(d),p=f(e.responseTimeout,"Socket timeout")}),void 0!==e.data&&c.write(e.data),c.end()}),destroy:()=>(t.destroy(),n.destroy(),Promise.resolve())}}},7858:(e,t,n)=>{"use strict";n.r(t),n.d(t,{CallEnum:()=>o,HostStatusEnum:()=>u,createApiError:()=>w,createDeserializationError:()=>E,createMappedRequestOptions:()=>i,createRetryError:()=>C,createStatefulHost:()=>a,createStatelessHost:()=>c,createTransporter:()=>d,createUserAgent:()=>p,deserializeFailure:()=>m,deserializeSuccess:()=>h,isStatefulHostTimeouted:()=>s,isStatefulHostUp:()=>l,serializeData:()=>g,serializeHeaders:()=>_,serializeQueryParameters:()=>b,serializeUrl:()=>v,stackFrameWithoutCredentials:()=>D,stackTraceWithoutCredentials:()=>y});var r=n(5541);function i(e,t){const n=e||{},r=n.data||{};return Object.keys(n).forEach(e=>{-1===["timeout","headers","queryParameters","data","cacheable"].indexOf(e)&&(r[e]=n[e])}),{data:Object.entries(r).length>0?r:void 0,timeout:n.timeout||t,headers:n.headers||{},queryParameters:n.queryParameters||{},cacheable:n.cacheable}}const o={Read:1,Write:2,Any:3},u={Up:1,Down:2,Timeouted:3};function a(e,t=u.Up){return{...e,status:t,lastUpdate:Date.now()}}function l(e){return e.status===u.Up||Date.now()-e.lastUpdate>12e4}function s(e){return e.status===u.Timeouted&&Date.now()-e.lastUpdate<=12e4}function c(e){return{protocol:e.protocol||"https",url:e.url,accept:e.accept||o.Any}}function f(e,t,n,i){const o=[],f=g(n,i),d=_(e,i),p=n.method,b=n.method!==r.N.Get?{}:{...n.data,...i.data},w={"x-algolia-agent":e.userAgent.value,...e.queryParameters,...b,...i.queryParameters};let E=0;const T=(t,r)=>{const l=t.pop();if(void 0===l)throw C(y(o));const s={data:f,headers:d,method:p,url:v(l,n.path,w),connectTimeout:r(E,e.timeouts.connect),responseTimeout:r(E,i.timeout)},c=e=>{const n={request:s,response:e,host:l,triesLeft:t.length};return o.push(n),n},b={onSucess:e=>h(e),onRetry(n){const i=c(n);return n.isTimedOut&&E++,Promise.all([e.logger.info("Retryable failure",D(i)),e.hostsCache.set(l,a(l,n.isTimedOut?u.Timeouted:u.Down))]).then(()=>T(t,r))},onFail(e){throw c(e),m(e,y(o))}};return e.requester.send(s).then(e=>((e,t)=>(e=>{const t=e.status;return e.isTimedOut||(({isTimedOut:e,status:t})=>!e&&0==~~t)(e)||2!=~~(t/100)&&4!=~~(t/100)})(e)?t.onRetry(e):(({status:e})=>2==~~(e/100))(e)?t.onSucess(e):t.onFail(e))(e,b))};return function(e,t){return Promise.all(t.map(t=>e.get(t,()=>Promise.resolve(a(t))))).then(e=>{const n=e.filter(e=>l(e)),r=e.filter(e=>s(e)),i=[...n,...r];return{getTimeout:(e,t)=>(0===r.length&&0===e?1:r.length+3+e)*t,statelessHosts:i.length>0?i.map(e=>c(e)):t}})}(e.hostsCache,t).then(e=>T([...e.statelessHosts].reverse(),e.getTimeout))}function d(e){const{hostsCache:t,logger:n,requester:r,requestsCache:u,responsesCache:a,timeouts:l,userAgent:s,hosts:d,queryParameters:p,headers:h}=e,m={hostsCache:t,logger:n,requester:r,requestsCache:u,responsesCache:a,timeouts:l,userAgent:s,headers:h,queryParameters:p,hosts:d.map(e=>c(e)),read(e,t){const n=i(t,m.timeouts.read),r=()=>f(m,m.hosts.filter(e=>0!=(e.accept&o.Read)),e,n);if(!0!==(void 0!==n.cacheable?n.cacheable:e.cacheable))return r();const u={request:e,mappedRequestOptions:n,transporter:{queryParameters:m.queryParameters,headers:m.headers}};return m.responsesCache.get(u,()=>m.requestsCache.get(u,()=>m.requestsCache.set(u,r()).then(e=>Promise.all([m.requestsCache.delete(u),e]),e=>Promise.all([m.requestsCache.delete(u),Promise.reject(e)])).then(([e,t])=>t)),{miss:e=>m.responsesCache.set(u,e)})},write:(e,t)=>f(m,m.hosts.filter(e=>0!=(e.accept&o.Write)),e,i(t,m.timeouts.write))};return m}function p(e){const t={value:`Algolia for JavaScript (${e})`,add(e){const n=`; ${e.segment}${void 0!==e.version?` (${e.version})`:""}`;return-1===t.value.indexOf(n)&&(t.value=`${t.value}${n}`),t}};return t}function h(e){try{return JSON.parse(e.content)}catch(t){throw E(t.message,e)}}function m({content:e,status:t},n){let r=e;try{r=JSON.parse(e).message}catch(e){}return w(r,t,n)}function v(e,t,n){const r=b(n);let i=`${e.protocol}://${e.url}/${"/"===t.charAt(0)?t.substr(1):t}`;return r.length&&(i+="?"+r),i}function b(e){return Object.keys(e).map(t=>{return function(e,...t){let n=0;return e.replace(/%s/g,()=>encodeURIComponent(t[n++]))}("%s=%s",t,(n=e[t],"[object Object]"===Object.prototype.toString.call(n)||"[object Array]"===Object.prototype.toString.call(n)?JSON.stringify(e[t]):e[t]));var n}).join("&")}function g(e,t){if(e.method===r.N.Get||void 0===e.data&&void 0===t.data)return;const n=Array.isArray(e.data)?e.data:{...e.data,...t.data};return JSON.stringify(n)}function _(e,t){const n={...e.headers,...t.headers},r={};return Object.keys(n).forEach(e=>{const t=n[e];r[e.toLowerCase()]=t}),r}function y(e){return e.map(e=>D(e))}function D(e){const t=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return{...e,request:{...e.request,headers:{...e.request.headers,...t}}}}function w(e,t,n){return{name:"ApiError",message:e,status:t,transporterStackTrace:n}}function E(e,t){return{name:"DeserializationError",message:e,response:t}}function C(e){return{name:"RetryError",message:"Unreachable hosts - your application id may be incorrect. If the error persists, contact support@algolia.com.",transporterStackTrace:e}}},8774:(e,t,n)=>{"use strict";var r=n(469),i=n(6712),o=n(2223),u=n(1757),a=n(103),l=n(6586),s=n(8045),c=n(9178),f=n(7858);function d(e,t,n){const d={appId:e,apiKey:t,timeouts:{connect:2,read:5,write:30},requester:c.createNodeHttpRequester(),logger:s.createNullLogger(),responsesCache:r.createNullCache(),requestsCache:r.createNullCache(),hostsCache:i.createInMemoryCache(),userAgent:f.createUserAgent(u.version).add({segment:"Node.js",version:process.versions.node})};return l.createSearchClient({...d,...n,methods:{search:l.multipleQueries,searchForFacetValues:l.multipleSearchForFacetValues,multipleBatch:l.multipleBatch,multipleGetObjects:l.multipleGetObjects,multipleQueries:l.multipleQueries,copyIndex:l.copyIndex,copySettings:l.copySettings,copyRules:l.copyRules,copySynonyms:l.copySynonyms,moveIndex:l.moveIndex,listIndices:l.listIndices,getLogs:l.getLogs,listClusters:l.listClusters,multipleSearchForFacetValues:l.multipleSearchForFacetValues,getApiKey:l.getApiKey,addApiKey:l.addApiKey,listApiKeys:l.listApiKeys,updateApiKey:l.updateApiKey,deleteApiKey:l.deleteApiKey,restoreApiKey:l.restoreApiKey,assignUserID:l.assignUserID,assignUserIDs:l.assignUserIDs,getUserID:l.getUserID,searchUserIDs:l.searchUserIDs,listUserIDs:l.listUserIDs,getTopUserIDs:l.getTopUserIDs,removeUserID:l.removeUserID,hasPendingMappings:l.hasPendingMappings,generateSecuredApiKey:l.generateSecuredApiKey,getSecuredApiKeyRemainingValidity:l.getSecuredApiKeyRemainingValidity,destroy:u.destroy,initIndex:e=>t=>l.initIndex(e)(t,{methods:{batch:l.batch,delete:l.deleteIndex,getObject:l.getObject,getObjects:l.getObjects,saveObject:l.saveObject,saveObjects:l.saveObjects,search:l.search,searchForFacetValues:l.searchForFacetValues,waitTask:l.waitTask,setSettings:l.setSettings,getSettings:l.getSettings,partialUpdateObject:l.partialUpdateObject,partialUpdateObjects:l.partialUpdateObjects,deleteObject:l.deleteObject,deleteObjects:l.deleteObjects,deleteBy:l.deleteBy,clearObjects:l.clearObjects,browseObjects:l.browseObjects,getObjectPosition:l.getObjectPosition,findObject:l.findObject,exists:l.exists,saveSynonym:l.saveSynonym,saveSynonyms:l.saveSynonyms,getSynonym:l.getSynonym,searchSynonyms:l.searchSynonyms,browseSynonyms:l.browseSynonyms,deleteSynonym:l.deleteSynonym,clearSynonyms:l.clearSynonyms,replaceAllObjects:l.replaceAllObjects,replaceAllSynonyms:l.replaceAllSynonyms,searchRules:l.searchRules,getRule:l.getRule,deleteRule:l.deleteRule,saveRule:l.saveRule,saveRules:l.saveRules,replaceAllRules:l.replaceAllRules,browseRules:l.browseRules,clearRules:l.clearRules}}),initAnalytics:()=>e=>o.createAnalyticsClient({...d,...e,methods:{addABTest:o.addABTest,getABTest:o.getABTest,getABTests:o.getABTests,stopABTest:o.stopABTest,deleteABTest:o.deleteABTest}}),initRecommendation:()=>e=>a.createRecommendationClient({...d,...e,methods:{getPersonalizationStrategy:a.getPersonalizationStrategy,setPersonalizationStrategy:a.setPersonalizationStrategy}})}})}d.version=u.version,e.exports=d},4410:(e,t,n)=>{const r=n(8774);e.exports=r,e.exports.default=r},327:e=>{"use strict";const t=e.exports,n="[",r="]",i="",o=";",u="Apple_Terminal"===process.env.TERM_PROGRAM;t.cursorTo=(e,t)=>{if("number"!=typeof e)throw new TypeError("The `x` argument is required");return"number"!=typeof t?n+(e+1)+"G":n+(t+1)+";"+(e+1)+"H"},t.cursorMove=(e,t)=>{if("number"!=typeof e)throw new TypeError("The `x` argument is required");let r="";return e<0?r+=n+-e+"D":e>0&&(r+=n+e+"C"),t<0?r+=n+-t+"A":t>0&&(r+=n+t+"B"),r},t.cursorUp=e=>n+("number"==typeof e?e:1)+"A",t.cursorDown=e=>n+("number"==typeof e?e:1)+"B",t.cursorForward=e=>n+("number"==typeof e?e:1)+"C",t.cursorBackward=e=>n+("number"==typeof e?e:1)+"D",t.cursorLeft="",t.cursorSavePosition=n+(u?"7":"s"),t.cursorRestorePosition=n+(u?"8":"u"),t.cursorGetPosition="",t.cursorNextLine="",t.cursorPrevLine="",t.cursorHide="[?25l",t.cursorShow="[?25h",t.eraseLines=e=>{let n="";for(let r=0;r[r,"8",o,o,t,i,e,r,"8",o,o,i].join(""),t.image=(e,t)=>{let n=r+"1337;File=inline=1";return(t=t||{}).width&&(n+=";width="+t.width),t.height&&(n+=";height="+t.height),!1===t.preserveAspectRatio&&(n+=";preserveAspectRatio=0"),n+":"+e.toString("base64")+i},t.iTerm={},t.iTerm.setCwd=e=>r+"50;CurrentDir="+(e||process.cwd())+i},7788:e=>{"use strict";e.exports=()=>{const e=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:[a-zA-Z\\d]*(?:;[a-zA-Z\\d]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PRZcf-ntqry=><~]))"].join("|");return new RegExp(e,"g")}},5378:e=>{"use strict";e.exports=e=>{e=Object.assign({onlyFirst:!1},e);const t=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:[a-zA-Z\\d]*(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"].join("|");return new RegExp(t,e.onlyFirst?void 0:"g")}},5256:(e,t,n)=>{"use strict";e=n.nmd(e);const r=n(7410),i=(e,t)=>function(){const n=e.apply(r,arguments);return`[${n+t}m`},o=(e,t)=>function(){const n=e.apply(r,arguments);return`[${38+t};5;${n}m`},u=(e,t)=>function(){const n=e.apply(r,arguments);return`[${38+t};2;${n[0]};${n[1]};${n[2]}m`};Object.defineProperty(e,"exports",{enumerable:!0,get:function(){const e=new Map,t={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],gray:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};t.color.grey=t.color.gray;for(const n of Object.keys(t)){const r=t[n];for(const n of Object.keys(r)){const i=r[n];t[n]={open:`[${i[0]}m`,close:`[${i[1]}m`},r[n]=t[n],e.set(i[0],i[1])}Object.defineProperty(t,n,{value:r,enumerable:!1}),Object.defineProperty(t,"codes",{value:e,enumerable:!1})}const n=e=>e,a=(e,t,n)=>[e,t,n];t.color.close="",t.bgColor.close="",t.color.ansi={ansi:i(n,0)},t.color.ansi256={ansi256:o(n,0)},t.color.ansi16m={rgb:u(a,0)},t.bgColor.ansi={ansi:i(n,10)},t.bgColor.ansi256={ansi256:o(n,10)},t.bgColor.ansi16m={rgb:u(a,10)};for(let e of Object.keys(r)){if("object"!=typeof r[e])continue;const n=r[e];"ansi16"===e&&(e="ansi"),"ansi16"in n&&(t.color.ansi[e]=i(n.ansi16,0),t.bgColor.ansi[e]=i(n.ansi16,10)),"ansi256"in n&&(t.color.ansi256[e]=o(n.ansi256,0),t.bgColor.ansi256[e]=o(n.ansi256,10)),"rgb"in n&&(t.color.ansi16m[e]=u(n.rgb,0),t.bgColor.ansi16m[e]=u(n.rgb,10))}return t}})},8483:(e,t,n)=>{"use strict";e=n.nmd(e);const r=(e,t)=>(...n)=>`[${e(...n)+t}m`,i=(e,t)=>(...n)=>{const r=e(...n);return`[${38+t};5;${r}m`},o=(e,t)=>(...n)=>{const r=e(...n);return`[${38+t};2;${r[0]};${r[1]};${r[2]}m`},u=e=>e,a=(e,t,n)=>[e,t,n],l=(e,t,n)=>{Object.defineProperty(e,t,{get:()=>{const r=n();return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0}),r},enumerable:!0,configurable:!0})};let s;const c=(e,t,r,i)=>{void 0===s&&(s=n(2744));const o=i?10:0,u={};for(const[n,i]of Object.entries(s)){const a="ansi16"===n?"ansi":n;n===t?u[a]=e(r,o):"object"==typeof i&&(u[a]=e(i[t],o))}return u};Object.defineProperty(e,"exports",{enumerable:!0,get:function(){const e=new Map,t={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};t.color.gray=t.color.blackBright,t.bgColor.bgGray=t.bgColor.bgBlackBright,t.color.grey=t.color.blackBright,t.bgColor.bgGrey=t.bgColor.bgBlackBright;for(const[n,r]of Object.entries(t)){for(const[n,i]of Object.entries(r))t[n]={open:`[${i[0]}m`,close:`[${i[1]}m`},r[n]=t[n],e.set(i[0],i[1]);Object.defineProperty(t,n,{value:r,enumerable:!1})}return Object.defineProperty(t,"codes",{value:e,enumerable:!1}),t.color.close="",t.bgColor.close="",l(t.color,"ansi",()=>c(r,"ansi16",u,!1)),l(t.color,"ansi256",()=>c(i,"ansi256",u,!1)),l(t.color,"ansi16m",()=>c(o,"rgb",a,!1)),l(t.bgColor,"ansi",()=>c(r,"ansi16",u,!0)),l(t.bgColor,"ansi256",()=>c(i,"ansi256",u,!0)),l(t.bgColor,"ansi16m",()=>c(o,"rgb",a,!0)),t}})},3810:e=>{"use strict";e.exports=function(e){return null==e?[]:Array.isArray(e)?e:[e]}},5640:e=>{"use strict";e.exports=e=>e&&e.exact?new RegExp("^[\ud800-\udbff][\udc00-\udfff]$"):new RegExp("[\ud800-\udbff][\udc00-\udfff]","g")},2939:(e,t,n)=>{"use strict";e=n.nmd(e);e.exports=(e,t)=>{t=Object.assign({},t);const n=e=>{const n=t=>"string"==typeof t?e===t:t.test(e);return t.include?t.include.some(n):!t.exclude||!t.exclude.some(n)};for(const[t,r]of(e=>{const t=new Set;do{for(const n of Reflect.ownKeys(e))t.add([e,n])}while((e=Reflect.getPrototypeOf(e))&&e!==Object.prototype);return t})(e.constructor.prototype)){if("constructor"===r||!n(r))continue;const i=Reflect.getOwnPropertyDescriptor(t,r);i&&"function"==typeof i.value&&(e[r]=e[r].bind(e))}return e};const r=["componentWillMount","UNSAFE_componentWillMount","render","getSnapshotBeforeUpdate","componentDidMount","componentWillReceiveProps","UNSAFE_componentWillReceiveProps","shouldComponentUpdate","componentWillUpdate","UNSAFE_componentWillUpdate","componentDidUpdate","componentWillUnmount","componentDidCatch","setState","forceUpdate"];e.exports.react=(t,n)=>((n=Object.assign({},n)).exclude=(n.exclude||[]).concat(r),e.exports(t,n))},9244:(e,t,n)=>{"use strict";const r=n(6349),i=n(5256),o=n(5180).stdout,u=n(2831),a="win32"===process.platform&&!(process.env.TERM||"").toLowerCase().startsWith("xterm"),l=["ansi","ansi","ansi256","ansi16m"],s=new Set(["gray"]),c=Object.create(null);function f(e,t){t=t||{};const n=o?o.level:0;e.level=void 0===t.level?n:t.level,e.enabled="enabled"in t?t.enabled:e.level>0}function d(e){if(!this||!(this instanceof d)||this.template){const t={};return f(t,e),t.template=function(){const e=[].slice.call(arguments);return v.apply(null,[t.template].concat(e))},Object.setPrototypeOf(t,d.prototype),Object.setPrototypeOf(t.template,t),t.template.constructor=d,t.template}f(this,e)}a&&(i.blue.open="");for(const e of Object.keys(i))i[e].closeRe=new RegExp(r(i[e].close),"g"),c[e]={get(){const t=i[e];return h.call(this,this._styles?this._styles.concat(t):[t],this._empty,e)}};c.visible={get(){return h.call(this,this._styles||[],!0,"visible")}},i.color.closeRe=new RegExp(r(i.color.close),"g");for(const e of Object.keys(i.color.ansi))s.has(e)||(c[e]={get(){const t=this.level;return function(){const n=i.color[l[t]][e].apply(null,arguments),r={open:n,close:i.color.close,closeRe:i.color.closeRe};return h.call(this,this._styles?this._styles.concat(r):[r],this._empty,e)}}});i.bgColor.closeRe=new RegExp(r(i.bgColor.close),"g");for(const e of Object.keys(i.bgColor.ansi)){if(s.has(e))continue;c["bg"+e[0].toUpperCase()+e.slice(1)]={get(){const t=this.level;return function(){const n=i.bgColor[l[t]][e].apply(null,arguments),r={open:n,close:i.bgColor.close,closeRe:i.bgColor.closeRe};return h.call(this,this._styles?this._styles.concat(r):[r],this._empty,e)}}}}const p=Object.defineProperties(()=>{},c);function h(e,t,n){const r=function(){return m.apply(r,arguments)};r._styles=e,r._empty=t;const i=this;return Object.defineProperty(r,"level",{enumerable:!0,get:()=>i.level,set(e){i.level=e}}),Object.defineProperty(r,"enabled",{enumerable:!0,get:()=>i.enabled,set(e){i.enabled=e}}),r.hasGrey=this.hasGrey||"gray"===n||"grey"===n,r.__proto__=p,r}function m(){const e=arguments,t=e.length;let n=String(arguments[0]);if(0===t)return"";if(t>1)for(let r=1;r{"use strict";const t=/(?:\\(u[a-f\d]{4}|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,n=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,r=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,i=/\\(u[a-f\d]{4}|x[a-f\d]{2}|.)|([^\\])/gi,o=new Map([["n","\n"],["r","\r"],["t","\t"],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e",""],["a",""]]);function u(e){return"u"===e[0]&&5===e.length||"x"===e[0]&&3===e.length?String.fromCharCode(parseInt(e.slice(1),16)):o.get(e)||e}function a(e,t){const n=[],o=t.trim().split(/\s*,\s*/g);let a;for(const t of o)if(isNaN(t)){if(!(a=t.match(r)))throw new Error(`Invalid Chalk template style argument: ${t} (in style '${e}')`);n.push(a[2].replace(i,(e,t,n)=>t?u(t):n))}else n.push(Number(t));return n}function l(e){n.lastIndex=0;const t=[];let r;for(;null!==(r=n.exec(e));){const e=r[1];if(r[2]){const n=a(e,r[2]);t.push([e].concat(n))}else t.push([e])}return t}function s(e,t){const n={};for(const e of t)for(const t of e.styles)n[t[0]]=e.inverse?null:t.slice(1);let r=e;for(const e of Object.keys(n))if(Array.isArray(n[e])){if(!(e in r))throw new Error("Unknown Chalk style: "+e);r=n[e].length>0?r[e].apply(r,n[e]):r[e]}return r}e.exports=(e,n)=>{const r=[],i=[];let o=[];if(n.replace(t,(t,n,a,c,f,d)=>{if(n)o.push(u(n));else if(c){const t=o.join("");o=[],i.push(0===r.length?t:s(e,r)(t)),r.push({inverse:a,styles:l(c)})}else if(f){if(0===r.length)throw new Error("Found extraneous } in Chalk template literal");i.push(s(e,r)(o.join(""))),o=[],r.pop()}else o.push(d)}),i.push(o.join("")),r.length>0){const e=`Chalk template literal is missing ${r.length} closing bracket${1===r.length?"":"s"} (\`}\`)`;throw new Error(e)}return i.join("")}},5882:(e,t,n)=>{"use strict";const r=n(8483),{stdout:i,stderr:o}=n(9428),{stringReplaceAll:u,stringEncaseCRLFWithFirstIndex:a}=n(3327),l=["ansi","ansi","ansi256","ansi16m"],s=Object.create(null);class c{constructor(e){return f(e)}}const f=e=>{const t={};return((e,t={})=>{if(t.level>3||t.level<0)throw new Error("The `level` option should be an integer from 0 to 3");const n=i?i.level:0;e.level=void 0===t.level?n:t.level})(t,e),t.template=(...e)=>_(t.template,...e),Object.setPrototypeOf(t,d.prototype),Object.setPrototypeOf(t.template,t),t.template.constructor=()=>{throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.")},t.template.Instance=c,t.template};function d(e){return f(e)}for(const[e,t]of Object.entries(r))s[e]={get(){const n=v(this,m(t.open,t.close,this._styler),this._isEmpty);return Object.defineProperty(this,e,{value:n}),n}};s.visible={get(){const e=v(this,this._styler,!0);return Object.defineProperty(this,"visible",{value:e}),e}};const p=["rgb","hex","keyword","hsl","hsv","hwb","ansi","ansi256"];for(const e of p)s[e]={get(){const{level:t}=this;return function(...n){const i=m(r.color[l[t]][e](...n),r.color.close,this._styler);return v(this,i,this._isEmpty)}}};for(const e of p){s["bg"+e[0].toUpperCase()+e.slice(1)]={get(){const{level:t}=this;return function(...n){const i=m(r.bgColor[l[t]][e](...n),r.bgColor.close,this._styler);return v(this,i,this._isEmpty)}}}}const h=Object.defineProperties(()=>{},{...s,level:{enumerable:!0,get(){return this._generator.level},set(e){this._generator.level=e}}}),m=(e,t,n)=>{let r,i;return void 0===n?(r=e,i=t):(r=n.openAll+e,i=t+n.closeAll),{open:e,close:t,openAll:r,closeAll:i,parent:n}},v=(e,t,n)=>{const r=(...e)=>b(r,1===e.length?""+e[0]:e.join(" "));return r.__proto__=h,r._generator=e,r._styler=t,r._isEmpty=n,r},b=(e,t)=>{if(e.level<=0||!t)return e._isEmpty?"":t;let n=e._styler;if(void 0===n)return t;const{openAll:r,closeAll:i}=n;if(-1!==t.indexOf(""))for(;void 0!==n;)t=u(t,n.close,n.open),n=n.parent;const o=t.indexOf("\n");return-1!==o&&(t=a(t,i,r,o)),r+t+i};let g;const _=(e,...t)=>{const[r]=t;if(!Array.isArray(r))return t.join(" ");const i=t.slice(1),o=[r.raw[0]];for(let e=1;e{"use strict";const t=/(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,n=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,r=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,i=/\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.)|([^\\])/gi,o=new Map([["n","\n"],["r","\r"],["t","\t"],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e",""],["a",""]]);function u(e){const t="u"===e[0],n="{"===e[1];return t&&!n&&5===e.length||"x"===e[0]&&3===e.length?String.fromCharCode(parseInt(e.slice(1),16)):t&&n?String.fromCodePoint(parseInt(e.slice(2,-1),16)):o.get(e)||e}function a(e,t){const n=[],o=t.trim().split(/\s*,\s*/g);let a;for(const t of o){const o=Number(t);if(Number.isNaN(o)){if(!(a=t.match(r)))throw new Error(`Invalid Chalk template style argument: ${t} (in style '${e}')`);n.push(a[2].replace(i,(e,t,n)=>t?u(t):n))}else n.push(o)}return n}function l(e){n.lastIndex=0;const t=[];let r;for(;null!==(r=n.exec(e));){const e=r[1];if(r[2]){const n=a(e,r[2]);t.push([e].concat(n))}else t.push([e])}return t}function s(e,t){const n={};for(const e of t)for(const t of e.styles)n[t[0]]=e.inverse?null:t.slice(1);let r=e;for(const[e,t]of Object.entries(n))if(Array.isArray(t)){if(!(e in r))throw new Error("Unknown Chalk style: "+e);r=t.length>0?r[e](...t):r[e]}return r}e.exports=(e,n)=>{const r=[],i=[];let o=[];if(n.replace(t,(t,n,a,c,f,d)=>{if(n)o.push(u(n));else if(c){const t=o.join("");o=[],i.push(0===r.length?t:s(e,r)(t)),r.push({inverse:a,styles:l(c)})}else if(f){if(0===r.length)throw new Error("Found extraneous } in Chalk template literal");i.push(s(e,r)(o.join(""))),o=[],r.pop()}else o.push(d)}),i.push(o.join("")),r.length>0){const e=`Chalk template literal is missing ${r.length} closing bracket${1===r.length?"":"s"} (\`}\`)`;throw new Error(e)}return i.join("")}},3327:e=>{"use strict";e.exports={stringReplaceAll:(e,t,n)=>{let r=e.indexOf(t);if(-1===r)return e;const i=t.length;let o=0,u="";do{u+=e.substr(o,r-o)+t+n,o=r+i,r=e.indexOf(t,o)}while(-1!==r);return u+=e.substr(o),u},stringEncaseCRLFWithFirstIndex:(e,t,n,r)=>{let i=0,o="";do{const u="\r"===e[r-1];o+=e.substr(i,(u?r-1:r)-i)+t+(u?"\r\n":"\n")+n,i=r+1,r=e.indexOf("\n",i)}while(-1!==r);return o+=e.substr(i),o}}},5864:(e,t,n)=>{"use strict";var r=n(5832),i=process.env;function o(e){return"string"==typeof e?!!i[e]:Object.keys(e).every((function(t){return i[t]===e[t]}))}Object.defineProperty(t,"_vendors",{value:r.map((function(e){return e.constant}))}),t.name=null,t.isPR=null,r.forEach((function(e){var n=(Array.isArray(e.env)?e.env:[e.env]).every((function(e){return o(e)}));if(t[e.constant]=n,n)switch(t.name=e.name,typeof e.pr){case"string":t.isPR=!!i[e.pr];break;case"object":"env"in e.pr?t.isPR=e.pr.env in i&&i[e.pr.env]!==e.pr.ne:"any"in e.pr?t.isPR=e.pr.any.some((function(e){return!!i[e]})):t.isPR=o(e.pr);break;default:t.isPR=null}})),t.isCI=!!(i.CI||i.CONTINUOUS_INTEGRATION||i.BUILD_NUMBER||i.RUN_ID||t.name)},5832:e=>{"use strict";e.exports=JSON.parse('[{"name":"AppVeyor","constant":"APPVEYOR","env":"APPVEYOR","pr":"APPVEYOR_PULL_REQUEST_NUMBER"},{"name":"Azure Pipelines","constant":"AZURE_PIPELINES","env":"SYSTEM_TEAMFOUNDATIONCOLLECTIONURI","pr":"SYSTEM_PULLREQUEST_PULLREQUESTID"},{"name":"Bamboo","constant":"BAMBOO","env":"bamboo_planKey"},{"name":"Bitbucket Pipelines","constant":"BITBUCKET","env":"BITBUCKET_COMMIT","pr":"BITBUCKET_PR_ID"},{"name":"Bitrise","constant":"BITRISE","env":"BITRISE_IO","pr":"BITRISE_PULL_REQUEST"},{"name":"Buddy","constant":"BUDDY","env":"BUDDY_WORKSPACE_ID","pr":"BUDDY_EXECUTION_PULL_REQUEST_ID"},{"name":"Buildkite","constant":"BUILDKITE","env":"BUILDKITE","pr":{"env":"BUILDKITE_PULL_REQUEST","ne":"false"}},{"name":"CircleCI","constant":"CIRCLE","env":"CIRCLECI","pr":"CIRCLE_PULL_REQUEST"},{"name":"Cirrus CI","constant":"CIRRUS","env":"CIRRUS_CI","pr":"CIRRUS_PR"},{"name":"AWS CodeBuild","constant":"CODEBUILD","env":"CODEBUILD_BUILD_ARN"},{"name":"Codeship","constant":"CODESHIP","env":{"CI_NAME":"codeship"}},{"name":"Drone","constant":"DRONE","env":"DRONE","pr":{"DRONE_BUILD_EVENT":"pull_request"}},{"name":"dsari","constant":"DSARI","env":"DSARI"},{"name":"GitLab CI","constant":"GITLAB","env":"GITLAB_CI"},{"name":"GoCD","constant":"GOCD","env":"GO_PIPELINE_LABEL"},{"name":"Hudson","constant":"HUDSON","env":"HUDSON_URL"},{"name":"Jenkins","constant":"JENKINS","env":["JENKINS_URL","BUILD_ID"],"pr":{"any":["ghprbPullId","CHANGE_ID"]}},{"name":"Magnum CI","constant":"MAGNUM","env":"MAGNUM"},{"name":"Netlify CI","constant":"NETLIFY","env":"NETLIFY_BUILD_BASE","pr":{"env":"PULL_REQUEST","ne":"false"}},{"name":"Sail CI","constant":"SAIL","env":"SAILCI","pr":"SAIL_PULL_REQUEST_NUMBER"},{"name":"Semaphore","constant":"SEMAPHORE","env":"SEMAPHORE","pr":"PULL_REQUEST_NUMBER"},{"name":"Shippable","constant":"SHIPPABLE","env":"SHIPPABLE","pr":{"IS_PULL_REQUEST":"true"}},{"name":"Solano CI","constant":"SOLANO","env":"TDDIUM","pr":"TDDIUM_PR_ID"},{"name":"Strider CD","constant":"STRIDER","env":"STRIDER"},{"name":"TaskCluster","constant":"TASKCLUSTER","env":["TASK_ID","RUN_ID"]},{"name":"TeamCity","constant":"TEAMCITY","env":"TEAMCITY_VERSION"},{"name":"Travis CI","constant":"TRAVIS","env":"TRAVIS","pr":{"env":"TRAVIS_PULL_REQUEST","ne":"false"}}]')},1305:(e,t,n)=>{"use strict";const r=n(2428);let i=!1;t.show=e=>{const t=e||process.stderr;t.isTTY&&(i=!1,t.write("[?25h"))},t.hide=e=>{const t=e||process.stderr;t.isTTY&&(r(),i=!0,t.write("[?25l"))},t.toggle=(e,n)=>{void 0!==e&&(i=e),i?t.show(n):t.hide(n)}},4093:(e,t,n)=>{"use strict";const r=n(7498),i=n(5478);e.exports=(e,t,n)=>{const o=(n=Object.assign({position:"end"},n)).position;if("string"!=typeof e)throw new TypeError("Expected `input` to be a string, got "+typeof e);if("number"!=typeof t)throw new TypeError("Expected `columns` to be a number, got "+typeof t);if(t<1)return"";if(1===t)return"…";const u=i(e);if(u<=t)return e;if("start"===o)return"…"+r(e,u-t+1,u);if("middle"===o){const n=Math.floor(t/2);return r(e,0,n)+"…"+r(e,u-(t-n)+1,u)}if("end"===o)return r(e,0,t-1)+"…";throw new Error("Expected `options.position` to be either `start`, `middle` or `end`, got "+o)}},9486:(e,t,n)=>{var r=n(3110),i={};for(var o in r)r.hasOwnProperty(o)&&(i[r[o]]=o);var u=e.exports={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};for(var a in u)if(u.hasOwnProperty(a)){if(!("channels"in u[a]))throw new Error("missing channels property: "+a);if(!("labels"in u[a]))throw new Error("missing channel labels property: "+a);if(u[a].labels.length!==u[a].channels)throw new Error("channel and label counts mismatch: "+a);var l=u[a].channels,s=u[a].labels;delete u[a].channels,delete u[a].labels,Object.defineProperty(u[a],"channels",{value:l}),Object.defineProperty(u[a],"labels",{value:s})}u.rgb.hsl=function(e){var t,n,r=e[0]/255,i=e[1]/255,o=e[2]/255,u=Math.min(r,i,o),a=Math.max(r,i,o),l=a-u;return a===u?t=0:r===a?t=(i-o)/l:i===a?t=2+(o-r)/l:o===a&&(t=4+(r-i)/l),(t=Math.min(60*t,360))<0&&(t+=360),n=(u+a)/2,[t,100*(a===u?0:n<=.5?l/(a+u):l/(2-a-u)),100*n]},u.rgb.hsv=function(e){var t,n,r,i,o,u=e[0]/255,a=e[1]/255,l=e[2]/255,s=Math.max(u,a,l),c=s-Math.min(u,a,l),f=function(e){return(s-e)/6/c+.5};return 0===c?i=o=0:(o=c/s,t=f(u),n=f(a),r=f(l),u===s?i=r-n:a===s?i=1/3+t-r:l===s&&(i=2/3+n-t),i<0?i+=1:i>1&&(i-=1)),[360*i,100*o,100*s]},u.rgb.hwb=function(e){var t=e[0],n=e[1],r=e[2];return[u.rgb.hsl(e)[0],100*(1/255*Math.min(t,Math.min(n,r))),100*(r=1-1/255*Math.max(t,Math.max(n,r)))]},u.rgb.cmyk=function(e){var t,n=e[0]/255,r=e[1]/255,i=e[2]/255;return[100*((1-n-(t=Math.min(1-n,1-r,1-i)))/(1-t)||0),100*((1-r-t)/(1-t)||0),100*((1-i-t)/(1-t)||0),100*t]},u.rgb.keyword=function(e){var t=i[e];if(t)return t;var n,o,u,a=1/0;for(var l in r)if(r.hasOwnProperty(l)){var s=r[l],c=(o=e,u=s,Math.pow(o[0]-u[0],2)+Math.pow(o[1]-u[1],2)+Math.pow(o[2]-u[2],2));c.04045?Math.pow((t+.055)/1.055,2.4):t/12.92)+.3576*(n=n>.04045?Math.pow((n+.055)/1.055,2.4):n/12.92)+.1805*(r=r>.04045?Math.pow((r+.055)/1.055,2.4):r/12.92)),100*(.2126*t+.7152*n+.0722*r),100*(.0193*t+.1192*n+.9505*r)]},u.rgb.lab=function(e){var t=u.rgb.xyz(e),n=t[0],r=t[1],i=t[2];return r/=100,i/=108.883,n=(n/=95.047)>.008856?Math.pow(n,1/3):7.787*n+16/116,[116*(r=r>.008856?Math.pow(r,1/3):7.787*r+16/116)-16,500*(n-r),200*(r-(i=i>.008856?Math.pow(i,1/3):7.787*i+16/116))]},u.hsl.rgb=function(e){var t,n,r,i,o,u=e[0]/360,a=e[1]/100,l=e[2]/100;if(0===a)return[o=255*l,o,o];t=2*l-(n=l<.5?l*(1+a):l+a-l*a),i=[0,0,0];for(var s=0;s<3;s++)(r=u+1/3*-(s-1))<0&&r++,r>1&&r--,o=6*r<1?t+6*(n-t)*r:2*r<1?n:3*r<2?t+(n-t)*(2/3-r)*6:t,i[s]=255*o;return i},u.hsl.hsv=function(e){var t=e[0],n=e[1]/100,r=e[2]/100,i=n,o=Math.max(r,.01);return n*=(r*=2)<=1?r:2-r,i*=o<=1?o:2-o,[t,100*(0===r?2*i/(o+i):2*n/(r+n)),100*((r+n)/2)]},u.hsv.rgb=function(e){var t=e[0]/60,n=e[1]/100,r=e[2]/100,i=Math.floor(t)%6,o=t-Math.floor(t),u=255*r*(1-n),a=255*r*(1-n*o),l=255*r*(1-n*(1-o));switch(r*=255,i){case 0:return[r,l,u];case 1:return[a,r,u];case 2:return[u,r,l];case 3:return[u,a,r];case 4:return[l,u,r];case 5:return[r,u,a]}},u.hsv.hsl=function(e){var t,n,r,i=e[0],o=e[1]/100,u=e[2]/100,a=Math.max(u,.01);return r=(2-o)*u,n=o*a,[i,100*(n=(n/=(t=(2-o)*a)<=1?t:2-t)||0),100*(r/=2)]},u.hwb.rgb=function(e){var t,n,r,i,o,u,a,l=e[0]/360,s=e[1]/100,c=e[2]/100,f=s+c;switch(f>1&&(s/=f,c/=f),r=6*l-(t=Math.floor(6*l)),0!=(1&t)&&(r=1-r),i=s+r*((n=1-c)-s),t){default:case 6:case 0:o=n,u=i,a=s;break;case 1:o=i,u=n,a=s;break;case 2:o=s,u=n,a=i;break;case 3:o=s,u=i,a=n;break;case 4:o=i,u=s,a=n;break;case 5:o=n,u=s,a=i}return[255*o,255*u,255*a]},u.cmyk.rgb=function(e){var t=e[0]/100,n=e[1]/100,r=e[2]/100,i=e[3]/100;return[255*(1-Math.min(1,t*(1-i)+i)),255*(1-Math.min(1,n*(1-i)+i)),255*(1-Math.min(1,r*(1-i)+i))]},u.xyz.rgb=function(e){var t,n,r,i=e[0]/100,o=e[1]/100,u=e[2]/100;return n=-.9689*i+1.8758*o+.0415*u,r=.0557*i+-.204*o+1.057*u,t=(t=3.2406*i+-1.5372*o+-.4986*u)>.0031308?1.055*Math.pow(t,1/2.4)-.055:12.92*t,n=n>.0031308?1.055*Math.pow(n,1/2.4)-.055:12.92*n,r=r>.0031308?1.055*Math.pow(r,1/2.4)-.055:12.92*r,[255*(t=Math.min(Math.max(0,t),1)),255*(n=Math.min(Math.max(0,n),1)),255*(r=Math.min(Math.max(0,r),1))]},u.xyz.lab=function(e){var t=e[0],n=e[1],r=e[2];return n/=100,r/=108.883,t=(t/=95.047)>.008856?Math.pow(t,1/3):7.787*t+16/116,[116*(n=n>.008856?Math.pow(n,1/3):7.787*n+16/116)-16,500*(t-n),200*(n-(r=r>.008856?Math.pow(r,1/3):7.787*r+16/116))]},u.lab.xyz=function(e){var t,n,r,i=e[0];t=e[1]/500+(n=(i+16)/116),r=n-e[2]/200;var o=Math.pow(n,3),u=Math.pow(t,3),a=Math.pow(r,3);return n=o>.008856?o:(n-16/116)/7.787,t=u>.008856?u:(t-16/116)/7.787,r=a>.008856?a:(r-16/116)/7.787,[t*=95.047,n*=100,r*=108.883]},u.lab.lch=function(e){var t,n=e[0],r=e[1],i=e[2];return(t=360*Math.atan2(i,r)/2/Math.PI)<0&&(t+=360),[n,Math.sqrt(r*r+i*i),t]},u.lch.lab=function(e){var t,n=e[0],r=e[1];return t=e[2]/360*2*Math.PI,[n,r*Math.cos(t),r*Math.sin(t)]},u.rgb.ansi16=function(e){var t=e[0],n=e[1],r=e[2],i=1 in arguments?arguments[1]:u.rgb.hsv(e)[2];if(0===(i=Math.round(i/50)))return 30;var o=30+(Math.round(r/255)<<2|Math.round(n/255)<<1|Math.round(t/255));return 2===i&&(o+=60),o},u.hsv.ansi16=function(e){return u.rgb.ansi16(u.hsv.rgb(e),e[2])},u.rgb.ansi256=function(e){var t=e[0],n=e[1],r=e[2];return t===n&&n===r?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(n/255*5)+Math.round(r/255*5)},u.ansi16.rgb=function(e){var t=e%10;if(0===t||7===t)return e>50&&(t+=3.5),[t=t/10.5*255,t,t];var n=.5*(1+~~(e>50));return[(1&t)*n*255,(t>>1&1)*n*255,(t>>2&1)*n*255]},u.ansi256.rgb=function(e){if(e>=232){var t=10*(e-232)+8;return[t,t,t]}var n;return e-=16,[Math.floor(e/36)/5*255,Math.floor((n=e%36)/6)/5*255,n%6/5*255]},u.rgb.hex=function(e){var t=(((255&Math.round(e[0]))<<16)+((255&Math.round(e[1]))<<8)+(255&Math.round(e[2]))).toString(16).toUpperCase();return"000000".substring(t.length)+t},u.hex.rgb=function(e){var t=e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!t)return[0,0,0];var n=t[0];3===t[0].length&&(n=n.split("").map((function(e){return e+e})).join(""));var r=parseInt(n,16);return[r>>16&255,r>>8&255,255&r]},u.rgb.hcg=function(e){var t,n=e[0]/255,r=e[1]/255,i=e[2]/255,o=Math.max(Math.max(n,r),i),u=Math.min(Math.min(n,r),i),a=o-u;return t=a<=0?0:o===n?(r-i)/a%6:o===r?2+(i-n)/a:4+(n-r)/a+4,t/=6,[360*(t%=1),100*a,100*(a<1?u/(1-a):0)]},u.hsl.hcg=function(e){var t=e[1]/100,n=e[2]/100,r=1,i=0;return(r=n<.5?2*t*n:2*t*(1-n))<1&&(i=(n-.5*r)/(1-r)),[e[0],100*r,100*i]},u.hsv.hcg=function(e){var t=e[1]/100,n=e[2]/100,r=t*n,i=0;return r<1&&(i=(n-r)/(1-r)),[e[0],100*r,100*i]},u.hcg.rgb=function(e){var t=e[0]/360,n=e[1]/100,r=e[2]/100;if(0===n)return[255*r,255*r,255*r];var i,o=[0,0,0],u=t%1*6,a=u%1,l=1-a;switch(Math.floor(u)){case 0:o[0]=1,o[1]=a,o[2]=0;break;case 1:o[0]=l,o[1]=1,o[2]=0;break;case 2:o[0]=0,o[1]=1,o[2]=a;break;case 3:o[0]=0,o[1]=l,o[2]=1;break;case 4:o[0]=a,o[1]=0,o[2]=1;break;default:o[0]=1,o[1]=0,o[2]=l}return i=(1-n)*r,[255*(n*o[0]+i),255*(n*o[1]+i),255*(n*o[2]+i)]},u.hcg.hsv=function(e){var t=e[1]/100,n=t+e[2]/100*(1-t),r=0;return n>0&&(r=t/n),[e[0],100*r,100*n]},u.hcg.hsl=function(e){var t=e[1]/100,n=e[2]/100*(1-t)+.5*t,r=0;return n>0&&n<.5?r=t/(2*n):n>=.5&&n<1&&(r=t/(2*(1-n))),[e[0],100*r,100*n]},u.hcg.hwb=function(e){var t=e[1]/100,n=t+e[2]/100*(1-t);return[e[0],100*(n-t),100*(1-n)]},u.hwb.hcg=function(e){var t=e[1]/100,n=1-e[2]/100,r=n-t,i=0;return r<1&&(i=(n-r)/(1-r)),[e[0],100*r,100*i]},u.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]},u.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]},u.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]},u.gray.hsl=u.gray.hsv=function(e){return[0,0,e[0]]},u.gray.hwb=function(e){return[0,100,e[0]]},u.gray.cmyk=function(e){return[0,0,0,e[0]]},u.gray.lab=function(e){return[e[0],0,0]},u.gray.hex=function(e){var t=255&Math.round(e[0]/100*255),n=((t<<16)+(t<<8)+t).toString(16).toUpperCase();return"000000".substring(n.length)+n},u.rgb.gray=function(e){return[(e[0]+e[1]+e[2])/3/255*100]}},7410:(e,t,n)=>{var r=n(9486),i=n(9445),o={};Object.keys(r).forEach((function(e){o[e]={},Object.defineProperty(o[e],"channels",{value:r[e].channels}),Object.defineProperty(o[e],"labels",{value:r[e].labels});var t=i(e);Object.keys(t).forEach((function(n){var r=t[n];o[e][n]=function(e){var t=function(t){if(null==t)return t;arguments.length>1&&(t=Array.prototype.slice.call(arguments));var n=e(t);if("object"==typeof n)for(var r=n.length,i=0;i1&&(t=Array.prototype.slice.call(arguments)),e(t))};return"conversion"in e&&(t.conversion=e.conversion),t}(r)}))})),e.exports=o},9445:(e,t,n)=>{var r=n(9486);function i(e){var t=function(){for(var e={},t=Object.keys(r),n=t.length,i=0;i{const r=n(3300),i={};for(const e of Object.keys(r))i[r[e]]=e;const o={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};e.exports=o;for(const e of Object.keys(o)){if(!("channels"in o[e]))throw new Error("missing channels property: "+e);if(!("labels"in o[e]))throw new Error("missing channel labels property: "+e);if(o[e].labels.length!==o[e].channels)throw new Error("channel and label counts mismatch: "+e);const{channels:t,labels:n}=o[e];delete o[e].channels,delete o[e].labels,Object.defineProperty(o[e],"channels",{value:t}),Object.defineProperty(o[e],"labels",{value:n})}o.rgb.hsl=function(e){const t=e[0]/255,n=e[1]/255,r=e[2]/255,i=Math.min(t,n,r),o=Math.max(t,n,r),u=o-i;let a,l;o===i?a=0:t===o?a=(n-r)/u:n===o?a=2+(r-t)/u:r===o&&(a=4+(t-n)/u),a=Math.min(60*a,360),a<0&&(a+=360);const s=(i+o)/2;return l=o===i?0:s<=.5?u/(o+i):u/(2-o-i),[a,100*l,100*s]},o.rgb.hsv=function(e){let t,n,r,i,o;const u=e[0]/255,a=e[1]/255,l=e[2]/255,s=Math.max(u,a,l),c=s-Math.min(u,a,l),f=function(e){return(s-e)/6/c+.5};return 0===c?(i=0,o=0):(o=c/s,t=f(u),n=f(a),r=f(l),u===s?i=r-n:a===s?i=1/3+t-r:l===s&&(i=2/3+n-t),i<0?i+=1:i>1&&(i-=1)),[360*i,100*o,100*s]},o.rgb.hwb=function(e){const t=e[0],n=e[1];let r=e[2];const i=o.rgb.hsl(e)[0],u=1/255*Math.min(t,Math.min(n,r));return r=1-1/255*Math.max(t,Math.max(n,r)),[i,100*u,100*r]},o.rgb.cmyk=function(e){const t=e[0]/255,n=e[1]/255,r=e[2]/255,i=Math.min(1-t,1-n,1-r);return[100*((1-t-i)/(1-i)||0),100*((1-n-i)/(1-i)||0),100*((1-r-i)/(1-i)||0),100*i]},o.rgb.keyword=function(e){const t=i[e];if(t)return t;let n,o=1/0;for(const t of Object.keys(r)){const i=r[t],l=(a=i,((u=e)[0]-a[0])**2+(u[1]-a[1])**2+(u[2]-a[2])**2);l.04045?((t+.055)/1.055)**2.4:t/12.92,n=n>.04045?((n+.055)/1.055)**2.4:n/12.92,r=r>.04045?((r+.055)/1.055)**2.4:r/12.92;return[100*(.4124*t+.3576*n+.1805*r),100*(.2126*t+.7152*n+.0722*r),100*(.0193*t+.1192*n+.9505*r)]},o.rgb.lab=function(e){const t=o.rgb.xyz(e);let n=t[0],r=t[1],i=t[2];n/=95.047,r/=100,i/=108.883,n=n>.008856?n**(1/3):7.787*n+16/116,r=r>.008856?r**(1/3):7.787*r+16/116,i=i>.008856?i**(1/3):7.787*i+16/116;return[116*r-16,500*(n-r),200*(r-i)]},o.hsl.rgb=function(e){const t=e[0]/360,n=e[1]/100,r=e[2]/100;let i,o,u;if(0===n)return u=255*r,[u,u,u];i=r<.5?r*(1+n):r+n-r*n;const a=2*r-i,l=[0,0,0];for(let e=0;e<3;e++)o=t+1/3*-(e-1),o<0&&o++,o>1&&o--,u=6*o<1?a+6*(i-a)*o:2*o<1?i:3*o<2?a+(i-a)*(2/3-o)*6:a,l[e]=255*u;return l},o.hsl.hsv=function(e){const t=e[0];let n=e[1]/100,r=e[2]/100,i=n;const o=Math.max(r,.01);r*=2,n*=r<=1?r:2-r,i*=o<=1?o:2-o;return[t,100*(0===r?2*i/(o+i):2*n/(r+n)),100*((r+n)/2)]},o.hsv.rgb=function(e){const t=e[0]/60,n=e[1]/100;let r=e[2]/100;const i=Math.floor(t)%6,o=t-Math.floor(t),u=255*r*(1-n),a=255*r*(1-n*o),l=255*r*(1-n*(1-o));switch(r*=255,i){case 0:return[r,l,u];case 1:return[a,r,u];case 2:return[u,r,l];case 3:return[u,a,r];case 4:return[l,u,r];case 5:return[r,u,a]}},o.hsv.hsl=function(e){const t=e[0],n=e[1]/100,r=e[2]/100,i=Math.max(r,.01);let o,u;u=(2-n)*r;const a=(2-n)*i;return o=n*i,o/=a<=1?a:2-a,o=o||0,u/=2,[t,100*o,100*u]},o.hwb.rgb=function(e){const t=e[0]/360;let n=e[1]/100,r=e[2]/100;const i=n+r;let o;i>1&&(n/=i,r/=i);const u=Math.floor(6*t),a=1-r;o=6*t-u,0!=(1&u)&&(o=1-o);const l=n+o*(a-n);let s,c,f;switch(u){default:case 6:case 0:s=a,c=l,f=n;break;case 1:s=l,c=a,f=n;break;case 2:s=n,c=a,f=l;break;case 3:s=n,c=l,f=a;break;case 4:s=l,c=n,f=a;break;case 5:s=a,c=n,f=l}return[255*s,255*c,255*f]},o.cmyk.rgb=function(e){const t=e[0]/100,n=e[1]/100,r=e[2]/100,i=e[3]/100;return[255*(1-Math.min(1,t*(1-i)+i)),255*(1-Math.min(1,n*(1-i)+i)),255*(1-Math.min(1,r*(1-i)+i))]},o.xyz.rgb=function(e){const t=e[0]/100,n=e[1]/100,r=e[2]/100;let i,o,u;return i=3.2406*t+-1.5372*n+-.4986*r,o=-.9689*t+1.8758*n+.0415*r,u=.0557*t+-.204*n+1.057*r,i=i>.0031308?1.055*i**(1/2.4)-.055:12.92*i,o=o>.0031308?1.055*o**(1/2.4)-.055:12.92*o,u=u>.0031308?1.055*u**(1/2.4)-.055:12.92*u,i=Math.min(Math.max(0,i),1),o=Math.min(Math.max(0,o),1),u=Math.min(Math.max(0,u),1),[255*i,255*o,255*u]},o.xyz.lab=function(e){let t=e[0],n=e[1],r=e[2];t/=95.047,n/=100,r/=108.883,t=t>.008856?t**(1/3):7.787*t+16/116,n=n>.008856?n**(1/3):7.787*n+16/116,r=r>.008856?r**(1/3):7.787*r+16/116;return[116*n-16,500*(t-n),200*(n-r)]},o.lab.xyz=function(e){let t,n,r;n=(e[0]+16)/116,t=e[1]/500+n,r=n-e[2]/200;const i=n**3,o=t**3,u=r**3;return n=i>.008856?i:(n-16/116)/7.787,t=o>.008856?o:(t-16/116)/7.787,r=u>.008856?u:(r-16/116)/7.787,t*=95.047,n*=100,r*=108.883,[t,n,r]},o.lab.lch=function(e){const t=e[0],n=e[1],r=e[2];let i;i=360*Math.atan2(r,n)/2/Math.PI,i<0&&(i+=360);return[t,Math.sqrt(n*n+r*r),i]},o.lch.lab=function(e){const t=e[0],n=e[1],r=e[2]/360*2*Math.PI;return[t,n*Math.cos(r),n*Math.sin(r)]},o.rgb.ansi16=function(e,t=null){const[n,r,i]=e;let u=null===t?o.rgb.hsv(e)[2]:t;if(u=Math.round(u/50),0===u)return 30;let a=30+(Math.round(i/255)<<2|Math.round(r/255)<<1|Math.round(n/255));return 2===u&&(a+=60),a},o.hsv.ansi16=function(e){return o.rgb.ansi16(o.hsv.rgb(e),e[2])},o.rgb.ansi256=function(e){const t=e[0],n=e[1],r=e[2];if(t===n&&n===r)return t<8?16:t>248?231:Math.round((t-8)/247*24)+232;return 16+36*Math.round(t/255*5)+6*Math.round(n/255*5)+Math.round(r/255*5)},o.ansi16.rgb=function(e){let t=e%10;if(0===t||7===t)return e>50&&(t+=3.5),t=t/10.5*255,[t,t,t];const n=.5*(1+~~(e>50));return[(1&t)*n*255,(t>>1&1)*n*255,(t>>2&1)*n*255]},o.ansi256.rgb=function(e){if(e>=232){const t=10*(e-232)+8;return[t,t,t]}let t;e-=16;return[Math.floor(e/36)/5*255,Math.floor((t=e%36)/6)/5*255,t%6/5*255]},o.rgb.hex=function(e){const t=(((255&Math.round(e[0]))<<16)+((255&Math.round(e[1]))<<8)+(255&Math.round(e[2]))).toString(16).toUpperCase();return"000000".substring(t.length)+t},o.hex.rgb=function(e){const t=e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!t)return[0,0,0];let n=t[0];3===t[0].length&&(n=n.split("").map(e=>e+e).join(""));const r=parseInt(n,16);return[r>>16&255,r>>8&255,255&r]},o.rgb.hcg=function(e){const t=e[0]/255,n=e[1]/255,r=e[2]/255,i=Math.max(Math.max(t,n),r),o=Math.min(Math.min(t,n),r),u=i-o;let a,l;return a=u<1?o/(1-u):0,l=u<=0?0:i===t?(n-r)/u%6:i===n?2+(r-t)/u:4+(t-n)/u,l/=6,l%=1,[360*l,100*u,100*a]},o.hsl.hcg=function(e){const t=e[1]/100,n=e[2]/100,r=n<.5?2*t*n:2*t*(1-n);let i=0;return r<1&&(i=(n-.5*r)/(1-r)),[e[0],100*r,100*i]},o.hsv.hcg=function(e){const t=e[1]/100,n=e[2]/100,r=t*n;let i=0;return r<1&&(i=(n-r)/(1-r)),[e[0],100*r,100*i]},o.hcg.rgb=function(e){const t=e[0]/360,n=e[1]/100,r=e[2]/100;if(0===n)return[255*r,255*r,255*r];const i=[0,0,0],o=t%1*6,u=o%1,a=1-u;let l=0;switch(Math.floor(o)){case 0:i[0]=1,i[1]=u,i[2]=0;break;case 1:i[0]=a,i[1]=1,i[2]=0;break;case 2:i[0]=0,i[1]=1,i[2]=u;break;case 3:i[0]=0,i[1]=a,i[2]=1;break;case 4:i[0]=u,i[1]=0,i[2]=1;break;default:i[0]=1,i[1]=0,i[2]=a}return l=(1-n)*r,[255*(n*i[0]+l),255*(n*i[1]+l),255*(n*i[2]+l)]},o.hcg.hsv=function(e){const t=e[1]/100,n=t+e[2]/100*(1-t);let r=0;return n>0&&(r=t/n),[e[0],100*r,100*n]},o.hcg.hsl=function(e){const t=e[1]/100,n=e[2]/100*(1-t)+.5*t;let r=0;return n>0&&n<.5?r=t/(2*n):n>=.5&&n<1&&(r=t/(2*(1-n))),[e[0],100*r,100*n]},o.hcg.hwb=function(e){const t=e[1]/100,n=t+e[2]/100*(1-t);return[e[0],100*(n-t),100*(1-n)]},o.hwb.hcg=function(e){const t=e[1]/100,n=1-e[2]/100,r=n-t;let i=0;return r<1&&(i=(n-r)/(1-r)),[e[0],100*r,100*i]},o.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]},o.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]},o.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]},o.gray.hsl=function(e){return[0,0,e[0]]},o.gray.hsv=o.gray.hsl,o.gray.hwb=function(e){return[0,100,e[0]]},o.gray.cmyk=function(e){return[0,0,0,e[0]]},o.gray.lab=function(e){return[e[0],0,0]},o.gray.hex=function(e){const t=255&Math.round(e[0]/100*255),n=((t<<16)+(t<<8)+t).toString(16).toUpperCase();return"000000".substring(n.length)+n},o.rgb.gray=function(e){return[(e[0]+e[1]+e[2])/3/255*100]}},2744:(e,t,n)=>{const r=n(5311),i=n(8577),o={};Object.keys(r).forEach(e=>{o[e]={},Object.defineProperty(o[e],"channels",{value:r[e].channels}),Object.defineProperty(o[e],"labels",{value:r[e].labels});const t=i(e);Object.keys(t).forEach(n=>{const r=t[n];o[e][n]=function(e){const t=function(...t){const n=t[0];if(null==n)return n;n.length>1&&(t=n);const r=e(t);if("object"==typeof r)for(let e=r.length,t=0;t1&&(t=n),e(t))};return"conversion"in e&&(t.conversion=e.conversion),t}(r)})}),e.exports=o},8577:(e,t,n)=>{const r=n(5311);function i(e){const t=function(){const e={},t=Object.keys(r);for(let n=t.length,r=0;r{"use strict";e.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}},3300:e=>{"use strict";e.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}},2517:e=>{"use strict";e.exports=function(){return/\uD83C\uDFF4(?:\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74)\uDB40\uDC7F|\u200D\u2620\uFE0F)|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC68(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDB0-\uDDB3])|(?:\uD83C[\uDFFB-\uDFFF])\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDB0-\uDDB3]))|\uD83D\uDC69\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDB0-\uDDB3])|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2695\u2696\u2708]|\uD83D\uDC68(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)\uFE0F|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDD6-\uDDDD])(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\uD83D\uDC69\u200D[\u2695\u2696\u2708])\uFE0F|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC68(?:\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDB0-\uDDB3])|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|[#\*0-9]\uFE0F\u20E3|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270A-\u270D]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC70\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDCAA\uDD74\uDD7A\uDD90\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD36\uDDB5\uDDB6\uDDD1-\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDEEB\uDEEC\uDEF4-\uDEF9]|\uD83E[\uDD10-\uDD3A\uDD3C-\uDD3E\uDD40-\uDD45\uDD47-\uDD70\uDD73-\uDD76\uDD7A\uDD7C-\uDDA2\uDDB0-\uDDB9\uDDC0-\uDDC2\uDDD0-\uDDFF])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEF9]|\uD83E[\uDD10-\uDD3A\uDD3C-\uDD3E\uDD40-\uDD45\uDD47-\uDD70\uDD73-\uDD76\uDD7A\uDD7C-\uDDA2\uDDB0-\uDDB9\uDDC0-\uDDC2\uDDD0-\uDDFF])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC69\uDC6E\uDC70-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD18-\uDD1C\uDD1E\uDD1F\uDD26\uDD30-\uDD39\uDD3D\uDD3E\uDDB5\uDDB6\uDDB8\uDDB9\uDDD1-\uDDDD])/g}},6349:e=>{"use strict";var t=/[|\\{}()[\]^$+*?.]/g;e.exports=function(e){if("string"!=typeof e)throw new TypeError("Expected a string");return e.replace(t,"\\$&")}},6591:e=>{"use strict";e.exports=(e,t)=>{t=t||process.argv;const n=e.startsWith("-")?"":1===e.length?"-":"--",r=t.indexOf(n+e),i=t.indexOf("--");return-1!==r&&(-1===i||r{"use strict";e.exports=(e,t=process.argv)=>{const n=e.startsWith("-")?"":1===e.length?"-":"--",r=t.indexOf(n+e),i=t.indexOf("--");return-1!==r&&(-1===i||r{"use strict";e.exports=n(5864).isCI},703:e=>{"use strict";e.exports=e=>!Number.isNaN(e)&&(e>=4352&&(e<=4447||9001===e||9002===e||11904<=e&&e<=12871&&12351!==e||12880<=e&&e<=19903||19968<=e&&e<=42182||43360<=e&&e<=43388||44032<=e&&e<=55203||63744<=e&&e<=64255||65040<=e&&e<=65049||65072<=e&&e<=65131||65281<=e&&e<=65376||65504<=e&&e<=65510||110592<=e&&e<=110593||127488<=e&&e<=127569||131072<=e&&e<=262141))},4623:e=>{var t=/^\s+|\s+$/g,n=/^[-+]0x[0-9a-f]+$/i,r=/^0b[01]+$/i,i=/^0o[0-7]+$/i,o=parseInt,u="object"==typeof global&&global&&global.Object===Object&&global,a="object"==typeof self&&self&&self.Object===Object&&self,l=u||a||Function("return this")(),s=Object.prototype.toString,c=Math.max,f=Math.min,d=function(){return l.Date.now()};function p(e,t,n){var r,i,o,u,a,l,s=0,p=!1,v=!1,b=!0;if("function"!=typeof e)throw new TypeError("Expected a function");function g(t){var n=r,o=i;return r=i=void 0,s=t,u=e.apply(o,n)}function _(e){return s=e,a=setTimeout(D,t),p?g(e):u}function y(e){var n=e-l;return void 0===l||n>=t||n<0||v&&e-s>=o}function D(){var e=d();if(y(e))return w(e);a=setTimeout(D,function(e){var n=t-(e-l);return v?f(n,o-(e-s)):n}(e))}function w(e){return a=void 0,b&&r?g(e):(r=i=void 0,u)}function E(){var e=d(),n=y(e);if(r=arguments,i=this,l=e,n){if(void 0===a)return _(l);if(v)return a=setTimeout(D,t),g(l)}return void 0===a&&(a=setTimeout(D,t)),u}return t=m(t)||0,h(n)&&(p=!!n.leading,o=(v="maxWait"in n)?c(m(n.maxWait)||0,t):o,b="trailing"in n?!!n.trailing:b),E.cancel=function(){void 0!==a&&clearTimeout(a),s=0,r=l=i=a=void 0},E.flush=function(){return void 0===a?u:w(d())},E}function h(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}function m(e){if("number"==typeof e)return e;if(function(e){return"symbol"==typeof e||function(e){return!!e&&"object"==typeof e}(e)&&"[object Symbol]"==s.call(e)}(e))return NaN;if(h(e)){var u="function"==typeof e.valueOf?e.valueOf():e;e=h(u)?u+"":u}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(t,"");var a=r.test(e);return a||i.test(e)?o(e.slice(2),a?2:8):n.test(e)?NaN:+e}e.exports=function(e,t,n){var r=!0,i=!0;if("function"!=typeof e)throw new TypeError("Expected a function");return h(n)&&(r="leading"in n?!!n.leading:r,i="trailing"in n?!!n.trailing:i),p(e,t,{leading:r,maxWait:t,trailing:i})}},4046:(e,t,n)=>{"use strict";const r=n(327),i=n(1305),o=n(5449),u=(e,t)=>{t=Object.assign({showCursor:!1},t);let n=0;const u=(...u)=>{t.showCursor||i.hide();let a=u.join(" ")+"\n";a=o(a,(e=>{const{columns:t}=e;return t?"win32"===process.platform?t-1:t:80})(e),{trim:!1,hard:!0,wordWrap:!1}),e.write(r.eraseLines(n)+a),n=a.split("\n").length};return u.clear=()=>{e.write(r.eraseLines(n)),n=0},u.done=()=>{n=0,t.showCursor||i.show()},u};e.exports=u(process.stdout),e.exports.default=e.exports,e.exports.stderr=u(process.stderr),e.exports.create=u},2658:e=>{"use strict";e.exports=(e,t)=>{for(const n of Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t)))Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n));return e}},9381:e=>{"use strict"; +/* +object-assign +(c) Sindre Sorhus +@license MIT +*/var t=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,r=Object.prototype.propertyIsEnumerable;function i(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(e){return!1}}()?Object.assign:function(e,o){for(var u,a,l=i(e),s=1;s{"use strict";const r=n(2658);e.exports=(e,t)=>{if(!0===t)throw new TypeError("The second argument is now an options object");if("function"!=typeof e)throw new TypeError("Expected a function");let n;t=t||{};let i=!1;const o=e.displayName||e.name||"",u=function(){if(i){if(!0===t.throw)throw new Error(`Function \`${o}\` can only be called once`);return n}return i=!0,n=e.apply(this,arguments),e=null,n};return r(u,e),u}},6976:(e,t,n)=>{"use strict";var r=n(9090);function i(){}function o(){}o.resetWarningCache=i,e.exports=function(){function e(e,t,n,i,o,u){if(u!==r){var a=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw a.name="Invariant Violation",a}}function t(){return e}e.isRequired=e;var n={array:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:o,resetWarningCache:i};return n.PropTypes=n,n}},6271:(e,t,n)=>{e.exports=n(6976)()},9090:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},6099:(e,t,n)=>{"use strict"; +/** @license React v16.13.1 + * react.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var r=n(9381),i="function"==typeof Symbol&&Symbol.for,o=i?Symbol.for("react.element"):60103,u=i?Symbol.for("react.portal"):60106,a=i?Symbol.for("react.fragment"):60107,l=i?Symbol.for("react.strict_mode"):60108,s=i?Symbol.for("react.profiler"):60114,c=i?Symbol.for("react.provider"):60109,f=i?Symbol.for("react.context"):60110,d=i?Symbol.for("react.forward_ref"):60112,p=i?Symbol.for("react.suspense"):60113,h=i?Symbol.for("react.memo"):60115,m=i?Symbol.for("react.lazy"):60116,v="function"==typeof Symbol&&Symbol.iterator;function b(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;nA.length&&A.push(e)}function R(e,t,n){return null==e?0:function e(t,n,r,i){var a=typeof t;"undefined"!==a&&"boolean"!==a||(t=null);var l=!1;if(null===t)l=!0;else switch(a){case"string":case"number":l=!0;break;case"object":switch(t.$$typeof){case o:case u:l=!0}}if(l)return r(i,t,""===n?"."+N(t,0):n),1;if(l=0,n=""===n?".":n+":",Array.isArray(t))for(var s=0;s{"use strict";e.exports=n(6099)},2428:(e,t,n)=>{"use strict";const r=n(4767),i=n(6458);e.exports=r(()=>{i(()=>{process.stderr.write("[?25h")},{alwaysLast:!0})})},8992:(e,t)=>{"use strict"; +/** @license React v0.13.6 + * scheduler.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */Object.defineProperty(t,"__esModule",{value:!0});var n=null,r=!1,i=3,o=-1,u=-1,a=!1,l=!1;function s(){if(!a){var e=n.expirationTime;l?E():l=!0,w(d,e)}}function c(){var e=n,t=n.next;if(n===t)n=null;else{var r=n.previous;n=r.next=t,t.previous=r}e.next=e.previous=null,r=e.callback,t=e.expirationTime,e=e.priorityLevel;var o=i,a=u;i=e,u=t;try{var l=r()}finally{i=o,u=a}if("function"==typeof l)if(l={callback:l,priorityLevel:e,expirationTime:t,next:null,previous:null},null===n)n=l.next=l.previous=l;else{r=null,e=n;do{if(e.expirationTime>=t){r=e;break}e=e.next}while(e!==n);null===r?r=n:r===n&&(n=l,s()),(t=r.previous).next=r.previous=l,l.next=r,l.previous=t}}function f(){if(-1===o&&null!==n&&1===n.priorityLevel){a=!0;try{do{c()}while(null!==n&&1===n.priorityLevel)}finally{a=!1,null!==n?s():l=!1}}}function d(e){a=!0;var i=r;r=e;try{if(e)for(;null!==n;){var o=t.unstable_now();if(!(n.expirationTime<=o))break;do{c()}while(null!==n&&n.expirationTime<=o)}else if(null!==n)do{c()}while(null!==n&&!C())}finally{a=!1,r=i,null!==n?s():l=!1,f()}}var p,h,m=Date,v="function"==typeof setTimeout?setTimeout:void 0,b="function"==typeof clearTimeout?clearTimeout:void 0,g="function"==typeof requestAnimationFrame?requestAnimationFrame:void 0,_="function"==typeof cancelAnimationFrame?cancelAnimationFrame:void 0;function y(e){p=g((function(t){b(h),e(t)})),h=v((function(){_(p),e(t.unstable_now())}),100)}if("object"==typeof performance&&"function"==typeof performance.now){var D=performance;t.unstable_now=function(){return D.now()}}else t.unstable_now=function(){return m.now()};var w,E,C,T=null;if("undefined"!=typeof window?T=window:"undefined"!=typeof global&&(T=global),T&&T._schedMock){var k=T._schedMock;w=k[0],E=k[1],C=k[2],t.unstable_now=k[3]}else if("undefined"==typeof window||"function"!=typeof MessageChannel){var S=null,M=function(e){if(null!==S)try{S(e)}finally{S=null}};w=function(e){null!==S?setTimeout(w,0,e):(S=e,setTimeout(M,0,!1))},E=function(){S=null},C=function(){return!1}}else{"undefined"!=typeof console&&("function"!=typeof g&&console.error("This browser doesn't support requestAnimationFrame. Make sure that you load a polyfill in older browsers. https://fb.me/react-polyfills"),"function"!=typeof _&&console.error("This browser doesn't support cancelAnimationFrame. Make sure that you load a polyfill in older browsers. https://fb.me/react-polyfills"));var x=null,A=!1,P=-1,O=!1,R=!1,N=0,I=33,F=33;C=function(){return N<=t.unstable_now()};var B=new MessageChannel,L=B.port2;B.port1.onmessage=function(){A=!1;var e=x,n=P;x=null,P=-1;var r=t.unstable_now(),i=!1;if(0>=N-r){if(!(-1!==n&&n<=r))return O||(O=!0,y(U)),x=e,void(P=n);i=!0}if(null!==e){R=!0;try{e(i)}finally{R=!1}}};var U=function(e){if(null!==x){y(U);var t=e-N+F;tt&&(t=8),F=tt?L.postMessage(void 0):O||(O=!0,y(U))},E=function(){x=null,A=!1,P=-1}}t.unstable_ImmediatePriority=1,t.unstable_UserBlockingPriority=2,t.unstable_NormalPriority=3,t.unstable_IdlePriority=5,t.unstable_LowPriority=4,t.unstable_runWithPriority=function(e,n){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var r=i,u=o;i=e,o=t.unstable_now();try{return n()}finally{i=r,o=u,f()}},t.unstable_next=function(e){switch(i){case 1:case 2:case 3:var n=3;break;default:n=i}var r=i,u=o;i=n,o=t.unstable_now();try{return e()}finally{i=r,o=u,f()}},t.unstable_scheduleCallback=function(e,r){var u=-1!==o?o:t.unstable_now();if("object"==typeof r&&null!==r&&"number"==typeof r.timeout)r=u+r.timeout;else switch(i){case 1:r=u+-1;break;case 2:r=u+250;break;case 5:r=u+1073741823;break;case 4:r=u+1e4;break;default:r=u+5e3}if(e={callback:e,priorityLevel:i,expirationTime:r,next:null,previous:null},null===n)n=e.next=e.previous=e,s();else{u=null;var a=n;do{if(a.expirationTime>r){u=a;break}a=a.next}while(a!==n);null===u?u=n:u===n&&(n=e,s()),(r=u.previous).next=u.previous=e,e.next=u,e.previous=r}return e},t.unstable_cancelCallback=function(e){var t=e.next;if(null!==t){if(t===e)n=null;else{e===n&&(n=t);var r=e.previous;r.next=t,t.previous=r}e.next=e.previous=null}},t.unstable_wrapCallback=function(e){var n=i;return function(){var r=i,u=o;i=n,o=t.unstable_now();try{return e.apply(this,arguments)}finally{i=r,o=u,f()}}},t.unstable_getCurrentPriorityLevel=function(){return i},t.unstable_shouldYield=function(){return!r&&(null!==n&&n.expirationTime{"use strict";e.exports=n(8992)},6458:(e,t,n)=>{var r,i=n(2357),o=n(8082),u=n(8614);function a(){c&&(c=!1,o.forEach((function(e){try{process.removeListener(e,s[e])}catch(e){}})),process.emit=h,process.reallyExit=d,r.count-=1)}function l(e,t,n){r.emitted[e]||(r.emitted[e]=!0,r.emit(e,t,n))}"function"!=typeof u&&(u=u.EventEmitter),process.__signal_exit_emitter__?r=process.__signal_exit_emitter__:((r=process.__signal_exit_emitter__=new u).count=0,r.emitted={}),r.infinite||(r.setMaxListeners(1/0),r.infinite=!0),e.exports=function(e,t){i.equal(typeof e,"function","a callback must be provided for exit handler"),!1===c&&f();var n="exit";t&&t.alwaysLast&&(n="afterexit");return r.on(n,e),function(){r.removeListener(n,e),0===r.listeners("exit").length&&0===r.listeners("afterexit").length&&a()}},e.exports.unload=a;var s={};o.forEach((function(e){s[e]=function(){process.listeners(e).length===r.count&&(a(),l("exit",null,e),l("afterexit",null,e),process.kill(process.pid,e))}})),e.exports.signals=function(){return o},e.exports.load=f;var c=!1;function f(){c||(c=!0,r.count+=1,o=o.filter((function(e){try{return process.on(e,s[e]),!0}catch(e){return!1}})),process.emit=m,process.reallyExit=p)}var d=process.reallyExit;function p(e){process.exitCode=e||0,l("exit",process.exitCode,null),l("afterexit",process.exitCode,null),d.call(process,process.exitCode)}var h=process.emit;function m(e,t){if("exit"===e){void 0!==t&&(process.exitCode=t);var n=h.apply(this,arguments);return l("exit",process.exitCode,null),l("afterexit",process.exitCode,null),n}return h.apply(this,arguments)}},8082:e=>{e.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"],"win32"!==process.platform&&e.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT"),"linux"===process.platform&&e.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")},7498:(e,t,n)=>{"use strict";const r=n(703),i=["","›"],o=/[\uD800-\uDBFF][\uDC00-\uDFFF]/,u=new Map([[0,0],[1,22],[2,22],[3,23],[4,24],[7,27],[8,28],[9,29],[30,39],[31,39],[32,39],[33,39],[34,39],[35,39],[36,39],[37,39],[90,39],[40,49],[41,49],[42,49],[43,49],[44,49],[45,49],[46,49],[47,49]]),a=e=>`${i[0]}[${e}m`;e.exports=(e,t,n)=>{const l=Array.from(e.normalize());n="number"==typeof n?n:l.length;let s,c=!1,f=0,d="";for(const p of l.entries()){const l=p[0],h=p[1];let m=!1;if(-1!==i.indexOf(h)){c=!0;const t=/\d[^m]*/.exec(e.slice(l,l+4));s=39===t?null:t}else c&&"m"===h&&(c=!1,m=!0);if(c||m||++f,!o.test(h)&&r(h.codePointAt())&&++f,f>t&&f<=n)d+=h;else if(f!==t||c||void 0===s||39===s){if(f>=n){void 0!==s&&(d+=a(u.get(parseInt(s,10))||39));break}}else d+=a(s)}return d}},2989:(e,t,n)=>{"use strict";const r=n(3455),i=n(5640);e.exports=e=>r(e).replace(i()," ").length},5478:(e,t,n)=>{"use strict";const r=n(3455),i=n(703);e.exports=e=>{if("string"!=typeof e||0===e.length)return 0;e=r(e);let t=0;for(let n=0;n=127&&r<=159||(r>=768&&r<=879||(r>65535&&n++,t+=i(r)?2:1))}return t}},5554:(e,t,n)=>{"use strict";const r=n(7402),i=n(703),o=n(2517)();e.exports=e=>{if("string"!=typeof(e=e.replace(o," "))||0===e.length)return 0;e=r(e);let t=0;for(let n=0;n=127&&r<=159||(r>=768&&r<=879||(r>65535&&n++,t+=i(r)?2:1))}return t}},3455:(e,t,n)=>{"use strict";const r=n(7788);e.exports=e=>"string"==typeof e?e.replace(r(),""):e},7402:(e,t,n)=>{"use strict";const r=n(5378),i=e=>"string"==typeof e?e.replace(r(),""):e;e.exports=i,e.exports.default=i},5180:(e,t,n)=>{"use strict";const r=n(2087),i=n(6591),o=process.env;let u;function a(e){return function(e){return 0!==e&&{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}(function(e){if(!1===u)return 0;if(i("color=16m")||i("color=full")||i("color=truecolor"))return 3;if(i("color=256"))return 2;if(e&&!e.isTTY&&!0!==u)return 0;const t=u?1:0;if("win32"===process.platform){const e=r.release().split(".");return Number(process.versions.node.split(".")[0])>=8&&Number(e[0])>=10&&Number(e[2])>=10586?Number(e[2])>=14931?3:2:1}if("CI"in o)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(e=>e in o)||"codeship"===o.CI_NAME?1:t;if("TEAMCITY_VERSION"in o)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(o.TEAMCITY_VERSION)?1:0;if("truecolor"===o.COLORTERM)return 3;if("TERM_PROGRAM"in o){const e=parseInt((o.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(o.TERM_PROGRAM){case"iTerm.app":return e>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(o.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(o.TERM)||"COLORTERM"in o?1:(o.TERM,t)}(e))}i("no-color")||i("no-colors")||i("color=false")?u=!1:(i("color")||i("colors")||i("color=true")||i("color=always"))&&(u=!0),"FORCE_COLOR"in o&&(u=0===o.FORCE_COLOR.length||0!==parseInt(o.FORCE_COLOR,10)),e.exports={supportsColor:a,stdout:a(process.stdout),stderr:a(process.stderr)}},9428:(e,t,n)=>{"use strict";const r=n(2087),i=n(3867),o=n(2918),{env:u}=process;let a;function l(e){return 0!==e&&{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function s(e,t){if(0===a)return 0;if(o("color=16m")||o("color=full")||o("color=truecolor"))return 3;if(o("color=256"))return 2;if(e&&!t&&void 0===a)return 0;const n=a||0;if("dumb"===u.TERM)return n;if("win32"===process.platform){const e=r.release().split(".");return Number(e[0])>=10&&Number(e[2])>=10586?Number(e[2])>=14931?3:2:1}if("CI"in u)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(e=>e in u)||"codeship"===u.CI_NAME?1:n;if("TEAMCITY_VERSION"in u)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(u.TEAMCITY_VERSION)?1:0;if("GITHUB_ACTIONS"in u)return 1;if("truecolor"===u.COLORTERM)return 3;if("TERM_PROGRAM"in u){const e=parseInt((u.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(u.TERM_PROGRAM){case"iTerm.app":return e>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(u.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(u.TERM)||"COLORTERM"in u?1:n}o("no-color")||o("no-colors")||o("color=false")||o("color=never")?a=0:(o("color")||o("colors")||o("color=true")||o("color=always"))&&(a=1),"FORCE_COLOR"in u&&(a="true"===u.FORCE_COLOR?1:"false"===u.FORCE_COLOR?0:0===u.FORCE_COLOR.length?1:Math.min(parseInt(u.FORCE_COLOR,10),3)),e.exports={supportsColor:function(e){return l(s(e,e&&e.isTTY))},stdout:l(s(!0,i.isatty(1))),stderr:l(s(!0,i.isatty(2)))}},128:(e,t,n)=>{"use strict";const r=n(5478);e.exports=e=>{let t=0;for(const n of e.split("\n"))t=Math.max(t,r(n));return t}},5449:(e,t,n)=>{"use strict";const r=n(5554),i=n(7402),o=n(5256),u=new Set(["","›"]),a=e=>`${u.values().next().value}[${e}m`,l=(e,t,n)=>{const o=[...t];let a=!1,l=r(i(e[e.length-1]));for(const[t,i]of o.entries()){const s=r(i);if(l+s<=n?e[e.length-1]+=i:(e.push(i),l=0),u.has(i))a=!0;else if(a&&"m"===i){a=!1;continue}a||(l+=s,l===n&&t0&&e.length>1&&(e[e.length-2]+=e.pop())},s=e=>{const t=e.split(" ");let n=t.length;for(;n>0&&!(r(t[n-1])>0);)n--;return n===t.length?e:t.slice(0,n).join(" ")+t.slice(n).join("")},c=(e,t,n={})=>{if(!1!==n.trim&&""===e.trim())return"";let i,c="",f="";const d=(e=>e.split(" ").map(e=>r(e)))(e);let p=[""];for(const[i,o]of e.split(" ").entries()){!1!==n.trim&&(p[p.length-1]=p[p.length-1].trimLeft());let e=r(p[p.length-1]);if(0!==i&&(e>=t&&(!1===n.wordWrap||!1===n.trim)&&(p.push(""),e=0),(e>0||!1===n.trim)&&(p[p.length-1]+=" ",e++)),n.hard&&d[i]>t){const n=t-e,r=1+Math.floor((d[i]-n-1)/t);Math.floor((d[i]-1)/t)t&&e>0&&d[i]>0){if(!1===n.wordWrap&&et&&!1===n.wordWrap?l(p,o,t):p[p.length-1]+=o}}!1!==n.trim&&(p=p.map(s)),c=p.join("\n");for(const[e,t]of[...c].entries()){if(f+=t,u.has(t)){const t=parseFloat(/\d[^m]*/.exec(c.slice(e,e+4)));i=39===t?null:t}const n=o.codes.get(Number(i));i&&n&&("\n"===c[e+1]?f+=a(n):"\n"===t&&(f+=a(i)))}return f};e.exports=(e,t,n)=>String(e).normalize().split("\n").map(e=>c(e,t,n)).join("\n")},7356:function(module,exports){var __WEBPACK_AMD_DEFINE_ARRAY__,__WEBPACK_AMD_DEFINE_RESULT__,wrapper;wrapper=function(Module,cb){var Module;"function"==typeof Module&&(cb=Module,Module={}),Module.onRuntimeInitialized=function(e,t){return function(){e&&e.apply(this,arguments);try{Module.ccall("nbind_init")}catch(e){return void t(e)}t(null,{bind:Module._nbind_value,reflect:Module.NBind.reflect,queryType:Module.NBind.queryType,toggleLightGC:Module.toggleLightGC,lib:Module})}}(Module.onRuntimeInitialized,cb),Module||(Module=(void 0!==Module?Module:null)||{});var moduleOverrides={};for(var key in Module)Module.hasOwnProperty(key)&&(moduleOverrides[key]=Module[key]);var ENVIRONMENT_IS_WEB=!1,ENVIRONMENT_IS_WORKER=!1,ENVIRONMENT_IS_NODE=!1,ENVIRONMENT_IS_SHELL=!1,nodeFS,nodePath;if(Module.ENVIRONMENT)if("WEB"===Module.ENVIRONMENT)ENVIRONMENT_IS_WEB=!0;else if("WORKER"===Module.ENVIRONMENT)ENVIRONMENT_IS_WORKER=!0;else if("NODE"===Module.ENVIRONMENT)ENVIRONMENT_IS_NODE=!0;else{if("SHELL"!==Module.ENVIRONMENT)throw new Error("The provided Module['ENVIRONMENT'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL.");ENVIRONMENT_IS_SHELL=!0}else ENVIRONMENT_IS_WEB="object"==typeof window,ENVIRONMENT_IS_WORKER="function"==typeof importScripts,ENVIRONMENT_IS_NODE="object"==typeof process&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER,ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE)Module.print||(Module.print=console.log),Module.printErr||(Module.printErr=console.warn),Module.read=function(e,t){nodeFS||(nodeFS={}("")),nodePath||(nodePath={}("")),e=nodePath.normalize(e);var n=nodeFS.readFileSync(e);return t?n:n.toString()},Module.readBinary=function(e){var t=Module.read(e,!0);return t.buffer||(t=new Uint8Array(t)),assert(t.buffer),t},Module.load=function(e){globalEval(read(e))},Module.thisProgram||(process.argv.length>1?Module.thisProgram=process.argv[1].replace(/\\/g,"/"):Module.thisProgram="unknown-program"),Module.arguments=process.argv.slice(2),module.exports=Module,process.on("uncaughtException",(function(e){if(!(e instanceof ExitStatus))throw e})),Module.inspect=function(){return"[Emscripten Module object]"};else if(ENVIRONMENT_IS_SHELL)Module.print||(Module.print=print),"undefined"!=typeof printErr&&(Module.printErr=printErr),"undefined"!=typeof read?Module.read=read:Module.read=function(){throw"no read() available"},Module.readBinary=function(e){if("function"==typeof readbuffer)return new Uint8Array(readbuffer(e));var t=read(e,"binary");return assert("object"==typeof t),t},"undefined"!=typeof scriptArgs?Module.arguments=scriptArgs:void 0!==arguments&&(Module.arguments=arguments),"function"==typeof quit&&(Module.quit=function(e,t){quit(e)});else{if(!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER)throw"Unknown runtime environment. Where are we?";if(Module.read=function(e){var t=new XMLHttpRequest;return t.open("GET",e,!1),t.send(null),t.responseText},ENVIRONMENT_IS_WORKER&&(Module.readBinary=function(e){var t=new XMLHttpRequest;return t.open("GET",e,!1),t.responseType="arraybuffer",t.send(null),new Uint8Array(t.response)}),Module.readAsync=function(e,t,n){var r=new XMLHttpRequest;r.open("GET",e,!0),r.responseType="arraybuffer",r.onload=function(){200==r.status||0==r.status&&r.response?t(r.response):n()},r.onerror=n,r.send(null)},void 0!==arguments&&(Module.arguments=arguments),"undefined"!=typeof console)Module.print||(Module.print=function(e){console.log(e)}),Module.printErr||(Module.printErr=function(e){console.warn(e)});else{var TRY_USE_DUMP=!1;Module.print||(Module.print=TRY_USE_DUMP&&"undefined"!=typeof dump?function(e){dump(e)}:function(e){})}ENVIRONMENT_IS_WORKER&&(Module.load=importScripts),void 0===Module.setWindowTitle&&(Module.setWindowTitle=function(e){document.title=e})}function globalEval(e){eval.call(null,e)}for(var key in!Module.load&&Module.read&&(Module.load=function(e){globalEval(Module.read(e))}),Module.print||(Module.print=function(){}),Module.printErr||(Module.printErr=Module.print),Module.arguments||(Module.arguments=[]),Module.thisProgram||(Module.thisProgram="./this.program"),Module.quit||(Module.quit=function(e,t){throw t}),Module.print=Module.print,Module.printErr=Module.printErr,Module.preRun=[],Module.postRun=[],moduleOverrides)moduleOverrides.hasOwnProperty(key)&&(Module[key]=moduleOverrides[key]);moduleOverrides=void 0;var Runtime={setTempRet0:function(e){return tempRet0=e,e},getTempRet0:function(){return tempRet0},stackSave:function(){return STACKTOP},stackRestore:function(e){STACKTOP=e},getNativeTypeSize:function(e){switch(e){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:if("*"===e[e.length-1])return Runtime.QUANTUM_SIZE;if("i"===e[0]){var t=parseInt(e.substr(1));return assert(t%8==0),t/8}return 0}},getNativeFieldSize:function(e){return Math.max(Runtime.getNativeTypeSize(e),Runtime.QUANTUM_SIZE)},STACK_ALIGN:16,prepVararg:function(e,t){return"double"===t||"i64"===t?7&e&&(assert(4==(7&e)),e+=4):assert(0==(3&e)),e},getAlignSize:function(e,t,n){return n||"i64"!=e&&"double"!=e?e?Math.min(t||(e?Runtime.getNativeFieldSize(e):0),Runtime.QUANTUM_SIZE):Math.min(t,8):8},dynCall:function(e,t,n){return n&&n.length?Module["dynCall_"+e].apply(null,[t].concat(n)):Module["dynCall_"+e].call(null,t)},functionPointers:[],addFunction:function(e){for(var t=0;t>2],n=-16&(t+e+15|0);return HEAP32[DYNAMICTOP_PTR>>2]=n,n>=TOTAL_MEMORY&&!enlargeMemory()?(HEAP32[DYNAMICTOP_PTR>>2]=t,0):t},alignMemory:function(e,t){return e=Math.ceil(e/(t||16))*(t||16)},makeBigInt:function(e,t,n){return n?+(e>>>0)+4294967296*+(t>>>0):+(e>>>0)+4294967296*+(0|t)},GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module.Runtime=Runtime;var ABORT=0,EXITSTATUS=0,cwrap,ccall;function assert(e,t){e||abort("Assertion failed: "+t)}function getCFunc(ident){var func=Module["_"+ident];if(!func)try{func=eval("_"+ident)}catch(e){}return assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)"),func}function setValue(e,t,n,r){switch("*"===(n=n||"i8").charAt(n.length-1)&&(n="i32"),n){case"i1":case"i8":HEAP8[e>>0]=t;break;case"i16":HEAP16[e>>1]=t;break;case"i32":HEAP32[e>>2]=t;break;case"i64":tempI64=[t>>>0,(tempDouble=t,+Math_abs(tempDouble)>=1?tempDouble>0?(0|Math_min(+Math_floor(tempDouble/4294967296),4294967295))>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[e>>2]=tempI64[0],HEAP32[e+4>>2]=tempI64[1];break;case"float":HEAPF32[e>>2]=t;break;case"double":HEAPF64[e>>3]=t;break;default:abort("invalid type for setValue: "+n)}}function getValue(e,t,n){switch("*"===(t=t||"i8").charAt(t.length-1)&&(t="i32"),t){case"i1":case"i8":return HEAP8[e>>0];case"i16":return HEAP16[e>>1];case"i32":case"i64":return HEAP32[e>>2];case"float":return HEAPF32[e>>2];case"double":return HEAPF64[e>>3];default:abort("invalid type for setValue: "+t)}return null}!function(){var JSfuncs={stackSave:function(){Runtime.stackSave()},stackRestore:function(){Runtime.stackRestore()},arrayToC:function(e){var t=Runtime.stackAlloc(e.length);return writeArrayToMemory(e,t),t},stringToC:function(e){var t=0;if(null!=e&&0!==e){var n=1+(e.length<<2);stringToUTF8(e,t=Runtime.stackAlloc(n),n)}return t}},toC={string:JSfuncs.stringToC,array:JSfuncs.arrayToC};ccall=function(e,t,n,r,i){var o=getCFunc(e),u=[],a=0;if(r)for(var l=0;l>2]=0;for(l=u+o;r>0]=0;return u}if("i8"===a)return e.subarray||e.slice?HEAPU8.set(e,u):HEAPU8.set(new Uint8Array(e),u),u;for(var s,c,f,d=0;d>0],(0!=n||t)&&(i++,!t||i!=t););t||(t=i);var o="";if(r<128){for(var u;t>0;)u=String.fromCharCode.apply(String,HEAPU8.subarray(e,e+Math.min(t,1024))),o=o?o+u:u,e+=1024,t-=1024;return o}return Module.UTF8ToString(e)}function AsciiToString(e){for(var t="";;){var n=HEAP8[e++>>0];if(!n)return t;t+=String.fromCharCode(n)}}function stringToAscii(e,t){return writeAsciiToMemory(e,t,!1)}Module.ALLOC_NORMAL=ALLOC_NORMAL,Module.ALLOC_STACK=ALLOC_STACK,Module.ALLOC_STATIC=ALLOC_STATIC,Module.ALLOC_DYNAMIC=ALLOC_DYNAMIC,Module.ALLOC_NONE=ALLOC_NONE,Module.allocate=allocate,Module.getMemory=getMemory,Module.Pointer_stringify=Pointer_stringify,Module.AsciiToString=AsciiToString,Module.stringToAscii=stringToAscii;var UTF8Decoder="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function UTF8ArrayToString(e,t){for(var n=t;e[n];)++n;if(n-t>16&&e.subarray&&UTF8Decoder)return UTF8Decoder.decode(e.subarray(t,n));for(var r,i,o,u,a,l="";;){if(!(r=e[t++]))return l;if(128&r)if(i=63&e[t++],192!=(224&r))if(o=63&e[t++],224==(240&r)?r=(15&r)<<12|i<<6|o:(u=63&e[t++],240==(248&r)?r=(7&r)<<18|i<<12|o<<6|u:(a=63&e[t++],r=248==(252&r)?(3&r)<<24|i<<18|o<<12|u<<6|a:(1&r)<<30|i<<24|o<<18|u<<12|a<<6|63&e[t++])),r<65536)l+=String.fromCharCode(r);else{var s=r-65536;l+=String.fromCharCode(55296|s>>10,56320|1023&s)}else l+=String.fromCharCode((31&r)<<6|i);else l+=String.fromCharCode(r)}}function UTF8ToString(e){return UTF8ArrayToString(HEAPU8,e)}function stringToUTF8Array(e,t,n,r){if(!(r>0))return 0;for(var i=n,o=n+r-1,u=0;u=55296&&a<=57343&&(a=65536+((1023&a)<<10)|1023&e.charCodeAt(++u)),a<=127){if(n>=o)break;t[n++]=a}else if(a<=2047){if(n+1>=o)break;t[n++]=192|a>>6,t[n++]=128|63&a}else if(a<=65535){if(n+2>=o)break;t[n++]=224|a>>12,t[n++]=128|a>>6&63,t[n++]=128|63&a}else if(a<=2097151){if(n+3>=o)break;t[n++]=240|a>>18,t[n++]=128|a>>12&63,t[n++]=128|a>>6&63,t[n++]=128|63&a}else if(a<=67108863){if(n+4>=o)break;t[n++]=248|a>>24,t[n++]=128|a>>18&63,t[n++]=128|a>>12&63,t[n++]=128|a>>6&63,t[n++]=128|63&a}else{if(n+5>=o)break;t[n++]=252|a>>30,t[n++]=128|a>>24&63,t[n++]=128|a>>18&63,t[n++]=128|a>>12&63,t[n++]=128|a>>6&63,t[n++]=128|63&a}}return t[n]=0,n-i}function stringToUTF8(e,t,n){return stringToUTF8Array(e,HEAPU8,t,n)}function lengthBytesUTF8(e){for(var t=0,n=0;n=55296&&r<=57343&&(r=65536+((1023&r)<<10)|1023&e.charCodeAt(++n)),r<=127?++t:t+=r<=2047?2:r<=65535?3:r<=2097151?4:r<=67108863?5:6}return t}Module.UTF8ArrayToString=UTF8ArrayToString,Module.UTF8ToString=UTF8ToString,Module.stringToUTF8Array=stringToUTF8Array,Module.stringToUTF8=stringToUTF8,Module.lengthBytesUTF8=lengthBytesUTF8;var UTF16Decoder="undefined"!=typeof TextDecoder?new TextDecoder("utf-16le"):void 0,HEAP,buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64,STATIC_BASE,STATICTOP,staticSealed,STACK_BASE,STACKTOP,STACK_MAX,DYNAMIC_BASE,DYNAMICTOP_PTR;function demangle(e){var t=Module.___cxa_demangle||Module.__cxa_demangle;if(t){try{var n=e.substr(1),r=lengthBytesUTF8(n)+1,i=_malloc(r);stringToUTF8(n,i,r);var o=_malloc(4),u=t(i,0,0,o);if(0===getValue(o,"i32")&&u)return Pointer_stringify(u)}catch(e){}finally{i&&_free(i),o&&_free(o),u&&_free(u)}return e}return Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"),e}function demangleAll(e){return e.replace(/__Z[\w\d_]+/g,(function(e){var t=demangle(e);return e===t?e:e+" ["+t+"]"}))}function jsStackTrace(){var e=new Error;if(!e.stack){try{throw new Error(0)}catch(t){e=t}if(!e.stack)return"(no stack trace available)"}return e.stack.toString()}function stackTrace(){var e=jsStackTrace();return Module.extraStackTrace&&(e+="\n"+Module.extraStackTrace()),demangleAll(e)}function updateGlobalBufferViews(){Module.HEAP8=HEAP8=new Int8Array(buffer),Module.HEAP16=HEAP16=new Int16Array(buffer),Module.HEAP32=HEAP32=new Int32Array(buffer),Module.HEAPU8=HEAPU8=new Uint8Array(buffer),Module.HEAPU16=HEAPU16=new Uint16Array(buffer),Module.HEAPU32=HEAPU32=new Uint32Array(buffer),Module.HEAPF32=HEAPF32=new Float32Array(buffer),Module.HEAPF64=HEAPF64=new Float64Array(buffer)}function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}Module.stackTrace=stackTrace,STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0,staticSealed=!1;var TOTAL_STACK=Module.TOTAL_STACK||5242880,TOTAL_MEMORY=Module.TOTAL_MEMORY||134217728;function getTotalMemory(){return TOTAL_MEMORY}if(TOTAL_MEMORY0;){var t=e.shift();if("function"!=typeof t){var n=t.func;"number"==typeof n?void 0===t.arg?Module.dynCall_v(n):Module.dynCall_vi(n,t.arg):n(void 0===t.arg?null:t.arg)}else t()}}Module.HEAP=HEAP,Module.buffer=buffer,Module.HEAP8=HEAP8,Module.HEAP16=HEAP16,Module.HEAP32=HEAP32,Module.HEAPU8=HEAPU8,Module.HEAPU16=HEAPU16,Module.HEAPU32=HEAPU32,Module.HEAPF32=HEAPF32,Module.HEAPF64=HEAPF64;var __ATPRERUN__=[],__ATINIT__=[],__ATMAIN__=[],__ATEXIT__=[],__ATPOSTRUN__=[],runtimeInitialized=!1,runtimeExited=!1;function preRun(){if(Module.preRun)for("function"==typeof Module.preRun&&(Module.preRun=[Module.preRun]);Module.preRun.length;)addOnPreRun(Module.preRun.shift());callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){runtimeInitialized||(runtimeInitialized=!0,callRuntimeCallbacks(__ATINIT__))}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__),runtimeExited=!0}function postRun(){if(Module.postRun)for("function"==typeof Module.postRun&&(Module.postRun=[Module.postRun]);Module.postRun.length;)addOnPostRun(Module.postRun.shift());callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(e){__ATPRERUN__.unshift(e)}function addOnInit(e){__ATINIT__.unshift(e)}function addOnPreMain(e){__ATMAIN__.unshift(e)}function addOnExit(e){__ATEXIT__.unshift(e)}function addOnPostRun(e){__ATPOSTRUN__.unshift(e)}function intArrayFromString(e,t,n){var r=n>0?n:lengthBytesUTF8(e)+1,i=new Array(r),o=stringToUTF8Array(e,i,0,i.length);return t&&(i.length=o),i}function intArrayToString(e){for(var t=[],n=0;n255&&(r&=255),t.push(String.fromCharCode(r))}return t.join("")}function writeStringToMemory(e,t,n){var r,i;Runtime.warnOnce("writeStringToMemory is deprecated and should not be called! Use stringToUTF8() instead!"),n&&(i=t+lengthBytesUTF8(e),r=HEAP8[i]),stringToUTF8(e,t,1/0),n&&(HEAP8[i]=r)}function writeArrayToMemory(e,t){HEAP8.set(e,t)}function writeAsciiToMemory(e,t,n){for(var r=0;r>0]=e.charCodeAt(r);n||(HEAP8[t>>0]=0)}if(Module.addOnPreRun=addOnPreRun,Module.addOnInit=addOnInit,Module.addOnPreMain=addOnPreMain,Module.addOnExit=addOnExit,Module.addOnPostRun=addOnPostRun,Module.intArrayFromString=intArrayFromString,Module.intArrayToString=intArrayToString,Module.writeStringToMemory=writeStringToMemory,Module.writeArrayToMemory=writeArrayToMemory,Module.writeAsciiToMemory=writeAsciiToMemory,Math.imul&&-5===Math.imul(4294967295,5)||(Math.imul=function(e,t){var n=65535&e,r=65535&t;return n*r+((e>>>16)*r+n*(t>>>16)<<16)|0}),Math.imul=Math.imul,!Math.fround){var froundBuffer=new Float32Array(1);Math.fround=function(e){return froundBuffer[0]=e,froundBuffer[0]}}Math.fround=Math.fround,Math.clz32||(Math.clz32=function(e){e>>>=0;for(var t=0;t<32;t++)if(e&1<<31-t)return t;return 32}),Math.clz32=Math.clz32,Math.trunc||(Math.trunc=function(e){return e<0?Math.ceil(e):Math.floor(e)}),Math.trunc=Math.trunc;var Math_abs=Math.abs,Math_cos=Math.cos,Math_sin=Math.sin,Math_tan=Math.tan,Math_acos=Math.acos,Math_asin=Math.asin,Math_atan=Math.atan,Math_atan2=Math.atan2,Math_exp=Math.exp,Math_log=Math.log,Math_sqrt=Math.sqrt,Math_ceil=Math.ceil,Math_floor=Math.floor,Math_pow=Math.pow,Math_imul=Math.imul,Math_fround=Math.fround,Math_round=Math.round,Math_min=Math.min,Math_clz32=Math.clz32,Math_trunc=Math.trunc,runDependencies=0,runDependencyWatcher=null,dependenciesFulfilled=null;function getUniqueRunDependency(e){return e}function addRunDependency(e){runDependencies++,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies)}function removeRunDependency(e){if(runDependencies--,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies),0==runDependencies&&(null!==runDependencyWatcher&&(clearInterval(runDependencyWatcher),runDependencyWatcher=null),dependenciesFulfilled)){var t=dependenciesFulfilled;dependenciesFulfilled=null,t()}}Module.addRunDependency=addRunDependency,Module.removeRunDependency=removeRunDependency,Module.preloadedImages={},Module.preloadedAudios={};var ASM_CONSTS=[function(e,t,n,r,i,o,u,a){return _nbind.callbackSignatureList[e].apply(this,arguments)}];function _emscripten_asm_const_iiiiiiii(e,t,n,r,i,o,u,a){return ASM_CONSTS[e](t,n,r,i,o,u,a)}function _emscripten_asm_const_iiiii(e,t,n,r,i){return ASM_CONSTS[e](t,n,r,i)}function _emscripten_asm_const_iiidddddd(e,t,n,r,i,o,u,a,l){return ASM_CONSTS[e](t,n,r,i,o,u,a,l)}function _emscripten_asm_const_iiididi(e,t,n,r,i,o,u){return ASM_CONSTS[e](t,n,r,i,o,u)}function _emscripten_asm_const_iiii(e,t,n,r){return ASM_CONSTS[e](t,n,r)}function _emscripten_asm_const_iiiid(e,t,n,r,i){return ASM_CONSTS[e](t,n,r,i)}function _emscripten_asm_const_iiiiii(e,t,n,r,i,o){return ASM_CONSTS[e](t,n,r,i,o)}STATIC_BASE=Runtime.GLOBAL_BASE,STATICTOP=STATIC_BASE+12800,__ATINIT__.push({func:function(){__GLOBAL__sub_I_Yoga_cpp()}},{func:function(){__GLOBAL__sub_I_nbind_cc()}},{func:function(){__GLOBAL__sub_I_common_cc()}},{func:function(){__GLOBAL__sub_I_Binding_cc()}}),allocate([0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,192,127,0,0,192,127,0,0,192,127,3,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,3,0,0,0,0,0,192,127,3,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,192,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,192,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,127,0,0,192,127,0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,0,0,128,191,0,0,128,191,0,0,192,127,0,0,0,0,0,0,0,0,0,0,128,63,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,190,12,0,0,200,12,0,0,208,12,0,0,216,12,0,0,230,12,0,0,242,12,0,0,1,0,0,0,3,0,0,0,0,0,0,0,2,0,0,0,0,0,192,127,3,0,0,0,180,45,0,0,181,45,0,0,182,45,0,0,181,45,0,0,182,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,1,0,0,0,4,0,0,0,183,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,181,45,0,0,184,45,0,0,185,45,0,0,181,45,0,0,181,45,0,0,182,45,0,0,186,45,0,0,185,45,0,0,148,4,0,0,3,0,0,0,187,45,0,0,164,4,0,0,188,45,0,0,2,0,0,0,189,45,0,0,164,4,0,0,188,45,0,0,185,45,0,0,164,4,0,0,185,45,0,0,164,4,0,0,188,45,0,0,181,45,0,0,182,45,0,0,181,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,5,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,183,45,0,0,182,45,0,0,181,45,0,0,190,45,0,0,190,45,0,0,182,45,0,0,182,45,0,0,185,45,0,0,181,45,0,0,185,45,0,0,182,45,0,0,181,45,0,0,185,45,0,0,182,45,0,0,185,45,0,0,48,5,0,0,3,0,0,0,56,5,0,0,1,0,0,0,189,45,0,0,185,45,0,0,164,4,0,0,76,5,0,0,2,0,0,0,191,45,0,0,186,45,0,0,182,45,0,0,185,45,0,0,192,45,0,0,185,45,0,0,182,45,0,0,186,45,0,0,185,45,0,0,76,5,0,0,76,5,0,0,136,5,0,0,182,45,0,0,181,45,0,0,2,0,0,0,190,45,0,0,136,5,0,0,56,19,0,0,156,5,0,0,2,0,0,0,184,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,9,0,0,0,1,0,0,0,10,0,0,0,204,5,0,0,181,45,0,0,181,45,0,0,2,0,0,0,180,45,0,0,204,5,0,0,2,0,0,0,195,45,0,0,236,5,0,0,97,19,0,0,198,45,0,0,211,45,0,0,212,45,0,0,213,45,0,0,214,45,0,0,215,45,0,0,188,45,0,0,182,45,0,0,216,45,0,0,217,45,0,0,218,45,0,0,219,45,0,0,192,45,0,0,181,45,0,0,0,0,0,0,185,45,0,0,110,19,0,0,186,45,0,0,115,19,0,0,221,45,0,0,120,19,0,0,148,4,0,0,132,19,0,0,96,6,0,0,145,19,0,0,222,45,0,0,164,19,0,0,223,45,0,0,173,19,0,0,0,0,0,0,3,0,0,0,104,6,0,0,1,0,0,0,187,45,0,0,0,0,0,0,0,0,0,0,1,0,0,0,11,0,0,0,12,0,0,0,1,0,0,0,13,0,0,0,185,45,0,0,224,45,0,0,164,6,0,0,188,45,0,0,172,6,0,0,180,6,0,0,2,0,0,0,188,6,0,0,7,0,0,0,224,45,0,0,7,0,0,0,164,6,0,0,1,0,0,0,213,45,0,0,185,45,0,0,224,45,0,0,172,6,0,0,185,45,0,0,224,45,0,0,164,6,0,0,185,45,0,0,224,45,0,0,211,45,0,0,211,45,0,0,222,45,0,0,211,45,0,0,224,45,0,0,222,45,0,0,211,45,0,0,224,45,0,0,172,6,0,0,222,45,0,0,211,45,0,0,224,45,0,0,188,45,0,0,222,45,0,0,211,45,0,0,40,7,0,0,188,45,0,0,2,0,0,0,224,45,0,0,185,45,0,0,188,45,0,0,188,45,0,0,188,45,0,0,188,45,0,0,222,45,0,0,224,45,0,0,148,4,0,0,185,45,0,0,148,4,0,0,148,4,0,0,148,4,0,0,148,4,0,0,148,4,0,0,185,45,0,0,164,6,0,0,148,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,14,0,0,0,15,0,0,0,1,0,0,0,16,0,0,0,148,7,0,0,2,0,0,0,225,45,0,0,183,45,0,0,188,45,0,0,168,7,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,234,45,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,148,45,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,9,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,2,0,0,0,242,45,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,67,111,117,108,100,32,110,111,116,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,32,102,111,114,32,110,111,100,101,0,67,97,110,110,111,116,32,114,101,115,101,116,32,97,32,110,111,100,101,32,119,104,105,99,104,32,115,116,105,108,108,32,104,97,115,32,99,104,105,108,100,114,101,110,32,97,116,116,97,99,104,101,100,0,67,97,110,110,111,116,32,114,101,115,101,116,32,97,32,110,111,100,101,32,115,116,105,108,108,32,97,116,116,97,99,104,101,100,32,116,111,32,97,32,112,97,114,101,110,116,0,67,111,117,108,100,32,110,111,116,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,32,102,111,114,32,99,111,110,102,105,103,0,67,97,110,110,111,116,32,115,101,116,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,58,32,78,111,100,101,115,32,119,105,116,104,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,32,99,97,110,110,111,116,32,104,97,118,101,32,99,104,105,108,100,114,101,110,46,0,67,104,105,108,100,32,97,108,114,101,97,100,121,32,104,97,115,32,97,32,112,97,114,101,110,116,44,32,105,116,32,109,117,115,116,32,98,101,32,114,101,109,111,118,101,100,32,102,105,114,115,116,46,0,67,97,110,110,111,116,32,97,100,100,32,99,104,105,108,100,58,32,78,111,100,101,115,32,119,105,116,104,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,32,99,97,110,110,111,116,32,104,97,118,101,32,99,104,105,108,100,114,101,110,46,0,79,110,108,121,32,108,101,97,102,32,110,111,100,101,115,32,119,105,116,104,32,99,117,115,116,111,109,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,115,115,104,111,117,108,100,32,109,97,110,117,97,108,108,121,32,109,97,114,107,32,116,104,101,109,115,101,108,118,101,115,32,97,115,32,100,105,114,116,121,0,67,97,110,110,111,116,32,103,101,116,32,108,97,121,111,117,116,32,112,114,111,112,101,114,116,105,101,115,32,111,102,32,109,117,108,116,105,45,101,100,103,101,32,115,104,111,114,116,104,97,110,100,115,0,37,115,37,100,46,123,91,115,107,105,112,112,101,100,93,32,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,97,119,58,32,37,102,32,97,104,58,32,37,102,32,61,62,32,100,58,32,40,37,102,44,32,37,102,41,32,37,115,10,0,37,115,37,100,46,123,37,115,0,42,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,97,119,58,32,37,102,32,97,104,58,32,37,102,32,37,115,10,0,37,115,37,100,46,125,37,115,0,119,109,58,32,37,115,44,32,104,109,58,32,37,115,44,32,100,58,32,40,37,102,44,32,37,102,41,32,37,115,10,0,79,117,116,32,111,102,32,99,97,99,104,101,32,101,110,116,114,105,101,115,33,10,0,83,99,97,108,101,32,102,97,99,116,111,114,32,115,104,111,117,108,100,32,110,111,116,32,98,101,32,108,101,115,115,32,116,104,97,110,32,122,101,114,111,0,105,110,105,116,105,97,108,0,37,115,10,0,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,0,85,78,68,69,70,73,78,69,68,0,69,88,65,67,84,76,89,0,65,84,95,77,79,83,84,0,76,65,89,95,85,78,68,69,70,73,78,69,68,0,76,65,89,95,69,88,65,67,84,76,89,0,76,65,89,95,65,84,95,77,79,83,84,0,97,118,97,105,108,97,98,108,101,87,105,100,116,104,32,105,115,32,105,110,100,101,102,105,110,105,116,101,32,115,111,32,119,105,100,116,104,77,101,97,115,117,114,101,77,111,100,101,32,109,117,115,116,32,98,101,32,89,71,77,101,97,115,117,114,101,77,111,100,101,85,110,100,101,102,105,110,101,100,0,97,118,97,105,108,97,98,108,101,72,101,105,103,104,116,32,105,115,32,105,110,100,101,102,105,110,105,116,101,32,115,111,32,104,101,105,103,104,116,77,101,97,115,117,114,101,77,111,100,101,32,109,117,115,116,32,98,101,32,89,71,77,101,97,115,117,114,101,77,111,100,101,85,110,100,101,102,105,110,101,100,0,102,108,101,120,0,115,116,114,101,116,99,104,0,109,117,108,116,105,108,105,110,101,45,115,116,114,101,116,99,104,0,69,120,112,101,99,116,101,100,32,110,111,100,101,32,116,111,32,104,97,118,101,32,99,117,115,116,111,109,32,109,101,97,115,117,114,101,32,102,117,110,99,116,105,111,110,0,109,101,97,115,117,114,101,0,69,120,112,101,99,116,32,99,117,115,116,111,109,32,98,97,115,101,108,105,110,101,32,102,117,110,99,116,105,111,110,32,116,111,32,110,111,116,32,114,101,116,117,114,110,32,78,97,78,0,97,98,115,45,109,101,97,115,117,114,101,0,97,98,115,45,108,97,121,111,117,116,0,78,111,100,101,0,99,114,101,97,116,101,68,101,102,97,117,108,116,0,99,114,101,97,116,101,87,105,116,104,67,111,110,102,105,103,0,100,101,115,116,114,111,121,0,114,101,115,101,116,0,99,111,112,121,83,116,121,108,101,0,115,101,116,80,111,115,105,116,105,111,110,84,121,112,101,0,115,101,116,80,111,115,105,116,105,111,110,0,115,101,116,80,111,115,105,116,105,111,110,80,101,114,99,101,110,116,0,115,101,116,65,108,105,103,110,67,111,110,116,101,110,116,0,115,101,116,65,108,105,103,110,73,116,101,109,115,0,115,101,116,65,108,105,103,110,83,101,108,102,0,115,101,116,70,108,101,120,68,105,114,101,99,116,105,111,110,0,115,101,116,70,108,101,120,87,114,97,112,0,115,101,116,74,117,115,116,105,102,121,67,111,110,116,101,110,116,0,115,101,116,77,97,114,103,105,110,0,115,101,116,77,97,114,103,105,110,80,101,114,99,101,110,116,0,115,101,116,77,97,114,103,105,110,65,117,116,111,0,115,101,116,79,118,101,114,102,108,111,119,0,115,101,116,68,105,115,112,108,97,121,0,115,101,116,70,108,101,120,0,115,101,116,70,108,101,120,66,97,115,105,115,0,115,101,116,70,108,101,120,66,97,115,105,115,80,101,114,99,101,110,116,0,115,101,116,70,108,101,120,71,114,111,119,0,115,101,116,70,108,101,120,83,104,114,105,110,107,0,115,101,116,87,105,100,116,104,0,115,101,116,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,87,105,100,116,104,65,117,116,111,0,115,101,116,72,101,105,103,104,116,0,115,101,116,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,72,101,105,103,104,116,65,117,116,111,0,115,101,116,77,105,110,87,105,100,116,104,0,115,101,116,77,105,110,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,77,105,110,72,101,105,103,104,116,0,115,101,116,77,105,110,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,77,97,120,87,105,100,116,104,0,115,101,116,77,97,120,87,105,100,116,104,80,101,114,99,101,110,116,0,115,101,116,77,97,120,72,101,105,103,104,116,0,115,101,116,77,97,120,72,101,105,103,104,116,80,101,114,99,101,110,116,0,115,101,116,65,115,112,101,99,116,82,97,116,105,111,0,115,101,116,66,111,114,100,101,114,0,115,101,116,80,97,100,100,105,110,103,0,115,101,116,80,97,100,100,105,110,103,80,101,114,99,101,110,116,0,103,101,116,80,111,115,105,116,105,111,110,84,121,112,101,0,103,101,116,80,111,115,105,116,105,111,110,0,103,101,116,65,108,105,103,110,67,111,110,116,101,110,116,0,103,101,116,65,108,105,103,110,73,116,101,109,115,0,103,101,116,65,108,105,103,110,83,101,108,102,0,103,101,116,70,108,101,120,68,105,114,101,99,116,105,111,110,0,103,101,116,70,108,101,120,87,114,97,112,0,103,101,116,74,117,115,116,105,102,121,67,111,110,116,101,110,116,0,103,101,116,77,97,114,103,105,110,0,103,101,116,70,108,101,120,66,97,115,105,115,0,103,101,116,70,108,101,120,71,114,111,119,0,103,101,116,70,108,101,120,83,104,114,105,110,107,0,103,101,116,87,105,100,116,104,0,103,101,116,72,101,105,103,104,116,0,103,101,116,77,105,110,87,105,100,116,104,0,103,101,116,77,105,110,72,101,105,103,104,116,0,103,101,116,77,97,120,87,105,100,116,104,0,103,101,116,77,97,120,72,101,105,103,104,116,0,103,101,116,65,115,112,101,99,116,82,97,116,105,111,0,103,101,116,66,111,114,100,101,114,0,103,101,116,79,118,101,114,102,108,111,119,0,103,101,116,68,105,115,112,108,97,121,0,103,101,116,80,97,100,100,105,110,103,0,105,110,115,101,114,116,67,104,105,108,100,0,114,101,109,111,118,101,67,104,105,108,100,0,103,101,116,67,104,105,108,100,67,111,117,110,116,0,103,101,116,80,97,114,101,110,116,0,103,101,116,67,104,105,108,100,0,115,101,116,77,101,97,115,117,114,101,70,117,110,99,0,117,110,115,101,116,77,101,97,115,117,114,101,70,117,110,99,0,109,97,114,107,68,105,114,116,121,0,105,115,68,105,114,116,121,0,99,97,108,99,117,108,97,116,101,76,97,121,111,117,116,0,103,101,116,67,111,109,112,117,116,101,100,76,101,102,116,0,103,101,116,67,111,109,112,117,116,101,100,82,105,103,104,116,0,103,101,116,67,111,109,112,117,116,101,100,84,111,112,0,103,101,116,67,111,109,112,117,116,101,100,66,111,116,116,111,109,0,103,101,116,67,111,109,112,117,116,101,100,87,105,100,116,104,0,103,101,116,67,111,109,112,117,116,101,100,72,101,105,103,104,116,0,103,101,116,67,111,109,112,117,116,101,100,76,97,121,111,117,116,0,103,101,116,67,111,109,112,117,116,101,100,77,97,114,103,105,110,0,103,101,116,67,111,109,112,117,116,101,100,66,111,114,100,101,114,0,103,101,116,67,111,109,112,117,116,101,100,80,97,100,100,105,110,103,0,67,111,110,102,105,103,0,99,114,101,97,116,101,0,115,101,116,69,120,112,101,114,105,109,101,110,116,97,108,70,101,97,116,117,114,101,69,110,97,98,108,101,100,0,115,101,116,80,111,105,110,116,83,99,97,108,101,70,97,99,116,111,114,0,105,115,69,120,112,101,114,105,109,101,110,116,97,108,70,101,97,116,117,114,101,69,110,97,98,108,101,100,0,86,97,108,117,101,0,76,97,121,111,117,116,0,83,105,122,101,0,103,101,116,73,110,115,116,97,110,99,101,67,111,117,110,116,0,73,110,116,54,52,0,1,1,1,2,2,4,4,4,4,8,8,4,8,118,111,105,100,0,98,111,111,108,0,115,116,100,58,58,115,116,114,105,110,103,0,99,98,70,117,110,99,116,105,111,110,32,38,0,99,111,110,115,116,32,99,98,70,117,110,99,116,105,111,110,32,38,0,69,120,116,101,114,110,97,108,0,66,117,102,102,101,114,0,78,66,105,110,100,73,68,0,78,66,105,110,100,0,98,105,110,100,95,118,97,108,117,101,0,114,101,102,108,101,99,116,0,113,117,101,114,121,84,121,112,101,0,108,97,108,108,111,99,0,108,114,101,115,101,116,0,123,114,101,116,117,114,110,40,95,110,98,105,110,100,46,99,97,108,108,98,97,99,107,83,105,103,110,97,116,117,114,101,76,105,115,116,91,36,48,93,46,97,112,112,108,121,40,116,104,105,115,44,97,114,103,117,109,101,110,116,115,41,41,59,125,0,95,110,98,105,110,100,95,110,101,119,0,17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,46,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);var tempDoublePtr=STATICTOP;function _atexit(e,t){__ATEXIT__.unshift({func:e,arg:t})}function ___cxa_atexit(){return _atexit.apply(null,arguments)}function _abort(){Module.abort()}function __ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj(){Module.printErr("missing function: _ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj"),abort(-1)}function __decorate(e,t,n,r){var i,o=arguments.length,u=o<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)u=Reflect.decorate(e,t,n,r);else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(u=(o<3?i(u):o>3?i(t,n,u):i(t,n))||u);return o>3&&u&&Object.defineProperty(t,n,u),u}function _defineHidden(e){return function(t,n){Object.defineProperty(t,n,{configurable:!1,enumerable:!1,value:e,writable:!0})}}STATICTOP+=16;var _nbind={};function __nbind_free_external(e){_nbind.externalList[e].dereference(e)}function __nbind_reference_external(e){_nbind.externalList[e].reference()}function _llvm_stackrestore(e){var t=_llvm_stacksave,n=t.LLVM_SAVEDSTACKS[e];t.LLVM_SAVEDSTACKS.splice(e,1),Runtime.stackRestore(n)}function __nbind_register_pool(e,t,n,r){_nbind.Pool.pageSize=e,_nbind.Pool.usedPtr=t/4,_nbind.Pool.rootPtr=n,_nbind.Pool.pagePtr=r/4,HEAP32[t/4]=16909060,1==HEAP8[t]&&(_nbind.bigEndian=!0),HEAP32[t/4]=0,_nbind.makeTypeKindTbl=((i={})[1024]=_nbind.PrimitiveType,i[64]=_nbind.Int64Type,i[2048]=_nbind.BindClass,i[3072]=_nbind.BindClassPtr,i[4096]=_nbind.SharedClassPtr,i[5120]=_nbind.ArrayType,i[6144]=_nbind.ArrayType,i[7168]=_nbind.CStringType,i[9216]=_nbind.CallbackType,i[10240]=_nbind.BindType,i),_nbind.makeTypeNameTbl={Buffer:_nbind.BufferType,External:_nbind.ExternalType,Int64:_nbind.Int64Type,_nbind_new:_nbind.CreateValueType,bool:_nbind.BooleanType,"cbFunction &":_nbind.CallbackType,"const cbFunction &":_nbind.CallbackType,"const std::string &":_nbind.StringType,"std::string":_nbind.StringType},Module.toggleLightGC=_nbind.toggleLightGC,_nbind.callUpcast=Module.dynCall_ii;var i,o=_nbind.makeType(_nbind.constructType,{flags:2048,id:0,name:""});o.proto=Module,_nbind.BindClass.list.push(o)}function _emscripten_set_main_loop_timing(e,t){if(Browser.mainLoop.timingMode=e,Browser.mainLoop.timingValue=t,!Browser.mainLoop.func)return 1;if(0==e)Browser.mainLoop.scheduler=function(){var e=0|Math.max(0,Browser.mainLoop.tickStartTime+t-_emscripten_get_now());setTimeout(Browser.mainLoop.runner,e)},Browser.mainLoop.method="timeout";else if(1==e)Browser.mainLoop.scheduler=function(){Browser.requestAnimationFrame(Browser.mainLoop.runner)},Browser.mainLoop.method="rAF";else if(2==e){if(!window.setImmediate){var n=[];window.addEventListener("message",(function(e){e.source===window&&"setimmediate"===e.data&&(e.stopPropagation(),n.shift()())}),!0),window.setImmediate=function(e){n.push(e),ENVIRONMENT_IS_WORKER?(void 0===Module.setImmediates&&(Module.setImmediates=[]),Module.setImmediates.push(e),window.postMessage({target:"setimmediate"})):window.postMessage("setimmediate","*")}}Browser.mainLoop.scheduler=function(){window.setImmediate(Browser.mainLoop.runner)},Browser.mainLoop.method="immediate"}return 0}function _emscripten_get_now(){abort()}function _emscripten_set_main_loop(e,t,n,r,i){var o;Module.noExitRuntime=!0,assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters."),Browser.mainLoop.func=e,Browser.mainLoop.arg=r,o=void 0!==r?function(){Module.dynCall_vi(e,r)}:function(){Module.dynCall_v(e)};var u=Browser.mainLoop.currentlyRunningMainloop;if(Browser.mainLoop.runner=function(){if(!ABORT)if(Browser.mainLoop.queue.length>0){var e=Date.now(),t=Browser.mainLoop.queue.shift();if(t.func(t.arg),Browser.mainLoop.remainingBlockers){var n=Browser.mainLoop.remainingBlockers,r=n%1==0?n-1:Math.floor(n);t.counted?Browser.mainLoop.remainingBlockers=r:(r+=.5,Browser.mainLoop.remainingBlockers=(8*n+r)/9)}if(console.log('main loop blocker "'+t.name+'" took '+(Date.now()-e)+" ms"),Browser.mainLoop.updateStatus(),u1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0?Browser.mainLoop.scheduler():(0==Browser.mainLoop.timingMode&&(Browser.mainLoop.tickStartTime=_emscripten_get_now()),"timeout"===Browser.mainLoop.method&&Module.ctx&&(Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!"),Browser.mainLoop.method=""),Browser.mainLoop.runIter(o),u0?_emscripten_set_main_loop_timing(0,1e3/t):_emscripten_set_main_loop_timing(1,1),Browser.mainLoop.scheduler()),n)throw"SimulateInfiniteLoop"}var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:function(){Browser.mainLoop.scheduler=null,Browser.mainLoop.currentlyRunningMainloop++},resume:function(){Browser.mainLoop.currentlyRunningMainloop++;var e=Browser.mainLoop.timingMode,t=Browser.mainLoop.timingValue,n=Browser.mainLoop.func;Browser.mainLoop.func=null,_emscripten_set_main_loop(n,0,!1,Browser.mainLoop.arg,!0),_emscripten_set_main_loop_timing(e,t),Browser.mainLoop.scheduler()},updateStatus:function(){if(Module.setStatus){var e=Module.statusMessage||"Please wait...",t=Browser.mainLoop.remainingBlockers,n=Browser.mainLoop.expectedBlockers;t?t=6;){var u=r>>i-6&63;i-=6,n+=t[u]}return 2==i?(n+=t[(3&r)<<4],n+="=="):4==i&&(n+=t[(15&r)<<2],n+="="),n}(e),o(s))},s.src=l,Browser.safeSetTimeout((function(){o(s)}),1e4)}};Module.preloadPlugins.push(t);var n=Module.canvas;n&&(n.requestPointerLock=n.requestPointerLock||n.mozRequestPointerLock||n.webkitRequestPointerLock||n.msRequestPointerLock||function(){},n.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||function(){},n.exitPointerLock=n.exitPointerLock.bind(document),document.addEventListener("pointerlockchange",r,!1),document.addEventListener("mozpointerlockchange",r,!1),document.addEventListener("webkitpointerlockchange",r,!1),document.addEventListener("mspointerlockchange",r,!1),Module.elementPointerLock&&n.addEventListener("click",(function(e){!Browser.pointerLock&&Module.canvas.requestPointerLock&&(Module.canvas.requestPointerLock(),e.preventDefault())}),!1))}function r(){Browser.pointerLock=document.pointerLockElement===Module.canvas||document.mozPointerLockElement===Module.canvas||document.webkitPointerLockElement===Module.canvas||document.msPointerLockElement===Module.canvas}},createContext:function(e,t,n,r){if(t&&Module.ctx&&e==Module.canvas)return Module.ctx;var i,o;if(t){var u={antialias:!1,alpha:!1};if(r)for(var a in r)u[a]=r[a];(o=GL.createContext(e,u))&&(i=GL.getContext(o).GLctx)}else i=e.getContext("2d");return i?(n&&(t||assert("undefined"==typeof GLctx,"cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),Module.ctx=i,t&&GL.makeContextCurrent(o),Module.useWebGL=t,Browser.moduleContextCreatedCallbacks.forEach((function(e){e()})),Browser.init()),i):null},destroyContext:function(e,t,n){},fullscreenHandlersInstalled:!1,lockPointer:void 0,resizeCanvas:void 0,requestFullscreen:function(e,t,n){Browser.lockPointer=e,Browser.resizeCanvas=t,Browser.vrDevice=n,void 0===Browser.lockPointer&&(Browser.lockPointer=!0),void 0===Browser.resizeCanvas&&(Browser.resizeCanvas=!1),void 0===Browser.vrDevice&&(Browser.vrDevice=null);var r=Module.canvas;function i(){Browser.isFullscreen=!1;var e=r.parentNode;(document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===e?(r.exitFullscreen=document.exitFullscreen||document.cancelFullScreen||document.mozCancelFullScreen||document.msExitFullscreen||document.webkitCancelFullScreen||function(){},r.exitFullscreen=r.exitFullscreen.bind(document),Browser.lockPointer&&r.requestPointerLock(),Browser.isFullscreen=!0,Browser.resizeCanvas&&Browser.setFullscreenCanvasSize()):(e.parentNode.insertBefore(r,e),e.parentNode.removeChild(e),Browser.resizeCanvas&&Browser.setWindowedCanvasSize()),Module.onFullScreen&&Module.onFullScreen(Browser.isFullscreen),Module.onFullscreen&&Module.onFullscreen(Browser.isFullscreen),Browser.updateCanvasDimensions(r)}Browser.fullscreenHandlersInstalled||(Browser.fullscreenHandlersInstalled=!0,document.addEventListener("fullscreenchange",i,!1),document.addEventListener("mozfullscreenchange",i,!1),document.addEventListener("webkitfullscreenchange",i,!1),document.addEventListener("MSFullscreenChange",i,!1));var o=document.createElement("div");r.parentNode.insertBefore(o,r),o.appendChild(r),o.requestFullscreen=o.requestFullscreen||o.mozRequestFullScreen||o.msRequestFullscreen||(o.webkitRequestFullscreen?function(){o.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT)}:null)||(o.webkitRequestFullScreen?function(){o.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:null),n?o.requestFullscreen({vrDisplay:n}):o.requestFullscreen()},requestFullScreen:function(e,t,n){return Module.printErr("Browser.requestFullScreen() is deprecated. Please call Browser.requestFullscreen instead."),Browser.requestFullScreen=function(e,t,n){return Browser.requestFullscreen(e,t,n)},Browser.requestFullscreen(e,t,n)},nextRAF:0,fakeRequestAnimationFrame:function(e){var t=Date.now();if(0===Browser.nextRAF)Browser.nextRAF=t+1e3/60;else for(;t+2>=Browser.nextRAF;)Browser.nextRAF+=1e3/60;var n=Math.max(Browser.nextRAF-t,0);setTimeout(e,n)},requestAnimationFrame:function(e){"undefined"==typeof window?Browser.fakeRequestAnimationFrame(e):(window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||Browser.fakeRequestAnimationFrame),window.requestAnimationFrame(e))},safeCallback:function(e){return function(){if(!ABORT)return e.apply(null,arguments)}},allowAsyncCallbacks:!0,queuedAsyncCallbacks:[],pauseAsyncCallbacks:function(){Browser.allowAsyncCallbacks=!1},resumeAsyncCallbacks:function(){if(Browser.allowAsyncCallbacks=!0,Browser.queuedAsyncCallbacks.length>0){var e=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[],e.forEach((function(e){e()}))}},safeRequestAnimationFrame:function(e){return Browser.requestAnimationFrame((function(){ABORT||(Browser.allowAsyncCallbacks?e():Browser.queuedAsyncCallbacks.push(e))}))},safeSetTimeout:function(e,t){return Module.noExitRuntime=!0,setTimeout((function(){ABORT||(Browser.allowAsyncCallbacks?e():Browser.queuedAsyncCallbacks.push(e))}),t)},safeSetInterval:function(e,t){return Module.noExitRuntime=!0,setInterval((function(){ABORT||Browser.allowAsyncCallbacks&&e()}),t)},getMimetype:function(e){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[e.substr(e.lastIndexOf(".")+1)]},getUserMedia:function(e){window.getUserMedia||(window.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia),window.getUserMedia(e)},getMovementX:function(e){return e.movementX||e.mozMovementX||e.webkitMovementX||0},getMovementY:function(e){return e.movementY||e.mozMovementY||e.webkitMovementY||0},getMouseWheelDelta:function(e){var t=0;switch(e.type){case"DOMMouseScroll":t=e.detail;break;case"mousewheel":t=e.wheelDelta;break;case"wheel":t=e.deltaY;break;default:throw"unrecognized mouse wheel event: "+e.type}return t},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:function(e){if(Browser.pointerLock)"mousemove"!=e.type&&"mozMovementX"in e?Browser.mouseMovementX=Browser.mouseMovementY=0:(Browser.mouseMovementX=Browser.getMovementX(e),Browser.mouseMovementY=Browser.getMovementY(e)),"undefined"!=typeof SDL?(Browser.mouseX=SDL.mouseX+Browser.mouseMovementX,Browser.mouseY=SDL.mouseY+Browser.mouseMovementY):(Browser.mouseX+=Browser.mouseMovementX,Browser.mouseY+=Browser.mouseMovementY);else{var t=Module.canvas.getBoundingClientRect(),n=Module.canvas.width,r=Module.canvas.height,i=void 0!==window.scrollX?window.scrollX:window.pageXOffset,o=void 0!==window.scrollY?window.scrollY:window.pageYOffset;if("touchstart"===e.type||"touchend"===e.type||"touchmove"===e.type){var u=e.touch;if(void 0===u)return;var a=u.pageX-(i+t.left),l=u.pageY-(o+t.top),s={x:a*=n/t.width,y:l*=r/t.height};if("touchstart"===e.type)Browser.lastTouches[u.identifier]=s,Browser.touches[u.identifier]=s;else if("touchend"===e.type||"touchmove"===e.type){var c=Browser.touches[u.identifier];c||(c=s),Browser.lastTouches[u.identifier]=c,Browser.touches[u.identifier]=s}return}var f=e.pageX-(i+t.left),d=e.pageY-(o+t.top);f*=n/t.width,d*=r/t.height,Browser.mouseMovementX=f-Browser.mouseX,Browser.mouseMovementY=d-Browser.mouseY,Browser.mouseX=f,Browser.mouseY=d}},asyncLoad:function(e,t,n,r){var i=r?"":getUniqueRunDependency("al "+e);Module.readAsync(e,(function(n){assert(n,'Loading data file "'+e+'" failed (no arrayBuffer).'),t(new Uint8Array(n)),i&&removeRunDependency(i)}),(function(t){if(!n)throw'Loading data file "'+e+'" failed.';n()})),i&&addRunDependency(i)},resizeListeners:[],updateResizeListeners:function(){var e=Module.canvas;Browser.resizeListeners.forEach((function(t){t(e.width,e.height)}))},setCanvasSize:function(e,t,n){var r=Module.canvas;Browser.updateCanvasDimensions(r,e,t),n||Browser.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullscreenCanvasSize:function(){if("undefined"!=typeof SDL){var e=HEAPU32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2];e|=8388608,HEAP32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2]=e}Browser.updateResizeListeners()},setWindowedCanvasSize:function(){if("undefined"!=typeof SDL){var e=HEAPU32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2];e&=-8388609,HEAP32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2]=e}Browser.updateResizeListeners()},updateCanvasDimensions:function(e,t,n){t&&n?(e.widthNative=t,e.heightNative=n):(t=e.widthNative,n=e.heightNative);var r=t,i=n;if(Module.forcedAspectRatio&&Module.forcedAspectRatio>0&&(r/i>2]},getStr:function(){return Pointer_stringify(SYSCALLS.get())},get64:function(){var e=SYSCALLS.get(),t=SYSCALLS.get();return assert(e>=0?0===t:-1===t),e},getZero:function(){assert(0===SYSCALLS.get())}};function ___syscall6(e,t){SYSCALLS.varargs=t;try{var n=SYSCALLS.getStreamFromFD();return FS.close(n),0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___syscall54(e,t){SYSCALLS.varargs=t;try{return 0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function _typeModule(e){var t=[[0,1,"X"],[1,1,"const X"],[128,1,"X *"],[256,1,"X &"],[384,1,"X &&"],[512,1,"std::shared_ptr"],[640,1,"std::unique_ptr"],[5120,1,"std::vector"],[6144,2,"std::array"],[9216,-1,"std::function"]];function n(e,t,n,r,i,o){if(1==t){var u=896&r;128!=u&&256!=u&&384!=u||(e="X const")}return(o?n.replace("X",e).replace("Y",i):e.replace("X",n).replace("Y",i)).replace(/([*&]) (?=[*&])/g,"$1")}function r(e,t){var n=t.flags,r=896&n,i=15360&n;return t.name||1024!=i||(1==t.ptrSize?t.name=(16&n?"":(8&n?"un":"")+"signed ")+"char":t.name=(8&n?"u":"")+(32&n?"float":"int")+8*t.ptrSize+"_t"),8!=t.ptrSize||32&n||(i=64),2048==i&&(512==r||640==r?i=4096:r&&(i=3072)),e(i,t)}var i={Type:function(){function e(e){this.id=e.id,this.name=e.name,this.flags=e.flags,this.spec=e}return e.prototype.toString=function(){return this.name},e}(),getComplexType:function e(i,o,u,a,l,s,c,f){void 0===s&&(s="X"),void 0===f&&(f=1);var d=u(i);if(d)return d;var p,h=a(i),m=h.placeholderFlag,v=t[m];c&&v&&(s=n(c[2],c[0],s,v[0],"?",!0)),0==m&&(p="Unbound"),m>=10&&(p="Corrupt"),f>20&&(p="Deeply nested"),p&&function(e,t,n,r,i){throw new Error(e+" type "+n.replace("X",t+"?")+(r?" with flag "+r:"")+" in "+i)}(p,i,s,m,l||"?");var b,g=e(h.paramList[0],o,u,a,l,s,v,f+1),_={flags:v[0],id:i,name:"",paramList:[g]},y=[],D="?";switch(h.placeholderFlag){case 1:b=g.spec;break;case 2:if(1024==(15360&g.flags)&&1==g.spec.ptrSize){_.flags=7168;break}case 3:case 6:case 5:b=g.spec,g.flags;break;case 8:D=""+h.paramList[1],_.paramList.push(h.paramList[1]);break;case 9:for(var w=0,E=h.paramList[1];w>2]=e),e}function _llvm_stacksave(){var e=_llvm_stacksave;return e.LLVM_SAVEDSTACKS||(e.LLVM_SAVEDSTACKS=[]),e.LLVM_SAVEDSTACKS.push(Runtime.stackSave()),e.LLVM_SAVEDSTACKS.length-1}function ___syscall140(e,t){SYSCALLS.varargs=t;try{var n=SYSCALLS.getStreamFromFD(),r=(SYSCALLS.get(),SYSCALLS.get()),i=SYSCALLS.get(),o=SYSCALLS.get(),u=r;return FS.llseek(n,u,o),HEAP32[i>>2]=n.position,n.getdents&&0===u&&0===o&&(n.getdents=null),0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___syscall146(e,t){SYSCALLS.varargs=t;try{var n=SYSCALLS.get(),r=SYSCALLS.get(),i=SYSCALLS.get(),o=0;___syscall146.buffer||(___syscall146.buffers=[null,[],[]],___syscall146.printChar=function(e,t){var n=___syscall146.buffers[e];assert(n),0===t||10===t?((1===e?Module.print:Module.printErr)(UTF8ArrayToString(n,0)),n.length=0):n.push(t)});for(var u=0;u>2],l=HEAP32[r+(8*u+4)>>2],s=0;se.pageSize/2||t>e.pageSize-n?_nbind.typeNameTbl.NBind.proto.lalloc(t):(HEAPU32[e.usedPtr]=n+t,e.rootPtr+n)},e.lreset=function(t,n){HEAPU32[e.pagePtr]?_nbind.typeNameTbl.NBind.proto.lreset(t,n):HEAPU32[e.usedPtr]=t},e}();function constructType(e,t){var n=new(10240==e?_nbind.makeTypeNameTbl[t.name]||_nbind.BindType:_nbind.makeTypeKindTbl[e])(t);return typeIdTbl[t.id]=n,_nbind.typeNameTbl[t.name]=n,n}function getType(e){return typeIdTbl[e]}function queryType(e){var t=HEAPU8[e],n=_nbind.structureList[t][1];e/=4,n<0&&(++e,n=HEAPU32[e]+1);var r=Array.prototype.slice.call(HEAPU32.subarray(e+1,e+1+n));return 9==t&&(r=[r[0],r.slice(1)]),{paramList:r,placeholderFlag:t}}function getTypes(e,t){return e.map((function(e){return"number"==typeof e?_nbind.getComplexType(e,constructType,getType,queryType,t):_nbind.typeNameTbl[e]}))}function readTypeIdList(e,t){return Array.prototype.slice.call(HEAPU32,e/4,e/4+t)}function readAsciiString(e){for(var t=e;HEAPU8[t++];);return String.fromCharCode.apply("",HEAPU8.subarray(e,t-1))}function readPolicyList(e){var t={};if(e)for(;;){var n=HEAPU32[e/4];if(!n)break;t[readAsciiString(n)]=!0,e+=4}return t}function getDynCall(e,t){var n={float32_t:"d",float64_t:"d",int64_t:"d",uint64_t:"d",void:"v"},r=e.map((function(e){return n[e.name]||"i"})).join(""),i=Module["dynCall_"+r];if(!i)throw new Error("dynCall_"+r+" not found for "+t+"("+e.map((function(e){return e.name})).join(", ")+")");return i}function addMethod(e,t,n,r){var i=e[t];e.hasOwnProperty(t)&&i?((i.arity||0===i.arity)&&(i=_nbind.makeOverloader(i,i.arity),e[t]=i),i.addMethod(n,r)):(n.arity=r,e[t]=n)}function throwError(e){throw new Error(e)}_nbind.Pool=Pool,_nbind.constructType=constructType,_nbind.getType=getType,_nbind.queryType=queryType,_nbind.getTypes=getTypes,_nbind.readTypeIdList=readTypeIdList,_nbind.readAsciiString=readAsciiString,_nbind.readPolicyList=readPolicyList,_nbind.getDynCall=getDynCall,_nbind.addMethod=addMethod,_nbind.throwError=throwError,_nbind.bigEndian=!1,_a=_typeModule(_typeModule),_nbind.Type=_a.Type,_nbind.makeType=_a.makeType,_nbind.getComplexType=_a.getComplexType,_nbind.structureList=_a.structureList;var BindType=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.heap=HEAPU32,t.ptrSize=4,t}return __extends(t,e),t.prototype.needsWireRead=function(e){return!!this.wireRead||!!this.makeWireRead},t.prototype.needsWireWrite=function(e){return!!this.wireWrite||!!this.makeWireWrite},t}(_nbind.Type);_nbind.BindType=BindType;var PrimitiveType=function(e){function t(t){var n=e.call(this,t)||this,r=32&t.flags?{32:HEAPF32,64:HEAPF64}:8&t.flags?{8:HEAPU8,16:HEAPU16,32:HEAPU32}:{8:HEAP8,16:HEAP16,32:HEAP32};return n.heap=r[8*t.ptrSize],n.ptrSize=t.ptrSize,n}return __extends(t,e),t.prototype.needsWireWrite=function(e){return!!e&&!!e.Strict},t.prototype.makeWireWrite=function(e,t){return t&&t.Strict&&function(e){if("number"==typeof e)return e;throw new Error("Type mismatch")}},t}(BindType);function pushCString(e,t){if(null==e){if(t&&t.Nullable)return 0;throw new Error("Type mismatch")}if(t&&t.Strict){if("string"!=typeof e)throw new Error("Type mismatch")}else e=e.toString();var n=Module.lengthBytesUTF8(e)+1,r=_nbind.Pool.lalloc(n);return Module.stringToUTF8Array(e,HEAPU8,r,n),r}function popCString(e){return 0===e?null:Module.Pointer_stringify(e)}_nbind.PrimitiveType=PrimitiveType,_nbind.pushCString=pushCString,_nbind.popCString=popCString;var CStringType=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.wireRead=popCString,t.wireWrite=pushCString,t.readResources=[_nbind.resources.pool],t.writeResources=[_nbind.resources.pool],t}return __extends(t,e),t.prototype.makeWireWrite=function(e,t){return function(e){return pushCString(e,t)}},t}(BindType);_nbind.CStringType=CStringType;var BooleanType=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.wireRead=function(e){return!!e},t}return __extends(t,e),t.prototype.needsWireWrite=function(e){return!!e&&!!e.Strict},t.prototype.makeWireRead=function(e){return"!!("+e+")"},t.prototype.makeWireWrite=function(e,t){return t&&t.Strict&&function(e){if("boolean"==typeof e)return e;throw new Error("Type mismatch")}||e},t}(BindType);_nbind.BooleanType=BooleanType;var Wrapper=function(){function e(){}return e.prototype.persist=function(){this.__nbindState|=1},e}();function makeBound(e,t){var n=function(e){function n(t,r,i,o){var u=e.call(this)||this;if(!(u instanceof n))return new(Function.prototype.bind.apply(n,Array.prototype.concat.apply([null],arguments)));var a=r,l=i,s=o;if(t!==_nbind.ptrMarker){var c=u.__nbindConstructor.apply(u,arguments);a=4608,s=HEAPU32[c/4],l=HEAPU32[c/4+1]}var f={configurable:!0,enumerable:!1,value:null,writable:!1},d={__nbindFlags:a,__nbindPtr:l};s&&(d.__nbindShared=s,_nbind.mark(u));for(var p=0,h=Object.keys(d);p>=1;var n=_nbind.valueList[e];return _nbind.valueList[e]=firstFreeValue,firstFreeValue=e,n}if(t)return _nbind.popShared(e,t);throw new Error("Invalid value slot "+e)}_nbind.pushValue=pushValue,_nbind.popValue=popValue;var valueBase=0x10000000000000000;function push64(e){return"number"==typeof e?e:4096*pushValue(e)+valueBase}function pop64(e){return e=3?Buffer.from(o):new Buffer(o)).copy(r):getBuffer(r).set(o)}}_nbind.BufferType=BufferType,_nbind.commitBuffer=commitBuffer;var dirtyList=[],gcTimer=0;function sweep(){for(var e=0,t=dirtyList;e>2]=DYNAMIC_BASE,staticSealed=!0,Module.asmGlobalArg={Math,Int8Array,Int16Array,Int32Array,Uint8Array,Uint16Array,Uint32Array,Float32Array,Float64Array,NaN:NaN,Infinity:1/0},Module.asmLibraryArg={abort,assert,enlargeMemory,getTotalMemory,abortOnCannotGrowMemory,invoke_viiiii,invoke_vif,invoke_vid,invoke_fiff,invoke_vi,invoke_vii,invoke_ii,invoke_viddi,invoke_vidd,invoke_iiii,invoke_diii,invoke_di,invoke_iid,invoke_iii,invoke_viiddi,invoke_viiiiii,invoke_dii,invoke_i,invoke_iiiiii,invoke_viiid,invoke_viififi,invoke_viii,invoke_v,invoke_viid,invoke_idd,invoke_viiii,_emscripten_asm_const_iiiii,_emscripten_asm_const_iiidddddd,_emscripten_asm_const_iiiid,__nbind_reference_external,_emscripten_asm_const_iiiiiiii,_removeAccessorPrefix,_typeModule,__nbind_register_pool,__decorate,_llvm_stackrestore,___cxa_atexit,__extends,__nbind_get_value_object,__ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj,_emscripten_set_main_loop_timing,__nbind_register_primitive,__nbind_register_type,_emscripten_memcpy_big,__nbind_register_function,___setErrNo,__nbind_register_class,__nbind_finish,_abort,_nbind_value,_llvm_stacksave,___syscall54,_defineHidden,_emscripten_set_main_loop,_emscripten_get_now,__nbind_register_callback_signature,_emscripten_asm_const_iiiiii,__nbind_free_external,_emscripten_asm_const_iiii,_emscripten_asm_const_iiididi,___syscall6,_atexit,___syscall140,___syscall146,DYNAMICTOP_PTR,tempDoublePtr,ABORT,STACKTOP,STACK_MAX,cttz_i8,___dso_handle};var asm=function(e,t,n){"use asm";var r=new e.Int8Array(n);var i=new e.Int16Array(n);var o=new e.Int32Array(n);var u=new e.Uint8Array(n);var a=new e.Uint16Array(n);var l=new e.Uint32Array(n);var s=new e.Float32Array(n);var c=new e.Float64Array(n);var f=t.DYNAMICTOP_PTR|0;var d=t.tempDoublePtr|0;var p=t.ABORT|0;var h=t.STACKTOP|0;var m=t.STACK_MAX|0;var v=t.cttz_i8|0;var b=t.___dso_handle|0;var g=0;var _=0;var y=0;var D=0;var w=e.NaN,E=e.Infinity;var C=0,T=0,k=0,S=0,M=0.0;var x=0;var A=e.Math.floor;var P=e.Math.abs;var O=e.Math.sqrt;var R=e.Math.pow;var N=e.Math.cos;var I=e.Math.sin;var F=e.Math.tan;var B=e.Math.acos;var L=e.Math.asin;var U=e.Math.atan;var j=e.Math.atan2;var W=e.Math.exp;var z=e.Math.log;var q=e.Math.ceil;var H=e.Math.imul;var G=e.Math.min;var V=e.Math.max;var Y=e.Math.clz32;var K=e.Math.fround;var $=t.abort;var X=t.assert;var J=t.enlargeMemory;var Q=t.getTotalMemory;var Z=t.abortOnCannotGrowMemory;var ee=t.invoke_viiiii;var te=t.invoke_vif;var ne=t.invoke_vid;var re=t.invoke_fiff;var ie=t.invoke_vi;var oe=t.invoke_vii;var ue=t.invoke_ii;var ae=t.invoke_viddi;var le=t.invoke_vidd;var se=t.invoke_iiii;var ce=t.invoke_diii;var fe=t.invoke_di;var de=t.invoke_iid;var pe=t.invoke_iii;var he=t.invoke_viiddi;var me=t.invoke_viiiiii;var ve=t.invoke_dii;var be=t.invoke_i;var ge=t.invoke_iiiiii;var _e=t.invoke_viiid;var ye=t.invoke_viififi;var De=t.invoke_viii;var we=t.invoke_v;var Ee=t.invoke_viid;var Ce=t.invoke_idd;var Te=t.invoke_viiii;var ke=t._emscripten_asm_const_iiiii;var Se=t._emscripten_asm_const_iiidddddd;var Me=t._emscripten_asm_const_iiiid;var xe=t.__nbind_reference_external;var Ae=t._emscripten_asm_const_iiiiiiii;var Pe=t._removeAccessorPrefix;var Oe=t._typeModule;var Re=t.__nbind_register_pool;var Ne=t.__decorate;var Ie=t._llvm_stackrestore;var Fe=t.___cxa_atexit;var Be=t.__extends;var Le=t.__nbind_get_value_object;var Ue=t.__ZN8facebook4yoga14YGNodeToStringEPNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEP6YGNode14YGPrintOptionsj;var je=t._emscripten_set_main_loop_timing;var We=t.__nbind_register_primitive;var ze=t.__nbind_register_type;var qe=t._emscripten_memcpy_big;var He=t.__nbind_register_function;var Ge=t.___setErrNo;var Ve=t.__nbind_register_class;var Ye=t.__nbind_finish;var Ke=t._abort;var $e=t._nbind_value;var Xe=t._llvm_stacksave;var Je=t.___syscall54;var Qe=t._defineHidden;var Ze=t._emscripten_set_main_loop;var et=t._emscripten_get_now;var tt=t.__nbind_register_callback_signature;var nt=t._emscripten_asm_const_iiiiii;var rt=t.__nbind_free_external;var it=t._emscripten_asm_const_iiii;var ot=t._emscripten_asm_const_iiididi;var ut=t.___syscall6;var at=t._atexit;var lt=t.___syscall140;var st=t.___syscall146;var ct=K(0);const ft=K(0);function dt(e){e=e|0;var t=0;t=h;h=h+e|0;h=h+15&-16;return t|0}function pt(){return h|0}function ht(e){e=e|0;h=e}function mt(e,t){e=e|0;t=t|0;h=e;m=t}function vt(e,t){e=e|0;t=t|0;if(!g){g=e;_=t}}function bt(e){e=e|0;x=e}function gt(){return x|0}function _t(){var e=0,t=0;iM(8104,8,400)|0;iM(8504,408,540)|0;e=9044;t=e+44|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));r[9088]=0;r[9089]=1;o[2273]=0;o[2274]=948;o[2275]=948;Fe(17,8104,b|0)|0;return}function yt(e){e=e|0;Gt(e+948|0);return}function Dt(e){e=K(e);return((Oi(e)|0)&2147483647)>>>0>2139095040|0}function wt(e,t,n){e=e|0;t=t|0;n=n|0;e:do{if(!(o[e+(t<<3)+4>>2]|0)){if((t|2|0)==3?o[e+60>>2]|0:0){e=e+56|0;break}switch(t|0){case 0:case 2:case 4:case 5:{if(o[e+52>>2]|0){e=e+48|0;break e}break}default:{}}if(!(o[e+68>>2]|0)){e=(t|1|0)==5?948:n;break}else{e=e+64|0;break}}else e=e+(t<<3)|0}while(0);return e|0}function Et(e){e=e|0;var t=0;t=Gk(1e3)|0;Ct(e,(t|0)!=0,2456);o[2276]=(o[2276]|0)+1;iM(t|0,8104,1e3)|0;if(r[e+2>>0]|0){o[t+4>>2]=2;o[t+12>>2]=4}o[t+976>>2]=e;return t|0}function Ct(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0;i=h;h=h+16|0;r=i;if(!t){o[r>>2]=n;Br(e,5,3197,r)}h=i;return}function Tt(){return Et(956)|0}function kt(e){e=e|0;var t=0;t=YS(1e3)|0;St(t,e);Ct(o[e+976>>2]|0,1,2456);o[2276]=(o[2276]|0)+1;o[t+944>>2]=0;return t|0}function St(e,t){e=e|0;t=t|0;var n=0;iM(e|0,t|0,948)|0;jr(e+948|0,t+948|0);n=e+960|0;e=t+960|0;t=n+40|0;do{o[n>>2]=o[e>>2];n=n+4|0;e=e+4|0}while((n|0)<(t|0));return}function Mt(e){e=e|0;var t=0,n=0,r=0,i=0;t=e+944|0;n=o[t>>2]|0;if(n|0){xt(n+948|0,e)|0;o[t>>2]=0}n=At(e)|0;if(n|0){t=0;do{o[(Pt(e,t)|0)+944>>2]=0;t=t+1|0}while((t|0)!=(n|0))}n=e+948|0;r=o[n>>2]|0;i=e+952|0;t=o[i>>2]|0;if((t|0)!=(r|0))o[i>>2]=t+(~((t+-4-r|0)>>>2)<<2);Ot(n);Vk(e);o[2276]=(o[2276]|0)+-1;return}function xt(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0;r=o[e>>2]|0;l=e+4|0;n=o[l>>2]|0;u=n;e:do{if((r|0)==(n|0)){i=r;a=4}else{e=r;while(1){if((o[e>>2]|0)==(t|0)){i=e;a=4;break e}e=e+4|0;if((e|0)==(n|0)){e=0;break}}}}while(0);if((a|0)==4)if((i|0)!=(n|0)){r=i+4|0;e=u-r|0;t=e>>2;if(t){sM(i|0,r|0,e|0)|0;n=o[l>>2]|0}e=i+(t<<2)|0;if((n|0)==(e|0))e=1;else{o[l>>2]=n+(~((n+-4-e|0)>>>2)<<2);e=1}}else e=0;return e|0}function At(e){e=e|0;return(o[e+952>>2]|0)-(o[e+948>>2]|0)>>2|0}function Pt(e,t){e=e|0;t=t|0;var n=0;n=o[e+948>>2]|0;if((o[e+952>>2]|0)-n>>2>>>0>t>>>0)e=o[n+(t<<2)>>2]|0;else e=0;return e|0}function Ot(e){e=e|0;var t=0,n=0,r=0,i=0;r=h;h=h+32|0;t=r;i=o[e>>2]|0;n=(o[e+4>>2]|0)-i|0;if(((o[e+8>>2]|0)-i|0)>>>0>n>>>0){i=n>>2;Ri(t,i,i,e+8|0);Ni(e,t);Ii(t)}h=r;return}function Rt(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0;c=At(e)|0;do{if(c|0){if((o[(Pt(e,0)|0)+944>>2]|0)==(e|0)){if(!(xt(e+948|0,t)|0))break;iM(t+400|0,8504,540)|0;o[t+944>>2]=0;Ht(e);break}a=o[(o[e+976>>2]|0)+12>>2]|0;l=e+948|0;s=(a|0)==0;n=0;u=0;do{r=o[(o[l>>2]|0)+(u<<2)>>2]|0;if((r|0)==(t|0))Ht(e);else{i=kt(r)|0;o[(o[l>>2]|0)+(n<<2)>>2]=i;o[i+944>>2]=e;if(!s)Ix[a&15](r,i,e,n);n=n+1|0}u=u+1|0}while((u|0)!=(c|0));if(n>>>0>>0){s=e+948|0;l=e+952|0;a=n;n=o[l>>2]|0;do{u=(o[s>>2]|0)+(a<<2)|0;r=u+4|0;i=n-r|0;t=i>>2;if(!t)i=n;else{sM(u|0,r|0,i|0)|0;n=o[l>>2]|0;i=n}r=u+(t<<2)|0;if((i|0)!=(r|0)){n=i+(~((i+-4-r|0)>>>2)<<2)|0;o[l>>2]=n}a=a+1|0}while((a|0)!=(c|0))}}}while(0);return}function Nt(e){e=e|0;var t=0,n=0,i=0,u=0;It(e,(At(e)|0)==0,2491);It(e,(o[e+944>>2]|0)==0,2545);t=e+948|0;n=o[t>>2]|0;i=e+952|0;u=o[i>>2]|0;if((u|0)!=(n|0))o[i>>2]=u+(~((u+-4-n|0)>>>2)<<2);Ot(t);t=e+976|0;n=o[t>>2]|0;iM(e|0,8104,1e3)|0;if(r[n+2>>0]|0){o[e+4>>2]=2;o[e+12>>2]=4}o[t>>2]=n;return}function It(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0;i=h;h=h+16|0;r=i;if(!t){o[r>>2]=n;Tr(e,5,3197,r)}h=i;return}function Ft(){return o[2276]|0}function Bt(){var e=0;e=Gk(20)|0;Lt((e|0)!=0,2592);o[2277]=(o[2277]|0)+1;o[e>>2]=o[239];o[e+4>>2]=o[240];o[e+8>>2]=o[241];o[e+12>>2]=o[242];o[e+16>>2]=o[243];return e|0}function Lt(e,t){e=e|0;t=t|0;var n=0,r=0;r=h;h=h+16|0;n=r;if(!e){o[n>>2]=t;Tr(0,5,3197,n)}h=r;return}function Ut(e){e=e|0;Vk(e);o[2277]=(o[2277]|0)+-1;return}function jt(e,t){e=e|0;t=t|0;var n=0;if(!t){n=0;t=0}else{It(e,(At(e)|0)==0,2629);n=1}o[e+964>>2]=t;o[e+988>>2]=n;return}function Wt(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;u=r+8|0;i=r+4|0;a=r;o[i>>2]=t;It(e,(o[t+944>>2]|0)==0,2709);It(e,(o[e+964>>2]|0)==0,2763);zt(e);t=e+948|0;o[a>>2]=(o[t>>2]|0)+(n<<2);o[u>>2]=o[a>>2];qt(t,u,i)|0;o[(o[i>>2]|0)+944>>2]=e;Ht(e);h=r;return}function zt(e){e=e|0;var t=0,n=0,r=0,i=0,u=0,a=0,l=0;n=At(e)|0;if(n|0?(o[(Pt(e,0)|0)+944>>2]|0)!=(e|0):0){r=o[(o[e+976>>2]|0)+12>>2]|0;i=e+948|0;u=(r|0)==0;t=0;do{a=o[(o[i>>2]|0)+(t<<2)>>2]|0;l=kt(a)|0;o[(o[i>>2]|0)+(t<<2)>>2]=l;o[l+944>>2]=e;if(!u)Ix[r&15](a,l,e,t);t=t+1|0}while((t|0)!=(n|0))}return}function qt(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0,m=0,v=0,b=0,g=0,_=0;g=h;h=h+64|0;d=g+52|0;l=g+48|0;p=g+28|0;m=g+24|0;v=g+20|0;b=g;r=o[e>>2]|0;u=r;t=r+((o[t>>2]|0)-u>>2<<2)|0;r=e+4|0;i=o[r>>2]|0;a=e+8|0;do{if(i>>>0<(o[a>>2]|0)>>>0){if((t|0)==(i|0)){o[t>>2]=o[n>>2];o[r>>2]=(o[r>>2]|0)+4;break}Fi(e,t,i,t+4|0);if(t>>>0<=n>>>0)n=(o[r>>2]|0)>>>0>n>>>0?n+4|0:n;o[t>>2]=o[n>>2]}else{r=(i-u>>2)+1|0;i=qr(e)|0;if(i>>>0>>0)jS(e);f=o[e>>2]|0;c=(o[a>>2]|0)-f|0;u=c>>1;Ri(b,c>>2>>>0>>1>>>0?u>>>0>>0?r:u:i,t-f>>2,e+8|0);f=b+8|0;r=o[f>>2]|0;u=b+12|0;c=o[u>>2]|0;a=c;s=r;do{if((r|0)==(c|0)){c=b+4|0;r=o[c>>2]|0;_=o[b>>2]|0;i=_;if(r>>>0<=_>>>0){r=a-i>>1;r=(r|0)==0?1:r;Ri(p,r,r>>>2,o[b+16>>2]|0);o[m>>2]=o[c>>2];o[v>>2]=o[f>>2];o[l>>2]=o[m>>2];o[d>>2]=o[v>>2];Li(p,l,d);r=o[b>>2]|0;o[b>>2]=o[p>>2];o[p>>2]=r;r=p+4|0;_=o[c>>2]|0;o[c>>2]=o[r>>2];o[r>>2]=_;r=p+8|0;_=o[f>>2]|0;o[f>>2]=o[r>>2];o[r>>2]=_;r=p+12|0;_=o[u>>2]|0;o[u>>2]=o[r>>2];o[r>>2]=_;Ii(p);r=o[f>>2]|0;break}u=r;a=((u-i>>2)+1|0)/-2|0;l=r+(a<<2)|0;i=s-u|0;u=i>>2;if(u){sM(l|0,r|0,i|0)|0;r=o[c>>2]|0}_=l+(u<<2)|0;o[f>>2]=_;o[c>>2]=r+(a<<2);r=_}}while(0);o[r>>2]=o[n>>2];o[f>>2]=(o[f>>2]|0)+4;t=Bi(e,b,t)|0;Ii(b)}}while(0);h=g;return t|0}function Ht(e){e=e|0;var t=0;do{t=e+984|0;if(r[t>>0]|0)break;r[t>>0]=1;s[e+504>>2]=K(w);e=o[e+944>>2]|0}while((e|0)!=0);return}function Gt(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-4-r|0)>>>2)<<2);$S(n)}return}function Vt(e){e=e|0;return o[e+944>>2]|0}function Yt(e){e=e|0;It(e,(o[e+964>>2]|0)!=0,2832);Ht(e);return}function Kt(e){e=e|0;return(r[e+984>>0]|0)!=0|0}function $t(e,t){e=e|0;t=t|0;if(iS(e,t,400)|0){iM(e|0,t|0,400)|0;Ht(e)}return}function Xt(e){e=e|0;var t=ft;t=K(s[e+44>>2]);e=Dt(t)|0;return K(e?K(0.0):t)}function Jt(e){e=e|0;var t=ft;t=K(s[e+48>>2]);if(Dt(t)|0)t=r[(o[e+976>>2]|0)+2>>0]|0?K(1.0):K(0.0);return K(t)}function Qt(e,t){e=e|0;t=t|0;o[e+980>>2]=t;return}function Zt(e){e=e|0;return o[e+980>>2]|0}function en(e,t){e=e|0;t=t|0;var n=0;n=e+4|0;if((o[n>>2]|0)!=(t|0)){o[n>>2]=t;Ht(e)}return}function tn(e){e=e|0;return o[e+4>>2]|0}function nn(e,t){e=e|0;t=t|0;var n=0;n=e+8|0;if((o[n>>2]|0)!=(t|0)){o[n>>2]=t;Ht(e)}return}function rn(e){e=e|0;return o[e+8>>2]|0}function on(e,t){e=e|0;t=t|0;var n=0;n=e+12|0;if((o[n>>2]|0)!=(t|0)){o[n>>2]=t;Ht(e)}return}function un(e){e=e|0;return o[e+12>>2]|0}function an(e,t){e=e|0;t=t|0;var n=0;n=e+16|0;if((o[n>>2]|0)!=(t|0)){o[n>>2]=t;Ht(e)}return}function ln(e){e=e|0;return o[e+16>>2]|0}function sn(e,t){e=e|0;t=t|0;var n=0;n=e+20|0;if((o[n>>2]|0)!=(t|0)){o[n>>2]=t;Ht(e)}return}function cn(e){e=e|0;return o[e+20>>2]|0}function fn(e,t){e=e|0;t=t|0;var n=0;n=e+24|0;if((o[n>>2]|0)!=(t|0)){o[n>>2]=t;Ht(e)}return}function dn(e){e=e|0;return o[e+24>>2]|0}function pn(e,t){e=e|0;t=t|0;var n=0;n=e+28|0;if((o[n>>2]|0)!=(t|0)){o[n>>2]=t;Ht(e)}return}function hn(e){e=e|0;return o[e+28>>2]|0}function mn(e,t){e=e|0;t=t|0;var n=0;n=e+32|0;if((o[n>>2]|0)!=(t|0)){o[n>>2]=t;Ht(e)}return}function vn(e){e=e|0;return o[e+32>>2]|0}function bn(e,t){e=e|0;t=t|0;var n=0;n=e+36|0;if((o[n>>2]|0)!=(t|0)){o[n>>2]=t;Ht(e)}return}function gn(e){e=e|0;return o[e+36>>2]|0}function _n(e,t){e=e|0;t=K(t);var n=0;n=e+40|0;if(K(s[n>>2])!=t){s[n>>2]=t;Ht(e)}return}function yn(e,t){e=e|0;t=K(t);var n=0;n=e+44|0;if(K(s[n>>2])!=t){s[n>>2]=t;Ht(e)}return}function Dn(e,t){e=e|0;t=K(t);var n=0;n=e+48|0;if(K(s[n>>2])!=t){s[n>>2]=t;Ht(e)}return}function wn(e,t){e=e|0;t=K(t);var n=0,r=0,i=0,u=0;u=Dt(t)|0;n=(u^1)&1;r=e+52|0;i=e+56|0;if(!(u|K(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Ht(e)}return}function En(e,t){e=e|0;t=K(t);var n=0,r=0;r=e+52|0;n=e+56|0;if(!(!(K(s[r>>2])!=t)?(o[n>>2]|0)==2:0)){s[r>>2]=t;r=Dt(t)|0;o[n>>2]=r?3:2;Ht(e)}return}function Cn(e,t){e=e|0;t=t|0;var n=0,r=0;r=t+52|0;n=o[r+4>>2]|0;t=e;o[t>>2]=o[r>>2];o[t+4>>2]=n;return}function Tn(e,t,n){e=e|0;t=t|0;n=K(n);var r=0,i=0,u=0;u=Dt(n)|0;r=(u^1)&1;i=e+132+(t<<3)|0;t=e+132+(t<<3)+4|0;if(!(u|K(s[i>>2])==n?(o[t>>2]|0)==(r|0):0)){s[i>>2]=n;o[t>>2]=r;Ht(e)}return}function kn(e,t,n){e=e|0;t=t|0;n=K(n);var r=0,i=0,u=0;u=Dt(n)|0;r=u?0:2;i=e+132+(t<<3)|0;t=e+132+(t<<3)+4|0;if(!(u|K(s[i>>2])==n?(o[t>>2]|0)==(r|0):0)){s[i>>2]=n;o[t>>2]=r;Ht(e)}return}function Sn(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=t+132+(n<<3)|0;t=o[r+4>>2]|0;n=e;o[n>>2]=o[r>>2];o[n+4>>2]=t;return}function Mn(e,t,n){e=e|0;t=t|0;n=K(n);var r=0,i=0,u=0;u=Dt(n)|0;r=(u^1)&1;i=e+60+(t<<3)|0;t=e+60+(t<<3)+4|0;if(!(u|K(s[i>>2])==n?(o[t>>2]|0)==(r|0):0)){s[i>>2]=n;o[t>>2]=r;Ht(e)}return}function xn(e,t,n){e=e|0;t=t|0;n=K(n);var r=0,i=0,u=0;u=Dt(n)|0;r=u?0:2;i=e+60+(t<<3)|0;t=e+60+(t<<3)+4|0;if(!(u|K(s[i>>2])==n?(o[t>>2]|0)==(r|0):0)){s[i>>2]=n;o[t>>2]=r;Ht(e)}return}function An(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=t+60+(n<<3)|0;t=o[r+4>>2]|0;n=e;o[n>>2]=o[r>>2];o[n+4>>2]=t;return}function Pn(e,t){e=e|0;t=t|0;var n=0;n=e+60+(t<<3)+4|0;if((o[n>>2]|0)!=3){s[e+60+(t<<3)>>2]=K(w);o[n>>2]=3;Ht(e)}return}function On(e,t,n){e=e|0;t=t|0;n=K(n);var r=0,i=0,u=0;u=Dt(n)|0;r=(u^1)&1;i=e+204+(t<<3)|0;t=e+204+(t<<3)+4|0;if(!(u|K(s[i>>2])==n?(o[t>>2]|0)==(r|0):0)){s[i>>2]=n;o[t>>2]=r;Ht(e)}return}function Rn(e,t,n){e=e|0;t=t|0;n=K(n);var r=0,i=0,u=0;u=Dt(n)|0;r=u?0:2;i=e+204+(t<<3)|0;t=e+204+(t<<3)+4|0;if(!(u|K(s[i>>2])==n?(o[t>>2]|0)==(r|0):0)){s[i>>2]=n;o[t>>2]=r;Ht(e)}return}function Nn(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=t+204+(n<<3)|0;t=o[r+4>>2]|0;n=e;o[n>>2]=o[r>>2];o[n+4>>2]=t;return}function In(e,t,n){e=e|0;t=t|0;n=K(n);var r=0,i=0,u=0;u=Dt(n)|0;r=(u^1)&1;i=e+276+(t<<3)|0;t=e+276+(t<<3)+4|0;if(!(u|K(s[i>>2])==n?(o[t>>2]|0)==(r|0):0)){s[i>>2]=n;o[t>>2]=r;Ht(e)}return}function Fn(e,t){e=e|0;t=t|0;return K(s[e+276+(t<<3)>>2])}function Bn(e,t){e=e|0;t=K(t);var n=0,r=0,i=0,u=0;u=Dt(t)|0;n=(u^1)&1;r=e+348|0;i=e+352|0;if(!(u|K(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Ht(e)}return}function Ln(e,t){e=e|0;t=K(t);var n=0,r=0;r=e+348|0;n=e+352|0;if(!(!(K(s[r>>2])!=t)?(o[n>>2]|0)==2:0)){s[r>>2]=t;r=Dt(t)|0;o[n>>2]=r?3:2;Ht(e)}return}function Un(e){e=e|0;var t=0;t=e+352|0;if((o[t>>2]|0)!=3){s[e+348>>2]=K(w);o[t>>2]=3;Ht(e)}return}function jn(e,t){e=e|0;t=t|0;var n=0,r=0;r=t+348|0;n=o[r+4>>2]|0;t=e;o[t>>2]=o[r>>2];o[t+4>>2]=n;return}function Wn(e,t){e=e|0;t=K(t);var n=0,r=0,i=0,u=0;u=Dt(t)|0;n=(u^1)&1;r=e+356|0;i=e+360|0;if(!(u|K(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Ht(e)}return}function zn(e,t){e=e|0;t=K(t);var n=0,r=0;r=e+356|0;n=e+360|0;if(!(!(K(s[r>>2])!=t)?(o[n>>2]|0)==2:0)){s[r>>2]=t;r=Dt(t)|0;o[n>>2]=r?3:2;Ht(e)}return}function qn(e){e=e|0;var t=0;t=e+360|0;if((o[t>>2]|0)!=3){s[e+356>>2]=K(w);o[t>>2]=3;Ht(e)}return}function Hn(e,t){e=e|0;t=t|0;var n=0,r=0;r=t+356|0;n=o[r+4>>2]|0;t=e;o[t>>2]=o[r>>2];o[t+4>>2]=n;return}function Gn(e,t){e=e|0;t=K(t);var n=0,r=0,i=0,u=0;u=Dt(t)|0;n=(u^1)&1;r=e+364|0;i=e+368|0;if(!(u|K(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Ht(e)}return}function Vn(e,t){e=e|0;t=K(t);var n=0,r=0,i=0,u=0;u=Dt(t)|0;n=u?0:2;r=e+364|0;i=e+368|0;if(!(u|K(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Ht(e)}return}function Yn(e,t){e=e|0;t=t|0;var n=0,r=0;r=t+364|0;n=o[r+4>>2]|0;t=e;o[t>>2]=o[r>>2];o[t+4>>2]=n;return}function Kn(e,t){e=e|0;t=K(t);var n=0,r=0,i=0,u=0;u=Dt(t)|0;n=(u^1)&1;r=e+372|0;i=e+376|0;if(!(u|K(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Ht(e)}return}function $n(e,t){e=e|0;t=K(t);var n=0,r=0,i=0,u=0;u=Dt(t)|0;n=u?0:2;r=e+372|0;i=e+376|0;if(!(u|K(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Ht(e)}return}function Xn(e,t){e=e|0;t=t|0;var n=0,r=0;r=t+372|0;n=o[r+4>>2]|0;t=e;o[t>>2]=o[r>>2];o[t+4>>2]=n;return}function Jn(e,t){e=e|0;t=K(t);var n=0,r=0,i=0,u=0;u=Dt(t)|0;n=(u^1)&1;r=e+380|0;i=e+384|0;if(!(u|K(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Ht(e)}return}function Qn(e,t){e=e|0;t=K(t);var n=0,r=0,i=0,u=0;u=Dt(t)|0;n=u?0:2;r=e+380|0;i=e+384|0;if(!(u|K(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Ht(e)}return}function Zn(e,t){e=e|0;t=t|0;var n=0,r=0;r=t+380|0;n=o[r+4>>2]|0;t=e;o[t>>2]=o[r>>2];o[t+4>>2]=n;return}function er(e,t){e=e|0;t=K(t);var n=0,r=0,i=0,u=0;u=Dt(t)|0;n=(u^1)&1;r=e+388|0;i=e+392|0;if(!(u|K(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Ht(e)}return}function tr(e,t){e=e|0;t=K(t);var n=0,r=0,i=0,u=0;u=Dt(t)|0;n=u?0:2;r=e+388|0;i=e+392|0;if(!(u|K(s[r>>2])==t?(o[i>>2]|0)==(n|0):0)){s[r>>2]=t;o[i>>2]=n;Ht(e)}return}function nr(e,t){e=e|0;t=t|0;var n=0,r=0;r=t+388|0;n=o[r+4>>2]|0;t=e;o[t>>2]=o[r>>2];o[t+4>>2]=n;return}function rr(e,t){e=e|0;t=K(t);var n=0;n=e+396|0;if(K(s[n>>2])!=t){s[n>>2]=t;Ht(e)}return}function ir(e){e=e|0;return K(s[e+396>>2])}function or(e){e=e|0;return K(s[e+400>>2])}function ur(e){e=e|0;return K(s[e+404>>2])}function ar(e){e=e|0;return K(s[e+408>>2])}function lr(e){e=e|0;return K(s[e+412>>2])}function sr(e){e=e|0;return K(s[e+416>>2])}function cr(e){e=e|0;return K(s[e+420>>2])}function fr(e,t){e=e|0;t=t|0;It(e,(t|0)<6,2918);switch(t|0){case 0:{t=(o[e+496>>2]|0)==2?5:4;break}case 2:{t=(o[e+496>>2]|0)==2?4:5;break}default:{}}return K(s[e+424+(t<<2)>>2])}function dr(e,t){e=e|0;t=t|0;It(e,(t|0)<6,2918);switch(t|0){case 0:{t=(o[e+496>>2]|0)==2?5:4;break}case 2:{t=(o[e+496>>2]|0)==2?4:5;break}default:{}}return K(s[e+448+(t<<2)>>2])}function pr(e,t){e=e|0;t=t|0;It(e,(t|0)<6,2918);switch(t|0){case 0:{t=(o[e+496>>2]|0)==2?5:4;break}case 2:{t=(o[e+496>>2]|0)==2?4:5;break}default:{}}return K(s[e+472+(t<<2)>>2])}function hr(e,t){e=e|0;t=t|0;var n=0,r=ft;n=o[e+4>>2]|0;if((n|0)==(o[t+4>>2]|0)){if(!n)e=1;else{r=K(s[e>>2]);e=K(P(K(r-K(s[t>>2]))))>2]=0;o[i+4>>2]=0;o[i+8>>2]=0;Ue(i|0,e|0,t|0,0);Tr(e,3,(r[i+11>>0]|0)<0?o[i>>2]|0:i,n);XS(i);h=n;return}function gr(e,t,n,r){e=K(e);t=K(t);n=n|0;r=r|0;var i=ft;e=K(e*t);i=K(BS(e,K(1.0)));do{if(!(mr(i,K(0.0))|0)){e=K(e-i);if(mr(i,K(1.0))|0){e=K(e+K(1.0));break}if(n){e=K(e+K(1.0));break}if(!r){if(i>K(.5))i=K(1.0);else{r=mr(i,K(.5))|0;i=r?K(1.0):K(0.0)}e=K(e+i)}}else e=K(e-i)}while(0);return K(e/t)}function _r(e,t,n,r,i,o,u,a,l,c,f,d,p){e=e|0;t=K(t);n=n|0;r=K(r);i=i|0;o=K(o);u=u|0;a=K(a);l=K(l);c=K(c);f=K(f);d=K(d);p=p|0;var h=0,m=ft,v=ft,b=ft,g=ft,_=ft,y=ft;if(l>2]),m!=K(0.0)):0){b=K(gr(t,m,0,0));g=K(gr(r,m,0,0));v=K(gr(o,m,0,0));m=K(gr(a,m,0,0))}else{v=o;b=t;m=a;g=r}if((i|0)==(e|0))h=mr(v,b)|0;else h=0;if((u|0)==(n|0))p=mr(m,g)|0;else p=0;if((!h?(_=K(t-f),!(yr(e,_,l)|0)):0)?!(Dr(e,_,i,l)|0):0)h=wr(e,_,i,o,l)|0;else h=1;if((!p?(y=K(r-d),!(yr(n,y,c)|0)):0)?!(Dr(n,y,u,c)|0):0)p=wr(n,y,u,a,c)|0;else p=1;p=h&p}return p|0}function yr(e,t,n){e=e|0;t=K(t);n=K(n);if((e|0)==1)e=mr(t,n)|0;else e=0;return e|0}function Dr(e,t,n,r){e=e|0;t=K(t);n=n|0;r=K(r);if((e|0)==2&(n|0)==0){if(!(t>=r))e=mr(t,r)|0;else e=1}else e=0;return e|0}function wr(e,t,n,r,i){e=e|0;t=K(t);n=n|0;r=K(r);i=K(i);if((e|0)==2&(n|0)==2&r>t){if(!(i<=t))e=mr(t,i)|0;else e=1}else e=0;return e|0}function Er(e,t,n,i,u,a,l,f,d,p,m){e=e|0;t=K(t);n=K(n);i=i|0;u=u|0;a=a|0;l=K(l);f=K(f);d=d|0;p=p|0;m=m|0;var v=0,b=0,g=0,_=0,y=ft,D=ft,w=0,E=0,C=0,T=0,k=0,S=0,M=0,x=0,A=0,P=0,O=0,R=ft,N=ft,I=ft,F=0.0,B=0.0;O=h;h=h+160|0;x=O+152|0;M=O+120|0;S=O+104|0;C=O+72|0;_=O+56|0;k=O+8|0;E=O;T=(o[2279]|0)+1|0;o[2279]=T;A=e+984|0;if((r[A>>0]|0)!=0?(o[e+512>>2]|0)!=(o[2278]|0):0)w=4;else if((o[e+516>>2]|0)==(i|0))P=0;else w=4;if((w|0)==4){o[e+520>>2]=0;o[e+924>>2]=-1;o[e+928>>2]=-1;s[e+932>>2]=K(-1.0);s[e+936>>2]=K(-1.0);P=1}e:do{if(!(o[e+964>>2]|0)){if(d){v=e+916|0;if(!(mr(K(s[v>>2]),t)|0)){w=21;break}if(!(mr(K(s[e+920>>2]),n)|0)){w=21;break}if((o[e+924>>2]|0)!=(u|0)){w=21;break}v=(o[e+928>>2]|0)==(a|0)?v:0;w=22;break}g=o[e+520>>2]|0;if(!g)w=21;else{b=0;while(1){v=e+524+(b*24|0)|0;if(((mr(K(s[v>>2]),t)|0?mr(K(s[e+524+(b*24|0)+4>>2]),n)|0:0)?(o[e+524+(b*24|0)+8>>2]|0)==(u|0):0)?(o[e+524+(b*24|0)+12>>2]|0)==(a|0):0){w=22;break e}b=b+1|0;if(b>>>0>=g>>>0){w=21;break}}}}else{y=K(Cr(e,2,l));D=K(Cr(e,0,l));v=e+916|0;I=K(s[v>>2]);N=K(s[e+920>>2]);R=K(s[e+932>>2]);if(!(_r(u,t,a,n,o[e+924>>2]|0,I,o[e+928>>2]|0,N,R,K(s[e+936>>2]),y,D,m)|0)){g=o[e+520>>2]|0;if(!g)w=21;else{b=0;while(1){v=e+524+(b*24|0)|0;R=K(s[v>>2]);N=K(s[e+524+(b*24|0)+4>>2]);I=K(s[e+524+(b*24|0)+16>>2]);if(_r(u,t,a,n,o[e+524+(b*24|0)+8>>2]|0,R,o[e+524+(b*24|0)+12>>2]|0,N,I,K(s[e+524+(b*24|0)+20>>2]),y,D,m)|0){w=22;break e}b=b+1|0;if(b>>>0>=g>>>0){w=21;break}}}}else w=22}}while(0);do{if((w|0)==21){if(!(r[11697]|0)){v=0;w=31}else{v=0;w=28}}else if((w|0)==22){b=(r[11697]|0)!=0;if(!((v|0)!=0&(P^1)))if(b){w=28;break}else{w=31;break}_=v+16|0;o[e+908>>2]=o[_>>2];g=v+20|0;o[e+912>>2]=o[g>>2];if(!((r[11698]|0)==0|b^1)){o[E>>2]=kr(T)|0;o[E+4>>2]=T;Tr(e,4,2972,E);b=o[e+972>>2]|0;if(b|0)hx[b&127](e);u=Sr(u,d)|0;a=Sr(a,d)|0;B=+K(s[_>>2]);F=+K(s[g>>2]);o[k>>2]=u;o[k+4>>2]=a;c[k+8>>3]=+t;c[k+16>>3]=+n;c[k+24>>3]=B;c[k+32>>3]=F;o[k+40>>2]=p;Tr(e,4,2989,k)}}}while(0);if((w|0)==28){b=kr(T)|0;o[_>>2]=b;o[_+4>>2]=T;o[_+8>>2]=P?3047:11699;Tr(e,4,3038,_);b=o[e+972>>2]|0;if(b|0)hx[b&127](e);k=Sr(u,d)|0;w=Sr(a,d)|0;o[C>>2]=k;o[C+4>>2]=w;c[C+8>>3]=+t;c[C+16>>3]=+n;o[C+24>>2]=p;Tr(e,4,3049,C);w=31}if((w|0)==31){Mr(e,t,n,i,u,a,l,f,d,m);if(r[11697]|0){b=o[2279]|0;k=kr(b)|0;o[S>>2]=k;o[S+4>>2]=b;o[S+8>>2]=P?3047:11699;Tr(e,4,3083,S);b=o[e+972>>2]|0;if(b|0)hx[b&127](e);k=Sr(u,d)|0;S=Sr(a,d)|0;F=+K(s[e+908>>2]);B=+K(s[e+912>>2]);o[M>>2]=k;o[M+4>>2]=S;c[M+8>>3]=F;c[M+16>>3]=B;o[M+24>>2]=p;Tr(e,4,3092,M)}o[e+516>>2]=i;if(!v){b=e+520|0;v=o[b>>2]|0;if((v|0)==16){if(r[11697]|0)Tr(e,4,3124,x);o[b>>2]=0;v=0}if(d)v=e+916|0;else{o[b>>2]=v+1;v=e+524+(v*24|0)|0}s[v>>2]=t;s[v+4>>2]=n;o[v+8>>2]=u;o[v+12>>2]=a;o[v+16>>2]=o[e+908>>2];o[v+20>>2]=o[e+912>>2];v=0}}if(d){o[e+416>>2]=o[e+908>>2];o[e+420>>2]=o[e+912>>2];r[e+985>>0]=1;r[A>>0]=0}o[2279]=(o[2279]|0)+-1;o[e+512>>2]=o[2278];h=O;return P|(v|0)==0|0}function Cr(e,t,n){e=e|0;t=t|0;n=K(n);var r=ft;r=K(Hr(e,t,n));return K(r+K(Gr(e,t,n)))}function Tr(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0;u=h;h=h+16|0;i=u;o[i>>2]=r;if(!e)r=0;else r=o[e+976>>2]|0;Lr(r,e,t,n,i);h=u;return}function kr(e){e=e|0;return(e>>>0>60?3201:3201+(60-e)|0)|0}function Sr(e,t){e=e|0;t=t|0;var n=0,r=0,i=0;i=h;h=h+32|0;n=i+12|0;r=i;o[n>>2]=o[254];o[n+4>>2]=o[255];o[n+8>>2]=o[256];o[r>>2]=o[257];o[r+4>>2]=o[258];o[r+8>>2]=o[259];if((e|0)>2)e=11699;else e=o[(t?r:n)+(e<<2)>>2]|0;h=i;return e|0}function Mr(e,t,n,i,a,l,c,f,p,m){e=e|0;t=K(t);n=K(n);i=i|0;a=a|0;l=l|0;c=K(c);f=K(f);p=p|0;m=m|0;var v=0,b=0,g=0,_=0,y=ft,D=ft,w=ft,E=ft,C=ft,T=ft,k=ft,S=0,M=0,x=0,A=ft,P=ft,O=0,R=ft,N=0,I=0,F=0,B=0,L=0,U=0,j=0,W=0,z=0,q=0,H=0,G=0,V=0,Y=0,$=0,X=0,J=0,Q=0,Z=ft,ee=ft,te=ft,ne=ft,re=ft,ie=0,oe=0,ue=0,ae=0,le=0,se=ft,ce=ft,fe=ft,de=ft,pe=ft,he=ft,me=0,ve=ft,be=ft,ge=ft,_e=ft,ye=ft,De=ft,we=0,Ee=0,Ce=ft,Te=ft,ke=0,Se=0,Me=0,xe=0,Ae=ft,Pe=0,Oe=0,Re=0,Ne=0,Ie=0,Fe=0,Be=0,Le=ft,Ue=0,je=0;Be=h;h=h+16|0;ie=Be+12|0;oe=Be+8|0;ue=Be+4|0;ae=Be;It(e,(a|0)==0|(Dt(t)|0)^1,3326);It(e,(l|0)==0|(Dt(n)|0)^1,3406);Oe=Kr(e,i)|0;o[e+496>>2]=Oe;Ie=$r(2,Oe)|0;Fe=$r(0,Oe)|0;s[e+440>>2]=K(Hr(e,Ie,c));s[e+444>>2]=K(Gr(e,Ie,c));s[e+428>>2]=K(Hr(e,Fe,c));s[e+436>>2]=K(Gr(e,Fe,c));s[e+464>>2]=K(Xr(e,Ie));s[e+468>>2]=K(Jr(e,Ie));s[e+452>>2]=K(Xr(e,Fe));s[e+460>>2]=K(Jr(e,Fe));s[e+488>>2]=K(Qr(e,Ie,c));s[e+492>>2]=K(Zr(e,Ie,c));s[e+476>>2]=K(Qr(e,Fe,c));s[e+484>>2]=K(Zr(e,Fe,c));do{if(!(o[e+964>>2]|0)){Re=e+948|0;Ne=(o[e+952>>2]|0)-(o[Re>>2]|0)>>2;if(!Ne){ti(e,t,n,a,l,c,f);break}if(!p?ni(e,t,n,a,l,c,f)|0:0)break;zt(e);X=e+508|0;r[X>>0]=0;Ie=$r(o[e+4>>2]|0,Oe)|0;Fe=ri(Ie,Oe)|0;Pe=Vr(Ie)|0;J=o[e+8>>2]|0;Se=e+28|0;Q=(o[Se>>2]|0)!=0;ye=Pe?c:f;Ce=Pe?f:c;Z=K(ii(e,Ie,c));ee=K(oi(e,Ie,c));y=K(ii(e,Fe,c));De=K(ui(e,Ie,c));Te=K(ui(e,Fe,c));x=Pe?a:l;ke=Pe?l:a;Ae=Pe?De:Te;C=Pe?Te:De;_e=K(Cr(e,2,c));E=K(Cr(e,0,c));D=K(K(Rr(e+364|0,c))-Ae);w=K(K(Rr(e+380|0,c))-Ae);T=K(K(Rr(e+372|0,f))-C);k=K(K(Rr(e+388|0,f))-C);te=Pe?D:T;ne=Pe?w:k;_e=K(t-_e);t=K(_e-Ae);if(Dt(t)|0)Ae=t;else Ae=K(RS(K(IS(t,w)),D));be=K(n-E);t=K(be-C);if(Dt(t)|0)ge=t;else ge=K(RS(K(IS(t,k)),T));D=Pe?Ae:ge;ve=Pe?ge:Ae;e:do{if((x|0)==1){i=0;b=0;while(1){v=Pt(e,b)|0;if(!i){if(K(li(v))>K(0.0)?K(si(v))>K(0.0):0)i=v;else i=0}else if(ai(v)|0){_=0;break e}b=b+1|0;if(b>>>0>=Ne>>>0){_=i;break}}}else _=0}while(0);S=_+500|0;M=_+504|0;i=0;v=0;t=K(0.0);g=0;do{b=o[(o[Re>>2]|0)+(g<<2)>>2]|0;if((o[b+36>>2]|0)==1){ci(b);r[b+985>>0]=1;r[b+984>>0]=0}else{Pr(b);if(p)Nr(b,Kr(b,Oe)|0,D,ve,Ae);do{if((o[b+24>>2]|0)!=1){if((b|0)==(_|0)){o[S>>2]=o[2278];s[M>>2]=K(0.0);break}else{fi(e,b,Ae,a,ge,Ae,ge,l,Oe,m);break}}else{if(v|0)o[v+960>>2]=b;o[b+960>>2]=0;v=b;i=(i|0)==0?b:i}}while(0);he=K(s[b+504>>2]);t=K(t+K(he+K(Cr(b,Ie,Ae))))}g=g+1|0}while((g|0)!=(Ne|0));F=t>D;me=Q&((x|0)==2&F)?1:x;N=(ke|0)==1;L=N&(p^1);U=(me|0)==1;j=(me|0)==2;W=976+(Ie<<2)|0;z=(ke|2|0)==2;Y=N&(Q^1);q=1040+(Fe<<2)|0;H=1040+(Ie<<2)|0;G=976+(Fe<<2)|0;V=(ke|0)!=1;F=Q&((x|0)!=0&F);I=e+976|0;N=N^1;t=D;O=0;B=0;he=K(0.0);re=K(0.0);while(1){e:do{if(O>>>0>>0){M=o[Re>>2]|0;g=0;k=K(0.0);T=K(0.0);w=K(0.0);D=K(0.0);b=0;v=0;_=O;while(1){S=o[M+(_<<2)>>2]|0;if((o[S+36>>2]|0)!=1?(o[S+940>>2]=B,(o[S+24>>2]|0)!=1):0){E=K(Cr(S,Ie,Ae));$=o[W>>2]|0;n=K(Rr(S+380+($<<3)|0,ye));C=K(s[S+504>>2]);n=K(IS(n,C));n=K(RS(K(Rr(S+364+($<<3)|0,ye)),n));if(Q&(g|0)!=0&K(E+K(T+n))>t){l=g;E=k;x=_;break e}E=K(E+n);n=K(T+E);E=K(k+E);if(ai(S)|0){w=K(w+K(li(S)));D=K(D-K(C*K(si(S))))}if(v|0)o[v+960>>2]=S;o[S+960>>2]=0;g=g+1|0;v=S;b=(b|0)==0?S:b}else{E=k;n=T}_=_+1|0;if(_>>>0>>0){k=E;T=n}else{l=g;x=_;break}}}else{l=0;E=K(0.0);w=K(0.0);D=K(0.0);b=0;x=O}}while(0);$=w>K(0.0)&wK(0.0)&Dne&((Dt(ne)|0)^1))){if(!(r[(o[I>>2]|0)+3>>0]|0)){if(!(A==K(0.0))?!(K(li(e))==K(0.0)):0){$=53;break}t=E;$=53}else $=51}else{t=ne;$=51}}else{t=te;$=51}}else $=51}while(0);if(($|0)==51){$=0;if(Dt(t)|0)$=53;else{P=K(t-E);R=t}}if(($|0)==53){$=0;if(E>2]|0;_=PK(0.0);T=K(P/A);w=K(0.0);E=K(0.0);t=K(0.0);v=b;do{n=K(Rr(v+380+(g<<3)|0,ye));D=K(Rr(v+364+(g<<3)|0,ye));D=K(IS(n,K(RS(D,K(s[v+504>>2])))));if(_){n=K(D*K(si(v)));if(n!=K(-0.0)?(Le=K(D-K(C*n)),se=K(di(v,Ie,Le,R,Ae)),Le!=se):0){w=K(w-K(se-D));t=K(t+n)}}else if((S?(ce=K(li(v)),ce!=K(0.0)):0)?(Le=K(D+K(T*ce)),fe=K(di(v,Ie,Le,R,Ae)),Le!=fe):0){w=K(w-K(fe-D));E=K(E-ce)}v=o[v+960>>2]|0}while((v|0)!=0);t=K(k+t);D=K(P+w);if(!le){C=K(A+E);_=o[W>>2]|0;S=DK(0.0);C=K(D/C);t=K(0.0);do{Le=K(Rr(b+380+(_<<3)|0,ye));w=K(Rr(b+364+(_<<3)|0,ye));w=K(IS(Le,K(RS(w,K(s[b+504>>2])))));if(S){Le=K(w*K(si(b)));D=K(-Le);if(Le!=K(-0.0)){Le=K(T*D);D=K(di(b,Ie,K(w+(M?D:Le)),R,Ae))}else D=w}else if(g?(de=K(li(b)),de!=K(0.0)):0)D=K(di(b,Ie,K(w+K(C*de)),R,Ae));else D=w;t=K(t-K(D-w));E=K(Cr(b,Ie,Ae));n=K(Cr(b,Fe,Ae));D=K(D+E);s[oe>>2]=D;o[ae>>2]=1;w=K(s[b+396>>2]);e:do{if(Dt(w)|0){v=Dt(ve)|0;do{if(!v){if(F|(Or(b,Fe,ve)|0|N))break;if((pi(e,b)|0)!=4)break;if((o[(hi(b,Fe)|0)+4>>2]|0)==3)break;if((o[(mi(b,Fe)|0)+4>>2]|0)==3)break;s[ie>>2]=ve;o[ue>>2]=1;break e}}while(0);if(Or(b,Fe,ve)|0){v=o[b+992+(o[G>>2]<<2)>>2]|0;Le=K(n+K(Rr(v,ve)));s[ie>>2]=Le;v=V&(o[v+4>>2]|0)==2;o[ue>>2]=((Dt(Le)|0|v)^1)&1;break}else{s[ie>>2]=ve;o[ue>>2]=v?0:2;break}}else{Le=K(D-E);A=K(Le/w);Le=K(w*Le);o[ue>>2]=1;s[ie>>2]=K(n+(Pe?A:Le))}}while(0);vi(b,Ie,R,Ae,ae,oe);vi(b,Fe,ve,Ae,ue,ie);do{if(!(Or(b,Fe,ve)|0)?(pi(e,b)|0)==4:0){if((o[(hi(b,Fe)|0)+4>>2]|0)==3){v=0;break}v=(o[(mi(b,Fe)|0)+4>>2]|0)!=3}else v=0}while(0);Le=K(s[oe>>2]);A=K(s[ie>>2]);Ue=o[ae>>2]|0;je=o[ue>>2]|0;Er(b,Pe?Le:A,Pe?A:Le,Oe,Pe?Ue:je,Pe?je:Ue,Ae,ge,p&(v^1),3488,m)|0;r[X>>0]=r[X>>0]|r[b+508>>0];b=o[b+960>>2]|0}while((b|0)!=0)}else t=K(0.0)}else t=K(0.0);t=K(P+t);je=t>0]=je|u[X>>0];if(j&t>K(0.0)){v=o[W>>2]|0;if((o[e+364+(v<<3)+4>>2]|0)!=0?(pe=K(Rr(e+364+(v<<3)|0,ye)),pe>=K(0.0)):0)D=K(RS(K(0.0),K(pe-K(R-t))));else D=K(0.0)}else D=t;S=O>>>0>>0;if(S){_=o[Re>>2]|0;g=O;v=0;do{b=o[_+(g<<2)>>2]|0;if(!(o[b+24>>2]|0)){v=((o[(hi(b,Ie)|0)+4>>2]|0)==3&1)+v|0;v=v+((o[(mi(b,Ie)|0)+4>>2]|0)==3&1)|0}g=g+1|0}while((g|0)!=(x|0));if(v){E=K(0.0);n=K(0.0)}else $=101}else $=101;e:do{if(($|0)==101){$=0;switch(J|0){case 1:{v=0;E=K(D*K(.5));n=K(0.0);break e}case 2:{v=0;E=D;n=K(0.0);break e}case 3:{if(l>>>0<=1){v=0;E=K(0.0);n=K(0.0);break e}n=K((l+-1|0)>>>0);v=0;E=K(0.0);n=K(K(RS(D,K(0.0)))/n);break e}case 5:{n=K(D/K((l+1|0)>>>0));v=0;E=n;break e}case 4:{n=K(D/K(l>>>0));v=0;E=K(n*K(.5));break e}default:{v=0;E=K(0.0);n=K(0.0);break e}}}}while(0);t=K(Z+E);if(S){w=K(D/K(v|0));g=o[Re>>2]|0;b=O;D=K(0.0);do{v=o[g+(b<<2)>>2]|0;e:do{if((o[v+36>>2]|0)!=1){switch(o[v+24>>2]|0){case 1:{if(bi(v,Ie)|0){if(!p)break e;Le=K(gi(v,Ie,R));Le=K(Le+K(Xr(e,Ie)));Le=K(Le+K(Hr(v,Ie,Ae)));s[v+400+(o[H>>2]<<2)>>2]=Le;break e}break}case 0:{je=(o[(hi(v,Ie)|0)+4>>2]|0)==3;Le=K(w+t);t=je?Le:t;if(p){je=v+400+(o[H>>2]<<2)|0;s[je>>2]=K(t+K(s[je>>2]))}je=(o[(mi(v,Ie)|0)+4>>2]|0)==3;Le=K(w+t);t=je?Le:t;if(L){Le=K(n+K(Cr(v,Ie,Ae)));D=ve;t=K(t+K(Le+K(s[v+504>>2])));break e}else{t=K(t+K(n+K(_i(v,Ie,Ae))));D=K(RS(D,K(_i(v,Fe,Ae))));break e}}default:{}}if(p){Le=K(E+K(Xr(e,Ie)));je=v+400+(o[H>>2]<<2)|0;s[je>>2]=K(Le+K(s[je>>2]))}}}while(0);b=b+1|0}while((b|0)!=(x|0))}else D=K(0.0);n=K(ee+t);if(z)E=K(K(di(e,Fe,K(Te+D),Ce,c))-Te);else E=ve;w=K(K(di(e,Fe,K(Te+(Y?ve:D)),Ce,c))-Te);if(S&p){b=O;do{g=o[(o[Re>>2]|0)+(b<<2)>>2]|0;do{if((o[g+36>>2]|0)!=1){if((o[g+24>>2]|0)==1){if(bi(g,Fe)|0){Le=K(gi(g,Fe,ve));Le=K(Le+K(Xr(e,Fe)));Le=K(Le+K(Hr(g,Fe,Ae)));v=o[q>>2]|0;s[g+400+(v<<2)>>2]=Le;if(!(Dt(Le)|0))break}else v=o[q>>2]|0;Le=K(Xr(e,Fe));s[g+400+(v<<2)>>2]=K(Le+K(Hr(g,Fe,Ae)));break}v=pi(e,g)|0;do{if((v|0)==4){if((o[(hi(g,Fe)|0)+4>>2]|0)==3){$=139;break}if((o[(mi(g,Fe)|0)+4>>2]|0)==3){$=139;break}if(Or(g,Fe,ve)|0){t=y;break}Ue=o[g+908+(o[W>>2]<<2)>>2]|0;o[ie>>2]=Ue;t=K(s[g+396>>2]);je=Dt(t)|0;D=(o[d>>2]=Ue,K(s[d>>2]));if(je)t=w;else{P=K(Cr(g,Fe,Ae));Le=K(D/t);t=K(t*D);t=K(P+(Pe?Le:t))}s[oe>>2]=t;s[ie>>2]=K(K(Cr(g,Ie,Ae))+D);o[ue>>2]=1;o[ae>>2]=1;vi(g,Ie,R,Ae,ue,ie);vi(g,Fe,ve,Ae,ae,oe);t=K(s[ie>>2]);P=K(s[oe>>2]);Le=Pe?t:P;t=Pe?P:t;je=((Dt(Le)|0)^1)&1;Er(g,Le,t,Oe,je,((Dt(t)|0)^1)&1,Ae,ge,1,3493,m)|0;t=y}else $=139}while(0);e:do{if(($|0)==139){$=0;t=K(E-K(_i(g,Fe,Ae)));do{if((o[(hi(g,Fe)|0)+4>>2]|0)==3){if((o[(mi(g,Fe)|0)+4>>2]|0)!=3)break;t=K(y+K(RS(K(0.0),K(t*K(.5)))));break e}}while(0);if((o[(mi(g,Fe)|0)+4>>2]|0)==3){t=y;break}if((o[(hi(g,Fe)|0)+4>>2]|0)==3){t=K(y+K(RS(K(0.0),t)));break}switch(v|0){case 1:{t=y;break e}case 2:{t=K(y+K(t*K(.5)));break e}default:{t=K(y+t);break e}}}}while(0);Le=K(he+t);je=g+400+(o[q>>2]<<2)|0;s[je>>2]=K(Le+K(s[je>>2]))}}while(0);b=b+1|0}while((b|0)!=(x|0))}he=K(he+w);re=K(RS(re,n));l=B+1|0;if(x>>>0>=Ne>>>0)break;else{t=R;O=x;B=l}}do{if(p){v=l>>>0>1;if(!v?!(yi(e)|0):0)break;if(!(Dt(ve)|0)){t=K(ve-he);e:do{switch(o[e+12>>2]|0){case 3:{y=K(y+t);T=K(0.0);break}case 2:{y=K(y+K(t*K(.5)));T=K(0.0);break}case 4:{if(ve>he)T=K(t/K(l>>>0));else T=K(0.0);break}case 7:if(ve>he){y=K(y+K(t/K(l<<1>>>0)));T=K(t/K(l>>>0));T=v?T:K(0.0);break e}else{y=K(y+K(t*K(.5)));T=K(0.0);break e}case 6:{T=K(t/K(B>>>0));T=ve>he&v?T:K(0.0);break}default:T=K(0.0)}}while(0);if(l|0){S=1040+(Fe<<2)|0;M=976+(Fe<<2)|0;_=0;b=0;while(1){e:do{if(b>>>0>>0){D=K(0.0);w=K(0.0);t=K(0.0);g=b;while(1){v=o[(o[Re>>2]|0)+(g<<2)>>2]|0;do{if((o[v+36>>2]|0)!=1?(o[v+24>>2]|0)==0:0){if((o[v+940>>2]|0)!=(_|0))break e;if(Di(v,Fe)|0){Le=K(s[v+908+(o[M>>2]<<2)>>2]);t=K(RS(t,K(Le+K(Cr(v,Fe,Ae)))))}if((pi(e,v)|0)!=5)break;pe=K(wi(v));pe=K(pe+K(Hr(v,0,Ae)));Le=K(s[v+912>>2]);Le=K(K(Le+K(Cr(v,0,Ae)))-pe);pe=K(RS(w,pe));Le=K(RS(D,Le));D=Le;w=pe;t=K(RS(t,K(pe+Le)))}}while(0);v=g+1|0;if(v>>>0>>0)g=v;else{g=v;break}}}else{w=K(0.0);t=K(0.0);g=b}}while(0);C=K(T+t);n=y;y=K(y+C);if(b>>>0>>0){E=K(n+w);v=b;do{b=o[(o[Re>>2]|0)+(v<<2)>>2]|0;e:do{if((o[b+36>>2]|0)!=1?(o[b+24>>2]|0)==0:0)switch(pi(e,b)|0){case 1:{Le=K(n+K(Hr(b,Fe,Ae)));s[b+400+(o[S>>2]<<2)>>2]=Le;break e}case 3:{Le=K(K(y-K(Gr(b,Fe,Ae)))-K(s[b+908+(o[M>>2]<<2)>>2]));s[b+400+(o[S>>2]<<2)>>2]=Le;break e}case 2:{Le=K(n+K(K(C-K(s[b+908+(o[M>>2]<<2)>>2]))*K(.5)));s[b+400+(o[S>>2]<<2)>>2]=Le;break e}case 4:{Le=K(n+K(Hr(b,Fe,Ae)));s[b+400+(o[S>>2]<<2)>>2]=Le;if(Or(b,Fe,ve)|0)break e;if(Pe){D=K(s[b+908>>2]);t=K(D+K(Cr(b,Ie,Ae)));w=C}else{w=K(s[b+912>>2]);w=K(w+K(Cr(b,Fe,Ae)));t=C;D=K(s[b+908>>2])}if(mr(t,D)|0?mr(w,K(s[b+912>>2]))|0:0)break e;Er(b,t,w,Oe,1,1,Ae,ge,1,3501,m)|0;break e}case 5:{s[b+404>>2]=K(K(E-K(wi(b)))+K(gi(b,0,ve)));break e}default:break e}}while(0);v=v+1|0}while((v|0)!=(g|0))}_=_+1|0;if((_|0)==(l|0))break;else b=g}}}}}while(0);s[e+908>>2]=K(di(e,2,_e,c,c));s[e+912>>2]=K(di(e,0,be,f,c));if((me|0)!=0?(we=o[e+32>>2]|0,Ee=(me|0)==2,!(Ee&(we|0)!=2)):0){if(Ee&(we|0)==2){t=K(De+R);t=K(RS(K(IS(t,K(Ei(e,Ie,re,ye)))),De));$=198}}else{t=K(di(e,Ie,re,ye,c));$=198}if(($|0)==198)s[e+908+(o[976+(Ie<<2)>>2]<<2)>>2]=t;if((ke|0)!=0?(Me=o[e+32>>2]|0,xe=(ke|0)==2,!(xe&(Me|0)!=2)):0){if(xe&(Me|0)==2){t=K(Te+ve);t=K(RS(K(IS(t,K(Ei(e,Fe,K(Te+he),Ce)))),Te));$=204}}else{t=K(di(e,Fe,K(Te+he),Ce,c));$=204}if(($|0)==204)s[e+908+(o[976+(Fe<<2)>>2]<<2)>>2]=t;if(p){if((o[Se>>2]|0)==2){b=976+(Fe<<2)|0;g=1040+(Fe<<2)|0;v=0;do{_=Pt(e,v)|0;if(!(o[_+24>>2]|0)){Ue=o[b>>2]|0;Le=K(s[e+908+(Ue<<2)>>2]);je=_+400+(o[g>>2]<<2)|0;Le=K(Le-K(s[je>>2]));s[je>>2]=K(Le-K(s[_+908+(Ue<<2)>>2]))}v=v+1|0}while((v|0)!=(Ne|0))}if(i|0){v=Pe?me:a;do{Ci(e,i,Ae,v,ge,Oe,m);i=o[i+960>>2]|0}while((i|0)!=0)}v=(Ie|2|0)==3;b=(Fe|2|0)==3;if(v|b){i=0;do{g=o[(o[Re>>2]|0)+(i<<2)>>2]|0;if((o[g+36>>2]|0)!=1){if(v)Ti(e,g,Ie);if(b)Ti(e,g,Fe)}i=i+1|0}while((i|0)!=(Ne|0))}}}else ei(e,t,n,a,l,c,f)}while(0);h=Be;return}function xr(e,t){e=e|0;t=K(t);var n=0;Ct(e,t>=K(0.0),3147);n=t==K(0.0);s[e+4>>2]=n?K(0.0):t;return}function Ar(e,t,n,i){e=e|0;t=K(t);n=K(n);i=i|0;var u=ft,a=ft,l=0,c=0,f=0;o[2278]=(o[2278]|0)+1;Pr(e);if(!(Or(e,2,t)|0)){u=K(Rr(e+380|0,t));if(!(u>=K(0.0))){f=((Dt(t)|0)^1)&1;u=t}else f=2}else{u=K(Rr(o[e+992>>2]|0,t));f=1;u=K(u+K(Cr(e,2,t)))}if(!(Or(e,0,n)|0)){a=K(Rr(e+388|0,n));if(!(a>=K(0.0))){c=((Dt(n)|0)^1)&1;a=n}else c=2}else{a=K(Rr(o[e+996>>2]|0,n));c=1;a=K(a+K(Cr(e,0,t)))}l=e+976|0;if(Er(e,u,a,i,f,c,t,n,1,3189,o[l>>2]|0)|0?(Nr(e,o[e+496>>2]|0,t,n,t),Ir(e,K(s[(o[l>>2]|0)+4>>2]),K(0.0),K(0.0)),r[11696]|0):0)vr(e,7);return}function Pr(e){e=e|0;var t=0,n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0;l=h;h=h+32|0;a=l+24|0;u=l+16|0;r=l+8|0;i=l;n=0;do{t=e+380+(n<<3)|0;if(!((o[e+380+(n<<3)+4>>2]|0)!=0?(s=t,c=o[s+4>>2]|0,f=r,o[f>>2]=o[s>>2],o[f+4>>2]=c,f=e+364+(n<<3)|0,c=o[f+4>>2]|0,s=i,o[s>>2]=o[f>>2],o[s+4>>2]=c,o[u>>2]=o[r>>2],o[u+4>>2]=o[r+4>>2],o[a>>2]=o[i>>2],o[a+4>>2]=o[i+4>>2],hr(u,a)|0):0))t=e+348+(n<<3)|0;o[e+992+(n<<2)>>2]=t;n=n+1|0}while((n|0)!=2);h=l;return}function Or(e,t,n){e=e|0;t=t|0;n=K(n);var r=0;e=o[e+992+(o[976+(t<<2)>>2]<<2)>>2]|0;switch(o[e+4>>2]|0){case 0:case 3:{e=0;break}case 1:{if(K(s[e>>2])>2])>2]|0){case 2:{t=K(K(K(s[e>>2])*t)/K(100.0));break}case 1:{t=K(s[e>>2]);break}default:t=K(w)}return K(t)}function Nr(e,t,n,r,i){e=e|0;t=t|0;n=K(n);r=K(r);i=K(i);var u=0,a=ft;t=o[e+944>>2]|0?t:1;u=$r(o[e+4>>2]|0,t)|0;t=ri(u,t)|0;n=K(Pi(e,u,n));r=K(Pi(e,t,r));a=K(n+K(Hr(e,u,i)));s[e+400+(o[1040+(u<<2)>>2]<<2)>>2]=a;n=K(n+K(Gr(e,u,i)));s[e+400+(o[1e3+(u<<2)>>2]<<2)>>2]=n;n=K(r+K(Hr(e,t,i)));s[e+400+(o[1040+(t<<2)>>2]<<2)>>2]=n;i=K(r+K(Gr(e,t,i)));s[e+400+(o[1e3+(t<<2)>>2]<<2)>>2]=i;return}function Ir(e,t,n,r){e=e|0;t=K(t);n=K(n);r=K(r);var i=0,u=0,a=ft,l=ft,c=0,f=0,d=ft,p=0,h=ft,m=ft,v=ft,b=ft;if(!(t==K(0.0))){i=e+400|0;b=K(s[i>>2]);u=e+404|0;v=K(s[u>>2]);p=e+416|0;m=K(s[p>>2]);f=e+420|0;a=K(s[f>>2]);h=K(b+n);d=K(v+r);r=K(h+m);l=K(d+a);c=(o[e+988>>2]|0)==1;s[i>>2]=K(gr(b,t,0,c));s[u>>2]=K(gr(v,t,0,c));n=K(BS(K(m*t),K(1.0)));if(mr(n,K(0.0))|0)u=0;else u=(mr(n,K(1.0))|0)^1;n=K(BS(K(a*t),K(1.0)));if(mr(n,K(0.0))|0)i=0;else i=(mr(n,K(1.0))|0)^1;b=K(gr(r,t,c&u,c&(u^1)));s[p>>2]=K(b-K(gr(h,t,0,c)));b=K(gr(l,t,c&i,c&(i^1)));s[f>>2]=K(b-K(gr(d,t,0,c)));u=(o[e+952>>2]|0)-(o[e+948>>2]|0)>>2;if(u|0){i=0;do{Ir(Pt(e,i)|0,t,h,d);i=i+1|0}while((i|0)!=(u|0))}}return}function Fr(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;switch(n|0){case 5:case 0:{e=oS(o[489]|0,r,i)|0;break}default:e=US(r,i)|0}return e|0}function Br(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0;i=h;h=h+16|0;u=i;o[u>>2]=r;Lr(e,0,t,n,u);h=i;return}function Lr(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;e=e|0?e:956;Mx[o[e+8>>2]&1](e,t,n,r,i)|0;if((n|0)==5)Ke();else return}function Ur(e,t,n){e=e|0;t=t|0;n=n|0;r[e+t>>0]=n&1;return}function jr(e,t){e=e|0;t=t|0;var n=0,r=0;o[e>>2]=0;o[e+4>>2]=0;o[e+8>>2]=0;n=t+4|0;r=(o[n>>2]|0)-(o[t>>2]|0)>>2;if(r|0){Wr(e,r);zr(e,o[t>>2]|0,o[n>>2]|0,r)}return}function Wr(e,t){e=e|0;t=t|0;var n=0;if((qr(e)|0)>>>0>>0)jS(e);if(t>>>0>1073741823)Ke();else{n=YS(t<<2)|0;o[e+4>>2]=n;o[e>>2]=n;o[e+8>>2]=n+(t<<2);return}}function zr(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;r=e+4|0;e=n-t|0;if((e|0)>0){iM(o[r>>2]|0,t|0,e|0)|0;o[r>>2]=(o[r>>2]|0)+(e>>>2<<2)}return}function qr(e){e=e|0;return 1073741823}function Hr(e,t,n){e=e|0;t=t|0;n=K(n);if(Vr(t)|0?(o[e+96>>2]|0)!=0:0)e=e+92|0;else e=wt(e+60|0,o[1040+(t<<2)>>2]|0,992)|0;return K(Yr(e,n))}function Gr(e,t,n){e=e|0;t=t|0;n=K(n);if(Vr(t)|0?(o[e+104>>2]|0)!=0:0)e=e+100|0;else e=wt(e+60|0,o[1e3+(t<<2)>>2]|0,992)|0;return K(Yr(e,n))}function Vr(e){e=e|0;return(e|1|0)==3|0}function Yr(e,t){e=e|0;t=K(t);if((o[e+4>>2]|0)==3)t=K(0.0);else t=K(Rr(e,t));return K(t)}function Kr(e,t){e=e|0;t=t|0;e=o[e>>2]|0;return((e|0)==0?(t|0)>1?t:1:e)|0}function $r(e,t){e=e|0;t=t|0;var n=0;e:do{if((t|0)==2){switch(e|0){case 2:{e=3;break e}case 3:break;default:{n=4;break e}}e=2}else n=4}while(0);return e|0}function Xr(e,t){e=e|0;t=t|0;var n=ft;if(!((Vr(t)|0?(o[e+312>>2]|0)!=0:0)?(n=K(s[e+308>>2]),n>=K(0.0)):0))n=K(RS(K(s[(wt(e+276|0,o[1040+(t<<2)>>2]|0,992)|0)>>2]),K(0.0)));return K(n)}function Jr(e,t){e=e|0;t=t|0;var n=ft;if(!((Vr(t)|0?(o[e+320>>2]|0)!=0:0)?(n=K(s[e+316>>2]),n>=K(0.0)):0))n=K(RS(K(s[(wt(e+276|0,o[1e3+(t<<2)>>2]|0,992)|0)>>2]),K(0.0)));return K(n)}function Qr(e,t,n){e=e|0;t=t|0;n=K(n);var r=ft;if(!((Vr(t)|0?(o[e+240>>2]|0)!=0:0)?(r=K(Rr(e+236|0,n)),r>=K(0.0)):0))r=K(RS(K(Rr(wt(e+204|0,o[1040+(t<<2)>>2]|0,992)|0,n)),K(0.0)));return K(r)}function Zr(e,t,n){e=e|0;t=t|0;n=K(n);var r=ft;if(!((Vr(t)|0?(o[e+248>>2]|0)!=0:0)?(r=K(Rr(e+244|0,n)),r>=K(0.0)):0))r=K(RS(K(Rr(wt(e+204|0,o[1e3+(t<<2)>>2]|0,992)|0,n)),K(0.0)));return K(r)}function ei(e,t,n,r,i,u,a){e=e|0;t=K(t);n=K(n);r=r|0;i=i|0;u=K(u);a=K(a);var l=ft,c=ft,f=ft,d=ft,p=ft,m=ft,v=0,b=0,g=0;g=h;h=h+16|0;v=g;b=e+964|0;It(e,(o[b>>2]|0)!=0,3519);l=K(ui(e,2,t));c=K(ui(e,0,t));f=K(Cr(e,2,t));d=K(Cr(e,0,t));if(Dt(t)|0)p=t;else p=K(RS(K(0.0),K(K(t-f)-l)));if(Dt(n)|0)m=n;else m=K(RS(K(0.0),K(K(n-d)-c)));if((r|0)==1&(i|0)==1){s[e+908>>2]=K(di(e,2,K(t-f),u,u));t=K(di(e,0,K(n-d),a,u))}else{Ax[o[b>>2]&1](v,e,p,r,m,i);p=K(l+K(s[v>>2]));m=K(t-f);s[e+908>>2]=K(di(e,2,(r|2|0)==2?p:m,u,u));m=K(c+K(s[v+4>>2]));t=K(n-d);t=K(di(e,0,(i|2|0)==2?m:t,a,u))}s[e+912>>2]=t;h=g;return}function ti(e,t,n,r,i,o,u){e=e|0;t=K(t);n=K(n);r=r|0;i=i|0;o=K(o);u=K(u);var a=ft,l=ft,c=ft,f=ft;c=K(ui(e,2,o));a=K(ui(e,0,o));f=K(Cr(e,2,o));l=K(Cr(e,0,o));t=K(t-f);s[e+908>>2]=K(di(e,2,(r|2|0)==2?c:t,o,o));n=K(n-l);s[e+912>>2]=K(di(e,0,(i|2|0)==2?a:n,u,o));return}function ni(e,t,n,r,i,o,u){e=e|0;t=K(t);n=K(n);r=r|0;i=i|0;o=K(o);u=K(u);var a=0,l=ft,c=ft;a=(r|0)==2;if((!(t<=K(0.0)&a)?!(n<=K(0.0)&(i|0)==2):0)?!((r|0)==1&(i|0)==1):0)e=0;else{l=K(Cr(e,0,o));c=K(Cr(e,2,o));a=t>2]=K(di(e,2,a?K(0.0):t,o,o));t=K(n-l);a=n>2]=K(di(e,0,a?K(0.0):t,u,o));e=1}return e|0}function ri(e,t){e=e|0;t=t|0;if(ki(e)|0)e=$r(2,t)|0;else e=0;return e|0}function ii(e,t,n){e=e|0;t=t|0;n=K(n);n=K(Qr(e,t,n));return K(n+K(Xr(e,t)))}function oi(e,t,n){e=e|0;t=t|0;n=K(n);n=K(Zr(e,t,n));return K(n+K(Jr(e,t)))}function ui(e,t,n){e=e|0;t=t|0;n=K(n);var r=ft;r=K(ii(e,t,n));return K(r+K(oi(e,t,n)))}function ai(e){e=e|0;if(!(o[e+24>>2]|0)){if(K(li(e))!=K(0.0))e=1;else e=K(si(e))!=K(0.0)}else e=0;return e|0}function li(e){e=e|0;var t=ft;if(o[e+944>>2]|0){t=K(s[e+44>>2]);if(Dt(t)|0){t=K(s[e+40>>2]);e=t>K(0.0)&((Dt(t)|0)^1);return K(e?t:K(0.0))}}else t=K(0.0);return K(t)}function si(e){e=e|0;var t=ft,n=0,i=ft;do{if(o[e+944>>2]|0){t=K(s[e+48>>2]);if(Dt(t)|0){n=r[(o[e+976>>2]|0)+2>>0]|0;if(n<<24>>24==0?(i=K(s[e+40>>2]),i>24?K(1.0):K(0.0)}}else t=K(0.0)}while(0);return K(t)}function ci(e){e=e|0;var t=0,n=0;tM(e+400|0,0,540)|0;r[e+985>>0]=1;zt(e);n=At(e)|0;if(n|0){t=e+948|0;e=0;do{ci(o[(o[t>>2]|0)+(e<<2)>>2]|0);e=e+1|0}while((e|0)!=(n|0))}return}function fi(e,t,n,r,i,u,a,l,c,f){e=e|0;t=t|0;n=K(n);r=r|0;i=K(i);u=K(u);a=K(a);l=l|0;c=c|0;f=f|0;var d=0,p=ft,m=0,v=0,b=ft,g=ft,_=0,y=ft,D=0,E=ft,C=0,T=0,k=0,S=0,M=0,x=0,A=0,P=0,O=0,R=0;O=h;h=h+16|0;k=O+12|0;S=O+8|0;M=O+4|0;x=O;P=$r(o[e+4>>2]|0,c)|0;C=Vr(P)|0;p=K(Rr(Si(t)|0,C?u:a));T=Or(t,2,u)|0;A=Or(t,0,a)|0;do{if(!(Dt(p)|0)?!(Dt(C?n:i)|0):0){d=t+504|0;if(!(Dt(K(s[d>>2]))|0)){if(!(Mi(o[t+976>>2]|0,0)|0))break;if((o[t+500>>2]|0)==(o[2278]|0))break}s[d>>2]=K(RS(p,K(ui(t,P,u))))}else m=7}while(0);do{if((m|0)==7){D=C^1;if(!(D|T^1)){a=K(Rr(o[t+992>>2]|0,u));s[t+504>>2]=K(RS(a,K(ui(t,2,u))));break}if(!(C|A^1)){a=K(Rr(o[t+996>>2]|0,a));s[t+504>>2]=K(RS(a,K(ui(t,0,u))));break}s[k>>2]=K(w);s[S>>2]=K(w);o[M>>2]=0;o[x>>2]=0;y=K(Cr(t,2,u));E=K(Cr(t,0,u));if(T){b=K(y+K(Rr(o[t+992>>2]|0,u)));s[k>>2]=b;o[M>>2]=1;v=1}else{v=0;b=K(w)}if(A){p=K(E+K(Rr(o[t+996>>2]|0,a)));s[S>>2]=p;o[x>>2]=1;d=1}else{d=0;p=K(w)}m=o[e+32>>2]|0;if(!(C&(m|0)==2)){if(Dt(b)|0?!(Dt(n)|0):0){s[k>>2]=n;o[M>>2]=2;v=2;b=n}}else m=2;if((!((m|0)==2&D)?Dt(p)|0:0)?!(Dt(i)|0):0){s[S>>2]=i;o[x>>2]=2;d=2;p=i}g=K(s[t+396>>2]);_=Dt(g)|0;do{if(!_){if((v|0)==1&D){s[S>>2]=K(K(b-y)/g);o[x>>2]=1;d=1;m=1;break}if(C&(d|0)==1){s[k>>2]=K(g*K(p-E));o[M>>2]=1;d=1;m=1}else m=v}else m=v}while(0);R=Dt(n)|0;v=(pi(e,t)|0)!=4;if(!(C|T|((r|0)!=1|R)|(v|(m|0)==1))?(s[k>>2]=n,o[M>>2]=1,!_):0){s[S>>2]=K(K(n-y)/g);o[x>>2]=1;d=1}if(!(A|D|((l|0)!=1|(Dt(i)|0))|(v|(d|0)==1))?(s[S>>2]=i,o[x>>2]=1,!_):0){s[k>>2]=K(g*K(i-E));o[M>>2]=1}vi(t,2,u,u,M,k);vi(t,0,a,u,x,S);n=K(s[k>>2]);i=K(s[S>>2]);Er(t,n,i,c,o[M>>2]|0,o[x>>2]|0,u,a,0,3565,f)|0;a=K(s[t+908+(o[976+(P<<2)>>2]<<2)>>2]);s[t+504>>2]=K(RS(a,K(ui(t,P,u))))}}while(0);o[t+500>>2]=o[2278];h=O;return}function di(e,t,n,r,i){e=e|0;t=t|0;n=K(n);r=K(r);i=K(i);r=K(Ei(e,t,n,r));return K(RS(r,K(ui(e,t,i))))}function pi(e,t){e=e|0;t=t|0;t=t+20|0;t=o[((o[t>>2]|0)==0?e+16|0:t)>>2]|0;if((t|0)==5?ki(o[e+4>>2]|0)|0:0)t=1;return t|0}function hi(e,t){e=e|0;t=t|0;if(Vr(t)|0?(o[e+96>>2]|0)!=0:0)t=4;else t=o[1040+(t<<2)>>2]|0;return e+60+(t<<3)|0}function mi(e,t){e=e|0;t=t|0;if(Vr(t)|0?(o[e+104>>2]|0)!=0:0)t=5;else t=o[1e3+(t<<2)>>2]|0;return e+60+(t<<3)|0}function vi(e,t,n,r,i,u){e=e|0;t=t|0;n=K(n);r=K(r);i=i|0;u=u|0;n=K(Rr(e+380+(o[976+(t<<2)>>2]<<3)|0,n));n=K(n+K(Cr(e,t,r)));switch(o[i>>2]|0){case 2:case 1:{i=Dt(n)|0;r=K(s[u>>2]);s[u>>2]=i|r>2]=2;s[u>>2]=n}break}default:{}}return}function bi(e,t){e=e|0;t=t|0;e=e+132|0;if(Vr(t)|0?(o[(wt(e,4,948)|0)+4>>2]|0)!=0:0)e=1;else e=(o[(wt(e,o[1040+(t<<2)>>2]|0,948)|0)+4>>2]|0)!=0;return e|0}function gi(e,t,n){e=e|0;t=t|0;n=K(n);var r=0,i=0;e=e+132|0;if(Vr(t)|0?(r=wt(e,4,948)|0,(o[r+4>>2]|0)!=0):0)i=4;else{r=wt(e,o[1040+(t<<2)>>2]|0,948)|0;if(!(o[r+4>>2]|0))n=K(0.0);else i=4}if((i|0)==4)n=K(Rr(r,n));return K(n)}function _i(e,t,n){e=e|0;t=t|0;n=K(n);var r=ft;r=K(s[e+908+(o[976+(t<<2)>>2]<<2)>>2]);r=K(r+K(Hr(e,t,n)));return K(r+K(Gr(e,t,n)))}function yi(e){e=e|0;var t=0,n=0,r=0;e:do{if(!(ki(o[e+4>>2]|0)|0)){if((o[e+16>>2]|0)!=5){n=At(e)|0;if(!n)t=0;else{t=0;while(1){r=Pt(e,t)|0;if((o[r+24>>2]|0)==0?(o[r+20>>2]|0)==5:0){t=1;break e}t=t+1|0;if(t>>>0>=n>>>0){t=0;break}}}}else t=1}else t=0}while(0);return t|0}function Di(e,t){e=e|0;t=t|0;var n=ft;n=K(s[e+908+(o[976+(t<<2)>>2]<<2)>>2]);return n>=K(0.0)&((Dt(n)|0)^1)|0}function wi(e){e=e|0;var t=ft,n=0,r=0,i=0,u=0,a=0,l=0,c=ft;n=o[e+968>>2]|0;if(!n){u=At(e)|0;do{if(u|0){n=0;i=0;while(1){r=Pt(e,i)|0;if(o[r+940>>2]|0){a=8;break}if((o[r+24>>2]|0)!=1){l=(pi(e,r)|0)==5;if(l){n=r;break}else n=(n|0)==0?r:n}i=i+1|0;if(i>>>0>=u>>>0){a=8;break}}if((a|0)==8)if(!n)break;t=K(wi(n));return K(t+K(s[n+404>>2]))}}while(0);t=K(s[e+912>>2])}else{c=K(s[e+908>>2]);t=K(s[e+912>>2]);t=K(px[n&0](e,c,t));It(e,(Dt(t)|0)^1,3573)}return K(t)}function Ei(e,t,n,r){e=e|0;t=t|0;n=K(n);r=K(r);var i=ft,o=0;if(!(ki(t)|0)){if(Vr(t)|0){t=0;o=3}else{r=K(w);i=K(w)}}else{t=1;o=3}if((o|0)==3){i=K(Rr(e+364+(t<<3)|0,r));r=K(Rr(e+380+(t<<3)|0,r))}o=r=K(0.0)&((Dt(r)|0)^1));n=o?r:n;o=i>=K(0.0)&((Dt(i)|0)^1)&n>2]|0,u)|0;v=ri(g,u)|0;b=Vr(g)|0;p=K(Cr(t,2,n));h=K(Cr(t,0,n));if(!(Or(t,2,n)|0)){if(bi(t,2)|0?xi(t,2)|0:0){l=K(s[e+908>>2]);c=K(Xr(e,2));c=K(l-K(c+K(Jr(e,2))));l=K(gi(t,2,n));l=K(di(t,2,K(c-K(l+K(Ai(t,2,n)))),n,n))}else l=K(w)}else l=K(p+K(Rr(o[t+992>>2]|0,n)));if(!(Or(t,0,i)|0)){if(bi(t,0)|0?xi(t,0)|0:0){c=K(s[e+912>>2]);y=K(Xr(e,0));y=K(c-K(y+K(Jr(e,0))));c=K(gi(t,0,i));c=K(di(t,0,K(y-K(c+K(Ai(t,0,i)))),i,n))}else c=K(w)}else c=K(h+K(Rr(o[t+996>>2]|0,i)));f=Dt(l)|0;d=Dt(c)|0;do{if(f^d?(m=K(s[t+396>>2]),!(Dt(m)|0)):0)if(f){l=K(p+K(K(c-h)*m));break}else{y=K(h+K(K(l-p)/m));c=d?y:c;break}}while(0);d=Dt(l)|0;f=Dt(c)|0;if(d|f){D=(d^1)&1;r=n>K(0.0)&((r|0)!=0&d);l=b?l:r?n:l;Er(t,l,c,u,b?D:r?2:D,d&(f^1)&1,l,c,0,3623,a)|0;l=K(s[t+908>>2]);l=K(l+K(Cr(t,2,n)));c=K(s[t+912>>2]);c=K(c+K(Cr(t,0,n)))}Er(t,l,c,u,1,1,l,c,1,3635,a)|0;if(xi(t,g)|0?!(bi(t,g)|0):0){D=o[976+(g<<2)>>2]|0;y=K(s[e+908+(D<<2)>>2]);y=K(y-K(s[t+908+(D<<2)>>2]));y=K(y-K(Jr(e,g)));y=K(y-K(Gr(t,g,n)));y=K(y-K(Ai(t,g,b?n:i)));s[t+400+(o[1040+(g<<2)>>2]<<2)>>2]=y}else _=21;do{if((_|0)==21){if(!(bi(t,g)|0)?(o[e+8>>2]|0)==1:0){D=o[976+(g<<2)>>2]|0;y=K(s[e+908+(D<<2)>>2]);y=K(K(y-K(s[t+908+(D<<2)>>2]))*K(.5));s[t+400+(o[1040+(g<<2)>>2]<<2)>>2]=y;break}if(!(bi(t,g)|0)?(o[e+8>>2]|0)==2:0){D=o[976+(g<<2)>>2]|0;y=K(s[e+908+(D<<2)>>2]);y=K(y-K(s[t+908+(D<<2)>>2]));s[t+400+(o[1040+(g<<2)>>2]<<2)>>2]=y}}}while(0);if(xi(t,v)|0?!(bi(t,v)|0):0){D=o[976+(v<<2)>>2]|0;y=K(s[e+908+(D<<2)>>2]);y=K(y-K(s[t+908+(D<<2)>>2]));y=K(y-K(Jr(e,v)));y=K(y-K(Gr(t,v,n)));y=K(y-K(Ai(t,v,b?i:n)));s[t+400+(o[1040+(v<<2)>>2]<<2)>>2]=y}else _=30;do{if((_|0)==30?!(bi(t,v)|0):0){if((pi(e,t)|0)==2){D=o[976+(v<<2)>>2]|0;y=K(s[e+908+(D<<2)>>2]);y=K(K(y-K(s[t+908+(D<<2)>>2]))*K(.5));s[t+400+(o[1040+(v<<2)>>2]<<2)>>2]=y;break}D=(pi(e,t)|0)==3;if(D^(o[e+28>>2]|0)==2){D=o[976+(v<<2)>>2]|0;y=K(s[e+908+(D<<2)>>2]);y=K(y-K(s[t+908+(D<<2)>>2]));s[t+400+(o[1040+(v<<2)>>2]<<2)>>2]=y}}}while(0);return}function Ti(e,t,n){e=e|0;t=t|0;n=n|0;var r=ft,i=0;i=o[976+(n<<2)>>2]|0;r=K(s[t+908+(i<<2)>>2]);r=K(K(s[e+908+(i<<2)>>2])-r);r=K(r-K(s[t+400+(o[1040+(n<<2)>>2]<<2)>>2]));s[t+400+(o[1e3+(n<<2)>>2]<<2)>>2]=r;return}function ki(e){e=e|0;return(e|1|0)==1|0}function Si(e){e=e|0;var t=ft;switch(o[e+56>>2]|0){case 0:case 3:{t=K(s[e+40>>2]);if(t>K(0.0)&((Dt(t)|0)^1))e=r[(o[e+976>>2]|0)+2>>0]|0?1056:992;else e=1056;break}default:e=e+52|0}return e|0}function Mi(e,t){e=e|0;t=t|0;return(r[e+t>>0]|0)!=0|0}function xi(e,t){e=e|0;t=t|0;e=e+132|0;if(Vr(t)|0?(o[(wt(e,5,948)|0)+4>>2]|0)!=0:0)e=1;else e=(o[(wt(e,o[1e3+(t<<2)>>2]|0,948)|0)+4>>2]|0)!=0;return e|0}function Ai(e,t,n){e=e|0;t=t|0;n=K(n);var r=0,i=0;e=e+132|0;if(Vr(t)|0?(r=wt(e,5,948)|0,(o[r+4>>2]|0)!=0):0)i=4;else{r=wt(e,o[1e3+(t<<2)>>2]|0,948)|0;if(!(o[r+4>>2]|0))n=K(0.0);else i=4}if((i|0)==4)n=K(Rr(r,n));return K(n)}function Pi(e,t,n){e=e|0;t=t|0;n=K(n);if(bi(e,t)|0)n=K(gi(e,t,n));else n=K(-K(Ai(e,t,n)));return K(n)}function Oi(e){e=K(e);return(s[d>>2]=e,o[d>>2]|0)|0}function Ri(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>1073741823)Ke();else{i=YS(t<<2)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n<<2)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t<<2);return}function Ni(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(0-(i>>2)<<2)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Ii(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~((r+-4-t|0)>>>2)<<2);e=o[e>>2]|0;if(e|0)$S(e);return}function Fi(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0;a=e+4|0;l=o[a>>2]|0;i=l-r|0;u=i>>2;e=t+(u<<2)|0;if(e>>>0>>0){r=l;do{o[r>>2]=o[e>>2];e=e+4|0;r=(o[a>>2]|0)+4|0;o[a>>2]=r}while(e>>>0>>0)}if(u|0)sM(l+(0-u<<2)|0,t|0,i|0)|0;return}function Bi(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0;l=t+4|0;s=o[l>>2]|0;i=o[e>>2]|0;a=n;u=a-i|0;r=s+(0-(u>>2)<<2)|0;o[l>>2]=r;if((u|0)>0)iM(r|0,i|0,u|0)|0;i=e+4|0;u=t+8|0;r=(o[i>>2]|0)-a|0;if((r|0)>0){iM(o[u>>2]|0,n|0,r|0)|0;o[u>>2]=(o[u>>2]|0)+(r>>>2<<2)}a=o[e>>2]|0;o[e>>2]=o[l>>2];o[l>>2]=a;a=o[i>>2]|0;o[i>>2]=o[u>>2];o[u>>2]=a;a=e+8|0;n=t+12|0;e=o[a>>2]|0;o[a>>2]=o[n>>2];o[n>>2]=e;o[t>>2]=o[l>>2];return s|0}function Li(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;a=o[t>>2]|0;u=o[n>>2]|0;if((a|0)!=(u|0)){i=e+8|0;n=((u+-4-a|0)>>>2)+1|0;e=a;r=o[i>>2]|0;do{o[r>>2]=o[e>>2];r=(o[i>>2]|0)+4|0;o[i>>2]=r;e=e+4|0}while((e|0)!=(u|0));o[t>>2]=a+(n<<2)}return}function Ui(){_t();return}function ji(){var e=0;e=YS(4)|0;Wi(e);return e|0}function Wi(e){e=e|0;o[e>>2]=Bt()|0;return}function zi(e){e=e|0;if(e|0){qi(e);$S(e)}return}function qi(e){e=e|0;Ut(o[e>>2]|0);return}function Hi(e,t,n){e=e|0;t=t|0;n=n|0;Ur(o[e>>2]|0,t,n);return}function Gi(e,t){e=e|0;t=K(t);xr(o[e>>2]|0,t);return}function Vi(e,t){e=e|0;t=t|0;return Mi(o[e>>2]|0,t)|0}function Yi(){var e=0;e=YS(8)|0;Ki(e,0);return e|0}function Ki(e,t){e=e|0;t=t|0;if(!t)t=Tt()|0;else t=Et(o[t>>2]|0)|0;o[e>>2]=t;o[e+4>>2]=0;Qt(t,e);return}function $i(e){e=e|0;var t=0;t=YS(8)|0;Ki(t,e);return t|0}function Xi(e){e=e|0;if(e|0){Ji(e);$S(e)}return}function Ji(e){e=e|0;var t=0;Mt(o[e>>2]|0);t=e+4|0;e=o[t>>2]|0;o[t>>2]=0;if(e|0){Qi(e);$S(e)}return}function Qi(e){e=e|0;Zi(e);return}function Zi(e){e=e|0;e=o[e>>2]|0;if(e|0)rt(e|0);return}function eo(e){e=e|0;return Zt(e)|0}function to(e){e=e|0;var t=0,n=0;n=e+4|0;t=o[n>>2]|0;o[n>>2]=0;if(t|0){Qi(t);$S(t)}Nt(o[e>>2]|0);return}function no(e,t){e=e|0;t=t|0;$t(o[e>>2]|0,o[t>>2]|0);return}function ro(e,t){e=e|0;t=t|0;fn(o[e>>2]|0,t);return}function io(e,t,n){e=e|0;t=t|0;n=+n;Tn(o[e>>2]|0,t,K(n));return}function oo(e,t,n){e=e|0;t=t|0;n=+n;kn(o[e>>2]|0,t,K(n));return}function uo(e,t){e=e|0;t=t|0;on(o[e>>2]|0,t);return}function ao(e,t){e=e|0;t=t|0;an(o[e>>2]|0,t);return}function lo(e,t){e=e|0;t=t|0;sn(o[e>>2]|0,t);return}function so(e,t){e=e|0;t=t|0;en(o[e>>2]|0,t);return}function co(e,t){e=e|0;t=t|0;pn(o[e>>2]|0,t);return}function fo(e,t){e=e|0;t=t|0;nn(o[e>>2]|0,t);return}function po(e,t,n){e=e|0;t=t|0;n=+n;Mn(o[e>>2]|0,t,K(n));return}function ho(e,t,n){e=e|0;t=t|0;n=+n;xn(o[e>>2]|0,t,K(n));return}function mo(e,t){e=e|0;t=t|0;Pn(o[e>>2]|0,t);return}function vo(e,t){e=e|0;t=t|0;mn(o[e>>2]|0,t);return}function bo(e,t){e=e|0;t=t|0;bn(o[e>>2]|0,t);return}function go(e,t){e=e|0;t=+t;_n(o[e>>2]|0,K(t));return}function _o(e,t){e=e|0;t=+t;wn(o[e>>2]|0,K(t));return}function yo(e,t){e=e|0;t=+t;En(o[e>>2]|0,K(t));return}function Do(e,t){e=e|0;t=+t;yn(o[e>>2]|0,K(t));return}function wo(e,t){e=e|0;t=+t;Dn(o[e>>2]|0,K(t));return}function Eo(e,t){e=e|0;t=+t;Bn(o[e>>2]|0,K(t));return}function Co(e,t){e=e|0;t=+t;Ln(o[e>>2]|0,K(t));return}function To(e){e=e|0;Un(o[e>>2]|0);return}function ko(e,t){e=e|0;t=+t;Wn(o[e>>2]|0,K(t));return}function So(e,t){e=e|0;t=+t;zn(o[e>>2]|0,K(t));return}function Mo(e){e=e|0;qn(o[e>>2]|0);return}function xo(e,t){e=e|0;t=+t;Gn(o[e>>2]|0,K(t));return}function Ao(e,t){e=e|0;t=+t;Vn(o[e>>2]|0,K(t));return}function Po(e,t){e=e|0;t=+t;Kn(o[e>>2]|0,K(t));return}function Oo(e,t){e=e|0;t=+t;$n(o[e>>2]|0,K(t));return}function Ro(e,t){e=e|0;t=+t;Jn(o[e>>2]|0,K(t));return}function No(e,t){e=e|0;t=+t;Qn(o[e>>2]|0,K(t));return}function Io(e,t){e=e|0;t=+t;er(o[e>>2]|0,K(t));return}function Fo(e,t){e=e|0;t=+t;tr(o[e>>2]|0,K(t));return}function Bo(e,t){e=e|0;t=+t;rr(o[e>>2]|0,K(t));return}function Lo(e,t,n){e=e|0;t=t|0;n=+n;In(o[e>>2]|0,t,K(n));return}function Uo(e,t,n){e=e|0;t=t|0;n=+n;On(o[e>>2]|0,t,K(n));return}function jo(e,t,n){e=e|0;t=t|0;n=+n;Rn(o[e>>2]|0,t,K(n));return}function Wo(e){e=e|0;return dn(o[e>>2]|0)|0}function zo(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0;r=h;h=h+16|0;i=r;Sn(i,o[t>>2]|0,n);qo(e,i);h=r;return}function qo(e,t){e=e|0;t=t|0;Ho(e,o[t+4>>2]|0,+K(s[t>>2]));return}function Ho(e,t,n){e=e|0;t=t|0;n=+n;o[e>>2]=t;c[e+8>>3]=n;return}function Go(e){e=e|0;return un(o[e>>2]|0)|0}function Vo(e){e=e|0;return ln(o[e>>2]|0)|0}function Yo(e){e=e|0;return cn(o[e>>2]|0)|0}function Ko(e){e=e|0;return tn(o[e>>2]|0)|0}function $o(e){e=e|0;return hn(o[e>>2]|0)|0}function Xo(e){e=e|0;return rn(o[e>>2]|0)|0}function Jo(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0;r=h;h=h+16|0;i=r;An(i,o[t>>2]|0,n);qo(e,i);h=r;return}function Qo(e){e=e|0;return vn(o[e>>2]|0)|0}function Zo(e){e=e|0;return gn(o[e>>2]|0)|0}function eu(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;Cn(r,o[t>>2]|0);qo(e,r);h=n;return}function tu(e){e=e|0;return+ +K(Xt(o[e>>2]|0))}function nu(e){e=e|0;return+ +K(Jt(o[e>>2]|0))}function ru(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;jn(r,o[t>>2]|0);qo(e,r);h=n;return}function iu(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;Hn(r,o[t>>2]|0);qo(e,r);h=n;return}function ou(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;Yn(r,o[t>>2]|0);qo(e,r);h=n;return}function uu(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;Xn(r,o[t>>2]|0);qo(e,r);h=n;return}function au(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;Zn(r,o[t>>2]|0);qo(e,r);h=n;return}function lu(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;nr(r,o[t>>2]|0);qo(e,r);h=n;return}function su(e){e=e|0;return+ +K(ir(o[e>>2]|0))}function cu(e,t){e=e|0;t=t|0;return+ +K(Fn(o[e>>2]|0,t))}function fu(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0;r=h;h=h+16|0;i=r;Nn(i,o[t>>2]|0,n);qo(e,i);h=r;return}function du(e,t,n){e=e|0;t=t|0;n=n|0;Wt(o[e>>2]|0,o[t>>2]|0,n);return}function pu(e,t){e=e|0;t=t|0;Rt(o[e>>2]|0,o[t>>2]|0);return}function hu(e){e=e|0;return At(o[e>>2]|0)|0}function mu(e){e=e|0;e=Vt(o[e>>2]|0)|0;if(!e)e=0;else e=eo(e)|0;return e|0}function vu(e,t){e=e|0;t=t|0;e=Pt(o[e>>2]|0,t)|0;if(!e)e=0;else e=eo(e)|0;return e|0}function bu(e,t){e=e|0;t=t|0;var n=0,r=0;r=YS(4)|0;gu(r,t);n=e+4|0;t=o[n>>2]|0;o[n>>2]=r;if(t|0){Qi(t);$S(t)}jt(o[e>>2]|0,1);return}function gu(e,t){e=e|0;t=t|0;Lu(e,t);return}function _u(e,t,n,r,i,o){e=e|0;t=t|0;n=K(n);r=r|0;i=K(i);o=o|0;var u=0,a=0;u=h;h=h+16|0;a=u;yu(a,Zt(t)|0,+n,r,+i,o);s[e>>2]=K(+c[a>>3]);s[e+4>>2]=K(+c[a+8>>3]);h=u;return}function yu(e,t,n,r,i,u){e=e|0;t=t|0;n=+n;r=r|0;i=+i;u=u|0;var a=0,l=0,s=0,f=0,d=0;a=h;h=h+32|0;d=a+8|0;f=a+20|0;s=a;l=a+16|0;c[d>>3]=n;o[f>>2]=r;c[s>>3]=i;o[l>>2]=u;Du(e,o[t+4>>2]|0,d,f,s,l);h=a;return}function Du(e,t,n,r,i,u){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;u=u|0;var a=0,l=0;a=h;h=h+16|0;l=a;Ek(l);t=wu(t)|0;Eu(e,t,+c[n>>3],o[r>>2]|0,+c[i>>3],o[u>>2]|0);Tk(l);h=a;return}function wu(e){e=e|0;return o[e>>2]|0}function Eu(e,t,n,r,i,o){e=e|0;t=t|0;n=+n;r=r|0;i=+i;o=o|0;var u=0;u=Tu(Cu()|0)|0;n=+ku(n);r=Su(r)|0;i=+ku(i);Mu(e,ot(0,u|0,t|0,+n,r|0,+i,Su(o)|0)|0);return}function Cu(){var e=0;if(!(r[7608]|0)){Iu(9120);e=7608;o[e>>2]=1;o[e+4>>2]=0}return 9120}function Tu(e){e=e|0;return o[e+8>>2]|0}function ku(e){e=+e;return+ +Nu(e)}function Su(e){e=e|0;return Ru(e)|0}function Mu(e,t){e=e|0;t=t|0;var n=0,r=0,i=0;i=h;h=h+32|0;n=i;r=t;if(!(r&1)){o[e>>2]=o[t>>2];o[e+4>>2]=o[t+4>>2];o[e+8>>2]=o[t+8>>2];o[e+12>>2]=o[t+12>>2]}else{xu(n,0);Le(r|0,n|0)|0;Au(e,n);Pu(n)}h=i;return}function xu(e,t){e=e|0;t=t|0;Ou(e,t);o[e+8>>2]=0;r[e+24>>0]=0;return}function Au(e,t){e=e|0;t=t|0;t=t+8|0;o[e>>2]=o[t>>2];o[e+4>>2]=o[t+4>>2];o[e+8>>2]=o[t+8>>2];o[e+12>>2]=o[t+12>>2];return}function Pu(e){e=e|0;r[e+24>>0]=0;return}function Ou(e,t){e=e|0;t=t|0;o[e>>2]=t;return}function Ru(e){e=e|0;return e|0}function Nu(e){e=+e;return+e}function Iu(e){e=e|0;Bu(e,Fu()|0,4);return}function Fu(){return 1064}function Bu(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;o[e+4>>2]=n;o[e+8>>2]=tt(t|0,n+1|0)|0;return}function Lu(e,t){e=e|0;t=t|0;t=o[t>>2]|0;o[e>>2]=t;xe(t|0);return}function Uu(e){e=e|0;var t=0,n=0;n=e+4|0;t=o[n>>2]|0;o[n>>2]=0;if(t|0){Qi(t);$S(t)}jt(o[e>>2]|0,0);return}function ju(e){e=e|0;Yt(o[e>>2]|0);return}function Wu(e){e=e|0;return Kt(o[e>>2]|0)|0}function zu(e,t,n,r){e=e|0;t=+t;n=+n;r=r|0;Ar(o[e>>2]|0,K(t),K(n),r);return}function qu(e){e=e|0;return+ +K(or(o[e>>2]|0))}function Hu(e){e=e|0;return+ +K(ar(o[e>>2]|0))}function Gu(e){e=e|0;return+ +K(ur(o[e>>2]|0))}function Vu(e){e=e|0;return+ +K(lr(o[e>>2]|0))}function Yu(e){e=e|0;return+ +K(sr(o[e>>2]|0))}function Ku(e){e=e|0;return+ +K(cr(o[e>>2]|0))}function $u(e,t){e=e|0;t=t|0;c[e>>3]=+K(or(o[t>>2]|0));c[e+8>>3]=+K(ar(o[t>>2]|0));c[e+16>>3]=+K(ur(o[t>>2]|0));c[e+24>>3]=+K(lr(o[t>>2]|0));c[e+32>>3]=+K(sr(o[t>>2]|0));c[e+40>>3]=+K(cr(o[t>>2]|0));return}function Xu(e,t){e=e|0;t=t|0;return+ +K(fr(o[e>>2]|0,t))}function Ju(e,t){e=e|0;t=t|0;return+ +K(dr(o[e>>2]|0,t))}function Qu(e,t){e=e|0;t=t|0;return+ +K(pr(o[e>>2]|0,t))}function Zu(){return Ft()|0}function ea(){ta();na();ra();ia();oa();ua();return}function ta(){Wy(11713,4938,1);return}function na(){ty(10448);return}function ra(){I_(10408);return}function ia(){Qg(10324);return}function oa(){Gv(10096);return}function ua(){aa(9132);return}function aa(e){e=e|0;var t=0,n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0,m=0,v=0,b=0,g=0,_=0,y=0,D=0,w=0,E=0,C=0,T=0,k=0,S=0,M=0,x=0,A=0,P=0,O=0,R=0,N=0,I=0,F=0,B=0,L=0,U=0,j=0,W=0,z=0,q=0,H=0,G=0,V=0,Y=0,K=0,$=0,X=0,J=0,Q=0,Z=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,ue=0,ae=0,le=0,se=0,ce=0,fe=0,de=0,pe=0,he=0,me=0,ve=0,be=0,ge=0,_e=0,ye=0,De=0,we=0,Ee=0,Ce=0,Te=0,ke=0,Se=0,Me=0,xe=0,Ae=0,Pe=0,Oe=0;t=h;h=h+672|0;n=t+656|0;Oe=t+648|0;Pe=t+640|0;Ae=t+632|0;xe=t+624|0;Me=t+616|0;Se=t+608|0;ke=t+600|0;Te=t+592|0;Ce=t+584|0;Ee=t+576|0;we=t+568|0;De=t+560|0;ye=t+552|0;_e=t+544|0;ge=t+536|0;be=t+528|0;ve=t+520|0;me=t+512|0;he=t+504|0;pe=t+496|0;de=t+488|0;fe=t+480|0;ce=t+472|0;se=t+464|0;le=t+456|0;ae=t+448|0;ue=t+440|0;oe=t+432|0;ie=t+424|0;re=t+416|0;ne=t+408|0;te=t+400|0;ee=t+392|0;Z=t+384|0;Q=t+376|0;J=t+368|0;X=t+360|0;$=t+352|0;K=t+344|0;Y=t+336|0;V=t+328|0;G=t+320|0;H=t+312|0;q=t+304|0;z=t+296|0;W=t+288|0;j=t+280|0;U=t+272|0;L=t+264|0;B=t+256|0;F=t+248|0;I=t+240|0;N=t+232|0;R=t+224|0;O=t+216|0;P=t+208|0;A=t+200|0;x=t+192|0;M=t+184|0;S=t+176|0;k=t+168|0;T=t+160|0;C=t+152|0;E=t+144|0;w=t+136|0;D=t+128|0;y=t+120|0;_=t+112|0;g=t+104|0;b=t+96|0;v=t+88|0;m=t+80|0;p=t+72|0;d=t+64|0;f=t+56|0;c=t+48|0;s=t+40|0;l=t+32|0;a=t+24|0;u=t+16|0;i=t+8|0;r=t;la(e,3646);sa(e,3651,2)|0;ca(e,3665,2)|0;fa(e,3682,18)|0;o[Oe>>2]=19;o[Oe+4>>2]=0;o[n>>2]=o[Oe>>2];o[n+4>>2]=o[Oe+4>>2];da(e,3690,n)|0;o[Pe>>2]=1;o[Pe+4>>2]=0;o[n>>2]=o[Pe>>2];o[n+4>>2]=o[Pe+4>>2];pa(e,3696,n)|0;o[Ae>>2]=2;o[Ae+4>>2]=0;o[n>>2]=o[Ae>>2];o[n+4>>2]=o[Ae+4>>2];ha(e,3706,n)|0;o[xe>>2]=1;o[xe+4>>2]=0;o[n>>2]=o[xe>>2];o[n+4>>2]=o[xe+4>>2];ma(e,3722,n)|0;o[Me>>2]=2;o[Me+4>>2]=0;o[n>>2]=o[Me>>2];o[n+4>>2]=o[Me+4>>2];ma(e,3734,n)|0;o[Se>>2]=3;o[Se+4>>2]=0;o[n>>2]=o[Se>>2];o[n+4>>2]=o[Se+4>>2];ha(e,3753,n)|0;o[ke>>2]=4;o[ke+4>>2]=0;o[n>>2]=o[ke>>2];o[n+4>>2]=o[ke+4>>2];ha(e,3769,n)|0;o[Te>>2]=5;o[Te+4>>2]=0;o[n>>2]=o[Te>>2];o[n+4>>2]=o[Te+4>>2];ha(e,3783,n)|0;o[Ce>>2]=6;o[Ce+4>>2]=0;o[n>>2]=o[Ce>>2];o[n+4>>2]=o[Ce+4>>2];ha(e,3796,n)|0;o[Ee>>2]=7;o[Ee+4>>2]=0;o[n>>2]=o[Ee>>2];o[n+4>>2]=o[Ee+4>>2];ha(e,3813,n)|0;o[we>>2]=8;o[we+4>>2]=0;o[n>>2]=o[we>>2];o[n+4>>2]=o[we+4>>2];ha(e,3825,n)|0;o[De>>2]=3;o[De+4>>2]=0;o[n>>2]=o[De>>2];o[n+4>>2]=o[De+4>>2];ma(e,3843,n)|0;o[ye>>2]=4;o[ye+4>>2]=0;o[n>>2]=o[ye>>2];o[n+4>>2]=o[ye+4>>2];ma(e,3853,n)|0;o[_e>>2]=9;o[_e+4>>2]=0;o[n>>2]=o[_e>>2];o[n+4>>2]=o[_e+4>>2];ha(e,3870,n)|0;o[ge>>2]=10;o[ge+4>>2]=0;o[n>>2]=o[ge>>2];o[n+4>>2]=o[ge+4>>2];ha(e,3884,n)|0;o[be>>2]=11;o[be+4>>2]=0;o[n>>2]=o[be>>2];o[n+4>>2]=o[be+4>>2];ha(e,3896,n)|0;o[ve>>2]=1;o[ve+4>>2]=0;o[n>>2]=o[ve>>2];o[n+4>>2]=o[ve+4>>2];va(e,3907,n)|0;o[me>>2]=2;o[me+4>>2]=0;o[n>>2]=o[me>>2];o[n+4>>2]=o[me+4>>2];va(e,3915,n)|0;o[he>>2]=3;o[he+4>>2]=0;o[n>>2]=o[he>>2];o[n+4>>2]=o[he+4>>2];va(e,3928,n)|0;o[pe>>2]=4;o[pe+4>>2]=0;o[n>>2]=o[pe>>2];o[n+4>>2]=o[pe+4>>2];va(e,3948,n)|0;o[de>>2]=5;o[de+4>>2]=0;o[n>>2]=o[de>>2];o[n+4>>2]=o[de+4>>2];va(e,3960,n)|0;o[fe>>2]=6;o[fe+4>>2]=0;o[n>>2]=o[fe>>2];o[n+4>>2]=o[fe+4>>2];va(e,3974,n)|0;o[ce>>2]=7;o[ce+4>>2]=0;o[n>>2]=o[ce>>2];o[n+4>>2]=o[ce+4>>2];va(e,3983,n)|0;o[se>>2]=20;o[se+4>>2]=0;o[n>>2]=o[se>>2];o[n+4>>2]=o[se+4>>2];da(e,3999,n)|0;o[le>>2]=8;o[le+4>>2]=0;o[n>>2]=o[le>>2];o[n+4>>2]=o[le+4>>2];va(e,4012,n)|0;o[ae>>2]=9;o[ae+4>>2]=0;o[n>>2]=o[ae>>2];o[n+4>>2]=o[ae+4>>2];va(e,4022,n)|0;o[ue>>2]=21;o[ue+4>>2]=0;o[n>>2]=o[ue>>2];o[n+4>>2]=o[ue+4>>2];da(e,4039,n)|0;o[oe>>2]=10;o[oe+4>>2]=0;o[n>>2]=o[oe>>2];o[n+4>>2]=o[oe+4>>2];va(e,4053,n)|0;o[ie>>2]=11;o[ie+4>>2]=0;o[n>>2]=o[ie>>2];o[n+4>>2]=o[ie+4>>2];va(e,4065,n)|0;o[re>>2]=12;o[re+4>>2]=0;o[n>>2]=o[re>>2];o[n+4>>2]=o[re+4>>2];va(e,4084,n)|0;o[ne>>2]=13;o[ne+4>>2]=0;o[n>>2]=o[ne>>2];o[n+4>>2]=o[ne+4>>2];va(e,4097,n)|0;o[te>>2]=14;o[te+4>>2]=0;o[n>>2]=o[te>>2];o[n+4>>2]=o[te+4>>2];va(e,4117,n)|0;o[ee>>2]=15;o[ee+4>>2]=0;o[n>>2]=o[ee>>2];o[n+4>>2]=o[ee+4>>2];va(e,4129,n)|0;o[Z>>2]=16;o[Z+4>>2]=0;o[n>>2]=o[Z>>2];o[n+4>>2]=o[Z+4>>2];va(e,4148,n)|0;o[Q>>2]=17;o[Q+4>>2]=0;o[n>>2]=o[Q>>2];o[n+4>>2]=o[Q+4>>2];va(e,4161,n)|0;o[J>>2]=18;o[J+4>>2]=0;o[n>>2]=o[J>>2];o[n+4>>2]=o[J+4>>2];va(e,4181,n)|0;o[X>>2]=5;o[X+4>>2]=0;o[n>>2]=o[X>>2];o[n+4>>2]=o[X+4>>2];ma(e,4196,n)|0;o[$>>2]=6;o[$+4>>2]=0;o[n>>2]=o[$>>2];o[n+4>>2]=o[$+4>>2];ma(e,4206,n)|0;o[K>>2]=7;o[K+4>>2]=0;o[n>>2]=o[K>>2];o[n+4>>2]=o[K+4>>2];ma(e,4217,n)|0;o[Y>>2]=3;o[Y+4>>2]=0;o[n>>2]=o[Y>>2];o[n+4>>2]=o[Y+4>>2];ba(e,4235,n)|0;o[V>>2]=1;o[V+4>>2]=0;o[n>>2]=o[V>>2];o[n+4>>2]=o[V+4>>2];ga(e,4251,n)|0;o[G>>2]=4;o[G+4>>2]=0;o[n>>2]=o[G>>2];o[n+4>>2]=o[G+4>>2];ba(e,4263,n)|0;o[H>>2]=5;o[H+4>>2]=0;o[n>>2]=o[H>>2];o[n+4>>2]=o[H+4>>2];ba(e,4279,n)|0;o[q>>2]=6;o[q+4>>2]=0;o[n>>2]=o[q>>2];o[n+4>>2]=o[q+4>>2];ba(e,4293,n)|0;o[z>>2]=7;o[z+4>>2]=0;o[n>>2]=o[z>>2];o[n+4>>2]=o[z+4>>2];ba(e,4306,n)|0;o[W>>2]=8;o[W+4>>2]=0;o[n>>2]=o[W>>2];o[n+4>>2]=o[W+4>>2];ba(e,4323,n)|0;o[j>>2]=9;o[j+4>>2]=0;o[n>>2]=o[j>>2];o[n+4>>2]=o[j+4>>2];ba(e,4335,n)|0;o[U>>2]=2;o[U+4>>2]=0;o[n>>2]=o[U>>2];o[n+4>>2]=o[U+4>>2];ga(e,4353,n)|0;o[L>>2]=12;o[L+4>>2]=0;o[n>>2]=o[L>>2];o[n+4>>2]=o[L+4>>2];_a(e,4363,n)|0;o[B>>2]=1;o[B+4>>2]=0;o[n>>2]=o[B>>2];o[n+4>>2]=o[B+4>>2];ya(e,4376,n)|0;o[F>>2]=2;o[F+4>>2]=0;o[n>>2]=o[F>>2];o[n+4>>2]=o[F+4>>2];ya(e,4388,n)|0;o[I>>2]=13;o[I+4>>2]=0;o[n>>2]=o[I>>2];o[n+4>>2]=o[I+4>>2];_a(e,4402,n)|0;o[N>>2]=14;o[N+4>>2]=0;o[n>>2]=o[N>>2];o[n+4>>2]=o[N+4>>2];_a(e,4411,n)|0;o[R>>2]=15;o[R+4>>2]=0;o[n>>2]=o[R>>2];o[n+4>>2]=o[R+4>>2];_a(e,4421,n)|0;o[O>>2]=16;o[O+4>>2]=0;o[n>>2]=o[O>>2];o[n+4>>2]=o[O+4>>2];_a(e,4433,n)|0;o[P>>2]=17;o[P+4>>2]=0;o[n>>2]=o[P>>2];o[n+4>>2]=o[P+4>>2];_a(e,4446,n)|0;o[A>>2]=18;o[A+4>>2]=0;o[n>>2]=o[A>>2];o[n+4>>2]=o[A+4>>2];_a(e,4458,n)|0;o[x>>2]=3;o[x+4>>2]=0;o[n>>2]=o[x>>2];o[n+4>>2]=o[x+4>>2];ya(e,4471,n)|0;o[M>>2]=1;o[M+4>>2]=0;o[n>>2]=o[M>>2];o[n+4>>2]=o[M+4>>2];Da(e,4486,n)|0;o[S>>2]=10;o[S+4>>2]=0;o[n>>2]=o[S>>2];o[n+4>>2]=o[S+4>>2];ba(e,4496,n)|0;o[k>>2]=11;o[k+4>>2]=0;o[n>>2]=o[k>>2];o[n+4>>2]=o[k+4>>2];ba(e,4508,n)|0;o[T>>2]=3;o[T+4>>2]=0;o[n>>2]=o[T>>2];o[n+4>>2]=o[T+4>>2];ga(e,4519,n)|0;o[C>>2]=4;o[C+4>>2]=0;o[n>>2]=o[C>>2];o[n+4>>2]=o[C+4>>2];wa(e,4530,n)|0;o[E>>2]=19;o[E+4>>2]=0;o[n>>2]=o[E>>2];o[n+4>>2]=o[E+4>>2];Ea(e,4542,n)|0;o[w>>2]=12;o[w+4>>2]=0;o[n>>2]=o[w>>2];o[n+4>>2]=o[w+4>>2];Ca(e,4554,n)|0;o[D>>2]=13;o[D+4>>2]=0;o[n>>2]=o[D>>2];o[n+4>>2]=o[D+4>>2];Ta(e,4568,n)|0;o[y>>2]=2;o[y+4>>2]=0;o[n>>2]=o[y>>2];o[n+4>>2]=o[y+4>>2];ka(e,4578,n)|0;o[_>>2]=20;o[_+4>>2]=0;o[n>>2]=o[_>>2];o[n+4>>2]=o[_+4>>2];Sa(e,4587,n)|0;o[g>>2]=22;o[g+4>>2]=0;o[n>>2]=o[g>>2];o[n+4>>2]=o[g+4>>2];da(e,4602,n)|0;o[b>>2]=23;o[b+4>>2]=0;o[n>>2]=o[b>>2];o[n+4>>2]=o[b+4>>2];da(e,4619,n)|0;o[v>>2]=14;o[v+4>>2]=0;o[n>>2]=o[v>>2];o[n+4>>2]=o[v+4>>2];Ma(e,4629,n)|0;o[m>>2]=1;o[m+4>>2]=0;o[n>>2]=o[m>>2];o[n+4>>2]=o[m+4>>2];xa(e,4637,n)|0;o[p>>2]=4;o[p+4>>2]=0;o[n>>2]=o[p>>2];o[n+4>>2]=o[p+4>>2];ya(e,4653,n)|0;o[d>>2]=5;o[d+4>>2]=0;o[n>>2]=o[d>>2];o[n+4>>2]=o[d+4>>2];ya(e,4669,n)|0;o[f>>2]=6;o[f+4>>2]=0;o[n>>2]=o[f>>2];o[n+4>>2]=o[f+4>>2];ya(e,4686,n)|0;o[c>>2]=7;o[c+4>>2]=0;o[n>>2]=o[c>>2];o[n+4>>2]=o[c+4>>2];ya(e,4701,n)|0;o[s>>2]=8;o[s+4>>2]=0;o[n>>2]=o[s>>2];o[n+4>>2]=o[s+4>>2];ya(e,4719,n)|0;o[l>>2]=9;o[l+4>>2]=0;o[n>>2]=o[l>>2];o[n+4>>2]=o[l+4>>2];ya(e,4736,n)|0;o[a>>2]=21;o[a+4>>2]=0;o[n>>2]=o[a>>2];o[n+4>>2]=o[a+4>>2];Aa(e,4754,n)|0;o[u>>2]=2;o[u+4>>2]=0;o[n>>2]=o[u>>2];o[n+4>>2]=o[u+4>>2];Da(e,4772,n)|0;o[i>>2]=3;o[i+4>>2]=0;o[n>>2]=o[i>>2];o[n+4>>2]=o[i+4>>2];Da(e,4790,n)|0;o[r>>2]=4;o[r+4>>2]=0;o[n>>2]=o[r>>2];o[n+4>>2]=o[r+4>>2];Da(e,4808,n)|0;h=t;return}function la(e,t){e=e|0;t=t|0;var n=0;n=Nv()|0;o[e>>2]=n;Iv(n,t);cD(o[e>>2]|0);return}function sa(e,t,n){e=e|0;t=t|0;n=n|0;bv(e,Oa(t)|0,n,0);return e|0}function ca(e,t,n){e=e|0;t=t|0;n=n|0;Xm(e,Oa(t)|0,n,0);return e|0}function fa(e,t,n){e=e|0;t=t|0;n=n|0;Rm(e,Oa(t)|0,n,0);return e|0}function da(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];hm(e,t,i);h=r;return e|0}function pa(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Vh(e,t,i);h=r;return e|0}function ha(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Sh(e,t,i);h=r;return e|0}function ma(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];lh(e,t,i);h=r;return e|0}function va(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];qp(e,t,i);h=r;return e|0}function ba(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Cp(e,t,i);h=r;return e|0}function ga(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];op(e,t,i);h=r;return e|0}function _a(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Td(e,t,i);h=r;return e|0}function ya(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];ud(e,t,i);h=r;return e|0}function Da(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Wf(e,t,i);h=r;return e|0}function wa(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];wf(e,t,i);h=r;return e|0}function Ea(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Zc(e,t,i);h=r;return e|0}function Ca(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Rc(e,t,i);h=r;return e|0}function Ta(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];hc(e,t,i);h=r;return e|0}function ka(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Gs(e,t,i);h=r;return e|0}function Sa(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Ds(e,t,i);h=r;return e|0}function Ma(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];ts(e,t,i);h=r;return e|0}function xa(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Al(e,t,i);h=r;return e|0}function Aa(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Pa(e,t,i);h=r;return e|0}function Pa(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Oa(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Ra(e,n,i,1);h=r;return}function Oa(e){e=e|0;return e|0}function Ra(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=Na()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Ia(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];Ba(a,t,e,n,Fa(u,r)|0,r);h=i;return}function Na(){var e=0,t=0;if(!(r[7616]|0)){Ka(9136);Fe(24,9136,b|0)|0;t=7616;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9136)|0)){e=9136;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Ka(9136)}return 9136}function Ia(e){e=e|0;return 0}function Fa(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=Na()|0;c=d+24|0;e=Wa(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];za(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{qa(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Ba(e,t,n,r,i,u){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;u=u|0;var a=0,l=0,s=0,c=0,f=0,d=0,p=0,m=0;a=h;h=h+32|0;p=a+24|0;d=a+20|0;s=a+16|0;f=a+12|0;c=a+8|0;l=a+4|0;m=a;o[d>>2]=t;o[s>>2]=n;o[f>>2]=r;o[c>>2]=i;o[l>>2]=u;u=e+28|0;o[m>>2]=o[u>>2];o[p>>2]=o[m>>2];La(e+24|0,p,d,f,c,s,l)|0;o[u>>2]=o[o[u>>2]>>2];h=a;return}function La(e,t,n,r,i,u,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;u=u|0;a=a|0;e=Ua(t)|0;t=YS(24)|0;ja(t+4|0,o[n>>2]|0,o[r>>2]|0,o[i>>2]|0,o[u>>2]|0,o[a>>2]|0);o[t>>2]=o[e>>2];o[e>>2]=t;return t|0}function Ua(e){e=e|0;return o[e>>2]|0}function ja(e,t,n,r,i,u){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;u=u|0;o[e>>2]=t;o[e+4>>2]=n;o[e+8>>2]=r;o[e+12>>2]=i;o[e+16>>2]=u;return}function Wa(e,t){e=e|0;t=t|0;return t|e|0}function za(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function qa(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Ha(e)|0;if(u>>>0>>0)jS(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;Ga(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];za(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Va(e,l);Ya(l);h=c;return}}function Ha(e){e=e|0;return 357913941}function Ga(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ke();else{i=YS(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Va(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Ya(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)$S(e);return}function Ka(e){e=e|0;Qa(e);return}function $a(e){e=e|0;Ja(e+24|0);return}function Xa(e){e=e|0;return o[e>>2]|0}function Ja(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);$S(n)}return}function Qa(e){e=e|0;var t=0;t=Za()|0;nl(e,2,3,t,el()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Za(){return 9228}function el(){return 1140}function tl(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0;n=h;h=h+16|0;r=n+8|0;i=n;u=rl(e)|0;e=o[u+4>>2]|0;o[i>>2]=o[u>>2];o[i+4>>2]=e;o[r>>2]=o[i>>2];o[r+4>>2]=o[i+4>>2];t=il(t,r)|0;h=n;return t|0}function nl(e,t,n,r,i,u){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;u=u|0;o[e>>2]=t;o[e+4>>2]=n;o[e+8>>2]=r;o[e+12>>2]=i;o[e+16>>2]=u;return}function rl(e){e=e|0;return(o[(Na()|0)+24>>2]|0)+(e*12|0)|0}function il(e,t){e=e|0;t=t|0;var n=0,r=0,i=0;i=h;h=h+48|0;r=i;n=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)n=o[(o[e>>2]|0)+n>>2]|0;mx[n&31](r,e);r=ol(r)|0;h=i;return r|0}function ol(e){e=e|0;var t=0,n=0,r=0,i=0;i=h;h=h+32|0;t=i+12|0;n=i;r=al(ul()|0)|0;if(!r)e=dl(e)|0;else{ll(t,r);sl(n,t);cl(e,n);e=fl(t)|0}h=i;return e|0}function ul(){var e=0;if(!(r[7632]|0)){El(9184);Fe(25,9184,b|0)|0;e=7632;o[e>>2]=1;o[e+4>>2]=0}return 9184}function al(e){e=e|0;return o[e+36>>2]|0}function ll(e,t){e=e|0;t=t|0;o[e>>2]=t;o[e+4>>2]=e;o[e+8>>2]=0;return}function sl(e,t){e=e|0;t=t|0;o[e>>2]=o[t>>2];o[e+4>>2]=o[t+4>>2];o[e+8>>2]=0;return}function cl(e,t){e=e|0;t=t|0;bl(t,e,e+8|0,e+16|0,e+24|0,e+32|0,e+40|0)|0;return}function fl(e){e=e|0;return o[(o[e+4>>2]|0)+8>>2]|0}function dl(e){e=e|0;var t=0,n=0,r=0,i=0,u=0,a=0,l=0,s=0;s=h;h=h+16|0;n=s+4|0;r=s;i=jE(8)|0;u=i;a=YS(48)|0;l=a;t=l+48|0;do{o[l>>2]=o[e>>2];l=l+4|0;e=e+4|0}while((l|0)<(t|0));t=u+4|0;o[t>>2]=a;l=YS(8)|0;a=o[t>>2]|0;o[r>>2]=0;o[n>>2]=o[r>>2];pl(l,a,n);o[i>>2]=l;h=s;return u|0}function pl(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;n=YS(16)|0;o[n+4>>2]=0;o[n+8>>2]=0;o[n>>2]=1092;o[n+12>>2]=t;o[e+4>>2]=n;return}function hl(e){e=e|0;WS(e);$S(e);return}function ml(e){e=e|0;e=o[e+12>>2]|0;if(e|0)$S(e);return}function vl(e){e=e|0;$S(e);return}function bl(e,t,n,r,i,u,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;u=u|0;a=a|0;u=gl(o[e>>2]|0,t,n,r,i,u,a)|0;a=e+4|0;o[(o[a>>2]|0)+8>>2]=u;return o[(o[a>>2]|0)+8>>2]|0}function gl(e,t,n,r,i,o,u){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;o=o|0;u=u|0;var a=0,l=0;a=h;h=h+16|0;l=a;Ek(l);e=wu(e)|0;u=_l(e,+c[t>>3],+c[n>>3],+c[r>>3],+c[i>>3],+c[o>>3],+c[u>>3])|0;Tk(l);h=a;return u|0}function _l(e,t,n,r,i,o,u){e=e|0;t=+t;n=+n;r=+r;i=+i;o=+o;u=+u;var a=0;a=Tu(yl()|0)|0;t=+ku(t);n=+ku(n);r=+ku(r);i=+ku(i);o=+ku(o);return Se(0,a|0,e|0,+t,+n,+r,+i,+o,+ +ku(u))|0}function yl(){var e=0;if(!(r[7624]|0)){Dl(9172);e=7624;o[e>>2]=1;o[e+4>>2]=0}return 9172}function Dl(e){e=e|0;Bu(e,wl()|0,6);return}function wl(){return 1112}function El(e){e=e|0;xl(e);return}function Cl(e){e=e|0;Tl(e+24|0);kl(e+16|0);return}function Tl(e){e=e|0;Ml(e);return}function kl(e){e=e|0;Sl(e);return}function Sl(e){e=e|0;var t=0,n=0;t=o[e>>2]|0;if(t|0)do{n=t;t=o[t>>2]|0;$S(n)}while((t|0)!=0);o[e>>2]=0;return}function Ml(e){e=e|0;var t=0,n=0;t=o[e>>2]|0;if(t|0)do{n=t;t=o[t>>2]|0;$S(n)}while((t|0)!=0);o[e>>2]=0;return}function xl(e){e=e|0;var t=0;o[e+16>>2]=0;o[e+20>>2]=0;t=e+24|0;o[t>>2]=0;o[e+28>>2]=t;o[e+36>>2]=0;r[e+40>>0]=0;r[e+41>>0]=0;return}function Al(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Oa(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Pl(e,n,i,0);h=r;return}function Pl(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=Ol()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Rl(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];Ba(a,t,e,n,Nl(u,r)|0,r);h=i;return}function Ol(){var e=0,t=0;if(!(r[7640]|0)){Wl(9232);Fe(26,9232,b|0)|0;t=7640;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9232)|0)){e=9232;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Wl(9232)}return 9232}function Rl(e){e=e|0;return 0}function Nl(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=Ol()|0;c=d+24|0;e=Wa(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Il(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{Fl(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Il(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function Fl(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Bl(e)|0;if(u>>>0>>0)jS(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;Ll(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Il(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Ul(e,l);jl(l);h=c;return}}function Bl(e){e=e|0;return 357913941}function Ll(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ke();else{i=YS(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Ul(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function jl(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)$S(e);return}function Wl(e){e=e|0;Hl(e);return}function zl(e){e=e|0;ql(e+24|0);return}function ql(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);$S(n)}return}function Hl(e){e=e|0;var t=0;t=Za()|0;nl(e,2,1,t,Gl()|0,3);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Gl(){return 1144}function Vl(e,t,n,r,i){e=e|0;t=t|0;n=+n;r=+r;i=i|0;var u=0,a=0,l=0,s=0;u=h;h=h+16|0;a=u+8|0;l=u;s=Yl(e)|0;e=o[s+4>>2]|0;o[l>>2]=o[s>>2];o[l+4>>2]=e;o[a>>2]=o[l>>2];o[a+4>>2]=o[l+4>>2];Kl(t,a,n,r,i);h=u;return}function Yl(e){e=e|0;return(o[(Ol()|0)+24>>2]|0)+(e*12|0)|0}function Kl(e,t,n,r,i){e=e|0;t=t|0;n=+n;r=+r;i=i|0;var u=0,a=0,l=0,s=0,c=0;c=h;h=h+16|0;a=c+2|0;l=c+1|0;s=c;u=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)u=o[(o[e>>2]|0)+u>>2]|0;$l(a,n);n=+Xl(a,n);$l(l,r);r=+Xl(l,r);Jl(s,i);s=Ql(s,i)|0;bx[u&1](e,n,r,s);h=c;return}function $l(e,t){e=e|0;t=+t;return}function Xl(e,t){e=e|0;t=+t;return+ +es(t)}function Jl(e,t){e=e|0;t=t|0;return}function Ql(e,t){e=e|0;t=t|0;return Zl(t)|0}function Zl(e){e=e|0;return e|0}function es(e){e=+e;return+e}function ts(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Oa(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];ns(e,n,i,1);h=r;return}function ns(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=rs()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=is(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];Ba(a,t,e,n,os(u,r)|0,r);h=i;return}function rs(){var e=0,t=0;if(!(r[7648]|0)){ds(9268);Fe(27,9268,b|0)|0;t=7648;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9268)|0)){e=9268;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));ds(9268)}return 9268}function is(e){e=e|0;return 0}function os(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=rs()|0;c=d+24|0;e=Wa(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];us(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{as(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function us(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function as(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=ls(e)|0;if(u>>>0>>0)jS(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;ss(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];us(u,r,n);o[s>>2]=(o[s>>2]|0)+12;cs(e,l);fs(l);h=c;return}}function ls(e){e=e|0;return 357913941}function ss(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ke();else{i=YS(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function cs(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function fs(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)$S(e);return}function ds(e){e=e|0;ms(e);return}function ps(e){e=e|0;hs(e+24|0);return}function hs(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);$S(n)}return}function ms(e){e=e|0;var t=0;t=Za()|0;nl(e,2,4,t,vs()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function vs(){return 1160}function bs(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0;n=h;h=h+16|0;r=n+8|0;i=n;u=gs(e)|0;e=o[u+4>>2]|0;o[i>>2]=o[u>>2];o[i+4>>2]=e;o[r>>2]=o[i>>2];o[r+4>>2]=o[i+4>>2];t=_s(t,r)|0;h=n;return t|0}function gs(e){e=e|0;return(o[(rs()|0)+24>>2]|0)+(e*12|0)|0}function _s(e,t){e=e|0;t=t|0;var n=0;n=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)n=o[(o[e>>2]|0)+n>>2]|0;return ys(vx[n&31](e)|0)|0}function ys(e){e=e|0;return e&1|0}function Ds(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Oa(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];ws(e,n,i,0);h=r;return}function ws(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=Es()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Cs(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];Ba(a,t,e,n,Ts(u,r)|0,r);h=i;return}function Es(){var e=0,t=0;if(!(r[7656]|0)){Os(9304);Fe(28,9304,b|0)|0;t=7656;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9304)|0)){e=9304;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Os(9304)}return 9304}function Cs(e){e=e|0;return 0}function Ts(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=Es()|0;c=d+24|0;e=Wa(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];ks(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{Ss(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function ks(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function Ss(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Ms(e)|0;if(u>>>0>>0)jS(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;xs(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];ks(u,r,n);o[s>>2]=(o[s>>2]|0)+12;As(e,l);Ps(l);h=c;return}}function Ms(e){e=e|0;return 357913941}function xs(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ke();else{i=YS(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function As(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Ps(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)$S(e);return}function Os(e){e=e|0;Is(e);return}function Rs(e){e=e|0;Ns(e+24|0);return}function Ns(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);$S(n)}return}function Is(e){e=e|0;var t=0;t=Za()|0;nl(e,2,5,t,Fs()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Fs(){return 1164}function Bs(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=Ls(e)|0;e=o[a+4>>2]|0;o[u>>2]=o[a>>2];o[u+4>>2]=e;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Us(t,i,n);h=r;return}function Ls(e){e=e|0;return(o[(Es()|0)+24>>2]|0)+(e*12|0)|0}function Us(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0;u=h;h=h+16|0;i=u;r=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)r=o[(o[e>>2]|0)+r>>2]|0;js(i,n);n=Ws(i,n)|0;mx[r&31](e,n);zs(i);h=u;return}function js(e,t){e=e|0;t=t|0;qs(e,t);return}function Ws(e,t){e=e|0;t=t|0;return e|0}function zs(e){e=e|0;Qi(e);return}function qs(e,t){e=e|0;t=t|0;Hs(e,t);return}function Hs(e,t){e=e|0;t=t|0;o[e>>2]=t;return}function Gs(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Oa(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Vs(e,n,i,0);h=r;return}function Vs(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=Ys()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Ks(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];Ba(a,t,e,n,$s(u,r)|0,r);h=i;return}function Ys(){var e=0,t=0;if(!(r[7664]|0)){nc(9340);Fe(29,9340,b|0)|0;t=7664;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9340)|0)){e=9340;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));nc(9340)}return 9340}function Ks(e){e=e|0;return 0}function $s(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=Ys()|0;c=d+24|0;e=Wa(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Xs(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{Js(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Xs(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function Js(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Qs(e)|0;if(u>>>0>>0)jS(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;Zs(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Xs(u,r,n);o[s>>2]=(o[s>>2]|0)+12;ec(e,l);tc(l);h=c;return}}function Qs(e){e=e|0;return 357913941}function Zs(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ke();else{i=YS(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function ec(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function tc(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)$S(e);return}function nc(e){e=e|0;oc(e);return}function rc(e){e=e|0;ic(e+24|0);return}function ic(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);$S(n)}return}function oc(e){e=e|0;var t=0;t=Za()|0;nl(e,2,4,t,uc()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function uc(){return 1180}function ac(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=lc(e)|0;e=o[a+4>>2]|0;o[u>>2]=o[a>>2];o[u+4>>2]=e;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];n=sc(t,i,n)|0;h=r;return n|0}function lc(e){e=e|0;return(o[(Ys()|0)+24>>2]|0)+(e*12|0)|0}function sc(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0;u=h;h=h+16|0;i=u;r=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)r=o[(o[e>>2]|0)+r>>2]|0;cc(i,n);i=fc(i,n)|0;i=dc(Ex[r&15](e,i)|0)|0;h=u;return i|0}function cc(e,t){e=e|0;t=t|0;return}function fc(e,t){e=e|0;t=t|0;return pc(t)|0}function dc(e){e=e|0;return e|0}function pc(e){e=e|0;return e|0}function hc(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Oa(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];mc(e,n,i,0);h=r;return}function mc(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=vc()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=bc(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];Ba(a,t,e,n,gc(u,r)|0,r);h=i;return}function vc(){var e=0,t=0;if(!(r[7672]|0)){Tc(9376);Fe(30,9376,b|0)|0;t=7672;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9376)|0)){e=9376;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Tc(9376)}return 9376}function bc(e){e=e|0;return 0}function gc(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=vc()|0;c=d+24|0;e=Wa(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];_c(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{yc(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function _c(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function yc(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Dc(e)|0;if(u>>>0>>0)jS(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;wc(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];_c(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Ec(e,l);Cc(l);h=c;return}}function Dc(e){e=e|0;return 357913941}function wc(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ke();else{i=YS(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Ec(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Cc(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)$S(e);return}function Tc(e){e=e|0;Mc(e);return}function kc(e){e=e|0;Sc(e+24|0);return}function Sc(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);$S(n)}return}function Mc(e){e=e|0;var t=0;t=Za()|0;nl(e,2,5,t,xc()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function xc(){return 1196}function Ac(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0;n=h;h=h+16|0;r=n+8|0;i=n;u=Pc(e)|0;e=o[u+4>>2]|0;o[i>>2]=o[u>>2];o[i+4>>2]=e;o[r>>2]=o[i>>2];o[r+4>>2]=o[i+4>>2];t=Oc(t,r)|0;h=n;return t|0}function Pc(e){e=e|0;return(o[(vc()|0)+24>>2]|0)+(e*12|0)|0}function Oc(e,t){e=e|0;t=t|0;var n=0;n=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)n=o[(o[e>>2]|0)+n>>2]|0;return dc(vx[n&31](e)|0)|0}function Rc(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Oa(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Nc(e,n,i,1);h=r;return}function Nc(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=Ic()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Fc(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];Ba(a,t,e,n,Bc(u,r)|0,r);h=i;return}function Ic(){var e=0,t=0;if(!(r[7680]|0)){Hc(9412);Fe(31,9412,b|0)|0;t=7680;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9412)|0)){e=9412;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Hc(9412)}return 9412}function Fc(e){e=e|0;return 0}function Bc(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=Ic()|0;c=d+24|0;e=Wa(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Lc(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{Uc(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Lc(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function Uc(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=jc(e)|0;if(u>>>0>>0)jS(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;Wc(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Lc(u,r,n);o[s>>2]=(o[s>>2]|0)+12;zc(e,l);qc(l);h=c;return}}function jc(e){e=e|0;return 357913941}function Wc(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ke();else{i=YS(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function zc(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function qc(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)$S(e);return}function Hc(e){e=e|0;Yc(e);return}function Gc(e){e=e|0;Vc(e+24|0);return}function Vc(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);$S(n)}return}function Yc(e){e=e|0;var t=0;t=Za()|0;nl(e,2,6,t,Kc()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Kc(){return 1200}function $c(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0;n=h;h=h+16|0;r=n+8|0;i=n;u=Xc(e)|0;e=o[u+4>>2]|0;o[i>>2]=o[u>>2];o[i+4>>2]=e;o[r>>2]=o[i>>2];o[r+4>>2]=o[i+4>>2];t=Jc(t,r)|0;h=n;return t|0}function Xc(e){e=e|0;return(o[(Ic()|0)+24>>2]|0)+(e*12|0)|0}function Jc(e,t){e=e|0;t=t|0;var n=0;n=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)n=o[(o[e>>2]|0)+n>>2]|0;return Qc(vx[n&31](e)|0)|0}function Qc(e){e=e|0;return e|0}function Zc(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Oa(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];ef(e,n,i,0);h=r;return}function ef(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=tf()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=nf(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];Ba(a,t,e,n,rf(u,r)|0,r);h=i;return}function tf(){var e=0,t=0;if(!(r[7688]|0)){ff(9448);Fe(32,9448,b|0)|0;t=7688;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9448)|0)){e=9448;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));ff(9448)}return 9448}function nf(e){e=e|0;return 0}function rf(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=tf()|0;c=d+24|0;e=Wa(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];of(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{uf(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function of(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function uf(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=af(e)|0;if(u>>>0>>0)jS(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;lf(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];of(u,r,n);o[s>>2]=(o[s>>2]|0)+12;sf(e,l);cf(l);h=c;return}}function af(e){e=e|0;return 357913941}function lf(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ke();else{i=YS(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function sf(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function cf(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)$S(e);return}function ff(e){e=e|0;hf(e);return}function df(e){e=e|0;pf(e+24|0);return}function pf(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);$S(n)}return}function hf(e){e=e|0;var t=0;t=Za()|0;nl(e,2,6,t,mf()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function mf(){return 1204}function vf(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=bf(e)|0;e=o[a+4>>2]|0;o[u>>2]=o[a>>2];o[u+4>>2]=e;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];gf(t,i,n);h=r;return}function bf(e){e=e|0;return(o[(tf()|0)+24>>2]|0)+(e*12|0)|0}function gf(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0;u=h;h=h+16|0;i=u;r=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)r=o[(o[e>>2]|0)+r>>2]|0;_f(i,n);i=yf(i,n)|0;mx[r&31](e,i);h=u;return}function _f(e,t){e=e|0;t=t|0;return}function yf(e,t){e=e|0;t=t|0;return Df(t)|0}function Df(e){e=e|0;return e|0}function wf(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Oa(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Ef(e,n,i,0);h=r;return}function Ef(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=Cf()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Tf(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];Ba(a,t,e,n,kf(u,r)|0,r);h=i;return}function Cf(){var e=0,t=0;if(!(r[7696]|0)){Rf(9484);Fe(33,9484,b|0)|0;t=7696;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9484)|0)){e=9484;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Rf(9484)}return 9484}function Tf(e){e=e|0;return 0}function kf(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=Cf()|0;c=d+24|0;e=Wa(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Sf(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{Mf(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Sf(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function Mf(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=xf(e)|0;if(u>>>0>>0)jS(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;Af(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Sf(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Pf(e,l);Of(l);h=c;return}}function xf(e){e=e|0;return 357913941}function Af(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ke();else{i=YS(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Pf(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Of(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)$S(e);return}function Rf(e){e=e|0;Ff(e);return}function Nf(e){e=e|0;If(e+24|0);return}function If(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);$S(n)}return}function Ff(e){e=e|0;var t=0;t=Za()|0;nl(e,2,1,t,Bf()|0,2);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Bf(){return 1212}function Lf(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0;i=h;h=h+16|0;u=i+8|0;a=i;l=Uf(e)|0;e=o[l+4>>2]|0;o[a>>2]=o[l>>2];o[a+4>>2]=e;o[u>>2]=o[a>>2];o[u+4>>2]=o[a+4>>2];jf(t,u,n,r);h=i;return}function Uf(e){e=e|0;return(o[(Cf()|0)+24>>2]|0)+(e*12|0)|0}function jf(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0;l=h;h=h+16|0;u=l+1|0;a=l;i=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)i=o[(o[e>>2]|0)+i>>2]|0;_f(u,n);u=yf(u,n)|0;cc(a,r);a=fc(a,r)|0;Px[i&15](e,u,a);h=l;return}function Wf(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Oa(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];zf(e,n,i,1);h=r;return}function zf(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=qf()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Hf(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];Ba(a,t,e,n,Gf(u,r)|0,r);h=i;return}function qf(){var e=0,t=0;if(!(r[7704]|0)){Qf(9520);Fe(34,9520,b|0)|0;t=7704;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9520)|0)){e=9520;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Qf(9520)}return 9520}function Hf(e){e=e|0;return 0}function Gf(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=qf()|0;c=d+24|0;e=Wa(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Vf(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{Yf(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Vf(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function Yf(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Kf(e)|0;if(u>>>0>>0)jS(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;$f(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Vf(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Xf(e,l);Jf(l);h=c;return}}function Kf(e){e=e|0;return 357913941}function $f(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ke();else{i=YS(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Xf(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Jf(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)$S(e);return}function Qf(e){e=e|0;td(e);return}function Zf(e){e=e|0;ed(e+24|0);return}function ed(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);$S(n)}return}function td(e){e=e|0;var t=0;t=Za()|0;nl(e,2,1,t,nd()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function nd(){return 1224}function rd(e,t,n){e=e|0;t=t|0;n=n|0;var r=0.0,i=0,u=0,a=0,l=0;i=h;h=h+16|0;u=i+8|0;a=i;l=id(e)|0;e=o[l+4>>2]|0;o[a>>2]=o[l>>2];o[a+4>>2]=e;o[u>>2]=o[a>>2];o[u+4>>2]=o[a+4>>2];r=+od(t,u,n);h=i;return+r}function id(e){e=e|0;return(o[(qf()|0)+24>>2]|0)+(e*12|0)|0}function od(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0.0;u=h;h=h+16|0;i=u;r=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)r=o[(o[e>>2]|0)+r>>2]|0;Jl(i,n);i=Ql(i,n)|0;a=+Nu(+kx[r&7](e,i));h=u;return+a}function ud(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Oa(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];ad(e,n,i,1);h=r;return}function ad(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=ld()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=sd(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];Ba(a,t,e,n,cd(u,r)|0,r);h=i;return}function ld(){var e=0,t=0;if(!(r[7712]|0)){bd(9556);Fe(35,9556,b|0)|0;t=7712;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9556)|0)){e=9556;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));bd(9556)}return 9556}function sd(e){e=e|0;return 0}function cd(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=ld()|0;c=d+24|0;e=Wa(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];fd(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{dd(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function fd(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function dd(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=pd(e)|0;if(u>>>0>>0)jS(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;hd(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];fd(u,r,n);o[s>>2]=(o[s>>2]|0)+12;md(e,l);vd(l);h=c;return}}function pd(e){e=e|0;return 357913941}function hd(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ke();else{i=YS(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function md(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function vd(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)$S(e);return}function bd(e){e=e|0;yd(e);return}function gd(e){e=e|0;_d(e+24|0);return}function _d(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);$S(n)}return}function yd(e){e=e|0;var t=0;t=Za()|0;nl(e,2,5,t,Dd()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Dd(){return 1232}function wd(e,t){e=e|0;t=t|0;var n=0.0,r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=Ed(e)|0;e=o[a+4>>2]|0;o[u>>2]=o[a>>2];o[u+4>>2]=e;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];n=+Cd(t,i);h=r;return+n}function Ed(e){e=e|0;return(o[(ld()|0)+24>>2]|0)+(e*12|0)|0}function Cd(e,t){e=e|0;t=t|0;var n=0;n=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)n=o[(o[e>>2]|0)+n>>2]|0;return+ +Nu(+Dx[n&15](e))}function Td(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Oa(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];kd(e,n,i,1);h=r;return}function kd(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=Sd()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Md(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];Ba(a,t,e,n,xd(u,r)|0,r);h=i;return}function Sd(){var e=0,t=0;if(!(r[7720]|0)){Fd(9592);Fe(36,9592,b|0)|0;t=7720;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9592)|0)){e=9592;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Fd(9592)}return 9592}function Md(e){e=e|0;return 0}function xd(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=Sd()|0;c=d+24|0;e=Wa(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Ad(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{Pd(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Ad(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function Pd(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Od(e)|0;if(u>>>0>>0)jS(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;Rd(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Ad(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Nd(e,l);Id(l);h=c;return}}function Od(e){e=e|0;return 357913941}function Rd(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ke();else{i=YS(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Nd(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Id(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)$S(e);return}function Fd(e){e=e|0;Ud(e);return}function Bd(e){e=e|0;Ld(e+24|0);return}function Ld(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);$S(n)}return}function Ud(e){e=e|0;var t=0;t=Za()|0;nl(e,2,7,t,jd()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function jd(){return 1276}function Wd(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0;n=h;h=h+16|0;r=n+8|0;i=n;u=zd(e)|0;e=o[u+4>>2]|0;o[i>>2]=o[u>>2];o[i+4>>2]=e;o[r>>2]=o[i>>2];o[r+4>>2]=o[i+4>>2];t=qd(t,r)|0;h=n;return t|0}function zd(e){e=e|0;return(o[(Sd()|0)+24>>2]|0)+(e*12|0)|0}function qd(e,t){e=e|0;t=t|0;var n=0,r=0,i=0;i=h;h=h+16|0;r=i;n=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)n=o[(o[e>>2]|0)+n>>2]|0;mx[n&31](r,e);r=Hd(r)|0;h=i;return r|0}function Hd(e){e=e|0;var t=0,n=0,r=0,i=0;i=h;h=h+32|0;t=i+12|0;n=i;r=al(Gd()|0)|0;if(!r)e=Yd(e)|0;else{ll(t,r);sl(n,t);Vd(e,n);e=fl(t)|0}h=i;return e|0}function Gd(){var e=0;if(!(r[7736]|0)){ip(9640);Fe(25,9640,b|0)|0;e=7736;o[e>>2]=1;o[e+4>>2]=0}return 9640}function Vd(e,t){e=e|0;t=t|0;Qd(t,e,e+8|0)|0;return}function Yd(e){e=e|0;var t=0,n=0,r=0,i=0,u=0,a=0,l=0;n=h;h=h+16|0;i=n+4|0;a=n;r=jE(8)|0;t=r;l=YS(16)|0;o[l>>2]=o[e>>2];o[l+4>>2]=o[e+4>>2];o[l+8>>2]=o[e+8>>2];o[l+12>>2]=o[e+12>>2];u=t+4|0;o[u>>2]=l;e=YS(8)|0;u=o[u>>2]|0;o[a>>2]=0;o[i>>2]=o[a>>2];Kd(e,u,i);o[r>>2]=e;h=n;return t|0}function Kd(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;n=YS(16)|0;o[n+4>>2]=0;o[n+8>>2]=0;o[n>>2]=1244;o[n+12>>2]=t;o[e+4>>2]=n;return}function $d(e){e=e|0;WS(e);$S(e);return}function Xd(e){e=e|0;e=o[e+12>>2]|0;if(e|0)$S(e);return}function Jd(e){e=e|0;$S(e);return}function Qd(e,t,n){e=e|0;t=t|0;n=n|0;t=Zd(o[e>>2]|0,t,n)|0;n=e+4|0;o[(o[n>>2]|0)+8>>2]=t;return o[(o[n>>2]|0)+8>>2]|0}function Zd(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0;r=h;h=h+16|0;i=r;Ek(i);e=wu(e)|0;n=ep(e,o[t>>2]|0,+c[n>>3])|0;Tk(i);h=r;return n|0}function ep(e,t,n){e=e|0;t=t|0;n=+n;var r=0;r=Tu(tp()|0)|0;t=Su(t)|0;return Me(0,r|0,e|0,t|0,+ +ku(n))|0}function tp(){var e=0;if(!(r[7728]|0)){np(9628);e=7728;o[e>>2]=1;o[e+4>>2]=0}return 9628}function np(e){e=e|0;Bu(e,rp()|0,2);return}function rp(){return 1264}function ip(e){e=e|0;xl(e);return}function op(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Oa(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];up(e,n,i,1);h=r;return}function up(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=ap()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=lp(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];Ba(a,t,e,n,sp(u,r)|0,r);h=i;return}function ap(){var e=0,t=0;if(!(r[7744]|0)){vp(9684);Fe(37,9684,b|0)|0;t=7744;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9684)|0)){e=9684;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));vp(9684)}return 9684}function lp(e){e=e|0;return 0}function sp(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=ap()|0;c=d+24|0;e=Wa(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];cp(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{fp(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function cp(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function fp(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=dp(e)|0;if(u>>>0>>0)jS(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;pp(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];cp(u,r,n);o[s>>2]=(o[s>>2]|0)+12;hp(e,l);mp(l);h=c;return}}function dp(e){e=e|0;return 357913941}function pp(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ke();else{i=YS(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function hp(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function mp(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)$S(e);return}function vp(e){e=e|0;_p(e);return}function bp(e){e=e|0;gp(e+24|0);return}function gp(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);$S(n)}return}function _p(e){e=e|0;var t=0;t=Za()|0;nl(e,2,5,t,yp()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function yp(){return 1280}function Dp(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=wp(e)|0;e=o[a+4>>2]|0;o[u>>2]=o[a>>2];o[u+4>>2]=e;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];n=Ep(t,i,n)|0;h=r;return n|0}function wp(e){e=e|0;return(o[(ap()|0)+24>>2]|0)+(e*12|0)|0}function Ep(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;a=h;h=h+32|0;i=a;u=a+16|0;r=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)r=o[(o[e>>2]|0)+r>>2]|0;Jl(u,n);u=Ql(u,n)|0;Px[r&15](i,e,u);u=Hd(i)|0;h=a;return u|0}function Cp(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Oa(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Tp(e,n,i,1);h=r;return}function Tp(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=kp()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Sp(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];Ba(a,t,e,n,Mp(u,r)|0,r);h=i;return}function kp(){var e=0,t=0;if(!(r[7752]|0)){Ip(9720);Fe(38,9720,b|0)|0;t=7752;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9720)|0)){e=9720;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Ip(9720)}return 9720}function Sp(e){e=e|0;return 0}function Mp(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=kp()|0;c=d+24|0;e=Wa(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];xp(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{Ap(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function xp(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function Ap(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Pp(e)|0;if(u>>>0>>0)jS(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;Op(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];xp(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Rp(e,l);Np(l);h=c;return}}function Pp(e){e=e|0;return 357913941}function Op(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ke();else{i=YS(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Rp(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Np(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)$S(e);return}function Ip(e){e=e|0;Lp(e);return}function Fp(e){e=e|0;Bp(e+24|0);return}function Bp(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);$S(n)}return}function Lp(e){e=e|0;var t=0;t=Za()|0;nl(e,2,8,t,Up()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Up(){return 1288}function jp(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0;n=h;h=h+16|0;r=n+8|0;i=n;u=Wp(e)|0;e=o[u+4>>2]|0;o[i>>2]=o[u>>2];o[i+4>>2]=e;o[r>>2]=o[i>>2];o[r+4>>2]=o[i+4>>2];t=zp(t,r)|0;h=n;return t|0}function Wp(e){e=e|0;return(o[(kp()|0)+24>>2]|0)+(e*12|0)|0}function zp(e,t){e=e|0;t=t|0;var n=0;n=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)n=o[(o[e>>2]|0)+n>>2]|0;return Ru(vx[n&31](e)|0)|0}function qp(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Oa(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Hp(e,n,i,0);h=r;return}function Hp(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=Gp()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Vp(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];Ba(a,t,e,n,Yp(u,r)|0,r);h=i;return}function Gp(){var e=0,t=0;if(!(r[7760]|0)){eh(9756);Fe(39,9756,b|0)|0;t=7760;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9756)|0)){e=9756;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));eh(9756)}return 9756}function Vp(e){e=e|0;return 0}function Yp(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=Gp()|0;c=d+24|0;e=Wa(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Kp(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{$p(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Kp(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function $p(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Xp(e)|0;if(u>>>0>>0)jS(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;Jp(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Kp(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Qp(e,l);Zp(l);h=c;return}}function Xp(e){e=e|0;return 357913941}function Jp(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ke();else{i=YS(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Qp(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Zp(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)$S(e);return}function eh(e){e=e|0;rh(e);return}function th(e){e=e|0;nh(e+24|0);return}function nh(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);$S(n)}return}function rh(e){e=e|0;var t=0;t=Za()|0;nl(e,2,8,t,ih()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function ih(){return 1292}function oh(e,t,n){e=e|0;t=t|0;n=+n;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=uh(e)|0;e=o[a+4>>2]|0;o[u>>2]=o[a>>2];o[u+4>>2]=e;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];ah(t,i,n);h=r;return}function uh(e){e=e|0;return(o[(Gp()|0)+24>>2]|0)+(e*12|0)|0}function ah(e,t,n){e=e|0;t=t|0;n=+n;var r=0,i=0,u=0;u=h;h=h+16|0;i=u;r=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)r=o[(o[e>>2]|0)+r>>2]|0;$l(i,n);n=+Xl(i,n);dx[r&31](e,n);h=u;return}function lh(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Oa(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];sh(e,n,i,0);h=r;return}function sh(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=ch()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=fh(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];Ba(a,t,e,n,dh(u,r)|0,r);h=i;return}function ch(){var e=0,t=0;if(!(r[7768]|0)){_h(9792);Fe(40,9792,b|0)|0;t=7768;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9792)|0)){e=9792;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));_h(9792)}return 9792}function fh(e){e=e|0;return 0}function dh(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=ch()|0;c=d+24|0;e=Wa(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];ph(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{hh(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function ph(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function hh(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=mh(e)|0;if(u>>>0>>0)jS(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;vh(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];ph(u,r,n);o[s>>2]=(o[s>>2]|0)+12;bh(e,l);gh(l);h=c;return}}function mh(e){e=e|0;return 357913941}function vh(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ke();else{i=YS(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function bh(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function gh(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)$S(e);return}function _h(e){e=e|0;wh(e);return}function yh(e){e=e|0;Dh(e+24|0);return}function Dh(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);$S(n)}return}function wh(e){e=e|0;var t=0;t=Za()|0;nl(e,2,1,t,Eh()|0,2);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Eh(){return 1300}function Ch(e,t,n,r){e=e|0;t=t|0;n=n|0;r=+r;var i=0,u=0,a=0,l=0;i=h;h=h+16|0;u=i+8|0;a=i;l=Th(e)|0;e=o[l+4>>2]|0;o[a>>2]=o[l>>2];o[a+4>>2]=e;o[u>>2]=o[a>>2];o[u+4>>2]=o[a+4>>2];kh(t,u,n,r);h=i;return}function Th(e){e=e|0;return(o[(ch()|0)+24>>2]|0)+(e*12|0)|0}function kh(e,t,n,r){e=e|0;t=t|0;n=n|0;r=+r;var i=0,u=0,a=0,l=0;l=h;h=h+16|0;u=l+1|0;a=l;i=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)i=o[(o[e>>2]|0)+i>>2]|0;Jl(u,n);u=Ql(u,n)|0;$l(a,r);r=+Xl(a,r);Rx[i&15](e,u,r);h=l;return}function Sh(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Oa(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Mh(e,n,i,0);h=r;return}function Mh(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=xh()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=Ah(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];Ba(a,t,e,n,Ph(u,r)|0,r);h=i;return}function xh(){var e=0,t=0;if(!(r[7776]|0)){Lh(9828);Fe(41,9828,b|0)|0;t=7776;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9828)|0)){e=9828;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Lh(9828)}return 9828}function Ah(e){e=e|0;return 0}function Ph(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=xh()|0;c=d+24|0;e=Wa(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Oh(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{Rh(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Oh(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function Rh(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Nh(e)|0;if(u>>>0>>0)jS(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;Ih(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Oh(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Fh(e,l);Bh(l);h=c;return}}function Nh(e){e=e|0;return 357913941}function Ih(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ke();else{i=YS(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Fh(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Bh(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)$S(e);return}function Lh(e){e=e|0;Wh(e);return}function Uh(e){e=e|0;jh(e+24|0);return}function jh(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);$S(n)}return}function Wh(e){e=e|0;var t=0;t=Za()|0;nl(e,2,7,t,zh()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function zh(){return 1312}function qh(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=Hh(e)|0;e=o[a+4>>2]|0;o[u>>2]=o[a>>2];o[u+4>>2]=e;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Gh(t,i,n);h=r;return}function Hh(e){e=e|0;return(o[(xh()|0)+24>>2]|0)+(e*12|0)|0}function Gh(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0;u=h;h=h+16|0;i=u;r=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)r=o[(o[e>>2]|0)+r>>2]|0;Jl(i,n);i=Ql(i,n)|0;mx[r&31](e,i);h=u;return}function Vh(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Oa(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Yh(e,n,i,0);h=r;return}function Yh(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=Kh()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=$h(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];Ba(a,t,e,n,Xh(u,r)|0,r);h=i;return}function Kh(){var e=0,t=0;if(!(r[7784]|0)){rm(9864);Fe(42,9864,b|0)|0;t=7784;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9864)|0)){e=9864;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));rm(9864)}return 9864}function $h(e){e=e|0;return 0}function Xh(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=Kh()|0;c=d+24|0;e=Wa(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Jh(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{Qh(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Jh(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function Qh(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Zh(e)|0;if(u>>>0>>0)jS(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;em(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Jh(u,r,n);o[s>>2]=(o[s>>2]|0)+12;tm(e,l);nm(l);h=c;return}}function Zh(e){e=e|0;return 357913941}function em(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ke();else{i=YS(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function tm(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function nm(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)$S(e);return}function rm(e){e=e|0;um(e);return}function im(e){e=e|0;om(e+24|0);return}function om(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);$S(n)}return}function um(e){e=e|0;var t=0;t=Za()|0;nl(e,2,8,t,am()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function am(){return 1320}function lm(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=sm(e)|0;e=o[a+4>>2]|0;o[u>>2]=o[a>>2];o[u+4>>2]=e;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];cm(t,i,n);h=r;return}function sm(e){e=e|0;return(o[(Kh()|0)+24>>2]|0)+(e*12|0)|0}function cm(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0;u=h;h=h+16|0;i=u;r=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)r=o[(o[e>>2]|0)+r>>2]|0;fm(i,n);i=dm(i,n)|0;mx[r&31](e,i);h=u;return}function fm(e,t){e=e|0;t=t|0;return}function dm(e,t){e=e|0;t=t|0;return pm(t)|0}function pm(e){e=e|0;return e|0}function hm(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Oa(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];mm(e,n,i,0);h=r;return}function mm(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=vm()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=bm(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];Ba(a,t,e,n,gm(u,r)|0,r);h=i;return}function vm(){var e=0,t=0;if(!(r[7792]|0)){Tm(9900);Fe(43,9900,b|0)|0;t=7792;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9900)|0)){e=9900;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Tm(9900)}return 9900}function bm(e){e=e|0;return 0}function gm(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=vm()|0;c=d+24|0;e=Wa(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];_m(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{ym(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function _m(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function ym(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Dm(e)|0;if(u>>>0>>0)jS(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;wm(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];_m(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Em(e,l);Cm(l);h=c;return}}function Dm(e){e=e|0;return 357913941}function wm(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ke();else{i=YS(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Em(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Cm(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)$S(e);return}function Tm(e){e=e|0;Mm(e);return}function km(e){e=e|0;Sm(e+24|0);return}function Sm(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);$S(n)}return}function Mm(e){e=e|0;var t=0;t=Za()|0;nl(e,2,22,t,xm()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function xm(){return 1344}function Am(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0;n=h;h=h+16|0;r=n+8|0;i=n;u=Pm(e)|0;e=o[u+4>>2]|0;o[i>>2]=o[u>>2];o[i+4>>2]=e;o[r>>2]=o[i>>2];o[r+4>>2]=o[i+4>>2];Om(t,r);h=n;return}function Pm(e){e=e|0;return(o[(vm()|0)+24>>2]|0)+(e*12|0)|0}function Om(e,t){e=e|0;t=t|0;var n=0;n=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)n=o[(o[e>>2]|0)+n>>2]|0;hx[n&127](e);return}function Rm(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0;u=o[e>>2]|0;i=Nm()|0;e=Im(n)|0;Ba(u,t,i,e,Fm(n,r)|0,r);return}function Nm(){var e=0,t=0;if(!(r[7800]|0)){qm(9936);Fe(44,9936,b|0)|0;t=7800;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9936)|0)){e=9936;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));qm(9936)}return 9936}function Im(e){e=e|0;return e|0}function Fm(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0;l=h;h=h+16|0;i=l;u=l+4|0;o[i>>2]=e;s=Nm()|0;a=s+24|0;t=Wa(t,4)|0;o[u>>2]=t;n=s+28|0;r=o[n>>2]|0;if(r>>>0<(o[s+32>>2]|0)>>>0){Bm(r,e,t);t=(o[n>>2]|0)+8|0;o[n>>2]=t}else{Lm(a,i,u);t=o[n>>2]|0}h=l;return(t-(o[a>>2]|0)>>3)+-1|0}function Bm(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;o[e+4>>2]=n;return}function Lm(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0;l=h;h=h+32|0;i=l;u=e+4|0;a=((o[u>>2]|0)-(o[e>>2]|0)>>3)+1|0;r=Um(e)|0;if(r>>>0>>0)jS(e);else{s=o[e>>2]|0;f=(o[e+8>>2]|0)-s|0;c=f>>2;jm(i,f>>3>>>0>>1>>>0?c>>>0>>0?a:c:r,(o[u>>2]|0)-s>>3,e+8|0);a=i+8|0;Bm(o[a>>2]|0,o[t>>2]|0,o[n>>2]|0);o[a>>2]=(o[a>>2]|0)+8;Wm(e,i);zm(i);h=l;return}}function Um(e){e=e|0;return 536870911}function jm(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>536870911)Ke();else{i=YS(t<<3)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n<<3)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t<<3);return}function Wm(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(0-(i>>3)<<3)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function zm(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~((r+-8-t|0)>>>3)<<3);e=o[e>>2]|0;if(e|0)$S(e);return}function qm(e){e=e|0;Vm(e);return}function Hm(e){e=e|0;Gm(e+24|0);return}function Gm(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);$S(n)}return}function Vm(e){e=e|0;var t=0;t=Za()|0;nl(e,1,23,t,mf()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Ym(e,t){e=e|0;t=t|0;$m(o[(Km(e)|0)>>2]|0,t);return}function Km(e){e=e|0;return(o[(Nm()|0)+24>>2]|0)+(e<<3)|0}function $m(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;_f(r,t);t=yf(r,t)|0;hx[e&127](t);h=n;return}function Xm(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0;u=o[e>>2]|0;i=Jm()|0;e=Qm(n)|0;Ba(u,t,i,e,Zm(n,r)|0,r);return}function Jm(){var e=0,t=0;if(!(r[7808]|0)){uv(9972);Fe(45,9972,b|0)|0;t=7808;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(9972)|0)){e=9972;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));uv(9972)}return 9972}function Qm(e){e=e|0;return e|0}function Zm(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0;l=h;h=h+16|0;i=l;u=l+4|0;o[i>>2]=e;s=Jm()|0;a=s+24|0;t=Wa(t,4)|0;o[u>>2]=t;n=s+28|0;r=o[n>>2]|0;if(r>>>0<(o[s+32>>2]|0)>>>0){ev(r,e,t);t=(o[n>>2]|0)+8|0;o[n>>2]=t}else{tv(a,i,u);t=o[n>>2]|0}h=l;return(t-(o[a>>2]|0)>>3)+-1|0}function ev(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;o[e+4>>2]=n;return}function tv(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0;l=h;h=h+32|0;i=l;u=e+4|0;a=((o[u>>2]|0)-(o[e>>2]|0)>>3)+1|0;r=nv(e)|0;if(r>>>0>>0)jS(e);else{s=o[e>>2]|0;f=(o[e+8>>2]|0)-s|0;c=f>>2;rv(i,f>>3>>>0>>1>>>0?c>>>0>>0?a:c:r,(o[u>>2]|0)-s>>3,e+8|0);a=i+8|0;ev(o[a>>2]|0,o[t>>2]|0,o[n>>2]|0);o[a>>2]=(o[a>>2]|0)+8;iv(e,i);ov(i);h=l;return}}function nv(e){e=e|0;return 536870911}function rv(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>536870911)Ke();else{i=YS(t<<3)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n<<3)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t<<3);return}function iv(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(0-(i>>3)<<3)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function ov(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~((r+-8-t|0)>>>3)<<3);e=o[e>>2]|0;if(e|0)$S(e);return}function uv(e){e=e|0;sv(e);return}function av(e){e=e|0;lv(e+24|0);return}function lv(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);$S(n)}return}function sv(e){e=e|0;var t=0;t=Za()|0;nl(e,1,9,t,cv()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function cv(){return 1348}function fv(e,t){e=e|0;t=t|0;return pv(o[(dv(e)|0)>>2]|0,t)|0}function dv(e){e=e|0;return(o[(Jm()|0)+24>>2]|0)+(e<<3)|0}function pv(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;hv(r,t);t=mv(r,t)|0;t=dc(vx[e&31](t)|0)|0;h=n;return t|0}function hv(e,t){e=e|0;t=t|0;return}function mv(e,t){e=e|0;t=t|0;return vv(t)|0}function vv(e){e=e|0;return e|0}function bv(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0;u=o[e>>2]|0;i=gv()|0;e=_v(n)|0;Ba(u,t,i,e,yv(n,r)|0,r);return}function gv(){var e=0,t=0;if(!(r[7816]|0)){Sv(10008);Fe(46,10008,b|0)|0;t=7816;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(10008)|0)){e=10008;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Sv(10008)}return 10008}function _v(e){e=e|0;return e|0}function yv(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0;l=h;h=h+16|0;i=l;u=l+4|0;o[i>>2]=e;s=gv()|0;a=s+24|0;t=Wa(t,4)|0;o[u>>2]=t;n=s+28|0;r=o[n>>2]|0;if(r>>>0<(o[s+32>>2]|0)>>>0){Dv(r,e,t);t=(o[n>>2]|0)+8|0;o[n>>2]=t}else{wv(a,i,u);t=o[n>>2]|0}h=l;return(t-(o[a>>2]|0)>>3)+-1|0}function Dv(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;o[e+4>>2]=n;return}function wv(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0;l=h;h=h+32|0;i=l;u=e+4|0;a=((o[u>>2]|0)-(o[e>>2]|0)>>3)+1|0;r=Ev(e)|0;if(r>>>0>>0)jS(e);else{s=o[e>>2]|0;f=(o[e+8>>2]|0)-s|0;c=f>>2;Cv(i,f>>3>>>0>>1>>>0?c>>>0>>0?a:c:r,(o[u>>2]|0)-s>>3,e+8|0);a=i+8|0;Dv(o[a>>2]|0,o[t>>2]|0,o[n>>2]|0);o[a>>2]=(o[a>>2]|0)+8;Tv(e,i);kv(i);h=l;return}}function Ev(e){e=e|0;return 536870911}function Cv(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>536870911)Ke();else{i=YS(t<<3)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n<<3)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t<<3);return}function Tv(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(0-(i>>3)<<3)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function kv(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~((r+-8-t|0)>>>3)<<3);e=o[e>>2]|0;if(e|0)$S(e);return}function Sv(e){e=e|0;Av(e);return}function Mv(e){e=e|0;xv(e+24|0);return}function xv(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);$S(n)}return}function Av(e){e=e|0;var t=0;t=Za()|0;nl(e,1,15,t,xc()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Pv(e){e=e|0;return Rv(o[(Ov(e)|0)>>2]|0)|0}function Ov(e){e=e|0;return(o[(gv()|0)+24>>2]|0)+(e<<3)|0}function Rv(e){e=e|0;return dc(Sx[e&7]()|0)|0}function Nv(){var e=0;if(!(r[7832]|0)){Hv(10052);Fe(25,10052,b|0)|0;e=7832;o[e>>2]=1;o[e+4>>2]=0}return 10052}function Iv(e,t){e=e|0;t=t|0;o[e>>2]=Fv()|0;o[e+4>>2]=Bv()|0;o[e+12>>2]=t;o[e+8>>2]=Lv()|0;o[e+32>>2]=2;return}function Fv(){return 11709}function Bv(){return 1188}function Lv(){return zv()|0}function Uv(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;if((jv(r,896)|0)==512){if(n|0){Wv(n);$S(n)}}else if(t|0){Ji(t);$S(t)}return}function jv(e,t){e=e|0;t=t|0;return t&e|0}function Wv(e){e=e|0;e=o[e+4>>2]|0;if(e|0)GS(e);return}function zv(){var e=0;if(!(r[7824]|0)){o[2511]=qv()|0;o[2512]=0;e=7824;o[e>>2]=1;o[e+4>>2]=0}return 10044}function qv(){return 0}function Hv(e){e=e|0;xl(e);return}function Gv(e){e=e|0;var t=0,n=0,r=0,i=0,u=0;t=h;h=h+32|0;n=t+24|0;u=t+16|0;i=t+8|0;r=t;Vv(e,4827);Yv(e,4834,3)|0;Kv(e,3682,47)|0;o[u>>2]=9;o[u+4>>2]=0;o[n>>2]=o[u>>2];o[n+4>>2]=o[u+4>>2];$v(e,4841,n)|0;o[i>>2]=1;o[i+4>>2]=0;o[n>>2]=o[i>>2];o[n+4>>2]=o[i+4>>2];Xv(e,4871,n)|0;o[r>>2]=10;o[r+4>>2]=0;o[n>>2]=o[r>>2];o[n+4>>2]=o[r+4>>2];Jv(e,4891,n)|0;h=t;return}function Vv(e,t){e=e|0;t=t|0;var n=0;n=Hg()|0;o[e>>2]=n;Gg(n,t);cD(o[e>>2]|0);return}function Yv(e,t,n){e=e|0;t=t|0;n=n|0;Tg(e,Oa(t)|0,n,0);return e|0}function Kv(e,t,n){e=e|0;t=t|0;n=n|0;ag(e,Oa(t)|0,n,0);return e|0}function $v(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Ub(e,t,i);h=r;return e|0}function Xv(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];bb(e,t,i);h=r;return e|0}function Jv(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=o[n+4>>2]|0;o[u>>2]=o[n>>2];o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Qv(e,t,i);h=r;return e|0}function Qv(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Oa(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Zv(e,n,i,1);h=r;return}function Zv(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=eb()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=tb(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];Ba(a,t,e,n,nb(u,r)|0,r);h=i;return}function eb(){var e=0,t=0;if(!(r[7840]|0)){sb(10100);Fe(48,10100,b|0)|0;t=7840;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(10100)|0)){e=10100;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));sb(10100)}return 10100}function tb(e){e=e|0;return 0}function nb(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=eb()|0;c=d+24|0;e=Wa(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];rb(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{ib(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function rb(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function ib(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=ob(e)|0;if(u>>>0>>0)jS(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;ub(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];rb(u,r,n);o[s>>2]=(o[s>>2]|0)+12;ab(e,l);lb(l);h=c;return}}function ob(e){e=e|0;return 357913941}function ub(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ke();else{i=YS(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function ab(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function lb(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)$S(e);return}function sb(e){e=e|0;db(e);return}function cb(e){e=e|0;fb(e+24|0);return}function fb(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);$S(n)}return}function db(e){e=e|0;var t=0;t=Za()|0;nl(e,2,6,t,pb()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function pb(){return 1364}function hb(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=mb(e)|0;e=o[a+4>>2]|0;o[u>>2]=o[a>>2];o[u+4>>2]=e;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];n=vb(t,i,n)|0;h=r;return n|0}function mb(e){e=e|0;return(o[(eb()|0)+24>>2]|0)+(e*12|0)|0}function vb(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0;u=h;h=h+16|0;i=u;r=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)r=o[(o[e>>2]|0)+r>>2]|0;Jl(i,n);i=Ql(i,n)|0;i=ys(Ex[r&15](e,i)|0)|0;h=u;return i|0}function bb(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Oa(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];gb(e,n,i,0);h=r;return}function gb(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=_b()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=yb(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];Ba(a,t,e,n,Db(u,r)|0,r);h=i;return}function _b(){var e=0,t=0;if(!(r[7848]|0)){Mb(10136);Fe(49,10136,b|0)|0;t=7848;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(10136)|0)){e=10136;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Mb(10136)}return 10136}function yb(e){e=e|0;return 0}function Db(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=_b()|0;c=d+24|0;e=Wa(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];wb(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{Eb(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function wb(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function Eb(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Cb(e)|0;if(u>>>0>>0)jS(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;Tb(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];wb(u,r,n);o[s>>2]=(o[s>>2]|0)+12;kb(e,l);Sb(l);h=c;return}}function Cb(e){e=e|0;return 357913941}function Tb(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ke();else{i=YS(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function kb(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Sb(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)$S(e);return}function Mb(e){e=e|0;Pb(e);return}function xb(e){e=e|0;Ab(e+24|0);return}function Ab(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);$S(n)}return}function Pb(e){e=e|0;var t=0;t=Za()|0;nl(e,2,9,t,Ob()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Ob(){return 1372}function Rb(e,t,n){e=e|0;t=t|0;n=+n;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;i=r+8|0;u=r;a=Nb(e)|0;e=o[a+4>>2]|0;o[u>>2]=o[a>>2];o[u+4>>2]=e;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];Ib(t,i,n);h=r;return}function Nb(e){e=e|0;return(o[(_b()|0)+24>>2]|0)+(e*12|0)|0}function Ib(e,t,n){e=e|0;t=t|0;n=+n;var r=0,i=0,u=0,a=ft;u=h;h=h+16|0;i=u;r=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)r=o[(o[e>>2]|0)+r>>2]|0;Fb(i,n);a=K(Bb(i,n));fx[r&1](e,a);h=u;return}function Fb(e,t){e=e|0;t=+t;return}function Bb(e,t){e=e|0;t=+t;return K(Lb(t))}function Lb(e){e=+e;return K(e)}function Ub(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;i=r+8|0;u=r;l=o[n>>2]|0;a=o[n+4>>2]|0;n=Oa(t)|0;o[u>>2]=l;o[u+4>>2]=a;o[i>>2]=o[u>>2];o[i+4>>2]=o[u+4>>2];jb(e,n,i,0);h=r;return}function jb(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0;i=h;h=h+32|0;u=i+16|0;f=i+8|0;l=i;c=o[n>>2]|0;s=o[n+4>>2]|0;a=o[e>>2]|0;e=Wb()|0;o[f>>2]=c;o[f+4>>2]=s;o[u>>2]=o[f>>2];o[u+4>>2]=o[f+4>>2];n=zb(u)|0;o[l>>2]=c;o[l+4>>2]=s;o[u>>2]=o[l>>2];o[u+4>>2]=o[l+4>>2];Ba(a,t,e,n,qb(u,r)|0,r);h=i;return}function Wb(){var e=0,t=0;if(!(r[7856]|0)){Xb(10172);Fe(50,10172,b|0)|0;t=7856;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(10172)|0)){e=10172;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Xb(10172)}return 10172}function zb(e){e=e|0;return 0}function qb(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0;f=h;h=h+32|0;i=f+24|0;a=f+16|0;l=f;s=f+8|0;u=o[e>>2]|0;r=o[e+4>>2]|0;o[l>>2]=u;o[l+4>>2]=r;d=Wb()|0;c=d+24|0;e=Wa(t,4)|0;o[s>>2]=e;t=d+28|0;n=o[t>>2]|0;if(n>>>0<(o[d+32>>2]|0)>>>0){o[a>>2]=u;o[a+4>>2]=r;o[i>>2]=o[a>>2];o[i+4>>2]=o[a+4>>2];Hb(n,i,e);e=(o[t>>2]|0)+12|0;o[t>>2]=e}else{Gb(c,l,s);e=o[t>>2]|0}h=f;return((e-(o[c>>2]|0)|0)/12|0)+-1|0}function Hb(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=o[t+4>>2]|0;o[e>>2]=o[t>>2];o[e+4>>2]=r;o[e+8>>2]=n;return}function Gb(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0;c=h;h=h+48|0;r=c+32|0;a=c+24|0;l=c;s=e+4|0;i=(((o[s>>2]|0)-(o[e>>2]|0)|0)/12|0)+1|0;u=Vb(e)|0;if(u>>>0>>0)jS(e);else{f=o[e>>2]|0;p=((o[e+8>>2]|0)-f|0)/12|0;d=p<<1;Yb(l,p>>>0>>1>>>0?d>>>0>>0?i:d:u,((o[s>>2]|0)-f|0)/12|0,e+8|0);s=l+8|0;u=o[s>>2]|0;i=o[t+4>>2]|0;n=o[n>>2]|0;o[a>>2]=o[t>>2];o[a+4>>2]=i;o[r>>2]=o[a>>2];o[r+4>>2]=o[a+4>>2];Hb(u,r,n);o[s>>2]=(o[s>>2]|0)+12;Kb(e,l);$b(l);h=c;return}}function Vb(e){e=e|0;return 357913941}function Yb(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>357913941)Ke();else{i=YS(t*12|0)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n*12|0)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t*12|0);return}function Kb(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(((i|0)/-12|0)*12|0)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function $b(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~(((r+-12-t|0)>>>0)/12|0)*12|0);e=o[e>>2]|0;if(e|0)$S(e);return}function Xb(e){e=e|0;Zb(e);return}function Jb(e){e=e|0;Qb(e+24|0);return}function Qb(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~(((t+-12-r|0)>>>0)/12|0)*12|0);$S(n)}return}function Zb(e){e=e|0;var t=0;t=Za()|0;nl(e,2,3,t,eg()|0,2);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function eg(){return 1380}function tg(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0;i=h;h=h+16|0;u=i+8|0;a=i;l=ng(e)|0;e=o[l+4>>2]|0;o[a>>2]=o[l>>2];o[a+4>>2]=e;o[u>>2]=o[a>>2];o[u+4>>2]=o[a+4>>2];rg(t,u,n,r);h=i;return}function ng(e){e=e|0;return(o[(Wb()|0)+24>>2]|0)+(e*12|0)|0}function rg(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0;l=h;h=h+16|0;u=l+1|0;a=l;i=o[t>>2]|0;t=o[t+4>>2]|0;e=e+(t>>1)|0;if(t&1)i=o[(o[e>>2]|0)+i>>2]|0;Jl(u,n);u=Ql(u,n)|0;ig(a,r);a=og(a,r)|0;Px[i&15](e,u,a);h=l;return}function ig(e,t){e=e|0;t=t|0;return}function og(e,t){e=e|0;t=t|0;return ug(t)|0}function ug(e){e=e|0;return(e|0)!=0|0}function ag(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0;u=o[e>>2]|0;i=lg()|0;e=sg(n)|0;Ba(u,t,i,e,cg(n,r)|0,r);return}function lg(){var e=0,t=0;if(!(r[7864]|0)){bg(10208);Fe(51,10208,b|0)|0;t=7864;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(10208)|0)){e=10208;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));bg(10208)}return 10208}function sg(e){e=e|0;return e|0}function cg(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0;l=h;h=h+16|0;i=l;u=l+4|0;o[i>>2]=e;s=lg()|0;a=s+24|0;t=Wa(t,4)|0;o[u>>2]=t;n=s+28|0;r=o[n>>2]|0;if(r>>>0<(o[s+32>>2]|0)>>>0){fg(r,e,t);t=(o[n>>2]|0)+8|0;o[n>>2]=t}else{dg(a,i,u);t=o[n>>2]|0}h=l;return(t-(o[a>>2]|0)>>3)+-1|0}function fg(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;o[e+4>>2]=n;return}function dg(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0;l=h;h=h+32|0;i=l;u=e+4|0;a=((o[u>>2]|0)-(o[e>>2]|0)>>3)+1|0;r=pg(e)|0;if(r>>>0>>0)jS(e);else{s=o[e>>2]|0;f=(o[e+8>>2]|0)-s|0;c=f>>2;hg(i,f>>3>>>0>>1>>>0?c>>>0>>0?a:c:r,(o[u>>2]|0)-s>>3,e+8|0);a=i+8|0;fg(o[a>>2]|0,o[t>>2]|0,o[n>>2]|0);o[a>>2]=(o[a>>2]|0)+8;mg(e,i);vg(i);h=l;return}}function pg(e){e=e|0;return 536870911}function hg(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>536870911)Ke();else{i=YS(t<<3)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n<<3)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t<<3);return}function mg(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(0-(i>>3)<<3)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function vg(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~((r+-8-t|0)>>>3)<<3);e=o[e>>2]|0;if(e|0)$S(e);return}function bg(e){e=e|0;yg(e);return}function gg(e){e=e|0;_g(e+24|0);return}function _g(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);$S(n)}return}function yg(e){e=e|0;var t=0;t=Za()|0;nl(e,1,24,t,Dg()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Dg(){return 1392}function wg(e,t){e=e|0;t=t|0;Cg(o[(Eg(e)|0)>>2]|0,t);return}function Eg(e){e=e|0;return(o[(lg()|0)+24>>2]|0)+(e<<3)|0}function Cg(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;hv(r,t);t=mv(r,t)|0;hx[e&127](t);h=n;return}function Tg(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0;u=o[e>>2]|0;i=kg()|0;e=Sg(n)|0;Ba(u,t,i,e,Mg(n,r)|0,r);return}function kg(){var e=0,t=0;if(!(r[7872]|0)){Ig(10244);Fe(52,10244,b|0)|0;t=7872;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(10244)|0)){e=10244;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Ig(10244)}return 10244}function Sg(e){e=e|0;return e|0}function Mg(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0;l=h;h=h+16|0;i=l;u=l+4|0;o[i>>2]=e;s=kg()|0;a=s+24|0;t=Wa(t,4)|0;o[u>>2]=t;n=s+28|0;r=o[n>>2]|0;if(r>>>0<(o[s+32>>2]|0)>>>0){xg(r,e,t);t=(o[n>>2]|0)+8|0;o[n>>2]=t}else{Ag(a,i,u);t=o[n>>2]|0}h=l;return(t-(o[a>>2]|0)>>3)+-1|0}function xg(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;o[e+4>>2]=n;return}function Ag(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0;l=h;h=h+32|0;i=l;u=e+4|0;a=((o[u>>2]|0)-(o[e>>2]|0)>>3)+1|0;r=Pg(e)|0;if(r>>>0>>0)jS(e);else{s=o[e>>2]|0;f=(o[e+8>>2]|0)-s|0;c=f>>2;Og(i,f>>3>>>0>>1>>>0?c>>>0>>0?a:c:r,(o[u>>2]|0)-s>>3,e+8|0);a=i+8|0;xg(o[a>>2]|0,o[t>>2]|0,o[n>>2]|0);o[a>>2]=(o[a>>2]|0)+8;Rg(e,i);Ng(i);h=l;return}}function Pg(e){e=e|0;return 536870911}function Og(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>536870911)Ke();else{i=YS(t<<3)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n<<3)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t<<3);return}function Rg(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(0-(i>>3)<<3)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function Ng(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~((r+-8-t|0)>>>3)<<3);e=o[e>>2]|0;if(e|0)$S(e);return}function Ig(e){e=e|0;Lg(e);return}function Fg(e){e=e|0;Bg(e+24|0);return}function Bg(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);$S(n)}return}function Lg(e){e=e|0;var t=0;t=Za()|0;nl(e,1,16,t,Ug()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function Ug(){return 1400}function jg(e){e=e|0;return zg(o[(Wg(e)|0)>>2]|0)|0}function Wg(e){e=e|0;return(o[(kg()|0)+24>>2]|0)+(e<<3)|0}function zg(e){e=e|0;return qg(Sx[e&7]()|0)|0}function qg(e){e=e|0;return e|0}function Hg(){var e=0;if(!(r[7880]|0)){Jg(10280);Fe(25,10280,b|0)|0;e=7880;o[e>>2]=1;o[e+4>>2]=0}return 10280}function Gg(e,t){e=e|0;t=t|0;o[e>>2]=Vg()|0;o[e+4>>2]=Yg()|0;o[e+12>>2]=t;o[e+8>>2]=Kg()|0;o[e+32>>2]=4;return}function Vg(){return 11711}function Yg(){return 1356}function Kg(){return zv()|0}function $g(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;if((jv(r,896)|0)==512){if(n|0){Xg(n);$S(n)}}else if(t|0){qi(t);$S(t)}return}function Xg(e){e=e|0;e=o[e+4>>2]|0;if(e|0)GS(e);return}function Jg(e){e=e|0;xl(e);return}function Qg(e){e=e|0;Zg(e,4920);e_(e)|0;t_(e)|0;return}function Zg(e,t){e=e|0;t=t|0;var n=0;n=Gd()|0;o[e>>2]=n;S_(n,t);cD(o[e>>2]|0);return}function e_(e){e=e|0;var t=0;t=o[e>>2]|0;r_(t,m_()|0);return e|0}function t_(e){e=e|0;var t=0;t=o[e>>2]|0;r_(t,n_()|0);return e|0}function n_(){var e=0;if(!(r[7888]|0)){i_(10328);Fe(53,10328,b|0)|0;e=7888;o[e>>2]=1;o[e+4>>2]=0}if(!(Xa(10328)|0))i_(10328);return 10328}function r_(e,t){e=e|0;t=t|0;Ba(e,0,t,0,0,0);return}function i_(e){e=e|0;a_(e);s_(e,10);return}function o_(e){e=e|0;u_(e+24|0);return}function u_(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);$S(n)}return}function a_(e){e=e|0;var t=0;t=Za()|0;nl(e,5,1,t,d_()|0,2);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function l_(e,t,n){e=e|0;t=t|0;n=+n;c_(e,t,n);return}function s_(e,t){e=e|0;t=t|0;o[e+20>>2]=t;return}function c_(e,t,n){e=e|0;t=t|0;n=+n;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+16|0;u=r+8|0;l=r+13|0;i=r;a=r+12|0;Jl(l,t);o[u>>2]=Ql(l,t)|0;$l(a,n);c[i>>3]=+Xl(a,n);f_(e,u,i);h=r;return}function f_(e,t,n){e=e|0;t=t|0;n=n|0;Ho(e+8|0,o[t>>2]|0,+c[n>>3]);r[e+24>>0]=1;return}function d_(){return 1404}function p_(e,t){e=e|0;t=+t;return h_(e,t)|0}function h_(e,t){e=e|0;t=+t;var n=0,r=0,i=0,u=0,a=0,l=0,s=0;r=h;h=h+16|0;u=r+4|0;a=r+8|0;l=r;i=jE(8)|0;n=i;s=YS(16)|0;Jl(u,e);e=Ql(u,e)|0;$l(a,t);Ho(s,e,+Xl(a,t));a=n+4|0;o[a>>2]=s;e=YS(8)|0;a=o[a>>2]|0;o[l>>2]=0;o[u>>2]=o[l>>2];Kd(e,a,u);o[i>>2]=e;h=r;return n|0}function m_(){var e=0;if(!(r[7896]|0)){v_(10364);Fe(54,10364,b|0)|0;e=7896;o[e>>2]=1;o[e+4>>2]=0}if(!(Xa(10364)|0))v_(10364);return 10364}function v_(e){e=e|0;__(e);s_(e,55);return}function b_(e){e=e|0;g_(e+24|0);return}function g_(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);$S(n)}return}function __(e){e=e|0;var t=0;t=Za()|0;nl(e,5,4,t,C_()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function y_(e){e=e|0;D_(e);return}function D_(e){e=e|0;w_(e);return}function w_(e){e=e|0;E_(e+8|0);r[e+24>>0]=1;return}function E_(e){e=e|0;o[e>>2]=0;c[e+8>>3]=0.0;return}function C_(){return 1424}function T_(){return k_()|0}function k_(){var e=0,t=0,n=0,r=0,i=0,u=0,a=0;t=h;h=h+16|0;i=t+4|0;a=t;n=jE(8)|0;e=n;r=YS(16)|0;E_(r);u=e+4|0;o[u>>2]=r;r=YS(8)|0;u=o[u>>2]|0;o[a>>2]=0;o[i>>2]=o[a>>2];Kd(r,u,i);o[n>>2]=r;h=t;return e|0}function S_(e,t){e=e|0;t=t|0;o[e>>2]=M_()|0;o[e+4>>2]=x_()|0;o[e+12>>2]=t;o[e+8>>2]=A_()|0;o[e+32>>2]=5;return}function M_(){return 11710}function x_(){return 1416}function A_(){return R_()|0}function P_(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;if((jv(r,896)|0)==512){if(n|0){O_(n);$S(n)}}else if(t|0)$S(t);return}function O_(e){e=e|0;e=o[e+4>>2]|0;if(e|0)GS(e);return}function R_(){var e=0;if(!(r[7904]|0)){o[2600]=N_()|0;o[2601]=0;e=7904;o[e>>2]=1;o[e+4>>2]=0}return 10400}function N_(){return o[357]|0}function I_(e){e=e|0;F_(e,4926);B_(e)|0;return}function F_(e,t){e=e|0;t=t|0;var n=0;n=ul()|0;o[e>>2]=n;$_(n,t);cD(o[e>>2]|0);return}function B_(e){e=e|0;var t=0;t=o[e>>2]|0;r_(t,L_()|0);return e|0}function L_(){var e=0;if(!(r[7912]|0)){U_(10412);Fe(56,10412,b|0)|0;e=7912;o[e>>2]=1;o[e+4>>2]=0}if(!(Xa(10412)|0))U_(10412);return 10412}function U_(e){e=e|0;z_(e);s_(e,57);return}function j_(e){e=e|0;W_(e+24|0);return}function W_(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);$S(n)}return}function z_(e){e=e|0;var t=0;t=Za()|0;nl(e,5,5,t,V_()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function q_(e){e=e|0;H_(e);return}function H_(e){e=e|0;G_(e);return}function G_(e){e=e|0;var t=0,n=0;t=e+8|0;n=t+48|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));r[e+56>>0]=1;return}function V_(){return 1432}function Y_(){return K_()|0}function K_(){var e=0,t=0,n=0,r=0,i=0,u=0,a=0,l=0;a=h;h=h+16|0;e=a+4|0;t=a;n=jE(8)|0;r=n;i=YS(48)|0;u=i;l=u+48|0;do{o[u>>2]=0;u=u+4|0}while((u|0)<(l|0));u=r+4|0;o[u>>2]=i;l=YS(8)|0;u=o[u>>2]|0;o[t>>2]=0;o[e>>2]=o[t>>2];pl(l,u,e);o[n>>2]=l;h=a;return r|0}function $_(e,t){e=e|0;t=t|0;o[e>>2]=X_()|0;o[e+4>>2]=J_()|0;o[e+12>>2]=t;o[e+8>>2]=Q_()|0;o[e+32>>2]=6;return}function X_(){return 11704}function J_(){return 1436}function Q_(){return R_()|0}function Z_(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;if((jv(r,896)|0)==512){if(n|0){ey(n);$S(n)}}else if(t|0)$S(t);return}function ey(e){e=e|0;e=o[e+4>>2]|0;if(e|0)GS(e);return}function ty(e){e=e|0;ny(e,4933);ry(e)|0;iy(e)|0;return}function ny(e,t){e=e|0;t=t|0;var n=0;n=Ry()|0;o[e>>2]=n;Ny(n,t);cD(o[e>>2]|0);return}function ry(e){e=e|0;var t=0;t=o[e>>2]|0;r_(t,Dy()|0);return e|0}function iy(e){e=e|0;var t=0;t=o[e>>2]|0;r_(t,oy()|0);return e|0}function oy(){var e=0;if(!(r[7920]|0)){uy(10452);Fe(58,10452,b|0)|0;e=7920;o[e>>2]=1;o[e+4>>2]=0}if(!(Xa(10452)|0))uy(10452);return 10452}function uy(e){e=e|0;sy(e);s_(e,1);return}function ay(e){e=e|0;ly(e+24|0);return}function ly(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);$S(n)}return}function sy(e){e=e|0;var t=0;t=Za()|0;nl(e,5,1,t,hy()|0,2);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function cy(e,t,n){e=e|0;t=+t;n=+n;fy(e,t,n);return}function fy(e,t,n){e=e|0;t=+t;n=+n;var r=0,i=0,o=0,u=0,a=0;r=h;h=h+32|0;o=r+8|0;a=r+17|0;i=r;u=r+16|0;$l(a,t);c[o>>3]=+Xl(a,t);$l(u,n);c[i>>3]=+Xl(u,n);dy(e,o,i);h=r;return}function dy(e,t,n){e=e|0;t=t|0;n=n|0;py(e+8|0,+c[t>>3],+c[n>>3]);r[e+24>>0]=1;return}function py(e,t,n){e=e|0;t=+t;n=+n;c[e>>3]=t;c[e+8>>3]=n;return}function hy(){return 1472}function my(e,t){e=+e;t=+t;return vy(e,t)|0}function vy(e,t){e=+e;t=+t;var n=0,r=0,i=0,u=0,a=0,l=0,s=0;r=h;h=h+16|0;a=r+4|0;l=r+8|0;s=r;i=jE(8)|0;n=i;u=YS(16)|0;$l(a,e);e=+Xl(a,e);$l(l,t);py(u,e,+Xl(l,t));l=n+4|0;o[l>>2]=u;u=YS(8)|0;l=o[l>>2]|0;o[s>>2]=0;o[a>>2]=o[s>>2];by(u,l,a);o[i>>2]=u;h=r;return n|0}function by(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;n=YS(16)|0;o[n+4>>2]=0;o[n+8>>2]=0;o[n>>2]=1452;o[n+12>>2]=t;o[e+4>>2]=n;return}function gy(e){e=e|0;WS(e);$S(e);return}function _y(e){e=e|0;e=o[e+12>>2]|0;if(e|0)$S(e);return}function yy(e){e=e|0;$S(e);return}function Dy(){var e=0;if(!(r[7928]|0)){wy(10488);Fe(59,10488,b|0)|0;e=7928;o[e>>2]=1;o[e+4>>2]=0}if(!(Xa(10488)|0))wy(10488);return 10488}function wy(e){e=e|0;Ty(e);s_(e,60);return}function Ey(e){e=e|0;Cy(e+24|0);return}function Cy(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);$S(n)}return}function Ty(e){e=e|0;var t=0;t=Za()|0;nl(e,5,6,t,Ay()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function ky(e){e=e|0;Sy(e);return}function Sy(e){e=e|0;My(e);return}function My(e){e=e|0;xy(e+8|0);r[e+24>>0]=1;return}function xy(e){e=e|0;o[e>>2]=0;o[e+4>>2]=0;o[e+8>>2]=0;o[e+12>>2]=0;return}function Ay(){return 1492}function Py(){return Oy()|0}function Oy(){var e=0,t=0,n=0,r=0,i=0,u=0,a=0;t=h;h=h+16|0;i=t+4|0;a=t;n=jE(8)|0;e=n;r=YS(16)|0;xy(r);u=e+4|0;o[u>>2]=r;r=YS(8)|0;u=o[u>>2]|0;o[a>>2]=0;o[i>>2]=o[a>>2];by(r,u,i);o[n>>2]=r;h=t;return e|0}function Ry(){var e=0;if(!(r[7936]|0)){jy(10524);Fe(25,10524,b|0)|0;e=7936;o[e>>2]=1;o[e+4>>2]=0}return 10524}function Ny(e,t){e=e|0;t=t|0;o[e>>2]=Iy()|0;o[e+4>>2]=Fy()|0;o[e+12>>2]=t;o[e+8>>2]=By()|0;o[e+32>>2]=7;return}function Iy(){return 11700}function Fy(){return 1484}function By(){return R_()|0}function Ly(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;if((jv(r,896)|0)==512){if(n|0){Uy(n);$S(n)}}else if(t|0)$S(t);return}function Uy(e){e=e|0;e=o[e+4>>2]|0;if(e|0)GS(e);return}function jy(e){e=e|0;xl(e);return}function Wy(e,t,n){e=e|0;t=t|0;n=n|0;e=Oa(t)|0;t=zy(n)|0;n=qy(n,0)|0;MD(e,t,n,Hy()|0,0);return}function zy(e){e=e|0;return e|0}function qy(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0;l=h;h=h+16|0;i=l;u=l+4|0;o[i>>2]=e;s=Hy()|0;a=s+24|0;t=Wa(t,4)|0;o[u>>2]=t;n=s+28|0;r=o[n>>2]|0;if(r>>>0<(o[s+32>>2]|0)>>>0){Qy(r,e,t);t=(o[n>>2]|0)+8|0;o[n>>2]=t}else{Zy(a,i,u);t=o[n>>2]|0}h=l;return(t-(o[a>>2]|0)>>3)+-1|0}function Hy(){var e=0,t=0;if(!(r[7944]|0)){Gy(10568);Fe(61,10568,b|0)|0;t=7944;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(10568)|0)){e=10568;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));Gy(10568)}return 10568}function Gy(e){e=e|0;Ky(e);return}function Vy(e){e=e|0;Yy(e+24|0);return}function Yy(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);$S(n)}return}function Ky(e){e=e|0;var t=0;t=Za()|0;nl(e,1,17,t,Kc()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function $y(e){e=e|0;return Jy(o[(Xy(e)|0)>>2]|0)|0}function Xy(e){e=e|0;return(o[(Hy()|0)+24>>2]|0)+(e<<3)|0}function Jy(e){e=e|0;return Qc(Sx[e&7]()|0)|0}function Qy(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;o[e+4>>2]=n;return}function Zy(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0;l=h;h=h+32|0;i=l;u=e+4|0;a=((o[u>>2]|0)-(o[e>>2]|0)>>3)+1|0;r=eD(e)|0;if(r>>>0>>0)jS(e);else{s=o[e>>2]|0;f=(o[e+8>>2]|0)-s|0;c=f>>2;tD(i,f>>3>>>0>>1>>>0?c>>>0>>0?a:c:r,(o[u>>2]|0)-s>>3,e+8|0);a=i+8|0;Qy(o[a>>2]|0,o[t>>2]|0,o[n>>2]|0);o[a>>2]=(o[a>>2]|0)+8;nD(e,i);rD(i);h=l;return}}function eD(e){e=e|0;return 536870911}function tD(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>536870911)Ke();else{i=YS(t<<3)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n<<3)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t<<3);return}function nD(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(0-(i>>3)<<3)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function rD(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~((r+-8-t|0)>>>3)<<3);e=o[e>>2]|0;if(e|0)$S(e);return}function iD(){oD();return}function oD(){uD(10604);return}function uD(e){e=e|0;aD(e,4955);return}function aD(e,t){e=e|0;t=t|0;var n=0;n=lD()|0;o[e>>2]=n;sD(n,t);cD(o[e>>2]|0);return}function lD(){var e=0;if(!(r[7952]|0)){yD(10612);Fe(25,10612,b|0)|0;e=7952;o[e>>2]=1;o[e+4>>2]=0}return 10612}function sD(e,t){e=e|0;t=t|0;o[e>>2]=mD()|0;o[e+4>>2]=vD()|0;o[e+12>>2]=t;o[e+8>>2]=bD()|0;o[e+32>>2]=8;return}function cD(e){e=e|0;var t=0,n=0;t=h;h=h+16|0;n=t;fD()|0;o[n>>2]=e;dD(10608,n);h=t;return}function fD(){if(!(r[11714]|0)){o[2652]=0;Fe(62,10608,b|0)|0;r[11714]=1}return 10608}function dD(e,t){e=e|0;t=t|0;var n=0;n=YS(8)|0;o[n+4>>2]=o[t>>2];o[n>>2]=o[e>>2];o[e>>2]=n;return}function pD(e){e=e|0;hD(e);return}function hD(e){e=e|0;var t=0,n=0;t=o[e>>2]|0;if(t|0)do{n=t;t=o[t>>2]|0;$S(n)}while((t|0)!=0);o[e>>2]=0;return}function mD(){return 11715}function vD(){return 1496}function bD(){return zv()|0}function gD(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;if((jv(r,896)|0)==512){if(n|0){_D(n);$S(n)}}else if(t|0)$S(t);return}function _D(e){e=e|0;e=o[e+4>>2]|0;if(e|0)GS(e);return}function yD(e){e=e|0;xl(e);return}function DD(e,t){e=e|0;t=t|0;var n=0,r=0;fD()|0;n=o[2652]|0;e:do{if(n|0){while(1){r=o[n+4>>2]|0;if(r|0?(rS(wD(r)|0,e)|0)==0:0)break;n=o[n>>2]|0;if(!n)break e}ED(r,t)}}while(0);return}function wD(e){e=e|0;return o[e+12>>2]|0}function ED(e,t){e=e|0;t=t|0;var n=0;e=e+36|0;n=o[e>>2]|0;if(n|0){Qi(n);$S(n)}n=YS(4)|0;gu(n,t);o[e>>2]=n;return}function CD(){if(!(r[11716]|0)){o[2664]=0;Fe(63,10656,b|0)|0;r[11716]=1}return 10656}function TD(){var e=0;if(!(r[11717]|0)){kD();o[2665]=1504;r[11717]=1;e=1504}else e=o[2665]|0;return e|0}function kD(){if(!(r[11740]|0)){r[11718]=Wa(Wa(8,0)|0,0)|0;r[11719]=Wa(Wa(0,0)|0,0)|0;r[11720]=Wa(Wa(0,16)|0,0)|0;r[11721]=Wa(Wa(8,0)|0,0)|0;r[11722]=Wa(Wa(0,0)|0,0)|0;r[11723]=Wa(Wa(8,0)|0,0)|0;r[11724]=Wa(Wa(0,0)|0,0)|0;r[11725]=Wa(Wa(8,0)|0,0)|0;r[11726]=Wa(Wa(0,0)|0,0)|0;r[11727]=Wa(Wa(8,0)|0,0)|0;r[11728]=Wa(Wa(0,0)|0,0)|0;r[11729]=Wa(Wa(0,0)|0,32)|0;r[11730]=Wa(Wa(0,0)|0,32)|0;r[11740]=1}return}function SD(){return 1572}function MD(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var u=0,a=0,l=0,s=0,c=0,f=0;u=h;h=h+32|0;f=u+16|0;c=u+12|0;s=u+8|0;l=u+4|0;a=u;o[f>>2]=e;o[c>>2]=t;o[s>>2]=n;o[l>>2]=r;o[a>>2]=i;CD()|0;xD(10656,f,c,s,l,a);h=u;return}function xD(e,t,n,r,i,u){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;u=u|0;var a=0;a=YS(24)|0;ja(a+4|0,o[t>>2]|0,o[n>>2]|0,o[r>>2]|0,o[i>>2]|0,o[u>>2]|0);o[a>>2]=o[e>>2];o[e>>2]=a;return}function AD(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0,m=0,v=0,b=0,g=0,_=0,y=0;y=h;h=h+32|0;v=y+20|0;b=y+8|0;g=y+4|0;_=y;t=o[t>>2]|0;if(t|0){m=v+4|0;s=v+8|0;c=b+4|0;f=b+8|0;d=b+8|0;p=v+8|0;do{a=t+4|0;l=PD(a)|0;if(l|0){i=OD(l)|0;o[v>>2]=0;o[m>>2]=0;o[s>>2]=0;r=(RD(l)|0)+1|0;ND(v,r);if(r|0)while(1){r=r+-1|0;bk(b,o[i>>2]|0);u=o[m>>2]|0;if(u>>>0<(o[p>>2]|0)>>>0){o[u>>2]=o[b>>2];o[m>>2]=(o[m>>2]|0)+4}else ID(v,b);if(!r)break;else i=i+4|0}r=FD(l)|0;o[b>>2]=0;o[c>>2]=0;o[f>>2]=0;e:do{if(o[r>>2]|0){i=0;u=0;while(1){if((i|0)==(u|0))BD(b,r);else{o[i>>2]=o[r>>2];o[c>>2]=(o[c>>2]|0)+4}r=r+4|0;if(!(o[r>>2]|0))break e;i=o[c>>2]|0;u=o[d>>2]|0}}}while(0);o[g>>2]=LD(a)|0;o[_>>2]=Xa(l)|0;UD(n,e,g,_,v,b);jD(b);WD(v)}t=o[t>>2]|0}while((t|0)!=0)}h=y;return}function PD(e){e=e|0;return o[e+12>>2]|0}function OD(e){e=e|0;return o[e+12>>2]|0}function RD(e){e=e|0;return o[e+16>>2]|0}function ND(e,t){e=e|0;t=t|0;var n=0,r=0,i=0;i=h;h=h+32|0;n=i;r=o[e>>2]|0;if((o[e+8>>2]|0)-r>>2>>>0>>0){yw(n,t,(o[e+4>>2]|0)-r>>2,e+8|0);Dw(e,n);ww(n)}h=i;return}function ID(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0;a=h;h=h+32|0;n=a;r=e+4|0;i=((o[r>>2]|0)-(o[e>>2]|0)>>2)+1|0;u=vw(e)|0;if(u>>>0>>0)jS(e);else{l=o[e>>2]|0;c=(o[e+8>>2]|0)-l|0;s=c>>1;yw(n,c>>2>>>0>>1>>>0?s>>>0>>0?i:s:u,(o[r>>2]|0)-l>>2,e+8|0);u=n+8|0;o[o[u>>2]>>2]=o[t>>2];o[u>>2]=(o[u>>2]|0)+4;Dw(e,n);ww(n);h=a;return}}function FD(e){e=e|0;return o[e+8>>2]|0}function BD(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0;a=h;h=h+32|0;n=a;r=e+4|0;i=((o[r>>2]|0)-(o[e>>2]|0)>>2)+1|0;u=pw(e)|0;if(u>>>0>>0)jS(e);else{l=o[e>>2]|0;c=(o[e+8>>2]|0)-l|0;s=c>>1;bw(n,c>>2>>>0>>1>>>0?s>>>0>>0?i:s:u,(o[r>>2]|0)-l>>2,e+8|0);u=n+8|0;o[o[u>>2]>>2]=o[t>>2];o[u>>2]=(o[u>>2]|0)+4;gw(e,n);_w(n);h=a;return}}function LD(e){e=e|0;return o[e>>2]|0}function UD(e,t,n,r,i,o){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;o=o|0;zD(e,t,n,r,i,o);return}function jD(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-4-r|0)>>>2)<<2);$S(n)}return}function WD(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-4-r|0)>>>2)<<2);$S(n)}return}function zD(e,t,n,r,i,u){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;u=u|0;var a=0,l=0,s=0,c=0,f=0,d=0;a=h;h=h+48|0;f=a+40|0;l=a+32|0;d=a+24|0;s=a+12|0;c=a;Ek(l);e=wu(e)|0;o[d>>2]=o[t>>2];n=o[n>>2]|0;r=o[r>>2]|0;qD(s,i);HD(c,u);o[f>>2]=o[d>>2];GD(e,f,n,r,s,c);jD(c);WD(s);Tk(l);h=a;return}function qD(e,t){e=e|0;t=t|0;var n=0,r=0;o[e>>2]=0;o[e+4>>2]=0;o[e+8>>2]=0;n=t+4|0;r=(o[n>>2]|0)-(o[t>>2]|0)>>2;if(r|0){hw(e,r);mw(e,o[t>>2]|0,o[n>>2]|0,r)}return}function HD(e,t){e=e|0;t=t|0;var n=0,r=0;o[e>>2]=0;o[e+4>>2]=0;o[e+8>>2]=0;n=t+4|0;r=(o[n>>2]|0)-(o[t>>2]|0)>>2;if(r|0){fw(e,r);dw(e,o[t>>2]|0,o[n>>2]|0,r)}return}function GD(e,t,n,r,i,u){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;u=u|0;var a=0,l=0,s=0,c=0,f=0,d=0;a=h;h=h+32|0;f=a+28|0;d=a+24|0;l=a+12|0;s=a;c=Tu(VD()|0)|0;o[d>>2]=o[t>>2];o[f>>2]=o[d>>2];t=YD(f)|0;n=KD(n)|0;r=$D(r)|0;o[l>>2]=o[i>>2];f=i+4|0;o[l+4>>2]=o[f>>2];d=i+8|0;o[l+8>>2]=o[d>>2];o[d>>2]=0;o[f>>2]=0;o[i>>2]=0;i=XD(l)|0;o[s>>2]=o[u>>2];f=u+4|0;o[s+4>>2]=o[f>>2];d=u+8|0;o[s+8>>2]=o[d>>2];o[d>>2]=0;o[f>>2]=0;o[u>>2]=0;Ae(0,c|0,e|0,t|0,n|0,r|0,i|0,JD(s)|0)|0;jD(s);WD(l);h=a;return}function VD(){var e=0;if(!(r[7968]|0)){sw(10708);e=7968;o[e>>2]=1;o[e+4>>2]=0}return 10708}function YD(e){e=e|0;return tw(e)|0}function KD(e){e=e|0;return ZD(e)|0}function $D(e){e=e|0;return Qc(e)|0}function XD(e){e=e|0;return ew(e)|0}function JD(e){e=e|0;return QD(e)|0}function QD(e){e=e|0;var t=0,n=0,r=0;r=(o[e+4>>2]|0)-(o[e>>2]|0)|0;n=r>>2;r=jE(r+4|0)|0;o[r>>2]=n;if(n|0){t=0;do{o[r+4+(t<<2)>>2]=ZD(o[(o[e>>2]|0)+(t<<2)>>2]|0)|0;t=t+1|0}while((t|0)!=(n|0))}return r|0}function ZD(e){e=e|0;return e|0}function ew(e){e=e|0;var t=0,n=0,r=0;r=(o[e+4>>2]|0)-(o[e>>2]|0)|0;n=r>>2;r=jE(r+4|0)|0;o[r>>2]=n;if(n|0){t=0;do{o[r+4+(t<<2)>>2]=tw((o[e>>2]|0)+(t<<2)|0)|0;t=t+1|0}while((t|0)!=(n|0))}return r|0}function tw(e){e=e|0;var t=0,n=0,r=0,i=0;i=h;h=h+32|0;t=i+12|0;n=i;r=al(nw()|0)|0;if(!r)e=rw(e)|0;else{ll(t,r);sl(n,t);yk(e,n);e=fl(t)|0}h=i;return e|0}function nw(){var e=0;if(!(r[7960]|0)){lw(10664);Fe(25,10664,b|0)|0;e=7960;o[e>>2]=1;o[e+4>>2]=0}return 10664}function rw(e){e=e|0;var t=0,n=0,r=0,i=0,u=0,a=0,l=0;n=h;h=h+16|0;i=n+4|0;a=n;r=jE(8)|0;t=r;l=YS(4)|0;o[l>>2]=o[e>>2];u=t+4|0;o[u>>2]=l;e=YS(8)|0;u=o[u>>2]|0;o[a>>2]=0;o[i>>2]=o[a>>2];iw(e,u,i);o[r>>2]=e;h=n;return t|0}function iw(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;n=YS(16)|0;o[n+4>>2]=0;o[n+8>>2]=0;o[n>>2]=1656;o[n+12>>2]=t;o[e+4>>2]=n;return}function ow(e){e=e|0;WS(e);$S(e);return}function uw(e){e=e|0;e=o[e+12>>2]|0;if(e|0)$S(e);return}function aw(e){e=e|0;$S(e);return}function lw(e){e=e|0;xl(e);return}function sw(e){e=e|0;Bu(e,cw()|0,5);return}function cw(){return 1676}function fw(e,t){e=e|0;t=t|0;var n=0;if((pw(e)|0)>>>0>>0)jS(e);if(t>>>0>1073741823)Ke();else{n=YS(t<<2)|0;o[e+4>>2]=n;o[e>>2]=n;o[e+8>>2]=n+(t<<2);return}}function dw(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;r=e+4|0;e=n-t|0;if((e|0)>0){iM(o[r>>2]|0,t|0,e|0)|0;o[r>>2]=(o[r>>2]|0)+(e>>>2<<2)}return}function pw(e){e=e|0;return 1073741823}function hw(e,t){e=e|0;t=t|0;var n=0;if((vw(e)|0)>>>0>>0)jS(e);if(t>>>0>1073741823)Ke();else{n=YS(t<<2)|0;o[e+4>>2]=n;o[e>>2]=n;o[e+8>>2]=n+(t<<2);return}}function mw(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;r=e+4|0;e=n-t|0;if((e|0)>0){iM(o[r>>2]|0,t|0,e|0)|0;o[r>>2]=(o[r>>2]|0)+(e>>>2<<2)}return}function vw(e){e=e|0;return 1073741823}function bw(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>1073741823)Ke();else{i=YS(t<<2)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n<<2)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t<<2);return}function gw(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(0-(i>>2)<<2)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function _w(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~((r+-4-t|0)>>>2)<<2);e=o[e>>2]|0;if(e|0)$S(e);return}function yw(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>1073741823)Ke();else{i=YS(t<<2)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n<<2)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t<<2);return}function Dw(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(0-(i>>2)<<2)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function ww(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~((r+-4-t|0)>>>2)<<2);e=o[e>>2]|0;if(e|0)$S(e);return}function Ew(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0,m=0,v=0,b=0;b=h;h=h+32|0;f=b+20|0;d=b+12|0;c=b+16|0;p=b+4|0;m=b;v=b+8|0;l=TD()|0;u=o[l>>2]|0;a=o[u>>2]|0;if(a|0){s=o[l+8>>2]|0;l=o[l+4>>2]|0;while(1){bk(f,a);Cw(e,f,l,s);u=u+4|0;a=o[u>>2]|0;if(!a)break;else{s=s+1|0;l=l+1|0}}}u=SD()|0;a=o[u>>2]|0;if(a|0)do{bk(f,a);o[d>>2]=o[u+4>>2];Tw(t,f,d);u=u+8|0;a=o[u>>2]|0}while((a|0)!=0);u=o[(fD()|0)>>2]|0;if(u|0)do{t=o[u+4>>2]|0;bk(f,o[(kw(t)|0)>>2]|0);o[d>>2]=wD(t)|0;Sw(n,f,d);u=o[u>>2]|0}while((u|0)!=0);bk(c,0);u=CD()|0;o[f>>2]=o[c>>2];AD(f,u,i);u=o[(fD()|0)>>2]|0;if(u|0){e=f+4|0;t=f+8|0;n=f+8|0;do{s=o[u+4>>2]|0;bk(d,o[(kw(s)|0)>>2]|0);xw(p,Mw(s)|0);a=o[p>>2]|0;if(a|0){o[f>>2]=0;o[e>>2]=0;o[t>>2]=0;do{bk(m,o[(kw(o[a+4>>2]|0)|0)>>2]|0);l=o[e>>2]|0;if(l>>>0<(o[n>>2]|0)>>>0){o[l>>2]=o[m>>2];o[e>>2]=(o[e>>2]|0)+4}else ID(f,m);a=o[a>>2]|0}while((a|0)!=0);Aw(r,d,f);WD(f)}o[v>>2]=o[d>>2];c=Pw(s)|0;o[f>>2]=o[v>>2];AD(f,c,i);kl(p);u=o[u>>2]|0}while((u|0)!=0)}h=b;return}function Cw(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;Gw(e,t,n,r);return}function Tw(e,t,n){e=e|0;t=t|0;n=n|0;Hw(e,t,n);return}function kw(e){e=e|0;return e|0}function Sw(e,t,n){e=e|0;t=t|0;n=n|0;Uw(e,t,n);return}function Mw(e){e=e|0;return e+16|0}function xw(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0;u=h;h=h+16|0;i=u+8|0;n=u;o[e>>2]=0;r=o[t>>2]|0;o[i>>2]=r;o[n>>2]=e;n=Bw(n)|0;if(r|0){r=YS(12)|0;a=(Lw(i)|0)+4|0;e=o[a+4>>2]|0;t=r+4|0;o[t>>2]=o[a>>2];o[t+4>>2]=e;t=o[o[i>>2]>>2]|0;o[i>>2]=t;if(!t)e=r;else{t=r;while(1){e=YS(12)|0;s=(Lw(i)|0)+4|0;l=o[s+4>>2]|0;a=e+4|0;o[a>>2]=o[s>>2];o[a+4>>2]=l;o[t>>2]=e;a=o[o[i>>2]>>2]|0;o[i>>2]=a;if(!a)break;else t=e}}o[e>>2]=o[n>>2];o[n>>2]=r}h=u;return}function Aw(e,t,n){e=e|0;t=t|0;n=n|0;Ow(e,t,n);return}function Pw(e){e=e|0;return e+24|0}function Ow(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+32|0;a=r+24|0;i=r+16|0;l=r+12|0;u=r;Ek(i);e=wu(e)|0;o[l>>2]=o[t>>2];qD(u,n);o[a>>2]=o[l>>2];Rw(e,a,u);WD(u);Tk(i);h=r;return}function Rw(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0;r=h;h=h+32|0;a=r+16|0;l=r+12|0;i=r;u=Tu(Nw()|0)|0;o[l>>2]=o[t>>2];o[a>>2]=o[l>>2];t=YD(a)|0;o[i>>2]=o[n>>2];a=n+4|0;o[i+4>>2]=o[a>>2];l=n+8|0;o[i+8>>2]=o[l>>2];o[l>>2]=0;o[a>>2]=0;o[n>>2]=0;ke(0,u|0,e|0,t|0,XD(i)|0)|0;WD(i);h=r;return}function Nw(){var e=0;if(!(r[7976]|0)){Iw(10720);e=7976;o[e>>2]=1;o[e+4>>2]=0}return 10720}function Iw(e){e=e|0;Bu(e,Fw()|0,2);return}function Fw(){return 1732}function Bw(e){e=e|0;return o[e>>2]|0}function Lw(e){e=e|0;return o[e>>2]|0}function Uw(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+32|0;u=r+16|0;i=r+8|0;a=r;Ek(i);e=wu(e)|0;o[a>>2]=o[t>>2];n=o[n>>2]|0;o[u>>2]=o[a>>2];jw(e,u,n);Tk(i);h=r;return}function jw(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+16|0;u=r+4|0;a=r;i=Tu(Ww()|0)|0;o[a>>2]=o[t>>2];o[u>>2]=o[a>>2];t=YD(u)|0;ke(0,i|0,e|0,t|0,KD(n)|0)|0;h=r;return}function Ww(){var e=0;if(!(r[7984]|0)){zw(10732);e=7984;o[e>>2]=1;o[e+4>>2]=0}return 10732}function zw(e){e=e|0;Bu(e,qw()|0,2);return}function qw(){return 1744}function Hw(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0;r=h;h=h+32|0;u=r+16|0;i=r+8|0;a=r;Ek(i);e=wu(e)|0;o[a>>2]=o[t>>2];n=o[n>>2]|0;o[u>>2]=o[a>>2];jw(e,u,n);Tk(i);h=r;return}function Gw(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var u=0,a=0,l=0,s=0;u=h;h=h+32|0;l=u+16|0;a=u+8|0;s=u;Ek(a);e=wu(e)|0;o[s>>2]=o[t>>2];n=r[n>>0]|0;i=r[i>>0]|0;o[l>>2]=o[s>>2];Vw(e,l,n,i);Tk(a);h=u;return}function Vw(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0;i=h;h=h+16|0;a=i+4|0;l=i;u=Tu(Yw()|0)|0;o[l>>2]=o[t>>2];o[a>>2]=o[l>>2];t=YD(a)|0;n=Kw(n)|0;nt(0,u|0,e|0,t|0,n|0,Kw(r)|0)|0;h=i;return}function Yw(){var e=0;if(!(r[7992]|0)){Xw(10744);e=7992;o[e>>2]=1;o[e+4>>2]=0}return 10744}function Kw(e){e=e|0;return $w(e)|0}function $w(e){e=e|0;return e&255|0}function Xw(e){e=e|0;Bu(e,Jw()|0,3);return}function Jw(){return 1756}function Qw(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0,m=0;m=h;h=h+32|0;s=m+8|0;c=m+4|0;f=m+20|0;d=m;Hs(e,0);i=_k(t)|0;o[s>>2]=0;p=s+4|0;o[p>>2]=0;o[s+8>>2]=0;switch(i<<24>>24){case 0:{r[f>>0]=0;Zw(c,n,f);eE(e,c)|0;Zi(c);break}case 8:{p=gk(t)|0;r[f>>0]=8;bk(d,o[p+4>>2]|0);tE(c,n,f,d,p+8|0);eE(e,c)|0;Zi(c);break}case 9:{a=gk(t)|0;t=o[a+4>>2]|0;if(t|0){l=s+8|0;u=a+12|0;while(1){t=t+-1|0;bk(c,o[u>>2]|0);i=o[p>>2]|0;if(i>>>0<(o[l>>2]|0)>>>0){o[i>>2]=o[c>>2];o[p>>2]=(o[p>>2]|0)+4}else ID(s,c);if(!t)break;else u=u+4|0}}r[f>>0]=9;bk(d,o[a+8>>2]|0);nE(c,n,f,d,s);eE(e,c)|0;Zi(c);break}default:{p=gk(t)|0;r[f>>0]=i;bk(d,o[p+4>>2]|0);rE(c,n,f,d);eE(e,c)|0;Zi(c)}}WD(s);h=m;return}function Zw(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0;i=h;h=h+16|0;o=i;Ek(o);t=wu(t)|0;bE(e,t,r[n>>0]|0);Tk(o);h=i;return}function eE(e,t){e=e|0;t=t|0;var n=0;n=o[e>>2]|0;if(n|0)rt(n|0);o[e>>2]=o[t>>2];o[t>>2]=0;return e|0}function tE(e,t,n,i,u){e=e|0;t=t|0;n=n|0;i=i|0;u=u|0;var a=0,l=0,s=0,c=0;a=h;h=h+32|0;s=a+16|0;l=a+8|0;c=a;Ek(l);t=wu(t)|0;n=r[n>>0]|0;o[c>>2]=o[i>>2];u=o[u>>2]|0;o[s>>2]=o[c>>2];pE(e,t,n,s,u);Tk(l);h=a;return}function nE(e,t,n,i,u){e=e|0;t=t|0;n=n|0;i=i|0;u=u|0;var a=0,l=0,s=0,c=0,f=0;a=h;h=h+32|0;c=a+24|0;l=a+16|0;f=a+12|0;s=a;Ek(l);t=wu(t)|0;n=r[n>>0]|0;o[f>>2]=o[i>>2];qD(s,u);o[c>>2]=o[f>>2];sE(e,t,n,c,s);WD(s);Tk(l);h=a;return}function rE(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var u=0,a=0,l=0,s=0;u=h;h=h+32|0;l=u+16|0;a=u+8|0;s=u;Ek(a);t=wu(t)|0;n=r[n>>0]|0;o[s>>2]=o[i>>2];o[l>>2]=o[s>>2];iE(e,t,n,l);Tk(a);h=u;return}function iE(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0,a=0,l=0;i=h;h=h+16|0;u=i+4|0;l=i;a=Tu(oE()|0)|0;n=Kw(n)|0;o[l>>2]=o[r>>2];o[u>>2]=o[l>>2];uE(e,ke(0,a|0,t|0,n|0,YD(u)|0)|0);h=i;return}function oE(){var e=0;if(!(r[8e3]|0)){aE(10756);e=8e3;o[e>>2]=1;o[e+4>>2]=0}return 10756}function uE(e,t){e=e|0;t=t|0;Hs(e,t);return}function aE(e){e=e|0;Bu(e,lE()|0,2);return}function lE(){return 1772}function sE(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var u=0,a=0,l=0,s=0,c=0;u=h;h=h+32|0;s=u+16|0;c=u+12|0;a=u;l=Tu(cE()|0)|0;n=Kw(n)|0;o[c>>2]=o[r>>2];o[s>>2]=o[c>>2];r=YD(s)|0;o[a>>2]=o[i>>2];s=i+4|0;o[a+4>>2]=o[s>>2];c=i+8|0;o[a+8>>2]=o[c>>2];o[c>>2]=0;o[s>>2]=0;o[i>>2]=0;uE(e,nt(0,l|0,t|0,n|0,r|0,XD(a)|0)|0);WD(a);h=u;return}function cE(){var e=0;if(!(r[8008]|0)){fE(10768);e=8008;o[e>>2]=1;o[e+4>>2]=0}return 10768}function fE(e){e=e|0;Bu(e,dE()|0,3);return}function dE(){return 1784}function pE(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var u=0,a=0,l=0,s=0;u=h;h=h+16|0;l=u+4|0;s=u;a=Tu(hE()|0)|0;n=Kw(n)|0;o[s>>2]=o[r>>2];o[l>>2]=o[s>>2];r=YD(l)|0;uE(e,nt(0,a|0,t|0,n|0,r|0,$D(i)|0)|0);h=u;return}function hE(){var e=0;if(!(r[8016]|0)){mE(10780);e=8016;o[e>>2]=1;o[e+4>>2]=0}return 10780}function mE(e){e=e|0;Bu(e,vE()|0,3);return}function vE(){return 1800}function bE(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=Tu(gE()|0)|0;uE(e,it(0,r|0,t|0,Kw(n)|0)|0);return}function gE(){var e=0;if(!(r[8024]|0)){_E(10792);e=8024;o[e>>2]=1;o[e+4>>2]=0}return 10792}function _E(e){e=e|0;Bu(e,yE()|0,1);return}function yE(){return 1816}function DE(){wE();EE();CE();return}function wE(){o[2702]=KS(65536)|0;return}function EE(){YE(10856);return}function CE(){TE(10816);return}function TE(e){e=e|0;kE(e,5044);SE(e)|0;return}function kE(e,t){e=e|0;t=t|0;var n=0;n=nw()|0;o[e>>2]=n;WE(n,t);cD(o[e>>2]|0);return}function SE(e){e=e|0;var t=0;t=o[e>>2]|0;r_(t,ME()|0);return e|0}function ME(){var e=0;if(!(r[8032]|0)){xE(10820);Fe(64,10820,b|0)|0;e=8032;o[e>>2]=1;o[e+4>>2]=0}if(!(Xa(10820)|0))xE(10820);return 10820}function xE(e){e=e|0;OE(e);s_(e,25);return}function AE(e){e=e|0;PE(e+24|0);return}function PE(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);$S(n)}return}function OE(e){e=e|0;var t=0;t=Za()|0;nl(e,5,18,t,BE()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function RE(e,t){e=e|0;t=t|0;NE(e,t);return}function NE(e,t){e=e|0;t=t|0;var n=0,r=0,i=0;n=h;h=h+16|0;r=n;i=n+4|0;cc(i,t);o[r>>2]=fc(i,t)|0;IE(e,r);h=n;return}function IE(e,t){e=e|0;t=t|0;FE(e+4|0,o[t>>2]|0);r[e+8>>0]=1;return}function FE(e,t){e=e|0;t=t|0;o[e>>2]=t;return}function BE(){return 1824}function LE(e){e=e|0;return UE(e)|0}function UE(e){e=e|0;var t=0,n=0,r=0,i=0,u=0,a=0,l=0;n=h;h=h+16|0;i=n+4|0;a=n;r=jE(8)|0;t=r;l=YS(4)|0;cc(i,e);FE(l,fc(i,e)|0);u=t+4|0;o[u>>2]=l;e=YS(8)|0;u=o[u>>2]|0;o[a>>2]=0;o[i>>2]=o[a>>2];iw(e,u,i);o[r>>2]=e;h=n;return t|0}function jE(e){e=e|0;var t=0,n=0;e=e+7&-8;if(e>>>0<=32768?(t=o[2701]|0,e>>>0<=(65536-t|0)>>>0):0){n=(o[2702]|0)+t|0;o[2701]=t+e;e=n}else{e=KS(e+8|0)|0;o[e>>2]=o[2703];o[2703]=e;e=e+8|0}return e|0}function WE(e,t){e=e|0;t=t|0;o[e>>2]=zE()|0;o[e+4>>2]=qE()|0;o[e+12>>2]=t;o[e+8>>2]=HE()|0;o[e+32>>2]=9;return}function zE(){return 11744}function qE(){return 1832}function HE(){return R_()|0}function GE(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;if((jv(r,896)|0)==512){if(n|0){VE(n);$S(n)}}else if(t|0)$S(t);return}function VE(e){e=e|0;e=o[e+4>>2]|0;if(e|0)GS(e);return}function YE(e){e=e|0;KE(e,5052);$E(e)|0;XE(e,5058,26)|0;JE(e,5069,1)|0;QE(e,5077,10)|0;ZE(e,5087,19)|0;tC(e,5094,27)|0;return}function KE(e,t){e=e|0;t=t|0;var n=0;n=sk()|0;o[e>>2]=n;ck(n,t);cD(o[e>>2]|0);return}function $E(e){e=e|0;var t=0;t=o[e>>2]|0;r_(t,KT()|0);return e|0}function XE(e,t,n){e=e|0;t=t|0;n=n|0;ST(e,Oa(t)|0,n,0);return e|0}function JE(e,t,n){e=e|0;t=t|0;n=n|0;sT(e,Oa(t)|0,n,0);return e|0}function QE(e,t,n){e=e|0;t=t|0;n=n|0;LC(e,Oa(t)|0,n,0);return e|0}function ZE(e,t,n){e=e|0;t=t|0;n=n|0;yC(e,Oa(t)|0,n,0);return e|0}function eC(e,t){e=e|0;t=t|0;var n=0,r=0;e:while(1){n=o[2703]|0;while(1){if((n|0)==(t|0))break e;r=o[n>>2]|0;o[2703]=r;if(!n)n=r;else break}$S(n)}o[2701]=e;return}function tC(e,t,n){e=e|0;t=t|0;n=n|0;nC(e,Oa(t)|0,n,0);return e|0}function nC(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0;u=o[e>>2]|0;i=rC()|0;e=iC(n)|0;Ba(u,t,i,e,oC(n,r)|0,r);return}function rC(){var e=0,t=0;if(!(r[8040]|0)){dC(10860);Fe(65,10860,b|0)|0;t=8040;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(10860)|0)){e=10860;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));dC(10860)}return 10860}function iC(e){e=e|0;return e|0}function oC(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0;l=h;h=h+16|0;i=l;u=l+4|0;o[i>>2]=e;s=rC()|0;a=s+24|0;t=Wa(t,4)|0;o[u>>2]=t;n=s+28|0;r=o[n>>2]|0;if(r>>>0<(o[s+32>>2]|0)>>>0){uC(r,e,t);t=(o[n>>2]|0)+8|0;o[n>>2]=t}else{aC(a,i,u);t=o[n>>2]|0}h=l;return(t-(o[a>>2]|0)>>3)+-1|0}function uC(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;o[e+4>>2]=n;return}function aC(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0;l=h;h=h+32|0;i=l;u=e+4|0;a=((o[u>>2]|0)-(o[e>>2]|0)>>3)+1|0;r=lC(e)|0;if(r>>>0>>0)jS(e);else{s=o[e>>2]|0;f=(o[e+8>>2]|0)-s|0;c=f>>2;sC(i,f>>3>>>0>>1>>>0?c>>>0>>0?a:c:r,(o[u>>2]|0)-s>>3,e+8|0);a=i+8|0;uC(o[a>>2]|0,o[t>>2]|0,o[n>>2]|0);o[a>>2]=(o[a>>2]|0)+8;cC(e,i);fC(i);h=l;return}}function lC(e){e=e|0;return 536870911}function sC(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>536870911)Ke();else{i=YS(t<<3)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n<<3)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t<<3);return}function cC(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(0-(i>>3)<<3)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function fC(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~((r+-8-t|0)>>>3)<<3);e=o[e>>2]|0;if(e|0)$S(e);return}function dC(e){e=e|0;mC(e);return}function pC(e){e=e|0;hC(e+24|0);return}function hC(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);$S(n)}return}function mC(e){e=e|0;var t=0;t=Za()|0;nl(e,1,11,t,vC()|0,2);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function vC(){return 1840}function bC(e,t,n){e=e|0;t=t|0;n=n|0;_C(o[(gC(e)|0)>>2]|0,t,n);return}function gC(e){e=e|0;return(o[(rC()|0)+24>>2]|0)+(e<<3)|0}function _C(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,o=0;r=h;h=h+16|0;o=r+1|0;i=r;cc(o,t);t=fc(o,t)|0;cc(i,n);n=fc(i,n)|0;mx[e&31](t,n);h=r;return}function yC(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0;u=o[e>>2]|0;i=DC()|0;e=wC(n)|0;Ba(u,t,i,e,EC(n,r)|0,r);return}function DC(){var e=0,t=0;if(!(r[8048]|0)){AC(10896);Fe(66,10896,b|0)|0;t=8048;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(10896)|0)){e=10896;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));AC(10896)}return 10896}function wC(e){e=e|0;return e|0}function EC(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0;l=h;h=h+16|0;i=l;u=l+4|0;o[i>>2]=e;s=DC()|0;a=s+24|0;t=Wa(t,4)|0;o[u>>2]=t;n=s+28|0;r=o[n>>2]|0;if(r>>>0<(o[s+32>>2]|0)>>>0){CC(r,e,t);t=(o[n>>2]|0)+8|0;o[n>>2]=t}else{TC(a,i,u);t=o[n>>2]|0}h=l;return(t-(o[a>>2]|0)>>3)+-1|0}function CC(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;o[e+4>>2]=n;return}function TC(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0;l=h;h=h+32|0;i=l;u=e+4|0;a=((o[u>>2]|0)-(o[e>>2]|0)>>3)+1|0;r=kC(e)|0;if(r>>>0>>0)jS(e);else{s=o[e>>2]|0;f=(o[e+8>>2]|0)-s|0;c=f>>2;SC(i,f>>3>>>0>>1>>>0?c>>>0>>0?a:c:r,(o[u>>2]|0)-s>>3,e+8|0);a=i+8|0;CC(o[a>>2]|0,o[t>>2]|0,o[n>>2]|0);o[a>>2]=(o[a>>2]|0)+8;MC(e,i);xC(i);h=l;return}}function kC(e){e=e|0;return 536870911}function SC(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>536870911)Ke();else{i=YS(t<<3)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n<<3)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t<<3);return}function MC(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(0-(i>>3)<<3)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function xC(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~((r+-8-t|0)>>>3)<<3);e=o[e>>2]|0;if(e|0)$S(e);return}function AC(e){e=e|0;RC(e);return}function PC(e){e=e|0;OC(e+24|0);return}function OC(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);$S(n)}return}function RC(e){e=e|0;var t=0;t=Za()|0;nl(e,1,11,t,NC()|0,1);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function NC(){return 1852}function IC(e,t){e=e|0;t=t|0;return BC(o[(FC(e)|0)>>2]|0,t)|0}function FC(e){e=e|0;return(o[(DC()|0)+24>>2]|0)+(e<<3)|0}function BC(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;cc(r,t);t=fc(r,t)|0;t=Qc(vx[e&31](t)|0)|0;h=n;return t|0}function LC(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0;u=o[e>>2]|0;i=UC()|0;e=jC(n)|0;Ba(u,t,i,e,WC(n,r)|0,r);return}function UC(){var e=0,t=0;if(!(r[8056]|0)){KC(10932);Fe(67,10932,b|0)|0;t=8056;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(10932)|0)){e=10932;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));KC(10932)}return 10932}function jC(e){e=e|0;return e|0}function WC(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0;l=h;h=h+16|0;i=l;u=l+4|0;o[i>>2]=e;s=UC()|0;a=s+24|0;t=Wa(t,4)|0;o[u>>2]=t;n=s+28|0;r=o[n>>2]|0;if(r>>>0<(o[s+32>>2]|0)>>>0){zC(r,e,t);t=(o[n>>2]|0)+8|0;o[n>>2]=t}else{qC(a,i,u);t=o[n>>2]|0}h=l;return(t-(o[a>>2]|0)>>3)+-1|0}function zC(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;o[e+4>>2]=n;return}function qC(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0;l=h;h=h+32|0;i=l;u=e+4|0;a=((o[u>>2]|0)-(o[e>>2]|0)>>3)+1|0;r=HC(e)|0;if(r>>>0>>0)jS(e);else{s=o[e>>2]|0;f=(o[e+8>>2]|0)-s|0;c=f>>2;GC(i,f>>3>>>0>>1>>>0?c>>>0>>0?a:c:r,(o[u>>2]|0)-s>>3,e+8|0);a=i+8|0;zC(o[a>>2]|0,o[t>>2]|0,o[n>>2]|0);o[a>>2]=(o[a>>2]|0)+8;VC(e,i);YC(i);h=l;return}}function HC(e){e=e|0;return 536870911}function GC(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>536870911)Ke();else{i=YS(t<<3)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n<<3)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t<<3);return}function VC(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(0-(i>>3)<<3)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function YC(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~((r+-8-t|0)>>>3)<<3);e=o[e>>2]|0;if(e|0)$S(e);return}function KC(e){e=e|0;JC(e);return}function $C(e){e=e|0;XC(e+24|0);return}function XC(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);$S(n)}return}function JC(e){e=e|0;var t=0;t=Za()|0;nl(e,1,7,t,QC()|0,2);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function QC(){return 1860}function ZC(e,t,n){e=e|0;t=t|0;n=n|0;return tT(o[(eT(e)|0)>>2]|0,t,n)|0}function eT(e){e=e|0;return(o[(UC()|0)+24>>2]|0)+(e<<3)|0}function tT(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0;r=h;h=h+32|0;a=r+12|0;u=r+8|0;l=r;s=r+16|0;i=r+4|0;nT(s,t);rT(l,s,t);js(i,n);n=Ws(i,n)|0;o[a>>2]=o[l>>2];Px[e&15](u,a,n);n=iT(u)|0;Zi(u);zs(i);h=r;return n|0}function nT(e,t){e=e|0;t=t|0;return}function rT(e,t,n){e=e|0;t=t|0;n=n|0;oT(e,n);return}function iT(e){e=e|0;return wu(e)|0}function oT(e,t){e=e|0;t=t|0;var n=0,r=0,i=0;i=h;h=h+16|0;n=i;r=t;if(!(r&1))o[e>>2]=o[t>>2];else{uT(n,0);Le(r|0,n|0)|0;aT(e,n);lT(n)}h=i;return}function uT(e,t){e=e|0;t=t|0;Ou(e,t);o[e+4>>2]=0;r[e+8>>0]=0;return}function aT(e,t){e=e|0;t=t|0;o[e>>2]=o[t+4>>2];return}function lT(e){e=e|0;r[e+8>>0]=0;return}function sT(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0;u=o[e>>2]|0;i=cT()|0;e=fT(n)|0;Ba(u,t,i,e,dT(n,r)|0,r);return}function cT(){var e=0,t=0;if(!(r[8064]|0)){_T(10968);Fe(68,10968,b|0)|0;t=8064;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(10968)|0)){e=10968;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));_T(10968)}return 10968}function fT(e){e=e|0;return e|0}function dT(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0;l=h;h=h+16|0;i=l;u=l+4|0;o[i>>2]=e;s=cT()|0;a=s+24|0;t=Wa(t,4)|0;o[u>>2]=t;n=s+28|0;r=o[n>>2]|0;if(r>>>0<(o[s+32>>2]|0)>>>0){pT(r,e,t);t=(o[n>>2]|0)+8|0;o[n>>2]=t}else{hT(a,i,u);t=o[n>>2]|0}h=l;return(t-(o[a>>2]|0)>>3)+-1|0}function pT(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;o[e+4>>2]=n;return}function hT(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0;l=h;h=h+32|0;i=l;u=e+4|0;a=((o[u>>2]|0)-(o[e>>2]|0)>>3)+1|0;r=mT(e)|0;if(r>>>0>>0)jS(e);else{s=o[e>>2]|0;f=(o[e+8>>2]|0)-s|0;c=f>>2;vT(i,f>>3>>>0>>1>>>0?c>>>0>>0?a:c:r,(o[u>>2]|0)-s>>3,e+8|0);a=i+8|0;pT(o[a>>2]|0,o[t>>2]|0,o[n>>2]|0);o[a>>2]=(o[a>>2]|0)+8;bT(e,i);gT(i);h=l;return}}function mT(e){e=e|0;return 536870911}function vT(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>536870911)Ke();else{i=YS(t<<3)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n<<3)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t<<3);return}function bT(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(0-(i>>3)<<3)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function gT(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~((r+-8-t|0)>>>3)<<3);e=o[e>>2]|0;if(e|0)$S(e);return}function _T(e){e=e|0;wT(e);return}function yT(e){e=e|0;DT(e+24|0);return}function DT(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);$S(n)}return}function wT(e){e=e|0;var t=0;t=Za()|0;nl(e,1,1,t,ET()|0,5);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function ET(){return 1872}function CT(e,t,n,r,i,u){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;u=u|0;kT(o[(TT(e)|0)>>2]|0,t,n,r,i,u);return}function TT(e){e=e|0;return(o[(cT()|0)+24>>2]|0)+(e<<3)|0}function kT(e,t,n,r,i,o){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;o=o|0;var u=0,a=0,l=0,s=0,c=0,f=0;u=h;h=h+32|0;a=u+16|0;l=u+12|0;s=u+8|0;c=u+4|0;f=u;js(a,t);t=Ws(a,t)|0;js(l,n);n=Ws(l,n)|0;js(s,r);r=Ws(s,r)|0;js(c,i);i=Ws(c,i)|0;js(f,o);o=Ws(f,o)|0;cx[e&1](t,n,r,i,o);zs(f);zs(c);zs(s);zs(l);zs(a);h=u;return}function ST(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0;u=o[e>>2]|0;i=MT()|0;e=xT(n)|0;Ba(u,t,i,e,AT(n,r)|0,r);return}function MT(){var e=0,t=0;if(!(r[8072]|0)){BT(11004);Fe(69,11004,b|0)|0;t=8072;o[t>>2]=1;o[t+4>>2]=0}if(!(Xa(11004)|0)){e=11004;t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));BT(11004)}return 11004}function xT(e){e=e|0;return e|0}function AT(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0,l=0,s=0;l=h;h=h+16|0;i=l;u=l+4|0;o[i>>2]=e;s=MT()|0;a=s+24|0;t=Wa(t,4)|0;o[u>>2]=t;n=s+28|0;r=o[n>>2]|0;if(r>>>0<(o[s+32>>2]|0)>>>0){PT(r,e,t);t=(o[n>>2]|0)+8|0;o[n>>2]=t}else{OT(a,i,u);t=o[n>>2]|0}h=l;return(t-(o[a>>2]|0)>>3)+-1|0}function PT(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;o[e+4>>2]=n;return}function OT(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0;l=h;h=h+32|0;i=l;u=e+4|0;a=((o[u>>2]|0)-(o[e>>2]|0)>>3)+1|0;r=RT(e)|0;if(r>>>0>>0)jS(e);else{s=o[e>>2]|0;f=(o[e+8>>2]|0)-s|0;c=f>>2;NT(i,f>>3>>>0>>1>>>0?c>>>0>>0?a:c:r,(o[u>>2]|0)-s>>3,e+8|0);a=i+8|0;PT(o[a>>2]|0,o[t>>2]|0,o[n>>2]|0);o[a>>2]=(o[a>>2]|0)+8;IT(e,i);FT(i);h=l;return}}function RT(e){e=e|0;return 536870911}function NT(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;o[e+12>>2]=0;o[e+16>>2]=r;do{if(t){if(t>>>0>536870911)Ke();else{i=YS(t<<3)|0;break}}else i=0}while(0);o[e>>2]=i;r=i+(n<<3)|0;o[e+8>>2]=r;o[e+4>>2]=r;o[e+12>>2]=i+(t<<3);return}function IT(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,u=0,a=0;r=o[e>>2]|0;a=e+4|0;u=t+4|0;i=(o[a>>2]|0)-r|0;n=(o[u>>2]|0)+(0-(i>>3)<<3)|0;o[u>>2]=n;if((i|0)>0){iM(n|0,r|0,i|0)|0;r=u;n=o[u>>2]|0}else r=u;u=o[e>>2]|0;o[e>>2]=n;o[r>>2]=u;u=t+8|0;i=o[a>>2]|0;o[a>>2]=o[u>>2];o[u>>2]=i;u=e+8|0;a=t+12|0;e=o[u>>2]|0;o[u>>2]=o[a>>2];o[a>>2]=e;o[t>>2]=o[r>>2];return}function FT(e){e=e|0;var t=0,n=0,r=0;t=o[e+4>>2]|0;n=e+8|0;r=o[n>>2]|0;if((r|0)!=(t|0))o[n>>2]=r+(~((r+-8-t|0)>>>3)<<3);e=o[e>>2]|0;if(e|0)$S(e);return}function BT(e){e=e|0;jT(e);return}function LT(e){e=e|0;UT(e+24|0);return}function UT(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);$S(n)}return}function jT(e){e=e|0;var t=0;t=Za()|0;nl(e,1,12,t,WT()|0,2);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function WT(){return 1896}function zT(e,t,n){e=e|0;t=t|0;n=n|0;HT(o[(qT(e)|0)>>2]|0,t,n);return}function qT(e){e=e|0;return(o[(MT()|0)+24>>2]|0)+(e<<3)|0}function HT(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,o=0;r=h;h=h+16|0;o=r+4|0;i=r;GT(o,t);t=VT(o,t)|0;js(i,n);n=Ws(i,n)|0;mx[e&31](t,n);zs(i);h=r;return}function GT(e,t){e=e|0;t=t|0;return}function VT(e,t){e=e|0;t=t|0;return YT(t)|0}function YT(e){e=e|0;return e|0}function KT(){var e=0;if(!(r[8080]|0)){$T(11040);Fe(70,11040,b|0)|0;e=8080;o[e>>2]=1;o[e+4>>2]=0}if(!(Xa(11040)|0))$T(11040);return 11040}function $T(e){e=e|0;QT(e);s_(e,71);return}function XT(e){e=e|0;JT(e+24|0);return}function JT(e){e=e|0;var t=0,n=0,r=0;n=o[e>>2]|0;r=n;if(n|0){e=e+4|0;t=o[e>>2]|0;if((t|0)!=(n|0))o[e>>2]=t+(~((t+-8-r|0)>>>3)<<3);$S(n)}return}function QT(e){e=e|0;var t=0;t=Za()|0;nl(e,5,7,t,nk()|0,0);o[e+24>>2]=0;o[e+28>>2]=0;o[e+32>>2]=0;return}function ZT(e){e=e|0;ek(e);return}function ek(e){e=e|0;tk(e);return}function tk(e){e=e|0;r[e+8>>0]=1;return}function nk(){return 1936}function rk(){return ik()|0}function ik(){var e=0,t=0,n=0,r=0,i=0,u=0,a=0;t=h;h=h+16|0;i=t+4|0;a=t;n=jE(8)|0;e=n;u=e+4|0;o[u>>2]=YS(1)|0;r=YS(8)|0;u=o[u>>2]|0;o[a>>2]=0;o[i>>2]=o[a>>2];ok(r,u,i);o[n>>2]=r;h=t;return e|0}function ok(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;n=YS(16)|0;o[n+4>>2]=0;o[n+8>>2]=0;o[n>>2]=1916;o[n+12>>2]=t;o[e+4>>2]=n;return}function uk(e){e=e|0;WS(e);$S(e);return}function ak(e){e=e|0;e=o[e+12>>2]|0;if(e|0)$S(e);return}function lk(e){e=e|0;$S(e);return}function sk(){var e=0;if(!(r[8088]|0)){vk(11076);Fe(25,11076,b|0)|0;e=8088;o[e>>2]=1;o[e+4>>2]=0}return 11076}function ck(e,t){e=e|0;t=t|0;o[e>>2]=fk()|0;o[e+4>>2]=dk()|0;o[e+12>>2]=t;o[e+8>>2]=pk()|0;o[e+32>>2]=10;return}function fk(){return 11745}function dk(){return 1940}function pk(){return zv()|0}function hk(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;if((jv(r,896)|0)==512){if(n|0){mk(n);$S(n)}}else if(t|0)$S(t);return}function mk(e){e=e|0;e=o[e+4>>2]|0;if(e|0)GS(e);return}function vk(e){e=e|0;xl(e);return}function bk(e,t){e=e|0;t=t|0;o[e>>2]=t;return}function gk(e){e=e|0;return o[e>>2]|0}function _k(e){e=e|0;return r[o[e>>2]>>0]|0}function yk(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;o[r>>2]=o[e>>2];Dk(t,r)|0;h=n;return}function Dk(e,t){e=e|0;t=t|0;var n=0;n=wk(o[e>>2]|0,t)|0;t=e+4|0;o[(o[t>>2]|0)+8>>2]=n;return o[(o[t>>2]|0)+8>>2]|0}function wk(e,t){e=e|0;t=t|0;var n=0,r=0;n=h;h=h+16|0;r=n;Ek(r);e=wu(e)|0;t=Ck(e,o[t>>2]|0)|0;Tk(r);h=n;return t|0}function Ek(e){e=e|0;o[e>>2]=o[2701];o[e+4>>2]=o[2703];return}function Ck(e,t){e=e|0;t=t|0;var n=0;n=Tu(kk()|0)|0;return it(0,n|0,e|0,$D(t)|0)|0}function Tk(e){e=e|0;eC(o[e>>2]|0,o[e+4>>2]|0);return}function kk(){var e=0;if(!(r[8096]|0)){Sk(11120);e=8096;o[e>>2]=1;o[e+4>>2]=0}return 11120}function Sk(e){e=e|0;Bu(e,Mk()|0,1);return}function Mk(){return 1948}function xk(){Ak();return}function Ak(){var e=0,t=0,n=0,i=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0,m=0,v=0,b=0,g=0,_=0;g=h;h=h+16|0;p=g+4|0;m=g;Re(65536,10804,o[2702]|0,10812);n=TD()|0;t=o[n>>2]|0;e=o[t>>2]|0;if(e|0){i=o[n+8>>2]|0;n=o[n+4>>2]|0;while(1){We(e|0,u[n>>0]|0|0,r[i>>0]|0);t=t+4|0;e=o[t>>2]|0;if(!e)break;else{i=i+1|0;n=n+1|0}}}e=SD()|0;t=o[e>>2]|0;if(t|0)do{ze(t|0,o[e+4>>2]|0);e=e+8|0;t=o[e>>2]|0}while((t|0)!=0);ze(Pk()|0,5167);d=fD()|0;e=o[d>>2]|0;e:do{if(e|0){do{Ok(o[e+4>>2]|0);e=o[e>>2]|0}while((e|0)!=0);e=o[d>>2]|0;if(e|0){f=d;do{while(1){a=e;e=o[e>>2]|0;a=o[a+4>>2]|0;if(!(Rk(a)|0))break;o[m>>2]=f;o[p>>2]=o[m>>2];Nk(d,p)|0;if(!e)break e}Ik(a);f=o[f>>2]|0;t=Fk(a)|0;l=Xe()|0;s=h;h=h+((1*(t<<2)|0)+15&-16)|0;c=h;h=h+((1*(t<<2)|0)+15&-16)|0;t=o[(Mw(a)|0)>>2]|0;if(t|0){n=s;i=c;while(1){o[n>>2]=o[(kw(o[t+4>>2]|0)|0)>>2];o[i>>2]=o[t+8>>2];t=o[t>>2]|0;if(!t)break;else{n=n+4|0;i=i+4|0}}}_=kw(a)|0;t=Bk(a)|0;n=Fk(a)|0;i=Lk(a)|0;Ve(_|0,t|0,s|0,c|0,n|0,i|0,wD(a)|0);Ie(l|0)}while((e|0)!=0)}}}while(0);e=o[(CD()|0)>>2]|0;if(e|0)do{_=e+4|0;d=PD(_)|0;a=FD(d)|0;l=OD(d)|0;s=(RD(d)|0)+1|0;c=Uk(d)|0;f=jk(_)|0;d=Xa(d)|0;p=LD(_)|0;m=Wk(_)|0;He(0,a|0,l|0,s|0,c|0,f|0,d|0,p|0,m|0,zk(_)|0);e=o[e>>2]|0}while((e|0)!=0);e=o[(fD()|0)>>2]|0;e:do{if(e|0){t:while(1){t=o[e+4>>2]|0;if(t|0?(v=o[(kw(t)|0)>>2]|0,b=o[(Pw(t)|0)>>2]|0,b|0):0){n=b;do{t=n+4|0;i=PD(t)|0;n:do{if(i|0)switch(Xa(i)|0){case 0:break t;case 4:case 3:case 2:{c=FD(i)|0;f=OD(i)|0;d=(RD(i)|0)+1|0;p=Uk(i)|0;m=Xa(i)|0;_=LD(t)|0;He(v|0,c|0,f|0,d|0,p|0,0,m|0,_|0,Wk(t)|0,zk(t)|0);break n}case 1:{s=FD(i)|0;c=OD(i)|0;f=(RD(i)|0)+1|0;d=Uk(i)|0;p=jk(t)|0;m=Xa(i)|0;_=LD(t)|0;He(v|0,s|0,c|0,f|0,d|0,p|0,m|0,_|0,Wk(t)|0,zk(t)|0);break n}case 5:{d=FD(i)|0;p=OD(i)|0;m=(RD(i)|0)+1|0;_=Uk(i)|0;He(v|0,d|0,p|0,m|0,_|0,qk(i)|0,Xa(i)|0,0,0,0);break n}default:break n}}while(0);n=o[n>>2]|0}while((n|0)!=0)}e=o[e>>2]|0;if(!e)break e}Ke()}}while(0);Ye();h=g;return}function Pk(){return 11703}function Ok(e){e=e|0;r[e+40>>0]=0;return}function Rk(e){e=e|0;return(r[e+40>>0]|0)!=0|0}function Nk(e,t){e=e|0;t=t|0;t=Hk(t)|0;e=o[t>>2]|0;o[t>>2]=o[e>>2];$S(e);return o[t>>2]|0}function Ik(e){e=e|0;r[e+40>>0]=1;return}function Fk(e){e=e|0;return o[e+20>>2]|0}function Bk(e){e=e|0;return o[e+8>>2]|0}function Lk(e){e=e|0;return o[e+32>>2]|0}function Uk(e){e=e|0;return o[e+4>>2]|0}function jk(e){e=e|0;return o[e+4>>2]|0}function Wk(e){e=e|0;return o[e+8>>2]|0}function zk(e){e=e|0;return o[e+16>>2]|0}function qk(e){e=e|0;return o[e+20>>2]|0}function Hk(e){e=e|0;return o[e>>2]|0}function Gk(e){e=e|0;var t=0,n=0,r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0,m=0,v=0,b=0,g=0,_=0,y=0,D=0,w=0,E=0;E=h;h=h+16|0;p=E;do{if(e>>>0<245){c=e>>>0<11?16:e+11&-8;e=c>>>3;d=o[2783]|0;n=d>>>e;if(n&3|0){t=(n&1^1)+e|0;e=11172+(t<<1<<2)|0;n=e+8|0;r=o[n>>2]|0;i=r+8|0;u=o[i>>2]|0;if((e|0)==(u|0))o[2783]=d&~(1<>2]=e;o[n>>2]=u}w=t<<3;o[r+4>>2]=w|3;w=r+w+4|0;o[w>>2]=o[w>>2]|1;w=i;h=E;return w|0}f=o[2785]|0;if(c>>>0>f>>>0){if(n|0){t=2<>>12&16;t=t>>>a;n=t>>>5&8;t=t>>>n;i=t>>>2&4;t=t>>>i;e=t>>>1&2;t=t>>>e;r=t>>>1&1;r=(n|a|i|e|r)+(t>>>r)|0;t=11172+(r<<1<<2)|0;e=t+8|0;i=o[e>>2]|0;a=i+8|0;n=o[a>>2]|0;if((t|0)==(n|0)){e=d&~(1<>2]=t;o[e>>2]=n;e=d}u=(r<<3)-c|0;o[i+4>>2]=c|3;r=i+c|0;o[r+4>>2]=u|1;o[r+u>>2]=u;if(f|0){i=o[2788]|0;t=f>>>3;n=11172+(t<<1<<2)|0;t=1<>2]|0}o[e>>2]=i;o[t+12>>2]=i;o[i+8>>2]=t;o[i+12>>2]=n}o[2785]=u;o[2788]=r;w=a;h=E;return w|0}l=o[2784]|0;if(l){n=(l&0-l)+-1|0;a=n>>>12&16;n=n>>>a;u=n>>>5&8;n=n>>>u;s=n>>>2&4;n=n>>>s;r=n>>>1&2;n=n>>>r;e=n>>>1&1;e=o[11436+((u|a|s|r|e)+(n>>>e)<<2)>>2]|0;n=(o[e+4>>2]&-8)-c|0;r=o[e+16+(((o[e+16>>2]|0)==0&1)<<2)>>2]|0;if(!r){s=e;u=n}else{do{a=(o[r+4>>2]&-8)-c|0;s=a>>>0>>0;n=s?a:n;e=s?r:e;r=o[r+16+(((o[r+16>>2]|0)==0&1)<<2)>>2]|0}while((r|0)!=0);s=e;u=n}a=s+c|0;if(s>>>0>>0){i=o[s+24>>2]|0;t=o[s+12>>2]|0;do{if((t|0)==(s|0)){e=s+20|0;t=o[e>>2]|0;if(!t){e=s+16|0;t=o[e>>2]|0;if(!t){n=0;break}}while(1){n=t+20|0;r=o[n>>2]|0;if(r|0){t=r;e=n;continue}n=t+16|0;r=o[n>>2]|0;if(!r)break;else{t=r;e=n}}o[e>>2]=0;n=t}else{n=o[s+8>>2]|0;o[n+12>>2]=t;o[t+8>>2]=n;n=t}}while(0);do{if(i|0){t=o[s+28>>2]|0;e=11436+(t<<2)|0;if((s|0)==(o[e>>2]|0)){o[e>>2]=n;if(!n){o[2784]=l&~(1<>2]|0)!=(s|0)&1)<<2)>>2]=n;if(!n)break}o[n+24>>2]=i;t=o[s+16>>2]|0;if(t|0){o[n+16>>2]=t;o[t+24>>2]=n}t=o[s+20>>2]|0;if(t|0){o[n+20>>2]=t;o[t+24>>2]=n}}}while(0);if(u>>>0<16){w=u+c|0;o[s+4>>2]=w|3;w=s+w+4|0;o[w>>2]=o[w>>2]|1}else{o[s+4>>2]=c|3;o[a+4>>2]=u|1;o[a+u>>2]=u;if(f|0){r=o[2788]|0;t=f>>>3;n=11172+(t<<1<<2)|0;t=1<>2]|0}o[e>>2]=r;o[t+12>>2]=r;o[r+8>>2]=t;o[r+12>>2]=n}o[2785]=u;o[2788]=a}w=s+8|0;h=E;return w|0}else d=c}else d=c}else d=c}else if(e>>>0<=4294967231){e=e+11|0;c=e&-8;s=o[2784]|0;if(s){r=0-c|0;e=e>>>8;if(e){if(c>>>0>16777215)l=31;else{d=(e+1048320|0)>>>16&8;D=e<>>16&4;D=D<>>16&2;l=14-(f|d|l)+(D<>>15)|0;l=c>>>(l+7|0)&1|l<<1}}else l=0;n=o[11436+(l<<2)>>2]|0;e:do{if(!n){n=0;e=0;D=57}else{e=0;a=c<<((l|0)==31?0:25-(l>>>1)|0);u=0;while(1){i=(o[n+4>>2]&-8)-c|0;if(i>>>0>>0)if(!i){e=n;r=0;i=n;D=61;break e}else{e=n;r=i}i=o[n+20>>2]|0;n=o[n+16+(a>>>31<<2)>>2]|0;u=(i|0)==0|(i|0)==(n|0)?u:i;i=(n|0)==0;if(i){n=u;D=57;break}else a=a<<((i^1)&1)}}}while(0);if((D|0)==57){if((n|0)==0&(e|0)==0){e=2<>>12&16;d=d>>>a;u=d>>>5&8;d=d>>>u;l=d>>>2&4;d=d>>>l;f=d>>>1&2;d=d>>>f;n=d>>>1&1;e=0;n=o[11436+((u|a|l|f|n)+(d>>>n)<<2)>>2]|0}if(!n){l=e;a=r}else{i=n;D=61}}if((D|0)==61)while(1){D=0;n=(o[i+4>>2]&-8)-c|0;d=n>>>0>>0;n=d?n:r;e=d?i:e;i=o[i+16+(((o[i+16>>2]|0)==0&1)<<2)>>2]|0;if(!i){l=e;a=n;break}else{r=n;D=61}}if((l|0)!=0?a>>>0<((o[2785]|0)-c|0)>>>0:0){u=l+c|0;if(l>>>0>=u>>>0){w=0;h=E;return w|0}i=o[l+24>>2]|0;t=o[l+12>>2]|0;do{if((t|0)==(l|0)){e=l+20|0;t=o[e>>2]|0;if(!t){e=l+16|0;t=o[e>>2]|0;if(!t){t=0;break}}while(1){n=t+20|0;r=o[n>>2]|0;if(r|0){t=r;e=n;continue}n=t+16|0;r=o[n>>2]|0;if(!r)break;else{t=r;e=n}}o[e>>2]=0}else{w=o[l+8>>2]|0;o[w+12>>2]=t;o[t+8>>2]=w}}while(0);do{if(i){e=o[l+28>>2]|0;n=11436+(e<<2)|0;if((l|0)==(o[n>>2]|0)){o[n>>2]=t;if(!t){r=s&~(1<>2]|0)!=(l|0)&1)<<2)>>2]=t;if(!t){r=s;break}}o[t+24>>2]=i;e=o[l+16>>2]|0;if(e|0){o[t+16>>2]=e;o[e+24>>2]=t}e=o[l+20>>2]|0;if(e){o[t+20>>2]=e;o[e+24>>2]=t;r=s}else r=s}else r=s}while(0);do{if(a>>>0>=16){o[l+4>>2]=c|3;o[u+4>>2]=a|1;o[u+a>>2]=a;t=a>>>3;if(a>>>0<256){n=11172+(t<<1<<2)|0;e=o[2783]|0;t=1<>2]|0}o[e>>2]=u;o[t+12>>2]=u;o[u+8>>2]=t;o[u+12>>2]=n;break}t=a>>>8;if(t){if(a>>>0>16777215)t=31;else{D=(t+1048320|0)>>>16&8;w=t<>>16&4;w=w<>>16&2;t=14-(y|D|t)+(w<>>15)|0;t=a>>>(t+7|0)&1|t<<1}}else t=0;n=11436+(t<<2)|0;o[u+28>>2]=t;e=u+16|0;o[e+4>>2]=0;o[e>>2]=0;e=1<>2]=u;o[u+24>>2]=n;o[u+12>>2]=u;o[u+8>>2]=u;break}e=a<<((t|0)==31?0:25-(t>>>1)|0);n=o[n>>2]|0;while(1){if((o[n+4>>2]&-8|0)==(a|0)){D=97;break}r=n+16+(e>>>31<<2)|0;t=o[r>>2]|0;if(!t){D=96;break}else{e=e<<1;n=t}}if((D|0)==96){o[r>>2]=u;o[u+24>>2]=n;o[u+12>>2]=u;o[u+8>>2]=u;break}else if((D|0)==97){D=n+8|0;w=o[D>>2]|0;o[w+12>>2]=u;o[D>>2]=u;o[u+8>>2]=w;o[u+12>>2]=n;o[u+24>>2]=0;break}}else{w=a+c|0;o[l+4>>2]=w|3;w=l+w+4|0;o[w>>2]=o[w>>2]|1}}while(0);w=l+8|0;h=E;return w|0}else d=c}else d=c}else d=-1}while(0);n=o[2785]|0;if(n>>>0>=d>>>0){t=n-d|0;e=o[2788]|0;if(t>>>0>15){w=e+d|0;o[2788]=w;o[2785]=t;o[w+4>>2]=t|1;o[w+t>>2]=t;o[e+4>>2]=d|3}else{o[2785]=0;o[2788]=0;o[e+4>>2]=n|3;w=e+n+4|0;o[w>>2]=o[w>>2]|1}w=e+8|0;h=E;return w|0}a=o[2786]|0;if(a>>>0>d>>>0){y=a-d|0;o[2786]=y;w=o[2789]|0;D=w+d|0;o[2789]=D;o[D+4>>2]=y|1;o[w+4>>2]=d|3;w=w+8|0;h=E;return w|0}if(!(o[2901]|0)){o[2903]=4096;o[2902]=4096;o[2904]=-1;o[2905]=-1;o[2906]=0;o[2894]=0;e=p&-16^1431655768;o[p>>2]=e;o[2901]=e;e=4096}else e=o[2903]|0;l=d+48|0;s=d+47|0;u=e+s|0;i=0-e|0;c=u&i;if(c>>>0<=d>>>0){w=0;h=E;return w|0}e=o[2893]|0;if(e|0?(f=o[2891]|0,p=f+c|0,p>>>0<=f>>>0|p>>>0>e>>>0):0){w=0;h=E;return w|0}e:do{if(!(o[2894]&4)){n=o[2789]|0;t:do{if(n){r=11580;while(1){e=o[r>>2]|0;if(e>>>0<=n>>>0?(b=r+4|0,(e+(o[b>>2]|0)|0)>>>0>n>>>0):0)break;e=o[r+8>>2]|0;if(!e){D=118;break t}else r=e}t=u-a&i;if(t>>>0<2147483647){e=lM(t|0)|0;if((e|0)==((o[r>>2]|0)+(o[b>>2]|0)|0)){if((e|0)!=(-1|0)){a=t;u=e;D=135;break e}}else{r=e;D=126}}else t=0}else D=118}while(0);do{if((D|0)==118){n=lM(0)|0;if((n|0)!=(-1|0)?(t=n,m=o[2902]|0,v=m+-1|0,t=((v&t|0)==0?0:(v+t&0-m)-t|0)+c|0,m=o[2891]|0,v=t+m|0,t>>>0>d>>>0&t>>>0<2147483647):0){b=o[2893]|0;if(b|0?v>>>0<=m>>>0|v>>>0>b>>>0:0){t=0;break}e=lM(t|0)|0;if((e|0)==(n|0)){a=t;u=n;D=135;break e}else{r=e;D=126}}else t=0}}while(0);do{if((D|0)==126){n=0-t|0;if(!(l>>>0>t>>>0&(t>>>0<2147483647&(r|0)!=(-1|0))))if((r|0)==(-1|0)){t=0;break}else{a=t;u=r;D=135;break e}e=o[2903]|0;e=s-t+e&0-e;if(e>>>0>=2147483647){a=t;u=r;D=135;break e}if((lM(e|0)|0)==(-1|0)){lM(n|0)|0;t=0;break}else{a=e+t|0;u=r;D=135;break e}}}while(0);o[2894]=o[2894]|4;D=133}else{t=0;D=133}}while(0);if(((D|0)==133?c>>>0<2147483647:0)?(y=lM(c|0)|0,b=lM(0)|0,g=b-y|0,_=g>>>0>(d+40|0)>>>0,!((y|0)==(-1|0)|_^1|y>>>0>>0&((y|0)!=(-1|0)&(b|0)!=(-1|0))^1)):0){a=_?g:t;u=y;D=135}if((D|0)==135){t=(o[2891]|0)+a|0;o[2891]=t;if(t>>>0>(o[2892]|0)>>>0)o[2892]=t;s=o[2789]|0;do{if(s){t=11580;while(1){e=o[t>>2]|0;n=t+4|0;r=o[n>>2]|0;if((u|0)==(e+r|0)){D=145;break}i=o[t+8>>2]|0;if(!i)break;else t=i}if(((D|0)==145?(o[t+12>>2]&8|0)==0:0)?s>>>0>>0&s>>>0>=e>>>0:0){o[n>>2]=r+a;w=s+8|0;w=(w&7|0)==0?0:0-w&7;D=s+w|0;w=(o[2786]|0)+(a-w)|0;o[2789]=D;o[2786]=w;o[D+4>>2]=w|1;o[D+w+4>>2]=40;o[2790]=o[2905];break}if(u>>>0<(o[2787]|0)>>>0)o[2787]=u;n=u+a|0;t=11580;while(1){if((o[t>>2]|0)==(n|0)){D=153;break}e=o[t+8>>2]|0;if(!e)break;else t=e}if((D|0)==153?(o[t+12>>2]&8|0)==0:0){o[t>>2]=u;f=t+4|0;o[f>>2]=(o[f>>2]|0)+a;f=u+8|0;f=u+((f&7|0)==0?0:0-f&7)|0;t=n+8|0;t=n+((t&7|0)==0?0:0-t&7)|0;c=f+d|0;l=t-f-d|0;o[f+4>>2]=d|3;do{if((t|0)!=(s|0)){if((t|0)==(o[2788]|0)){w=(o[2785]|0)+l|0;o[2785]=w;o[2788]=c;o[c+4>>2]=w|1;o[c+w>>2]=w;break}e=o[t+4>>2]|0;if((e&3|0)==1){a=e&-8;r=e>>>3;e:do{if(e>>>0<256){e=o[t+8>>2]|0;n=o[t+12>>2]|0;if((n|0)==(e|0)){o[2783]=o[2783]&~(1<>2]=n;o[n+8>>2]=e;break}}else{u=o[t+24>>2]|0;e=o[t+12>>2]|0;do{if((e|0)==(t|0)){r=t+16|0;n=r+4|0;e=o[n>>2]|0;if(!e){e=o[r>>2]|0;if(!e){e=0;break}else n=r}while(1){r=e+20|0;i=o[r>>2]|0;if(i|0){e=i;n=r;continue}r=e+16|0;i=o[r>>2]|0;if(!i)break;else{e=i;n=r}}o[n>>2]=0}else{w=o[t+8>>2]|0;o[w+12>>2]=e;o[e+8>>2]=w}}while(0);if(!u)break;n=o[t+28>>2]|0;r=11436+(n<<2)|0;do{if((t|0)!=(o[r>>2]|0)){o[u+16+(((o[u+16>>2]|0)!=(t|0)&1)<<2)>>2]=e;if(!e)break e}else{o[r>>2]=e;if(e|0)break;o[2784]=o[2784]&~(1<>2]=u;n=t+16|0;r=o[n>>2]|0;if(r|0){o[e+16>>2]=r;o[r+24>>2]=e}n=o[n+4>>2]|0;if(!n)break;o[e+20>>2]=n;o[n+24>>2]=e}}while(0);t=t+a|0;i=a+l|0}else i=l;t=t+4|0;o[t>>2]=o[t>>2]&-2;o[c+4>>2]=i|1;o[c+i>>2]=i;t=i>>>3;if(i>>>0<256){n=11172+(t<<1<<2)|0;e=o[2783]|0;t=1<>2]|0}o[e>>2]=c;o[t+12>>2]=c;o[c+8>>2]=t;o[c+12>>2]=n;break}t=i>>>8;do{if(!t)t=0;else{if(i>>>0>16777215){t=31;break}D=(t+1048320|0)>>>16&8;w=t<>>16&4;w=w<>>16&2;t=14-(y|D|t)+(w<>>15)|0;t=i>>>(t+7|0)&1|t<<1}}while(0);r=11436+(t<<2)|0;o[c+28>>2]=t;e=c+16|0;o[e+4>>2]=0;o[e>>2]=0;e=o[2784]|0;n=1<>2]=c;o[c+24>>2]=r;o[c+12>>2]=c;o[c+8>>2]=c;break}e=i<<((t|0)==31?0:25-(t>>>1)|0);n=o[r>>2]|0;while(1){if((o[n+4>>2]&-8|0)==(i|0)){D=194;break}r=n+16+(e>>>31<<2)|0;t=o[r>>2]|0;if(!t){D=193;break}else{e=e<<1;n=t}}if((D|0)==193){o[r>>2]=c;o[c+24>>2]=n;o[c+12>>2]=c;o[c+8>>2]=c;break}else if((D|0)==194){D=n+8|0;w=o[D>>2]|0;o[w+12>>2]=c;o[D>>2]=c;o[c+8>>2]=w;o[c+12>>2]=n;o[c+24>>2]=0;break}}else{w=(o[2786]|0)+l|0;o[2786]=w;o[2789]=c;o[c+4>>2]=w|1}}while(0);w=f+8|0;h=E;return w|0}t=11580;while(1){e=o[t>>2]|0;if(e>>>0<=s>>>0?(w=e+(o[t+4>>2]|0)|0,w>>>0>s>>>0):0)break;t=o[t+8>>2]|0}i=w+-47|0;e=i+8|0;e=i+((e&7|0)==0?0:0-e&7)|0;i=s+16|0;e=e>>>0>>0?s:e;t=e+8|0;n=u+8|0;n=(n&7|0)==0?0:0-n&7;D=u+n|0;n=a+-40-n|0;o[2789]=D;o[2786]=n;o[D+4>>2]=n|1;o[D+n+4>>2]=40;o[2790]=o[2905];n=e+4|0;o[n>>2]=27;o[t>>2]=o[2895];o[t+4>>2]=o[2896];o[t+8>>2]=o[2897];o[t+12>>2]=o[2898];o[2895]=u;o[2896]=a;o[2898]=0;o[2897]=t;t=e+24|0;do{D=t;t=t+4|0;o[t>>2]=7}while((D+8|0)>>>0>>0);if((e|0)!=(s|0)){u=e-s|0;o[n>>2]=o[n>>2]&-2;o[s+4>>2]=u|1;o[e>>2]=u;t=u>>>3;if(u>>>0<256){n=11172+(t<<1<<2)|0;e=o[2783]|0;t=1<>2]|0}o[e>>2]=s;o[t+12>>2]=s;o[s+8>>2]=t;o[s+12>>2]=n;break}t=u>>>8;if(t){if(u>>>0>16777215)n=31;else{D=(t+1048320|0)>>>16&8;w=t<>>16&4;w=w<>>16&2;n=14-(y|D|n)+(w<>>15)|0;n=u>>>(n+7|0)&1|n<<1}}else n=0;r=11436+(n<<2)|0;o[s+28>>2]=n;o[s+20>>2]=0;o[i>>2]=0;t=o[2784]|0;e=1<>2]=s;o[s+24>>2]=r;o[s+12>>2]=s;o[s+8>>2]=s;break}e=u<<((n|0)==31?0:25-(n>>>1)|0);n=o[r>>2]|0;while(1){if((o[n+4>>2]&-8|0)==(u|0)){D=216;break}r=n+16+(e>>>31<<2)|0;t=o[r>>2]|0;if(!t){D=215;break}else{e=e<<1;n=t}}if((D|0)==215){o[r>>2]=s;o[s+24>>2]=n;o[s+12>>2]=s;o[s+8>>2]=s;break}else if((D|0)==216){D=n+8|0;w=o[D>>2]|0;o[w+12>>2]=s;o[D>>2]=s;o[s+8>>2]=w;o[s+12>>2]=n;o[s+24>>2]=0;break}}}else{w=o[2787]|0;if((w|0)==0|u>>>0>>0)o[2787]=u;o[2895]=u;o[2896]=a;o[2898]=0;o[2792]=o[2901];o[2791]=-1;t=0;do{w=11172+(t<<1<<2)|0;o[w+12>>2]=w;o[w+8>>2]=w;t=t+1|0}while((t|0)!=32);w=u+8|0;w=(w&7|0)==0?0:0-w&7;D=u+w|0;w=a+-40-w|0;o[2789]=D;o[2786]=w;o[D+4>>2]=w|1;o[D+w+4>>2]=40;o[2790]=o[2905]}}while(0);t=o[2786]|0;if(t>>>0>d>>>0){y=t-d|0;o[2786]=y;w=o[2789]|0;D=w+d|0;o[2789]=D;o[D+4>>2]=y|1;o[w+4>>2]=d|3;w=w+8|0;h=E;return w|0}}o[(Qk()|0)>>2]=12;w=0;h=E;return w|0}function Vk(e){e=e|0;var t=0,n=0,r=0,i=0,u=0,a=0,l=0,s=0;if(!e)return;n=e+-8|0;i=o[2787]|0;e=o[e+-4>>2]|0;t=e&-8;s=n+t|0;do{if(!(e&1)){r=o[n>>2]|0;if(!(e&3))return;a=n+(0-r)|0;u=r+t|0;if(a>>>0>>0)return;if((a|0)==(o[2788]|0)){e=s+4|0;t=o[e>>2]|0;if((t&3|0)!=3){l=a;t=u;break}o[2785]=u;o[e>>2]=t&-2;o[a+4>>2]=u|1;o[a+u>>2]=u;return}n=r>>>3;if(r>>>0<256){e=o[a+8>>2]|0;t=o[a+12>>2]|0;if((t|0)==(e|0)){o[2783]=o[2783]&~(1<>2]=t;o[t+8>>2]=e;l=a;t=u;break}}i=o[a+24>>2]|0;e=o[a+12>>2]|0;do{if((e|0)==(a|0)){n=a+16|0;t=n+4|0;e=o[t>>2]|0;if(!e){e=o[n>>2]|0;if(!e){e=0;break}else t=n}while(1){n=e+20|0;r=o[n>>2]|0;if(r|0){e=r;t=n;continue}n=e+16|0;r=o[n>>2]|0;if(!r)break;else{e=r;t=n}}o[t>>2]=0}else{l=o[a+8>>2]|0;o[l+12>>2]=e;o[e+8>>2]=l}}while(0);if(i){t=o[a+28>>2]|0;n=11436+(t<<2)|0;if((a|0)==(o[n>>2]|0)){o[n>>2]=e;if(!e){o[2784]=o[2784]&~(1<>2]|0)!=(a|0)&1)<<2)>>2]=e;if(!e){l=a;t=u;break}}o[e+24>>2]=i;t=a+16|0;n=o[t>>2]|0;if(n|0){o[e+16>>2]=n;o[n+24>>2]=e}t=o[t+4>>2]|0;if(t){o[e+20>>2]=t;o[t+24>>2]=e;l=a;t=u}else{l=a;t=u}}else{l=a;t=u}}else{l=n;a=n}}while(0);if(a>>>0>=s>>>0)return;e=s+4|0;r=o[e>>2]|0;if(!(r&1))return;if(!(r&2)){e=o[2788]|0;if((s|0)==(o[2789]|0)){s=(o[2786]|0)+t|0;o[2786]=s;o[2789]=l;o[l+4>>2]=s|1;if((l|0)!=(e|0))return;o[2788]=0;o[2785]=0;return}if((s|0)==(e|0)){s=(o[2785]|0)+t|0;o[2785]=s;o[2788]=a;o[l+4>>2]=s|1;o[a+s>>2]=s;return}i=(r&-8)+t|0;n=r>>>3;do{if(r>>>0<256){t=o[s+8>>2]|0;e=o[s+12>>2]|0;if((e|0)==(t|0)){o[2783]=o[2783]&~(1<>2]=e;o[e+8>>2]=t;break}}else{u=o[s+24>>2]|0;e=o[s+12>>2]|0;do{if((e|0)==(s|0)){n=s+16|0;t=n+4|0;e=o[t>>2]|0;if(!e){e=o[n>>2]|0;if(!e){n=0;break}else t=n}while(1){n=e+20|0;r=o[n>>2]|0;if(r|0){e=r;t=n;continue}n=e+16|0;r=o[n>>2]|0;if(!r)break;else{e=r;t=n}}o[t>>2]=0;n=e}else{n=o[s+8>>2]|0;o[n+12>>2]=e;o[e+8>>2]=n;n=e}}while(0);if(u|0){e=o[s+28>>2]|0;t=11436+(e<<2)|0;if((s|0)==(o[t>>2]|0)){o[t>>2]=n;if(!n){o[2784]=o[2784]&~(1<>2]|0)!=(s|0)&1)<<2)>>2]=n;if(!n)break}o[n+24>>2]=u;e=s+16|0;t=o[e>>2]|0;if(t|0){o[n+16>>2]=t;o[t+24>>2]=n}e=o[e+4>>2]|0;if(e|0){o[n+20>>2]=e;o[e+24>>2]=n}}}}while(0);o[l+4>>2]=i|1;o[a+i>>2]=i;if((l|0)==(o[2788]|0)){o[2785]=i;return}}else{o[e>>2]=r&-2;o[l+4>>2]=t|1;o[a+t>>2]=t;i=t}e=i>>>3;if(i>>>0<256){n=11172+(e<<1<<2)|0;t=o[2783]|0;e=1<>2]|0}o[t>>2]=l;o[e+12>>2]=l;o[l+8>>2]=e;o[l+12>>2]=n;return}e=i>>>8;if(e){if(i>>>0>16777215)e=31;else{a=(e+1048320|0)>>>16&8;s=e<>>16&4;s=s<>>16&2;e=14-(u|a|e)+(s<>>15)|0;e=i>>>(e+7|0)&1|e<<1}}else e=0;r=11436+(e<<2)|0;o[l+28>>2]=e;o[l+20>>2]=0;o[l+16>>2]=0;t=o[2784]|0;n=1<>>1)|0);n=o[r>>2]|0;while(1){if((o[n+4>>2]&-8|0)==(i|0)){e=73;break}r=n+16+(t>>>31<<2)|0;e=o[r>>2]|0;if(!e){e=72;break}else{t=t<<1;n=e}}if((e|0)==72){o[r>>2]=l;o[l+24>>2]=n;o[l+12>>2]=l;o[l+8>>2]=l;break}else if((e|0)==73){a=n+8|0;s=o[a>>2]|0;o[s+12>>2]=l;o[a>>2]=l;o[l+8>>2]=s;o[l+12>>2]=n;o[l+24>>2]=0;break}}else{o[2784]=t|n;o[r>>2]=l;o[l+24>>2]=r;o[l+12>>2]=l;o[l+8>>2]=l}}while(0);s=(o[2791]|0)+-1|0;o[2791]=s;if(!s)e=11588;else return;while(1){e=o[e>>2]|0;if(!e)break;else e=e+8|0}o[2791]=-1;return}function Yk(){return 11628}function Kk(e){e=e|0;var t=0,n=0;t=h;h=h+16|0;n=t;o[n>>2]=tS(o[e+60>>2]|0)|0;e=Jk(ut(6,n|0)|0)|0;h=t;return e|0}function $k(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0,m=0;d=h;h=h+48|0;c=d+16|0;u=d;i=d+32|0;l=e+28|0;r=o[l>>2]|0;o[i>>2]=r;s=e+20|0;r=(o[s>>2]|0)-r|0;o[i+4>>2]=r;o[i+8>>2]=t;o[i+12>>2]=n;r=r+n|0;a=e+60|0;o[u>>2]=o[a>>2];o[u+4>>2]=i;o[u+8>>2]=2;u=Jk(st(146,u|0)|0)|0;e:do{if((r|0)!=(u|0)){t=2;while(1){if((u|0)<0)break;r=r-u|0;m=o[i+4>>2]|0;p=u>>>0>m>>>0;i=p?i+8|0:i;t=(p<<31>>31)+t|0;m=u-(p?m:0)|0;o[i>>2]=(o[i>>2]|0)+m;p=i+4|0;o[p>>2]=(o[p>>2]|0)-m;o[c>>2]=o[a>>2];o[c+4>>2]=i;o[c+8>>2]=t;u=Jk(st(146,c|0)|0)|0;if((r|0)==(u|0)){f=3;break e}}o[e+16>>2]=0;o[l>>2]=0;o[s>>2]=0;o[e>>2]=o[e>>2]|32;if((t|0)==2)n=0;else n=n-(o[i+4>>2]|0)|0}else f=3}while(0);if((f|0)==3){m=o[e+44>>2]|0;o[e+16>>2]=m+(o[e+48>>2]|0);o[l>>2]=m;o[s>>2]=m}h=d;return n|0}function Xk(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0;i=h;h=h+32|0;u=i;r=i+20|0;o[u>>2]=o[e+60>>2];o[u+4>>2]=0;o[u+8>>2]=t;o[u+12>>2]=r;o[u+16>>2]=n;if((Jk(lt(140,u|0)|0)|0)<0){o[r>>2]=-1;e=-1}else e=o[r>>2]|0;h=i;return e|0}function Jk(e){e=e|0;if(e>>>0>4294963200){o[(Qk()|0)>>2]=0-e;e=-1}return e|0}function Qk(){return(Zk()|0)+64|0}function Zk(){return eS()|0}function eS(){return 2084}function tS(e){e=e|0;return e|0}function nS(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,u=0;u=h;h=h+32|0;i=u;o[e+36>>2]=1;if((o[e>>2]&64|0)==0?(o[i>>2]=o[e+60>>2],o[i+4>>2]=21523,o[i+8>>2]=u+16,Je(54,i|0)|0):0)r[e+75>>0]=-1;i=$k(e,t,n)|0;h=u;return i|0}function rS(e,t){e=e|0;t=t|0;var n=0,i=0;n=r[e>>0]|0;i=r[t>>0]|0;if(n<<24>>24==0?1:n<<24>>24!=i<<24>>24)e=i;else{do{e=e+1|0;t=t+1|0;n=r[e>>0]|0;i=r[t>>0]|0}while(!(n<<24>>24==0?1:n<<24>>24!=i<<24>>24));e=i}return(n&255)-(e&255)|0}function iS(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0;e:do{if(!n)e=0;else{while(1){i=r[e>>0]|0;o=r[t>>0]|0;if(i<<24>>24!=o<<24>>24)break;n=n+-1|0;if(!n){e=0;break e}else{e=e+1|0;t=t+1|0}}e=(i&255)-(o&255)|0}}while(0);return e|0}function oS(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0,m=0,v=0,b=0,g=0;g=h;h=h+224|0;d=g+120|0;p=g+80|0;v=g;b=g+136|0;i=p;u=i+40|0;do{o[i>>2]=0;i=i+4|0}while((i|0)<(u|0));o[d>>2]=o[n>>2];if((uS(0,t,d,v,p)|0)<0)n=-1;else{if((o[e+76>>2]|0)>-1)m=aS(e)|0;else m=0;n=o[e>>2]|0;f=n&32;if((r[e+74>>0]|0)<1)o[e>>2]=n&-33;i=e+48|0;if(!(o[i>>2]|0)){u=e+44|0;a=o[u>>2]|0;o[u>>2]=b;l=e+28|0;o[l>>2]=b;s=e+20|0;o[s>>2]=b;o[i>>2]=80;c=e+16|0;o[c>>2]=b+80;n=uS(e,t,d,v,p)|0;if(a){_x[o[e+36>>2]&7](e,0,0)|0;n=(o[s>>2]|0)==0?-1:n;o[u>>2]=a;o[i>>2]=0;o[c>>2]=0;o[l>>2]=0;o[s>>2]=0}}else n=uS(e,t,d,v,p)|0;i=o[e>>2]|0;o[e>>2]=i|f;if(m|0)lS(e);n=(i&32|0)==0?n:-1}h=g;return n|0}function uS(e,t,n,u,a){e=e|0;t=t|0;n=n|0;u=u|0;a=a|0;var l=0,s=0,f=0,d=0,p=0,m=0,v=0,b=0,g=0,_=0,y=0,D=0,w=0,E=0,C=0,T=0,k=0,S=0,M=0,A=0,P=0,O=0,R=0;R=h;h=h+64|0;M=R+16|0;A=R;k=R+24|0;P=R+8|0;O=R+20|0;o[M>>2]=t;E=(e|0)!=0;C=k+40|0;T=C;k=k+39|0;S=P+4|0;s=0;l=0;m=0;e:while(1){do{if((l|0)>-1)if((s|0)>(2147483647-l|0)){o[(Qk()|0)>>2]=75;l=-1;break}else{l=s+l|0;break}}while(0);s=r[t>>0]|0;if(!(s<<24>>24)){w=87;break}else f=t;t:while(1){switch(s<<24>>24){case 37:{s=f;w=9;break t}case 0:{s=f;break t}default:{}}D=f+1|0;o[M>>2]=D;s=r[D>>0]|0;f=D}t:do{if((w|0)==9)while(1){w=0;if((r[f+1>>0]|0)!=37)break t;s=s+1|0;f=f+2|0;o[M>>2]=f;if((r[f>>0]|0)==37)w=9;else break}}while(0);s=s-t|0;if(E)sS(e,t,s);if(s|0){t=f;continue}d=f+1|0;s=(r[d>>0]|0)+-48|0;if(s>>>0<10){D=(r[f+2>>0]|0)==36;y=D?s:-1;m=D?1:m;d=D?f+3|0:d}else y=-1;o[M>>2]=d;s=r[d>>0]|0;f=(s<<24>>24)+-32|0;t:do{if(f>>>0<32){p=0;v=s;while(1){s=1<>2]=d;s=r[d>>0]|0;f=(s<<24>>24)+-32|0;if(f>>>0>=32)break;else v=s}}else p=0}while(0);if(s<<24>>24==42){f=d+1|0;s=(r[f>>0]|0)+-48|0;if(s>>>0<10?(r[d+2>>0]|0)==36:0){o[a+(s<<2)>>2]=10;s=o[u+((r[f>>0]|0)+-48<<3)>>2]|0;m=1;d=d+3|0}else{if(m|0){l=-1;break}if(E){m=(o[n>>2]|0)+(4-1)&~(4-1);s=o[m>>2]|0;o[n>>2]=m+4;m=0;d=f}else{s=0;m=0;d=f}}o[M>>2]=d;D=(s|0)<0;s=D?0-s|0:s;p=D?p|8192:p}else{s=cS(M)|0;if((s|0)<0){l=-1;break}d=o[M>>2]|0}do{if((r[d>>0]|0)==46){if((r[d+1>>0]|0)!=42){o[M>>2]=d+1;f=cS(M)|0;d=o[M>>2]|0;break}v=d+2|0;f=(r[v>>0]|0)+-48|0;if(f>>>0<10?(r[d+3>>0]|0)==36:0){o[a+(f<<2)>>2]=10;f=o[u+((r[v>>0]|0)+-48<<3)>>2]|0;d=d+4|0;o[M>>2]=d;break}if(m|0){l=-1;break e}if(E){D=(o[n>>2]|0)+(4-1)&~(4-1);f=o[D>>2]|0;o[n>>2]=D+4}else f=0;o[M>>2]=v;d=v}else f=-1}while(0);_=0;while(1){if(((r[d>>0]|0)+-65|0)>>>0>57){l=-1;break e}D=d+1|0;o[M>>2]=D;v=r[(r[d>>0]|0)+-65+(5178+(_*58|0))>>0]|0;b=v&255;if((b+-1|0)>>>0<8){_=b;d=D}else break}if(!(v<<24>>24)){l=-1;break}g=(y|0)>-1;do{if(v<<24>>24==19){if(g){l=-1;break e}else w=49}else{if(g){o[a+(y<<2)>>2]=b;g=u+(y<<3)|0;y=o[g+4>>2]|0;w=A;o[w>>2]=o[g>>2];o[w+4>>2]=y;w=49;break}if(!E){l=0;break e}fS(A,b,n)}}while(0);if((w|0)==49?(w=0,!E):0){s=0;t=D;continue}d=r[d>>0]|0;d=(_|0)!=0&(d&15|0)==3?d&-33:d;g=p&-65537;y=(p&8192|0)==0?p:g;t:do{switch(d|0){case 110:switch((_&255)<<24>>24){case 0:{o[o[A>>2]>>2]=l;s=0;t=D;continue e}case 1:{o[o[A>>2]>>2]=l;s=0;t=D;continue e}case 2:{s=o[A>>2]|0;o[s>>2]=l;o[s+4>>2]=((l|0)<0)<<31>>31;s=0;t=D;continue e}case 3:{i[o[A>>2]>>1]=l;s=0;t=D;continue e}case 4:{r[o[A>>2]>>0]=l;s=0;t=D;continue e}case 6:{o[o[A>>2]>>2]=l;s=0;t=D;continue e}case 7:{s=o[A>>2]|0;o[s>>2]=l;o[s+4>>2]=((l|0)<0)<<31>>31;s=0;t=D;continue e}default:{s=0;t=D;continue e}}case 112:{d=120;f=f>>>0>8?f:8;t=y|8;w=61;break}case 88:case 120:{t=y;w=61;break}case 111:{d=A;t=o[d>>2]|0;d=o[d+4>>2]|0;b=pS(t,d,C)|0;g=T-b|0;p=0;v=5642;f=(y&8|0)==0|(f|0)>(g|0)?f:g+1|0;g=y;w=67;break}case 105:case 100:{d=A;t=o[d>>2]|0;d=o[d+4>>2]|0;if((d|0)<0){t=ZS(0,0,t|0,d|0)|0;d=x;p=A;o[p>>2]=t;o[p+4>>2]=d;p=1;v=5642;w=66;break t}else{p=(y&2049|0)!=0&1;v=(y&2048|0)==0?(y&1|0)==0?5642:5644:5643;w=66;break t}}case 117:{d=A;p=0;v=5642;t=o[d>>2]|0;d=o[d+4>>2]|0;w=66;break}case 99:{r[k>>0]=o[A>>2];t=k;p=0;v=5642;b=C;d=1;f=g;break}case 109:{d=mS(o[(Qk()|0)>>2]|0)|0;w=71;break}case 115:{d=o[A>>2]|0;d=d|0?d:5652;w=71;break}case 67:{o[P>>2]=o[A>>2];o[S>>2]=0;o[A>>2]=P;b=-1;d=P;w=75;break}case 83:{t=o[A>>2]|0;if(!f){bS(e,32,s,0,y);t=0;w=84}else{b=f;d=t;w=75}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{s=_S(e,+c[A>>3],s,f,y,d)|0;t=D;continue e}default:{p=0;v=5642;b=C;d=f;f=y}}}while(0);t:do{if((w|0)==61){y=A;_=o[y>>2]|0;y=o[y+4>>2]|0;b=dS(_,y,C,d&32)|0;v=(t&8|0)==0|(_|0)==0&(y|0)==0;p=v?0:2;v=v?5642:5642+(d>>4)|0;g=t;t=_;d=y;w=67}else if((w|0)==66){b=hS(t,d,C)|0;g=y;w=67}else if((w|0)==71){w=0;y=vS(d,0,f)|0;_=(y|0)==0;t=d;p=0;v=5642;b=_?d+f|0:y;d=_?f:y-d|0;f=g}else if((w|0)==75){w=0;v=d;t=0;f=0;while(1){p=o[v>>2]|0;if(!p)break;f=gS(O,p)|0;if((f|0)<0|f>>>0>(b-t|0)>>>0)break;t=f+t|0;if(b>>>0>t>>>0)v=v+4|0;else break}if((f|0)<0){l=-1;break e}bS(e,32,s,t,y);if(!t){t=0;w=84}else{p=0;while(1){f=o[d>>2]|0;if(!f){w=84;break t}f=gS(O,f)|0;p=f+p|0;if((p|0)>(t|0)){w=84;break t}sS(e,O,f);if(p>>>0>=t>>>0){w=84;break}else d=d+4|0}}}}while(0);if((w|0)==67){w=0;d=(t|0)!=0|(d|0)!=0;y=(f|0)!=0|d;d=((d^1)&1)+(T-b)|0;t=y?b:C;b=C;d=y?(f|0)>(d|0)?f:d:f;f=(f|0)>-1?g&-65537:g}else if((w|0)==84){w=0;bS(e,32,s,t,y^8192);s=(s|0)>(t|0)?s:t;t=D;continue}_=b-t|0;g=(d|0)<(_|0)?_:d;y=g+p|0;s=(s|0)<(y|0)?y:s;bS(e,32,s,y,f);sS(e,v,p);bS(e,48,s,y,f^65536);bS(e,48,g,_,0);sS(e,t,_);bS(e,32,s,y,f^8192);t=D}e:do{if((w|0)==87)if(!e)if(!m)l=0;else{l=1;while(1){t=o[a+(l<<2)>>2]|0;if(!t)break;fS(u+(l<<3)|0,t,n);l=l+1|0;if((l|0)>=10){l=1;break e}}while(1){if(o[a+(l<<2)>>2]|0){l=-1;break e}l=l+1|0;if((l|0)>=10){l=1;break}}}}while(0);h=R;return l|0}function aS(e){e=e|0;return 0}function lS(e){e=e|0;return}function sS(e,t,n){e=e|0;t=t|0;n=n|0;if(!(o[e>>2]&32))PS(t,n,e)|0;return}function cS(e){e=e|0;var t=0,n=0,i=0;n=o[e>>2]|0;i=(r[n>>0]|0)+-48|0;if(i>>>0<10){t=0;do{t=i+(t*10|0)|0;n=n+1|0;o[e>>2]=n;i=(r[n>>0]|0)+-48|0}while(i>>>0<10)}else t=0;return t|0}function fS(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,u=0.0;e:do{if(t>>>0<=20)do{switch(t|0){case 9:{r=(o[n>>2]|0)+(4-1)&~(4-1);t=o[r>>2]|0;o[n>>2]=r+4;o[e>>2]=t;break e}case 10:{r=(o[n>>2]|0)+(4-1)&~(4-1);t=o[r>>2]|0;o[n>>2]=r+4;r=e;o[r>>2]=t;o[r+4>>2]=((t|0)<0)<<31>>31;break e}case 11:{r=(o[n>>2]|0)+(4-1)&~(4-1);t=o[r>>2]|0;o[n>>2]=r+4;r=e;o[r>>2]=t;o[r+4>>2]=0;break e}case 12:{r=(o[n>>2]|0)+(8-1)&~(8-1);t=r;i=o[t>>2]|0;t=o[t+4>>2]|0;o[n>>2]=r+8;r=e;o[r>>2]=i;o[r+4>>2]=t;break e}case 13:{i=(o[n>>2]|0)+(4-1)&~(4-1);r=o[i>>2]|0;o[n>>2]=i+4;r=(r&65535)<<16>>16;i=e;o[i>>2]=r;o[i+4>>2]=((r|0)<0)<<31>>31;break e}case 14:{i=(o[n>>2]|0)+(4-1)&~(4-1);r=o[i>>2]|0;o[n>>2]=i+4;i=e;o[i>>2]=r&65535;o[i+4>>2]=0;break e}case 15:{i=(o[n>>2]|0)+(4-1)&~(4-1);r=o[i>>2]|0;o[n>>2]=i+4;r=(r&255)<<24>>24;i=e;o[i>>2]=r;o[i+4>>2]=((r|0)<0)<<31>>31;break e}case 16:{i=(o[n>>2]|0)+(4-1)&~(4-1);r=o[i>>2]|0;o[n>>2]=i+4;i=e;o[i>>2]=r&255;o[i+4>>2]=0;break e}case 17:{i=(o[n>>2]|0)+(8-1)&~(8-1);u=+c[i>>3];o[n>>2]=i+8;c[e>>3]=u;break e}case 18:{i=(o[n>>2]|0)+(8-1)&~(8-1);u=+c[i>>3];o[n>>2]=i+8;c[e>>3]=u;break e}default:break e}}while(0)}while(0);return}function dS(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;if(!((e|0)==0&(t|0)==0))do{n=n+-1|0;r[n>>0]=u[5694+(e&15)>>0]|0|i;e=rM(e|0,t|0,4)|0;t=x}while(!((e|0)==0&(t|0)==0));return n|0}function pS(e,t,n){e=e|0;t=t|0;n=n|0;if(!((e|0)==0&(t|0)==0))do{n=n+-1|0;r[n>>0]=e&7|48;e=rM(e|0,t|0,3)|0;t=x}while(!((e|0)==0&(t|0)==0));return n|0}function hS(e,t,n){e=e|0;t=t|0;n=n|0;var i=0;if(t>>>0>0|(t|0)==0&e>>>0>4294967295){while(1){i=cM(e|0,t|0,10,0)|0;n=n+-1|0;r[n>>0]=i&255|48;i=e;e=aM(e|0,t|0,10,0)|0;if(!(t>>>0>9|(t|0)==9&i>>>0>4294967295))break;else t=x}t=e}else t=e;if(t)while(1){n=n+-1|0;r[n>>0]=(t>>>0)%10|0|48;if(t>>>0<10)break;else t=(t>>>0)/10|0}return n|0}function mS(e){e=e|0;return kS(e,o[(TS()|0)+188>>2]|0)|0}function vS(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,u=0,a=0,l=0;a=t&255;i=(n|0)!=0;e:do{if(i&(e&3|0)!=0){u=t&255;while(1){if((r[e>>0]|0)==u<<24>>24){l=6;break e}e=e+1|0;n=n+-1|0;i=(n|0)!=0;if(!(i&(e&3|0)!=0)){l=5;break}}}else l=5}while(0);if((l|0)==5)if(i)l=6;else n=0;e:do{if((l|0)==6){u=t&255;if((r[e>>0]|0)!=u<<24>>24){i=H(a,16843009)|0;t:do{if(n>>>0>3)while(1){a=o[e>>2]^i;if((a&-2139062144^-2139062144)&a+-16843009|0)break;e=e+4|0;n=n+-4|0;if(n>>>0<=3){l=11;break t}}else l=11}while(0);if((l|0)==11)if(!n){n=0;break}while(1){if((r[e>>0]|0)==u<<24>>24)break e;e=e+1|0;n=n+-1|0;if(!n){n=0;break}}}}}while(0);return(n|0?e:0)|0}function bS(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var o=0,u=0;u=h;h=h+256|0;o=u;if((n|0)>(r|0)&(i&73728|0)==0){i=n-r|0;tM(o|0,t|0,(i>>>0<256?i:256)|0)|0;if(i>>>0>255){t=n-r|0;do{sS(e,o,256);i=i+-256|0}while(i>>>0>255);i=t&255}sS(e,o,i)}h=u;return}function gS(e,t){e=e|0;t=t|0;if(!e)e=0;else e=ES(e,t,0)|0;return e|0}function _S(e,t,n,i,a,l){e=e|0;t=+t;n=n|0;i=i|0;a=a|0;l=l|0;var s=0,c=0,f=0,d=0,p=0,m=0,v=0,b=0.0,g=0,_=0,y=0,D=0,w=0,E=0,C=0,T=0,k=0,S=0,M=0,A=0,P=0,O=0,R=0;R=h;h=h+560|0;f=R+8|0;y=R;O=R+524|0;P=O;d=R+512|0;o[y>>2]=0;A=d+12|0;yS(t)|0;if((x|0)<0){t=-t;S=1;k=5659}else{S=(a&2049|0)!=0&1;k=(a&2048|0)==0?(a&1|0)==0?5660:5665:5662}yS(t)|0;M=x&2146435072;do{if(M>>>0<2146435072|(M|0)==2146435072&0<0){b=+DS(t,y)*2.0;s=b!=0.0;if(s)o[y>>2]=(o[y>>2]|0)+-1;w=l|32;if((w|0)==97){g=l&32;v=(g|0)==0?k:k+9|0;m=S|2;s=12-i|0;do{if(!(i>>>0>11|(s|0)==0)){t=8.0;do{s=s+-1|0;t=t*16.0}while((s|0)!=0);if((r[v>>0]|0)==45){t=-(t+(-b-t));break}else{t=b+t-t;break}}else t=b}while(0);c=o[y>>2]|0;s=(c|0)<0?0-c|0:c;s=hS(s,((s|0)<0)<<31>>31,A)|0;if((s|0)==(A|0)){s=d+11|0;r[s>>0]=48}r[s+-1>>0]=(c>>31&2)+43;p=s+-2|0;r[p>>0]=l+15;d=(i|0)<1;f=(a&8|0)==0;s=O;do{M=~~t;c=s+1|0;r[s>>0]=u[5694+M>>0]|g;t=(t-+(M|0))*16.0;if((c-P|0)==1?!(f&(d&t==0.0)):0){r[c>>0]=46;s=s+2|0}else s=c}while(t!=0.0);M=s-P|0;P=A-p|0;A=(i|0)!=0&(M+-2|0)<(i|0)?i+2|0:M;s=P+m+A|0;bS(e,32,n,s,a);sS(e,v,m);bS(e,48,n,s,a^65536);sS(e,O,M);bS(e,48,A-M|0,0,0);sS(e,p,P);bS(e,32,n,s,a^8192);break}c=(i|0)<0?6:i;if(s){s=(o[y>>2]|0)+-28|0;o[y>>2]=s;t=b*268435456.0}else{t=b;s=o[y>>2]|0}M=(s|0)<0?f:f+288|0;f=M;do{C=~~t>>>0;o[f>>2]=C;f=f+4|0;t=(t-+(C>>>0))*1.0e9}while(t!=0.0);if((s|0)>0){d=M;m=f;while(1){p=(s|0)<29?s:29;s=m+-4|0;if(s>>>0>=d>>>0){f=0;do{E=nM(o[s>>2]|0,0,p|0)|0;E=eM(E|0,x|0,f|0,0)|0;C=x;D=cM(E|0,C|0,1e9,0)|0;o[s>>2]=D;f=aM(E|0,C|0,1e9,0)|0;s=s+-4|0}while(s>>>0>=d>>>0);if(f){d=d+-4|0;o[d>>2]=f}}f=m;while(1){if(f>>>0<=d>>>0)break;s=f+-4|0;if(!(o[s>>2]|0))f=s;else break}s=(o[y>>2]|0)-p|0;o[y>>2]=s;if((s|0)>0)m=f;else break}}else d=M;if((s|0)<0){i=((c+25|0)/9|0)+1|0;_=(w|0)==102;do{g=0-s|0;g=(g|0)<9?g:9;if(d>>>0>>0){p=(1<>>g;v=0;s=d;do{C=o[s>>2]|0;o[s>>2]=(C>>>g)+v;v=H(C&p,m)|0;s=s+4|0}while(s>>>0>>0);s=(o[d>>2]|0)==0?d+4|0:d;if(!v){d=s;s=f}else{o[f>>2]=v;d=s;s=f+4|0}}else{d=(o[d>>2]|0)==0?d+4|0:d;s=f}f=_?M:d;f=(s-f>>2|0)>(i|0)?f+(i<<2)|0:s;s=(o[y>>2]|0)+g|0;o[y>>2]=s}while((s|0)<0);s=d;i=f}else{s=d;i=f}C=M;if(s>>>0>>0){f=(C-s>>2)*9|0;p=o[s>>2]|0;if(p>>>0>=10){d=10;do{d=d*10|0;f=f+1|0}while(p>>>0>=d>>>0)}}else f=0;_=(w|0)==103;D=(c|0)!=0;d=c-((w|0)!=102?f:0)+((D&_)<<31>>31)|0;if((d|0)<(((i-C>>2)*9|0)+-9|0)){d=d+9216|0;g=M+4+(((d|0)/9|0)+-1024<<2)|0;d=((d|0)%9|0)+1|0;if((d|0)<9){p=10;do{p=p*10|0;d=d+1|0}while((d|0)!=9)}else p=10;m=o[g>>2]|0;v=(m>>>0)%(p>>>0)|0;d=(g+4|0)==(i|0);if(!(d&(v|0)==0)){b=(((m>>>0)/(p>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;E=(p|0)/2|0;t=v>>>0>>0?.5:d&(v|0)==(E|0)?1.0:1.5;if(S){E=(r[k>>0]|0)==45;t=E?-t:t;b=E?-b:b}d=m-v|0;o[g>>2]=d;if(b+t!=b){E=d+p|0;o[g>>2]=E;if(E>>>0>999999999){f=g;while(1){d=f+-4|0;o[f>>2]=0;if(d>>>0>>0){s=s+-4|0;o[s>>2]=0}E=(o[d>>2]|0)+1|0;o[d>>2]=E;if(E>>>0>999999999)f=d;else break}}else d=g;f=(C-s>>2)*9|0;m=o[s>>2]|0;if(m>>>0>=10){p=10;do{p=p*10|0;f=f+1|0}while(m>>>0>=p>>>0)}}else d=g}else d=g;d=d+4|0;d=i>>>0>d>>>0?d:i;E=s}else{d=i;E=s}w=d;while(1){if(w>>>0<=E>>>0){y=0;break}s=w+-4|0;if(!(o[s>>2]|0))w=s;else{y=1;break}}i=0-f|0;do{if(_){s=((D^1)&1)+c|0;if((s|0)>(f|0)&(f|0)>-5){p=l+-1|0;c=s+-1-f|0}else{p=l+-2|0;c=s+-1|0}s=a&8;if(!s){if(y?(T=o[w+-4>>2]|0,(T|0)!=0):0){if(!((T>>>0)%10|0)){d=0;s=10;do{s=s*10|0;d=d+1|0}while(!((T>>>0)%(s>>>0)|0|0))}else d=0}else d=9;s=((w-C>>2)*9|0)+-9|0;if((p|32|0)==102){g=s-d|0;g=(g|0)>0?g:0;c=(c|0)<(g|0)?c:g;g=0;break}else{g=s+f-d|0;g=(g|0)>0?g:0;c=(c|0)<(g|0)?c:g;g=0;break}}else g=s}else{p=l;g=a&8}}while(0);_=c|g;m=(_|0)!=0&1;v=(p|32|0)==102;if(v){D=0;s=(f|0)>0?f:0}else{s=(f|0)<0?i:f;s=hS(s,((s|0)<0)<<31>>31,A)|0;d=A;if((d-s|0)<2)do{s=s+-1|0;r[s>>0]=48}while((d-s|0)<2);r[s+-1>>0]=(f>>31&2)+43;s=s+-2|0;r[s>>0]=p;D=s;s=d-s|0}s=S+1+c+m+s|0;bS(e,32,n,s,a);sS(e,k,S);bS(e,48,n,s,a^65536);if(v){p=E>>>0>M>>>0?M:E;g=O+9|0;m=g;v=O+8|0;d=p;do{f=hS(o[d>>2]|0,0,g)|0;if((d|0)==(p|0)){if((f|0)==(g|0)){r[v>>0]=48;f=v}}else if(f>>>0>O>>>0){tM(O|0,48,f-P|0)|0;do{f=f+-1|0}while(f>>>0>O>>>0)}sS(e,f,m-f|0);d=d+4|0}while(d>>>0<=M>>>0);if(_|0)sS(e,5710,1);if(d>>>0>>0&(c|0)>0)while(1){f=hS(o[d>>2]|0,0,g)|0;if(f>>>0>O>>>0){tM(O|0,48,f-P|0)|0;do{f=f+-1|0}while(f>>>0>O>>>0)}sS(e,f,(c|0)<9?c:9);d=d+4|0;f=c+-9|0;if(!(d>>>0>>0&(c|0)>9)){c=f;break}else c=f}bS(e,48,c+9|0,9,0)}else{_=y?w:E+4|0;if((c|0)>-1){y=O+9|0;g=(g|0)==0;i=y;m=0-P|0;v=O+8|0;p=E;do{f=hS(o[p>>2]|0,0,y)|0;if((f|0)==(y|0)){r[v>>0]=48;f=v}do{if((p|0)==(E|0)){d=f+1|0;sS(e,f,1);if(g&(c|0)<1){f=d;break}sS(e,5710,1);f=d}else{if(f>>>0<=O>>>0)break;tM(O|0,48,f+m|0)|0;do{f=f+-1|0}while(f>>>0>O>>>0)}}while(0);P=i-f|0;sS(e,f,(c|0)>(P|0)?P:c);c=c-P|0;p=p+4|0}while(p>>>0<_>>>0&(c|0)>-1)}bS(e,48,c+18|0,18,0);sS(e,D,A-D|0)}bS(e,32,n,s,a^8192)}else{O=(l&32|0)!=0;s=S+3|0;bS(e,32,n,s,a&-65537);sS(e,k,S);sS(e,t!=t|0.0!=0.0?O?5686:5690:O?5678:5682,3);bS(e,32,n,s,a^8192)}}while(0);h=R;return((s|0)<(n|0)?n:s)|0}function yS(e){e=+e;var t=0;c[d>>3]=e;t=o[d>>2]|0;x=o[d+4>>2]|0;return t|0}function DS(e,t){e=+e;t=t|0;return+ +wS(e,t)}function wS(e,t){e=+e;t=t|0;var n=0,r=0,i=0;c[d>>3]=e;n=o[d>>2]|0;r=o[d+4>>2]|0;i=rM(n|0,r|0,52)|0;switch(i&2047){case 0:{if(e!=0.0){e=+wS(e*18446744073709551616.0,t);n=(o[t>>2]|0)+-64|0}else n=0;o[t>>2]=n;break}case 2047:break;default:{o[t>>2]=(i&2047)+-1022;o[d>>2]=n;o[d+4>>2]=r&-2146435073|1071644672;e=+c[d>>3]}}return+e}function ES(e,t,n){e=e|0;t=t|0;n=n|0;do{if(e){if(t>>>0<128){r[e>>0]=t;e=1;break}if(!(o[o[(CS()|0)+188>>2]>>2]|0))if((t&-128|0)==57216){r[e>>0]=t;e=1;break}else{o[(Qk()|0)>>2]=84;e=-1;break}if(t>>>0<2048){r[e>>0]=t>>>6|192;r[e+1>>0]=t&63|128;e=2;break}if(t>>>0<55296|(t&-8192|0)==57344){r[e>>0]=t>>>12|224;r[e+1>>0]=t>>>6&63|128;r[e+2>>0]=t&63|128;e=3;break}if((t+-65536|0)>>>0<1048576){r[e>>0]=t>>>18|240;r[e+1>>0]=t>>>12&63|128;r[e+2>>0]=t>>>6&63|128;r[e+3>>0]=t&63|128;e=4;break}else{o[(Qk()|0)>>2]=84;e=-1;break}}else e=1}while(0);return e|0}function CS(){return eS()|0}function TS(){return eS()|0}function kS(e,t){e=e|0;t=t|0;var n=0,i=0;i=0;while(1){if((u[5712+i>>0]|0)==(e|0)){e=2;break}n=i+1|0;if((n|0)==87){n=5800;i=87;e=5;break}else i=n}if((e|0)==2)if(!i)n=5800;else{n=5800;e=5}if((e|0)==5)while(1){do{e=n;n=n+1|0}while((r[e>>0]|0)!=0);i=i+-1|0;if(!i)break;else e=5}return SS(n,o[t+20>>2]|0)|0}function SS(e,t){e=e|0;t=t|0;return MS(e,t)|0}function MS(e,t){e=e|0;t=t|0;if(!t)t=0;else t=xS(o[t>>2]|0,o[t+4>>2]|0,e)|0;return(t|0?t:e)|0}function xS(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0,h=0;h=(o[e>>2]|0)+1794895138|0;a=AS(o[e+8>>2]|0,h)|0;i=AS(o[e+12>>2]|0,h)|0;u=AS(o[e+16>>2]|0,h)|0;e:do{if((a>>>0>>2>>>0?(p=t-(a<<2)|0,i>>>0

>>0&u>>>0

>>0):0)?((u|i)&3|0)==0:0){p=i>>>2;d=u>>>2;f=0;while(1){s=a>>>1;c=f+s|0;l=c<<1;u=l+p|0;i=AS(o[e+(u<<2)>>2]|0,h)|0;u=AS(o[e+(u+1<<2)>>2]|0,h)|0;if(!(u>>>0>>0&i>>>0<(t-u|0)>>>0)){i=0;break e}if(r[e+(u+i)>>0]|0){i=0;break e}i=rS(n,e+u|0)|0;if(!i)break;i=(i|0)<0;if((a|0)==1){i=0;break e}else{f=i?f:c;a=i?s:a-s|0}}i=l+d|0;u=AS(o[e+(i<<2)>>2]|0,h)|0;i=AS(o[e+(i+1<<2)>>2]|0,h)|0;if(i>>>0>>0&u>>>0<(t-i|0)>>>0)i=(r[e+(i+u)>>0]|0)==0?e+i|0:0;else i=0}else i=0}while(0);return i|0}function AS(e,t){e=e|0;t=t|0;var n=0;n=fM(e|0)|0;return((t|0)==0?e:n)|0}function PS(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,u=0,a=0,l=0,s=0;i=n+16|0;u=o[i>>2]|0;if(!u){if(!(OS(n)|0)){u=o[i>>2]|0;a=5}else i=0}else a=5;e:do{if((a|0)==5){s=n+20|0;l=o[s>>2]|0;i=l;if((u-l|0)>>>0>>0){i=_x[o[n+36>>2]&7](n,e,t)|0;break}t:do{if((r[n+75>>0]|0)>-1){l=t;while(1){if(!l){a=0;u=e;break t}u=l+-1|0;if((r[e+u>>0]|0)==10)break;else l=u}i=_x[o[n+36>>2]&7](n,e,l)|0;if(i>>>0>>0)break e;a=l;u=e+l|0;t=t-l|0;i=o[s>>2]|0}else{a=0;u=e}}while(0);iM(i|0,u|0,t|0)|0;o[s>>2]=(o[s>>2]|0)+t;i=a+t|0}}while(0);return i|0}function OS(e){e=e|0;var t=0,n=0;t=e+74|0;n=r[t>>0]|0;r[t>>0]=n+255|n;t=o[e>>2]|0;if(!(t&8)){o[e+8>>2]=0;o[e+4>>2]=0;n=o[e+44>>2]|0;o[e+28>>2]=n;o[e+20>>2]=n;o[e+16>>2]=n+(o[e+48>>2]|0);e=0}else{o[e>>2]=t|32;e=-1}return e|0}function RS(e,t){e=K(e);t=K(t);var n=0,r=0;n=NS(e)|0;do{if((n&2147483647)>>>0<=2139095040){r=NS(t)|0;if((r&2147483647)>>>0<=2139095040)if((r^n|0)<0){e=(n|0)<0?t:e;break}else{e=e>2]=e,o[d>>2]|0)|0}function IS(e,t){e=K(e);t=K(t);var n=0,r=0;n=FS(e)|0;do{if((n&2147483647)>>>0<=2139095040){r=FS(t)|0;if((r&2147483647)>>>0<=2139095040)if((r^n|0)<0){e=(n|0)<0?e:t;break}else{e=e>2]=e,o[d>>2]|0)|0}function BS(e,t){e=K(e);t=K(t);var n=0,r=0,i=0,u=0,a=0,l=0,c=0,f=0;u=(s[d>>2]=e,o[d>>2]|0);l=(s[d>>2]=t,o[d>>2]|0);n=u>>>23&255;a=l>>>23&255;c=u&-2147483648;i=l<<1;e:do{if((i|0)!=0?!((n|0)==255|((LS(t)|0)&2147483647)>>>0>2139095040):0){r=u<<1;if(r>>>0<=i>>>0){t=K(e*K(0.0));return K((r|0)==(i|0)?t:e)}if(!n){n=u<<9;if((n|0)>-1){r=n;n=0;do{n=n+-1|0;r=r<<1}while((r|0)>-1)}else n=0;r=u<<1-n}else r=u&8388607|8388608;if(!a){u=l<<9;if((u|0)>-1){i=0;do{i=i+-1|0;u=u<<1}while((u|0)>-1)}else i=0;a=i;l=l<<1-i}else l=l&8388607|8388608;i=r-l|0;u=(i|0)>-1;t:do{if((n|0)>(a|0)){while(1){if(u)if(!i)break;else r=i;r=r<<1;n=n+-1|0;i=r-l|0;u=(i|0)>-1;if((n|0)<=(a|0))break t}t=K(e*K(0.0));break e}}while(0);if(u)if(!i){t=K(e*K(0.0));break}else r=i;if(r>>>0<8388608)do{r=r<<1;n=n+-1|0}while(r>>>0<8388608);if((n|0)>0)n=r+-8388608|n<<23;else n=r>>>(1-n|0);t=(o[d>>2]=n|c,K(s[d>>2]))}else f=3}while(0);if((f|0)==3){t=K(e*t);t=K(t/t)}return K(t)}function LS(e){e=K(e);return(s[d>>2]=e,o[d>>2]|0)|0}function US(e,t){e=e|0;t=t|0;return oS(o[582]|0,e,t)|0}function jS(e){e=e|0;Ke()}function WS(e){e=e|0;return}function zS(e,t){e=e|0;t=t|0;return 0}function qS(e){e=e|0;if((HS(e+4|0)|0)==-1){hx[o[(o[e>>2]|0)+8>>2]&127](e);e=1}else e=0;return e|0}function HS(e){e=e|0;var t=0;t=o[e>>2]|0;o[e>>2]=t+-1;return t+-1|0}function GS(e){e=e|0;if(qS(e)|0)VS(e);return}function VS(e){e=e|0;var t=0;t=e+8|0;if(!((o[t>>2]|0)!=0?(HS(t)|0)!=-1:0))hx[o[(o[e>>2]|0)+16>>2]&127](e);return}function YS(e){e=e|0;var t=0;t=(e|0)==0?1:e;while(1){e=Gk(t)|0;if(e|0)break;e=JS()|0;if(!e){e=0;break}Ox[e&0]()}return e|0}function KS(e){e=e|0;return YS(e)|0}function $S(e){e=e|0;Vk(e);return}function XS(e){e=e|0;if((r[e+11>>0]|0)<0)$S(o[e>>2]|0);return}function JS(){var e=0;e=o[2923]|0;o[2923]=e+0;return e|0}function QS(){}function ZS(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;r=t-r-(n>>>0>e>>>0|0)>>>0;return(x=r,e-n>>>0|0)|0}function eM(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;n=e+n>>>0;return(x=t+r+(n>>>0>>0|0)>>>0,n|0)|0}function tM(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,u=0,a=0,l=0;a=e+n|0;t=t&255;if((n|0)>=67){while(e&3){r[e>>0]=t;e=e+1|0}i=a&-4|0;u=i-64|0;l=t|t<<8|t<<16|t<<24;while((e|0)<=(u|0)){o[e>>2]=l;o[e+4>>2]=l;o[e+8>>2]=l;o[e+12>>2]=l;o[e+16>>2]=l;o[e+20>>2]=l;o[e+24>>2]=l;o[e+28>>2]=l;o[e+32>>2]=l;o[e+36>>2]=l;o[e+40>>2]=l;o[e+44>>2]=l;o[e+48>>2]=l;o[e+52>>2]=l;o[e+56>>2]=l;o[e+60>>2]=l;e=e+64|0}while((e|0)<(i|0)){o[e>>2]=l;e=e+4|0}}while((e|0)<(a|0)){r[e>>0]=t;e=e+1|0}return a-n|0}function nM(e,t,n){e=e|0;t=t|0;n=n|0;if((n|0)<32){x=t<>>32-n;return e<>>n;return e>>>n|(t&(1<>>n-32|0}function iM(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,u=0,a=0;if((n|0)>=8192)return qe(e|0,t|0,n|0)|0;a=e|0;u=e+n|0;if((e&3)==(t&3)){while(e&3){if(!n)return a|0;r[e>>0]=r[t>>0]|0;e=e+1|0;t=t+1|0;n=n-1|0}n=u&-4|0;i=n-64|0;while((e|0)<=(i|0)){o[e>>2]=o[t>>2];o[e+4>>2]=o[t+4>>2];o[e+8>>2]=o[t+8>>2];o[e+12>>2]=o[t+12>>2];o[e+16>>2]=o[t+16>>2];o[e+20>>2]=o[t+20>>2];o[e+24>>2]=o[t+24>>2];o[e+28>>2]=o[t+28>>2];o[e+32>>2]=o[t+32>>2];o[e+36>>2]=o[t+36>>2];o[e+40>>2]=o[t+40>>2];o[e+44>>2]=o[t+44>>2];o[e+48>>2]=o[t+48>>2];o[e+52>>2]=o[t+52>>2];o[e+56>>2]=o[t+56>>2];o[e+60>>2]=o[t+60>>2];e=e+64|0;t=t+64|0}while((e|0)<(n|0)){o[e>>2]=o[t>>2];e=e+4|0;t=t+4|0}}else{n=u-4|0;while((e|0)<(n|0)){r[e>>0]=r[t>>0]|0;r[e+1>>0]=r[t+1>>0]|0;r[e+2>>0]=r[t+2>>0]|0;r[e+3>>0]=r[t+3>>0]|0;e=e+4|0;t=t+4|0}}while((e|0)<(u|0)){r[e>>0]=r[t>>0]|0;e=e+1|0;t=t+1|0}return a|0}function oM(e){e=e|0;var t=0;t=r[v+(e&255)>>0]|0;if((t|0)<8)return t|0;t=r[v+(e>>8&255)>>0]|0;if((t|0)<8)return t+8|0;t=r[v+(e>>16&255)>>0]|0;if((t|0)<8)return t+16|0;return(r[v+(e>>>24)>>0]|0)+24|0}function uM(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var u=0,a=0,l=0,s=0,c=0,f=0,d=0,p=0,h=0,m=0;f=e;s=t;c=s;a=n;p=r;l=p;if(!c){u=(i|0)!=0;if(!l){if(u){o[i>>2]=(f>>>0)%(a>>>0);o[i+4>>2]=0}p=0;i=(f>>>0)/(a>>>0)>>>0;return(x=p,i)|0}else{if(!u){p=0;i=0;return(x=p,i)|0}o[i>>2]=e|0;o[i+4>>2]=t&0;p=0;i=0;return(x=p,i)|0}}u=(l|0)==0;do{if(a){if(!u){u=(Y(l|0)|0)-(Y(c|0)|0)|0;if(u>>>0<=31){d=u+1|0;l=31-u|0;t=u-31>>31;a=d;e=f>>>(d>>>0)&t|c<>>(d>>>0)&t;u=0;l=f<>2]=e|0;o[i+4>>2]=s|t&0;p=0;i=0;return(x=p,i)|0}u=a-1|0;if(u&a|0){l=(Y(a|0)|0)+33-(Y(c|0)|0)|0;m=64-l|0;d=32-l|0;s=d>>31;h=l-32|0;t=h>>31;a=l;e=d-1>>31&c>>>(h>>>0)|(c<>>(l>>>0))&t;t=t&c>>>(l>>>0);u=f<>>(h>>>0))&s|f<>31;break}if(i|0){o[i>>2]=u&f;o[i+4>>2]=0}if((a|0)==1){h=s|t&0;m=e|0|0;return(x=h,m)|0}else{m=oM(a|0)|0;h=c>>>(m>>>0)|0;m=c<<32-m|f>>>(m>>>0)|0;return(x=h,m)|0}}else{if(u){if(i|0){o[i>>2]=(c>>>0)%(a>>>0);o[i+4>>2]=0}h=0;m=(c>>>0)/(a>>>0)>>>0;return(x=h,m)|0}if(!f){if(i|0){o[i>>2]=0;o[i+4>>2]=(c>>>0)%(l>>>0)}h=0;m=(c>>>0)/(l>>>0)>>>0;return(x=h,m)|0}u=l-1|0;if(!(u&l)){if(i|0){o[i>>2]=e|0;o[i+4>>2]=u&c|t&0}h=0;m=c>>>((oM(l|0)|0)>>>0);return(x=h,m)|0}u=(Y(l|0)|0)-(Y(c|0)|0)|0;if(u>>>0<=30){t=u+1|0;l=31-u|0;a=t;e=c<>>(t>>>0);t=c>>>(t>>>0);u=0;l=f<>2]=e|0;o[i+4>>2]=s|t&0;h=0;m=0;return(x=h,m)|0}}while(0);if(!a){c=l;s=0;l=0}else{d=n|0|0;f=p|r&0;c=eM(d|0,f|0,-1,-1)|0;n=x;s=l;l=0;do{r=s;s=u>>>31|s<<1;u=l|u<<1;r=e<<1|r>>>31|0;p=e>>>31|t<<1|0;ZS(c|0,n|0,r|0,p|0)|0;m=x;h=m>>31|((m|0)<0?-1:0)<<1;l=h&1;e=ZS(r|0,p|0,h&d|0,(((m|0)<0?-1:0)>>31|((m|0)<0?-1:0)<<1)&f|0)|0;t=x;a=a-1|0}while((a|0)!=0);c=s;s=0}a=0;if(i|0){o[i>>2]=e;o[i+4>>2]=t}h=(u|0)>>>31|(c|a)<<1|(a<<1|u>>>31)&0|s;m=(u<<1|0>>>31)&-2|l;return(x=h,m)|0}function aM(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;return uM(e,t,n,r,0)|0}function lM(e){e=e|0;var t=0,n=0;n=e+15&-16|0;t=o[f>>2]|0;e=t+n|0;if((n|0)>0&(e|0)<(t|0)|(e|0)<0){Z()|0;Ge(12);return-1}o[f>>2]=e;if((e|0)>(Q()|0)?(J()|0)==0:0){o[f>>2]=t;Ge(12);return-1}return t|0}function sM(e,t,n){e=e|0;t=t|0;n=n|0;var i=0;if((t|0)<(e|0)&(e|0)<(t+n|0)){i=e;t=t+n|0;e=e+n|0;while((n|0)>0){e=e-1|0;t=t-1|0;n=n-1|0;r[e>>0]=r[t>>0]|0}e=i}else iM(e,t,n)|0;return e|0}function cM(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,u=0;u=h;h=h+16|0;i=u|0;uM(e,t,n,r,i)|0;h=u;return(x=o[i+4>>2]|0,o[i>>2]|0)|0}function fM(e){e=e|0;return(e&255)<<24|(e>>8&255)<<16|(e>>16&255)<<8|e>>>24|0}function dM(e,t,n,r,i,o){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;o=o|0;cx[e&1](t|0,n|0,r|0,i|0,o|0)}function pM(e,t,n){e=e|0;t=t|0;n=K(n);fx[e&1](t|0,K(n))}function hM(e,t,n){e=e|0;t=t|0;n=+n;dx[e&31](t|0,+n)}function mM(e,t,n,r){e=e|0;t=t|0;n=K(n);r=K(r);return K(px[e&0](t|0,K(n),K(r)))}function vM(e,t){e=e|0;t=t|0;hx[e&127](t|0)}function bM(e,t,n){e=e|0;t=t|0;n=n|0;mx[e&31](t|0,n|0)}function gM(e,t){e=e|0;t=t|0;return vx[e&31](t|0)|0}function _M(e,t,n,r,i){e=e|0;t=t|0;n=+n;r=+r;i=i|0;bx[e&1](t|0,+n,+r,i|0)}function yM(e,t,n,r){e=e|0;t=t|0;n=+n;r=+r;gx[e&1](t|0,+n,+r)}function DM(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;return _x[e&7](t|0,n|0,r|0)|0}function wM(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;return+yx[e&1](t|0,n|0,r|0)}function EM(e,t){e=e|0;t=t|0;return+Dx[e&15](t|0)}function CM(e,t,n){e=e|0;t=t|0;n=+n;return wx[e&1](t|0,+n)|0}function TM(e,t,n){e=e|0;t=t|0;n=n|0;return Ex[e&15](t|0,n|0)|0}function kM(e,t,n,r,i,o){e=e|0;t=t|0;n=n|0;r=+r;i=+i;o=o|0;Cx[e&1](t|0,n|0,+r,+i,o|0)}function SM(e,t,n,r,i,o,u){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;o=o|0;u=u|0;Tx[e&1](t|0,n|0,r|0,i|0,o|0,u|0)}function MM(e,t,n){e=e|0;t=t|0;n=n|0;return+kx[e&7](t|0,n|0)}function xM(e){e=e|0;return Sx[e&7]()|0}function AM(e,t,n,r,i,o){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;o=o|0;return Mx[e&1](t|0,n|0,r|0,i|0,o|0)|0}function PM(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=+i;xx[e&1](t|0,n|0,r|0,+i)}function OM(e,t,n,r,i,o,u){e=e|0;t=t|0;n=n|0;r=K(r);i=i|0;o=K(o);u=u|0;Ax[e&1](t|0,n|0,K(r),i|0,K(o),u|0)}function RM(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;Px[e&15](t|0,n|0,r|0)}function NM(e){e=e|0;Ox[e&0]()}function IM(e,t,n,r){e=e|0;t=t|0;n=n|0;r=+r;Rx[e&15](t|0,n|0,+r)}function FM(e,t,n){e=e|0;t=+t;n=+n;return Nx[e&1](+t,+n)|0}function BM(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;Ix[e&15](t|0,n|0,r|0,i|0)}function LM(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;$(0)}function UM(e,t){e=e|0;t=K(t);$(1)}function jM(e,t){e=e|0;t=+t;$(2)}function WM(e,t,n){e=e|0;t=K(t);n=K(n);$(3);return ft}function zM(e){e=e|0;$(4)}function qM(e,t){e=e|0;t=t|0;$(5)}function HM(e){e=e|0;$(6);return 0}function GM(e,t,n,r){e=e|0;t=+t;n=+n;r=r|0;$(7)}function VM(e,t,n){e=e|0;t=+t;n=+n;$(8)}function YM(e,t,n){e=e|0;t=t|0;n=n|0;$(9);return 0}function KM(e,t,n){e=e|0;t=t|0;n=n|0;$(10);return 0.0}function $M(e){e=e|0;$(11);return 0.0}function XM(e,t){e=e|0;t=+t;$(12);return 0}function JM(e,t){e=e|0;t=t|0;$(13);return 0}function QM(e,t,n,r,i){e=e|0;t=t|0;n=+n;r=+r;i=i|0;$(14)}function ZM(e,t,n,r,i,o){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;o=o|0;$(15)}function ex(e,t){e=e|0;t=t|0;$(16);return 0.0}function tx(){$(17);return 0}function nx(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;$(18);return 0}function rx(e,t,n,r){e=e|0;t=t|0;n=n|0;r=+r;$(19)}function ix(e,t,n,r,i,o){e=e|0;t=t|0;n=K(n);r=r|0;i=K(i);o=o|0;$(20)}function ox(e,t,n){e=e|0;t=t|0;n=n|0;$(21)}function ux(){$(22)}function ax(e,t,n){e=e|0;t=t|0;n=+n;$(23)}function lx(e,t){e=+e;t=+t;$(24);return 0}function sx(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;$(25)}var cx=[LM,Ew];var fx=[UM,Gi];var dx=[jM,go,_o,yo,Do,wo,Eo,Co,ko,So,xo,Ao,Po,Oo,Ro,No,Io,Fo,Bo,jM,jM,jM,jM,jM,jM,jM,jM,jM,jM,jM,jM,jM];var px=[WM];var hx=[zM,WS,hl,ml,vl,$d,Xd,Jd,gy,_y,yy,ow,uw,aw,uk,ak,lk,yt,Xi,to,To,Mo,Uu,ju,$a,Cl,zl,ps,Rs,rc,kc,Gc,df,Nf,Zf,gd,Bd,bp,Fp,th,yh,Uh,im,km,Hm,av,Mv,zi,cb,xb,Jb,gg,Fg,o_,b_,y_,j_,q_,ay,Ey,ky,Vy,pD,Tl,AE,pC,PC,$C,yT,LT,XT,ZT,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM,zM];var mx=[qM,no,ro,uo,ao,lo,so,co,fo,mo,vo,bo,eu,ru,iu,ou,uu,au,lu,pu,bu,$u,Am,Ym,wg,RE,DD,eC,qM,qM,qM,qM];var vx=[HM,Kk,$i,Wo,Go,Vo,Yo,Ko,$o,Xo,Qo,Zo,hu,mu,Wu,Pv,jg,$y,LE,jE,HM,HM,HM,HM,HM,HM,HM,HM,HM,HM,HM,HM];var bx=[GM,zu];var gx=[VM,cy];var _x=[YM,$k,Xk,nS,ac,Dp,hb,ZC];var yx=[KM,rd];var Dx=[$M,tu,nu,su,qu,Hu,Gu,Vu,Yu,Ku,$M,$M,$M,$M,$M,$M];var wx=[XM,p_];var Ex=[JM,zS,vu,tl,bs,Ac,$c,Wd,jp,fv,Vi,IC,JM,JM,JM,JM];var Cx=[QM,Vl];var Tx=[ZM,CT];var kx=[ex,cu,Xu,Ju,Qu,wd,ex,ex];var Sx=[tx,Zu,Yi,ji,T_,Y_,Py,rk];var Mx=[nx,Fr];var xx=[rx,Ch];var Ax=[ix,_u];var Px=[ox,zo,Jo,fu,du,Bs,vf,qh,lm,Hi,Qw,bC,zT,ox,ox,ox];var Ox=[ux];var Rx=[ax,io,oo,po,ho,Lo,Uo,jo,oh,Rb,l_,ax,ax,ax,ax,ax];var Nx=[lx,my];var Ix=[sx,Lf,Uv,tg,$g,P_,Z_,Ly,gD,GE,hk,sx,sx,sx,sx,sx];return{_llvm_bswap_i32:fM,dynCall_idd:FM,dynCall_i:xM,_i64Subtract:ZS,___udivdi3:aM,dynCall_vif:pM,setThrew:vt,dynCall_viii:RM,_bitshift64Lshr:rM,_bitshift64Shl:nM,dynCall_vi:vM,dynCall_viiddi:kM,dynCall_diii:wM,dynCall_iii:TM,_memset:tM,_sbrk:lM,_memcpy:iM,__GLOBAL__sub_I_Yoga_cpp:Ui,dynCall_vii:bM,___uremdi3:cM,dynCall_vid:hM,stackAlloc:dt,_nbind_init:xk,getTempRet0:gt,dynCall_di:EM,dynCall_iid:CM,setTempRet0:bt,_i64Add:eM,dynCall_fiff:mM,dynCall_iiii:DM,_emscripten_get_global_libc:Yk,dynCall_viid:IM,dynCall_viiid:PM,dynCall_viififi:OM,dynCall_ii:gM,__GLOBAL__sub_I_Binding_cc:DE,dynCall_viiii:BM,dynCall_iiiiii:AM,stackSave:pt,dynCall_viiiii:dM,__GLOBAL__sub_I_nbind_cc:ea,dynCall_vidd:yM,_free:Vk,runPostSets:QS,dynCall_viiiiii:SM,establishStackSpace:mt,_memmove:sM,stackRestore:ht,_malloc:Gk,__GLOBAL__sub_I_common_cc:iD,dynCall_viddi:_M,dynCall_dii:MM,dynCall_v:NM}}(Module.asmGlobalArg,Module.asmLibraryArg,buffer),_llvm_bswap_i32=Module._llvm_bswap_i32=asm._llvm_bswap_i32,getTempRet0=Module.getTempRet0=asm.getTempRet0,___udivdi3=Module.___udivdi3=asm.___udivdi3,setThrew=Module.setThrew=asm.setThrew,_bitshift64Lshr=Module._bitshift64Lshr=asm._bitshift64Lshr,_bitshift64Shl=Module._bitshift64Shl=asm._bitshift64Shl,_memset=Module._memset=asm._memset,_sbrk=Module._sbrk=asm._sbrk,_memcpy=Module._memcpy=asm._memcpy,stackAlloc=Module.stackAlloc=asm.stackAlloc,___uremdi3=Module.___uremdi3=asm.___uremdi3,_nbind_init=Module._nbind_init=asm._nbind_init,_i64Subtract=Module._i64Subtract=asm._i64Subtract,setTempRet0=Module.setTempRet0=asm.setTempRet0,_i64Add=Module._i64Add=asm._i64Add,_emscripten_get_global_libc=Module._emscripten_get_global_libc=asm._emscripten_get_global_libc,__GLOBAL__sub_I_Yoga_cpp=Module.__GLOBAL__sub_I_Yoga_cpp=asm.__GLOBAL__sub_I_Yoga_cpp,__GLOBAL__sub_I_Binding_cc=Module.__GLOBAL__sub_I_Binding_cc=asm.__GLOBAL__sub_I_Binding_cc,stackSave=Module.stackSave=asm.stackSave,__GLOBAL__sub_I_nbind_cc=Module.__GLOBAL__sub_I_nbind_cc=asm.__GLOBAL__sub_I_nbind_cc,_free=Module._free=asm._free,runPostSets=Module.runPostSets=asm.runPostSets,establishStackSpace=Module.establishStackSpace=asm.establishStackSpace,_memmove=Module._memmove=asm._memmove,stackRestore=Module.stackRestore=asm.stackRestore,_malloc=Module._malloc=asm._malloc,__GLOBAL__sub_I_common_cc=Module.__GLOBAL__sub_I_common_cc=asm.__GLOBAL__sub_I_common_cc,dynCall_viiiii=Module.dynCall_viiiii=asm.dynCall_viiiii,dynCall_vif=Module.dynCall_vif=asm.dynCall_vif,dynCall_vid=Module.dynCall_vid=asm.dynCall_vid,dynCall_fiff=Module.dynCall_fiff=asm.dynCall_fiff,dynCall_vi=Module.dynCall_vi=asm.dynCall_vi,dynCall_vii=Module.dynCall_vii=asm.dynCall_vii,dynCall_ii=Module.dynCall_ii=asm.dynCall_ii,dynCall_viddi=Module.dynCall_viddi=asm.dynCall_viddi,dynCall_vidd=Module.dynCall_vidd=asm.dynCall_vidd,dynCall_iiii=Module.dynCall_iiii=asm.dynCall_iiii,dynCall_diii=Module.dynCall_diii=asm.dynCall_diii,dynCall_di=Module.dynCall_di=asm.dynCall_di,dynCall_iid=Module.dynCall_iid=asm.dynCall_iid,dynCall_iii=Module.dynCall_iii=asm.dynCall_iii,dynCall_viiddi=Module.dynCall_viiddi=asm.dynCall_viiddi,dynCall_viiiiii=Module.dynCall_viiiiii=asm.dynCall_viiiiii,dynCall_dii=Module.dynCall_dii=asm.dynCall_dii,dynCall_i=Module.dynCall_i=asm.dynCall_i,dynCall_iiiiii=Module.dynCall_iiiiii=asm.dynCall_iiiiii,dynCall_viiid=Module.dynCall_viiid=asm.dynCall_viiid,dynCall_viififi=Module.dynCall_viififi=asm.dynCall_viififi,dynCall_viii=Module.dynCall_viii=asm.dynCall_viii,dynCall_v=Module.dynCall_v=asm.dynCall_v,dynCall_viid=Module.dynCall_viid=asm.dynCall_viid,dynCall_idd=Module.dynCall_idd=asm.dynCall_idd,dynCall_viiii=Module.dynCall_viiii=asm.dynCall_viiii,initialStackTop;function ExitStatus(e){this.name="ExitStatus",this.message="Program terminated with exit("+e+")",this.status=e}Runtime.stackAlloc=Module.stackAlloc,Runtime.stackSave=Module.stackSave,Runtime.stackRestore=Module.stackRestore,Runtime.establishStackSpace=Module.establishStackSpace,Runtime.setTempRet0=Module.setTempRet0,Runtime.getTempRet0=Module.getTempRet0,Module.asm=asm,ExitStatus.prototype=new Error,ExitStatus.prototype.constructor=ExitStatus;var preloadStartTime=null,calledMain=!1;function run(e){function t(){Module.calledRun||(Module.calledRun=!0,ABORT||(ensureInitRuntime(),preMain(),Module.onRuntimeInitialized&&Module.onRuntimeInitialized(),Module._main&&shouldRunNow&&Module.callMain(e),postRun()))}e=e||Module.arguments,null===preloadStartTime&&(preloadStartTime=Date.now()),runDependencies>0||(preRun(),runDependencies>0||Module.calledRun||(Module.setStatus?(Module.setStatus("Running..."),setTimeout((function(){setTimeout((function(){Module.setStatus("")}),1),t()}),1)):t()))}function exit(e,t){t&&Module.noExitRuntime||(Module.noExitRuntime||(ABORT=!0,EXITSTATUS=e,STACKTOP=initialStackTop,exitRuntime(),Module.onExit&&Module.onExit(e)),ENVIRONMENT_IS_NODE&&process.exit(e),Module.quit(e,new ExitStatus(e)))}dependenciesFulfilled=function e(){Module.calledRun||run(),Module.calledRun||(dependenciesFulfilled=e)},Module.callMain=Module.callMain=function(e){e=e||[],ensureInitRuntime();var t=e.length+1;function n(){for(var e=0;e<3;e++)r.push(0)}var r=[allocate(intArrayFromString(Module.thisProgram),"i8",ALLOC_NORMAL)];n();for(var i=0;i0;)Module.preInit.pop()();var shouldRunNow=!0;Module.noInitialRun&&(shouldRunNow=!1),run()},void 0===(__WEBPACK_AMD_DEFINE_RESULT__=function(){return wrapper}.apply(exports,__WEBPACK_AMD_DEFINE_ARRAY__=[]))||(module.exports=__WEBPACK_AMD_DEFINE_RESULT__)},9532:e=>{"use strict";e.exports={ALIGN_COUNT:8,ALIGN_AUTO:0,ALIGN_FLEX_START:1,ALIGN_CENTER:2,ALIGN_FLEX_END:3,ALIGN_STRETCH:4,ALIGN_BASELINE:5,ALIGN_SPACE_BETWEEN:6,ALIGN_SPACE_AROUND:7,DIMENSION_COUNT:2,DIMENSION_WIDTH:0,DIMENSION_HEIGHT:1,DIRECTION_COUNT:3,DIRECTION_INHERIT:0,DIRECTION_LTR:1,DIRECTION_RTL:2,DISPLAY_COUNT:2,DISPLAY_FLEX:0,DISPLAY_NONE:1,EDGE_COUNT:9,EDGE_LEFT:0,EDGE_TOP:1,EDGE_RIGHT:2,EDGE_BOTTOM:3,EDGE_START:4,EDGE_END:5,EDGE_HORIZONTAL:6,EDGE_VERTICAL:7,EDGE_ALL:8,EXPERIMENTAL_FEATURE_COUNT:1,EXPERIMENTAL_FEATURE_WEB_FLEX_BASIS:0,FLEX_DIRECTION_COUNT:4,FLEX_DIRECTION_COLUMN:0,FLEX_DIRECTION_COLUMN_REVERSE:1,FLEX_DIRECTION_ROW:2,FLEX_DIRECTION_ROW_REVERSE:3,JUSTIFY_COUNT:6,JUSTIFY_FLEX_START:0,JUSTIFY_CENTER:1,JUSTIFY_FLEX_END:2,JUSTIFY_SPACE_BETWEEN:3,JUSTIFY_SPACE_AROUND:4,JUSTIFY_SPACE_EVENLY:5,LOG_LEVEL_COUNT:6,LOG_LEVEL_ERROR:0,LOG_LEVEL_WARN:1,LOG_LEVEL_INFO:2,LOG_LEVEL_DEBUG:3,LOG_LEVEL_VERBOSE:4,LOG_LEVEL_FATAL:5,MEASURE_MODE_COUNT:3,MEASURE_MODE_UNDEFINED:0,MEASURE_MODE_EXACTLY:1,MEASURE_MODE_AT_MOST:2,NODE_TYPE_COUNT:2,NODE_TYPE_DEFAULT:0,NODE_TYPE_TEXT:1,OVERFLOW_COUNT:3,OVERFLOW_VISIBLE:0,OVERFLOW_HIDDEN:1,OVERFLOW_SCROLL:2,POSITION_TYPE_COUNT:2,POSITION_TYPE_RELATIVE:0,POSITION_TYPE_ABSOLUTE:1,PRINT_OPTIONS_COUNT:3,PRINT_OPTIONS_LAYOUT:1,PRINT_OPTIONS_STYLE:2,PRINT_OPTIONS_CHILDREN:4,UNIT_COUNT:4,UNIT_UNDEFINED:0,UNIT_POINT:1,UNIT_PERCENT:2,UNIT_AUTO:3,WRAP_COUNT:3,WRAP_NO_WRAP:0,WRAP_WRAP:1,WRAP_WRAP_REVERSE:2}},2821:(e,t,n)=>{"use strict";var r=n(6863),i=n(7356),o=!1,u=null;if(i({},(function(e,t){if(!o){if(o=!0,e)throw e;u=t}})),!o)throw new Error("Failed to load the yoga module - it needed to be loaded synchronously, but didn't");e.exports=r(u.bind,u.lib)},6863:(e,t,n)=>{"use strict";var r=Object.assign||function(e){for(var t=1;t"}}]),e}(),s=function(){function e(t,n){u(this,e),this.width=t,this.height=n}return i(e,null,[{key:"fromJS",value:function(t){return new e(t.width,t.height)}}]),i(e,[{key:"fromJS",value:function(e){e(this.width,this.height)}},{key:"toString",value:function(){return""}}]),e}(),c=function(){function e(t,n){u(this,e),this.unit=t,this.value=n}return i(e,[{key:"fromJS",value:function(e){e(this.unit,this.value)}},{key:"toString",value:function(){switch(this.unit){case a.UNIT_POINT:return String(this.value);case a.UNIT_PERCENT:return this.value+"%";case a.UNIT_AUTO:return"auto";default:return this.value+"?"}}},{key:"valueOf",value:function(){return this.value}}]),e}();e.exports=function(e,t){function n(e,t,n){var r=e[t];e[t]=function(){for(var e=arguments.length,t=Array(e),i=0;i1?t-1:0),i=1;i1&&void 0!==arguments[1]?arguments[1]:NaN,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:NaN,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:a.DIRECTION_LTR;return e.call(this,t,n,r)})),r({Config:t.Config,Node:t.Node,Layout:e("Layout",l),Size:e("Size",s),Value:e("Value",c),getInstanceCount:function(){return t.getInstanceCount.apply(t,arguments)}},a)}},2594:e=>{"use strict";e.exports=require("@yarnpkg/cli")},966:e=>{"use strict";e.exports=require("@yarnpkg/core")},4850:e=>{"use strict";e.exports=require("@yarnpkg/plugin-essentials")},2357:e=>{"use strict";e.exports=require("assert")},8042:e=>{"use strict";e.exports=require("clipanion")},6417:e=>{"use strict";e.exports=require("crypto")},8614:e=>{"use strict";e.exports=require("events")},8605:e=>{"use strict";e.exports=require("http")},7211:e=>{"use strict";e.exports=require("https")},2087:e=>{"use strict";e.exports=require("os")},1058:e=>{"use strict";e.exports=require("readline")},9513:e=>{"use strict";e.exports=require("semver")},3867:e=>{"use strict";e.exports=require("tty")},8835:e=>{"use strict";e.exports=require("url")}},__webpack_module_cache__={};function __webpack_require__(e){if(__webpack_module_cache__[e])return __webpack_module_cache__[e].exports;var t=__webpack_module_cache__[e]={id:e,loaded:!1,exports:{}};return __webpack_modules__[e].call(t.exports,t,t.exports,__webpack_require__),t.loaded=!0,t.exports}return __webpack_require__.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return __webpack_require__.d(t,{a:t}),t},__webpack_require__.d=(e,t)=>{for(var n in t)__webpack_require__.o(t,n)&&!__webpack_require__.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},__webpack_require__.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),__webpack_require__.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},__webpack_require__.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),__webpack_require__(120)})(); +return plugin; +} +}; \ No newline at end of file diff --git a/.yarn/plugins/@yarnpkg/plugin-workspace-tools.cjs b/.yarn/plugins/@yarnpkg/plugin-workspace-tools.cjs new file mode 100644 index 000000000..7f152e338 --- /dev/null +++ b/.yarn/plugins/@yarnpkg/plugin-workspace-tools.cjs @@ -0,0 +1,29 @@ +/* eslint-disable */ +module.exports = { +name: "@yarnpkg/plugin-workspace-tools", +factory: function (require) { +var plugin;plugin=(()=>{"use strict";var e={115:(e,t,n)=>{n.r(t),n.d(t,{default:()=>R});function o(e,t,n,o){var r,a=arguments.length,s=a<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,n):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,o);else for(var i=e.length-1;i>=0;i--)(r=e[i])&&(s=(a<3?r(s):a>3?r(t,n,s):r(t,n))||s);return a>3&&s&&Object.defineProperty(t,n,s),s}var r=n(594),a=n(966),s=n(42);class i extends r.BaseCommand{constructor(){super(...arguments),this.workspaces=[],this.json=!1,this.production=!1}async execute(){const e=await a.Configuration.find(this.context.cwd,this.context.plugins),{project:t,workspace:n}=await a.Project.find(e,this.context.cwd),o=await a.Cache.find(e);let s;if(0===this.workspaces.length){if(!n)throw new r.WorkspaceRequiredError(t.cwd,this.context.cwd);s=new Set([n])}else s=new Set(this.workspaces.map(e=>t.getWorkspaceByIdent(a.structUtils.parseIdent(e))));for(const e of s)for(const n of a.Manifest.hardDependencies)for(const o of e.manifest.getForScope(n).values()){const e=t.tryWorkspaceByDescriptor(o);null!==e&&s.add(e)}for(const e of t.workspaces)s.has(e)?this.production&&e.manifest.devDependencies.clear():(e.manifest.dependencies.clear(),e.manifest.devDependencies.clear(),e.manifest.peerDependencies.clear());return(await a.StreamReport.start({configuration:e,json:this.json,stdout:this.context.stdout,includeLogs:!0},async e=>{await t.install({cache:o,report:e,persistProject:!1}),await t.persistInstallStateFile()})).exitCode()}}i.usage=s.Command.Usage({category:"Workspace-related commands",description:"install a single workspace and its dependencies",details:"\n This command will run an install as if the specified workspaces (and all other workspaces they depend on) were the only ones in the project. If no workspaces are explicitly listed, the active one will be assumed.\n\n Note that this command is only very moderately useful when using zero-installs, since the cache will contain all the packages anyway - meaning that the only difference between a full install and a focused install would just be a few extra lines in the `.pnp.js` file, at the cost of introducing an extra complexity.\n\n If the `--production` flag is set, only regular dependencies will be installed, and dev dependencies will be omitted.\n\n If the `--json` flag is set the output will follow a JSON-stream output also known as NDJSON (https://github.com/ndjson/ndjson-spec).\n "}),o([s.Command.Rest()],i.prototype,"workspaces",void 0),o([s.Command.Boolean("--json")],i.prototype,"json",void 0),o([s.Command.Boolean("--production")],i.prototype,"production",void 0),o([s.Command.Path("workspaces","focus")],i.prototype,"execute",null);var u=n(401),l=n.n(u),p=n(87),c=n(578),f=n.n(c),d=n(440);const h=(e,t)=>{const n=[];for(const o of e.workspacesCwds){const e=t.workspacesByCwd.get(o);e&&n.push(e,...h(e,t))}return n};class g extends r.BaseCommand{constructor(){super(...arguments),this.args=[],this.all=!1,this.verbose=!1,this.parallel=!1,this.interlaced=!1,this.topological=!1,this.topologicalDev=!1,this.include=[],this.exclude=[],this.private=!0}async execute(){const e=await a.Configuration.find(this.context.cwd,this.context.plugins),{project:t,workspace:n}=await a.Project.find(e,this.context.cwd);if(!this.all&&!n)throw new r.WorkspaceRequiredError(t.cwd,this.context.cwd);const o=this.cli.process([this.commandName,...this.args]),i=1===o.path.length&&"run"===o.path[0]&&void 0!==o.scriptName?o.scriptName:null;if(0===o.path.length)throw new s.UsageError("Invalid subcommand name for iteration - use the 'run' keyword if you wish to execute a script");const u=this.all?t.topLevelWorkspace:n,c=[u,...h(u,t)],d=[];for(const e of c)i&&!e.manifest.scripts.has(i)||i===process.env.npm_lifecycle_event&&e.cwd===n.cwd||this.include.length>0&&!l().isMatch(a.structUtils.stringifyIdent(e.locator),this.include)||this.exclude.length>0&&l().isMatch(a.structUtils.stringifyIdent(e.locator),this.exclude)||!1===this.private&&!0===e.manifest.private||d.push(e);let g=this.interlaced;this.parallel||(g=!0);const R=new Map,y=new Set,m=this.parallel?Math.max(1,(0,p.cpus)().length/2):1,_=f()(this.jobs||m);let E=0,C=null;const b=await a.StreamReport.start({configuration:e,stdout:this.context.stdout},async n=>{const o=async(t,{commandIndex:o})=>{!this.parallel&&this.verbose&&o>1&&n.reportSeparator();const r=function(e,{configuration:t,commandIndex:n,verbose:o}){if(!o)return null;const r=a.structUtils.convertToIdent(e.locator),s=`[${a.structUtils.stringifyIdent(r)}]:`,i=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],u=i[n%i.length];return t.format(s,u)}(t,{configuration:e,verbose:this.verbose,commandIndex:o}),[s,i]=A(n,{prefix:r,interlaced:g}),[u,l]=A(n,{prefix:r,interlaced:g});try{const e=await this.cli.run([this.commandName,...this.args],{cwd:t.cwd,stdout:s,stderr:u})||0;s.end(),u.end();const o=await i,a=await l;return this.verbose&&o&&a&&n.reportInfo(null,`${r} Process exited without output (exit code ${e})`),e}catch(e){throw s.end(),u.end(),await i,await l,e}};for(const e of d)R.set(e.anchoredLocator.locatorHash,e);for(;R.size>0&&!n.hasErrors();){const r=[];for(const[e,n]of R){if(y.has(n.anchoredDescriptor.descriptorHash))continue;let a=!0;if(this.topological||this.topologicalDev){const e=this.topologicalDev?new Map([...n.manifest.dependencies,...n.manifest.devDependencies]):n.manifest.dependencies;for(const n of e.values()){const e=t.tryWorkspaceByDescriptor(n);if(a=null===e||!R.has(e.anchoredLocator.locatorHash),!a)break}}if(a&&(y.add(n.anchoredDescriptor.descriptorHash),r.push(_(async()=>{const t=await o(n,{commandIndex:++E});return R.delete(e),y.delete(n.anchoredDescriptor.descriptorHash),t})),!this.parallel))break}if(0===r.length){const t=Array.from(R.values()).map(t=>a.structUtils.prettyLocator(e,t.anchoredLocator)).join(", ");return void n.reportError(a.MessageName.CYCLIC_DEPENDENCIES,`Dependency cycle detected (${t})`)}const s=(await Promise.all(r)).find(e=>0!==e);C=void 0!==s?1:C,(this.topological||this.topologicalDev)&&void 0!==s&&n.reportError(a.MessageName.UNNAMED,"The command failed for workspaces that are depended upon by other workspaces; can't satisfy the dependency graph")}});return null!==C?C:b.exitCode()}}function A(e,{prefix:t,interlaced:n}){const o=e.createStreamReporter(t),r=new a.miscUtils.DefaultStream;r.pipe(o,{end:!1}),r.on("finish",()=>{o.end()});const s=new Promise(e=>{o.on("finish",()=>{e(r.active)})});if(n)return[r,s];const i=new a.miscUtils.BufferStream;return i.pipe(r,{end:!1}),i.on("finish",()=>{r.end()}),[i,s]}g.schema=d.object().shape({jobs:d.number().min(2),parallel:d.boolean().when("jobs",{is:e=>e>1,then:d.boolean().oneOf([!0],"--parallel must be set when using --jobs"),otherwise:d.boolean()})}),g.usage=s.Command.Usage({category:"Workspace-related commands",description:"run a command on all workspaces",details:"\n This command will run a given sub-command on current and all its descendant workspaces. Various flags can alter the exact behavior of the command:\n\n - If `-p,--parallel` is set, the commands will be ran in parallel; they'll by default be limited to a number of parallel tasks roughly equal to half your core number, but that can be overridden via `-j,--jobs`.\n\n - If `-p,--parallel` and `-i,--interlaced` are both set, Yarn will print the lines from the output as it receives them. If `-i,--interlaced` wasn't set, it would instead buffer the output from each process and print the resulting buffers only after their source processes have exited.\n\n - If `-t,--topological` is set, Yarn will only run the command after all workspaces that depend on it through the `dependencies` field have successfully finished executing. If `--topological-dev` is set, both the `dependencies` and `devDependencies` fields will be considered when figuring out the wait points.\n\n - If `--all` is set, Yarn will run the command on all the workspaces of a project. By default yarn runs the command only on current and all its descendant workspaces.\n\n - The command may apply to only some workspaces through the use of `--include` which acts as a whitelist. The `--exclude` flag will do the opposite and will be a list of packages that mustn't execute the script. Both flags accept glob patterns (if valid Idents and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them.\n\n Adding the `-v,--verbose` flag will cause Yarn to print more information; in particular the name of the workspace that generated the output will be printed at the front of each line.\n\n If the command is `run` and the script being run does not exist the child workspace will be skipped without error.\n ",examples:[["Publish current and all descendant packages","yarn workspaces foreach npm publish --tolerate-republish"],["Run build script on current and all descendant packages","yarn workspaces foreach run build"],["Run build script on current and all descendant packages in parallel, building dependent packages first","yarn workspaces foreach -pt run build"]]}),o([s.Command.String()],g.prototype,"commandName",void 0),o([s.Command.Proxy()],g.prototype,"args",void 0),o([s.Command.Boolean("-a,--all")],g.prototype,"all",void 0),o([s.Command.Boolean("-v,--verbose")],g.prototype,"verbose",void 0),o([s.Command.Boolean("-p,--parallel")],g.prototype,"parallel",void 0),o([s.Command.Boolean("-i,--interlaced")],g.prototype,"interlaced",void 0),o([s.Command.String("-j,--jobs")],g.prototype,"jobs",void 0),o([s.Command.Boolean("-t,--topological")],g.prototype,"topological",void 0),o([s.Command.Boolean("--topological-dev")],g.prototype,"topologicalDev",void 0),o([s.Command.Array("--include")],g.prototype,"include",void 0),o([s.Command.Array("--exclude")],g.prototype,"exclude",void 0),o([s.Command.Boolean("--private")],g.prototype,"private",void 0),o([s.Command.Path("workspaces","foreach")],g.prototype,"execute",null);const R={commands:[i,g]}},235:(e,t,n)=>{const o=n(900),r=n(617),a=n(495),s=n(425),i=(e,t={})=>{let n=[];if(Array.isArray(e))for(let o of e){let e=i.create(o,t);Array.isArray(e)?n.push(...e):n.push(e)}else n=[].concat(i.create(e,t));return t&&!0===t.expand&&!0===t.nodupes&&(n=[...new Set(n)]),n};i.parse=(e,t={})=>s(e,t),i.stringify=(e,t={})=>o("string"==typeof e?i.parse(e,t):e,t),i.compile=(e,t={})=>("string"==typeof e&&(e=i.parse(e,t)),r(e,t)),i.expand=(e,t={})=>{"string"==typeof e&&(e=i.parse(e,t));let n=a(e,t);return!0===t.noempty&&(n=n.filter(Boolean)),!0===t.nodupes&&(n=[...new Set(n)]),n},i.create=(e,t={})=>""===e||e.length<3?[e]:!0!==t.expand?i.compile(e,t):i.expand(e,t),e.exports=i},617:(e,t,n)=>{const o=n(169),r=n(542);e.exports=(e,t={})=>{let n=(e,a={})=>{let s=r.isInvalidBrace(a),i=!0===e.invalid&&!0===t.escapeInvalid,u=!0===s||!0===i,l=!0===t.escapeInvalid?"\\":"",p="";if(!0===e.isOpen)return l+e.value;if(!0===e.isClose)return l+e.value;if("open"===e.type)return u?l+e.value:"(";if("close"===e.type)return u?l+e.value:")";if("comma"===e.type)return"comma"===e.prev.type?"":u?e.value:"|";if(e.value)return e.value;if(e.nodes&&e.ranges>0){let n=r.reduce(e.nodes),a=o(...n,{...t,wrap:!1,toRegex:!0});if(0!==a.length)return n.length>1&&a.length>1?`(${a})`:a}if(e.nodes)for(let t of e.nodes)p+=n(t,e);return p};return n(e)}},384:e=>{e.exports={MAX_LENGTH:65536,CHAR_0:"0",CHAR_9:"9",CHAR_UPPERCASE_A:"A",CHAR_LOWERCASE_A:"a",CHAR_UPPERCASE_Z:"Z",CHAR_LOWERCASE_Z:"z",CHAR_LEFT_PARENTHESES:"(",CHAR_RIGHT_PARENTHESES:")",CHAR_ASTERISK:"*",CHAR_AMPERSAND:"&",CHAR_AT:"@",CHAR_BACKSLASH:"\\",CHAR_BACKTICK:"`",CHAR_CARRIAGE_RETURN:"\r",CHAR_CIRCUMFLEX_ACCENT:"^",CHAR_COLON:":",CHAR_COMMA:",",CHAR_DOLLAR:"$",CHAR_DOT:".",CHAR_DOUBLE_QUOTE:'"',CHAR_EQUAL:"=",CHAR_EXCLAMATION_MARK:"!",CHAR_FORM_FEED:"\f",CHAR_FORWARD_SLASH:"/",CHAR_HASH:"#",CHAR_HYPHEN_MINUS:"-",CHAR_LEFT_ANGLE_BRACKET:"<",CHAR_LEFT_CURLY_BRACE:"{",CHAR_LEFT_SQUARE_BRACKET:"[",CHAR_LINE_FEED:"\n",CHAR_NO_BREAK_SPACE:" ",CHAR_PERCENT:"%",CHAR_PLUS:"+",CHAR_QUESTION_MARK:"?",CHAR_RIGHT_ANGLE_BRACKET:">",CHAR_RIGHT_CURLY_BRACE:"}",CHAR_RIGHT_SQUARE_BRACKET:"]",CHAR_SEMICOLON:";",CHAR_SINGLE_QUOTE:"'",CHAR_SPACE:" ",CHAR_TAB:"\t",CHAR_UNDERSCORE:"_",CHAR_VERTICAL_LINE:"|",CHAR_ZERO_WIDTH_NOBREAK_SPACE:"\ufeff"}},495:(e,t,n)=>{const o=n(169),r=n(900),a=n(542),s=(e="",t="",n=!1)=>{let o=[];if(e=[].concat(e),!(t=[].concat(t)).length)return e;if(!e.length)return n?a.flatten(t).map(e=>`{${e}}`):t;for(let r of e)if(Array.isArray(r))for(let e of r)o.push(s(e,t,n));else for(let e of t)!0===n&&"string"==typeof e&&(e=`{${e}}`),o.push(Array.isArray(e)?s(r,e,n):r+e);return a.flatten(o)};e.exports=(e,t={})=>{let n=void 0===t.rangeLimit?1e3:t.rangeLimit,i=(e,u={})=>{e.queue=[];let l=u,p=u.queue;for(;"brace"!==l.type&&"root"!==l.type&&l.parent;)l=l.parent,p=l.queue;if(e.invalid||e.dollar)return void p.push(s(p.pop(),r(e,t)));if("brace"===e.type&&!0!==e.invalid&&2===e.nodes.length)return void p.push(s(p.pop(),["{}"]));if(e.nodes&&e.ranges>0){let i=a.reduce(e.nodes);if(a.exceedsLimit(...i,t.step,n))throw new RangeError("expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit.");let u=o(...i,t);return 0===u.length&&(u=r(e,t)),p.push(s(p.pop(),u)),void(e.nodes=[])}let c=a.encloseBrace(e),f=e.queue,d=e;for(;"brace"!==d.type&&"root"!==d.type&&d.parent;)d=d.parent,f=d.queue;for(let t=0;t{const o=n(900),{MAX_LENGTH:r,CHAR_BACKSLASH:a,CHAR_BACKTICK:s,CHAR_COMMA:i,CHAR_DOT:u,CHAR_LEFT_PARENTHESES:l,CHAR_RIGHT_PARENTHESES:p,CHAR_LEFT_CURLY_BRACE:c,CHAR_RIGHT_CURLY_BRACE:f,CHAR_LEFT_SQUARE_BRACKET:d,CHAR_RIGHT_SQUARE_BRACKET:h,CHAR_DOUBLE_QUOTE:g,CHAR_SINGLE_QUOTE:A,CHAR_NO_BREAK_SPACE:R,CHAR_ZERO_WIDTH_NOBREAK_SPACE:y}=n(384);e.exports=(e,t={})=>{if("string"!=typeof e)throw new TypeError("Expected a string");let n=t||{},m="number"==typeof n.maxLength?Math.min(r,n.maxLength):r;if(e.length>m)throw new SyntaxError(`Input length (${e.length}), exceeds max characters (${m})`);let _,E={type:"root",input:e,nodes:[]},C=[E],b=E,x=E,v=0,S=e.length,w=0,H=0;const T=()=>e[w++],L=e=>{if("text"===e.type&&"dot"===x.type&&(x.type="text"),!x||"text"!==x.type||"text"!==e.type)return b.nodes.push(e),e.parent=b,e.prev=x,x=e,e;x.value+=e.value};for(L({type:"bos"});w0){if(b.ranges>0){b.ranges=0;let e=b.nodes.shift();b.nodes=[e,{type:"text",value:o(b)}]}L({type:"comma",value:_}),b.commas++}else if(_===u&&H>0&&0===b.commas){let e=b.nodes;if(0===H||0===e.length){L({type:"text",value:_});continue}if("dot"===x.type){if(b.range=[],x.value+=_,x.type="range",3!==b.nodes.length&&5!==b.nodes.length){b.invalid=!0,b.ranges=0,x.type="text";continue}b.ranges++,b.args=[];continue}if("range"===x.type){e.pop();let t=e[e.length-1];t.value+=x.value+_,x=t,b.ranges--;continue}L({type:"dot",value:_})}else L({type:"text",value:_});else{if("brace"!==b.type){L({type:"text",value:_});continue}let e="close";b=C.pop(),b.close=!0,L({type:e,value:_}),H--,b=C[C.length-1]}else{H++;let e=x.value&&"$"===x.value.slice(-1)||!0===b.dollar;b=L({type:"brace",open:!0,close:!1,dollar:e,depth:H,commas:0,ranges:0,nodes:[]}),C.push(b),L({type:"open",value:_})}else{let e,n=_;for(!0!==t.keepQuotes&&(_="");w{e.nodes||("open"===e.type&&(e.isOpen=!0),"close"===e.type&&(e.isClose=!0),e.nodes||(e.type="text"),e.invalid=!0)});let e=C[C.length-1],t=e.nodes.indexOf(b);e.nodes.splice(t,1,...b.nodes)}}while(C.length>0);return L({type:"eos"}),E}},900:(e,t,n)=>{const o=n(542);e.exports=(e,t={})=>{let n=(e,r={})=>{let a=t.escapeInvalid&&o.isInvalidBrace(r),s=!0===e.invalid&&!0===t.escapeInvalid,i="";if(e.value)return(a||s)&&o.isOpenOrClose(e)?"\\"+e.value:e.value;if(e.value)return e.value;if(e.nodes)for(let t of e.nodes)i+=n(t);return i};return n(e)}},542:(e,t)=>{t.isInteger=e=>"number"==typeof e?Number.isInteger(e):"string"==typeof e&&""!==e.trim()&&Number.isInteger(Number(e)),t.find=(e,t)=>e.nodes.find(e=>e.type===t),t.exceedsLimit=(e,n,o=1,r)=>!1!==r&&(!(!t.isInteger(e)||!t.isInteger(n))&&(Number(n)-Number(e))/Number(o)>=r),t.escapeNode=(e,t=0,n)=>{let o=e.nodes[t];o&&(n&&o.type===n||"open"===o.type||"close"===o.type)&&!0!==o.escaped&&(o.value="\\"+o.value,o.escaped=!0)},t.encloseBrace=e=>"brace"===e.type&&(e.commas>>0+e.ranges>>0==0&&(e.invalid=!0,!0)),t.isInvalidBrace=e=>"brace"===e.type&&(!(!0!==e.invalid&&!e.dollar)||(e.commas>>0+e.ranges>>0==0||!0!==e.open||!0!==e.close)&&(e.invalid=!0,!0)),t.isOpenOrClose=e=>"open"===e.type||"close"===e.type||(!0===e.open||!0===e.close),t.reduce=e=>e.reduce((e,t)=>("text"===t.type&&e.push(t.value),"range"===t.type&&(t.type="text"),e),[]),t.flatten=(...e)=>{const t=[],n=e=>{for(let o=0;o{ +/*! + * fill-range + * + * Copyright (c) 2014-present, Jon Schlinkert. + * Licensed under the MIT License. + */ +const o=n(669),r=n(615),a=e=>null!==e&&"object"==typeof e&&!Array.isArray(e),s=e=>"number"==typeof e||"string"==typeof e&&""!==e,i=e=>Number.isInteger(+e),u=e=>{let t=""+e,n=-1;if("-"===t[0]&&(t=t.slice(1)),"0"===t)return!1;for(;"0"===t[++n];);return n>0},l=(e,t,n)=>{if(t>0){let n="-"===e[0]?"-":"";n&&(e=e.slice(1)),e=n+e.padStart(n?t-1:t,"0")}return!1===n?String(e):e},p=(e,t)=>{let n="-"===e[0]?"-":"";for(n&&(e=e.slice(1),t--);e.length{if(n)return r(e,t,{wrap:!1,...o});let a=String.fromCharCode(e);return e===t?a:`[${a}-${String.fromCharCode(t)}]`},f=(e,t,n)=>{if(Array.isArray(e)){let t=!0===n.wrap,o=n.capture?"":"?:";return t?`(${o}${e.join("|")})`:e.join("|")}return r(e,t,n)},d=(...e)=>new RangeError("Invalid range arguments: "+o.inspect(...e)),h=(e,t,n)=>{if(!0===n.strictRanges)throw d([e,t]);return[]},g=(e,t,n=1,o={})=>{let r=Number(e),a=Number(t);if(!Number.isInteger(r)||!Number.isInteger(a)){if(!0===o.strictRanges)throw d([e,t]);return[]}0===r&&(r=0),0===a&&(a=0);let s=r>a,i=String(e),h=String(t),g=String(n);n=Math.max(Math.abs(n),1);let A=u(i)||u(h)||u(g),R=A?Math.max(i.length,h.length,g.length):0,y=!1===A&&!1===((e,t,n)=>"string"==typeof e||"string"==typeof t||!0===n.stringify)(e,t,o),m=o.transform||(e=>t=>!0===e?Number(t):String(t))(y);if(o.toRegex&&1===n)return c(p(e,R),p(t,R),!0,o);let _={negatives:[],positives:[]},E=[],C=0;for(;s?r>=a:r<=a;)!0===o.toRegex&&n>1?_[(b=r)<0?"negatives":"positives"].push(Math.abs(b)):E.push(l(m(r,C),R,y)),r=s?r-n:r+n,C++;var b;return!0===o.toRegex?n>1?((e,t)=>{e.negatives.sort((e,t)=>et?1:0),e.positives.sort((e,t)=>et?1:0);let n,o=t.capture?"":"?:",r="",a="";return e.positives.length&&(r=e.positives.join("|")),e.negatives.length&&(a=`-(${o}${e.negatives.join("|")})`),n=r&&a?`${r}|${a}`:r||a,t.wrap?`(${o}${n})`:n})(_,o):f(E,null,{wrap:!1,...o}):E},A=(e,t,n,o={})=>{if(null==t&&s(e))return[e];if(!s(e)||!s(t))return h(e,t,o);if("function"==typeof n)return A(e,t,1,{transform:n});if(a(n))return A(e,t,0,n);let r={...o};return!0===r.capture&&(r.wrap=!0),n=n||r.step||1,i(n)?i(e)&&i(t)?g(e,t,n,r):((e,t,n=1,o={})=>{if(!i(e)&&e.length>1||!i(t)&&t.length>1)return h(e,t,o);let r=o.transform||(e=>String.fromCharCode(e)),a=(""+e).charCodeAt(0),s=(""+t).charCodeAt(0),u=a>s,l=Math.min(a,s),p=Math.max(a,s);if(o.toRegex&&1===n)return c(l,p,!1,o);let d=[],g=0;for(;u?a>=s:a<=s;)d.push(r(a,g)),a=u?a-n:a+n,g++;return!0===o.toRegex?f(d,null,{wrap:!1,options:o}):d})(e,t,Math.max(Math.abs(n),1),r):null==n||a(n)?A(e,t,1,n):((e,t)=>{if(!0===t.strictRanges)throw new TypeError(`Expected step "${e}" to be a number`);return[]})(n,r)};e.exports=A},761:e=>{ +/*! + * is-number + * + * Copyright (c) 2014-present, Jon Schlinkert. + * Released under the MIT License. + */ +e.exports=function(e){return"number"==typeof e?e-e==0:"string"==typeof e&&""!==e.trim()&&(Number.isFinite?Number.isFinite(+e):isFinite(+e))}},401:(e,t,n)=>{const o=n(669),r=n(235),a=n(722),s=n(598),i=e=>"string"==typeof e&&(""===e||"./"===e),u=(e,t,n)=>{t=[].concat(t),e=[].concat(e);let o=new Set,r=new Set,s=new Set,i=0,u=e=>{s.add(e.output),n&&n.onResult&&n.onResult(e)};for(let s=0;s!o.has(e));if(n&&0===l.length){if(!0===n.failglob)throw new Error(`No matches found for "${t.join(", ")}"`);if(!0===n.nonull||!0===n.nullglob)return n.unescape?t.map(e=>e.replace(/\\/g,"")):t}return l};u.match=u,u.matcher=(e,t)=>a(e,t),u.any=u.isMatch=(e,t,n)=>a(t,n)(e),u.not=(e,t,n={})=>{t=[].concat(t).map(String);let o=new Set,r=[],a=u(e,t,{...n,onResult:e=>{n.onResult&&n.onResult(e),r.push(e.output)}});for(let e of r)a.includes(e)||o.add(e);return[...o]},u.contains=(e,t,n)=>{if("string"!=typeof e)throw new TypeError(`Expected a string: "${o.inspect(e)}"`);if(Array.isArray(t))return t.some(t=>u.contains(e,t,n));if("string"==typeof t){if(i(e)||i(t))return!1;if(e.includes(t)||e.startsWith("./")&&e.slice(2).includes(t))return!0}return u.isMatch(e,t,{...n,contains:!0})},u.matchKeys=(e,t,n)=>{if(!s.isObject(e))throw new TypeError("Expected the first argument to be an object");let o=u(Object.keys(e),t,n),r={};for(let t of o)r[t]=e[t];return r},u.some=(e,t,n)=>{let o=[].concat(e);for(let e of[].concat(t)){let t=a(String(e),n);if(o.some(e=>t(e)))return!0}return!1},u.every=(e,t,n)=>{let o=[].concat(e);for(let e of[].concat(t)){let t=a(String(e),n);if(!o.every(e=>t(e)))return!1}return!0},u.all=(e,t,n)=>{if("string"!=typeof e)throw new TypeError(`Expected a string: "${o.inspect(e)}"`);return[].concat(t).every(t=>a(t,n)(e))},u.capture=(e,t,n)=>{let o=s.isWindows(n),r=a.makeRe(String(e),{...n,capture:!0}).exec(o?s.toPosixSlashes(t):t);if(r)return r.slice(1).map(e=>void 0===e?"":e)},u.makeRe=(...e)=>a.makeRe(...e),u.scan=(...e)=>a.scan(...e),u.parse=(e,t)=>{let n=[];for(let o of[].concat(e||[]))for(let e of r(String(o),t))n.push(a.parse(e,t));return n},u.braces=(e,t)=>{if("string"!=typeof e)throw new TypeError("Expected a string");return t&&!0===t.nobrace||!/\{.*\}/.test(e)?[e]:r(e,t)},u.braceExpand=(e,t)=>{if("string"!=typeof e)throw new TypeError("Expected a string");return u.braces(e,{...t,expand:!0})},e.exports=u},578:(e,t,n)=>{const o=n(550),r=e=>{if(e<1)throw new TypeError("Expected `concurrency` to be a number from 1 and up");const t=[];let n=0;const r=()=>{n--,t.length>0&&t.shift()()},a=(e,t,...a)=>{n++;const s=o(e,...a);t(s),s.then(r,r)},s=(o,...r)=>new Promise(s=>((o,r,...s)=>{nn},pendingCount:{get:()=>t.length}}),s};e.exports=r,e.exports.default=r},550:e=>{e.exports=(e,...t)=>new Promise(n=>{n(e(...t))})},722:(e,t,n)=>{e.exports=n(828)},86:(e,t,n)=>{const o=n(622),r={DOT_LITERAL:"\\.",PLUS_LITERAL:"\\+",QMARK_LITERAL:"\\?",SLASH_LITERAL:"\\/",ONE_CHAR:"(?=.)",QMARK:"[^/]",END_ANCHOR:"(?:\\/|$)",DOTS_SLASH:"\\.{1,2}(?:\\/|$)",NO_DOT:"(?!\\.)",NO_DOTS:"(?!(?:^|\\/)\\.{1,2}(?:\\/|$))",NO_DOT_SLASH:"(?!\\.{0,1}(?:\\/|$))",NO_DOTS_SLASH:"(?!\\.{1,2}(?:\\/|$))",QMARK_NO_DOT:"[^.\\/]",STAR:"[^/]*?",START_ANCHOR:"(?:^|\\/)"},a={...r,SLASH_LITERAL:"[\\\\/]",QMARK:"[^\\\\/]",STAR:"[^\\\\/]*?",DOTS_SLASH:"\\.{1,2}(?:[\\\\/]|$)",NO_DOT:"(?!\\.)",NO_DOTS:"(?!(?:^|[\\\\/])\\.{1,2}(?:[\\\\/]|$))",NO_DOT_SLASH:"(?!\\.{0,1}(?:[\\\\/]|$))",NO_DOTS_SLASH:"(?!\\.{1,2}(?:[\\\\/]|$))",QMARK_NO_DOT:"[^.\\\\/]",START_ANCHOR:"(?:^|[\\\\/])",END_ANCHOR:"(?:[\\\\/]|$)"};e.exports={MAX_LENGTH:65536,POSIX_REGEX_SOURCE:{alnum:"a-zA-Z0-9",alpha:"a-zA-Z",ascii:"\\x00-\\x7F",blank:" \\t",cntrl:"\\x00-\\x1F\\x7F",digit:"0-9",graph:"\\x21-\\x7E",lower:"a-z",print:"\\x20-\\x7E ",punct:"\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",space:" \\t\\r\\n\\v\\f",upper:"A-Z",word:"A-Za-z0-9_",xdigit:"A-Fa-f0-9"},REGEX_BACKSLASH:/\\(?![*+?^${}(|)[\]])/g,REGEX_NON_SPECIAL_CHARS:/^[^@![\].,$*+?^{}()|\\/]+/,REGEX_SPECIAL_CHARS:/[-*+?.^${}(|)[\]]/,REGEX_SPECIAL_CHARS_BACKREF:/(\\?)((\W)(\3*))/g,REGEX_SPECIAL_CHARS_GLOBAL:/([-*+?.^${}(|)[\]])/g,REGEX_REMOVE_BACKSLASH:/(?:\[.*?[^\\]\]|\\(?=.))/g,REPLACEMENTS:{"***":"*","**/**":"**","**/**/**":"**"},CHAR_0:48,CHAR_9:57,CHAR_UPPERCASE_A:65,CHAR_LOWERCASE_A:97,CHAR_UPPERCASE_Z:90,CHAR_LOWERCASE_Z:122,CHAR_LEFT_PARENTHESES:40,CHAR_RIGHT_PARENTHESES:41,CHAR_ASTERISK:42,CHAR_AMPERSAND:38,CHAR_AT:64,CHAR_BACKWARD_SLASH:92,CHAR_CARRIAGE_RETURN:13,CHAR_CIRCUMFLEX_ACCENT:94,CHAR_COLON:58,CHAR_COMMA:44,CHAR_DOT:46,CHAR_DOUBLE_QUOTE:34,CHAR_EQUAL:61,CHAR_EXCLAMATION_MARK:33,CHAR_FORM_FEED:12,CHAR_FORWARD_SLASH:47,CHAR_GRAVE_ACCENT:96,CHAR_HASH:35,CHAR_HYPHEN_MINUS:45,CHAR_LEFT_ANGLE_BRACKET:60,CHAR_LEFT_CURLY_BRACE:123,CHAR_LEFT_SQUARE_BRACKET:91,CHAR_LINE_FEED:10,CHAR_NO_BREAK_SPACE:160,CHAR_PERCENT:37,CHAR_PLUS:43,CHAR_QUESTION_MARK:63,CHAR_RIGHT_ANGLE_BRACKET:62,CHAR_RIGHT_CURLY_BRACE:125,CHAR_RIGHT_SQUARE_BRACKET:93,CHAR_SEMICOLON:59,CHAR_SINGLE_QUOTE:39,CHAR_SPACE:32,CHAR_TAB:9,CHAR_UNDERSCORE:95,CHAR_VERTICAL_LINE:124,CHAR_ZERO_WIDTH_NOBREAK_SPACE:65279,SEP:o.sep,extglobChars:e=>({"!":{type:"negate",open:"(?:(?!(?:",close:`))${e.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}),globChars:e=>!0===e?a:r}},974:(e,t,n)=>{const o=n(86),r=n(598),{MAX_LENGTH:a,POSIX_REGEX_SOURCE:s,REGEX_NON_SPECIAL_CHARS:i,REGEX_SPECIAL_CHARS_BACKREF:u,REPLACEMENTS:l}=o,p=(e,t)=>{if("function"==typeof t.expandRange)return t.expandRange(...e,t);e.sort();const n=`[${e.join("-")}]`;try{new RegExp(n)}catch(t){return e.map(e=>r.escapeRegex(e)).join("..")}return n},c=(e,t)=>`Missing ${e}: "${t}" - use "\\\\${t}" to match literal characters`,f=(e,t)=>{if("string"!=typeof e)throw new TypeError("Expected a string");e=l[e]||e;const n={...t},f="number"==typeof n.maxLength?Math.min(a,n.maxLength):a;let d=e.length;if(d>f)throw new SyntaxError(`Input length: ${d}, exceeds maximum allowed length: ${f}`);const h={type:"bos",value:"",output:n.prepend||""},g=[h],A=n.capture?"":"?:",R=r.isWindows(t),y=o.globChars(R),m=o.extglobChars(y),{DOT_LITERAL:_,PLUS_LITERAL:E,SLASH_LITERAL:C,ONE_CHAR:b,DOTS_SLASH:x,NO_DOT:v,NO_DOT_SLASH:S,NO_DOTS_SLASH:w,QMARK:H,QMARK_NO_DOT:T,STAR:L,START_ANCHOR:k}=y,O=e=>`(${A}(?:(?!${k}${e.dot?x:_}).)*?)`,$=n.dot?"":v,N=n.dot?H:T;let I=!0===n.bash?O(n):L;n.capture&&(I=`(${I})`),"boolean"==typeof n.noext&&(n.noextglob=n.noext);const B={input:e,index:-1,start:0,dot:!0===n.dot,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:g};e=r.removePrefix(e,B),d=e.length;const M=[],P=[],D=[];let U,G=h;const j=()=>B.index===d-1,K=B.peek=(t=1)=>e[B.index+t],F=B.advance=()=>e[++B.index],W=()=>e.slice(B.index+1),Q=(e="",t=0)=>{B.consumed+=e,B.index+=t},X=e=>{B.output+=null!=e.output?e.output:e.value,Q(e.value)},q=()=>{let e=1;for(;"!"===K()&&("("!==K(2)||"?"===K(3));)F(),B.start++,e++;return e%2!=0&&(B.negated=!0,B.start++,!0)},Z=e=>{B[e]++,D.push(e)},Y=e=>{B[e]--,D.pop()},z=e=>{if("globstar"===G.type){const t=B.braces>0&&("comma"===e.type||"brace"===e.type),n=!0===e.extglob||M.length&&("pipe"===e.type||"paren"===e.type);"slash"===e.type||"paren"===e.type||t||n||(B.output=B.output.slice(0,-G.output.length),G.type="star",G.value="*",G.output=I,B.output+=G.output)}if(M.length&&"paren"!==e.type&&!m[e.value]&&(M[M.length-1].inner+=e.value),(e.value||e.output)&&X(e),G&&"text"===G.type&&"text"===e.type)return G.value+=e.value,void(G.output=(G.output||"")+e.value);e.prev=G,g.push(e),G=e},V=(e,t)=>{const o={...m[t],conditions:1,inner:""};o.prev=G,o.parens=B.parens,o.output=B.output;const r=(n.capture?"(":"")+o.open;Z("parens"),z({type:e,value:t,output:B.output?"":b}),z({type:"paren",extglob:!0,value:F(),output:r}),M.push(o)},J=e=>{let t=e.close+(n.capture?")":"");if("negate"===e.type){let o=I;e.inner&&e.inner.length>1&&e.inner.includes("/")&&(o=O(n)),(o!==I||j()||/^\)+$/.test(W()))&&(t=e.close=")$))"+o),"bos"===e.prev.type&&j()&&(B.negatedExtglob=!0)}z({type:"paren",extglob:!0,value:U,output:t}),Y("parens")};if(!1!==n.fastpaths&&!/(^[*!]|[/()[\]{}"])/.test(e)){let o=!1,a=e.replace(u,(e,t,n,r,a,s)=>"\\"===r?(o=!0,e):"?"===r?t?t+r+(a?H.repeat(a.length):""):0===s?N+(a?H.repeat(a.length):""):H.repeat(n.length):"."===r?_.repeat(n.length):"*"===r?t?t+r+(a?I:""):I:t?e:"\\"+e);return!0===o&&(a=!0===n.unescape?a.replace(/\\/g,""):a.replace(/\\+/g,e=>e.length%2==0?"\\\\":e?"\\":"")),a===e&&!0===n.contains?(B.output=e,B):(B.output=r.wrapOutput(a,B,t),B)}for(;!j();){if(U=F(),"\0"===U)continue;if("\\"===U){const e=K();if("/"===e&&!0!==n.bash)continue;if("."===e||";"===e)continue;if(!e){U+="\\",z({type:"text",value:U});continue}const t=/^\\+/.exec(W());let o=0;if(t&&t[0].length>2&&(o=t[0].length,B.index+=o,o%2!=0&&(U+="\\")),!0===n.unescape?U=F()||"":U+=F()||"",0===B.brackets){z({type:"text",value:U});continue}}if(B.brackets>0&&("]"!==U||"["===G.value||"[^"===G.value)){if(!1!==n.posix&&":"===U){const e=G.value.slice(1);if(e.includes("[")&&(G.posix=!0,e.includes(":"))){const e=G.value.lastIndexOf("["),t=G.value.slice(0,e),n=G.value.slice(e+2),o=s[n];if(o){G.value=t+o,B.backtrack=!0,F(),h.output||1!==g.indexOf(G)||(h.output=b);continue}}}("["===U&&":"!==K()||"-"===U&&"]"===K())&&(U="\\"+U),"]"!==U||"["!==G.value&&"[^"!==G.value||(U="\\"+U),!0===n.posix&&"!"===U&&"["===G.value&&(U="^"),G.value+=U,X({value:U});continue}if(1===B.quotes&&'"'!==U){U=r.escapeRegex(U),G.value+=U,X({value:U});continue}if('"'===U){B.quotes=1===B.quotes?0:1,!0===n.keepQuotes&&z({type:"text",value:U});continue}if("("===U){Z("parens"),z({type:"paren",value:U});continue}if(")"===U){if(0===B.parens&&!0===n.strictBrackets)throw new SyntaxError(c("opening","("));const e=M[M.length-1];if(e&&B.parens===e.parens+1){J(M.pop());continue}z({type:"paren",value:U,output:B.parens?")":"\\)"}),Y("parens");continue}if("["===U){if(!0!==n.nobracket&&W().includes("]"))Z("brackets");else{if(!0!==n.nobracket&&!0===n.strictBrackets)throw new SyntaxError(c("closing","]"));U="\\"+U}z({type:"bracket",value:U});continue}if("]"===U){if(!0===n.nobracket||G&&"bracket"===G.type&&1===G.value.length){z({type:"text",value:U,output:"\\"+U});continue}if(0===B.brackets){if(!0===n.strictBrackets)throw new SyntaxError(c("opening","["));z({type:"text",value:U,output:"\\"+U});continue}Y("brackets");const e=G.value.slice(1);if(!0===G.posix||"^"!==e[0]||e.includes("/")||(U="/"+U),G.value+=U,X({value:U}),!1===n.literalBrackets||r.hasRegexChars(e))continue;const t=r.escapeRegex(G.value);if(B.output=B.output.slice(0,-G.value.length),!0===n.literalBrackets){B.output+=t,G.value=t;continue}G.value=`(${A}${t}|${G.value})`,B.output+=G.value;continue}if("{"===U&&!0!==n.nobrace){Z("braces");const e={type:"brace",value:U,output:"(",outputIndex:B.output.length,tokensIndex:B.tokens.length};P.push(e),z(e);continue}if("}"===U){const e=P[P.length-1];if(!0===n.nobrace||!e){z({type:"text",value:U,output:U});continue}let t=")";if(!0===e.dots){const e=g.slice(),o=[];for(let t=e.length-1;t>=0&&(g.pop(),"brace"!==e[t].type);t--)"dots"!==e[t].type&&o.unshift(e[t].value);t=p(o,n),B.backtrack=!0}if(!0!==e.comma&&!0!==e.dots){const n=B.output.slice(0,e.outputIndex),o=B.tokens.slice(e.tokensIndex);e.value=e.output="\\{",U=t="\\}",B.output=n;for(const e of o)B.output+=e.output||e.value}z({type:"brace",value:U,output:t}),Y("braces"),P.pop();continue}if("|"===U){M.length>0&&M[M.length-1].conditions++,z({type:"text",value:U});continue}if(","===U){let e=U;const t=P[P.length-1];t&&"braces"===D[D.length-1]&&(t.comma=!0,e="|"),z({type:"comma",value:U,output:e});continue}if("/"===U){if("dot"===G.type&&B.index===B.start+1){B.start=B.index+1,B.consumed="",B.output="",g.pop(),G=h;continue}z({type:"slash",value:U,output:C});continue}if("."===U){if(B.braces>0&&"dot"===G.type){"."===G.value&&(G.output=_);const e=P[P.length-1];G.type="dots",G.output+=U,G.value+=U,e.dots=!0;continue}if(B.braces+B.parens===0&&"bos"!==G.type&&"slash"!==G.type){z({type:"text",value:U,output:_});continue}z({type:"dot",value:U,output:_});continue}if("?"===U){if(!(G&&"("===G.value)&&!0!==n.noextglob&&"("===K()&&"?"!==K(2)){V("qmark",U);continue}if(G&&"paren"===G.type){const e=K();let t=U;if("<"===e&&!r.supportsLookbehinds())throw new Error("Node.js v10 or higher is required for regex lookbehinds");("("===G.value&&!/[!=<:]/.test(e)||"<"===e&&!/<([!=]|\w+>)/.test(W()))&&(t="\\"+U),z({type:"text",value:U,output:t});continue}if(!0!==n.dot&&("slash"===G.type||"bos"===G.type)){z({type:"qmark",value:U,output:T});continue}z({type:"qmark",value:U,output:H});continue}if("!"===U){if(!0!==n.noextglob&&"("===K()&&("?"!==K(2)||!/[!=<:]/.test(K(3)))){V("negate",U);continue}if(!0!==n.nonegate&&0===B.index){q();continue}}if("+"===U){if(!0!==n.noextglob&&"("===K()&&"?"!==K(2)){V("plus",U);continue}if(G&&"("===G.value||!1===n.regex){z({type:"plus",value:U,output:E});continue}if(G&&("bracket"===G.type||"paren"===G.type||"brace"===G.type)||B.parens>0){z({type:"plus",value:U});continue}z({type:"plus",value:E});continue}if("@"===U){if(!0!==n.noextglob&&"("===K()&&"?"!==K(2)){z({type:"at",extglob:!0,value:U,output:""});continue}z({type:"text",value:U});continue}if("*"!==U){"$"!==U&&"^"!==U||(U="\\"+U);const e=i.exec(W());e&&(U+=e[0],B.index+=e[0].length),z({type:"text",value:U});continue}if(G&&("globstar"===G.type||!0===G.star)){G.type="star",G.star=!0,G.value+=U,G.output=I,B.backtrack=!0,B.globstar=!0,Q(U);continue}let t=W();if(!0!==n.noextglob&&/^\([^?]/.test(t)){V("star",U);continue}if("star"===G.type){if(!0===n.noglobstar){Q(U);continue}const o=G.prev,r=o.prev,a="slash"===o.type||"bos"===o.type,s=r&&("star"===r.type||"globstar"===r.type);if(!0===n.bash&&(!a||t[0]&&"/"!==t[0])){z({type:"star",value:U,output:""});continue}const i=B.braces>0&&("comma"===o.type||"brace"===o.type),u=M.length&&("pipe"===o.type||"paren"===o.type);if(!a&&"paren"!==o.type&&!i&&!u){z({type:"star",value:U,output:""});continue}for(;"/**"===t.slice(0,3);){const n=e[B.index+4];if(n&&"/"!==n)break;t=t.slice(3),Q("/**",3)}if("bos"===o.type&&j()){G.type="globstar",G.value+=U,G.output=O(n),B.output=G.output,B.globstar=!0,Q(U);continue}if("slash"===o.type&&"bos"!==o.prev.type&&!s&&j()){B.output=B.output.slice(0,-(o.output+G.output).length),o.output="(?:"+o.output,G.type="globstar",G.output=O(n)+(n.strictSlashes?")":"|$)"),G.value+=U,B.globstar=!0,B.output+=o.output+G.output,Q(U);continue}if("slash"===o.type&&"bos"!==o.prev.type&&"/"===t[0]){const e=void 0!==t[1]?"|$":"";B.output=B.output.slice(0,-(o.output+G.output).length),o.output="(?:"+o.output,G.type="globstar",G.output=`${O(n)}${C}|${C}${e})`,G.value+=U,B.output+=o.output+G.output,B.globstar=!0,Q(U+F()),z({type:"slash",value:"/",output:""});continue}if("bos"===o.type&&"/"===t[0]){G.type="globstar",G.value+=U,G.output=`(?:^|${C}|${O(n)}${C})`,B.output=G.output,B.globstar=!0,Q(U+F()),z({type:"slash",value:"/",output:""});continue}B.output=B.output.slice(0,-G.output.length),G.type="globstar",G.output=O(n),G.value+=U,B.output+=G.output,B.globstar=!0,Q(U);continue}const o={type:"star",value:U,output:I};!0!==n.bash?!G||"bracket"!==G.type&&"paren"!==G.type||!0!==n.regex?(B.index!==B.start&&"slash"!==G.type&&"dot"!==G.type||("dot"===G.type?(B.output+=S,G.output+=S):!0===n.dot?(B.output+=w,G.output+=w):(B.output+=$,G.output+=$),"*"!==K()&&(B.output+=b,G.output+=b)),z(o)):(o.output=U,z(o)):(o.output=".*?","bos"!==G.type&&"slash"!==G.type||(o.output=$+o.output),z(o))}for(;B.brackets>0;){if(!0===n.strictBrackets)throw new SyntaxError(c("closing","]"));B.output=r.escapeLast(B.output,"["),Y("brackets")}for(;B.parens>0;){if(!0===n.strictBrackets)throw new SyntaxError(c("closing",")"));B.output=r.escapeLast(B.output,"("),Y("parens")}for(;B.braces>0;){if(!0===n.strictBrackets)throw new SyntaxError(c("closing","}"));B.output=r.escapeLast(B.output,"{"),Y("braces")}if(!0===n.strictSlashes||"star"!==G.type&&"bracket"!==G.type||z({type:"maybe_slash",value:"",output:C+"?"}),!0===B.backtrack){B.output="";for(const e of B.tokens)B.output+=null!=e.output?e.output:e.value,e.suffix&&(B.output+=e.suffix)}return B};f.fastpaths=(e,t)=>{const n={...t},s="number"==typeof n.maxLength?Math.min(a,n.maxLength):a,i=e.length;if(i>s)throw new SyntaxError(`Input length: ${i}, exceeds maximum allowed length: ${s}`);e=l[e]||e;const u=r.isWindows(t),{DOT_LITERAL:p,SLASH_LITERAL:c,ONE_CHAR:f,DOTS_SLASH:d,NO_DOT:h,NO_DOTS:g,NO_DOTS_SLASH:A,STAR:R,START_ANCHOR:y}=o.globChars(u),m=n.dot?g:h,_=n.dot?A:h,E=n.capture?"":"?:";let C=!0===n.bash?".*?":R;n.capture&&(C=`(${C})`);const b=e=>!0===e.noglobstar?C:`(${E}(?:(?!${y}${e.dot?d:p}).)*?)`,x=e=>{switch(e){case"*":return`${m}${f}${C}`;case".*":return`${p}${f}${C}`;case"*.*":return`${m}${C}${p}${f}${C}`;case"*/*":return`${m}${C}${c}${f}${_}${C}`;case"**":return m+b(n);case"**/*":return`(?:${m}${b(n)}${c})?${_}${f}${C}`;case"**/*.*":return`(?:${m}${b(n)}${c})?${_}${C}${p}${f}${C}`;case"**/.*":return`(?:${m}${b(n)}${c})?${p}${f}${C}`;default:{const t=/^(.*?)\.(\w+)$/.exec(e);if(!t)return;const n=x(t[1]);if(!n)return;return n+p+t[2]}}},v=r.removePrefix(e,{negated:!1,prefix:""});let S=x(v);return S&&!0!==n.strictSlashes&&(S+=c+"?"),S},e.exports=f},828:(e,t,n)=>{const o=n(622),r=n(321),a=n(974),s=n(598),i=n(86),u=(e,t,n=!1)=>{if(Array.isArray(e)){const o=e.map(e=>u(e,t,n));return e=>{for(const t of o){const n=t(e);if(n)return n}return!1}}const o=(r=e)&&"object"==typeof r&&!Array.isArray(r)&&e.tokens&&e.input;var r;if(""===e||"string"!=typeof e&&!o)throw new TypeError("Expected pattern to be a non-empty string");const a=t||{},i=s.isWindows(t),l=o?u.compileRe(e,t):u.makeRe(e,t,!1,!0),p=l.state;delete l.state;let c=()=>!1;if(a.ignore){const e={...t,ignore:null,onMatch:null,onResult:null};c=u(a.ignore,e,n)}const f=(n,o=!1)=>{const{isMatch:r,match:s,output:f}=u.test(n,l,t,{glob:e,posix:i}),d={glob:e,state:p,regex:l,posix:i,input:n,output:f,match:s,isMatch:r};return"function"==typeof a.onResult&&a.onResult(d),!1===r?(d.isMatch=!1,!!o&&d):c(n)?("function"==typeof a.onIgnore&&a.onIgnore(d),d.isMatch=!1,!!o&&d):("function"==typeof a.onMatch&&a.onMatch(d),!o||d)};return n&&(f.state=p),f};u.test=(e,t,n,{glob:o,posix:r}={})=>{if("string"!=typeof e)throw new TypeError("Expected input to be a string");if(""===e)return{isMatch:!1,output:""};const a=n||{},i=a.format||(r?s.toPosixSlashes:null);let l=e===o,p=l&&i?i(e):e;return!1===l&&(p=i?i(e):e,l=p===o),!1!==l&&!0!==a.capture||(l=!0===a.matchBase||!0===a.basename?u.matchBase(e,t,n,r):t.exec(p)),{isMatch:Boolean(l),match:l,output:p}},u.matchBase=(e,t,n,r=s.isWindows(n))=>(t instanceof RegExp?t:u.makeRe(t,n)).test(o.basename(e)),u.isMatch=(e,t,n)=>u(t,n)(e),u.parse=(e,t)=>Array.isArray(e)?e.map(e=>u.parse(e,t)):a(e,{...t,fastpaths:!1}),u.scan=(e,t)=>r(e,t),u.compileRe=(e,t,n=!1,o=!1)=>{if(!0===n)return e.output;const r=t||{},a=r.contains?"":"^",s=r.contains?"":"$";let i=`${a}(?:${e.output})${s}`;e&&!0===e.negated&&(i=`^(?!${i}).*$`);const l=u.toRegex(i,t);return!0===o&&(l.state=e),l},u.makeRe=(e,t,n=!1,o=!1)=>{if(!e||"string"!=typeof e)throw new TypeError("Expected a non-empty string");const r=t||{};let s,i={negated:!1,fastpaths:!0},l="";return e.startsWith("./")&&(e=e.slice(2),l=i.prefix="./"),!1===r.fastpaths||"."!==e[0]&&"*"!==e[0]||(s=a.fastpaths(e,t)),void 0===s?(i=a(e,t),i.prefix=l+(i.prefix||"")):i.output=s,u.compileRe(i,t,n,o)},u.toRegex=(e,t)=>{try{const n=t||{};return new RegExp(e,n.flags||(n.nocase?"i":""))}catch(e){if(t&&!0===t.debug)throw e;return/$^/}},u.constants=i,e.exports=u},321:(e,t,n)=>{const o=n(598),{CHAR_ASTERISK:r,CHAR_AT:a,CHAR_BACKWARD_SLASH:s,CHAR_COMMA:i,CHAR_DOT:u,CHAR_EXCLAMATION_MARK:l,CHAR_FORWARD_SLASH:p,CHAR_LEFT_CURLY_BRACE:c,CHAR_LEFT_PARENTHESES:f,CHAR_LEFT_SQUARE_BRACKET:d,CHAR_PLUS:h,CHAR_QUESTION_MARK:g,CHAR_RIGHT_CURLY_BRACE:A,CHAR_RIGHT_PARENTHESES:R,CHAR_RIGHT_SQUARE_BRACKET:y}=n(86),m=e=>e===p||e===s,_=e=>{!0!==e.isPrefix&&(e.depth=e.isGlobstar?1/0:1)};e.exports=(e,t)=>{const n=t||{},E=e.length-1,C=!0===n.parts||!0===n.scanToEnd,b=[],x=[],v=[];let S,w,H=e,T=-1,L=0,k=0,O=!1,$=!1,N=!1,I=!1,B=!1,M=!1,P=!1,D=!1,U=!1,G=0,j={value:"",depth:0,isGlob:!1};const K=()=>T>=E,F=()=>(S=w,H.charCodeAt(++T));for(;T0&&(Q=H.slice(0,L),H=H.slice(L),k-=L),W&&!0===N&&k>0?(W=H.slice(0,k),X=H.slice(k)):!0===N?(W="",X=H):W=H,W&&""!==W&&"/"!==W&&W!==H&&m(W.charCodeAt(W.length-1))&&(W=W.slice(0,-1)),!0===n.unescape&&(X&&(X=o.removeBackslashes(X)),W&&!0===P&&(W=o.removeBackslashes(W)));const q={prefix:Q,input:e,start:L,base:W,glob:X,isBrace:O,isBracket:$,isGlob:N,isExtglob:I,isGlobstar:B,negated:D};if(!0===n.tokens&&(q.maxDepth=0,m(w)||x.push(j),q.tokens=x),!0===n.parts||!0===n.tokens){let t;for(let o=0;o{const o=n(622),r="win32"===process.platform,{REGEX_BACKSLASH:a,REGEX_REMOVE_BACKSLASH:s,REGEX_SPECIAL_CHARS:i,REGEX_SPECIAL_CHARS_GLOBAL:u}=n(86);t.isObject=e=>null!==e&&"object"==typeof e&&!Array.isArray(e),t.hasRegexChars=e=>i.test(e),t.isRegexChar=e=>1===e.length&&t.hasRegexChars(e),t.escapeRegex=e=>e.replace(u,"\\$1"),t.toPosixSlashes=e=>e.replace(a,"/"),t.removeBackslashes=e=>e.replace(s,e=>"\\"===e?"":e),t.supportsLookbehinds=()=>{const e=process.version.slice(1).split(".").map(Number);return 3===e.length&&e[0]>=9||8===e[0]&&e[1]>=10},t.isWindows=e=>e&&"boolean"==typeof e.windows?e.windows:!0===r||"\\"===o.sep,t.escapeLast=(e,n,o)=>{const r=e.lastIndexOf(n,o);return-1===r?e:"\\"===e[r-1]?t.escapeLast(e,n,r-1):`${e.slice(0,r)}\\${e.slice(r)}`},t.removePrefix=(e,t={})=>{let n=e;return n.startsWith("./")&&(n=n.slice(2),t.prefix="./"),n},t.wrapOutput=(e,t={},n={})=>{let o=`${n.contains?"":"^"}(?:${e})${n.contains?"":"$"}`;return!0===t.negated&&(o=`(?:^(?!${o}).*$)`),o}},615:(e,t,n)=>{ +/*! + * to-regex-range + * + * Copyright (c) 2015-present, Jon Schlinkert. + * Released under the MIT License. + */ +const o=n(761),r=(e,t,n)=>{if(!1===o(e))throw new TypeError("toRegexRange: expected the first argument to be a number");if(void 0===t||e===t)return String(e);if(!1===o(t))throw new TypeError("toRegexRange: expected the second argument to be a number.");let a={relaxZeros:!0,...n};"boolean"==typeof a.strictZeros&&(a.relaxZeros=!1===a.strictZeros);let u=e+":"+t+"="+String(a.relaxZeros)+String(a.shorthand)+String(a.capture)+String(a.wrap);if(r.cache.hasOwnProperty(u))return r.cache[u].result;let l=Math.min(e,t),p=Math.max(e,t);if(1===Math.abs(l-p)){let n=e+"|"+t;return a.capture?`(${n})`:!1===a.wrap?n:`(?:${n})`}let c=h(e)||h(t),f={min:e,max:t,a:l,b:p},d=[],g=[];if(c&&(f.isPadded=c,f.maxLen=String(f.max).length),l<0){g=s(p<0?Math.abs(p):1,Math.abs(l),f,a),l=f.a=0}return p>=0&&(d=s(l,p,f,a)),f.negatives=g,f.positives=d,f.result=function(e,t,n){let o=i(e,t,"-",!1,n)||[],r=i(t,e,"",!1,n)||[],a=i(e,t,"-?",!0,n)||[];return o.concat(a).concat(r).join("|")}(g,d,a),!0===a.capture?f.result=`(${f.result})`:!1!==a.wrap&&d.length+g.length>1&&(f.result=`(?:${f.result})`),r.cache[u]=f,f.result};function a(e,t,n){if(e===t)return{pattern:e,count:[],digits:0};let o=function(e,t){let n=[];for(let o=0;o1&&r.count.pop(),r.count.push(u.count[0]),r.string=r.pattern+f(r.count),l=t+1)}return i}function i(e,t,n,o,r){let a=[];for(let r of e){let{string:e}=r;o||l(t,"string",e)||a.push(n+e),o&&l(t,"string",e)&&a.push(n+e)}return a}function u(e,t){return e>t?1:t>e?-1:0}function l(e,t,n){return e.some(e=>e[t]===n)}function p(e,t){return Number(String(e).slice(0,-t)+"9".repeat(t))}function c(e,t){return e-e%Math.pow(10,t)}function f(e){let[t=0,n=""]=e;return n||t>1?`{${t+(n?","+n:"")}}`:""}function d(e,t,n){return`[${e}${t-e==1?"":"-"}${t}]`}function h(e){return/^-?(0+)\d/.test(e)}function g(e,t,n){if(!t.isPadded)return e;let o=Math.abs(t.maxLen-String(e).length),r=!1!==n.relaxZeros;switch(o){case 0:return"";case 1:return r?"0?":"0";case 2:return r?"0{0,2}":"00";default:return r?`0{0,${o}}`:`0{${o}}`}}r.cache={},r.clearCache=()=>r.cache={},e.exports=r},594:e=>{e.exports=require("@yarnpkg/cli")},966:e=>{e.exports=require("@yarnpkg/core")},42:e=>{e.exports=require("clipanion")},87:e=>{e.exports=require("os")},622:e=>{e.exports=require("path")},669:e=>{e.exports=require("util")},440:e=>{e.exports=require("yup")}},t={};function n(o){if(t[o])return t[o].exports;var r=t[o]={exports:{}};return e[o](r,r.exports,n),r.exports}return n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{for(var o in t)n.o(t,o)&&!n.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n(115)})(); +return plugin; +} +}; \ No newline at end of file diff --git a/.yarn/releases/yarn-berry.js b/.yarn/releases/yarn-berry.js new file mode 100755 index 000000000..508135c00 --- /dev/null +++ b/.yarn/releases/yarn-berry.js @@ -0,0 +1,106764 @@ +#!/usr/bin/env node +module.exports = (() => { + var __webpack_modules__ = { + 49775: (e) => { + 'use strict'; + e.exports = JSON.parse('{"u2":"@yarnpkg/plugin-compat"}'); + }, + 35729: (e) => { + 'use strict'; + e.exports = JSON.parse('{"u2":"@yarnpkg/plugin-dlx"}'); + }, + 37904: (e) => { + 'use strict'; + e.exports = JSON.parse('{"u2":"@yarnpkg/plugin-essentials"}'); + }, + 17508: (e) => { + 'use strict'; + e.exports = JSON.parse('{"u2":"@yarnpkg/plugin-file"}'); + }, + 84779: (e) => { + 'use strict'; + e.exports = JSON.parse('{"u2":"@yarnpkg/plugin-git"}'); + }, + 88454: (e) => { + 'use strict'; + e.exports = JSON.parse('{"u2":"@yarnpkg/plugin-github"}'); + }, + 91953: (e) => { + 'use strict'; + e.exports = JSON.parse('{"u2":"@yarnpkg/plugin-http"}'); + }, + 63756: (e) => { + 'use strict'; + e.exports = JSON.parse('{"u2":"@yarnpkg/plugin-init"}'); + }, + 23100: (e) => { + 'use strict'; + e.exports = JSON.parse('{"u2":"@yarnpkg/plugin-link"}'); + }, + 47047: (e) => { + 'use strict'; + e.exports = JSON.parse('{"u2":"@yarnpkg/plugin-node-modules"}'); + }, + 31880: (e) => { + 'use strict'; + e.exports = JSON.parse('{"u2":"@yarnpkg/plugin-npm-cli"}'); + }, + 67310: (e) => { + 'use strict'; + e.exports = JSON.parse('{"u2":"@yarnpkg/plugin-npm"}'); + }, + 74617: (e) => { + 'use strict'; + e.exports = JSON.parse('{"u2":"@yarnpkg/plugin-pack"}'); + }, + 12437: (e) => { + 'use strict'; + e.exports = JSON.parse('{"u2":"@yarnpkg/plugin-patch"}'); + }, + 8211: (e) => { + 'use strict'; + e.exports = JSON.parse('{"u2":"@yarnpkg/plugin-pnp"}'); + }, + 80150: (e, t, r) => { + 'use strict'; + r.r(t), r.d(t, { default: () => u }); + var n = r(84132); + const i = { optional: !0 }, + o = [ + [ + '@samverschueren/stream-to-observable@*', + { peerDependenciesMeta: { rxjs: i, zenObservable: i } }, + ], + ['any-observable@<0.5.1', { peerDependenciesMeta: { rxjs: i, zenObservable: i } }], + ['@pm2/agent@<1.0.4', { dependencies: { debug: '*' } }], + ['debug@*', { peerDependenciesMeta: { 'supports-color': i } }], + [ + 'got@<11', + { dependencies: { '@types/responselike': '^1.0.0', '@types/keyv': '^3.1.1' } }, + ], + ['cacheable-lookup@<4.1.2', { dependencies: { '@types/keyv': '^3.1.1' } }], + ['http-link-dataloader@*', { peerDependencies: { graphql: '^0.13.1 || ^14.0.0' } }], + [ + 'typescript-language-server@*', + { + dependencies: { + 'vscode-jsonrpc': '^5.0.1', + 'vscode-languageserver-protocol': '^3.15.0', + }, + }, + ], + [ + 'postcss-syntax@*', + { + peerDependenciesMeta: { + 'postcss-html': i, + 'postcss-jsx': i, + 'postcss-less': i, + 'postcss-markdown': i, + 'postcss-scss': i, + }, + }, + ], + [ + 'jss-plugin-rule-value-function@<=10.1.1', + { dependencies: { 'tiny-warning': '^1.0.2' } }, + ], + ], + s = r(78761) + .brotliDecompressSync( + Buffer.from( + 'G8EIABwHuTnyDkxeQiomXep01zJ90cJ3iFSgGcnN+dVTE5YC1CBsZn0bRMFnq2+/bPJOWLRlcCblbWaytN6yn94lDuHQVXEMzob/mhDOafB/uXcOjPnzEX5TF8I/4H+A7n4PCzSY0xTuWjDfxxV8F1neM4x7jymltl+dnYEp13SxCOpkQxUClagaNItavHVUdwD73pT3+c52oJFtOTmagkX/GAaKFyr1bLfAnKMY+OZmY+0YsC6Sci7AJQI2zADQHhdIcc03Dz+GOC05kpj3M0kiNKsdFu1U3ornmwco/hOeYDp3IUlCIQqaE6eg8ho+SQaBwAeE4PktvsKmDJJy8fXAx0jTz4Oj2wWKVgNnuMz/CR5AZNuo2eZk0HwujkkFQBytGPu+p1RoCpRBYVcTf7REjfuVBUIa+MgTpb+ZaKgASLlmw2dFNlIsdYEsSntc1vhEJfQLSkVdBXXK67OUoZjcjVu8DPd8oSwu1vK52tVmsLNeekvJW3ss4Z1+thxuul1A0bzLBLT7MQMQxaGNFQUpvaAsmmOVo1hZFKHViytsKRvkULx6+VpOghLO9W/tHqSTQkqQkLWIKtzBlsPNUviOym6eOz3jjDM43Jfi2pXbla5apaLf+jR3njZPcG1zp9bxgi6Acg2V4n8rU8+1ANM2CXkW5tkqS6QfhnL1z8/s5G8r/f4omOaXOkzbHh9HdPhfxz9Tftr698n6L7UYF/L089Ch+9QgeDSlUXdaBAyLU3G6bkC5ygWmNqZMBYJHB6iFj4uo0iI9yR5r3KUooI0Zg1IkiYsgqxR8jMug6VgwtyIaxNxP30CqZH3zo/g16/wof1VdCLhd+YIOeBHFhA/D2eAvyld7FIAT8EiOA1Msg41mq8UNYCwZt2Pc519uZYhp9gP6kOwhcU+Ydc0CsPIqfy0ZGgbIKNYGZ+RP4ESfRzdDW6vhSsXuu2VB29YEdri/7CbQ7XCsVevHtY2mms7dVEMb6Wa/Ln6ZokATZTjZ/kMMNoWEp0AqBKG0DaCyBxlBsylqymr/6xM+mxOAAVREIXXGnW4IXuQ5oSGimw0C7BKZb3ZDLEWtkWXM5FB7jjp37QA=', + 'base64' + ) + ) + .toString(), + A = r(78761) + .brotliDecompressSync( + Buffer.from( + 'G1QTIIzURnVBnGa0VPvr81orV8AFIqdU0sqrdcVgCdukgAZwi8a50gLk9+19Z2NcUILjmzXkzt4dzm5a6Yoys+/9qnKiaApXukOiuoyUaMcynG4X7X4vBaIE/PL30gwG6HSGJkLxb9PnLjfMr+748n7sM6C/NycK6ber/bX1reVVxta6W/31tZIhfrS+upoE/TPRHj0S/l0T59gTGdtKOp1OmMOJt9rhfucDdLJ2tgyfnO+u4YMkQAcYq/nebTcDmbXhqhgo6iQA4M3m4xya4Cos3p6klmkmQT+S4DLDZfwfMF+sUCx36KleOtaHLQfEIz0Bmncj/Ngi3lqOl4391EWEfIss6gVp3oDUGwsSZJKeOVONJWZg+Mue3KUMV3aMqYJ+7b2219D+GFDi8EV5y/Y+5J+He0oNjKAgqLsJziEsS9uIaCu3BHBKSXxNKKa2ShbfglcWoiiVT2kfGI7Gw+YJ/Sqy1H6wdFWtyVUQIa82JPwbeV25YKLzc5ZIFM6GCPSA+J9dTvJbs5LuuKnLP3f09gCu2jxqsAv6CA+ZySVaUJr2d3A70BC/uBCKr2OVrWgC3fSwb7NlfkgSEEiejrMGvhya9lMbVI6lMsFKN330A1/FOaefHQdNGLEZ3IwFF87H3xVlM0Xxsmbi/7A60oymRcIe0tH90alG6ez/yA7jwYotxuHWZdR+1HlMcddGHAV6QD/gXYPV0wnNv47I+5FGevzZFMqWSO8GU4nQ3FjsdgdJcD+c1rvudERKuLyd7bxiBpnsMDHsvPP4nXdXkld/gUNks3GAE1Otmb90bavDyiw4Mrx496Iw+jbLTgsCZGZXSZ9vM55C7KGe4HyJAKXEk0iT/Cj/PFwLJBN7pcP7ZFfYtUApGTWKkYhI9IE2zt/5ByH72wdvH+88b71zuv/FMCX3w6x5nzhY44Cg5IYv9LeKwHuHIWgPbfgrAcUxOlKkPRdQOIDF/aBuLPJAXD+TgxCNXx4jQxeR/qlBWVikFPfEI4rXMUc4kZ2w9KbPKYRvFUag0dVlVoyUP4zfidbTXAdZF88jAckl+NHjLFCNdX7EQ1PbLSOl+P+MqgwEOCi6dxgWZ7NCwJBjWKpk1LaxwKrhZ4aEC/0lMPJYe5S8xAakDcmA2kSS86GjEMTrv3VEu0S0YGZcxToMV524G4WAc4CReePePdipvs4aXRL5p+aeN96yfMGjsiTbQNxgbdRKc+keQ+NxYIEm1mBtEO29WrcbrqNbQRMR66KpGG4aG0NtmRyZ2JhUvu0paCklRlID8PT3gSiwZrqr4XZXoBBzBMrveWCuOg7iTgGDXDdbGi8XHkQf5KXDGFUxWueu5wkSa6gMWY1599g2piQjwBKIAPt4N5cOZdFBidz2feGwEAy1j1UydGxDSCCUsh314cUIIRV/dWCheceubL2gU8CibewmP7UxmN5kN4I7zfQhPxkP0NCcei8GXQpw4c3krEzW7PR2hgi/hqqqR58UJ/ZVfWxfcH5ZKMo4itkmPK0FCGxzzIRP20lK/gz28Y03sY233KvSVWUKl9rcbX6MbHjpUG8MvNlw72p6FwTejv92zgpnCxVJnIHHZhCBxNcHF5RTveRp513hUtTHHq4BIndlytZT5xoTSYfHKqKNr4o9kcGINIz6tZSKRdtbON3Ydr9cgqxHIeisMNIsvPg/IFMZuBbSqqDLeSO5dak1cGr76FtH2PC7hs0S0Oq3GsmF1Ga4YABAMGcdPAWzTk26B7cKV91I2b0V/GYvnsEQ1YGntRqi5EQqTlgZszbV/32GuZtUF49JOA/r4jAdwUOsbPo6mNoBlJPYjM5axrZaWQf33bFsLWqiyvvDOM4x0Ng802T7cuP2a3q98GWq6yiq6q3M77hcZlOUnmryctRYmI4Hb2F5XixFohkBmySCjU+M7/WQVE5YAtnlxiUJDhFN0y1tNeMWY9E0MfZi2rQ4eC72WXjsAA==', + 'base64' + ) + ) + .toString(), + a = r(78761) + .brotliDecompressSync( + Buffer.from( + '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', + 'base64' + ) + ) + .toString(), + c = new Map([ + [n.structUtils.makeIdent(null, 'fsevents').identHash, s], + [n.structUtils.makeIdent(null, 'resolve').identHash, A], + [n.structUtils.makeIdent(null, 'typescript').identHash, a], + ]), + u = { + hooks: { + registerPackageExtensions: async (e, t) => { + for (const [e, r] of o) t(n.structUtils.parseDescriptor(e, !0), r); + }, + getBuiltinPatch: async (e, t) => { + if (!t.startsWith('compat/')) return; + const r = n.structUtils.parseIdent(t.slice('compat/'.length)), + i = c.get(r.identHash); + return void 0 !== i ? i : null; + }, + reduceDependency: async (e, t, r, i) => + void 0 === c.get(e.identHash) + ? e + : n.structUtils.makeDescriptor( + e, + n.structUtils.makeRange({ + protocol: 'patch:', + source: n.structUtils.stringifyDescriptor(e), + selector: `builtin`, + params: null, + }) + ), + }, + }; + }, + 10420: (e, t, r) => { + 'use strict'; + r.r(t), r.d(t, { default: () => g }); + var n = r(36370), + i = r(95397), + o = r(84132), + s = r(17278); + class A extends i.BaseCommand { + constructor() { + super(...arguments), (this.quiet = !1), (this.args = []); + } + async execute() { + const e = []; + this.pkg && e.push('--package', this.pkg), this.quiet && e.push('--quiet'); + const t = o.structUtils.parseIdent(this.command), + r = o.structUtils.makeIdent(t.scope, 'create-' + t.name); + return this.cli.run(['dlx', ...e, o.structUtils.stringifyIdent(r), ...this.args]); + } + } + (0, n.gn)([s.Command.String('-p,--package')], A.prototype, 'pkg', void 0), + (0, n.gn)([s.Command.Boolean('-q,--quiet')], A.prototype, 'quiet', void 0), + (0, n.gn)([s.Command.String()], A.prototype, 'command', void 0), + (0, n.gn)([s.Command.Proxy()], A.prototype, 'args', void 0), + (0, n.gn)([s.Command.Path('create')], A.prototype, 'execute', null); + var a = r(27122), + c = r(40376), + u = r(56537), + l = r(46009); + class h extends i.BaseCommand { + constructor() { + super(...arguments), (this.quiet = !1), (this.args = []); + } + async execute() { + return await u.xfs.mktempPromise(async (e) => { + const t = l.y1.join(e, 'dlx-' + process.pid); + await u.xfs.mkdirPromise(t), + await u.xfs.writeFilePromise(l.y1.join(t, (0, l.Zu)('package.json')), '{}\n'), + await u.xfs.writeFilePromise(l.y1.join(t, (0, l.Zu)('yarn.lock')), ''); + const r = l.y1.join(t, (0, l.Zu)('.yarnrc.yml')), + n = await a.VK.findProjectCwd(this.context.cwd, l.QS.lockfile), + s = null !== n ? l.y1.join(n, (0, l.Zu)('.yarnrc.yml')) : null; + null !== s && u.xfs.existsSync(s) + ? (await u.xfs.copyFilePromise(s, r), + await a.VK.updateConfiguration(t, (e) => + void 0 === e.plugins + ? { enableGlobalCache: !0 } + : { + enableGlobalCache: !0, + plugins: e.plugins.map((e) => { + const t = 'string' == typeof e ? e : e.path, + r = l.cS.isAbsolute(t) + ? t + : l.cS.resolve(l.cS.fromPortablePath(n), t); + return 'string' == typeof e ? r : { path: r, spec: e.spec }; + }), + } + )) + : await u.xfs.writeFilePromise(r, 'enableGlobalCache: true\n'); + const A = void 0 !== this.pkg ? [this.pkg] : [this.command], + h = o.structUtils.parseDescriptor(this.command).name, + g = await this.cli.run(['add', '--', ...A], { cwd: t, quiet: this.quiet }); + if (0 !== g) return g; + this.quiet || this.context.stdout.write('\n'); + const f = await a.VK.find(t, this.context.plugins), + { project: p, workspace: d } = await c.I.find(f, t); + if (null === d) throw new i.WorkspaceRequiredError(p.cwd, t); + return ( + await p.restoreInstallState(), + await o.scriptUtils.executeWorkspaceAccessibleBinary(d, h, this.args, { + cwd: this.context.cwd, + stdin: this.context.stdin, + stdout: this.context.stdout, + stderr: this.context.stderr, + }) + ); + }); + } + } + (h.usage = s.Command.Usage({ + description: 'run a package in a temporary environment', + details: + "\n This command will install a package within a temporary environment, and run its binary script if it contains any. The binary will run within the current cwd.\n\n By default Yarn will download the package named `command`, but this can be changed through the use of the `-p,--package` flag which will instruct Yarn to still run the same command but from a different package.\n\n Also by default Yarn will print the full install logs when installing the given package. This behavior can be disabled by using the `-q,--quiet` flag which will instruct Yarn to only report critical errors.\n\n Using `yarn dlx` as a replacement of `yarn add` isn't recommended, as it makes your project non-deterministic (Yarn doesn't keep track of the packages installed through `dlx` - neither their name, nor their version).\n ", + examples: [ + [ + 'Use create-react-app to create a new React app', + 'yarn dlx create-react-app ./my-app', + ], + ], + })), + (0, n.gn)([s.Command.String('-p,--package')], h.prototype, 'pkg', void 0), + (0, n.gn)([s.Command.Boolean('-q,--quiet')], h.prototype, 'quiet', void 0), + (0, n.gn)([s.Command.String()], h.prototype, 'command', void 0), + (0, n.gn)([s.Command.Proxy()], h.prototype, 'args', void 0), + (0, n.gn)([s.Command.Path('dlx')], h.prototype, 'execute', null); + const g = { commands: [A, h] }; + }, + 72926: (e, t, r) => { + 'use strict'; + r.r(t), r.d(t, { suggestUtils: () => n, default: () => Ke }); + var n = {}; + r.r(n), + r.d(n, { + Modifier: () => o, + Strategy: () => s, + Target: () => i, + applyModifier: () => b, + extractDescriptorFromPath: () => k, + extractRangeModifier: () => D, + fetchDescriptorFrom: () => F, + findProjectDescriptors: () => S, + getModifier: () => Q, + getSuggestedDescriptors: () => x, + }); + var i, + o, + s, + A = r(27122), + a = r(36370), + c = r(95397), + u = r(28148), + l = r(62152), + h = r(92659), + g = r(40376), + f = r(15815), + p = r(84132), + d = r(17278), + C = r(9494), + E = r.n(C), + I = r(33720), + m = r(46611), + y = r(46009), + w = r(53887), + B = r.n(w); + function Q(e, t) { + return e.exact + ? o.EXACT + : e.caret + ? o.CARET + : e.tilde + ? o.TILDE + : t.configuration.get('defaultSemverRangePrefix'); + } + !(function (e) { + (e.REGULAR = 'dependencies'), + (e.DEVELOPMENT = 'devDependencies'), + (e.PEER = 'peerDependencies'); + })(i || (i = {})), + (function (e) { + (e.CARET = '^'), (e.TILDE = '~'), (e.EXACT = ''); + })(o || (o = {})), + (function (e) { + (e.KEEP = 'keep'), + (e.REUSE = 'reuse'), + (e.PROJECT = 'project'), + (e.LATEST = 'latest'), + (e.CACHE = 'cache'); + })(s || (s = {})); + const v = /^([\^~]?)[0-9]+(?:\.[0-9]+){0,2}(?:-\S+)?$/; + function D(e, { project: t }) { + const r = e.match(v); + return r ? r[1] : t.configuration.get('defaultSemverRangePrefix'); + } + function b(e, t) { + let { protocol: r, source: n, params: i, selector: o } = p.structUtils.parseRange( + e.range + ); + return ( + B().valid(o) && (o = `${t}${e.range}`), + p.structUtils.makeDescriptor( + e, + p.structUtils.makeRange({ protocol: r, source: n, params: i, selector: o }) + ) + ); + } + async function S(e, { project: t, target: r }) { + const n = new Map(), + o = (e) => { + let t = n.get(e.descriptorHash); + return t || n.set(e.descriptorHash, (t = { descriptor: e, locators: [] })), t; + }; + for (const n of t.workspaces) + if (r === i.PEER) { + const t = n.manifest.peerDependencies.get(e.identHash); + void 0 !== t && o(t).locators.push(n.locator); + } else { + const t = n.manifest.dependencies.get(e.identHash), + s = n.manifest.devDependencies.get(e.identHash); + r === i.DEVELOPMENT + ? void 0 !== s + ? o(s).locators.push(n.locator) + : void 0 !== t && o(t).locators.push(n.locator) + : void 0 !== t + ? o(t).locators.push(n.locator) + : void 0 !== s && o(s).locators.push(n.locator); + } + return n; + } + async function k(e, { cache: t, cwd: r, workspace: n }) { + y.y1.isAbsolute(e) || (e = y.y1.resolve(r, e)); + const i = n.project, + o = await F(p.structUtils.makeIdent(null, 'archive'), e, { + project: n.project, + cache: t, + }); + if (!o) throw new Error('Assertion failed: The descriptor should have been found'); + const s = new I.$(), + A = i.configuration.makeResolver(), + a = i.configuration.makeFetcher(), + c = { + checksums: i.storedChecksums, + project: i, + cache: t, + fetcher: a, + report: s, + resolver: A, + }, + u = A.bindDescriptor(o, n.anchoredLocator, c), + l = p.structUtils.convertDescriptorToLocator(u), + h = await a.fetch(l, c), + g = await m.G.find(h.prefixPath, { baseFs: h.packageFs }); + if (!g.name) throw new Error("Target path doesn't have a name"); + return p.structUtils.makeDescriptor(g.name, e); + } + async function x( + e, + { + project: t, + workspace: r, + cache: n, + target: o, + modifier: A, + strategies: a, + maxResults: c = 1 / 0, + } + ) { + if (!(c >= 0)) throw new Error(`Invalid maxResults (${c})`); + if ('unknown' !== e.range) + return [{ descriptor: e, reason: 'Unambiguous explicit request' }]; + const u = (null != r && r.manifest[o].get(e.identHash)) || null, + l = []; + for (const h of a) { + if (l.length >= c) break; + switch (h) { + case s.KEEP: + if (u) { + const e = `Keep ${p.structUtils.prettyDescriptor( + t.configuration, + u + )} (no changes)`; + l.push({ descriptor: u, reason: e }); + } + break; + case s.REUSE: + for (const { descriptor: n, locators: i } of ( + await S(e, { project: t, target: o }) + ).values()) { + if ( + 1 === i.length && + i[0].locatorHash === r.anchoredLocator.locatorHash && + a.includes(s.KEEP) + ) + continue; + let e = `Reuse ${p.structUtils.prettyDescriptor( + t.configuration, + n + )} (originally used by ${p.structUtils.prettyLocator(t.configuration, i[0])}`; + (e += + i.length > 1 ? ` and ${i.length - 1} other${i.length > 2 ? 's' : ''})` : ')'), + l.push({ descriptor: n, reason: e }); + } + break; + case s.CACHE: + for (const r of t.storedDescriptors.values()) + if (r.identHash === e.identHash) { + const e = `Reuse ${p.structUtils.prettyDescriptor( + t.configuration, + r + )} (already used somewhere in the lockfile)`; + l.push({ descriptor: r, reason: e }); + } + break; + case s.PROJECT: + { + if (null !== r.manifest.name && e.identHash === r.manifest.name.identHash) + continue; + const n = t.tryWorkspaceByIdent(e); + if (null === n) continue; + const i = `Attach ${p.structUtils.prettyWorkspace( + t.configuration, + n + )} (local workspace at ${n.cwd})`; + l.push({ descriptor: n.anchoredDescriptor, reason: i }); + } + break; + case s.LATEST: + if ('unknown' !== e.range) { + const r = `Use ${p.structUtils.prettyRange( + t.configuration, + e.range + )} (explicit range requested)`; + l.push({ descriptor: e, reason: r }); + } else if (o === i.PEER) { + const t = 'Use * (catch-all peer dependency pattern)'; + l.push({ descriptor: p.structUtils.makeDescriptor(e, '*'), reason: t }); + } else if (t.configuration.get('enableNetwork')) { + let r; + try { + r = await F(e, 'latest', { project: t, cache: n, preserveModifier: !1 }); + } catch (e) {} + if (r) { + r = b(r, A); + const e = `Use ${p.structUtils.prettyDescriptor( + t.configuration, + r + )} (resolved from latest)`; + l.push({ descriptor: r, reason: e }); + } + } else { + const e = + 'Resolve from latest ' + + t.configuration.format( + '(unavailable because enableNetwork is toggled off)', + 'grey' + ); + l.push({ descriptor: null, reason: e }); + } + } + } + return l.slice(0, c); + } + async function F(e, t, { project: r, cache: n, preserveModifier: i = !0 }) { + const o = p.structUtils.makeDescriptor(e, t), + s = new I.$(), + A = r.configuration.makeFetcher(), + a = r.configuration.makeResolver(), + c = { + checksums: r.storedChecksums, + project: r, + cache: n, + fetcher: A, + report: s, + resolver: a, + }; + let u; + try { + u = await a.getCandidates(o, new Map(), c); + } catch (e) { + return null; + } + if (0 === u.length) return null; + const l = u[0]; + let { protocol: h, source: g, params: f, selector: d } = p.structUtils.parseRange( + p.structUtils.convertToManifestRange(l.reference) + ); + if ( + (h === r.configuration.get('defaultProtocol') && (h = null), B().valid(d) && !1 !== i) + ) { + d = D('string' == typeof i ? i : o.range, { project: r }) + d; + } + return p.structUtils.makeDescriptor( + l, + p.structUtils.makeRange({ protocol: h, source: g, params: f, selector: d }) + ); + } + class M extends c.BaseCommand { + constructor() { + super(...arguments), + (this.packages = []), + (this.json = !1), + (this.exact = !1), + (this.tilde = !1), + (this.caret = !1), + (this.dev = !1), + (this.peer = !1), + (this.optional = !1), + (this.preferDev = !1), + (this.interactive = !1), + (this.cached = !1); + } + async execute() { + const e = await A.VK.find(this.context.cwd, this.context.plugins), + { project: t, workspace: r } = await g.I.find(e, this.context.cwd), + n = await u.C.find(e); + if (!r) throw new c.WorkspaceRequiredError(t.cwd, this.context.cwd); + const o = E().createPromptModule({ + input: this.context.stdin, + output: this.context.stdout, + }), + a = Q(this, t), + C = [ + ...(this.interactive ? [s.REUSE] : []), + s.PROJECT, + ...(this.cached ? [s.CACHE] : []), + s.LATEST, + ], + I = this.interactive ? 1 / 0 : 1, + m = await Promise.all( + this.packages.map(async (e) => { + const o = e.match(/^\.{0,2}\//) + ? await k(e, { cache: n, cwd: this.context.cwd, workspace: r }) + : p.structUtils.parseDescriptor(e), + s = (function (e, t, { dev: r, peer: n, preferDev: o, optional: s }) { + const A = e.manifest[i.REGULAR].has(t.identHash), + a = e.manifest[i.DEVELOPMENT].has(t.identHash), + c = e.manifest[i.PEER].has(t.identHash); + if ((r || n) && A) + throw new d.UsageError( + `Package "${p.structUtils.prettyIdent( + e.project.configuration, + t + )}" is already listed as a regular dependency - remove the -D,-P flags or remove it from your dependencies first` + ); + if (!r && !n && c) + throw new d.UsageError( + `Package "${p.structUtils.prettyIdent( + e.project.configuration, + t + )}" is already listed as a peer dependency - use either of -D or -P, or remove it from your peer dependencies first` + ); + if (s && a) + throw new d.UsageError( + `Package "${p.structUtils.prettyIdent( + e.project.configuration, + t + )}" is already listed as a dev dependency - remove the -O flag or remove it from your dev dependencies first` + ); + if (s && !n && c) + throw new d.UsageError( + `Package "${p.structUtils.prettyIdent( + e.project.configuration, + t + )}" is already listed as a peer dependency - remove the -O flag or add the -P flag or remove it from your peer dependencies first` + ); + if ((r || o) && s) + throw new d.UsageError( + `Package "${p.structUtils.prettyIdent( + e.project.configuration, + t + )}" cannot simultaneously be a dev dependency and an optional dependency` + ); + return n + ? i.PEER + : r || o + ? i.DEVELOPMENT + : A + ? i.REGULAR + : a + ? i.DEVELOPMENT + : i.REGULAR; + })(r, o, { + dev: this.dev, + peer: this.peer, + preferDev: this.preferDev, + optional: this.optional, + }); + return [ + o, + await x(o, { + project: t, + workspace: r, + cache: n, + target: s, + modifier: a, + strategies: C, + maxResults: I, + }), + s, + ]; + }) + ), + y = await l.h.start( + { configuration: e, stdout: this.context.stdout, suggestInstall: !1 }, + async (r) => { + for (const [n, i] of m) { + 0 === i.filter((e) => null !== e.descriptor).length && + (t.configuration.get('enableNetwork') + ? r.reportError( + h.b.CANT_SUGGEST_RESOLUTIONS, + p.structUtils.prettyDescriptor(e, n) + + " can't be resolved to a satisfying range" + ) + : r.reportError( + h.b.CANT_SUGGEST_RESOLUTIONS, + p.structUtils.prettyDescriptor(e, n) + + " can't be resolved to a satisfying range (note: network resolution has been disabled)" + )); + } + } + ); + if (y.hasErrors()) return y.exitCode(); + let w = !1; + const B = [], + v = []; + for (const [, e, n] of m) { + let i; + const s = e.filter((e) => null !== e.descriptor), + A = s[0].descriptor, + a = s.every((e) => p.structUtils.areDescriptorsEqual(e.descriptor, A)); + 1 === s.length || a + ? (i = A) + : ((w = !0), + ({ answer: i } = await o({ + type: 'list', + name: 'answer', + message: 'Which range do you want to use?', + choices: e.map(({ descriptor: e, reason: r }) => + e + ? { + name: r, + value: e, + short: p.structUtils.prettyDescriptor(t.configuration, e), + } + : { name: r, disabled: () => !0 } + ), + }))); + const c = r.manifest[n].get(i.identHash); + (void 0 !== c && c.descriptorHash === i.descriptorHash) || + (r.manifest[n].set(i.identHash, i), + this.optional && + ('dependencies' === n + ? (r.manifest.ensureDependencyMeta({ ...i, range: 'unknown' }).optional = !0) + : 'peerDependencies' === n && + (r.manifest.ensurePeerDependencyMeta({ + ...i, + range: 'unknown', + }).optional = !0)), + void 0 === c ? B.push([r, n, i, C]) : v.push([r, n, c, i])); + } + await e.triggerMultipleHooks((e) => e.afterWorkspaceDependencyAddition, B), + await e.triggerMultipleHooks((e) => e.afterWorkspaceDependencyReplacement, v), + w && this.context.stdout.write('\n'); + return ( + await f.P.start( + { + configuration: e, + json: this.json, + stdout: this.context.stdout, + includeLogs: !this.context.quiet, + }, + async (e) => { + await t.install({ cache: n, report: e }); + } + ) + ).exitCode(); + } + } + (M.usage = d.Command.Usage({ + description: 'add dependencies to the project', + details: + "\n This command adds a package to the package.json for the nearest workspace.\n\n - If it didn't exist before, the package will by default be added to the regular `dependencies` field, but this behavior can be overriden thanks to the `-D,--dev` flag (which will cause the dependency to be added to the `devDependencies` field instead) and the `-P,--peer` flag (which will do the same but for `peerDependencies`).\n\n - If the package was already listed in your dependencies, it will by default be upgraded whether it's part of your `dependencies` or `devDependencies` (it won't ever update `peerDependencies`, though).\n\n - If set, the `--prefer-dev` flag will operate as a more flexible `-D,--dev` in that it will add the package to your `devDependencies` if it isn't already listed in either `dependencies` or `devDependencies`, but it will also happily upgrade your `dependencies` if that's what you already use (whereas `-D,--dev` would throw an exception).\n\n - If set, the `-O,--optional` flag will add the package to the `optionalDependencies` field and, in combination with the `-P,--peer` flag, it will add the package as an optional peer dependency. If the package was already listed in your `dependencies`, it will be upgraded to `optionalDependencies`. If the package was already listed in your `peerDependencies`, in combination with the `-P,--peer` flag, it will be upgraded to an optional peer dependency: `\"peerDependenciesMeta\": { \"\": { \"optional\": true } }`\n\n - If the added package doesn't specify a range at all its `latest` tag will be resolved and the returned version will be used to generate a new semver range (using the `^` modifier by default unless otherwise configured via the `savePrefix` configuration, or the `~` modifier if `-T,--tilde` is specified, or no modifier at all if `-E,--exact` is specified). Two exceptions to this rule: the first one is that if the package is a workspace then its local version will be used, and the second one is that if you use `-P,--peer` the default range will be `*` and won't be resolved at all.\n\n - If the added package specifies a tag range (such as `latest` or `rc`), Yarn will resolve this tag to a semver version and use that in the resulting package.json entry (meaning that `yarn add foo@latest` will have exactly the same effect as `yarn add foo`).\n\n If the `--cached` option is used, Yarn will preferably reuse the highest version already used somewhere within the project, even if through a transitive dependency.\n\n If the `-i,--interactive` option is used (or if the `preferInteractive` settings is toggled on) the command will first try to check whether other workspaces in the project use the specified package and, if so, will offer to reuse them.\n\n If the `--json` flag is set the output will follow a JSON-stream output also known as NDJSON (https://github.com/ndjson/ndjson-spec).\n\n For a compilation of all the supported protocols, please consult the dedicated page from our website: .\n ", + examples: [ + ['Add a regular package to the current workspace', '$0 add lodash'], + [ + 'Add a specific version for a package to the current workspace', + '$0 add lodash@1.2.3', + ], + [ + 'Add a package from a GitHub repository (the master branch) to the current workspace using a URL', + '$0 add lodash@https://github.com/lodash/lodash', + ], + [ + 'Add a package from a GitHub repository (the master branch) to the current workspace using the GitHub protocol', + '$0 add lodash@github:lodash/lodash', + ], + [ + 'Add a package from a GitHub repository (the master branch) to the current workspace using the GitHub protocol (shorthand)', + '$0 add lodash@lodash/lodash', + ], + [ + 'Add a package from a specific branch of a GitHub repository to the current workspace using the GitHub protocol (shorthand)', + '$0 add lodash-es@lodash/lodash#es', + ], + ], + })), + (0, a.gn)([d.Command.Rest()], M.prototype, 'packages', void 0), + (0, a.gn)([d.Command.Boolean('--json')], M.prototype, 'json', void 0), + (0, a.gn)([d.Command.Boolean('-E,--exact')], M.prototype, 'exact', void 0), + (0, a.gn)([d.Command.Boolean('-T,--tilde')], M.prototype, 'tilde', void 0), + (0, a.gn)([d.Command.Boolean('-C,--caret')], M.prototype, 'caret', void 0), + (0, a.gn)([d.Command.Boolean('-D,--dev')], M.prototype, 'dev', void 0), + (0, a.gn)([d.Command.Boolean('-P,--peer')], M.prototype, 'peer', void 0), + (0, a.gn)([d.Command.Boolean('-O,--optional')], M.prototype, 'optional', void 0), + (0, a.gn)([d.Command.Boolean('--prefer-dev')], M.prototype, 'preferDev', void 0), + (0, a.gn)([d.Command.Boolean('-i,--interactive')], M.prototype, 'interactive', void 0), + (0, a.gn)([d.Command.Boolean('--cached')], M.prototype, 'cached', void 0), + (0, a.gn)([d.Command.Path('add')], M.prototype, 'execute', null); + class N extends c.BaseCommand { + constructor() { + super(...arguments), (this.verbose = !1), (this.json = !1); + } + async execute() { + const e = await A.VK.find(this.context.cwd, this.context.plugins), + { project: t, locator: r } = await g.I.find(e, this.context.cwd); + if ((await t.restoreInstallState(), this.name)) { + const n = (await p.scriptUtils.getPackageAccessibleBinaries(r, { project: t })).get( + this.name + ); + if (!n) + throw new d.UsageError( + `Couldn't find a binary named "${ + this.name + }" for package "${p.structUtils.prettyLocator(e, r)}"` + ); + const [, i] = n; + return this.context.stdout.write(i + '\n'), 0; + } + return ( + await f.P.start( + { configuration: e, json: this.json, stdout: this.context.stdout }, + async (n) => { + const i = await p.scriptUtils.getPackageAccessibleBinaries(r, { project: t }), + o = Array.from(i.keys()).reduce((e, t) => Math.max(e, t.length), 0); + for (const [e, [t, r]] of i) + n.reportJson({ name: e, source: p.structUtils.stringifyIdent(t), path: r }); + if (this.verbose) + for (const [t, [r]] of i) + n.reportInfo( + null, + `${t.padEnd(o, ' ')} ${p.structUtils.prettyLocator(e, r)}` + ); + else for (const e of i.keys()) n.reportInfo(null, e); + } + ) + ).exitCode(); + } + } + (N.usage = d.Command.Usage({ + description: 'get the path to a binary script', + details: + '\n When used without arguments, this command will print the list of all the binaries available in the current workspace. Adding the `-v,--verbose` flag will cause the output to contain both the binary name and the locator of the package that provides the binary.\n\n When an argument is specified, this command will just print the path to the binary on the standard output and exit. Note that the reported path may be stored within a zip archive.\n\n If the `--json` flag is set the output will follow a JSON-stream output also known as NDJSON (https://github.com/ndjson/ndjson-spec).\n ', + examples: [ + ['List all the available binaries', '$0 bin'], + ['Print the path to a specific binary', '$0 bin eslint'], + ], + })), + (0, a.gn)([d.Command.String({ required: !1 })], N.prototype, 'name', void 0), + (0, a.gn)([d.Command.Boolean('-v,--verbose')], N.prototype, 'verbose', void 0), + (0, a.gn)([d.Command.Boolean('--json')], N.prototype, 'json', void 0), + (0, a.gn)([d.Command.Path('bin')], N.prototype, 'execute', null); + var R = r(56537); + class K extends c.BaseCommand { + constructor() { + super(...arguments), (this.mirror = !1), (this.all = !1); + } + async execute() { + const e = await A.VK.find(this.context.cwd, this.context.plugins), + t = await u.C.find(e); + return ( + await f.P.start({ configuration: e, stdout: this.context.stdout }, async () => { + const e = (this.all || this.mirror) && null !== t.mirrorCwd, + r = !this.mirror; + e && (await R.xfs.removePromise(t.mirrorCwd)), + r && (await R.xfs.removePromise(t.cwd)); + }) + ).exitCode(); + } + } + (K.usage = d.Command.Usage({ + description: 'remove the shared cache files', + details: + '\n This command will remove all the files from the cache.\n\n By default only the local cache will be cleaned. This behavior can be disabled with the `--mirror`, which will lead to the removal of the global cache files instead, or `--all` (which will remove both the local and global caches for the current project).\n ', + examples: [ + ['Remove all the local archives', '$0 cache clean'], + ['Remove all the archives stored in the ~/.yarn directory', '$0 cache clean --mirror'], + ], + })), + (0, a.gn)([d.Command.Boolean('--mirror')], K.prototype, 'mirror', void 0), + (0, a.gn)([d.Command.Boolean('--all')], K.prototype, 'all', void 0), + (0, a.gn)([d.Command.Path('cache', 'clean')], K.prototype, 'execute', null); + var L = r(44674), + T = r.n(L), + P = r(31669); + class U extends c.BaseCommand { + constructor() { + super(...arguments), (this.json = !1), (this.unsafe = !1); + } + async execute() { + const e = await A.VK.find(this.context.cwd, this.context.plugins), + t = this.name.replace(/[.[].*$/, ''), + r = this.name.replace(/^[^.[]*/, ''); + if (void 0 === e.settings.get(t)) + throw new d.UsageError(`Couldn't find a configuration settings named "${t}"`); + const n = _(e.getSpecial(t, { hideSecrets: !this.unsafe, getNativePaths: !0 })), + i = r ? T()(n, r) : n, + o = await f.P.start( + { + configuration: e, + includeFooter: !1, + json: this.json, + stdout: this.context.stdout, + }, + async (e) => { + e.reportJson(i); + } + ); + if (!this.json) { + if ('string' == typeof i) return this.context.stdout.write(i + '\n'), o.exitCode(); + (P.inspect.styles.name = 'cyan'), + this.context.stdout.write( + (0, P.inspect)(i, { depth: 1 / 0, colors: !0, compact: !1 }) + '\n' + ); + } + return o.exitCode(); + } + } + function _(e) { + if ((e instanceof Map && (e = Object.fromEntries(e)), 'object' == typeof e && null !== e)) + for (const t of Object.keys(e)) { + const r = e[t]; + 'object' == typeof r && null !== r && (e[t] = _(r)); + } + return e; + } + (U.usage = d.Command.Usage({ + description: 'read a configuration settings', + details: + "\n This command will print a configuration setting.\n\n Secrets (such as tokens) will be redacted from the output by default. If this behavior isn't desired, set the `--no-redacted` to get the untransformed value.\n ", + examples: [ + ['Print a simple configuration setting', 'yarn config get yarnPath'], + ['Print a complex configuration setting', 'yarn config get packageExtensions'], + [ + 'Print a nested field from the configuration', + 'yarn config get \'npmScopes["my-company"].npmRegistryServer\'', + ], + ['Print a token from the configuration', 'yarn config get npmAuthToken --no-redacted'], + ['Print a configuration setting as JSON', 'yarn config get packageExtensions --json'], + ], + })), + (0, a.gn)([d.Command.String()], U.prototype, 'name', void 0), + (0, a.gn)([d.Command.Boolean('--json')], U.prototype, 'json', void 0), + (0, a.gn)([d.Command.Boolean('--no-redacted')], U.prototype, 'unsafe', void 0), + (0, a.gn)([d.Command.Path('config', 'get')], U.prototype, 'execute', null); + var O = r(82558), + j = r.n(O), + Y = r(81534), + G = r.n(Y); + class J extends c.BaseCommand { + constructor() { + super(...arguments), (this.json = !1); + } + async execute() { + const e = await A.VK.find(this.context.cwd, this.context.plugins); + if (!e.projectCwd) + throw new d.UsageError('This command must be run from within a project folder'); + const t = this.name.replace(/[.[].*$/, ''), + r = this.name.replace(/^[^.[]*/, ''); + if (void 0 === e.settings.get(t)) + throw new d.UsageError(`Couldn't find a configuration settings named "${t}"`); + const n = this.json ? JSON.parse(this.value) : this.value; + await A.VK.updateConfiguration(e.projectCwd, (e) => { + if (r) { + const t = j()(e); + return G()(t, this.name, n), t; + } + return { ...e, [t]: n }; + }); + const i = _( + (await A.VK.find(this.context.cwd, this.context.plugins)).getSpecial(t, { + hideSecrets: !0, + getNativePaths: !0, + }) + ), + o = r ? T()(i, r) : i; + return ( + await f.P.start( + { configuration: e, includeFooter: !1, stdout: this.context.stdout }, + async (e) => { + (P.inspect.styles.name = 'cyan'), + e.reportInfo( + h.b.UNNAMED, + `Successfully set ${this.name} to ${(0, P.inspect)(o, { + depth: 1 / 0, + colors: !0, + compact: !1, + })}` + ); + } + ) + ).exitCode(); + } + } + (J.usage = d.Command.Usage({ + description: 'change a configuration settings', + details: + '\n This command will set a configuration setting.\n\n When used without the `--json` flag, it can only set a simple configuration setting (a string, a number, or a boolean).\n\n When used with the `--json` flag, it can set both simple and complex configuration settings, including Arrays and Objects.\n ', + examples: [ + [ + 'Set a simple configuration setting (a string, a number, or a boolean)', + 'yarn config set initScope myScope', + ], + [ + 'Set a simple configuration setting (a string, a number, or a boolean) using the `--json` flag', + 'yarn config set initScope --json \\"myScope\\"', + ], + [ + 'Set a complex configuration setting (an Array) using the `--json` flag', + 'yarn config set unsafeHttpWhitelist --json \'["*.example.com", "example.com"]\'', + ], + [ + 'Set a complex configuration setting (an Object) using the `--json` flag', + 'yarn config set packageExtensions --json \'{ "@babel/parser@*": { "dependencies": { "@babel/types": "*" } } }\'', + ], + ], + })), + (0, a.gn)([d.Command.String()], J.prototype, 'name', void 0), + (0, a.gn)([d.Command.String()], J.prototype, 'value', void 0), + (0, a.gn)([d.Command.Boolean('--json')], J.prototype, 'json', void 0), + (0, a.gn)([d.Command.Path('config', 'set')], J.prototype, 'execute', null); + class H extends c.BaseCommand { + constructor() { + super(...arguments), (this.verbose = !1), (this.why = !1), (this.json = !1); + } + async execute() { + const e = await A.VK.find(this.context.cwd, this.context.plugins, { strict: !1 }); + return ( + await f.P.start( + { configuration: e, json: this.json, stdout: this.context.stdout }, + async (t) => { + if (e.invalid.size > 0 && !this.json) { + for (const [r, n] of e.invalid) + t.reportError( + h.b.INVALID_CONFIGURATION_KEY, + `Invalid configuration key "${r}" in ${n}` + ); + t.reportSeparator(); + } + if (this.json) { + const r = p.miscUtils.sortMap(e.settings.keys(), (e) => e); + for (const n of r) { + const r = e.settings.get(n), + i = e.getSpecial(n, { hideSecrets: !0, getNativePaths: !0 }), + o = e.sources.get(n); + this.verbose + ? t.reportJson({ key: n, effective: i, source: o }) + : t.reportJson({ key: n, effective: i, source: o, ...r }); + } + } else { + const r = p.miscUtils.sortMap(e.settings.keys(), (e) => e), + n = r.reduce((e, t) => Math.max(e, t.length), 0), + i = { breakLength: 1 / 0, colors: e.get('enableColors'), maxArrayLength: 2 }; + if (this.why || this.verbose) { + const o = r.map((t) => { + const r = e.settings.get(t); + if (!r) + throw new Error( + `Assertion failed: This settings ("${t}") should have been registered` + ); + return [t, this.why ? e.sources.get(t) || '' : r.description]; + }), + s = o.reduce((e, [, t]) => Math.max(e, t.length), 0); + for (const [r, A] of o) + t.reportInfo( + null, + `${r.padEnd(n, ' ')} ${A.padEnd(s, ' ')} ${(0, P.inspect)( + e.getSpecial(r, { hideSecrets: !0, getNativePaths: !0 }), + i + )}` + ); + } else + for (const o of r) + t.reportInfo( + null, + `${o.padEnd(n, ' ')} ${(0, P.inspect)( + e.getSpecial(o, { hideSecrets: !0, getNativePaths: !0 }), + i + )}` + ); + } + } + ) + ).exitCode(); + } + } + (H.usage = d.Command.Usage({ + description: 'display the current configuration', + details: + '\n This command prints the current active configuration settings.\n\n When used together with the `-v,--verbose` option, the output will contain the settings description on top of the regular key/value information.\n\n When used together with the `--why` flag, the output will also contain the reason why a settings is set a particular way.\n\n If the `--json` flag is set the output will follow a JSON-stream output also known as NDJSON (https://github.com/ndjson/ndjson-spec).\n\n Note that the paths settings will be normalized - especially on Windows. It means that paths such as `C:\\project` will be transparently shown as `/mnt/c/project`.\n ', + examples: [['Print the active configuration settings', '$0 config']], + })), + (0, a.gn)([d.Command.Boolean('-v,--verbose')], H.prototype, 'verbose', void 0), + (0, a.gn)([d.Command.Boolean('--why')], H.prototype, 'why', void 0), + (0, a.gn)([d.Command.Boolean('--json')], H.prototype, 'json', void 0), + (0, a.gn)([d.Command.Path('config')], H.prototype, 'execute', null); + class q extends d.Command { + async execute() { + const { plugins: e } = await A.VK.find(this.context.cwd, this.context.plugins), + t = []; + for (const r of e) { + const { commands: e } = r[1]; + if (e) { + const n = d.Cli.from(e).definitions(); + t.push([r[0], n]); + } + } + const n = this.cli.definitions(), + i = r(60306)['@yarnpkg/builder'].bundles.standard; + for (const e of t) { + const t = e[1]; + for (const r of t) + n.find((e) => { + return ( + (t = e.path), + (n = r.path), + t.split(' ').slice(1).join() === n.split(' ').slice(1).join() + ); + var t, n; + }).plugin = { name: e[0], isDefault: i.includes(e[0]) }; + } + this.context.stdout.write(JSON.stringify({ commands: n }, null, 2) + '\n'); + } + } + (0, a.gn)([d.Command.Path('--clipanion=definitions')], q.prototype, 'execute', null); + class z extends d.Command { + async execute() { + this.context.stdout.write(this.cli.usage(null)); + } + } + (0, a.gn)( + [d.Command.Path('help'), d.Command.Path('--help'), d.Command.Path('-h')], + z.prototype, + 'execute', + null + ); + class W extends d.Command { + constructor() { + super(...arguments), (this.args = []); + } + async execute() { + if ( + this.leadingArgument.match(/[\\/]/) && + !p.structUtils.tryParseIdent(this.leadingArgument) + ) { + const e = y.y1.resolve(this.context.cwd, y.cS.toPortablePath(this.leadingArgument)); + return await this.cli.run(this.args, { cwd: e }); + } + return await this.cli.run(['run', this.leadingArgument, ...this.args]); + } + } + (0, a.gn)([d.Command.String()], W.prototype, 'leadingArgument', void 0), + (0, a.gn)([d.Command.Proxy()], W.prototype, 'args', void 0); + var V = r(59355); + class X extends d.Command { + async execute() { + this.context.stdout.write((V.o || '') + '\n'); + } + } + (0, a.gn)( + [d.Command.Path('-v'), d.Command.Path('--version')], + X.prototype, + 'execute', + null + ); + class Z extends c.BaseCommand { + constructor() { + super(...arguments), (this.args = []); + } + async execute() { + const e = await A.VK.find(this.context.cwd, this.context.plugins), + { project: t } = await g.I.find(e, this.context.cwd); + return await R.xfs.mktempPromise(async (e) => { + const { code: r } = await p.execUtils.pipevp(this.commandName, this.args, { + cwd: this.context.cwd, + stdin: this.context.stdin, + stdout: this.context.stdout, + stderr: this.context.stderr, + env: await p.scriptUtils.makeScriptEnv({ project: t, binFolder: e }), + }); + return r; + }); + } + } + (Z.usage = d.Command.Usage({ + description: 'execute a shell command', + details: + "\n This command simply executes a shell binary within the context of the root directory of the active workspace.\n\n It also makes sure to call it in a way that's compatible with the current project (for example, on PnP projects the environment will be setup in such a way that PnP will be correctly injected into the environment).\n ", + examples: [['Execute a shell command', '$0 exec echo Hello World']], + })), + (0, a.gn)([d.Command.String()], Z.prototype, 'commandName', void 0), + (0, a.gn)([d.Command.Proxy()], Z.prototype, 'args', void 0), + (0, a.gn)([d.Command.Path('exec')], Z.prototype, 'execute', null); + var $ = r(35691), + ee = r(55125); + class te extends c.BaseCommand { + constructor() { + super(...arguments), (this.json = !1), (this.checkCache = !1), (this.silent = !1); + } + async execute() { + const e = await A.VK.find(this.context.cwd, this.context.plugins); + void 0 !== this.inlineBuilds && + e.useWithSource('', { enableInlineBuilds: this.inlineBuilds }, e.startingCwd, { + overwrite: !0, + }); + const t = !!process.env.NOW_BUILDER, + r = !!process.env.NETLIFY, + n = async (t, { error: r }) => { + const n = await f.P.start( + { configuration: e, stdout: this.context.stdout, includeFooter: !1 }, + async (e) => { + r + ? e.reportError(h.b.DEPRECATED_CLI_SETTINGS, t) + : e.reportWarning(h.b.DEPRECATED_CLI_SETTINGS, t); + } + ); + return n.hasErrors() ? n.exitCode() : null; + }; + if (void 0 !== this.ignoreEngines) { + const e = await n( + "The --ignore-engines option is deprecated; engine checking isn't a core feature anymore", + { error: !t } + ); + if (null !== e) return e; + } + if (void 0 !== this.registry) { + const e = await n( + 'The --registry option is deprecated; prefer setting npmRegistryServer in your .yarnrc.yml file', + { error: !1 } + ); + if (null !== e) return e; + } + if (void 0 !== this.preferOffline) { + const e = await n( + "The --prefer-offline flag is deprecated; use the --cached flag with 'yarn add' instead", + { error: !t } + ); + if (null !== e) return e; + } + if (void 0 !== this.frozenLockfile) { + const e = await n( + 'The --frozen-lockfile option is deprecated; use --immutable and/or --immutable-cache instead', + { error: !0 } + ); + if (null !== e) return e; + } + if (void 0 !== this.cacheFolder) { + const e = await n( + 'The cache-folder option has been deprecated; use rc settings instead', + { error: !r } + ); + if (null !== e) return e; + } + const i = + void 0 === this.immutable && void 0 === this.frozenLockfile + ? e.get('enableImmutableInstalls') + : this.immutable || this.frozenLockfile; + if (null !== e.projectCwd) { + const t = await f.P.start( + { + configuration: e, + json: this.json, + stdout: this.context.stdout, + includeFooter: !1, + }, + async (t) => { + (await (async function (e, t) { + if (!e.projectCwd) return !1; + const r = y.y1.join(e.projectCwd, e.get('lockfileFilename')); + if (!(await R.xfs.existsPromise(r))) return !1; + const n = await R.xfs.readFilePromise(r, 'utf8'); + if (!n.includes('<<<<<<<')) return !1; + if (t) + throw new $.lk( + h.b.AUTOMERGE_IMMUTABLE, + 'Cannot autofix a lockfile when running an immutable install' + ); + const [i, o] = (function (e) { + const t = [[], []], + r = e.split(/\r?\n/g); + let n = !1; + for (; r.length > 0; ) { + const e = r.shift(); + if (void 0 === e) + throw new Error('Assertion failed: Some lines should remain'); + if (e.startsWith('<<<<<<<')) { + for (; r.length > 0; ) { + const e = r.shift(); + if (void 0 === e) + throw new Error('Assertion failed: Some lines should remain'); + if ('=======' === e) { + n = !1; + break; + } + n || e.startsWith('|||||||') ? (n = !0) : t[0].push(e); + } + for (; r.length > 0; ) { + const e = r.shift(); + if (void 0 === e) + throw new Error('Assertion failed: Some lines should remain'); + if (e.startsWith('>>>>>>>')) break; + t[1].push(e); + } + } else t[0].push(e), t[1].push(e); + } + return [t[0].join('\n'), t[1].join('\n')]; + })(n); + let s, A; + try { + (s = (0, ee.parseSyml)(i)), (A = (0, ee.parseSyml)(o)); + } catch (e) { + throw new $.lk( + h.b.AUTOMERGE_FAILED_TO_PARSE, + 'The individual variants of the lockfile failed to parse' + ); + } + const a = { ...s, ...A }; + for (const [e, t] of Object.entries(a)) 'string' == typeof t && delete a[e]; + return ( + await R.xfs.changeFilePromise(r, (0, ee.stringifySyml)(a), { + automaticNewlines: !0, + }), + !0 + ); + })(e, i)) && + t.reportInfo(h.b.AUTOMERGE_SUCCESS, 'Automatically fixed merge conflicts 👍'); + } + ); + if (t.hasErrors()) return t.exitCode(); + } + const { project: o, workspace: s } = await g.I.find(e, this.context.cwd), + a = await u.C.find(e, { immutable: this.immutableCache, check: this.checkCache }); + if (!s) throw new c.WorkspaceRequiredError(o.cwd, this.context.cwd); + return ( + await f.P.start( + { configuration: e, json: this.json, stdout: this.context.stdout, includeLogs: !0 }, + async (e) => { + await o.install({ cache: a, report: e, immutable: i }); + } + ) + ).exitCode(); + } + } + (te.usage = d.Command.Usage({ + description: 'install the project dependencies', + details: + "\n This command setup your project if needed. The installation is splitted in four different steps that each have their own characteristics:\n\n - **Resolution:** First the package manager will resolve your dependencies. The exact way a dependency version is privileged over another isn't standardized outside of the regular semver guarantees. If a package doesn't resolve to what you would expect, check that all dependencies are correctly declared (also check our website for more information: ).\n\n - **Fetch:** Then we download all the dependencies if needed, and make sure that they're all stored within our cache (check the value of `cacheFolder` in `yarn config` to see where are stored the cache files).\n\n - **Link:** Then we send the dependency tree information to internal plugins tasked from writing them on the disk in some form (for example by generating the .pnp.js file you might know).\n\n - **Build:** Once the dependency tree has been written on the disk, the package manager will now be free to run the build scripts for all packages that might need it, in a topological order compatible with the way they depend on one another.\n\n Note that running this command is not part of the recommended workflow. Yarn supports zero-installs, which means that as long as you store your cache and your .pnp.js file inside your repository, everything will work without requiring any install right after cloning your repository or switching branches.\n\n If the `--immutable` option is set, Yarn will abort with an error exit code if anything in the install artifacts (`yarn.lock`, `.pnp.js`, ...) was to be modified. For backward compatibility we offer an alias under the name of `--frozen-lockfile`, but it will be removed in a later release.\n\n If the `--immutable-cache` option is set, Yarn will abort with an error exit code if the cache folder was to be modified (either because files would be added, or because they'd be removed).\n\n If the `--check-cache` option is set, Yarn will always refetch the packages and will ensure that their checksum matches what's 1/ described in the lockfile 2/ inside the existing cache files (if present). This is recommended as part of your CI workflow if you're both following the Zero-Installs model and accepting PRs from third-parties, as they'd otherwise have the ability to alter the checked-in packages before submitting them.\n\n If the `--inline-builds` option is set, Yarn will verbosely print the output of the build steps of your dependencies (instead of writing them into individual files). This is likely useful mostly for debug purposes only when using Docker-like environments.\n\n If the `--json` flag is set the output will follow a JSON-stream output also known as NDJSON (https://github.com/ndjson/ndjson-spec).\n ", + examples: [ + ['Install the project', '$0 install'], + [ + 'Validate a project when using Zero-Installs', + '$0 install --immutable --immutable-cache', + ], + [ + 'Validate a project when using Zero-Installs (slightly safer if you accept external PRs)', + '$0 install --immutable --immutable-cache --check-cache', + ], + ], + })), + (0, a.gn)([d.Command.Boolean('--json')], te.prototype, 'json', void 0), + (0, a.gn)([d.Command.Boolean('--immutable')], te.prototype, 'immutable', void 0), + (0, a.gn)( + [d.Command.Boolean('--immutable-cache')], + te.prototype, + 'immutableCache', + void 0 + ), + (0, a.gn)([d.Command.Boolean('--check-cache')], te.prototype, 'checkCache', void 0), + (0, a.gn)( + [d.Command.Boolean('--frozen-lockfile', { hidden: !0 })], + te.prototype, + 'frozenLockfile', + void 0 + ), + (0, a.gn)( + [d.Command.Boolean('--prefer-offline', { hidden: !0 })], + te.prototype, + 'preferOffline', + void 0 + ), + (0, a.gn)( + [d.Command.Boolean('--ignore-engines', { hidden: !0 })], + te.prototype, + 'ignoreEngines', + void 0 + ), + (0, a.gn)( + [d.Command.String('--registry', { hidden: !0 })], + te.prototype, + 'registry', + void 0 + ), + (0, a.gn)([d.Command.Boolean('--inline-builds')], te.prototype, 'inlineBuilds', void 0), + (0, a.gn)( + [d.Command.String('--cache-folder', { hidden: !0 })], + te.prototype, + 'cacheFolder', + void 0 + ), + (0, a.gn)( + [d.Command.Boolean('--silent', { hidden: !0 })], + te.prototype, + 'silent', + void 0 + ), + (0, a.gn)([d.Command.Path(), d.Command.Path('install')], te.prototype, 'execute', null); + class re extends c.BaseCommand { + constructor() { + super(...arguments), (this.all = !1), (this.private = !1), (this.relative = !1); + } + async execute() { + const e = await A.VK.find(this.context.cwd, this.context.plugins), + { project: t, workspace: r } = await g.I.find(e, this.context.cwd), + n = await u.C.find(e); + if (!r) throw new c.WorkspaceRequiredError(t.cwd, this.context.cwd); + const i = y.y1.resolve(this.context.cwd, y.cS.toPortablePath(this.destination)), + o = await A.VK.find(i, this.context.plugins), + { project: s, workspace: a } = await g.I.find(o, i); + if (!a) throw new c.WorkspaceRequiredError(s.cwd, i); + const l = t.topLevelWorkspace, + h = []; + if (this.all) { + for (const e of s.workspaces) + !e.manifest.name || (e.manifest.private && !this.private) || h.push(e); + if (0 === h.length) + throw new d.UsageError('No workspace found to be linked in the target project'); + } else { + if (!a.manifest.name) + throw new d.UsageError( + "The target workspace doesn't have a name and thus cannot be linked" + ); + if (a.manifest.private && !this.private) + throw new d.UsageError( + 'The target workspace is marked private - use the --private flag to link it anyway' + ); + h.push(a); + } + for (const e of h) { + const r = p.structUtils.stringifyIdent(e.locator), + n = this.relative ? y.y1.relative(t.cwd, e.cwd) : e.cwd; + l.manifest.resolutions.push({ + pattern: { descriptor: { fullName: r } }, + reference: 'portal:' + n, + }); + } + return ( + await f.P.start({ configuration: e, stdout: this.context.stdout }, async (e) => { + await t.install({ cache: n, report: e }); + }) + ).exitCode(); + } + } + (re.usage = d.Command.Usage({ + description: 'connect the local project to another one', + details: + '\n This command will set a new `resolutions` field in the project-level manifest and point it to the workspace at the specified location (even if part of another project).\n\n If the `--all` option is set, all workspaces belonging to the target project will be linked to the current one.\n\n There is no `yarn unlink` command. To unlink the workspaces from the current project one must revert the changes made to the `resolutions` field.\n ', + examples: [ + ['Register a remote workspace for use in the current project', '$0 link ~/ts-loader'], + [ + 'Register all workspaces from a remote project for use in the current project', + '$0 link ~/jest --all', + ], + ], + })), + (0, a.gn)([d.Command.String()], re.prototype, 'destination', void 0), + (0, a.gn)([d.Command.Boolean('--all')], re.prototype, 'all', void 0), + (0, a.gn)([d.Command.Boolean('-p,--private')], re.prototype, 'private', void 0), + (0, a.gn)([d.Command.Boolean('-r,--relative')], re.prototype, 'relative', void 0), + (0, a.gn)([d.Command.Path('link')], re.prototype, 'execute', null); + class ne extends c.BaseCommand { + constructor() { + super(...arguments), (this.args = []); + } + async execute() { + return this.cli.run(['exec', 'node', ...this.args]); + } + } + (ne.usage = d.Command.Usage({ + description: 'run node with the hook already setup', + details: + "\n This command simply runs Node. It also makes sure to call it in a way that's compatible with the current project (for example, on PnP projects the environment will be setup in such a way that PnP will be correctly injected into the environment).\n\n The Node process will use the exact same version of Node as the one used to run Yarn itself, which might be a good way to ensure that your commands always use a consistent Node version.\n ", + examples: [['Run a Node script', '$0 node ./my-script.js']], + })), + (0, a.gn)([d.Command.Proxy()], ne.prototype, 'args', void 0), + (0, a.gn)([d.Command.Path('node')], ne.prototype, 'execute', null); + var ie = r(12087), + oe = r(85622), + se = r.n(oe); + class Ae extends c.BaseCommand { + constructor() { + super(...arguments), (this.onlyIfNeeded = !1); + } + async execute() { + const e = await A.VK.find(this.context.cwd, this.context.plugins); + if (e.get('yarnPath') && this.onlyIfNeeded) return 0; + let t; + if ('latest' === this.version || 'berry' === this.version) + t = 'https://github.com/yarnpkg/berry/raw/master/packages/yarnpkg-cli/bin/yarn.js'; + else if ('classic' === this.version) t = 'https://nightly.yarnpkg.com/latest.js'; + else if (p.semverUtils.satisfiesWithPrereleases(this.version, '>=2.0.0')) + t = `https://github.com/yarnpkg/berry/raw/%40yarnpkg/cli/${this.version}/packages/yarnpkg-cli/bin/yarn.js`; + else { + if (!p.semverUtils.satisfiesWithPrereleases(this.version, '^0.x || ^1.x')) + throw B().validRange(this.version) + ? new d.UsageError( + "Support for ranges got removed - please use the exact version you want to install, or 'latest' to get the latest build available" + ) + : new d.UsageError(`Invalid version descriptor "${this.version}"`); + t = `https://github.com/yarnpkg/yarn/releases/download/v${this.version}/yarn-${this.version}.js`; + } + return ( + await f.P.start({ configuration: e, stdout: this.context.stdout }, async (r) => { + r.reportInfo(h.b.UNNAMED, 'Downloading ' + e.format(t, 'green')); + const n = await p.httpUtils.get(t, { configuration: e }); + await ae(e, null, n, { report: r }); + }) + ).exitCode(); + } + } + async function ae(e, t, r, { report: n }) { + const i = e.projectCwd ? e.projectCwd : e.startingCwd; + null === t && + (await R.xfs.mktempPromise(async (e) => { + const n = y.y1.join(e, 'yarn.cjs'); + await R.xfs.writeFilePromise(n, r); + const { stdout: o } = await p.execUtils.execvp( + process.execPath, + [y.cS.fromPortablePath(n), '--version'], + { cwd: i, env: { ...process.env, YARN_IGNORE_PATH: '1' } } + ); + if (((t = o.trim()), !B().valid(t))) throw new Error('Invalid semver version'); + })); + const o = y.y1.resolve(i, '.yarn/releases'), + s = y.y1.resolve(o, `yarn-${t}.cjs`), + a = y.y1.relative(e.startingCwd, s), + c = y.y1.relative(i, s), + u = e.get('yarnPath'), + l = null === u || u.startsWith(o + '/'); + n.reportInfo(h.b.UNNAMED, 'Saving the new release in ' + e.format(a, 'magenta')), + await R.xfs.removePromise(y.y1.dirname(s)), + await R.xfs.mkdirpPromise(y.y1.dirname(s)), + await R.xfs.writeFilePromise(s, r), + await R.xfs.chmodPromise(s, 493), + l && (await A.VK.updateConfiguration(i, { yarnPath: c })); + } + (Ae.usage = d.Command.Usage({ + description: 'lock the Yarn version used by the project', + details: + '\n This command will download a specific release of Yarn directly from the Yarn GitHub repository, will store it inside your project, and will change the `yarnPath` settings from your project `.yarnrc.yml` file to point to the new file.\n\n A very good use case for this command is to enforce the version of Yarn used by the any single member of your team inside a same project - by doing this you ensure that you have control on Yarn upgrades and downgrades (including on your deployment servers), and get rid of most of the headaches related to someone using a slightly different version and getting a different behavior than you.\n ', + examples: [ + ['Download the latest release from the Yarn repository', '$0 set version latest'], + [ + 'Download the latest classic release from the Yarn repository', + '$0 set version classic', + ], + ['Download a specific Yarn 2 build', '$0 set version 2.0.0-rc.30'], + ['Switch back to a specific Yarn 1 release', '$0 set version 1.22.1'], + ], + })), + (0, a.gn)([d.Command.Boolean('--only-if-needed')], Ae.prototype, 'onlyIfNeeded', void 0), + (0, a.gn)([d.Command.String()], Ae.prototype, 'version', void 0), + (0, a.gn)( + [d.Command.Path('policies', 'set-version'), d.Command.Path('set', 'version')], + Ae.prototype, + 'execute', + null + ); + const ce = /^[0-9]+$/; + function ue(e) { + return ce.test(e) ? `pull/${e}/head` : e; + } + class le extends c.BaseCommand { + constructor() { + super(...arguments), + (this.repository = 'https://github.com/yarnpkg/berry.git'), + (this.branch = 'master'), + (this.plugins = []), + (this.noMinify = !1), + (this.force = !1); + } + async execute() { + const e = await A.VK.find(this.context.cwd, this.context.plugins), + t = + void 0 !== this.installPath + ? y.y1.resolve(this.context.cwd, y.cS.toPortablePath(this.installPath)) + : y.y1.resolve( + y.cS.toPortablePath((0, ie.tmpdir)()), + 'yarnpkg-sources', + p.hashUtils.makeHash(this.repository).slice(0, 6) + ); + return ( + await f.P.start({ configuration: e, stdout: this.context.stdout }, async (r) => { + await ge(this, { configuration: e, report: r, target: t }), + r.reportSeparator(), + r.reportInfo(h.b.UNNAMED, 'Building a fresh bundle'), + r.reportSeparator(), + await he( + (({ plugins: e, noMinify: t }, r) => [ + [ + 'yarn', + 'build:cli', + ...new Array().concat(...e.map((e) => ['--plugin', se().resolve(r, e)])), + ...(t ? ['--no-minify'] : []), + '|', + ], + ])(this, t), + { configuration: e, context: this.context, target: t } + ), + r.reportSeparator(); + const n = y.y1.resolve(t, 'packages/yarnpkg-cli/bundles/yarn.js'), + i = await R.xfs.readFilePromise(n); + await ae(e, 'sources', i, { report: r }); + }) + ).exitCode(); + } + } + async function he(e, { configuration: t, context: r, target: n }) { + for (const [i, ...o] of e) { + const e = '|' === o[o.length - 1]; + if ((e && o.pop(), e)) + await p.execUtils.pipevp(i, o, { + cwd: n, + stdin: r.stdin, + stdout: r.stdout, + stderr: r.stderr, + strict: !0, + }); + else { + r.stdout.write(t.format(' $ ' + [i, ...o].join(' '), 'grey') + '\n'); + try { + await p.execUtils.execvp(i, o, { cwd: n, strict: !0 }); + } catch (e) { + throw (r.stdout.write(e.stdout || e.stack), e); + } + } + } + } + async function ge(e, { configuration: t, report: r, target: n }) { + let i = !1; + if (!e.force && R.xfs.existsSync(y.y1.join(n, '.git'))) { + r.reportInfo(h.b.UNNAMED, 'Fetching the latest commits'), r.reportSeparator(); + try { + await he( + (({ branch: e }) => [ + ['git', 'fetch', 'origin', ue(e), '--force'], + ['git', 'reset', '--hard', 'FETCH_HEAD'], + ['git', 'clean', '-dfx'], + ])(e), + { configuration: t, context: e.context, target: n } + ), + (i = !0); + } catch (e) { + r.reportSeparator(), + r.reportWarning( + h.b.UNNAMED, + "Repository update failed; we'll try to regenerate it" + ); + } + } + i || + (r.reportInfo(h.b.UNNAMED, 'Cloning the remote repository'), + r.reportSeparator(), + await R.xfs.removePromise(n), + await R.xfs.mkdirpPromise(n), + await he( + (({ repository: e, branch: t }, r) => [ + ['git', 'init', y.cS.fromPortablePath(r)], + ['git', 'remote', 'add', 'origin', e], + ['git', 'fetch', 'origin', ue(t)], + ['git', 'reset', '--hard', 'FETCH_HEAD'], + ])(e, n), + { configuration: t, context: e.context, target: n } + )); + } + (le.usage = d.Command.Usage({ + description: 'build Yarn from master', + details: + '\n This command will clone the Yarn repository into a temporary folder, then build it. The resulting bundle will then be copied into the local project.\n ', + examples: [['Build Yarn from master', '$0 set version from sources']], + })), + (0, a.gn)([d.Command.String('--path')], le.prototype, 'installPath', void 0), + (0, a.gn)([d.Command.String('--repository')], le.prototype, 'repository', void 0), + (0, a.gn)([d.Command.String('--branch')], le.prototype, 'branch', void 0), + (0, a.gn)([d.Command.Array('--plugin')], le.prototype, 'plugins', void 0), + (0, a.gn)([d.Command.Boolean('--no-minify')], le.prototype, 'noMinify', void 0), + (0, a.gn)([d.Command.Boolean('-f,--force')], le.prototype, 'force', void 0), + (0, a.gn)( + [d.Command.Path('set', 'version', 'from', 'sources')], + le.prototype, + 'execute', + null + ); + var fe = r(92184); + async function pe(e) { + const t = await p.httpUtils.get( + 'https://raw.githubusercontent.com/yarnpkg/berry/master/plugins.yml', + { configuration: e } + ); + return (0, ee.parseSyml)(t.toString()); + } + class de extends c.BaseCommand { + constructor() { + super(...arguments), (this.json = !1); + } + async execute() { + const e = await A.VK.find(this.context.cwd, this.context.plugins); + return ( + await f.P.start( + { configuration: e, json: this.json, stdout: this.context.stdout }, + async (t) => { + const r = await pe(e); + for (const [e, { experimental: n, ...i }] of Object.entries(r)) { + let r = e; + n && (r += ' [experimental]'), + t.reportJson({ name: e, experimental: n, ...i }), + t.reportInfo(null, r); + } + } + ) + ).exitCode(); + } + } + (de.usage = d.Command.Usage({ + category: 'Plugin-related commands', + description: 'list the available official plugins', + details: + '\n This command prints the plugins available directly from the Yarn repository. Only those plugins can be referenced by name in `yarn plugin import`.\n ', + examples: [['List the official plugins', '$0 plugin list']], + })), + (0, a.gn)([d.Command.Boolean('--json')], de.prototype, 'json', void 0), + (0, a.gn)([d.Command.Path('plugin', 'list')], de.prototype, 'execute', null); + class Ce extends c.BaseCommand { + async execute() { + const e = await A.VK.find(this.context.cwd, this.context.plugins); + return ( + await f.P.start({ configuration: e, stdout: this.context.stdout }, async (t) => { + const { project: r } = await g.I.find(e, this.context.cwd); + let n, i; + if (this.name.match(/^\.{0,2}[\\/]/) || y.cS.isAbsolute(this.name)) { + const o = y.y1.resolve(this.context.cwd, y.cS.toPortablePath(this.name)); + t.reportInfo(h.b.UNNAMED, 'Reading ' + e.format(o, 'green')), + (n = y.y1.relative(r.cwd, o)), + (i = await R.xfs.readFilePromise(o)); + } else { + let r; + if (this.name.match(/^https?:/)) { + try { + new URL(this.name); + } catch (e) { + throw new $.lk( + h.b.INVALID_PLUGIN_REFERENCE, + `Plugin specifier "${this.name}" is neither a plugin name nor a valid url` + ); + } + (n = this.name), (r = this.name); + } else { + const t = p.structUtils.parseIdent( + this.name.replace(/^((@yarnpkg\/)?plugin-)?/, '@yarnpkg/plugin-') + ), + i = p.structUtils.stringifyIdent(t), + o = await pe(e); + if (!Object.prototype.hasOwnProperty.call(o, i)) + throw new $.lk( + h.b.PLUGIN_NAME_NOT_FOUND, + `Couldn't find a plugin named "${i}" on the remote registry. Note that only the plugins referenced on our website (https://github.com/yarnpkg/berry/blob/master/plugins.yml) can be referenced by their name; any other plugin will have to be referenced through its public url (for example https://github.com/yarnpkg/berry/raw/master/packages/plugin-typescript/bin/%40yarnpkg/plugin-typescript.js).` + ); + (n = i), (r = o[i].url); + } + t.reportInfo(h.b.UNNAMED, 'Downloading ' + e.format(r, 'green')), + (i = await p.httpUtils.get(r, { configuration: e })); + } + await Ee(n, i, { project: r, report: t }); + }) + ).exitCode(); + } + } + async function Ee(e, t, { project: r, report: n }) { + const { configuration: i } = r, + o = {}, + s = { exports: o }; + (0, fe.runInNewContext)(t.toString(), { module: s, exports: o }); + const a = s.exports.name, + c = `.yarn/plugins/${a}.cjs`, + u = y.y1.resolve(r.cwd, c); + n.reportInfo(h.b.UNNAMED, 'Saving the new plugin in ' + i.format(c, 'magenta')), + await R.xfs.mkdirpPromise(y.y1.dirname(u)), + await R.xfs.writeFilePromise(u, t); + const l = { path: c, spec: e }; + await A.VK.updateConfiguration(r.cwd, (e) => { + const t = []; + let n = !1; + for (const i of e.plugins || []) { + const e = 'string' != typeof i ? i.path : i, + o = y.y1.resolve(r.cwd, y.cS.toPortablePath(e)), + { name: s } = p.miscUtils.dynamicRequire(y.cS.fromPortablePath(o)); + s !== a ? t.push(i) : (t.push(l), (n = !0)); + } + return n || t.push(l), { plugins: t }; + }); + } + (Ce.usage = d.Command.Usage({ + category: 'Plugin-related commands', + description: 'download a plugin', + details: + "\n This command downloads the specified plugin from its remote location and updates the configuration to reference it in further CLI invocations.\n\n Three types of plugin references are accepted:\n\n - If the plugin is stored within the Yarn repository, it can be referenced by name.\n - Third-party plugins can be referenced directly through their public urls.\n - Local plugins can be referenced by their path on the disk.\n\n Plugins cannot be downloaded from the npm registry, and aren't allowed to have dependencies (they need to be bundled into a single file, possibly thanks to the `@yarnpkg/builder` package).\n ", + examples: [ + [ + 'Download and activate the "@yarnpkg/plugin-exec" plugin', + '$0 plugin import @yarnpkg/plugin-exec', + ], + [ + 'Download and activate the "@yarnpkg/plugin-exec" plugin (shorthand)', + '$0 plugin import exec', + ], + [ + 'Download and activate a community plugin', + '$0 plugin import https://example.org/path/to/plugin.js', + ], + ['Activate a local plugin', '$0 plugin import ./path/to/plugin.js'], + ], + })), + (0, a.gn)([d.Command.String()], Ce.prototype, 'name', void 0), + (0, a.gn)([d.Command.Path('plugin', 'import')], Ce.prototype, 'execute', null); + class Ie extends c.BaseCommand { + constructor() { + super(...arguments), + (this.repository = 'https://github.com/yarnpkg/berry.git'), + (this.branch = 'master'), + (this.noMinify = !1), + (this.force = !1); + } + async execute() { + const e = await A.VK.find(this.context.cwd, this.context.plugins), + t = + void 0 !== this.installPath + ? y.y1.resolve(this.context.cwd, y.cS.toPortablePath(this.installPath)) + : y.y1.resolve( + y.cS.toPortablePath((0, ie.tmpdir)()), + 'yarnpkg-sources', + p.hashUtils.makeHash(this.repository).slice(0, 6) + ); + return ( + await f.P.start({ configuration: e, stdout: this.context.stdout }, async (r) => { + const { project: n } = await g.I.find(e, this.context.cwd), + i = p.structUtils.parseIdent( + this.name.replace(/^((@yarnpkg\/)?plugin-)?/, '@yarnpkg/plugin-') + ), + o = p.structUtils.stringifyIdent(i), + s = await pe(e); + if (!Object.prototype.hasOwnProperty.call(s, o)) + throw new $.lk( + h.b.PLUGIN_NAME_NOT_FOUND, + `Couldn't find a plugin named "${o}" on the remote registry. Note that only the plugins referenced on our website (https://github.com/yarnpkg/berry/blob/master/plugins.yml) can be built and imported from sources.` + ); + const A = o, + a = A.replace(/@yarnpkg\//, ''); + await ge(this, { configuration: e, report: r, target: t }), + r.reportSeparator(), + r.reportInfo(h.b.UNNAMED, 'Building a fresh ' + a), + r.reportSeparator(), + await he( + (({ pluginName: e, noMinify: t }, r) => [ + ['yarn', 'build:' + e, ...(t ? ['--no-minify'] : []), '|'], + ])({ pluginName: a, noMinify: this.noMinify }), + { configuration: e, context: this.context, target: t } + ), + r.reportSeparator(); + const c = y.y1.resolve(t, `packages/${a}/bundles/${A}.js`), + u = await R.xfs.readFilePromise(c); + await Ee(A, u, { project: n, report: r }); + }) + ).exitCode(); + } + } + (Ie.usage = d.Command.Usage({ + category: 'Plugin-related commands', + description: 'build a plugin from sources', + details: + '\n This command clones the Yarn repository into a temporary folder, builds the specified contrib plugin and updates the configuration to reference it in further CLI invocations.\n\n The plugins can be referenced by their short name if sourced from the official Yarn repository.\n ', + examples: [ + [ + 'Build and activate the "@yarnpkg/plugin-exec" plugin', + '$0 plugin import from sources @yarnpkg/plugin-exec', + ], + [ + 'Build and activate the "@yarnpkg/plugin-exec" plugin (shorthand)', + '$0 plugin import from sources exec', + ], + ], + })), + (0, a.gn)([d.Command.String()], Ie.prototype, 'name', void 0), + (0, a.gn)([d.Command.String('--path')], Ie.prototype, 'installPath', void 0), + (0, a.gn)([d.Command.String('--repository')], Ie.prototype, 'repository', void 0), + (0, a.gn)([d.Command.String('--branch')], Ie.prototype, 'branch', void 0), + (0, a.gn)([d.Command.Boolean('--no-minify')], Ie.prototype, 'noMinify', void 0), + (0, a.gn)([d.Command.Boolean('-f,--force')], Ie.prototype, 'force', void 0), + (0, a.gn)( + [d.Command.Path('plugin', 'import', 'from', 'sources')], + Ie.prototype, + 'execute', + null + ); + class me extends c.BaseCommand { + async execute() { + const e = await A.VK.find(this.context.cwd, this.context.plugins), + { project: t } = await g.I.find(e, this.context.cwd); + return ( + await f.P.start({ configuration: e, stdout: this.context.stdout }, async (r) => { + const n = this.name, + i = p.structUtils.parseIdent(n); + if (!e.plugins.has(n)) + throw new d.UsageError( + p.structUtils.prettyIdent(e, i) + + " isn't referenced by the current configuration" + ); + const o = `.yarn/plugins/${n}.cjs`, + s = y.y1.resolve(t.cwd, o); + R.xfs.existsSync(s) && + (r.reportInfo(h.b.UNNAMED, `Removing ${e.format(o, A.a5.PATH)}...`), + await R.xfs.removePromise(s)), + r.reportInfo(h.b.UNNAMED, 'Updating the configuration...'), + await A.VK.updateConfiguration(t.cwd, (e) => { + if (!Array.isArray(e.plugins)) return {}; + return { plugins: e.plugins.filter((e) => e.path !== o) }; + }); + }) + ).exitCode(); + } + } + (me.usage = d.Command.Usage({ + category: 'Plugin-related commands', + description: 'remove a plugin', + details: + '\n This command deletes the specified plugin from the .yarn/plugins folder and removes it from the configuration.\n\n **Note:** The plugins have to be referenced by their name property, which can be obtained using the `yarn plugin runtime` command. Shorthands are not allowed.\n ', + examples: [ + [ + 'Remove a plugin imported from the Yarn repository', + '$0 plugin remove @yarnpkg/plugin-typescript', + ], + ['Remove a plugin imported from a local file', '$0 plugin remove my-local-plugin'], + ], + })), + (0, a.gn)([d.Command.String()], me.prototype, 'name', void 0), + (0, a.gn)([d.Command.Path('plugin', 'remove')], me.prototype, 'execute', null); + class ye extends c.BaseCommand { + constructor() { + super(...arguments), (this.json = !1); + } + async execute() { + const e = await A.VK.find(this.context.cwd, this.context.plugins); + return ( + await f.P.start( + { configuration: e, json: this.json, stdout: this.context.stdout }, + async (t) => { + for (const r of e.plugins.keys()) { + const e = this.context.plugins.plugins.has(r); + let n = r; + e && (n += ' [builtin]'), + t.reportJson({ name: r, builtin: e }), + t.reportInfo(null, '' + n); + } + } + ) + ).exitCode(); + } + } + (ye.usage = d.Command.Usage({ + category: 'Plugin-related commands', + description: 'list the active plugins', + details: + '\n This command prints the currently active plugins. Will be displayed both builtin plugins and external plugins.\n ', + examples: [['List the currently active plugins', '$0 plugin runtime']], + })), + (0, a.gn)([d.Command.Boolean('--json')], ye.prototype, 'json', void 0), + (0, a.gn)([d.Command.Path('plugin', 'runtime')], ye.prototype, 'execute', null); + class we extends c.BaseCommand { + constructor() { + super(...arguments), (this.idents = []); + } + async execute() { + const e = await A.VK.find(this.context.cwd, this.context.plugins), + { project: t, workspace: r } = await g.I.find(e, this.context.cwd), + n = await u.C.find(e); + if (!r) throw new c.WorkspaceRequiredError(t.cwd, this.context.cwd); + const i = new Set(); + for (const e of this.idents) i.add(p.structUtils.parseIdent(e).identHash); + await t.resolveEverything({ cache: n, report: new I.$() }); + const o = e.get('bstatePath'), + s = R.xfs.existsSync(o) + ? (0, ee.parseSyml)(await R.xfs.readFilePromise(o, 'utf8')) + : {}, + a = new Map(); + for (const e of t.storedPackages.values()) { + if (!Object.prototype.hasOwnProperty.call(s, e.locatorHash)) continue; + if (0 === i.size || i.has(e.identHash)) continue; + const t = s[e.locatorHash]; + a.set(e.locatorHash, t); + } + if (a.size > 0) { + const r = e.get('bstatePath'), + n = g.I.generateBuildStateFile(a, t.storedPackages); + await R.xfs.mkdirpPromise(y.y1.dirname(r)), + await R.xfs.changeFilePromise(r, n, { automaticNewlines: !0 }); + } else await R.xfs.removePromise(o); + return ( + await f.P.start( + { configuration: e, stdout: this.context.stdout, includeLogs: !this.context.quiet }, + async (e) => { + await t.install({ cache: n, report: e }); + } + ) + ).exitCode(); + } + } + (we.usage = d.Command.Usage({ + description: "rebuild the project's native packages", + details: + "\n This command will automatically cause Yarn to forget about previous compilations of the given packages and to run them again.\n\n Note that while Yarn forgets the compilation, the previous artifacts aren't erased from the filesystem and may affect the next builds (in good or bad). To avoid this, you may remove the .yarn/unplugged folder, or any other relevant location where packages might have been stored (Yarn may offer a way to do that automatically in the future).\n\n By default all packages will be rebuilt, but you can filter the list by specifying the names of the packages you want to clear from memory.\n ", + examples: [ + ['Rebuild all packages', '$0 rebuild'], + ['Rebuild fsevents only', '$0 rebuild fsevents'], + ], + })), + (0, a.gn)([d.Command.Rest()], we.prototype, 'idents', void 0), + (0, a.gn)([d.Command.Path('rebuild')], we.prototype, 'execute', null); + var Be = r(2401), + Qe = r.n(Be); + class ve extends c.BaseCommand { + constructor() { + super(...arguments), (this.all = !1), (this.patterns = []); + } + async execute() { + const e = await A.VK.find(this.context.cwd, this.context.plugins), + { project: t, workspace: r } = await g.I.find(e, this.context.cwd), + n = await u.C.find(e); + if (!r) throw new c.WorkspaceRequiredError(t.cwd, this.context.cwd); + const o = this.all ? t.workspaces : [r], + s = [i.REGULAR, i.DEVELOPMENT, i.PEER], + a = []; + let l = !1; + const h = []; + for (const e of this.patterns) { + let t = !1; + const r = p.structUtils.parseIdent(e); + for (const n of o) { + const i = [...n.manifest.peerDependenciesMeta.keys()]; + for (const r of Qe()(i, e)) + n.manifest.peerDependenciesMeta.delete(r), (l = !0), (t = !0); + for (const e of s) { + const i = n.manifest.getForScope(e), + o = [...i.values()].map((e) => p.structUtils.stringifyIdent(e)); + for (const s of Qe()(o, p.structUtils.stringifyIdent(r))) { + const { identHash: r } = p.structUtils.parseIdent(s), + o = i.get(r); + if (void 0 === o) + throw new Error('Assertion failed: Expected the descriptor to be registered'); + n.manifest[e].delete(r), h.push([n, e, o]), (l = !0), (t = !0); + } + } + } + t || a.push(e); + } + const C = a.length > 1 ? 'Patterns' : 'Pattern', + E = a.length > 1 ? "don't" : "doesn't", + I = this.all ? 'any' : 'this'; + if (a.length > 0) + throw new d.UsageError( + `${C} ${a.join(', ')} ${E} match packages referenced by ${I} workspace` + ); + if (l) { + await e.triggerMultipleHooks((e) => e.afterWorkspaceDependencyRemoval, h); + return ( + await f.P.start({ configuration: e, stdout: this.context.stdout }, async (e) => { + await t.install({ cache: n, report: e }); + }) + ).exitCode(); + } + return 0; + } + } + (ve.usage = d.Command.Usage({ + description: 'remove dependencies from the project', + details: + '\n This command will remove the packages matching the specified patterns from the current workspace.\n\n If the `-A,--all` option is set, the operation will be applied to all workspaces from the current project.\n\n This command accepts glob patterns as arguments (if valid Idents and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them.\n ', + examples: [ + ['Remove a dependency from the current project', '$0 remove lodash'], + ['Remove a dependency from all workspaces at once', '$0 remove lodash --all'], + ['Remove all dependencies starting with `eslint-`', "$0 remove 'eslint-*'"], + ['Remove all dependencies with the `@babel` scope', "$0 remove '@babel/*'"], + [ + 'Remove all dependencies matching `react-dom` or `react-helmet`', + "$0 remove 'react-{dom,helmet}'", + ], + ], + })), + (0, a.gn)([d.Command.Boolean('-A,--all')], ve.prototype, 'all', void 0), + (0, a.gn)([d.Command.Rest()], ve.prototype, 'patterns', void 0), + (0, a.gn)([d.Command.Path('remove')], ve.prototype, 'execute', null); + class De extends c.BaseCommand { + async execute() { + const e = await A.VK.find(this.context.cwd, this.context.plugins), + { project: t, workspace: r } = await g.I.find(e, this.context.cwd); + if (!r) throw new c.WorkspaceRequiredError(t.cwd, this.context.cwd); + return ( + await f.P.start({ configuration: e, stdout: this.context.stdout }, async (t) => { + const n = r.manifest.scripts, + i = p.miscUtils.sortMap(n.keys(), (e) => e), + o = { breakLength: 1 / 0, colors: e.get('enableColors'), maxArrayLength: 2 }, + s = i.reduce((e, t) => Math.max(e, t.length), 0); + for (const [e, r] of n.entries()) + t.reportInfo(null, `${e.padEnd(s, ' ')} ${(0, P.inspect)(r, o)}`); + }) + ).exitCode(); + } + } + (0, a.gn)([d.Command.Path('run')], De.prototype, 'execute', null); + const be = new Map([ + ['constraints', [['constraints', 'query'], ['constraints', 'source'], ['constraints']]], + ['interactive-tools', [['upgrade-interactive']]], + ['stage', [['stage']]], + ['version', [['version', 'apply'], ['version', 'check'], ['version']]], + ['workspace-tools', [['workspaces', 'foreach'], ['workspace']]], + ]); + class Se extends c.BaseCommand { + constructor() { + super(...arguments), + (this.inspect = !1), + (this.inspectBrk = !1), + (this.topLevel = !1), + (this.binariesOnly = !1), + (this.args = []); + } + async execute() { + const e = await A.VK.find(this.context.cwd, this.context.plugins), + { project: t, workspace: r, locator: n } = await g.I.find(e, this.context.cwd); + await t.restoreInstallState(); + const i = this.topLevel ? t.topLevelWorkspace.anchoredLocator : n; + if ( + !this.binariesOnly && + (await p.scriptUtils.hasPackageScript(i, this.scriptName, { project: t })) + ) + return await p.scriptUtils.executePackageScript(i, this.scriptName, this.args, { + project: t, + stdin: this.context.stdin, + stdout: this.context.stdout, + stderr: this.context.stderr, + }); + if ( + (await p.scriptUtils.getPackageAccessibleBinaries(i, { project: t })).get( + this.scriptName + ) + ) { + const e = []; + return ( + this.inspect && + ('string' == typeof this.inspect + ? e.push('--inspect=' + this.inspect) + : e.push('--inspect')), + this.inspectBrk && + ('string' == typeof this.inspectBrk + ? e.push('--inspect-brk=' + this.inspectBrk) + : e.push('--inspect-brk')), + await p.scriptUtils.executePackageAccessibleBinary(i, this.scriptName, this.args, { + cwd: this.context.cwd, + project: t, + stdin: this.context.stdin, + stdout: this.context.stdout, + stderr: this.context.stderr, + nodeArgs: e, + }) + ); + } + if (!this.topLevel && !this.binariesOnly && r && this.scriptName.includes(':')) { + const e = ( + await Promise.all( + t.workspaces.map(async (e) => + e.manifest.scripts.has(this.scriptName) ? e : null + ) + ) + ).filter((e) => null !== e); + if (1 === e.length) + return await p.scriptUtils.executeWorkspaceScript( + e[0], + this.scriptName, + this.args, + { + stdin: this.context.stdin, + stdout: this.context.stdout, + stderr: this.context.stderr, + } + ); + } + if (this.topLevel) + throw 'node-gyp' === this.scriptName + ? new d.UsageError( + `Couldn't find a script name "${ + this.scriptName + }" in the top-level (used by ${p.structUtils.prettyLocator( + e, + n + )}). This typically happens because some package depends on "node-gyp" to build itself, but didn't list it in their dependencies. To fix that, please run "yarn add node-gyp" into your top-level workspace. You also can open an issue on the repository of the specified package to suggest them to use an optional peer dependency.` + ) + : new d.UsageError( + `Couldn't find a script name "${ + this.scriptName + }" in the top-level (used by ${p.structUtils.prettyLocator(e, n)}).` + ); + { + if ('global' === this.scriptName) + throw new d.UsageError( + "The 'yarn global' commands have been removed in 2.x - consider using 'yarn dlx' or a third-party plugin instead" + ); + const e = [this.scriptName].concat(this.args); + for (const [t, r] of be) + for (const n of r) + if ( + e.length >= n.length && + JSON.stringify(e.slice(0, n.length)) === JSON.stringify(n) + ) + throw new d.UsageError( + `Couldn't find a script named "${this.scriptName}", but a matching command can be found in the ${t} plugin. You can install it with "yarn plugin import ${t}".` + ); + throw new d.UsageError(`Couldn't find a script named "${this.scriptName}".`); + } + } + } + (Se.usage = d.Command.Usage({ + description: 'run a script defined in the package.json', + details: + "\n This command will run a tool. The exact tool that will be executed will depend on the current state of your workspace:\n\n - If the `scripts` field from your local package.json contains a matching script name, its definition will get executed.\n\n - Otherwise, if one of the local workspace's dependencies exposes a binary with a matching name, this binary will get executed (the `--inspect` and `--inspect-brk` options will then be forwarded to the underlying Node process).\n\n - Otherwise, if the specified name contains a colon character and if one of the workspaces in the project contains exactly one script with a matching name, then this script will get executed.\n\n Whatever happens, the cwd of the spawned process will be the workspace that declares the script (which makes it possible to call commands cross-workspaces using the third syntax).\n ", + examples: [ + ['Run the tests from the local workspace', '$0 run test'], + ['Same thing, but without the "run" keyword', '$0 test'], + ['Inspect Webpack while running', '$0 run --inspect-brk webpack'], + ], + })), + (0, a.gn)( + [d.Command.String('--inspect', { tolerateBoolean: !0 })], + Se.prototype, + 'inspect', + void 0 + ), + (0, a.gn)( + [d.Command.String('--inspect-brk', { tolerateBoolean: !0 })], + Se.prototype, + 'inspectBrk', + void 0 + ), + (0, a.gn)( + [d.Command.Boolean('-T,--top-level', { hidden: !0 })], + Se.prototype, + 'topLevel', + void 0 + ), + (0, a.gn)( + [d.Command.Boolean('-B,--binaries-only', { hidden: !0 })], + Se.prototype, + 'binariesOnly', + void 0 + ), + (0, a.gn)( + [d.Command.Boolean('--silent', { hidden: !0 })], + Se.prototype, + 'silent', + void 0 + ), + (0, a.gn)([d.Command.String()], Se.prototype, 'scriptName', void 0), + (0, a.gn)([d.Command.Proxy()], Se.prototype, 'args', void 0), + (0, a.gn)([d.Command.Path('run')], Se.prototype, 'execute', null); + class ke extends c.BaseCommand { + constructor() { + super(...arguments), (this.save = !1); + } + async execute() { + const e = await A.VK.find(this.context.cwd, this.context.plugins), + { project: t, workspace: r } = await g.I.find(e, this.context.cwd), + n = await u.C.find(e); + if (!r) throw new c.WorkspaceRequiredError(t.cwd, this.context.cwd); + const i = p.structUtils.parseDescriptor(this.descriptor, !0), + o = p.structUtils.makeDescriptor(i, this.resolution); + t.storedDescriptors.set(i.descriptorHash, i), + t.storedDescriptors.set(o.descriptorHash, o), + t.resolutionAliases.set(i.descriptorHash, o.descriptorHash); + return ( + await f.P.start({ configuration: e, stdout: this.context.stdout }, async (e) => { + await t.install({ cache: n, report: e }); + }) + ).exitCode(); + } + } + (ke.usage = d.Command.Usage({ + description: 'enforce a package resolution', + details: + '\n This command updates the resolution table so that `descriptor` is resolved by `resolution`.\n\n Note that by default this command only affect the current resolution table - meaning that this "manual override" will disappear if you remove the lockfile, or if the package disappear from the table. If you wish to make the enforced resolution persist whatever happens, add the `-s,--save` flag which will also edit the `resolutions` field from your top-level manifest.\n\n Note that no attempt is made at validating that `resolution` is a valid resolution entry for `descriptor`.\n ', + examples: [ + [ + 'Force all instances of lodash@^1.2.3 to resolve to 1.5.0', + '$0 set resolution lodash@^1.2.3 1.5.0', + ], + ], + })), + (0, a.gn)([d.Command.String()], ke.prototype, 'descriptor', void 0), + (0, a.gn)([d.Command.String()], ke.prototype, 'resolution', void 0), + (0, a.gn)([d.Command.Boolean('-s,--save')], ke.prototype, 'save', void 0), + (0, a.gn)([d.Command.Path('set', 'resolution')], ke.prototype, 'execute', null); + class xe extends c.BaseCommand { + constructor() { + super(...arguments), + (this.patterns = []), + (this.interactive = !1), + (this.verbose = !1), + (this.exact = !1), + (this.tilde = !1), + (this.caret = !1); + } + async execute() { + const e = await A.VK.find(this.context.cwd, this.context.plugins), + { project: t, workspace: r } = await g.I.find(e, this.context.cwd), + n = await u.C.find(e); + if (!r) throw new c.WorkspaceRequiredError(t.cwd, this.context.cwd); + const o = E().createPromptModule({ + input: this.context.stdin, + output: this.context.stdout, + }), + a = Q(this, t), + C = this.interactive ? [s.KEEP, s.REUSE, s.PROJECT, s.LATEST] : [s.PROJECT, s.LATEST], + I = [], + m = []; + for (const e of this.patterns) { + let r = !1; + const o = p.structUtils.parseDescriptor(e); + for (const e of t.workspaces) + for (const s of [i.REGULAR, i.DEVELOPMENT]) { + const i = [...e.manifest.getForScope(s).values()].map((e) => + p.structUtils.stringifyIdent(e) + ); + for (const A of Qe()(i, p.structUtils.stringifyIdent(o))) { + const i = p.structUtils.parseIdent(A), + c = e.manifest[s].get(i.identHash); + if (void 0 === c) + throw new Error('Assertion failed: Expected the descriptor to be registered'); + const u = p.structUtils.makeDescriptor(i, o.range); + I.push( + Promise.resolve().then(async () => [ + e, + s, + c, + await x(u, { + project: t, + workspace: e, + cache: n, + target: s, + modifier: a, + strategies: C, + }), + ]) + ), + (r = !0); + } + } + r || m.push(e); + } + if (m.length > 1) + throw new d.UsageError( + `Patterns ${m.join(', ')} don't match any packages referenced by any workspace` + ); + if (m.length > 0) + throw new d.UsageError( + `Pattern ${m[0]} doesn't match any packages referenced by any workspace` + ); + const y = await Promise.all(I), + w = await l.h.start( + { configuration: e, stdout: this.context.stdout, suggestInstall: !1 }, + async (r) => { + for (const [, , n, i] of y) { + const o = i.filter((e) => null !== e.descriptor); + 0 === o.length + ? t.configuration.get('enableNetwork') + ? r.reportError( + h.b.CANT_SUGGEST_RESOLUTIONS, + p.structUtils.prettyDescriptor(e, n) + + " can't be resolved to a satisfying range" + ) + : r.reportError( + h.b.CANT_SUGGEST_RESOLUTIONS, + p.structUtils.prettyDescriptor(e, n) + + " can't be resolved to a satisfying range (note: network resolution has been disabled)" + ) + : o.length > 1 && + !this.interactive && + r.reportError( + h.b.CANT_SUGGEST_RESOLUTIONS, + p.structUtils.prettyDescriptor(e, n) + + ' has multiple possible upgrade strategies; use -i to disambiguate manually' + ); + } + } + ); + if (w.hasErrors()) return w.exitCode(); + let B = !1; + const v = []; + for (const [r, n, , i] of y) { + let s; + const A = i.filter((e) => null !== e.descriptor), + a = A[0].descriptor, + c = A.every((e) => p.structUtils.areDescriptorsEqual(e.descriptor, a)); + 1 === A.length || c + ? (s = a) + : ((B = !0), + ({ answer: s } = await o({ + type: 'list', + name: 'answer', + message: `Which range to you want to use in ${p.structUtils.prettyWorkspace( + e, + r + )} ❯ ${n}?`, + choices: i.map(({ descriptor: e, reason: r }) => + e + ? { + name: r, + value: e, + short: p.structUtils.prettyDescriptor(t.configuration, e), + } + : { name: r, disabled: () => !0 } + ), + }))); + const u = r.manifest[n].get(s.identHash); + if (void 0 === u) + throw new Error('Assertion failed: This descriptor should have a matching entry'); + if (u.descriptorHash !== s.descriptorHash) + r.manifest[n].set(s.identHash, s), v.push([r, n, u, s]); + else { + const n = e.makeResolver(), + i = { project: t, resolver: n }, + o = n.bindDescriptor(u, r.anchoredLocator, i); + t.forgetResolution(o); + } + } + await e.triggerMultipleHooks((e) => e.afterWorkspaceDependencyReplacement, v), + B && this.context.stdout.write('\n'); + return ( + await f.P.start({ configuration: e, stdout: this.context.stdout }, async (e) => { + await t.install({ cache: n, report: e }); + }) + ).exitCode(); + } + } + (xe.usage = d.Command.Usage({ + description: 'upgrade dependencies across the project', + details: + "\n This command upgrades the packages matching the list of specified patterns to their latest available version across the whole project (regardless of whether they're part of `dependencies` or `devDependencies` - `peerDependencies` won't be affected). This is a project-wide command: all workspaces will be upgraded in the process.\n\n If `-i,--interactive` is set (or if the `preferInteractive` settings is toggled on) the command will offer various choices, depending on the detected upgrade paths. Some upgrades require this flag in order to resolve ambiguities.\n\n The, `-C,--caret`, `-E,--exact` and `-T,--tilde` options have the same meaning as in the `add` command (they change the modifier used when the range is missing or a tag, and are ignored when the range is explicitly set).\n\n This command accepts glob patterns as arguments (if valid Descriptors and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them.\n\n **Note:** The ranges have to be static, only the package scopes and names can contain glob patterns.\n ", + examples: [ + ['Upgrade all instances of lodash to the latest release', '$0 up lodash'], + [ + 'Upgrade all instances of lodash to the latest release, but ask confirmation for each', + '$0 up lodash -i', + ], + ['Upgrade all instances of lodash to 1.2.3', '$0 up lodash@1.2.3'], + [ + 'Upgrade all instances of packages with the `@babel` scope to the latest release', + "$0 up '@babel/*'", + ], + [ + 'Upgrade all instances of packages containing the word `jest` to the latest release', + "$0 up '*jest*'", + ], + [ + 'Upgrade all instances of packages with the `@babel` scope to 7.0.0', + "$0 up '@babel/*@7.0.0'", + ], + ], + })), + (0, a.gn)([d.Command.Rest()], xe.prototype, 'patterns', void 0), + (0, a.gn)([d.Command.Boolean('-i,--interactive')], xe.prototype, 'interactive', void 0), + (0, a.gn)([d.Command.Boolean('-v,--verbose')], xe.prototype, 'verbose', void 0), + (0, a.gn)([d.Command.Boolean('-E,--exact')], xe.prototype, 'exact', void 0), + (0, a.gn)([d.Command.Boolean('-T,--tilde')], xe.prototype, 'tilde', void 0), + (0, a.gn)([d.Command.Boolean('-C,--caret')], xe.prototype, 'caret', void 0), + (0, a.gn)([d.Command.Path('up')], xe.prototype, 'execute', null); + var Fe = r(94682); + class Me extends c.BaseCommand { + constructor() { + super(...arguments), (this.recursive = !1), (this.peers = !1); + } + async execute() { + const e = await A.VK.find(this.context.cwd, this.context.plugins), + { project: t, workspace: r } = await g.I.find(e, this.context.cwd); + if (!r) throw new c.WorkspaceRequiredError(t.cwd, this.context.cwd); + await t.restoreInstallState(); + const n = p.structUtils.parseIdent(this.package).identHash, + i = this.recursive + ? (function (e, t, { configuration: r, peers: n }) { + const i = p.miscUtils.sortMap(e.workspaces, (e) => + p.structUtils.stringifyLocator(e.anchoredLocator) + ), + o = new Set(), + s = new Set(), + A = (r) => { + if (o.has(r.locatorHash)) return s.has(r.locatorHash); + if ((o.add(r.locatorHash), r.identHash === t)) + return s.add(r.locatorHash), !0; + let i = !1; + r.identHash === t && (i = !0); + for (const t of r.dependencies.values()) { + if (!n && r.peerDependencies.has(t.identHash)) continue; + const o = e.storedResolutions.get(t.descriptorHash); + if (!o) + throw new Error( + 'Assertion failed: The resolution should have been registered' + ); + const s = e.storedPackages.get(o); + if (!s) + throw new Error( + 'Assertion failed: The package should have been registered' + ); + A(s) && (i = !0); + } + return i && s.add(r.locatorHash), i; + }; + for (const t of i) { + const r = e.storedPackages.get(t.anchoredLocator.locatorHash); + if (!r) + throw new Error( + 'Assertion failed: The package should have been registered' + ); + A(r); + } + const a = new Set(), + c = {}, + u = (t, i, o) => { + if (!s.has(t.locatorHash)) return; + const A = {}; + if ( + ((i[ + null !== o + ? `${p.structUtils.prettyLocator( + r, + t + )} (via ${p.structUtils.prettyRange(r, o)})` + : '' + p.structUtils.prettyLocator(r, t) + ] = A), + !a.has(t.locatorHash) && + (a.add(t.locatorHash), null === o || !e.tryWorkspaceByLocator(t))) + ) + for (const r of t.dependencies.values()) { + if (!n && t.peerDependencies.has(r.identHash)) continue; + const i = e.storedResolutions.get(r.descriptorHash); + if (!i) + throw new Error( + 'Assertion failed: The resolution should have been registered' + ); + const o = e.storedPackages.get(i); + if (!o) + throw new Error( + 'Assertion failed: The package should have been registered' + ); + u(o, A, r.range); + } + }; + for (const t of i) { + const r = e.storedPackages.get(t.anchoredLocator.locatorHash); + if (!r) + throw new Error( + 'Assertion failed: The package should have been registered' + ); + u(r, c, null); + } + return c; + })(t, n, { configuration: e, peers: this.peers }) + : (function (e, t, { configuration: r, peers: n }) { + const i = p.miscUtils.sortMap(e.storedPackages.values(), (e) => + p.structUtils.stringifyLocator(e) + ), + o = {}; + for (const s of i) { + let i = null; + for (const A of s.dependencies.values()) { + if (!n && s.peerDependencies.has(A.identHash)) continue; + const a = e.storedResolutions.get(A.descriptorHash); + if (!a) + throw new Error( + 'Assertion failed: The resolution should have been registered' + ); + const c = e.storedPackages.get(a); + if (!c) + throw new Error( + 'Assertion failed: The package should have been registered' + ); + if (c.identHash !== t) continue; + if (null === i) { + i = {}; + const e = '' + p.structUtils.prettyLocator(r, s); + o[e] = i; + } + const u = `${p.structUtils.prettyLocator( + r, + c + )} (via ${p.structUtils.prettyRange(r, A.range)})`; + i[u] = {}; + } + } + return o; + })(t, n, { configuration: e, peers: this.peers }); + !(function (e, t) { + let r = (0, Fe.asTree)(t, !1, !1); + (r = r.replace(/^([├└]─)/gm, '│\n$1').replace(/^│\n/, '')), e.write(r); + })(this.context.stdout, i); + } + } + (Me.usage = d.Command.Usage({ + description: 'display the reason why a package is needed', + details: + '\n This command prints the exact reasons why a package appears in the dependency tree.\n\n If `-R,--recursive` is set, the listing will go in depth and will list, for each workspaces, what are all the paths that lead to the dependency. Note that the display is somewhat optimized in that it will not print the package listing twice for a single package, so if you see a leaf named "Foo" when looking for "Bar", it means that "Foo" already got printed higher in the tree.\n\n If `--peers` is set, the command will also print the peer dependencies that match the specified name.\n ', + examples: [['Explain why lodash is used in your project', '$0 why lodash']], + })), + (0, a.gn)([d.Command.String()], Me.prototype, 'package', void 0), + (0, a.gn)([d.Command.Boolean('-R,--recursive')], Me.prototype, 'recursive', void 0), + (0, a.gn)([d.Command.Boolean('--peers')], Me.prototype, 'peers', void 0), + (0, a.gn)([d.Command.Path('why')], Me.prototype, 'execute', null); + class Ne extends c.BaseCommand { + constructor() { + super(...arguments), (this.verbose = !1), (this.json = !1); + } + async execute() { + const e = await A.VK.find(this.context.cwd, this.context.plugins), + { project: t } = await g.I.find(e, this.context.cwd); + return ( + await f.P.start( + { configuration: e, json: this.json, stdout: this.context.stdout }, + async (e) => { + for (const r of t.workspaces) { + const { manifest: n } = r; + let i; + if (this.verbose) { + const e = new Set(), + r = new Set(); + for (const i of m.G.hardDependencies) + for (const [o, s] of n.getForScope(i)) { + const n = t.tryWorkspaceByDescriptor(s); + null === n ? t.workspacesByIdent.has(o) && r.add(s) : e.add(n); + } + i = { + workspaceDependencies: Array.from(e).map((e) => e.relativeCwd), + mismatchedWorkspaceDependencies: Array.from(r).map((e) => + p.structUtils.stringifyDescriptor(e) + ), + }; + } + e.reportInfo(null, '' + r.relativeCwd), + e.reportJson({ + location: r.relativeCwd, + name: n.name ? p.structUtils.stringifyIdent(n.name) : null, + ...i, + }); + } + } + ) + ).exitCode(); + } + } + (Ne.usage = d.Command.Usage({ + category: 'Workspace-related commands', + description: 'list all available workspaces', + details: + '\n This command will print the list of all workspaces in the project. If both the `-v,--verbose` and `--json` options are set, Yarn will also return the cross-dependencies between each workspaces (useful when you wish to automatically generate Buck / Bazel rules).\n\n If the `--json` flag is set the output will follow a JSON-stream output also known as NDJSON (https://github.com/ndjson/ndjson-spec).\n ', + })), + (0, a.gn)([d.Command.Boolean('-v,--verbose')], Ne.prototype, 'verbose', void 0), + (0, a.gn)([d.Command.Boolean('--json')], Ne.prototype, 'json', void 0), + (0, a.gn)([d.Command.Path('workspaces', 'list')], Ne.prototype, 'execute', null); + class Re extends d.Command { + constructor() { + super(...arguments), (this.args = []); + } + async execute() { + const e = await A.VK.find(this.context.cwd, this.context.plugins), + { project: t, workspace: r } = await g.I.find(e, this.context.cwd); + if (!r) throw new c.WorkspaceRequiredError(t.cwd, this.context.cwd); + const n = t.workspaces, + i = new Map( + n.map((e) => { + const t = p.structUtils.convertToIdent(e.locator); + return [p.structUtils.stringifyIdent(t), e]; + }) + ), + o = i.get(this.workspaceName); + if (void 0 === o) { + const e = Array.from(i.keys()).sort(); + throw new d.UsageError( + `Workspace '${ + this.workspaceName + }' not found. Did you mean any of the following:\n - ${e.join('\n - ')}?` + ); + } + return this.cli.run([this.commandName, ...this.args], { cwd: o.cwd }); + } + } + (Re.usage = d.Command.Usage({ + category: 'Workspace-related commands', + description: 'run a command within the specified workspace', + details: '\n This command will run a given sub-command on a single workspace.\n ', + examples: [ + ['Add a package to a single workspace', 'yarn workspace components add -D react'], + ['Run build script on a single workspace', 'yarn workspace components run build'], + ], + })), + (0, a.gn)([d.Command.String()], Re.prototype, 'workspaceName', void 0), + (0, a.gn)([d.Command.String()], Re.prototype, 'commandName', void 0), + (0, a.gn)([d.Command.Proxy()], Re.prototype, 'args', void 0), + (0, a.gn)([d.Command.Path('workspace')], Re.prototype, 'execute', null); + const Ke = { + configuration: { + enableImmutableInstalls: { + description: 'If true, prevents the install command from modifying the lockfile', + type: A.a2.BOOLEAN, + default: !1, + }, + defaultSemverRangePrefix: { + description: "The default save prefix: '^', '~' or ''", + type: A.a2.STRING, + default: o.CARET, + }, + }, + commands: [ + K, + U, + J, + ke, + le, + Ae, + Ne, + q, + z, + W, + X, + M, + N, + H, + Z, + te, + re, + ne, + Ie, + Ce, + me, + de, + ye, + we, + ve, + De, + Se, + xe, + Me, + Re, + ], + }; + }, + 41466: (e, t, r) => { + 'use strict'; + r.r(t), r.d(t, { default: () => u }); + var n = r(84132), + i = r(46009), + o = r(75448); + const s = /^(?:[a-zA-Z]:[\\/]|\.{0,2}\/)/, + A = /^[^?]*\.(?:tar\.gz|tgz)(?:::.*)?$/; + var a = r(46611), + c = r(32485); + const u = { + fetchers: [ + class { + supports(e, t) { + return !!A.test(e.reference) && !!e.reference.startsWith('file:'); + } + getLocalPath(e, t) { + return null; + } + async fetch(e, t) { + const r = t.checksums.get(e.locatorHash) || null, + [i, o, s] = await t.cache.fetchPackageFromCache(e, r, { + onHit: () => t.report.reportCacheHit(e), + onMiss: () => + t.report.reportCacheMiss( + e, + n.structUtils.prettyLocator(t.project.configuration, e) + + " can't be found in the cache and will be fetched from the disk" + ), + loader: () => this.fetchFromDisk(e, t), + skipIntegrityCheck: t.skipIntegrityCheck, + }); + return { + packageFs: i, + releaseFs: o, + prefixPath: n.structUtils.getIdentVendorPath(e), + checksum: s, + }; + } + async fetchFromDisk(e, t) { + const { parentLocator: r, path: s } = n.structUtils.parseFileStyleRange( + e.reference, + { protocol: 'file:' } + ), + A = i.y1.isAbsolute(s) + ? { packageFs: new o.M(i.LZ.root), prefixPath: i.LZ.dot, localPath: i.LZ.root } + : await t.fetcher.fetch(r, t), + a = A.localPath + ? { + packageFs: new o.M(i.LZ.root), + prefixPath: i.y1.relative(i.LZ.root, A.localPath), + } + : A; + A !== a && A.releaseFs && A.releaseFs(); + const c = a.packageFs, + u = i.y1.join(a.prefixPath, s), + l = await c.readFilePromise(u); + return await n.miscUtils.releaseAfterUseAsync( + async () => + await n.tgzUtils.convertToZip(l, { + compressionLevel: t.project.configuration.get('compressionLevel'), + prefixPath: n.structUtils.getIdentVendorPath(e), + stripComponents: 1, + }), + a.releaseFs + ); + } + }, + class { + supports(e, t) { + return !!e.reference.startsWith('file:'); + } + getLocalPath(e, t) { + const { parentLocator: r, path: o } = n.structUtils.parseFileStyleRange( + e.reference, + { protocol: 'file:' } + ); + if (i.y1.isAbsolute(o)) return o; + const s = t.fetcher.getLocalPath(r, t); + return null === s ? null : i.y1.resolve(s, o); + } + async fetch(e, t) { + const r = t.checksums.get(e.locatorHash) || null, + [i, o, s] = await t.cache.fetchPackageFromCache(e, r, { + onHit: () => t.report.reportCacheHit(e), + onMiss: () => + t.report.reportCacheMiss( + e, + n.structUtils.prettyLocator(t.project.configuration, e) + + " can't be found in the cache and will be fetched from the disk" + ), + loader: () => this.fetchFromDisk(e, t), + skipIntegrityCheck: t.skipIntegrityCheck, + }); + return { + packageFs: i, + releaseFs: o, + prefixPath: n.structUtils.getIdentVendorPath(e), + localPath: this.getLocalPath(e, t), + checksum: s, + }; + } + async fetchFromDisk(e, t) { + const { parentLocator: r, path: s } = n.structUtils.parseFileStyleRange( + e.reference, + { protocol: 'file:' } + ), + A = i.y1.isAbsolute(s) + ? { packageFs: new o.M(i.LZ.root), prefixPath: i.LZ.dot, localPath: i.LZ.root } + : await t.fetcher.fetch(r, t), + a = A.localPath + ? { + packageFs: new o.M(i.LZ.root), + prefixPath: i.y1.relative(i.LZ.root, A.localPath), + } + : A; + A !== a && A.releaseFs && A.releaseFs(); + const c = a.packageFs, + u = i.y1.join(a.prefixPath, s); + return await n.miscUtils.releaseAfterUseAsync( + async () => + await n.tgzUtils.makeArchiveFromDirectory(u, { + baseFs: c, + prefixPath: n.structUtils.getIdentVendorPath(e), + compressionLevel: t.project.configuration.get('compressionLevel'), + }), + a.releaseFs + ); + } + }, + ], + resolvers: [ + class { + supportsDescriptor(e, t) { + return !!A.test(e.range) && (!!e.range.startsWith('file:') || !!s.test(e.range)); + } + supportsLocator(e, t) { + return !!A.test(e.reference) && !!e.reference.startsWith('file:'); + } + shouldPersistResolution(e, t) { + return !0; + } + bindDescriptor(e, t, r) { + return ( + s.test(e.range) && (e = n.structUtils.makeDescriptor(e, 'file:' + e.range)), + n.structUtils.bindDescriptor(e, { locator: n.structUtils.stringifyLocator(t) }) + ); + } + getResolutionDependencies(e, t) { + return []; + } + async getCandidates(e, t, r) { + let o = e.range; + return ( + o.startsWith('file:') && (o = o.slice('file:'.length)), + [n.structUtils.makeLocator(e, 'file:' + i.cS.toPortablePath(o))] + ); + } + async resolve(e, t) { + if (!t.fetchOptions) + throw new Error( + 'Assertion failed: This resolver cannot be used unless a fetcher is configured' + ); + const r = await t.fetchOptions.fetcher.fetch(e, t.fetchOptions), + i = await n.miscUtils.releaseAfterUseAsync( + async () => await a.G.find(r.prefixPath, { baseFs: r.packageFs }), + r.releaseFs + ); + return { + ...e, + version: i.version || '0.0.0', + languageName: t.project.configuration.get('defaultLanguageName'), + linkType: c.U.HARD, + dependencies: i.dependencies, + peerDependencies: i.peerDependencies, + dependenciesMeta: i.dependenciesMeta, + peerDependenciesMeta: i.peerDependenciesMeta, + bin: i.bin, + }; + } + }, + class { + supportsDescriptor(e, t) { + return !!e.range.match(s) || !!e.range.startsWith('file:'); + } + supportsLocator(e, t) { + return !!e.reference.startsWith('file:'); + } + shouldPersistResolution(e, t) { + return !1; + } + bindDescriptor(e, t, r) { + return ( + s.test(e.range) && (e = n.structUtils.makeDescriptor(e, 'file:' + e.range)), + n.structUtils.bindDescriptor(e, { locator: n.structUtils.stringifyLocator(t) }) + ); + } + getResolutionDependencies(e, t) { + return []; + } + async getCandidates(e, t, r) { + let o = e.range; + return ( + o.startsWith('file:') && (o = o.slice('file:'.length)), + [n.structUtils.makeLocator(e, 'file:' + i.cS.toPortablePath(o))] + ); + } + async resolve(e, t) { + if (!t.fetchOptions) + throw new Error( + 'Assertion failed: This resolver cannot be used unless a fetcher is configured' + ); + const r = await t.fetchOptions.fetcher.fetch(e, t.fetchOptions), + i = await n.miscUtils.releaseAfterUseAsync( + async () => await a.G.find(r.prefixPath, { baseFs: r.packageFs }), + r.releaseFs + ); + return { + ...e, + version: i.version || '0.0.0', + languageName: t.project.configuration.get('defaultLanguageName'), + linkType: c.U.HARD, + dependencies: i.dependencies, + peerDependencies: i.peerDependencies, + dependenciesMeta: i.dependenciesMeta, + peerDependenciesMeta: i.peerDependenciesMeta, + bin: i.bin, + }; + } + }, + ], + }; + }, + 10284: (e, t, r) => { + 'use strict'; + r.r(t), r.d(t, { gitUtils: () => n, default: () => B }); + var n = {}; + r.r(n), + r.d(n, { + TreeishProtocols: () => g, + clone: () => m, + isGitUrl: () => f, + lsRemote: () => E, + normalizeLocator: () => C, + normalizeRepoUrl: () => d, + resolveUrl: () => I, + splitRepoUrl: () => p, + }); + var i = r(84132), + o = r(46009), + s = r(56537), + A = r(71191), + a = r.n(A), + c = r(53887), + u = r.n(c); + function l() { + return { ...process.env, GIT_SSH_COMMAND: 'ssh -o BatchMode=yes' }; + } + const h = [ + /^ssh:/, + /^git(?:\+ssh)?:/, + /^(?:git\+)?https?:[^#]+\/[^#]+(?:\.git)(?:#.*)?$/, + /^(?:git\+)https?:[^#]+\/[^#]+(?:\.git)?(?:#.*)?$/, + /^git@[^#]+\/[^#]+\.git(?:#.*)?$/, + /^(?:github:|https:\/\/github\.com\/)?(?!\.{1,2}\/)([a-zA-Z._0-9-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z._0-9-]+?)(?:\.git)?(?:#.*)?$/, + /^https:\/\/github\.com\/(?!\.{1,2}\/)([a-zA-Z0-9._-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z0-9._-]+?)\/tarball\/(.+)?$/, + ]; + var g; + function f(e) { + return !!e && h.some((t) => !!e.match(t)); + } + function p(e) { + const t = (e = d(e)).indexOf('#'); + if (-1 === t) + return { repo: e, treeish: { protocol: g.Head, request: 'master' }, extra: {} }; + const r = e.slice(0, t), + n = e.slice(t + 1); + if (n.match(/^[a-z]+=/)) { + const e = a().parse(n); + for (const [t, r] of Object.entries(e)) + if ('string' != typeof r) + throw new Error(`Assertion failed: The ${t} parameter must be a literal string`); + const t = Object.values(g).find((t) => Object.prototype.hasOwnProperty.call(e, t)); + let i, o; + void 0 !== t ? ((i = t), (o = e[t])) : ((i = g.Head), (o = 'master')); + for (const t of Object.values(g)) delete e[t]; + return { repo: r, treeish: { protocol: i, request: o }, extra: e }; + } + { + const e = n.indexOf(':'); + let t, i; + return ( + -1 === e ? ((t = null), (i = n)) : ((t = n.slice(0, e)), (i = n.slice(e + 1))), + { repo: r, treeish: { protocol: t, request: i }, extra: {} } + ); + } + } + function d(e) { + return (e = (e = (e = e.replace(/^git\+https:/, 'https:')).replace( + /^(?:github:|https:\/\/github\.com\/)?(?!\.{1,2}\/)([a-zA-Z0-9._-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z0-9._-]+?)(?:\.git)?(#.*)?$/, + 'https://github.com/$1/$2.git$3' + )).replace( + /^https:\/\/github\.com\/(?!\.{1,2}\/)([a-zA-Z0-9._-]+)\/(?!\.{1,2}(?:#|$))([a-zA-Z0-9._-]+?)\/tarball\/(.+)?$/, + 'https://github.com/$1/$2.git#$3' + )); + } + function C(e) { + return i.structUtils.makeLocator(e, d(e.reference)); + } + async function E(e, t) { + if (!t.get('enableNetwork')) + throw new Error(`Network access has been disabled by configuration (${e})`); + let r; + try { + r = await i.execUtils.execvp('git', ['ls-remote', '--refs', d(e)], { + cwd: t.startingCwd, + env: l(), + strict: !0, + }); + } catch (t) { + throw ((t.message = `Listing the refs for ${e} failed`), t); + } + const n = new Map(), + o = /^([a-f0-9]{40})\t(refs\/[^\n]+)/gm; + let s; + for (; null !== (s = o.exec(r.stdout)); ) n.set(s[2], s[1]); + return n; + } + async function I(e, t) { + const { + repo: r, + treeish: { protocol: n, request: i }, + extra: o, + } = p(e), + s = await E(r, t), + A = (e, t) => { + switch (e) { + case g.Commit: + if (!t.match(/^[a-f0-9]{40}$/)) throw new Error('Invalid commit hash'); + return a().stringify({ ...o, commit: t }); + case g.Head: { + const e = s.get('refs/heads/' + t); + if (void 0 === e) throw new Error(`Unknown head ("${t}")`); + return a().stringify({ ...o, commit: e }); + } + case g.Tag: { + const e = s.get('refs/tags/' + t); + if (void 0 === e) throw new Error(`Unknown tag ("${t}")`); + return a().stringify({ ...o, commit: e }); + } + case g.Semver: { + if (!u().validRange(t)) throw new Error(`Invalid range ("${t}")`); + const e = new Map( + [...s.entries()] + .filter(([e]) => e.startsWith('refs/tags/')) + .map(([e, t]) => [u().parse(e.slice(10)), t]) + .filter((e) => null !== e[0]) + ), + r = u().maxSatisfying([...e.keys()], t); + if (null === r) throw new Error(`No matching range ("${t}")`); + return a().stringify({ ...o, commit: e.get(r) }); + } + case null: { + let e; + if (null !== (e = c(g.Commit, t))) return e; + if (null !== (e = c(g.Tag, t))) return e; + if (null !== (e = c(g.Head, t))) return e; + throw t.match(/^[a-f0-9]+$/) + ? new Error( + `Couldn't resolve "${t}" as either a commit, a tag, or a head - if a commit, use the 40-characters commit hash` + ) + : new Error(`Couldn't resolve "${t}" as either a commit, a tag, or a head`); + } + default: + throw new Error(`Invalid Git resolution protocol ("${e}")`); + } + }, + c = (e, t) => { + try { + return A(e, t); + } catch (e) { + return null; + } + }; + return `${r}#${A(n, i)}`; + } + async function m(e, t) { + if (!t.get('enableNetwork')) + throw new Error(`Network access has been disabled by configuration (${e})`); + const { + repo: r, + treeish: { protocol: n, request: A }, + } = p(e); + if ('commit' !== n) throw new Error('Invalid treeish protocol when cloning'); + const a = await s.xfs.mktempPromise(), + c = { cwd: a, env: l(), strict: !0 }; + try { + await i.execUtils.execvp( + 'git', + ['clone', '-c core.autocrlf=false', '' + d(r), o.cS.fromPortablePath(a)], + c + ), + await i.execUtils.execvp('git', ['checkout', '' + A], c); + } catch (e) { + throw ((e.message = 'Repository clone failed: ' + e.message), e); + } + return a; + } + !(function (e) { + (e.Commit = 'commit'), (e.Head = 'head'), (e.Tag = 'tag'), (e.Semver = 'semver'); + })(g || (g = {})); + var y = r(32485), + w = r(46611); + const B = { + fetchers: [ + class { + supports(e, t) { + return f(e.reference); + } + getLocalPath(e, t) { + return null; + } + async fetch(e, t) { + const r = t.checksums.get(e.locatorHash) || null, + n = C(e), + o = new Map(t.checksums); + o.set(n.locatorHash, r); + const s = { ...t, checksums: o }, + A = await this.downloadHosted(n, s); + if (null !== A) return A; + const [a, c, u] = await t.cache.fetchPackageFromCache(e, r, { + onHit: () => t.report.reportCacheHit(e), + onMiss: () => + t.report.reportCacheMiss( + e, + i.structUtils.prettyLocator(t.project.configuration, e) + + " can't be found in the cache and will be fetched from the remote repository" + ), + loader: () => this.cloneFromRemote(n, s), + skipIntegrityCheck: t.skipIntegrityCheck, + }); + return { + packageFs: a, + releaseFs: c, + prefixPath: i.structUtils.getIdentVendorPath(e), + checksum: u, + }; + } + async downloadHosted(e, t) { + return t.project.configuration.reduceHook( + (e) => e.fetchHostedRepository, + null, + e, + t + ); + } + async cloneFromRemote(e, t) { + const r = await m(e.reference, t.project.configuration), + n = p(e.reference), + A = o.y1.join(r, 'package.tgz'); + await i.scriptUtils.prepareExternalProject(r, A, { + configuration: t.project.configuration, + report: t.report, + workspace: n.extra.workspace, + }); + const a = await s.xfs.readFilePromise(A); + return await i.miscUtils.releaseAfterUseAsync( + async () => + await i.tgzUtils.convertToZip(a, { + compressionLevel: t.project.configuration.get('compressionLevel'), + prefixPath: i.structUtils.getIdentVendorPath(e), + stripComponents: 1, + }) + ); + } + }, + ], + resolvers: [ + class { + supportsDescriptor(e, t) { + return f(e.range); + } + supportsLocator(e, t) { + return f(e.reference); + } + shouldPersistResolution(e, t) { + return !0; + } + bindDescriptor(e, t, r) { + return e; + } + getResolutionDependencies(e, t) { + return []; + } + async getCandidates(e, t, r) { + const n = await I(e.range, r.project.configuration); + return [i.structUtils.makeLocator(e, n)]; + } + async resolve(e, t) { + if (!t.fetchOptions) + throw new Error( + 'Assertion failed: This resolver cannot be used unless a fetcher is configured' + ); + const r = await t.fetchOptions.fetcher.fetch(e, t.fetchOptions), + n = await i.miscUtils.releaseAfterUseAsync( + async () => await w.G.find(r.prefixPath, { baseFs: r.packageFs }), + r.releaseFs + ); + return { + ...e, + version: n.version || '0.0.0', + languageName: t.project.configuration.get('defaultLanguageName'), + linkType: y.U.HARD, + dependencies: n.dependencies, + peerDependencies: n.peerDependencies, + dependenciesMeta: n.dependenciesMeta, + peerDependenciesMeta: n.peerDependenciesMeta, + bin: n.bin, + }; + } + }, + ], + }; + }, + 23599: (e, t, r) => { + 'use strict'; + r.r(t), r.d(t, { default: () => h }); + var n = r(84132), + i = r(56537), + o = r(75448), + s = r(46009), + A = r(10284), + a = r(71191), + c = r.n(a); + const u = [ + /^https?:\/\/(?:([^/]+?)@)?github.com\/([^/#]+)\/([^/#]+)\/tarball\/([^/#]+)(?:#(.*))?$/, + /^https?:\/\/(?:([^/]+?)@)?github.com\/([^/#]+)\/([^/#]+?)(?:\.git)?(?:#(.*))?$/, + ]; + class l { + supports(e, t) { + return !(!(r = e.reference) || !u.some((e) => !!r.match(e))); + var r; + } + getLocalPath(e, t) { + return null; + } + async fetch(e, t) { + const r = t.checksums.get(e.locatorHash) || null, + [i, o, s] = await t.cache.fetchPackageFromCache(e, r, { + onHit: () => t.report.reportCacheHit(e), + onMiss: () => + t.report.reportCacheMiss( + e, + n.structUtils.prettyLocator(t.project.configuration, e) + + " can't be found in the cache and will be fetched from GitHub" + ), + loader: () => this.fetchFromNetwork(e, t), + skipIntegrityCheck: t.skipIntegrityCheck, + }); + return { + packageFs: i, + releaseFs: o, + prefixPath: n.structUtils.getIdentVendorPath(e), + checksum: s, + }; + } + async fetchFromNetwork(e, t) { + const r = await n.httpUtils.get(this.getLocatorUrl(e, t), { + configuration: t.project.configuration, + }); + return await i.xfs.mktempPromise(async (a) => { + const c = new o.M(a); + await n.tgzUtils.extractArchiveTo(r, c, { stripComponents: 1 }); + const u = A.gitUtils.splitRepoUrl(e.reference), + l = s.y1.join(a, 'package.tgz'); + await n.scriptUtils.prepareExternalProject(a, l, { + configuration: t.project.configuration, + report: t.report, + workspace: u.extra.workspace, + }); + const h = await i.xfs.readFilePromise(l); + return await n.tgzUtils.convertToZip(h, { + compressionLevel: t.project.configuration.get('compressionLevel'), + prefixPath: n.structUtils.getIdentVendorPath(e), + stripComponents: 1, + }); + }); + } + getLocatorUrl(e, t) { + const { auth: r, username: n, reponame: i, treeish: o } = (function (e) { + let t; + for (const r of u) if (((t = e.match(r)), t)) break; + if (!t) throw new Error(`Input cannot be parsed as a valid GitHub URL ('${e}').`); + let [, r, n, i, o = 'master'] = t; + const { commit: s } = c().parse(o); + return ( + (o = s || o.replace(/[^:]*:/, '')), + { auth: r, username: n, reponame: i, treeish: o } + ); + })(e.reference); + return `https://${r ? r + '@' : ''}github.com/${n}/${i}/archive/${o}.tar.gz`; + } + } + const h = { + hooks: { + async fetchHostedRepository(e, t, r) { + if (null !== e) return e; + const n = new l(); + if (!n.supports(t, r)) return null; + try { + return await n.fetch(t, r); + } catch (e) { + return null; + } + }, + }, + }; + }, + 21754: (e, t, r) => { + 'use strict'; + r.r(t), r.d(t, { default: () => a }); + var n = r(84132); + const i = /^[^?]*\.(?:tar\.gz|tgz)(?:\?.*)?$/, + o = /^https?:/; + var s = r(46611), + A = r(32485); + const a = { + fetchers: [ + class { + supports(e, t) { + return !!i.test(e.reference) && !!o.test(e.reference); + } + getLocalPath(e, t) { + return null; + } + async fetch(e, t) { + const r = t.checksums.get(e.locatorHash) || null, + [i, o, s] = await t.cache.fetchPackageFromCache(e, r, { + onHit: () => t.report.reportCacheHit(e), + onMiss: () => + t.report.reportCacheMiss( + e, + n.structUtils.prettyLocator(t.project.configuration, e) + + " can't be found in the cache and will be fetched from the remote server" + ), + loader: () => this.fetchFromNetwork(e, t), + skipIntegrityCheck: t.skipIntegrityCheck, + }); + return { + packageFs: i, + releaseFs: o, + prefixPath: n.structUtils.getIdentVendorPath(e), + checksum: s, + }; + } + async fetchFromNetwork(e, t) { + const r = await n.httpUtils.get(e.reference, { + configuration: t.project.configuration, + }); + return await n.tgzUtils.convertToZip(r, { + compressionLevel: t.project.configuration.get('compressionLevel'), + prefixPath: n.structUtils.getIdentVendorPath(e), + stripComponents: 1, + }); + } + }, + ], + resolvers: [ + class { + supportsDescriptor(e, t) { + return !!i.test(e.range) && !!o.test(e.range); + } + supportsLocator(e, t) { + return !!i.test(e.reference) && !!o.test(e.reference); + } + shouldPersistResolution(e, t) { + return !0; + } + bindDescriptor(e, t, r) { + return e; + } + getResolutionDependencies(e, t) { + return []; + } + async getCandidates(e, t, r) { + return [n.structUtils.convertDescriptorToLocator(e)]; + } + async resolve(e, t) { + if (!t.fetchOptions) + throw new Error( + 'Assertion failed: This resolver cannot be used unless a fetcher is configured' + ); + const r = await t.fetchOptions.fetcher.fetch(e, t.fetchOptions), + i = await n.miscUtils.releaseAfterUseAsync( + async () => await s.G.find(r.prefixPath, { baseFs: r.packageFs }), + r.releaseFs + ); + return { + ...e, + version: i.version || '0.0.0', + languageName: t.project.configuration.get('defaultLanguageName'), + linkType: A.U.HARD, + dependencies: i.dependencies, + peerDependencies: i.peerDependencies, + dependenciesMeta: i.dependenciesMeta, + peerDependenciesMeta: i.peerDependenciesMeta, + bin: i.bin, + }; + } + }, + ], + }; + }, + 74230: (e, t, r) => { + 'use strict'; + r.r(t), r.d(t, { default: () => p }); + var n = r(27122), + i = r(36370), + o = r(95397), + s = r(46611), + A = r(40376), + a = r(84132), + c = r(56537), + u = r(46009), + l = r(17278), + h = r(7564), + g = r(31669); + class f extends o.BaseCommand { + constructor() { + super(...arguments), + (this.usev2 = !1), + (this.assumeFreshProject = !1), + (this.yes = !1), + (this.private = !1), + (this.workspace = !1), + (this.install = !1); + } + async execute() { + if (c.xfs.existsSync(u.y1.join(this.context.cwd, s.G.fileName))) + throw new l.UsageError('A package.json already exists in the specified directory'); + const e = await n.VK.find(this.context.cwd, this.context.plugins), + t = this.install ? (!0 === this.install ? 'latest' : this.install) : null; + return null !== t ? await this.executeProxy(e, t) : await this.executeRegular(e); + } + async executeProxy(e, t) { + if (null !== e.get('yarnPath')) + throw new l.UsageError( + `Cannot use the --install flag when the current directory already uses yarnPath (from ${e.sources.get( + 'yarnPath' + )})` + ); + if (null !== e.projectCwd) + throw new l.UsageError( + 'Cannot use the --install flag when the current directory is already part of a project' + ); + c.xfs.existsSync(this.context.cwd) || (await c.xfs.mkdirpPromise(this.context.cwd)); + const r = u.y1.join(this.context.cwd, e.get('lockfileFilename')); + c.xfs.existsSync(r) || (await c.xfs.writeFilePromise(r, '')); + const n = await this.cli.run(['set', 'version', t]); + if (0 !== n) return n; + this.context.stdout.write('\n'); + const i = ['--assume-fresh-project']; + return ( + this.private && i.push('-p'), + this.workspace && i.push('-w'), + this.yes && i.push('-y'), + await c.xfs.mktempPromise(async (e) => { + const { code: t } = await a.execUtils.pipevp('yarn', ['init', ...i], { + cwd: this.context.cwd, + stdin: this.context.stdin, + stdout: this.context.stdout, + stderr: this.context.stderr, + env: await a.scriptUtils.makeScriptEnv({ binFolder: e }), + }); + return t; + }) + ); + } + async executeRegular(e) { + let t = null; + if (!this.assumeFreshProject) + try { + t = await A.I.find(e, this.context.cwd); + } catch (e) { + t = null; + } + c.xfs.existsSync(this.context.cwd) || (await c.xfs.mkdirpPromise(this.context.cwd)); + const r = new s.G(), + n = Object.fromEntries(e.get('initFields').entries()); + r.load(n), + (r.name = a.structUtils.makeIdent( + e.get('initScope'), + u.y1.basename(this.context.cwd) + )), + (r.version = e.get('initVersion')), + (r.private = this.private || this.workspace), + (r.license = e.get('initLicense')), + this.workspace && + (await c.xfs.mkdirpPromise(u.y1.join(this.context.cwd, 'packages')), + (r.workspaceDefinitions = [{ pattern: 'packages/*' }])); + const i = {}; + r.exportTo(i), + (g.inspect.styles.name = 'cyan'), + this.context.stdout.write( + (0, g.inspect)(i, { depth: 1 / 0, colors: !0, compact: !1 }) + '\n' + ); + const o = u.y1.join(this.context.cwd, s.G.fileName); + await c.xfs.changeFilePromise(o, JSON.stringify(i, null, 2) + '\n'); + const l = u.y1.join(this.context.cwd, 'README.md'); + if ( + (c.xfs.existsSync(l) || + (await c.xfs.writeFilePromise(l, `# ${a.structUtils.stringifyIdent(r.name)}\n`)), + !t) + ) { + const t = u.y1.join(this.context.cwd, u.QS.lockfile); + await c.xfs.writeFilePromise(t, ''); + const r = ['/.yarn/** linguist-vendored'].map((e) => e + '\n').join(''), + n = u.y1.join(this.context.cwd, '.gitattributes'); + c.xfs.existsSync(n) || (await c.xfs.writeFilePromise(n, r)); + const i = [ + '/.yarn/*', + '!/.yarn/releases', + '!/.yarn/plugins', + '!/.yarn/sdks', + '', + "# Swap the comments on the following lines if you don't wish to use zero-installs", + '# Documentation here: https://yarnpkg.com/features/zero-installs', + '!/.yarn/cache', + '#/.pnp.*', + ] + .map((e) => e + '\n') + .join(''), + o = u.y1.join(this.context.cwd, '.gitignore'); + c.xfs.existsSync(o) || (await c.xfs.writeFilePromise(o, i)); + const s = { + '*': { endOfLine: 'lf', insertFinalNewline: !0 }, + '*.{js,json,.yml}': { charset: 'utf-8', indentStyle: 'space', indentSize: 2 }, + }; + (0, h.merge)(s, e.get('initEditorConfig')); + let A = 'root = true\n'; + for (const [e, t] of Object.entries(s)) { + A += `\n[${e}]\n`; + for (const [e, r] of Object.entries(t)) { + A += `${e.replace(/[A-Z]/g, (e) => '_' + e.toLowerCase())} = ${r}\n`; + } + } + const l = u.y1.join(this.context.cwd, '.editorconfig'); + c.xfs.existsSync(l) || (await c.xfs.writeFilePromise(l, A)), + await a.execUtils.execvp('git', ['init'], { cwd: this.context.cwd }); + } + } + } + (f.usage = l.Command.Usage({ + description: 'create a new package', + details: + '\n This command will setup a new package in your local directory.\n\n If the `-p,--private` or `-w,--workspace` options are set, the package will be private by default.\n\n If the `-w,--workspace` option is set, the package will be configured to accept a set of workspaces in the `packages/` directory.\n\n If the `-i,--install` option is given a value, Yarn will first download it using `yarn set version` and only then forward the init call to the newly downloaded bundle. Without arguments, the downloaded bundle will be `latest`.\n\n The initial settings of the manifest can be changed by using the `initScope` and `initFields` configuration values. Additionally, Yarn will generate an EditorConfig file whose rules can be altered via `initEditorConfig`, and will initialize a Git repository in the current directory.\n ', + examples: [ + ['Create a new package in the local directory', 'yarn init'], + ['Create a new private package in the local directory', 'yarn init -p'], + ['Create a new package and store the Yarn release inside', 'yarn init -i latest'], + ['Create a new private package and defines it as a workspace root', 'yarn init -w'], + ], + })), + (0, i.gn)([l.Command.Boolean('-2', { hidden: !0 })], f.prototype, 'usev2', void 0), + (0, i.gn)( + [l.Command.Boolean('--assume-fresh-project', { hidden: !0 })], + f.prototype, + 'assumeFreshProject', + void 0 + ), + (0, i.gn)([l.Command.Boolean('-y,--yes', { hidden: !0 })], f.prototype, 'yes', void 0), + (0, i.gn)([l.Command.Boolean('-p,--private')], f.prototype, 'private', void 0), + (0, i.gn)([l.Command.Boolean('-w,--workspace')], f.prototype, 'workspace', void 0), + (0, i.gn)( + [l.Command.String('-i,--install', { tolerateBoolean: !0 })], + f.prototype, + 'install', + void 0 + ), + (0, i.gn)([l.Command.Path('init')], f.prototype, 'execute', null); + const p = { + configuration: { + initLicense: { + description: 'License used when creating packages via the init command', + type: n.a2.STRING, + default: null, + }, + initScope: { + description: 'Scope used when creating packages via the init command', + type: n.a2.STRING, + default: null, + }, + initVersion: { + description: 'Version used when creating packages via the init command', + type: n.a2.STRING, + default: null, + }, + initFields: { + description: 'Additional fields to set when creating packages via the init command', + type: n.a2.MAP, + valueDefinition: { description: '', type: n.a2.ANY }, + }, + initEditorConfig: { + description: 'Extra rules to define in the generator editorconfig', + type: n.a2.MAP, + valueDefinition: { description: '', type: n.a2.ANY }, + }, + }, + commands: [f], + }; + }, + 86161: (e, t, r) => { + 'use strict'; + r.r(t), r.d(t, { default: () => c }); + var n = r(84132), + i = r(46009), + o = r(75448), + s = r(10489); + var A = r(46611), + a = r(32485); + const c = { + fetchers: [ + class { + supports(e, t) { + return !!e.reference.startsWith('link:'); + } + getLocalPath(e, t) { + const { parentLocator: r, path: o } = n.structUtils.parseFileStyleRange( + e.reference, + { protocol: 'link:' } + ); + if (i.y1.isAbsolute(o)) return o; + const s = t.fetcher.getLocalPath(r, t); + return null === s ? null : i.y1.resolve(s, o); + } + async fetch(e, t) { + const { parentLocator: r, path: A } = n.structUtils.parseFileStyleRange( + e.reference, + { protocol: 'link:' } + ), + a = i.y1.isAbsolute(A) + ? { packageFs: new o.M(i.LZ.root), prefixPath: i.LZ.dot, localPath: i.LZ.root } + : await t.fetcher.fetch(r, t), + c = a.localPath + ? { + packageFs: new o.M(i.LZ.root), + prefixPath: i.y1.relative(i.LZ.root, a.localPath), + } + : a; + a !== c && a.releaseFs && a.releaseFs(); + const u = c.packageFs, + l = i.y1.join(c.prefixPath, A); + return a.localPath + ? { + packageFs: new o.M(l, { baseFs: u }), + releaseFs: c.releaseFs, + prefixPath: i.LZ.dot, + discardFromLookup: !0, + localPath: l, + } + : { + packageFs: new s.n(l, { baseFs: u }), + releaseFs: c.releaseFs, + prefixPath: i.LZ.dot, + discardFromLookup: !0, + }; + } + }, + class { + supports(e, t) { + return !!e.reference.startsWith('portal:'); + } + getLocalPath(e, t) { + const { parentLocator: r, path: o } = n.structUtils.parseFileStyleRange( + e.reference, + { protocol: 'portal:' } + ); + if (i.y1.isAbsolute(o)) return o; + const s = t.fetcher.getLocalPath(r, t); + return null === s ? null : i.y1.resolve(s, o); + } + async fetch(e, t) { + const { parentLocator: r, path: A } = n.structUtils.parseFileStyleRange( + e.reference, + { protocol: 'portal:' } + ), + a = i.y1.isAbsolute(A) + ? { packageFs: new o.M(i.LZ.root), prefixPath: i.LZ.dot, localPath: i.LZ.root } + : await t.fetcher.fetch(r, t), + c = a.localPath + ? { + packageFs: new o.M(i.LZ.root), + prefixPath: i.y1.relative(i.LZ.root, a.localPath), + } + : a; + a !== c && a.releaseFs && a.releaseFs(); + const u = c.packageFs, + l = i.y1.join(c.prefixPath, A); + return a.localPath + ? { + packageFs: new o.M(l, { baseFs: u }), + releaseFs: c.releaseFs, + prefixPath: i.LZ.dot, + localPath: l, + } + : { + packageFs: new s.n(l, { baseFs: u }), + releaseFs: c.releaseFs, + prefixPath: i.LZ.dot, + }; + } + }, + ], + resolvers: [ + class { + supportsDescriptor(e, t) { + return !!e.range.startsWith('link:'); + } + supportsLocator(e, t) { + return !!e.reference.startsWith('link:'); + } + shouldPersistResolution(e, t) { + return !1; + } + bindDescriptor(e, t, r) { + return n.structUtils.bindDescriptor(e, { + locator: n.structUtils.stringifyLocator(t), + }); + } + getResolutionDependencies(e, t) { + return []; + } + async getCandidates(e, t, r) { + const o = e.range.slice('link:'.length); + return [n.structUtils.makeLocator(e, 'link:' + i.cS.toPortablePath(o))]; + } + async resolve(e, t) { + return { + ...e, + version: '0.0.0', + languageName: t.project.configuration.get('defaultLanguageName'), + linkType: a.U.SOFT, + dependencies: new Map(), + peerDependencies: new Map(), + dependenciesMeta: new Map(), + peerDependenciesMeta: new Map(), + bin: new Map(), + }; + } + }, + class { + supportsDescriptor(e, t) { + return !!e.range.startsWith('portal:'); + } + supportsLocator(e, t) { + return !!e.reference.startsWith('portal:'); + } + shouldPersistResolution(e, t) { + return !1; + } + bindDescriptor(e, t, r) { + return n.structUtils.bindDescriptor(e, { + locator: n.structUtils.stringifyLocator(t), + }); + } + getResolutionDependencies(e, t) { + return []; + } + async getCandidates(e, t, r) { + const o = e.range.slice('portal:'.length); + return [n.structUtils.makeLocator(e, 'portal:' + i.cS.toPortablePath(o))]; + } + async resolve(e, t) { + if (!t.fetchOptions) + throw new Error( + 'Assertion failed: This resolver cannot be used unless a fetcher is configured' + ); + const r = await t.fetchOptions.fetcher.fetch(e, t.fetchOptions), + i = await n.miscUtils.releaseAfterUseAsync( + async () => await A.G.find(r.prefixPath, { baseFs: r.packageFs }), + r.releaseFs + ); + return { + ...e, + version: i.version || '0.0.0', + languageName: t.project.configuration.get('defaultLanguageName'), + linkType: a.U.SOFT, + dependencies: new Map([...i.dependencies, ...i.devDependencies]), + peerDependencies: i.peerDependencies, + dependenciesMeta: i.dependenciesMeta, + peerDependenciesMeta: i.peerDependenciesMeta, + bin: i.bin, + }; + } + }, + ], + }; + }, + 8149: (e, t, r) => { + 'use strict'; + r.r(t), r.d(t, { getPnpPath: () => ee, default: () => te }); + var n = r(46009), + i = r(92659), + o = r(32485), + s = r(92409), + A = r(84132), + a = r(46611), + c = r(35691), + u = r(17674), + l = r(53660), + h = r(56537), + g = r(29486), + f = r(55125), + p = r(5780); + const d = (e, t) => `${e}@${t}`, + C = (e, t) => { + const r = t.indexOf('#'), + n = r >= 0 ? t.substring(r + 1) : t; + return d(e, n); + }, + E = (e, t = {}) => { + const r = t.debugLevel || Number(process.env.NM_DEBUG_LEVEL || -1), + n = { check: t.check || r >= 9, debugLevel: r }; + n.debugLevel >= 0 && console.time('hoist'); + const i = Q(e); + if ( + (m(i, i, new Set([i.locator]), n), + n.debugLevel >= 0 && console.timeEnd('hoist'), + n.debugLevel >= 1) + ) { + const e = B(i); + if (e) throw new Error(`${e}, after hoisting finished:\n${k(i)}`); + } + return n.debugLevel >= 2 && console.log(k(i)), D(i); + }, + I = (e, t) => { + if (t.decoupled) return t; + const { + name: r, + references: n, + ident: i, + locator: o, + dependencies: s, + originalDependencies: A, + hoistedDependencies: a, + peerNames: c, + reasons: u, + } = t, + l = { + name: r, + references: new Set(n), + ident: i, + locator: o, + dependencies: new Map(s), + originalDependencies: new Map(A), + hoistedDependencies: new Map(a), + peerNames: new Set(c), + reasons: new Map(u), + decoupled: !0, + }, + h = l.dependencies.get(r); + return ( + h && h.ident == l.ident && l.dependencies.set(r, l), e.dependencies.set(l.name, l), l + ); + }, + m = (e, t, r, n, i = new Set()) => { + if (i.has(t)) return; + i.add(t); + const o = ((e, t) => { + const r = new Map([[e.name, [e.ident]]]); + for (const t of e.dependencies.values()) + e.peerNames.has(t.name) || r.set(t.name, [t.ident]); + const n = Array.from(t.keys()); + n.sort((e, r) => t.get(r).size - t.get(e).size); + for (const t of n) { + const n = t.substring(0, t.indexOf('@', 1)), + i = t.substring(n.length + 1); + if (!e.peerNames.has(n)) { + let e = r.get(n); + e || ((e = []), r.set(n, e)), e.indexOf(i) < 0 && e.push(i); + } + } + return r; + })(t, b(t)), + s = new Set(Array.from(o.values()).map((e) => e[0])), + A = + t === e + ? new Map() + : ((e) => { + const t = new Map(), + r = new Set(), + n = (i) => { + if (!r.has(i)) { + r.add(i); + for (const r of i.hoistedDependencies.values()) + e.dependencies.has(r.name) || t.set(r.name, r); + for (const e of i.dependencies.values()) + i.peerNames.has(e.name) || n(e); + } + }; + return n(e), t; + })(t); + let a; + do { + w(e, t, r, A, s, o, n), (a = !1); + for (const [e, r] of o) + r.length > 1 && + !t.dependencies.has(e) && + (s.delete(r[0]), r.shift(), s.add(r[0]), (a = !0)); + } while (a); + for (const i of t.dependencies.values()) + t.peerNames.has(i.name) || + r.has(i.locator) || + (r.add(i.locator), m(e, i, r, n), r.delete(i.locator)); + }, + y = (e) => { + const t = new Set(), + r = (n, i = new Set()) => { + if (!i.has(n)) { + i.add(n); + for (const o of n.peerNames) + if (!e.peerNames.has(o)) { + const n = e.dependencies.get(o); + n && !t.has(n) && r(n, i); + } + t.add(n); + } + }; + for (const t of e.dependencies.values()) e.peerNames.has(t.name) || r(t); + return t; + }, + w = (e, t, r, n, i, o, s) => { + const A = new Set(), + a = (c, u, l, h) => { + if (A.has(l)) return; + let g, f; + s.debugLevel >= 2 && + (g = + '' + + Array.from(r) + .map((e) => S(e)) + .join('→')); + let p = i.has(l.ident); + if ( + (s.debugLevel >= 2 && !p && (f = `- filled by: ${S(o.get(l.name)[0])} at ${g}`), + p) + ) { + let e = !0; + const t = new Set(l.peerNames); + for (let r = c.length - 1; r >= 1; r--) { + const n = c[r]; + for (const r of t) { + if (n.peerNames.has(r) && n.originalDependencies.has(r)) continue; + const i = n.dependencies.get(r); + if (i) { + s.debugLevel >= 2 && + (f = `- peer dependency ${S(i.locator)} from parent ${S( + n.locator + )} was not hoisted to ${g}`), + (e = !1); + break; + } + t.delete(r); + } + if (!e) break; + } + p = e; + } + if (p) { + let e = !1; + const t = n.get(l.name); + if ( + ((e = !t || t.ident === l.ident), + s.debugLevel >= 2 && !e && (f = `- filled by: ${S(t.locator)} at ${g}`), + e) + ) + for (let t = 1; t < c.length - 1; t++) { + const r = c[t], + n = r.dependencies.get(l.name); + if (n && n.ident !== l.ident) { + (e = !1), + s.debugLevel >= 2 && + (f = `- filled by: ${S(n.locator)} at ${S(r.locator)}`); + break; + } + } + p = e; + } + if (p) { + const r = c[c.length - 1]; + r.dependencies.delete(l.name), + r.hoistedDependencies.set(l.name, l), + r.reasons.delete(l.name); + const n = t.dependencies.get(l.name); + if (n) for (const e of l.references) n.references.add(e); + else t.ident !== l.ident && (t.dependencies.set(l.name, l), h.add(l)); + if (s.check) { + const r = B(e); + if (r) + throw new Error( + `${r}, after hoisting ${[t, ...c, l] + .map((e) => S(e.locator)) + .join('→')}:\n${k(e)}` + ); + } + } else if (s.debugLevel >= 2) { + c[c.length - 1].reasons.set(l.name, f); + } + if (!p && u.indexOf(l.locator) < 0) { + const e = I(c[c.length - 1], l); + A.add(e); + for (const t of y(l)) a([...c, e], [...u, l.locator], t, h); + A.delete(e); + } + }; + let c, + u = new Set(t.dependencies.values()); + do { + (c = u), (u = new Set()); + for (const e of c) { + if (t.peerNames.has(e.name) || e.locator === t.locator) continue; + const r = I(t, e); + A.add(r); + for (const n of y(e)) + n.locator !== e.locator && a([t, r], [t.locator, e.locator], n, u); + A.delete(r); + } + } while (u.size > 0); + }, + B = (e) => { + const t = [], + r = new Set(), + n = new Set(), + i = (e, o) => { + if (r.has(e)) return; + if ((r.add(e), n.has(e))) return; + const s = new Map(o); + for (const t of e.dependencies.values()) + e.peerNames.has(t.name) || s.set(t.name, t); + for (const r of e.originalDependencies.values()) { + const i = s.get(r.name), + A = () => + '' + + Array.from(n) + .concat([e]) + .map((e) => S(e.locator)) + .join('→'); + if (e.peerNames.has(r.name)) { + const e = o.get(r.name); + e !== i && + t.push( + `${A()} - broken peer promise: expected ${i.locator} but found ${ + e ? e.locator : e + }` + ); + } else + i + ? i.ident !== r.ident && + t.push( + `${A()} - broken require promise for ${r.name}: expected ${ + r.ident + }, but found: ${i.ident}` + ) + : t.push( + `${A()} - broken require promise: no required dependency ${ + r.locator + } found` + ); + } + n.add(e); + for (const t of e.dependencies.values()) e.peerNames.has(t.name) || i(t, s); + n.delete(e); + }; + return i(e, e.dependencies), t.join('\n'); + }, + Q = (e) => { + const { identName: t, name: r, reference: n, peerNames: i } = e, + o = { + name: r, + references: new Set([n]), + locator: d(t, n), + ident: C(t, n), + dependencies: new Map(), + originalDependencies: new Map(), + hoistedDependencies: new Map(), + peerNames: new Set(i), + reasons: new Map(), + decoupled: !0, + }, + s = new Map([[e, o]]), + A = (e, t) => { + let r = s.get(e); + const n = !!r; + if (!r) { + const { name: t, identName: n, reference: i, peerNames: o } = e; + (r = { + name: t, + references: new Set([i]), + locator: d(n, i), + ident: C(n, i), + dependencies: new Map(), + originalDependencies: new Map(), + hoistedDependencies: new Map(), + peerNames: new Set(o), + reasons: new Map(), + decoupled: !0, + }), + s.set(e, r); + } + if ((t.dependencies.set(e.name, r), t.originalDependencies.set(e.name, r), n)) { + const e = new Set(), + t = (r) => { + if (!e.has(r)) { + e.add(r), (r.decoupled = !1); + for (const e of r.dependencies.values()) r.peerNames.has(e.name) || t(e); + } + }; + t(r); + } else for (const t of e.dependencies) A(t, r); + }; + for (const t of e.dependencies) A(t, o); + return o; + }, + v = (e) => e.substring(0, e.indexOf('@', 1)), + D = (e) => { + const t = { + name: e.name, + identName: v(e.locator), + references: new Set(e.references), + dependencies: new Set(), + }, + r = new Set([e]), + n = (e, t, i) => { + const o = r.has(e); + let s; + if (t === e) s = i; + else { + const { name: t, references: r, locator: n } = e; + s = { name: t, identName: v(n), references: r, dependencies: new Set() }; + } + if ((i.dependencies.add(s), !o)) { + r.add(e); + for (const t of e.dependencies.values()) e.peerNames.has(t.name) || n(t, e, s); + r.delete(e); + } + }; + for (const r of e.dependencies.values()) n(r, e, t); + return t; + }, + b = (e) => { + const t = new Map(), + r = new Set([e]), + n = (e, i) => { + const o = !!r.has(i), + s = ((e) => `${e.name}@${e.ident}`)(i); + let A = t.get(s); + if ((A || ((A = new Set()), t.set(s, A)), A.add(e.ident), !o)) { + r.add(i); + for (const e of i.dependencies.values()) i.peerNames.has(e.name) || n(i, e); + } + }; + for (const t of e.dependencies.values()) e.peerNames.has(t.name) || n(e, t); + return t; + }, + S = (e) => { + const t = e.indexOf('@', 1), + r = e.substring(0, t), + n = e.substring(t + 1); + if ('workspace:.' === n) return '.'; + if (n) { + const e = (n.indexOf('#') > 0 ? n.split('#')[1] : n).replace('npm:', ''); + return n.startsWith('virtual') ? `v:${r}@${e}` : `${r}@${e}`; + } + return '' + r; + }, + k = (e) => { + let t = 0; + const r = (e, n, i = '') => { + if (t > 5e4 || n.has(e)) return ''; + t++; + const o = Array.from(e.dependencies.values()); + let s = ''; + n.add(e); + for (let t = 0; t < o.length; t++) { + const A = o[t]; + if (!e.peerNames.has(A.name)) { + const a = e.reasons.get(A.name), + c = v(A.locator); + (s += `${i}${t < o.length - 1 ? '├─' : '└─'}${ + (n.has(A) ? '>' : '') + + (c !== A.name ? `a:${A.name}:` : '') + + S(A.locator) + + (a ? ' ' + a : '') + }\n`), + (s += r(A, n, `${i}${t < o.length - 1 ? '│ ' : ' '}`)); + } + } + return n.delete(e), s; + }; + return ( + r(e, new Set()) + + (t > 5e4 ? '\nTree is too large, part of the tree has been dunped\n' : '') + ); + }; + var x; + !(function (e) { + (e.HARD = 'HARD'), (e.SOFT = 'SOFT'); + })(x || (x = {})); + const F = (0, n.Zu)('node_modules'), + M = (e, t) => { + const r = R(e, t), + n = E(r); + return K(e, n, t); + }, + N = (e) => `${e.name}@${e.reference}`; + const R = (e, t) => { + const r = e.getDependencyTreeRoots(), + n = e.getPackageInformation(e.topLevel); + if (null === n) + throw new Error( + 'Assertion failed: Expected the top-level package to have been registered' + ); + const i = e.findPackageLocator(n.packageLocation); + if (null === i) + throw new Error( + 'Assertion failed: Expected the top-level package to have a physical locator' + ); + for (const e of r) + (e.name === i.name && e.reference === i.reference) || + n.packageDependencies.set(e.name + '$wsroot$', e.reference); + const o = { + name: i.name, + identName: i.name, + reference: i.reference, + peerNames: n.packagePeers, + dependencies: new Set(), + }, + s = new Map(), + a = (r, n, c, u, l) => { + const h = ((e, t) => `${N(t)}:${e}`)(r, c); + let g = s.get(h); + const f = !!g; + f || c.name !== i.name || c.reference !== i.reference || ((g = o), s.set(h, o)), + g || + ((g = { + name: r, + identName: c.name, + reference: c.reference, + dependencies: new Set(), + peerNames: n.packagePeers, + }), + s.set(h, g)), + u.dependencies.add(g); + const p = + t.pnpifyFs || + !(function (e) { + let t = A.structUtils.parseDescriptor(e); + return ( + A.structUtils.isVirtualDescriptor(t) && + (t = A.structUtils.devirtualizeDescriptor(t)), + t.range.startsWith('portal:') + ); + })(h); + if (!f && p) + for (const [t, r] of n.packageDependencies) + if (null !== r && !g.peerNames.has(t)) { + const i = e.getLocator(t, r), + o = e.getLocator(t.replace('$wsroot$', ''), r), + s = e.getPackageInformation(o); + if (null === s) + throw new Error( + 'Assertion failed: Expected the package to have been registered' + ); + if (i.name === c.name && i.reference === c.reference) continue; + a(t, s, i, g, n); + } + }; + return a(i.name, n, i, o, n), o; + }; + const K = (e, t, r) => { + const i = new Map(), + o = (t, i) => { + const { linkType: o, target: s } = (function (e, t, r) { + const i = t.getLocator(e.name.replace('$wsroot$', ''), e.reference), + o = t.getPackageInformation(i); + if (null === o) + throw new Error('Assertion failed: Expected the package to be registered'); + let s, A; + if (r.pnpifyFs) (A = n.cS.toPortablePath(o.packageLocation)), (s = x.SOFT); + else { + const r = + t.resolveVirtual && e.reference && e.reference.startsWith('virtual:') + ? t.resolveVirtual(o.packageLocation) + : o.packageLocation; + (A = n.cS.toPortablePath(r || o.packageLocation)), (s = o.linkType); + } + return { linkType: s, target: A }; + })(t, e, r); + return { locator: N(t), target: s, linkType: o, aliases: i }; + }, + s = (e) => { + const [t, r] = e.split('/'); + return r + ? { scope: (0, n.Zu)(t), name: (0, n.Zu)(r) } + : { scope: null, name: (0, n.Zu)(t) }; + }, + a = new Set(), + c = (e, t) => { + if (!a.has(e)) { + a.add(e); + for (const r of e.dependencies) { + if (r === e) continue; + const a = Array.from(r.references).sort(), + u = { name: r.identName, reference: a[0] }, + { name: l, scope: h } = s(r.name), + g = h ? [h, l] : [l], + f = n.y1.join(t, F), + p = n.y1.join(f, ...g), + d = o(u, a.slice(1)); + if (!r.name.endsWith('$wsroot$')) { + const e = i.get(p); + if (e) { + if (e.dirList) + throw new Error( + `Assertion failed: ${p} cannot merge dir node with leaf node` + ); + { + const t = A.structUtils.parseLocator(e.locator), + r = A.structUtils.parseLocator(d.locator); + if (e.linkType !== d.linkType) + throw new Error( + `Assertion failed: ${p} cannot merge nodes with different link types` + ); + if (t.identHash !== r.identHash) + throw new Error( + `Assertion failed: ${p} cannot merge nodes with different idents ${A.structUtils.stringifyLocator( + t + )} and ${A.structUtils.stringifyLocator(r)}` + ); + d.aliases = [ + ...d.aliases, + ...e.aliases, + A.structUtils.parseLocator(e.locator).reference, + ]; + } + } + i.set(p, d); + const t = p.split('/'), + r = t.indexOf(F); + let o = t.length - 1; + for (; r >= 0 && o > r; ) { + const e = n.cS.toPortablePath(t.slice(0, o).join(n.y1.sep)), + r = (0, n.Zu)(t[o]), + s = i.get(e); + if (s) { + if (s.dirList) { + if (s.dirList.has(r)) break; + s.dirList.add(r); + } + } else i.set(e, { dirList: new Set([r]) }); + o--; + } + } + c(r, d.linkType === x.SOFT ? d.target : p); + } + } + }, + u = o({ name: t.name, reference: Array.from(t.references)[0] }, []), + l = u.target; + return i.set(l, u), c(t, l), i; + }; + var L = r(88563), + T = r(58069), + P = r.n(T), + U = r(17278), + _ = r(35747), + O = r.n(_); + const j = 'node_modules'; + class Y extends p.AbstractPnpInstaller { + constructor() { + super(...arguments), (this.manifestCache = new Map()); + } + async getBuildScripts(e, t, r) { + return []; + } + async transformPackage(e, t, r, n, i) { + return r.packageFs; + } + async finalizeInstallWithPnp(e) { + if ('node-modules' !== this.opts.project.configuration.get('nodeLinker')) return; + const t = new u.p({ + baseFs: new l.A({ + libzip: await (0, g.getLibzipPromise)(), + maxOpenFiles: 80, + readOnlyArchives: !0, + }), + }); + let r = await G(this.opts.project); + if (null === r) { + const e = this.opts.project.configuration.get('bstatePath'); + (await h.xfs.existsPromise(e)) && (await h.xfs.unlinkPromise(e)), + (r = { locatorMap: new Map(), binSymlinks: new Map(), locationTree: new Map() }); + } + const s = (0, L.oC)(e, this.opts.project.cwd, t), + a = ((e) => { + const t = new Map(); + for (const [r, n] of e.entries()) + if (!n.dirList) { + let e = t.get(n.locator); + e || + ((e = { + target: n.target, + linkType: n.linkType, + locations: [], + aliases: n.aliases, + }), + t.set(n.locator, e)), + e.locations.push(r); + } + for (const e of t.values()) + e.locations = e.locations.sort((e, t) => { + const r = e.split(n.y1.delimiter).length, + i = t.split(n.y1.delimiter).length; + return r !== i ? i - r : t.localeCompare(e); + }); + return t; + })(M(s, { pnpifyFs: !1 })); + await (async function (e, t, { baseFs: r, project: i, report: s, loadManifest: A }) { + const a = n.y1.join(i.cwd, j), + { locationTree: u, binSymlinks: l } = (function (e, t) { + const r = new Map([...e]), + i = new Map([...t]); + for (const [t, r] of e) { + const e = n.y1.join(t, j); + if (!h.xfs.existsSync(e)) { + r.children.delete(j); + for (const t of i.keys()) null !== n.y1.contains(e, t) && i.delete(t); + } + } + return { locationTree: r, binSymlinks: i }; + })(e.locationTree, e.binSymlinks), + g = q(t, { skipPrefix: i.cwd }), + f = [], + p = async ({ srcDir: e, dstDir: t, linkType: i }) => { + const s = (async () => { + try { + i === o.U.SOFT + ? (await h.xfs.mkdirpPromise(n.y1.dirname(t)), await z(n.y1.resolve(e), t)) + : await W(t, e, { baseFs: r }); + } catch (r) { + throw ((r.message = `While persisting ${e} -> ${t} ${r.message}`), r); + } finally { + m.tick(); + } + })().then(() => f.splice(f.indexOf(s), 1)); + f.push(s), f.length > 4 && (await Promise.race(f)); + }, + d = async (e, t, r) => { + const i = (async () => { + const i = async (e, t, r) => { + try { + (r && r.innerLoop) || (await h.xfs.mkdirpPromise(t)); + const o = await h.xfs.readdirPromise(e, { withFileTypes: !0 }); + for (const s of o) { + if (!((r && r.innerLoop) || '.bin' !== s.name)) continue; + const o = n.y1.join(e, s.name), + A = n.y1.join(t, s.name); + s.isDirectory() + ? (s.name !== j || (r && r.innerLoop)) && + (await h.xfs.mkdirpPromise(A), await i(o, A, { innerLoop: !0 })) + : await h.xfs.copyFilePromise(o, A, O().constants.COPYFILE_FICLONE); + } + } catch (n) { + throw ( + ((r && r.innerLoop) || + (n.message = `While cloning ${e} -> ${t} ${n.message}`), + n) + ); + } finally { + (r && r.innerLoop) || m.tick(); + } + }; + await i(e, t, r); + })().then(() => f.splice(f.indexOf(i), 1)); + f.push(i), f.length > 4 && (await Promise.race(f)); + }, + C = async (e, t, r) => { + if (r) + for (const [i, o] of t.children) { + const t = r.children.get(i); + await C(n.y1.join(e, i), o, t); + } + else + t.children.has(j) && (await J(n.y1.join(e, j), { contentsOnly: !1 })), + await J(e, { contentsOnly: e === a }); + }; + for (const [e, t] of u) { + const r = g.get(e); + for (const [i, o] of t.children) { + if ('.' === i) continue; + const t = r ? r.children.get(i) : r; + await C(n.y1.join(e, i), o, t); + } + } + const E = async (e, t, r) => { + if (r) { + X(t.locator, r.locator) || + (await J(e, { contentsOnly: t.linkType === o.U.HARD })); + for (const [i, o] of t.children) { + const t = r.children.get(i); + await E(n.y1.join(e, i), o, t); + } + } else + t.children.has(j) && (await J(n.y1.join(e, j), { contentsOnly: !0 })), + await J(e, { contentsOnly: t.linkType === o.U.HARD }); + }; + for (const [e, t] of g) { + const r = u.get(e); + for (const [i, o] of t.children) { + if ('.' === i) continue; + const t = r ? r.children.get(i) : r; + await E(n.y1.join(e, i), o, t); + } + } + const I = []; + for (const [r, { locations: o }] of e.locatorMap.entries()) + for (const e of o) { + const { locationRoot: o, segments: s } = H(e, { skipPrefix: i.cwd }); + let A = g.get(o), + a = o; + if (A) { + for (const e of s) + if (((a = n.y1.join(a, e)), (A = A.children.get(e)), !A)) break; + if (A && !X(A.locator, r)) { + const e = t.get(A.locator), + r = e.target, + n = a, + i = e.linkType; + r !== n && I.push({ srcDir: r, dstDir: n, linkType: i }); + } + } + } + for (const [e, { locations: r }] of t.entries()) + for (const o of r) { + const { locationRoot: r, segments: s } = H(o, { skipPrefix: i.cwd }); + let A = u.get(r), + a = g.get(r), + c = r; + const l = t.get(e), + h = l.target, + f = o; + if (h === f) continue; + const p = l.linkType; + for (const e of s) a = a.children.get(e); + if (A) { + for (const e of s) + if (((c = n.y1.join(c, e)), (A = A.children.get(e)), !A)) { + I.push({ srcDir: h, dstDir: f, linkType: p }); + break; + } + } else I.push({ srcDir: h, dstDir: f, linkType: p }); + } + const m = c.yG.progressViaCounter(I.length), + y = s.reportProgress(m); + try { + const e = new Map(); + for (const t of I) + (t.linkType !== o.U.SOFT && e.has(t.srcDir)) || + (e.set(t.srcDir, t.dstDir), await p({ ...t })); + await Promise.all(f), (f.length = 0); + for (const t of I) { + const r = e.get(t.srcDir); + t.linkType !== o.U.SOFT && t.dstDir !== r && (await d(r, t.dstDir)); + } + await Promise.all(f), await h.xfs.mkdirpPromise(a); + const r = await (async function (e, t, r, { loadManifest: i }) { + const o = new Map(); + for (const [t, { locations: r }] of e) { + const e = V(t) ? null : await i(r[0]), + s = new Map(); + if (e) + for (const [t, i] of e.bin) { + const e = n.y1.join(r[0], i); + '' !== i && h.xfs.existsSync(e) && s.set(t, i); + } + o.set(t, s); + } + const s = new Map(), + A = (e, t, i) => { + const a = new Map(), + c = n.y1.contains(r, e); + if (i.locator && null !== c) { + const t = o.get(i.locator); + for (const [r, i] of t) { + const t = n.y1.join(e, n.cS.toPortablePath(i)); + a.set((0, n.Zu)(r), t); + } + for (const [t, r] of i.children) { + const i = n.y1.join(e, t), + o = A(i, i, r); + o.size > 0 && s.set(e, new Map([...(s.get(e) || new Map()), ...o])); + } + } else + for (const [r, o] of i.children) { + const i = A(n.y1.join(e, r), t, o); + for (const [e, t] of i) a.set(e, t); + } + return a; + }; + for (const [e, r] of t) { + const t = A(e, e, r); + t.size > 0 && s.set(e, new Map([...(s.get(e) || new Map()), ...t])); + } + return s; + })(t, g, i.cwd, { loadManifest: A }); + await (async function (e, t) { + for (const r of e.keys()) + if (!t.has(r)) { + const e = n.y1.join(r, j, '.bin'); + await h.xfs.removePromise(e); + } + for (const [r, i] of t) { + const t = n.y1.join(r, j, '.bin'), + o = e.get(r) || new Map(); + await h.xfs.mkdirpPromise(t); + for (const e of o.keys()) + i.has(e) || + (await h.xfs.removePromise(n.y1.join(t, e)), + 'win32' === process.platform && + (await h.xfs.removePromise(n.y1.join(t, (0, n.Zu)(e + '.cmd'))))); + for (const [e, r] of i) { + const i = o.get(e), + s = n.y1.join(t, e); + i !== r && + ('win32' === process.platform + ? await P()(n.cS.fromPortablePath(r), n.cS.fromPortablePath(s), { + createPwshFile: !1, + }) + : (await h.xfs.removePromise(s), + await z(r, s), + await h.xfs.chmodPromise(r, 493))); + } + } + })(l, r), + await (async function (e, t, r) { + let i = ''; + (i += + '# Warning: This file is automatically generated. Removing it is fine, but will\n'), + (i += '# cause your node_modules installation to become invalidated.\n'), + (i += '\n'), + (i += '__metadata:\n'), + (i += ' version: 1\n'); + const o = Array.from(t.keys()).sort(); + for (const s of o) { + const o = t.get(s); + (i += '\n'), (i += JSON.stringify(s) + ':\n'), (i += ' locations:\n'); + let A = !1; + for (const t of o.locations) { + const r = n.y1.contains(e.cwd, t); + if (null === r) + throw new Error( + `Assertion failed: Expected the path to be within the project (${t})` + ); + (i += ` - ${JSON.stringify(r)}\n`), t === e.cwd && (A = !0); + } + if (o.aliases.length > 0) { + i += ' aliases:\n'; + for (const e of o.aliases) i += ` - ${JSON.stringify(e)}\n`; + } + if (A && r.size > 0) { + i += ' bin:\n'; + for (const [t, o] of r) { + const r = n.y1.contains(e.cwd, t); + if (null === r) + throw new Error( + `Assertion failed: Expected the path to be within the project (${t})` + ); + i += ` ${JSON.stringify(r)}:\n`; + for (const [e, r] of o) { + const o = n.y1.relative(n.y1.join(t, j), r); + i += ` ${JSON.stringify(e)}: ${JSON.stringify(o)}\n`; + } + } + } + } + const s = e.cwd, + A = n.y1.join(s, j, '.yarn-state.yml'); + await h.xfs.changeFilePromise(A, i, { automaticNewlines: !0 }); + })(i, t, r); + } finally { + y.stop(); + } + })(r, a, { + baseFs: t, + project: this.opts.project, + report: this.opts.report, + loadManifest: this.cachedManifestLoad.bind(this), + }); + const f = []; + for (const [e, t] of a.entries()) { + if (V(e)) continue; + const r = A.structUtils.parseLocator(e), + a = { name: A.structUtils.stringifyIdent(r), reference: r.reference }; + if (null === s.getPackageInformation(a)) + throw new Error( + `Assertion failed: Expected the package to be registered (${A.structUtils.prettyLocator( + this.opts.project.configuration, + r + )})` + ); + const c = n.cS.toPortablePath(t.locations[0]), + u = await this.cachedManifestLoad(c), + l = await this.getSourceBuildScripts(c, u); + l.length > 0 && + !this.opts.project.configuration.get('enableScripts') && + (this.opts.report.reportWarningOnce( + i.b.DISABLED_BUILD_SCRIPTS, + A.structUtils.prettyLocator(this.opts.project.configuration, r) + + ' lists build scripts, but all build scripts have been disabled.' + ), + (l.length = 0)), + l.length > 0 && + t.linkType !== o.U.HARD && + !this.opts.project.tryWorkspaceByLocator(r) && + (this.opts.report.reportWarningOnce( + i.b.SOFT_LINK_BUILD, + A.structUtils.prettyLocator(this.opts.project.configuration, r) + + " lists build scripts, but is referenced through a soft link. Soft links don't support build scripts, so they'll be ignored." + ), + (l.length = 0)); + const h = this.opts.project.getDependencyMeta(r, u.version); + l.length > 0 && + h && + !1 === h.built && + (this.opts.report.reportInfoOnce( + i.b.BUILD_DISABLED, + A.structUtils.prettyLocator(this.opts.project.configuration, r) + + ' lists build scripts, but its build has been explicitly disabled through configuration.' + ), + (l.length = 0)), + l.length > 0 && + f.push({ + buildLocations: t.locations, + locatorHash: r.locatorHash, + buildDirective: l, + }); + } + return f; + } + async cachedManifestLoad(e) { + let t = this.manifestCache.get(e); + if (t) return t; + try { + t = await a.G.find(e); + } catch (t) { + throw ((t.message = `While loading ${e}: ${t.message}`), t); + } + return this.manifestCache.set(e, t), t; + } + async getSourceBuildScripts(e, t) { + const r = [], + { scripts: i } = t; + for (const e of ['preinstall', 'install', 'postinstall']) + i.has(e) && r.push([s.k.SCRIPT, e]); + const o = n.y1.resolve(e, (0, n.Zu)('binding.gyp')); + return ( + !i.has('install') && + h.xfs.existsSync(o) && + r.push([s.k.SHELLCODE, 'node-gyp rebuild']), + r + ); + } + } + async function G(e, { unrollAliases: t = !1 } = {}) { + const r = e.cwd, + i = n.y1.join(r, j, '.yarn-state.yml'); + if (!h.xfs.existsSync(i)) return null; + const s = (0, f.parseSyml)(await h.xfs.readFilePromise(i, 'utf8')); + if (s.__metadata.version > 1) return null; + const a = new Map(), + c = new Map(); + delete s.__metadata; + for (const [e, i] of Object.entries(s)) { + const s = i.locations.map((e) => n.y1.join(r, e)), + u = i.bin; + if (u) + for (const [e, t] of Object.entries(u)) { + const i = n.y1.join(r, n.cS.toPortablePath(e)), + o = A.miscUtils.getMapWithDefault(c, i); + for (const [e, r] of Object.entries(t)) + o.set((0, n.Zu)(e), n.cS.toPortablePath([i, j, r].join(n.y1.delimiter))); + } + if ( + (a.set(e, { + target: n.LZ.dot, + linkType: o.U.HARD, + locations: s, + aliases: i.aliases || [], + }), + t && i.aliases) + ) + for (const t of i.aliases) { + const { scope: r, name: i } = A.structUtils.parseLocator(e), + c = A.structUtils.makeLocator(A.structUtils.makeIdent(r, i), t), + u = A.structUtils.stringifyLocator(c); + a.set(u, { target: n.LZ.dot, linkType: o.U.HARD, locations: s, aliases: [] }); + } + } + return { locatorMap: a, binSymlinks: c, locationTree: q(a, { skipPrefix: e.cwd }) }; + } + const J = async (e, t) => { + if (e.split(n.y1.sep).indexOf(j) < 0) + throw new Error( + "Assertion failed: trying to remove dir that doesn't contain node_modules: " + e + ); + try { + if (!t.innerLoop) { + if ((await h.xfs.lstatPromise(e)).isSymbolicLink()) + return void (await h.xfs.unlinkPromise(e)); + } + const r = await h.xfs.readdirPromise(e, { withFileTypes: !0 }); + for (const i of r) { + const r = n.y1.join(e, (0, n.Zu)(i.name)); + i.isDirectory() + ? (i.name !== j || (t && t.innerLoop)) && + (await J(r, { innerLoop: !0, contentsOnly: !1 })) + : await h.xfs.unlinkPromise(r); + } + t.contentsOnly || (await h.xfs.rmdirPromise(e)); + } catch (e) { + if ('ENOENT' !== e.code && 'ENOTEMPTY' !== e.code) throw e; + } + }, + H = (e, { skipPrefix: t }) => { + const r = n.y1.contains(t, e); + if (null === r) + throw new Error( + `Assertion failed: Cannot process a path that isn't part of the requested prefix (${e} isn't within ${t})` + ); + const i = r.split(n.y1.sep), + o = i.indexOf(j), + s = i.slice(0, o).join(n.y1.sep); + return { locationRoot: n.y1.join(t, s), segments: i.slice(o) }; + }, + q = (e, { skipPrefix: t }) => { + const r = new Map(); + if (null === e) return r; + const i = () => ({ children: new Map(), linkType: o.U.HARD }); + for (const [s, a] of e.entries()) { + if (a.linkType === o.U.SOFT) { + if (null !== n.y1.contains(t, a.target)) { + const e = A.miscUtils.getFactoryWithDefault(r, a.target, i); + (e.locator = s), (e.linkType = a.linkType); + } + } + for (const e of a.locations) { + const { locationRoot: n, segments: o } = H(e, { skipPrefix: t }); + let c = A.miscUtils.getFactoryWithDefault(r, n, i); + for (let e = 0; e < o.length; ++e) { + const t = o[e]; + if ('.' !== t) { + const e = A.miscUtils.getFactoryWithDefault(c.children, t, i); + c.children.set(t, e), (c = e); + } + e === o.length - 1 && ((c.locator = s), (c.linkType = a.linkType)); + } + } + } + return r; + }, + z = async (e, t) => + h.xfs.symlinkPromise( + 'win32' !== process.platform ? n.y1.relative(n.y1.dirname(t), e) : e, + t, + 'win32' === process.platform ? 'junction' : void 0 + ), + W = async (e, t, { baseFs: r, innerLoop: i }) => { + await h.xfs.mkdirpPromise(e); + const o = await r.readdirPromise(t, { withFileTypes: !0 }), + s = async (e, t, i) => { + if (i.isFile()) { + const n = await r.lstatPromise(t); + await r.copyFilePromise(t, e); + const i = 511 & n.mode; + 420 !== i && (await h.xfs.chmodPromise(e, i)); + } else { + if (!i.isSymbolicLink()) + throw new Error( + `Unsupported file type (file: ${t}, mode: 0o${await h.xfs + .statSync(t) + .mode.toString(8) + .padStart(6, '0')})` + ); + { + const i = await r.readlinkPromise(t); + await z(n.y1.resolve(t, i), e); + } + } + }; + for (const A of o) { + const o = n.y1.join(t, (0, n.Zu)(A.name)), + a = n.y1.join(e, (0, n.Zu)(A.name)); + A.isDirectory() + ? (A.name !== j || i) && (await W(a, o, { baseFs: r, innerLoop: !0 })) + : await s(a, o, A); + } + }; + function V(e) { + let t = A.structUtils.parseDescriptor(e); + return ( + A.structUtils.isVirtualDescriptor(t) && (t = A.structUtils.devirtualizeDescriptor(t)), + t.range.startsWith('link:') + ); + } + const X = (e, t) => { + if (!e || !t) return e === t; + let r = A.structUtils.parseLocator(e); + A.structUtils.isVirtualLocator(r) && (r = A.structUtils.devirtualizeLocator(r)); + let n = A.structUtils.parseLocator(t); + return ( + A.structUtils.isVirtualLocator(n) && (n = A.structUtils.devirtualizeLocator(n)), + A.structUtils.areLocatorsEqual(r, n) + ); + }; + class Z extends p.PnpLinker { + constructor() { + super(...arguments), (this.mode = 'loose'); + } + makeInstaller(e) { + return new $(e); + } + } + class $ extends p.PnpInstaller { + constructor() { + super(...arguments), (this.mode = 'loose'); + } + async finalizeInstallWithPnp(e) { + if (this.opts.project.configuration.get('pnpMode') !== this.mode) return; + const t = new u.p({ + baseFs: new l.A({ + libzip: await (0, g.getLibzipPromise)(), + maxOpenFiles: 80, + readOnlyArchives: !0, + }), + }), + r = (0, L.oC)(e, this.opts.project.cwd, t), + i = M(r, { pnpifyFs: !1 }), + o = new Map(); + e.fallbackPool = o; + const s = (e, t) => { + const r = A.structUtils.parseLocator(t.locator), + n = A.structUtils.stringifyIdent(r); + n === e ? o.set(e, r.reference) : o.set(e, [n, r.reference]); + }, + a = n.y1.join(this.opts.project.cwd, n.QS.nodeModules), + c = i.get(a); + if (void 0 === c) throw new Error('Assertion failed: Expected a root junction point'); + if ('target' in c) + throw new Error( + 'Assertion failed: Expected the root junction point to be a directory' + ); + for (const e of c.dirList) { + const t = n.y1.join(a, e), + r = i.get(t); + if (void 0 === r) + throw new Error('Assertion failed: Expected the child to have been registered'); + if ('target' in r) s(e, r); + else + for (const o of r.dirList) { + const r = n.y1.join(t, o), + A = i.get(r); + if (void 0 === A) + throw new Error( + 'Assertion failed: Expected the subchild to have been registered' + ); + if (!('target' in A)) + throw new Error('Assertion failed: Expected the leaf junction to be a package'); + s(`${e}/${o}`, A); + } + } + return super.finalizeInstallWithPnp(e); + } + } + const ee = (e) => n.y1.join(e.cwd, '.pnp.js'), + te = { + linkers: [ + class { + supportsPackage(e, t) { + return 'node-modules' === t.project.configuration.get('nodeLinker'); + } + async findPackageLocation(e, t) { + const r = t.project.tryWorkspaceByLocator(e); + if (r) return r.cwd; + const n = await G(t.project, { unrollAliases: !0 }); + if (null === n) + throw new U.UsageError( + "Couldn't find the node_modules state file - running an install might help (findPackageLocation)" + ); + const i = n.locatorMap.get(A.structUtils.stringifyLocator(e)); + if (!i) + throw new U.UsageError( + `Couldn't find ${A.structUtils.prettyLocator( + t.project.configuration, + e + )} in the currently installed node_modules map - running an install might help` + ); + return i.locations[0]; + } + async findPackageLocator(e, t) { + const r = await G(t.project, { unrollAliases: !0 }); + if (null === r) return null; + const { locationRoot: i, segments: o } = H(n.y1.resolve(e), { + skipPrefix: t.project.cwd, + }); + let s = r.locationTree.get(i); + if (!s) return null; + let a = s.locator; + for (const e of o) { + if (((s = s.children.get(e)), !s)) break; + a = s.locator || a; + } + return A.structUtils.parseLocator(a); + } + makeInstaller(e) { + return new Y({ ...e, skipIncompatiblePackageLinking: !0 }); + } + }, + Z, + ], + }; + }, + 94573: (e, t, r) => { + 'use strict'; + r.r(t), r.d(t, { default: () => F }); + var n = r(27122), + i = r(36370), + o = r(95397), + s = r(40376), + A = r(84132), + a = r(35691), + c = r(15815), + u = r(92659), + l = r(86717), + h = r(17278), + g = r(85622), + f = r.n(g), + p = r(53887), + d = r.n(p), + C = r(31669); + class E extends o.BaseCommand { + constructor() { + super(...arguments), (this.json = !1); + } + async execute() { + const e = await n.VK.find(this.context.cwd, this.context.plugins), + { project: t } = await s.I.find(e, this.context.cwd), + r = + void 0 !== this.fields ? new Set(['name', ...this.fields.split(/\s*,\s*/)]) : null, + i = []; + let o = !1; + const g = await c.P.start( + { configuration: e, includeFooter: !1, json: this.json, stdout: this.context.stdout }, + async (n) => { + for (const s of this.packages) { + let c; + if ('.' === s) { + const e = t.topLevelWorkspace; + if (!e.manifest.name) + throw new h.UsageError( + "Missing 'name' field in " + f().join(e.cwd, 'package.json') + ); + c = A.structUtils.makeDescriptor(e.manifest.name, 'unknown'); + } else c = A.structUtils.parseDescriptor(s); + const g = l.npmHttpUtils.getIdentUrl(c); + let p; + try { + p = I(await l.npmHttpUtils.get(g, { configuration: e, ident: c, json: !0 })); + } catch (e) { + throw 'HTTPError' !== e.name + ? e + : 404 === e.response.statusCode + ? new a.lk(u.b.EXCEPTION, 'Package not found') + : new a.lk(u.b.EXCEPTION, e.toString()); + } + const C = Object.keys(p.versions).sort(d().compareLoose); + let E = p['dist-tags'].latest || C[C.length - 1]; + if (d().validRange(c.range)) { + const t = d().maxSatisfying(C, c.range); + null !== t + ? (E = t) + : (n.reportWarning( + u.b.UNNAMED, + `Unmet range ${A.structUtils.prettyRange( + e, + c.range + )}; falling back to the latest version` + ), + (o = !0)); + } else + 'unknown' !== c.range && + (n.reportWarning( + u.b.UNNAMED, + `Invalid range ${A.structUtils.prettyRange( + e, + c.range + )}; falling back to the latest version` + ), + (o = !0)); + const m = p.versions[E], + y = { ...p, ...m, version: E, versions: C }; + let w; + if (null !== r) { + w = {}; + for (const t of r) { + const r = y[t]; + void 0 !== r + ? (w[t] = r) + : (n.reportWarning( + u.b.EXCEPTION, + `The '${t}' field doesn't exist inside ${A.structUtils.prettyIdent( + e, + c + )}'s informations` + ), + (o = !0)); + } + } else this.json || (delete y.dist, delete y.readme, delete y.users), (w = y); + n.reportJson(w), this.json || i.push(w); + } + } + ); + C.inspect.styles.name = 'cyan'; + for (const e of i) + (e !== i[0] || o) && this.context.stdout.write('\n'), + this.context.stdout.write( + (0, C.inspect)(e, { depth: 1 / 0, colors: !0, compact: !1 }) + '\n' + ); + return g.exitCode(); + } + } + function I(e) { + if (Array.isArray(e)) { + const t = []; + for (let r of e) (r = I(r)), r && t.push(r); + return t; + } + if ('object' == typeof e && null !== e) { + const t = {}; + for (const r of Object.keys(e)) { + if (r.startsWith('_')) continue; + const n = I(e[r]); + n && (t[r] = n); + } + return t; + } + return e || null; + } + (E.usage = h.Command.Usage({ + description: 'show information about a package', + details: + "\n This command will fetch information about a package from the npm registry, and prints it in a tree format.\n\n The package does not have to be installed locally, but needs to have been published (in particular, local changes will be ignored even for workspaces).\n\n Append `@` to the package argument to provide information specific to the latest version that satisfies the range. If the range is invalid or if there is no version satisfying the range, the command will print a warning and fall back to the latest version.\n\n If the `-f,--fields` option is set, it's a comma-separated list of fields which will be used to only display part of the package informations.\n\n By default, this command won't return the `dist`, `readme`, and `users` fields, since they are often very long. To explicitly request those fields, explicitly list them with the `--fields` flag or request the output in JSON mode.\n\n If the `--json` flag is set the output will follow a JSON-stream output also known as NDJSON (https://github.com/ndjson/ndjson-spec).\n ", + examples: [ + [ + 'Show all available information about react (except the `dist`, `readme`, and `users` fields)', + 'yarn npm info react', + ], + [ + 'Show all available information about react as valid JSON (including the `dist`, `readme`, and `users` fields)', + 'yarn npm info react --json', + ], + ['Show all available information about react 16.12.0', 'yarn npm info react@16.12.0'], + ['Show the description of react', 'yarn npm info react --fields description'], + ['Show all available versions of react', 'yarn npm info react --fields versions'], + ['Show the readme of react', 'yarn npm info react --fields readme'], + ['Show a few fields of react', 'yarn npm info react --fields homepage,repository'], + ], + })), + (0, i.gn)([h.Command.Rest()], E.prototype, 'packages', void 0), + (0, i.gn)([h.Command.String('-f,--fields')], E.prototype, 'fields', void 0), + (0, i.gn)([h.Command.Boolean('--json')], E.prototype, 'json', void 0), + (0, i.gn)([h.Command.Path('npm', 'info')], E.prototype, 'execute', null); + var m = r(9494), + y = r.n(m); + class w extends o.BaseCommand { + constructor() { + super(...arguments), (this.publish = !1); + } + async execute() { + const e = await n.VK.find(this.context.cwd, this.context.plugins), + t = y().createPromptModule({ + input: this.context.stdin, + output: this.context.stdout, + }), + r = await B({ + configuration: e, + cwd: this.context.cwd, + publish: this.publish, + scope: this.scope, + }); + return ( + await c.P.start({ configuration: e, stdout: this.context.stdout }, async (i) => { + const o = await (async function (e, { registry: t, report: r }) { + if (process.env.TEST_ENV) + return { + name: process.env.TEST_NPM_USER || '', + password: process.env.TEST_NPM_PASSWORD || '', + }; + r.reportInfo(u.b.UNNAMED, 'Logging in to ' + t); + let n = !1; + t.match(/^https:\/\/npm\.pkg\.github\.com(\/|$)/) && + (r.reportInfo( + u.b.UNNAMED, + "You seem to be using the GitHub Package Registry. Tokens must be generated with the 'repo', 'write:packages', and 'read:packages' permissions." + ), + (n = !0)); + r.reportSeparator(); + const { username: i, password: o } = await e([ + { + type: 'input', + name: 'username', + message: 'Username:', + validate: (e) => Q(e, 'Username'), + }, + { + type: 'password', + name: 'password', + message: n ? 'Token:' : 'Password:', + validate: (e) => Q(e, 'Password'), + }, + ]); + return r.reportSeparator(), { name: i, password: o }; + })(t, { registry: r, report: i }), + s = '/-/user/org.couchdb.user:' + encodeURIComponent(o.name), + A = await l.npmHttpUtils.put(s, o, { + attemptedAs: o.name, + configuration: e, + registry: r, + json: !0, + authType: l.npmHttpUtils.AuthType.NO_AUTH, + }); + return ( + await (async function (e, t, { configuration: r }) { + return await n.VK.updateHomeConfiguration({ + npmRegistries: (r = {}) => ({ ...r, [e]: { ...r[e], npmAuthToken: t } }), + }); + })(r, A.token, { configuration: e }), + i.reportInfo(u.b.UNNAMED, 'Successfully logged in') + ); + }) + ).exitCode(); + } + } + async function B({ scope: e, publish: t, configuration: r, cwd: n }) { + return e && t + ? l.npmConfigUtils.getScopeRegistry(e, { + configuration: r, + type: l.npmConfigUtils.RegistryType.PUBLISH_REGISTRY, + }) + : e + ? l.npmConfigUtils.getScopeRegistry(e, { configuration: r }) + : t + ? l.npmConfigUtils.getPublishRegistry((await (0, o.openWorkspace)(r, n)).manifest, { + configuration: r, + }) + : l.npmConfigUtils.getDefaultRegistry({ configuration: r }); + } + function Q(e, t) { + return e.length > 0 || t + ' is required'; + } + (w.usage = h.Command.Usage({ + category: 'Npm-related commands', + description: 'store new login info to access the npm registry', + details: + '\n This command will ask you for your username, password, and 2FA One-Time-Password (when it applies). It will then modify your local configuration (in your home folder, never in the project itself) to reference the new tokens thus generated.\n\n Adding the `-s,--scope` flag will cause the authentication to be done against whatever registry is configured for the associated scope (see also `npmScopes`).\n\n Adding the `--publish` flag will cause the authentication to be done against the registry used when publishing the package (see also `publishConfig.registry` and `npmPublishRegistry`).\n ', + examples: [ + ['Login to the default registry', 'yarn npm login'], + [ + 'Login to the registry linked to the @my-scope registry', + 'yarn npm login --scope my-scope', + ], + ['Login to the publish registry for the current package', 'yarn npm login --publish'], + ], + })), + (0, i.gn)([h.Command.String('-s,--scope')], w.prototype, 'scope', void 0), + (0, i.gn)([h.Command.Boolean('--publish')], w.prototype, 'publish', void 0), + (0, i.gn)([h.Command.Path('npm', 'login')], w.prototype, 'execute', null); + class v extends o.BaseCommand { + constructor() { + super(...arguments), (this.publish = !1), (this.all = !1); + } + async execute() { + const e = await n.VK.find(this.context.cwd, this.context.plugins), + t = this.all + ? null + : await B({ + configuration: e, + cwd: this.context.cwd, + publish: this.publish, + scope: this.scope, + }); + return ( + await c.P.start( + { configuration: e, stdout: this.context.stdout }, + async (e) => ( + await (async function (e) { + return await n.VK.updateHomeConfiguration({ + npmRegistries: (t = {}) => (null === e ? void 0 : { ...t, [e]: void 0 }), + }); + })(t), + e.reportInfo( + u.b.UNNAMED, + 'Successfully logged out of ' + (null === t ? 'all registries' : t) + ) + ) + ) + ).exitCode(); + } + } + (v.usage = h.Command.Usage({ + category: 'Npm-related commands', + description: 'logout of the npm registry', + details: + '\n This command will log you out by modifying your local configuration (in your home folder, never in the project itself) to delete all credentials linked to a registry.\n\n Adding the `-s,--scope` flag will cause the deletion to be done against whatever registry is configured for the associated scope (see also `npmScopes`).\n\n Adding the `--publish` flag will cause the deletion to be done against the registry used when publishing the package (see also `publishConfig.registry` and `npmPublishRegistry`).\n\n Adding the `-A,--all` flag will cause the deletion to be done against all registries.\n ', + examples: [ + ['Logout of the default registry', 'yarn npm logout'], + [ + 'Logout of the registry linked to the @my-scope registry', + 'yarn npm logout --scope my-scope', + ], + ['Logout of the publish registry for the current package', 'yarn npm logout --publish'], + [ + 'Logout of the publish registry for the current package linked to the @my-scope registry', + 'yarn npm logout --publish --scope my-scope', + ], + ['Logout of all registries', 'yarn npm logout --all'], + ], + })), + (0, i.gn)([h.Command.String('-s,--scope')], v.prototype, 'scope', void 0), + (0, i.gn)([h.Command.Boolean('--publish')], v.prototype, 'publish', void 0), + (0, i.gn)([h.Command.Boolean('-A,--all')], v.prototype, 'all', void 0), + (0, i.gn)([h.Command.Path('npm', 'logout')], v.prototype, 'execute', null); + var D = r(5973), + b = r(76417), + S = r(10129); + class k extends o.BaseCommand { + constructor() { + super(...arguments), (this.tag = 'latest'), (this.tolerateRepublish = !1); + } + async execute() { + const e = await n.VK.find(this.context.cwd, this.context.plugins), + { project: t, workspace: r } = await s.I.find(e, this.context.cwd); + if (!r) throw new o.WorkspaceRequiredError(t.cwd, this.context.cwd); + if (r.manifest.private) + throw new h.UsageError('Private workspaces cannot be published'); + if (null === r.manifest.name || null === r.manifest.version) + throw new h.UsageError( + 'Workspaces must have valid names and versions to be published on an external registry' + ); + await t.restoreInstallState(); + const i = r.manifest.name, + g = r.manifest.version, + f = l.npmConfigUtils.getPublishRegistry(r.manifest, { configuration: e }); + return ( + await c.P.start({ configuration: e, stdout: this.context.stdout }, async (t) => { + if (this.tolerateRepublish) + try { + const r = await l.npmHttpUtils.get(l.npmHttpUtils.getIdentUrl(i), { + configuration: e, + registry: f, + ident: i, + json: !0, + }); + if (!Object.prototype.hasOwnProperty.call(r, 'versions')) + throw new a.lk( + u.b.REMOTE_INVALID, + 'Registry returned invalid data for - missing "versions" field' + ); + if (Object.prototype.hasOwnProperty.call(r.versions, g)) + return void t.reportWarning( + u.b.UNNAMED, + `Registry already knows about version ${g}; skipping.` + ); + } catch (e) { + if ('HTTPError' !== e.name) throw e; + if (404 !== e.response.statusCode) + throw new a.lk( + u.b.NETWORK_ERROR, + `The remote server answered with HTTP ${e.response.statusCode} ${e.response.statusMessage}` + ); + } + await D.packUtils.prepareForPack(r, { report: t }, async () => { + const n = await D.packUtils.genPackList(r); + for (const e of n) t.reportInfo(null, e); + const o = await D.packUtils.genPackStream(r, n), + s = await A.miscUtils.bufferStream(o), + a = await (async function (e, t, { access: r, tag: n, registry: i }) { + const o = e.project.configuration, + s = e.manifest.name, + a = e.manifest.version, + c = A.structUtils.stringifyIdent(s), + u = (0, b.createHash)('sha1').update(t).digest('hex'), + l = S.Sd(t).toString(); + void 0 === r && + (r = + e.manifest.publishConfig && + 'string' == typeof e.manifest.publishConfig.access + ? e.manifest.publishConfig.access + : null !== o.get('npmPublishAccess') + ? o.get('npmPublishAccess') + : s.scope + ? 'restricted' + : 'public'); + const h = await D.packUtils.genPackageManifest(e), + g = `${c}-${a}.tgz`, + f = new URL(`${c}/-/${g}`, i); + return { + _id: c, + _attachments: { + [g]: { + content_type: 'application/octet-stream', + data: t.toString('base64'), + length: t.length, + }, + }, + name: c, + access: r, + 'dist-tags': { [n]: a }, + versions: { + [a]: { + ...h, + _id: `${c}@${a}`, + name: c, + version: a, + dist: { shasum: u, integrity: l, tarball: f.toString() }, + }, + }, + }; + })(r, s, { access: this.access, tag: this.tag, registry: f }); + try { + await l.npmHttpUtils.put(l.npmHttpUtils.getIdentUrl(i), a, { + configuration: e, + registry: f, + ident: i, + json: !0, + }); + } catch (e) { + if ('HTTPError' !== e.name) throw e; + { + const r = + e.response.body && e.response.body.error + ? e.response.body.error + : `The remote server answered with HTTP ${e.response.statusCode} ${e.response.statusMessage}`; + t.reportError(u.b.NETWORK_ERROR, r); + } + } + }), + t.hasErrors() || t.reportInfo(u.b.UNNAMED, 'Package archive published'); + }) + ).exitCode(); + } + } + (k.usage = h.Command.Usage({ + category: 'Npm-related commands', + description: 'publish the active workspace to the npm registry', + details: + '\n This command will pack the active workspace into a fresh archive and upload it to the npm registry.\n\n The package will by default be attached to the `latest` tag on the registry, but this behavior can be overriden by using the `--tag` option.\n\n Note that for legacy reasons scoped packages are by default published with an access set to `restricted` (aka "private packages"). This requires you to register for a paid npm plan. In case you simply wish to publish a public scoped package to the registry (for free), just add the `--access public` flag. This behavior can be enabled by default through the `npmPublishAccess` settings.\n ', + examples: [['Publish the active workspace', 'yarn npm publish']], + })), + (0, i.gn)([h.Command.String('--access')], k.prototype, 'access', void 0), + (0, i.gn)([h.Command.String('--tag')], k.prototype, 'tag', void 0), + (0, i.gn)( + [h.Command.Boolean('--tolerate-republish')], + k.prototype, + 'tolerateRepublish', + void 0 + ), + (0, i.gn)([h.Command.Path('npm', 'publish')], k.prototype, 'execute', null); + class x extends o.BaseCommand { + constructor() { + super(...arguments), (this.publish = !1); + } + async execute() { + const e = await n.VK.find(this.context.cwd, this.context.plugins); + let t; + t = + this.scope && this.publish + ? l.npmConfigUtils.getScopeRegistry(this.scope, { + configuration: e, + type: l.npmConfigUtils.RegistryType.PUBLISH_REGISTRY, + }) + : this.scope + ? l.npmConfigUtils.getScopeRegistry(this.scope, { configuration: e }) + : this.publish + ? l.npmConfigUtils.getPublishRegistry( + (await (0, o.openWorkspace)(e, this.context.cwd)).manifest, + { configuration: e } + ) + : l.npmConfigUtils.getDefaultRegistry({ configuration: e }); + return ( + await c.P.start({ configuration: e, stdout: this.context.stdout }, async (r) => { + try { + const n = await l.npmHttpUtils.get('/-/whoami', { + configuration: e, + registry: t, + authType: l.npmHttpUtils.AuthType.ALWAYS_AUTH, + json: !0, + }); + r.reportInfo(u.b.UNNAMED, n.username); + } catch (e) { + if ('HTTPError' !== e.name) throw e; + 401 === e.response.statusCode || 403 === e.response.statusCode + ? r.reportError( + u.b.AUTHENTICATION_INVALID, + 'Authentication failed - your credentials may have expired' + ) + : r.reportError(u.b.AUTHENTICATION_INVALID, e.toString()); + } + }) + ).exitCode(); + } + } + (x.usage = h.Command.Usage({ + category: 'Npm-related commands', + description: 'display the name of the authenticated user', + details: + "\n Print the username associated with the current authentication settings to the standard output.\n\n When using `-s,--scope`, the username printed will be the one that matches the authentication settings of the registry associated with the given scope (those settings can be overriden using the `npmRegistries` map, and the registry associated with the scope is configured via the `npmScopes` map).\n\n When using `--publish`, the registry we'll select will by default be the one used when publishing packages (`publishConfig.registry` or `npmPublishRegistry` if available, otherwise we'll fallback to the regular `npmRegistryServer`).\n ", + examples: [ + ['Print username for the default registry', 'yarn npm whoami'], + ['Print username for the registry on a given scope', 'yarn npm whoami --scope company'], + ], + })), + (0, i.gn)([h.Command.String('-s,--scope')], x.prototype, 'scope', void 0), + (0, i.gn)([h.Command.Boolean('--publish')], x.prototype, 'publish', void 0), + (0, i.gn)([h.Command.Path('npm', 'whoami')], x.prototype, 'execute', null); + const F = { + configuration: { + npmPublishAccess: { + description: 'Default access of the published packages', + type: n.a2.STRING, + default: null, + }, + }, + commands: [E, w, v, k, x], + }; + }, + 86717: (e, t, r) => { + 'use strict'; + r.r(t), r.d(t, { npmConfigUtils: () => n, npmHttpUtils: () => i, default: () => T }); + var n = {}; + r.r(n), + r.d(n, { + RegistryType: () => c, + getAuthConfiguration: () => y, + getDefaultRegistry: () => E, + getPublishRegistry: () => d, + getRegistryConfiguration: () => I, + getScopeConfiguration: () => m, + getScopeRegistry: () => C, + normalizeRegistry: () => p, + }); + var i = {}; + r.r(i), r.d(i, { AuthType: () => u, get: () => B, getIdentUrl: () => w, put: () => Q }); + var o = r(27122), + s = r(84132), + A = r(53887), + a = r.n(A); + var c, + u, + l = r(35691), + h = r(92659), + g = r(9494), + f = r.n(g); + function p(e) { + return e.replace(/\/$/, ''); + } + function d(e, { configuration: t }) { + return e.publishConfig && e.publishConfig.registry + ? p(e.publishConfig.registry) + : e.name + ? C(e.name.scope, { configuration: t, type: c.PUBLISH_REGISTRY }) + : E({ configuration: t, type: c.PUBLISH_REGISTRY }); + } + function C(e, { configuration: t, type: r = c.FETCH_REGISTRY }) { + const n = m(e, { configuration: t }); + if (null === n) return E({ configuration: t, type: r }); + const i = n.get(r); + return null === i ? E({ configuration: t, type: r }) : p(i); + } + function E({ configuration: e, type: t = c.FETCH_REGISTRY }) { + const r = e.get(t); + return p(null !== r ? r : e.get(c.FETCH_REGISTRY)); + } + function I(e, { configuration: t }) { + const r = t.get('npmRegistries'), + n = r.get(e); + if (void 0 !== n) return n; + const i = r.get(e.replace(/^[a-z]+:/, '')); + return void 0 !== i ? i : null; + } + function m(e, { configuration: t }) { + if (null === e) return null; + const r = t.get('npmScopes').get(e); + return r || null; + } + function y(e, { configuration: t, ident: r }) { + const n = r && m(r.scope, { configuration: t }); + if ( + (null == n ? void 0 : n.get('npmAuthIdent')) || + (null == n ? void 0 : n.get('npmAuthToken')) + ) + return n; + return I(e, { configuration: t }) || t; + } + function w(e) { + return e.scope ? `/@${e.scope}%2f${e.name}` : '/' + e.name; + } + async function B( + e, + { configuration: t, headers: r, ident: n, authType: i, registry: o, ...A } + ) { + if ( + (n && void 0 === o && (o = C(n.scope, { configuration: t })), + n && n.scope && void 0 === i && (i = u.BEST_EFFORT), + 'string' != typeof o) + ) + throw new Error('Assertion failed: The registry should be a string'); + const a = v(o, { authType: i, configuration: t, ident: n }); + let c; + a && (r = { ...r, authorization: a }); + try { + c = new URL(e); + } catch (t) { + c = new URL(o + e); + } + try { + return await s.httpUtils.get(c.href, { configuration: t, headers: r, ...A }); + } catch (e) { + throw 'HTTPError' !== e.name || + (401 !== e.response.statusCode && 403 !== e.response.statusCode) + ? e + : new l.lk( + h.b.AUTHENTICATION_INVALID, + `Invalid authentication (as ${await D(o, r, { configuration: t })})` + ); + } + } + async function Q( + e, + t, + { + attemptedAs: r, + configuration: n, + headers: i, + ident: o, + authType: A = u.ALWAYS_AUTH, + registry: a, + ...c + } + ) { + if ((o && void 0 === a && (a = C(o.scope, { configuration: n })), 'string' != typeof a)) + throw new Error('Assertion failed: The registry should be a string'); + const g = v(a, { authType: A, configuration: n, ident: o }); + g && (i = { ...i, authorization: g }); + try { + return await s.httpUtils.put(a + e, t, { configuration: n, headers: i, ...c }); + } catch (o) { + if ( + !(function (e) { + if ('HTTPError' !== e.name) return !1; + try { + return e.response.headers['www-authenticate'] + .split(/,\s*/) + .map((e) => e.toLowerCase()) + .includes('otp'); + } catch (e) { + return !1; + } + })(o) + ) + throw 'HTTPError' !== o.name || + (401 !== o.response.statusCode && 403 !== o.response.statusCode) + ? o + : new l.lk( + h.b.AUTHENTICATION_INVALID, + `Invalid authentication (${ + 'string' != typeof r + ? 'as ' + (await D(a, i, { configuration: n })) + : 'attempted as ' + r + })` + ); + const A = await (async function () { + if (process.env.TEST_ENV) return process.env.TEST_NPM_2FA_TOKEN || ''; + const e = f().createPromptModule(), + { otp: t } = await e({ + type: 'input', + name: 'otp', + message: 'One-time password:', + validate: (e) => e.length > 0 || 'One-time password is required', + }); + return t; + })(), + u = { ...i, ...b(A) }; + try { + return await s.httpUtils.put(`${a}${e}`, t, { configuration: n, headers: u, ...c }); + } catch (e) { + throw 'HTTPError' !== e.name || + (401 !== e.response.statusCode && 403 !== e.response.statusCode) + ? e + : new l.lk( + h.b.AUTHENTICATION_INVALID, + `Invalid authentication (${ + 'string' != typeof r + ? 'as ' + (await D(a, u, { configuration: n })) + : 'attempted as ' + r + })` + ); + } + } + } + function v(e, { authType: t = u.CONFIGURATION, configuration: r, ident: n }) { + const i = y(e, { configuration: r, ident: n }), + o = (function (e, t) { + switch (t) { + case u.CONFIGURATION: + return e.get('npmAlwaysAuth'); + case u.BEST_EFFORT: + case u.ALWAYS_AUTH: + return !0; + case u.NO_AUTH: + return !1; + default: + throw new Error('Unreachable'); + } + })(i, t); + if (!o) return null; + if (i.get('npmAuthToken')) return 'Bearer ' + i.get('npmAuthToken'); + if (i.get('npmAuthIdent')) return 'Basic ' + i.get('npmAuthIdent'); + if (o && t !== u.BEST_EFFORT) + throw new l.lk( + h.b.AUTHENTICATION_NOT_FOUND, + 'No authentication configured for request' + ); + return null; + } + async function D(e, t, { configuration: r }) { + if (void 0 === t || void 0 === t.authorization) return 'an anonymous user'; + try { + return ( + await s.httpUtils.get(new URL(e + '/-/whoami').href, { configuration: r, headers: t }) + ).username; + } catch (e) { + return 'an unknown user'; + } + } + function b(e) { + return { 'npm-otp': e }; + } + !(function (e) { + (e.FETCH_REGISTRY = 'npmRegistryServer'), (e.PUBLISH_REGISTRY = 'npmPublishRegistry'); + })(c || (c = {})), + (function (e) { + (e[(e.NO_AUTH = 0)] = 'NO_AUTH'), + (e[(e.BEST_EFFORT = 1)] = 'BEST_EFFORT'), + (e[(e.CONFIGURATION = 2)] = 'CONFIGURATION'), + (e[(e.ALWAYS_AUTH = 3)] = 'ALWAYS_AUTH'); + })(u || (u = {})); + var S = r(78835); + class k { + supports(e, t) { + if (!e.reference.startsWith('npm:')) return !1; + const r = new S.URL(e.reference); + return !!a().valid(r.pathname) && !r.searchParams.has('__archiveUrl'); + } + getLocalPath(e, t) { + return null; + } + async fetch(e, t) { + const r = t.checksums.get(e.locatorHash) || null, + [n, i, o] = await t.cache.fetchPackageFromCache(e, r, { + onHit: () => t.report.reportCacheHit(e), + onMiss: () => + t.report.reportCacheMiss( + e, + s.structUtils.prettyLocator(t.project.configuration, e) + + " can't be found in the cache and will be fetched from the remote registry" + ), + loader: () => this.fetchFromNetwork(e, t), + skipIntegrityCheck: t.skipIntegrityCheck, + }); + return { + packageFs: n, + releaseFs: i, + prefixPath: s.structUtils.getIdentVendorPath(e), + checksum: o, + }; + } + async fetchFromNetwork(e, t) { + let r; + try { + r = await B(k.getLocatorUrl(e), { configuration: t.project.configuration, ident: e }); + } catch (n) { + r = await B(k.getLocatorUrl(e).replace(/%2f/g, '/'), { + configuration: t.project.configuration, + ident: e, + }); + } + return await s.tgzUtils.convertToZip(r, { + compressionLevel: t.project.configuration.get('compressionLevel'), + prefixPath: s.structUtils.getIdentVendorPath(e), + stripComponents: 1, + }); + } + static isConventionalTarballUrl(e, t, { configuration: r }) { + let n = C(e.scope, { configuration: r }); + const i = k.getLocatorUrl(e); + return ( + (t = t.replace(/^https?:(\/\/(?:[^/]+\.)?npmjs.org(?:$|\/))/, 'https:$1')), + (n = n.replace( + /^https:\/\/registry\.npmjs\.org($|\/)/, + 'https://registry.yarnpkg.com$1' + )), + (t = t.replace( + /^https:\/\/registry\.npmjs\.org($|\/)/, + 'https://registry.yarnpkg.com$1' + )) === + n + i || t === n + i.replace(/%2f/g, '/') + ); + } + static getLocatorUrl(e) { + const t = a().clean(e.reference.slice('npm:'.length)); + if (null === t) + throw new l.lk( + h.b.RESOLVER_NOT_FOUND, + "The npm semver resolver got selected, but the version isn't semver" + ); + return `${w(e)}/-/${e.name}-${t}.tgz`; + } + } + var x = r(46611), + F = r(32485); + const M = s.structUtils.makeIdent(null, 'node-gyp'), + N = /\b(node-gyp|prebuild-install)\b/; + var R = r(52779); + const K = { + npmAlwaysAuth: { + description: + "URL of the selected npm registry (note: npm enterprise isn't supported)", + type: o.a2.BOOLEAN, + default: !1, + }, + npmAuthIdent: { + description: + 'Authentication identity for the npm registry (_auth in npm and yarn v1)', + type: o.a2.SECRET, + default: null, + }, + npmAuthToken: { + description: + 'Authentication token for the npm registry (_authToken in npm and yarn v1)', + type: o.a2.SECRET, + default: null, + }, + }, + L = { + npmPublishRegistry: { + description: 'Registry to push packages to', + type: o.a2.STRING, + default: null, + }, + npmRegistryServer: { + description: + "URL of the selected npm registry (note: npm enterprise isn't supported)", + type: o.a2.STRING, + default: 'https://registry.yarnpkg.com', + }, + }, + T = { + configuration: { + ...K, + ...L, + npmScopes: { + description: 'Settings per package scope', + type: o.a2.MAP, + valueDefinition: { description: '', type: o.a2.SHAPE, properties: { ...K, ...L } }, + }, + npmRegistries: { + description: 'Settings per registry', + type: o.a2.MAP, + normalizeKeys: p, + valueDefinition: { description: '', type: o.a2.SHAPE, properties: { ...K } }, + }, + }, + fetchers: [ + class { + supports(e, t) { + if (!e.reference.startsWith('npm:')) return !1; + const { selector: r, params: n } = s.structUtils.parseRange(e.reference); + return !!a().valid(r) && null !== n && 'string' == typeof n.__archiveUrl; + } + getLocalPath(e, t) { + return null; + } + async fetch(e, t) { + const r = t.checksums.get(e.locatorHash) || null, + [n, i, o] = await t.cache.fetchPackageFromCache(e, r, { + onHit: () => t.report.reportCacheHit(e), + onMiss: () => + t.report.reportCacheMiss( + e, + s.structUtils.prettyLocator(t.project.configuration, e) + + " can't be found in the cache and will be fetched from the remote server" + ), + loader: () => this.fetchFromNetwork(e, t), + skipIntegrityCheck: t.skipIntegrityCheck, + }); + return { + packageFs: n, + releaseFs: i, + prefixPath: s.structUtils.getIdentVendorPath(e), + checksum: o, + }; + } + async fetchFromNetwork(e, t) { + const { params: r } = s.structUtils.parseRange(e.reference); + if (null === r || 'string' != typeof r.__archiveUrl) + throw new Error( + 'Assertion failed: The archiveUrl querystring parameter should have been available' + ); + const n = await B(r.__archiveUrl, { + configuration: t.project.configuration, + ident: e, + }); + return await s.tgzUtils.convertToZip(n, { + compressionLevel: t.project.configuration.get('compressionLevel'), + prefixPath: s.structUtils.getIdentVendorPath(e), + stripComponents: 1, + }); + } + }, + k, + ], + resolvers: [ + class { + supportsDescriptor(e, t) { + return ( + !!e.range.startsWith('npm:') && + !!s.structUtils.tryParseDescriptor(e.range.slice('npm:'.length), !0) + ); + } + supportsLocator(e, t) { + return !1; + } + shouldPersistResolution(e, t) { + throw new Error('Unreachable'); + } + bindDescriptor(e, t, r) { + return e; + } + getResolutionDependencies(e, t) { + const r = s.structUtils.parseDescriptor(e.range.slice('npm:'.length), !0); + return t.resolver.getResolutionDependencies(r, t); + } + async getCandidates(e, t, r) { + const n = s.structUtils.parseDescriptor(e.range.slice('npm:'.length), !0); + return await r.resolver.getCandidates(n, t, r); + } + resolve(e, t) { + throw new Error('Unreachable'); + } + }, + class { + supportsDescriptor(e, t) { + return ( + !!e.range.startsWith('npm:') && !!a().validRange(e.range.slice('npm:'.length)) + ); + } + supportsLocator(e, t) { + if (!e.reference.startsWith('npm:')) return !1; + const { selector: r } = s.structUtils.parseRange(e.reference); + return !!a().valid(r); + } + shouldPersistResolution(e, t) { + return !0; + } + bindDescriptor(e, t, r) { + return e; + } + getResolutionDependencies(e, t) { + return []; + } + async getCandidates(e, t, r) { + const n = e.range.slice('npm:'.length), + i = await B(w(e), { + configuration: r.project.configuration, + ident: e, + json: !0, + }), + o = Object.keys(i.versions).filter((e) => a().satisfies(e, n)); + return ( + o.sort((e, t) => -a().compare(e, t)), + o.map((t) => { + const n = s.structUtils.makeLocator(e, 'npm:' + t), + o = i.versions[t].dist.tarball; + return k.isConventionalTarballUrl(n, o, { + configuration: r.project.configuration, + }) + ? n + : s.structUtils.bindLocator(n, { __archiveUrl: o }); + }) + ); + } + async resolve(e, t) { + const { selector: r } = s.structUtils.parseRange(e.reference), + n = a().clean(r); + if (null === n) + throw new l.lk( + h.b.RESOLVER_NOT_FOUND, + "The npm semver resolver got selected, but the version isn't semver" + ); + const i = await B(w(e), { + configuration: t.project.configuration, + ident: e, + json: !0, + }); + if (!Object.prototype.hasOwnProperty.call(i, 'versions')) + throw new l.lk( + h.b.REMOTE_INVALID, + 'Registry returned invalid data for - missing "versions" field' + ); + if (!Object.prototype.hasOwnProperty.call(i.versions, n)) + throw new l.lk( + h.b.REMOTE_NOT_FOUND, + `Registry failed to return reference "${n}"` + ); + const o = new x.G(); + if ( + (o.load(i.versions[n]), + !o.dependencies.has(M.identHash) && !o.peerDependencies.has(M.identHash)) + ) + for (const r of o.scripts.values()) + if (r.match(N)) { + o.dependencies.set(M.identHash, s.structUtils.makeDescriptor(M, 'latest')), + t.report.reportWarning( + h.b.NODE_GYP_INJECTED, + s.structUtils.prettyLocator(t.project.configuration, e) + + ': Implicit dependencies on node-gyp are discouraged' + ); + break; + } + return ( + 'string' == typeof o.raw.deprecated && + t.report.reportWarning( + h.b.DEPRECATED_PACKAGE, + `${s.structUtils.prettyLocator( + t.project.configuration, + e + )} is deprecated: ${o.raw.deprecated}` + ), + { + ...e, + version: n, + languageName: 'node', + linkType: F.U.HARD, + dependencies: o.dependencies, + peerDependencies: o.peerDependencies, + dependenciesMeta: o.dependenciesMeta, + peerDependenciesMeta: o.peerDependenciesMeta, + bin: o.bin, + } + ); + } + }, + class { + supportsDescriptor(e, t) { + return !!e.range.startsWith('npm:') && !!R.c.test(e.range.slice('npm:'.length)); + } + supportsLocator(e, t) { + return !1; + } + shouldPersistResolution(e, t) { + throw new Error('Unreachable'); + } + bindDescriptor(e, t, r) { + return e; + } + getResolutionDependencies(e, t) { + return []; + } + async getCandidates(e, t, r) { + const n = e.range.slice('npm:'.length), + i = await B(w(e), { + configuration: r.project.configuration, + ident: e, + json: !0, + }); + if (!Object.prototype.hasOwnProperty.call(i, 'dist-tags')) + throw new l.lk( + h.b.REMOTE_INVALID, + 'Registry returned invalid data - missing "dist-tags" field' + ); + const o = i['dist-tags']; + if (!Object.prototype.hasOwnProperty.call(o, n)) + throw new l.lk(h.b.REMOTE_NOT_FOUND, `Registry failed to return tag "${n}"`); + const A = o[n], + a = s.structUtils.makeLocator(e, 'npm:' + A), + c = i.versions[A].dist.tarball; + return k.isConventionalTarballUrl(a, c, { + configuration: r.project.configuration, + }) + ? [a] + : [s.structUtils.bindLocator(a, { __archiveUrl: c })]; + } + async resolve(e, t) { + throw new Error('Unreachable'); + } + }, + ], + }; + }, + 5973: (e, t, r) => { + 'use strict'; + r.r(t), r.d(t, { packUtils: () => n, default: () => T }); + var n = {}; + r.r(n), + r.d(n, { + genPackList: () => k, + genPackStream: () => b, + genPackageManifest: () => S, + hasPackScripts: () => v, + prepareForPack: () => D, + }); + var i = r(84132), + o = r(35691), + s = r(92659), + A = r(36370), + a = r(95397), + c = r(27122), + u = r(40376), + l = r(28148), + h = r(33720), + g = r(15815), + f = r(46009), + p = r(56537), + d = r(17278), + C = r(10489), + E = r(2401), + I = r.n(E), + m = r(92413), + y = r(59938), + w = r(78761); + const B = [ + '/package.json', + '/readme', + '/readme.*', + '/license', + '/license.*', + '/licence', + '/licence.*', + '/changelog', + '/changelog.*', + ], + Q = [ + '/package.tgz', + '.github', + '.git', + '.hg', + 'node_modules', + '.npmignore', + '.gitignore', + '.#*', + '.DS_Store', + ]; + async function v(e) { + return ( + !!(await i.scriptUtils.hasWorkspaceScript(e, 'prepack')) || + !!(await i.scriptUtils.hasWorkspaceScript(e, 'postpack')) + ); + } + async function D(e, { report: t }, r) { + const n = new m.PassThrough(), + A = new m.PassThrough(); + if (await i.scriptUtils.hasWorkspaceScript(e, 'prepack')) { + t.reportInfo(s.b.LIFECYCLE_SCRIPT, 'Calling the "prepack" lifecycle script'); + if ( + 0 !== + (await i.scriptUtils.executeWorkspaceScript(e, 'prepack', [], { + stdin: null, + stdout: n, + stderr: A, + })) + ) + throw new o.lk( + s.b.LIFECYCLE_SCRIPT, + 'Prepack script failed; run "yarn prepack" to investigate' + ); + } + try { + await r(); + } finally { + if (await i.scriptUtils.hasWorkspaceScript(e, 'postpack')) { + t.reportInfo(s.b.LIFECYCLE_SCRIPT, 'Calling the "postpack" lifecycle script'); + 0 !== + (await i.scriptUtils.executeWorkspaceScript(e, 'postpack', [], { + stdin: null, + stdout: n, + stderr: A, + })) && + t.reportWarning( + s.b.LIFECYCLE_SCRIPT, + 'Postpack script failed; run "yarn postpack" to investigate' + ); + } + } + } + async function b(e, t) { + void 0 === t && (t = await k(e)); + const r = y.P(); + process.nextTick(async () => { + for (const n of t) { + const t = f.y1.resolve(e.cwd, n), + i = f.y1.join('package', n), + o = await p.xfs.lstatPromise(t), + s = { name: i, mtime: new Date(315532800) }; + let A, a; + const c = new Promise((e, t) => { + (A = e), (a = t); + }), + u = (e) => { + e ? a(e) : A(); + }; + if (o.isFile()) { + let i; + (i = + 'package.json' === n + ? Buffer.from(JSON.stringify(await S(e), null, 2)) + : await p.xfs.readFilePromise(t)), + r.entry({ ...s, type: 'file' }, i, u); + } else + o.isSymbolicLink() && + r.entry({ ...s, type: 'symlink', linkname: await p.xfs.readlinkPromise(t) }, u); + await c; + } + r.finalize(); + }); + const n = (0, w.createGzip)(); + return r.pipe(n), n; + } + async function S(e) { + const t = JSON.parse(JSON.stringify(e.manifest.raw)); + return ( + await e.project.configuration.triggerHook((e) => e.beforeWorkspacePacking, e, t), t + ); + } + async function k(e) { + const t = e.project, + r = t.configuration, + n = { accept: [], reject: [] }; + for (const e of Q) n.reject.push(e); + for (const e of B) n.accept.push(e); + n.reject.push(r.get('rcFilename')); + const i = (t) => { + if (null === t || !t.startsWith(e.cwd + '/')) return; + const r = f.y1.relative(e.cwd, t), + i = f.y1.resolve(f.LZ.root, r); + n.reject.push(i); + }; + i(f.y1.resolve(t.cwd, r.get('lockfileFilename'))), + i(r.get('bstatePath')), + i(r.get('cacheFolder')), + i(r.get('globalFolder')), + i(r.get('installStatePath')), + i(r.get('virtualFolder')), + i(r.get('yarnPath')), + await r.triggerHook( + (e) => e.populateYarnPaths, + t, + (e) => { + i(e); + } + ); + for (const r of t.workspaces) { + const t = f.y1.relative(e.cwd, r.cwd); + '' === t || t.match(/^(\.\.)?\//) || n.reject.push('/' + t); + } + const o = { accept: [], reject: [] }; + e.manifest.publishConfig && e.manifest.publishConfig.main + ? o.accept.push(f.y1.resolve(f.LZ.root, e.manifest.publishConfig.main)) + : e.manifest.main && o.accept.push(f.y1.resolve(f.LZ.root, e.manifest.main)), + e.manifest.publishConfig && e.manifest.publishConfig.module + ? o.accept.push(f.y1.resolve(f.LZ.root, e.manifest.publishConfig.module)) + : e.manifest.module && o.accept.push(f.y1.resolve(f.LZ.root, e.manifest.module)); + const s = null !== e.manifest.files; + if (s) { + o.reject.push('/*'); + for (const t of e.manifest.files) F(o.accept, t, { cwd: f.LZ.root }); + } + return await (async function ( + e, + { hasExplicitFileList: t, globalList: r, ignoreList: n } + ) { + const i = [], + o = new C.n(e), + s = [[f.LZ.root, [n]]]; + for (; s.length > 0; ) { + const [e, n] = s.pop(), + A = await o.lstatPromise(e); + if (!M(e, { globalList: r, ignoreLists: A.isDirectory() ? null : n })) + if (A.isDirectory()) { + const i = await o.readdirPromise(e); + let A = !1, + a = !1; + if (!t || e !== f.LZ.root) + for (const e of i) (A = A || '.gitignore' === e), (a = a || '.npmignore' === e); + const c = a + ? await x(o, e, (0, f.Zu)('.npmignore')) + : A + ? await x(o, e, (0, f.Zu)('.gitignore')) + : null; + let u = null !== c ? [c].concat(n) : n; + M(e, { globalList: r, ignoreLists: n }) && + (u = [...n, { accept: [], reject: ['**/*'] }]); + for (const t of i) s.push([f.y1.resolve(e, t), u]); + } else i.push(f.y1.relative(f.LZ.root, e)); + } + return i.sort(); + })(e.cwd, { hasExplicitFileList: s, globalList: n, ignoreList: o }); + } + async function x(e, t, r) { + const n = { accept: [], reject: [] }, + i = await e.readFilePromise(f.y1.join(t, r), 'utf8'); + for (const e of i.split(/\n/g)) F(n.reject, e, { cwd: t }); + return n; + } + function F(e, t, { cwd: r }) { + const n = t.trim(); + '' !== n && + '#' !== n[0] && + e.push( + (function (e, { cwd: t }) { + const r = '!' === e[0]; + return ( + r && (e = e.slice(1)), + e.match(/\.{0,1}\//) && (e = f.y1.resolve(t, e)), + r && (e = '!' + e), + e + ); + })(n, { cwd: r }) + ); + } + function M(e, { globalList: t, ignoreLists: r }) { + if (N(e, t.accept)) return !1; + if (N(e, t.reject)) return !0; + if (null !== r) + for (const t of r) { + if (N(e, t.accept)) return !1; + if (N(e, t.reject)) return !0; + } + return !1; + } + function N(e, t) { + let r = t; + const n = []; + for (let e = 0; e < t.length; ++e) + '!' !== t[e][0] + ? r !== t && r.push(t[e]) + : (r === t && (r = t.slice(0, e)), n.push(t[e].slice(1))); + return !R(e, n) && !!R(e, r); + } + function R(e, t) { + let r = t; + const n = []; + for (let e = 0; e < t.length; ++e) + t[e].includes('/') + ? r !== t && r.push(t[e]) + : (r === t && (r = t.slice(0, e)), n.push(t[e])); + return ( + !!I().isMatch(e, r, { dot: !0, nocase: !0 }) || + !!I().isMatch(e, n, { dot: !0, basename: !0, nocase: !0 }) + ); + } + class K extends a.BaseCommand { + constructor() { + super(...arguments), (this.installIfNeeded = !1), (this.dryRun = !1), (this.json = !1); + } + async execute() { + const e = await c.VK.find(this.context.cwd, this.context.plugins), + { project: t, workspace: r } = await u.I.find(e, this.context.cwd); + if (!r) throw new a.WorkspaceRequiredError(t.cwd, this.context.cwd); + (await v(r)) && + (this.installIfNeeded + ? await t.install({ cache: await l.C.find(e), report: new h.$() }) + : await t.restoreInstallState()); + const n = + void 0 !== this.out + ? f.y1.resolve( + this.context.cwd, + (function (e, { workspace: t }) { + const r = e + .replace( + '%s', + (function (e) { + return null !== e.manifest.name + ? i.structUtils.slugifyIdent(e.manifest.name) + : 'package'; + })(t) + ) + .replace( + '%v', + (function (e) { + return null !== e.manifest.version ? e.manifest.version : 'unknown'; + })(t) + ); + return f.cS.toPortablePath(r); + })(this.out, { workspace: r }) + ) + : f.y1.resolve(r.cwd, 'package.tgz'); + return ( + await g.P.start( + { configuration: e, stdout: this.context.stdout, json: this.json }, + async (t) => { + await D(r, { report: t }, async () => { + t.reportJson({ base: r.cwd }); + const e = await k(r); + for (const r of e) t.reportInfo(null, r), t.reportJson({ location: r }); + if (!this.dryRun) { + const t = await b(r, e), + i = p.xfs.createWriteStream(n); + t.pipe(i), + await new Promise((e) => { + i.on('finish', e); + }); + } + }), + this.dryRun || + (t.reportInfo( + s.b.UNNAMED, + 'Package archive generated in ' + e.format(n, 'magenta') + ), + t.reportJson({ output: n })); + } + ) + ).exitCode(); + } + } + (K.usage = d.Command.Usage({ + description: 'generate a tarball from the active workspace', + details: + '\n This command will turn the active workspace into a compressed archive suitable for publishing. The archive will by default be stored at the root of the workspace (`package.tgz`).\n\n If the `--install-if-needed` flag is set Yarn will run a preliminary `yarn install` if the package contains build scripts.\n\n If the `-n,--dry-run` flag is set the command will just print the file paths without actually generating the package archive.\n\n If the `--json` flag is set the output will follow a JSON-stream output also known as NDJSON (https://github.com/ndjson/ndjson-spec).\n\n If the `-o,---out` is set the archive will be created at the specified path. The `%s` and `%v` variables can be used within the path and will be respectively replaced by the package name and version.\n ', + examples: [ + ['Create an archive from the active workspace', 'yarn pack'], + [ + "List the files that would be made part of the workspace's archive", + 'yarn pack --dry-run', + ], + [ + 'Name and output the archive in a dedicated folder', + 'yarn pack --out /artifacts/%s-%v.tgz', + ], + ], + })), + (0, A.gn)( + [d.Command.Boolean('--install-if-needed')], + K.prototype, + 'installIfNeeded', + void 0 + ), + (0, A.gn)([d.Command.Boolean('-n,--dry-run')], K.prototype, 'dryRun', void 0), + (0, A.gn)([d.Command.Boolean('--json')], K.prototype, 'json', void 0), + (0, A.gn)( + [d.Command.String('--filename', { hidden: !1 }), d.Command.String('-o,--out')], + K.prototype, + 'out', + void 0 + ), + (0, A.gn)([d.Command.Path('pack')], K.prototype, 'execute', null); + const L = ['dependencies', 'devDependencies', 'peerDependencies'], + T = { + hooks: { + beforeWorkspacePacking: (e, t) => { + t.publishConfig && + (t.publishConfig.main && (t.main = t.publishConfig.main), + t.publishConfig.browser && (t.browser = t.publishConfig.browser), + t.publishConfig.module && (t.module = t.publishConfig.module), + t.publishConfig.bin && (t.bin = t.publishConfig.bin)); + const r = e.project; + for (const n of L) + for (const A of e.manifest.getForScope(n).values()) { + const e = r.tryWorkspaceByDescriptor(A), + a = i.structUtils.parseRange(A.range); + if ('workspace:' === a.protocol) + if (null === e) { + if (null === r.tryWorkspaceByIdent(A)) + throw new o.lk( + s.b.WORKSPACE_NOT_FOUND, + i.structUtils.prettyDescriptor(r.configuration, A) + + ': No local workspace found for this range' + ); + } else { + let r; + (r = + i.structUtils.areDescriptorsEqual(A, e.anchoredDescriptor) || + '*' === a.selector + ? e.manifest.version + : a.selector), + (t[n][i.structUtils.stringifyIdent(A)] = r); + } + } + }, + }, + commands: [K], + }; + }, + 5698: (e, t, r) => { + 'use strict'; + r.r(t), r.d(t, { patchUtils: () => n, default: () => q }); + var n = {}; + r.r(n), + r.d(n, { + applyPatchFile: () => g, + diffFolders: () => L, + extractPackageToDisk: () => K, + isParentRequired: () => N, + loadPatchFiles: () => R, + makeDescriptor: () => x, + makeLocator: () => F, + parseDescriptor: () => b, + parseLocator: () => S, + parsePatchFile: () => B, + }); + var i = r(84132), + o = r(56537), + s = r(46009), + A = r(90739), + a = r(75448), + c = r(29486), + u = r(33720), + l = r(78420); + async function h(e, t, r) { + const n = await e.lstatPromise(t), + i = await r(); + if ((void 0 !== i && (t = i), e.lutimesPromise)) + await e.lutimesPromise(t, n.atime, n.mtime); + else { + if (n.isSymbolicLink()) throw new Error('Cannot preserve the time values of a symlink'); + await e.utimesPromise(t, n.atime, n.mtime); + } + } + async function g(e, { baseFs: t = new l.S(), dryRun: r = !1, version: n = null } = {}) { + for (const o of e) + if ( + null === o.semverExclusivity || + null === n || + i.semverUtils.satisfiesWithPrereleases(n, o.semverExclusivity) + ) + switch (o.type) { + case 'file deletion': + if (r) { + if (!t.existsSync(o.path)) + throw new Error("Trying to delete file that doesn't exist: " + o.path); + } else + await h(t, s.y1.dirname(o.path), async () => { + await t.unlinkPromise(o.path); + }); + break; + case 'rename': + if (r) { + if (!t.existsSync(o.fromPath)) + throw new Error("Trying to move file that doesn't exist: " + o.fromPath); + } else + await h(t, s.y1.dirname(o.fromPath), async () => { + await h(t, s.y1.dirname(o.toPath), async () => { + await h( + t, + o.fromPath, + async () => (await t.movePromise(o.fromPath, o.toPath), o.toPath) + ); + }); + }); + break; + case 'file creation': + if (r) { + if (t.existsSync(o.path)) + throw new Error('Trying to create file that already exists: ' + o.path); + } else { + const e = o.hunk + ? o.hunk.parts[0].lines.join('\n') + + (o.hunk.parts[0].noNewlineAtEndOfFile ? '' : '\n') + : ''; + await t.mkdirpPromise(s.y1.dirname(o.path), { + chmod: 493, + utimes: [315532800, 315532800], + }), + await t.writeFilePromise(o.path, e, { mode: o.mode }), + await t.utimesPromise(o.path, 315532800, 315532800); + } + break; + case 'patch': + await h(t, o.path, async () => { + await d(o, { baseFs: t, dryRun: r }); + }); + break; + case 'mode change': + { + const e = (await t.statPromise(o.path)).mode; + if (f(o.newMode) !== f(e)) continue; + await h(t, o.path, async () => { + await t.chmodPromise(o.path, o.newMode); + }); + } + break; + default: + i.miscUtils.assertNever(o); + } + } + function f(e) { + return (64 & e) > 0; + } + function p(e) { + return e.replace(/\s+$/, ''); + } + async function d({ hunks: e, path: t }, { baseFs: r, dryRun: n = !1 }) { + const o = await r.statSync(t).mode, + s = (await r.readFileSync(t, 'utf8')).split(/\n/), + A = []; + let a = 0, + c = 0; + for (const t of e) { + const r = Math.max(c, t.header.patched.start + a), + n = Math.max(0, r - c), + i = Math.max(0, s.length - r - t.header.original.length), + o = Math.max(n, i); + let u = 0, + l = 0, + h = null; + for (; u <= o; ) { + if (u <= n && ((l = r - u), (h = C(t, s, l)), null !== h)) { + u = -u; + break; + } + if (u <= i && ((l = r + u), (h = C(t, s, l)), null !== h)) break; + u += 1; + } + if (null === h) throw new Error('Cannot apply hunk #' + (e.indexOf(t) + 1)); + A.push(h), (a += u), (c = l + t.header.original.length); + } + if (n) return; + let u = 0; + for (const e of A) + for (const t of e) + switch (t.type) { + case 'splice': + { + const e = t.index + u; + s.splice(e, t.numToDelete, ...t.linesToInsert), + (u += t.linesToInsert.length - t.numToDelete); + } + break; + case 'pop': + s.pop(); + break; + case 'push': + s.push(t.line); + break; + default: + i.miscUtils.assertNever(t); + } + await r.writeFilePromise(t, s.join('\n'), { mode: o }); + } + function C(e, t, r) { + const n = []; + for (const s of e.parts) + switch (s.type) { + case 'deletion': + case 'context': + for (const e of s.lines) { + const n = t[r]; + if (null == n || ((o = e), p(n) !== p(o))) return null; + r += 1; + } + 'deletion' === s.type && + (n.push({ + type: 'splice', + index: r - s.lines.length, + numToDelete: s.lines.length, + linesToInsert: [], + }), + s.noNewlineAtEndOfFile && n.push({ type: 'push', line: '' })); + break; + case 'insertion': + n.push({ type: 'splice', index: r, numToDelete: 0, linesToInsert: s.lines }), + s.noNewlineAtEndOfFile && n.push({ type: 'pop' }); + break; + default: + i.miscUtils.assertNever(s.type); + } + var o; + return n; + } + const E = /^@@ -(\d+)(,(\d+))? \+(\d+)(,(\d+))? @@.*/; + function I(e) { + return s.y1.relative(s.LZ.root, s.y1.resolve(s.LZ.root, s.cS.toPortablePath(e))); + } + function m(e) { + const t = e.trim().match(E); + if (!t) throw new Error(`Bad header line: '${e}'`); + return { + original: { start: Math.max(Number(t[1]), 1), length: Number(t[3] || 1) }, + patched: { start: Math.max(Number(t[4]), 1), length: Number(t[6] || 1) }, + }; + } + const y = { + '@': 'header', + '-': 'deletion', + '+': 'insertion', + ' ': 'context', + '\\': 'pragma', + undefined: 'context', + }; + function w(e) { + const t = 511 & parseInt(e, 8); + if (420 !== t && 493 !== t) throw new Error('Unexpected file mode string: ' + e); + return t; + } + function B(e) { + const t = e.split(/\n/g); + return ( + '' === t[t.length - 1] && t.pop(), + (function (e) { + const t = []; + for (const r of e) { + const { + semverExclusivity: e, + diffLineFromPath: n, + diffLineToPath: o, + oldMode: s, + newMode: A, + deletedFileMode: a, + newFileMode: c, + renameFrom: u, + renameTo: l, + beforeHash: h, + afterHash: g, + fromPath: f, + toPath: p, + hunks: d, + } = r, + C = u + ? 'rename' + : a + ? 'file deletion' + : c + ? 'file creation' + : d && d.length > 0 + ? 'patch' + : 'mode change'; + let E = null; + switch (C) { + case 'rename': + if (!u || !l) throw new Error('Bad parser state: rename from & to not given'); + t.push({ type: 'rename', semverExclusivity: e, fromPath: I(u), toPath: I(l) }), + (E = l); + break; + case 'file deletion': + { + const r = n || f; + if (!r) throw new Error('Bad parse state: no path given for file deletion'); + t.push({ + type: 'file deletion', + semverExclusivity: e, + hunk: (d && d[0]) || null, + path: I(r), + mode: w(a), + hash: h, + }); + } + break; + case 'file creation': + { + const r = o || p; + if (!r) throw new Error('Bad parse state: no path given for file creation'); + t.push({ + type: 'file creation', + semverExclusivity: e, + hunk: (d && d[0]) || null, + path: I(r), + mode: w(c), + hash: g, + }); + } + break; + case 'patch': + case 'mode change': + E = p || o; + break; + default: + i.miscUtils.assertNever(C); + } + E && + s && + A && + s !== A && + t.push({ + type: 'mode change', + semverExclusivity: e, + path: I(E), + oldMode: w(s), + newMode: w(A), + }), + E && + d && + d.length && + t.push({ + type: 'patch', + semverExclusivity: e, + path: I(E), + hunks: d, + beforeHash: h, + afterHash: g, + }); + } + return t; + })( + (function (e) { + const t = []; + let r = { + semverExclusivity: null, + diffLineFromPath: null, + diffLineToPath: null, + oldMode: null, + newMode: null, + deletedFileMode: null, + newFileMode: null, + renameFrom: null, + renameTo: null, + beforeHash: null, + afterHash: null, + fromPath: null, + toPath: null, + hunks: null, + }, + n = 'parsing header', + o = null, + s = null; + function A() { + o && (s && (o.parts.push(s), (s = null)), r.hunks.push(o), (o = null)); + } + function a() { + A(), + t.push(r), + (r = { + semverExclusivity: null, + diffLineFromPath: null, + diffLineToPath: null, + oldMode: null, + newMode: null, + deletedFileMode: null, + newFileMode: null, + renameFrom: null, + renameTo: null, + beforeHash: null, + afterHash: null, + fromPath: null, + toPath: null, + hunks: null, + }); + } + for (let t = 0; t < e.length; t++) { + const c = e[t]; + if ('parsing header' === n) + if (c.startsWith('@@')) (n = 'parsing hunks'), (r.hunks = []), (t -= 1); + else if (c.startsWith('diff --git ')) { + r && r.diffLineFromPath && a(); + const e = c.match(/^diff --git a\/(.*?) b\/(.*?)\s*$/); + if (!e) throw new Error('Bad diff line: ' + c); + (r.diffLineFromPath = e[1]), (r.diffLineToPath = e[2]); + } else if (c.startsWith('old mode ')) + r.oldMode = c.slice('old mode '.length).trim(); + else if (c.startsWith('new mode ')) + r.newMode = c.slice('new mode '.length).trim(); + else if (c.startsWith('deleted file mode ')) + r.deletedFileMode = c.slice('deleted file mode '.length).trim(); + else if (c.startsWith('new file mode ')) + r.newFileMode = c.slice('new file mode '.length).trim(); + else if (c.startsWith('rename from ')) + r.renameFrom = c.slice('rename from '.length).trim(); + else if (c.startsWith('rename to ')) + r.renameTo = c.slice('rename to '.length).trim(); + else if (c.startsWith('index ')) { + const e = c.match(/(\w+)\.\.(\w+)/); + if (!e) continue; + (r.beforeHash = e[1]), (r.afterHash = e[2]); + } else + c.startsWith('semver exclusivity ') + ? (r.semverExclusivity = c.slice('semver exclusivity '.length).trim()) + : c.startsWith('--- ') + ? (r.fromPath = c.slice('--- a/'.length).trim()) + : c.startsWith('+++ ') && (r.toPath = c.slice('+++ b/'.length).trim()); + else { + const e = y[c[0]] || null; + switch (e) { + case 'header': + A(), (o = { header: m(c), parts: [] }); + break; + case null: + (n = 'parsing header'), a(), (t -= 1); + break; + case 'pragma': + if (!c.startsWith('\\ No newline at end of file')) + throw new Error('Unrecognized pragma in patch file: ' + c); + if (!s) + throw new Error( + 'Bad parser state: No newline at EOF pragma encountered without context' + ); + s.noNewlineAtEndOfFile = !0; + break; + case 'insertion': + case 'deletion': + case 'context': + if (!o) + throw new Error( + 'Bad parser state: Hunk lines encountered before hunk header' + ); + s && s.type !== e && (o.parts.push(s), (s = null)), + s || (s = { type: e, lines: [], noNewlineAtEndOfFile: !1 }), + s.lines.push(c.slice(1)); + break; + default: + i.miscUtils.assertNever(e); + } + } + } + a(); + for (const { hunks: e } of t) if (e) for (const t of e) Q(t); + return t; + })(t) + ) + ); + } + function Q(e) { + let t = 0, + r = 0; + for (const { type: n, lines: o } of e.parts) + switch (n) { + case 'context': + (r += o.length), (t += o.length); + break; + case 'deletion': + t += o.length; + break; + case 'insertion': + r += o.length; + break; + default: + i.miscUtils.assertNever(n); + } + if (t !== e.header.original.length || r !== e.header.patched.length) { + const n = (e) => (e < 0 ? e : '+' + e); + throw new Error( + `hunk header integrity check failed (expected @@ ${n(e.header.original.length)} ${n( + e.header.patched.length + )} @@, got @@ ${n(t)} ${n(r)} @@)` + ); + } + } + const v = /^builtin<([^>]+)>$/; + function D(e, t) { + const { source: r, selector: n, params: o } = i.structUtils.parseRange(e); + if (null === r) throw new Error('Patch locators must explicitly define their source'); + const A = n ? n.split(/&/).map((e) => s.cS.toPortablePath(e)) : [], + a = o && 'string' == typeof o.locator ? i.structUtils.parseLocator(o.locator) : null, + c = o && 'string' == typeof o.version ? o.version : null; + return { parentLocator: a, sourceItem: t(r), patchPaths: A, sourceVersion: c }; + } + function b(e) { + const { sourceItem: t, ...r } = D(e.range, i.structUtils.parseDescriptor); + return { ...r, sourceDescriptor: t }; + } + function S(e) { + const { sourceItem: t, ...r } = D(e.reference, i.structUtils.parseLocator); + return { ...r, sourceLocator: t }; + } + function k( + { parentLocator: e, sourceItem: t, patchPaths: r, sourceVersion: n, patchHash: o }, + s + ) { + const A = null !== e ? { locator: i.structUtils.stringifyLocator(e) } : {}, + a = void 0 !== n ? { version: n } : {}, + c = void 0 !== o ? { hash: o } : {}; + return i.structUtils.makeRange({ + protocol: 'patch:', + source: s(t), + selector: r.join('&'), + params: { ...a, ...c, ...A }, + }); + } + function x(e, { parentLocator: t, sourceDescriptor: r, patchPaths: n }) { + return i.structUtils.makeLocator( + e, + k({ parentLocator: t, sourceItem: r, patchPaths: n }, i.structUtils.stringifyDescriptor) + ); + } + function F(e, { parentLocator: t, sourcePackage: r, patchPaths: n, patchHash: o }) { + return i.structUtils.makeLocator( + e, + k( + { + parentLocator: t, + sourceItem: r, + sourceVersion: r.version, + patchPaths: n, + patchHash: o, + }, + i.structUtils.stringifyLocator + ) + ); + } + function M({ onAbsolute: e, onRelative: t, onBuiltin: r }, n) { + const i = n.match(v); + return null !== i ? r(i[1]) : s.y1.isAbsolute(n) ? e(n) : t(n); + } + function N(e) { + return M({ onAbsolute: () => !1, onRelative: () => !0, onBuiltin: () => !1 }, e); + } + async function R(e, t, r) { + const n = null !== e ? await r.fetcher.fetch(e, r) : null, + A = + n && n.localPath + ? { + packageFs: new a.M(s.LZ.root), + prefixPath: s.y1.relative(s.LZ.root, n.localPath), + } + : n; + n && n !== A && n.releaseFs && n.releaseFs(); + return ( + await i.miscUtils.releaseAfterUseAsync( + async () => + await Promise.all( + t.map(async (e) => + M( + { + onAbsolute: async () => await o.xfs.readFilePromise(e, 'utf8'), + onRelative: async () => { + if (null === n) + throw new Error( + 'Assertion failed: The parent locator should have been fetched' + ); + return await n.packageFs.readFilePromise(e, 'utf8'); + }, + onBuiltin: async (e) => + await r.project.configuration.firstHook( + (e) => e.getBuiltinPatch, + r.project, + e + ), + }, + e + ) + ) + ) + ) + ).map((e) => ('string' == typeof e ? e.replace(/\r\n?/g, '\n') : e)); + } + async function K(e, { cache: t, project: r }) { + const n = r.storedChecksums, + A = new u.$(), + a = r.configuration.makeFetcher(), + c = await a.fetch(e, { cache: t, project: r, fetcher: a, checksums: n, report: A }), + l = await o.xfs.mktempPromise(); + return ( + await o.xfs.copyPromise(l, c.prefixPath, { baseFs: c.packageFs }), + await o.xfs.writeJsonPromise(s.y1.join(l, '.yarn-patch.json'), { + locator: i.structUtils.stringifyLocator(e), + }), + o.xfs.detachTemp(l), + l + ); + } + async function L(e, t) { + const r = s.cS.fromPortablePath(e).replace(/\\/g, '/'), + n = s.cS.fromPortablePath(t).replace(/\\/g, '/'), + { stdout: o } = await i.execUtils.execvp( + 'git', + [ + 'diff', + '--src-prefix=a/', + '--dst-prefix=b/', + '--ignore-cr-at-eol', + '--full-index', + '--no-index', + r, + n, + ], + { cwd: s.cS.toPortablePath(process.cwd()) } + ), + A = r.startsWith('/') ? (e) => e.slice(1) : (e) => e; + return o + .replace(new RegExp(`(a|b)(${i.miscUtils.escapeRegExp(`/${A(r)}/`)})`, 'g'), '$1/') + .replace(new RegExp('(a|b)' + i.miscUtils.escapeRegExp(`/${A(n)}/`), 'g'), '$1/') + .replace(new RegExp(i.miscUtils.escapeRegExp(r + '/'), 'g'), '') + .replace(new RegExp(i.miscUtils.escapeRegExp(n + '/'), 'g'), ''); + } + var T = r(36370), + P = r(95397), + U = r(27122), + _ = r(40376), + O = r(28148), + j = r(17278); + class Y extends P.BaseCommand { + async execute() { + const e = await U.VK.find(this.context.cwd, this.context.plugins), + { project: t, workspace: r } = await _.I.find(e, this.context.cwd), + n = await O.C.find(e); + if (!r) throw new P.WorkspaceRequiredError(t.cwd, this.context.cwd); + await t.restoreInstallState(); + const A = s.y1.resolve(this.context.cwd, s.cS.toPortablePath(this.patchFolder)), + a = s.y1.join(A, '.yarn-patch.json'); + if (!o.xfs.existsSync(a)) + throw new j.UsageError("The argument folder didn't get created by 'yarn patch'"); + const c = await o.xfs.readJsonPromise(a), + u = i.structUtils.parseLocator(c.locator, !0); + if (!t.storedPackages.has(u.locatorHash)) + throw new j.UsageError('No package found in the project for the given locator'); + const l = await K(u, { cache: n, project: t }); + this.context.stdout.write(await L(l, A)); + } + } + (Y.usage = j.Command.Usage({ + description: + '\n This will turn the folder passed in parameter into a patchfile suitable for consumption with the `patch:` protocol.\n\n Only folders generated through `yarn patch` are accepted as valid input for `yarn patch-commit`.\n ', + })), + (0, T.gn)([j.Command.String()], Y.prototype, 'patchFolder', void 0), + (0, T.gn)([j.Command.Path('patch-commit')], Y.prototype, 'execute', null); + var G = r(15815), + J = r(92659); + class H extends P.BaseCommand { + async execute() { + const e = await U.VK.find(this.context.cwd, this.context.plugins), + { project: t, workspace: r } = await _.I.find(e, this.context.cwd), + n = await O.C.find(e); + if (!r) throw new P.WorkspaceRequiredError(t.cwd, this.context.cwd); + await t.restoreInstallState(); + let o = i.structUtils.parseLocator(this.package); + if ('unknown' === o.reference) { + const r = i.miscUtils.mapAndFilter([...t.storedPackages.values()], (e) => + e.identHash !== o.identHash || i.structUtils.isVirtualLocator(e) + ? i.miscUtils.mapAndFilter.skip + : e + ); + if (0 === r.length) + throw new j.UsageError('No package found in the project for the given locator'); + if (r.length > 1) + throw new j.UsageError( + 'Multiple candidate packages found; explicitly choose one of them (use `yarn why ` to get more information as to who depends on them):\n' + + r.map((t) => '\n- ' + i.structUtils.prettyLocator(e, t)).join('') + ); + o = r[0]; + } + if (!t.storedPackages.has(o.locatorHash)) + throw new j.UsageError('No package found in the project for the given locator'); + await G.P.start({ configuration: e, stdout: this.context.stdout }, async (r) => { + const A = await K(o, { cache: n, project: t }); + r.reportInfo( + J.b.UNNAMED, + `Package ${i.structUtils.prettyLocator(e, o)} got extracted with success!` + ), + r.reportInfo( + J.b.UNNAMED, + 'You can now edit the following folder: ' + + e.format(s.cS.fromPortablePath(A), 'magenta') + ), + r.reportInfo( + J.b.UNNAMED, + `Once you are done run ${e.format( + 'yarn patch-commit ' + s.cS.fromPortablePath(A), + 'cyan' + )} and Yarn will store a patchfile based on your changes.` + ); + }); + } + } + (H.usage = j.Command.Usage({ + description: + '\n This command will cause a package to be extracted in a temporary directory (under a folder named "patch-workdir"). This folder will be editable at will; running `yarn patch` inside it will then cause Yarn to generate a patchfile and register it into your top-level manifest (cf the `patch:` protocol).\n ', + })), + (0, T.gn)([j.Command.String()], H.prototype, 'package', void 0), + (0, T.gn)([j.Command.Path('patch')], H.prototype, 'execute', null); + const q = { + commands: [Y, H], + fetchers: [ + class { + supports(e, t) { + return !!e.reference.startsWith('patch:'); + } + getLocalPath(e, t) { + return null; + } + async fetch(e, t) { + const r = t.checksums.get(e.locatorHash) || null, + [n, o, s] = await t.cache.fetchPackageFromCache(e, r, { + onHit: () => t.report.reportCacheHit(e), + onMiss: () => + t.report.reportCacheMiss( + e, + i.structUtils.prettyLocator(t.project.configuration, e) + + " can't be found in the cache and will be fetched from the disk" + ), + loader: () => this.patchPackage(e, t), + skipIntegrityCheck: t.skipIntegrityCheck, + }); + return { + packageFs: n, + releaseFs: o, + prefixPath: i.structUtils.getIdentVendorPath(e), + localPath: this.getLocalPath(e, t), + checksum: s, + }; + } + async patchPackage(e, t) { + const { parentLocator: r, sourceLocator: n, sourceVersion: u, patchPaths: l } = S( + e + ), + h = await R(r, l, t), + f = await o.xfs.mktempPromise(), + p = s.y1.join(f, 'patched.zip'), + d = await t.fetcher.fetch(n, t), + C = i.structUtils.getIdentVendorPath(e), + E = await (0, c.getLibzipPromise)(), + I = new A.d(p, { + libzip: E, + create: !0, + level: t.project.configuration.get('compressionLevel'), + }); + await I.mkdirpPromise(C), + await i.miscUtils.releaseAfterUseAsync(async () => { + await I.copyPromise(C, d.prefixPath, { baseFs: d.packageFs, stableSort: !0 }); + }, d.releaseFs), + I.saveAndClose(); + const m = new A.d(p, { + libzip: E, + level: t.project.configuration.get('compressionLevel'), + }), + y = new a.M(s.y1.resolve(s.LZ.root, C), { baseFs: m }); + for (const e of h) null !== e && (await g(B(e), { baseFs: y, version: u })); + return m; + } + }, + ], + resolvers: [ + class { + supportsDescriptor(e, t) { + return !!e.range.startsWith('patch:'); + } + supportsLocator(e, t) { + return !!e.reference.startsWith('patch:'); + } + shouldPersistResolution(e, t) { + return !1; + } + bindDescriptor(e, t, r) { + const { patchPaths: n } = b(e); + return n.every((e) => !N(e)) + ? e + : i.structUtils.bindDescriptor(e, { locator: i.structUtils.stringifyLocator(t) }); + } + getResolutionDependencies(e, t) { + const { sourceDescriptor: r } = b(e); + return [r]; + } + async getCandidates(e, t, r) { + if (!r.fetchOptions) + throw new Error( + 'Assertion failed: This resolver cannot be used unless a fetcher is configured' + ); + const { parentLocator: n, sourceDescriptor: o, patchPaths: s } = b(e), + A = await R(n, s, r.fetchOptions), + a = t.get(o.descriptorHash); + if (void 0 === a) + throw new Error('Assertion failed: The dependency should have been resolved'); + return [ + F(e, { + parentLocator: n, + sourcePackage: a, + patchPaths: s, + patchHash: i.hashUtils.makeHash('2', ...A).slice(0, 6), + }), + ]; + } + async resolve(e, t) { + const { sourceLocator: r } = S(e); + return { ...(await t.resolver.resolve(r, t)), ...e }; + } + }, + ], + }; + }, + 5780: (e, t, r) => { + 'use strict'; + r.r(t), + r.d(t, { + getPnpPath: () => b, + quotePathIfNeeded: () => S, + AbstractPnpInstaller: () => d, + PnpInstaller: () => m, + PnpLinker: () => I, + default: () => k, + }); + var n = r(27122), + i = r(46009), + o = r(56537), + s = r(53887), + A = r.n(s), + a = r(92659), + c = r(92409), + u = r(84132), + l = r(75448), + h = r(88563), + g = r(17278), + f = r(46611), + p = r(32485); + class d { + constructor(e) { + (this.opts = e), + (this.packageRegistry = new Map()), + (this.blacklistedPaths = new Set()), + (this.opts = e); + } + checkAndReportManifestIncompatibility(e, t) { + return e && !e.isCompatibleWithOS(process.platform) + ? (this.opts.report.reportWarningOnce( + a.b.INCOMPATIBLE_OS, + `${u.structUtils.prettyLocator( + this.opts.project.configuration, + t + )} The platform ${process.platform} is incompatible with this module, ${ + this.opts.skipIncompatiblePackageLinking ? 'linking' : 'building' + } skipped.` + ), + !1) + : !(e && !e.isCompatibleWithCPU(process.arch)) || + (this.opts.report.reportWarningOnce( + a.b.INCOMPATIBLE_CPU, + `${u.structUtils.prettyLocator( + this.opts.project.configuration, + t + )} The CPU architecture ${process.arch} is incompatible with this module, ${ + this.opts.skipIncompatiblePackageLinking ? 'linking' : 'building' + } skipped.` + ), + !1); + } + async installPackage(e, t) { + const r = u.structUtils.requirableIdent(e), + n = e.reference, + o = + e.peerDependencies.size > 0 && + !u.structUtils.isVirtualLocator(e) && + !this.opts.project.tryWorkspaceByLocator(e), + s = + !o || this.opts.skipIncompatiblePackageLinking + ? await f.G.tryFind(t.prefixPath, { baseFs: t.packageFs }) + : null, + A = this.checkAndReportManifestIncompatibility(s, e); + if (this.opts.skipIncompatiblePackageLinking && !A) + return { packageLocation: null, buildDirective: null }; + const c = o ? [] : await this.getBuildScripts(e, s, t); + c.length > 0 && + !this.opts.project.configuration.get('enableScripts') && + (this.opts.report.reportWarningOnce( + a.b.DISABLED_BUILD_SCRIPTS, + u.structUtils.prettyLocator(this.opts.project.configuration, e) + + ' lists build scripts, but all build scripts have been disabled.' + ), + (c.length = 0)), + c.length > 0 && + e.linkType !== p.U.HARD && + !this.opts.project.tryWorkspaceByLocator(e) && + (this.opts.report.reportWarningOnce( + a.b.SOFT_LINK_BUILD, + u.structUtils.prettyLocator(this.opts.project.configuration, e) + + " lists build scripts, but is referenced through a soft link. Soft links don't support build scripts, so they'll be ignored." + ), + (c.length = 0)); + const l = this.opts.project.getDependencyMeta(e, e.version); + c.length > 0 && + l && + !1 === l.built && + (this.opts.report.reportInfoOnce( + a.b.BUILD_DISABLED, + u.structUtils.prettyLocator(this.opts.project.configuration, e) + + ' lists build scripts, but its build has been explicitly disabled through configuration.' + ), + (c.length = 0)); + const h = + o || e.linkType === p.U.SOFT + ? t.packageFs + : await this.transformPackage(e, s, t, l, { hasBuildScripts: c.length > 0 }); + if (i.y1.isAbsolute(t.prefixPath)) + throw new Error( + `Assertion failed: Expected the prefix path (${t.prefixPath}) to be relative to the parent` + ); + const g = i.y1.resolve(h.getRealPath(), t.prefixPath), + d = this.normalizeDirectoryPath(g), + C = new Map(), + E = new Set(); + if (u.structUtils.isVirtualLocator(e)) + for (const t of e.peerDependencies.values()) + C.set(u.structUtils.requirableIdent(t), null), + E.add(u.structUtils.stringifyIdent(t)); + return ( + u.miscUtils + .getMapWithDefault(this.packageRegistry, r) + .set(n, { + packageLocation: d, + packageDependencies: C, + packagePeers: E, + linkType: e.linkType, + discardFromLookup: t.discardFromLookup || !1, + }), + o && this.blacklistedPaths.add(d), + { packageLocation: g, buildDirective: c.length > 0 && A ? c : null } + ); + } + async attachInternalDependencies(e, t) { + const r = this.getPackageInformation(e); + for (const [e, n] of t) { + const t = u.structUtils.areIdentsEqual(e, n) + ? n.reference + : [u.structUtils.requirableIdent(n), n.reference]; + r.packageDependencies.set(u.structUtils.requirableIdent(e), t); + } + } + async attachExternalDependents(e, t) { + for (const r of t) { + this.getDiskInformation(r).packageDependencies.set( + u.structUtils.requirableIdent(e), + e.reference + ); + } + } + async finalizeInstall() { + this.trimBlacklistedPackages(), + this.packageRegistry.set( + null, + new Map([ + [ + null, + this.getPackageInformation(this.opts.project.topLevelWorkspace.anchoredLocator), + ], + ]) + ); + const e = this.opts.project.configuration.get('pnpFallbackMode'), + t = this.blacklistedPaths, + r = this.opts.project.workspaces.map(({ anchoredLocator: e }) => ({ + name: u.structUtils.requirableIdent(e), + reference: e.reference, + })), + n = 'none' !== e, + i = [], + o = this.getPackageInformation(this.opts.project.topLevelWorkspace.anchoredLocator) + .packageDependencies, + s = u.miscUtils.buildIgnorePattern([ + '.yarn/sdks/**', + ...this.opts.project.configuration.get('pnpIgnorePatterns'), + ]), + A = this.packageRegistry, + a = this.opts.project.configuration.get('pnpShebang'); + if ('dependencies-only' === e) + for (const e of this.opts.project.storedPackages.values()) + this.opts.project.tryWorkspaceByLocator(e) && + i.push({ name: u.structUtils.requirableIdent(e), reference: e.reference }); + return await this.finalizeInstallWithPnp({ + blacklistedLocations: t, + dependencyTreeRoots: r, + enableTopLevelFallback: n, + fallbackExclusionList: i, + fallbackPool: o, + ignorePattern: s, + packageRegistry: A, + shebang: a, + }); + } + getPackageInformation(e) { + const t = u.structUtils.requirableIdent(e), + r = e.reference, + n = this.packageRegistry.get(t); + if (!n) + throw new Error( + `Assertion failed: The package information store should have been available (for ${u.structUtils.prettyIdent( + this.opts.project.configuration, + e + )})` + ); + const i = n.get(r); + if (!i) + throw new Error( + `Assertion failed: The package information should have been available (for ${u.structUtils.prettyLocator( + this.opts.project.configuration, + e + )})` + ); + return i; + } + getDiskInformation(e) { + const t = u.miscUtils.getMapWithDefault(this.packageRegistry, '@@disk'), + r = this.normalizeDirectoryPath(e); + return u.miscUtils.getFactoryWithDefault(t, r, () => ({ + packageLocation: r, + packageDependencies: new Map(), + packagePeers: new Set(), + linkType: p.U.SOFT, + discardFromLookup: !1, + })); + } + trimBlacklistedPackages() { + for (const e of this.packageRegistry.values()) + for (const [t, r] of e) + r.packageLocation && this.blacklistedPaths.has(r.packageLocation) && e.delete(t); + } + normalizeDirectoryPath(e) { + let t = i.y1.relative(this.opts.project.cwd, e); + return t.match(/^\.{0,2}\//) || (t = './' + t), t.replace(/\/?$/, '/'); + } + } + const C = new Set([ + u.structUtils.makeIdent(null, 'nan').identHash, + u.structUtils.makeIdent(null, 'node-gyp').identHash, + u.structUtils.makeIdent(null, 'node-pre-gyp').identHash, + u.structUtils.makeIdent(null, 'node-addon-api').identHash, + u.structUtils.makeIdent(null, 'fsevents').identHash, + ]), + E = new Set(['.exe', '.h', '.hh', '.hpp', '.c', '.cc', '.cpp', '.java', '.jar', '.node']); + class I { + constructor() { + this.mode = 'strict'; + } + supportsPackage(e, t) { + return ( + 'pnp' === t.project.configuration.get('nodeLinker') && + t.project.configuration.get('pnpMode') === this.mode + ); + } + async findPackageLocation(e, t) { + const r = b(t.project).main; + if (!o.xfs.existsSync(r)) + throw new g.UsageError( + `The project in ${t.project.cwd}/package.json doesn't seem to have been installed - running an install there might help` + ); + const n = u.miscUtils.dynamicRequireNoCache(r), + s = { name: u.structUtils.requirableIdent(e), reference: e.reference }, + A = n.getPackageInformation(s); + if (!A) + throw new g.UsageError( + `Couldn't find ${u.structUtils.prettyLocator( + t.project.configuration, + e + )} in the currently installed PnP map - running an install might help` + ); + return i.cS.toPortablePath(A.packageLocation); + } + async findPackageLocator(e, t) { + const n = b(t.project).main; + if (!o.xfs.existsSync(n)) return null; + const s = i.cS.fromPortablePath(n), + A = u.miscUtils.dynamicRequire(s); + delete r.c[s]; + const a = A.findPackageLocator(i.cS.fromPortablePath(e)); + return a + ? u.structUtils.makeLocator(u.structUtils.parseIdent(a.name), a.reference) + : null; + } + makeInstaller(e) { + return new m(e); + } + } + class m extends d { + constructor() { + super(...arguments), (this.mode = 'strict'), (this.unpluggedPaths = new Set()); + } + async getBuildScripts(e, t, r) { + if (null === t) return []; + const n = []; + for (const e of ['preinstall', 'install', 'postinstall']) + t.scripts.has(e) && n.push([c.k.SCRIPT, e]); + const o = i.y1.join(r.prefixPath, (0, i.Zu)('binding.gyp')); + return ( + !t.scripts.has('install') && + r.packageFs.existsSync(o) && + n.push([c.k.SHELLCODE, 'node-gyp rebuild']), + n + ); + } + async transformPackage(e, t, r, n, { hasBuildScripts: i }) { + return this.isUnplugged(e, t, r, n, { hasBuildScripts: i }) + ? this.unplugPackage(e, r.packageFs) + : r.packageFs; + } + async finalizeInstallWithPnp(e) { + if (this.opts.project.configuration.get('pnpMode') !== this.mode) return; + const t = b(this.opts.project), + r = this.opts.project.configuration.get('pnpDataPath'); + if ( + (await o.xfs.removePromise(t.other), + 'pnp' !== this.opts.project.configuration.get('nodeLinker')) + ) + return await o.xfs.removePromise(t.main), void (await o.xfs.removePromise(r)); + const n = await this.locateNodeModules(); + if (n.length > 0) { + this.opts.report.reportWarning( + a.b.DANGEROUS_NODE_MODULES, + 'One or more node_modules have been detected and will be removed. This operation may take some time.' + ); + for (const e of n) await o.xfs.removePromise(e); + } + if (this.opts.project.configuration.get('pnpEnableInlining')) { + const n = (0, h.gY)(e); + await o.xfs.changeFilePromise(t.main, n, { automaticNewlines: !0 }), + await o.xfs.chmodPromise(t.main, 493), + await o.xfs.removePromise(r); + } else { + const n = i.y1.relative(i.y1.dirname(t.main), r), + { dataFile: s, loaderFile: A } = (0, h.Q$)({ ...e, dataLocation: n }); + await o.xfs.changeFilePromise(t.main, A, { automaticNewlines: !0 }), + await o.xfs.chmodPromise(t.main, 493), + await o.xfs.changeFilePromise(r, s, { automaticNewlines: !0 }), + await o.xfs.chmodPromise(r, 420); + } + const s = this.opts.project.configuration.get('pnpUnpluggedFolder'); + if (0 === this.unpluggedPaths.size) await o.xfs.removePromise(s); + else + for (const e of await o.xfs.readdirPromise(s)) { + const t = i.y1.resolve(s, e); + this.unpluggedPaths.has(t) || (await o.xfs.removePromise(t)); + } + } + async locateNodeModules() { + const e = []; + for (const t of this.opts.project.workspaces) { + const r = i.y1.join(t.cwd, (0, i.Zu)('node_modules')); + if (!o.xfs.existsSync(r)) continue; + const n = await o.xfs.readdirPromise(r, { withFileTypes: !0 }), + s = n.filter( + (e) => !e.isDirectory() || '.bin' === e.name || !e.name.startsWith('.') + ); + if (s.length === n.length) e.push(r); + else for (const t of s) e.push(i.y1.join(r, t.name)); + } + return e; + } + getUnpluggedPath(e) { + return i.y1.resolve( + this.opts.project.configuration.get('pnpUnpluggedFolder'), + u.structUtils.slugifyLocator(e) + ); + } + async unplugPackage(e, t) { + const r = this.getUnpluggedPath(e); + return ( + this.unpluggedPaths.add(r), + await o.xfs.mkdirpPromise(r), + await o.xfs.copyPromise(r, i.LZ.dot, { baseFs: t, overwrite: !1 }), + new l.M(r) + ); + } + isUnplugged(e, t, r, n, { hasBuildScripts: i }) { + return void 0 !== n.unplugged + ? n.unplugged + : !!C.has(e.identHash) || + (null !== t && null !== t.preferUnplugged + ? t.preferUnplugged + : !(!i && !r.packageFs.getExtractHint({ relevantExtensions: E }))); + } + } + var y = r(36370), + w = r(95397), + B = r(40376), + Q = r(28148), + v = r(15815); + class D extends w.BaseCommand { + constructor() { + super(...arguments), (this.patterns = []); + } + async execute() { + const e = await n.VK.find(this.context.cwd, this.context.plugins), + { project: t, workspace: r } = await B.I.find(e, this.context.cwd), + i = await Q.C.find(e); + if (!r) throw new w.WorkspaceRequiredError(t.cwd, this.context.cwd); + const o = t.topLevelWorkspace; + for (const e of this.patterns) { + const t = u.structUtils.parseDescriptor(e); + o.manifest.ensureDependencyMeta(t).unplugged = !0; + } + await o.persistManifest(); + return ( + await v.P.start({ configuration: e, stdout: this.context.stdout }, async (e) => { + await t.install({ cache: i, report: e }); + }) + ).exitCode(); + } + } + (D.usage = g.Command.Usage({ + description: 'force the unpacking of a list of packages', + details: + "\n This command will add the specified selectors to the list of packages that must be unplugged when installed.\n\n A package being unplugged means that instead of being referenced directly through its archive, it will be unpacked at install time in the directory configured via `virtualFolder`.\n\n Unpacking a package isn't advised as a general tool because it makes it harder to store your packages within the repository. However, it's a good approach to quickly and safely debug some packages, and can even sometimes be required depending on the context (for example when the package contains shellscripts).\n\n The unplug command sets a flag that's persisted in your top-level `package.json` through the `dependenciesMeta` field. As such, to undo its effects, just revert the changes made to the manifest and run `yarn install`.\n ", + examples: [ + ['Unplug lodash', 'yarn unplug lodash'], + ['Unplug one specific version of lodash', 'yarn unplug lodash@1.2.3'], + ], + })), + (0, y.gn)([g.Command.Rest()], D.prototype, 'patterns', void 0), + (0, y.gn)([g.Command.Path('unplug')], D.prototype, 'execute', null); + const b = (e) => { + let t, r; + return ( + 'module' === e.topLevelWorkspace.manifest.type + ? ((t = '.pnp.cjs'), (r = '.pnp.js')) + : ((t = '.pnp.js'), (r = '.pnp.cjs')), + { main: i.y1.join(e.cwd, t), other: i.y1.join(e.cwd, r) } + ); + }, + S = (e) => (/\s/.test(e) ? JSON.stringify(e) : e); + const k = { + hooks: { + populateYarnPaths: async function (e, t) { + t(b(e).main), + t(b(e).other), + t(e.configuration.get('pnpDataPath')), + t(e.configuration.get('pnpUnpluggedFolder')); + }, + setupScriptEnvironment: async function (e, t, r) { + const n = b(e).main, + s = '--require ' + S(i.cS.fromPortablePath(n)); + if (n.includes(' ') && A().lt(process.versions.node, '12.0.0')) + throw new Error( + `Expected the build location to not include spaces when using Node < 12.0.0 (${process.versions.node})` + ); + if (o.xfs.existsSync(n)) { + let e = t.NODE_OPTIONS || ''; + const r = /\s*--require\s+\S*\.pnp\.c?js\s*/g; + (e = e.replace(r, ' ').trim()), (e = e ? `${s} ${e}` : s), (t.NODE_OPTIONS = e); + } + }, + }, + configuration: { + nodeLinker: { + description: + 'The linker used for installing Node packages, one of: "pnp", "node-modules"', + type: n.a2.STRING, + default: 'pnp', + }, + pnpMode: { + description: + "If 'strict', generates standard PnP maps. If 'loose', merges them with the n_m resolution.", + type: n.a2.STRING, + default: 'strict', + }, + pnpShebang: { + description: 'String to prepend to the generated PnP script', + type: n.a2.STRING, + default: '#!/usr/bin/env node', + }, + pnpIgnorePatterns: { + description: + 'Array of glob patterns; files matching them will use the classic resolution', + type: n.a2.STRING, + default: [], + isArray: !0, + }, + pnpEnableInlining: { + description: 'If true, the PnP data will be inlined along with the generated loader', + type: n.a2.BOOLEAN, + default: !0, + }, + pnpFallbackMode: { + description: + 'If true, the generated PnP loader will follow the top-level fallback rule', + type: n.a2.STRING, + default: 'dependencies-only', + }, + pnpUnpluggedFolder: { + description: 'Folder where the unplugged packages must be stored', + type: n.a2.ABSOLUTE_PATH, + default: './.yarn/unplugged', + }, + pnpDataPath: { + description: + 'Path of the file where the PnP data (used by the loader) must be written', + type: n.a2.ABSOLUTE_PATH, + default: './.pnp.data.json', + }, + }, + linkers: [I], + commands: [D], + }; + }, + 28638: (e, t, r) => { + 'use strict'; + r.r(t); + var n = r(50683), + i = r.n(n); + Object.fromEntries || (Object.fromEntries = i()); + var o = r(59355), + s = r(91058), + A = r(45330); + (0, s.D)({ binaryVersion: o.o || '', pluginConfiguration: (0, A.e)() }); + }, + 95397: (e, t, r) => { + 'use strict'; + r.r(t), + r.d(t, { + BaseCommand: () => n.F, + WorkspaceRequiredError: () => A, + getDynamicLibs: () => c, + getPluginConfiguration: () => u.e, + openWorkspace: () => h, + main: () => g.D, + }); + var n = r(56087), + i = r(46611), + o = r(46009), + s = r(17278); + class A extends s.UsageError { + constructor(e, t) { + super( + `This command can only be run from within a workspace of your project (${o.y1.relative( + e, + t + )} isn't a workspace of ${o.y1.join(e, i.G.fileName)}).` + ); + } + } + const a = [ + '@yarnpkg/cli', + '@yarnpkg/core', + '@yarnpkg/fslib', + '@yarnpkg/libzip', + '@yarnpkg/parsers', + '@yarnpkg/shell', + 'clipanion', + 'semver', + 'yup', + ], + c = () => new Map(a.map((e) => [e, r(98497)(e)])); + var u = r(45330), + l = r(40376); + async function h(e, t) { + const { project: r, workspace: n } = await l.I.find(e, t); + if (!n) throw new A(r.cwd, t); + return n; + } + var g = r(91058); + }, + 91058: (e, t, r) => { + 'use strict'; + r.d(t, { D: () => h }); + var n = r(27122), + i = r(46009), + o = r(56537), + s = r(63129), + A = r(17278), + a = r(35747), + c = r(36370), + u = r(56087); + class l extends u.F { + async execute() { + const e = await n.VK.find(this.context.cwd, this.context.plugins); + this.context.stdout.write( + ((e) => + `\n${e.format( + 'Welcome on Yarn 2!', + 'bold' + )} 🎉 Thanks for helping us shape our vision of how projects\nshould be managed going forward.\n\nBeing still in RC, Yarn 2 isn't completely stable yet. Some features might be\nmissing, and some behaviors may have received major overhaul. In case of doubt,\nuse the following URLs to get some insight:\n\n - The changelog:\n ${e.format( + 'https://github.com/yarnpkg/berry/tree/CHANGELOG.md', + 'cyan' + )}\n\n - Our issue tracker:\n ${e.format( + 'https://github.com/yarnpkg/berry', + 'cyan' + )}\n\n - Our Discord server:\n ${e.format( + 'https://discord.gg/yarnpkg', + 'cyan' + )}\n\nWe're hoping you will enjoy the experience. For now, a good start is to run\nthe two following commands:\n\n ${e.format( + 'find . -name node_modules -prune -exec rm -r {} \\;', + 'magenta' + )}\n ${e.format( + 'yarn install', + 'magenta' + )}\n\nOne last trick! If you need at some point to upgrade Yarn to a nightly build,\nthe following command will install the CLI straight from master:\n\n ${e.format( + 'yarn set version from sources', + 'magenta' + )}\n\nSee you later 👋\n`)(e).trim() + '\n' + ); + } + } + async function h({ binaryVersion: e, pluginConfiguration: t }) { + async function r() { + const c = new A.Cli({ + binaryLabel: 'Yarn Package Manager', + binaryName: 'yarn', + binaryVersion: e, + }); + c.register(l); + try { + await (async function (e) { + const A = await n.VK.find(i.cS.toPortablePath(process.cwd()), t, { + usePath: !0, + strict: !1, + }), + c = A.get('yarnPath'), + u = A.get('ignorePath'), + l = A.get('ignoreCwd'); + if (null === c || u) { + u && delete process.env.YARN_IGNORE_PATH; + for (const t of A.plugins.values()) + for (const r of t.commands || []) e.register(r); + const n = e.process(process.argv.slice(2)), + o = n.cwd; + if (void 0 !== o && !l) { + const e = (0, a.realpathSync)(process.cwd()), + t = (0, a.realpathSync)(o); + if (e !== t) return process.chdir(o), void (await r()); + } + e.runExit(n, { + cwd: i.cS.toPortablePath(process.cwd()), + plugins: t, + quiet: !1, + stdin: process.stdin, + stdout: process.stdout, + stderr: process.stderr, + }); + } else if (o.xfs.existsSync(c)) + try { + !(function (e) { + const t = i.cS.fromPortablePath(e); + process.on('SIGINT', () => {}), + t + ? (0, s.execFileSync)(process.execPath, [t, ...process.argv.slice(2)], { + stdio: 'inherit', + env: { ...process.env, YARN_IGNORE_PATH: '1', YARN_IGNORE_CWD: '1' }, + }) + : (0, s.execFileSync)(t, process.argv.slice(2), { + stdio: 'inherit', + env: { ...process.env, YARN_IGNORE_PATH: '1', YARN_IGNORE_CWD: '1' }, + }); + })(c); + } catch (e) { + process.exitCode = e.code || 1; + } + else + process.stdout.write( + e.error( + new Error( + `The "yarn-path" option has been set (in ${A.sources.get( + 'yarnPath' + )}), but the specified location doesn't exist (${c}).` + ) + ) + ), + (process.exitCode = 1); + })(c); + } catch (e) { + process.stdout.write(c.error(e)), (process.exitCode = 1); + } + } + return r().catch((e) => { + process.stdout.write(e.stack || e.message), (process.exitCode = 1); + }); + } + (0, c.gn)([A.Command.Path('--welcome')], l.prototype, 'execute', null); + }, + 56087: (e, t, r) => { + 'use strict'; + r.d(t, { F: () => o }); + var n = r(36370), + i = r(17278); + class o extends i.Command {} + (0, n.gn)([i.Command.String('--cwd', { hidden: !0 })], o.prototype, 'cwd', void 0); + }, + 28148: (e, t, r) => { + 'use strict'; + r.d(t, { C: () => C }); + var n = r(78420), + i = r(90739), + o = r(15037), + s = r(46009), + A = r(56537), + a = r(29486), + c = r(35747), + u = r.n(c), + l = r(92659), + h = r(35691), + g = r(20624), + f = r(73632), + p = r(54143); + const d = 5; + class C { + constructor( + e, + { configuration: t, immutable: r = t.get('enableImmutableCache'), check: n = !1 } + ) { + (this.markedFiles = new Set()), + (this.mutexes = new Map()), + (this.configuration = t), + (this.cwd = e), + (this.immutable = r), + (this.check = n); + const o = t.get('cacheKeyOverride'); + if (null !== o) this.cacheKey = '' + o; + else { + const e = t.get('compressionLevel'), + r = e !== i.k ? 'c' + e : ''; + this.cacheKey = [d, r].join(''); + } + } + static async find(e, { immutable: t, check: r } = {}) { + const n = new C(e.get('cacheFolder'), { configuration: e, immutable: t, check: r }); + return await n.setup(), n; + } + get mirrorCwd() { + if (!this.configuration.get('enableMirror')) return null; + const e = this.configuration.get('globalFolder') + '/cache'; + return e !== this.cwd ? e : null; + } + getVersionFilename(e) { + return `${p.slugifyLocator(e)}-${this.cacheKey}.zip`; + } + getChecksumFilename(e, t) { + const r = (function (e) { + const t = e.indexOf('/'); + return -1 !== t ? e.slice(t + 1) : e; + })(t).slice(0, 10); + return `${p.slugifyLocator(e)}-${r}.zip`; + } + getLocatorPath(e, t) { + if (null === this.mirrorCwd) return s.y1.resolve(this.cwd, this.getVersionFilename(e)); + if (null === t) return null; + return E(t) !== this.cacheKey + ? null + : s.y1.resolve(this.cwd, this.getChecksumFilename(e, t)); + } + getLocatorMirrorPath(e) { + const t = this.mirrorCwd; + return null !== t ? s.y1.resolve(t, this.getVersionFilename(e)) : null; + } + async setup() { + if (!this.configuration.get('enableGlobalCache')) { + await A.xfs.mkdirpPromise(this.cwd); + const e = s.y1.resolve(this.cwd, (0, s.Zu)('.gitignore')); + (await A.xfs.existsPromise(e)) || + (await A.xfs.writeFilePromise(e, '/.gitignore\n*.lock\n')); + } + } + async fetchPackageFromCache( + e, + t, + { onHit: r, onMiss: c, loader: d, skipIntegrityCheck: C } + ) { + const I = this.getLocatorMirrorPath(e), + m = new n.S(), + y = async (e, r = null) => { + const n = C && t ? t : `${this.cacheKey}/${await g.checksumFile(e)}`; + if (null !== r) { + if (n !== (C && t ? t : `${this.cacheKey}/${await g.checksumFile(r)}`)) + throw new h.lk( + l.b.CACHE_CHECKSUM_MISMATCH, + "The remote archive doesn't match the local checksum - has the local cache been corrupted?" + ); + } + if (null !== t && n !== t) { + let e; + switch ( + ((e = this.check + ? 'throw' + : E(t) !== E(n) + ? 'update' + : this.configuration.get('checksumBehavior')), + e) + ) { + case 'ignore': + return t; + case 'update': + return n; + default: + case 'throw': + throw new h.lk( + l.b.CACHE_CHECKSUM_MISMATCH, + "The remote archive doesn't match the expected checksum" + ); + } + } + return n; + }, + w = async (t) => { + if (!d) + throw new Error( + 'Cache check required but no loader configured for ' + + p.prettyLocator(this.configuration, e) + ); + const r = await d(), + n = r.getRealPath(); + return r.saveAndClose(), await A.xfs.chmodPromise(n, 420), await y(t, n); + }, + B = async () => { + if (null === I || !A.xfs.existsSync(I)) return await d(); + const t = await A.xfs.mktempPromise(), + r = s.y1.join(t, this.getVersionFilename(e)); + return ( + await A.xfs.copyFilePromise(I, r, u().constants.COPYFILE_FICLONE), + new i.d(r, { libzip: await (0, a.getLibzipPromise)() }) + ); + }, + Q = async () => { + if (!d) + throw new Error( + 'Cache entry required but missing for ' + p.prettyLocator(this.configuration, e) + ); + if (this.immutable) + throw new h.lk( + l.b.IMMUTABLE_CACHE, + 'Cache entry required but missing for ' + p.prettyLocator(this.configuration, e) + ); + const t = await B(), + r = t.getRealPath(); + t.saveAndClose(), await A.xfs.chmodPromise(r, 420); + const n = await y(r), + i = this.getLocatorPath(e, n); + if (!i) + throw new Error('Assertion failed: Expected the cache path to be available'); + return await this.writeFileWithLock( + i, + async () => + await this.writeFileWithLock( + I, + async () => ( + await A.xfs.movePromise(r, i), + null !== I && + (await A.xfs.copyFilePromise(i, I, u().constants.COPYFILE_FICLONE)), + [i, n] + ) + ) + ); + }, + v = async () => { + const t = Q(); + this.mutexes.set(e.locatorHash, t); + try { + return await t; + } finally { + this.mutexes.delete(e.locatorHash); + } + }; + for (let t; (t = this.mutexes.get(e.locatorHash)); ) await t; + const D = this.getLocatorPath(e, t), + b = null !== D && m.existsSync(D), + S = b ? r : c; + let k, x; + S && S(), + b ? ((k = D), (x = this.check ? await w(k) : await y(k))) : ([k, x] = await v()), + this.markedFiles.add(k); + let F = null; + const M = await (0, a.getLibzipPromise)(); + return [ + new o.v( + () => + f.prettifySyncErrors( + () => (F = new i.d(k, { baseFs: m, libzip: M, readOnly: !0 })), + (t) => + `Failed to open the cache entry for ${p.prettyLocator( + this.configuration, + e + )}: ${t}` + ), + s.y1 + ), + () => { + null !== F && F.discardAndClose(); + }, + x, + ]; + } + async writeFileWithLock(e, t) { + return null === e + ? await t() + : (await A.xfs.mkdirpPromise(s.y1.dirname(e)), + await A.xfs.lockPromise(e, async () => await t())); + } + } + function E(e) { + const t = e.indexOf('/'); + return -1 !== t ? e.slice(0, t) : null; + } + }, + 27122: (e, t, r) => { + 'use strict'; + r.d(t, { tr: () => _, nh: () => O, a2: () => j, a5: () => Y, EW: () => V, VK: () => X }); + var n = r(90739), + i = r(46009), + o = r(56537), + s = r(55125), + A = r(54738), + a = r.n(A), + c = r(95882), + u = r.n(c), + l = r(5864), + h = r(17278), + g = r(53887), + f = r.n(g), + p = r(92413), + d = r(92659), + C = r(54143); + const E = { + hooks: { + reduceDependency: (e, t, r, n, { resolver: i, resolveOptions: o }) => { + for (const { pattern: n, reference: s } of t.topLevelWorkspace.manifest.resolutions) { + if (n.from && n.from.fullName !== C.requirableIdent(r)) continue; + if (n.from && n.from.description && n.from.description !== r.reference) continue; + if (n.descriptor.fullName !== C.requirableIdent(e)) continue; + if (n.descriptor.description && n.descriptor.description !== e.range) continue; + return i.bindDescriptor( + C.makeDescriptor(e, s), + t.topLevelWorkspace.anchoredLocator, + o + ); + } + return e; + }, + validateProject: async (e, t) => { + for (const r of e.workspaces) { + const n = C.prettyWorkspace(e.configuration, r); + await e.configuration.triggerHook((e) => e.validateWorkspace, r, { + reportWarning: (e, r) => t.reportWarning(e, `${n}: ${r}`), + reportError: (e, r) => t.reportError(e, `${n}: ${r}`), + }); + } + }, + validateWorkspace: async (e, t) => { + const { manifest: r } = e; + r.resolutions.length && + e.cwd !== e.project.cwd && + r.errors.push(new Error('Resolutions field will be ignored')); + for (const e of r.errors) t.reportWarning(d.b.INVALID_MANIFEST, e.message); + }, + }, + }; + var I = r(46611), + m = r(35691); + class y { + constructor(e) { + this.fetchers = e; + } + supports(e, t) { + return !!this.tryFetcher(e, t); + } + getLocalPath(e, t) { + return this.getFetcher(e, t).getLocalPath(e, t); + } + async fetch(e, t) { + const r = this.getFetcher(e, t); + return await r.fetch(e, t); + } + tryFetcher(e, t) { + const r = this.fetchers.find((r) => r.supports(e, t)); + return r || null; + } + getFetcher(e, t) { + const r = this.fetchers.find((r) => r.supports(e, t)); + if (!r) + throw new m.lk( + d.b.FETCHER_NOT_FOUND, + C.prettyLocator(t.project.configuration, e) + + " isn't supported by any available fetcher" + ); + return r; + } + } + var w = r(27092), + B = r(52779), + Q = r(60895); + class v { + static isVirtualDescriptor(e) { + return !!e.range.startsWith(v.protocol); + } + static isVirtualLocator(e) { + return !!e.reference.startsWith(v.protocol); + } + supportsDescriptor(e, t) { + return v.isVirtualDescriptor(e); + } + supportsLocator(e, t) { + return v.isVirtualLocator(e); + } + shouldPersistResolution(e, t) { + return !1; + } + bindDescriptor(e, t, r) { + throw new Error( + 'Assertion failed: calling "bindDescriptor" on a virtual descriptor is unsupported' + ); + } + getResolutionDependencies(e, t) { + throw new Error( + 'Assertion failed: calling "getResolutionDependencies" on a virtual descriptor is unsupported' + ); + } + async getCandidates(e, t, r) { + throw new Error( + 'Assertion failed: calling "getCandidates" on a virtual descriptor is unsupported' + ); + } + async resolve(e, t) { + throw new Error( + 'Assertion failed: calling "resolve" on a virtual locator is unsupported' + ); + } + } + v.protocol = 'virtual:'; + var D = r(75448), + b = r(94538); + class S { + supports(e) { + return !!e.reference.startsWith(b.d.protocol); + } + getLocalPath(e, t) { + return this.getWorkspace(e, t).cwd; + } + async fetch(e, t) { + const r = this.getWorkspace(e, t).cwd; + return { packageFs: new D.M(r), prefixPath: i.LZ.dot, localPath: r }; + } + getWorkspace(e, t) { + return t.project.getWorkspaceByCwd(e.reference.slice(b.d.protocol.length)); + } + } + var k = r(81111), + x = r(73632), + F = r(32282), + M = r.n(F); + function N(e) { + return ('undefined' != typeof require ? require : r(32178))(e); + } + var R = r(36545); + const K = process.env.GITHUB_ACTIONS + ? { level: 2 } + : u().supportsColor + ? { level: u().supportsColor.level } + : { level: 0 }, + L = 0 !== K.level, + T = L && !process.env.GITHUB_ACTIONS, + P = new (u().Instance)(K), + U = new Set(['binFolder', 'version', 'flags', 'profile', 'gpg', 'wrapOutput']), + _ = (0, i.Zu)('.yarnrc.yml'), + O = (0, i.Zu)('yarn.lock'); + var j, Y; + !(function (e) { + (e.ANY = 'ANY'), + (e.BOOLEAN = 'BOOLEAN'), + (e.ABSOLUTE_PATH = 'ABSOLUTE_PATH'), + (e.LOCATOR = 'LOCATOR'), + (e.LOCATOR_LOOSE = 'LOCATOR_LOOSE'), + (e.NUMBER = 'NUMBER'), + (e.STRING = 'STRING'), + (e.SECRET = 'SECRET'), + (e.SHAPE = 'SHAPE'), + (e.MAP = 'MAP'); + })(j || (j = {})), + (function (e) { + (e.NAME = 'NAME'), + (e.NUMBER = 'NUMBER'), + (e.PATH = 'PATH'), + (e.RANGE = 'RANGE'), + (e.REFERENCE = 'REFERENCE'), + (e.SCOPE = 'SCOPE'), + (e.ADDED = 'ADDED'), + (e.REMOVED = 'REMOVED'); + })(Y || (Y = {})); + const G = + K.level >= 3 + ? new Map([ + [Y.NAME, '#d7875f'], + [Y.RANGE, '#00afaf'], + [Y.REFERENCE, '#87afff'], + [Y.NUMBER, '#ffd700'], + [Y.PATH, '#d75fd7'], + [Y.SCOPE, '#d75f00'], + [Y.ADDED, '#5faf00'], + [Y.REMOVED, '#d70000'], + ]) + : new Map([ + [Y.NAME, 173], + [Y.RANGE, 37], + [Y.REFERENCE, 111], + [Y.NUMBER, 220], + [Y.PATH, 170], + [Y.SCOPE, 166], + [Y.ADDED, 70], + [Y.REMOVED, 160], + ]), + J = { + lastUpdateCheck: { + description: 'Last timestamp we checked whether new Yarn versions were available', + type: j.STRING, + default: null, + }, + yarnPath: { + description: 'Path to the local executable that must be used over the global one', + type: j.ABSOLUTE_PATH, + default: null, + }, + ignorePath: { + description: + 'If true, the local executable will be ignored when using the global one', + type: j.BOOLEAN, + default: !1, + }, + ignoreCwd: { + description: 'If true, the `--cwd` flag will be ignored', + type: j.BOOLEAN, + default: !1, + }, + cacheKeyOverride: { + description: 'A global cache key override; used only for test purposes', + type: j.STRING, + default: null, + }, + globalFolder: { + description: 'Folder where are stored the system-wide settings', + type: j.ABSOLUTE_PATH, + default: k.getDefaultGlobalFolder(), + }, + cacheFolder: { + description: 'Folder where the cache files must be written', + type: j.ABSOLUTE_PATH, + default: './.yarn/cache', + }, + compressionLevel: { + description: + "Zip files compression level, from 0 to 9 or mixed (a variant of 9, which stores some files uncompressed, when compression doesn't yield good results)", + type: j.NUMBER, + values: ['mixed', 0, 1, 2, 3, 4, 5, 6, 7, 8, 9], + default: n.k, + }, + virtualFolder: { + description: + 'Folder where the virtual packages (cf doc) will be mapped on the disk (must be named $$virtual)', + type: j.ABSOLUTE_PATH, + default: './.yarn/$$virtual', + }, + bstatePath: { + description: + 'Path of the file where the current state of the built packages must be stored', + type: j.ABSOLUTE_PATH, + default: './.yarn/build-state.yml', + }, + lockfileFilename: { + description: + 'Name of the files where the Yarn dependency tree entries must be stored', + type: j.STRING, + default: O, + }, + installStatePath: { + description: 'Path of the file where the install state will be persisted', + type: j.ABSOLUTE_PATH, + default: './.yarn/install-state.gz', + }, + rcFilename: { + description: 'Name of the files where the configuration can be found', + type: j.STRING, + default: W(), + }, + enableGlobalCache: { + description: + 'If true, the system-wide cache folder will be used regardless of `cache-folder`', + type: j.BOOLEAN, + default: !1, + }, + enableAbsoluteVirtuals: { + description: + 'If true, the virtual symlinks will use absolute paths if required [non portable!!]', + type: j.BOOLEAN, + default: !1, + }, + enableColors: { + description: 'If true, the CLI is allowed to use colors in its output', + type: j.BOOLEAN, + default: L, + defaultText: '', + }, + enableHyperlinks: { + description: 'If true, the CLI is allowed to use hyperlinks in its output', + type: j.BOOLEAN, + default: T, + defaultText: '', + }, + enableInlineBuilds: { + description: 'If true, the CLI will print the build output on the command line', + type: j.BOOLEAN, + default: l.isCI, + defaultText: '', + }, + enableProgressBars: { + description: + 'If true, the CLI is allowed to show a progress bar for long-running events', + type: j.BOOLEAN, + default: !l.isCI && process.stdout.isTTY && process.stdout.columns > 22, + defaultText: '', + }, + enableTimers: { + description: 'If true, the CLI is allowed to print the time spent executing commands', + type: j.BOOLEAN, + default: !0, + }, + preferAggregateCacheInfo: { + description: + 'If true, the CLI will only print a one-line report of any cache changes', + type: j.BOOLEAN, + default: l.isCI, + }, + preferInteractive: { + description: + 'If true, the CLI will automatically use the interactive mode when called from a TTY', + type: j.BOOLEAN, + default: !1, + }, + preferTruncatedLines: { + description: + 'If true, the CLI will truncate lines that would go beyond the size of the terminal', + type: j.BOOLEAN, + default: !1, + }, + progressBarStyle: { + description: + 'Which style of progress bar should be used (only when progress bars are enabled)', + type: j.STRING, + default: void 0, + defaultText: '', + }, + defaultLanguageName: { + description: + "Default language mode that should be used when a package doesn't offer any insight", + type: j.STRING, + default: 'node', + }, + defaultProtocol: { + description: + 'Default resolution protocol used when resolving pure semver and tag ranges', + type: j.STRING, + default: 'npm:', + }, + enableTransparentWorkspaces: { + description: + "If false, Yarn won't automatically resolve workspace dependencies unless they use the `workspace:` protocol", + type: j.BOOLEAN, + default: !0, + }, + enableMirror: { + description: + 'If true, the downloaded packages will be retrieved and stored in both the local and global folders', + type: j.BOOLEAN, + default: !0, + }, + enableNetwork: { + description: + 'If false, the package manager will refuse to use the network if required to', + type: j.BOOLEAN, + default: !0, + }, + httpProxy: { + description: 'URL of the http proxy that must be used for outgoing http requests', + type: j.STRING, + default: null, + }, + httpsProxy: { + description: 'URL of the http proxy that must be used for outgoing https requests', + type: j.STRING, + default: null, + }, + unsafeHttpWhitelist: { + description: + 'List of the hostnames for which http queries are allowed (glob patterns are supported)', + type: j.STRING, + default: [], + isArray: !0, + }, + httpTimeout: { + description: 'Timeout of each http request in milliseconds', + type: j.NUMBER, + default: 6e4, + }, + httpRetry: { description: 'Retry times on http failure', type: j.NUMBER, default: 3 }, + enableScripts: { + description: 'If true, packages are allowed to have install scripts by default', + type: j.BOOLEAN, + default: !0, + }, + enableImmutableCache: { + description: + 'If true, the cache is reputed immutable and actions that would modify it will throw', + type: j.BOOLEAN, + default: !1, + }, + checksumBehavior: { + description: + "Enumeration defining what to do when a checksum doesn't match expectations", + type: j.STRING, + default: 'throw', + }, + packageExtensions: { + description: 'Map of package corrections to apply on the dependency tree', + type: j.MAP, + valueDefinition: { description: '', type: j.ANY }, + }, + }; + function H(e, t, r, n, i) { + if (n.isArray) + return Array.isArray(r) + ? r.map((r, o) => q(e, `${t}[${o}]`, r, n, i)) + : String(r) + .split(/,/) + .map((r) => q(e, t, r, n, i)); + if (Array.isArray(r)) + throw new Error(`Non-array configuration settings "${t}" cannot be an array`); + return q(e, t, r, n, i); + } + function q(e, t, r, n, o) { + var s; + switch (n.type) { + case j.ANY: + return r; + case j.SHAPE: + return (function (e, t, r, n, i) { + if ('object' != typeof r || Array.isArray(r)) + throw new h.UsageError(`Object configuration settings "${t}" must be an object`); + const o = z(e, n); + if (null === r) return o; + for (const [s, A] of Object.entries(r)) { + const r = `${t}.${s}`; + if (!n.properties[s]) + throw new h.UsageError( + `Unrecognized configuration settings found: ${t}.${s} - run "yarn config -v" to see the list of settings supported in Yarn` + ); + o.set(s, H(e, r, A, n.properties[s], i)); + } + return o; + })(e, t, r, n, o); + case j.MAP: + return (function (e, t, r, n, i) { + const o = new Map(); + if ('object' != typeof r || Array.isArray(r)) + throw new h.UsageError(`Map configuration settings "${t}" must be an object`); + if (null === r) return o; + for (const [s, A] of Object.entries(r)) { + const r = n.normalizeKeys ? n.normalizeKeys(s) : s, + a = `${t}['${r}']`, + c = n.valueDefinition; + o.set(r, H(e, a, A, c, i)); + } + return o; + })(e, t, r, n, o); + } + if (null === r && !n.isNullable && null !== n.default) + throw new Error(`Non-nullable configuration settings "${t}" cannot be set to null`); + if (null === (s = n.values) || void 0 === s ? void 0 : s.includes(r)) return r; + const A = (() => { + if (n.type === j.BOOLEAN) + return (function (e) { + switch (e) { + case 'true': + case '1': + case 1: + case !0: + return !0; + case 'false': + case '0': + case 0: + case !1: + return !1; + default: + throw new Error(`Couldn't parse "${e}" as a boolean`); + } + })(r); + if ('string' != typeof r) throw new Error(`Expected value (${r}) to be a string`); + const e = x.replaceEnvVariables(r, { env: process.env }); + switch (n.type) { + case j.ABSOLUTE_PATH: + return i.y1.resolve(o, i.cS.toPortablePath(e)); + case j.LOCATOR_LOOSE: + return C.parseLocator(e, !1); + case j.NUMBER: + return parseInt(e); + case j.LOCATOR: + return C.parseLocator(e); + default: + return e; + } + })(); + if (n.values && !n.values.includes(A)) + throw new Error('Invalid value, expected one of ' + n.values.join(', ')); + return A; + } + function z(e, t) { + switch (t.type) { + case j.SHAPE: { + const r = new Map(); + for (const [n, i] of Object.entries(t.properties)) r.set(n, z(e, i)); + return r; + } + case j.MAP: + return new Map(); + case j.ABSOLUTE_PATH: + return null === t.default + ? null + : null === e.projectCwd + ? i.y1.isAbsolute(t.default) + ? i.y1.normalize(t.default) + : t.isNullable + ? null + : void 0 + : Array.isArray(t.default) + ? t.default.map((t) => i.y1.resolve(e.projectCwd, t)) + : i.y1.resolve(e.projectCwd, t.default); + default: + return t.default; + } + } + function W() { + for (const [e, t] of Object.entries(process.env)) + if ('yarn_rc_filename' === e.toLowerCase() && 'string' == typeof t) return t; + return _; + } + var V; + !(function (e) { + (e[(e.LOCKFILE = 0)] = 'LOCKFILE'), + (e[(e.MANIFEST = 1)] = 'MANIFEST'), + (e[(e.NONE = 2)] = 'NONE'); + })(V || (V = {})); + class X { + constructor(e) { + (this.projectCwd = null), + (this.plugins = new Map()), + (this.settings = new Map()), + (this.values = new Map()), + (this.sources = new Map()), + (this.invalid = new Map()), + (this.packageExtensions = new Map()), + (this.startingCwd = e); + } + static create(e, t, r) { + const n = new X(e); + void 0 === t || t instanceof Map || (n.projectCwd = t), n.importSettings(J); + const i = void 0 !== r ? r : t instanceof Map ? t : new Map(); + for (const [e, t] of i) n.activatePlugin(e, t); + return n; + } + static async find( + e, + t, + { lookup: r = V.LOCKFILE, strict: n = !0, usePath: s = !1, useRc: A = !0 } = {} + ) { + const c = (function () { + const e = {}; + for (let [t, r] of Object.entries(process.env)) + (t = t.toLowerCase()), + t.startsWith('yarn_') && ((t = a()(t.slice('yarn_'.length))), (e[t] = r)); + return e; + })(); + delete c.rcFilename; + const u = await X.findRcFiles(e), + l = await X.findHomeRcFile(), + g = ({ ignoreCwd: e, yarnPath: t, ignorePath: r, lockfileFilename: n }) => ({ + ignoreCwd: e, + yarnPath: t, + ignorePath: r, + lockfileFilename: n, + }), + f = ({ ignoreCwd: e, yarnPath: t, ignorePath: r, lockfileFilename: n, ...i }) => i, + p = new X(e); + p.importSettings(g(J)), p.useWithSource('', g(c), e, { strict: !1 }); + for (const { path: e, cwd: t, data: r } of u) + p.useWithSource(e, g(r), t, { strict: !1 }); + if ((l && p.useWithSource(l.path, g(l.data), l.cwd, { strict: !1 }), s)) { + const e = p.get('yarnPath'), + t = p.get('ignorePath'); + if (null !== e && !t) return p; + } + const d = p.get('lockfileFilename'); + let C; + switch (r) { + case V.LOCKFILE: + C = await X.findProjectCwd(e, d); + break; + case V.MANIFEST: + C = await X.findProjectCwd(e, null); + break; + case V.NONE: + C = o.xfs.existsSync(i.y1.join(e, 'package.json')) ? i.y1.resolve(e) : null; + } + (p.startingCwd = e), (p.projectCwd = C), p.importSettings(f(J)); + const I = new Map([['@@core', E]]); + if (null !== t) { + for (const e of t.plugins.keys()) + I.set(e, (m = t.modules.get(e)).__esModule ? m.default : m); + const r = new Map(); + for (const e of new Set( + M().builtinModules || Object.keys(process.binding('natives')) + )) + r.set(e, () => N(e)); + for (const [e, n] of t.modules) r.set(e, () => n); + const n = new Set(), + o = (e) => e.default || e, + s = (e, t) => { + const { factory: s, name: A } = N(i.cS.fromPortablePath(e)); + if (n.has(A)) return; + const a = new Map(r), + c = (e) => { + if (a.has(e)) return a.get(e)(); + throw new h.UsageError( + `This plugin cannot access the package referenced via ${e} which is neither a builtin, nor an exposed entry` + ); + }, + u = x.prettifySyncErrors( + () => o(s(c)), + (e) => `${e} (when initializing ${A}, defined in ${t})` + ); + r.set(A, () => u), n.add(A), I.set(A, u); + }; + if (c.plugins) + for (const t of c.plugins.split(';')) { + s(i.y1.resolve(e, i.cS.toPortablePath(t)), ''); + } + for (const { path: e, cwd: t, data: r } of u) + if (A && Array.isArray(r.plugins)) + for (const n of r.plugins) { + const r = 'string' != typeof n ? n.path : n; + s(i.y1.resolve(t, i.cS.toPortablePath(r)), e); + } + } + var m; + for (const [e, t] of I) p.activatePlugin(e, t); + p.useWithSource('', f(c), e, { strict: n }); + for (const { path: e, cwd: t, data: r } of u) + p.useWithSource(e, f(r), t, { strict: n }); + return ( + l && p.useWithSource(l.path, f(l.data), l.cwd, { strict: n }), + p.get('enableGlobalCache') && + (p.values.set('cacheFolder', p.get('globalFolder') + '/cache'), + p.sources.set('cacheFolder', '')), + await p.refreshPackageExtensions(), + p + ); + } + static async findRcFiles(e) { + const t = W(), + r = []; + let n = e, + A = null; + for (; n !== A; ) { + A = n; + const e = i.y1.join(A, t); + if (o.xfs.existsSync(e)) { + const t = await o.xfs.readFilePromise(e, 'utf8'); + let n; + try { + n = (0, s.parseSyml)(t); + } catch (r) { + let n = ''; + throw ( + (t.match(/^\s+(?!-)[^:]+\s+\S+/m) && + (n = ' (in particular, make sure you list the colons after each key name)'), + new h.UsageError( + `Parse error when loading ${e}; please check it's proper Yaml${n}` + )) + ); + } + r.push({ path: e, cwd: A, data: n }); + } + n = i.y1.dirname(A); + } + return r; + } + static async findHomeRcFile() { + const e = W(), + t = k.getHomeFolder(), + r = i.y1.join(t, e); + if (o.xfs.existsSync(r)) { + const e = await o.xfs.readFilePromise(r, 'utf8'); + return { path: r, cwd: t, data: (0, s.parseSyml)(e) }; + } + return null; + } + static async findProjectCwd(e, t) { + let r = null, + n = e, + s = null; + for (; n !== s; ) { + if ( + ((s = n), + o.xfs.existsSync(i.y1.join(s, (0, i.Zu)('package.json'))) && (r = s), + null !== t) + ) { + if (o.xfs.existsSync(i.y1.join(s, t))) { + r = s; + break; + } + } else if (null !== r) break; + n = i.y1.dirname(s); + } + return r; + } + static async updateConfiguration(e, t) { + const r = W(), + n = i.y1.join(e, r), + A = o.xfs.existsSync(n) + ? (0, s.parseSyml)(await o.xfs.readFilePromise(n, 'utf8')) + : {}; + let a = !1; + if (('function' == typeof t && (t = t(A)), 'function' == typeof t)) + throw new Error('Assertion failed: Invalid configuration type'); + for (const e of Object.keys(t)) { + const r = A[e], + n = 'function' == typeof t[e] ? t[e](r) : t[e]; + r !== n && ((A[e] = n), (a = !0)); + } + a && + (await o.xfs.changeFilePromise(n, (0, s.stringifySyml)(A), { + automaticNewlines: !0, + })); + } + static async updateHomeConfiguration(e) { + const t = k.getHomeFolder(); + return await X.updateConfiguration(t, e); + } + activatePlugin(e, t) { + this.plugins.set(e, t), + void 0 !== t.configuration && this.importSettings(t.configuration); + } + importSettings(e) { + for (const [t, r] of Object.entries(e)) { + if (this.settings.has(t)) throw new Error(`Cannot redefine settings "${t}"`); + this.settings.set(t, r), this.values.set(t, z(this, r)); + } + } + useWithSource(e, t, r, { strict: n = !0, overwrite: i = !1 }) { + try { + this.use(e, t, r, { strict: n, overwrite: i }); + } catch (t) { + throw ((t.message += ` (in ${e})`), t); + } + } + use(e, t, r, { strict: n = !0, overwrite: i = !1 }) { + for (const o of Object.keys(t)) { + if (void 0 === t[o]) continue; + if ('plugins' === o) continue; + if ('' === e && U.has(o)) continue; + if ('rcFilename' === o) + throw new h.UsageError( + `The rcFilename settings can only be set via ${'yarn_RC_FILENAME'.toUpperCase()}, not via a rc file` + ); + const s = this.settings.get(o); + if (!s) { + if (n) + throw new h.UsageError( + `Unrecognized or legacy configuration settings found: ${o} - run "yarn config -v" to see the list of settings supported in Yarn` + ); + this.invalid.set(o, e); + continue; + } + if (this.sources.has(o) && !i) continue; + let A; + try { + A = H(this, o, t[o], s, r); + } catch (t) { + throw ((t.message += ' in ' + e), t); + } + this.values.set(o, A), this.sources.set(o, e); + } + } + get(e) { + if (!this.values.has(e)) throw new Error(`Invalid configuration key "${e}"`); + return this.values.get(e); + } + getSpecial(e, { hideSecrets: t = !1, getNativePaths: r = !1 }) { + const n = this.get(e), + o = this.settings.get(e); + if (void 0 === o) + throw new h.UsageError(`Couldn't find a configuration settings named "${e}"`); + return (function e(t, r, n) { + if (r.type === j.SECRET && 'string' == typeof t && n.hideSecrets) return '********'; + if (r.type === j.ABSOLUTE_PATH && 'string' == typeof t && n.getNativePaths) + return i.cS.fromPortablePath(t); + if (r.isArray && Array.isArray(t)) { + const i = []; + for (const o of t) i.push(e(o, r, n)); + return i; + } + if (r.type === j.MAP && t instanceof Map) { + const i = new Map(); + for (const [o, s] of t.entries()) i.set(o, e(s, r.valueDefinition, n)); + return i; + } + if (r.type === j.SHAPE && t instanceof Map) { + const i = new Map(); + for (const [o, s] of t.entries()) { + const t = r.properties[o]; + i.set(o, e(s, t, n)); + } + return i; + } + return t; + })(n, o, { hideSecrets: t, getNativePaths: r }); + } + getSubprocessStreams(e, { header: t, prefix: r, report: n }) { + let i, s; + const A = o.xfs.createWriteStream(e); + if (this.get('enableInlineBuilds')) { + const e = n.createStreamReporter(`${r} ${this.format('STDOUT', 'green')}`), + t = n.createStreamReporter(`${r} ${this.format('STDERR', 'red')}`); + (i = new p.PassThrough()), + i.pipe(e), + i.pipe(A), + (s = new p.PassThrough()), + s.pipe(t), + s.pipe(A); + } else (i = A), (s = A), void 0 !== t && i.write(t + '\n'); + return { stdout: i, stderr: s }; + } + makeResolver() { + const e = []; + for (const t of this.plugins.values()) + for (const r of t.resolvers || []) e.push(new r()); + return new w.B([new v(), new b.d(), new B.O(), ...e]); + } + makeFetcher() { + const e = []; + for (const t of this.plugins.values()) + for (const r of t.fetchers || []) e.push(new r()); + return new y([new Q.N(), new S(), ...e]); + } + getLinkers() { + const e = []; + for (const t of this.plugins.values()) for (const r of t.linkers || []) e.push(new r()); + return e; + } + async refreshPackageExtensions() { + this.packageExtensions = new Map(); + const e = this.packageExtensions, + t = (t, r) => { + if (!f().validRange(t.range)) + throw new Error( + 'Only semver ranges are allowed as keys for the lockfileExtensions setting' + ); + const n = new I.G(); + n.load(r), + x.getArrayWithDefault(e, t.identHash).push({ + range: t.range, + patch: (e) => { + (e.dependencies = new Map([...e.dependencies, ...n.dependencies])), + (e.peerDependencies = new Map([ + ...e.peerDependencies, + ...n.peerDependencies, + ])), + (e.dependenciesMeta = new Map([ + ...e.dependenciesMeta, + ...n.dependenciesMeta, + ])), + (e.peerDependenciesMeta = new Map([ + ...e.peerDependenciesMeta, + ...n.peerDependenciesMeta, + ])); + }, + }); + }; + for (const [e, r] of this.get('packageExtensions')) t(C.parseDescriptor(e, !0), r); + await this.triggerHook((e) => e.registerPackageExtensions, this, t); + } + normalizePackage(e) { + const t = C.copyPackage(e); + if (null == this.packageExtensions) + throw new Error( + 'refreshPackageExtensions has to be called before normalizing packages' + ); + const r = this.packageExtensions.get(e.identHash); + if (void 0 !== r) { + const n = e.version; + if (null !== n) { + const e = r.find(({ range: e }) => R.satisfiesWithPrereleases(n, e)); + void 0 !== e && e.patch(t); + } + } + return ( + (t.dependencies = new Map(x.sortMap(t.dependencies, ([, e]) => e.name))), + (t.peerDependencies = new Map(x.sortMap(t.peerDependencies, ([, e]) => e.name))), + t + ); + } + async triggerHook(e, ...t) { + for (const r of this.plugins.values()) { + const n = r.hooks; + if (!n) continue; + const i = e(n); + i && (await i(...t)); + } + } + async triggerMultipleHooks(e, t) { + for (const r of t) await this.triggerHook(e, ...r); + } + async reduceHook(e, t, ...r) { + let n = t; + for (const t of this.plugins.values()) { + const i = t.hooks; + if (!i) continue; + const o = e(i); + o && (n = await o(n, ...r)); + } + return n; + } + async firstHook(e, ...t) { + for (const r of this.plugins.values()) { + const n = r.hooks; + if (!n) continue; + const i = e(n); + if (!i) continue; + const o = await i(...t); + if (void 0 !== o) return o; + } + return null; + } + format(e, t) { + if ((t === Y.PATH && (e = i.cS.fromPortablePath(e)), !this.get('enableColors'))) + return e; + let r = G.get(t); + void 0 === r && (r = t); + return ('number' == typeof r ? P.ansi256(r) : r.startsWith('#') ? P.hex(r) : P[r])(e); + } + } + }, + 92409: (e, t, r) => { + 'use strict'; + var n; + r.d(t, { k: () => n }), + (function (e) { + (e[(e.SCRIPT = 0)] = 'SCRIPT'), (e[(e.SHELLCODE = 1)] = 'SHELLCODE'); + })(n || (n = {})); + }, + 62152: (e, t, r) => { + 'use strict'; + r.d(t, { h: () => i }); + var n = r(35691); + class i extends n.yG { + constructor({ configuration: e, stdout: t, suggestInstall: r = !0 }) { + super(), + (this.errorCount = 0), + (this.configuration = e), + (this.stdout = t), + (this.suggestInstall = r); + } + static async start(e, t) { + const r = new this(e); + try { + await t(r); + } catch (e) { + r.reportExceptionOnce(e); + } finally { + await r.finalize(); + } + return r; + } + hasErrors() { + return this.errorCount > 0; + } + exitCode() { + return this.hasErrors() ? 1 : 0; + } + reportCacheHit(e) {} + reportCacheMiss(e) {} + startTimerSync(e, t) { + return t(); + } + async startTimerPromise(e, t) { + return await t(); + } + async startCacheReport(e) { + return await e(); + } + reportSeparator() {} + reportInfo(e, t) {} + reportWarning(e, t) {} + reportError(e, t) { + (this.errorCount += 1), + this.stdout.write( + `${this.configuration.format('➤', 'redBright')} ${this.formatName(e)}: ${t}\n` + ); + } + reportProgress(e) { + return { + ...Promise.resolve().then(async () => { + for await (const {} of e); + }), + stop: () => {}, + }; + } + reportJson(e) {} + async finalize() { + this.errorCount > 0 && + (this.stdout.write( + this.configuration.format('➤', 'redBright') + + ' Errors happened when preparing the environment required to run this command.\n' + ), + this.suggestInstall && + this.stdout.write( + this.configuration.format('➤', 'redBright') + + ' This might be caused by packages being missing from the lockfile, in which case running "yarn install" might help.\n' + )); + } + formatName(e) { + return 'BR' + e.toString(10).padStart(4, '0'); + } + } + }, + 46611: (e, t, r) => { + 'use strict'; + r.d(t, { G: () => u }); + var n = r(78420), + i = r(46009), + o = r(55125), + s = r(53887), + A = r.n(s), + a = r(73632), + c = r(54143); + class u { + constructor() { + (this.indent = ' '), + (this.name = null), + (this.version = null), + (this.os = null), + (this.cpu = null), + (this.type = null), + (this.private = !1), + (this.license = null), + (this.main = null), + (this.module = null), + (this.languageName = null), + (this.bin = new Map()), + (this.scripts = new Map()), + (this.dependencies = new Map()), + (this.devDependencies = new Map()), + (this.peerDependencies = new Map()), + (this.workspaceDefinitions = []), + (this.dependenciesMeta = new Map()), + (this.peerDependenciesMeta = new Map()), + (this.resolutions = []), + (this.files = null), + (this.publishConfig = null), + (this.preferUnplugged = null), + (this.raw = {}), + (this.errors = []); + } + static async tryFind(e, { baseFs: t = new n.S() } = {}) { + const r = i.y1.join(e, (0, i.Zu)('package.json')); + return (await t.existsPromise(r)) ? await u.fromFile(r, { baseFs: t }) : null; + } + static async find(e, { baseFs: t } = {}) { + const r = await u.tryFind(e, { baseFs: t }); + if (null === r) throw new Error('Manifest not found'); + return r; + } + static async fromFile(e, { baseFs: t = new n.S() } = {}) { + const r = new u(); + return await r.loadFile(e, { baseFs: t }), r; + } + static fromText(e) { + const t = new u(); + return t.loadFromText(e), t; + } + loadFromText(e) { + let t; + try { + t = JSON.parse(h(e) || '{}'); + } catch (t) { + throw ((t.message += ` (when parsing ${e})`), t); + } + this.load(t), (this.indent = l(e)); + } + async loadFile(e, { baseFs: t = new n.S() }) { + const r = await t.readFilePromise(e, 'utf8'); + let i; + try { + i = JSON.parse(h(r) || '{}'); + } catch (t) { + throw ((t.message += ` (when parsing ${e})`), t); + } + this.load(i), (this.indent = l(r)); + } + load(e) { + if ('object' != typeof e || null === e) + throw new Error(`Utterly invalid manifest data (${e})`); + this.raw = e; + const t = []; + if ('string' == typeof e.name) + try { + this.name = c.parseIdent(e.name); + } catch (e) { + t.push(new Error("Parsing failed for the 'name' field")); + } + if (('string' == typeof e.version && (this.version = e.version), Array.isArray(e.os))) { + const r = []; + this.os = r; + for (const n of e.os) + 'string' != typeof n + ? t.push(new Error("Parsing failed for the 'os' field")) + : r.push(n); + } + if (Array.isArray(e.cpu)) { + const r = []; + this.cpu = r; + for (const n of e.cpu) + 'string' != typeof n + ? t.push(new Error("Parsing failed for the 'cpu' field")) + : r.push(n); + } + if ( + ('string' == typeof e.type && (this.type = e.type), + 'boolean' == typeof e.private && (this.private = e.private), + 'string' == typeof e.license && (this.license = e.license), + 'string' == typeof e.languageName && (this.languageName = e.languageName), + 'string' == typeof e.bin) + ) + null !== this.name + ? (this.bin = new Map([[this.name.name, e.bin]])) + : t.push(new Error('String bin field, but no attached package name')); + else if ('object' == typeof e.bin && null !== e.bin) + for (const [r, n] of Object.entries(e.bin)) + 'string' == typeof n + ? this.bin.set(r, n) + : t.push(new Error(`Invalid bin definition for '${r}'`)); + if ('object' == typeof e.scripts && null !== e.scripts) + for (const [r, n] of Object.entries(e.scripts)) + 'string' == typeof n + ? this.scripts.set(r, n) + : t.push(new Error(`Invalid script definition for '${r}'`)); + if ('object' == typeof e.dependencies && null !== e.dependencies) + for (const [r, n] of Object.entries(e.dependencies)) { + if ('string' != typeof n) { + t.push(new Error(`Invalid dependency range for '${r}'`)); + continue; + } + let e; + try { + e = c.parseIdent(r); + } catch (e) { + t.push(new Error(`Parsing failed for the dependency name '${r}'`)); + continue; + } + const i = c.makeDescriptor(e, n); + this.dependencies.set(i.identHash, i); + } + if ('object' == typeof e.devDependencies && null !== e.devDependencies) + for (const [r, n] of Object.entries(e.devDependencies)) { + if ('string' != typeof n) { + t.push(new Error(`Invalid dependency range for '${r}'`)); + continue; + } + let e; + try { + e = c.parseIdent(r); + } catch (e) { + t.push(new Error(`Parsing failed for the dependency name '${r}'`)); + continue; + } + const i = c.makeDescriptor(e, n); + this.devDependencies.set(i.identHash, i); + } + if ('object' == typeof e.peerDependencies && null !== e.peerDependencies) + for (let [r, n] of Object.entries(e.peerDependencies)) { + let e; + try { + e = c.parseIdent(r); + } catch (e) { + t.push(new Error(`Parsing failed for the dependency name '${r}'`)); + continue; + } + ('string' == typeof n && A().validRange(n)) || + (t.push(new Error(`Invalid dependency range for '${r}'`)), (n = '*')); + const i = c.makeDescriptor(e, n); + this.peerDependencies.set(i.identHash, i); + } + const r = Array.isArray(e.workspaces) + ? e.workspaces + : 'object' == typeof e.workspaces && + null !== e.workspaces && + Array.isArray(e.workspaces.packages) + ? e.workspaces.packages + : []; + for (const e of r) + 'string' == typeof e + ? this.workspaceDefinitions.push({ pattern: e }) + : t.push(new Error(`Invalid workspace definition for '${e}'`)); + if ('object' == typeof e.dependenciesMeta && null !== e.dependenciesMeta) + for (const [r, n] of Object.entries(e.dependenciesMeta)) { + if ('object' != typeof n || null === n) { + t.push(new Error("Invalid meta field for '" + r)); + continue; + } + const e = c.parseDescriptor(r), + i = this.ensureDependencyMeta(e); + Object.assign(i, n); + } + if ('object' == typeof e.peerDependenciesMeta && null !== e.peerDependenciesMeta) + for (const [r, n] of Object.entries(e.peerDependenciesMeta)) { + if ('object' != typeof n || null === n) { + t.push(new Error("Invalid meta field for '" + r)); + continue; + } + const e = c.parseDescriptor(r), + i = this.ensurePeerDependencyMeta(e); + Object.assign(i, n); + } + if ('object' == typeof e.resolutions && null !== e.resolutions) + for (const [r, n] of Object.entries(e.resolutions)) + if ('string' == typeof n) + try { + this.resolutions.push({ pattern: (0, o.parseResolution)(r), reference: n }); + } catch (e) { + t.push(e); + continue; + } + else t.push(new Error(`Invalid resolution entry for '${r}'`)); + if (Array.isArray(e.files) && 0 !== e.files.length) { + this.files = new Set(); + for (const r of e.files) + 'string' == typeof r + ? this.files.add(r) + : t.push(new Error(`Invalid files entry for '${r}'`)); + } + if ('object' == typeof e.publishConfig && null !== e.publishConfig) + if ( + ((this.publishConfig = {}), + 'string' == typeof e.publishConfig.access && + (this.publishConfig.access = e.publishConfig.access), + 'string' == typeof e.publishConfig.main && + (this.publishConfig.main = e.publishConfig.main), + 'string' == typeof e.publishConfig.registry && + (this.publishConfig.registry = e.publishConfig.registry), + 'string' == typeof e.publishConfig.module && + (this.publishConfig.module = e.publishConfig.module), + 'string' == typeof e.publishConfig.bin) + ) + null !== this.name + ? (this.publishConfig.bin = new Map([[this.name.name, e.publishConfig.bin]])) + : t.push(new Error('String bin field, but no attached package name')); + else if ('object' == typeof e.publishConfig.bin && null !== e.publishConfig.bin) { + this.publishConfig.bin = new Map(); + for (const [r, n] of Object.entries(e.publishConfig.bin)) + 'string' == typeof n + ? this.publishConfig.bin.set(r, n) + : t.push(new Error(`Invalid bin definition for '${r}'`)); + } + if ('object' == typeof e.optionalDependencies && null !== e.optionalDependencies) + for (const [r, n] of Object.entries(e.optionalDependencies)) { + if ('string' != typeof n) { + t.push(new Error(`Invalid dependency range for '${r}'`)); + continue; + } + let e; + try { + e = c.parseIdent(r); + } catch (e) { + t.push(new Error(`Parsing failed for the dependency name '${r}'`)); + continue; + } + const i = c.makeDescriptor(e, n); + this.dependencies.set(i.identHash, i); + const o = c.makeDescriptor(e, 'unknown'), + s = this.ensureDependencyMeta(o); + Object.assign(s, { optional: !0 }); + } + 'boolean' == typeof e.preferUnplugged && (this.preferUnplugged = e.preferUnplugged), + (this.errors = t); + } + getForScope(e) { + switch (e) { + case 'dependencies': + return this.dependencies; + case 'devDependencies': + return this.devDependencies; + case 'peerDependencies': + return this.peerDependencies; + default: + throw new Error(`Unsupported value ("${e}")`); + } + } + hasConsumerDependency(e) { + return !!this.dependencies.has(e.identHash) || !!this.peerDependencies.has(e.identHash); + } + hasHardDependency(e) { + return !!this.dependencies.has(e.identHash) || !!this.devDependencies.has(e.identHash); + } + hasSoftDependency(e) { + return !!this.peerDependencies.has(e.identHash); + } + hasDependency(e) { + return !!this.hasHardDependency(e) || !!this.hasSoftDependency(e); + } + isCompatibleWithOS(e) { + return null === this.os || g(this.os, e); + } + isCompatibleWithCPU(e) { + return null === this.cpu || g(this.cpu, e); + } + ensureDependencyMeta(e) { + if ('unknown' !== e.range && !A().valid(e.range)) + throw new Error(`Invalid meta field range for '${c.stringifyDescriptor(e)}'`); + const t = c.stringifyIdent(e), + r = 'unknown' !== e.range ? e.range : null; + let n = this.dependenciesMeta.get(t); + n || this.dependenciesMeta.set(t, (n = new Map())); + let i = n.get(r); + return i || n.set(r, (i = {})), i; + } + ensurePeerDependencyMeta(e) { + if ('unknown' !== e.range) + throw new Error(`Invalid meta field range for '${c.stringifyDescriptor(e)}'`); + const t = c.stringifyIdent(e); + let r = this.peerDependenciesMeta.get(t); + return ( + r || this.peerDependenciesMeta.set(t, (r = {})), + this.peerDependencies.has(e.identHash) || + this.peerDependencies.set(e.identHash, c.makeDescriptor(e, '*')), + r + ); + } + setRawField(e, t, { after: r = [] } = {}) { + const n = new Set(r.filter((e) => Object.prototype.hasOwnProperty.call(this.raw, e))); + if (0 === n.size || Object.prototype.hasOwnProperty.call(this.raw, e)) this.raw[e] = t; + else { + const r = this.raw, + i = (this.raw = {}); + let o = !1; + for (const s of Object.keys(r)) + (i[s] = r[s]), o || (n.delete(s), 0 === n.size && ((i[e] = t), (o = !0))); + } + } + exportTo(e, { compatibilityMode: t = !0 } = {}) { + Object.assign(e, this.raw), + null !== this.name ? (e.name = c.stringifyIdent(this.name)) : delete e.name, + null !== this.version ? (e.version = this.version) : delete e.version, + null !== this.os ? (e.os = this.os) : delete this.os, + null !== this.cpu ? (e.cpu = this.cpu) : delete this.cpu, + null !== this.type ? (e.type = this.type) : delete e.type, + this.private ? (e.private = !0) : delete e.private, + null !== this.license ? (e.license = this.license) : delete e.license, + null !== this.languageName + ? (e.languageName = this.languageName) + : delete e.languageName, + 1 === this.bin.size && null !== this.name && this.bin.has(this.name.name) + ? (e.bin = this.bin.get(this.name.name)) + : this.bin.size > 0 + ? (e.bin = Object.assign( + {}, + ...Array.from(this.bin.keys()) + .sort() + .map((e) => ({ [e]: this.bin.get(e) })) + )) + : delete e.bin; + const r = [], + n = []; + for (const e of this.dependencies.values()) { + const i = this.dependenciesMeta.get(c.stringifyIdent(e)); + let o = !1; + if (t && i) { + const e = i.get(null); + e && e.optional && (o = !0); + } + o ? n.push(e) : r.push(e); + } + r.length > 0 + ? (e.dependencies = Object.assign( + {}, + ...c.sortDescriptors(r).map((e) => ({ [c.stringifyIdent(e)]: e.range })) + )) + : delete e.dependencies, + n.length > 0 + ? (e.optionalDependencies = Object.assign( + {}, + ...c.sortDescriptors(n).map((e) => ({ [c.stringifyIdent(e)]: e.range })) + )) + : delete e.optionalDependencies, + this.devDependencies.size > 0 + ? (e.devDependencies = Object.assign( + {}, + ...c + .sortDescriptors(this.devDependencies.values()) + .map((e) => ({ [c.stringifyIdent(e)]: e.range })) + )) + : delete e.devDependencies, + this.peerDependencies.size > 0 + ? (e.peerDependencies = Object.assign( + {}, + ...c + .sortDescriptors(this.peerDependencies.values()) + .map((e) => ({ [c.stringifyIdent(e)]: e.range })) + )) + : delete e.peerDependencies, + (e.dependenciesMeta = {}); + for (const [r, n] of a.sortMap(this.dependenciesMeta.entries(), ([e, t]) => e)) + for (const [i, o] of a.sortMap(n.entries(), ([e, t]) => + null !== e ? '0' + e : '1' + )) { + const n = + null !== i ? c.stringifyDescriptor(c.makeDescriptor(c.parseIdent(r), i)) : r, + s = { ...o }; + t && null === i && delete s.optional, + 0 !== Object.keys(s).length && (e.dependenciesMeta[n] = s); + } + return ( + 0 === Object.keys(e.dependenciesMeta).length && delete e.dependenciesMeta, + this.peerDependenciesMeta.size > 0 + ? (e.peerDependenciesMeta = Object.assign( + {}, + ...a + .sortMap(this.peerDependenciesMeta.entries(), ([e, t]) => e) + .map(([e, t]) => ({ [e]: t })) + )) + : delete e.peerDependenciesMeta, + this.resolutions.length > 0 + ? (e.resolutions = Object.assign( + {}, + ...this.resolutions.map(({ pattern: e, reference: t }) => ({ + [(0, o.stringifyResolution)(e)]: t, + })) + )) + : delete e.resolutions, + null !== this.files ? (e.files = Array.from(this.files)) : delete e.files, + null !== this.preferUnplugged + ? (e.preferUnplugged = this.preferUnplugged) + : delete e.preferUnplugged, + e + ); + } + } + function l(e) { + const t = e.match(/^[ \t]+/m); + return t ? t[0] : ' '; + } + function h(e) { + return 65279 === e.charCodeAt(0) ? e.slice(1) : e; + } + function g(e, t) { + let r = !0, + n = !1; + for (const i of e) + if ('!' === i[0]) { + if (((n = !0), t === i.slice(1))) return !1; + } else if (((r = !1), i === t)) return !0; + return n && r; + } + (u.fileName = 'package.json'), + (u.allDependencies = ['dependencies', 'devDependencies', 'peerDependencies']), + (u.hardDependencies = ['dependencies', 'devDependencies']); + }, + 92659: (e, t, r) => { + 'use strict'; + var n; + r.d(t, { b: () => n }), + (function (e) { + (e[(e.UNNAMED = 0)] = 'UNNAMED'), + (e[(e.EXCEPTION = 1)] = 'EXCEPTION'), + (e[(e.MISSING_PEER_DEPENDENCY = 2)] = 'MISSING_PEER_DEPENDENCY'), + (e[(e.CYCLIC_DEPENDENCIES = 3)] = 'CYCLIC_DEPENDENCIES'), + (e[(e.DISABLED_BUILD_SCRIPTS = 4)] = 'DISABLED_BUILD_SCRIPTS'), + (e[(e.BUILD_DISABLED = 5)] = 'BUILD_DISABLED'), + (e[(e.SOFT_LINK_BUILD = 6)] = 'SOFT_LINK_BUILD'), + (e[(e.MUST_BUILD = 7)] = 'MUST_BUILD'), + (e[(e.MUST_REBUILD = 8)] = 'MUST_REBUILD'), + (e[(e.BUILD_FAILED = 9)] = 'BUILD_FAILED'), + (e[(e.RESOLVER_NOT_FOUND = 10)] = 'RESOLVER_NOT_FOUND'), + (e[(e.FETCHER_NOT_FOUND = 11)] = 'FETCHER_NOT_FOUND'), + (e[(e.LINKER_NOT_FOUND = 12)] = 'LINKER_NOT_FOUND'), + (e[(e.FETCH_NOT_CACHED = 13)] = 'FETCH_NOT_CACHED'), + (e[(e.YARN_IMPORT_FAILED = 14)] = 'YARN_IMPORT_FAILED'), + (e[(e.REMOTE_INVALID = 15)] = 'REMOTE_INVALID'), + (e[(e.REMOTE_NOT_FOUND = 16)] = 'REMOTE_NOT_FOUND'), + (e[(e.RESOLUTION_PACK = 17)] = 'RESOLUTION_PACK'), + (e[(e.CACHE_CHECKSUM_MISMATCH = 18)] = 'CACHE_CHECKSUM_MISMATCH'), + (e[(e.UNUSED_CACHE_ENTRY = 19)] = 'UNUSED_CACHE_ENTRY'), + (e[(e.MISSING_LOCKFILE_ENTRY = 20)] = 'MISSING_LOCKFILE_ENTRY'), + (e[(e.WORKSPACE_NOT_FOUND = 21)] = 'WORKSPACE_NOT_FOUND'), + (e[(e.TOO_MANY_MATCHING_WORKSPACES = 22)] = 'TOO_MANY_MATCHING_WORKSPACES'), + (e[(e.CONSTRAINTS_MISSING_DEPENDENCY = 23)] = 'CONSTRAINTS_MISSING_DEPENDENCY'), + (e[(e.CONSTRAINTS_INCOMPATIBLE_DEPENDENCY = 24)] = + 'CONSTRAINTS_INCOMPATIBLE_DEPENDENCY'), + (e[(e.CONSTRAINTS_EXTRANEOUS_DEPENDENCY = 25)] = 'CONSTRAINTS_EXTRANEOUS_DEPENDENCY'), + (e[(e.CONSTRAINTS_INVALID_DEPENDENCY = 26)] = 'CONSTRAINTS_INVALID_DEPENDENCY'), + (e[(e.CANT_SUGGEST_RESOLUTIONS = 27)] = 'CANT_SUGGEST_RESOLUTIONS'), + (e[(e.FROZEN_LOCKFILE_EXCEPTION = 28)] = 'FROZEN_LOCKFILE_EXCEPTION'), + (e[(e.CROSS_DRIVE_VIRTUAL_LOCAL = 29)] = 'CROSS_DRIVE_VIRTUAL_LOCAL'), + (e[(e.FETCH_FAILED = 30)] = 'FETCH_FAILED'), + (e[(e.DANGEROUS_NODE_MODULES = 31)] = 'DANGEROUS_NODE_MODULES'), + (e[(e.NODE_GYP_INJECTED = 32)] = 'NODE_GYP_INJECTED'), + (e[(e.AUTHENTICATION_NOT_FOUND = 33)] = 'AUTHENTICATION_NOT_FOUND'), + (e[(e.INVALID_CONFIGURATION_KEY = 34)] = 'INVALID_CONFIGURATION_KEY'), + (e[(e.NETWORK_ERROR = 35)] = 'NETWORK_ERROR'), + (e[(e.LIFECYCLE_SCRIPT = 36)] = 'LIFECYCLE_SCRIPT'), + (e[(e.CONSTRAINTS_MISSING_FIELD = 37)] = 'CONSTRAINTS_MISSING_FIELD'), + (e[(e.CONSTRAINTS_INCOMPATIBLE_FIELD = 38)] = 'CONSTRAINTS_INCOMPATIBLE_FIELD'), + (e[(e.CONSTRAINTS_EXTRANEOUS_FIELD = 39)] = 'CONSTRAINTS_EXTRANEOUS_FIELD'), + (e[(e.CONSTRAINTS_INVALID_FIELD = 40)] = 'CONSTRAINTS_INVALID_FIELD'), + (e[(e.AUTHENTICATION_INVALID = 41)] = 'AUTHENTICATION_INVALID'), + (e[(e.PROLOG_UNKNOWN_ERROR = 42)] = 'PROLOG_UNKNOWN_ERROR'), + (e[(e.PROLOG_SYNTAX_ERROR = 43)] = 'PROLOG_SYNTAX_ERROR'), + (e[(e.PROLOG_EXISTENCE_ERROR = 44)] = 'PROLOG_EXISTENCE_ERROR'), + (e[(e.STACK_OVERFLOW_RESOLUTION = 45)] = 'STACK_OVERFLOW_RESOLUTION'), + (e[(e.AUTOMERGE_FAILED_TO_PARSE = 46)] = 'AUTOMERGE_FAILED_TO_PARSE'), + (e[(e.AUTOMERGE_IMMUTABLE = 47)] = 'AUTOMERGE_IMMUTABLE'), + (e[(e.AUTOMERGE_SUCCESS = 48)] = 'AUTOMERGE_SUCCESS'), + (e[(e.AUTOMERGE_REQUIRED = 49)] = 'AUTOMERGE_REQUIRED'), + (e[(e.DEPRECATED_CLI_SETTINGS = 50)] = 'DEPRECATED_CLI_SETTINGS'), + (e[(e.PLUGIN_NAME_NOT_FOUND = 51)] = 'PLUGIN_NAME_NOT_FOUND'), + (e[(e.INVALID_PLUGIN_REFERENCE = 52)] = 'INVALID_PLUGIN_REFERENCE'), + (e[(e.CONSTRAINTS_AMBIGUITY = 53)] = 'CONSTRAINTS_AMBIGUITY'), + (e[(e.CACHE_OUTSIDE_PROJECT = 54)] = 'CACHE_OUTSIDE_PROJECT'), + (e[(e.IMMUTABLE_INSTALL = 55)] = 'IMMUTABLE_INSTALL'), + (e[(e.IMMUTABLE_CACHE = 56)] = 'IMMUTABLE_CACHE'), + (e[(e.INVALID_MANIFEST = 57)] = 'INVALID_MANIFEST'), + (e[(e.PACKAGE_PREPARATION_FAILED = 58)] = 'PACKAGE_PREPARATION_FAILED'), + (e[(e.INVALID_RANGE_PEER_DEPENDENCY = 59)] = 'INVALID_RANGE_PEER_DEPENDENCY'), + (e[(e.INCOMPATIBLE_PEER_DEPENDENCY = 60)] = 'INCOMPATIBLE_PEER_DEPENDENCY'), + (e[(e.DEPRECATED_PACKAGE = 61)] = 'DEPRECATED_PACKAGE'), + (e[(e.INCOMPATIBLE_OS = 62)] = 'INCOMPATIBLE_OS'), + (e[(e.INCOMPATIBLE_CPU = 63)] = 'INCOMPATIBLE_CPU'); + })(n || (n = {})); + }, + 27092: (e, t, r) => { + 'use strict'; + r.d(t, { B: () => i }); + var n = r(54143); + class i { + constructor(e) { + this.resolvers = e.filter((e) => e); + } + supportsDescriptor(e, t) { + return !!this.tryResolverByDescriptor(e, t); + } + supportsLocator(e, t) { + return !!this.tryResolverByLocator(e, t); + } + shouldPersistResolution(e, t) { + return this.getResolverByLocator(e, t).shouldPersistResolution(e, t); + } + bindDescriptor(e, t, r) { + return this.getResolverByDescriptor(e, r).bindDescriptor(e, t, r); + } + getResolutionDependencies(e, t) { + return this.getResolverByDescriptor(e, t).getResolutionDependencies(e, t); + } + async getCandidates(e, t, r) { + const n = this.getResolverByDescriptor(e, r); + return await n.getCandidates(e, t, r); + } + async resolve(e, t) { + const r = this.getResolverByLocator(e, t); + return await r.resolve(e, t); + } + tryResolverByDescriptor(e, t) { + const r = this.resolvers.find((r) => r.supportsDescriptor(e, t)); + return r || null; + } + getResolverByDescriptor(e, t) { + const r = this.resolvers.find((r) => r.supportsDescriptor(e, t)); + if (!r) + throw new Error( + n.prettyDescriptor(t.project.configuration, e) + + " isn't supported by any available resolver" + ); + return r; + } + tryResolverByLocator(e, t) { + const r = this.resolvers.find((r) => r.supportsLocator(e, t)); + return r || null; + } + getResolverByLocator(e, t) { + const r = this.resolvers.find((r) => r.supportsLocator(e, t)); + if (!r) + throw new Error( + n.prettyLocator(t.project.configuration, e) + + " isn't supported by any available resolver" + ); + return r; + } + } + }, + 40376: (e, t, r) => { + 'use strict'; + r.d(t, { I: () => ne }); + var n = r(56537), + i = r(46009), + o = r(35398), + s = r(55125), + A = r(17278), + a = r(76417); + function c() {} + function u(e, t, r, n, i) { + for (var o = 0, s = t.length, A = 0, a = 0; o < s; o++) { + var c = t[o]; + if (c.removed) { + if ( + ((c.value = e.join(n.slice(a, a + c.count))), (a += c.count), o && t[o - 1].added) + ) { + var u = t[o - 1]; + (t[o - 1] = t[o]), (t[o] = u); + } + } else { + if (!c.added && i) { + var l = r.slice(A, A + c.count); + (l = l.map(function (e, t) { + var r = n[a + t]; + return r.length > e.length ? r : e; + })), + (c.value = e.join(l)); + } else c.value = e.join(r.slice(A, A + c.count)); + (A += c.count), c.added || (a += c.count); + } + } + var h = t[s - 1]; + return ( + s > 1 && + 'string' == typeof h.value && + (h.added || h.removed) && + e.equals('', h.value) && + ((t[s - 2].value += h.value), t.pop()), + t + ); + } + function l(e) { + return { newPos: e.newPos, components: e.components.slice(0) }; + } + c.prototype = { + diff: function (e, t) { + var r = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}, + n = r.callback; + 'function' == typeof r && ((n = r), (r = {})), (this.options = r); + var i = this; + function o(e) { + return n + ? (setTimeout(function () { + n(void 0, e); + }, 0), + !0) + : e; + } + (e = this.castInput(e)), + (t = this.castInput(t)), + (e = this.removeEmpty(this.tokenize(e))); + var s = (t = this.removeEmpty(this.tokenize(t))).length, + A = e.length, + a = 1, + c = s + A, + h = [{ newPos: -1, components: [] }], + g = this.extractCommon(h[0], t, e, 0); + if (h[0].newPos + 1 >= s && g + 1 >= A) + return o([{ value: this.join(t), count: t.length }]); + function f() { + for (var r = -1 * a; r <= a; r += 2) { + var n = void 0, + c = h[r - 1], + g = h[r + 1], + f = (g ? g.newPos : 0) - r; + c && (h[r - 1] = void 0); + var p = c && c.newPos + 1 < s, + d = g && 0 <= f && f < A; + if (p || d) { + if ( + (!p || (d && c.newPos < g.newPos) + ? ((n = l(g)), i.pushComponent(n.components, void 0, !0)) + : ((n = c).newPos++, i.pushComponent(n.components, !0, void 0)), + (f = i.extractCommon(n, t, e, r)), + n.newPos + 1 >= s && f + 1 >= A) + ) + return o(u(i, n.components, t, e, i.useLongestToken)); + h[r] = n; + } else h[r] = void 0; + } + a++; + } + if (n) + !(function e() { + setTimeout(function () { + if (a > c) return n(); + f() || e(); + }, 0); + })(); + else + for (; a <= c; ) { + var p = f(); + if (p) return p; + } + }, + pushComponent: function (e, t, r) { + var n = e[e.length - 1]; + n && n.added === t && n.removed === r + ? (e[e.length - 1] = { count: n.count + 1, added: t, removed: r }) + : e.push({ count: 1, added: t, removed: r }); + }, + extractCommon: function (e, t, r, n) { + for ( + var i = t.length, o = r.length, s = e.newPos, A = s - n, a = 0; + s + 1 < i && A + 1 < o && this.equals(t[s + 1], r[A + 1]); + + ) + s++, A++, a++; + return a && e.components.push({ count: a }), (e.newPos = s), A; + }, + equals: function (e, t) { + return this.options.comparator + ? this.options.comparator(e, t) + : e === t || (this.options.ignoreCase && e.toLowerCase() === t.toLowerCase()); + }, + removeEmpty: function (e) { + for (var t = [], r = 0; r < e.length; r++) e[r] && t.push(e[r]); + return t; + }, + castInput: function (e) { + return e; + }, + tokenize: function (e) { + return e.split(''); + }, + join: function (e) { + return e.join(''); + }, + }; + new c(); + var h = /^[A-Za-z\xC0-\u02C6\u02C8-\u02D7\u02DE-\u02FF\u1E00-\u1EFF]+$/, + g = /\S/, + f = new c(); + (f.equals = function (e, t) { + return ( + this.options.ignoreCase && ((e = e.toLowerCase()), (t = t.toLowerCase())), + e === t || (this.options.ignoreWhitespace && !g.test(e) && !g.test(t)) + ); + }), + (f.tokenize = function (e) { + for (var t = e.split(/(\s+|[()[\]{}'"]|\b)/), r = 0; r < t.length - 1; r++) + !t[r + 1] && + t[r + 2] && + h.test(t[r]) && + h.test(t[r + 2]) && + ((t[r] += t[r + 2]), t.splice(r + 1, 2), r--); + return t; + }); + var p = new c(); + p.tokenize = function (e) { + var t = [], + r = e.split(/(\n|\r\n)/); + r[r.length - 1] || r.pop(); + for (var n = 0; n < r.length; n++) { + var i = r[n]; + n % 2 && !this.options.newlineIsToken + ? (t[t.length - 1] += i) + : (this.options.ignoreWhitespace && (i = i.trim()), t.push(i)); + } + return t; + }; + var d = new c(); + d.tokenize = function (e) { + return e.split(/(\S.+?[.!?])(?=\s+|$)/); + }; + var C = new c(); + function E(e) { + return (E = + 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator + ? function (e) { + return typeof e; + } + : function (e) { + return e && + 'function' == typeof Symbol && + e.constructor === Symbol && + e !== Symbol.prototype + ? 'symbol' + : typeof e; + })(e); + } + function I(e) { + return ( + (function (e) { + if (Array.isArray(e)) { + for (var t = 0, r = new Array(e.length); t < e.length; t++) r[t] = e[t]; + return r; + } + })(e) || + (function (e) { + if ( + Symbol.iterator in Object(e) || + '[object Arguments]' === Object.prototype.toString.call(e) + ) + return Array.from(e); + })(e) || + (function () { + throw new TypeError('Invalid attempt to spread non-iterable instance'); + })() + ); + } + C.tokenize = function (e) { + return e.split(/([{}:;,]|\s+)/); + }; + var m = Object.prototype.toString, + y = new c(); + (y.useLongestToken = !0), + (y.tokenize = p.tokenize), + (y.castInput = function (e) { + var t = this.options, + r = t.undefinedReplacement, + n = t.stringifyReplacer, + i = + void 0 === n + ? function (e, t) { + return void 0 === t ? r : t; + } + : n; + return 'string' == typeof e + ? e + : JSON.stringify( + (function e(t, r, n, i, o) { + (r = r || []), (n = n || []), i && (t = i(o, t)); + var s, A; + for (s = 0; s < r.length; s += 1) if (r[s] === t) return n[s]; + if ('[object Array]' === m.call(t)) { + for ( + r.push(t), A = new Array(t.length), n.push(A), s = 0; + s < t.length; + s += 1 + ) + A[s] = e(t[s], r, n, i, o); + return r.pop(), n.pop(), A; + } + t && t.toJSON && (t = t.toJSON()); + if ('object' === E(t) && null !== t) { + r.push(t), (A = {}), n.push(A); + var a, + c = []; + for (a in t) t.hasOwnProperty(a) && c.push(a); + for (c.sort(), s = 0; s < c.length; s += 1) + (a = c[s]), (A[a] = e(t[a], r, n, i, a)); + r.pop(), n.pop(); + } else A = t; + return A; + })(e, null, null, i), + i, + ' ' + ); + }), + (y.equals = function (e, t) { + return c.prototype.equals.call( + y, + e.replace(/,([\r\n])/g, '$1'), + t.replace(/,([\r\n])/g, '$1') + ); + }); + var w = new c(); + function B(e, t, r, n, i, o, s) { + s || (s = {}), void 0 === s.context && (s.context = 4); + var A = (function (e, t, r) { + return p.diff(e, t, r); + })(r, n, s); + function a(e) { + return e.map(function (e) { + return ' ' + e; + }); + } + A.push({ value: '', lines: [] }); + for ( + var c = [], + u = 0, + l = 0, + h = [], + g = 1, + f = 1, + d = function (e) { + var t = A[e], + i = t.lines || t.value.replace(/\n$/, '').split('\n'); + if (((t.lines = i), t.added || t.removed)) { + var o; + if (!u) { + var p = A[e - 1]; + (u = g), + (l = f), + p && + ((h = s.context > 0 ? a(p.lines.slice(-s.context)) : []), + (u -= h.length), + (l -= h.length)); + } + (o = h).push.apply( + o, + I( + i.map(function (e) { + return (t.added ? '+' : '-') + e; + }) + ) + ), + t.added ? (f += i.length) : (g += i.length); + } else { + if (u) + if (i.length <= 2 * s.context && e < A.length - 2) { + var d; + (d = h).push.apply(d, I(a(i))); + } else { + var C, + E = Math.min(i.length, s.context); + (C = h).push.apply(C, I(a(i.slice(0, E)))); + var m = { + oldStart: u, + oldLines: g - u + E, + newStart: l, + newLines: f - l + E, + lines: h, + }; + if (e >= A.length - 2 && i.length <= s.context) { + var y = /\n$/.test(r), + w = /\n$/.test(n), + B = 0 == i.length && h.length > m.oldLines; + !y && B && h.splice(m.oldLines, 0, '\\ No newline at end of file'), + ((y || B) && w) || h.push('\\ No newline at end of file'); + } + c.push(m), (u = 0), (l = 0), (h = []); + } + (g += i.length), (f += i.length); + } + }, + C = 0; + C < A.length; + C++ + ) + d(C); + return { oldFileName: e, newFileName: t, oldHeader: i, newHeader: o, hunks: c }; + } + (w.tokenize = function (e) { + return e.slice(); + }), + (w.join = w.removeEmpty = function (e) { + return e; + }); + var Q = r(58708), + v = r.n(Q), + D = r(61578), + b = r.n(D), + S = r(53887), + k = r.n(S), + x = r(31669), + F = r(68987), + M = r.n(F), + N = r(78761), + R = r.n(N), + K = r(27122), + L = r(92409), + T = r(92659), + P = r(54143); + const U = [ + [/^(git(?:\+(?:https|ssh))?:\/\/.*\.git)#(.*)$/, (e, t, r, n) => `${r}#commit:${n}`], + [ + /^https:\/\/((?:[^/]+?)@)?codeload\.github\.com\/([^/]+\/[^/]+)\/tar\.gz\/([0-9a-f]+)$/, + (e, t, r = '', n, i) => `https://${r}github.com/${n}.git#commit:${i}`, + ], + [ + /^https:\/\/((?:[^/]+?)@)?github\.com\/([^/]+\/[^/]+?)(?:\.git)?#([0-9a-f]+)$/, + (e, t, r = '', n, i) => `https://${r}github.com/${n}.git#commit:${i}`, + ], + [/^https?:\/\/[^/]+\/(?:@[^/]+\/)?([^/]+)\/-\/\1-[^/]+\.tgz(?:#|$)/, (e) => 'npm:' + e], + [/^[^/]+\.tgz#[0-9a-f]+$/, (e) => 'npm:' + e], + ]; + class _ { + constructor() { + this.resolutions = null; + } + async setup(e, { report: t }) { + const r = i.y1.join(e.cwd, e.configuration.get('lockfileFilename')); + if (!n.xfs.existsSync(r)) return; + const o = await n.xfs.readFilePromise(r, 'utf8'), + A = (0, s.parseSyml)(o); + if (Object.prototype.hasOwnProperty.call(A, '__metadata')) return; + const a = (this.resolutions = new Map()); + for (const r of Object.keys(A)) { + let n = P.tryParseDescriptor(r); + if (!n) { + t.reportWarning( + T.b.YARN_IMPORT_FAILED, + `Failed to parse the string "${r}" into a proper descriptor` + ); + continue; + } + k().validRange(n.range) && (n = P.makeDescriptor(n, 'npm:' + n.range)); + const { version: i, resolved: o } = A[r]; + if (!o) continue; + let s; + for (const [e, t] of U) { + const r = o.match(e); + if (r) { + s = t(i, ...r); + break; + } + } + if (!s) { + t.reportWarning( + T.b.YARN_IMPORT_FAILED, + `${P.prettyDescriptor( + e.configuration, + n + )}: Only some patterns can be imported from legacy lockfiles (not "${o}")` + ); + continue; + } + const c = P.makeLocator(n, s); + a.set(n.descriptorHash, c); + } + } + supportsDescriptor(e, t) { + return !!this.resolutions && this.resolutions.has(e.descriptorHash); + } + supportsLocator(e, t) { + return !1; + } + shouldPersistResolution(e, t) { + throw new Error( + "Assertion failed: This resolver doesn't support resolving locators to packages" + ); + } + bindDescriptor(e, t, r) { + return e; + } + getResolutionDependencies(e, t) { + return []; + } + async getCandidates(e, t, r) { + if (!this.resolutions) + throw new Error('Assertion failed: The resolution store should have been setup'); + const n = this.resolutions.get(e.descriptorHash); + if (!n) throw new Error('Assertion failed: The resolution should have been registered'); + return [n]; + } + async resolve(e, t) { + throw new Error( + "Assertion failed: This resolver doesn't support resolving locators to packages" + ); + } + } + class O { + supportsDescriptor(e, t) { + return ( + !!t.project.storedResolutions.get(e.descriptorHash) || + !!t.project.originalPackages.has(P.convertDescriptorToLocator(e).locatorHash) + ); + } + supportsLocator(e, t) { + return !!t.project.originalPackages.has(e.locatorHash); + } + shouldPersistResolution(e, t) { + throw new Error( + "The shouldPersistResolution method shouldn't be called on the lockfile resolver, which would always answer yes" + ); + } + bindDescriptor(e, t, r) { + return e; + } + getResolutionDependencies(e, t) { + return []; + } + async getCandidates(e, t, r) { + let n = r.project.originalPackages.get(P.convertDescriptorToLocator(e).locatorHash); + if (n) return [n]; + const i = r.project.storedResolutions.get(e.descriptorHash); + if (!i) + throw new Error( + 'Expected the resolution to have been successful - resolution not found' + ); + if (((n = r.project.originalPackages.get(i)), !n)) + throw new Error( + 'Expected the resolution to have been successful - package not found' + ); + return [n]; + } + async resolve(e, t) { + const r = t.project.originalPackages.get(e.locatorHash); + if (!r) + throw new Error( + "The lockfile resolver isn't meant to resolve packages - they should already have been stored into a cache" + ); + return r; + } + } + var j = r(46611), + Y = r(27092), + G = r(35691); + class J { + constructor(e) { + this.resolver = e; + } + supportsDescriptor(e, t) { + return this.resolver.supportsDescriptor(e, t); + } + supportsLocator(e, t) { + return this.resolver.supportsLocator(e, t); + } + shouldPersistResolution(e, t) { + return this.resolver.shouldPersistResolution(e, t); + } + bindDescriptor(e, t, r) { + return this.resolver.bindDescriptor(e, t, r); + } + getResolutionDependencies(e, t) { + return this.resolver.getResolutionDependencies(e, t); + } + async getCandidates(e, t, r) { + throw new G.lk( + T.b.MISSING_LOCKFILE_ENTRY, + "This package doesn't seem to be present in your lockfile; try to make an install to update your resolutions" + ); + } + async resolve(e, t) { + throw new G.lk( + T.b.MISSING_LOCKFILE_ENTRY, + "This package doesn't seem to be present in your lockfile; try to make an install to update your resolutions" + ); + } + } + var H = r(33720), + q = r(17722), + z = r(81111), + W = r(20624), + V = r(73632), + X = r(63088), + Z = r(36545), + $ = r(32485); + const ee = / *, */g, + te = (0, x.promisify)(R().gzip), + re = (0, x.promisify)(R().gunzip); + class ne { + constructor(e, { configuration: t }) { + (this.resolutionAliases = new Map()), + (this.workspaces = []), + (this.workspacesByCwd = new Map()), + (this.workspacesByIdent = new Map()), + (this.storedResolutions = new Map()), + (this.storedDescriptors = new Map()), + (this.storedPackages = new Map()), + (this.storedChecksums = new Map()), + (this.accessibleLocators = new Set()), + (this.originalPackages = new Map()), + (this.optionalBuilds = new Set()), + (this.lockFileChecksum = null), + (this.configuration = t), + (this.cwd = e); + } + static async find(e, t) { + if (!e.projectCwd) throw new A.UsageError('No project found in ' + t); + let r = e.projectCwd, + o = t, + s = null; + for (; s !== e.projectCwd; ) { + if (((s = o), n.xfs.existsSync(i.y1.join(s, (0, i.Zu)('package.json'))))) { + r = s; + break; + } + o = i.y1.dirname(s); + } + const a = new ne(e.projectCwd, { configuration: e }); + await a.setupResolutions(), await a.setupWorkspaces(); + const c = a.tryWorkspaceByCwd(r); + if (c) return { project: a, workspace: c, locator: c.anchoredLocator }; + const u = await a.findLocatorForLocation(r + '/'); + if (u) return { project: a, locator: u, workspace: null }; + throw new A.UsageError( + `The nearest package directory (${r}) doesn't seem to be part of the project declared at ${a.cwd}. If the project directory is right, it might be that you forgot to list a workspace. If it isn't, it's likely because you have a yarn.lock file at the detected location, confusing the project detection.` + ); + } + static generateBuildStateFile(e, t) { + let r = + '# Warning: This file is automatically generated. Removing it is fine, but will\n# cause all your builds to become invalidated.\n'; + const n = [...e].map(([e, r]) => { + const n = t.get(e); + if (void 0 === n) + throw new Error('Assertion failed: The locator should have been registered'); + return [P.stringifyLocator(n), n.locatorHash, r]; + }); + for (const [e, t, i] of V.sortMap(n, [(e) => e[0], (e) => e[1]])) + (r += '\n'), (r += `# ${e}\n`), (r += JSON.stringify(t) + ':\n'), (r += ` ${i}\n`); + return r; + } + async setupResolutions() { + (this.storedResolutions = new Map()), + (this.storedDescriptors = new Map()), + (this.storedPackages = new Map()), + (this.lockFileChecksum = null); + const e = i.y1.join(this.cwd, this.configuration.get('lockfileFilename')), + t = this.configuration.get('defaultLanguageName'); + if (n.xfs.existsSync(e)) { + const r = await n.xfs.readFilePromise(e, 'utf8'); + this.lockFileChecksum = W.makeHash('1', r); + const i = (0, s.parseSyml)(r); + if (i.__metadata) { + const e = i.__metadata.version, + r = i.__metadata.cacheKey; + for (const n of Object.keys(i)) { + if ('__metadata' === n) continue; + const o = i[n]; + if (void 0 === o.resolution) + throw new Error( + `Assertion failed: Expected the lockfile entry to have a resolution field (${n})` + ); + const s = P.parseLocator(o.resolution, !0), + A = new j.G(); + A.load(o); + const a = A.version, + c = A.languageName || t, + u = o.linkType.toUpperCase(), + l = A.dependencies, + h = A.peerDependencies, + g = A.dependenciesMeta, + f = A.peerDependenciesMeta, + p = A.bin; + if (null != o.checksum) { + const e = + void 0 === r || o.checksum.includes('/') ? o.checksum : `${r}/${o.checksum}`; + this.storedChecksums.set(s.locatorHash, e); + } + if (e >= 4) { + const e = { + ...s, + version: a, + languageName: c, + linkType: u, + dependencies: l, + peerDependencies: h, + dependenciesMeta: g, + peerDependenciesMeta: f, + bin: p, + }; + this.originalPackages.set(e.locatorHash, e); + } + for (const t of n.split(ee)) { + const r = P.parseDescriptor(t); + if ((this.storedDescriptors.set(r.descriptorHash, r), e >= 4)) + this.storedResolutions.set(r.descriptorHash, s.locatorHash); + else { + const e = P.convertLocatorToDescriptor(s); + e.descriptorHash !== r.descriptorHash && + (this.storedDescriptors.set(e.descriptorHash, e), + this.resolutionAliases.set(r.descriptorHash, e.descriptorHash)); + } + } + } + } + } + } + async setupWorkspaces() { + (this.workspaces = []), + (this.workspacesByCwd = new Map()), + (this.workspacesByIdent = new Map()); + let e = [this.cwd]; + for (; e.length > 0; ) { + const t = e; + e = []; + for (const r of t) { + if (this.workspacesByCwd.has(r)) continue; + const t = await this.addWorkspace(r), + n = this.storedPackages.get(t.anchoredLocator.locatorHash); + n && (t.dependencies = n.dependencies); + for (const r of t.workspacesCwds) e.push(r); + } + } + } + async addWorkspace(e) { + const t = new q.j(e, { project: this }); + await t.setup(); + const r = this.workspacesByIdent.get(t.locator.identHash); + if (void 0 !== r) + throw new Error( + `Duplicate workspace name ${P.prettyIdent( + this.configuration, + t.locator + )}: ${e} conflicts with ${r.cwd}` + ); + return ( + this.workspaces.push(t), + this.workspacesByCwd.set(e, t), + this.workspacesByIdent.set(t.locator.identHash, t), + t + ); + } + get topLevelWorkspace() { + return this.getWorkspaceByCwd(this.cwd); + } + tryWorkspaceByCwd(e) { + i.y1.isAbsolute(e) || (e = i.y1.resolve(this.cwd, e)); + const t = this.workspacesByCwd.get(e); + return t || null; + } + getWorkspaceByCwd(e) { + const t = this.tryWorkspaceByCwd(e); + if (!t) throw new Error(`Workspace not found (${e})`); + return t; + } + tryWorkspaceByFilePath(e) { + let t = null; + for (const r of this.workspaces) { + i.y1.relative(r.cwd, e).startsWith('../') || + (t && t.cwd.length >= r.cwd.length) || + (t = r); + } + return t || null; + } + getWorkspaceByFilePath(e) { + const t = this.tryWorkspaceByFilePath(e); + if (!t) throw new Error(`Workspace not found (${e})`); + return t; + } + tryWorkspaceByIdent(e) { + const t = this.workspacesByIdent.get(e.identHash); + return void 0 === t ? null : t; + } + getWorkspaceByIdent(e) { + const t = this.tryWorkspaceByIdent(e); + if (!t) + throw new Error(`Workspace not found (${P.prettyIdent(this.configuration, e)})`); + return t; + } + tryWorkspaceByDescriptor(e) { + const t = this.tryWorkspaceByIdent(e); + return null !== t && t.accepts(e.range) ? t : null; + } + getWorkspaceByDescriptor(e) { + const t = this.tryWorkspaceByDescriptor(e); + if (null === t) + throw new Error(`Workspace not found (${P.prettyDescriptor(this.configuration, e)})`); + return t; + } + tryWorkspaceByLocator(e) { + P.isVirtualLocator(e) && (e = P.devirtualizeLocator(e)); + const t = this.tryWorkspaceByIdent(e); + return null === t || + (t.locator.locatorHash !== e.locatorHash && + t.anchoredLocator.locatorHash !== e.locatorHash) + ? null + : t; + } + getWorkspaceByLocator(e) { + const t = this.tryWorkspaceByLocator(e); + if (!t) + throw new Error(`Workspace not found (${P.prettyLocator(this.configuration, e)})`); + return t; + } + refreshWorkspaceDependencies() { + for (const e of this.workspaces) { + const t = this.storedPackages.get(e.anchoredLocator.locatorHash); + if (!t) throw new Error('Assertion failed: Expected workspace to have been resolved'); + e.dependencies = new Map(t.dependencies); + } + } + forgetResolution(e) { + for (const [t, r] of this.storedResolutions) { + const n = 'descriptorHash' in e && e.descriptorHash === t, + i = 'locatorHash' in e && e.locatorHash === r; + (n || i) && + (this.storedDescriptors.delete(t), + this.storedResolutions.delete(t), + this.originalPackages.delete(r)); + } + } + forgetTransientResolutions() { + const e = this.configuration.makeResolver(); + for (const t of this.originalPackages.values()) { + let r; + try { + r = e.shouldPersistResolution(t, { project: this, resolver: e }); + } catch (e) { + r = !1; + } + r || this.forgetResolution(t); + } + } + forgetVirtualResolutions() { + for (const e of this.storedPackages.values()) + for (const [t, r] of e.dependencies) + P.isVirtualDescriptor(r) && e.dependencies.set(t, P.devirtualizeDescriptor(r)); + } + getDependencyMeta(e, t) { + const r = {}, + n = this.topLevelWorkspace.manifest.dependenciesMeta.get(P.stringifyIdent(e)); + if (!n) return r; + const i = n.get(null); + if ((i && Object.assign(r, i), null === t || !k().valid(t))) return r; + for (const [e, i] of n) null !== e && e === t && Object.assign(r, i); + return r; + } + async findLocatorForLocation(e) { + const t = new H.$(), + r = this.configuration.getLinkers(), + n = { project: this, report: t }; + for (const t of r) { + const r = await t.findPackageLocator(e, n); + if (r) return r; + } + return null; + } + async validateEverything(e) { + for (const t of e.validationWarnings) e.report.reportWarning(t.name, t.text); + for (const t of e.validationErrors) e.report.reportError(t.name, t.text); + } + async resolveEverything(e) { + if (!this.workspacesByCwd || !this.workspacesByIdent) + throw new Error('Workspaces must have been setup before calling this function'); + this.forgetVirtualResolutions(), e.lockfileOnly || this.forgetTransientResolutions(); + const t = e.resolver || this.configuration.makeResolver(), + r = new _(); + await r.setup(this, { report: e.report }); + const o = e.lockfileOnly ? new Y.B([new O(), new J(t)]) : new Y.B([new O(), r, t]), + s = this.configuration.makeFetcher(), + A = e.lockfileOnly + ? { project: this, report: e.report, resolver: o } + : { + project: this, + report: e.report, + resolver: o, + fetchOptions: { + project: this, + cache: e.cache, + checksums: this.storedChecksums, + report: e.report, + fetcher: s, + }, + }, + a = new Map(), + c = new Map(), + u = new Map(), + l = new Map(), + h = new Map(), + g = new Set(); + let f = new Set(); + for (const e of this.workspaces) { + const t = e.anchoredDescriptor; + a.set(t.descriptorHash, t), f.add(t.descriptorHash); + } + const p = b()(10); + for (; 0 !== f.size; ) { + const e = f; + f = new Set(); + for (const t of e) u.has(t) && e.delete(t); + if (0 === e.size) break; + const t = new Set(), + r = new Map(); + for (const n of e) { + const i = a.get(n); + if (!i) + throw new Error('Assertion failed: The descriptor should have been registered'); + let s = h.get(n); + if (void 0 === s) { + h.set(n, (s = new Set())); + for (const e of o.getResolutionDependencies(i, A)) + a.set(e.descriptorHash, e), s.add(e.descriptorHash); + } + const l = V.getMapWithDefault(r, n); + for (const r of s) { + const i = u.get(r); + if (void 0 !== i) { + const e = c.get(i); + if (void 0 === e) + throw new Error('Assertion failed: The package should have been registered'); + l.set(r, e); + } else t.add(n), e.add(r); + } + } + for (const r of t) e.delete(r), f.add(r); + if (0 === e.size) + throw new Error( + 'Assertion failed: Descriptors should not have cyclic dependencies' + ); + const n = new Map( + await Promise.all( + Array.from(e).map((e) => + p(async () => { + const t = a.get(e); + if (void 0 === t) + throw new Error( + 'Assertion failed: The descriptor should have been registered' + ); + const n = r.get(t.descriptorHash); + if (void 0 === n) + throw new Error( + 'Assertion failed: The descriptor dependencies should have been registered' + ); + let i; + try { + i = await o.getCandidates(t, n, A); + } catch (e) { + throw ( + ((e.message = `${P.prettyDescriptor(this.configuration, t)}: ${ + e.message + }`), + e) + ); + } + if (0 === i.length) + throw new Error( + 'No candidate found for ' + P.prettyDescriptor(this.configuration, t) + ); + return [t.descriptorHash, i]; + }) + ) + ) + ), + i = new Map(); + for (const [e, t] of n) 1 === t.length && (i.set(e, t[0]), n.delete(e)); + for (const [e, t] of n) { + const r = t.find((e) => c.has(e.locatorHash)); + r && (i.set(e, r), n.delete(e)); + } + if (n.size > 0) { + const e = new (v().Solver)(); + for (const t of n.values()) e.require(v().or(...t.map((e) => e.locatorHash))); + let t, + r = 100, + o = null, + s = 1 / 0; + for (; r > 0 && null !== (t = e.solve()); ) { + const n = t.getTrueVars(); + e.forbid(t.getFormula()), n.length < s && ((o = n), (s = n.length)), (r -= 1); + } + if (!o) throw new Error('Assertion failed: No resolution found by the SAT solver'); + const A = new Set(o); + for (const [e, t] of n.entries()) { + const r = t.find((e) => A.has(e.locatorHash)); + if (!r) + throw new Error( + 'Assertion failed: The descriptor should have been solved during the previous step' + ); + i.set(e, r), n.delete(e); + } + } + const s = Array.from(i.values()).filter((e) => !c.has(e.locatorHash)), + d = new Map( + await Promise.all( + s.map(async (e) => { + const t = await V.prettifyAsyncErrors( + async () => await o.resolve(e, A), + (t) => `${P.prettyLocator(this.configuration, e)}: ${t}` + ); + if (!P.areLocatorsEqual(e, t)) + throw new Error( + `Assertion failed: The locator cannot be changed by the resolver (went from ${P.prettyLocator( + this.configuration, + e + )} to ${P.prettyLocator(this.configuration, t)})` + ); + const r = this.configuration.normalizePackage(t); + for (const [t, n] of r.dependencies) { + const i = await this.configuration.reduceHook( + (e) => e.reduceDependency, + n, + this, + r, + n, + { resolver: o, resolveOptions: A } + ); + if (!P.areIdentsEqual(n, i)) + throw new Error( + 'Assertion failed: The descriptor ident cannot be changed through aliases' + ); + const s = o.bindDescriptor(i, e, A); + r.dependencies.set(t, s); + } + return [r.locatorHash, { original: t, pkg: r }]; + }) + ) + ); + for (const t of e) { + const e = i.get(t); + if (!e) + throw new Error('Assertion failed: The locator should have been registered'); + u.set(t, e.locatorHash); + const r = d.get(e.locatorHash); + if (void 0 === r) continue; + const { original: n, pkg: o } = r; + l.set(n.locatorHash, n), c.set(o.locatorHash, o); + for (const e of o.dependencies.values()) { + a.set(e.descriptorHash, e), f.add(e.descriptorHash); + const t = this.resolutionAliases.get(e.descriptorHash); + if (void 0 === t) continue; + if (e.descriptorHash === t) continue; + const r = this.storedDescriptors.get(t); + if (!r) + throw new Error('Assertion failed: The alias should have been registered'); + u.has(e.descriptorHash) || + (u.set(e.descriptorHash, 'temporary'), + f.delete(e.descriptorHash), + f.add(t), + a.set(t, r), + g.add(e.descriptorHash)); + } + } + } + for (; g.size > 0; ) { + let e = !1; + for (const t of g) { + if (!a.get(t)) + throw new Error('Assertion failed: The descriptor should have been registered'); + const r = this.resolutionAliases.get(t); + if (void 0 === r) + throw new Error('Assertion failed: The descriptor should have an alias'); + const n = u.get(r); + if (void 0 === n) + throw new Error('Assertion failed: The resolution should have been registered'); + 'temporary' !== n && (g.delete(t), u.set(t, n), (e = !0)); + } + if (!e) throw new Error('Alias loop detected'); + } + const d = new Set(this.resolutionAliases.values()), + C = new Set(c.keys()), + E = new Set(); + !(function ({ + project: e, + allDescriptors: t, + allResolutions: r, + allPackages: o, + accessibleLocators: s = new Set(), + optionalBuilds: A = new Set(), + volatileDescriptors: a = new Set(), + report: c, + tolerateMissingPackages: u = !1, + }) { + const l = new Map(), + h = [], + g = new Map(), + f = new Map(), + p = new Map( + e.workspaces.map((e) => { + const t = e.anchoredLocator.locatorHash, + r = o.get(t); + if (void 0 === r) { + if (u) return [t, null]; + throw new Error( + 'Assertion failed: The workspace should have an associated package' + ); + } + return [t, P.copyPackage(r)]; + }) + ), + d = () => { + const e = n.xfs.mktempSync(), + t = i.y1.join(e, 'stacktrace.log'), + r = String(h.length + 1).length, + o = h + .map((e, t) => `${(t + 1 + '.').padStart(r, ' ')} ${P.stringifyLocator(e)}\n`) + .join(''); + throw ( + (n.xfs.writeFileSync(t, o), + new G.lk( + T.b.STACK_OVERFLOW_RESOLUTION, + 'Encountered a stack overflow when resolving peer dependencies; cf ' + t + )) + ); + }, + C = (e) => { + const t = r.get(e.descriptorHash); + if (void 0 === t) + throw new Error('Assertion failed: The resolution should have been registered'); + const n = o.get(t); + if (!n) throw new Error('Assertion failed: The package could not be found'); + return n; + }, + E = (e, t, r) => { + h.length > 1e3 && d(), h.push(e); + const n = I(e, t, r); + return h.pop(), n; + }, + I = (n, i, h) => { + if (s.has(n.locatorHash)) return; + s.add(n.locatorHash), h || A.delete(n.locatorHash); + const I = o.get(n.locatorHash); + if (!I) { + if (u) return; + throw new Error( + `Assertion failed: The package (${P.prettyLocator( + e.configuration, + n + )}) should have been registered` + ); + } + const m = [], + y = [], + w = [], + B = [], + Q = []; + for (const s of Array.from(I.dependencies.values())) { + if (I.peerDependencies.has(s.identHash) && !i) continue; + if (P.isVirtualDescriptor(s)) + throw new Error( + "Assertion failed: Virtual packages shouldn't be encountered when virtualizing a branch" + ); + a.delete(s.descriptorHash); + let A = h; + if (!A) { + const e = I.dependenciesMeta.get(P.stringifyIdent(s)); + if (void 0 !== e) { + const t = e.get(null); + void 0 !== t && t.optional && (A = !0); + } + } + const g = r.get(s.descriptorHash); + if (!g) { + if (u) continue; + throw new Error( + `Assertion failed: The resolution (${P.prettyDescriptor( + e.configuration, + s + )}) should have been registered` + ); + } + const v = p.get(g) || o.get(g); + if (!v) + throw new Error( + `Assertion failed: The package (${g}, resolved from ${P.prettyDescriptor( + e.configuration, + s + )}) should have been registered` + ); + if (0 === v.peerDependencies.size) { + E(v, !1, A); + continue; + } + const D = l.get(v.locatorHash); + let b, S; + 'number' == typeof D && D >= 2 && d(); + const k = new Set(); + y.push(() => { + (b = P.virtualizeDescriptor(s, n.locatorHash)), + (S = P.virtualizePackage(v, n.locatorHash)), + I.dependencies.delete(s.identHash), + I.dependencies.set(b.identHash, b), + r.set(b.descriptorHash, S.locatorHash), + t.set(b.descriptorHash, b), + o.set(S.locatorHash, S), + m.push([v, b, S]); + }), + w.push(() => { + for (const i of S.peerDependencies.values()) { + let o = I.dependencies.get(i.identHash); + if ( + (!o && + P.areIdentsEqual(n, i) && + ((o = P.convertLocatorToDescriptor(n)), + t.set(o.descriptorHash, o), + r.set(o.descriptorHash, n.locatorHash), + a.delete(o.descriptorHash)), + o || !S.dependencies.has(i.identHash)) + ) { + if (!o) { + if (!I.peerDependencies.has(i.identHash)) { + const t = S.peerDependenciesMeta.get(P.stringifyIdent(i)); + null === c || + (t && t.optional) || + c.reportWarning( + T.b.MISSING_PEER_DEPENDENCY, + `${P.prettyLocator( + e.configuration, + n + )} doesn't provide ${P.prettyDescriptor( + e.configuration, + i + )} requested by ${P.prettyLocator(e.configuration, v)}` + ); + } + o = P.makeDescriptor(i, 'missing:'); + } + if ((S.dependencies.set(o.identHash, o), P.isVirtualDescriptor(o))) { + V.getSetWithDefault(f, o.descriptorHash).add(S.locatorHash); + } + if ('missing:' === o.range) k.add(o.identHash); + else if (null !== c) { + const t = C(o); + Z.satisfiesWithPrereleases(t.version, i.range) || + c.reportWarning( + T.b.INCOMPATIBLE_PEER_DEPENDENCY, + `${P.prettyLocator( + e.configuration, + n + )} provides ${P.prettyLocator(e.configuration, t)} with version ${ + t.version + } which doesn't satisfy ${P.prettyRange( + e.configuration, + i.range + )} requested by ${P.prettyLocator(e.configuration, v)}` + ); + } + } else S.peerDependencies.delete(i.identHash); + } + S.dependencies = new Map( + V.sortMap(S.dependencies, ([e, t]) => P.stringifyIdent(t)) + ); + }), + B.push(() => { + if (!o.has(S.locatorHash)) return; + const e = l.get(v.locatorHash), + t = void 0 !== e ? e + 1 : 1; + l.set(v.locatorHash, t), E(S, !1, A), l.set(v.locatorHash, t - 1); + }), + Q.push(() => { + if (o.has(S.locatorHash)) for (const e of k) S.dependencies.delete(e); + }); + } + for (const e of [...y, ...w]) e(); + let v; + do { + v = !0; + for (const [n, i, A] of m) { + if (!o.has(A.locatorHash)) continue; + const a = V.getMapWithDefault(g, n.locatorHash), + c = W.makeHash( + ...[...A.dependencies.values()].map((t) => { + const n = 'missing:' !== t.range ? r.get(t.descriptorHash) : 'missing:'; + if (void 0 === n) + throw new Error( + `Assertion failed: Expected the resolution for ${P.prettyDescriptor( + e.configuration, + t + )} to have been registered` + ); + return n; + }) + ), + u = a.get(c); + if (void 0 === u) { + a.set(c, i); + continue; + } + if (u === i) continue; + (v = !1), + o.delete(A.locatorHash), + t.delete(i.descriptorHash), + r.delete(i.descriptorHash), + s.delete(A.locatorHash); + const l = f.get(i.descriptorHash) || [], + h = [I.locatorHash, ...l]; + for (const e of h) { + const t = o.get(e); + void 0 !== t && t.dependencies.set(i.identHash, u); + } + } + } while (!v); + for (const e of [...B, ...Q]) e(); + }; + for (const t of e.workspaces) + a.delete(t.anchoredDescriptor.descriptorHash), E(t.anchoredLocator, !0, !1); + })({ + project: this, + report: e.report, + accessibleLocators: E, + volatileDescriptors: d, + optionalBuilds: C, + allDescriptors: a, + allResolutions: u, + allPackages: c, + }); + for (const e of d) a.delete(e), u.delete(e); + (this.storedResolutions = u), + (this.storedDescriptors = a), + (this.storedPackages = c), + (this.accessibleLocators = E), + (this.originalPackages = l), + (this.optionalBuilds = C), + this.refreshWorkspaceDependencies(); + } + async fetchEverything({ cache: e, report: t, fetcher: r }) { + const n = r || this.configuration.makeFetcher(), + i = { + checksums: this.storedChecksums, + project: this, + cache: e, + fetcher: n, + report: t, + }, + o = V.sortMap(this.storedResolutions.values(), [ + (e) => { + const t = this.storedPackages.get(e); + if (!t) + throw new Error('Assertion failed: The locator should have been registered'); + return P.stringifyLocator(t); + }, + ]); + let s = !1; + const A = G.yG.progressViaCounter(o.length); + t.reportProgress(A); + const a = b()(32); + if ( + (await t.startCacheReport(async () => { + await Promise.all( + o.map((e) => + a(async () => { + const r = this.storedPackages.get(e); + if (!r) + throw new Error( + 'Assertion failed: The locator should have been registered' + ); + if (P.isVirtualLocator(r)) return; + let o; + try { + o = await n.fetch(r, i); + } catch (e) { + return ( + (e.message = `${P.prettyLocator(this.configuration, r)}: ${e.message}`), + t.reportExceptionOnce(e), + void (s = e) + ); + } + o.checksum + ? this.storedChecksums.set(r.locatorHash, o.checksum) + : this.storedChecksums.delete(r.locatorHash), + o.releaseFs && o.releaseFs(); + }).finally(() => { + A.tick(); + }) + ) + ); + }), + s) + ) + throw s; + } + async linkEverything({ cache: e, report: t, fetcher: r }) { + const o = r || this.configuration.makeFetcher(), + A = { + checksums: this.storedChecksums, + project: this, + cache: e, + fetcher: o, + report: t, + skipIntegrityCheck: !0, + }, + c = this.configuration.getLinkers(), + u = { project: this, report: t }, + l = new Map(c.map((e) => [e, e.makeInstaller(u)])), + h = new Map(), + g = new Map(), + f = new Map(); + for (const e of this.accessibleLocators) { + const t = this.storedPackages.get(e); + if (!t) throw new Error('Assertion failed: The locator should have been registered'); + const r = await o.fetch(t, A); + if (null !== this.tryWorkspaceByLocator(t)) { + const e = [], + { scripts: n } = await j.G.find(r.prefixPath, { baseFs: r.packageFs }); + for (const t of ['preinstall', 'install', 'postinstall']) + n.has(t) && e.push([L.k.SCRIPT, t]); + try { + for (const e of l.values()) await e.installPackage(t, r); + } finally { + r.releaseFs && r.releaseFs(); + } + const o = i.y1.join(r.packageFs.getRealPath(), r.prefixPath); + g.set(t.locatorHash, o), + e.length > 0 && f.set(t.locatorHash, { directives: e, buildLocations: [o] }); + } else { + const e = c.find((e) => e.supportsPackage(t, u)); + if (!e) + throw new G.lk( + T.b.LINKER_NOT_FOUND, + P.prettyLocator(this.configuration, t) + + " isn't supported by any available linker" + ); + const n = l.get(e); + if (!n) + throw new Error('Assertion failed: The installer should have been registered'); + let i; + try { + i = await n.installPackage(t, r); + } finally { + r.releaseFs && r.releaseFs(); + } + h.set(t.locatorHash, e), + g.set(t.locatorHash, i.packageLocation), + i.buildDirective && + i.packageLocation && + f.set(t.locatorHash, { + directives: i.buildDirective, + buildLocations: [i.packageLocation], + }); + } + } + const p = new Map(); + for (const e of this.accessibleLocators) { + const t = this.storedPackages.get(e); + if (!t) throw new Error('Assertion failed: The locator should have been registered'); + const r = null !== this.tryWorkspaceByLocator(t), + n = async (e, n) => { + const i = g.get(t.locatorHash); + if (void 0 === i) + throw new Error( + `Assertion failed: The package (${P.prettyLocator( + this.configuration, + t + )}) should have been registered` + ); + const o = []; + for (const n of t.dependencies.values()) { + const s = this.storedResolutions.get(n.descriptorHash); + if (void 0 === s) + throw new Error( + `Assertion failed: The resolution (${P.prettyDescriptor( + this.configuration, + n + )}, from ${P.prettyLocator( + this.configuration, + t + )})should have been registered` + ); + const A = this.storedPackages.get(s); + if (void 0 === A) + throw new Error( + `Assertion failed: The package (${s}, resolved from ${P.prettyDescriptor( + this.configuration, + n + )}) should have been registered` + ); + const a = null === this.tryWorkspaceByLocator(A) ? h.get(s) : null; + if (void 0 === a) + throw new Error( + `Assertion failed: The package (${s}, resolved from ${P.prettyDescriptor( + this.configuration, + n + )}) should have been registered` + ); + const c = null === a; + if (a === e || r || c) null !== g.get(A.locatorHash) && o.push([n, A]); + else if (null !== i) { + V.getArrayWithDefault(p, s).push(i); + } + } + null !== i && (await n.attachInternalDependencies(t, o)); + }; + if (r) for (const [e, t] of l) await n(e, t); + else { + const e = h.get(t.locatorHash); + if (!e) throw new Error('Assertion failed: The linker should have been found'); + const r = l.get(e); + if (!r) + throw new Error('Assertion failed: The installer should have been registered'); + await n(e, r); + } + } + for (const [e, t] of p) { + const r = this.storedPackages.get(e); + if (!r) throw new Error('Assertion failed: The package should have been registered'); + const n = h.get(r.locatorHash); + if (!n) throw new Error('Assertion failed: The linker should have been found'); + const i = l.get(n); + if (!i) + throw new Error('Assertion failed: The installer should have been registered'); + await i.attachExternalDependents(r, t); + } + for (const e of l.values()) { + const t = await e.finalizeInstall(); + if (t) + for (const e of t) + e.buildDirective && + f.set(e.locatorHash, { + directives: e.buildDirective, + buildLocations: e.buildLocations, + }); + } + const d = new Set(this.storedPackages.keys()), + C = new Set(f.keys()); + for (const e of C) d.delete(e); + const E = (0, a.createHash)('sha512'); + E.update(process.versions.node), + this.configuration.triggerHook( + (e) => e.globalHashGeneration, + this, + (e) => { + E.update('\0'), E.update(e); + } + ); + const I = E.digest('hex'), + m = new Map(), + y = (e) => { + let t = m.get(e.locatorHash); + if (void 0 !== t) return t; + const r = this.storedPackages.get(e.locatorHash); + if (void 0 === r) + throw new Error('Assertion failed: The package should have been registered'); + const n = (0, a.createHash)('sha512'); + n.update(e.locatorHash), m.set(e.locatorHash, ''); + for (const e of r.dependencies.values()) { + const t = this.storedResolutions.get(e.descriptorHash); + if (void 0 === t) + throw new Error( + `Assertion failed: The resolution (${P.prettyDescriptor( + this.configuration, + e + )}) should have been registered` + ); + if (void 0 === this.storedPackages.get(t)) + throw new Error('Assertion failed: The package should have been registered'); + n.update(y(r)); + } + return (t = n.digest('hex')), m.set(e.locatorHash, t), t; + }, + w = (e, t) => { + const r = (0, a.createHash)('sha512'); + r.update(I), r.update(y(e)); + for (const e of t) r.update(e); + return r.digest('hex'); + }, + B = this.configuration.get('bstatePath'), + Q = n.xfs.existsSync(B) + ? (0, s.parseSyml)(await n.xfs.readFilePromise(B, 'utf8')) + : {}, + v = new Map(); + for (; C.size > 0; ) { + const e = C.size, + r = []; + for (const e of C) { + const o = this.storedPackages.get(e); + if (!o) + throw new Error('Assertion failed: The package should have been registered'); + let s = !0; + for (const e of o.dependencies.values()) { + const t = this.storedResolutions.get(e.descriptorHash); + if (!t) + throw new Error( + `Assertion failed: The resolution (${P.prettyDescriptor( + this.configuration, + e + )}) should have been registered` + ); + if (C.has(t)) { + s = !1; + break; + } + } + if (!s) continue; + C.delete(e); + const A = f.get(o.locatorHash); + if (!A) + throw new Error( + 'Assertion failed: The build directive should have been registered' + ); + const a = w(o, A.buildLocations); + if ( + Object.prototype.hasOwnProperty.call(Q, o.locatorHash) && + Q[o.locatorHash] === a + ) + v.set(o.locatorHash, a); + else { + Object.prototype.hasOwnProperty.call(Q, o.locatorHash) + ? t.reportInfo( + T.b.MUST_REBUILD, + P.prettyLocator(this.configuration, o) + + ' must be rebuilt because its dependency tree changed' + ) + : t.reportInfo( + T.b.MUST_BUILD, + P.prettyLocator(this.configuration, o) + + ' must be built because it never did before or the last one failed' + ); + for (const e of A.buildLocations) { + if (!i.y1.isAbsolute(e)) + throw new Error( + `Assertion failed: Expected the build location to be absolute (not ${e})` + ); + r.push( + (async () => { + for (const [r, s] of A.directives) { + let A = `# This file contains the result of Yarn building a package (${P.stringifyLocator( + o + )})\n`; + switch (r) { + case L.k.SCRIPT: + A += `# Script name: ${s}\n`; + break; + case L.k.SHELLCODE: + A += `# Script code: ${s}\n`; + } + const c = null; + await n.xfs.mktempPromise(async (u) => { + const l = i.y1.join(u, 'build.log'), + { stdout: h, stderr: g } = this.configuration.getSubprocessStreams( + l, + { + header: A, + prefix: P.prettyLocator(this.configuration, o), + report: t, + } + ); + let f; + try { + switch (r) { + case L.k.SCRIPT: + f = await X.executePackageScript(o, s, [], { + cwd: e, + project: this, + stdin: c, + stdout: h, + stderr: g, + }); + break; + case L.k.SHELLCODE: + f = await X.executePackageShellcode(o, s, [], { + cwd: e, + project: this, + stdin: c, + stdout: h, + stderr: g, + }); + } + } catch (e) { + g.write(e.stack), (f = 1); + } + if ((h.end(), g.end(), 0 === f)) return v.set(o.locatorHash, a), !0; + n.xfs.detachTemp(u); + const p = `${P.prettyLocator( + this.configuration, + o + )} couldn't be built successfully (exit code ${this.configuration.format( + String(f), + K.a5.NUMBER + )}, logs can be found here: ${this.configuration.format( + l, + K.a5.PATH + )})`; + return ( + t.reportInfo(T.b.BUILD_FAILED, p), + this.optionalBuilds.has(o.locatorHash) + ? (v.set(o.locatorHash, a), !0) + : (t.reportError(T.b.BUILD_FAILED, p), !1) + ); + }); + } + })() + ); + } + } + } + if ((await Promise.all(r), e === C.size)) { + const e = Array.from(C) + .map((e) => { + const t = this.storedPackages.get(e); + if (!t) + throw new Error('Assertion failed: The package should have been registered'); + return P.prettyLocator(this.configuration, t); + }) + .join(', '); + t.reportError( + T.b.CYCLIC_DEPENDENCIES, + `Some packages have circular dependencies that make their build order unsatisfiable - as a result they won't be built (affected packages are: ${e})` + ); + break; + } + } + if (v.size > 0) { + const e = this.configuration.get('bstatePath'), + t = ne.generateBuildStateFile(v, this.storedPackages); + await n.xfs.mkdirpPromise(i.y1.dirname(e)), + await n.xfs.changeFilePromise(e, t, { automaticNewlines: !0 }); + } else await n.xfs.removePromise(B); + } + async install(e) { + const t = [], + r = []; + await this.configuration.triggerHook((e) => e.validateProject, this, { + reportWarning: (e, r) => t.push({ name: e, text: r }), + reportError: (e, t) => r.push({ name: e, text: t }), + }); + t.length + r.length > 0 && + (await e.report.startTimerPromise('Validation step', async () => { + await this.validateEverything({ + validationWarnings: t, + validationErrors: r, + report: e.report, + }); + })), + await e.report.startTimerPromise('Resolution step', async () => { + const t = i.y1.join(this.cwd, this.configuration.get('lockfileFilename')); + let r = null; + if (e.immutable) + try { + r = await n.xfs.readFilePromise(t, 'utf8'); + } catch (e) { + throw 'ENOENT' === e.code + ? new G.lk( + T.b.FROZEN_LOCKFILE_EXCEPTION, + 'The lockfile would have been created by this install, which is explicitly forbidden.' + ) + : e; + } + if ((await this.resolveEverything(e), null !== r)) { + const n = (0, o.qH)(r, this.generateLockfile()); + if (n !== r) { + const i = B(t, t, r, n); + e.report.reportSeparator(); + for (const t of i.hunks) { + e.report.reportInfo( + null, + `@@ -${t.oldStart},${t.oldLines} +${t.newStart},${t.newLines} @@` + ); + for (const r of t.lines) + r.startsWith('+') + ? e.report.reportError( + T.b.FROZEN_LOCKFILE_EXCEPTION, + this.configuration.format(r, K.a5.ADDED) + ) + : r.startsWith('-') + ? e.report.reportError( + T.b.FROZEN_LOCKFILE_EXCEPTION, + this.configuration.format(r, K.a5.REMOVED) + ) + : e.report.reportInfo(null, this.configuration.format(r, 'grey')); + } + throw ( + (e.report.reportSeparator(), + new G.lk( + T.b.FROZEN_LOCKFILE_EXCEPTION, + 'The lockfile would have been modified by this install, which is explicitly forbidden.' + )) + ); + } + } + }), + await e.report.startTimerPromise('Fetch step', async () => { + await this.fetchEverything(e), + (void 0 === e.persistProject || e.persistProject) && (await this.cacheCleanup(e)); + }), + (void 0 === e.persistProject || e.persistProject) && (await this.persist()), + await e.report.startTimerPromise('Link step', async () => { + await this.linkEverything(e); + }), + await this.configuration.triggerHook((e) => e.afterAllInstalled, this); + } + generateLockfile() { + const e = new Map(); + for (const [t, r] of this.storedResolutions.entries()) { + let n = e.get(r); + n || e.set(r, (n = new Set())), n.add(t); + } + const t = { __metadata: { version: 4 } }; + for (const [r, n] of e.entries()) { + const e = this.originalPackages.get(r); + if (!e) continue; + const i = []; + for (const e of n) { + const t = this.storedDescriptors.get(e); + if (!t) + throw new Error('Assertion failed: The descriptor should have been registered'); + i.push(t); + } + const o = i + .map((e) => P.stringifyDescriptor(e)) + .sort() + .join(', '), + s = new j.G(); + let A; + (s.version = e.linkType === $.U.HARD ? e.version : '0.0.0-use.local'), + (s.languageName = e.languageName), + (s.dependencies = new Map(e.dependencies)), + (s.peerDependencies = new Map(e.peerDependencies)), + (s.dependenciesMeta = new Map(e.dependenciesMeta)), + (s.peerDependenciesMeta = new Map(e.peerDependenciesMeta)), + (s.bin = new Map(e.bin)); + const a = this.storedChecksums.get(e.locatorHash); + if (void 0 !== a) { + const e = a.indexOf('/'); + if (-1 === e) + throw new Error( + 'Assertion failed: Expecte the checksum to reference its cache key' + ); + const r = a.slice(0, e), + n = a.slice(e + 1); + void 0 === t.__metadata.cacheKey && (t.__metadata.cacheKey = r), + (A = r === t.__metadata.cacheKey ? n : a); + } + t[o] = { + ...s.exportTo({}, { compatibilityMode: !1 }), + linkType: e.linkType.toLowerCase(), + resolution: P.stringifyLocator(e), + checksum: A, + }; + } + return ( + [ + '# This file is generated by running "yarn install" inside your project.\n', + '# Manual changes might be lost - proceed with caution!\n', + ].join('') + + '\n' + + (0, s.stringifySyml)(t) + ); + } + async persistLockfile() { + const e = i.y1.join(this.cwd, this.configuration.get('lockfileFilename')), + t = this.generateLockfile(); + await n.xfs.changeFilePromise(e, t, { automaticNewlines: !0 }); + } + async persistInstallStateFile() { + const { + accessibleLocators: e, + optionalBuilds: t, + storedDescriptors: r, + storedResolutions: o, + storedPackages: s, + lockFileChecksum: A, + } = this, + a = { + accessibleLocators: e, + optionalBuilds: t, + storedDescriptors: r, + storedResolutions: o, + storedPackages: s, + lockFileChecksum: A, + }, + c = await te(M().serialize(a)), + u = this.configuration.get('installStatePath'); + await n.xfs.mkdirpPromise(i.y1.dirname(u)), await n.xfs.writeFilePromise(u, c); + } + async restoreInstallState() { + const e = this.configuration.get('installStatePath'); + if (!n.xfs.existsSync(e)) return void (await this.applyLightResolution()); + const t = await n.xfs.readFilePromise(e), + r = M().deserialize(await re(t)); + r.lockFileChecksum === this.lockFileChecksum + ? (Object.assign(this, r), this.refreshWorkspaceDependencies()) + : await this.applyLightResolution(); + } + async applyLightResolution() { + await this.resolveEverything({ lockfileOnly: !0, report: new H.$() }), + await this.persistInstallStateFile(); + } + async persist() { + await this.persistLockfile(), await this.persistInstallStateFile(); + for (const e of this.workspacesByCwd.values()) await e.persistManifest(); + } + async cacheCleanup({ cache: e, report: t }) { + const r = new Set(['.gitignore']); + if (n.xfs.existsSync(e.cwd) && (0, z.isFolderInside)(e.cwd, this.cwd)) { + for (const o of await n.xfs.readdirPromise(e.cwd)) { + if (r.has(o)) continue; + const s = i.y1.resolve(e.cwd, o); + e.markedFiles.has(s) || + (e.immutable + ? t.reportError( + T.b.IMMUTABLE_CACHE, + this.configuration.format(i.y1.basename(s), 'magenta') + + ' appears to be unused and would marked for deletion, but the cache is immutable' + ) + : (t.reportInfo( + T.b.UNUSED_CACHE_ENTRY, + this.configuration.format(i.y1.basename(s), 'magenta') + + ' appears to be unused - removing' + ), + await n.xfs.unlinkPromise(s))); + } + e.markedFiles.clear(); + } + } + } + }, + 52779: (e, t, r) => { + 'use strict'; + r.d(t, { c: () => s, O: () => A }); + var n = r(53887), + i = r.n(n), + o = r(54143); + const s = /^(?!v)[a-z0-9-.]+$/i; + class A { + supportsDescriptor(e, t) { + return !!i().validRange(e.range) || !!s.test(e.range); + } + supportsLocator(e, t) { + return !!i().validRange(e.reference) || !!s.test(e.reference); + } + shouldPersistResolution(e, t) { + return t.resolver.shouldPersistResolution(this.forwardLocator(e, t), t); + } + bindDescriptor(e, t, r) { + return r.resolver.bindDescriptor(this.forwardDescriptor(e, r), t, r); + } + getResolutionDependencies(e, t) { + return t.resolver.getResolutionDependencies(this.forwardDescriptor(e, t), t); + } + async getCandidates(e, t, r) { + return await r.resolver.getCandidates(this.forwardDescriptor(e, r), t, r); + } + async resolve(e, t) { + const r = await t.resolver.resolve(this.forwardLocator(e, t), t); + return o.renamePackage(r, e); + } + forwardDescriptor(e, t) { + return o.makeDescriptor( + e, + `${t.project.configuration.get('defaultProtocol')}${e.range}` + ); + } + forwardLocator(e, t) { + return o.makeLocator( + e, + `${t.project.configuration.get('defaultProtocol')}${e.reference}` + ); + } + } + }, + 35691: (e, t, r) => { + 'use strict'; + r.d(t, { lk: () => s, yG: () => A }); + var n = r(92413), + i = r(24304), + o = r(92659); + class s extends Error { + constructor(e, t) { + super(t), (this.reportCode = e); + } + } + class A { + constructor() { + (this.reportedInfos = new Set()), + (this.reportedWarnings = new Set()), + (this.reportedErrors = new Set()); + } + static progressViaCounter(e) { + let t, + r = 0, + n = new Promise((e) => { + t = e; + }); + const i = (e) => { + const i = t; + (n = new Promise((e) => { + t = e; + })), + (r = e), + i(); + }, + o = (async function* () { + for (; r < e; ) await n, yield { progress: r / e }; + })(); + return { + [Symbol.asyncIterator]: () => o, + set: i, + tick: (e = 0) => { + i(r + 1); + }, + }; + } + reportInfoOnce(e, t, r) { + const n = r && r.key ? r.key : t; + this.reportedInfos.has(n) || (this.reportedInfos.add(n), this.reportInfo(e, t)); + } + reportWarningOnce(e, t, r) { + const n = r && r.key ? r.key : t; + this.reportedWarnings.has(n) || + (this.reportedWarnings.add(n), this.reportWarning(e, t)); + } + reportErrorOnce(e, t, r) { + const n = r && r.key ? r.key : t; + this.reportedErrors.has(n) || (this.reportedErrors.add(n), this.reportError(e, t)); + } + reportExceptionOnce(e) { + !(function (e) { + return void 0 !== e.reportCode; + })(e) + ? this.reportErrorOnce(o.b.EXCEPTION, e.stack || e.message, { key: e }) + : this.reportErrorOnce(e.reportCode, e.message, { key: e }); + } + createStreamReporter(e = null) { + const t = new n.PassThrough(), + r = new i.StringDecoder(); + let o = ''; + return ( + t.on('data', (t) => { + let n, + i = r.write(t); + do { + if (((n = i.indexOf('\n')), -1 !== n)) { + const t = o + i.substr(0, n); + (i = i.substr(n + 1)), + (o = ''), + null !== e ? this.reportInfo(null, `${e} ${t}`) : this.reportInfo(null, t); + } + } while (-1 !== n); + o += i; + }), + t.on('end', () => { + const t = r.end(); + '' !== t && + (null !== e ? this.reportInfo(null, `${e} ${t}`) : this.reportInfo(null, t)); + }), + t + ); + } + } + }, + 15815: (e, t, r) => { + 'use strict'; + r.d(t, { P: () => f }); + var n = r(29148), + i = r.n(n), + o = r(92659), + s = r(35691); + const A = ['⠋', '⠙', '⠹', '⠸', '⠼', '⠴', '⠦', '⠧', '⠇', '⠏'], + a = new Set([o.b.FETCH_NOT_CACHED, o.b.UNUSED_CACHE_ENTRY]), + c = process.env.GITHUB_ACTIONS + ? { start: (e) => `::group::${e}\n`, end: (e) => '::endgroup::\n' } + : process.env.TRAVIS + ? { start: (e) => `travis_fold:start:${e}\n`, end: (e) => `travis_fold:end:${e}\n` } + : process.env.GITLAB_CI + ? { + start: (e) => + `section_start:${Math.floor(Date.now() / 1e3)}:${e + .toLowerCase() + .replace(/\W+/g, '_')}\r${e}\n`, + end: (e) => + `section_end:${Math.floor(Date.now() / 1e3)}:${e + .toLowerCase() + .replace(/\W+/g, '_')}\r`, + } + : null, + u = new Date(), + l = ['iTerm.app', 'Apple_Terminal'].includes(process.env.TERM_PROGRAM), + h = { + patrick: { date: [17, 3], chars: ['🍀', '🌱'], size: 40 }, + simba: { date: [19, 7], chars: ['🌟', '✨'], size: 40 }, + jack: { date: [31, 10], chars: ['🎃', '🦇'], size: 40 }, + hogsfather: { date: [31, 12], chars: ['🎉', '🎄'], size: 40 }, + default: { chars: ['=', '-'], size: 80 }, + }, + g = + (l && + Object.keys(h).find((e) => { + const t = h[e]; + return !t.date || (t.date[0] === u.getDate() && t.date[1] === u.getMonth() + 1); + })) || + 'default'; + class f extends s.yG { + constructor({ + configuration: e, + stdout: t, + json: r = !1, + includeFooter: n = !0, + includeLogs: i = !r, + includeInfos: o = i, + includeWarnings: s = i, + forgettableBufferSize: A = 5, + forgettableNames: c = new Set(), + }) { + super(), + (this.cacheHitCount = 0), + (this.cacheMissCount = 0), + (this.warningCount = 0), + (this.errorCount = 0), + (this.startTime = Date.now()), + (this.indent = 0), + (this.progress = new Map()), + (this.progressTime = 0), + (this.progressFrame = 0), + (this.progressTimeout = null), + (this.forgettableLines = []), + (this.configuration = e), + (this.forgettableBufferSize = A), + (this.forgettableNames = new Set([...c, ...a])), + (this.includeFooter = n), + (this.includeInfos = o), + (this.includeWarnings = s), + (this.json = r), + (this.stdout = t); + } + static async start(e, t) { + const r = new this(e); + try { + await t(r); + } catch (e) { + r.reportExceptionOnce(e); + } finally { + await r.finalize(); + } + return r; + } + hasErrors() { + return this.errorCount > 0; + } + exitCode() { + return this.hasErrors() ? 1 : 0; + } + reportCacheHit(e) { + this.cacheHitCount += 1; + } + reportCacheMiss(e, t) { + (this.cacheMissCount += 1), + void 0 === t || + this.configuration.get('preferAggregateCacheInfo') || + this.reportInfo(o.b.FETCH_NOT_CACHED, t); + } + startTimerSync(e, t) { + this.reportInfo(null, '┌ ' + e); + const r = Date.now(); + this.indent += 1; + try { + return t(); + } catch (e) { + throw (this.reportExceptionOnce(e), e); + } finally { + const e = Date.now(); + (this.indent -= 1), + this.configuration.get('enableTimers') && e - r > 200 + ? this.reportInfo(null, '└ Completed in ' + this.formatTiming(e - r)) + : this.reportInfo(null, '└ Completed'); + } + } + async startTimerPromise(e, t) { + this.reportInfo(null, '┌ ' + e), null !== c && this.stdout.write(c.start(e)); + const r = Date.now(); + this.indent += 1; + try { + return await t(); + } catch (e) { + throw (this.reportExceptionOnce(e), e); + } finally { + const t = Date.now(); + (this.indent -= 1), + null !== c && this.stdout.write(c.end(e)), + this.configuration.get('enableTimers') && t - r > 200 + ? this.reportInfo(null, '└ Completed in ' + this.formatTiming(t - r)) + : this.reportInfo(null, '└ Completed'); + } + } + async startCacheReport(e) { + const t = this.configuration.get('preferAggregateCacheInfo') + ? { cacheHitCount: this.cacheHitCount, cacheMissCount: this.cacheMissCount } + : null; + try { + return await e(); + } catch (e) { + throw (this.reportExceptionOnce(e), e); + } finally { + null !== t && this.reportCacheChanges(t); + } + } + reportSeparator() { + 0 === this.indent ? this.writeLineWithForgettableReset('') : this.reportInfo(null, ''); + } + reportInfo(e, t) { + if (!this.includeInfos) return; + const r = `${this.configuration.format( + '➤', + 'blueBright' + )} ${this.formatNameWithHyperlink(e)}: ${this.formatIndent()}${t}`; + if (this.json) + this.reportJson({ + type: 'info', + name: e, + displayName: this.formatName(e), + indent: this.formatIndent(), + data: t, + }); + else if (this.forgettableNames.has(e)) + if ( + (this.forgettableLines.push(r), + this.forgettableLines.length > this.forgettableBufferSize) + ) { + for (; this.forgettableLines.length > this.forgettableBufferSize; ) + this.forgettableLines.shift(); + this.writeLines(this.forgettableLines, { truncate: !0 }); + } else this.writeLine(r, { truncate: !0 }); + else this.writeLineWithForgettableReset(r); + } + reportWarning(e, t) { + (this.warningCount += 1), + this.includeWarnings && + (this.json + ? this.reportJson({ + type: 'warning', + name: e, + displayName: this.formatName(e), + indent: this.formatIndent(), + data: t, + }) + : this.writeLineWithForgettableReset( + `${this.configuration.format( + '➤', + 'yellowBright' + )} ${this.formatNameWithHyperlink(e)}: ${this.formatIndent()}${t}` + )); + } + reportError(e, t) { + (this.errorCount += 1), + this.json + ? this.reportJson({ + type: 'error', + name: e, + displayName: this.formatName(e), + indent: this.formatIndent(), + data: t, + }) + : this.writeLineWithForgettableReset( + `${this.configuration.format('➤', 'redBright')} ${this.formatNameWithHyperlink( + e + )}: ${this.formatIndent()}${t}`, + { truncate: !1 } + ); + } + reportProgress(e) { + let t = !1; + const r = Promise.resolve().then(async () => { + const r = { progress: 0, title: void 0 }; + this.progress.set(e, r), this.refreshProgress(-1); + for await (const { progress: n, title: i } of e) + t || + (r.progress === n && r.title === i) || + ((r.progress = n), (r.title = i), this.refreshProgress()); + n(); + }), + n = () => { + t || ((t = !0), this.progress.delete(e), this.refreshProgress(1)); + }; + return { ...r, stop: n }; + } + reportJson(e) { + this.json && this.writeLineWithForgettableReset('' + JSON.stringify(e)); + } + async finalize() { + if (!this.includeFooter) return; + let e = ''; + e = + this.errorCount > 0 + ? 'Failed with errors' + : this.warningCount > 0 + ? 'Done with warnings' + : 'Done'; + const t = this.formatTiming(Date.now() - this.startTime), + r = this.configuration.get('enableTimers') ? `${e} in ${t}` : e; + this.errorCount > 0 + ? this.reportError(o.b.UNNAMED, r) + : this.warningCount > 0 + ? this.reportWarning(o.b.UNNAMED, r) + : this.reportInfo(o.b.UNNAMED, r); + } + writeLine(e, { truncate: t } = {}) { + this.clearProgress({ clear: !0 }), + this.stdout.write(this.truncate(e, { truncate: t }) + '\n'), + this.writeProgress(); + } + writeLineWithForgettableReset(e, { truncate: t } = {}) { + (this.forgettableLines = []), this.writeLine(e, { truncate: t }); + } + writeLines(e, { truncate: t } = {}) { + this.clearProgress({ delta: e.length }); + for (const r of e) this.stdout.write(this.truncate(r, { truncate: t }) + '\n'); + this.writeProgress(); + } + reportCacheChanges({ cacheHitCount: e, cacheMissCount: t }) { + const r = this.cacheHitCount - e, + n = this.cacheMissCount - t; + if (0 === r && 0 === n) return; + let i = ''; + this.cacheHitCount > 1 + ? (i += this.cacheHitCount + ' packages were already cached') + : 1 === this.cacheHitCount + ? (i += ' - one package was already cached') + : (i += 'No packages were cached'), + this.cacheHitCount > 0 + ? this.cacheMissCount > 1 + ? (i += `, ${this.cacheMissCount} had to be fetched`) + : 1 === this.cacheMissCount && (i += ', one had to be fetched') + : this.cacheMissCount > 1 + ? (i += ` - ${this.cacheMissCount} packages had to be fetched`) + : 1 === this.cacheMissCount && (i += ' - one package had to be fetched'), + this.reportInfo(o.b.FETCH_NOT_CACHED, i); + } + clearProgress({ delta: e = 0, clear: t = !1 }) { + this.configuration.get('enableProgressBars') && + !this.json && + this.progress.size + e > 0 && + (this.stdout.write(`[${this.progress.size + e}A`), + (e > 0 || t) && this.stdout.write('')); + } + writeProgress() { + if (!this.configuration.get('enableProgressBars') || this.json) return; + if ( + (null !== this.progressTimeout && clearTimeout(this.progressTimeout), + (this.progressTimeout = null), + 0 === this.progress.size) + ) + return; + const e = Date.now(); + e - this.progressTime > 80 && + ((this.progressFrame = (this.progressFrame + 1) % A.length), (this.progressTime = e)); + const t = A[this.progressFrame], + r = this.configuration.get('progressBarStyle') || g; + if (!Object.prototype.hasOwnProperty.call(h, r)) + throw new Error('Assertion failed: Invalid progress bar style'); + const n = h[r], + i = '➤ YN0000: ┌ '.length, + o = Math.max(0, Math.min(process.stdout.columns - i, 80)), + s = Math.floor((n.size * o) / 80); + for (const { progress: e } of this.progress.values()) { + const r = s * e, + i = n.chars[0].repeat(r), + o = n.chars[1].repeat(s - r); + this.stdout.write( + `${this.configuration.format('➤', 'blueBright')} ${this.formatName( + null + )}: ${t} ${i}${o}\n` + ); + } + this.progressTimeout = setTimeout(() => { + this.refreshProgress(); + }, 1e3 / 60); + } + refreshProgress(e = 0) { + this.clearProgress({ delta: e }), this.writeProgress(); + } + formatTiming(e) { + return e < 6e4 ? Math.round(e / 10) / 100 + 's' : Math.round(e / 600) / 100 + 'm'; + } + truncate(e, { truncate: t } = {}) { + return ( + this.configuration.get('enableProgressBars') || (t = !1), + void 0 === t && (t = this.configuration.get('preferTruncatedLines')), + t && (e = i()(e, 0, process.stdout.columns - 1)), + e + ); + } + formatName(e) { + const t = 'YN' + (null === e ? 0 : e).toString(10).padStart(4, '0'); + return this.json || null !== e ? t : this.configuration.format(t, 'grey'); + } + formatNameWithHyperlink(e) { + const t = this.formatName(e); + if (!this.configuration.get('enableHyperlinks')) return t; + if (null === e || e === o.b.UNNAMED) return t; + return `]8;;${`https://yarnpkg.com/advanced/error-codes#${t}---${o.b[e]}`.toLowerCase()}${t}]8;;`; + } + formatIndent() { + return '│ '.repeat(this.indent); + } + } + }, + 33720: (e, t, r) => { + 'use strict'; + r.d(t, { $: () => i }); + var n = r(35691); + class i extends n.yG { + reportCacheHit(e) {} + reportCacheMiss(e) {} + startTimerSync(e, t) { + return t(); + } + async startTimerPromise(e, t) { + return await t(); + } + async startCacheReport(e) { + return await e(); + } + reportSeparator() {} + reportInfo(e, t) {} + reportWarning(e, t) {} + reportError(e, t) {} + reportProgress(e) { + return { + ...Promise.resolve().then(async () => { + for await (const {} of e); + }), + stop: () => {}, + }; + } + reportJson(e) {} + async finalize() {} + } + }, + 60895: (e, t, r) => { + 'use strict'; + r.d(t, { N: () => A }); + var n = r(17674), + i = r(14626), + o = r(46009), + s = r(54143); + class A { + supports(e) { + return !!e.reference.startsWith('virtual:'); + } + getLocalPath(e, t) { + const r = e.reference.indexOf('#'); + if (-1 === r) throw new Error('Invalid virtual package reference'); + const n = e.reference.slice(r + 1), + i = s.makeLocator(e, n); + return t.fetcher.getLocalPath(i, t); + } + async fetch(e, t) { + const r = e.reference.indexOf('#'); + if (-1 === r) throw new Error('Invalid virtual package reference'); + const n = e.reference.slice(r + 1), + i = s.makeLocator(e, n), + o = await t.fetcher.fetch(i, t); + return await this.ensureVirtualLink(e, o, t); + } + getLocatorFilename(e) { + return s.slugifyLocator(e); + } + async ensureVirtualLink(e, t, r) { + const s = t.packageFs.getRealPath(), + A = r.project.configuration.get('virtualFolder'), + a = this.getLocatorFilename(e), + c = n.p.makeVirtualPath(A, a, s), + u = new i.K(c, { baseFs: t.packageFs, pathUtils: o.y1 }); + return { ...t, packageFs: u }; + } + } + }, + 17722: (e, t, r) => { + 'use strict'; + r.d(t, { j: () => g }); + var n = r(56537), + i = r(46009), + o = r(18710), + s = r.n(o), + A = r(53887), + a = r.n(A), + c = r(46611), + u = r(94538), + l = r(20624), + h = r(54143); + class g { + constructor(e, { project: t }) { + (this.workspacesCwds = new Set()), + (this.dependencies = new Map()), + (this.project = t), + (this.cwd = e); + } + async setup() { + (this.manifest = n.xfs.existsSync(i.y1.join(this.cwd, c.G.fileName)) + ? await c.G.find(this.cwd) + : new c.G()), + (this.relativeCwd = i.y1.relative(this.project.cwd, this.cwd) || i.LZ.dot); + const e = this.manifest.name + ? this.manifest.name + : h.makeIdent( + null, + `${this.computeCandidateName()}-${l.makeHash(this.relativeCwd).substr(0, 6)}` + ), + t = this.manifest.version ? this.manifest.version : '0.0.0'; + (this.locator = h.makeLocator(e, t)), + (this.anchoredDescriptor = h.makeDescriptor( + this.locator, + `${u.d.protocol}${this.relativeCwd}` + )), + (this.anchoredLocator = h.makeLocator( + this.locator, + `${u.d.protocol}${this.relativeCwd}` + )); + for (const e of this.manifest.workspaceDefinitions) { + const t = await s()(e.pattern, { + absolute: !0, + cwd: i.cS.fromPortablePath(this.cwd), + expandDirectories: !1, + onlyDirectories: !0, + onlyFiles: !1, + ignore: ['**/node_modules', '**/.git', '**/.yarn'], + }); + t.sort(); + for (const e of t) { + const t = i.y1.resolve(this.cwd, i.cS.toPortablePath(e)); + n.xfs.existsSync(i.y1.join(t, (0, i.Zu)('package.json'))) && + this.workspacesCwds.add(t); + } + } + } + accepts(e) { + const t = e.indexOf(':'), + r = -1 !== t ? e.slice(0, t + 1) : null, + n = -1 !== t ? e.slice(t + 1) : e; + return ( + (r === u.d.protocol && n === this.relativeCwd) || + (r === u.d.protocol && '*' === n) || + (!!a().validRange(n) && + (r === u.d.protocol + ? a().satisfies( + null !== this.manifest.version ? this.manifest.version : '0.0.0', + n + ) + : !!this.project.configuration.get('enableTransparentWorkspaces') && + null !== this.manifest.version && + a().satisfies(this.manifest.version, n))) + ); + } + computeCandidateName() { + return this.cwd === this.project.cwd + ? 'root-workspace' + : '' + i.y1.basename(this.cwd) || 'unnamed-workspace'; + } + async persistManifest() { + const e = {}; + this.manifest.exportTo(e); + const t = i.y1.join(this.cwd, c.G.fileName), + r = JSON.stringify(e, null, this.manifest.indent) + '\n'; + await n.xfs.changeFilePromise(t, r, { automaticNewlines: !0 }); + } + } + }, + 94538: (e, t, r) => { + 'use strict'; + r.d(t, { d: () => i }); + var n = r(32485); + class i { + supportsDescriptor(e, t) { + if (e.range.startsWith(i.protocol)) return !0; + return null !== t.project.tryWorkspaceByDescriptor(e); + } + supportsLocator(e, t) { + return !!e.reference.startsWith(i.protocol); + } + shouldPersistResolution(e, t) { + return !1; + } + bindDescriptor(e, t, r) { + return e; + } + getResolutionDependencies(e, t) { + return []; + } + async getCandidates(e, t, r) { + return [r.project.getWorkspaceByDescriptor(e).anchoredLocator]; + } + async resolve(e, t) { + const r = t.project.getWorkspaceByCwd(e.reference.slice(i.protocol.length)); + return { + ...e, + version: r.manifest.version || '0.0.0', + languageName: 'unknown', + linkType: n.U.SOFT, + dependencies: new Map([...r.manifest.dependencies, ...r.manifest.devDependencies]), + peerDependencies: new Map([...r.manifest.peerDependencies]), + dependenciesMeta: r.manifest.dependenciesMeta, + peerDependenciesMeta: r.manifest.peerDependenciesMeta, + bin: r.manifest.bin, + }; + } + } + i.protocol = 'workspace:'; + }, + 59355: (e, t, r) => { + 'use strict'; + r.d(t, { o: () => n }); + const n = '2.1.1'; + }, + 6220: (e, t, r) => { + 'use strict'; + r.r(t), r.d(t, { EndStrategy: () => n, pipevp: () => u, execvp: () => l }); + var n, + i = r(46009), + o = r(67566), + s = r.n(o); + function A(e) { + return null !== e && 'number' == typeof e.fd; + } + function a() {} + !(function (e) { + (e[(e.Never = 0)] = 'Never'), + (e[(e.ErrorCode = 1)] = 'ErrorCode'), + (e[(e.Always = 2)] = 'Always'); + })(n || (n = {})); + let c = 0; + async function u( + e, + t, + { + cwd: r, + env: o = process.env, + strict: u = !1, + stdin: l = null, + stdout: h, + stderr: g, + end: f = n.Always, + } + ) { + const p = ['pipe', 'pipe', 'pipe']; + null === l ? (p[0] = 'ignore') : A(l) && (p[0] = l), + A(h) && (p[1] = h), + A(g) && (p[2] = g), + 0 == c++ && process.on('SIGINT', a); + const d = s()(e, t, { + cwd: i.cS.fromPortablePath(r), + env: { ...o, PWD: i.cS.fromPortablePath(r) }, + stdio: p, + }); + A(l) || null === l || l.pipe(d.stdin), + A(h) || d.stdout.pipe(h, { end: !1 }), + A(g) || d.stderr.pipe(g, { end: !1 }); + const C = () => { + for (const e of new Set([h, g])) A(e) || e.end(); + }; + return new Promise((t, r) => { + d.on('error', (e) => { + 0 == --c && process.off('SIGINT', a), + (f !== n.Always && f !== n.ErrorCode) || C(), + r(e); + }), + d.on('close', (i, o) => { + 0 == --c && process.off('SIGINT', a), + (f === n.Always || (f === n.ErrorCode && i > 0)) && C(), + 0 !== i && u + ? r( + null !== i + ? new Error(`Child "${e}" exited with exit code ${i}`) + : new Error(`Child "${e}" exited with signal ${o}`) + ) + : t({ code: i }); + }); + }); + } + async function l( + e, + t, + { cwd: r, env: n = process.env, encoding: o = 'utf8', strict: A = !1 } + ) { + const a = ['ignore', 'pipe', 'pipe'], + c = [], + u = [], + l = i.cS.fromPortablePath(r); + void 0 !== n.PWD && (n = { ...n, PWD: l }); + const h = s()(e, t, { cwd: l, env: n, stdio: a }); + return ( + h.stdout.on('data', (e) => { + c.push(e); + }), + h.stderr.on('data', (e) => { + u.push(e); + }), + await new Promise((t, r) => { + h.on('close', (n) => { + const i = 'buffer' === o ? Buffer.concat(c) : Buffer.concat(c).toString(o), + s = 'buffer' === o ? Buffer.concat(u) : Buffer.concat(u).toString(o); + 0 !== n && A + ? r( + Object.assign(new Error(`Child "${e}" exited with exit code ${n}\n\n${s}`), { + code: n, + stdout: i, + stderr: s, + }) + ) + : t({ code: n, stdout: i, stderr: s }); + }); + }) + ); + } + }, + 81111: (e, t, r) => { + 'use strict'; + r.r(t), + r.d(t, { + getDefaultGlobalFolder: () => o, + getHomeFolder: () => s, + isFolderInside: () => A, + }); + var n = r(46009), + i = r(12087); + function o() { + if ('win32' === process.platform) { + const e = n.cS.toPortablePath( + process.env.LOCALAPPDATA || n.cS.join((0, i.homedir)(), 'AppData', 'Local') + ); + return n.y1.resolve(e, 'Yarn/Berry'); + } + if (process.env.XDG_DATA_HOME) { + const e = n.cS.toPortablePath(process.env.XDG_DATA_HOME); + return n.y1.resolve(e, 'yarn/berry'); + } + return n.y1.resolve(s(), '.yarn/berry'); + } + function s() { + return n.cS.toPortablePath((0, i.homedir)() || '/usr/local/share'); + } + function A(e, t) { + const r = n.y1.relative(t, e); + return r && !r.startsWith('..') && !n.y1.isAbsolute(r); + } + }, + 20624: (e, t, r) => { + 'use strict'; + r.r(t), r.d(t, { makeHash: () => o, checksumFile: () => s }); + var n = r(78420), + i = r(76417); + function o(...e) { + const t = (0, i.createHash)('sha512'); + for (const r of e) t.update(r || ''); + return t.digest('hex'); + } + function s(e) { + return new Promise((t, r) => { + const o = new n.S(), + s = (0, i.createHash)('sha512'), + A = o.createReadStream(e, {}); + A.on('data', (e) => { + s.update(e); + }), + A.on('error', (e) => { + r(e); + }), + A.on('end', () => { + t(s.digest('hex')); + }); + }); + } + }, + 84132: (e, t, r) => { + 'use strict'; + r.r(t), + r.d(t, { + Cache: () => O.C, + DEFAULT_RC_FILENAME: () => j.tr, + DEFAULT_LOCK_FILENAME: () => j.nh, + Configuration: () => j.VK, + FormatType: () => j.a5, + ProjectLookup: () => j.EW, + SettingsType: () => j.a2, + BuildType: () => Y.k, + LightReport: () => G.h, + Manifest: () => J.G, + MessageName: () => H.b, + Project: () => q.I, + TAG_REGEXP: () => z.c, + ReportError: () => W.lk, + Report: () => W.yG, + StreamReport: () => V.P, + ThrowReport: () => X.$, + VirtualFetcher: () => Z.N, + WorkspaceResolver: () => $.d, + Workspace: () => ee.j, + YarnVersion: () => te.o, + LinkType: () => re.U, + hashUtils: () => A, + httpUtils: () => n, + execUtils: () => o, + folderUtils: () => s, + miscUtils: () => S, + scriptUtils: () => k, + semverUtils: () => x, + structUtils: () => F, + tgzUtils: () => i, + }); + var n = {}; + r.r(n), r.d(n, { Method: () => Q, get: () => D, put: () => b, request: () => v }); + var i = {}; + r.r(i), + r.d(i, { + convertToZip: () => U, + extractArchiveTo: () => _, + makeArchiveFromDirectory: () => P, + }); + var o = r(6220), + s = r(81111), + A = r(20624), + a = r(22395), + c = r.n(a), + u = r(57211), + l = r(98605), + h = r(2401), + g = r.n(h), + f = r(61578), + p = r.n(f), + d = r(98161), + C = r.n(d), + E = r(78835); + const I = p()(8), + m = new Map(), + y = new l.Agent({ keepAlive: !0 }), + w = new u.Agent({ keepAlive: !0 }); + function B(e) { + const t = new E.URL(e), + r = { host: t.hostname, headers: {} }; + return t.port && (r.port = Number(t.port)), { proxy: r }; + } + var Q; + async function v(e, t, { configuration: r, headers: n, json: i, method: o = Q.GET }) { + if (!r.get('enableNetwork')) + throw new Error(`Network access have been disabled by configuration (${o} ${e})`); + const s = new E.URL(e); + if ('http:' === s.protocol && !g().isMatch(s.hostname, r.get('unsafeHttpWhitelist'))) + throw new Error( + `Unsafe http requests must be explicitly whitelisted in your configuration (${s.hostname})` + ); + const A = r.get('httpProxy'), + a = r.get('httpsProxy'), + u = { + agent: { + http: A ? C().httpOverHttp(B(A)) : y, + https: a ? C().httpsOverHttp(B(a)) : w, + }, + headers: n, + method: o, + }; + (u.responseType = i ? 'json' : 'buffer'), + null !== t && + ('string' == typeof t || Buffer.isBuffer(t) ? (u.body = t) : (u.json = t)); + const l = r.get('httpTimeout'), + h = r.get('httpRetry'), + f = c().extend({ timeout: l, retry: h, ...u }); + return I(() => f(e)); + } + async function D(e, { configuration: t, json: r, ...n }) { + let i = m.get(e); + return ( + i || + ((i = v(e, null, { configuration: t, ...n }).then((t) => (m.set(e, t.body), t.body))), + m.set(e, i)), + !1 === Buffer.isBuffer(i) && (i = await i), + r ? JSON.parse(i.toString()) : i + ); + } + async function b(e, t, r) { + return (await v(e, t, { ...r, method: Q.PUT })).body; + } + !(function (e) { + (e.GET = 'GET'), (e.PUT = 'PUT'); + })(Q || (Q = {})); + var S = r(73632), + k = r(63088), + x = r(36545), + F = r(54143), + M = r(78420), + N = r(46009), + R = r(56537), + K = r(90739), + L = r(29486), + T = r(27700); + async function P( + e, + { baseFs: t = new M.S(), prefixPath: r = N.LZ.root, compressionLevel: n } = {} + ) { + const i = await R.xfs.mktempPromise(), + o = N.y1.join(i, 'archive.zip'), + s = new K.d(o, { create: !0, libzip: await (0, L.getLibzipPromise)(), level: n }), + A = N.y1.resolve(N.LZ.root, r); + return await s.copyPromise(A, e, { baseFs: t, stableTime: !0, stableSort: !0 }), s; + } + async function U(e, t) { + const r = await R.xfs.mktempPromise(), + n = N.y1.join(r, 'archive.zip'), + { compressionLevel: i, ...o } = t; + return await _( + e, + new K.d(n, { create: !0, libzip: await (0, L.getLibzipPromise)(), level: i }), + o + ); + } + async function _(e, t, { stripComponents: r = 0, prefixPath: n = N.LZ.dot } = {}) { + const i = new T.Ze(); + return ( + i.on('entry', (e) => { + if ( + (function (e) { + if ('/' === e[0]) return !0; + const t = e.path.split(/\//g); + return !!t.some((e) => '..' === e) || t.length <= r; + })(e) + ) + return void e.resume(); + const i = N.y1.normalize(N.cS.toPortablePath(e.path)).replace(/\/$/, '').split(/\//g); + if (i.length <= r) return void e.resume(); + const o = i.slice(r).join('/'), + s = N.y1.join(n, o), + A = []; + let a = 420; + ('Directory' !== e.type && 0 == (73 & e.mode)) || (a |= 73), + e.on('data', (e) => { + A.push(e); + }), + e.on('end', () => { + var r; + switch (e.type) { + case 'Directory': + t.mkdirpSync(N.y1.dirname(s), { chmod: 493, utimes: [315532800, 315532800] }), + t.mkdirSync(s), + t.chmodSync(s, a), + t.utimesSync(s, 315532800, 315532800); + break; + case 'OldFile': + case 'File': + t.mkdirpSync(N.y1.dirname(s), { chmod: 493, utimes: [315532800, 315532800] }), + t.writeFileSync(s, Buffer.concat(A)), + t.chmodSync(s, a), + t.utimesSync(s, 315532800, 315532800); + break; + case 'SymbolicLink': + t.mkdirpSync(N.y1.dirname(s), { chmod: 493, utimes: [315532800, 315532800] }), + t.symlinkSync(e.linkpath, s), + null === (r = t.lutimesSync) || + void 0 === r || + r.call(t, s, 315532800, 315532800); + } + }); + }), + await new Promise((r, n) => { + i.on('error', (e) => { + n(e); + }), + i.on('close', () => { + r(t); + }), + i.end(e); + }) + ); + } + var O = r(28148), + j = r(27122), + Y = r(92409), + G = r(62152), + J = r(46611), + H = r(92659), + q = r(40376), + z = r(52779), + W = r(35691), + V = r(15815), + X = r(33720), + Z = r(60895), + $ = r(94538), + ee = r(17722), + te = r(59355), + re = r(32485); + }, + 73632: (e, t, r) => { + 'use strict'; + r.r(t), + r.d(t, { + escapeRegExp: () => a, + assertNever: () => c, + mapAndFilter: () => u, + mapAndFind: () => h, + getFactoryWithDefault: () => f, + getArrayWithDefault: () => p, + getSetWithDefault: () => d, + getMapWithDefault: () => C, + releaseAfterUseAsync: () => E, + prettifyAsyncErrors: () => I, + prettifySyncErrors: () => m, + bufferStream: () => y, + BufferStream: () => w, + DefaultStream: () => B, + dynamicRequire: () => Q, + dynamicRequireNoCache: () => v, + sortMap: () => D, + buildIgnorePattern: () => b, + replaceEnvVariables: () => S, + }); + var n = r(46009), + i = r(17278), + o = r(2401), + s = r.n(o), + A = r(92413); + function a(e) { + return e.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); + } + function c(e) { + throw new Error(`Assertion failed: Unexpected object '${e}'`); + } + function u(e, t) { + const r = []; + for (const n of e) { + const e = t(n); + e !== l && r.push(e); + } + return r; + } + e = r.hmd(e); + const l = Symbol(); + function h(e, t) { + for (const r of e) { + const e = t(r); + if (e !== g) return e; + } + } + u.skip = l; + const g = Symbol(); + function f(e, t, r) { + let n = e.get(t); + return void 0 === n && e.set(t, (n = r())), n; + } + function p(e, t) { + let r = e.get(t); + return void 0 === r && e.set(t, (r = [])), r; + } + function d(e, t) { + let r = e.get(t); + return void 0 === r && e.set(t, (r = new Set())), r; + } + function C(e, t) { + let r = e.get(t); + return void 0 === r && e.set(t, (r = new Map())), r; + } + async function E(e, t) { + if (null == t) return await e(); + try { + return await e(); + } finally { + await t(); + } + } + async function I(e, t) { + try { + return await e(); + } catch (e) { + throw ((e.message = t(e.message)), e); + } + } + function m(e, t) { + try { + return e(); + } catch (e) { + throw ((e.message = t(e.message)), e); + } + } + async function y(e) { + return await new Promise((t, r) => { + const n = []; + e.on('error', (e) => { + r(e); + }), + e.on('data', (e) => { + n.push(e); + }), + e.on('end', () => { + t(Buffer.concat(n)); + }); + }); + } + h.skip = g; + class w extends A.Transform { + constructor() { + super(...arguments), (this.chunks = []); + } + _transform(e, t, r) { + if ('buffer' !== t || !Buffer.isBuffer(e)) + throw new Error('Assertion failed: BufferStream only accept buffers'); + this.chunks.push(e), r(null, null); + } + _flush(e) { + e(null, Buffer.concat(this.chunks)); + } + } + class B extends A.Transform { + constructor(e = Buffer.alloc(0)) { + super(), (this.active = !0), (this.ifEmpty = e); + } + _transform(e, t, r) { + if ('buffer' !== t || !Buffer.isBuffer(e)) + throw new Error('Assertion failed: DefaultStream only accept buffers'); + (this.active = !1), r(null, e); + } + _flush(e) { + this.active && this.ifEmpty.length > 0 && e(null, this.ifEmpty); + } + } + function Q(e) { + return 'undefined' != typeof require ? require(e) : r(32178)(e); + } + function v(t) { + const i = n.cS.fromPortablePath(t), + o = r.c[i]; + let s; + delete r.c[i]; + try { + s = Q(i); + const t = r.c[i], + n = e.children.indexOf(t); + -1 !== n && e.children.splice(n, 1); + } finally { + r.c[i] = o; + } + return s; + } + function D(e, t) { + const r = Array.from(e); + Array.isArray(t) || (t = [t]); + const n = []; + for (const e of t) n.push(r.map((t) => e(t))); + const i = r.map((e, t) => t); + return ( + i.sort((e, t) => { + for (const r of n) { + const n = r[e] < r[t] ? -1 : r[e] > r[t] ? 1 : 0; + if (0 !== n) return n; + } + return 0; + }), + i.map((e) => r[e]) + ); + } + function b(e) { + return 0 === e.length + ? null + : e.map((e) => `(${s().makeRe(e, { windows: !1 }).source})`).join('|'); + } + function S(e, { env: t }) { + return e.replace( + /\${(?[\d\w_]+)(?:)?-?(?[^}]+)?}/g, + (...e) => { + const { variableName: r, colon: n, fallback: o } = e[e.length - 1], + s = Object.prototype.hasOwnProperty.call(t, r), + A = process.env[r]; + if (A) return A; + if (s && !A && n) return o; + if (s) return A; + if (o) return o; + throw new i.UsageError(`Environment variable not found (${r})`); + } + ); + } + }, + 63088: (e, t, r) => { + 'use strict'; + r.r(t), + r.d(t, { + makeScriptEnv: () => m, + prepareExternalProject: () => y, + hasPackageScript: () => w, + executePackageScript: () => B, + executePackageShellcode: () => Q, + executeWorkspaceScript: () => D, + hasWorkspaceScript: () => b, + getPackageAccessibleBinaries: () => S, + getWorkspaceAccessibleBinaries: () => k, + executePackageAccessibleBinary: () => x, + executeWorkspaceAccessibleBinary: () => F, + }); + var n, + i = r(46009), + o = r(53660), + s = r(75448), + A = r(56537), + a = r(29486), + c = r(43982), + u = r(92413), + l = r(46611), + h = r(92659), + g = r(35691), + f = r(15815), + p = r(59355), + d = r(6220), + C = r(73632), + E = r(54143); + async function I(e, t, r, n = []) { + 'win32' === process.platform && + (await A.xfs.writeFilePromise( + i.y1.format({ dir: e, name: t, ext: '.cmd' }), + `@"${r}" ${n.map((e) => `"${e.replace('"', '""')}"`).join(' ')} %*\n` + )), + await A.xfs.writeFilePromise( + i.y1.join(e, t), + `#!/bin/sh\nexec "${r}" ${n + .map((e) => `'${e.replace(/'/g, "'\"'\"'")}'`) + .join(' ')} "$@"\n` + ), + await A.xfs.chmodPromise(i.y1.join(e, t), 493); + } + async function m({ project: e, binFolder: t, lifecycleScript: r }) { + const n = {}; + for (const [e, t] of Object.entries(process.env)) + void 0 !== t && (n['path' !== e.toLowerCase() ? e : 'PATH'] = t); + const o = i.cS.fromPortablePath(t); + (n.BERRY_BIN_FOLDER = i.cS.fromPortablePath(o)), + await I(t, (0, i.Zu)('node'), process.execPath), + null !== p.o && + (await I(t, (0, i.Zu)('run'), process.execPath, [process.argv[1], 'run']), + await I(t, (0, i.Zu)('yarn'), process.execPath, [process.argv[1]]), + await I(t, (0, i.Zu)('yarnpkg'), process.execPath, [process.argv[1]]), + await I(t, (0, i.Zu)('node-gyp'), process.execPath, [ + process.argv[1], + 'run', + '--top-level', + 'node-gyp', + ])), + e && (n.INIT_CWD = i.cS.fromPortablePath(e.configuration.startingCwd)), + (n.PATH = n.PATH ? `${o}${i.cS.delimiter}${n.PATH}` : '' + o), + (n.npm_execpath = `${o}${i.cS.sep}yarn`), + (n.npm_node_execpath = `${o}${i.cS.sep}node`); + const s = + null !== p.o ? 'yarn/' + p.o : `yarn/${C.dynamicRequire('@yarnpkg/core').version}-core`; + return ( + (n.npm_config_user_agent = `${s} npm/? node/${process.versions.node} ${process.platform} ${process.arch}`), + r && (n.npm_lifecycle_event = r), + e && + (await e.configuration.triggerHook( + (e) => e.setupScriptEnvironment, + e, + n, + async (e, r, n) => await I(t, (0, i.Zu)(e), r, n) + )), + n + ); + } + async function y(e, t, { configuration: r, report: o, workspace: s = null }) { + await A.xfs.mktempPromise(async (a) => { + const c = i.y1.join(a, 'pack.log'), + { stdout: l, stderr: f } = r.getSubprocessStreams(c, { prefix: e, report: o }), + p = await (async function (e) { + let t = null; + try { + t = await A.xfs.readFilePromise(i.y1.join(e, i.QS.lockfile), 'utf8'); + } catch (e) {} + return null !== t + ? t.match(/^__metadata:$/m) + ? n.Yarn2 + : n.Yarn1 + : A.xfs.existsSync(i.y1.join(e, 'package-lock.json')) + ? n.Npm + : A.xfs.existsSync(i.y1.join(e, 'pnpm-lock.yaml')) + ? n.Pnpm + : null; + })(e); + let E; + null !== p + ? (l.write(`Installing the project using ${p}\n\n`), (E = p)) + : (l.write('No package manager detected; defaulting to Yarn\n\n'), (E = n.Yarn2)), + await A.xfs.mktempPromise(async (r) => { + const o = await m({ binFolder: r }), + p = new Map([ + [ + n.Yarn1, + async () => { + const r = null !== s ? ['workspace', s] : [], + n = await d.pipevp( + 'yarn', + ['set', 'version', 'classic', '--only-if-needed'], + { + cwd: e, + env: o, + stdin: null, + stdout: l, + stderr: f, + end: d.EndStrategy.ErrorCode, + } + ); + if (0 !== n.code) return n.code; + await A.xfs.appendFilePromise(i.y1.join(e, '.npmignore'), '/.yarn\n'), + l.write('\n'); + const a = await d.pipevp('yarn', ['install'], { + cwd: e, + env: o, + stdin: null, + stdout: l, + stderr: f, + end: d.EndStrategy.ErrorCode, + }); + if (0 !== a.code) return a.code; + l.write('\n'); + const c = await d.pipevp( + 'yarn', + [...r, 'pack', '--filename', i.cS.fromPortablePath(t)], + { cwd: e, env: o, stdin: null, stdout: l, stderr: f } + ); + return 0 !== c.code ? c.code : 0; + }, + ], + [ + n.Yarn2, + async () => { + const r = null !== s ? ['workspace', s] : [], + n = await d.pipevp( + 'yarn', + [ + ...r, + 'pack', + '--install-if-needed', + '--filename', + i.cS.fromPortablePath(t), + ], + { cwd: e, env: o, stdin: null, stdout: l, stderr: f } + ); + return 0 !== n.code ? n.code : 0; + }, + ], + [ + n.Npm, + async () => { + if (null !== s) + throw new Error( + "Workspaces aren't supported by npm, which has been detected as the primary package manager for " + + e + ); + delete o.npm_config_user_agent; + const r = await d.pipevp('npm', ['install'], { + cwd: e, + env: o, + stdin: null, + stdout: l, + stderr: f, + end: d.EndStrategy.ErrorCode, + }); + if (0 !== r.code) return r.code; + const n = new u.PassThrough(), + a = C.bufferStream(n); + n.pipe(l); + const c = await d.pipevp('npm', ['pack', '--silent'], { + cwd: e, + env: o, + stdin: null, + stdout: n, + stderr: f, + }); + if (0 !== c.code) return c.code; + const h = (await a).toString().trim(), + g = i.y1.resolve(e, i.cS.toPortablePath(h)); + return await A.xfs.renamePromise(g, t), 0; + }, + ], + ]).get(E); + if (void 0 === p) throw new Error('Assertion failed: Unsupported workflow'); + const I = await p(); + if (0 !== I && void 0 !== I) + throw ( + (A.xfs.detachTemp(a), + new g.lk( + h.b.PACKAGE_PREPARATION_FAILED, + `Packing the package failed (exit code ${I}, logs can be found here: ${c})` + )) + ); + }); + }); + } + async function w(e, t, { project: r }) { + const n = r.storedPackages.get(e.locatorHash); + if (!n) + throw new Error( + `Package for ${E.prettyLocator(r.configuration, e)} not found in the project` + ); + return await o.A.openPromise( + async (e) => { + const o = r.configuration, + A = r.configuration.getLinkers(), + a = { + project: r, + report: new f.P({ stdout: new u.PassThrough(), configuration: o }), + }, + c = A.find((e) => e.supportsPackage(n, a)); + if (!c) + throw new Error( + `The package ${E.prettyLocator( + r.configuration, + n + )} isn't supported by any of the available linkers` + ); + const h = await c.findPackageLocation(n, a), + g = new s.M(h, { baseFs: e }); + return (await l.G.find(i.LZ.dot, { baseFs: g })).scripts.has(t); + }, + { libzip: await (0, a.getLibzipPromise)() } + ); + } + async function B(e, t, r, { cwd: n, project: i, stdin: o, stdout: s, stderr: a }) { + return await A.xfs.mktempPromise(async (A) => { + const { manifest: u, env: l, cwd: h } = await v(e, { + project: i, + binFolder: A, + cwd: n, + lifecycleScript: t, + }), + g = u.scripts.get(t); + if (void 0 === g) return 1; + const f = await i.configuration.reduceHook( + (e) => e.wrapScriptExecution, + async () => + await (0, c.execute)(g, r, { cwd: h, env: l, stdin: o, stdout: s, stderr: a }), + i, + e, + t, + { script: g, args: r, cwd: h, env: l, stdin: o, stdout: s, stderr: a } + ); + return await f(); + }); + } + async function Q(e, t, r, { cwd: n, project: i, stdin: o, stdout: s, stderr: a }) { + return await A.xfs.mktempPromise(async (A) => { + const { env: u, cwd: l } = await v(e, { project: i, binFolder: A, cwd: n }); + return await (0, c.execute)(t, r, { cwd: l, env: u, stdin: o, stdout: s, stderr: a }); + }); + } + async function v(e, { project: t, binFolder: r, cwd: n, lifecycleScript: A }) { + const c = t.storedPackages.get(e.locatorHash); + if (!c) + throw new Error( + `Package for ${E.prettyLocator(t.configuration, e)} not found in the project` + ); + return await o.A.openPromise( + async (o) => { + const a = t.configuration, + h = t.configuration.getLinkers(), + g = { + project: t, + report: new f.P({ stdout: new u.PassThrough(), configuration: a }), + }, + p = h.find((e) => e.supportsPackage(c, g)); + if (!p) + throw new Error( + `The package ${E.prettyLocator( + t.configuration, + c + )} isn't supported by any of the available linkers` + ); + const d = await m({ project: t, binFolder: r, lifecycleScript: A }); + for (const [n, [, o]] of await S(e, { project: t })) + await I(r, (0, i.Zu)(n), process.execPath, [o]); + const C = await p.findPackageLocation(c, g), + y = new s.M(C, { baseFs: o }), + w = await l.G.find(i.LZ.dot, { baseFs: y }); + return void 0 === n && (n = C), { manifest: w, binFolder: r, env: d, cwd: n }; + }, + { libzip: await (0, a.getLibzipPromise)() } + ); + } + async function D(e, t, r, { cwd: n, stdin: i, stdout: o, stderr: s }) { + return await B(e.anchoredLocator, t, r, { + cwd: n, + project: e.project, + stdin: i, + stdout: o, + stderr: s, + }); + } + async function b(e, t) { + return e.manifest.scripts.has(t); + } + async function S(e, { project: t }) { + const r = t.configuration, + n = new Map(), + o = t.storedPackages.get(e.locatorHash); + if (!o) throw new Error(`Package for ${E.prettyLocator(r, e)} not found in the project`); + const s = new u.Writable(), + A = r.getLinkers(), + a = { project: t, report: new f.P({ configuration: r, stdout: s }) }, + c = new Set([e.locatorHash]); + for (const e of o.dependencies.values()) { + const n = t.storedResolutions.get(e.descriptorHash); + if (!n) + throw new Error( + `Assertion failed: The resolution (${E.prettyDescriptor( + r, + e + )}) should have been registered` + ); + c.add(n); + } + for (const e of c) { + const r = t.storedPackages.get(e); + if (!r) + throw new Error(`Assertion failed: The package (${e}) should have been registered`); + if (0 === r.bin.size) continue; + const o = A.find((e) => e.supportsPackage(r, a)); + if (!o) continue; + const s = await o.findPackageLocation(r, a); + for (const [e, t] of r.bin) n.set(e, [r, i.cS.fromPortablePath(i.y1.resolve(s, t))]); + } + return n; + } + async function k(e) { + return await S(e.anchoredLocator, { project: e.project }); + } + async function x( + e, + t, + r, + { cwd: n, project: o, stdin: s, stdout: a, stderr: c, nodeArgs: u = [] } + ) { + const l = await S(e, { project: o }), + h = l.get(t); + if (!h) + throw new Error(`Binary not found (${t}) for ${E.prettyLocator(o.configuration, e)}`); + return await A.xfs.mktempPromise(async (e) => { + const [, t] = h, + g = await m({ project: o, binFolder: e }); + for (const [e, [, t]] of l) + await I(g.BERRY_BIN_FOLDER, (0, i.Zu)(e), process.execPath, [t]); + let f; + try { + f = await d.pipevp(process.execPath, [...u, t, ...r], { + cwd: n, + env: g, + stdin: s, + stdout: a, + stderr: c, + }); + } finally { + await A.xfs.removePromise(g.BERRY_BIN_FOLDER); + } + return f.code; + }); + } + async function F(e, t, r, { cwd: n, stdin: i, stdout: o, stderr: s }) { + return await x(e.anchoredLocator, t, r, { + project: e.project, + cwd: n, + stdin: i, + stdout: o, + stderr: s, + }); + } + !(function (e) { + (e.Yarn1 = 'Yarn Classic'), (e.Yarn2 = 'Yarn'), (e.Npm = 'npm'), (e.Pnpm = 'pnpm'); + })(n || (n = {})); + }, + 36545: (e, t, r) => { + 'use strict'; + r.r(t), r.d(t, { satisfiesWithPrereleases: () => o }); + var n = r(53887), + i = r.n(n); + function o(e, t, r = !1) { + let n, o; + try { + n = new (i().Range)(t, r); + } catch (e) { + return !1; + } + if (!e) return !1; + try { + (o = new (i().SemVer)(e, n.loose)), o.prerelease && (o.prerelease = []); + } catch (e) { + return !1; + } + return n.set.some((e) => { + for (const t of e) t.semver.prerelease && (t.semver.prerelease = []); + return e.every((e) => e.test(o)); + }); + } + }, + 54143: (e, t, r) => { + 'use strict'; + r.r(t), + r.d(t, { + makeIdent: () => l, + makeDescriptor: () => h, + makeLocator: () => g, + convertToIdent: () => f, + convertDescriptorToLocator: () => p, + convertLocatorToDescriptor: () => d, + convertPackageToLocator: () => C, + renamePackage: () => E, + copyPackage: () => I, + virtualizeDescriptor: () => m, + virtualizePackage: () => y, + isVirtualDescriptor: () => w, + isVirtualLocator: () => B, + devirtualizeDescriptor: () => Q, + devirtualizeLocator: () => v, + bindDescriptor: () => D, + bindLocator: () => b, + areIdentsEqual: () => S, + areDescriptorsEqual: () => k, + areLocatorsEqual: () => x, + areVirtualPackagesEquivalent: () => F, + parseIdent: () => M, + tryParseIdent: () => N, + parseDescriptor: () => R, + tryParseDescriptor: () => K, + parseLocator: () => L, + tryParseLocator: () => T, + parseRange: () => P, + parseFileStyleRange: () => U, + makeRange: () => O, + convertToManifestRange: () => j, + requirableIdent: () => Y, + stringifyIdent: () => G, + stringifyDescriptor: () => J, + stringifyLocator: () => H, + slugifyIdent: () => q, + slugifyLocator: () => z, + prettyIdent: () => W, + prettyRange: () => X, + prettyDescriptor: () => Z, + prettyReference: () => $, + prettyLocator: () => ee, + prettyLocatorNoColors: () => te, + sortDescriptors: () => re, + prettyWorkspace: () => ne, + getIdentVendorPath: () => ie, + }); + var n = r(46009), + i = r(71191), + o = r.n(i), + s = r(53887), + A = r.n(s), + a = r(27122), + c = r(20624), + u = r(73632); + function l(e, t) { + return { identHash: c.makeHash(e, t), scope: e, name: t }; + } + function h(e, t) { + return { + identHash: e.identHash, + scope: e.scope, + name: e.name, + descriptorHash: c.makeHash(e.identHash, t), + range: t, + }; + } + function g(e, t) { + return { + identHash: e.identHash, + scope: e.scope, + name: e.name, + locatorHash: c.makeHash(e.identHash, t), + reference: t, + }; + } + function f(e) { + return { identHash: e.identHash, scope: e.scope, name: e.name }; + } + function p(e) { + return { + identHash: e.identHash, + scope: e.scope, + name: e.name, + locatorHash: e.descriptorHash, + reference: e.range, + }; + } + function d(e) { + return { + identHash: e.identHash, + scope: e.scope, + name: e.name, + descriptorHash: e.locatorHash, + range: e.reference, + }; + } + function C(e) { + return { + identHash: e.identHash, + scope: e.scope, + name: e.name, + locatorHash: e.locatorHash, + reference: e.reference, + }; + } + function E(e, t) { + return { + identHash: t.identHash, + scope: t.scope, + name: t.name, + locatorHash: t.locatorHash, + reference: t.reference, + version: e.version, + languageName: e.languageName, + linkType: e.linkType, + dependencies: new Map(e.dependencies), + peerDependencies: new Map(e.peerDependencies), + dependenciesMeta: new Map(e.dependenciesMeta), + peerDependenciesMeta: new Map(e.peerDependenciesMeta), + bin: new Map(e.bin), + }; + } + function I(e) { + return E(e, e); + } + function m(e, t) { + if (t.includes('#')) throw new Error('Invalid entropy'); + return h(e, `virtual:${t}#${e.range}`); + } + function y(e, t) { + if (t.includes('#')) throw new Error('Invalid entropy'); + return E(e, g(e, `virtual:${t}#${e.reference}`)); + } + function w(e) { + return e.range.startsWith('virtual:'); + } + function B(e) { + return e.reference.startsWith('virtual:'); + } + function Q(e) { + if (!w(e)) throw new Error('Not a virtual descriptor'); + return h(e, e.range.replace(/^[^#]*#/, '')); + } + function v(e) { + if (!B(e)) throw new Error('Not a virtual descriptor'); + return g(e, e.reference.replace(/^[^#]*#/, '')); + } + function D(e, t) { + return e.range.includes('::') ? e : h(e, `${e.range}::${o().stringify(t)}`); + } + function b(e, t) { + return e.reference.includes('::') ? e : g(e, `${e.reference}::${o().stringify(t)}`); + } + function S(e, t) { + return e.identHash === t.identHash; + } + function k(e, t) { + return e.descriptorHash === t.descriptorHash; + } + function x(e, t) { + return e.locatorHash === t.locatorHash; + } + function F(e, t) { + if (!B(e)) throw new Error('Invalid package type'); + if (!B(t)) throw new Error('Invalid package type'); + if (!S(e, t)) return !1; + if (e.dependencies.size !== t.dependencies.size) return !1; + for (const r of e.dependencies.values()) { + const e = t.dependencies.get(r.identHash); + if (!e) return !1; + if (!k(r, e)) return !1; + } + return !0; + } + function M(e) { + const t = N(e); + if (!t) throw new Error(`Invalid ident (${e})`); + return t; + } + function N(e) { + const t = e.match(/^(?:@([^/]+?)\/)?([^/]+)$/); + if (!t) return null; + const [, r, n] = t; + return l(void 0 !== r ? r : null, n); + } + function R(e, t = !1) { + const r = K(e, t); + if (!r) throw new Error(`Invalid descriptor (${e})`); + return r; + } + function K(e, t = !1) { + const r = t + ? e.match(/^(?:@([^/]+?)\/)?([^/]+?)(?:@(.+))$/) + : e.match(/^(?:@([^/]+?)\/)?([^/]+?)(?:@(.+))?$/); + if (!r) return null; + const [, n, i, o] = r; + if ('unknown' === o) throw new Error(`Invalid range (${e})`); + const s = void 0 !== o ? o : 'unknown'; + return h(l(void 0 !== n ? n : null, i), s); + } + function L(e, t = !1) { + const r = T(e, t); + if (!r) throw new Error(`Invalid locator (${e})`); + return r; + } + function T(e, t = !1) { + const r = t + ? e.match(/^(?:@([^/]+?)\/)?([^/]+?)(?:@(.+))$/) + : e.match(/^(?:@([^/]+?)\/)?([^/]+?)(?:@(.+))?$/); + if (!r) return null; + const [, n, i, o] = r; + if ('unknown' === o) throw new Error(`Invalid reference (${e})`); + const s = void 0 !== o ? o : 'unknown'; + return g(l(void 0 !== n ? n : null, i), s); + } + function P(e, t) { + const r = e.match(/^([^#:]*:)?((?:(?!::)[^#])*)(?:#((?:(?!::).)*))?(?:::(.*))?$/); + if (null === r) throw new Error(`Invalid range (${e})`); + const n = void 0 !== r[1] ? r[1] : null; + if ( + 'string' == typeof (null == t ? void 0 : t.requireProtocol) && + n !== t.requireProtocol + ) + throw new Error(`Invalid protocol (${n})`); + if ((null == t ? void 0 : t.requireProtocol) && null === n) + throw new Error(`Missing protocol (${n})`); + const i = void 0 !== r[3] ? decodeURIComponent(r[2]) : null; + if ((null == t ? void 0 : t.requireSource) && null === i) + throw new Error(`Missing source (${e})`); + const s = void 0 !== r[3] ? decodeURIComponent(r[3]) : decodeURIComponent(r[2]); + return { + protocol: n, + source: i, + selector: (null == t ? void 0 : t.parseSelector) ? o().parse(s) : s, + params: void 0 !== r[4] ? o().parse(r[4]) : null, + }; + } + function U(e, { protocol: t }) { + const { selector: r, params: n } = P(e, { requireProtocol: t, requireBindings: !0 }); + if ('string' != typeof n.locator) + throw new Error('Assertion failed: Invalid bindings for ' + e); + return { parentLocator: L(n.locator, !0), path: r }; + } + function _(e) { + return (e = (e = (e = e.replace(/%/g, '%25')).replace(/:/g, '%3A')).replace(/#/g, '%23')); + } + function O({ protocol: e, source: t, selector: r, params: n }) { + let i = ''; + return ( + null !== e && (i += '' + e), + null !== t && (i += _(t) + '#'), + (i += _(r)), + (function (e) { + return null !== e && Object.entries(e).length > 0; + })(n) && (i += '::' + o().stringify(n)), + i + ); + } + function j(e) { + const { params: t, protocol: r, source: n, selector: i } = P(e); + for (const e in t) e.startsWith('__') && delete t[e]; + return O({ protocol: r, source: n, params: t, selector: i }); + } + function Y(e) { + return e.scope ? `@${e.scope}/${e.name}` : '' + e.name; + } + function G(e) { + return e.scope ? `@${e.scope}/${e.name}` : '' + e.name; + } + function J(e) { + return e.scope ? `@${e.scope}/${e.name}@${e.range}` : `${e.name}@${e.range}`; + } + function H(e) { + return e.scope ? `@${e.scope}/${e.name}@${e.reference}` : `${e.name}@${e.reference}`; + } + function q(e) { + return null !== e.scope ? `@${e.scope}-${e.name}` : e.name; + } + function z(e) { + const { protocol: t, selector: r } = P(e.reference), + i = null !== t ? t.replace(/:$/, '') : 'exotic', + o = A().valid(r), + s = null !== o ? `${i}-${o}` : '' + i, + a = (e.scope, `${q(e)}-${s}-${e.locatorHash.slice(0, 10)}`); + return (0, n.Zu)(a); + } + function W(e, t) { + return t.scope + ? `${e.format(`@${t.scope}/`, a.a5.SCOPE)}${e.format(t.name, a.a5.NAME)}` + : '' + e.format(t.name, a.a5.NAME); + } + function V(e) { + if (e.startsWith('virtual:')) { + return `${V(e.substr(e.indexOf('#') + 1))} [${e.substr('virtual:'.length, 5)}]`; + } + return e.replace(/\?.*/, '?[...]'); + } + function X(e, t) { + return '' + e.format(V(t), a.a5.RANGE); + } + function Z(e, t) { + return `${W(e, t)}${e.format('@', a.a5.RANGE)}${X(e, t.range)}`; + } + function $(e, t) { + return '' + e.format(V(t), a.a5.REFERENCE); + } + function ee(e, t) { + return `${W(e, t)}${e.format('@', a.a5.REFERENCE)}${$(e, t.reference)}`; + } + function te(e) { + return `${G(e)}@${V(e.reference)}`; + } + function re(e) { + return u.sortMap(e, [(e) => G(e), (e) => e.range]); + } + function ne(e, t) { + return W(e, t.locator); + } + function ie(e) { + return 'node_modules/' + Y(e); + } + }, + 32485: (e, t, r) => { + 'use strict'; + var n; + r.d(t, { U: () => n }), + (function (e) { + (e.HARD = 'HARD'), (e.SOFT = 'SOFT'); + })(n || (n = {})); + }, + 14626: (e, t, r) => { + 'use strict'; + r.d(t, { K: () => i }); + var n = r(42096); + class i extends n.p { + constructor(e, { baseFs: t, pathUtils: r }) { + super(r), (this.target = e), (this.baseFs = t); + } + getRealPath() { + return this.target; + } + getBaseFs() { + return this.baseFs; + } + mapFromBase(e) { + return e; + } + mapToBase(e) { + return e; + } + } + }, + 75448: (e, t, r) => { + 'use strict'; + r.d(t, { M: () => s }); + var n = r(78420), + i = r(42096), + o = r(46009); + class s extends i.p { + constructor(e, { baseFs: t = new n.S() } = {}) { + super(o.y1), (this.target = this.pathUtils.normalize(e)), (this.baseFs = t); + } + getRealPath() { + return this.pathUtils.resolve(this.baseFs.getRealPath(), this.target); + } + resolve(e) { + return this.pathUtils.isAbsolute(e) + ? o.y1.normalize(e) + : this.baseFs.resolve(o.y1.join(this.target, e)); + } + mapFromBase(e) { + return e; + } + mapToBase(e) { + return this.pathUtils.isAbsolute(e) ? e : this.pathUtils.join(this.target, e); + } + } + }, + 35398: (e, t, r) => { + 'use strict'; + r.d(t, { uY: () => a, fS: () => c, qH: () => u }); + var n = r(12087), + i = r(35747), + o = r.n(i), + s = r(46009); + async function A(e, t, r, n, i, a, c) { + const u = await (async function (e, t) { + try { + return await e.lstatPromise(t); + } catch (e) { + return null; + } + })(r, n), + l = await i.lstatPromise(a); + switch ( + (c.stableTime ? t.push([n, 315532800, 315532800]) : t.push([n, l.atime, l.mtime]), !0) + ) { + case l.isDirectory(): + await (async function (e, t, r, n, i, o, s, a, c) { + if (null !== i && !i.isDirectory()) { + if (!c.overwrite) return; + e.push(async () => r.removePromise(n)), (i = null); + } + null === i && e.push(async () => r.mkdirPromise(n, { mode: a.mode })); + const u = await o.readdirPromise(s); + if (c.stableSort) + for (const i of u.sort()) + await A(e, t, r, r.pathUtils.join(n, i), o, o.pathUtils.join(s, i), c); + else + await Promise.all( + u.map(async (i) => { + await A(e, t, r, r.pathUtils.join(n, i), o, o.pathUtils.join(s, i), c); + }) + ); + })(e, t, r, n, u, i, a, l, c); + break; + case l.isFile(): + await (async function (e, t, r, n, i, s, A, a, c) { + if (null !== i) { + if (!c.overwrite) return; + e.push(async () => r.removePromise(n)), (i = null); + } + r === s + ? e.push(async () => r.copyFilePromise(A, n, o().constants.COPYFILE_FICLONE)) + : e.push(async () => r.writeFilePromise(n, await s.readFilePromise(A))); + })(e, 0, r, n, u, i, a, 0, c); + break; + case l.isSymbolicLink(): + await (async function (e, t, r, n, i, o, A, a, c) { + if (null !== i) { + if (!c.overwrite) return; + e.push(async () => r.removePromise(n)), (i = null); + } + const u = await o.readlinkPromise(A); + e.push(async () => r.symlinkPromise((0, s.CI)(r.pathUtils, u), n)); + })(e, 0, r, n, u, i, a, 0, c); + break; + default: + throw new Error(`Unsupported file type (${l.mode})`); + } + e.push(async () => r.chmodPromise(n, 511 & l.mode)); + } + class a { + constructor(e) { + this.pathUtils = e; + } + async removePromise(e) { + let t; + try { + t = await this.lstatPromise(e); + } catch (e) { + if ('ENOENT' === e.code) return; + throw e; + } + if (t.isDirectory()) { + for (const t of await this.readdirPromise(e)) + await this.removePromise(this.pathUtils.resolve(e, t)); + for (let t = 0; t < 5; ++t) + try { + await this.rmdirPromise(e); + break; + } catch (e) { + if ('EBUSY' === e.code || 'ENOTEMPTY' === e.code) { + await new Promise((e) => setTimeout(e, 100 * t)); + continue; + } + throw e; + } + } else await this.unlinkPromise(e); + } + removeSync(e) { + let t; + try { + t = this.lstatSync(e); + } catch (e) { + if ('ENOENT' === e.code) return; + throw e; + } + if (t.isDirectory()) { + for (const t of this.readdirSync(e)) this.removeSync(this.pathUtils.resolve(e, t)); + this.rmdirSync(e); + } else this.unlinkSync(e); + } + async mkdirpPromise(e, { chmod: t, utimes: r } = {}) { + if ((e = this.resolve(e)) === this.pathUtils.dirname(e)) return; + const n = e.split(this.pathUtils.sep); + for (let e = 2; e <= n.length; ++e) { + const i = n.slice(0, e).join(this.pathUtils.sep); + if (!this.existsSync(i)) { + try { + await this.mkdirPromise(i); + } catch (e) { + if ('EEXIST' === e.code) continue; + throw e; + } + if ((null != t && (await this.chmodPromise(i, t)), null != r)) + await this.utimesPromise(i, r[0], r[1]); + else { + const e = await this.statPromise(this.pathUtils.dirname(i)); + await this.utimesPromise(i, e.atime, e.mtime); + } + } + } + } + mkdirpSync(e, { chmod: t, utimes: r } = {}) { + if ((e = this.resolve(e)) === this.pathUtils.dirname(e)) return; + const n = e.split(this.pathUtils.sep); + for (let e = 2; e <= n.length; ++e) { + const i = n.slice(0, e).join(this.pathUtils.sep); + if (!this.existsSync(i)) { + try { + this.mkdirSync(i); + } catch (e) { + if ('EEXIST' === e.code) continue; + throw e; + } + if ((null != t && this.chmodSync(i, t), null != r)) this.utimesSync(i, r[0], r[1]); + else { + const e = this.statSync(this.pathUtils.dirname(i)); + this.utimesSync(i, e.atime, e.mtime); + } + } + } + } + async copyPromise( + e, + t, + { baseFs: r = this, overwrite: n = !0, stableSort: i = !1, stableTime: o = !1 } = {} + ) { + return await (async function (e, t, r, n, i) { + const o = e.pathUtils.normalize(t), + s = r.pathUtils.normalize(n), + a = [], + c = []; + await e.mkdirpPromise(t), await A(a, c, e, o, r, s, i); + for (const e of a) await e(); + const u = + 'function' == typeof e.lutimesPromise + ? e.lutimesPromise.bind(e) + : e.utimesPromise.bind(e); + for (const [e, t, r] of c) await u(e, t, r); + })(this, e, r, t, { overwrite: n, stableSort: i, stableTime: o }); + } + copySync(e, t, { baseFs: r = this, overwrite: n = !0 } = {}) { + const i = r.lstatSync(t), + o = this.existsSync(e); + if (i.isDirectory()) { + this.mkdirpSync(e); + const i = r.readdirSync(t); + for (const o of i) + this.copySync(this.pathUtils.join(e, o), r.pathUtils.join(t, o), { + baseFs: r, + overwrite: n, + }); + } else if (i.isFile()) { + if (!o || n) { + o && this.removeSync(e); + const n = r.readFileSync(t); + this.writeFileSync(e, n); + } + } else { + if (!i.isSymbolicLink()) + throw new Error( + `Unsupported file type (file: ${t}, mode: 0o${i.mode + .toString(8) + .padStart(6, '0')})` + ); + if (!o || n) { + o && this.removeSync(e); + const n = r.readlinkSync(t); + this.symlinkSync((0, s.CI)(this.pathUtils, n), e); + } + } + const A = 511 & i.mode; + this.chmodSync(e, A); + } + async changeFilePromise(e, t, { automaticNewlines: r } = {}) { + let n = ''; + try { + n = await this.readFilePromise(e, 'utf8'); + } catch (e) {} + const i = r ? u(n, t) : t; + n !== i && (await this.writeFilePromise(e, i)); + } + changeFileSync(e, t, { automaticNewlines: r = !1 } = {}) { + let n = ''; + try { + n = this.readFileSync(e, 'utf8'); + } catch (e) {} + const i = r ? u(n, t) : t; + n !== i && this.writeFileSync(e, i); + } + async movePromise(e, t) { + try { + await this.renamePromise(e, t); + } catch (r) { + if ('EXDEV' !== r.code) throw r; + await this.copyPromise(t, e), await this.removePromise(e); + } + } + moveSync(e, t) { + try { + this.renameSync(e, t); + } catch (r) { + if ('EXDEV' !== r.code) throw r; + this.copySync(t, e), this.removeSync(e); + } + } + async lockPromise(e, t) { + const r = e + '.flock', + n = Date.now(); + let i = null; + const o = async () => { + let e; + try { + [e] = await this.readJsonPromise(r); + } catch (e) { + return Date.now() - n < 500; + } + try { + return process.kill(e, 0), !0; + } catch (e) { + return !1; + } + }; + for (; null === i; ) + try { + i = await this.openPromise(r, 'wx'); + } catch (e) { + if ('EEXIST' !== e.code) throw e; + if (!(await o())) + try { + await this.unlinkPromise(r); + continue; + } catch (e) {} + if (!(Date.now() - n < 6e4)) + throw new Error(`Couldn't acquire a lock in a reasonable time (via ${r})`); + await new Promise((e) => setTimeout(e, 1e3 / 60)); + } + await this.writePromise(i, JSON.stringify([process.pid])); + try { + return await t(); + } finally { + try { + await this.unlinkPromise(r), await this.closePromise(i); + } catch (e) {} + } + } + async readJsonPromise(e) { + const t = await this.readFilePromise(e, 'utf8'); + try { + return JSON.parse(t); + } catch (t) { + throw ((t.message += ` (in ${e})`), t); + } + } + async readJsonSync(e) { + const t = this.readFileSync(e, 'utf8'); + try { + return JSON.parse(t); + } catch (t) { + throw ((t.message += ` (in ${e})`), t); + } + } + async writeJsonPromise(e, t) { + return await this.writeFilePromise(e, JSON.stringify(t, null, 2) + '\n'); + } + writeJsonSync(e, t) { + return this.writeFileSync(e, JSON.stringify(t, null, 2) + '\n'); + } + async preserveTimePromise(e, t) { + const r = await this.lstatPromise(e), + n = await t(); + void 0 !== n && (e = n), + this.lutimesPromise + ? await this.lutimesPromise(e, r.atime, r.mtime) + : r.isSymbolicLink() || (await this.utimesPromise(e, r.atime, r.mtime)); + } + async preserveTimeSync(e, t) { + const r = this.lstatSync(e), + n = t(); + void 0 !== n && (e = n), + this.lutimesSync + ? this.lutimesSync(e, r.atime, r.mtime) + : r.isSymbolicLink() || this.utimesSync(e, r.atime, r.mtime); + } + } + a.DEFAULT_TIME = 315532800; + class c extends a { + constructor() { + super(s.y1); + } + } + function u(e, t) { + return t.replace( + /\r?\n/g, + (function (e) { + const t = e.match(/\r?\n/g); + if (null === t) return n.EOL; + const r = t.filter((e) => '\r\n' === e).length; + return r > t.length - r ? '\r\n' : '\n'; + })(e) + ); + } + }, + 10489: (e, t, r) => { + 'use strict'; + r.d(t, { n: () => A }); + var n = r(78420), + i = r(42096), + o = r(46009); + const s = o.LZ.root; + class A extends i.p { + constructor(e, { baseFs: t = new n.S() } = {}) { + super(o.y1), (this.target = this.pathUtils.resolve(o.LZ.root, e)), (this.baseFs = t); + } + getRealPath() { + return this.pathUtils.resolve( + this.baseFs.getRealPath(), + this.pathUtils.relative(o.LZ.root, this.target) + ); + } + getTarget() { + return this.target; + } + getBaseFs() { + return this.baseFs; + } + mapToBase(e) { + const t = this.pathUtils.normalize(e); + if (this.pathUtils.isAbsolute(e)) + return this.pathUtils.resolve(this.target, this.pathUtils.relative(s, e)); + if (t.match(/^\.\.\/?/)) + throw new Error(`Resolving this path (${e}) would escape the jail`); + return this.pathUtils.resolve(this.target, e); + } + mapFromBase(e) { + return this.pathUtils.resolve(s, this.pathUtils.relative(this.target, e)); + } + } + }, + 15037: (e, t, r) => { + 'use strict'; + r.d(t, { v: () => i }); + var n = r(42096); + class i extends n.p { + constructor(e, t) { + super(t), (this.instance = null), (this.factory = e); + } + get baseFs() { + return this.instance || (this.instance = this.factory()), this.instance; + } + set baseFs(e) { + this.instance = e; + } + mapFromBase(e) { + return e; + } + mapToBase(e) { + return e; + } + } + }, + 78420: (e, t, r) => { + 'use strict'; + r.d(t, { S: () => a }); + var n = r(35747), + i = r.n(n), + o = r(35398), + s = r(26984), + A = r(46009); + class a extends o.fS { + constructor(e = i()) { + super(), + (this.realFs = e), + void 0 !== this.realFs.lutimes && + ((this.lutimesPromise = this.lutimesPromiseImpl), + (this.lutimesSync = this.lutimesSyncImpl)); + } + getExtractHint() { + return !1; + } + getRealPath() { + return A.LZ.root; + } + resolve(e) { + return A.y1.resolve(e); + } + async openPromise(e, t, r) { + return await new Promise((n, i) => { + this.realFs.open(A.cS.fromPortablePath(e), t, r, this.makeCallback(n, i)); + }); + } + openSync(e, t, r) { + return this.realFs.openSync(A.cS.fromPortablePath(e), t, r); + } + async readPromise(e, t, r = 0, n = 0, i = -1) { + return await new Promise((o, s) => { + this.realFs.read(e, t, r, n, i, (e, t) => { + e ? s(e) : o(t); + }); + }); + } + readSync(e, t, r, n, i) { + return this.realFs.readSync(e, t, r, n, i); + } + async writePromise(e, t, r, n, i) { + return await new Promise((o, s) => + 'string' == typeof t + ? this.realFs.write(e, t, r, this.makeCallback(o, s)) + : this.realFs.write(e, t, r, n, i, this.makeCallback(o, s)) + ); + } + writeSync(e, t, r, n, i) { + return 'string' == typeof t + ? this.realFs.writeSync(e, t, r) + : this.realFs.writeSync(e, t, r, n, i); + } + async closePromise(e) { + await new Promise((t, r) => { + this.realFs.close(e, this.makeCallback(t, r)); + }); + } + closeSync(e) { + this.realFs.closeSync(e); + } + createReadStream(e, t) { + const r = null !== e ? A.cS.fromPortablePath(e) : e; + return this.realFs.createReadStream(r, t); + } + createWriteStream(e, t) { + const r = null !== e ? A.cS.fromPortablePath(e) : e; + return this.realFs.createWriteStream(r, t); + } + async realpathPromise(e) { + return await new Promise((t, r) => { + this.realFs.realpath(A.cS.fromPortablePath(e), {}, this.makeCallback(t, r)); + }).then((e) => A.cS.toPortablePath(e)); + } + realpathSync(e) { + return A.cS.toPortablePath(this.realFs.realpathSync(A.cS.fromPortablePath(e), {})); + } + async existsPromise(e) { + return await new Promise((t) => { + this.realFs.exists(A.cS.fromPortablePath(e), t); + }); + } + accessSync(e, t) { + return this.realFs.accessSync(A.cS.fromPortablePath(e), t); + } + async accessPromise(e, t) { + return await new Promise((r, n) => { + this.realFs.access(A.cS.fromPortablePath(e), t, this.makeCallback(r, n)); + }); + } + existsSync(e) { + return this.realFs.existsSync(A.cS.fromPortablePath(e)); + } + async statPromise(e) { + return await new Promise((t, r) => { + this.realFs.stat(A.cS.fromPortablePath(e), this.makeCallback(t, r)); + }); + } + statSync(e) { + return this.realFs.statSync(A.cS.fromPortablePath(e)); + } + async lstatPromise(e) { + return await new Promise((t, r) => { + this.realFs.lstat(A.cS.fromPortablePath(e), this.makeCallback(t, r)); + }); + } + lstatSync(e) { + return this.realFs.lstatSync(A.cS.fromPortablePath(e)); + } + async chmodPromise(e, t) { + return await new Promise((r, n) => { + this.realFs.chmod(A.cS.fromPortablePath(e), t, this.makeCallback(r, n)); + }); + } + chmodSync(e, t) { + return this.realFs.chmodSync(A.cS.fromPortablePath(e), t); + } + async renamePromise(e, t) { + return await new Promise((r, n) => { + this.realFs.rename( + A.cS.fromPortablePath(e), + A.cS.fromPortablePath(t), + this.makeCallback(r, n) + ); + }); + } + renameSync(e, t) { + return this.realFs.renameSync(A.cS.fromPortablePath(e), A.cS.fromPortablePath(t)); + } + async copyFilePromise(e, t, r = 0) { + return await new Promise((n, i) => { + this.realFs.copyFile( + A.cS.fromPortablePath(e), + A.cS.fromPortablePath(t), + r, + this.makeCallback(n, i) + ); + }); + } + copyFileSync(e, t, r = 0) { + return this.realFs.copyFileSync(A.cS.fromPortablePath(e), A.cS.fromPortablePath(t), r); + } + async appendFilePromise(e, t, r) { + return await new Promise((n, i) => { + const o = 'string' == typeof e ? A.cS.fromPortablePath(e) : e; + r + ? this.realFs.appendFile(o, t, r, this.makeCallback(n, i)) + : this.realFs.appendFile(o, t, this.makeCallback(n, i)); + }); + } + appendFileSync(e, t, r) { + const n = 'string' == typeof e ? A.cS.fromPortablePath(e) : e; + r ? this.realFs.appendFileSync(n, t, r) : this.realFs.appendFileSync(n, t); + } + async writeFilePromise(e, t, r) { + return await new Promise((n, i) => { + const o = 'string' == typeof e ? A.cS.fromPortablePath(e) : e; + r + ? this.realFs.writeFile(o, t, r, this.makeCallback(n, i)) + : this.realFs.writeFile(o, t, this.makeCallback(n, i)); + }); + } + writeFileSync(e, t, r) { + const n = 'string' == typeof e ? A.cS.fromPortablePath(e) : e; + r ? this.realFs.writeFileSync(n, t, r) : this.realFs.writeFileSync(n, t); + } + async unlinkPromise(e) { + return await new Promise((t, r) => { + this.realFs.unlink(A.cS.fromPortablePath(e), this.makeCallback(t, r)); + }); + } + unlinkSync(e) { + return this.realFs.unlinkSync(A.cS.fromPortablePath(e)); + } + async utimesPromise(e, t, r) { + return await new Promise((n, i) => { + this.realFs.utimes(A.cS.fromPortablePath(e), t, r, this.makeCallback(n, i)); + }); + } + utimesSync(e, t, r) { + this.realFs.utimesSync(A.cS.fromPortablePath(e), t, r); + } + async lutimesPromiseImpl(e, t, r) { + const n = this.realFs.lutimes; + if (void 0 === n) throw (0, s.bk)('unavailable Node binding', `lutimes '${e}'`); + return await new Promise((i, o) => { + n.call(this.realFs, A.cS.fromPortablePath(e), t, r, this.makeCallback(i, o)); + }); + } + lutimesSyncImpl(e, t, r) { + const n = this.realFs.lutimesSync; + if (void 0 === n) throw (0, s.bk)('unavailable Node binding', `lutimes '${e}'`); + n.call(this.realFs, A.cS.fromPortablePath(e), t, r); + } + async mkdirPromise(e, t) { + return await new Promise((r, n) => { + this.realFs.mkdir(A.cS.fromPortablePath(e), t, this.makeCallback(r, n)); + }); + } + mkdirSync(e, t) { + return this.realFs.mkdirSync(A.cS.fromPortablePath(e), t); + } + async rmdirPromise(e) { + return await new Promise((t, r) => { + this.realFs.rmdir(A.cS.fromPortablePath(e), this.makeCallback(t, r)); + }); + } + rmdirSync(e) { + return this.realFs.rmdirSync(A.cS.fromPortablePath(e)); + } + async symlinkPromise(e, t, r) { + const n = r || (e.endsWith('/') ? 'dir' : 'file'); + return await new Promise((r, i) => { + this.realFs.symlink( + A.cS.fromPortablePath(e.replace(/\/+$/, '')), + A.cS.fromPortablePath(t), + n, + this.makeCallback(r, i) + ); + }); + } + symlinkSync(e, t, r) { + const n = r || (e.endsWith('/') ? 'dir' : 'file'); + return this.realFs.symlinkSync( + A.cS.fromPortablePath(e.replace(/\/+$/, '')), + A.cS.fromPortablePath(t), + n + ); + } + async readFilePromise(e, t) { + return await new Promise((r, n) => { + const i = 'string' == typeof e ? A.cS.fromPortablePath(e) : e; + this.realFs.readFile(i, t, this.makeCallback(r, n)); + }); + } + readFileSync(e, t) { + const r = 'string' == typeof e ? A.cS.fromPortablePath(e) : e; + return this.realFs.readFileSync(r, t); + } + async readdirPromise(e, { withFileTypes: t } = {}) { + return await new Promise((r, n) => { + t + ? this.realFs.readdir( + A.cS.fromPortablePath(e), + { withFileTypes: !0 }, + this.makeCallback(r, n) + ) + : this.realFs.readdir( + A.cS.fromPortablePath(e), + this.makeCallback((e) => r(e), n) + ); + }); + } + readdirSync(e, { withFileTypes: t } = {}) { + return t + ? this.realFs.readdirSync(A.cS.fromPortablePath(e), { withFileTypes: !0 }) + : this.realFs.readdirSync(A.cS.fromPortablePath(e)); + } + async readlinkPromise(e) { + return await new Promise((t, r) => { + this.realFs.readlink(A.cS.fromPortablePath(e), this.makeCallback(t, r)); + }).then((e) => A.cS.toPortablePath(e)); + } + readlinkSync(e) { + return A.cS.toPortablePath(this.realFs.readlinkSync(A.cS.fromPortablePath(e))); + } + watch(e, t, r) { + return this.realFs.watch(A.cS.fromPortablePath(e), t, r); + } + makeCallback(e, t) { + return (r, n) => { + r ? t(r) : e(n); + }; + } + } + }, + 39725: (e, t, r) => { + 'use strict'; + r.d(t, { i: () => o }); + var n = r(42096), + i = r(46009); + class o extends n.p { + constructor(e) { + super(i.cS), (this.baseFs = e); + } + mapFromBase(e) { + return i.cS.fromPortablePath(e); + } + mapToBase(e) { + return i.cS.toPortablePath(e); + } + } + }, + 42096: (e, t, r) => { + 'use strict'; + r.d(t, { p: () => i }); + var n = r(35398); + class i extends n.uY { + getExtractHint(e) { + return this.baseFs.getExtractHint(e); + } + resolve(e) { + return this.mapFromBase(this.baseFs.resolve(this.mapToBase(e))); + } + getRealPath() { + return this.mapFromBase(this.baseFs.getRealPath()); + } + openPromise(e, t, r) { + return this.baseFs.openPromise(this.mapToBase(e), t, r); + } + openSync(e, t, r) { + return this.baseFs.openSync(this.mapToBase(e), t, r); + } + async readPromise(e, t, r, n, i) { + return await this.baseFs.readPromise(e, t, r, n, i); + } + readSync(e, t, r, n, i) { + return this.baseFs.readSync(e, t, r, n, i); + } + async writePromise(e, t, r, n, i) { + return 'string' == typeof t + ? await this.baseFs.writePromise(e, t, r) + : await this.baseFs.writePromise(e, t, r, n, i); + } + writeSync(e, t, r, n, i) { + return 'string' == typeof t + ? this.baseFs.writeSync(e, t, r) + : this.baseFs.writeSync(e, t, r, n, i); + } + closePromise(e) { + return this.baseFs.closePromise(e); + } + closeSync(e) { + this.baseFs.closeSync(e); + } + createReadStream(e, t) { + return this.baseFs.createReadStream(null !== e ? this.mapToBase(e) : e, t); + } + createWriteStream(e, t) { + return this.baseFs.createWriteStream(null !== e ? this.mapToBase(e) : e, t); + } + async realpathPromise(e) { + return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(e))); + } + realpathSync(e) { + return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(e))); + } + existsPromise(e) { + return this.baseFs.existsPromise(this.mapToBase(e)); + } + existsSync(e) { + return this.baseFs.existsSync(this.mapToBase(e)); + } + accessSync(e, t) { + return this.baseFs.accessSync(this.mapToBase(e), t); + } + accessPromise(e, t) { + return this.baseFs.accessPromise(this.mapToBase(e), t); + } + statPromise(e) { + return this.baseFs.statPromise(this.mapToBase(e)); + } + statSync(e) { + return this.baseFs.statSync(this.mapToBase(e)); + } + lstatPromise(e) { + return this.baseFs.lstatPromise(this.mapToBase(e)); + } + lstatSync(e) { + return this.baseFs.lstatSync(this.mapToBase(e)); + } + chmodPromise(e, t) { + return this.baseFs.chmodPromise(this.mapToBase(e), t); + } + chmodSync(e, t) { + return this.baseFs.chmodSync(this.mapToBase(e), t); + } + renamePromise(e, t) { + return this.baseFs.renamePromise(this.mapToBase(e), this.mapToBase(t)); + } + renameSync(e, t) { + return this.baseFs.renameSync(this.mapToBase(e), this.mapToBase(t)); + } + copyFilePromise(e, t, r = 0) { + return this.baseFs.copyFilePromise(this.mapToBase(e), this.mapToBase(t), r); + } + copyFileSync(e, t, r = 0) { + return this.baseFs.copyFileSync(this.mapToBase(e), this.mapToBase(t), r); + } + appendFilePromise(e, t, r) { + return this.baseFs.appendFilePromise(this.fsMapToBase(e), t, r); + } + appendFileSync(e, t, r) { + return this.baseFs.appendFileSync(this.fsMapToBase(e), t, r); + } + writeFilePromise(e, t, r) { + return this.baseFs.writeFilePromise(this.fsMapToBase(e), t, r); + } + writeFileSync(e, t, r) { + return this.baseFs.writeFileSync(this.fsMapToBase(e), t, r); + } + unlinkPromise(e) { + return this.baseFs.unlinkPromise(this.mapToBase(e)); + } + unlinkSync(e) { + return this.baseFs.unlinkSync(this.mapToBase(e)); + } + utimesPromise(e, t, r) { + return this.baseFs.utimesPromise(this.mapToBase(e), t, r); + } + utimesSync(e, t, r) { + return this.baseFs.utimesSync(this.mapToBase(e), t, r); + } + mkdirPromise(e, t) { + return this.baseFs.mkdirPromise(this.mapToBase(e), t); + } + mkdirSync(e, t) { + return this.baseFs.mkdirSync(this.mapToBase(e), t); + } + rmdirPromise(e) { + return this.baseFs.rmdirPromise(this.mapToBase(e)); + } + rmdirSync(e) { + return this.baseFs.rmdirSync(this.mapToBase(e)); + } + symlinkPromise(e, t, r) { + return this.baseFs.symlinkPromise(this.mapToBase(e), this.mapToBase(t), r); + } + symlinkSync(e, t, r) { + return this.baseFs.symlinkSync(this.mapToBase(e), this.mapToBase(t), r); + } + readFilePromise(e, t) { + return this.baseFs.readFilePromise(this.fsMapToBase(e), t); + } + readFileSync(e, t) { + return this.baseFs.readFileSync(this.fsMapToBase(e), t); + } + async readdirPromise(e, { withFileTypes: t } = {}) { + return this.baseFs.readdirPromise(this.mapToBase(e), { withFileTypes: t }); + } + readdirSync(e, { withFileTypes: t } = {}) { + return this.baseFs.readdirSync(this.mapToBase(e), { withFileTypes: t }); + } + async readlinkPromise(e) { + return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(e))); + } + readlinkSync(e) { + return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(e))); + } + watch(e, t, r) { + return this.baseFs.watch(this.mapToBase(e), t, r); + } + fsMapToBase(e) { + return 'number' == typeof e ? e : this.mapToBase(e); + } + } + }, + 17674: (e, t, r) => { + 'use strict'; + r.d(t, { p: () => c }); + var n = r(78420), + i = r(42096), + o = r(46009); + const s = /^[0-9]+$/, + A = /^(\/(?:[^/]+\/)*?\$\$virtual)((?:\/((?:[^/]+-)?[a-f0-9]+)(?:\/([^/]+))?)?((?:\/.*)?))$/, + a = /^([^/]+-)?[a-f0-9]+$/; + class c extends i.p { + constructor({ baseFs: e = new n.S() } = {}) { + super(o.y1), (this.baseFs = e); + } + static makeVirtualPath(e, t, r) { + if ('$$virtual' !== o.y1.basename(e)) + throw new Error('Assertion failed: Virtual folders must be named "$$virtual"'); + if (!o.y1.basename(t).match(a)) + throw new Error( + 'Assertion failed: Virtual components must be ended by an hexadecimal hash' + ); + const n = o.y1.relative(o.y1.dirname(e), r).split('/'); + let i = 0; + for (; i < n.length && '..' === n[i]; ) i += 1; + const s = n.slice(i); + return o.y1.join(e, t, String(i), ...s); + } + static resolveVirtual(e) { + const t = e.match(A); + if (!t || (!t[3] && t[5])) return e; + const r = o.y1.dirname(t[1]); + if (!t[3] || !t[4]) return r; + if (!s.test(t[4])) return e; + const n = Number(t[4]), + i = '../'.repeat(n), + a = t[5] || '.'; + return c.resolveVirtual(o.y1.join(r, i, a)); + } + getExtractHint(e) { + return this.baseFs.getExtractHint(e); + } + getRealPath() { + return this.baseFs.getRealPath(); + } + realpathSync(e) { + const t = e.match(A); + if (!t) return this.baseFs.realpathSync(e); + if (!t[5]) return e; + const r = this.baseFs.realpathSync(this.mapToBase(e)); + return c.makeVirtualPath(t[1], t[3], r); + } + async realpathPromise(e) { + const t = e.match(A); + if (!t) return await this.baseFs.realpathPromise(e); + if (!t[5]) return e; + const r = await this.baseFs.realpathPromise(this.mapToBase(e)); + return c.makeVirtualPath(t[1], t[3], r); + } + mapToBase(e) { + return c.resolveVirtual(e); + } + mapFromBase(e) { + return e; + } + } + }, + 90739: (e, t, r) => { + 'use strict'; + r.d(t, { k: () => u, d: () => g }); + var n = r(35747), + i = r(92413), + o = r(31669), + s = r(35398), + A = r(78420), + a = r(26984), + c = r(46009); + const u = 'mixed'; + class l { + constructor() { + (this.dev = 0), + (this.ino = 0), + (this.mode = 0), + (this.nlink = 1), + (this.rdev = 0), + (this.blocks = 1); + } + isBlockDevice() { + return !1; + } + isCharacterDevice() { + return !1; + } + isDirectory() { + return 16384 == (61440 & this.mode); + } + isFIFO() { + return !1; + } + isFile() { + return 32768 == (61440 & this.mode); + } + isSocket() { + return !1; + } + isSymbolicLink() { + return 40960 == (61440 & this.mode); + } + } + function h() { + return Object.assign(new l(), { + uid: 0, + gid: 0, + size: 0, + blksize: 0, + atimeMs: 0, + mtimeMs: 0, + ctimeMs: 0, + birthtimeMs: 0, + atime: new Date(0), + mtime: new Date(0), + ctime: new Date(0), + birthtime: new Date(0), + mode: 33188, + }); + } + class g extends s.fS { + constructor(e, t) { + super(), + (this.lzSource = null), + (this.listings = new Map()), + (this.entries = new Map()), + (this.fds = new Map()), + (this.nextFd = 0), + (this.ready = !1), + (this.readOnly = !1), + (this.libzip = t.libzip); + const r = t; + if ( + ((this.level = void 0 !== r.level ? r.level : u), + null === e && + (e = Buffer.from([ + 80, + 75, + 5, + 6, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ])), + 'string' == typeof e) + ) { + const { baseFs: t = new A.S() } = r; + (this.baseFs = t), (this.path = e); + } else (this.path = null), (this.baseFs = null); + if (t.stats) this.stats = t.stats; + else if ('string' == typeof e) + try { + this.stats = this.baseFs.statSync(e); + } catch (e) { + if ('ENOENT' !== e.code || !r.create) throw e; + this.stats = h(); + } + else this.stats = h(); + const n = this.libzip.malloc(4); + try { + let i = 0; + if ( + ('string' == typeof e && + r.create && + (i |= this.libzip.ZIP_CREATE | this.libzip.ZIP_TRUNCATE), + t.readOnly && ((i |= this.libzip.ZIP_RDONLY), (this.readOnly = !0)), + 'string' == typeof e) + ) + this.zip = this.libzip.open(c.cS.fromPortablePath(e), i, n); + else { + const t = this.allocateUnattachedSource(e); + try { + (this.zip = this.libzip.openFromSource(t, i, n)), (this.lzSource = t); + } catch (e) { + throw (this.libzip.source.free(t), e); + } + } + if (0 === this.zip) { + const e = this.libzip.struct.errorS(); + throw ( + (this.libzip.error.initWithCode(e, this.libzip.getValue(n, 'i32')), + new Error(this.libzip.error.strerror(e))) + ); + } + } finally { + this.libzip.free(n); + } + this.listings.set(c.LZ.root, new Set()); + const i = this.libzip.getNumEntries(this.zip, 0); + for (let e = 0; e < i; ++e) { + const t = this.libzip.getName(this.zip, e, 0); + if (c.y1.isAbsolute(t)) continue; + const r = c.y1.resolve(c.LZ.root, t); + this.registerEntry(r, e), t.endsWith('/') && this.registerListing(r); + } + (this.symlinkCount = this.libzip.ext.countSymlinks(this.zip)), (this.ready = !0); + } + getExtractHint(e) { + for (const t of this.entries.keys()) { + const r = this.pathUtils.extname(t); + if (e.relevantExtensions.has(r)) return !0; + } + return !1; + } + getAllFiles() { + return Array.from(this.entries.keys()); + } + getRealPath() { + if (!this.path) + throw new Error("ZipFS don't have real paths when loaded from a buffer"); + return this.path; + } + getBufferAndClose() { + if (!this.ready) throw a.Vw('archive closed, close'); + if (!this.lzSource) throw new Error('ZipFS was not created from a Buffer'); + try { + if ((this.libzip.source.keep(this.lzSource), -1 === this.libzip.close(this.zip))) + throw new Error(this.libzip.error.strerror(this.libzip.getError(this.zip))); + if (-1 === this.libzip.source.open(this.lzSource)) + throw new Error( + this.libzip.error.strerror(this.libzip.source.error(this.lzSource)) + ); + if (-1 === this.libzip.source.seek(this.lzSource, 0, 0, this.libzip.SEEK_END)) + throw new Error( + this.libzip.error.strerror(this.libzip.source.error(this.lzSource)) + ); + const e = this.libzip.source.tell(this.lzSource); + if (-1 === this.libzip.source.seek(this.lzSource, 0, 0, this.libzip.SEEK_SET)) + throw new Error( + this.libzip.error.strerror(this.libzip.source.error(this.lzSource)) + ); + const t = this.libzip.malloc(e); + if (!t) throw new Error("Couldn't allocate enough memory"); + try { + const r = this.libzip.source.read(this.lzSource, t, e); + if (-1 === r) + throw new Error( + this.libzip.error.strerror(this.libzip.source.error(this.lzSource)) + ); + if (r < e) throw new Error('Incomplete read'); + if (r > e) throw new Error('Overread'); + const n = this.libzip.HEAPU8.subarray(t, t + e); + return Buffer.from(n); + } finally { + this.libzip.free(t); + } + } finally { + this.libzip.source.close(this.lzSource), + this.libzip.source.free(this.lzSource), + (this.ready = !1); + } + } + saveAndClose() { + if (!this.path || !this.baseFs) + throw new Error( + 'ZipFS cannot be saved and must be discarded when loaded from a buffer' + ); + if (!this.ready) throw a.Vw('archive closed, close'); + if (this.readOnly) return void this.discardAndClose(); + const e = this.baseFs.existsSync(this.path) + ? 511 & this.baseFs.statSync(this.path).mode + : null; + if (-1 === this.libzip.close(this.zip)) + throw new Error(this.libzip.error.strerror(this.libzip.getError(this.zip))); + null === e + ? this.baseFs.chmodSync(this.path, this.stats.mode) + : e !== (511 & this.baseFs.statSync(this.path).mode) && + this.baseFs.chmodSync(this.path, e), + (this.ready = !1); + } + discardAndClose() { + if (!this.ready) throw a.Vw('archive closed, close'); + this.libzip.discard(this.zip), (this.ready = !1); + } + resolve(e) { + return c.y1.resolve(c.LZ.root, e); + } + async openPromise(e, t, r) { + return this.openSync(e, t, r); + } + openSync(e, t, r) { + const n = this.nextFd++; + return this.fds.set(n, { cursor: 0, p: e }), n; + } + async readPromise(e, t, r, n, i) { + return this.readSync(e, t, r, n, i); + } + readSync(e, t, r = 0, n = 0, i = -1) { + const o = this.fds.get(e); + if (void 0 === o) throw a.Ch('read'); + let s; + s = -1 === i || null === i ? o.cursor : i; + const A = this.readFileSync(o.p); + A.copy(t, r, s, s + n); + const c = Math.max(0, Math.min(A.length - s, n)); + return (-1 !== i && null !== i) || (o.cursor += c), c; + } + async writePromise(e, t, r, n, i) { + return 'string' == typeof t ? this.writeSync(e, t, i) : this.writeSync(e, t, r, n, i); + } + writeSync(e, t, r, n, i) { + if (void 0 === this.fds.get(e)) throw a.Ch('read'); + throw new Error('Unimplemented'); + } + async closePromise(e) { + return this.closeSync(e); + } + closeSync(e) { + if (void 0 === this.fds.get(e)) throw a.Ch('read'); + this.fds.delete(e); + } + createReadStream(e, { encoding: t } = {}) { + if (null === e) throw new Error('Unimplemented'); + const r = Object.assign(new i.PassThrough(), { + bytesRead: 0, + path: e, + close: () => { + clearImmediate(n); + }, + }), + n = setImmediate(() => { + try { + const n = this.readFileSync(e, t); + (r.bytesRead = n.length), r.write(n), r.end(); + } catch (e) { + r.emit('error', e), r.end(); + } + }); + return r; + } + createWriteStream(e, { encoding: t } = {}) { + if (this.readOnly) throw a.YW(`open '${e}'`); + if (null === e) throw new Error('Unimplemented'); + const r = Object.assign(new i.PassThrough(), { + bytesWritten: 0, + path: e, + close: () => { + r.end(); + }, + }), + n = []; + return ( + r.on('data', (e) => { + const t = Buffer.from(e); + (r.bytesWritten += t.length), n.push(t); + }), + r.on('end', () => { + this.writeFileSync(e, Buffer.concat(n), t); + }), + r + ); + } + async realpathPromise(e) { + return this.realpathSync(e); + } + realpathSync(e) { + const t = this.resolveFilename(`lstat '${e}'`, e); + if (!this.entries.has(t) && !this.listings.has(t)) throw a.z6(`lstat '${e}'`); + return t; + } + async existsPromise(e) { + return this.existsSync(e); + } + existsSync(e) { + if (!this.ready) throw a.Vw(`archive closed, existsSync '${e}'`); + if (0 === this.symlinkCount) { + const t = c.y1.resolve(c.LZ.root, e); + return this.entries.has(t) || this.listings.has(t); + } + let t; + try { + t = this.resolveFilename(`stat '${e}'`, e); + } catch (e) { + return !1; + } + return this.entries.has(t) || this.listings.has(t); + } + async accessPromise(e, t) { + return this.accessSync(e, t); + } + accessSync(e, t = n.constants.F_OK) { + const r = this.resolveFilename(`access '${e}'`, e); + if (!this.entries.has(r) && !this.listings.has(r)) throw a.z6(`access '${e}'`); + if (this.readOnly && t & n.constants.W_OK) throw a.YW(`access '${e}'`); + } + async statPromise(e) { + return this.statSync(e); + } + statSync(e) { + const t = this.resolveFilename(`stat '${e}'`, e); + if (!this.entries.has(t) && !this.listings.has(t)) throw a.z6(`stat '${e}'`); + if ('/' === e[e.length - 1] && !this.listings.has(t)) throw a.Ab(`stat '${e}'`); + return this.statImpl(`stat '${e}'`, t); + } + async lstatPromise(e) { + return this.lstatSync(e); + } + lstatSync(e) { + const t = this.resolveFilename(`lstat '${e}'`, e, !1); + if (!this.entries.has(t) && !this.listings.has(t)) throw a.z6(`lstat '${e}'`); + if ('/' === e[e.length - 1] && !this.listings.has(t)) throw a.Ab(`lstat '${e}'`); + return this.statImpl(`lstat '${e}'`, t); + } + statImpl(e, t) { + const r = this.entries.get(t); + if (void 0 !== r) { + const e = this.libzip.struct.statS(); + if (-1 === this.libzip.statIndex(this.zip, r, 0, 0, e)) + throw new Error(this.libzip.error.strerror(this.libzip.getError(this.zip))); + const n = this.stats.uid, + i = this.stats.gid, + o = this.libzip.struct.statSize(e) >>> 0, + s = 512, + A = Math.ceil(o / s), + a = 1e3 * (this.libzip.struct.statMtime(e) >>> 0), + c = a, + u = a, + h = a, + g = new Date(c), + f = new Date(u), + p = new Date(h), + d = new Date(a), + C = this.listings.has(t) ? 16384 : this.isSymbolicLink(r) ? 40960 : 32768, + E = 16384 === C ? 493 : 420, + I = C | (511 & this.getUnixMode(r, E)); + return Object.assign(new l(), { + uid: n, + gid: i, + size: o, + blksize: s, + blocks: A, + atime: g, + birthtime: f, + ctime: p, + mtime: d, + atimeMs: c, + birthtimeMs: u, + ctimeMs: h, + mtimeMs: a, + mode: I, + }); + } + if (this.listings.has(t)) { + const e = this.stats.uid, + t = this.stats.gid, + r = 0, + n = 512, + i = 0, + o = this.stats.mtimeMs, + s = this.stats.mtimeMs, + A = this.stats.mtimeMs, + a = this.stats.mtimeMs, + c = new Date(o), + u = new Date(s), + h = new Date(A), + g = new Date(a), + f = 16877; + return Object.assign(new l(), { + uid: e, + gid: t, + size: r, + blksize: n, + blocks: i, + atime: c, + birthtime: u, + ctime: h, + mtime: g, + atimeMs: o, + birthtimeMs: s, + ctimeMs: A, + mtimeMs: a, + mode: f, + }); + } + throw new Error('Unreachable'); + } + getUnixMode(e, t) { + if ( + -1 === + this.libzip.file.getExternalAttributes( + this.zip, + e, + 0, + 0, + this.libzip.uint08S, + this.libzip.uint32S + ) + ) + throw new Error(this.libzip.error.strerror(this.libzip.getError(this.zip))); + return this.libzip.getValue(this.libzip.uint08S, 'i8') >>> 0 !== + this.libzip.ZIP_OPSYS_UNIX + ? t + : this.libzip.getValue(this.libzip.uint32S, 'i32') >>> 16; + } + registerListing(e) { + let t = this.listings.get(e); + if (t) return t; + const r = this.registerListing(c.y1.dirname(e)); + return (t = new Set()), r.add(c.y1.basename(e)), this.listings.set(e, t), t; + } + registerEntry(e, t) { + this.registerListing(c.y1.dirname(e)).add(c.y1.basename(e)), this.entries.set(e, t); + } + resolveFilename(e, t, r = !0) { + if (!this.ready) throw a.Vw('archive closed, ' + e); + let n = c.y1.resolve(c.LZ.root, t); + if ('/' === n) return c.LZ.root; + const i = this.entries.get(n); + if (r && void 0 !== i) { + if (0 !== this.symlinkCount && this.isSymbolicLink(i)) { + const t = this.getFileSource(i).toString(); + return this.resolveFilename(e, c.y1.resolve(c.y1.dirname(n), t), !0); + } + return n; + } + for (;;) { + const t = this.resolveFilename(e, c.y1.dirname(n), !0), + i = this.listings.has(t), + o = this.entries.has(t); + if (!i && !o) throw a.z6(e); + if (!i) throw a.Ab(e); + if (((n = c.y1.resolve(t, c.y1.basename(n))), !r || 0 === this.symlinkCount)) break; + const s = this.libzip.name.locate(this.zip, n.slice(1)); + if (-1 === s) break; + if (!this.isSymbolicLink(s)) break; + { + const e = this.getFileSource(s).toString(); + n = c.y1.resolve(c.y1.dirname(n), e); + } + } + return n; + } + allocateBuffer(e) { + Buffer.isBuffer(e) || (e = Buffer.from(e)); + const t = this.libzip.malloc(e.byteLength); + if (!t) throw new Error("Couldn't allocate enough memory"); + return ( + new Uint8Array(this.libzip.HEAPU8.buffer, t, e.byteLength).set(e), + { buffer: t, byteLength: e.byteLength } + ); + } + allocateUnattachedSource(e) { + const t = this.libzip.struct.errorS(), + { buffer: r, byteLength: n } = this.allocateBuffer(e), + i = this.libzip.source.fromUnattachedBuffer(r, n, 0, !0, t); + if (0 === i) throw (this.libzip.free(t), new Error(this.libzip.error.strerror(t))); + return i; + } + allocateSource(e) { + const { buffer: t, byteLength: r } = this.allocateBuffer(e), + n = this.libzip.source.fromBuffer(this.zip, t, r, 0, !0); + if (0 === n) + throw ( + (this.libzip.free(t), + new Error(this.libzip.error.strerror(this.libzip.getError(this.zip)))) + ); + return n; + } + setFileSource(e, t) { + const r = c.y1.relative(c.LZ.root, e), + n = this.allocateSource(t); + try { + const e = this.libzip.file.add(this.zip, r, n, this.libzip.ZIP_FL_OVERWRITE); + if ('mixed' !== this.level) { + let t; + t = 0 === this.level ? this.libzip.ZIP_CM_STORE : this.libzip.ZIP_CM_DEFLATE; + if (-1 === this.libzip.file.setCompression(this.zip, e, 0, t, this.level)) + throw new Error(this.libzip.error.strerror(this.libzip.getError(this.zip))); + } + return e; + } catch (e) { + throw (this.libzip.source.free(n), e); + } + } + isSymbolicLink(e) { + if (0 === this.symlinkCount) return !1; + if ( + -1 === + this.libzip.file.getExternalAttributes( + this.zip, + e, + 0, + 0, + this.libzip.uint08S, + this.libzip.uint32S + ) + ) + throw new Error(this.libzip.error.strerror(this.libzip.getError(this.zip))); + if ( + this.libzip.getValue(this.libzip.uint08S, 'i8') >>> 0 !== + this.libzip.ZIP_OPSYS_UNIX + ) + return !1; + return 40960 == (61440 & (this.libzip.getValue(this.libzip.uint32S, 'i32') >>> 16)); + } + getFileSource(e) { + const t = this.libzip.struct.statS(); + if (-1 === this.libzip.statIndex(this.zip, e, 0, 0, t)) + throw new Error(this.libzip.error.strerror(this.libzip.getError(this.zip))); + const r = this.libzip.struct.statSize(t), + n = this.libzip.malloc(r); + try { + const t = this.libzip.fopenIndex(this.zip, e, 0, 0); + if (0 === t) + throw new Error(this.libzip.error.strerror(this.libzip.getError(this.zip))); + try { + const e = this.libzip.fread(t, n, r, 0); + if (-1 === e) + throw new Error(this.libzip.error.strerror(this.libzip.file.getError(t))); + if (e < r) throw new Error('Incomplete read'); + if (e > r) throw new Error('Overread'); + const i = this.libzip.HEAPU8.subarray(n, n + r); + return Buffer.from(i); + } finally { + this.libzip.fclose(t); + } + } finally { + this.libzip.free(n); + } + } + async chmodPromise(e, t) { + return this.chmodSync(e, t); + } + chmodSync(e, t) { + if (this.readOnly) throw a.YW(`chmod '${e}'`); + t &= 493; + const r = this.resolveFilename(`chmod '${e}'`, e, !1), + n = this.entries.get(r); + if (void 0 === n) + throw new Error(`Assertion failed: The entry should have been registered (${r})`); + const i = (-512 & this.getUnixMode(n, 32768)) | t; + if ( + -1 === + this.libzip.file.setExternalAttributes( + this.zip, + n, + 0, + 0, + this.libzip.ZIP_OPSYS_UNIX, + i << 16 + ) + ) + throw new Error(this.libzip.error.strerror(this.libzip.getError(this.zip))); + } + async renamePromise(e, t) { + return this.renameSync(e, t); + } + renameSync(e, t) { + throw new Error('Unimplemented'); + } + async copyFilePromise(e, t, r) { + return this.copyFileSync(e, t, r); + } + copyFileSync(e, t, r = 0) { + if (this.readOnly) throw a.YW(`copyfile '${e} -> '${t}'`); + if (0 != (r & n.constants.COPYFILE_FICLONE_FORCE)) + throw a.bk('unsupported clone operation', `copyfile '${e}' -> ${t}'`); + const i = this.resolveFilename(`copyfile '${e} -> ${t}'`, e), + o = this.entries.get(i); + if (void 0 === o) throw a.hq(`copyfile '${e}' -> '${t}'`); + const s = this.resolveFilename(`copyfile '${e}' -> ${t}'`, t), + A = this.entries.get(s); + if ( + 0 != (r & (n.constants.COPYFILE_EXCL | n.constants.COPYFILE_FICLONE_FORCE)) && + void 0 !== A + ) + throw a.cT(`copyfile '${e}' -> '${t}'`); + const c = this.getFileSource(o), + u = this.setFileSource(s, c); + u !== A && this.registerEntry(s, u); + } + async appendFilePromise(e, t, r) { + return this.appendFileSync(e, t, r); + } + appendFileSync(e, t, r = {}) { + if (this.readOnly) throw a.YW(`open '${e}'`); + return ( + void 0 === r + ? (r = { flag: 'a' }) + : 'string' == typeof r + ? (r = { flag: 'a', encoding: r }) + : void 0 === r.flag && (r = { flag: 'a', ...r }), + this.writeFileSync(e, t, r) + ); + } + async writeFilePromise(e, t, r) { + return this.writeFileSync(e, t, r); + } + writeFileSync(e, t, r) { + if ('string' != typeof e) throw a.Ch('read'); + if (this.readOnly) throw a.YW(`open '${e}'`); + const n = this.resolveFilename(`open '${e}'`, e); + if (this.listings.has(n)) throw a.GA(`open '${e}'`); + const i = this.entries.get(n); + void 0 !== i && + 'object' == typeof r && + r.flag && + r.flag.includes('a') && + (t = Buffer.concat([this.getFileSource(i), Buffer.from(t)])); + let o = null; + 'string' == typeof r ? (o = r) : 'object' == typeof r && r.encoding && (o = r.encoding), + null !== o && (t = t.toString(o)); + const s = this.setFileSource(n, t); + s !== i && this.registerEntry(n, s); + } + async unlinkPromise(e) { + return this.unlinkSync(e); + } + unlinkSync(e) { + throw new Error('Unimplemented'); + } + async utimesPromise(e, t, r) { + return this.utimesSync(e, t, r); + } + utimesSync(e, t, r) { + if (this.readOnly) throw a.YW(`utimes '${e}'`); + const n = this.resolveFilename(`utimes '${e}'`, e); + this.utimesImpl(n, r); + } + async lutimesPromise(e, t, r) { + return this.lutimesSync(e, t, r); + } + lutimesSync(e, t, r) { + if (this.readOnly) throw a.YW(`lutimes '${e}'`); + const n = this.resolveFilename(`utimes '${e}'`, e, !1); + this.utimesImpl(n, r); + } + utimesImpl(e, t) { + this.listings.has(e) && (this.entries.has(e) || this.hydrateDirectory(e)); + const r = this.entries.get(e); + if (void 0 === r) throw new Error('Unreachable'); + if ( + -1 === + this.libzip.file.setMtime( + this.zip, + r, + 0, + (function (e) { + if ('string' == typeof e && String(+e) === e) return +e; + if (Number.isFinite(e)) return e < 0 ? Date.now() / 1e3 : e; + if ((0, o.isDate)(e)) return e.getTime() / 1e3; + throw new Error('Invalid time'); + })(t), + 0 + ) + ) + throw new Error(this.libzip.error.strerror(this.libzip.getError(this.zip))); + } + async mkdirPromise(e, t) { + return this.mkdirSync(e, t); + } + mkdirSync(e, { mode: t = 493, recursive: r = !1 } = {}) { + if (r) return void this.mkdirpSync(e, { chmod: t }); + if (this.readOnly) throw a.YW(`mkdir '${e}'`); + const n = this.resolveFilename(`mkdir '${e}'`, e); + if (this.entries.has(n) || this.listings.has(n)) throw a.cT(`mkdir '${e}'`); + this.hydrateDirectory(n), this.chmodSync(n, t); + } + async rmdirPromise(e) { + return this.rmdirSync(e); + } + rmdirSync(e) { + throw new Error('Unimplemented'); + } + hydrateDirectory(e) { + const t = this.libzip.dir.add(this.zip, c.y1.relative(c.LZ.root, e)); + if (-1 === t) + throw new Error(this.libzip.error.strerror(this.libzip.getError(this.zip))); + return this.registerListing(e), this.registerEntry(e, t), t; + } + async symlinkPromise(e, t) { + return this.symlinkSync(e, t); + } + symlinkSync(e, t) { + if (this.readOnly) throw a.YW(`symlink '${e}' -> '${t}'`); + const r = this.resolveFilename(`symlink '${e}' -> '${t}'`, t); + if (this.listings.has(r)) throw a.GA(`symlink '${e}' -> '${t}'`); + if (this.entries.has(r)) throw a.cT(`symlink '${e}' -> '${t}'`); + const n = this.setFileSource(r, e); + this.registerEntry(r, n); + if ( + -1 === + this.libzip.file.setExternalAttributes( + this.zip, + n, + 0, + 0, + this.libzip.ZIP_OPSYS_UNIX, + 41471 << 16 + ) + ) + throw new Error(this.libzip.error.strerror(this.libzip.getError(this.zip))); + this.symlinkCount += 1; + } + async readFilePromise(e, t) { + switch (t) { + case 'utf8': + default: + return this.readFileSync(e, t); + } + } + readFileSync(e, t) { + if ('string' != typeof e) throw a.Ch('read'); + 'object' == typeof t && (t = t ? t.encoding : void 0); + const r = this.resolveFilename(`open '${e}'`, e); + if (!this.entries.has(r) && !this.listings.has(r)) throw a.z6(`open '${e}'`); + if ('/' === e[e.length - 1] && !this.listings.has(r)) throw a.Ab(`open '${e}'`); + if (this.listings.has(r)) throw a.GA('read'); + const n = this.entries.get(r); + if (void 0 === n) throw new Error('Unreachable'); + const i = this.getFileSource(n); + return t ? i.toString(t) : i; + } + async readdirPromise(e, { withFileTypes: t } = {}) { + return this.readdirSync(e, { withFileTypes: t }); + } + readdirSync(e, { withFileTypes: t } = {}) { + const r = this.resolveFilename(`scandir '${e}'`, e); + if (!this.entries.has(r) && !this.listings.has(r)) throw a.z6(`scandir '${e}'`); + const n = this.listings.get(r); + if (!n) throw a.Ab(`scandir '${e}'`); + const i = [...n]; + return t + ? i.map((t) => Object.assign(this.statImpl('lstat', c.y1.join(e, t)), { name: t })) + : i; + } + async readlinkPromise(e) { + return this.readlinkSync(e); + } + readlinkSync(e) { + const t = this.resolveFilename(`readlink '${e}'`, e, !1); + if (!this.entries.has(t) && !this.listings.has(t)) throw a.z6(`readlink '${e}'`); + if ('/' === e[e.length - 1] && !this.listings.has(t)) throw a.Ab(`open '${e}'`); + if (this.listings.has(t)) throw a.hq(`readlink '${e}'`); + const r = this.entries.get(t); + if (void 0 === r) throw new Error('Unreachable'); + if ( + -1 === + this.libzip.file.getExternalAttributes( + this.zip, + r, + 0, + 0, + this.libzip.uint08S, + this.libzip.uint32S + ) + ) + throw new Error(this.libzip.error.strerror(this.libzip.getError(this.zip))); + if ( + this.libzip.getValue(this.libzip.uint08S, 'i8') >>> 0 !== + this.libzip.ZIP_OPSYS_UNIX + ) + throw a.hq(`readlink '${e}'`); + if (40960 != (61440 & (this.libzip.getValue(this.libzip.uint32S, 'i32') >>> 16))) + throw a.hq(`readlink '${e}'`); + return this.getFileSource(r).toString(); + } + watch(e, t, r) { + let n; + switch (typeof t) { + case 'function': + case 'string': + case 'undefined': + n = !0; + break; + default: + ({ persistent: n = !0 } = t); + } + if (!n) return { on: () => {}, close: () => {} }; + const i = setInterval(() => {}, 864e5); + return { + on: () => {}, + close: () => { + clearInterval(i); + }, + }; + } + } + }, + 53660: (e, t, r) => { + 'use strict'; + r.d(t, { A: () => u }); + var n = r(35747), + i = r(35398), + o = r(78420), + s = r(90739), + A = r(46009); + const a = 2147483648, + c = /.*?(? await this.baseFs.openPromise(e, t, r), + async (e, { subPath: n }) => this.remapFd(e, await e.openPromise(n, t, r)) + ); + } + openSync(e, t, r) { + return this.makeCallSync( + e, + () => this.baseFs.openSync(e, t, r), + (e, { subPath: n }) => this.remapFd(e, e.openSync(n, t, r)) + ); + } + async readPromise(e, t, r, n, i) { + if (0 == (e & a)) return await this.baseFs.readPromise(e, t, r, n, i); + const o = this.fdMap.get(e); + if (void 0 === o) + throw Object.assign(new Error('EBADF: bad file descriptor, read'), { code: 'EBADF' }); + const [s, A] = o; + return await s.readPromise(A, t, r, n, i); + } + readSync(e, t, r, n, i) { + if (0 == (e & a)) return this.baseFs.readSync(e, t, r, n, i); + const o = this.fdMap.get(e); + if (void 0 === o) + throw Object.assign(new Error('EBADF: bad file descriptor, read'), { code: 'EBADF' }); + const [s, A] = o; + return s.readSync(A, t, r, n, i); + } + async writePromise(e, t, r, n, i) { + if (0 == (e & a)) + return 'string' == typeof t + ? await this.baseFs.writePromise(e, t, r) + : await this.baseFs.writePromise(e, t, r, n, i); + const o = this.fdMap.get(e); + if (void 0 === o) + throw Object.assign(new Error('EBADF: bad file descriptor, write'), { + code: 'EBADF', + }); + const [s, A] = o; + return 'string' == typeof t + ? await s.writePromise(A, t, r) + : await s.writePromise(A, t, r, n, i); + } + writeSync(e, t, r, n, i) { + if (0 == (e & a)) + return 'string' == typeof t + ? this.baseFs.writeSync(e, t, r) + : this.baseFs.writeSync(e, t, r, n, i); + const o = this.fdMap.get(e); + if (void 0 === o) + throw Object.assign(new Error('EBADF: bad file descriptor, write'), { + code: 'EBADF', + }); + const [s, A] = o; + return 'string' == typeof t ? s.writeSync(A, t, r) : s.writeSync(A, t, r, n, i); + } + async closePromise(e) { + if (0 == (e & a)) return await this.baseFs.closePromise(e); + const t = this.fdMap.get(e); + if (void 0 === t) + throw Object.assign(new Error('EBADF: bad file descriptor, close'), { + code: 'EBADF', + }); + this.fdMap.delete(e); + const [r, n] = t; + return await r.closePromise(n); + } + closeSync(e) { + if (0 == (e & a)) return this.baseFs.closeSync(e); + const t = this.fdMap.get(e); + if (void 0 === t) + throw Object.assign(new Error('EBADF: bad file descriptor, close'), { + code: 'EBADF', + }); + this.fdMap.delete(e); + const [r, n] = t; + return r.closeSync(n); + } + createReadStream(e, t) { + return null === e + ? this.baseFs.createReadStream(e, t) + : this.makeCallSync( + e, + () => this.baseFs.createReadStream(e, t), + (e, { subPath: r }) => e.createReadStream(r, t) + ); + } + createWriteStream(e, t) { + return null === e + ? this.baseFs.createWriteStream(e, t) + : this.makeCallSync( + e, + () => this.baseFs.createWriteStream(e, t), + (e, { subPath: r }) => e.createWriteStream(r, t) + ); + } + async realpathPromise(e) { + return await this.makeCallPromise( + e, + async () => await this.baseFs.realpathPromise(e), + async (e, { archivePath: t, subPath: r }) => + this.pathUtils.resolve( + await this.baseFs.realpathPromise(t), + this.pathUtils.relative(A.LZ.root, await e.realpathPromise(r)) + ) + ); + } + realpathSync(e) { + return this.makeCallSync( + e, + () => this.baseFs.realpathSync(e), + (e, { archivePath: t, subPath: r }) => + this.pathUtils.resolve( + this.baseFs.realpathSync(t), + this.pathUtils.relative(A.LZ.root, e.realpathSync(r)) + ) + ); + } + async existsPromise(e) { + return await this.makeCallPromise( + e, + async () => await this.baseFs.existsPromise(e), + async (e, { subPath: t }) => await e.existsPromise(t) + ); + } + existsSync(e) { + return this.makeCallSync( + e, + () => this.baseFs.existsSync(e), + (e, { subPath: t }) => e.existsSync(t) + ); + } + async accessPromise(e, t) { + return await this.makeCallPromise( + e, + async () => await this.baseFs.accessPromise(e, t), + async (e, { subPath: r }) => await e.accessPromise(r, t) + ); + } + accessSync(e, t) { + return this.makeCallSync( + e, + () => this.baseFs.accessSync(e, t), + (e, { subPath: r }) => e.accessSync(r, t) + ); + } + async statPromise(e) { + return await this.makeCallPromise( + e, + async () => await this.baseFs.statPromise(e), + async (e, { subPath: t }) => await e.statPromise(t) + ); + } + statSync(e) { + return this.makeCallSync( + e, + () => this.baseFs.statSync(e), + (e, { subPath: t }) => e.statSync(t) + ); + } + async lstatPromise(e) { + return await this.makeCallPromise( + e, + async () => await this.baseFs.lstatPromise(e), + async (e, { subPath: t }) => await e.lstatPromise(t) + ); + } + lstatSync(e) { + return this.makeCallSync( + e, + () => this.baseFs.lstatSync(e), + (e, { subPath: t }) => e.lstatSync(t) + ); + } + async chmodPromise(e, t) { + return await this.makeCallPromise( + e, + async () => await this.baseFs.chmodPromise(e, t), + async (e, { subPath: r }) => await e.chmodPromise(r, t) + ); + } + chmodSync(e, t) { + return this.makeCallSync( + e, + () => this.baseFs.chmodSync(e, t), + (e, { subPath: r }) => e.chmodSync(r, t) + ); + } + async renamePromise(e, t) { + return await this.makeCallPromise( + e, + async () => + await this.makeCallPromise( + t, + async () => await this.baseFs.renamePromise(e, t), + async () => { + throw Object.assign(new Error('EEXDEV: cross-device link not permitted'), { + code: 'EEXDEV', + }); + } + ), + async (e, { subPath: r }) => + await this.makeCallPromise( + t, + async () => { + throw Object.assign(new Error('EEXDEV: cross-device link not permitted'), { + code: 'EEXDEV', + }); + }, + async (t, { subPath: n }) => { + if (e !== t) + throw Object.assign(new Error('EEXDEV: cross-device link not permitted'), { + code: 'EEXDEV', + }); + return await e.renamePromise(r, n); + } + ) + ); + } + renameSync(e, t) { + return this.makeCallSync( + e, + () => + this.makeCallSync( + t, + () => this.baseFs.renameSync(e, t), + async () => { + throw Object.assign(new Error('EEXDEV: cross-device link not permitted'), { + code: 'EEXDEV', + }); + } + ), + (e, { subPath: r }) => + this.makeCallSync( + t, + () => { + throw Object.assign(new Error('EEXDEV: cross-device link not permitted'), { + code: 'EEXDEV', + }); + }, + (t, { subPath: n }) => { + if (e !== t) + throw Object.assign(new Error('EEXDEV: cross-device link not permitted'), { + code: 'EEXDEV', + }); + return e.renameSync(r, n); + } + ) + ); + } + async copyFilePromise(e, t, r = 0) { + const i = async (e, t, i, o) => { + if (0 != (r & n.constants.COPYFILE_FICLONE_FORCE)) + throw Object.assign( + new Error(`EXDEV: cross-device clone not permitted, copyfile '${t}' -> ${o}'`), + { code: 'EXDEV' } + ); + if (r & n.constants.COPYFILE_EXCL && (await this.existsPromise(t))) + throw Object.assign( + new Error(`EEXIST: file already exists, copyfile '${t}' -> '${o}'`), + { code: 'EEXIST' } + ); + let s; + try { + s = await e.readFilePromise(t); + } catch (e) { + throw Object.assign( + new Error(`EINVAL: invalid argument, copyfile '${t}' -> '${o}'`), + { code: 'EINVAL' } + ); + } + await i.writeFilePromise(o, s); + }; + return await this.makeCallPromise( + e, + async () => + await this.makeCallPromise( + t, + async () => await this.baseFs.copyFilePromise(e, t, r), + async (t, { subPath: r }) => await i(this.baseFs, e, t, r) + ), + async (e, { subPath: n }) => + await this.makeCallPromise( + t, + async () => await i(e, n, this.baseFs, t), + async (t, { subPath: o }) => + e !== t ? await i(e, n, t, o) : await e.copyFilePromise(n, o, r) + ) + ); + } + copyFileSync(e, t, r = 0) { + const i = (e, t, i, o) => { + if (0 != (r & n.constants.COPYFILE_FICLONE_FORCE)) + throw Object.assign( + new Error(`EXDEV: cross-device clone not permitted, copyfile '${t}' -> ${o}'`), + { code: 'EXDEV' } + ); + if (r & n.constants.COPYFILE_EXCL && this.existsSync(t)) + throw Object.assign( + new Error(`EEXIST: file already exists, copyfile '${t}' -> '${o}'`), + { code: 'EEXIST' } + ); + let s; + try { + s = e.readFileSync(t); + } catch (e) { + throw Object.assign( + new Error(`EINVAL: invalid argument, copyfile '${t}' -> '${o}'`), + { code: 'EINVAL' } + ); + } + i.writeFileSync(o, s); + }; + return this.makeCallSync( + e, + () => + this.makeCallSync( + t, + () => this.baseFs.copyFileSync(e, t, r), + (t, { subPath: r }) => i(this.baseFs, e, t, r) + ), + (e, { subPath: n }) => + this.makeCallSync( + t, + () => i(e, n, this.baseFs, t), + (t, { subPath: o }) => (e !== t ? i(e, n, t, o) : e.copyFileSync(n, o, r)) + ) + ); + } + async appendFilePromise(e, t, r) { + return await this.makeCallPromise( + e, + async () => await this.baseFs.appendFilePromise(e, t, r), + async (e, { subPath: n }) => await e.appendFilePromise(n, t, r) + ); + } + appendFileSync(e, t, r) { + return this.makeCallSync( + e, + () => this.baseFs.appendFileSync(e, t, r), + (e, { subPath: n }) => e.appendFileSync(n, t, r) + ); + } + async writeFilePromise(e, t, r) { + return await this.makeCallPromise( + e, + async () => await this.baseFs.writeFilePromise(e, t, r), + async (e, { subPath: n }) => await e.writeFilePromise(n, t, r) + ); + } + writeFileSync(e, t, r) { + return this.makeCallSync( + e, + () => this.baseFs.writeFileSync(e, t, r), + (e, { subPath: n }) => e.writeFileSync(n, t, r) + ); + } + async unlinkPromise(e) { + return await this.makeCallPromise( + e, + async () => await this.baseFs.unlinkPromise(e), + async (e, { subPath: t }) => await e.unlinkPromise(t) + ); + } + unlinkSync(e) { + return this.makeCallSync( + e, + () => this.baseFs.unlinkSync(e), + (e, { subPath: t }) => e.unlinkSync(t) + ); + } + async utimesPromise(e, t, r) { + return await this.makeCallPromise( + e, + async () => await this.baseFs.utimesPromise(e, t, r), + async (e, { subPath: n }) => await e.utimesPromise(n, t, r) + ); + } + utimesSync(e, t, r) { + return this.makeCallSync( + e, + () => this.baseFs.utimesSync(e, t, r), + (e, { subPath: n }) => e.utimesSync(n, t, r) + ); + } + async mkdirPromise(e, t) { + return await this.makeCallPromise( + e, + async () => await this.baseFs.mkdirPromise(e, t), + async (e, { subPath: r }) => await e.mkdirPromise(r, t) + ); + } + mkdirSync(e, t) { + return this.makeCallSync( + e, + () => this.baseFs.mkdirSync(e, t), + (e, { subPath: r }) => e.mkdirSync(r, t) + ); + } + async rmdirPromise(e) { + return await this.makeCallPromise( + e, + async () => await this.baseFs.rmdirPromise(e), + async (e, { subPath: t }) => await e.rmdirPromise(t) + ); + } + rmdirSync(e) { + return this.makeCallSync( + e, + () => this.baseFs.rmdirSync(e), + (e, { subPath: t }) => e.rmdirSync(t) + ); + } + async symlinkPromise(e, t, r) { + return await this.makeCallPromise( + t, + async () => await this.baseFs.symlinkPromise(e, t, r), + async (t, { subPath: r }) => await t.symlinkPromise(e, r) + ); + } + symlinkSync(e, t, r) { + return this.makeCallSync( + t, + () => this.baseFs.symlinkSync(e, t, r), + (t, { subPath: r }) => t.symlinkSync(e, r) + ); + } + async readFilePromise(e, t) { + return this.makeCallPromise( + e, + async () => { + switch (t) { + case 'utf8': + default: + return await this.baseFs.readFilePromise(e, t); + } + }, + async (e, { subPath: r }) => await e.readFilePromise(r, t) + ); + } + readFileSync(e, t) { + return this.makeCallSync( + e, + () => { + switch (t) { + case 'utf8': + default: + return this.baseFs.readFileSync(e, t); + } + }, + (e, { subPath: r }) => e.readFileSync(r, t) + ); + } + async readdirPromise(e, { withFileTypes: t } = {}) { + return await this.makeCallPromise( + e, + async () => await this.baseFs.readdirPromise(e, { withFileTypes: t }), + async (e, { subPath: r }) => await e.readdirPromise(r, { withFileTypes: t }), + { requireSubpath: !1 } + ); + } + readdirSync(e, { withFileTypes: t } = {}) { + return this.makeCallSync( + e, + () => this.baseFs.readdirSync(e, { withFileTypes: t }), + (e, { subPath: r }) => e.readdirSync(r, { withFileTypes: t }), + { requireSubpath: !1 } + ); + } + async readlinkPromise(e) { + return await this.makeCallPromise( + e, + async () => await this.baseFs.readlinkPromise(e), + async (e, { subPath: t }) => await e.readlinkPromise(t) + ); + } + readlinkSync(e) { + return this.makeCallSync( + e, + () => this.baseFs.readlinkSync(e), + (e, { subPath: t }) => e.readlinkSync(t) + ); + } + watch(e, t, r) { + return this.makeCallSync( + e, + () => this.baseFs.watch(e, t, r), + (e, { subPath: n }) => e.watch(n, t, r) + ); + } + async makeCallPromise(e, t, r, { requireSubpath: n = !0 } = {}) { + if ('string' != typeof e) return await t(); + const i = this.resolve(e), + o = this.findZip(i); + return o + ? n && '/' === o.subPath + ? await t() + : await this.getZipPromise(o.archivePath, async (e) => await r(e, o)) + : await t(); + } + makeCallSync(e, t, r, { requireSubpath: n = !0 } = {}) { + if ('string' != typeof e) return t(); + const i = this.resolve(e), + o = this.findZip(i); + return o + ? n && '/' === o.subPath + ? t() + : this.getZipSync(o.archivePath, (e) => r(e, o)) + : t(); + } + findZip(e) { + if (this.filter && !this.filter.test(e)) return null; + let t = ''; + for (;;) { + const r = c.exec(e.substr(t.length)); + if (!r) return null; + if (((t = this.pathUtils.join(t, r[0])), !1 === this.isZip.has(t))) { + if (this.notZip.has(t)) continue; + try { + if (!this.baseFs.lstatSync(t).isFile()) { + this.notZip.add(t); + continue; + } + } catch (e) { + return null; + } + this.isZip.add(t); + } + return { + archivePath: t, + subPath: this.pathUtils.resolve(A.LZ.root, e.substr(t.length)), + }; + } + } + limitOpenFiles(e) { + if (null === this.zipInstances) return; + let t = this.zipInstances.size - e; + for (const [e, r] of this.zipInstances.entries()) { + if (t <= 0) break; + r.saveAndClose(), this.zipInstances.delete(e), (t -= 1); + } + } + async getZipPromise(e, t) { + const r = async () => ({ + baseFs: this.baseFs, + libzip: this.libzip, + readOnly: this.readOnlyArchives, + stats: await this.baseFs.statPromise(e), + }); + if (this.zipInstances) { + let n = this.zipInstances.get(e); + if (!n) { + const t = await r(); + (n = this.zipInstances.get(e)), n || (n = new s.d(e, t)); + } + return ( + this.zipInstances.delete(e), + this.zipInstances.set(e, n), + this.limitOpenFiles(this.maxOpenFiles), + await t(n) + ); + } + { + const n = new s.d(e, await r()); + try { + return await t(n); + } finally { + n.saveAndClose(); + } + } + } + getZipSync(e, t) { + const r = () => ({ + baseFs: this.baseFs, + libzip: this.libzip, + readOnly: this.readOnlyArchives, + stats: this.baseFs.statSync(e), + }); + if (this.zipInstances) { + let n = this.zipInstances.get(e); + return ( + n || (n = new s.d(e, r())), + this.zipInstances.delete(e), + this.zipInstances.set(e, n), + this.limitOpenFiles(this.maxOpenFiles), + t(n) + ); + } + { + const n = new s.d(e, r()); + try { + return t(n); + } finally { + n.saveAndClose(); + } + } + } + } + }, + 26984: (e, t, r) => { + 'use strict'; + function n(e, t) { + return Object.assign(new Error(`${e}: ${t}`), { code: e }); + } + function i(e) { + return n('EBUSY', e); + } + function o(e, t) { + return n('ENOSYS', `${e}, ${t}`); + } + function s(e) { + return n('EINVAL', 'invalid argument, ' + e); + } + function A(e) { + return n('EBADF', 'bad file descriptor, ' + e); + } + function a(e) { + return n('ENOENT', 'no such file or directory, ' + e); + } + function c(e) { + return n('ENOTDIR', 'not a directory, ' + e); + } + function u(e) { + return n('EISDIR', 'illegal operation on a directory, ' + e); + } + function l(e) { + return n('EEXIST', 'file already exists, ' + e); + } + function h(e) { + return n('EROFS', 'read-only filesystem, ' + e); + } + r.d(t, { + Vw: () => i, + bk: () => o, + hq: () => s, + Ch: () => A, + z6: () => a, + Ab: () => c, + GA: () => u, + cT: () => l, + YW: () => h, + }); + }, + 56537: (e, t, r) => { + 'use strict'; + r.r(t), + r.d(t, { + normalizeLineEndings: () => a.qH, + DEFAULT_COMPRESSION_LEVEL: () => c.k, + PortablePath: () => A.LZ, + Filename: () => A.QS, + npath: () => A.cS, + ppath: () => A.y1, + toFilename: () => A.Zu, + AliasFS: () => u.K, + FakeFS: () => a.uY, + CwdFS: () => l.M, + JailFS: () => h.n, + LazyFS: () => g.v, + NoFS: () => p, + NodeFS: () => s.S, + PosixFS: () => d.i, + ProxiedFS: () => C.p, + VirtualFS: () => E.p, + ZipFS: () => c.d, + ZipOpenFS: () => I.A, + patchFs: () => y, + extendFs: () => w, + xfs: () => D, + }); + var n = r(12087), + i = r.n(n), + o = r(31669), + s = r(78420), + A = r(46009), + a = r(35398), + c = r(90739), + u = r(14626), + l = r(75448), + h = r(10489), + g = r(15037); + const f = () => + Object.assign(new Error('ENOSYS: unsupported filesystem access'), { code: 'ENOSYS' }); + class p extends a.uY { + constructor() { + super(A.y1); + } + getExtractHint() { + throw f(); + } + getRealPath() { + throw f(); + } + resolve() { + throw f(); + } + async openPromise() { + throw f(); + } + openSync() { + throw f(); + } + async readPromise() { + throw f(); + } + readSync() { + throw f(); + } + async writePromise() { + throw f(); + } + writeSync() { + throw f(); + } + async closePromise() { + throw f(); + } + closeSync() { + throw f(); + } + createWriteStream() { + throw f(); + } + createReadStream() { + throw f(); + } + async realpathPromise() { + throw f(); + } + realpathSync() { + throw f(); + } + async readdirPromise() { + throw f(); + } + readdirSync() { + throw f(); + } + async existsPromise(e) { + throw f(); + } + existsSync(e) { + throw f(); + } + async accessPromise() { + throw f(); + } + accessSync() { + throw f(); + } + async statPromise() { + throw f(); + } + statSync() { + throw f(); + } + async lstatPromise(e) { + throw f(); + } + lstatSync(e) { + throw f(); + } + async chmodPromise() { + throw f(); + } + chmodSync() { + throw f(); + } + async mkdirPromise() { + throw f(); + } + mkdirSync() { + throw f(); + } + async rmdirPromise() { + throw f(); + } + rmdirSync() { + throw f(); + } + async symlinkPromise() { + throw f(); + } + symlinkSync() { + throw f(); + } + async renamePromise() { + throw f(); + } + renameSync() { + throw f(); + } + async copyFilePromise() { + throw f(); + } + copyFileSync() { + throw f(); + } + async appendFilePromise() { + throw f(); + } + appendFileSync() { + throw f(); + } + async writeFilePromise() { + throw f(); + } + writeFileSync() { + throw f(); + } + async unlinkPromise() { + throw f(); + } + unlinkSync() { + throw f(); + } + async utimesPromise() { + throw f(); + } + utimesSync() { + throw f(); + } + async readFilePromise() { + throw f(); + } + readFileSync() { + throw f(); + } + async readlinkPromise() { + throw f(); + } + readlinkSync() { + throw f(); + } + watch() { + throw f(); + } + } + p.instance = new p(); + var d = r(39725), + C = r(42096), + E = r(17674), + I = r(53660); + function m(e) { + const t = A.cS.toPortablePath(i().tmpdir()), + r = Math.ceil(4294967296 * Math.random()) + .toString(16) + .padStart(8, '0'); + return A.y1.join(t, `${e}${r}`); + } + function y(e, t) { + const r = new Set([ + 'accessSync', + 'appendFileSync', + 'createReadStream', + 'chmodSync', + 'closeSync', + 'copyFileSync', + 'lstatSync', + 'lutimesSync', + 'mkdirSync', + 'openSync', + 'readSync', + 'readlinkSync', + 'readFileSync', + 'readdirSync', + 'readlinkSync', + 'realpathSync', + 'renameSync', + 'rmdirSync', + 'statSync', + 'symlinkSync', + 'unlinkSync', + 'utimesSync', + 'watch', + 'writeFileSync', + 'writeSync', + ]), + n = new Set([ + 'accessPromise', + 'appendFilePromise', + 'chmodPromise', + 'closePromise', + 'copyFilePromise', + 'lstatPromise', + 'lutimesPromise', + 'mkdirPromise', + 'openPromise', + 'readdirPromise', + 'realpathPromise', + 'readFilePromise', + 'readdirPromise', + 'readlinkPromise', + 'renamePromise', + 'rmdirPromise', + 'statPromise', + 'symlinkPromise', + 'unlinkPromise', + 'utimesPromise', + 'writeFilePromise', + 'writeSync', + ]), + i = (e, t, r) => { + const n = e[t]; + (e[t] = r), + void 0 !== n[o.promisify.custom] && (r[o.promisify.custom] = n[o.promisify.custom]); + }; + i(e, 'exists', (e, ...r) => { + const n = 'function' == typeof r[r.length - 1] ? r.pop() : () => {}; + process.nextTick(() => { + t.existsPromise(e).then( + (e) => { + n(e); + }, + () => { + n(!1); + } + ); + }); + }), + i(e, 'read', (e, r, ...n) => { + const i = 'function' == typeof n[n.length - 1] ? n.pop() : () => {}; + process.nextTick(() => { + t.readPromise(e, r, ...n).then( + (e) => { + i(null, e, r); + }, + (e) => { + i(e); + } + ); + }); + }); + for (const r of n) { + const n = r.replace(/Promise$/, ''); + if (void 0 === e[n]) continue; + const o = t[r]; + if (void 0 === o) continue; + i(e, n, (...e) => { + const r = 'function' == typeof e[e.length - 1] ? e.pop() : () => {}; + process.nextTick(() => { + o.apply(t, e).then( + (e) => { + r(null, e); + }, + (e) => { + r(e); + } + ); + }); + }); + } + (e.realpath.native = e.realpath), + i(e, 'existsSync', (e) => { + try { + return t.existsSync(e); + } catch (e) { + return !1; + } + }); + for (const n of r) { + const r = n; + if (void 0 === e[r]) continue; + const o = t[n]; + void 0 !== o && i(e, r, o.bind(t)); + } + e.realpathSync.native = e.realpathSync; + { + const r = e.promises; + if (void 0 !== r) + for (const e of n) { + const n = e.replace(/Promise$/, ''); + if (void 0 === r[n]) continue; + const o = t[e]; + void 0 !== o && i(r, n, o.bind(t)); + } + } + } + function w(e, t) { + const r = Object.create(e); + return y(r, t), r; + } + const B = new Set(); + let Q = !1; + function v() { + if (Q) return; + Q = !0; + const e = () => { + process.off('exit', e); + for (const e of B) { + B.delete(e); + try { + D.removeSync(e); + } catch (e) {} + } + }; + process.on('exit', e); + } + const D = Object.assign(new s.S(), { + detachTemp(e) { + B.delete(e); + }, + mktempSync(e) { + for (v(); ; ) { + const t = m('xfs-'); + try { + this.mkdirSync(t); + } catch (e) { + if ('EEXIST' === e.code) continue; + throw e; + } + const r = this.realpathSync(t); + if ((B.add(r), void 0 === e)) return t; + try { + return e(r); + } finally { + if (B.has(r)) { + B.delete(r); + try { + this.removeSync(r); + } catch (e) {} + } + } + } + }, + async mktempPromise(e) { + for (v(); ; ) { + const t = m('xfs-'); + try { + await this.mkdirPromise(t); + } catch (e) { + if ('EEXIST' === e.code) continue; + throw e; + } + const r = await this.realpathPromise(t); + if ((B.add(r), void 0 === e)) return r; + try { + return await e(r); + } finally { + if (B.has(r)) { + B.delete(r); + try { + await this.removePromise(r); + } catch (e) {} + } + } + } + }, + }); + }, + 46009: (e, t, r) => { + 'use strict'; + r.d(t, { LZ: () => s, QS: () => A, cS: () => a, y1: () => c, CI: () => C, Zu: () => E }); + var n, + i = r(85622), + o = r.n(i); + !(function (e) { + (e[(e.File = 0)] = 'File'), + (e[(e.Portable = 1)] = 'Portable'), + (e[(e.Native = 2)] = 'Native'); + })(n || (n = {})); + const s = { root: '/', dot: '.' }, + A = { + nodeModules: 'node_modules', + manifest: 'package.json', + lockfile: 'yarn.lock', + rc: '.yarnrc.yml', + }, + a = Object.create(o()), + c = Object.create(o().posix); + (a.cwd = () => process.cwd()), + (c.cwd = () => d(process.cwd())), + (c.resolve = (...e) => o().posix.resolve(c.cwd(), ...e)); + const u = function (e, t, r) { + return (t = e.normalize(t)) === (r = e.normalize(r)) + ? '.' + : (t.endsWith(e.sep) || (t += e.sep), r.startsWith(t) ? r.slice(t.length) : null); + }; + (a.fromPortablePath = p), + (a.toPortablePath = d), + (a.contains = (e, t) => u(a, e, t)), + (c.contains = (e, t) => u(c, e, t)); + const l = /^([a-zA-Z]:.*)$/, + h = /^\\\\(\.\\)?(.*)$/, + g = /^\/([a-zA-Z]:.*)$/, + f = /^\/unc\/(\.dot\/)?(.*)$/; + function p(e) { + if ('win32' !== process.platform) return e; + if (e.match(g)) e = e.replace(g, '$1'); + else { + if (!e.match(f)) return e; + e = e.replace(f, (e, t, r) => `\\\\${t ? '.\\' : ''}${r}`); + } + return e.replace(/\//g, '\\'); + } + function d(e) { + return 'win32' !== process.platform + ? e + : (e.match(l) + ? (e = e.replace(l, '/$1')) + : e.match(h) && (e = e.replace(h, (e, t, r) => `/unc/${t ? '.dot/' : ''}${r}`)), + e.replace(/\\/g, '/')); + } + function C(e, t) { + return e === a ? p(t) : d(t); + } + function E(e) { + if ('' !== a.parse(e).dir || '' !== c.parse(e).dir) + throw new Error(`Invalid filename: "${e}"`); + return e; + } + }, + 29486: (e, t, r) => { + 'use strict'; + r.r(t), r.d(t, { getLibzipSync: () => o, getLibzipPromise: () => s }); + const n = ['number', 'number']; + let i = null; + function o() { + var e; + return ( + null === i && + ((e = r(3368)), + (i = { + get HEAP8() { + return e.HEAP8; + }, + get HEAPU8() { + return e.HEAPU8; + }, + SEEK_SET: 0, + SEEK_CUR: 1, + SEEK_END: 2, + ZIP_CHECKCONS: 4, + ZIP_CREATE: 1, + ZIP_EXCL: 2, + ZIP_TRUNCATE: 8, + ZIP_RDONLY: 16, + ZIP_FL_OVERWRITE: 8192, + ZIP_OPSYS_DOS: 0, + ZIP_OPSYS_AMIGA: 1, + ZIP_OPSYS_OPENVMS: 2, + ZIP_OPSYS_UNIX: 3, + ZIP_OPSYS_VM_CMS: 4, + ZIP_OPSYS_ATARI_ST: 5, + ZIP_OPSYS_OS_2: 6, + ZIP_OPSYS_MACINTOSH: 7, + ZIP_OPSYS_Z_SYSTEM: 8, + ZIP_OPSYS_CPM: 9, + ZIP_OPSYS_WINDOWS_NTFS: 10, + ZIP_OPSYS_MVS: 11, + ZIP_OPSYS_VSE: 12, + ZIP_OPSYS_ACORN_RISC: 13, + ZIP_OPSYS_VFAT: 14, + ZIP_OPSYS_ALTERNATE_MVS: 15, + ZIP_OPSYS_BEOS: 16, + ZIP_OPSYS_TANDEM: 17, + ZIP_OPSYS_OS_400: 18, + ZIP_OPSYS_OS_X: 19, + ZIP_CM_DEFAULT: -1, + ZIP_CM_STORE: 0, + ZIP_CM_DEFLATE: 8, + uint08S: e._malloc(1), + uint16S: e._malloc(2), + uint32S: e._malloc(4), + uint64S: e._malloc(8), + malloc: e._malloc, + free: e._free, + getValue: e.getValue, + open: e.cwrap('zip_open', 'number', ['string', 'number', 'number']), + openFromSource: e.cwrap('zip_open_from_source', 'number', [ + 'number', + 'number', + 'number', + ]), + close: e.cwrap('zip_close', 'number', ['number']), + discard: e.cwrap('zip_discard', null, ['number']), + getError: e.cwrap('zip_get_error', 'number', ['number']), + getName: e.cwrap('zip_get_name', 'string', ['number', 'number', 'number']), + getNumEntries: e.cwrap('zip_get_num_entries', 'number', ['number', 'number']), + stat: e.cwrap('zip_stat', 'number', ['number', 'string', 'number', 'number']), + statIndex: e.cwrap('zip_stat_index', 'number', [ + 'number', + ...n, + 'number', + 'number', + ]), + fopen: e.cwrap('zip_fopen', 'number', ['number', 'string', 'number']), + fopenIndex: e.cwrap('zip_fopen_index', 'number', ['number', ...n, 'number']), + fread: e.cwrap('zip_fread', 'number', ['number', 'number', 'number', 'number']), + fclose: e.cwrap('zip_fclose', 'number', ['number']), + dir: { add: e.cwrap('zip_dir_add', 'number', ['number', 'string']) }, + file: { + add: e.cwrap('zip_file_add', 'number', ['number', 'string', 'number', 'number']), + getError: e.cwrap('zip_file_get_error', 'number', ['number']), + getExternalAttributes: e.cwrap('zip_file_get_external_attributes', 'number', [ + 'number', + ...n, + 'number', + 'number', + 'number', + ]), + setExternalAttributes: e.cwrap('zip_file_set_external_attributes', 'number', [ + 'number', + ...n, + 'number', + 'number', + 'number', + ]), + setMtime: e.cwrap('zip_file_set_mtime', 'number', [ + 'number', + ...n, + 'number', + 'number', + ]), + setCompression: e.cwrap('zip_set_file_compression', 'number', [ + 'number', + ...n, + 'number', + 'number', + ]), + }, + ext: { countSymlinks: e.cwrap('zip_ext_count_symlinks', 'number', ['number']) }, + error: { + initWithCode: e.cwrap('zip_error_init_with_code', null, ['number', 'number']), + strerror: e.cwrap('zip_error_strerror', 'string', ['number']), + }, + name: { + locate: e.cwrap('zip_name_locate', 'number', ['number', 'string', 'number']), + }, + source: { + fromUnattachedBuffer: e.cwrap('zip_source_buffer_create', 'number', [ + 'number', + 'number', + 'number', + 'number', + ]), + fromBuffer: e.cwrap('zip_source_buffer', 'number', [ + 'number', + 'number', + ...n, + 'number', + ]), + free: e.cwrap('zip_source_free', null, ['number']), + keep: e.cwrap('zip_source_keep', null, ['number']), + open: e.cwrap('zip_source_open', 'number', ['number']), + close: e.cwrap('zip_source_close', 'number', ['number']), + seek: e.cwrap('zip_source_seek', 'number', ['number', ...n, 'number']), + tell: e.cwrap('zip_source_tell', 'number', ['number']), + read: e.cwrap('zip_source_read', 'number', ['number', 'number', 'number']), + error: e.cwrap('zip_source_error', 'number', ['number']), + setMtime: e.cwrap('zip_source_set_mtime', 'number', ['number', 'number']), + }, + struct: { + stat: e.cwrap('zipstruct_stat', 'number', []), + statS: e.cwrap('zipstruct_statS', 'number', []), + statName: e.cwrap('zipstruct_stat_name', 'string', ['number']), + statIndex: e.cwrap('zipstruct_stat_index', 'number', ['number']), + statSize: e.cwrap('zipstruct_stat_size', 'number', ['number']), + statMtime: e.cwrap('zipstruct_stat_mtime', 'number', ['number']), + error: e.cwrap('zipstruct_error', 'number', []), + errorS: e.cwrap('zipstruct_errorS', 'number', []), + }, + })), + i + ); + } + async function s() { + return o(); + } + }, + 55125: (e, t, r) => { + 'use strict'; + r.r(t), + r.d(t, { + parseShell: () => i, + parseResolution: () => s, + stringifyResolution: () => A, + parseSyml: () => C, + stringifySyml: () => f, + }); + var n = r(92962); + function i(e, t = { isGlobPattern: () => !1 }) { + try { + return (0, n.parse)(e, t); + } catch (e) { + throw ( + (e.location && + (e.message = e.message.replace( + /(\.)?$/, + ` (line ${e.location.start.line}, column ${e.location.start.column})$1` + )), + e) + ); + } + } + var o = r(98261); + function s(e) { + const t = e.match(/^\*{1,2}\/(.*)/); + if (t) + throw new Error( + `The override for '${e}' includes a glob pattern. Glob patterns have been removed since their behaviours don't match what you'd expect. Set the override to '${t[1]}' instead.` + ); + try { + return (0, o.parse)(e); + } catch (e) { + throw ( + (e.location && + (e.message = e.message.replace( + /(\.)?$/, + ` (line ${e.location.start.line}, column ${e.location.start.column})$1` + )), + e) + ); + } + } + function A(e) { + let t = ''; + return ( + e.from && + ((t += e.from.fullName), + e.from.description && (t += '@' + e.from.description), + (t += '/')), + (t += e.descriptor.fullName), + e.descriptor.description && (t += '@' + e.descriptor.description), + t + ); + } + var a = r(21194), + c = r(85443); + const u = /^(?![-?:,\][{}#&*!|>'"%@` \t\r\n]).([ \t]*(?![,\][{}:# \t\r\n]).)*$/, + l = [ + '__metadata', + 'version', + 'resolution', + 'dependencies', + 'peerDependencies', + 'dependenciesMeta', + 'peerDependenciesMeta', + 'binaries', + ]; + class h { + constructor(e) { + this.data = e; + } + } + function g(e) { + return e.match(u) ? e : JSON.stringify(e); + } + function f(e) { + try { + return (function e(t, r, n) { + if (null === t) return 'null\n'; + if ('number' == typeof t || 'boolean' == typeof t) return t.toString() + '\n'; + if ('string' == typeof t) return g(t) + '\n'; + if (Array.isArray(t)) { + if (0 === t.length) return '[]\n'; + const n = ' '.repeat(r); + return '\n' + t.map((t) => `${n}- ${e(t, r + 1, !1)}`).join(''); + } + if ('object' == typeof t && t) { + let i, o; + t instanceof h ? ((i = t.data), (o = !1)) : ((i = t), (o = !0)); + const s = ' '.repeat(r), + A = Object.keys(i); + o && + A.sort((e, t) => { + const r = l.indexOf(e), + n = l.indexOf(t); + return -1 === r && -1 === n + ? e < t + ? -1 + : e > t + ? 1 + : 0 + : -1 !== r && -1 === n + ? -1 + : -1 === r && -1 !== n + ? 1 + : r - n; + }); + const a = + A.filter((e) => void 0 !== i[e]) + .map((t, o) => { + const A = i[t], + a = g(t), + c = e(A, r + 1, !0), + u = o > 0 || n ? s : ''; + return c.startsWith('\n') ? `${u}${a}:${c}` : `${u}${a}: ${c}`; + }) + .join(0 === r ? '\n' : '') || '\n'; + return n ? '\n' + a : '' + a; + } + throw new Error(`Unsupported value type (${t})`); + })(e, 0, !1); + } catch (e) { + throw ( + (e.location && + (e.message = e.message.replace( + /(\.)?$/, + ` (line ${e.location.start.line}, column ${e.location.start.column})$1` + )), + e) + ); + } + } + f.PreserveOrdering = h; + const p = /^(#.*(\r?\n))*?#\s+yarn\s+lockfile\s+v1\r?\n/i; + function d(e) { + if (p.test(e)) + return (function (e) { + return e.endsWith('\n') || (e += '\n'), (0, c.parse)(e); + })(e); + const t = (0, a.safeLoad)(e, { schema: a.FAILSAFE_SCHEMA }); + if (null == t) return {}; + if ('object' != typeof t) + throw new Error( + `Expected an indexed object, got a ${typeof t} instead. Does your file follow Yaml's rules?` + ); + if (Array.isArray(t)) + throw new Error( + "Expected an indexed object, got an array instead. Does your file follow Yaml's rules?" + ); + return t; + } + function C(e) { + return d(e); + } + }, + 88563: (e, t, r) => { + 'use strict'; + var n, i; + r.d(t, { gY: () => I, Q$: () => m, oC: () => F }), + (function (e) { + (e.HARD = 'HARD'), (e.SOFT = 'SOFT'); + })(n || (n = {})), + (function (e) { + (e.DEFAULT = 'DEFAULT'), + (e.TOP_LEVEL = 'TOP_LEVEL'), + (e.FALLBACK_EXCLUSION_LIST = 'FALLBACK_EXCLUSION_LIST'), + (e.FALLBACK_EXCLUSION_ENTRIES = 'FALLBACK_EXCLUSION_ENTRIES'), + (e.FALLBACK_EXCLUSION_DATA = 'FALLBACK_EXCLUSION_DATA'), + (e.PACKAGE_REGISTRY_DATA = 'PACKAGE_REGISTRY_DATA'), + (e.PACKAGE_REGISTRY_ENTRIES = 'PACKAGE_REGISTRY_ENTRIES'), + (e.PACKAGE_STORE_DATA = 'PACKAGE_STORE_DATA'), + (e.PACKAGE_STORE_ENTRIES = 'PACKAGE_STORE_ENTRIES'), + (e.PACKAGE_INFORMATION_DATA = 'PACKAGE_INFORMATION_DATA'), + (e.PACKAGE_DEPENDENCIES = 'PACKAGE_DEPENDENCIES'), + (e.PACKAGE_DEPENDENCY = 'PACKAGE_DEPENDENCY'); + })(i || (i = {})); + const o = { + [i.DEFAULT]: { collapsed: !1, next: { '*': i.DEFAULT } }, + [i.TOP_LEVEL]: { + collapsed: !1, + next: { + fallbackExclusionList: i.FALLBACK_EXCLUSION_LIST, + packageRegistryData: i.PACKAGE_REGISTRY_DATA, + '*': i.DEFAULT, + }, + }, + [i.FALLBACK_EXCLUSION_LIST]: { + collapsed: !1, + next: { '*': i.FALLBACK_EXCLUSION_ENTRIES }, + }, + [i.FALLBACK_EXCLUSION_ENTRIES]: { + collapsed: !0, + next: { '*': i.FALLBACK_EXCLUSION_DATA }, + }, + [i.FALLBACK_EXCLUSION_DATA]: { collapsed: !0, next: { '*': i.DEFAULT } }, + [i.PACKAGE_REGISTRY_DATA]: { collapsed: !1, next: { '*': i.PACKAGE_REGISTRY_ENTRIES } }, + [i.PACKAGE_REGISTRY_ENTRIES]: { collapsed: !0, next: { '*': i.PACKAGE_STORE_DATA } }, + [i.PACKAGE_STORE_DATA]: { collapsed: !1, next: { '*': i.PACKAGE_STORE_ENTRIES } }, + [i.PACKAGE_STORE_ENTRIES]: { collapsed: !0, next: { '*': i.PACKAGE_INFORMATION_DATA } }, + [i.PACKAGE_INFORMATION_DATA]: { + collapsed: !1, + next: { packageDependencies: i.PACKAGE_DEPENDENCIES, '*': i.DEFAULT }, + }, + [i.PACKAGE_DEPENDENCIES]: { collapsed: !1, next: { '*': i.PACKAGE_DEPENDENCY } }, + [i.PACKAGE_DEPENDENCY]: { collapsed: !0, next: { '*': i.DEFAULT } }, + }; + function s(e, t, r, n) { + const { next: i } = o[r]; + return A(t, i[e] || i['*'], n); + } + function A(e, t, r) { + const { collapsed: n } = o[t]; + return Array.isArray(e) + ? n + ? (function (e, t, r) { + let n = ''; + n += '['; + for (let i = 0, o = e.length; i < o; ++i) + (n += s(String(i), e[i], t, r).replace(/^ +/g, '')), i + 1 < o && (n += ', '); + return (n += ']'), n; + })(e, t, r) + : (function (e, t, r) { + const n = r + ' '; + let i = ''; + (i += r), (i += '[\n'); + for (let r = 0, o = e.length; r < o; ++r) + (i += n + s(String(r), e[r], t, n).replace(/^ +/, '')), + r + 1 < o && (i += ','), + (i += '\n'); + return (i += r), (i += ']'), i; + })(e, t, r) + : 'object' == typeof e && null !== e + ? n + ? (function (e, t, r) { + const n = Object.keys(e); + let i = ''; + i += '{'; + for (let o = 0, A = n.length; o < A; ++o) { + const a = n[o], + c = e[a]; + void 0 !== c && + ((i += JSON.stringify(a)), + (i += ': '), + (i += s(a, c, t, r).replace(/^ +/g, '')), + o + 1 < A && (i += ', ')); + } + return (i += '}'), i; + })(e, t, r) + : (function (e, t, r) { + const n = Object.keys(e), + i = r + ' '; + let o = ''; + (o += r), (o += '{\n'); + for (let r = 0, A = n.length; r < A; ++r) { + const a = n[r], + c = e[a]; + void 0 !== c && + ((o += i), + (o += JSON.stringify(a)), + (o += ': '), + (o += s(a, c, t, i).replace(/^ +/g, '')), + r + 1 < A && (o += ','), + (o += '\n')); + } + return (o += r), (o += '}'), o; + })(e, t, r) + : JSON.stringify(e); + } + function a(e) { + return A(e, i.TOP_LEVEL, ''); + } + function c(e, t) { + const r = Array.from(e); + Array.isArray(t) || (t = [t]); + const n = []; + for (const e of t) n.push(r.map((t) => e(t))); + const i = r.map((e, t) => t); + return ( + i.sort((e, t) => { + for (const r of n) { + const n = r[e] < r[t] ? -1 : r[e] > r[t] ? 1 : 0; + if (0 !== n) return n; + } + return 0; + }), + i.map((e) => r[e]) + ); + } + function u(e) { + const t = new Map(), + r = c(e.fallbackExclusionList || [], [ + ({ name: e, reference: t }) => e, + ({ name: e, reference: t }) => t, + ]); + for (const { name: e, reference: n } of r) { + let r = t.get(e); + void 0 === r && t.set(e, (r = new Set())), r.add(n); + } + return Array.from(t).map(([e, t]) => [e, Array.from(t)]); + } + function l(e) { + return c(e.fallbackPool || [], ([e]) => e); + } + function h(e) { + const t = []; + for (const [r, n] of c(e.packageRegistry, ([e]) => (null === e ? '0' : '1' + e))) { + const e = []; + t.push([r, e]); + for (const [ + t, + { + packageLocation: i, + packageDependencies: o, + packagePeers: s, + linkType: A, + discardFromLookup: a, + }, + ] of c(n, ([e]) => (null === e ? '0' : '1' + e))) { + const n = []; + null === r || null === t || o.has(r) || n.push([r, t]); + for (const [e, t] of c(o.entries(), ([e]) => e)) n.push([e, t]); + const u = s && s.size > 0 ? Array.from(s) : void 0, + l = a || void 0; + e.push([ + t, + { + packageLocation: i, + packageDependencies: n, + packagePeers: u, + linkType: A, + discardFromLookup: l, + }, + ]); + } + } + return t; + } + function g(e) { + return c(e.blacklistedLocations || [], (e) => e); + } + function f(e) { + return { + __info: [ + 'This file is automatically generated. Do not touch it, or risk', + 'your modifications being lost. We also recommend you not to read', + 'it either without using the @yarnpkg/pnp package, as the data layout', + 'is entirely unspecified and WILL change from a version to another.', + ], + dependencyTreeRoots: e.dependencyTreeRoots, + enableTopLevelFallback: e.enableTopLevelFallback || !1, + ignorePatternData: e.ignorePattern || null, + fallbackExclusionList: u(e), + fallbackPool: l(e), + locationBlacklistData: g(e), + packageRegistryData: h(e), + }; + } + var p = r(20103), + d = r.n(p); + function C(e, t) { + return [ + e ? e + '\n' : '', + '/* eslint-disable */\n\n', + 'try {\n', + ' Object.freeze({}).detectStrictMode = true;\n', + '} catch (error) {\n', + " throw new Error(`The whole PnP file got strict-mode-ified, which is known to break (Emscripten libraries aren't strict mode). This usually happens when the file goes through Babel.`);\n", + '}\n', + '\n', + 'var __non_webpack_module__ = module;\n', + '\n', + 'function $$SETUP_STATE(hydrateRuntimeState, basePath) {\n', + t.replace(/^/gm, ' '), + '}\n', + '\n', + d(), + ].join(''); + } + function E(e) { + return JSON.stringify(e, null, 2); + } + function I(e) { + const t = (function (e) { + return [ + `return hydrateRuntimeState(${a(e)}, {basePath: basePath || __dirname});\n`, + ].join(''); + })(f(e)); + return C(e.shebang, t); + } + function m(e) { + const t = f(e), + r = + ((n = e.dataLocation), + [ + "var path = require('path');\n", + `var dataLocation = path.resolve(__dirname, ${JSON.stringify(n)});\n`, + 'return hydrateRuntimeState(require(dataLocation), {basePath: basePath || path.dirname(dataLocation)});\n', + ].join('')); + var n; + const i = C(e.shebang, r); + return { dataFile: E(t), loaderFile: i }; + } + var y = r(35747), + w = (r(85622), r(31669)), + B = r(46009); + function Q(e, { basePath: t }) { + const r = B.cS.toPortablePath(t), + n = null !== e.ignorePatternData ? new RegExp(e.ignorePatternData) : null, + i = new Map( + e.packageRegistryData.map(([e, t]) => [ + e, + new Map( + t.map(([e, t]) => [ + e, + { + packageLocation: B.y1.resolve(r, t.packageLocation), + packageDependencies: new Map(t.packageDependencies), + packagePeers: new Set(t.packagePeers), + linkType: t.linkType, + discardFromLookup: t.discardFromLookup || !1, + }, + ]) + ), + ]) + ), + o = new Map(), + s = new Set(); + for (const [t, r] of e.packageRegistryData) + for (const [e, n] of r) { + if ((null === t) != (null === e)) + throw new Error( + 'Assertion failed: The name and reference should be null, or neither should' + ); + if (n.discardFromLookup) continue; + const r = { name: t, reference: e }; + o.set(n.packageLocation, r), s.add(n.packageLocation.length); + } + for (const t of e.locationBlacklistData) o.set(t, null); + const A = new Map(e.fallbackExclusionList.map(([e, t]) => [e, new Set(t)])), + a = new Map(e.fallbackPool), + c = e.dependencyTreeRoots, + u = e.enableTopLevelFallback; + return { + basePath: r, + dependencyTreeRoots: c, + enableTopLevelFallback: u, + fallbackExclusionList: A, + fallbackPool: a, + ignorePattern: n, + packageLocationLengths: [...s].sort((e, t) => t - e), + packageLocatorsByLocations: o, + packageRegistry: i, + }; + } + var v, + D = r(17674), + b = r(32282); + !(function (e) { + (e.API_ERROR = 'API_ERROR'), + (e.BLACKLISTED = 'BLACKLISTED'), + (e.BUILTIN_NODE_RESOLUTION_FAILED = 'BUILTIN_NODE_RESOLUTION_FAILED'), + (e.MISSING_DEPENDENCY = 'MISSING_DEPENDENCY'), + (e.MISSING_PEER_DEPENDENCY = 'MISSING_PEER_DEPENDENCY'), + (e.QUALIFIED_PATH_RESOLUTION_FAILED = 'QUALIFIED_PATH_RESOLUTION_FAILED'), + (e.INTERNAL = 'INTERNAL'), + (e.UNDECLARED_DEPENDENCY = 'UNDECLARED_DEPENDENCY'), + (e.UNSUPPORTED = 'UNSUPPORTED'); + })(v || (v = {})); + const S = new Set([ + v.BLACKLISTED, + v.BUILTIN_NODE_RESOLUTION_FAILED, + v.MISSING_DEPENDENCY, + v.MISSING_PEER_DEPENDENCY, + v.QUALIFIED_PATH_RESOLUTION_FAILED, + v.UNDECLARED_DEPENDENCY, + ]); + function k(e, t, r = {}) { + const n = S.has(e) ? 'MODULE_NOT_FOUND' : e, + i = { configurable: !0, writable: !0, enumerable: !1 }; + return Object.defineProperties(new Error(t), { + code: { ...i, value: n }, + pnpCode: { ...i, value: e }, + data: { ...i, value: r }, + }); + } + function x(e, t) { + const r = Number(process.env.PNP_ALWAYS_WARN_ON_FALLBACK) > 0, + n = Number(process.env.PNP_DEBUG_LEVEL), + i = new Set(b.Module.builtinModules || Object.keys(process.binding('natives'))), + o = /^(?![a-zA-Z]:[\\/]|\\\\|\.{0,2}(?:\/|$))((?:@[^/]+\/)?[^/]+)\/*(.*|)$/, + s = /^\.{0,2}\//, + A = /\/$/, + a = [], + c = new Set(); + if (!1 !== t.compatibilityMode) + for (const t of ['react-scripts', 'gatsby']) { + const r = e.packageRegistry.get(t); + if (r) + for (const e of r.keys()) { + if (null === e) + throw new Error("Assertion failed: This reference shouldn't be null"); + a.push({ name: t, reference: e }); + } + } + const { + ignorePattern: u, + packageRegistry: l, + packageLocatorsByLocations: h, + packageLocationLengths: g, + } = e; + function f(e, t) { + return { fn: e, args: t, error: null, result: null }; + } + function p(e, r) { + if (!1 === t.allowDebug) return r; + if (Number.isFinite(n)) { + if (n >= 2) + return (...t) => { + const n = f(e, t); + try { + return (n.result = r(...t)); + } catch (e) { + throw (n.error = e); + } finally { + console.trace(n); + } + }; + if (n >= 1) + return (...t) => { + try { + return r(...t); + } catch (r) { + const n = f(e, t); + throw ((n.error = r), console.trace(n), r); + } + }; + } + return r; + } + function d(e) { + const t = I(e); + if (!t) + throw k( + v.INTERNAL, + "Couldn't find a matching entry in the dependency tree for the specified parent (this is probably an internal error)" + ); + return t; + } + function C(t) { + if (null === t.name) return !0; + for (const r of e.dependencyTreeRoots) + if (r.name === t.name && r.reference === t.reference) return !0; + return !1; + } + function E(e, t) { + return ( + t.endsWith('/') && (t = B.y1.join(t, 'internal.js')), + b.Module._resolveFilename( + e, + (function (e) { + const t = new b.Module(e, null); + return (t.filename = e), (t.paths = b.Module._nodeModulePaths(e)), t; + })(B.cS.fromPortablePath(t)), + !1, + { plugnplay: !1 } + ) + ); + } + function I({ name: e, reference: t }) { + const r = l.get(e); + if (!r) return null; + const n = r.get(t); + return n || null; + } + function m(e, t) { + const r = new Map(), + n = new Set(), + i = (t) => { + const o = JSON.stringify(t.name); + if (n.has(o)) return; + n.add(o); + const s = (function ({ name: e, reference: t }) { + const r = []; + for (const [n, i] of l) + if (null !== n) + for (const [o, s] of i) { + if (null === o) continue; + s.packageDependencies.get(e) === t && + ((n === e && o === t) || r.push({ name: n, reference: o })); + } + return r; + })(t); + for (const t of s) { + if (d(t).packagePeers.has(e)) i(t); + else { + let e = r.get(t.name); + void 0 === e && r.set(t.name, (e = new Set())), e.add(t.reference); + } + } + }; + i(t); + const o = []; + for (const e of [...r.keys()].sort()) + for (const t of [...r.get(e)].sort()) o.push({ name: e, reference: t }); + return o; + } + function y(t) { + let r = ((n = B.y1.relative(e.basePath, t)), B.cS.toPortablePath(n)); + var n; + r.match(s) || (r = './' + r), t.match(A) && !r.endsWith('/') && (r += '/'); + let i = 0; + for (; i < g.length && g[i] > r.length; ) i += 1; + for (let e = i; e < g.length; ++e) { + const n = h.get(r.substr(0, g[e])); + if (void 0 !== n) { + if (null === n) + throw k( + v.BLACKLISTED, + "A forbidden path has been used in the package resolution process - this is usually caused by one of your tools calling 'fs.realpath' on the return value of 'require.resolve'. Since we need to use symlinks to simultaneously provide valid filesystem paths and disambiguate peer dependencies, they must be passed untransformed to 'require'.\n\nForbidden path: " + + t, + { location: t } + ); + return n; + } + } + return null; + } + function w(n, s, { considerBuiltins: l = !0 } = {}) { + if ('pnpapi' === n) return B.cS.toPortablePath(t.pnpapiResolution); + if (l && i.has(n)) return null; + if ( + s && + (function (t) { + if (null === u) return !1; + const r = B.y1.contains(e.basePath, t); + return null !== r && !!u.test(r.replace(/\/$/, '')); + })(s) && + (!B.y1.isAbsolute(n) || null === y(n)) + ) { + const e = E(n, s); + if (!1 === e) + throw k( + v.BUILTIN_NODE_RESOLUTION_FAILED, + `The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer was explicitely ignored by the regexp)\n\nRequire request: "${n}"\nRequired by: ${s}\n`, + { request: n, issuer: s } + ); + return B.cS.toPortablePath(e); + } + let h; + const g = n.match(o); + if (g) { + if (!s) + throw k( + v.API_ERROR, + "The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute", + { request: n, issuer: s } + ); + const [, t, i] = g, + o = y(s); + if (!o) { + const e = E(n, s); + if (!1 === e) + throw k( + v.BUILTIN_NODE_RESOLUTION_FAILED, + `The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer doesn't seem to be part of the Yarn-managed dependency tree).\n\nRequire path: "${n}"\nRequired by: ${s}\n`, + { request: n, issuer: s } + ); + return B.cS.toPortablePath(e); + } + let A = d(o).packageDependencies.get(t), + u = null; + if (null == A && null !== o.name) { + const n = e.fallbackExclusionList.get(o.name); + if (!n || !n.has(o.reference)) { + for (let e = 0, n = a.length; e < n; ++e) { + const n = d(a[e]).packageDependencies.get(t); + if (null != n) { + r ? (u = n) : (A = n); + break; + } + } + if (e.enableTopLevelFallback && null == A && null === u) { + const r = e.fallbackPool.get(t); + null != r && (u = r); + } + } + } + let l = null; + if (null === A) + if (C(o)) + l = k( + v.MISSING_PEER_DEPENDENCY, + `Your application tried to access ${t} (a peer dependency); this isn't allowed as there is no ancestor to satisfy the requirement. Use a devDependency if needed.\n\nRequired package: ${t} (via "${n}")\nRequired by: ${s}\n`, + { request: n, issuer: s, dependencyName: t } + ); + else { + const e = m(t, o); + l = e.every((e) => C(e)) + ? k( + v.MISSING_PEER_DEPENDENCY, + `${ + o.name + } tried to access ${t} (a peer dependency) but it isn't provided by your application; this makes the require call ambiguous and unsound.\n\nRequired package: ${t} (via "${n}")\nRequired by: ${ + o.name + }@${o.reference} (via ${s})\n${e + .map((e) => `Ancestor breaking the chain: ${e.name}@${e.reference}\n`) + .join('')}\n`, + { + request: n, + issuer: s, + issuerLocator: Object.assign({}, o), + dependencyName: t, + brokenAncestors: e, + } + ) + : k( + v.MISSING_PEER_DEPENDENCY, + `${ + o.name + } tried to access ${t} (a peer dependency) but it isn't provided by its ancestors; this makes the require call ambiguous and unsound.\n\nRequired package: ${t} (via "${n}")\nRequired by: ${ + o.name + }@${o.reference} (via ${s})\n${e + .map((e) => `Ancestor breaking the chain: ${e.name}@${e.reference}\n`) + .join('')}\n`, + { + request: n, + issuer: s, + issuerLocator: Object.assign({}, o), + dependencyName: t, + brokenAncestors: e, + } + ); + } + else + void 0 === A && + (l = C(o) + ? k( + v.UNDECLARED_DEPENDENCY, + `Your application tried to access ${t}, but it isn't declared in your dependencies; this makes the require call ambiguous and unsound.\n\nRequired package: ${t} (via "${n}")\nRequired by: ${s}\n`, + { request: n, issuer: s, dependencyName: t } + ) + : k( + v.UNDECLARED_DEPENDENCY, + `${o.name} tried to access ${t}, but it isn't declared in its dependencies; this makes the require call ambiguous and unsound.\n\nRequired package: ${t} (via "${n}")\nRequired by: ${o.name}@${o.reference} (via ${s})\n`, + { + request: n, + issuer: s, + issuerLocator: Object.assign({}, o), + dependencyName: t, + } + )); + if (null == A) { + if (null === u || null === l) + throw l || new Error('Assertion failed: Expected an error to have been set'); + A = u; + const e = l.message.replace(/\n.*/g, ''); + (l.message = e), c.has(e) || (c.add(e), process.emitWarning(l)); + } + const f = Array.isArray(A) + ? { name: A[0], reference: A[1] } + : { name: t, reference: A }, + p = d(f); + if (!p.packageLocation) + throw k( + v.MISSING_DEPENDENCY, + `A dependency seems valid but didn't get installed for some reason. This might be caused by a partial install, such as dev vs prod.\n\nRequired package: ${f.name}@${f.reference} (via "${n}")\nRequired by: ${o.name}@${o.reference} (via ${s})\n`, + { request: n, issuer: s, dependencyLocator: Object.assign({}, f) } + ); + const I = B.y1.resolve(e.basePath, p.packageLocation); + h = i ? B.y1.resolve(I, i) : I; + } else { + if (B.y1.isAbsolute(n)) h = B.y1.normalize(n); + else { + if (!s) + throw k( + v.API_ERROR, + "The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute", + { request: n, issuer: s } + ); + const e = B.y1.resolve(s); + h = s.match(A) + ? B.y1.normalize(B.y1.join(e, n)) + : B.y1.normalize(B.y1.join(B.y1.dirname(e), n)); + } + y(h); + } + return B.y1.normalize(h); + } + function Q(e, { extensions: r = Object.keys(b.Module._extensions) } = {}) { + const n = [], + i = (function e(r, n, { extensions: i }) { + let o; + try { + n.push(r), (o = t.fakeFs.statSync(r)); + } catch (e) {} + if (o && !o.isDirectory()) return t.fakeFs.realpathSync(r); + if (o && o.isDirectory()) { + let o, s; + try { + o = JSON.parse(t.fakeFs.readFileSync(B.y1.join(r, 'package.json'), 'utf8')); + } catch (e) {} + if ((o && o.main && (s = B.y1.resolve(r, o.main)), s && s !== r)) { + const t = e(s, n, { extensions: i }); + if (null !== t) return t; + } + } + for (let e = 0, o = i.length; e < o; e++) { + const o = `${r}${i[e]}`; + if ((n.push(o), t.fakeFs.existsSync(o))) return o; + } + if (o && o.isDirectory()) + for (let e = 0, o = i.length; e < o; e++) { + const o = B.y1.format({ dir: r, name: 'index', ext: i[e] }); + if ((n.push(o), t.fakeFs.existsSync(o))) return o; + } + return null; + })(e, n, { extensions: r }); + if (i) return B.y1.normalize(i); + throw k( + v.QUALIFIED_PATH_RESOLUTION_FAILED, + `Qualified path resolution failed - none of the candidates can be found on the disk.\n\nSource path: ${e}\n${n + .map((e) => `Rejected candidate: ${e}\n`) + .join('')}`, + { unqualifiedPath: e } + ); + } + return { + VERSIONS: { std: 3, resolveVirtual: 1 }, + topLevel: { name: null, reference: null }, + getLocator: (e, t) => + Array.isArray(t) ? { name: t[0], reference: t[1] } : { name: e, reference: t }, + getDependencyTreeRoots: () => [...e.dependencyTreeRoots], + getPackageInformation: (e) => { + const t = I(e); + if (null === t) return null; + const r = B.cS.fromPortablePath(t.packageLocation); + return { ...t, packageLocation: r }; + }, + findPackageLocator: (e) => y(B.cS.toPortablePath(e)), + resolveToUnqualified: p('resolveToUnqualified', (e, t, r) => { + const n = null !== t ? B.cS.toPortablePath(t) : null, + i = w(B.cS.toPortablePath(e), n, r); + return null === i ? null : B.cS.fromPortablePath(i); + }), + resolveUnqualified: p('resolveUnqualified', (e, t) => + B.cS.fromPortablePath(Q(B.cS.toPortablePath(e), t)) + ), + resolveRequest: p('resolveRequest', (e, t, r) => { + const n = null !== t ? B.cS.toPortablePath(t) : null, + i = (function (e, t, { considerBuiltins: r, extensions: n } = {}) { + const i = w(e, t, { considerBuiltins: r }); + if (null === i) return null; + try { + return Q(i, { extensions: n }); + } catch (r) { + throw ( + ('QUALIFIED_PATH_RESOLUTION_FAILED' === r.pnpCode && + Object.assign(r.data, { request: e, issuer: t }), + r) + ); + } + })(B.cS.toPortablePath(e), n, r); + return null === i ? null : B.cS.fromPortablePath(i); + }), + resolveVirtual: p('resolveVirtual', (e) => { + const t = (function (e) { + const t = B.y1.normalize(e), + r = D.p.resolveVirtual(t); + return r !== t ? r : null; + })(B.cS.toPortablePath(e)); + return null !== t ? B.cS.fromPortablePath(t) : null; + }), + }; + } + (0, w.promisify)(y.readFile); + const F = (e, t, r) => + x(Q(f(e), { basePath: t }), { fakeFs: r, pnpapiResolution: B.cS.join(t, '.pnp.js') }); + }, + 43982: (e, t, r) => { + 'use strict'; + r.r(t), r.d(t, { execute: () => F }); + var n, + i = r(46009), + o = r(56537), + s = r(39725), + A = r(55125), + a = r(19347), + c = r.n(a), + u = r(92413), + l = r(67566), + h = r.n(l); + function g() {} + !(function (e) { + (e[(e.STDOUT = 1)] = 'STDOUT'), (e[(e.STDERR = 2)] = 'STDERR'); + })(n || (n = {})); + let f = 0; + class p { + constructor(e) { + this.stream = e; + } + close() {} + get() { + return this.stream; + } + } + class d { + constructor() { + this.stream = null; + } + close() { + if (null === this.stream) throw new Error('Assertion failed: No stream attached'); + this.stream.end(); + } + attach(e) { + this.stream = e; + } + get() { + if (null === this.stream) throw new Error('Assertion failed: No stream attached'); + return this.stream; + } + } + class C { + constructor(e, t) { + (this.stdin = null), + (this.stdout = null), + (this.stderr = null), + (this.pipe = null), + (this.ancestor = e), + (this.implementation = t); + } + static start(e, { stdin: t, stdout: r, stderr: n }) { + const i = new C(null, e); + return (i.stdin = t), (i.stdout = r), (i.stderr = n), i; + } + pipeTo(e, t = n.STDOUT) { + const r = new C(this, e), + i = new d(); + return ( + (r.pipe = i), + (r.stdout = this.stdout), + (r.stderr = this.stderr), + (t & n.STDOUT) === n.STDOUT + ? (this.stdout = i) + : null !== this.ancestor && (this.stderr = this.ancestor.stdout), + (t & n.STDERR) === n.STDERR + ? (this.stderr = i) + : null !== this.ancestor && (this.stderr = this.ancestor.stderr), + r + ); + } + async exec() { + const e = ['ignore', 'ignore', 'ignore']; + if (this.pipe) e[0] = 'pipe'; + else { + if (null === this.stdin) + throw new Error('Assertion failed: No input stream registered'); + e[0] = this.stdin.get(); + } + let t, r; + if (null === this.stdout) + throw new Error('Assertion failed: No output stream registered'); + if (((t = this.stdout), (e[1] = t.get()), null === this.stderr)) + throw new Error('Assertion failed: No error stream registered'); + (r = this.stderr), (e[2] = r.get()); + const n = this.implementation(e); + return ( + this.pipe && this.pipe.attach(n.stdin), + await n.promise.then((e) => (t.close(), r.close(), e)) + ); + } + async run() { + const e = []; + for (let t = this; t; t = t.ancestor) e.push(t.exec()); + return (await Promise.all(e))[0]; + } + } + function E(e, t) { + return C.start(e, t); + } + function I(e, t = {}) { + const r = { ...e, ...t }; + return ( + (r.environment = { ...e.environment, ...t.environment }), + (r.variables = { ...e.variables, ...t.variables }), + r + ); + } + const m = new Map([ + [ + 'cd', + async ([e, ...t], r, n) => { + const s = i.y1.resolve(n.cwd, i.cS.toPortablePath(e)); + return (await o.xfs.statPromise(s)).isDirectory() + ? ((n.cwd = s), 0) + : (n.stderr.write('cd: not a directory\n'), 1); + }, + ], + ['pwd', async (e, t, r) => (r.stdout.write(i.cS.fromPortablePath(r.cwd) + '\n'), 0)], + ['true', async (e, t, r) => 0], + ['false', async (e, t, r) => 1], + ['exit', async ([e, ...t], r, n) => (n.exitCode = parseInt(e, 10))], + ['echo', async (e, t, r) => (r.stdout.write(e.join(' ') + '\n'), 0)], + [ + '__ysh_run_procedure', + async (e, t, r) => { + const n = r.procedures[e[0]]; + return await E(n, { + stdin: new p(r.stdin), + stdout: new p(r.stdout), + stderr: new p(r.stderr), + }).run(); + }, + ], + [ + '__ysh_set_redirects', + async (e, t, r) => { + let n = r.stdin, + s = r.stdout; + const A = r.stderr, + a = [], + c = []; + let l = 0; + for (; '--' !== e[l]; ) { + const t = e[l++], + n = Number(e[l++]), + s = l + n; + for (let n = l; n < s; ++l, ++n) + switch (t) { + case '<': + a.push(() => + o.xfs.createReadStream(i.y1.resolve(r.cwd, i.cS.toPortablePath(e[n]))) + ); + break; + case '<<<': + a.push(() => { + const t = new u.PassThrough(); + return ( + process.nextTick(() => { + t.write(e[n] + '\n'), t.end(); + }), + t + ); + }); + break; + case '>': + c.push( + o.xfs.createWriteStream(i.y1.resolve(r.cwd, i.cS.toPortablePath(e[n]))) + ); + break; + case '>>': + c.push( + o.xfs.createWriteStream(i.y1.resolve(r.cwd, i.cS.toPortablePath(e[n])), { + flags: 'a', + }) + ); + } + } + if (a.length > 0) { + const e = new u.PassThrough(); + n = e; + const t = (r) => { + if (r === a.length) e.end(); + else { + const n = a[r](); + n.pipe(e, { end: !1 }), + n.on('end', () => { + t(r + 1); + }); + } + }; + t(0); + } + if (c.length > 0) { + const e = new u.PassThrough(); + s = e; + for (const t of c) e.pipe(t); + } + const h = await E(Q(e.slice(l + 1), t, r), { + stdin: new p(n), + stdout: new p(s), + stderr: new p(A), + }).run(); + return ( + await Promise.all( + c.map( + (e) => + new Promise((t) => { + e.on('close', () => { + t(); + }), + e.end(); + }) + ) + ), + h + ); + }, + ], + ]); + async function y(e, t, r) { + const n = [], + i = new u.PassThrough(); + return ( + i.on('data', (e) => n.push(e)), + await S(e, t, I(r, { stdout: i })), + Buffer.concat(n) + .toString() + .replace(/[\r\n]+$/, '') + ); + } + async function w(e, t, r) { + const n = e.map(async (e) => { + const n = await B(e.args, t, r); + return { name: e.name, value: n.join(' ') }; + }); + return (await Promise.all(n)).reduce((e, t) => ((e[t.name] = t.value), e), {}); + } + async function B(e, t, r) { + const n = new Map(), + i = []; + let o = []; + const s = (e) => e.match(/[^ \r\n\t]+/g) || [], + A = (e) => { + o.push(e); + }, + a = () => { + o.length > 0 && i.push(o.join('')), (o = []); + }, + c = (e) => { + A(e), a(); + }, + u = (e, t) => { + let r = n.get(e); + void 0 === r && n.set(e, (r = [])), r.push(t); + }; + for (const n of e) { + switch (n.type) { + case 'redirection': + { + const e = await B(n.args, t, r); + for (const t of e) u(n.subtype, t); + } + break; + case 'argument': + for (const e of n.segments) + switch (e.type) { + case 'text': + A(e.text); + break; + case 'glob': + { + const n = await t.glob.match(e.pattern, { cwd: r.cwd }); + if (!n.length) + throw new Error( + `No file matches found: "${e.pattern}". Note: Glob patterns currently only support files that exist on the filesystem (Help Wanted)` + ); + for (const e of n.sort()) c(e); + } + break; + case 'shell': + { + const n = await y(e.shell, t, r); + if (e.quoted) A(n); + else { + const e = s(n); + for (let t = 0; t < e.length - 1; ++t) c(e[t]); + A(e[e.length - 1]); + } + } + break; + case 'variable': + switch (e.name) { + case '#': + A(String(t.args.length)); + break; + case '@': + if (e.quoted) for (const e of t.args) c(e); + else + for (const e of t.args) { + const t = s(e); + for (let e = 0; e < t.length - 1; ++e) c(t[e]); + A(t[t.length - 1]); + } + break; + case '*': + { + const r = t.args.join(' '); + if (e.quoted) A(r); + else for (const e of s(r)) c(e); + } + break; + default: { + const n = parseInt(e.name, 10); + if (Number.isFinite(n)) { + if (!(n >= 0 && n < t.args.length)) + throw new Error('Unbound argument #' + n); + A(t.args[n]); + } else if (Object.prototype.hasOwnProperty.call(r.variables, e.name)) + A(r.variables[e.name]); + else if (Object.prototype.hasOwnProperty.call(r.environment, e.name)) + A(r.environment[e.name]); + else { + if (!e.defaultValue) throw new Error(`Unbound variable "${e.name}"`); + A((await B(e.defaultValue, t, r)).join(' ')); + } + } + } + } + } + a(); + } + if (n.size > 0) { + const e = []; + for (const [t, r] of n.entries()) e.splice(e.length, 0, t, String(r.length), ...r); + i.splice(0, 0, '__ysh_set_redirects', ...e, '--'); + } + return i; + } + function Q(e, t, r) { + t.builtins.has(e[0]) || (e = ['command', ...e]); + const n = i.cS.fromPortablePath(r.cwd); + let o = r.environment; + void 0 !== o.PWD && (o = { ...o, PWD: n }); + const [s, ...A] = e; + if ('command' === s) + return (function (e, t, r, n) { + return (r) => { + const i = r[0] instanceof u.Transform ? 'pipe' : r[0], + o = r[1] instanceof u.Transform ? 'pipe' : r[1], + s = r[2] instanceof u.Transform ? 'pipe' : r[2], + A = h()(e, t, { ...n, stdio: [i, o, s] }); + return ( + 0 == f++ && process.on('SIGINT', g), + r[0] instanceof u.Transform && r[0].pipe(A.stdin), + r[1] instanceof u.Transform && A.stdout.pipe(r[1], { end: !1 }), + r[2] instanceof u.Transform && A.stderr.pipe(r[2], { end: !1 }), + { + stdin: A.stdin, + promise: new Promise((t) => { + A.on('error', (n) => { + switch ((0 == --f && process.off('SIGINT', g), n.code)) { + case 'ENOENT': + r[2].write(`command not found: ${e}\n`), t(127); + break; + case 'EACCESS': + r[2].write(`permission denied: ${e}\n`), t(128); + break; + default: + r[2].write(`uncaught error: ${n.message}\n`), t(1); + } + }), + A.on('exit', (e) => { + 0 == --f && process.off('SIGINT', g), t(null !== e ? e : 129); + }); + }), + } + ); + }; + })(A[0], A.slice(1), 0, { cwd: n, env: o }); + const a = t.builtins.get(s); + if (void 0 === a) throw new Error(`Assertion failed: A builtin should exist for "${s}"`); + return (function (e) { + return (t) => { + const r = 'pipe' === t[0] ? new u.PassThrough() : t[0]; + return { + stdin: r, + promise: Promise.resolve().then(() => e({ stdin: r, stdout: t[1], stderr: t[2] })), + }; + }; + })( + async ({ stdin: e, stdout: n, stderr: i }) => ( + (r.stdin = e), (r.stdout = n), (r.stderr = i), await a(A, t, r) + ) + ); + } + function v(e, t, r) { + return (n) => { + const i = new u.PassThrough(); + return { stdin: i, promise: S(e, t, I(r, { stdin: i })) }; + }; + } + async function D(e, t, r) { + let n = e, + i = null, + o = null; + for (; n; ) { + const e = n.then ? { ...r } : r; + let s; + switch (n.type) { + case 'command': + { + const i = await B(n.args, t, r), + o = await w(n.envs, t, r); + s = n.envs.length ? Q(i, t, I(e, { environment: o })) : Q(i, t, e); + } + break; + case 'subshell': + { + const i = await B(n.args, t, r), + o = v(n.subshell, t, e); + if (0 === i.length) s = o; + else { + let r; + do { + r = String(Math.random()); + } while (Object.prototype.hasOwnProperty.call(e.procedures, r)); + (e.procedures = { ...e.procedures }), + (e.procedures[r] = o), + (s = Q([...i, '__ysh_run_procedure', r], t, e)); + } + } + break; + case 'envs': { + const i = await w(n.envs, t, r); + (e.environment = { ...e.environment, ...i }), (s = Q(['true'], t, e)); + } + } + if (void 0 === s) + throw new Error('Assertion failed: An action should have been generated'); + if (null === i) + o = E(s, { stdin: new p(e.stdin), stdout: new p(e.stdout), stderr: new p(e.stderr) }); + else { + if (null === o) throw new Error('The execution pipeline should have been setup'); + switch (i) { + case '|': + case '|&': + o = o.pipeTo(s); + } + } + n.then ? ((i = n.then.type), (n = n.then.chain)) : (n = null); + } + if (null === o) + throw new Error('Assertion failed: The execution pipeline should have been setup'); + return await o.run(); + } + async function b(e, t, r) { + if (!e.then) return await D(e.chain, t, r); + const n = await D(e.chain, t, r); + if (null !== r.exitCode) return r.exitCode; + switch (((r.variables['?'] = String(n)), e.then.type)) { + case '&&': + return 0 === n ? await b(e.then.line, t, r) : n; + case '||': + return 0 !== n ? await b(e.then.line, t, r) : n; + default: + throw new Error(`Unsupported command type: "${e.then.type}"`); + } + } + async function S(e, t, r) { + let n = 0; + for (const i of e) { + if (((n = await b(i, t, r)), null !== r.exitCode)) return r.exitCode; + r.variables['?'] = String(n); + } + return n; + } + function k(e) { + switch (e.type) { + case 'redirection': + return e.args.some((e) => k(e)); + case 'argument': + return e.segments.some((e) => + (function (e) { + switch (e.type) { + case 'variable': + return ( + '@' === e.name || + '#' === e.name || + '*' === e.name || + Number.isFinite(parseInt(e.name, 10)) || + (!!e.defaultValue && e.defaultValue.some((e) => k(e))) + ); + case 'shell': + return x(e.shell); + default: + return !1; + } + })(e) + ); + default: + throw new Error('Unreacheable'); + } + } + function x(e) { + return e.some((e) => { + for (; e; ) { + let t = e.chain; + for (; t; ) { + let e; + switch (t.type) { + case 'subshell': + e = x(t.subshell); + break; + case 'command': + e = t.envs.some((e) => e.args.some((e) => k(e))) || t.args.some((e) => k(e)); + } + if (e) return !0; + if (!t.then) break; + t = t.then.chain; + } + if (!e.then) break; + e = e.then.line; + } + return !1; + }); + } + async function F( + e, + t = [], + { + builtins: r = {}, + cwd: n = i.cS.toPortablePath(process.cwd()), + env: a = process.env, + stdin: l = process.stdin, + stdout: h = process.stdout, + stderr: g = process.stderr, + variables: f = {}, + glob: p = { + isGlobPattern: c().isDynamicPattern, + match: (e, { cwd: t, fs: r = o.xfs }) => + c()(e, { cwd: i.cS.fromPortablePath(t), fs: new s.i(r) }), + }, + } = {} + ) { + const d = {}; + for (const [e, t] of Object.entries(a)) void 0 !== t && (d[e] = t); + const C = new Map(m); + for (const [e, t] of Object.entries(r)) C.set(e, t); + null === l && (l = new u.PassThrough()).end(); + const E = (0, A.parseShell)(e, p); + if (!x(E) && E.length > 0 && t.length > 0) { + let e = E[E.length - 1]; + for (; e.then; ) e = e.then.line; + let r = e.chain; + for (; r.then; ) r = r.then.chain; + 'command' === r.type && + (r.args = r.args.concat( + t.map((e) => ({ type: 'argument', segments: [{ type: 'text', text: e }] })) + )); + } + return await S( + E, + { args: t, builtins: C, initialStdin: l, initialStdout: h, initialStderr: g, glob: p }, + { + cwd: n, + environment: d, + exitCode: null, + procedures: {}, + stdin: l, + stdout: h, + stderr: g, + variables: Object.assign(Object.create(f), { '?': 0 }), + } + ); + } + }, + 45330: (e, t, r) => { + t.e = () => ({ + modules: new Map([ + [r(60306).name, r(95397)], + [r(73841).u2, r(84132)], + [r(4670).u2, r(56537)], + [r(81386).u2, r(29486)], + [r(54920).u2, r(55125)], + [r(75418).u2, r(43982)], + [r(75426).u2, r(17278)], + [r(89153).u2, r(53887)], + [r(38422).u2, r(15966)], + [r(37904).u2, r(72926)], + [r(49775).u2, r(80150)], + [r(35729).u2, r(10420)], + [r(17508).u2, r(41466)], + [r(84779).u2, r(10284)], + [r(88454).u2, r(23599)], + [r(91953).u2, r(21754)], + [r(63756).u2, r(74230)], + [r(23100).u2, r(86161)], + [r(47047).u2, r(8149)], + [r(67310).u2, r(86717)], + [r(31880).u2, r(94573)], + [r(74617).u2, r(5973)], + [r(12437).u2, r(5698)], + [r(8211).u2, r(5780)], + ]), + plugins: new Set([ + r(37904).u2, + r(49775).u2, + r(35729).u2, + r(17508).u2, + r(84779).u2, + r(88454).u2, + r(91953).u2, + r(63756).u2, + r(23100).u2, + r(47047).u2, + r(67310).u2, + r(31880).u2, + r(74617).u2, + r(12437).u2, + r(8211).u2, + ]), + }); + }, + 29148: (e, t, r) => { + const n = r(74988), + i = /^(.*?)(\x1b\[[^m]+m|\x1b\]8;;.*?(\x1b\\|\u0007))/, + o = new n(); + e.exports = (e, t = 0, r = e.length) => { + if (t < 0 || r < 0) + throw new RangeError("Negative indices aren't supported by this implementation"); + const n = r - t; + let s = '', + A = 0, + a = 0; + for (; e.length > 0; ) { + const r = e.match(i) || [e, e, void 0]; + let c = o.splitGraphemes(r[1]); + const u = Math.min(t - A, c.length); + c = c.slice(u); + const l = Math.min(n - a, c.length); + (s += c.slice(0, l).join('')), + (A += u), + (a += l), + void 0 !== r[2] && (s += r[2]), + (e = e.slice(r[0].length)); + } + return s; + }; + }, + 72912: (e) => { + function t() { + return ( + (e.exports = t = + Object.assign || + function (e) { + for (var t = 1; t < arguments.length; t++) { + var r = arguments[t]; + for (var n in r) Object.prototype.hasOwnProperty.call(r, n) && (e[n] = r[n]); + } + return e; + }), + t.apply(this, arguments) + ); + } + e.exports = t; + }, + 60087: (e) => { + e.exports = function (e) { + return e && e.__esModule ? e : { default: e }; + }; + }, + 19228: (e, t, r) => { + var n = r(54694); + function i() { + if ('function' != typeof WeakMap) return null; + var e = new WeakMap(); + return ( + (i = function () { + return e; + }), + e + ); + } + e.exports = function (e) { + if (e && e.__esModule) return e; + if (null === e || ('object' !== n(e) && 'function' != typeof e)) return { default: e }; + var t = i(); + if (t && t.has(e)) return t.get(e); + var r = {}, + o = Object.defineProperty && Object.getOwnPropertyDescriptor; + for (var s in e) + if (Object.prototype.hasOwnProperty.call(e, s)) { + var A = o ? Object.getOwnPropertyDescriptor(e, s) : null; + A && (A.get || A.set) ? Object.defineProperty(r, s, A) : (r[s] = e[s]); + } + return (r.default = e), t && t.set(e, r), r; + }; + }, + 74943: (e) => { + e.exports = function (e, t) { + if (null == e) return {}; + var r, + n, + i = {}, + o = Object.keys(e); + for (n = 0; n < o.length; n++) (r = o[n]), t.indexOf(r) >= 0 || (i[r] = e[r]); + return i; + }; + }, + 62407: (e) => { + e.exports = function (e, t) { + return t || (t = e.slice(0)), (e.raw = t), e; + }; + }, + 54694: (e) => { + function t(r) { + return ( + 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator + ? (e.exports = t = function (e) { + return typeof e; + }) + : (e.exports = t = function (e) { + return e && + 'function' == typeof Symbol && + e.constructor === Symbol && + e !== Symbol.prototype + ? 'symbol' + : typeof e; + }), + t(r) + ); + } + e.exports = t; + }, + 96117: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(35747); + (t.FILE_SYSTEM_ADAPTER = { + lstat: n.lstat, + stat: n.stat, + lstatSync: n.lstatSync, + statSync: n.statSync, + readdir: n.readdir, + readdirSync: n.readdirSync, + }), + (t.createFileSystemAdapter = function (e) { + return void 0 === e + ? t.FILE_SYSTEM_ADAPTER + : Object.assign(Object.assign({}, t.FILE_SYSTEM_ADAPTER), e); + }); + }, + 79774: (e, t) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const r = process.versions.node.split('.'), + n = parseInt(r[0], 10), + i = parseInt(r[1], 10), + o = n > 10, + s = 10 === n && i >= 10; + t.IS_SUPPORT_READDIR_WITH_FILE_TYPES = o || s; + }, + 85670: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(31020), + i = r(35516), + o = r(38844); + function s(e = {}) { + return e instanceof o.default ? e : new o.default(e); + } + (t.Settings = o.default), + (t.scandir = function (e, t, r) { + if ('function' == typeof t) return n.read(e, s(), t); + n.read(e, s(t), r); + }), + (t.scandirSync = function (e, t) { + const r = s(t); + return i.read(e, r); + }); + }, + 31020: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(53403), + i = r(69078), + o = r(79774), + s = r(65225); + function A(e, t, r) { + t.fs.readdir(e, { withFileTypes: !0 }, (n, o) => { + if (null !== n) return c(r, n); + const A = o.map((r) => ({ + dirent: r, + name: r.name, + path: `${e}${t.pathSegmentSeparator}${r.name}`, + })); + if (!t.followSymbolicLinks) return u(r, A); + const a = A.map((e) => + (function (e, t) { + return (r) => { + if (!e.dirent.isSymbolicLink()) return r(null, e); + t.fs.stat(e.path, (n, i) => + null !== n + ? t.throwErrorOnBrokenSymbolicLink + ? r(n) + : r(null, e) + : ((e.dirent = s.fs.createDirentFromStats(e.name, i)), r(null, e)) + ); + }; + })(e, t) + ); + i(a, (e, t) => { + if (null !== e) return c(r, e); + u(r, t); + }); + }); + } + function a(e, t, r) { + t.fs.readdir(e, (o, A) => { + if (null !== o) return c(r, o); + const a = A.map((r) => `${e}${t.pathSegmentSeparator}${r}`), + l = a.map((e) => (r) => n.stat(e, t.fsStatSettings, r)); + i(l, (e, n) => { + if (null !== e) return c(r, e); + const i = []; + A.forEach((e, r) => { + const o = n[r], + A = { name: e, path: a[r], dirent: s.fs.createDirentFromStats(e, o) }; + t.stats && (A.stats = o), i.push(A); + }), + u(r, i); + }); + }); + } + function c(e, t) { + e(t); + } + function u(e, t) { + e(null, t); + } + (t.read = function (e, t, r) { + return !t.stats && o.IS_SUPPORT_READDIR_WITH_FILE_TYPES ? A(e, t, r) : a(e, t, r); + }), + (t.readdirWithFileTypes = A), + (t.readdir = a); + }, + 35516: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(53403), + i = r(79774), + o = r(65225); + function s(e, t) { + return t.fs.readdirSync(e, { withFileTypes: !0 }).map((r) => { + const n = { dirent: r, name: r.name, path: `${e}${t.pathSegmentSeparator}${r.name}` }; + if (n.dirent.isSymbolicLink() && t.followSymbolicLinks) + try { + const e = t.fs.statSync(n.path); + n.dirent = o.fs.createDirentFromStats(n.name, e); + } catch (e) { + if (t.throwErrorOnBrokenSymbolicLink) throw e; + } + return n; + }); + } + function A(e, t) { + return t.fs.readdirSync(e).map((r) => { + const i = `${e}${t.pathSegmentSeparator}${r}`, + s = n.statSync(i, t.fsStatSettings), + A = { name: r, path: i, dirent: o.fs.createDirentFromStats(r, s) }; + return t.stats && (A.stats = s), A; + }); + } + (t.read = function (e, t) { + return !t.stats && i.IS_SUPPORT_READDIR_WITH_FILE_TYPES ? s(e, t) : A(e, t); + }), + (t.readdirWithFileTypes = s), + (t.readdir = A); + }, + 38844: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(85622), + i = r(53403), + o = r(96117); + t.default = class { + constructor(e = {}) { + (this._options = e), + (this.followSymbolicLinks = this._getValue(this._options.followSymbolicLinks, !1)), + (this.fs = o.createFileSystemAdapter(this._options.fs)), + (this.pathSegmentSeparator = this._getValue( + this._options.pathSegmentSeparator, + n.sep + )), + (this.stats = this._getValue(this._options.stats, !1)), + (this.throwErrorOnBrokenSymbolicLink = this._getValue( + this._options.throwErrorOnBrokenSymbolicLink, + !0 + )), + (this.fsStatSettings = new i.Settings({ + followSymbolicLink: this.followSymbolicLinks, + fs: this.fs, + throwErrorOnBrokenSymbolicLink: this.throwErrorOnBrokenSymbolicLink, + })); + } + _getValue(e, t) { + return void 0 === e ? t : e; + } + }; + }, + 72156: (e, t) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + class r { + constructor(e, t) { + (this.name = e), + (this.isBlockDevice = t.isBlockDevice.bind(t)), + (this.isCharacterDevice = t.isCharacterDevice.bind(t)), + (this.isDirectory = t.isDirectory.bind(t)), + (this.isFIFO = t.isFIFO.bind(t)), + (this.isFile = t.isFile.bind(t)), + (this.isSocket = t.isSocket.bind(t)), + (this.isSymbolicLink = t.isSymbolicLink.bind(t)); + } + } + t.createDirentFromStats = function (e, t) { + return new r(e, t); + }; + }, + 65225: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(72156); + t.fs = n; + }, + 71208: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(35747); + (t.FILE_SYSTEM_ADAPTER = { + lstat: n.lstat, + stat: n.stat, + lstatSync: n.lstatSync, + statSync: n.statSync, + }), + (t.createFileSystemAdapter = function (e) { + return void 0 === e + ? t.FILE_SYSTEM_ADAPTER + : Object.assign(Object.assign({}, t.FILE_SYSTEM_ADAPTER), e); + }); + }, + 53403: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(17790), + i = r(34846), + o = r(92687); + function s(e = {}) { + return e instanceof o.default ? e : new o.default(e); + } + (t.Settings = o.default), + (t.stat = function (e, t, r) { + if ('function' == typeof t) return n.read(e, s(), t); + n.read(e, s(t), r); + }), + (t.statSync = function (e, t) { + const r = s(t); + return i.read(e, r); + }); + }, + 17790: (e, t) => { + 'use strict'; + function r(e, t) { + e(t); + } + function n(e, t) { + e(null, t); + } + Object.defineProperty(t, '__esModule', { value: !0 }), + (t.read = function (e, t, i) { + t.fs.lstat(e, (o, s) => + null !== o + ? r(i, o) + : s.isSymbolicLink() && t.followSymbolicLink + ? void t.fs.stat(e, (e, o) => { + if (null !== e) return t.throwErrorOnBrokenSymbolicLink ? r(i, e) : n(i, s); + t.markSymbolicLink && (o.isSymbolicLink = () => !0), n(i, o); + }) + : n(i, s) + ); + }); + }, + 34846: (e, t) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }), + (t.read = function (e, t) { + const r = t.fs.lstatSync(e); + if (!r.isSymbolicLink() || !t.followSymbolicLink) return r; + try { + const r = t.fs.statSync(e); + return t.markSymbolicLink && (r.isSymbolicLink = () => !0), r; + } catch (e) { + if (!t.throwErrorOnBrokenSymbolicLink) return r; + throw e; + } + }); + }, + 92687: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(71208); + t.default = class { + constructor(e = {}) { + (this._options = e), + (this.followSymbolicLink = this._getValue(this._options.followSymbolicLink, !0)), + (this.fs = n.createFileSystemAdapter(this._options.fs)), + (this.markSymbolicLink = this._getValue(this._options.markSymbolicLink, !1)), + (this.throwErrorOnBrokenSymbolicLink = this._getValue( + this._options.throwErrorOnBrokenSymbolicLink, + !0 + )); + } + _getValue(e, t) { + return void 0 === e ? t : e; + } + }; + }, + 72897: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(42369), + i = r(27696), + o = r(22111), + s = r(14954); + function A(e = {}) { + return e instanceof s.default ? e : new s.default(e); + } + (t.Settings = s.default), + (t.walk = function (e, t, r) { + if ('function' == typeof t) return new n.default(e, A()).read(t); + new n.default(e, A(t)).read(r); + }), + (t.walkSync = function (e, t) { + const r = A(t); + return new o.default(e, r).read(); + }), + (t.walkStream = function (e, t) { + const r = A(t); + return new i.default(e, r).read(); + }); + }, + 42369: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(98566); + t.default = class { + constructor(e, t) { + (this._root = e), + (this._settings = t), + (this._reader = new n.default(this._root, this._settings)), + (this._storage = new Set()); + } + read(e) { + this._reader.onError((t) => { + !(function (e, t) { + e(t); + })(e, t); + }), + this._reader.onEntry((e) => { + this._storage.add(e); + }), + this._reader.onEnd(() => { + !(function (e, t) { + e(null, t); + })(e, [...this._storage]); + }), + this._reader.read(); + } + }; + }, + 27696: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(92413), + i = r(98566); + t.default = class { + constructor(e, t) { + (this._root = e), + (this._settings = t), + (this._reader = new i.default(this._root, this._settings)), + (this._stream = new n.Readable({ + objectMode: !0, + read: () => {}, + destroy: this._reader.destroy.bind(this._reader), + })); + } + read() { + return ( + this._reader.onError((e) => { + this._stream.emit('error', e); + }), + this._reader.onEntry((e) => { + this._stream.push(e); + }), + this._reader.onEnd(() => { + this._stream.push(null); + }), + this._reader.read(), + this._stream + ); + } + }; + }, + 22111: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(97835); + t.default = class { + constructor(e, t) { + (this._root = e), + (this._settings = t), + (this._reader = new n.default(this._root, this._settings)); + } + read() { + return this._reader.read(); + } + }; + }, + 98566: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(28614), + i = r(85670), + o = r(98360), + s = r(10750), + A = r(75504); + class a extends A.default { + constructor(e, t) { + super(e, t), + (this._settings = t), + (this._scandir = i.scandir), + (this._emitter = new n.EventEmitter()), + (this._queue = o(this._worker.bind(this), this._settings.concurrency)), + (this._isFatalError = !1), + (this._isDestroyed = !1), + (this._queue.drain = () => { + this._isFatalError || this._emitter.emit('end'); + }); + } + read() { + return ( + (this._isFatalError = !1), + (this._isDestroyed = !1), + setImmediate(() => { + this._pushToQueue(this._root, this._settings.basePath); + }), + this._emitter + ); + } + destroy() { + if (this._isDestroyed) throw new Error('The reader is already destroyed'); + (this._isDestroyed = !0), this._queue.killAndDrain(); + } + onEntry(e) { + this._emitter.on('entry', e); + } + onError(e) { + this._emitter.once('error', e); + } + onEnd(e) { + this._emitter.once('end', e); + } + _pushToQueue(e, t) { + const r = { directory: e, base: t }; + this._queue.push(r, (e) => { + null !== e && this._handleError(e); + }); + } + _worker(e, t) { + this._scandir(e.directory, this._settings.fsScandirSettings, (r, n) => { + if (null !== r) return t(r, void 0); + for (const t of n) this._handleEntry(t, e.base); + t(null, void 0); + }); + } + _handleError(e) { + s.isFatalError(this._settings, e) && + ((this._isFatalError = !0), (this._isDestroyed = !0), this._emitter.emit('error', e)); + } + _handleEntry(e, t) { + if (this._isDestroyed || this._isFatalError) return; + const r = e.path; + void 0 !== t && + (e.path = s.joinPathSegments(t, e.name, this._settings.pathSegmentSeparator)), + s.isAppliedFilter(this._settings.entryFilter, e) && this._emitEntry(e), + e.dirent.isDirectory() && + s.isAppliedFilter(this._settings.deepFilter, e) && + this._pushToQueue(r, e.path); + } + _emitEntry(e) { + this._emitter.emit('entry', e); + } + } + t.default = a; + }, + 10750: (e, t) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }), + (t.isFatalError = function (e, t) { + return null === e.errorFilter || !e.errorFilter(t); + }), + (t.isAppliedFilter = function (e, t) { + return null === e || e(t); + }), + (t.replacePathSegmentSeparator = function (e, t) { + return e.split(/[\\/]/).join(t); + }), + (t.joinPathSegments = function (e, t, r) { + return '' === e ? t : e + r + t; + }); + }, + 75504: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(10750); + t.default = class { + constructor(e, t) { + (this._root = e), + (this._settings = t), + (this._root = n.replacePathSegmentSeparator(e, t.pathSegmentSeparator)); + } + }; + }, + 97835: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(85670), + i = r(10750), + o = r(75504); + class s extends o.default { + constructor() { + super(...arguments), + (this._scandir = n.scandirSync), + (this._storage = new Set()), + (this._queue = new Set()); + } + read() { + return ( + this._pushToQueue(this._root, this._settings.basePath), + this._handleQueue(), + [...this._storage] + ); + } + _pushToQueue(e, t) { + this._queue.add({ directory: e, base: t }); + } + _handleQueue() { + for (const e of this._queue.values()) this._handleDirectory(e.directory, e.base); + } + _handleDirectory(e, t) { + try { + const r = this._scandir(e, this._settings.fsScandirSettings); + for (const e of r) this._handleEntry(e, t); + } catch (e) { + this._handleError(e); + } + } + _handleError(e) { + if (i.isFatalError(this._settings, e)) throw e; + } + _handleEntry(e, t) { + const r = e.path; + void 0 !== t && + (e.path = i.joinPathSegments(t, e.name, this._settings.pathSegmentSeparator)), + i.isAppliedFilter(this._settings.entryFilter, e) && this._pushToStorage(e), + e.dirent.isDirectory() && + i.isAppliedFilter(this._settings.deepFilter, e) && + this._pushToQueue(r, e.path); + } + _pushToStorage(e) { + this._storage.add(e); + } + } + t.default = s; + }, + 14954: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(85622), + i = r(85670); + t.default = class { + constructor(e = {}) { + (this._options = e), + (this.basePath = this._getValue(this._options.basePath, void 0)), + (this.concurrency = this._getValue(this._options.concurrency, 1 / 0)), + (this.deepFilter = this._getValue(this._options.deepFilter, null)), + (this.entryFilter = this._getValue(this._options.entryFilter, null)), + (this.errorFilter = this._getValue(this._options.errorFilter, null)), + (this.pathSegmentSeparator = this._getValue( + this._options.pathSegmentSeparator, + n.sep + )), + (this.fsScandirSettings = new i.Settings({ + followSymbolicLinks: this._options.followSymbolicLinks, + fs: this._options.fs, + pathSegmentSeparator: this._options.pathSegmentSeparator, + stats: this._options.stats, + throwErrorOnBrokenSymbolicLink: this._options.throwErrorOnBrokenSymbolicLink, + })); + } + _getValue(e, t) { + return void 0 === e ? t : e; + } + }; + }, + 8189: (e, t) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const { toString: r } = Object.prototype, + n = (e) => (t) => typeof t === e, + i = (e) => { + const t = r.call(e).slice(8, -1); + if (t) return t; + }, + o = (e) => (t) => i(t) === e; + function s(e) { + switch (e) { + case null: + return 'null'; + case !0: + case !1: + return 'boolean'; + } + switch (typeof e) { + case 'undefined': + return 'undefined'; + case 'string': + return 'string'; + case 'number': + return 'number'; + case 'bigint': + return 'bigint'; + case 'symbol': + return 'symbol'; + } + if (s.function_(e)) return 'Function'; + if (s.observable(e)) return 'Observable'; + if (s.array(e)) return 'Array'; + if (s.buffer(e)) return 'Buffer'; + const t = i(e); + if (t) return t; + if (e instanceof String || e instanceof Boolean || e instanceof Number) + throw new TypeError("Please don't use object wrappers for primitive types"); + return 'Object'; + } + (s.undefined = n('undefined')), (s.string = n('string')); + const A = n('number'); + (s.number = (e) => A(e) && !s.nan(e)), + (s.bigint = n('bigint')), + (s.function_ = n('function')), + (s.null_ = (e) => null === e), + (s.class_ = (e) => s.function_(e) && e.toString().startsWith('class ')), + (s.boolean = (e) => !0 === e || !1 === e), + (s.symbol = n('symbol')), + (s.numericString = (e) => + s.string(e) && !s.emptyStringOrWhitespace(e) && !Number.isNaN(Number(e))), + (s.array = Array.isArray), + (s.buffer = (e) => { + var t, r, n, i; + return ( + null !== + (i = + null === + (n = + null === (r = null === (t = e) || void 0 === t ? void 0 : t.constructor) || + void 0 === r + ? void 0 + : r.isBuffer) || void 0 === n + ? void 0 + : n.call(r, e)) && + void 0 !== i && + i + ); + }), + (s.nullOrUndefined = (e) => s.null_(e) || s.undefined(e)), + (s.object = (e) => !s.null_(e) && ('object' == typeof e || s.function_(e))), + (s.iterable = (e) => { + var t; + return s.function_(null === (t = e) || void 0 === t ? void 0 : t[Symbol.iterator]); + }), + (s.asyncIterable = (e) => { + var t; + return s.function_(null === (t = e) || void 0 === t ? void 0 : t[Symbol.asyncIterator]); + }), + (s.generator = (e) => s.iterable(e) && s.function_(e.next) && s.function_(e.throw)), + (s.asyncGenerator = (e) => + s.asyncIterable(e) && s.function_(e.next) && s.function_(e.throw)), + (s.nativePromise = (e) => o('Promise')(e)); + (s.promise = (e) => + s.nativePromise(e) || + ((e) => { + var t, r; + return ( + s.function_(null === (t = e) || void 0 === t ? void 0 : t.then) && + s.function_(null === (r = e) || void 0 === r ? void 0 : r.catch) + ); + })(e)), + (s.generatorFunction = o('GeneratorFunction')), + (s.asyncGeneratorFunction = (e) => 'AsyncGeneratorFunction' === i(e)), + (s.asyncFunction = (e) => 'AsyncFunction' === i(e)), + (s.boundFunction = (e) => s.function_(e) && !e.hasOwnProperty('prototype')), + (s.regExp = o('RegExp')), + (s.date = o('Date')), + (s.error = o('Error')), + (s.map = (e) => o('Map')(e)), + (s.set = (e) => o('Set')(e)), + (s.weakMap = (e) => o('WeakMap')(e)), + (s.weakSet = (e) => o('WeakSet')(e)), + (s.int8Array = o('Int8Array')), + (s.uint8Array = o('Uint8Array')), + (s.uint8ClampedArray = o('Uint8ClampedArray')), + (s.int16Array = o('Int16Array')), + (s.uint16Array = o('Uint16Array')), + (s.int32Array = o('Int32Array')), + (s.uint32Array = o('Uint32Array')), + (s.float32Array = o('Float32Array')), + (s.float64Array = o('Float64Array')), + (s.bigInt64Array = o('BigInt64Array')), + (s.bigUint64Array = o('BigUint64Array')), + (s.arrayBuffer = o('ArrayBuffer')), + (s.sharedArrayBuffer = o('SharedArrayBuffer')), + (s.dataView = o('DataView')), + (s.directInstanceOf = (e, t) => Object.getPrototypeOf(e) === t.prototype), + (s.urlInstance = (e) => o('URL')(e)), + (s.urlString = (e) => { + if (!s.string(e)) return !1; + try { + return new URL(e), !0; + } catch (e) { + return !1; + } + }), + (s.truthy = (e) => Boolean(e)), + (s.falsy = (e) => !e), + (s.nan = (e) => Number.isNaN(e)); + const a = new Set(['undefined', 'string', 'number', 'bigint', 'boolean', 'symbol']); + (s.primitive = (e) => s.null_(e) || a.has(typeof e)), + (s.integer = (e) => Number.isInteger(e)), + (s.safeInteger = (e) => Number.isSafeInteger(e)), + (s.plainObject = (e) => { + if ('Object' !== i(e)) return !1; + const t = Object.getPrototypeOf(e); + return null === t || t === Object.getPrototypeOf({}); + }); + const c = new Set([ + 'Int8Array', + 'Uint8Array', + 'Uint8ClampedArray', + 'Int16Array', + 'Uint16Array', + 'Int32Array', + 'Uint32Array', + 'Float32Array', + 'Float64Array', + 'BigInt64Array', + 'BigUint64Array', + ]); + s.typedArray = (e) => { + const t = i(e); + return void 0 !== t && c.has(t); + }; + (s.arrayLike = (e) => + !s.nullOrUndefined(e) && + !s.function_(e) && + ((e) => s.safeInteger(e) && e >= 0)(e.length)), + (s.inRange = (e, t) => { + if (s.number(t)) return e >= Math.min(0, t) && e <= Math.max(t, 0); + if (s.array(t) && 2 === t.length) return e >= Math.min(...t) && e <= Math.max(...t); + throw new TypeError('Invalid range: ' + JSON.stringify(t)); + }); + const u = ['innerHTML', 'ownerDocument', 'style', 'attributes', 'nodeValue']; + (s.domElement = (e) => + s.object(e) && + 1 === e.nodeType && + s.string(e.nodeName) && + !s.plainObject(e) && + u.every((t) => t in e)), + (s.observable = (e) => { + var t, r, n, i; + return ( + !!e && + (e === + (null === (r = (t = e)[Symbol.observable]) || void 0 === r ? void 0 : r.call(t)) || + e === (null === (i = (n = e)['@@observable']) || void 0 === i ? void 0 : i.call(n))) + ); + }), + (s.nodeStream = (e) => s.object(e) && s.function_(e.pipe) && !s.observable(e)), + (s.infinite = (e) => e === 1 / 0 || e === -1 / 0); + const l = (e) => (t) => s.integer(t) && Math.abs(t % 2) === e; + (s.evenInteger = l(0)), + (s.oddInteger = l(1)), + (s.emptyArray = (e) => s.array(e) && 0 === e.length), + (s.nonEmptyArray = (e) => s.array(e) && e.length > 0), + (s.emptyString = (e) => s.string(e) && 0 === e.length), + (s.nonEmptyString = (e) => s.string(e) && e.length > 0); + (s.emptyStringOrWhitespace = (e) => + s.emptyString(e) || ((e) => s.string(e) && !/\S/.test(e))(e)), + (s.emptyObject = (e) => + s.object(e) && !s.map(e) && !s.set(e) && 0 === Object.keys(e).length), + (s.nonEmptyObject = (e) => + s.object(e) && !s.map(e) && !s.set(e) && Object.keys(e).length > 0), + (s.emptySet = (e) => s.set(e) && 0 === e.size), + (s.nonEmptySet = (e) => s.set(e) && e.size > 0), + (s.emptyMap = (e) => s.map(e) && 0 === e.size), + (s.nonEmptyMap = (e) => s.map(e) && e.size > 0); + const h = (e, t, r) => { + if (!s.function_(t)) throw new TypeError('Invalid predicate: ' + JSON.stringify(t)); + if (0 === r.length) throw new TypeError('Invalid number of values'); + return e.call(r, t); + }; + (s.any = (e, ...t) => (s.array(e) ? e : [e]).some((e) => h(Array.prototype.some, e, t))), + (s.all = (e, ...t) => h(Array.prototype.every, e, t)); + const g = (e, t, r) => { + if (!e) + throw new TypeError( + `Expected value which is \`${t}\`, received value of type \`${s(r)}\`.` + ); + }; + (t.assert = { + undefined: (e) => g(s.undefined(e), 'undefined', e), + string: (e) => g(s.string(e), 'string', e), + number: (e) => g(s.number(e), 'number', e), + bigint: (e) => g(s.bigint(e), 'bigint', e), + function_: (e) => g(s.function_(e), 'Function', e), + null_: (e) => g(s.null_(e), 'null', e), + class_: (e) => g(s.class_(e), 'Class', e), + boolean: (e) => g(s.boolean(e), 'boolean', e), + symbol: (e) => g(s.symbol(e), 'symbol', e), + numericString: (e) => g(s.numericString(e), 'string with a number', e), + array: (e) => g(s.array(e), 'Array', e), + buffer: (e) => g(s.buffer(e), 'Buffer', e), + nullOrUndefined: (e) => g(s.nullOrUndefined(e), 'null or undefined', e), + object: (e) => g(s.object(e), 'Object', e), + iterable: (e) => g(s.iterable(e), 'Iterable', e), + asyncIterable: (e) => g(s.asyncIterable(e), 'AsyncIterable', e), + generator: (e) => g(s.generator(e), 'Generator', e), + asyncGenerator: (e) => g(s.asyncGenerator(e), 'AsyncGenerator', e), + nativePromise: (e) => g(s.nativePromise(e), 'native Promise', e), + promise: (e) => g(s.promise(e), 'Promise', e), + generatorFunction: (e) => g(s.generatorFunction(e), 'GeneratorFunction', e), + asyncGeneratorFunction: (e) => + g(s.asyncGeneratorFunction(e), 'AsyncGeneratorFunction', e), + asyncFunction: (e) => g(s.asyncFunction(e), 'AsyncFunction', e), + boundFunction: (e) => g(s.boundFunction(e), 'Function', e), + regExp: (e) => g(s.regExp(e), 'RegExp', e), + date: (e) => g(s.date(e), 'Date', e), + error: (e) => g(s.error(e), 'Error', e), + map: (e) => g(s.map(e), 'Map', e), + set: (e) => g(s.set(e), 'Set', e), + weakMap: (e) => g(s.weakMap(e), 'WeakMap', e), + weakSet: (e) => g(s.weakSet(e), 'WeakSet', e), + int8Array: (e) => g(s.int8Array(e), 'Int8Array', e), + uint8Array: (e) => g(s.uint8Array(e), 'Uint8Array', e), + uint8ClampedArray: (e) => g(s.uint8ClampedArray(e), 'Uint8ClampedArray', e), + int16Array: (e) => g(s.int16Array(e), 'Int16Array', e), + uint16Array: (e) => g(s.uint16Array(e), 'Uint16Array', e), + int32Array: (e) => g(s.int32Array(e), 'Int32Array', e), + uint32Array: (e) => g(s.uint32Array(e), 'Uint32Array', e), + float32Array: (e) => g(s.float32Array(e), 'Float32Array', e), + float64Array: (e) => g(s.float64Array(e), 'Float64Array', e), + bigInt64Array: (e) => g(s.bigInt64Array(e), 'BigInt64Array', e), + bigUint64Array: (e) => g(s.bigUint64Array(e), 'BigUint64Array', e), + arrayBuffer: (e) => g(s.arrayBuffer(e), 'ArrayBuffer', e), + sharedArrayBuffer: (e) => g(s.sharedArrayBuffer(e), 'SharedArrayBuffer', e), + dataView: (e) => g(s.dataView(e), 'DataView', e), + urlInstance: (e) => g(s.urlInstance(e), 'URL', e), + urlString: (e) => g(s.urlString(e), 'string with a URL', e), + truthy: (e) => g(s.truthy(e), 'truthy', e), + falsy: (e) => g(s.falsy(e), 'falsy', e), + nan: (e) => g(s.nan(e), 'NaN', e), + primitive: (e) => g(s.primitive(e), 'primitive', e), + integer: (e) => g(s.integer(e), 'integer', e), + safeInteger: (e) => g(s.safeInteger(e), 'integer', e), + plainObject: (e) => g(s.plainObject(e), 'plain object', e), + typedArray: (e) => g(s.typedArray(e), 'TypedArray', e), + arrayLike: (e) => g(s.arrayLike(e), 'array-like', e), + domElement: (e) => g(s.domElement(e), 'Element', e), + observable: (e) => g(s.observable(e), 'Observable', e), + nodeStream: (e) => g(s.nodeStream(e), 'Node.js Stream', e), + infinite: (e) => g(s.infinite(e), 'infinite number', e), + emptyArray: (e) => g(s.emptyArray(e), 'empty array', e), + nonEmptyArray: (e) => g(s.nonEmptyArray(e), 'non-empty array', e), + emptyString: (e) => g(s.emptyString(e), 'empty string', e), + nonEmptyString: (e) => g(s.nonEmptyString(e), 'non-empty string', e), + emptyStringOrWhitespace: (e) => + g(s.emptyStringOrWhitespace(e), 'empty string or whitespace', e), + emptyObject: (e) => g(s.emptyObject(e), 'empty object', e), + nonEmptyObject: (e) => g(s.nonEmptyObject(e), 'non-empty object', e), + emptySet: (e) => g(s.emptySet(e), 'empty set', e), + nonEmptySet: (e) => g(s.nonEmptySet(e), 'non-empty set', e), + emptyMap: (e) => g(s.emptyMap(e), 'empty map', e), + nonEmptyMap: (e) => g(s.nonEmptyMap(e), 'non-empty map', e), + evenInteger: (e) => g(s.evenInteger(e), 'even integer', e), + oddInteger: (e) => g(s.oddInteger(e), 'odd integer', e), + directInstanceOf: (e, t) => g(s.directInstanceOf(e, t), 'T', e), + inRange: (e, t) => g(s.inRange(e, t), 'in range', e), + any: (e, ...t) => g(s.any(e, ...t), 'predicate returns truthy for any value', t), + all: (e, ...t) => g(s.all(e, ...t), 'predicate returns truthy for all values', t), + }), + Object.defineProperties(s, { + class: { value: s.class_ }, + function: { value: s.function_ }, + null: { value: s.null_ }, + }), + Object.defineProperties(t.assert, { + class: { value: t.assert.class_ }, + function: { value: t.assert.function_ }, + null: { value: t.assert.null_ }, + }), + (t.default = s), + (e.exports = s), + (e.exports.default = s), + (e.exports.assert = t.assert); + }, + 98298: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(93121), + i = Number(process.versions.node.split('.')[0]), + o = (e) => { + const t = { + start: Date.now(), + socket: void 0, + lookup: void 0, + connect: void 0, + secureConnect: void 0, + upload: void 0, + response: void 0, + end: void 0, + error: void 0, + abort: void 0, + phases: { + wait: void 0, + dns: void 0, + tcp: void 0, + tls: void 0, + request: void 0, + firstByte: void 0, + download: void 0, + total: void 0, + }, + }; + e.timings = t; + const r = (e) => { + const r = e.emit.bind(e); + e.emit = (n, ...i) => ( + 'error' === n && + ((t.error = Date.now()), (t.phases.total = t.error - t.start), (e.emit = r)), + r(n, ...i) + ); + }; + r(e), + e.prependOnceListener('abort', () => { + (t.abort = Date.now()), + (!t.response || i >= 13) && (t.phases.total = Date.now() - t.start); + }); + const o = (e) => { + (t.socket = Date.now()), (t.phases.wait = t.socket - t.start); + const r = () => { + (t.lookup = Date.now()), (t.phases.dns = t.lookup - t.socket); + }; + e.prependOnceListener('lookup', r), + n.default(e, { + connect: () => { + (t.connect = Date.now()), + void 0 === t.lookup && + (e.removeListener('lookup', r), + (t.lookup = t.connect), + (t.phases.dns = t.lookup - t.socket)), + (t.phases.tcp = t.connect - t.lookup); + }, + secureConnect: () => { + (t.secureConnect = Date.now()), (t.phases.tls = t.secureConnect - t.connect); + }, + }); + }; + e.socket ? o(e.socket) : e.prependOnceListener('socket', o); + const s = () => { + var e; + (t.upload = Date.now()), + (t.phases.request = t.upload - (null != (e = t.secureConnect) ? e : t.connect)); + }; + return ( + ( + 'boolean' == typeof e.writableFinished + ? !e.writableFinished + : !e.finished || 0 !== e.outputSize || (e.socket && 0 !== e.socket.writableLength) + ) + ? e.prependOnceListener('finish', s) + : s(), + e.prependOnceListener('response', (e) => { + (t.response = Date.now()), + (t.phases.firstByte = t.response - t.upload), + (e.timings = t), + r(e), + e.prependOnceListener('end', () => { + (t.end = Date.now()), + (t.phases.download = t.end - t.response), + (t.phases.total = t.end - t.start); + }); + }), + t + ); + }; + (t.default = o), (e.exports = o), (e.exports.default = o); + }, + 58069: (e, t, r) => { + 'use strict'; + l.ifExists = function (e, t, r) { + return l(e, t, r).catch(() => {}); + }; + const n = r(31669), + i = r(46227), + o = r(85622), + s = r(97369), + A = /^#!\s*(?:\/usr\/bin\/env)?\s*([^ \t]+)(.*)$/, + a = { createPwshFile: !0, createCmdFile: s(), fs: r(35747) }, + c = new Map([ + ['.js', 'node'], + ['.cmd', 'cmd'], + ['.bat', 'cmd'], + ['.ps1', 'pwsh'], + ['.sh', 'sh'], + ]); + function u(e) { + const t = { ...a, ...e }, + r = t.fs; + return ( + (t.fs_ = { + chmod: r.chmod ? n.promisify(r.chmod) : async () => {}, + stat: n.promisify(r.stat), + unlink: n.promisify(r.unlink), + readFile: n.promisify(r.readFile), + writeFile: n.promisify(r.writeFile), + }), + t + ); + } + async function l(e, t, r) { + const n = u(r); + await n.fs_.stat(e), + await (async function (e, t, r) { + const n = await (async function (e, t) { + const r = await t.fs_.readFile(e, 'utf8'), + n = r.trim().split(/\r*\n/)[0].match(A); + if (!n) { + const t = o.extname(e).toLowerCase(); + return { program: c.get(t) || null, additionalArgs: '' }; + } + return { program: n[1], additionalArgs: n[2] }; + })(e, r); + return ( + await (function (e, t) { + return i(o.dirname(e), { fs: t.fs }); + })(t, r), + (function (e, t, r, n) { + const i = u(n), + o = [{ generator: g, extension: '' }]; + i.createCmdFile && o.push({ generator: h, extension: '.cmd' }); + i.createPwshFile && o.push({ generator: f, extension: '.ps1' }); + return Promise.all( + o.map((n) => + (async function (e, t, r, n, i) { + const o = i.preserveSymlinks ? '--preserve-symlinks' : '', + s = [r.additionalArgs, o].filter((e) => e).join(' '); + return ( + (i = Object.assign({}, i, { prog: r.program, args: s })), + await (function (e, t) { + return (function (e, t) { + return t.fs_.unlink(e).catch(() => {}); + })(e, t); + })(t, i), + await i.fs_.writeFile(t, n(e, t, i), 'utf8'), + (function (e, t) { + return (function (e, t) { + return t.fs_.chmod(e, 493); + })(e, t); + })(t, i) + ); + })(e, t + n.extension, r, n.generator, i) + ) + ); + })(e, t, n, r) + ); + })(e, t, n); + } + function h(e, t, r) { + let n = o.relative(o.dirname(t), e).split('/').join('\\'); + const i = o.isAbsolute(n) ? `"${n}"` : `"%~dp0\\${n}"`; + let s, + A = r.prog, + a = r.args || ''; + const c = p(r.nodePath).win32; + A ? ((s = `"%~dp0\\${A}.exe"`), (n = i)) : ((A = i), (a = ''), (n = '')); + let u = r.progArgs ? r.progArgs.join(' ') + ' ' : '', + l = c ? `@SET NODE_PATH=${c}\r\n` : ''; + return ( + (l += s + ? `@IF EXIST ${s} (\r\n ${s} ${a} ${n} ${u}%*\r\n) ELSE (\r\n @SETLOCAL\r\n @SET PATHEXT=%PATHEXT:;.JS;=;%\r\n ${A} ${a} ${n} ${u}%*\r\n)` + : `@${A} ${a} ${n} ${u}%*\r\n`), + l + ); + } + function g(e, t, r) { + let n, + i = o.relative(o.dirname(t), e), + s = r.prog && r.prog.split('\\').join('/'); + i = i.split('\\').join('/'); + const A = o.isAbsolute(i) ? `"${i}"` : `"$basedir/${i}"`; + let a = r.args || ''; + const c = p(r.nodePath).posix; + s ? ((n = `"$basedir/${r.prog}"`), (i = A)) : ((s = A), (a = ''), (i = '')); + let u = r.progArgs ? r.progArgs.join(' ') + ' ' : '', + l = '#!/bin/sh\n'; + l += + 'basedir=$(dirname "$(echo "$0" | sed -e \'s,\\\\,/,g\')")\n\ncase `uname` in\n *CYGWIN*) basedir=`cygpath -w "$basedir"`;;\nesac\n\n'; + const h = r.nodePath ? `export NODE_PATH="${c}"\n` : ''; + return ( + (l += n + ? h + + `if [ -x ${n} ]; then\n` + + ` exec ${n} ${a} ${i} ${u}"$@"\nelse \n` + + ` exec ${s} ${a} ${i} ${u}"$@"\nfi\n` + : `${h}${s} ${a} ${i} ${u}"$@"\nexit $?\n`), + l + ); + } + function f(e, t, r) { + let n = o.relative(o.dirname(t), e); + const i = r.prog && r.prog.split('\\').join('/'); + let s, + A = i && `"${i}$exe"`; + n = n.split('\\').join('/'); + const a = o.isAbsolute(n) ? `"${n}"` : `"$basedir/${n}"`; + let c = r.args || '', + u = p(r.nodePath); + const l = u.win32, + h = u.posix; + A ? ((s = `"$basedir/${r.prog}$exe"`), (n = a)) : ((A = a), (c = ''), (n = '')); + let g = r.progArgs ? r.progArgs.join(' ') + ' ' : '', + f = + '#!/usr/bin/env pwsh\n$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent\n\n$exe=""\n' + + (r.nodePath ? `$env_node_path=$env:NODE_PATH\n$env:NODE_PATH="${l}"\n` : '') + + 'if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {\n # Fix case when both the Windows and Linux builds of Node\n # are installed in the same directory\n $exe=".exe"\n}'; + return ( + r.nodePath && (f = f + ' else {\n' + ` $env:NODE_PATH="${h}"\n}`), + (f += '\n'), + (f = s + ? f + + '$ret=0\n' + + `if (Test-Path ${s}) {\n # Support pipeline input\n if ($MyInvocation.ExpectingInput) {\n` + + ` $input | & ${s} ${c} ${n} ${g}$args\n } else {\n` + + ` & ${s} ${c} ${n} ${g}$args\n }\n $ret=$LASTEXITCODE\n} else {\n # Support pipeline input\n if ($MyInvocation.ExpectingInput) {\n` + + ` $input | & ${A} ${c} ${n} ${g}$args\n } else {\n` + + ` & ${A} ${c} ${n} ${g}$args\n }\n $ret=$LASTEXITCODE\n}\n` + + (r.nodePath ? '$env:NODE_PATH=$env_node_path\n' : '') + + 'exit $ret\n' + : f + + '# Support pipeline input\nif ($MyInvocation.ExpectingInput) {\n' + + ` $input | & ${A} ${c} ${n} ${g}$args\n} else {\n` + + ` & ${A} ${c} ${n} ${g}$args\n}\n` + + (r.nodePath ? '$env:NODE_PATH=$env_node_path\n' : '') + + 'exit $LASTEXITCODE\n'), + f + ); + } + function p(e) { + if (!e) return { win32: '', posix: '' }; + let t = 'string' == typeof e ? e.split(o.delimiter) : Array.from(e), + r = {}; + for (let e = 0; e < t.length; e++) { + const n = t[e].split('/').join('\\'), + i = s() + ? t[e] + .split('\\') + .join('/') + .replace(/^([^:\\/]*):/, (e, t) => '/mnt/' + t.toLowerCase()) + : t[e]; + (r.win32 = r.win32 ? `${r.win32};${n}` : n), + (r.posix = r.posix ? `${r.posix}:${i}` : i), + (r[e] = { win32: n, posix: i }); + } + return r; + } + e.exports = l; + }, + 27589: (e) => { + 'use strict'; + const t = e.exports; + e.exports.default = t; + const r = '[', + n = ']', + i = '', + o = ';', + s = 'Apple_Terminal' === process.env.TERM_PROGRAM; + (t.cursorTo = (e, t) => { + if ('number' != typeof e) throw new TypeError('The `x` argument is required'); + return 'number' != typeof t ? r + (e + 1) + 'G' : r + (t + 1) + ';' + (e + 1) + 'H'; + }), + (t.cursorMove = (e, t) => { + if ('number' != typeof e) throw new TypeError('The `x` argument is required'); + let n = ''; + return ( + e < 0 ? (n += r + -e + 'D') : e > 0 && (n += r + e + 'C'), + t < 0 ? (n += r + -t + 'A') : t > 0 && (n += r + t + 'B'), + n + ); + }), + (t.cursorUp = (e = 1) => r + e + 'A'), + (t.cursorDown = (e = 1) => r + e + 'B'), + (t.cursorForward = (e = 1) => r + e + 'C'), + (t.cursorBackward = (e = 1) => r + e + 'D'), + (t.cursorLeft = ''), + (t.cursorSavePosition = s ? '7' : ''), + (t.cursorRestorePosition = s ? '8' : ''), + (t.cursorGetPosition = ''), + (t.cursorNextLine = ''), + (t.cursorPrevLine = ''), + (t.cursorHide = '[?25l'), + (t.cursorShow = '[?25h'), + (t.eraseLines = (e) => { + let r = ''; + for (let n = 0; n < e; n++) r += t.eraseLine + (n < e - 1 ? t.cursorUp() : ''); + return e && (r += t.cursorLeft), r; + }), + (t.eraseEndLine = ''), + (t.eraseStartLine = ''), + (t.eraseLine = ''), + (t.eraseDown = ''), + (t.eraseUp = ''), + (t.eraseScreen = ''), + (t.scrollUp = ''), + (t.scrollDown = ''), + (t.clearScreen = 'c'), + (t.clearTerminal = + 'win32' === process.platform ? t.eraseScreen + '' : t.eraseScreen + ''), + (t.beep = i), + (t.link = (e, t) => [n, '8', o, o, t, i, e, n, '8', o, o, i].join('')), + (t.image = (e, t = {}) => { + let r = n + '1337;File=inline=1'; + return ( + t.width && (r += ';width=' + t.width), + t.height && (r += ';height=' + t.height), + !1 === t.preserveAspectRatio && (r += ';preserveAspectRatio=0'), + r + ':' + e.toString('base64') + i + ); + }), + (t.iTerm = { + setCwd: (e = process.cwd()) => `${n}50;CurrentDir=${e}${i}`, + annotation: (e, t = {}) => { + let r = n + '1337;'; + const o = void 0 !== t.x, + s = void 0 !== t.y; + if ((o || s) && (!o || !s || void 0 === t.length)) + throw new Error('`x`, `y` and `length` must be defined when `x` or `y` is defined'); + return ( + (e = e.replace(/\|/g, '')), + (r += t.isHidden ? 'AddHiddenAnnotation=' : 'AddAnnotation='), + t.length > 0 + ? (r += (o ? [e, t.length, t.x, t.y] : [t.length, e]).join('|')) + : (r += e), + r + i + ); + }, + }); + }, + 81337: (e) => { + 'use strict'; + e.exports = ({ onlyFirst: e = !1 } = {}) => { + const t = [ + '[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:[a-zA-Z\\d]*(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)', + '(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))', + ].join('|'); + return new RegExp(t, e ? void 0 : 'g'); + }; + }, + 18483: (e, t, r) => { + 'use strict'; + e = r.nmd(e); + const n = (e, t) => (...r) => `[${e(...r) + t}m`, + i = (e, t) => (...r) => { + const n = e(...r); + return `[${38 + t};5;${n}m`; + }, + o = (e, t) => (...r) => { + const n = e(...r); + return `[${38 + t};2;${n[0]};${n[1]};${n[2]}m`; + }, + s = (e) => e, + A = (e, t, r) => [e, t, r], + a = (e, t, r) => { + Object.defineProperty(e, t, { + get: () => { + const n = r(); + return ( + Object.defineProperty(e, t, { value: n, enumerable: !0, configurable: !0 }), n + ); + }, + enumerable: !0, + configurable: !0, + }); + }; + let c; + const u = (e, t, n, i) => { + void 0 === c && (c = r(2744)); + const o = i ? 10 : 0, + s = {}; + for (const [r, i] of Object.entries(c)) { + const A = 'ansi16' === r ? 'ansi' : r; + r === t ? (s[A] = e(n, o)) : 'object' == typeof i && (s[A] = e(i[t], o)); + } + return s; + }; + Object.defineProperty(e, 'exports', { + enumerable: !0, + get: function () { + const e = new Map(), + t = { + modifier: { + reset: [0, 0], + bold: [1, 22], + dim: [2, 22], + italic: [3, 23], + underline: [4, 24], + inverse: [7, 27], + hidden: [8, 28], + strikethrough: [9, 29], + }, + color: { + black: [30, 39], + red: [31, 39], + green: [32, 39], + yellow: [33, 39], + blue: [34, 39], + magenta: [35, 39], + cyan: [36, 39], + white: [37, 39], + blackBright: [90, 39], + redBright: [91, 39], + greenBright: [92, 39], + yellowBright: [93, 39], + blueBright: [94, 39], + magentaBright: [95, 39], + cyanBright: [96, 39], + whiteBright: [97, 39], + }, + bgColor: { + bgBlack: [40, 49], + bgRed: [41, 49], + bgGreen: [42, 49], + bgYellow: [43, 49], + bgBlue: [44, 49], + bgMagenta: [45, 49], + bgCyan: [46, 49], + bgWhite: [47, 49], + bgBlackBright: [100, 49], + bgRedBright: [101, 49], + bgGreenBright: [102, 49], + bgYellowBright: [103, 49], + bgBlueBright: [104, 49], + bgMagentaBright: [105, 49], + bgCyanBright: [106, 49], + bgWhiteBright: [107, 49], + }, + }; + (t.color.gray = t.color.blackBright), + (t.bgColor.bgGray = t.bgColor.bgBlackBright), + (t.color.grey = t.color.blackBright), + (t.bgColor.bgGrey = t.bgColor.bgBlackBright); + for (const [r, n] of Object.entries(t)) { + for (const [r, i] of Object.entries(n)) + (t[r] = { open: `[${i[0]}m`, close: `[${i[1]}m` }), + (n[r] = t[r]), + e.set(i[0], i[1]); + Object.defineProperty(t, r, { value: n, enumerable: !1 }); + } + return ( + Object.defineProperty(t, 'codes', { value: e, enumerable: !1 }), + (t.color.close = ''), + (t.bgColor.close = ''), + a(t.color, 'ansi', () => u(n, 'ansi16', s, !1)), + a(t.color, 'ansi256', () => u(i, 'ansi256', s, !1)), + a(t.color, 'ansi16m', () => u(o, 'rgb', A, !1)), + a(t.bgColor, 'ansi', () => u(n, 'ansi16', s, !0)), + a(t.bgColor, 'ansi256', () => u(i, 'ansi256', s, !0)), + a(t.bgColor, 'ansi16m', () => u(o, 'rgb', A, !0)), + t + ); + }, + }); + }, + 39920: (e) => { + 'use strict'; + e.exports = (...e) => [...new Set([].concat(...e))]; + }, + 86792: (e) => { + 'use strict'; + function t(e, t, i) { + e instanceof RegExp && (e = r(e, i)), t instanceof RegExp && (t = r(t, i)); + var o = n(e, t, i); + return ( + o && { + start: o[0], + end: o[1], + pre: i.slice(0, o[0]), + body: i.slice(o[0] + e.length, o[1]), + post: i.slice(o[1] + t.length), + } + ); + } + function r(e, t) { + var r = t.match(e); + return r ? r[0] : null; + } + function n(e, t, r) { + var n, + i, + o, + s, + A, + a = r.indexOf(e), + c = r.indexOf(t, a + 1), + u = a; + if (a >= 0 && c > 0) { + for (n = [], o = r.length; u >= 0 && !A; ) + u == a + ? (n.push(u), (a = r.indexOf(e, u + 1))) + : 1 == n.length + ? (A = [n.pop(), c]) + : ((i = n.pop()) < o && ((o = i), (s = c)), (c = r.indexOf(t, u + 1))), + (u = a < c && a >= 0 ? a : c); + n.length && (A = [o, s]); + } + return A; + } + (e.exports = t), (t.range = n); + }, + 73975: (e, t, r) => { + 'use strict'; + var n = r(86897).Duplex; + function i(e) { + if (!(this instanceof i)) return new i(e); + if (((this._bufs = []), (this.length = 0), 'function' == typeof e)) { + this._callback = e; + var t = function (e) { + this._callback && (this._callback(e), (this._callback = null)); + }.bind(this); + this.on('pipe', function (e) { + e.on('error', t); + }), + this.on('unpipe', function (e) { + e.removeListener('error', t); + }); + } else this.append(e); + n.call(this); + } + r(31669).inherits(i, n), + (i.prototype._offset = function (e) { + var t, + r = 0, + n = 0; + if (0 === e) return [0, 0]; + for (; n < this._bufs.length; n++) { + if (e < (t = r + this._bufs[n].length) || n == this._bufs.length - 1) + return [n, e - r]; + r = t; + } + }), + (i.prototype._reverseOffset = function (e) { + for (var t = e[0], r = e[1], n = 0; n < t; n++) r += this._bufs[n].length; + return r; + }), + (i.prototype.append = function (e) { + var t = 0; + if (Buffer.isBuffer(e)) this._appendBuffer(e); + else if (Array.isArray(e)) for (; t < e.length; t++) this.append(e[t]); + else if (e instanceof i) for (; t < e._bufs.length; t++) this.append(e._bufs[t]); + else + null != e && + ('number' == typeof e && (e = e.toString()), this._appendBuffer(Buffer.from(e))); + return this; + }), + (i.prototype._appendBuffer = function (e) { + this._bufs.push(e), (this.length += e.length); + }), + (i.prototype._write = function (e, t, r) { + this._appendBuffer(e), 'function' == typeof r && r(); + }), + (i.prototype._read = function (e) { + if (!this.length) return this.push(null); + (e = Math.min(e, this.length)), this.push(this.slice(0, e)), this.consume(e); + }), + (i.prototype.end = function (e) { + n.prototype.end.call(this, e), + this._callback && (this._callback(null, this.slice()), (this._callback = null)); + }), + (i.prototype.get = function (e) { + if (!(e > this.length || e < 0)) { + var t = this._offset(e); + return this._bufs[t[0]][t[1]]; + } + }), + (i.prototype.slice = function (e, t) { + return ( + 'number' == typeof e && e < 0 && (e += this.length), + 'number' == typeof t && t < 0 && (t += this.length), + this.copy(null, 0, e, t) + ); + }), + (i.prototype.copy = function (e, t, r, n) { + if ( + (('number' != typeof r || r < 0) && (r = 0), + ('number' != typeof n || n > this.length) && (n = this.length), + r >= this.length) + ) + return e || Buffer.alloc(0); + if (n <= 0) return e || Buffer.alloc(0); + var i, + o, + s = !!e, + A = this._offset(r), + a = n - r, + c = a, + u = (s && t) || 0, + l = A[1]; + if (0 === r && n == this.length) { + if (!s) + return 1 === this._bufs.length + ? this._bufs[0] + : Buffer.concat(this._bufs, this.length); + for (o = 0; o < this._bufs.length; o++) + this._bufs[o].copy(e, u), (u += this._bufs[o].length); + return e; + } + if (c <= this._bufs[A[0]].length - l) + return s ? this._bufs[A[0]].copy(e, t, l, l + c) : this._bufs[A[0]].slice(l, l + c); + for (s || (e = Buffer.allocUnsafe(a)), o = A[0]; o < this._bufs.length; o++) { + if (!(c > (i = this._bufs[o].length - l))) { + this._bufs[o].copy(e, u, l, l + c); + break; + } + this._bufs[o].copy(e, u, l), (u += i), (c -= i), l && (l = 0); + } + return e; + }), + (i.prototype.shallowSlice = function (e, t) { + if ( + ((e = e || 0), + (t = 'number' != typeof t ? this.length : t), + e < 0 && (e += this.length), + t < 0 && (t += this.length), + e === t) + ) + return new i(); + var r = this._offset(e), + n = this._offset(t), + o = this._bufs.slice(r[0], n[0] + 1); + return ( + 0 == n[1] ? o.pop() : (o[o.length - 1] = o[o.length - 1].slice(0, n[1])), + 0 != r[1] && (o[0] = o[0].slice(r[1])), + new i(o) + ); + }), + (i.prototype.toString = function (e, t, r) { + return this.slice(t, r).toString(e); + }), + (i.prototype.consume = function (e) { + for (; this._bufs.length; ) { + if (!(e >= this._bufs[0].length)) { + (this._bufs[0] = this._bufs[0].slice(e)), (this.length -= e); + break; + } + (e -= this._bufs[0].length), + (this.length -= this._bufs[0].length), + this._bufs.shift(); + } + return this; + }), + (i.prototype.duplicate = function () { + for (var e = 0, t = new i(); e < this._bufs.length; e++) t.append(this._bufs[e]); + return t; + }), + (i.prototype._destroy = function (e, t) { + (this._bufs.length = 0), (this.length = 0), t(e); + }), + (i.prototype.indexOf = function (e, t, r) { + if ( + (void 0 === r && 'string' == typeof t && ((r = t), (t = void 0)), + 'function' == typeof e || Array.isArray(e)) + ) + throw new TypeError( + 'The "value" argument must be one of type string, Buffer, BufferList, or Uint8Array.' + ); + if ( + ('number' == typeof e + ? (e = Buffer.from([e])) + : 'string' == typeof e + ? (e = Buffer.from(e, r)) + : e instanceof i + ? (e = e.slice()) + : Buffer.isBuffer(e) || (e = Buffer.from(e)), + (t = Number(t || 0)), + isNaN(t) && (t = 0), + t < 0 && (t = this.length + t), + t < 0 && (t = 0), + 0 === e.length) + ) + return t > this.length ? this.length : t; + for (var n = this._offset(t), o = n[0], s = n[1]; o < this._bufs.length; o++) { + for (var A = this._bufs[o]; s < A.length; ) { + if (A.length - s >= e.length) { + var a = A.indexOf(e, s); + if (-1 !== a) return this._reverseOffset([o, a]); + s = A.length - e.length + 1; + } else { + var c = this._reverseOffset([o, s]); + if (this._match(c, e)) return c; + s++; + } + } + s = 0; + } + return -1; + }), + (i.prototype._match = function (e, t) { + if (this.length - e < t.length) return !1; + for (var r = 0; r < t.length; r++) if (this.get(e + r) !== t[r]) return !1; + return !0; + }), + (function () { + var e = { + readDoubleBE: 8, + readDoubleLE: 8, + readFloatBE: 4, + readFloatLE: 4, + readInt32BE: 4, + readInt32LE: 4, + readUInt32BE: 4, + readUInt32LE: 4, + readInt16BE: 2, + readInt16LE: 2, + readUInt16BE: 2, + readUInt16LE: 2, + readInt8: 1, + readUInt8: 1, + readIntBE: null, + readIntLE: null, + readUIntBE: null, + readUIntLE: null, + }; + for (var t in e) + !(function (t) { + i.prototype[t] = + null === e[t] + ? function (e, r) { + return this.slice(e, e + r)[t](0, r); + } + : function (r) { + return this.slice(r, r + e[t])[t](0); + }; + })(t); + })(), + (e.exports = i); + }, + 1289: (e, t, r) => { + var n = r(36547), + i = r(86792); + e.exports = function (e) { + if (!e) return []; + '{}' === e.substr(0, 2) && (e = '\\{\\}' + e.substr(2)); + return (function e(t, r) { + var o = [], + s = i('{', '}', t); + if (!s || /\$$/.test(s.pre)) return [t]; + var a, + c = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(s.body), + l = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(s.body), + d = c || l, + C = s.body.indexOf(',') >= 0; + if (!d && !C) + return s.post.match(/,.*\}/) ? ((t = s.pre + '{' + s.body + A + s.post), e(t)) : [t]; + if (d) a = s.body.split(/\.\./); + else { + if ( + 1 === + (a = (function e(t) { + if (!t) return ['']; + var r = [], + n = i('{', '}', t); + if (!n) return t.split(','); + var o = n.pre, + s = n.body, + A = n.post, + a = o.split(','); + a[a.length - 1] += '{' + s + '}'; + var c = e(A); + A.length && ((a[a.length - 1] += c.shift()), a.push.apply(a, c)); + return r.push.apply(r, a), r; + })(s.body)).length + ) + if (1 === (a = e(a[0], !1).map(h)).length) + return (m = s.post.length ? e(s.post, !1) : ['']).map(function (e) { + return s.pre + a[0] + e; + }); + } + var E, + I = s.pre, + m = s.post.length ? e(s.post, !1) : ['']; + if (d) { + var y = u(a[0]), + w = u(a[1]), + B = Math.max(a[0].length, a[1].length), + Q = 3 == a.length ? Math.abs(u(a[2])) : 1, + v = f; + w < y && ((Q *= -1), (v = p)); + var D = a.some(g); + E = []; + for (var b = y; v(b, w); b += Q) { + var S; + if (l) '\\' === (S = String.fromCharCode(b)) && (S = ''); + else if (((S = String(b)), D)) { + var k = B - S.length; + if (k > 0) { + var x = new Array(k + 1).join('0'); + S = b < 0 ? '-' + x + S.slice(1) : x + S; + } + } + E.push(S); + } + } else + E = n(a, function (t) { + return e(t, !1); + }); + for (var F = 0; F < E.length; F++) + for (var M = 0; M < m.length; M++) { + var N = I + E[F] + m[M]; + (!r || d || N) && o.push(N); + } + return o; + })( + (function (e) { + return e + .split('\\\\') + .join(o) + .split('\\{') + .join(s) + .split('\\}') + .join(A) + .split('\\,') + .join(a) + .split('\\.') + .join(c); + })(e), + !0 + ).map(l); + }; + var o = '\0SLASH' + Math.random() + '\0', + s = '\0OPEN' + Math.random() + '\0', + A = '\0CLOSE' + Math.random() + '\0', + a = '\0COMMA' + Math.random() + '\0', + c = '\0PERIOD' + Math.random() + '\0'; + function u(e) { + return parseInt(e, 10) == e ? parseInt(e, 10) : e.charCodeAt(0); + } + function l(e) { + return e + .split(o) + .join('\\') + .split(s) + .join('{') + .split(A) + .join('}') + .split(a) + .join(',') + .split(c) + .join('.'); + } + function h(e) { + return '{' + e + '}'; + } + function g(e) { + return /^-?0\d/.test(e); + } + function f(e, t) { + return e <= t; + } + function p(e, t) { + return e >= t; + } + }, + 12235: (e, t, r) => { + 'use strict'; + const n = r(54900), + i = r(44617), + o = r(1495), + s = r(425), + A = (e, t = {}) => { + let r = []; + if (Array.isArray(e)) + for (let n of e) { + let e = A.create(n, t); + Array.isArray(e) ? r.push(...e) : r.push(e); + } + else r = [].concat(A.create(e, t)); + return t && !0 === t.expand && !0 === t.nodupes && (r = [...new Set(r)]), r; + }; + (A.parse = (e, t = {}) => s(e, t)), + (A.stringify = (e, t = {}) => n('string' == typeof e ? A.parse(e, t) : e, t)), + (A.compile = (e, t = {}) => ('string' == typeof e && (e = A.parse(e, t)), i(e, t))), + (A.expand = (e, t = {}) => { + 'string' == typeof e && (e = A.parse(e, t)); + let r = o(e, t); + return ( + !0 === t.noempty && (r = r.filter(Boolean)), + !0 === t.nodupes && (r = [...new Set(r)]), + r + ); + }), + (A.create = (e, t = {}) => + '' === e || e.length < 3 ? [e] : !0 !== t.expand ? A.compile(e, t) : A.expand(e, t)), + (e.exports = A); + }, + 44617: (e, t, r) => { + 'use strict'; + const n = r(52169), + i = r(4542); + e.exports = (e, t = {}) => { + let r = (e, o = {}) => { + let s = i.isInvalidBrace(o), + A = !0 === e.invalid && !0 === t.escapeInvalid, + a = !0 === s || !0 === A, + c = !0 === t.escapeInvalid ? '\\' : '', + u = ''; + if (!0 === e.isOpen) return c + e.value; + if (!0 === e.isClose) return c + e.value; + if ('open' === e.type) return a ? c + e.value : '('; + if ('close' === e.type) return a ? c + e.value : ')'; + if ('comma' === e.type) return 'comma' === e.prev.type ? '' : a ? e.value : '|'; + if (e.value) return e.value; + if (e.nodes && e.ranges > 0) { + let r = i.reduce(e.nodes), + o = n(...r, { ...t, wrap: !1, toRegex: !0 }); + if (0 !== o.length) return r.length > 1 && o.length > 1 ? `(${o})` : o; + } + if (e.nodes) for (let t of e.nodes) u += r(t, e); + return u; + }; + return r(e); + }; + }, + 5384: (e) => { + 'use strict'; + e.exports = { + MAX_LENGTH: 65536, + CHAR_0: '0', + CHAR_9: '9', + CHAR_UPPERCASE_A: 'A', + CHAR_LOWERCASE_A: 'a', + CHAR_UPPERCASE_Z: 'Z', + CHAR_LOWERCASE_Z: 'z', + CHAR_LEFT_PARENTHESES: '(', + CHAR_RIGHT_PARENTHESES: ')', + CHAR_ASTERISK: '*', + CHAR_AMPERSAND: '&', + CHAR_AT: '@', + CHAR_BACKSLASH: '\\', + CHAR_BACKTICK: '`', + CHAR_CARRIAGE_RETURN: '\r', + CHAR_CIRCUMFLEX_ACCENT: '^', + CHAR_COLON: ':', + CHAR_COMMA: ',', + CHAR_DOLLAR: '$', + CHAR_DOT: '.', + CHAR_DOUBLE_QUOTE: '"', + CHAR_EQUAL: '=', + CHAR_EXCLAMATION_MARK: '!', + CHAR_FORM_FEED: '\f', + CHAR_FORWARD_SLASH: '/', + CHAR_HASH: '#', + CHAR_HYPHEN_MINUS: '-', + CHAR_LEFT_ANGLE_BRACKET: '<', + CHAR_LEFT_CURLY_BRACE: '{', + CHAR_LEFT_SQUARE_BRACKET: '[', + CHAR_LINE_FEED: '\n', + CHAR_NO_BREAK_SPACE: ' ', + CHAR_PERCENT: '%', + CHAR_PLUS: '+', + CHAR_QUESTION_MARK: '?', + CHAR_RIGHT_ANGLE_BRACKET: '>', + CHAR_RIGHT_CURLY_BRACE: '}', + CHAR_RIGHT_SQUARE_BRACKET: ']', + CHAR_SEMICOLON: ';', + CHAR_SINGLE_QUOTE: "'", + CHAR_SPACE: ' ', + CHAR_TAB: '\t', + CHAR_UNDERSCORE: '_', + CHAR_VERTICAL_LINE: '|', + CHAR_ZERO_WIDTH_NOBREAK_SPACE: '\ufeff', + }; + }, + 1495: (e, t, r) => { + 'use strict'; + const n = r(52169), + i = r(54900), + o = r(4542), + s = (e = '', t = '', r = !1) => { + let n = []; + if (((e = [].concat(e)), !(t = [].concat(t)).length)) return e; + if (!e.length) return r ? o.flatten(t).map((e) => `{${e}}`) : t; + for (let i of e) + if (Array.isArray(i)) for (let e of i) n.push(s(e, t, r)); + else + for (let e of t) + !0 === r && 'string' == typeof e && (e = `{${e}}`), + n.push(Array.isArray(e) ? s(i, e, r) : i + e); + return o.flatten(n); + }; + e.exports = (e, t = {}) => { + let r = void 0 === t.rangeLimit ? 1e3 : t.rangeLimit, + A = (e, a = {}) => { + e.queue = []; + let c = a, + u = a.queue; + for (; 'brace' !== c.type && 'root' !== c.type && c.parent; ) + (c = c.parent), (u = c.queue); + if (e.invalid || e.dollar) return void u.push(s(u.pop(), i(e, t))); + if ('brace' === e.type && !0 !== e.invalid && 2 === e.nodes.length) + return void u.push(s(u.pop(), ['{}'])); + if (e.nodes && e.ranges > 0) { + let A = o.reduce(e.nodes); + if (o.exceedsLimit(...A, t.step, r)) + throw new RangeError( + 'expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit.' + ); + let a = n(...A, t); + return 0 === a.length && (a = i(e, t)), u.push(s(u.pop(), a)), void (e.nodes = []); + } + let l = o.encloseBrace(e), + h = e.queue, + g = e; + for (; 'brace' !== g.type && 'root' !== g.type && g.parent; ) + (g = g.parent), (h = g.queue); + for (let t = 0; t < e.nodes.length; t++) { + let r = e.nodes[t]; + 'comma' !== r.type || 'brace' !== e.type + ? 'close' !== r.type + ? r.value && 'open' !== r.type + ? h.push(s(h.pop(), r.value)) + : r.nodes && A(r, e) + : u.push(s(u.pop(), h, l)) + : (1 === t && h.push(''), h.push('')); + } + return h; + }; + return o.flatten(A(e)); + }; + }, + 425: (e, t, r) => { + 'use strict'; + const n = r(54900), + { + MAX_LENGTH: i, + CHAR_BACKSLASH: o, + CHAR_BACKTICK: s, + CHAR_COMMA: A, + CHAR_DOT: a, + CHAR_LEFT_PARENTHESES: c, + CHAR_RIGHT_PARENTHESES: u, + CHAR_LEFT_CURLY_BRACE: l, + CHAR_RIGHT_CURLY_BRACE: h, + CHAR_LEFT_SQUARE_BRACKET: g, + CHAR_RIGHT_SQUARE_BRACKET: f, + CHAR_DOUBLE_QUOTE: p, + CHAR_SINGLE_QUOTE: d, + CHAR_NO_BREAK_SPACE: C, + CHAR_ZERO_WIDTH_NOBREAK_SPACE: E, + } = r(5384); + e.exports = (e, t = {}) => { + if ('string' != typeof e) throw new TypeError('Expected a string'); + let r = t || {}, + I = 'number' == typeof r.maxLength ? Math.min(i, r.maxLength) : i; + if (e.length > I) + throw new SyntaxError(`Input length (${e.length}), exceeds max characters (${I})`); + let m, + y = { type: 'root', input: e, nodes: [] }, + w = [y], + B = y, + Q = y, + v = 0, + D = e.length, + b = 0, + S = 0; + const k = () => e[b++], + x = (e) => { + if ( + ('text' === e.type && 'dot' === Q.type && (Q.type = 'text'), + !Q || 'text' !== Q.type || 'text' !== e.type) + ) + return B.nodes.push(e), (e.parent = B), (e.prev = Q), (Q = e), e; + Q.value += e.value; + }; + for (x({ type: 'bos' }); b < D; ) + if (((B = w[w.length - 1]), (m = k()), m !== E && m !== C)) + if (m !== o) + if (m !== f) + if (m !== g) + if (m !== c) + if (m !== u) + if (m !== p && m !== d && m !== s) + if (m !== l) + if (m !== h) + if (m === A && S > 0) { + if (B.ranges > 0) { + B.ranges = 0; + let e = B.nodes.shift(); + B.nodes = [e, { type: 'text', value: n(B) }]; + } + x({ type: 'comma', value: m }), B.commas++; + } else if (m === a && S > 0 && 0 === B.commas) { + let e = B.nodes; + if (0 === S || 0 === e.length) { + x({ type: 'text', value: m }); + continue; + } + if ('dot' === Q.type) { + if ( + ((B.range = []), + (Q.value += m), + (Q.type = 'range'), + 3 !== B.nodes.length && 5 !== B.nodes.length) + ) { + (B.invalid = !0), (B.ranges = 0), (Q.type = 'text'); + continue; + } + B.ranges++, (B.args = []); + continue; + } + if ('range' === Q.type) { + e.pop(); + let t = e[e.length - 1]; + (t.value += Q.value + m), (Q = t), B.ranges--; + continue; + } + x({ type: 'dot', value: m }); + } else x({ type: 'text', value: m }); + else { + if ('brace' !== B.type) { + x({ type: 'text', value: m }); + continue; + } + let e = 'close'; + (B = w.pop()), + (B.close = !0), + x({ type: e, value: m }), + S--, + (B = w[w.length - 1]); + } + else { + S++; + let e = (Q.value && '$' === Q.value.slice(-1)) || !0 === B.dollar; + (B = x({ + type: 'brace', + open: !0, + close: !1, + dollar: e, + depth: S, + commas: 0, + ranges: 0, + nodes: [], + })), + w.push(B), + x({ type: 'open', value: m }); + } + else { + let e, + r = m; + for (!0 !== t.keepQuotes && (m = ''); b < D && (e = k()); ) + if (e !== o) { + if (e === r) { + !0 === t.keepQuotes && (m += e); + break; + } + m += e; + } else m += e + k(); + x({ type: 'text', value: m }); + } + else { + if ('paren' !== B.type) { + x({ type: 'text', value: m }); + continue; + } + (B = w.pop()), x({ type: 'text', value: m }), (B = w[w.length - 1]); + } + else + (B = x({ type: 'paren', nodes: [] })), + w.push(B), + x({ type: 'text', value: m }); + else { + v++; + let e; + for (; b < D && (e = k()); ) + if (((m += e), e !== g)) + if (e !== o) { + if (e === f && (v--, 0 === v)) break; + } else m += k(); + else v++; + x({ type: 'text', value: m }); + } + else x({ type: 'text', value: '\\' + m }); + else x({ type: 'text', value: (t.keepEscaping ? m : '') + k() }); + do { + if (((B = w.pop()), 'root' !== B.type)) { + B.nodes.forEach((e) => { + e.nodes || + ('open' === e.type && (e.isOpen = !0), + 'close' === e.type && (e.isClose = !0), + e.nodes || (e.type = 'text'), + (e.invalid = !0)); + }); + let e = w[w.length - 1], + t = e.nodes.indexOf(B); + e.nodes.splice(t, 1, ...B.nodes); + } + } while (w.length > 0); + return x({ type: 'eos' }), y; + }; + }, + 54900: (e, t, r) => { + 'use strict'; + const n = r(4542); + e.exports = (e, t = {}) => { + let r = (e, i = {}) => { + let o = t.escapeInvalid && n.isInvalidBrace(i), + s = !0 === e.invalid && !0 === t.escapeInvalid, + A = ''; + if (e.value) return (o || s) && n.isOpenOrClose(e) ? '\\' + e.value : e.value; + if (e.value) return e.value; + if (e.nodes) for (let t of e.nodes) A += r(t); + return A; + }; + return r(e); + }; + }, + 4542: (e, t) => { + 'use strict'; + (t.isInteger = (e) => + 'number' == typeof e + ? Number.isInteger(e) + : 'string' == typeof e && '' !== e.trim() && Number.isInteger(Number(e))), + (t.find = (e, t) => e.nodes.find((e) => e.type === t)), + (t.exceedsLimit = (e, r, n = 1, i) => + !1 !== i && + !(!t.isInteger(e) || !t.isInteger(r)) && + (Number(r) - Number(e)) / Number(n) >= i), + (t.escapeNode = (e, t = 0, r) => { + let n = e.nodes[t]; + n && + ((r && n.type === r) || 'open' === n.type || 'close' === n.type) && + !0 !== n.escaped && + ((n.value = '\\' + n.value), (n.escaped = !0)); + }), + (t.encloseBrace = (e) => + 'brace' === e.type && (e.commas >> (0 + e.ranges)) >> 0 == 0 && ((e.invalid = !0), !0)), + (t.isInvalidBrace = (e) => + 'brace' === e.type && + (!(!0 !== e.invalid && !e.dollar) || + (((e.commas >> (0 + e.ranges)) >> 0 == 0 || !0 !== e.open || !0 !== e.close) && + ((e.invalid = !0), !0)))), + (t.isOpenOrClose = (e) => + 'open' === e.type || 'close' === e.type || !0 === e.open || !0 === e.close), + (t.reduce = (e) => + e.reduce( + (e, t) => ( + 'text' === t.type && e.push(t.value), 'range' === t.type && (t.type = 'text'), e + ), + [] + )), + (t.flatten = (...e) => { + const t = [], + r = (e) => { + for (let n = 0; n < e.length; n++) { + let i = e[n]; + Array.isArray(i) ? r(i, t) : void 0 !== i && t.push(i); + } + return t; + }; + return r(e), t; + }); + }, + 76438: (e, t, r) => { + 'use strict'; + const n = r(85622), + { watch: i } = r(35747), + { readFile: o } = r(35747).promises, + { isIP: s } = r(11631), + A = + 'win32' === process.platform + ? n.join(process.env.SystemDrive, 'Windows\\System32\\drivers\\etc\\hosts') + : '/etc/hosts', + a = /^(?:(?:[a-zA-Z\d]|[a-zA-Z\d][a-zA-Z\d-]*[a-zA-Z\d])\.)*(?:[A-Za-z\d]|[A-Za-z\d][A-Za-z\d-]*[A-Za-z\d])$/, + c = (e) => a.test(e), + u = { encoding: 'utf8' }, + l = /\s+/g; + class h { + constructor({ watching: e, customHostsPath: t = A }) { + (this._hostsPath = t), + (this._error = null), + (this._watcher = null), + (this._watching = e), + (this._hosts = {}), + this._init(); + } + _init() { + 'string' == typeof this._hostsPath && + (this._promise = (async () => { + await this._update(), + (this._promise = null), + this._error || + (this._watching && + ((this._watcher = i(this._hostsPath, { persistent: !1 }, (e) => { + 'change' === e ? this._update() : this._watcher.close(); + })), + this._watcher.once('error', (e) => { + (this._error = e), (this._hosts = {}); + }), + this._watcher.once('close', () => { + this._init(); + }))); + })()); + } + async _update() { + try { + let e = await o(this._hostsPath, u); + (e = e.split('\n')), (this._hosts = {}); + for (let t of e) { + t = t.replace(l, ' ').trim(); + const e = t.split(' '), + r = s(e[0]); + if (!r) continue; + const n = e.shift(); + for (const t of e) { + if (!c(t)) break; + if (this._hosts[t]) { + let e = !1; + for (const n of this._hosts[t]) + if (n.family === r) { + e = !0; + break; + } + if (e) continue; + } else (this._hosts[t] = []), (this._hosts[t].expires = 1 / 0); + this._hosts[t].push({ address: n, family: r, expires: 1 / 0, ttl: 1 / 0 }); + } + } + } catch (e) { + (this._hosts = {}), (this._error = e); + } + } + async get(e) { + if ((this._promise && (await this._promise), this._error)) throw this._error; + return this._hosts[e]; + } + } + const g = {}; + (h.getResolver = ({ customHostsPath: e, watching: t }) => { + void 0 !== e && 'string' != typeof e && (e = !1); + const r = `${e}:${(t = Boolean(t))}`; + let n = g[r]; + return n || ((n = new h({ customHostsPath: e, watching: t })), (g[r] = n), n); + }), + (e.exports = h); + }, + 43261: (e, t, r) => { + 'use strict'; + const { + V4MAPPED: n, + ADDRCONFIG: i, + promises: { Resolver: o }, + lookup: s, + } = r(40881), + { promisify: A } = r(31669), + a = r(12087), + { getResolver: c } = r(76438), + u = Symbol('cacheableLookupCreateConnection'), + l = Symbol('cacheableLookupInstance'), + h = (e) => { + if (!e || 'function' != typeof e.createConnection) + throw new Error('Expected an Agent instance as the first argument'); + }, + g = () => { + let e = !1, + t = !1; + for (const r of Object.values(a.networkInterfaces())) + for (const n of r) + if (!n.internal && ('IPv6' === n.family ? (t = !0) : (e = !0), e && t)) + return { has4: e, has6: t }; + return { has4: e, has6: t }; + }, + f = { ttl: !0 }; + class p { + constructor({ + customHostsPath: e, + watchingHostsFile: t = !1, + cache: r = new Map(), + maxTtl: n = 1 / 0, + resolver: i = new o(), + fallbackTtl: a = 1, + errorTtl: u = 0.15, + } = {}) { + (this.maxTtl = n), + (this.fallbackTtl = a), + (this.errorTtl = u), + (this._cache = r), + (this._resolver = i), + (this._lookup = A(s)), + this._resolver instanceof o + ? ((this._resolve4 = this._resolver.resolve4.bind(this._resolver)), + (this._resolve6 = this._resolver.resolve6.bind(this._resolver))) + : ((this._resolve4 = A(this._resolver.resolve4.bind(this._resolver))), + (this._resolve6 = A(this._resolver.resolve6.bind(this._resolver)))), + (this._iface = g()), + (this._hostsResolver = c({ customHostsPath: e, watching: t })), + (this._pending = {}), + (this._nextRemovalTime = !1), + (this.lookup = this.lookup.bind(this)), + (this.lookupAsync = this.lookupAsync.bind(this)); + } + set servers(e) { + this.updateInterfaceInfo(), this._resolver.setServers(e); + } + get servers() { + return this._resolver.getServers(); + } + lookup(e, t, r) { + if ( + ('function' == typeof t + ? ((r = t), (t = {})) + : 'number' == typeof t && (t = { family: t }), + !r) + ) + throw new Error('Callback must be a function.'); + this.lookupAsync(e, t).then((e) => { + t.all ? r(null, e) : r(null, e.address, e.family, e.expires, e.ttl); + }, r); + } + async lookupAsync(e, t = {}) { + 'number' == typeof t && (t = { family: t }); + let r = await this.query(e); + if (6 === t.family) { + const e = r.filter((e) => 6 === e.family); + 0 === e.length && t.hints & n + ? ((e) => { + for (const t of e) (t.address = '::ffff:' + t.address), (t.family = 6); + })(r) + : (r = e); + } else 4 === t.family && (r = r.filter((e) => 4 === e.family)); + if (t.hints & i) { + const { _iface: e } = this; + r = r.filter((t) => (6 === t.family ? e.has6 : e.has4)); + } + if (0 === r.length) { + const t = new Error('ENOTFOUND ' + e); + throw ((t.code = 'ENOTFOUND'), (t.hostname = e), t); + } + return t.all ? r : 1 === r.length ? r[0] : this._getEntry(r, e); + } + async query(e) { + let t = (await this._hostsResolver.get(e)) || (await this._cache.get(e)); + if (!t) { + const r = this._pending[e]; + if (r) t = await r; + else { + const r = this.queryAndCache(e); + (this._pending[e] = r), (t = await r); + } + } + return (t = t.map((e) => ({ ...e }))), t; + } + async queryAndCache(e) { + const [t, r] = await Promise.all([ + this._resolve4(e, f).catch(() => []), + this._resolve6(e, f).catch(() => []), + ]); + let n = 0; + if (t) + for (const e of t) + (e.family = 4), (e.expires = Date.now() + 1e3 * e.ttl), (n = Math.max(n, e.ttl)); + if (r) + for (const e of r) + (e.family = 6), (e.expires = Date.now() + 1e3 * e.ttl), (n = Math.max(n, e.ttl)); + let i = [...(t || []), ...(r || [])]; + if (0 === i.length) + try { + i = await this._lookup(e, { all: !0 }); + for (const e of i) + (e.ttl = this.fallbackTtl), (e.expires = Date.now() + 1e3 * e.ttl); + n = 1e3 * this.fallbackTtl; + } catch (t) { + throw ( + (delete this._pending[e], + 'ENOTFOUND' === t.code && + ((n = 1e3 * this.errorTtl), + (i.expires = Date.now() + n), + await this._cache.set(e, i, n), + this._tick(n)), + t) + ); + } + else n = 1e3 * Math.min(this.maxTtl, n); + return ( + this.maxTtl > 0 && + n > 0 && + ((i.expires = Date.now() + n), await this._cache.set(e, i, n), this._tick(n)), + delete this._pending[e], + i + ); + } + _getEntry(e, t) { + return e[0]; + } + tick() {} + _tick(e) { + if (!(this._cache instanceof Map) || void 0 === e) return; + const t = this._nextRemovalTime; + (!t || e < t) && + (clearTimeout(this._removalTimeout), + (this._nextRemovalTime = e), + (this._removalTimeout = setTimeout(() => { + this._nextRemovalTime = !1; + let e = 1 / 0; + const t = Date.now(); + for (const [r, { expires: n }] of this._cache) + t >= n ? this._cache.delete(r) : n < e && (e = n); + e !== 1 / 0 && this._tick(e - t); + }, e)), + this._removalTimeout.unref && this._removalTimeout.unref()); + } + install(e) { + if ((h(e), u in e)) throw new Error('CacheableLookup has been already installed'); + (e[u] = e.createConnection), + (e[l] = this), + (e.createConnection = (t, r) => ( + 'lookup' in t || (t.lookup = this.lookup), e[u](t, r) + )); + } + uninstall(e) { + if ((h(e), e[u])) { + if (e[l] !== this) + throw new Error('The agent is not owned by this CacheableLookup instance'); + (e.createConnection = e[u]), delete e[u], delete e[l]; + } + } + updateInterfaceInfo() { + (this._iface = g()), this._cache.clear(); + } + clear(e) { + e ? this._cache.delete(e) : this._cache.clear(); + } + } + (e.exports = p), (e.exports.default = p); + }, + 11200: (e, t, r) => { + 'use strict'; + const n = r(28614), + i = r(78835), + o = r(19793), + s = r(58764), + A = r(86834), + a = r(48491), + c = r(55737), + u = r(15751), + l = r(72515); + class h { + constructor(e, t) { + if ('function' != typeof e) + throw new TypeError('Parameter `request` must be a function'); + return ( + (this.cache = new l({ + uri: 'string' == typeof t && t, + store: 'string' != typeof t && t, + namespace: 'cacheable-request', + })), + this.createCacheableRequest(e) + ); + } + createCacheableRequest(e) { + return (t, r) => { + let l; + if ('string' == typeof t) (l = f(i.parse(t))), (t = {}); + else if (t instanceof i.URL) (l = f(i.parse(t.toString()))), (t = {}); + else { + const [e, ...r] = (t.path || '').split('?'), + n = r.length > 0 ? '?' + r.join('?') : ''; + l = f({ ...t, pathname: e, search: n }); + } + (t = { + headers: {}, + method: 'GET', + cache: !0, + strictTtl: !1, + automaticFailover: !1, + ...t, + ...g(l), + }).headers = c(t.headers); + const p = new n(), + d = o(i.format(l), { + stripWWW: !1, + removeTrailingSlash: !1, + stripAuthentication: !1, + }), + C = `${t.method}:${d}`; + let E = !1, + I = !1; + const m = (t) => { + I = !0; + let n, + i = !1; + const o = new Promise((e) => { + n = () => { + i || ((i = !0), e()); + }; + }), + c = (e) => { + if (E && !t.forceRefresh) { + e.status = e.statusCode; + const r = A.fromObject(E.cachePolicy).revalidatedPolicy(t, e); + if (!r.modified) { + const t = r.policy.responseHeaders(); + ((e = new a(E.statusCode, t, E.body, E.url)).cachePolicy = r.policy), + (e.fromCache = !0); + } + } + let n; + e.fromCache || ((e.cachePolicy = new A(t, e, t)), (e.fromCache = !1)), + t.cache && e.cachePolicy.storable() + ? ((n = u(e)), + (async () => { + try { + const r = s.buffer(e); + if ( + (await Promise.race([o, new Promise((t) => e.once('end', t))]), i) + ) + return; + const n = await r, + A = { + cachePolicy: e.cachePolicy.toObject(), + url: e.url, + statusCode: e.fromCache ? E.statusCode : e.statusCode, + body: n, + }; + let a = t.strictTtl ? e.cachePolicy.timeToLive() : void 0; + t.maxTtl && (a = a ? Math.min(a, t.maxTtl) : t.maxTtl), + await this.cache.set(C, A, a); + } catch (e) { + p.emit('error', new h.CacheError(e)); + } + })()) + : t.cache && + E && + (async () => { + try { + await this.cache.delete(C); + } catch (e) { + p.emit('error', new h.CacheError(e)); + } + })(), + p.emit('response', n || e), + 'function' == typeof r && r(n || e); + }; + try { + const r = e(t, c); + r.once('error', n), r.once('abort', n), p.emit('request', r); + } catch (e) { + p.emit('error', new h.RequestError(e)); + } + }; + return ( + (async () => { + const e = async (e) => { + await Promise.resolve(); + const t = e.cache ? await this.cache.get(C) : void 0; + if (void 0 === t) return m(e); + const n = A.fromObject(t.cachePolicy); + if (n.satisfiesWithoutRevalidation(e) && !e.forceRefresh) { + const e = n.responseHeaders(), + i = new a(t.statusCode, e, t.body, t.url); + (i.cachePolicy = n), + (i.fromCache = !0), + p.emit('response', i), + 'function' == typeof r && r(i); + } else (E = t), (e.headers = n.revalidationHeaders(e)), m(e); + }, + n = (e) => p.emit('error', new h.CacheError(e)); + this.cache.once('error', n), + p.on('response', () => this.cache.removeListener('error', n)); + try { + await e(t); + } catch (e) { + t.automaticFailover && !I && m(t), p.emit('error', new h.CacheError(e)); + } + })(), + p + ); + }; + } + } + function g(e) { + const t = { ...e }; + return ( + (t.path = `${e.pathname || '/'}${e.search || ''}`), + delete t.pathname, + delete t.search, + t + ); + } + function f(e) { + return { + protocol: e.protocol, + auth: e.auth, + hostname: e.hostname || e.host || 'localhost', + port: e.port, + pathname: e.pathname, + search: e.search, + }; + } + (h.RequestError = class extends Error { + constructor(e) { + super(e.message), (this.name = 'RequestError'), Object.assign(this, e); + } + }), + (h.CacheError = class extends Error { + constructor(e) { + super(e.message), (this.name = 'CacheError'), Object.assign(this, e); + } + }), + (e.exports = h); + }, + 54738: (e) => { + 'use strict'; + const t = (e, t) => { + if ('string' != typeof e && !Array.isArray(e)) + throw new TypeError('Expected the input to be `string | string[]`'); + t = Object.assign({ pascalCase: !1 }, t); + if ( + 0 === + (e = Array.isArray(e) + ? e + .map((e) => e.trim()) + .filter((e) => e.length) + .join('-') + : e.trim()).length + ) + return ''; + if (1 === e.length) return t.pascalCase ? e.toUpperCase() : e.toLowerCase(); + return ( + e !== e.toLowerCase() && + (e = ((e) => { + let t = !1, + r = !1, + n = !1; + for (let i = 0; i < e.length; i++) { + const o = e[i]; + t && /[a-zA-Z]/.test(o) && o.toUpperCase() === o + ? ((e = e.slice(0, i) + '-' + e.slice(i)), (t = !1), (n = r), (r = !0), i++) + : r && n && /[a-zA-Z]/.test(o) && o.toLowerCase() === o + ? ((e = e.slice(0, i - 1) + '-' + e.slice(i - 1)), (n = r), (r = !1), (t = !0)) + : ((t = o.toLowerCase() === o && o.toUpperCase() !== o), + (n = r), + (r = o.toUpperCase() === o && o.toLowerCase() !== o)); + } + return e; + })(e)), + (e = e + .replace(/^[_.\- ]+/, '') + .toLowerCase() + .replace(/[_.\- ]+(\w|$)/g, (e, t) => t.toUpperCase()) + .replace(/\d+(\w|$)/g, (e) => e.toUpperCase())), + (r = e), + t.pascalCase ? r.charAt(0).toUpperCase() + r.slice(1) : r + ); + var r; + }; + (e.exports = t), (e.exports.default = t); + }, + 95882: (e, t, r) => { + 'use strict'; + const n = r(18483), + { stdout: i, stderr: o } = r(59428), + { stringReplaceAll: s, stringEncaseCRLFWithFirstIndex: A } = r(73327), + a = ['ansi', 'ansi', 'ansi256', 'ansi16m'], + c = Object.create(null); + class u { + constructor(e) { + return l(e); + } + } + const l = (e) => { + const t = {}; + return ( + ((e, t = {}) => { + if (t.level > 3 || t.level < 0) + throw new Error('The `level` option should be an integer from 0 to 3'); + const r = i ? i.level : 0; + e.level = void 0 === t.level ? r : t.level; + })(t, e), + (t.template = (...e) => I(t.template, ...e)), + Object.setPrototypeOf(t, h.prototype), + Object.setPrototypeOf(t.template, t), + (t.template.constructor = () => { + throw new Error( + '`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.' + ); + }), + (t.template.Instance = u), + t.template + ); + }; + function h(e) { + return l(e); + } + for (const [e, t] of Object.entries(n)) + c[e] = { + get() { + const r = d(this, p(t.open, t.close, this._styler), this._isEmpty); + return Object.defineProperty(this, e, { value: r }), r; + }, + }; + c.visible = { + get() { + const e = d(this, this._styler, !0); + return Object.defineProperty(this, 'visible', { value: e }), e; + }, + }; + const g = ['rgb', 'hex', 'keyword', 'hsl', 'hsv', 'hwb', 'ansi', 'ansi256']; + for (const e of g) + c[e] = { + get() { + const { level: t } = this; + return function (...r) { + const i = p(n.color[a[t]][e](...r), n.color.close, this._styler); + return d(this, i, this._isEmpty); + }; + }, + }; + for (const e of g) { + c['bg' + e[0].toUpperCase() + e.slice(1)] = { + get() { + const { level: t } = this; + return function (...r) { + const i = p(n.bgColor[a[t]][e](...r), n.bgColor.close, this._styler); + return d(this, i, this._isEmpty); + }; + }, + }; + } + const f = Object.defineProperties(() => {}, { + ...c, + level: { + enumerable: !0, + get() { + return this._generator.level; + }, + set(e) { + this._generator.level = e; + }, + }, + }), + p = (e, t, r) => { + let n, i; + return ( + void 0 === r ? ((n = e), (i = t)) : ((n = r.openAll + e), (i = t + r.closeAll)), + { open: e, close: t, openAll: n, closeAll: i, parent: r } + ); + }, + d = (e, t, r) => { + const n = (...e) => C(n, 1 === e.length ? '' + e[0] : e.join(' ')); + return (n.__proto__ = f), (n._generator = e), (n._styler = t), (n._isEmpty = r), n; + }, + C = (e, t) => { + if (e.level <= 0 || !t) return e._isEmpty ? '' : t; + let r = e._styler; + if (void 0 === r) return t; + const { openAll: n, closeAll: i } = r; + if (-1 !== t.indexOf('')) + for (; void 0 !== r; ) (t = s(t, r.close, r.open)), (r = r.parent); + const o = t.indexOf('\n'); + return -1 !== o && (t = A(t, i, n, o)), n + t + i; + }; + let E; + const I = (e, ...t) => { + const [n] = t; + if (!Array.isArray(n)) return t.join(' '); + const i = t.slice(1), + o = [n.raw[0]]; + for (let e = 1; e < n.length; e++) + o.push(String(i[e - 1]).replace(/[{}\\]/g, '\\$&'), String(n.raw[e])); + return void 0 === E && (E = r(80690)), E(e, o.join('')); + }; + Object.defineProperties(h.prototype, c); + const m = h(); + (m.supportsColor = i), + (m.stderr = h({ level: o ? o.level : 0 })), + (m.stderr.supportsColor = o), + (m.Level = { + None: 0, + Basic: 1, + Ansi256: 2, + TrueColor: 3, + 0: 'None', + 1: 'Basic', + 2: 'Ansi256', + 3: 'TrueColor', + }), + (e.exports = m); + }, + 80690: (e) => { + 'use strict'; + const t = /(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi, + r = /(?:^|\.)(\w+)(?:\(([^)]*)\))?/g, + n = /^(['"])((?:\\.|(?!\1)[^\\])*)\1$/, + i = /\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.)|([^\\])/gi, + o = new Map([ + ['n', '\n'], + ['r', '\r'], + ['t', '\t'], + ['b', '\b'], + ['f', '\f'], + ['v', '\v'], + ['0', '\0'], + ['\\', '\\'], + ['e', ''], + ['a', ''], + ]); + function s(e) { + const t = 'u' === e[0], + r = '{' === e[1]; + return (t && !r && 5 === e.length) || ('x' === e[0] && 3 === e.length) + ? String.fromCharCode(parseInt(e.slice(1), 16)) + : t && r + ? String.fromCodePoint(parseInt(e.slice(2, -1), 16)) + : o.get(e) || e; + } + function A(e, t) { + const r = [], + o = t.trim().split(/\s*,\s*/g); + let A; + for (const t of o) { + const o = Number(t); + if (Number.isNaN(o)) { + if (!(A = t.match(n))) + throw new Error(`Invalid Chalk template style argument: ${t} (in style '${e}')`); + r.push(A[2].replace(i, (e, t, r) => (t ? s(t) : r))); + } else r.push(o); + } + return r; + } + function a(e) { + r.lastIndex = 0; + const t = []; + let n; + for (; null !== (n = r.exec(e)); ) { + const e = n[1]; + if (n[2]) { + const r = A(e, n[2]); + t.push([e].concat(r)); + } else t.push([e]); + } + return t; + } + function c(e, t) { + const r = {}; + for (const e of t) for (const t of e.styles) r[t[0]] = e.inverse ? null : t.slice(1); + let n = e; + for (const [e, t] of Object.entries(r)) + if (Array.isArray(t)) { + if (!(e in n)) throw new Error('Unknown Chalk style: ' + e); + n = t.length > 0 ? n[e](...t) : n[e]; + } + return n; + } + e.exports = (e, r) => { + const n = [], + i = []; + let o = []; + if ( + (r.replace(t, (t, r, A, u, l, h) => { + if (r) o.push(s(r)); + else if (u) { + const t = o.join(''); + (o = []), + i.push(0 === n.length ? t : c(e, n)(t)), + n.push({ inverse: A, styles: a(u) }); + } else if (l) { + if (0 === n.length) throw new Error('Found extraneous } in Chalk template literal'); + i.push(c(e, n)(o.join(''))), (o = []), n.pop(); + } else o.push(h); + }), + i.push(o.join('')), + n.length > 0) + ) { + const e = `Chalk template literal is missing ${n.length} closing bracket${ + 1 === n.length ? '' : 's' + } (\`}\`)`; + throw new Error(e); + } + return i.join(''); + }; + }, + 73327: (e) => { + 'use strict'; + e.exports = { + stringReplaceAll: (e, t, r) => { + let n = e.indexOf(t); + if (-1 === n) return e; + const i = t.length; + let o = 0, + s = ''; + do { + (s += e.substr(o, n - o) + t + r), (o = n + i), (n = e.indexOf(t, o)); + } while (-1 !== n); + return (s += e.substr(o)), s; + }, + stringEncaseCRLFWithFirstIndex: (e, t, r, n) => { + let i = 0, + o = ''; + do { + const s = '\r' === e[n - 1]; + (o += e.substr(i, (s ? n - 1 : n) - i) + t + (s ? '\r\n' : '\n') + r), + (i = n + 1), + (n = e.indexOf('\n', i)); + } while (-1 !== n); + return (o += e.substr(i)), o; + }, + }; + }, + 31059: (e, t, r) => { + var n = r(31669), + i = r(24250); + function o() {} + (o.prototype.match = function (e) { + var t, + r, + n, + o, + s = 0, + A = 0, + a = 0, + c = e.fInputBytes, + u = e.fInputLen; + e: for (t = 0; t < u; t++) { + if (27 == c[t]) { + t: for (n = 0; n < this.escapeSequences.length; n++) { + var l = this.escapeSequences[n]; + if (!(u - t < l.length)) { + for (r = 1; r < l.length; r++) if (l[r] != c[t + r]) continue t; + s++, (t += l.length - 1); + continue e; + } + } + A++; + } + (14 != c[t] && 15 != c[t]) || a++; + } + return 0 == s + ? null + : ((o = (100 * s - 100 * A) / (s + A)), + s + a < 5 && (o -= 10 * (5 - (s + a))), + o <= 0 ? null : new i(e, this, o)); + }), + (e.exports.ISO_2022_JP = function () { + (this.name = function () { + return 'ISO-2022-JP'; + }), + (this.escapeSequences = [ + [27, 36, 40, 67], + [27, 36, 40, 68], + [27, 36, 64], + [27, 36, 65], + [27, 36, 66], + [27, 38, 64], + [27, 40, 66], + [27, 40, 72], + [27, 40, 73], + [27, 40, 74], + [27, 46, 65], + [27, 46, 70], + ]); + }), + n.inherits(e.exports.ISO_2022_JP, o), + (e.exports.ISO_2022_KR = function () { + (this.name = function () { + return 'ISO-2022-KR'; + }), + (this.escapeSequences = [[27, 36, 41, 67]]); + }), + n.inherits(e.exports.ISO_2022_KR, o), + (e.exports.ISO_2022_CN = function () { + (this.name = function () { + return 'ISO-2022-CN'; + }), + (this.escapeSequences = [ + [27, 36, 41, 65], + [27, 36, 41, 71], + [27, 36, 42, 72], + [27, 36, 41, 69], + [27, 36, 43, 73], + [27, 36, 43, 74], + [27, 36, 43, 75], + [27, 36, 43, 76], + [27, 36, 43, 77], + [27, 78], + [27, 79], + ]); + }), + n.inherits(e.exports.ISO_2022_CN, o); + }, + 9044: (e, t, r) => { + var n = r(31669), + i = r(24250); + function o() { + (this.charValue = 0), + (this.index = 0), + (this.nextIndex = 0), + (this.error = !1), + (this.done = !1), + (this.reset = function () { + (this.charValue = 0), + (this.index = -1), + (this.nextIndex = 0), + (this.error = !1), + (this.done = !1); + }), + (this.nextByte = function (e) { + return this.nextIndex >= e.fRawLength + ? ((this.done = !0), -1) + : 255 & e.fRawInput[this.nextIndex++]; + }); + } + function s() {} + function A(e, t) { + (e.index = e.nextIndex), (e.error = !1); + var r = 0, + n = 0, + i = 0; + return ( + (r = e.charValue = e.nextByte(t)) < 0 + ? (e.done = !0) + : r <= 141 || + ((n = e.nextByte(t)), + (e.charValue = (e.charValue << 8) | n), + r >= 161 && r <= 254 + ? n < 161 && (e.error = !0) + : 142 != r + ? 143 == r && + ((i = e.nextByte(t)), + (e.charValue = (e.charValue << 8) | i), + i < 161 && (e.error = !0)) + : n < 161 && (e.error = !0)), + 0 == e.done + ); + } + (s.prototype.match = function (e) { + var t, + r = 0, + n = 0, + s = 0, + A = 0, + a = 0, + c = new o(); + e: { + for (c.reset(); this.nextChar(c, e); ) { + if ((A++, c.error)) s++; + else { + var u = 4294967295 & c.charValue; + u <= 255 + ? 0 + : (r++, + null != this.commonChars && + (function e(t, r, n, i) { + if (i < n) return -1; + var o = Math.floor((n + i) >>> 1); + return r > t[o] ? e(t, r, o + 1, i) : r < t[o] ? e(t, r, n, o - 1) : o; + })((t = this.commonChars), u, 0, t.length - 1) >= 0 && + n++); + } + if (s >= 2 && 5 * s >= r) break e; + } + if (r <= 10 && 0 == s) a = 0 == r && A < 10 ? 0 : 10; + else if (r < 20 * s) a = 0; + else if (null == this.commonChars) (a = 30 + r - 20 * s) > 100 && (a = 100); + else { + var l = 90 / Math.log(parseFloat(r) / 4); + (a = Math.floor(Math.log(n + 1) * l + 10)), (a = Math.min(a, 100)); + } + } + return 0 == a ? null : new i(e, this, a); + }), + (s.prototype.nextChar = function (e, t) {}), + (e.exports.sjis = function () { + (this.name = function () { + return 'Shift-JIS'; + }), + (this.language = function () { + return 'ja'; + }), + (this.commonChars = [ + 33088, + 33089, + 33090, + 33093, + 33115, + 33129, + 33130, + 33141, + 33142, + 33440, + 33442, + 33444, + 33449, + 33450, + 33451, + 33453, + 33455, + 33457, + 33459, + 33461, + 33463, + 33469, + 33470, + 33473, + 33476, + 33477, + 33478, + 33480, + 33481, + 33484, + 33485, + 33500, + 33504, + 33511, + 33512, + 33513, + 33514, + 33520, + 33521, + 33601, + 33603, + 33614, + 33615, + 33624, + 33630, + 33634, + 33639, + 33653, + 33654, + 33673, + 33674, + 33675, + 33677, + 33683, + 36502, + 37882, + 38314, + ]), + (this.nextChar = function (e, t) { + var r; + if ( + ((e.index = e.nextIndex), (e.error = !1), (r = e.charValue = e.nextByte(t)) < 0) + ) + return !1; + if (r <= 127 || (r > 160 && r <= 223)) return !0; + var n = e.nextByte(t); + return ( + !(n < 0) && + ((e.charValue = (r << 8) | n), + (n >= 64 && n <= 127) || (n >= 128 && n <= 255) || (e.error = !0), + !0) + ); + }); + }), + n.inherits(e.exports.sjis, s), + (e.exports.big5 = function () { + (this.name = function () { + return 'Big5'; + }), + (this.language = function () { + return 'zh'; + }), + (this.commonChars = [ + 41280, + 41281, + 41282, + 41283, + 41287, + 41289, + 41333, + 41334, + 42048, + 42054, + 42055, + 42056, + 42065, + 42068, + 42071, + 42084, + 42090, + 42092, + 42103, + 42147, + 42148, + 42151, + 42177, + 42190, + 42193, + 42207, + 42216, + 42237, + 42304, + 42312, + 42328, + 42345, + 42445, + 42471, + 42583, + 42593, + 42594, + 42600, + 42608, + 42664, + 42675, + 42681, + 42707, + 42715, + 42726, + 42738, + 42816, + 42833, + 42841, + 42970, + 43171, + 43173, + 43181, + 43217, + 43219, + 43236, + 43260, + 43456, + 43474, + 43507, + 43627, + 43706, + 43710, + 43724, + 43772, + 44103, + 44111, + 44208, + 44242, + 44377, + 44745, + 45024, + 45290, + 45423, + 45747, + 45764, + 45935, + 46156, + 46158, + 46412, + 46501, + 46525, + 46544, + 46552, + 46705, + 47085, + 47207, + 47428, + 47832, + 47940, + 48033, + 48593, + 49860, + 50105, + 50240, + 50271, + ]), + (this.nextChar = function (e, t) { + (e.index = e.nextIndex), (e.error = !1); + var r = (e.charValue = e.nextByte(t)); + if (r < 0) return !1; + if (r <= 127 || 255 == r) return !0; + var n = e.nextByte(t); + return ( + !(n < 0) && + ((e.charValue = (e.charValue << 8) | n), + (n < 64 || 127 == n || 255 == n) && (e.error = !0), + !0) + ); + }); + }), + n.inherits(e.exports.big5, s), + (e.exports.euc_jp = function () { + (this.name = function () { + return 'EUC-JP'; + }), + (this.language = function () { + return 'ja'; + }), + (this.commonChars = [ + 41377, + 41378, + 41379, + 41382, + 41404, + 41418, + 41419, + 41430, + 41431, + 42146, + 42148, + 42150, + 42152, + 42154, + 42155, + 42156, + 42157, + 42159, + 42161, + 42163, + 42165, + 42167, + 42169, + 42171, + 42173, + 42175, + 42176, + 42177, + 42179, + 42180, + 42182, + 42183, + 42184, + 42185, + 42186, + 42187, + 42190, + 42191, + 42192, + 42206, + 42207, + 42209, + 42210, + 42212, + 42216, + 42217, + 42218, + 42219, + 42220, + 42223, + 42226, + 42227, + 42402, + 42403, + 42404, + 42406, + 42407, + 42410, + 42413, + 42415, + 42416, + 42419, + 42421, + 42423, + 42424, + 42425, + 42431, + 42435, + 42438, + 42439, + 42440, + 42441, + 42443, + 42448, + 42453, + 42454, + 42455, + 42462, + 42464, + 42465, + 42469, + 42473, + 42474, + 42475, + 42476, + 42477, + 42483, + 47273, + 47572, + 47854, + 48072, + 48880, + 49079, + 50410, + 50940, + 51133, + 51896, + 51955, + 52188, + 52689, + ]), + (this.nextChar = A); + }), + n.inherits(e.exports.euc_jp, s), + (e.exports.euc_kr = function () { + (this.name = function () { + return 'EUC-KR'; + }), + (this.language = function () { + return 'ko'; + }), + (this.commonChars = [ + 45217, + 45235, + 45253, + 45261, + 45268, + 45286, + 45293, + 45304, + 45306, + 45308, + 45496, + 45497, + 45511, + 45527, + 45538, + 45994, + 46011, + 46274, + 46287, + 46297, + 46315, + 46501, + 46517, + 46527, + 46535, + 46569, + 46835, + 47023, + 47042, + 47054, + 47270, + 47278, + 47286, + 47288, + 47291, + 47337, + 47531, + 47534, + 47564, + 47566, + 47613, + 47800, + 47822, + 47824, + 47857, + 48103, + 48115, + 48125, + 48301, + 48314, + 48338, + 48374, + 48570, + 48576, + 48579, + 48581, + 48838, + 48840, + 48863, + 48878, + 48888, + 48890, + 49057, + 49065, + 49088, + 49124, + 49131, + 49132, + 49144, + 49319, + 49327, + 49336, + 49338, + 49339, + 49341, + 49351, + 49356, + 49358, + 49359, + 49366, + 49370, + 49381, + 49403, + 49404, + 49572, + 49574, + 49590, + 49622, + 49631, + 49654, + 49656, + 50337, + 50637, + 50862, + 51151, + 51153, + 51154, + 51160, + 51173, + 51373, + ]), + (this.nextChar = A); + }), + n.inherits(e.exports.euc_kr, s), + (e.exports.gb_18030 = function () { + (this.name = function () { + return 'GB18030'; + }), + (this.language = function () { + return 'zh'; + }), + (this.nextChar = function (e, t) { + (e.index = e.nextIndex), (e.error = !1); + var r = 0, + n = 0, + i = 0, + o = 0; + e: if ((r = e.charValue = e.nextByte(t)) < 0) e.done = !0; + else if (!(r <= 128)) + if ( + ((n = e.nextByte(t)), + (e.charValue = (e.charValue << 8) | n), + r >= 129 && r <= 254) + ) { + if ((n >= 64 && n <= 126) || (n >= 80 && n <= 254)) break e; + if ( + n >= 48 && + n <= 57 && + (i = e.nextByte(t)) >= 129 && + i <= 254 && + (o = e.nextByte(t)) >= 48 && + o <= 57 + ) { + e.charValue = (e.charValue << 16) | (i << 8) | o; + break e; + } + e.error = !0; + } else; + return 0 == e.done; + }), + (this.commonChars = [ + 41377, + 41378, + 41379, + 41380, + 41392, + 41393, + 41457, + 41459, + 41889, + 41900, + 41914, + 45480, + 45496, + 45502, + 45755, + 46025, + 46070, + 46323, + 46525, + 46532, + 46563, + 46767, + 46804, + 46816, + 47010, + 47016, + 47037, + 47062, + 47069, + 47284, + 47327, + 47350, + 47531, + 47561, + 47576, + 47610, + 47613, + 47821, + 48039, + 48086, + 48097, + 48122, + 48316, + 48347, + 48382, + 48588, + 48845, + 48861, + 49076, + 49094, + 49097, + 49332, + 49389, + 49611, + 49883, + 50119, + 50396, + 50410, + 50636, + 50935, + 51192, + 51371, + 51403, + 51413, + 51431, + 51663, + 51706, + 51889, + 51893, + 51911, + 51920, + 51926, + 51957, + 51965, + 52460, + 52728, + 52906, + 52932, + 52946, + 52965, + 53173, + 53186, + 53206, + 53442, + 53445, + 53456, + 53460, + 53671, + 53930, + 53938, + 53941, + 53947, + 53972, + 54211, + 54224, + 54269, + 54466, + 54490, + 54754, + 54992, + ]); + }), + n.inherits(e.exports.gb_18030, s); + }, + 71216: (e, t, r) => { + var n = r(31669), + i = r(24250); + function o(e, t) { + (this.byteIndex = 0), + (this.ngram = 0), + (this.ngramList = e), + (this.byteMap = t), + (this.ngramCount = 0), + (this.hitCount = 0), + this.spaceChar, + (this.search = function (e, t) { + var r = 0; + return ( + e[r + 32] <= t && (r += 32), + e[r + 16] <= t && (r += 16), + e[r + 8] <= t && (r += 8), + e[r + 4] <= t && (r += 4), + e[r + 2] <= t && (r += 2), + e[r + 1] <= t && (r += 1), + e[r] > t && (r -= 1), + r < 0 || e[r] != t ? -1 : r + ); + }), + (this.lookup = function (e) { + (this.ngramCount += 1), this.search(this.ngramList, e) >= 0 && (this.hitCount += 1); + }), + (this.addByte = function (e) { + (this.ngram = ((this.ngram << 8) + (255 & e)) & 16777215), this.lookup(this.ngram); + }), + (this.nextByte = function (e) { + return this.byteIndex >= e.fInputLen ? -1 : 255 & e.fInputBytes[this.byteIndex++]; + }), + (this.parse = function (e, t) { + var r, + n = !1; + for (this.spaceChar = t; (r = this.nextByte(e)) >= 0; ) { + var i = this.byteMap[r]; + 0 != i && + ((i == this.spaceChar && n) || this.addByte(i), (n = i == this.spaceChar)); + } + this.addByte(this.spaceChar); + var o = this.hitCount / this.ngramCount; + return o > 0.33 ? 98 : Math.floor(300 * o); + }); + } + function s(e, t) { + (this.fLang = e), (this.fNGrams = t); + } + function A() {} + (A.prototype.spaceChar = 32), + (A.prototype.ngrams = function () {}), + (A.prototype.byteMap = function () {}), + (A.prototype.match = function (e) { + var t = this.ngrams(); + if (!(Array.isArray(t) && t[0] instanceof s)) + return (a = new o(t, this.byteMap()).parse(e, this.spaceChar)) <= 0 + ? null + : new i(e, this, a); + for (var r = -1, n = null, A = t.length - 1; A >= 0; A--) { + var a, + c = t[A]; + (a = new o(c.fNGrams, this.byteMap()).parse(e, this.spaceChar)) > r && + ((r = a), (n = c.fLang)); + } + var u = this.name(e); + return r <= 0 ? null : new i(e, this, r, u, n); + }), + (e.exports.ISO_8859_1 = function () { + (this.byteMap = function () { + return [ + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 0, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 32, + 32, + 32, + 32, + 32, + 32, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 170, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 181, + 32, + 32, + 32, + 32, + 186, + 32, + 32, + 32, + 32, + 32, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 32, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 32, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + ]; + }), + (this.ngrams = function () { + return [ + new s('da', [ + 2122086, + 2122100, + 2122853, + 2123118, + 2123122, + 2123375, + 2123873, + 2124064, + 2125157, + 2125671, + 2126053, + 2126697, + 2126708, + 2126953, + 2127465, + 6383136, + 6385184, + 6385252, + 6386208, + 6386720, + 6579488, + 6579566, + 6579570, + 6579572, + 6627443, + 6644768, + 6644837, + 6647328, + 6647396, + 6648352, + 6648421, + 6648608, + 6648864, + 6713202, + 6776096, + 6776174, + 6776178, + 6907749, + 6908960, + 6909543, + 7038240, + 7039845, + 7103858, + 7104871, + 7105637, + 7169380, + 7234661, + 7234848, + 7235360, + 7235429, + 7300896, + 7302432, + 7303712, + 7398688, + 7479396, + 7479397, + 7479411, + 7496992, + 7566437, + 7610483, + 7628064, + 7628146, + 7629164, + 7759218, + ]), + new s('de', [ + 2122094, + 2122101, + 2122341, + 2122849, + 2122853, + 2122857, + 2123113, + 2123621, + 2123873, + 2124142, + 2125161, + 2126691, + 2126693, + 2127214, + 2127461, + 2127471, + 2127717, + 2128501, + 6448498, + 6514720, + 6514789, + 6514804, + 6578547, + 6579566, + 6579570, + 6580581, + 6627428, + 6627443, + 6646126, + 6646132, + 6647328, + 6648352, + 6648608, + 6776174, + 6841710, + 6845472, + 6906728, + 6907168, + 6909472, + 6909541, + 6911008, + 7104867, + 7105637, + 7217249, + 7217252, + 7217267, + 7234592, + 7234661, + 7234848, + 7235360, + 7235429, + 7238757, + 7479396, + 7496805, + 7497065, + 7562088, + 7566437, + 7610468, + 7628064, + 7628142, + 7628146, + 7695972, + 7695975, + 7759218, + ]), + new s('en', [ + 2122016, + 2122094, + 2122341, + 2122607, + 2123375, + 2123873, + 2123877, + 2124142, + 2125153, + 2125670, + 2125938, + 2126437, + 2126689, + 2126708, + 2126952, + 2126959, + 2127720, + 6383972, + 6384672, + 6385184, + 6385252, + 6386464, + 6386720, + 6386789, + 6386793, + 6561889, + 6561908, + 6627425, + 6627443, + 6627444, + 6644768, + 6647412, + 6648352, + 6648608, + 6713202, + 6840692, + 6841632, + 6841714, + 6906912, + 6909472, + 6909543, + 6909806, + 6910752, + 7217249, + 7217268, + 7234592, + 7235360, + 7238688, + 7300640, + 7302688, + 7303712, + 7496992, + 7500576, + 7544929, + 7544948, + 7561577, + 7566368, + 7610484, + 7628146, + 7628897, + 7628901, + 7629167, + 7630624, + 7631648, + ]), + new s('es', [ + 2122016, + 2122593, + 2122607, + 2122853, + 2123116, + 2123118, + 2123123, + 2124142, + 2124897, + 2124911, + 2125921, + 2125935, + 2125938, + 2126197, + 2126437, + 2126693, + 2127214, + 2128160, + 6365283, + 6365284, + 6365285, + 6365292, + 6365296, + 6382441, + 6382703, + 6384672, + 6386208, + 6386464, + 6515187, + 6516590, + 6579488, + 6579564, + 6582048, + 6627428, + 6627429, + 6627436, + 6646816, + 6647328, + 6647412, + 6648608, + 6648692, + 6907246, + 6943598, + 7102752, + 7106419, + 7217253, + 7238757, + 7282788, + 7282789, + 7302688, + 7303712, + 7303968, + 7364978, + 7435621, + 7495968, + 7497075, + 7544932, + 7544933, + 7544944, + 7562528, + 7628064, + 7630624, + 7693600, + 15953440, + ]), + new s('fr', [ + 2122101, + 2122607, + 2122849, + 2122853, + 2122869, + 2123118, + 2123124, + 2124897, + 2124901, + 2125921, + 2125935, + 2125938, + 2126197, + 2126693, + 2126703, + 2127214, + 2154528, + 6385268, + 6386793, + 6513952, + 6516590, + 6579488, + 6579571, + 6583584, + 6627425, + 6627427, + 6627428, + 6627429, + 6627436, + 6627440, + 6627443, + 6647328, + 6647412, + 6648352, + 6648608, + 6648864, + 6649202, + 6909806, + 6910752, + 6911008, + 7102752, + 7103776, + 7103859, + 7169390, + 7217252, + 7234848, + 7238432, + 7238688, + 7302688, + 7302772, + 7304562, + 7435621, + 7479404, + 7496992, + 7544929, + 7544932, + 7544933, + 7544940, + 7544944, + 7610468, + 7628064, + 7629167, + 7693600, + 7696928, + ]), + new s('it', [ + 2122092, + 2122600, + 2122607, + 2122853, + 2122857, + 2123040, + 2124140, + 2124142, + 2124897, + 2125925, + 2125938, + 2127214, + 6365283, + 6365284, + 6365296, + 6365299, + 6386799, + 6514789, + 6516590, + 6579564, + 6580512, + 6627425, + 6627427, + 6627428, + 6627433, + 6627436, + 6627440, + 6627443, + 6646816, + 6646892, + 6647412, + 6648352, + 6841632, + 6889569, + 6889571, + 6889572, + 6889587, + 6906144, + 6908960, + 6909472, + 6909806, + 7102752, + 7103776, + 7104800, + 7105633, + 7234848, + 7235872, + 7237408, + 7238757, + 7282785, + 7282788, + 7282793, + 7282803, + 7302688, + 7302757, + 7366002, + 7495968, + 7496992, + 7563552, + 7627040, + 7628064, + 7629088, + 7630624, + 8022383, + ]), + new s('nl', [ + 2122092, + 2122341, + 2122849, + 2122853, + 2122857, + 2123109, + 2123118, + 2123621, + 2123877, + 2124142, + 2125153, + 2125157, + 2125680, + 2126949, + 2127457, + 2127461, + 2127471, + 2127717, + 2128489, + 6381934, + 6381938, + 6385184, + 6385252, + 6386208, + 6386720, + 6514804, + 6579488, + 6579566, + 6579570, + 6627426, + 6627446, + 6645102, + 6645106, + 6647328, + 6648352, + 6648435, + 6648864, + 6776174, + 6841716, + 6907168, + 6909472, + 6909543, + 6910752, + 7217250, + 7217252, + 7217253, + 7217256, + 7217263, + 7217270, + 7234661, + 7235360, + 7302756, + 7303026, + 7303200, + 7303712, + 7562088, + 7566437, + 7610468, + 7628064, + 7628142, + 7628146, + 7758190, + 7759218, + 7761775, + ]), + new s('no', [ + 2122100, + 2122102, + 2122853, + 2123118, + 2123122, + 2123375, + 2123873, + 2124064, + 2125157, + 2125671, + 2126053, + 2126693, + 2126699, + 2126703, + 2126708, + 2126953, + 2127465, + 2155808, + 6385252, + 6386208, + 6386720, + 6579488, + 6579566, + 6579572, + 6627443, + 6644768, + 6647328, + 6647397, + 6648352, + 6648421, + 6648864, + 6648948, + 6713202, + 6776174, + 6908779, + 6908960, + 6909543, + 7038240, + 7039845, + 7103776, + 7105637, + 7169380, + 7169390, + 7217267, + 7234848, + 7235360, + 7235429, + 7237221, + 7300896, + 7302432, + 7303712, + 7398688, + 7479411, + 7496992, + 7565165, + 7566437, + 7610483, + 7628064, + 7628142, + 7628146, + 7629164, + 7631904, + 7631973, + 7759218, + ]), + new s('pt', [ + 2122016, + 2122607, + 2122849, + 2122853, + 2122863, + 2123040, + 2123123, + 2125153, + 2125423, + 2125600, + 2125921, + 2125935, + 2125938, + 2126197, + 2126437, + 2126693, + 2127213, + 6365281, + 6365283, + 6365284, + 6365296, + 6382693, + 6382703, + 6384672, + 6386208, + 6386273, + 6386464, + 6516589, + 6516590, + 6578464, + 6579488, + 6582048, + 6582131, + 6627425, + 6627428, + 6647072, + 6647412, + 6648608, + 6648692, + 6906144, + 6906721, + 7169390, + 7238757, + 7238767, + 7282785, + 7282787, + 7282788, + 7282789, + 7282800, + 7303968, + 7364978, + 7435621, + 7495968, + 7497075, + 7544929, + 7544932, + 7544933, + 7544944, + 7566433, + 7628064, + 7630624, + 7693600, + 14905120, + 15197039, + ]), + new s('sv', [ + 2122100, + 2122102, + 2122853, + 2123118, + 2123510, + 2123873, + 2124064, + 2124142, + 2124655, + 2125157, + 2125667, + 2126053, + 2126699, + 2126703, + 2126708, + 2126953, + 2127457, + 2127465, + 2155634, + 6382693, + 6385184, + 6385252, + 6386208, + 6386804, + 6514720, + 6579488, + 6579566, + 6579570, + 6579572, + 6644768, + 6647328, + 6648352, + 6648864, + 6747762, + 6776174, + 6909036, + 6909543, + 7037216, + 7105568, + 7169380, + 7217267, + 7233824, + 7234661, + 7235360, + 7235429, + 7235950, + 7299944, + 7302432, + 7302688, + 7398688, + 7479393, + 7479411, + 7495968, + 7564129, + 7565165, + 7610483, + 7627040, + 7628064, + 7628146, + 7629164, + 7631904, + 7758194, + 14971424, + 16151072, + ]), + ]; + }), + (this.name = function (e) { + return e && e.fC1Bytes ? 'windows-1252' : 'ISO-8859-1'; + }); + }), + n.inherits(e.exports.ISO_8859_1, A), + (e.exports.ISO_8859_2 = function () { + (this.byteMap = function () { + return [ + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 0, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 32, + 32, + 32, + 32, + 32, + 32, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 177, + 32, + 179, + 32, + 181, + 182, + 32, + 32, + 185, + 186, + 187, + 188, + 32, + 190, + 191, + 32, + 177, + 32, + 179, + 32, + 181, + 182, + 183, + 32, + 185, + 186, + 187, + 188, + 32, + 190, + 191, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 32, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 32, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 32, + ]; + }), + (this.ngrams = function () { + return [ + new s('cs', [ + 2122016, + 2122361, + 2122863, + 2124389, + 2125409, + 2125413, + 2125600, + 2125668, + 2125935, + 2125938, + 2126072, + 2126447, + 2126693, + 2126703, + 2126708, + 2126959, + 2127392, + 2127481, + 2128481, + 6365296, + 6513952, + 6514720, + 6627440, + 6627443, + 6627446, + 6647072, + 6647533, + 6844192, + 6844260, + 6910836, + 6972704, + 7042149, + 7103776, + 7104800, + 7233824, + 7268640, + 7269408, + 7269664, + 7282800, + 7300206, + 7301737, + 7304052, + 7304480, + 7304801, + 7368548, + 7368554, + 7369327, + 7403621, + 7562528, + 7565173, + 7566433, + 7566441, + 7566446, + 7628146, + 7630573, + 7630624, + 7676016, + 12477728, + 14773997, + 15296623, + 15540336, + 15540339, + 15559968, + 16278884, + ]), + new s('hu', [ + 2122016, + 2122106, + 2122341, + 2123111, + 2123116, + 2123365, + 2123873, + 2123887, + 2124147, + 2124645, + 2124649, + 2124790, + 2124901, + 2125153, + 2125157, + 2125161, + 2125413, + 2126714, + 2126949, + 2156915, + 6365281, + 6365291, + 6365293, + 6365299, + 6384416, + 6385184, + 6388256, + 6447470, + 6448494, + 6645625, + 6646560, + 6646816, + 6646885, + 6647072, + 6647328, + 6648421, + 6648864, + 6648933, + 6648948, + 6781216, + 6844263, + 6909556, + 6910752, + 7020641, + 7075450, + 7169383, + 7170414, + 7217249, + 7233899, + 7234923, + 7234925, + 7238688, + 7300985, + 7544929, + 7567973, + 7567988, + 7568097, + 7596391, + 7610465, + 7631904, + 7659891, + 8021362, + 14773792, + 15299360, + ]), + new s('pl', [ + 2122618, + 2122863, + 2124064, + 2124389, + 2124655, + 2125153, + 2125161, + 2125409, + 2125417, + 2125668, + 2125935, + 2125938, + 2126697, + 2127648, + 2127721, + 2127737, + 2128416, + 2128481, + 6365296, + 6365303, + 6385257, + 6514720, + 6519397, + 6519417, + 6582048, + 6584937, + 6627440, + 6627443, + 6627447, + 6627450, + 6645615, + 6646304, + 6647072, + 6647401, + 6778656, + 6906144, + 6907168, + 6907242, + 7037216, + 7039264, + 7039333, + 7170405, + 7233824, + 7235937, + 7235941, + 7282800, + 7305057, + 7305065, + 7368556, + 7369313, + 7369327, + 7369338, + 7502437, + 7502457, + 7563754, + 7564137, + 7566433, + 7825765, + 7955304, + 7957792, + 8021280, + 8022373, + 8026400, + 15955744, + ]), + new s('ro', [ + 2122016, + 2122083, + 2122593, + 2122597, + 2122607, + 2122613, + 2122853, + 2122857, + 2124897, + 2125153, + 2125925, + 2125938, + 2126693, + 2126819, + 2127214, + 2144873, + 2158190, + 6365283, + 6365284, + 6386277, + 6386720, + 6386789, + 6386976, + 6513010, + 6516590, + 6518048, + 6546208, + 6579488, + 6627425, + 6627427, + 6627428, + 6627440, + 6627443, + 6644e3, + 6646048, + 6646885, + 6647412, + 6648692, + 6889569, + 6889571, + 6889572, + 6889584, + 6907168, + 6908192, + 6909472, + 7102752, + 7103776, + 7106418, + 7107945, + 7234848, + 7238770, + 7303712, + 7365998, + 7496992, + 7497057, + 7501088, + 7594784, + 7628064, + 7631477, + 7660320, + 7694624, + 7695392, + 12216608, + 15625760, + ]), + ]; + }), + (this.name = function (e) { + return e && e.fC1Bytes ? 'windows-1250' : 'ISO-8859-2'; + }); + }), + n.inherits(e.exports.ISO_8859_2, A), + (e.exports.ISO_8859_5 = function () { + (this.byteMap = function () { + return [ + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 0, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 32, + 32, + 32, + 32, + 32, + 32, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 32, + 254, + 255, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 32, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 32, + 254, + 255, + ]; + }), + (this.ngrams = function () { + return [ + 2150944, + 2151134, + 2151646, + 2152400, + 2152480, + 2153168, + 2153182, + 2153936, + 2153941, + 2154193, + 2154462, + 2154464, + 2154704, + 2154974, + 2154978, + 2155230, + 2156514, + 2158050, + 13688280, + 13689580, + 13884960, + 14015468, + 14015960, + 14016994, + 14017056, + 14164191, + 14210336, + 14211104, + 14216992, + 14407133, + 14407712, + 14413021, + 14536736, + 14538016, + 14538965, + 14538991, + 14540320, + 14540498, + 14557394, + 14557407, + 14557409, + 14602784, + 14602960, + 14603230, + 14604576, + 14605292, + 14605344, + 14606818, + 14671579, + 14672085, + 14672088, + 14672094, + 14733522, + 14734804, + 14803664, + 14803666, + 14803672, + 14806816, + 14865883, + 14868e3, + 14868192, + 14871584, + 15196894, + 15459616, + ]; + }), + (this.name = function (e) { + return 'ISO-8859-5'; + }), + (this.language = function () { + return 'ru'; + }); + }), + n.inherits(e.exports.ISO_8859_5, A), + (e.exports.ISO_8859_6 = function () { + (this.byteMap = function () { + return [ + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 0, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 32, + 32, + 32, + 32, + 32, + 32, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 32, + 32, + 32, + 32, + 32, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + ]; + }), + (this.ngrams = function () { + return [ + 2148324, + 2148326, + 2148551, + 2152932, + 2154986, + 2155748, + 2156006, + 2156743, + 13050055, + 13091104, + 13093408, + 13095200, + 13100064, + 13100227, + 13100231, + 13100232, + 13100234, + 13100236, + 13100237, + 13100239, + 13100243, + 13100249, + 13100258, + 13100261, + 13100264, + 13100266, + 13100320, + 13100576, + 13100746, + 13115591, + 13181127, + 13181153, + 13181156, + 13181157, + 13181160, + 13246663, + 13574343, + 13617440, + 13705415, + 13748512, + 13836487, + 14229703, + 14279913, + 14805536, + 14950599, + 14993696, + 15001888, + 15002144, + 15016135, + 15058720, + 15059232, + 15066656, + 15081671, + 15147207, + 15189792, + 15255524, + 15263264, + 15278279, + 15343815, + 15343845, + 15343848, + 15386912, + 15388960, + 15394336, + ]; + }), + (this.name = function (e) { + return 'ISO-8859-6'; + }), + (this.language = function () { + return 'ar'; + }); + }), + n.inherits(e.exports.ISO_8859_6, A), + (e.exports.ISO_8859_7 = function () { + (this.byteMap = function () { + return [ + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 0, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 32, + 32, + 32, + 32, + 32, + 32, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 161, + 162, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 220, + 32, + 221, + 222, + 223, + 32, + 252, + 32, + 253, + 254, + 192, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 32, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 32, + ]; + }), + (this.ngrams = function () { + return [ + 2154989, + 2154992, + 2155497, + 2155753, + 2156016, + 2156320, + 2157281, + 2157797, + 2158049, + 2158368, + 2158817, + 2158831, + 2158833, + 2159604, + 2159605, + 2159847, + 2159855, + 14672160, + 14754017, + 14754036, + 14805280, + 14806304, + 14807292, + 14807584, + 14936545, + 15067424, + 15069728, + 15147252, + 15199520, + 15200800, + 15278324, + 15327520, + 15330014, + 15331872, + 15393257, + 15393268, + 15525152, + 15540449, + 15540453, + 15540464, + 15589664, + 15725088, + 15725856, + 15790069, + 15790575, + 15793184, + 15868129, + 15868133, + 15868138, + 15868144, + 15868148, + 15983904, + 15984416, + 15987951, + 16048416, + 16048617, + 16050157, + 16050162, + 16050666, + 16052e3, + 16052213, + 16054765, + 16379168, + 16706848, + ]; + }), + (this.name = function (e) { + return e && e.fC1Bytes ? 'windows-1253' : 'ISO-8859-7'; + }), + (this.language = function () { + return 'el'; + }); + }), + n.inherits(e.exports.ISO_8859_7, A), + (e.exports.ISO_8859_8 = function () { + (this.byteMap = function () { + return [ + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 0, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 32, + 32, + 32, + 32, + 32, + 32, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 181, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 32, + 32, + 32, + 32, + 32, + ]; + }), + (this.ngrams = function () { + return [ + new s('he', [ + 2154725, + 2154727, + 2154729, + 2154746, + 2154985, + 2154990, + 2155744, + 2155749, + 2155753, + 2155758, + 2155762, + 2155769, + 2155770, + 2157792, + 2157796, + 2158304, + 2159340, + 2161132, + 14744096, + 14950624, + 14950625, + 14950628, + 14950636, + 14950638, + 14950649, + 15001056, + 15065120, + 15068448, + 15068960, + 15071264, + 15071776, + 15278308, + 15328288, + 15328762, + 15329773, + 15330592, + 15331104, + 15333408, + 15333920, + 15474912, + 15474916, + 15523872, + 15524896, + 15540448, + 15540449, + 15540452, + 15540460, + 15540462, + 15540473, + 15655968, + 15671524, + 15787040, + 15788320, + 15788525, + 15920160, + 16261348, + 16312813, + 16378912, + 16392416, + 16392417, + 16392420, + 16392428, + 16392430, + 16392441, + ]), + new s('he', [ + 2154725, + 2154732, + 2155753, + 2155756, + 2155758, + 2155760, + 2157040, + 2157810, + 2157817, + 2158053, + 2158057, + 2158565, + 2158569, + 2160869, + 2160873, + 2161376, + 2161381, + 2161385, + 14688484, + 14688492, + 14688493, + 14688506, + 14738464, + 14738916, + 14740512, + 14741024, + 14754020, + 14754029, + 14754042, + 14950628, + 14950633, + 14950636, + 14950637, + 14950639, + 14950648, + 14950650, + 15002656, + 15065120, + 15066144, + 15196192, + 15327264, + 15327520, + 15328288, + 15474916, + 15474925, + 15474938, + 15528480, + 15530272, + 15591913, + 15591920, + 15591928, + 15605988, + 15605997, + 15606010, + 15655200, + 15655968, + 15918112, + 16326884, + 16326893, + 16326906, + 16376864, + 16441376, + 16442400, + 16442857, + ]), + ]; + }), + (this.name = function (e) { + return e && e.fC1Bytes ? 'windows-1255' : 'ISO-8859-8'; + }), + (this.language = function () { + return 'he'; + }); + }), + n.inherits(e.exports.ISO_8859_8, A), + (e.exports.ISO_8859_9 = function () { + (this.byteMap = function () { + return [ + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 0, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 32, + 32, + 32, + 32, + 32, + 32, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 170, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 181, + 32, + 32, + 32, + 32, + 186, + 32, + 32, + 32, + 32, + 32, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 32, + 248, + 249, + 250, + 251, + 252, + 105, + 254, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 32, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + ]; + }), + (this.ngrams = function () { + return [ + 2122337, + 2122345, + 2122357, + 2122849, + 2122853, + 2123621, + 2123873, + 2124140, + 2124641, + 2124655, + 2125153, + 2125676, + 2126689, + 2126945, + 2127461, + 2128225, + 6365282, + 6384416, + 6384737, + 6384993, + 6385184, + 6385405, + 6386208, + 6386273, + 6386429, + 6386685, + 6388065, + 6449522, + 6578464, + 6579488, + 6580512, + 6627426, + 6627435, + 6644841, + 6647328, + 6648352, + 6648425, + 6648681, + 6909029, + 6909472, + 6909545, + 6910496, + 7102830, + 7102834, + 7103776, + 7103858, + 7217249, + 7217250, + 7217259, + 7234657, + 7234661, + 7234848, + 7235872, + 7235950, + 7273760, + 7498094, + 7535982, + 7759136, + 7954720, + 7958386, + 16608800, + 16608868, + 16609021, + 16642301, + ]; + }), + (this.name = function (e) { + return e && e.fC1Bytes ? 'windows-1254' : 'ISO-8859-9'; + }), + (this.language = function () { + return 'tr'; + }); + }), + n.inherits(e.exports.ISO_8859_9, A), + (e.exports.windows_1251 = function () { + (this.byteMap = function () { + return [ + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 0, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 32, + 32, + 32, + 32, + 32, + 32, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 32, + 32, + 32, + 32, + 32, + 144, + 131, + 32, + 131, + 32, + 32, + 32, + 32, + 32, + 32, + 154, + 32, + 156, + 157, + 158, + 159, + 144, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 154, + 32, + 156, + 157, + 158, + 159, + 32, + 162, + 162, + 188, + 32, + 180, + 32, + 32, + 184, + 32, + 186, + 32, + 32, + 32, + 32, + 191, + 32, + 32, + 179, + 179, + 180, + 181, + 32, + 32, + 184, + 32, + 186, + 32, + 188, + 190, + 190, + 191, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + ]; + }), + (this.ngrams = function () { + return [ + 2155040, + 2155246, + 2155758, + 2156512, + 2156576, + 2157280, + 2157294, + 2158048, + 2158053, + 2158305, + 2158574, + 2158576, + 2158816, + 2159086, + 2159090, + 2159342, + 2160626, + 2162162, + 14740968, + 14742268, + 14937632, + 15068156, + 15068648, + 15069682, + 15069728, + 15212783, + 15263008, + 15263776, + 15269664, + 15459821, + 15460384, + 15465709, + 15589408, + 15590688, + 15591653, + 15591679, + 15592992, + 15593186, + 15605986, + 15605999, + 15606001, + 15655456, + 15655648, + 15655918, + 15657248, + 15657980, + 15658016, + 15659506, + 15724267, + 15724773, + 15724776, + 15724782, + 15786210, + 15787492, + 15856352, + 15856354, + 15856360, + 15859488, + 15918571, + 15920672, + 15920880, + 15924256, + 16249582, + 16512288, + ]; + }), + (this.name = function (e) { + return 'windows-1251'; + }), + (this.language = function () { + return 'ru'; + }); + }), + n.inherits(e.exports.windows_1251, A), + (e.exports.windows_1256 = function () { + (this.byteMap = function () { + return [ + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 0, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 32, + 32, + 32, + 32, + 32, + 32, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 32, + 32, + 32, + 32, + 32, + 32, + 129, + 32, + 131, + 32, + 32, + 32, + 32, + 136, + 32, + 138, + 32, + 156, + 141, + 142, + 143, + 144, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 152, + 32, + 154, + 32, + 156, + 32, + 32, + 159, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 170, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 181, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 32, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 32, + 32, + 32, + 32, + 244, + 32, + 32, + 32, + 32, + 249, + 32, + 251, + 252, + 32, + 32, + 255, + ]; + }), + (this.ngrams = function () { + return [ + 2148321, + 2148324, + 2148551, + 2153185, + 2153965, + 2154977, + 2155492, + 2156231, + 13050055, + 13091104, + 13093408, + 13095200, + 13099296, + 13099459, + 13099463, + 13099464, + 13099466, + 13099468, + 13099469, + 13099471, + 13099475, + 13099482, + 13099486, + 13099491, + 13099494, + 13099501, + 13099808, + 13100064, + 13100234, + 13115591, + 13181127, + 13181149, + 13181153, + 13181155, + 13181158, + 13246663, + 13574343, + 13617440, + 13705415, + 13748512, + 13836487, + 14295239, + 14344684, + 14544160, + 14753991, + 14797088, + 14806048, + 14806304, + 14885063, + 14927648, + 14928160, + 14935072, + 14950599, + 15016135, + 15058720, + 15124449, + 15131680, + 15474887, + 15540423, + 15540451, + 15540454, + 15583520, + 15585568, + 15590432, + ]; + }), + (this.name = function (e) { + return 'windows-1256'; + }), + (this.language = function () { + return 'ar'; + }); + }), + n.inherits(e.exports.windows_1256, A), + (e.exports.KOI8_R = function () { + (this.byteMap = function () { + return [ + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 0, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 32, + 32, + 32, + 32, + 32, + 32, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 163, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 163, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + ]; + }), + (this.ngrams = function () { + return [ + 2147535, + 2148640, + 2149313, + 2149327, + 2150081, + 2150085, + 2150338, + 2150607, + 2150610, + 2151105, + 2151375, + 2151380, + 2151631, + 2152224, + 2152399, + 2153153, + 2153684, + 2154196, + 12701385, + 12702936, + 12963032, + 12963529, + 12964820, + 12964896, + 13094688, + 13181136, + 13223200, + 13224224, + 13226272, + 13419982, + 13420832, + 13424846, + 13549856, + 13550880, + 13552069, + 13552081, + 13553440, + 13553623, + 13574352, + 13574355, + 13574359, + 13617103, + 13617696, + 13618392, + 13618464, + 13620180, + 13621024, + 13621185, + 13684684, + 13685445, + 13685449, + 13685455, + 13812183, + 13813188, + 13881632, + 13882561, + 13882569, + 13882583, + 13944268, + 13946656, + 13946834, + 13948960, + 14272544, + 14603471, + ]; + }), + (this.name = function (e) { + return 'KOI8-R'; + }), + (this.language = function () { + return 'ru'; + }); + }), + n.inherits(e.exports.KOI8_R, A); + }, + 48794: (e, t, r) => { + 'use strict'; + var n = r(31669), + i = r(24250); + function o() {} + (e.exports.UTF_16BE = function () { + (this.name = function () { + return 'UTF-16BE'; + }), + (this.match = function (e) { + var t = e.fRawInput; + return t.length >= 2 && 254 == (255 & t[0]) && 255 == (255 & t[1]) + ? new i(e, this, 100) + : null; + }); + }), + (e.exports.UTF_16LE = function () { + (this.name = function () { + return 'UTF-16LE'; + }), + (this.match = function (e) { + var t = e.fRawInput; + return t.length >= 2 && 255 == (255 & t[0]) && 254 == (255 & t[1]) + ? t.length >= 4 && 0 == t[2] && 0 == t[3] + ? null + : new i(e, this, 100) + : null; + }); + }), + (o.prototype.match = function (e) { + var t = e.fRawInput, + r = (e.fRawLength / 4) * 4, + n = 0, + o = 0, + s = !1, + A = 0; + if (0 == r) return null; + 65279 == this.getChar(t, 0) && (s = !0); + for (var a = 0; a < r; a += 4) { + var c = this.getChar(t, a); + c < 0 || c >= 1114111 || (c >= 55296 && c <= 57343) ? (o += 1) : (n += 1); + } + return ( + s && 0 == o + ? (A = 100) + : s && n > 10 * o + ? (A = 80) + : n > 3 && 0 == o + ? (A = 100) + : n > 0 && 0 == o + ? (A = 80) + : n > 10 * o && (A = 25), + 0 == A ? null : new i(e, this, A) + ); + }), + (e.exports.UTF_32BE = function () { + (this.name = function () { + return 'UTF-32BE'; + }), + (this.getChar = function (e, t) { + return ( + ((255 & e[t + 0]) << 24) | + ((255 & e[t + 1]) << 16) | + ((255 & e[t + 2]) << 8) | + (255 & e[t + 3]) + ); + }); + }), + n.inherits(e.exports.UTF_32BE, o), + (e.exports.UTF_32LE = function () { + (this.name = function () { + return 'UTF-32LE'; + }), + (this.getChar = function (e, t) { + return ( + ((255 & e[t + 3]) << 24) | + ((255 & e[t + 2]) << 16) | + ((255 & e[t + 1]) << 8) | + (255 & e[t + 0]) + ); + }); + }), + n.inherits(e.exports.UTF_32LE, o); + }, + 76023: (e, t, r) => { + var n = r(24250); + e.exports = function () { + (this.name = function () { + return 'UTF-8'; + }), + (this.match = function (e) { + var t, + r = !1, + i = 0, + o = 0, + s = e.fRawInput, + A = 0; + e.fRawLength >= 3 && + 239 == (255 & s[0]) && + 187 == (255 & s[1]) && + 191 == (255 & s[2]) && + (r = !0); + for (var a = 0; a < e.fRawLength; a++) { + var c = s[a]; + if (0 != (128 & c)) { + if (192 == (224 & c)) A = 1; + else if (224 == (240 & c)) A = 2; + else if (240 == (248 & c)) A = 3; + else { + if (++o > 5) break; + A = 0; + } + for (; !(++a >= e.fRawLength); ) { + if (128 != (192 & s[a])) { + o++; + break; + } + if (0 == --A) { + i++; + break; + } + } + } + } + if (((t = 0), r && 0 == o)) t = 100; + else if (r && i > 10 * o) t = 80; + else if (i > 3 && 0 == o) t = 100; + else if (i > 0 && 0 == o) t = 80; + else if (0 == i && 0 == o) t = 10; + else { + if (!(i > 10 * o)) return null; + t = 25; + } + return new n(e, this, t); + }); + }; + }, + 80848: function (e, t, r) { + var n = r(35747), + i = r(76023), + o = r(48794), + s = r(9044), + A = r(71216), + a = r(31059), + c = this, + u = [ + new i(), + new o.UTF_16BE(), + new o.UTF_16LE(), + new o.UTF_32BE(), + new o.UTF_32LE(), + new s.sjis(), + new s.big5(), + new s.euc_jp(), + new s.euc_kr(), + new s.gb_18030(), + new a.ISO_2022_JP(), + new a.ISO_2022_KR(), + new a.ISO_2022_CN(), + new A.ISO_8859_1(), + new A.ISO_8859_2(), + new A.ISO_8859_5(), + new A.ISO_8859_6(), + new A.ISO_8859_7(), + new A.ISO_8859_8(), + new A.ISO_8859_9(), + new A.windows_1251(), + new A.windows_1256(), + new A.KOI8_R(), + ]; + (e.exports.detect = function (e, t) { + for (var r = [], n = 0; n < 256; n++) r[n] = 0; + for (n = e.length - 1; n >= 0; n--) r[255 & e[n]]++; + var i = !1; + for (n = 128; n <= 159; n += 1) + if (0 != r[n]) { + i = !0; + break; + } + var o = { + fByteStats: r, + fC1Bytes: i, + fRawInput: e, + fRawLength: e.length, + fInputBytes: e, + fInputLen: e.length, + }, + s = u + .map(function (e) { + return e.match(o); + }) + .filter(function (e) { + return !!e; + }) + .sort(function (e, t) { + return t.confidence - e.confidence; + }); + return t && !0 === t.returnAllMatches ? s : s.length > 0 ? s[0].name : null; + }), + (e.exports.detectFile = function (e, t, r) { + var i; + 'function' == typeof t && ((r = t), (t = void 0)); + var o = function (e, o) { + if ((i && n.closeSync(i), e)) return r(e, null); + r(null, c.detect(o, t)); + }; + if (t && t.sampleSize) + return ( + (i = n.openSync(e, 'r')), + (sample = Buffer.allocUnsafe(t.sampleSize)), + void n.read(i, sample, 0, t.sampleSize, null, function (e) { + o(e, sample); + }) + ); + n.readFile(e, o); + }), + (e.exports.detectFileSync = function (e, t) { + if (t && t.sampleSize) { + var r = n.openSync(e, 'r'), + i = Buffer.allocUnsafe(t.sampleSize); + return n.readSync(r, i, 0, t.sampleSize), n.closeSync(r), c.detect(i, t); + } + return c.detect(n.readFileSync(e), t); + }), + (e.exports.detectAll = function (e, t) { + return 'object' != typeof t && (t = {}), (t.returnAllMatches = !0), c.detect(e, t); + }), + (e.exports.detectFileAll = function (e, t, r) { + 'function' == typeof t && ((r = t), (t = void 0)), + 'object' != typeof t && (t = {}), + (t.returnAllMatches = !0), + c.detectFile(e, t, r); + }), + (e.exports.detectFileAllSync = function (e, t) { + return ( + 'object' != typeof t && (t = {}), (t.returnAllMatches = !0), c.detectFileSync(e, t) + ); + }); + }, + 24250: (e) => { + e.exports = function (e, t, r, n, i) { + (this.confidence = r), (this.name = n || t.name(e)), (this.lang = i); + }; + }, + 82758: (e, t, r) => { + 'use strict'; + const n = r(35747), + i = r(85622), + o = n.lchown ? 'lchown' : 'chown', + s = n.lchownSync ? 'lchownSync' : 'chownSync', + A = process.version; + let a = (e, t, r) => n.readdir(e, t, r); + /^v4\./.test(A) && (a = (e, t, r) => n.readdir(e, r)); + const c = (e, t, r, s, A) => { + if ('string' == typeof t) + return n.lstat(i.resolve(e, t), (n, i) => { + if (n) return A(n); + (i.name = t), c(e, i, r, s, A); + }); + t.isDirectory() + ? u(i.resolve(e, t.name), r, s, (a) => { + if (a) return A(a); + n[o](i.resolve(e, t.name), r, s, A); + }) + : n[o](i.resolve(e, t.name), r, s, A); + }, + u = (e, t, r, i) => { + a(e, { withFileTypes: !0 }, (s, A) => { + if (s && 'ENOTDIR' !== s.code && 'ENOTSUP' !== s.code) return i(s); + if (s || !A.length) return n[o](e, t, r, i); + let a = A.length, + u = null; + const l = (s) => { + if (!u) return s ? i((u = s)) : 0 == --a ? n[o](e, t, r, i) : void 0; + }; + A.forEach((n) => c(e, n, t, r, l)); + }); + }, + l = (e, t, r) => { + let o; + try { + o = ((e, t) => n.readdirSync(e, t))(e, { withFileTypes: !0 }); + } catch (i) { + if (i && 'ENOTDIR' === i.code && 'ENOTSUP' !== i.code) return n[s](e, t, r); + throw i; + } + return ( + o.length && + o.forEach((o) => + ((e, t, r, o) => { + if ('string' == typeof t) { + const r = n.lstatSync(i.resolve(e, t)); + (r.name = t), (t = r); + } + t.isDirectory() && l(i.resolve(e, t.name), r, o), + n[s](i.resolve(e, t.name), r, o); + })(e, o, t, r) + ), + n[s](e, t, r) + ); + }; + (e.exports = u), (u.sync = l); + }, + 5864: (e, t, r) => { + 'use strict'; + var n = r(85832), + i = process.env; + function o(e) { + return 'string' == typeof e + ? !!i[e] + : Object.keys(e).every(function (t) { + return i[t] === e[t]; + }); + } + Object.defineProperty(t, '_vendors', { + value: n.map(function (e) { + return e.constant; + }), + }), + (t.name = null), + (t.isPR = null), + n.forEach(function (e) { + var r = (Array.isArray(e.env) ? e.env : [e.env]).every(function (e) { + return o(e); + }); + if (((t[e.constant] = r), r)) + switch (((t.name = e.name), typeof e.pr)) { + case 'string': + t.isPR = !!i[e.pr]; + break; + case 'object': + 'env' in e.pr + ? (t.isPR = e.pr.env in i && i[e.pr.env] !== e.pr.ne) + : 'any' in e.pr + ? (t.isPR = e.pr.any.some(function (e) { + return !!i[e]; + })) + : (t.isPR = o(e.pr)); + break; + default: + t.isPR = null; + } + }), + (t.isCI = !!(i.CI || i.CONTINUOUS_INTEGRATION || i.BUILD_NUMBER || i.RUN_ID || t.name)); + }, + 85832: (e) => { + 'use strict'; + e.exports = JSON.parse( + '[{"name":"AppVeyor","constant":"APPVEYOR","env":"APPVEYOR","pr":"APPVEYOR_PULL_REQUEST_NUMBER"},{"name":"Azure Pipelines","constant":"AZURE_PIPELINES","env":"SYSTEM_TEAMFOUNDATIONCOLLECTIONURI","pr":"SYSTEM_PULLREQUEST_PULLREQUESTID"},{"name":"Bamboo","constant":"BAMBOO","env":"bamboo_planKey"},{"name":"Bitbucket Pipelines","constant":"BITBUCKET","env":"BITBUCKET_COMMIT","pr":"BITBUCKET_PR_ID"},{"name":"Bitrise","constant":"BITRISE","env":"BITRISE_IO","pr":"BITRISE_PULL_REQUEST"},{"name":"Buddy","constant":"BUDDY","env":"BUDDY_WORKSPACE_ID","pr":"BUDDY_EXECUTION_PULL_REQUEST_ID"},{"name":"Buildkite","constant":"BUILDKITE","env":"BUILDKITE","pr":{"env":"BUILDKITE_PULL_REQUEST","ne":"false"}},{"name":"CircleCI","constant":"CIRCLE","env":"CIRCLECI","pr":"CIRCLE_PULL_REQUEST"},{"name":"Cirrus CI","constant":"CIRRUS","env":"CIRRUS_CI","pr":"CIRRUS_PR"},{"name":"AWS CodeBuild","constant":"CODEBUILD","env":"CODEBUILD_BUILD_ARN"},{"name":"Codeship","constant":"CODESHIP","env":{"CI_NAME":"codeship"}},{"name":"Drone","constant":"DRONE","env":"DRONE","pr":{"DRONE_BUILD_EVENT":"pull_request"}},{"name":"dsari","constant":"DSARI","env":"DSARI"},{"name":"GitLab CI","constant":"GITLAB","env":"GITLAB_CI"},{"name":"GoCD","constant":"GOCD","env":"GO_PIPELINE_LABEL"},{"name":"Hudson","constant":"HUDSON","env":"HUDSON_URL"},{"name":"Jenkins","constant":"JENKINS","env":["JENKINS_URL","BUILD_ID"],"pr":{"any":["ghprbPullId","CHANGE_ID"]}},{"name":"Magnum CI","constant":"MAGNUM","env":"MAGNUM"},{"name":"Netlify CI","constant":"NETLIFY","env":"NETLIFY_BUILD_BASE","pr":{"env":"PULL_REQUEST","ne":"false"}},{"name":"Sail CI","constant":"SAIL","env":"SAILCI","pr":"SAIL_PULL_REQUEST_NUMBER"},{"name":"Semaphore","constant":"SEMAPHORE","env":"SEMAPHORE","pr":"PULL_REQUEST_NUMBER"},{"name":"Shippable","constant":"SHIPPABLE","env":"SHIPPABLE","pr":{"IS_PULL_REQUEST":"true"}},{"name":"Solano CI","constant":"SOLANO","env":"TDDIUM","pr":"TDDIUM_PR_ID"},{"name":"Strider CD","constant":"STRIDER","env":"STRIDER"},{"name":"TaskCluster","constant":"TASKCLUSTER","env":["TASK_ID","RUN_ID"]},{"name":"TeamCity","constant":"TEAMCITY","env":"TEAMCITY_VERSION"},{"name":"Travis CI","constant":"TRAVIS","env":"TRAVIS","pr":{"env":"TRAVIS_PULL_REQUEST","ne":"false"}}]' + ); + }, + 61696: (e, t, r) => { + 'use strict'; + const n = r(3390); + let i = !1; + (t.show = (e = process.stderr) => { + e.isTTY && ((i = !1), e.write('[?25h')); + }), + (t.hide = (e = process.stderr) => { + e.isTTY && (n(), (i = !0), e.write('[?25l')); + }), + (t.toggle = (e, r) => { + void 0 !== e && (i = e), i ? t.show(r) : t.hide(r); + }); + }, + 17945: (e, t, r) => { + 'use strict'; + e.exports = function (e) { + var t = (function (e) { + var t = { defaultWidth: 0, output: process.stdout, tty: r(33867) }; + return e + ? (Object.keys(t).forEach(function (r) { + e[r] || (e[r] = t[r]); + }), + e) + : t; + })(e); + if (t.output.getWindowSize) return t.output.getWindowSize()[0] || t.defaultWidth; + if (t.tty.getWindowSize) return t.tty.getWindowSize()[1] || t.defaultWidth; + if (t.output.columns) return t.output.columns; + if (process.env.CLI_WIDTH) { + var n = parseInt(process.env.CLI_WIDTH, 10); + if (!isNaN(n) && 0 !== n) return n; + } + return t.defaultWidth; + }; + }, + 17278: (e, t) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + class r { + constructor() { + this.help = !1; + } + static getMeta(e) { + const t = e.constructor; + return (t.meta = Object.prototype.hasOwnProperty.call(t, 'meta') + ? t.meta + : { + definitions: [], + transformers: [ + (e, t) => { + for (const { name: r, value: n } of e.options) + ('-h' !== r && '--help' !== r) || (t.help = n); + }, + ], + }); + } + static resolveMeta(e) { + const t = [], + n = []; + for (let i = e; i instanceof r; i = i.__proto__) { + const e = this.getMeta(i); + for (const r of e.definitions) t.push(r); + for (const t of e.transformers) n.push(t); + } + return { definitions: t, transformers: n }; + } + static registerDefinition(e, t) { + this.getMeta(e).definitions.push(t); + } + static registerTransformer(e, t) { + this.getMeta(e).transformers.push(t); + } + static addPath(...e) { + this.Path(...e)(this.prototype, 'execute'); + } + static addOption(e, t) { + t(this.prototype, e); + } + static Path(...e) { + return (t, r) => { + this.registerDefinition(t, (t) => { + t.addPath(e); + }); + }; + } + static Boolean(e, { hidden: t = !1 } = {}) { + return (r, n) => { + const i = e.split(','); + this.registerDefinition(r, (e) => { + e.addOption({ names: i, arity: 0, hidden: t, allowBinding: !1 }); + }), + this.registerTransformer(r, (e, t) => { + for (const { name: r, value: o } of e.options) i.includes(r) && (t[n] = o); + }); + }; + } + static String(e = { required: !0 }, { tolerateBoolean: t = !1, hidden: r = !1 } = {}) { + return (n, i) => { + if ('string' == typeof e) { + const o = e.split(','); + this.registerDefinition(n, (e) => { + e.addOption({ names: o, arity: t ? 0 : 1, hidden: r }); + }), + this.registerTransformer(n, (e, t) => { + for (const { name: r, value: n } of e.options) o.includes(r) && (t[i] = n); + }); + } else + this.registerDefinition(n, (t) => { + t.addPositional({ name: i, required: e.required }); + }), + this.registerTransformer(n, (e, t) => { + e.positionals.length > 0 && (t[i] = e.positionals.shift().value); + }); + }; + } + static Array(e, { hidden: t = !1 } = {}) { + return (r, n) => { + const i = e.split(','); + this.registerDefinition(r, (e) => { + e.addOption({ names: i, arity: 1, hidden: t }); + }), + this.registerTransformer(r, (e, t) => { + for (const { name: r, value: o } of e.options) + i.includes(r) && ((t[n] = t[n] || []), t[n].push(o)); + }); + }; + } + static Rest({ required: e = 0 } = {}) { + return (t, r) => { + this.registerDefinition(t, (t) => { + t.addRest({ name: r, required: e }); + }), + this.registerTransformer(t, (e, t) => { + t[r] = e.positionals.map(({ value: e }) => e); + }); + }; + } + static Proxy({ required: e = 0 } = {}) { + return (t, r) => { + this.registerDefinition(t, (t) => { + t.addProxy({ required: e }); + }), + this.registerTransformer(t, (e, t) => { + t[r] = e.positionals.map(({ value: e }) => e); + }); + }; + } + static Usage(e) { + return e; + } + static Schema(e) { + return e; + } + async validateAndExecute() { + const e = this.constructor.schema; + if (void 0 !== e) + try { + await e.validate(this); + } catch (e) { + throw ('ValidationError' === e.name && (e.clipanion = { type: 'usage' }), e); + } + const t = await this.execute(); + return void 0 !== t ? t : 0; + } + } + /*! ***************************************************************************** +Copyright (c) Microsoft Corporation. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH +REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY +AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, +INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM +LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR +OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THIS SOFTWARE. +***************************************************************************** */ + function n(e, t, r, n) { + var i, + o = arguments.length, + s = o < 3 ? t : null === n ? (n = Object.getOwnPropertyDescriptor(t, r)) : n; + if ('object' == typeof Reflect && 'function' == typeof Reflect.decorate) + s = Reflect.decorate(e, t, r, n); + else + for (var A = e.length - 1; A >= 0; A--) + (i = e[A]) && (s = (o < 3 ? i(s) : o > 3 ? i(t, r, s) : i(t, r)) || s); + return o > 3 && s && Object.defineProperty(t, r, s), s; + } + r.Entries = {}; + class i extends r { + async execute() { + this.context.stdout.write(this.cli.usage(null)); + } + } + n([r.Path('--help'), r.Path('-h')], i.prototype, 'execute', null); + class o extends r { + async execute() { + var e; + this.context.stdout.write( + (null !== (e = this.cli.binaryVersion) && void 0 !== e ? e : '') + '\n' + ); + } + } + n([r.Path('--version'), r.Path('-v')], o.prototype, 'execute', null); + const s = /^(-h|--help)(?:=([0-9]+))?$/, + A = /^(--[a-z]+(?:-[a-z]+)*|-[a-zA-Z]+)$/, + a = /^-[a-zA-Z]{2,}$/, + c = /^([^=]+)=([\s\S]*)$/, + u = '1' === process.env.DEBUG_CLI; + class l extends Error { + constructor(e) { + super(e), (this.clipanion = { type: 'usage' }), (this.name = 'UsageError'); + } + } + class h extends Error { + constructor(e, t) { + if ( + (super(), + (this.input = e), + (this.candidates = t), + (this.clipanion = { type: 'none' }), + (this.name = 'UnknownSyntaxError'), + 0 === this.candidates.length) + ) + this.message = "Command not found, but we're not sure what's the alternative."; + else if (1 === this.candidates.length && null !== this.candidates[0].reason) { + const [{ usage: e, reason: t }] = this.candidates; + this.message = `${t}\n\n$ ${e}`; + } else if (1 === this.candidates.length) { + const [{ usage: t }] = this.candidates; + this.message = `Command not found; did you mean:\n\n$ ${t}\n${f(e)}`; + } else + this.message = `Command not found; did you mean one of:\n\n${this.candidates + .map(({ usage: e }, t) => `${(t + '.').padStart(4)} ${e}`) + .join('\n')}\n\n${f(e)}`; + } + } + class g extends Error { + constructor(e, t) { + super(), + (this.input = e), + (this.usages = t), + (this.clipanion = { type: 'none' }), + (this.name = 'AmbiguousSyntaxError'), + (this.message = `Cannot find who to pick amongst the following alternatives:\n\n${this.usages + .map((e, t) => `${(t + '.').padStart(4)} ${e}`) + .join('\n')}\n\n${f(e)}`); + } + } + const f = (e) => + 'While running ' + + e + .filter((e) => '\0' !== e) + .map((e) => { + const t = JSON.stringify(e); + return e.match(/\s/) || 0 === e.length || t !== `"${e}"` ? t : e; + }) + .join(' '); + function p(e) { + u && console.log(e); + } + function d(e, t) { + return e.nodes.push(t), e.nodes.length - 1; + } + function C(e, t, r = !1) { + p('Running a vm on ' + JSON.stringify(t)); + let n = [ + { + node: 0, + state: { + candidateUsage: null, + errorMessage: null, + ignoreOptions: !1, + options: [], + path: [], + positionals: [], + remainder: null, + selectedIndex: null, + }, + }, + ]; + !(function (e, { prefix: t = '' } = {}) { + p(t + 'Nodes are:'); + for (let r = 0; r < e.nodes.length; ++r) p(`${t} ${r}: ${JSON.stringify(e.nodes[r])}`); + })(e, { prefix: ' ' }); + const i = ['', ...t]; + for (let o = 0; o < i.length; ++o) { + const s = i[o]; + p(' Processing ' + JSON.stringify(s)); + const A = []; + for (const { node: t, state: a } of n) { + p(' Current node is ' + t); + const n = e.nodes[t]; + if (2 === t) { + A.push({ node: t, state: a }); + continue; + } + console.assert( + 0 === n.shortcuts.length, + 'Shortcuts should have been eliminated by now' + ); + const c = Object.prototype.hasOwnProperty.call(n.statics, s); + if (!r || o < i.length - 1 || c) + if (c) { + const e = n.statics[s]; + for (const { to: t, reducer: r } of e) + A.push({ node: t, state: void 0 !== r ? b(x, r, a, s) : a }), + p(` Static transition to ${t} found`); + } else p(' No static transition found'); + else { + let e = !1; + for (const t of Object.keys(n.statics)) + if (t.startsWith(s)) { + if (s === t) + for (const { to: e, reducer: r } of n.statics[t]) + A.push({ node: e, state: void 0 !== r ? b(x, r, a, s) : a }), + p(` Static transition to ${e} found`); + else + for (const { to: e, reducer: r } of n.statics[t]) + A.push({ + node: e, + state: Object.assign(Object.assign({}, a), { + remainder: t.slice(s.length), + }), + }), + p(` Static transition to ${e} found (partial match)`); + e = !0; + } + e || p(' No partial static transition found'); + } + if ('\0' !== s) + for (const [e, { to: t, reducer: r }] of n.dynamics) + b(k, e, a, s) && + (A.push({ node: t, state: void 0 !== r ? b(x, r, a, s) : a }), + p(` Dynamic transition to ${t} found (via ${e})`)); + } + if (0 === A.length) + throw new h( + t, + n + .filter(({ node: e }) => 2 !== e) + .map(({ state: e }) => ({ usage: e.candidateUsage, reason: null })) + ); + if (A.every(({ node: e }) => 2 === e)) + throw new h( + t, + A.map(({ state: e }) => ({ usage: e.candidateUsage, reason: e.errorMessage })) + ); + n = m(A); + } + if (n.length > 0) { + p(' Results:'); + for (const e of n) p(` - ${e.node} -> ${JSON.stringify(e.state)}`); + } else p(' No results'); + return n; + } + function E(e, t) { + if (null !== t.selectedIndex) return !0; + if (Object.prototype.hasOwnProperty.call(e.statics, '\0')) + for (const { to: t } of e.statics['\0']) if (1 === t) return !0; + return !1; + } + function I(e, t) { + return (function (e, t) { + const r = t.filter((e) => null !== e.selectedIndex); + if (0 === r.length) throw new Error(); + let n = 0; + for (const e of r) e.path.length > n && (n = e.path.length); + const i = r.filter((e) => e.path.length === n), + o = (e) => e.positionals.filter(({ extra: e }) => !e).length + e.options.length, + s = i.map((e) => ({ state: e, positionalCount: o(e) })); + let A = 0; + for (const { positionalCount: e } of s) e > A && (A = e); + const a = (function (e) { + const t = [], + r = []; + for (const n of e) -1 === n.selectedIndex ? r.push(...n.options) : t.push(n); + r.length > 0 && + t.push({ + candidateUsage: null, + errorMessage: null, + ignoreOptions: !1, + path: [], + positionals: [], + options: r, + remainder: null, + selectedIndex: -1, + }); + return t; + })(s.filter(({ positionalCount: e }) => e === A).map(({ state: e }) => e)); + if (a.length > 1) + throw new g( + e, + a.map((e) => e.candidateUsage) + ); + return a[0]; + })( + t, + C(e, [...t, '\0']).map(({ state: e }) => e) + ); + } + function m(e) { + let t = 0; + for (const { state: r } of e) r.path.length > t && (t = r.path.length); + return e.filter(({ state: e }) => e.path.length === t); + } + function y(e) { + return 1 === e || 2 === e; + } + function w(e, t = 0) { + return { to: y(e.to) ? e.to : e.to > 2 ? e.to + t - 2 : e.to + t, reducer: e.reducer }; + } + function B(e, t = 0) { + const r = { dynamics: [], shortcuts: [], statics: {} }; + for (const [n, i] of e.dynamics) r.dynamics.push([n, w(i, t)]); + for (const n of e.shortcuts) r.shortcuts.push(w(n, t)); + for (const [n, i] of Object.entries(e.statics)) r.statics[n] = i.map((e) => w(e, t)); + return r; + } + function Q(e, t, r, n, i) { + e.nodes[t].dynamics.push([r, { to: n, reducer: i }]); + } + function v(e, t, r, n) { + e.nodes[t].shortcuts.push({ to: r, reducer: n }); + } + function D(e, t, r, n, i) { + (Object.prototype.hasOwnProperty.call(e.nodes[t].statics, r) + ? e.nodes[t].statics[r] + : (e.nodes[t].statics[r] = []) + ).push({ to: n, reducer: i }); + } + function b(e, t, r, n) { + if (Array.isArray(t)) { + const [i, ...o] = t; + return e[i](r, n, ...o); + } + return e[t](r, n); + } + function S(e, t) { + const r = Array.isArray(e) ? k[e[0]] : k[e]; + if (void 0 === r.suggest) return null; + const n = Array.isArray(e) ? e.slice(1) : []; + return r.suggest(t, ...n); + } + const k = { + always: () => !0, + isNotOptionLike: (e, t) => e.ignoreOptions || !t.startsWith('-'), + isOption: (e, t, r, n) => !e.ignoreOptions && t === r, + isBatchOption: (e, t, r) => + !e.ignoreOptions && a.test(t) && [...t.slice(1)].every((e) => r.includes('-' + e)), + isBoundOption: (e, t, r, n) => { + const i = t.match(c); + return ( + !e.ignoreOptions && + !!i && + A.test(i[1]) && + r.includes(i[1]) && + n.filter((e) => e.names.includes(i[1])).every((e) => e.allowBinding) + ); + }, + isNegatedOption: (e, t, r) => !e.ignoreOptions && t === '--no-' + r.slice(2), + isHelp: (e, t) => !e.ignoreOptions && s.test(t), + isUnsupportedOption: (e, t, r) => + !e.ignoreOptions && t.startsWith('-') && A.test(t) && !r.includes(t), + isInvalidOption: (e, t) => !e.ignoreOptions && t.startsWith('-') && !A.test(t), + }; + k.isOption.suggest = (e, t, r = !0) => (r ? null : [t]); + const x = { + setCandidateUsage: (e, t, r) => + Object.assign(Object.assign({}, e), { candidateUsage: r }), + setSelectedIndex: (e, t, r) => + Object.assign(Object.assign({}, e), { selectedIndex: r }), + pushBatch: (e, t) => + Object.assign(Object.assign({}, e), { + options: e.options.concat( + [...t.slice(1)].map((e) => ({ name: '-' + e, value: !0 })) + ), + }), + pushBound: (e, t) => { + const [, r, n] = t.match(c); + return Object.assign(Object.assign({}, e), { + options: e.options.concat({ name: r, value: n }), + }); + }, + pushPath: (e, t) => Object.assign(Object.assign({}, e), { path: e.path.concat(t) }), + pushPositional: (e, t) => + Object.assign(Object.assign({}, e), { + positionals: e.positionals.concat({ value: t, extra: !1 }), + }), + pushExtra: (e, t) => + Object.assign(Object.assign({}, e), { + positionals: e.positionals.concat({ value: t, extra: !0 }), + }), + pushTrue: (e, t, r = t) => + Object.assign(Object.assign({}, e), { + options: e.options.concat({ name: t, value: !0 }), + }), + pushFalse: (e, t, r = t) => + Object.assign(Object.assign({}, e), { + options: e.options.concat({ name: r, value: !1 }), + }), + pushUndefined: (e, t) => + Object.assign(Object.assign({}, e), { + options: e.options.concat({ name: t, value: void 0 }), + }), + setStringValue: (e, t) => + Object.assign(Object.assign({}, e), { + options: e.options + .slice(0, -1) + .concat( + Object.assign(Object.assign({}, e.options[e.options.length - 1]), { value: t }) + ), + }), + inhibateOptions: (e) => Object.assign(Object.assign({}, e), { ignoreOptions: !0 }), + useHelp: (e, t, r) => { + const [, n, i] = t.match(s); + return void 0 !== i + ? Object.assign(Object.assign({}, e), { + options: [ + { name: '-c', value: String(r) }, + { name: '-i', value: i }, + ], + }) + : Object.assign(Object.assign({}, e), { + options: [{ name: '-c', value: String(r) }], + }); + }, + setError: (e, t, r) => + '\0' === t + ? Object.assign(Object.assign({}, e), { errorMessage: r + '.' }) + : Object.assign(Object.assign({}, e), { errorMessage: `${r} ("${t}").` }), + }, + F = Symbol(); + class M { + constructor(e, t) { + (this.allOptionNames = []), + (this.arity = { leading: [], trailing: [], extra: [], proxy: !1 }), + (this.options = []), + (this.paths = []), + (this.cliIndex = e), + (this.cliOpts = t); + } + addPath(e) { + this.paths.push(e); + } + setArity({ + leading: e = this.arity.leading, + trailing: t = this.arity.trailing, + extra: r = this.arity.extra, + proxy: n = this.arity.proxy, + }) { + Object.assign(this.arity, { leading: e, trailing: t, extra: r, proxy: n }); + } + addPositional({ name: e = 'arg', required: t = !0 } = {}) { + if (!t && this.arity.extra === F) + throw new Error( + 'Optional parameters cannot be declared when using .rest() or .proxy()' + ); + if (!t && this.arity.trailing.length > 0) + throw new Error( + 'Optional parameters cannot be declared after the required trailing positional arguments' + ); + t || this.arity.extra === F + ? this.arity.extra !== F && 0 === this.arity.extra.length + ? this.arity.leading.push(e) + : this.arity.trailing.push(e) + : this.arity.extra.push(e); + } + addRest({ name: e = 'arg', required: t = 0 } = {}) { + if (this.arity.extra === F) + throw new Error( + 'Infinite lists cannot be declared multiple times in the same command' + ); + if (this.arity.trailing.length > 0) + throw new Error( + 'Infinite lists cannot be declared after the required trailing positional arguments' + ); + for (let r = 0; r < t; ++r) this.addPositional({ name: e }); + this.arity.extra = F; + } + addProxy({ required: e = 0 } = {}) { + this.addRest({ required: e }), (this.arity.proxy = !0); + } + addOption({ names: e, arity: t = 0, hidden: r = !1, allowBinding: n = !0 }) { + this.allOptionNames.push(...e), + this.options.push({ names: e, arity: t, hidden: r, allowBinding: n }); + } + setContext(e) { + this.context = e; + } + usage({ detailed: e = !0 } = {}) { + const t = [this.cliOpts.binaryName]; + if ((this.paths.length > 0 && t.push(...this.paths[0]), e)) { + for (const { names: e, arity: r, hidden: n } of this.options) { + if (n) continue; + const i = []; + for (let e = 0; e < r; ++e) i.push(' #' + e); + t.push(`[${e.join(',')}${i.join('')}]`); + } + t.push(...this.arity.leading.map((e) => `<${e}>`)), + this.arity.extra === F + ? t.push('...') + : t.push(...this.arity.extra.map((e) => `[${e}]`)), + t.push(...this.arity.trailing.map((e) => `<${e}>`)); + } + return t.join(' '); + } + compile() { + if (void 0 === this.context) throw new Error('Assertion failed: No context attached'); + const e = { + nodes: [ + { dynamics: [], shortcuts: [], statics: {} }, + { dynamics: [], shortcuts: [], statics: {} }, + { dynamics: [], shortcuts: [], statics: {} }, + ], + }; + let t = 0; + (t = d(e, { dynamics: [], shortcuts: [], statics: {} })), + D(e, 0, '', t, ['setCandidateUsage', this.usage()]); + const r = this.arity.proxy ? 'always' : 'isNotOptionLike', + n = this.paths.length > 0 ? this.paths : [[]]; + for (const i of n) { + let n = t; + if (i.length > 0) { + const t = d(e, { dynamics: [], shortcuts: [], statics: {} }); + v(e, n, t), this.registerOptions(e, t), (n = t); + } + for (let t = 0; t < i.length; ++t) { + const r = d(e, { dynamics: [], shortcuts: [], statics: {} }); + D(e, n, i[t], r, 'pushPath'), (n = r); + } + if (this.arity.leading.length > 0 || !this.arity.proxy) { + const t = d(e, { dynamics: [], shortcuts: [], statics: {} }); + Q(e, n, 'isHelp', t, ['useHelp', this.cliIndex]), + D(e, t, '\0', 1, ['setSelectedIndex', -1]), + this.registerOptions(e, n); + } + this.arity.leading.length > 0 && + D(e, n, '\0', 2, ['setError', 'Not enough positional arguments']); + let o = n; + for (let t = 0; t < this.arity.leading.length; ++t) { + const r = d(e, { dynamics: [], shortcuts: [], statics: {} }); + this.arity.proxy || this.registerOptions(e, r), + (this.arity.trailing.length > 0 || t + 1 !== this.arity.leading.length) && + D(e, r, '\0', 2, ['setError', 'Not enough positional arguments']), + Q(e, o, 'isNotOptionLike', r, 'pushPositional'), + (o = r); + } + let s = o; + if (this.arity.extra === F || this.arity.extra.length > 0) { + const t = d(e, { dynamics: [], shortcuts: [], statics: {} }); + if ((v(e, o, t), this.arity.extra === F)) { + const n = d(e, { dynamics: [], shortcuts: [], statics: {} }); + this.arity.proxy || this.registerOptions(e, n), + Q(e, o, r, n, 'pushExtra'), + Q(e, n, r, n, 'pushExtra'), + v(e, n, t); + } else + for (let n = 0; n < this.arity.extra.length; ++n) { + const n = d(e, { dynamics: [], shortcuts: [], statics: {} }); + this.arity.proxy || this.registerOptions(e, n), + Q(e, s, r, n, 'pushExtra'), + v(e, n, t), + (s = n); + } + s = t; + } + this.arity.trailing.length > 0 && + D(e, s, '\0', 2, ['setError', 'Not enough positional arguments']); + let A = s; + for (let t = 0; t < this.arity.trailing.length; ++t) { + const r = d(e, { dynamics: [], shortcuts: [], statics: {} }); + this.arity.proxy || this.registerOptions(e, r), + t + 1 < this.arity.trailing.length && + D(e, r, '\0', 2, ['setError', 'Not enough positional arguments']), + Q(e, A, 'isNotOptionLike', r, 'pushPositional'), + (A = r); + } + Q(e, A, r, 2, ['setError', 'Extraneous positional argument']), + D(e, A, '\0', 1, ['setSelectedIndex', this.cliIndex]); + } + return { machine: e, context: this.context }; + } + registerOptions(e, t) { + Q(e, t, ['isOption', '--'], t, 'inhibateOptions'), + Q(e, t, ['isBatchOption', this.allOptionNames], t, 'pushBatch'), + Q(e, t, ['isBoundOption', this.allOptionNames, this.options], t, 'pushBound'), + Q(e, t, ['isUnsupportedOption', this.allOptionNames], 2, [ + 'setError', + 'Unsupported option name', + ]), + Q(e, t, ['isInvalidOption'], 2, ['setError', 'Invalid option name']); + for (const r of this.options) { + const n = r.names.reduce((e, t) => (t.length > e.length ? t : e), ''); + if (0 === r.arity) + for (const i of r.names) + Q(e, t, ['isOption', i, r.hidden || i !== n], t, 'pushTrue'), + i.startsWith('--') && + Q(e, t, ['isNegatedOption', i, r.hidden || i !== n], t, ['pushFalse', i]); + else { + if (1 !== r.arity) throw new Error(`Unsupported option arity (${r.arity})`); + { + const i = d(e, { dynamics: [], shortcuts: [], statics: {} }); + Q(e, i, 'isNotOptionLike', t, 'setStringValue'); + for (const o of r.names) + Q(e, t, ['isOption', o, r.hidden || o !== n], i, 'pushUndefined'); + } + } + } + } + } + class N { + constructor({ binaryName: e = '...' } = {}) { + (this.builders = []), (this.opts = { binaryName: e }); + } + static build(e, t = {}) { + return new N(t).commands(e).compile(); + } + getBuilderByIndex(e) { + if (!(e >= 0 && e < this.builders.length)) + throw new Error(`Assertion failed: Out-of-bound command index (${e})`); + return this.builders[e]; + } + commands(e) { + for (const t of e) t(this.command()); + return this; + } + command() { + const e = new M(this.builders.length, this.opts); + return this.builders.push(e), e; + } + compile() { + const e = [], + t = []; + for (const r of this.builders) { + const { machine: n, context: i } = r.compile(); + e.push(n), t.push(i); + } + const r = (function (e) { + const t = { + nodes: [ + { dynamics: [], shortcuts: [], statics: {} }, + { dynamics: [], shortcuts: [], statics: {} }, + { dynamics: [], shortcuts: [], statics: {} }, + ], + }, + r = []; + let n = t.nodes.length; + for (const i of e) { + r.push(n); + for (let e = 0; e < i.nodes.length; ++e) y(e) || t.nodes.push(B(i.nodes[e], n)); + n += i.nodes.length - 2; + } + for (const e of r) v(t, 0, e); + return t; + })(e); + return ( + (function (e) { + const t = new Set(), + r = (n) => { + if (t.has(n)) return; + t.add(n); + const i = e.nodes[n]; + for (const e of Object.values(i.statics)) for (const { to: t } of e) r(t); + for (const [, { to: e }] of i.dynamics) r(e); + for (const { to: e } of i.shortcuts) r(e); + const o = new Set(i.shortcuts.map(({ to: e }) => e)); + for (; i.shortcuts.length > 0; ) { + const { to: t } = i.shortcuts.shift(), + r = e.nodes[t]; + for (const [e, t] of Object.entries(r.statics)) { + let r = Object.prototype.hasOwnProperty.call(i.statics, e) + ? i.statics[e] + : (i.statics[e] = []); + for (const e of t) r.some(({ to: t }) => e.to === t) || r.push(e); + } + for (const [e, t] of r.dynamics) + i.dynamics.some(([r, { to: n }]) => e === r && t.to === n) || + i.dynamics.push([e, t]); + for (const e of r.shortcuts) + o.has(e.to) || (i.shortcuts.push(e), o.add(e.to)); + } + }; + r(0); + })(r), + { + machine: r, + contexts: t, + process: (e) => I(r, e), + suggest: (e, t) => + (function (e, t, r) { + const n = r && t.length > 0 ? [''] : [], + i = C(e, t, r), + o = [], + s = new Set(), + A = (t, r, n = !0) => { + let i = [r]; + for (; i.length > 0; ) { + const r = i; + i = []; + for (const o of r) { + const r = e.nodes[o], + s = Object.keys(r.statics); + for (const e of Object.keys(r.statics)) { + const e = s[0]; + for (const { to: o, reducer: s } of r.statics[e]) + 'pushPath' === s && (n || t.push(e), i.push(o)); + } + } + n = !1; + } + const A = JSON.stringify(t); + s.has(A) || (o.push(t), s.add(A)); + }; + for (const { node: t, state: r } of i) { + if (null !== r.remainder) { + A([r.remainder], t); + continue; + } + const i = e.nodes[t], + o = E(i, r); + for (const [e, r] of Object.entries(i.statics)) + ((o && '\0' !== e) || + (!e.startsWith('-') && r.some(({ reducer: e }) => 'pushPath' === e))) && + A([...n, e], t); + if (o) + for (const [e, { to: o }] of i.dynamics) { + if (2 === o) continue; + const i = S(e, r); + if (null !== i) for (const e of i) A([...n, e], t); + } + } + return [...o].sort(); + })(r, e, t), + } + ); + } + } + const R = { bold: (e) => `${e}`, error: (e) => `${e}`, code: (e) => `${e}` }, + K = { bold: (e) => e, error: (e) => e, code: (e) => e }; + function L(e, { format: t, paragraphs: r }) { + return ( + (e = (e = (e = (e = (e = e.replace(/\r\n?/g, '\n')).replace( + /^[\t ]+|[\t ]+$/gm, + '' + )).replace(/^\n+|\n+$/g, '')).replace(/^-([^\n]*?)\n+/gm, '-$1\n\n')).replace( + /\n(\n)?\n*/g, + '$1' + )), + r && + (e = e + .split(/\n/) + .map(function (e) { + let t = e.match(/^[*-][\t ]+(.*)/); + return t + ? t[1] + .match(/(.{1,78})(?: |$)/g) + .map((e, t) => (0 === t ? '- ' : ' ') + e) + .join('\n') + : e.match(/(.{1,80})(?: |$)/g).join('\n'); + }) + .join('\n\n')), + (e = e.replace(/(`+)((?:.|[\n])*?)\1/g, function (e, r, n) { + return t.code(r + n + r); + })) + ? e + '\n' + : '' + ); + } + class T extends r { + constructor(e, t) { + super(), (this.realCli = e), (this.contexts = t), (this.commands = []); + } + static from(e, t, r) { + const n = new T(t, r); + for (const t of e.options) + switch (t.name) { + case '-c': + n.commands.push(Number(t.value)); + break; + case '-i': + n.index = Number(t.value); + } + return n; + } + async execute() { + let e = this.commands; + if ( + (void 0 !== this.index && + this.index >= 0 && + this.index < e.length && + (e = [e[this.index]]), + 1 === e.length) + ) + this.context.stdout.write( + this.realCli.usage(this.contexts[e[0]].commandClass, { detailed: !0 }) + ); + else if (e.length > 1) { + this.context.stdout.write('Multiple commands match your selection:\n'), + this.context.stdout.write('\n'); + let e = 0; + for (const t of this.commands) + this.context.stdout.write( + this.realCli.usage(this.contexts[t].commandClass, { + prefix: (e++ + '. ').padStart(5), + }) + ); + this.context.stdout.write('\n'), + this.context.stdout.write( + 'Run again with -h= to see the longer details of any of those commands.\n' + ); + } + } + } + function P() { + return ( + '0' !== process.env.FORCE_COLOR && + ('1' === process.env.FORCE_COLOR || + !(void 0 === process.stdout || !process.stdout.isTTY)) + ); + } + class U { + constructor({ + binaryLabel: e, + binaryName: t = '...', + binaryVersion: r, + enableColors: n = P(), + } = {}) { + (this.registrations = new Map()), + (this.builder = new N({ binaryName: t })), + (this.binaryLabel = e), + (this.binaryName = t), + (this.binaryVersion = r), + (this.enableColors = n); + } + static from(e) { + const t = new U(); + for (const r of e) t.register(r); + return t; + } + register(e) { + const t = this.builder.command(); + this.registrations.set(e, t.cliIndex); + const { definitions: r } = e.resolveMeta(e.prototype); + for (const e of r) e(t); + t.setContext({ commandClass: e }); + } + process(e) { + const { contexts: t, process: r } = this.builder.compile(), + n = r(e); + switch (n.selectedIndex) { + case -1: + return T.from(n, this, t); + default: { + const { commandClass: e } = t[n.selectedIndex], + r = new e(); + r.path = n.path; + const { transformers: i } = e.resolveMeta(e.prototype); + for (const e of i) e(n, r); + return r; + } + } + } + async run(e, t) { + let r, n; + if (Array.isArray(e)) + try { + r = this.process(e); + } catch (e) { + return t.stdout.write(this.error(e)), 1; + } + else r = e; + if (r.help) return t.stdout.write(this.usage(r, { detailed: !0 })), 0; + (r.context = t), + (r.cli = { + binaryLabel: this.binaryLabel, + binaryName: this.binaryName, + binaryVersion: this.binaryVersion, + definitions: () => this.definitions(), + error: (e, t) => this.error(e, t), + process: (e) => this.process(e), + run: (e, r) => this.run(e, Object.assign(Object.assign({}, t), r)), + usage: (e, t) => this.usage(e, t), + }); + try { + n = await r.validateAndExecute(); + } catch (e) { + return t.stdout.write(this.error(e, { command: r })), 1; + } + return n; + } + async runExit(e, t) { + process.exitCode = await this.run(e, t); + } + suggest(e, t) { + const { contexts: r, process: n, suggest: i } = this.builder.compile(); + return i(e, t); + } + definitions({ colored: e = !1 } = {}) { + const t = []; + for (const [r, n] of this.registrations) { + if (void 0 === r.usage) continue; + const i = this.getUsageByIndex(n, { detailed: !1 }), + o = this.getUsageByIndex(n, { detailed: !0 }), + s = + void 0 !== r.usage.category + ? L(r.usage.category, { format: this.format(e), paragraphs: !1 }) + : void 0, + A = + void 0 !== r.usage.description + ? L(r.usage.description, { format: this.format(e), paragraphs: !1 }) + : void 0, + a = + void 0 !== r.usage.details + ? L(r.usage.details, { format: this.format(e), paragraphs: !0 }) + : void 0, + c = + void 0 !== r.usage.examples + ? r.usage.examples.map(([t, r]) => [ + L(t, { format: this.format(e), paragraphs: !1 }), + r.replace(/\$0/g, this.binaryName), + ]) + : void 0; + t.push({ path: i, usage: o, category: s, description: A, details: a, examples: c }); + } + return t; + } + usage(e = null, { colored: t, detailed: r = !1, prefix: n = '$ ' } = {}) { + const i = null !== e && void 0 === e.getMeta ? e.constructor : e; + let o = ''; + if (i) + if (r) { + const { description: e = '', details: r = '', examples: s = [] } = i.usage || {}; + if ( + ('' !== e && + ((o += L(e, { format: this.format(t), paragraphs: !1 }).replace(/^./, (e) => + e.toUpperCase() + )), + (o += '\n')), + ('' !== r || s.length > 0) && + ((o += this.format(t).bold('Usage:') + '\n'), (o += '\n')), + (o += `${this.format(t).bold(n)}${this.getUsageByRegistration(i)}\n`), + '' !== r && + ((o += '\n'), + (o += this.format(t).bold('Details:') + '\n'), + (o += '\n'), + (o += L(r, { format: this.format(t), paragraphs: !0 }))), + s.length > 0) + ) { + (o += '\n'), (o += this.format(t).bold('Examples:') + '\n'); + for (let [e, r] of s) + (o += '\n'), + (o += L(e, { format: this.format(t), paragraphs: !1 })), + (o += + r + .replace(/^/m, ' ' + this.format(t).bold(n)) + .replace(/\$0/g, this.binaryName) + '\n'); + } + } else o += `${this.format(t).bold(n)}${this.getUsageByRegistration(i)}\n`; + else { + const e = new Map(); + for (const [r, n] of this.registrations.entries()) { + if (void 0 === r.usage) continue; + const i = + void 0 !== r.usage.category + ? L(r.usage.category, { format: this.format(t), paragraphs: !1 }) + : null; + let o = e.get(i); + void 0 === o && e.set(i, (o = [])); + const s = this.getUsageByIndex(n); + o.push({ commandClass: r, usage: s }); + } + const r = Array.from(e.keys()).sort((e, t) => + null === e + ? -1 + : null === t + ? 1 + : e.localeCompare(t, 'en', { usage: 'sort', caseFirst: 'upper' }) + ), + i = void 0 !== this.binaryLabel, + s = void 0 !== this.binaryVersion; + i || s + ? ((o += + i && s + ? this.format(t).bold(`${this.binaryLabel} - ${this.binaryVersion}`) + '\n\n' + : i + ? this.format(t).bold('' + this.binaryLabel) + '\n' + : this.format(t).bold('' + this.binaryVersion) + '\n'), + (o += ` ${this.format(t).bold(n)}${this.binaryName} \n`)) + : (o += `${this.format(t).bold(n)}${this.binaryName} \n`); + for (let n of r) { + const r = e + .get(n) + .slice() + .sort((e, t) => + e.usage.localeCompare(t.usage, 'en', { usage: 'sort', caseFirst: 'upper' }) + ), + i = null !== n ? n.trim() : 'Where is one of'; + (o += '\n'), (o += this.format(t).bold(i + ':') + '\n'); + for (let { commandClass: e, usage: n } of r) { + const r = e.usage.description || 'undocumented'; + (o += '\n'), + (o += ` ${this.format(t).bold(n)}\n`), + (o += ' ' + L(r, { format: this.format(t), paragraphs: !1 })); + } + } + (o += '\n'), + (o += L( + 'You can also print more details about any of these commands by calling them after adding the `-h,--help` flag right after the command name.', + { format: this.format(t), paragraphs: !0 } + )); + } + return o; + } + error(e, { colored: t, command: r = null } = {}) { + e instanceof Error || + (e = new Error( + `Execution failed with a non-error rejection (rejected value: ${JSON.stringify(e)})` + )); + let n = '', + i = e.name.replace(/([a-z])([A-Z])/g, '$1 $2'); + 'Error' === i && (i = 'Internal Error'), + (n += `${this.format(t).error(i)}: ${e.message}\n`); + const o = e.clipanion; + return ( + void 0 !== o + ? 'usage' === o.type && ((n += '\n'), (n += this.usage(r))) + : e.stack && (n += e.stack.replace(/^.*\n/, '') + '\n'), + n + ); + } + getUsageByRegistration(e, t) { + const r = this.registrations.get(e); + if (void 0 === r) throw new Error('Assertion failed: Unregistered command'); + return this.getUsageByIndex(r, t); + } + getUsageByIndex(e, t) { + return this.builder.getBuilderByIndex(e).usage(t); + } + format(e = this.enableColors) { + return e ? R : K; + } + } + (U.defaultContext = { + stdin: process.stdin, + stdout: process.stdout, + stderr: process.stderr, + }), + (r.Entries.Help = i), + (r.Entries.Version = o), + (t.Cli = U), + (t.Command = r), + (t.UsageError = l); + }, + 75426: (e) => { + 'use strict'; + e.exports = { u2: 'clipanion' }; + }, + 15751: (e, t, r) => { + 'use strict'; + const n = r(92413).PassThrough, + i = r(65007); + e.exports = (e) => { + if (!e || !e.pipe) throw new TypeError('Parameter `response` must be a response stream.'); + const t = new n(); + return i(e, t), e.pipe(t); + }; + }, + 15311: (e, t, r) => { + const n = r(93300), + i = {}; + for (const e of Object.keys(n)) i[n[e]] = e; + const o = { + rgb: { channels: 3, labels: 'rgb' }, + hsl: { channels: 3, labels: 'hsl' }, + hsv: { channels: 3, labels: 'hsv' }, + hwb: { channels: 3, labels: 'hwb' }, + cmyk: { channels: 4, labels: 'cmyk' }, + xyz: { channels: 3, labels: 'xyz' }, + lab: { channels: 3, labels: 'lab' }, + lch: { channels: 3, labels: 'lch' }, + hex: { channels: 1, labels: ['hex'] }, + keyword: { channels: 1, labels: ['keyword'] }, + ansi16: { channels: 1, labels: ['ansi16'] }, + ansi256: { channels: 1, labels: ['ansi256'] }, + hcg: { channels: 3, labels: ['h', 'c', 'g'] }, + apple: { channels: 3, labels: ['r16', 'g16', 'b16'] }, + gray: { channels: 1, labels: ['gray'] }, + }; + e.exports = o; + for (const e of Object.keys(o)) { + if (!('channels' in o[e])) throw new Error('missing channels property: ' + e); + if (!('labels' in o[e])) throw new Error('missing channel labels property: ' + e); + if (o[e].labels.length !== o[e].channels) + throw new Error('channel and label counts mismatch: ' + e); + const { channels: t, labels: r } = o[e]; + delete o[e].channels, + delete o[e].labels, + Object.defineProperty(o[e], 'channels', { value: t }), + Object.defineProperty(o[e], 'labels', { value: r }); + } + (o.rgb.hsl = function (e) { + const t = e[0] / 255, + r = e[1] / 255, + n = e[2] / 255, + i = Math.min(t, r, n), + o = Math.max(t, r, n), + s = o - i; + let A, a; + o === i + ? (A = 0) + : t === o + ? (A = (r - n) / s) + : r === o + ? (A = 2 + (n - t) / s) + : n === o && (A = 4 + (t - r) / s), + (A = Math.min(60 * A, 360)), + A < 0 && (A += 360); + const c = (i + o) / 2; + return ( + (a = o === i ? 0 : c <= 0.5 ? s / (o + i) : s / (2 - o - i)), [A, 100 * a, 100 * c] + ); + }), + (o.rgb.hsv = function (e) { + let t, r, n, i, o; + const s = e[0] / 255, + A = e[1] / 255, + a = e[2] / 255, + c = Math.max(s, A, a), + u = c - Math.min(s, A, a), + l = function (e) { + return (c - e) / 6 / u + 0.5; + }; + return ( + 0 === u + ? ((i = 0), (o = 0)) + : ((o = u / c), + (t = l(s)), + (r = l(A)), + (n = l(a)), + s === c + ? (i = n - r) + : A === c + ? (i = 1 / 3 + t - n) + : a === c && (i = 2 / 3 + r - t), + i < 0 ? (i += 1) : i > 1 && (i -= 1)), + [360 * i, 100 * o, 100 * c] + ); + }), + (o.rgb.hwb = function (e) { + const t = e[0], + r = e[1]; + let n = e[2]; + const i = o.rgb.hsl(e)[0], + s = (1 / 255) * Math.min(t, Math.min(r, n)); + return (n = 1 - (1 / 255) * Math.max(t, Math.max(r, n))), [i, 100 * s, 100 * n]; + }), + (o.rgb.cmyk = function (e) { + const t = e[0] / 255, + r = e[1] / 255, + n = e[2] / 255, + i = Math.min(1 - t, 1 - r, 1 - n); + return [ + 100 * ((1 - t - i) / (1 - i) || 0), + 100 * ((1 - r - i) / (1 - i) || 0), + 100 * ((1 - n - i) / (1 - i) || 0), + 100 * i, + ]; + }), + (o.rgb.keyword = function (e) { + const t = i[e]; + if (t) return t; + let r, + o = 1 / 0; + for (const t of Object.keys(n)) { + const i = n[t], + a = ((A = i), ((s = e)[0] - A[0]) ** 2 + (s[1] - A[1]) ** 2 + (s[2] - A[2]) ** 2); + a < o && ((o = a), (r = t)); + } + var s, A; + return r; + }), + (o.keyword.rgb = function (e) { + return n[e]; + }), + (o.rgb.xyz = function (e) { + let t = e[0] / 255, + r = e[1] / 255, + n = e[2] / 255; + (t = t > 0.04045 ? ((t + 0.055) / 1.055) ** 2.4 : t / 12.92), + (r = r > 0.04045 ? ((r + 0.055) / 1.055) ** 2.4 : r / 12.92), + (n = n > 0.04045 ? ((n + 0.055) / 1.055) ** 2.4 : n / 12.92); + return [ + 100 * (0.4124 * t + 0.3576 * r + 0.1805 * n), + 100 * (0.2126 * t + 0.7152 * r + 0.0722 * n), + 100 * (0.0193 * t + 0.1192 * r + 0.9505 * n), + ]; + }), + (o.rgb.lab = function (e) { + const t = o.rgb.xyz(e); + let r = t[0], + n = t[1], + i = t[2]; + (r /= 95.047), + (n /= 100), + (i /= 108.883), + (r = r > 0.008856 ? r ** (1 / 3) : 7.787 * r + 16 / 116), + (n = n > 0.008856 ? n ** (1 / 3) : 7.787 * n + 16 / 116), + (i = i > 0.008856 ? i ** (1 / 3) : 7.787 * i + 16 / 116); + return [116 * n - 16, 500 * (r - n), 200 * (n - i)]; + }), + (o.hsl.rgb = function (e) { + const t = e[0] / 360, + r = e[1] / 100, + n = e[2] / 100; + let i, o, s; + if (0 === r) return (s = 255 * n), [s, s, s]; + i = n < 0.5 ? n * (1 + r) : n + r - n * r; + const A = 2 * n - i, + a = [0, 0, 0]; + for (let e = 0; e < 3; e++) + (o = t + (1 / 3) * -(e - 1)), + o < 0 && o++, + o > 1 && o--, + (s = + 6 * o < 1 + ? A + 6 * (i - A) * o + : 2 * o < 1 + ? i + : 3 * o < 2 + ? A + (i - A) * (2 / 3 - o) * 6 + : A), + (a[e] = 255 * s); + return a; + }), + (o.hsl.hsv = function (e) { + const t = e[0]; + let r = e[1] / 100, + n = e[2] / 100, + i = r; + const o = Math.max(n, 0.01); + (n *= 2), (r *= n <= 1 ? n : 2 - n), (i *= o <= 1 ? o : 2 - o); + return [ + t, + 100 * (0 === n ? (2 * i) / (o + i) : (2 * r) / (n + r)), + 100 * ((n + r) / 2), + ]; + }), + (o.hsv.rgb = function (e) { + const t = e[0] / 60, + r = e[1] / 100; + let n = e[2] / 100; + const i = Math.floor(t) % 6, + o = t - Math.floor(t), + s = 255 * n * (1 - r), + A = 255 * n * (1 - r * o), + a = 255 * n * (1 - r * (1 - o)); + switch (((n *= 255), i)) { + case 0: + return [n, a, s]; + case 1: + return [A, n, s]; + case 2: + return [s, n, a]; + case 3: + return [s, A, n]; + case 4: + return [a, s, n]; + case 5: + return [n, s, A]; + } + }), + (o.hsv.hsl = function (e) { + const t = e[0], + r = e[1] / 100, + n = e[2] / 100, + i = Math.max(n, 0.01); + let o, s; + s = (2 - r) * n; + const A = (2 - r) * i; + return ( + (o = r * i), (o /= A <= 1 ? A : 2 - A), (o = o || 0), (s /= 2), [t, 100 * o, 100 * s] + ); + }), + (o.hwb.rgb = function (e) { + const t = e[0] / 360; + let r = e[1] / 100, + n = e[2] / 100; + const i = r + n; + let o; + i > 1 && ((r /= i), (n /= i)); + const s = Math.floor(6 * t), + A = 1 - n; + (o = 6 * t - s), 0 != (1 & s) && (o = 1 - o); + const a = r + o * (A - r); + let c, u, l; + switch (s) { + default: + case 6: + case 0: + (c = A), (u = a), (l = r); + break; + case 1: + (c = a), (u = A), (l = r); + break; + case 2: + (c = r), (u = A), (l = a); + break; + case 3: + (c = r), (u = a), (l = A); + break; + case 4: + (c = a), (u = r), (l = A); + break; + case 5: + (c = A), (u = r), (l = a); + } + return [255 * c, 255 * u, 255 * l]; + }), + (o.cmyk.rgb = function (e) { + const t = e[0] / 100, + r = e[1] / 100, + n = e[2] / 100, + i = e[3] / 100; + return [ + 255 * (1 - Math.min(1, t * (1 - i) + i)), + 255 * (1 - Math.min(1, r * (1 - i) + i)), + 255 * (1 - Math.min(1, n * (1 - i) + i)), + ]; + }), + (o.xyz.rgb = function (e) { + const t = e[0] / 100, + r = e[1] / 100, + n = e[2] / 100; + let i, o, s; + return ( + (i = 3.2406 * t + -1.5372 * r + -0.4986 * n), + (o = -0.9689 * t + 1.8758 * r + 0.0415 * n), + (s = 0.0557 * t + -0.204 * r + 1.057 * n), + (i = i > 0.0031308 ? 1.055 * i ** (1 / 2.4) - 0.055 : 12.92 * i), + (o = o > 0.0031308 ? 1.055 * o ** (1 / 2.4) - 0.055 : 12.92 * o), + (s = s > 0.0031308 ? 1.055 * s ** (1 / 2.4) - 0.055 : 12.92 * s), + (i = Math.min(Math.max(0, i), 1)), + (o = Math.min(Math.max(0, o), 1)), + (s = Math.min(Math.max(0, s), 1)), + [255 * i, 255 * o, 255 * s] + ); + }), + (o.xyz.lab = function (e) { + let t = e[0], + r = e[1], + n = e[2]; + (t /= 95.047), + (r /= 100), + (n /= 108.883), + (t = t > 0.008856 ? t ** (1 / 3) : 7.787 * t + 16 / 116), + (r = r > 0.008856 ? r ** (1 / 3) : 7.787 * r + 16 / 116), + (n = n > 0.008856 ? n ** (1 / 3) : 7.787 * n + 16 / 116); + return [116 * r - 16, 500 * (t - r), 200 * (r - n)]; + }), + (o.lab.xyz = function (e) { + let t, r, n; + (r = (e[0] + 16) / 116), (t = e[1] / 500 + r), (n = r - e[2] / 200); + const i = r ** 3, + o = t ** 3, + s = n ** 3; + return ( + (r = i > 0.008856 ? i : (r - 16 / 116) / 7.787), + (t = o > 0.008856 ? o : (t - 16 / 116) / 7.787), + (n = s > 0.008856 ? s : (n - 16 / 116) / 7.787), + (t *= 95.047), + (r *= 100), + (n *= 108.883), + [t, r, n] + ); + }), + (o.lab.lch = function (e) { + const t = e[0], + r = e[1], + n = e[2]; + let i; + (i = (360 * Math.atan2(n, r)) / 2 / Math.PI), i < 0 && (i += 360); + return [t, Math.sqrt(r * r + n * n), i]; + }), + (o.lch.lab = function (e) { + const t = e[0], + r = e[1], + n = (e[2] / 360) * 2 * Math.PI; + return [t, r * Math.cos(n), r * Math.sin(n)]; + }), + (o.rgb.ansi16 = function (e, t = null) { + const [r, n, i] = e; + let s = null === t ? o.rgb.hsv(e)[2] : t; + if (((s = Math.round(s / 50)), 0 === s)) return 30; + let A = + 30 + ((Math.round(i / 255) << 2) | (Math.round(n / 255) << 1) | Math.round(r / 255)); + return 2 === s && (A += 60), A; + }), + (o.hsv.ansi16 = function (e) { + return o.rgb.ansi16(o.hsv.rgb(e), e[2]); + }), + (o.rgb.ansi256 = function (e) { + const t = e[0], + r = e[1], + n = e[2]; + if (t === r && r === n) + return t < 8 ? 16 : t > 248 ? 231 : Math.round(((t - 8) / 247) * 24) + 232; + return ( + 16 + + 36 * Math.round((t / 255) * 5) + + 6 * Math.round((r / 255) * 5) + + Math.round((n / 255) * 5) + ); + }), + (o.ansi16.rgb = function (e) { + let t = e % 10; + if (0 === t || 7 === t) return e > 50 && (t += 3.5), (t = (t / 10.5) * 255), [t, t, t]; + const r = 0.5 * (1 + ~~(e > 50)); + return [(1 & t) * r * 255, ((t >> 1) & 1) * r * 255, ((t >> 2) & 1) * r * 255]; + }), + (o.ansi256.rgb = function (e) { + if (e >= 232) { + const t = 10 * (e - 232) + 8; + return [t, t, t]; + } + let t; + e -= 16; + return [ + (Math.floor(e / 36) / 5) * 255, + (Math.floor((t = e % 36) / 6) / 5) * 255, + ((t % 6) / 5) * 255, + ]; + }), + (o.rgb.hex = function (e) { + const t = ( + ((255 & Math.round(e[0])) << 16) + + ((255 & Math.round(e[1])) << 8) + + (255 & Math.round(e[2])) + ) + .toString(16) + .toUpperCase(); + return '000000'.substring(t.length) + t; + }), + (o.hex.rgb = function (e) { + const t = e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i); + if (!t) return [0, 0, 0]; + let r = t[0]; + 3 === t[0].length && + (r = r + .split('') + .map((e) => e + e) + .join('')); + const n = parseInt(r, 16); + return [(n >> 16) & 255, (n >> 8) & 255, 255 & n]; + }), + (o.rgb.hcg = function (e) { + const t = e[0] / 255, + r = e[1] / 255, + n = e[2] / 255, + i = Math.max(Math.max(t, r), n), + o = Math.min(Math.min(t, r), n), + s = i - o; + let A, a; + return ( + (A = s < 1 ? o / (1 - s) : 0), + (a = + s <= 0 + ? 0 + : i === t + ? ((r - n) / s) % 6 + : i === r + ? 2 + (n - t) / s + : 4 + (t - r) / s), + (a /= 6), + (a %= 1), + [360 * a, 100 * s, 100 * A] + ); + }), + (o.hsl.hcg = function (e) { + const t = e[1] / 100, + r = e[2] / 100, + n = r < 0.5 ? 2 * t * r : 2 * t * (1 - r); + let i = 0; + return n < 1 && (i = (r - 0.5 * n) / (1 - n)), [e[0], 100 * n, 100 * i]; + }), + (o.hsv.hcg = function (e) { + const t = e[1] / 100, + r = e[2] / 100, + n = t * r; + let i = 0; + return n < 1 && (i = (r - n) / (1 - n)), [e[0], 100 * n, 100 * i]; + }), + (o.hcg.rgb = function (e) { + const t = e[0] / 360, + r = e[1] / 100, + n = e[2] / 100; + if (0 === r) return [255 * n, 255 * n, 255 * n]; + const i = [0, 0, 0], + o = (t % 1) * 6, + s = o % 1, + A = 1 - s; + let a = 0; + switch (Math.floor(o)) { + case 0: + (i[0] = 1), (i[1] = s), (i[2] = 0); + break; + case 1: + (i[0] = A), (i[1] = 1), (i[2] = 0); + break; + case 2: + (i[0] = 0), (i[1] = 1), (i[2] = s); + break; + case 3: + (i[0] = 0), (i[1] = A), (i[2] = 1); + break; + case 4: + (i[0] = s), (i[1] = 0), (i[2] = 1); + break; + default: + (i[0] = 1), (i[1] = 0), (i[2] = A); + } + return ( + (a = (1 - r) * n), [255 * (r * i[0] + a), 255 * (r * i[1] + a), 255 * (r * i[2] + a)] + ); + }), + (o.hcg.hsv = function (e) { + const t = e[1] / 100, + r = t + (e[2] / 100) * (1 - t); + let n = 0; + return r > 0 && (n = t / r), [e[0], 100 * n, 100 * r]; + }), + (o.hcg.hsl = function (e) { + const t = e[1] / 100, + r = (e[2] / 100) * (1 - t) + 0.5 * t; + let n = 0; + return ( + r > 0 && r < 0.5 ? (n = t / (2 * r)) : r >= 0.5 && r < 1 && (n = t / (2 * (1 - r))), + [e[0], 100 * n, 100 * r] + ); + }), + (o.hcg.hwb = function (e) { + const t = e[1] / 100, + r = t + (e[2] / 100) * (1 - t); + return [e[0], 100 * (r - t), 100 * (1 - r)]; + }), + (o.hwb.hcg = function (e) { + const t = e[1] / 100, + r = 1 - e[2] / 100, + n = r - t; + let i = 0; + return n < 1 && (i = (r - n) / (1 - n)), [e[0], 100 * n, 100 * i]; + }), + (o.apple.rgb = function (e) { + return [(e[0] / 65535) * 255, (e[1] / 65535) * 255, (e[2] / 65535) * 255]; + }), + (o.rgb.apple = function (e) { + return [(e[0] / 255) * 65535, (e[1] / 255) * 65535, (e[2] / 255) * 65535]; + }), + (o.gray.rgb = function (e) { + return [(e[0] / 100) * 255, (e[0] / 100) * 255, (e[0] / 100) * 255]; + }), + (o.gray.hsl = function (e) { + return [0, 0, e[0]]; + }), + (o.gray.hsv = o.gray.hsl), + (o.gray.hwb = function (e) { + return [0, 100, e[0]]; + }), + (o.gray.cmyk = function (e) { + return [0, 0, 0, e[0]]; + }), + (o.gray.lab = function (e) { + return [e[0], 0, 0]; + }), + (o.gray.hex = function (e) { + const t = 255 & Math.round((e[0] / 100) * 255), + r = ((t << 16) + (t << 8) + t).toString(16).toUpperCase(); + return '000000'.substring(r.length) + r; + }), + (o.rgb.gray = function (e) { + return [((e[0] + e[1] + e[2]) / 3 / 255) * 100]; + }); + }, + 2744: (e, t, r) => { + const n = r(15311), + i = r(78577), + o = {}; + Object.keys(n).forEach((e) => { + (o[e] = {}), + Object.defineProperty(o[e], 'channels', { value: n[e].channels }), + Object.defineProperty(o[e], 'labels', { value: n[e].labels }); + const t = i(e); + Object.keys(t).forEach((r) => { + const n = t[r]; + (o[e][r] = (function (e) { + const t = function (...t) { + const r = t[0]; + if (null == r) return r; + r.length > 1 && (t = r); + const n = e(t); + if ('object' == typeof n) + for (let e = n.length, t = 0; t < e; t++) n[t] = Math.round(n[t]); + return n; + }; + return 'conversion' in e && (t.conversion = e.conversion), t; + })(n)), + (o[e][r].raw = (function (e) { + const t = function (...t) { + const r = t[0]; + return null == r ? r : (r.length > 1 && (t = r), e(t)); + }; + return 'conversion' in e && (t.conversion = e.conversion), t; + })(n)); + }); + }), + (e.exports = o); + }, + 78577: (e, t, r) => { + const n = r(15311); + function i(e) { + const t = (function () { + const e = {}, + t = Object.keys(n); + for (let r = t.length, n = 0; n < r; n++) e[t[n]] = { distance: -1, parent: null }; + return e; + })(), + r = [e]; + for (t[e].distance = 0; r.length; ) { + const e = r.pop(), + i = Object.keys(n[e]); + for (let n = i.length, o = 0; o < n; o++) { + const n = i[o], + s = t[n]; + -1 === s.distance && ((s.distance = t[e].distance + 1), (s.parent = e), r.unshift(n)); + } + } + return t; + } + function o(e, t) { + return function (r) { + return t(e(r)); + }; + } + function s(e, t) { + const r = [t[e].parent, e]; + let i = n[t[e].parent][e], + s = t[e].parent; + for (; t[s].parent; ) + r.unshift(t[s].parent), (i = o(n[t[s].parent][s], i)), (s = t[s].parent); + return (i.conversion = r), i; + } + e.exports = function (e) { + const t = i(e), + r = {}, + n = Object.keys(t); + for (let e = n.length, i = 0; i < e; i++) { + const e = n[i]; + null !== t[e].parent && (r[e] = s(e, t)); + } + return r; + }; + }, + 93300: (e) => { + 'use strict'; + e.exports = { + aliceblue: [240, 248, 255], + antiquewhite: [250, 235, 215], + aqua: [0, 255, 255], + aquamarine: [127, 255, 212], + azure: [240, 255, 255], + beige: [245, 245, 220], + bisque: [255, 228, 196], + black: [0, 0, 0], + blanchedalmond: [255, 235, 205], + blue: [0, 0, 255], + blueviolet: [138, 43, 226], + brown: [165, 42, 42], + burlywood: [222, 184, 135], + cadetblue: [95, 158, 160], + chartreuse: [127, 255, 0], + chocolate: [210, 105, 30], + coral: [255, 127, 80], + cornflowerblue: [100, 149, 237], + cornsilk: [255, 248, 220], + crimson: [220, 20, 60], + cyan: [0, 255, 255], + darkblue: [0, 0, 139], + darkcyan: [0, 139, 139], + darkgoldenrod: [184, 134, 11], + darkgray: [169, 169, 169], + darkgreen: [0, 100, 0], + darkgrey: [169, 169, 169], + darkkhaki: [189, 183, 107], + darkmagenta: [139, 0, 139], + darkolivegreen: [85, 107, 47], + darkorange: [255, 140, 0], + darkorchid: [153, 50, 204], + darkred: [139, 0, 0], + darksalmon: [233, 150, 122], + darkseagreen: [143, 188, 143], + darkslateblue: [72, 61, 139], + darkslategray: [47, 79, 79], + darkslategrey: [47, 79, 79], + darkturquoise: [0, 206, 209], + darkviolet: [148, 0, 211], + deeppink: [255, 20, 147], + deepskyblue: [0, 191, 255], + dimgray: [105, 105, 105], + dimgrey: [105, 105, 105], + dodgerblue: [30, 144, 255], + firebrick: [178, 34, 34], + floralwhite: [255, 250, 240], + forestgreen: [34, 139, 34], + fuchsia: [255, 0, 255], + gainsboro: [220, 220, 220], + ghostwhite: [248, 248, 255], + gold: [255, 215, 0], + goldenrod: [218, 165, 32], + gray: [128, 128, 128], + green: [0, 128, 0], + greenyellow: [173, 255, 47], + grey: [128, 128, 128], + honeydew: [240, 255, 240], + hotpink: [255, 105, 180], + indianred: [205, 92, 92], + indigo: [75, 0, 130], + ivory: [255, 255, 240], + khaki: [240, 230, 140], + lavender: [230, 230, 250], + lavenderblush: [255, 240, 245], + lawngreen: [124, 252, 0], + lemonchiffon: [255, 250, 205], + lightblue: [173, 216, 230], + lightcoral: [240, 128, 128], + lightcyan: [224, 255, 255], + lightgoldenrodyellow: [250, 250, 210], + lightgray: [211, 211, 211], + lightgreen: [144, 238, 144], + lightgrey: [211, 211, 211], + lightpink: [255, 182, 193], + lightsalmon: [255, 160, 122], + lightseagreen: [32, 178, 170], + lightskyblue: [135, 206, 250], + lightslategray: [119, 136, 153], + lightslategrey: [119, 136, 153], + lightsteelblue: [176, 196, 222], + lightyellow: [255, 255, 224], + lime: [0, 255, 0], + limegreen: [50, 205, 50], + linen: [250, 240, 230], + magenta: [255, 0, 255], + maroon: [128, 0, 0], + mediumaquamarine: [102, 205, 170], + mediumblue: [0, 0, 205], + mediumorchid: [186, 85, 211], + mediumpurple: [147, 112, 219], + mediumseagreen: [60, 179, 113], + mediumslateblue: [123, 104, 238], + mediumspringgreen: [0, 250, 154], + mediumturquoise: [72, 209, 204], + mediumvioletred: [199, 21, 133], + midnightblue: [25, 25, 112], + mintcream: [245, 255, 250], + mistyrose: [255, 228, 225], + moccasin: [255, 228, 181], + navajowhite: [255, 222, 173], + navy: [0, 0, 128], + oldlace: [253, 245, 230], + olive: [128, 128, 0], + olivedrab: [107, 142, 35], + orange: [255, 165, 0], + orangered: [255, 69, 0], + orchid: [218, 112, 214], + palegoldenrod: [238, 232, 170], + palegreen: [152, 251, 152], + paleturquoise: [175, 238, 238], + palevioletred: [219, 112, 147], + papayawhip: [255, 239, 213], + peachpuff: [255, 218, 185], + peru: [205, 133, 63], + pink: [255, 192, 203], + plum: [221, 160, 221], + powderblue: [176, 224, 230], + purple: [128, 0, 128], + rebeccapurple: [102, 51, 153], + red: [255, 0, 0], + rosybrown: [188, 143, 143], + royalblue: [65, 105, 225], + saddlebrown: [139, 69, 19], + salmon: [250, 128, 114], + sandybrown: [244, 164, 96], + seagreen: [46, 139, 87], + seashell: [255, 245, 238], + sienna: [160, 82, 45], + silver: [192, 192, 192], + skyblue: [135, 206, 235], + slateblue: [106, 90, 205], + slategray: [112, 128, 144], + slategrey: [112, 128, 144], + snow: [255, 250, 250], + springgreen: [0, 255, 127], + steelblue: [70, 130, 180], + tan: [210, 180, 140], + teal: [0, 128, 128], + thistle: [216, 191, 216], + tomato: [255, 99, 71], + turquoise: [64, 224, 208], + violet: [238, 130, 238], + wheat: [245, 222, 179], + white: [255, 255, 255], + whitesmoke: [245, 245, 245], + yellow: [255, 255, 0], + yellowgreen: [154, 205, 50], + }; + }, + 36547: (e) => { + e.exports = function (e, r) { + for (var n = [], i = 0; i < e.length; i++) { + var o = r(e[i], i); + t(o) ? n.push.apply(n, o) : n.push(o); + } + return n; + }; + var t = + Array.isArray || + function (e) { + return '[object Array]' === Object.prototype.toString.call(e); + }; + }, + 67566: (e, t, r) => { + 'use strict'; + const n = r(63129), + i = r(14951), + o = r(10779); + function s(e, t, r) { + const s = i(e, t, r), + A = n.spawn(s.command, s.args, s.options); + return o.hookChildProcess(A, s), A; + } + (e.exports = s), + (e.exports.spawn = s), + (e.exports.sync = function (e, t, r) { + const s = i(e, t, r), + A = n.spawnSync(s.command, s.args, s.options); + return (A.error = A.error || o.verifyENOENTSync(A.status, s)), A; + }), + (e.exports._parse = i), + (e.exports._enoent = o); + }, + 10779: (e) => { + 'use strict'; + const t = 'win32' === process.platform; + function r(e, t) { + return Object.assign(new Error(`${t} ${e.command} ENOENT`), { + code: 'ENOENT', + errno: 'ENOENT', + syscall: `${t} ${e.command}`, + path: e.command, + spawnargs: e.args, + }); + } + function n(e, n) { + return t && 1 === e && !n.file ? r(n.original, 'spawn') : null; + } + e.exports = { + hookChildProcess: function (e, r) { + if (!t) return; + const i = e.emit; + e.emit = function (t, o) { + if ('exit' === t) { + const t = n(o, r); + if (t) return i.call(e, 'error', t); + } + return i.apply(e, arguments); + }; + }, + verifyENOENT: n, + verifyENOENTSync: function (e, n) { + return t && 1 === e && !n.file ? r(n.original, 'spawnSync') : null; + }, + notFoundError: r, + }; + }, + 14951: (e, t, r) => { + 'use strict'; + const n = r(85622), + i = r(47447), + o = r(27066), + s = r(35187), + A = 'win32' === process.platform, + a = /\.(?:com|exe)$/i, + c = /node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i; + function u(e) { + if (!A) return e; + const t = (function (e) { + e.file = i(e); + const t = e.file && s(e.file); + return t ? (e.args.unshift(e.file), (e.command = t), i(e)) : e.file; + })(e), + r = !a.test(t); + if (e.options.forceShell || r) { + const r = c.test(t); + (e.command = n.normalize(e.command)), + (e.command = o.command(e.command)), + (e.args = e.args.map((e) => o.argument(e, r))); + const i = [e.command].concat(e.args).join(' '); + (e.args = ['/d', '/s', '/c', `"${i}"`]), + (e.command = process.env.comspec || 'cmd.exe'), + (e.options.windowsVerbatimArguments = !0); + } + return e; + } + e.exports = function (e, t, r) { + t && !Array.isArray(t) && ((r = t), (t = null)); + const n = { + command: e, + args: (t = t ? t.slice(0) : []), + options: (r = Object.assign({}, r)), + file: void 0, + original: { command: e, args: t }, + }; + return r.shell ? n : u(n); + }; + }, + 27066: (e) => { + 'use strict'; + const t = /([()\][%!^"`<>&|;, *?])/g; + (e.exports.command = function (e) { + return (e = e.replace(t, '^$1')); + }), + (e.exports.argument = function (e, r) { + return ( + (e = (e = `"${(e = (e = (e = '' + e).replace(/(\\*)"/g, '$1$1\\"')).replace( + /(\\*)$/, + '$1$1' + ))}"`).replace(t, '^$1')), + r && (e = e.replace(t, '^$1')), + e + ); + }); + }, + 35187: (e, t, r) => { + 'use strict'; + const n = r(35747), + i = r(91470); + e.exports = function (e) { + const t = Buffer.alloc(150); + let r; + try { + (r = n.openSync(e, 'r')), n.readSync(r, t, 0, 150, 0), n.closeSync(r); + } catch (e) {} + return i(t.toString()); + }; + }, + 47447: (e, t, r) => { + 'use strict'; + const n = r(85622), + i = r(87945), + o = r(37127); + function s(e, t) { + const r = e.options.env || process.env, + s = process.cwd(), + A = null != e.options.cwd, + a = A && void 0 !== process.chdir && !process.chdir.disabled; + if (a) + try { + process.chdir(e.options.cwd); + } catch (e) {} + let c; + try { + c = i.sync(e.command, { path: r[o({ env: r })], pathExt: t ? n.delimiter : void 0 }); + } catch (e) { + } finally { + a && process.chdir(s); + } + return c && (c = n.resolve(A ? e.options.cwd : '', c)), c; + } + e.exports = function (e) { + return s(e) || s(e, !0); + }; + }, + 53832: (e, t, r) => { + 'use strict'; + const { pipeline: n, PassThrough: i } = r(92413), + o = r(78761), + s = r(60102); + e.exports = (e) => { + const t = (e.headers['content-encoding'] || '').toLowerCase(); + if (!['gzip', 'deflate', 'br'].includes(t)) return e; + const r = 'br' === t; + if (r && 'function' != typeof o.createBrotliDecompress) return e; + const A = r ? o.createBrotliDecompress() : o.createUnzip(), + a = new i(); + A.on('error', (e) => { + 'Z_BUF_ERROR' !== e.code ? a.emit('error', e) : a.end(); + }); + const c = n(e, A, a, () => {}); + return s(e, c), c; + }; + }, + 93121: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(4016), + i = (e, t) => { + let r; + if ('function' == typeof t) { + r = { connect: t }; + } else r = t; + const i = 'function' == typeof r.connect, + o = 'function' == typeof r.secureConnect, + s = 'function' == typeof r.close, + A = () => { + i && r.connect(), + e instanceof n.TLSSocket && + o && + (e.authorized + ? r.secureConnect() + : e.authorizationError || e.once('secureConnect', r.secureConnect)), + s && e.once('close', r.close); + }; + e.writable && !e.connecting + ? A() + : e.connecting + ? e.once('connect', A) + : e.destroyed && s && r.close(e._hadError); + }; + (t.default = i), (e.exports = i), (e.exports.default = i); + }, + 66241: (e, t, r) => { + 'use strict'; + const n = r(85622), + i = r(5763), + o = (e) => (e.length > 1 ? `{${e.join(',')}}` : e[0]), + s = (e, t) => { + const r = '!' === e[0] ? e.slice(1) : e; + return n.isAbsolute(r) ? r : n.join(t, r); + }, + A = (e, t) => { + if (t.files && !Array.isArray(t.files)) + throw new TypeError( + `Expected \`files\` to be of type \`Array\` but received type \`${typeof t.files}\`` + ); + if (t.extensions && !Array.isArray(t.extensions)) + throw new TypeError( + `Expected \`extensions\` to be of type \`Array\` but received type \`${typeof t.extensions}\`` + ); + return t.files && t.extensions + ? t.files.map((r) => { + return n.posix.join( + e, + ((i = r), (s = t.extensions), n.extname(i) ? '**/' + i : `**/${i}.${o(s)}`) + ); + var i, s; + }) + : t.files + ? t.files.map((t) => n.posix.join(e, '**/' + t)) + : t.extensions + ? [n.posix.join(e, '**/*.' + o(t.extensions))] + : [n.posix.join(e, '**')]; + }; + (e.exports = async (e, t) => { + if ('string' != typeof (t = { cwd: process.cwd(), ...t }).cwd) + throw new TypeError( + `Expected \`cwd\` to be of type \`string\` but received type \`${typeof t.cwd}\`` + ); + const r = await Promise.all( + [].concat(e).map(async (e) => ((await i.isDirectory(s(e, t.cwd))) ? A(e, t) : e)) + ); + return [].concat.apply([], r); + }), + (e.exports.sync = (e, t) => { + if ('string' != typeof (t = { cwd: process.cwd(), ...t }).cwd) + throw new TypeError( + `Expected \`cwd\` to be of type \`string\` but received type \`${typeof t.cwd}\`` + ); + const r = [].concat(e).map((e) => (i.isDirectorySync(s(e, t.cwd)) ? A(e, t) : e)); + return [].concat.apply([], r); + }); + }, + 1013: (e) => { + 'use strict'; + e.exports = function () { + return /\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F|\uD83D\uDC68(?:\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68\uD83C\uDFFB|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|[\u2695\u2696\u2708]\uFE0F|\uD83D[\uDC66\uDC67]|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708])\uFE0F|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C[\uDFFB-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)\uD83C\uDFFB|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB\uDFFC])|\uD83D\uDC69(?:\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB-\uDFFD])|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)\uFE0F|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\uD83C\uDFF4\u200D\u2620)\uFE0F|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF4\uD83C\uDDF2|\uD83C\uDDF6\uD83C\uDDE6|[#\*0-9]\uFE0F\u20E3|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270A-\u270D]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC70\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDCAA\uDD74\uDD7A\uDD90\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD36\uDDB5\uDDB6\uDDBB\uDDD2-\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5\uDEEB\uDEEC\uDEF4-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g; + }; + }, + 97681: (e, t, r) => { + var n = r(91162), + i = function () {}, + o = function (e, t, r) { + if ('function' == typeof t) return o(e, null, t); + t || (t = {}), (r = n(r || i)); + var s = e._writableState, + A = e._readableState, + a = t.readable || (!1 !== t.readable && e.readable), + c = t.writable || (!1 !== t.writable && e.writable), + u = function () { + e.writable || l(); + }, + l = function () { + (c = !1), a || r(); + }, + h = function () { + (a = !1), c || r(); + }, + g = function (e) { + r(e ? new Error('exited with error code: ' + e) : null); + }, + f = function () { + return (!a || (A && A.ended)) && (!c || (s && s.ended)) + ? void 0 + : r(new Error('premature close')); + }, + p = function () { + e.req.on('finish', l); + }; + return ( + !(function (e) { + return e.setHeader && 'function' == typeof e.abort; + })(e) + ? c && !s && (e.on('end', u), e.on('close', u)) + : (e.on('complete', l), e.on('abort', f), e.req ? p() : e.on('request', p)), + (function (e) { + return e.stdio && Array.isArray(e.stdio) && 3 === e.stdio.length; + })(e) && e.on('exit', g), + e.on('end', h), + e.on('finish', l), + !1 !== t.error && e.on('error', r), + e.on('close', f), + function () { + e.removeListener('complete', l), + e.removeListener('abort', f), + e.removeListener('request', p), + e.req && e.req.removeListener('finish', l), + e.removeListener('end', u), + e.removeListener('close', u), + e.removeListener('finish', l), + e.removeListener('exit', g), + e.removeListener('end', h), + e.removeListener('error', r), + e.removeListener('close', f); + } + ); + }; + e.exports = o; + }, + 17067: (e, t, r) => { + var n = r(27180), + i = function () {}, + o = function (e, t, r) { + if ('function' == typeof t) return o(e, null, t); + t || (t = {}), (r = n(r || i)); + var s = e._writableState, + A = e._readableState, + a = t.readable || (!1 !== t.readable && e.readable), + c = t.writable || (!1 !== t.writable && e.writable), + u = function () { + e.writable || l(); + }, + l = function () { + (c = !1), a || r.call(e); + }, + h = function () { + (a = !1), c || r.call(e); + }, + g = function (t) { + r.call(e, t ? new Error('exited with error code: ' + t) : null); + }, + f = function (t) { + r.call(e, t); + }, + p = function () { + return (!a || (A && A.ended)) && (!c || (s && s.ended)) + ? void 0 + : r.call(e, new Error('premature close')); + }, + d = function () { + e.req.on('finish', l); + }; + return ( + !(function (e) { + return e.setHeader && 'function' == typeof e.abort; + })(e) + ? c && !s && (e.on('end', u), e.on('close', u)) + : (e.on('complete', l), e.on('abort', p), e.req ? d() : e.on('request', d)), + (function (e) { + return e.stdio && Array.isArray(e.stdio) && 3 === e.stdio.length; + })(e) && e.on('exit', g), + e.on('end', h), + e.on('finish', l), + !1 !== t.error && e.on('error', f), + e.on('close', p), + function () { + e.removeListener('complete', l), + e.removeListener('abort', p), + e.removeListener('request', d), + e.req && e.req.removeListener('finish', l), + e.removeListener('end', u), + e.removeListener('close', u), + e.removeListener('finish', l), + e.removeListener('exit', g), + e.removeListener('end', h), + e.removeListener('error', f), + e.removeListener('close', p); + } + ); + }; + e.exports = o; + }, + 66349: (e) => { + 'use strict'; + var t = /[|\\{}()[\]^$+*?.]/g; + e.exports = function (e) { + if ('string' != typeof e) throw new TypeError('Expected a string'); + return e.replace(t, '\\$&'); + }; + }, + 41313: function (e) { + var t; + (t = function () { + return (function (e) { + var t = {}; + function r(n) { + if (t[n]) return t[n].exports; + var i = (t[n] = { exports: {}, id: n, loaded: !1 }); + return e[n].call(i.exports, i, i.exports, r), (i.loaded = !0), i.exports; + } + return (r.m = e), (r.c = t), (r.p = ''), r(0); + })([ + function (e, t, r) { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + var n = r(1), + i = r(3), + o = r(8), + s = r(15); + function A(e, t, r) { + var s = null, + A = function (e, t) { + r && r(e, t), s && s.visit(e, t); + }, + a = 'function' == typeof r ? A : null, + c = !1; + if (t) { + c = 'boolean' == typeof t.comment && t.comment; + var u = 'boolean' == typeof t.attachComment && t.attachComment; + (c || u) && + (((s = new n.CommentHandler()).attach = u), (t.comment = !0), (a = A)); + } + var l, + h = !1; + t && 'string' == typeof t.sourceType && (h = 'module' === t.sourceType), + (l = + t && 'boolean' == typeof t.jsx && t.jsx + ? new i.JSXParser(e, t, a) + : new o.Parser(e, t, a)); + var g = h ? l.parseModule() : l.parseScript(); + return ( + c && s && (g.comments = s.comments), + l.config.tokens && (g.tokens = l.tokens), + l.config.tolerant && (g.errors = l.errorHandler.errors), + g + ); + } + (t.parse = A), + (t.parseModule = function (e, t, r) { + var n = t || {}; + return (n.sourceType = 'module'), A(e, n, r); + }), + (t.parseScript = function (e, t, r) { + var n = t || {}; + return (n.sourceType = 'script'), A(e, n, r); + }), + (t.tokenize = function (e, t, r) { + var n, + i = new s.Tokenizer(e, t); + n = []; + try { + for (;;) { + var o = i.getNextToken(); + if (!o) break; + r && (o = r(o)), n.push(o); + } + } catch (e) { + i.errorHandler.tolerate(e); + } + return i.errorHandler.tolerant && (n.errors = i.errors()), n; + }); + var a = r(2); + (t.Syntax = a.Syntax), (t.version = '4.0.1'); + }, + function (e, t, r) { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + var n = r(2), + i = (function () { + function e() { + (this.attach = !1), + (this.comments = []), + (this.stack = []), + (this.leading = []), + (this.trailing = []); + } + return ( + (e.prototype.insertInnerComments = function (e, t) { + if (e.type === n.Syntax.BlockStatement && 0 === e.body.length) { + for (var r = [], i = this.leading.length - 1; i >= 0; --i) { + var o = this.leading[i]; + t.end.offset >= o.start && + (r.unshift(o.comment), + this.leading.splice(i, 1), + this.trailing.splice(i, 1)); + } + r.length && (e.innerComments = r); + } + }), + (e.prototype.findTrailingComments = function (e) { + var t = []; + if (this.trailing.length > 0) { + for (var r = this.trailing.length - 1; r >= 0; --r) { + var n = this.trailing[r]; + n.start >= e.end.offset && t.unshift(n.comment); + } + return (this.trailing.length = 0), t; + } + var i = this.stack[this.stack.length - 1]; + if (i && i.node.trailingComments) { + var o = i.node.trailingComments[0]; + o && + o.range[0] >= e.end.offset && + ((t = i.node.trailingComments), delete i.node.trailingComments); + } + return t; + }), + (e.prototype.findLeadingComments = function (e) { + for ( + var t, r = []; + this.stack.length > 0 && + (o = this.stack[this.stack.length - 1]) && + o.start >= e.start.offset; + + ) + (t = o.node), this.stack.pop(); + if (t) { + for ( + var n = (t.leadingComments ? t.leadingComments.length : 0) - 1; + n >= 0; + --n + ) { + var i = t.leadingComments[n]; + i.range[1] <= e.start.offset && + (r.unshift(i), t.leadingComments.splice(n, 1)); + } + return ( + t.leadingComments && + 0 === t.leadingComments.length && + delete t.leadingComments, + r + ); + } + for (n = this.leading.length - 1; n >= 0; --n) { + var o; + (o = this.leading[n]).start <= e.start.offset && + (r.unshift(o.comment), this.leading.splice(n, 1)); + } + return r; + }), + (e.prototype.visitNode = function (e, t) { + if (!(e.type === n.Syntax.Program && e.body.length > 0)) { + this.insertInnerComments(e, t); + var r = this.findTrailingComments(t), + i = this.findLeadingComments(t); + i.length > 0 && (e.leadingComments = i), + r.length > 0 && (e.trailingComments = r), + this.stack.push({ node: e, start: t.start.offset }); + } + }), + (e.prototype.visitComment = function (e, t) { + var r = 'L' === e.type[0] ? 'Line' : 'Block', + n = { type: r, value: e.value }; + if ( + (e.range && (n.range = e.range), + e.loc && (n.loc = e.loc), + this.comments.push(n), + this.attach) + ) { + var i = { + comment: { + type: r, + value: e.value, + range: [t.start.offset, t.end.offset], + }, + start: t.start.offset, + }; + e.loc && (i.comment.loc = e.loc), + (e.type = r), + this.leading.push(i), + this.trailing.push(i); + } + }), + (e.prototype.visit = function (e, t) { + 'LineComment' === e.type || 'BlockComment' === e.type + ? this.visitComment(e, t) + : this.attach && this.visitNode(e, t); + }), + e + ); + })(); + t.CommentHandler = i; + }, + function (e, t) { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }), + (t.Syntax = { + AssignmentExpression: 'AssignmentExpression', + AssignmentPattern: 'AssignmentPattern', + ArrayExpression: 'ArrayExpression', + ArrayPattern: 'ArrayPattern', + ArrowFunctionExpression: 'ArrowFunctionExpression', + AwaitExpression: 'AwaitExpression', + BlockStatement: 'BlockStatement', + BinaryExpression: 'BinaryExpression', + BreakStatement: 'BreakStatement', + CallExpression: 'CallExpression', + CatchClause: 'CatchClause', + ClassBody: 'ClassBody', + ClassDeclaration: 'ClassDeclaration', + ClassExpression: 'ClassExpression', + ConditionalExpression: 'ConditionalExpression', + ContinueStatement: 'ContinueStatement', + DoWhileStatement: 'DoWhileStatement', + DebuggerStatement: 'DebuggerStatement', + EmptyStatement: 'EmptyStatement', + ExportAllDeclaration: 'ExportAllDeclaration', + ExportDefaultDeclaration: 'ExportDefaultDeclaration', + ExportNamedDeclaration: 'ExportNamedDeclaration', + ExportSpecifier: 'ExportSpecifier', + ExpressionStatement: 'ExpressionStatement', + ForStatement: 'ForStatement', + ForOfStatement: 'ForOfStatement', + ForInStatement: 'ForInStatement', + FunctionDeclaration: 'FunctionDeclaration', + FunctionExpression: 'FunctionExpression', + Identifier: 'Identifier', + IfStatement: 'IfStatement', + ImportDeclaration: 'ImportDeclaration', + ImportDefaultSpecifier: 'ImportDefaultSpecifier', + ImportNamespaceSpecifier: 'ImportNamespaceSpecifier', + ImportSpecifier: 'ImportSpecifier', + Literal: 'Literal', + LabeledStatement: 'LabeledStatement', + LogicalExpression: 'LogicalExpression', + MemberExpression: 'MemberExpression', + MetaProperty: 'MetaProperty', + MethodDefinition: 'MethodDefinition', + NewExpression: 'NewExpression', + ObjectExpression: 'ObjectExpression', + ObjectPattern: 'ObjectPattern', + Program: 'Program', + Property: 'Property', + RestElement: 'RestElement', + ReturnStatement: 'ReturnStatement', + SequenceExpression: 'SequenceExpression', + SpreadElement: 'SpreadElement', + Super: 'Super', + SwitchCase: 'SwitchCase', + SwitchStatement: 'SwitchStatement', + TaggedTemplateExpression: 'TaggedTemplateExpression', + TemplateElement: 'TemplateElement', + TemplateLiteral: 'TemplateLiteral', + ThisExpression: 'ThisExpression', + ThrowStatement: 'ThrowStatement', + TryStatement: 'TryStatement', + UnaryExpression: 'UnaryExpression', + UpdateExpression: 'UpdateExpression', + VariableDeclaration: 'VariableDeclaration', + VariableDeclarator: 'VariableDeclarator', + WhileStatement: 'WhileStatement', + WithStatement: 'WithStatement', + YieldExpression: 'YieldExpression', + }); + }, + function (e, t, r) { + 'use strict'; + var n, + i = + (this && this.__extends) || + ((n = + Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && + function (e, t) { + e.__proto__ = t; + }) || + function (e, t) { + for (var r in t) t.hasOwnProperty(r) && (e[r] = t[r]); + }), + function (e, t) { + function r() { + this.constructor = e; + } + n(e, t), + (e.prototype = + null === t ? Object.create(t) : ((r.prototype = t.prototype), new r())); + }); + Object.defineProperty(t, '__esModule', { value: !0 }); + var o = r(4), + s = r(5), + A = r(6), + a = r(7), + c = r(8), + u = r(13), + l = r(14); + function h(e) { + var t; + switch (e.type) { + case A.JSXSyntax.JSXIdentifier: + t = e.name; + break; + case A.JSXSyntax.JSXNamespacedName: + var r = e; + t = h(r.namespace) + ':' + h(r.name); + break; + case A.JSXSyntax.JSXMemberExpression: + var n = e; + t = h(n.object) + '.' + h(n.property); + } + return t; + } + (u.TokenName[100] = 'JSXIdentifier'), (u.TokenName[101] = 'JSXText'); + var g = (function (e) { + function t(t, r, n) { + return e.call(this, t, r, n) || this; + } + return ( + i(t, e), + (t.prototype.parsePrimaryExpression = function () { + return this.match('<') + ? this.parseJSXRoot() + : e.prototype.parsePrimaryExpression.call(this); + }), + (t.prototype.startJSX = function () { + (this.scanner.index = this.startMarker.index), + (this.scanner.lineNumber = this.startMarker.line), + (this.scanner.lineStart = this.startMarker.index - this.startMarker.column); + }), + (t.prototype.finishJSX = function () { + this.nextToken(); + }), + (t.prototype.reenterJSX = function () { + this.startJSX(), this.expectJSX('}'), this.config.tokens && this.tokens.pop(); + }), + (t.prototype.createJSXNode = function () { + return ( + this.collectComments(), + { + index: this.scanner.index, + line: this.scanner.lineNumber, + column: this.scanner.index - this.scanner.lineStart, + } + ); + }), + (t.prototype.createJSXChildNode = function () { + return { + index: this.scanner.index, + line: this.scanner.lineNumber, + column: this.scanner.index - this.scanner.lineStart, + }; + }), + (t.prototype.scanXHTMLEntity = function (e) { + for ( + var t = '&', r = !0, n = !1, i = !1, s = !1; + !this.scanner.eof() && r && !n; + + ) { + var A = this.scanner.source[this.scanner.index]; + if (A === e) break; + if (((n = ';' === A), (t += A), ++this.scanner.index, !n)) + switch (t.length) { + case 2: + i = '#' === A; + break; + case 3: + i && + ((r = (s = 'x' === A) || o.Character.isDecimalDigit(A.charCodeAt(0))), + (i = i && !s)); + break; + default: + r = + (r = r && !(i && !o.Character.isDecimalDigit(A.charCodeAt(0)))) && + !(s && !o.Character.isHexDigit(A.charCodeAt(0))); + } + } + if (r && n && t.length > 2) { + var a = t.substr(1, t.length - 2); + i && a.length > 1 + ? (t = String.fromCharCode(parseInt(a.substr(1), 10))) + : s && a.length > 2 + ? (t = String.fromCharCode(parseInt('0' + a.substr(1), 16))) + : i || s || !l.XHTMLEntities[a] || (t = l.XHTMLEntities[a]); + } + return t; + }), + (t.prototype.lexJSX = function () { + var e = this.scanner.source.charCodeAt(this.scanner.index); + if ( + 60 === e || + 62 === e || + 47 === e || + 58 === e || + 61 === e || + 123 === e || + 125 === e + ) + return { + type: 7, + value: (A = this.scanner.source[this.scanner.index++]), + lineNumber: this.scanner.lineNumber, + lineStart: this.scanner.lineStart, + start: this.scanner.index - 1, + end: this.scanner.index, + }; + if (34 === e || 39 === e) { + for ( + var t = this.scanner.index, + r = this.scanner.source[this.scanner.index++], + n = ''; + !this.scanner.eof() && + (a = this.scanner.source[this.scanner.index++]) !== r; + + ) + n += '&' === a ? this.scanXHTMLEntity(r) : a; + return { + type: 8, + value: n, + lineNumber: this.scanner.lineNumber, + lineStart: this.scanner.lineStart, + start: t, + end: this.scanner.index, + }; + } + if (46 === e) { + var i = this.scanner.source.charCodeAt(this.scanner.index + 1), + s = this.scanner.source.charCodeAt(this.scanner.index + 2), + A = 46 === i && 46 === s ? '...' : '.'; + return ( + (t = this.scanner.index), + (this.scanner.index += A.length), + { + type: 7, + value: A, + lineNumber: this.scanner.lineNumber, + lineStart: this.scanner.lineStart, + start: t, + end: this.scanner.index, + } + ); + } + if (96 === e) + return { + type: 10, + value: '', + lineNumber: this.scanner.lineNumber, + lineStart: this.scanner.lineStart, + start: this.scanner.index, + end: this.scanner.index, + }; + if (o.Character.isIdentifierStart(e) && 92 !== e) { + for (t = this.scanner.index, ++this.scanner.index; !this.scanner.eof(); ) { + var a = this.scanner.source.charCodeAt(this.scanner.index); + if (o.Character.isIdentifierPart(a) && 92 !== a) ++this.scanner.index; + else { + if (45 !== a) break; + ++this.scanner.index; + } + } + return { + type: 100, + value: this.scanner.source.slice(t, this.scanner.index), + lineNumber: this.scanner.lineNumber, + lineStart: this.scanner.lineStart, + start: t, + end: this.scanner.index, + }; + } + return this.scanner.lex(); + }), + (t.prototype.nextJSXToken = function () { + this.collectComments(), + (this.startMarker.index = this.scanner.index), + (this.startMarker.line = this.scanner.lineNumber), + (this.startMarker.column = this.scanner.index - this.scanner.lineStart); + var e = this.lexJSX(); + return ( + (this.lastMarker.index = this.scanner.index), + (this.lastMarker.line = this.scanner.lineNumber), + (this.lastMarker.column = this.scanner.index - this.scanner.lineStart), + this.config.tokens && this.tokens.push(this.convertToken(e)), + e + ); + }), + (t.prototype.nextJSXText = function () { + (this.startMarker.index = this.scanner.index), + (this.startMarker.line = this.scanner.lineNumber), + (this.startMarker.column = this.scanner.index - this.scanner.lineStart); + for (var e = this.scanner.index, t = ''; !this.scanner.eof(); ) { + var r = this.scanner.source[this.scanner.index]; + if ('{' === r || '<' === r) break; + ++this.scanner.index, + (t += r), + o.Character.isLineTerminator(r.charCodeAt(0)) && + (++this.scanner.lineNumber, + '\r' === r && + '\n' === this.scanner.source[this.scanner.index] && + ++this.scanner.index, + (this.scanner.lineStart = this.scanner.index)); + } + (this.lastMarker.index = this.scanner.index), + (this.lastMarker.line = this.scanner.lineNumber), + (this.lastMarker.column = this.scanner.index - this.scanner.lineStart); + var n = { + type: 101, + value: t, + lineNumber: this.scanner.lineNumber, + lineStart: this.scanner.lineStart, + start: e, + end: this.scanner.index, + }; + return ( + t.length > 0 && this.config.tokens && this.tokens.push(this.convertToken(n)), + n + ); + }), + (t.prototype.peekJSXToken = function () { + var e = this.scanner.saveState(); + this.scanner.scanComments(); + var t = this.lexJSX(); + return this.scanner.restoreState(e), t; + }), + (t.prototype.expectJSX = function (e) { + var t = this.nextJSXToken(); + (7 === t.type && t.value === e) || this.throwUnexpectedToken(t); + }), + (t.prototype.matchJSX = function (e) { + var t = this.peekJSXToken(); + return 7 === t.type && t.value === e; + }), + (t.prototype.parseJSXIdentifier = function () { + var e = this.createJSXNode(), + t = this.nextJSXToken(); + return ( + 100 !== t.type && this.throwUnexpectedToken(t), + this.finalize(e, new s.JSXIdentifier(t.value)) + ); + }), + (t.prototype.parseJSXElementName = function () { + var e = this.createJSXNode(), + t = this.parseJSXIdentifier(); + if (this.matchJSX(':')) { + var r = t; + this.expectJSX(':'); + var n = this.parseJSXIdentifier(); + t = this.finalize(e, new s.JSXNamespacedName(r, n)); + } else if (this.matchJSX('.')) + for (; this.matchJSX('.'); ) { + var i = t; + this.expectJSX('.'); + var o = this.parseJSXIdentifier(); + t = this.finalize(e, new s.JSXMemberExpression(i, o)); + } + return t; + }), + (t.prototype.parseJSXAttributeName = function () { + var e, + t = this.createJSXNode(), + r = this.parseJSXIdentifier(); + if (this.matchJSX(':')) { + var n = r; + this.expectJSX(':'); + var i = this.parseJSXIdentifier(); + e = this.finalize(t, new s.JSXNamespacedName(n, i)); + } else e = r; + return e; + }), + (t.prototype.parseJSXStringLiteralAttribute = function () { + var e = this.createJSXNode(), + t = this.nextJSXToken(); + 8 !== t.type && this.throwUnexpectedToken(t); + var r = this.getTokenRaw(t); + return this.finalize(e, new a.Literal(t.value, r)); + }), + (t.prototype.parseJSXExpressionAttribute = function () { + var e = this.createJSXNode(); + this.expectJSX('{'), + this.finishJSX(), + this.match('}') && + this.tolerateError( + 'JSX attributes must only be assigned a non-empty expression' + ); + var t = this.parseAssignmentExpression(); + return this.reenterJSX(), this.finalize(e, new s.JSXExpressionContainer(t)); + }), + (t.prototype.parseJSXAttributeValue = function () { + return this.matchJSX('{') + ? this.parseJSXExpressionAttribute() + : this.matchJSX('<') + ? this.parseJSXElement() + : this.parseJSXStringLiteralAttribute(); + }), + (t.prototype.parseJSXNameValueAttribute = function () { + var e = this.createJSXNode(), + t = this.parseJSXAttributeName(), + r = null; + return ( + this.matchJSX('=') && + (this.expectJSX('='), (r = this.parseJSXAttributeValue())), + this.finalize(e, new s.JSXAttribute(t, r)) + ); + }), + (t.prototype.parseJSXSpreadAttribute = function () { + var e = this.createJSXNode(); + this.expectJSX('{'), this.expectJSX('...'), this.finishJSX(); + var t = this.parseAssignmentExpression(); + return this.reenterJSX(), this.finalize(e, new s.JSXSpreadAttribute(t)); + }), + (t.prototype.parseJSXAttributes = function () { + for (var e = []; !this.matchJSX('/') && !this.matchJSX('>'); ) { + var t = this.matchJSX('{') + ? this.parseJSXSpreadAttribute() + : this.parseJSXNameValueAttribute(); + e.push(t); + } + return e; + }), + (t.prototype.parseJSXOpeningElement = function () { + var e = this.createJSXNode(); + this.expectJSX('<'); + var t = this.parseJSXElementName(), + r = this.parseJSXAttributes(), + n = this.matchJSX('/'); + return ( + n && this.expectJSX('/'), + this.expectJSX('>'), + this.finalize(e, new s.JSXOpeningElement(t, n, r)) + ); + }), + (t.prototype.parseJSXBoundaryElement = function () { + var e = this.createJSXNode(); + if ((this.expectJSX('<'), this.matchJSX('/'))) { + this.expectJSX('/'); + var t = this.parseJSXElementName(); + return this.expectJSX('>'), this.finalize(e, new s.JSXClosingElement(t)); + } + var r = this.parseJSXElementName(), + n = this.parseJSXAttributes(), + i = this.matchJSX('/'); + return ( + i && this.expectJSX('/'), + this.expectJSX('>'), + this.finalize(e, new s.JSXOpeningElement(r, i, n)) + ); + }), + (t.prototype.parseJSXEmptyExpression = function () { + var e = this.createJSXChildNode(); + return ( + this.collectComments(), + (this.lastMarker.index = this.scanner.index), + (this.lastMarker.line = this.scanner.lineNumber), + (this.lastMarker.column = this.scanner.index - this.scanner.lineStart), + this.finalize(e, new s.JSXEmptyExpression()) + ); + }), + (t.prototype.parseJSXExpressionContainer = function () { + var e, + t = this.createJSXNode(); + return ( + this.expectJSX('{'), + this.matchJSX('}') + ? ((e = this.parseJSXEmptyExpression()), this.expectJSX('}')) + : (this.finishJSX(), + (e = this.parseAssignmentExpression()), + this.reenterJSX()), + this.finalize(t, new s.JSXExpressionContainer(e)) + ); + }), + (t.prototype.parseJSXChildren = function () { + for (var e = []; !this.scanner.eof(); ) { + var t = this.createJSXChildNode(), + r = this.nextJSXText(); + if (r.start < r.end) { + var n = this.getTokenRaw(r), + i = this.finalize(t, new s.JSXText(r.value, n)); + e.push(i); + } + if ('{' !== this.scanner.source[this.scanner.index]) break; + var o = this.parseJSXExpressionContainer(); + e.push(o); + } + return e; + }), + (t.prototype.parseComplexJSXElement = function (e) { + for (var t = []; !this.scanner.eof(); ) { + e.children = e.children.concat(this.parseJSXChildren()); + var r = this.createJSXChildNode(), + n = this.parseJSXBoundaryElement(); + if (n.type === A.JSXSyntax.JSXOpeningElement) { + var i = n; + if (i.selfClosing) { + var o = this.finalize(r, new s.JSXElement(i, [], null)); + e.children.push(o); + } else + t.push(e), (e = { node: r, opening: i, closing: null, children: [] }); + } + if (n.type === A.JSXSyntax.JSXClosingElement) { + e.closing = n; + var a = h(e.opening.name); + if ( + (a !== h(e.closing.name) && + this.tolerateError('Expected corresponding JSX closing tag for %0', a), + !(t.length > 0)) + ) + break; + (o = this.finalize( + e.node, + new s.JSXElement(e.opening, e.children, e.closing) + )), + (e = t[t.length - 1]).children.push(o), + t.pop(); + } + } + return e; + }), + (t.prototype.parseJSXElement = function () { + var e = this.createJSXNode(), + t = this.parseJSXOpeningElement(), + r = [], + n = null; + if (!t.selfClosing) { + var i = this.parseComplexJSXElement({ + node: e, + opening: t, + closing: n, + children: r, + }); + (r = i.children), (n = i.closing); + } + return this.finalize(e, new s.JSXElement(t, r, n)); + }), + (t.prototype.parseJSXRoot = function () { + this.config.tokens && this.tokens.pop(), this.startJSX(); + var e = this.parseJSXElement(); + return this.finishJSX(), e; + }), + (t.prototype.isStartOfExpression = function () { + return e.prototype.isStartOfExpression.call(this) || this.match('<'); + }), + t + ); + })(c.Parser); + t.JSXParser = g; + }, + function (e, t) { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + var r = { + NonAsciiIdentifierStart: /[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AD\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF30-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDEC0-\uDEF8]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1]|\uD87E[\uDC00-\uDE1D]/, + NonAsciiIdentifierPart: /[\xAA\xB5\xB7\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B4\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1369-\u1371\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFC-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AD\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C4\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF30-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDEC0-\uDEF8]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/, + }; + t.Character = { + fromCodePoint: function (e) { + return e < 65536 + ? String.fromCharCode(e) + : String.fromCharCode(55296 + ((e - 65536) >> 10)) + + String.fromCharCode(56320 + ((e - 65536) & 1023)); + }, + isWhiteSpace: function (e) { + return ( + 32 === e || + 9 === e || + 11 === e || + 12 === e || + 160 === e || + (e >= 5760 && + [ + 5760, + 8192, + 8193, + 8194, + 8195, + 8196, + 8197, + 8198, + 8199, + 8200, + 8201, + 8202, + 8239, + 8287, + 12288, + 65279, + ].indexOf(e) >= 0) + ); + }, + isLineTerminator: function (e) { + return 10 === e || 13 === e || 8232 === e || 8233 === e; + }, + isIdentifierStart: function (e) { + return ( + 36 === e || + 95 === e || + (e >= 65 && e <= 90) || + (e >= 97 && e <= 122) || + 92 === e || + (e >= 128 && r.NonAsciiIdentifierStart.test(t.Character.fromCodePoint(e))) + ); + }, + isIdentifierPart: function (e) { + return ( + 36 === e || + 95 === e || + (e >= 65 && e <= 90) || + (e >= 97 && e <= 122) || + (e >= 48 && e <= 57) || + 92 === e || + (e >= 128 && r.NonAsciiIdentifierPart.test(t.Character.fromCodePoint(e))) + ); + }, + isDecimalDigit: function (e) { + return e >= 48 && e <= 57; + }, + isHexDigit: function (e) { + return (e >= 48 && e <= 57) || (e >= 65 && e <= 70) || (e >= 97 && e <= 102); + }, + isOctalDigit: function (e) { + return e >= 48 && e <= 55; + }, + }; + }, + function (e, t, r) { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + var n = r(6), + i = function (e) { + (this.type = n.JSXSyntax.JSXClosingElement), (this.name = e); + }; + t.JSXClosingElement = i; + var o = function (e, t, r) { + (this.type = n.JSXSyntax.JSXElement), + (this.openingElement = e), + (this.children = t), + (this.closingElement = r); + }; + t.JSXElement = o; + var s = function () { + this.type = n.JSXSyntax.JSXEmptyExpression; + }; + t.JSXEmptyExpression = s; + var A = function (e) { + (this.type = n.JSXSyntax.JSXExpressionContainer), (this.expression = e); + }; + t.JSXExpressionContainer = A; + var a = function (e) { + (this.type = n.JSXSyntax.JSXIdentifier), (this.name = e); + }; + t.JSXIdentifier = a; + var c = function (e, t) { + (this.type = n.JSXSyntax.JSXMemberExpression), + (this.object = e), + (this.property = t); + }; + t.JSXMemberExpression = c; + var u = function (e, t) { + (this.type = n.JSXSyntax.JSXAttribute), (this.name = e), (this.value = t); + }; + t.JSXAttribute = u; + var l = function (e, t) { + (this.type = n.JSXSyntax.JSXNamespacedName), (this.namespace = e), (this.name = t); + }; + t.JSXNamespacedName = l; + var h = function (e, t, r) { + (this.type = n.JSXSyntax.JSXOpeningElement), + (this.name = e), + (this.selfClosing = t), + (this.attributes = r); + }; + t.JSXOpeningElement = h; + var g = function (e) { + (this.type = n.JSXSyntax.JSXSpreadAttribute), (this.argument = e); + }; + t.JSXSpreadAttribute = g; + var f = function (e, t) { + (this.type = n.JSXSyntax.JSXText), (this.value = e), (this.raw = t); + }; + t.JSXText = f; + }, + function (e, t) { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }), + (t.JSXSyntax = { + JSXAttribute: 'JSXAttribute', + JSXClosingElement: 'JSXClosingElement', + JSXElement: 'JSXElement', + JSXEmptyExpression: 'JSXEmptyExpression', + JSXExpressionContainer: 'JSXExpressionContainer', + JSXIdentifier: 'JSXIdentifier', + JSXMemberExpression: 'JSXMemberExpression', + JSXNamespacedName: 'JSXNamespacedName', + JSXOpeningElement: 'JSXOpeningElement', + JSXSpreadAttribute: 'JSXSpreadAttribute', + JSXText: 'JSXText', + }); + }, + function (e, t, r) { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + var n = r(2), + i = function (e) { + (this.type = n.Syntax.ArrayExpression), (this.elements = e); + }; + t.ArrayExpression = i; + var o = function (e) { + (this.type = n.Syntax.ArrayPattern), (this.elements = e); + }; + t.ArrayPattern = o; + var s = function (e, t, r) { + (this.type = n.Syntax.ArrowFunctionExpression), + (this.id = null), + (this.params = e), + (this.body = t), + (this.generator = !1), + (this.expression = r), + (this.async = !1); + }; + t.ArrowFunctionExpression = s; + var A = function (e, t, r) { + (this.type = n.Syntax.AssignmentExpression), + (this.operator = e), + (this.left = t), + (this.right = r); + }; + t.AssignmentExpression = A; + var a = function (e, t) { + (this.type = n.Syntax.AssignmentPattern), (this.left = e), (this.right = t); + }; + t.AssignmentPattern = a; + var c = function (e, t, r) { + (this.type = n.Syntax.ArrowFunctionExpression), + (this.id = null), + (this.params = e), + (this.body = t), + (this.generator = !1), + (this.expression = r), + (this.async = !0); + }; + t.AsyncArrowFunctionExpression = c; + var u = function (e, t, r) { + (this.type = n.Syntax.FunctionDeclaration), + (this.id = e), + (this.params = t), + (this.body = r), + (this.generator = !1), + (this.expression = !1), + (this.async = !0); + }; + t.AsyncFunctionDeclaration = u; + var l = function (e, t, r) { + (this.type = n.Syntax.FunctionExpression), + (this.id = e), + (this.params = t), + (this.body = r), + (this.generator = !1), + (this.expression = !1), + (this.async = !0); + }; + t.AsyncFunctionExpression = l; + var h = function (e) { + (this.type = n.Syntax.AwaitExpression), (this.argument = e); + }; + t.AwaitExpression = h; + var g = function (e, t, r) { + var i = '||' === e || '&&' === e; + (this.type = i ? n.Syntax.LogicalExpression : n.Syntax.BinaryExpression), + (this.operator = e), + (this.left = t), + (this.right = r); + }; + t.BinaryExpression = g; + var f = function (e) { + (this.type = n.Syntax.BlockStatement), (this.body = e); + }; + t.BlockStatement = f; + var p = function (e) { + (this.type = n.Syntax.BreakStatement), (this.label = e); + }; + t.BreakStatement = p; + var d = function (e, t) { + (this.type = n.Syntax.CallExpression), (this.callee = e), (this.arguments = t); + }; + t.CallExpression = d; + var C = function (e, t) { + (this.type = n.Syntax.CatchClause), (this.param = e), (this.body = t); + }; + t.CatchClause = C; + var E = function (e) { + (this.type = n.Syntax.ClassBody), (this.body = e); + }; + t.ClassBody = E; + var I = function (e, t, r) { + (this.type = n.Syntax.ClassDeclaration), + (this.id = e), + (this.superClass = t), + (this.body = r); + }; + t.ClassDeclaration = I; + var m = function (e, t, r) { + (this.type = n.Syntax.ClassExpression), + (this.id = e), + (this.superClass = t), + (this.body = r); + }; + t.ClassExpression = m; + var y = function (e, t) { + (this.type = n.Syntax.MemberExpression), + (this.computed = !0), + (this.object = e), + (this.property = t); + }; + t.ComputedMemberExpression = y; + var w = function (e, t, r) { + (this.type = n.Syntax.ConditionalExpression), + (this.test = e), + (this.consequent = t), + (this.alternate = r); + }; + t.ConditionalExpression = w; + var B = function (e) { + (this.type = n.Syntax.ContinueStatement), (this.label = e); + }; + t.ContinueStatement = B; + var Q = function () { + this.type = n.Syntax.DebuggerStatement; + }; + t.DebuggerStatement = Q; + var v = function (e, t) { + (this.type = n.Syntax.ExpressionStatement), + (this.expression = e), + (this.directive = t); + }; + t.Directive = v; + var D = function (e, t) { + (this.type = n.Syntax.DoWhileStatement), (this.body = e), (this.test = t); + }; + t.DoWhileStatement = D; + var b = function () { + this.type = n.Syntax.EmptyStatement; + }; + t.EmptyStatement = b; + var S = function (e) { + (this.type = n.Syntax.ExportAllDeclaration), (this.source = e); + }; + t.ExportAllDeclaration = S; + var k = function (e) { + (this.type = n.Syntax.ExportDefaultDeclaration), (this.declaration = e); + }; + t.ExportDefaultDeclaration = k; + var x = function (e, t, r) { + (this.type = n.Syntax.ExportNamedDeclaration), + (this.declaration = e), + (this.specifiers = t), + (this.source = r); + }; + t.ExportNamedDeclaration = x; + var F = function (e, t) { + (this.type = n.Syntax.ExportSpecifier), (this.exported = t), (this.local = e); + }; + t.ExportSpecifier = F; + var M = function (e) { + (this.type = n.Syntax.ExpressionStatement), (this.expression = e); + }; + t.ExpressionStatement = M; + var N = function (e, t, r) { + (this.type = n.Syntax.ForInStatement), + (this.left = e), + (this.right = t), + (this.body = r), + (this.each = !1); + }; + t.ForInStatement = N; + var R = function (e, t, r) { + (this.type = n.Syntax.ForOfStatement), + (this.left = e), + (this.right = t), + (this.body = r); + }; + t.ForOfStatement = R; + var K = function (e, t, r, i) { + (this.type = n.Syntax.ForStatement), + (this.init = e), + (this.test = t), + (this.update = r), + (this.body = i); + }; + t.ForStatement = K; + var L = function (e, t, r, i) { + (this.type = n.Syntax.FunctionDeclaration), + (this.id = e), + (this.params = t), + (this.body = r), + (this.generator = i), + (this.expression = !1), + (this.async = !1); + }; + t.FunctionDeclaration = L; + var T = function (e, t, r, i) { + (this.type = n.Syntax.FunctionExpression), + (this.id = e), + (this.params = t), + (this.body = r), + (this.generator = i), + (this.expression = !1), + (this.async = !1); + }; + t.FunctionExpression = T; + var P = function (e) { + (this.type = n.Syntax.Identifier), (this.name = e); + }; + t.Identifier = P; + var U = function (e, t, r) { + (this.type = n.Syntax.IfStatement), + (this.test = e), + (this.consequent = t), + (this.alternate = r); + }; + t.IfStatement = U; + var _ = function (e, t) { + (this.type = n.Syntax.ImportDeclaration), (this.specifiers = e), (this.source = t); + }; + t.ImportDeclaration = _; + var O = function (e) { + (this.type = n.Syntax.ImportDefaultSpecifier), (this.local = e); + }; + t.ImportDefaultSpecifier = O; + var j = function (e) { + (this.type = n.Syntax.ImportNamespaceSpecifier), (this.local = e); + }; + t.ImportNamespaceSpecifier = j; + var Y = function (e, t) { + (this.type = n.Syntax.ImportSpecifier), (this.local = e), (this.imported = t); + }; + t.ImportSpecifier = Y; + var G = function (e, t) { + (this.type = n.Syntax.LabeledStatement), (this.label = e), (this.body = t); + }; + t.LabeledStatement = G; + var J = function (e, t) { + (this.type = n.Syntax.Literal), (this.value = e), (this.raw = t); + }; + t.Literal = J; + var H = function (e, t) { + (this.type = n.Syntax.MetaProperty), (this.meta = e), (this.property = t); + }; + t.MetaProperty = H; + var q = function (e, t, r, i, o) { + (this.type = n.Syntax.MethodDefinition), + (this.key = e), + (this.computed = t), + (this.value = r), + (this.kind = i), + (this.static = o); + }; + t.MethodDefinition = q; + var z = function (e) { + (this.type = n.Syntax.Program), (this.body = e), (this.sourceType = 'module'); + }; + t.Module = z; + var W = function (e, t) { + (this.type = n.Syntax.NewExpression), (this.callee = e), (this.arguments = t); + }; + t.NewExpression = W; + var V = function (e) { + (this.type = n.Syntax.ObjectExpression), (this.properties = e); + }; + t.ObjectExpression = V; + var X = function (e) { + (this.type = n.Syntax.ObjectPattern), (this.properties = e); + }; + t.ObjectPattern = X; + var Z = function (e, t, r, i, o, s) { + (this.type = n.Syntax.Property), + (this.key = t), + (this.computed = r), + (this.value = i), + (this.kind = e), + (this.method = o), + (this.shorthand = s); + }; + t.Property = Z; + var $ = function (e, t, r, i) { + (this.type = n.Syntax.Literal), + (this.value = e), + (this.raw = t), + (this.regex = { pattern: r, flags: i }); + }; + t.RegexLiteral = $; + var ee = function (e) { + (this.type = n.Syntax.RestElement), (this.argument = e); + }; + t.RestElement = ee; + var te = function (e) { + (this.type = n.Syntax.ReturnStatement), (this.argument = e); + }; + t.ReturnStatement = te; + var re = function (e) { + (this.type = n.Syntax.Program), (this.body = e), (this.sourceType = 'script'); + }; + t.Script = re; + var ne = function (e) { + (this.type = n.Syntax.SequenceExpression), (this.expressions = e); + }; + t.SequenceExpression = ne; + var ie = function (e) { + (this.type = n.Syntax.SpreadElement), (this.argument = e); + }; + t.SpreadElement = ie; + var oe = function (e, t) { + (this.type = n.Syntax.MemberExpression), + (this.computed = !1), + (this.object = e), + (this.property = t); + }; + t.StaticMemberExpression = oe; + var se = function () { + this.type = n.Syntax.Super; + }; + t.Super = se; + var Ae = function (e, t) { + (this.type = n.Syntax.SwitchCase), (this.test = e), (this.consequent = t); + }; + t.SwitchCase = Ae; + var ae = function (e, t) { + (this.type = n.Syntax.SwitchStatement), (this.discriminant = e), (this.cases = t); + }; + t.SwitchStatement = ae; + var ce = function (e, t) { + (this.type = n.Syntax.TaggedTemplateExpression), (this.tag = e), (this.quasi = t); + }; + t.TaggedTemplateExpression = ce; + var ue = function (e, t) { + (this.type = n.Syntax.TemplateElement), (this.value = e), (this.tail = t); + }; + t.TemplateElement = ue; + var le = function (e, t) { + (this.type = n.Syntax.TemplateLiteral), (this.quasis = e), (this.expressions = t); + }; + t.TemplateLiteral = le; + var he = function () { + this.type = n.Syntax.ThisExpression; + }; + t.ThisExpression = he; + var ge = function (e) { + (this.type = n.Syntax.ThrowStatement), (this.argument = e); + }; + t.ThrowStatement = ge; + var fe = function (e, t, r) { + (this.type = n.Syntax.TryStatement), + (this.block = e), + (this.handler = t), + (this.finalizer = r); + }; + t.TryStatement = fe; + var pe = function (e, t) { + (this.type = n.Syntax.UnaryExpression), + (this.operator = e), + (this.argument = t), + (this.prefix = !0); + }; + t.UnaryExpression = pe; + var de = function (e, t, r) { + (this.type = n.Syntax.UpdateExpression), + (this.operator = e), + (this.argument = t), + (this.prefix = r); + }; + t.UpdateExpression = de; + var Ce = function (e, t) { + (this.type = n.Syntax.VariableDeclaration), + (this.declarations = e), + (this.kind = t); + }; + t.VariableDeclaration = Ce; + var Ee = function (e, t) { + (this.type = n.Syntax.VariableDeclarator), (this.id = e), (this.init = t); + }; + t.VariableDeclarator = Ee; + var Ie = function (e, t) { + (this.type = n.Syntax.WhileStatement), (this.test = e), (this.body = t); + }; + t.WhileStatement = Ie; + var me = function (e, t) { + (this.type = n.Syntax.WithStatement), (this.object = e), (this.body = t); + }; + t.WithStatement = me; + var ye = function (e, t) { + (this.type = n.Syntax.YieldExpression), (this.argument = e), (this.delegate = t); + }; + t.YieldExpression = ye; + }, + function (e, t, r) { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + var n = r(9), + i = r(10), + o = r(11), + s = r(7), + A = r(12), + a = r(2), + c = r(13), + u = (function () { + function e(e, t, r) { + void 0 === t && (t = {}), + (this.config = { + range: 'boolean' == typeof t.range && t.range, + loc: 'boolean' == typeof t.loc && t.loc, + source: null, + tokens: 'boolean' == typeof t.tokens && t.tokens, + comment: 'boolean' == typeof t.comment && t.comment, + tolerant: 'boolean' == typeof t.tolerant && t.tolerant, + }), + this.config.loc && + t.source && + null !== t.source && + (this.config.source = String(t.source)), + (this.delegate = r), + (this.errorHandler = new i.ErrorHandler()), + (this.errorHandler.tolerant = this.config.tolerant), + (this.scanner = new A.Scanner(e, this.errorHandler)), + (this.scanner.trackComment = this.config.comment), + (this.operatorPrecedence = { + ')': 0, + ';': 0, + ',': 0, + '=': 0, + ']': 0, + '||': 1, + '&&': 2, + '|': 3, + '^': 4, + '&': 5, + '==': 6, + '!=': 6, + '===': 6, + '!==': 6, + '<': 7, + '>': 7, + '<=': 7, + '>=': 7, + '<<': 8, + '>>': 8, + '>>>': 8, + '+': 9, + '-': 9, + '*': 11, + '/': 11, + '%': 11, + }), + (this.lookahead = { + type: 2, + value: '', + lineNumber: this.scanner.lineNumber, + lineStart: 0, + start: 0, + end: 0, + }), + (this.hasLineTerminator = !1), + (this.context = { + isModule: !1, + await: !1, + allowIn: !0, + allowStrictDirective: !0, + allowYield: !0, + firstCoverInitializedNameError: null, + isAssignmentTarget: !1, + isBindingElement: !1, + inFunctionBody: !1, + inIteration: !1, + inSwitch: !1, + labelSet: {}, + strict: !1, + }), + (this.tokens = []), + (this.startMarker = { index: 0, line: this.scanner.lineNumber, column: 0 }), + (this.lastMarker = { index: 0, line: this.scanner.lineNumber, column: 0 }), + this.nextToken(), + (this.lastMarker = { + index: this.scanner.index, + line: this.scanner.lineNumber, + column: this.scanner.index - this.scanner.lineStart, + }); + } + return ( + (e.prototype.throwError = function (e) { + for (var t = [], r = 1; r < arguments.length; r++) t[r - 1] = arguments[r]; + var i = Array.prototype.slice.call(arguments, 1), + o = e.replace(/%(\d)/g, function (e, t) { + return n.assert(t < i.length, 'Message reference must be in range'), i[t]; + }), + s = this.lastMarker.index, + A = this.lastMarker.line, + a = this.lastMarker.column + 1; + throw this.errorHandler.createError(s, A, a, o); + }), + (e.prototype.tolerateError = function (e) { + for (var t = [], r = 1; r < arguments.length; r++) t[r - 1] = arguments[r]; + var i = Array.prototype.slice.call(arguments, 1), + o = e.replace(/%(\d)/g, function (e, t) { + return n.assert(t < i.length, 'Message reference must be in range'), i[t]; + }), + s = this.lastMarker.index, + A = this.scanner.lineNumber, + a = this.lastMarker.column + 1; + this.errorHandler.tolerateError(s, A, a, o); + }), + (e.prototype.unexpectedTokenError = function (e, t) { + var r, + n = t || o.Messages.UnexpectedToken; + if ( + (e + ? (t || + ((n = + 2 === e.type + ? o.Messages.UnexpectedEOS + : 3 === e.type + ? o.Messages.UnexpectedIdentifier + : 6 === e.type + ? o.Messages.UnexpectedNumber + : 8 === e.type + ? o.Messages.UnexpectedString + : 10 === e.type + ? o.Messages.UnexpectedTemplate + : o.Messages.UnexpectedToken), + 4 === e.type && + (this.scanner.isFutureReservedWord(e.value) + ? (n = o.Messages.UnexpectedReserved) + : this.context.strict && + this.scanner.isStrictModeReservedWord(e.value) && + (n = o.Messages.StrictReservedWord))), + (r = e.value)) + : (r = 'ILLEGAL'), + (n = n.replace('%0', r)), + e && 'number' == typeof e.lineNumber) + ) { + var i = e.start, + s = e.lineNumber, + A = this.lastMarker.index - this.lastMarker.column, + a = e.start - A + 1; + return this.errorHandler.createError(i, s, a, n); + } + return ( + (i = this.lastMarker.index), + (s = this.lastMarker.line), + (a = this.lastMarker.column + 1), + this.errorHandler.createError(i, s, a, n) + ); + }), + (e.prototype.throwUnexpectedToken = function (e, t) { + throw this.unexpectedTokenError(e, t); + }), + (e.prototype.tolerateUnexpectedToken = function (e, t) { + this.errorHandler.tolerate(this.unexpectedTokenError(e, t)); + }), + (e.prototype.collectComments = function () { + if (this.config.comment) { + var e = this.scanner.scanComments(); + if (e.length > 0 && this.delegate) + for (var t = 0; t < e.length; ++t) { + var r = e[t], + n = void 0; + (n = { + type: r.multiLine ? 'BlockComment' : 'LineComment', + value: this.scanner.source.slice(r.slice[0], r.slice[1]), + }), + this.config.range && (n.range = r.range), + this.config.loc && (n.loc = r.loc); + var i = { + start: { + line: r.loc.start.line, + column: r.loc.start.column, + offset: r.range[0], + }, + end: { + line: r.loc.end.line, + column: r.loc.end.column, + offset: r.range[1], + }, + }; + this.delegate(n, i); + } + } else this.scanner.scanComments(); + }), + (e.prototype.getTokenRaw = function (e) { + return this.scanner.source.slice(e.start, e.end); + }), + (e.prototype.convertToken = function (e) { + var t = { type: c.TokenName[e.type], value: this.getTokenRaw(e) }; + if ( + (this.config.range && (t.range = [e.start, e.end]), + this.config.loc && + (t.loc = { + start: { line: this.startMarker.line, column: this.startMarker.column }, + end: { + line: this.scanner.lineNumber, + column: this.scanner.index - this.scanner.lineStart, + }, + }), + 9 === e.type) + ) { + var r = e.pattern, + n = e.flags; + t.regex = { pattern: r, flags: n }; + } + return t; + }), + (e.prototype.nextToken = function () { + var e = this.lookahead; + (this.lastMarker.index = this.scanner.index), + (this.lastMarker.line = this.scanner.lineNumber), + (this.lastMarker.column = this.scanner.index - this.scanner.lineStart), + this.collectComments(), + this.scanner.index !== this.startMarker.index && + ((this.startMarker.index = this.scanner.index), + (this.startMarker.line = this.scanner.lineNumber), + (this.startMarker.column = this.scanner.index - this.scanner.lineStart)); + var t = this.scanner.lex(); + return ( + (this.hasLineTerminator = e.lineNumber !== t.lineNumber), + t && + this.context.strict && + 3 === t.type && + this.scanner.isStrictModeReservedWord(t.value) && + (t.type = 4), + (this.lookahead = t), + this.config.tokens && + 2 !== t.type && + this.tokens.push(this.convertToken(t)), + e + ); + }), + (e.prototype.nextRegexToken = function () { + this.collectComments(); + var e = this.scanner.scanRegExp(); + return ( + this.config.tokens && + (this.tokens.pop(), this.tokens.push(this.convertToken(e))), + (this.lookahead = e), + this.nextToken(), + e + ); + }), + (e.prototype.createNode = function () { + return { + index: this.startMarker.index, + line: this.startMarker.line, + column: this.startMarker.column, + }; + }), + (e.prototype.startNode = function (e, t) { + void 0 === t && (t = 0); + var r = e.start - e.lineStart, + n = e.lineNumber; + return r < 0 && ((r += t), n--), { index: e.start, line: n, column: r }; + }), + (e.prototype.finalize = function (e, t) { + if ( + (this.config.range && (t.range = [e.index, this.lastMarker.index]), + this.config.loc && + ((t.loc = { + start: { line: e.line, column: e.column }, + end: { line: this.lastMarker.line, column: this.lastMarker.column }, + }), + this.config.source && (t.loc.source = this.config.source)), + this.delegate) + ) { + var r = { + start: { line: e.line, column: e.column, offset: e.index }, + end: { + line: this.lastMarker.line, + column: this.lastMarker.column, + offset: this.lastMarker.index, + }, + }; + this.delegate(t, r); + } + return t; + }), + (e.prototype.expect = function (e) { + var t = this.nextToken(); + (7 === t.type && t.value === e) || this.throwUnexpectedToken(t); + }), + (e.prototype.expectCommaSeparator = function () { + if (this.config.tolerant) { + var e = this.lookahead; + 7 === e.type && ',' === e.value + ? this.nextToken() + : 7 === e.type && ';' === e.value + ? (this.nextToken(), this.tolerateUnexpectedToken(e)) + : this.tolerateUnexpectedToken(e, o.Messages.UnexpectedToken); + } else this.expect(','); + }), + (e.prototype.expectKeyword = function (e) { + var t = this.nextToken(); + (4 === t.type && t.value === e) || this.throwUnexpectedToken(t); + }), + (e.prototype.match = function (e) { + return 7 === this.lookahead.type && this.lookahead.value === e; + }), + (e.prototype.matchKeyword = function (e) { + return 4 === this.lookahead.type && this.lookahead.value === e; + }), + (e.prototype.matchContextualKeyword = function (e) { + return 3 === this.lookahead.type && this.lookahead.value === e; + }), + (e.prototype.matchAssign = function () { + if (7 !== this.lookahead.type) return !1; + var e = this.lookahead.value; + return ( + '=' === e || + '*=' === e || + '**=' === e || + '/=' === e || + '%=' === e || + '+=' === e || + '-=' === e || + '<<=' === e || + '>>=' === e || + '>>>=' === e || + '&=' === e || + '^=' === e || + '|=' === e + ); + }), + (e.prototype.isolateCoverGrammar = function (e) { + var t = this.context.isBindingElement, + r = this.context.isAssignmentTarget, + n = this.context.firstCoverInitializedNameError; + (this.context.isBindingElement = !0), + (this.context.isAssignmentTarget = !0), + (this.context.firstCoverInitializedNameError = null); + var i = e.call(this); + return ( + null !== this.context.firstCoverInitializedNameError && + this.throwUnexpectedToken(this.context.firstCoverInitializedNameError), + (this.context.isBindingElement = t), + (this.context.isAssignmentTarget = r), + (this.context.firstCoverInitializedNameError = n), + i + ); + }), + (e.prototype.inheritCoverGrammar = function (e) { + var t = this.context.isBindingElement, + r = this.context.isAssignmentTarget, + n = this.context.firstCoverInitializedNameError; + (this.context.isBindingElement = !0), + (this.context.isAssignmentTarget = !0), + (this.context.firstCoverInitializedNameError = null); + var i = e.call(this); + return ( + (this.context.isBindingElement = this.context.isBindingElement && t), + (this.context.isAssignmentTarget = this.context.isAssignmentTarget && r), + (this.context.firstCoverInitializedNameError = + n || this.context.firstCoverInitializedNameError), + i + ); + }), + (e.prototype.consumeSemicolon = function () { + this.match(';') + ? this.nextToken() + : this.hasLineTerminator || + (2 === this.lookahead.type || + this.match('}') || + this.throwUnexpectedToken(this.lookahead), + (this.lastMarker.index = this.startMarker.index), + (this.lastMarker.line = this.startMarker.line), + (this.lastMarker.column = this.startMarker.column)); + }), + (e.prototype.parsePrimaryExpression = function () { + var e, + t, + r, + n = this.createNode(); + switch (this.lookahead.type) { + case 3: + (this.context.isModule || this.context.await) && + 'await' === this.lookahead.value && + this.tolerateUnexpectedToken(this.lookahead), + (e = this.matchAsyncFunction() + ? this.parseFunctionExpression() + : this.finalize(n, new s.Identifier(this.nextToken().value))); + break; + case 6: + case 8: + this.context.strict && + this.lookahead.octal && + this.tolerateUnexpectedToken( + this.lookahead, + o.Messages.StrictOctalLiteral + ), + (this.context.isAssignmentTarget = !1), + (this.context.isBindingElement = !1), + (t = this.nextToken()), + (r = this.getTokenRaw(t)), + (e = this.finalize(n, new s.Literal(t.value, r))); + break; + case 1: + (this.context.isAssignmentTarget = !1), + (this.context.isBindingElement = !1), + (t = this.nextToken()), + (r = this.getTokenRaw(t)), + (e = this.finalize(n, new s.Literal('true' === t.value, r))); + break; + case 5: + (this.context.isAssignmentTarget = !1), + (this.context.isBindingElement = !1), + (t = this.nextToken()), + (r = this.getTokenRaw(t)), + (e = this.finalize(n, new s.Literal(null, r))); + break; + case 10: + e = this.parseTemplateLiteral(); + break; + case 7: + switch (this.lookahead.value) { + case '(': + (this.context.isBindingElement = !1), + (e = this.inheritCoverGrammar(this.parseGroupExpression)); + break; + case '[': + e = this.inheritCoverGrammar(this.parseArrayInitializer); + break; + case '{': + e = this.inheritCoverGrammar(this.parseObjectInitializer); + break; + case '/': + case '/=': + (this.context.isAssignmentTarget = !1), + (this.context.isBindingElement = !1), + (this.scanner.index = this.startMarker.index), + (t = this.nextRegexToken()), + (r = this.getTokenRaw(t)), + (e = this.finalize( + n, + new s.RegexLiteral(t.regex, r, t.pattern, t.flags) + )); + break; + default: + e = this.throwUnexpectedToken(this.nextToken()); + } + break; + case 4: + !this.context.strict && + this.context.allowYield && + this.matchKeyword('yield') + ? (e = this.parseIdentifierName()) + : !this.context.strict && this.matchKeyword('let') + ? (e = this.finalize(n, new s.Identifier(this.nextToken().value))) + : ((this.context.isAssignmentTarget = !1), + (this.context.isBindingElement = !1), + this.matchKeyword('function') + ? (e = this.parseFunctionExpression()) + : this.matchKeyword('this') + ? (this.nextToken(), (e = this.finalize(n, new s.ThisExpression()))) + : (e = this.matchKeyword('class') + ? this.parseClassExpression() + : this.throwUnexpectedToken(this.nextToken()))); + break; + default: + e = this.throwUnexpectedToken(this.nextToken()); + } + return e; + }), + (e.prototype.parseSpreadElement = function () { + var e = this.createNode(); + this.expect('...'); + var t = this.inheritCoverGrammar(this.parseAssignmentExpression); + return this.finalize(e, new s.SpreadElement(t)); + }), + (e.prototype.parseArrayInitializer = function () { + var e = this.createNode(), + t = []; + for (this.expect('['); !this.match(']'); ) + if (this.match(',')) this.nextToken(), t.push(null); + else if (this.match('...')) { + var r = this.parseSpreadElement(); + this.match(']') || + ((this.context.isAssignmentTarget = !1), + (this.context.isBindingElement = !1), + this.expect(',')), + t.push(r); + } else + t.push(this.inheritCoverGrammar(this.parseAssignmentExpression)), + this.match(']') || this.expect(','); + return this.expect(']'), this.finalize(e, new s.ArrayExpression(t)); + }), + (e.prototype.parsePropertyMethod = function (e) { + (this.context.isAssignmentTarget = !1), (this.context.isBindingElement = !1); + var t = this.context.strict, + r = this.context.allowStrictDirective; + this.context.allowStrictDirective = e.simple; + var n = this.isolateCoverGrammar(this.parseFunctionSourceElements); + return ( + this.context.strict && + e.firstRestricted && + this.tolerateUnexpectedToken(e.firstRestricted, e.message), + this.context.strict && + e.stricted && + this.tolerateUnexpectedToken(e.stricted, e.message), + (this.context.strict = t), + (this.context.allowStrictDirective = r), + n + ); + }), + (e.prototype.parsePropertyMethodFunction = function () { + var e = this.createNode(), + t = this.context.allowYield; + this.context.allowYield = !0; + var r = this.parseFormalParameters(), + n = this.parsePropertyMethod(r); + return ( + (this.context.allowYield = t), + this.finalize(e, new s.FunctionExpression(null, r.params, n, !1)) + ); + }), + (e.prototype.parsePropertyMethodAsyncFunction = function () { + var e = this.createNode(), + t = this.context.allowYield, + r = this.context.await; + (this.context.allowYield = !1), (this.context.await = !0); + var n = this.parseFormalParameters(), + i = this.parsePropertyMethod(n); + return ( + (this.context.allowYield = t), + (this.context.await = r), + this.finalize(e, new s.AsyncFunctionExpression(null, n.params, i)) + ); + }), + (e.prototype.parseObjectPropertyKey = function () { + var e, + t = this.createNode(), + r = this.nextToken(); + switch (r.type) { + case 8: + case 6: + this.context.strict && + r.octal && + this.tolerateUnexpectedToken(r, o.Messages.StrictOctalLiteral); + var n = this.getTokenRaw(r); + e = this.finalize(t, new s.Literal(r.value, n)); + break; + case 3: + case 1: + case 5: + case 4: + e = this.finalize(t, new s.Identifier(r.value)); + break; + case 7: + '[' === r.value + ? ((e = this.isolateCoverGrammar(this.parseAssignmentExpression)), + this.expect(']')) + : (e = this.throwUnexpectedToken(r)); + break; + default: + e = this.throwUnexpectedToken(r); + } + return e; + }), + (e.prototype.isPropertyKey = function (e, t) { + return ( + (e.type === a.Syntax.Identifier && e.name === t) || + (e.type === a.Syntax.Literal && e.value === t) + ); + }), + (e.prototype.parseObjectProperty = function (e) { + var t, + r = this.createNode(), + n = this.lookahead, + i = null, + A = null, + a = !1, + c = !1, + u = !1, + l = !1; + if (3 === n.type) { + var h = n.value; + this.nextToken(), + (a = this.match('[')), + (i = (l = !( + this.hasLineTerminator || + 'async' !== h || + this.match(':') || + this.match('(') || + this.match('*') || + this.match(',') + )) + ? this.parseObjectPropertyKey() + : this.finalize(r, new s.Identifier(h))); + } else + this.match('*') + ? this.nextToken() + : ((a = this.match('[')), (i = this.parseObjectPropertyKey())); + var g = this.qualifiedPropertyName(this.lookahead); + if (3 === n.type && !l && 'get' === n.value && g) + (t = 'get'), + (a = this.match('[')), + (i = this.parseObjectPropertyKey()), + (this.context.allowYield = !1), + (A = this.parseGetterMethod()); + else if (3 === n.type && !l && 'set' === n.value && g) + (t = 'set'), + (a = this.match('[')), + (i = this.parseObjectPropertyKey()), + (A = this.parseSetterMethod()); + else if (7 === n.type && '*' === n.value && g) + (t = 'init'), + (a = this.match('[')), + (i = this.parseObjectPropertyKey()), + (A = this.parseGeneratorMethod()), + (c = !0); + else if ( + (i || this.throwUnexpectedToken(this.lookahead), + (t = 'init'), + this.match(':') && !l) + ) + !a && + this.isPropertyKey(i, '__proto__') && + (e.value && this.tolerateError(o.Messages.DuplicateProtoProperty), + (e.value = !0)), + this.nextToken(), + (A = this.inheritCoverGrammar(this.parseAssignmentExpression)); + else if (this.match('(')) + (A = l + ? this.parsePropertyMethodAsyncFunction() + : this.parsePropertyMethodFunction()), + (c = !0); + else if (3 === n.type) + if (((h = this.finalize(r, new s.Identifier(n.value))), this.match('='))) { + (this.context.firstCoverInitializedNameError = this.lookahead), + this.nextToken(), + (u = !0); + var f = this.isolateCoverGrammar(this.parseAssignmentExpression); + A = this.finalize(r, new s.AssignmentPattern(h, f)); + } else (u = !0), (A = h); + else this.throwUnexpectedToken(this.nextToken()); + return this.finalize(r, new s.Property(t, i, a, A, c, u)); + }), + (e.prototype.parseObjectInitializer = function () { + var e = this.createNode(); + this.expect('{'); + for (var t = [], r = { value: !1 }; !this.match('}'); ) + t.push(this.parseObjectProperty(r)), + this.match('}') || this.expectCommaSeparator(); + return this.expect('}'), this.finalize(e, new s.ObjectExpression(t)); + }), + (e.prototype.parseTemplateHead = function () { + n.assert( + this.lookahead.head, + 'Template literal must start with a template head' + ); + var e = this.createNode(), + t = this.nextToken(), + r = t.value, + i = t.cooked; + return this.finalize(e, new s.TemplateElement({ raw: r, cooked: i }, t.tail)); + }), + (e.prototype.parseTemplateElement = function () { + 10 !== this.lookahead.type && this.throwUnexpectedToken(); + var e = this.createNode(), + t = this.nextToken(), + r = t.value, + n = t.cooked; + return this.finalize(e, new s.TemplateElement({ raw: r, cooked: n }, t.tail)); + }), + (e.prototype.parseTemplateLiteral = function () { + var e = this.createNode(), + t = [], + r = [], + n = this.parseTemplateHead(); + for (r.push(n); !n.tail; ) + t.push(this.parseExpression()), + (n = this.parseTemplateElement()), + r.push(n); + return this.finalize(e, new s.TemplateLiteral(r, t)); + }), + (e.prototype.reinterpretExpressionAsPattern = function (e) { + switch (e.type) { + case a.Syntax.Identifier: + case a.Syntax.MemberExpression: + case a.Syntax.RestElement: + case a.Syntax.AssignmentPattern: + break; + case a.Syntax.SpreadElement: + (e.type = a.Syntax.RestElement), + this.reinterpretExpressionAsPattern(e.argument); + break; + case a.Syntax.ArrayExpression: + e.type = a.Syntax.ArrayPattern; + for (var t = 0; t < e.elements.length; t++) + null !== e.elements[t] && + this.reinterpretExpressionAsPattern(e.elements[t]); + break; + case a.Syntax.ObjectExpression: + for (e.type = a.Syntax.ObjectPattern, t = 0; t < e.properties.length; t++) + this.reinterpretExpressionAsPattern(e.properties[t].value); + break; + case a.Syntax.AssignmentExpression: + (e.type = a.Syntax.AssignmentPattern), + delete e.operator, + this.reinterpretExpressionAsPattern(e.left); + } + }), + (e.prototype.parseGroupExpression = function () { + var e; + if ((this.expect('('), this.match(')'))) + this.nextToken(), + this.match('=>') || this.expect('=>'), + (e = { type: 'ArrowParameterPlaceHolder', params: [], async: !1 }); + else { + var t = this.lookahead, + r = []; + if (this.match('...')) + (e = this.parseRestElement(r)), + this.expect(')'), + this.match('=>') || this.expect('=>'), + (e = { type: 'ArrowParameterPlaceHolder', params: [e], async: !1 }); + else { + var n = !1; + if ( + ((this.context.isBindingElement = !0), + (e = this.inheritCoverGrammar(this.parseAssignmentExpression)), + this.match(',')) + ) { + var i = []; + for ( + this.context.isAssignmentTarget = !1, i.push(e); + 2 !== this.lookahead.type && this.match(','); + + ) { + if ((this.nextToken(), this.match(')'))) { + this.nextToken(); + for (var o = 0; o < i.length; o++) + this.reinterpretExpressionAsPattern(i[o]); + (n = !0), + (e = { type: 'ArrowParameterPlaceHolder', params: i, async: !1 }); + } else if (this.match('...')) { + for ( + this.context.isBindingElement || + this.throwUnexpectedToken(this.lookahead), + i.push(this.parseRestElement(r)), + this.expect(')'), + this.match('=>') || this.expect('=>'), + this.context.isBindingElement = !1, + o = 0; + o < i.length; + o++ + ) + this.reinterpretExpressionAsPattern(i[o]); + (n = !0), + (e = { type: 'ArrowParameterPlaceHolder', params: i, async: !1 }); + } else + i.push(this.inheritCoverGrammar(this.parseAssignmentExpression)); + if (n) break; + } + n || + (e = this.finalize(this.startNode(t), new s.SequenceExpression(i))); + } + if (!n) { + if ( + (this.expect(')'), + this.match('=>') && + (e.type === a.Syntax.Identifier && + 'yield' === e.name && + ((n = !0), + (e = { + type: 'ArrowParameterPlaceHolder', + params: [e], + async: !1, + })), + !n)) + ) { + if ( + (this.context.isBindingElement || + this.throwUnexpectedToken(this.lookahead), + e.type === a.Syntax.SequenceExpression) + ) + for (o = 0; o < e.expressions.length; o++) + this.reinterpretExpressionAsPattern(e.expressions[o]); + else this.reinterpretExpressionAsPattern(e); + e = { + type: 'ArrowParameterPlaceHolder', + params: + e.type === a.Syntax.SequenceExpression ? e.expressions : [e], + async: !1, + }; + } + this.context.isBindingElement = !1; + } + } + } + return e; + }), + (e.prototype.parseArguments = function () { + this.expect('('); + var e = []; + if (!this.match(')')) + for (;;) { + var t = this.match('...') + ? this.parseSpreadElement() + : this.isolateCoverGrammar(this.parseAssignmentExpression); + if ((e.push(t), this.match(')'))) break; + if ((this.expectCommaSeparator(), this.match(')'))) break; + } + return this.expect(')'), e; + }), + (e.prototype.isIdentifierName = function (e) { + return 3 === e.type || 4 === e.type || 1 === e.type || 5 === e.type; + }), + (e.prototype.parseIdentifierName = function () { + var e = this.createNode(), + t = this.nextToken(); + return ( + this.isIdentifierName(t) || this.throwUnexpectedToken(t), + this.finalize(e, new s.Identifier(t.value)) + ); + }), + (e.prototype.parseNewExpression = function () { + var e, + t = this.createNode(), + r = this.parseIdentifierName(); + if ( + (n.assert('new' === r.name, 'New expression must start with `new`'), + this.match('.')) + ) + if ( + (this.nextToken(), + 3 === this.lookahead.type && + this.context.inFunctionBody && + 'target' === this.lookahead.value) + ) { + var i = this.parseIdentifierName(); + e = new s.MetaProperty(r, i); + } else this.throwUnexpectedToken(this.lookahead); + else { + var o = this.isolateCoverGrammar(this.parseLeftHandSideExpression), + A = this.match('(') ? this.parseArguments() : []; + (e = new s.NewExpression(o, A)), + (this.context.isAssignmentTarget = !1), + (this.context.isBindingElement = !1); + } + return this.finalize(t, e); + }), + (e.prototype.parseAsyncArgument = function () { + var e = this.parseAssignmentExpression(); + return (this.context.firstCoverInitializedNameError = null), e; + }), + (e.prototype.parseAsyncArguments = function () { + this.expect('('); + var e = []; + if (!this.match(')')) + for (;;) { + var t = this.match('...') + ? this.parseSpreadElement() + : this.isolateCoverGrammar(this.parseAsyncArgument); + if ((e.push(t), this.match(')'))) break; + if ((this.expectCommaSeparator(), this.match(')'))) break; + } + return this.expect(')'), e; + }), + (e.prototype.parseLeftHandSideExpressionAllowCall = function () { + var e, + t = this.lookahead, + r = this.matchContextualKeyword('async'), + n = this.context.allowIn; + for ( + this.context.allowIn = !0, + this.matchKeyword('super') && this.context.inFunctionBody + ? ((e = this.createNode()), + this.nextToken(), + (e = this.finalize(e, new s.Super())), + this.match('(') || + this.match('.') || + this.match('[') || + this.throwUnexpectedToken(this.lookahead)) + : (e = this.inheritCoverGrammar( + this.matchKeyword('new') + ? this.parseNewExpression + : this.parsePrimaryExpression + )); + ; + + ) + if (this.match('.')) { + (this.context.isBindingElement = !1), + (this.context.isAssignmentTarget = !0), + this.expect('.'); + var i = this.parseIdentifierName(); + e = this.finalize(this.startNode(t), new s.StaticMemberExpression(e, i)); + } else if (this.match('(')) { + var o = r && t.lineNumber === this.lookahead.lineNumber; + (this.context.isBindingElement = !1), + (this.context.isAssignmentTarget = !1); + var A = o ? this.parseAsyncArguments() : this.parseArguments(); + if ( + ((e = this.finalize(this.startNode(t), new s.CallExpression(e, A))), + o && this.match('=>')) + ) { + for (var a = 0; a < A.length; ++a) + this.reinterpretExpressionAsPattern(A[a]); + e = { type: 'ArrowParameterPlaceHolder', params: A, async: !0 }; + } + } else if (this.match('[')) + (this.context.isBindingElement = !1), + (this.context.isAssignmentTarget = !0), + this.expect('['), + (i = this.isolateCoverGrammar(this.parseExpression)), + this.expect(']'), + (e = this.finalize( + this.startNode(t), + new s.ComputedMemberExpression(e, i) + )); + else { + if (10 !== this.lookahead.type || !this.lookahead.head) break; + var c = this.parseTemplateLiteral(); + e = this.finalize( + this.startNode(t), + new s.TaggedTemplateExpression(e, c) + ); + } + return (this.context.allowIn = n), e; + }), + (e.prototype.parseSuper = function () { + var e = this.createNode(); + return ( + this.expectKeyword('super'), + this.match('[') || + this.match('.') || + this.throwUnexpectedToken(this.lookahead), + this.finalize(e, new s.Super()) + ); + }), + (e.prototype.parseLeftHandSideExpression = function () { + n.assert( + this.context.allowIn, + 'callee of new expression always allow in keyword.' + ); + for ( + var e = this.startNode(this.lookahead), + t = + this.matchKeyword('super') && this.context.inFunctionBody + ? this.parseSuper() + : this.inheritCoverGrammar( + this.matchKeyword('new') + ? this.parseNewExpression + : this.parsePrimaryExpression + ); + ; + + ) + if (this.match('[')) { + (this.context.isBindingElement = !1), + (this.context.isAssignmentTarget = !0), + this.expect('['); + var r = this.isolateCoverGrammar(this.parseExpression); + this.expect(']'), + (t = this.finalize(e, new s.ComputedMemberExpression(t, r))); + } else if (this.match('.')) + (this.context.isBindingElement = !1), + (this.context.isAssignmentTarget = !0), + this.expect('.'), + (r = this.parseIdentifierName()), + (t = this.finalize(e, new s.StaticMemberExpression(t, r))); + else { + if (10 !== this.lookahead.type || !this.lookahead.head) break; + var i = this.parseTemplateLiteral(); + t = this.finalize(e, new s.TaggedTemplateExpression(t, i)); + } + return t; + }), + (e.prototype.parseUpdateExpression = function () { + var e, + t = this.lookahead; + if (this.match('++') || this.match('--')) { + var r = this.startNode(t), + n = this.nextToken(); + (e = this.inheritCoverGrammar(this.parseUnaryExpression)), + this.context.strict && + e.type === a.Syntax.Identifier && + this.scanner.isRestrictedWord(e.name) && + this.tolerateError(o.Messages.StrictLHSPrefix), + this.context.isAssignmentTarget || + this.tolerateError(o.Messages.InvalidLHSInAssignment); + var i = !0; + (e = this.finalize(r, new s.UpdateExpression(n.value, e, i))), + (this.context.isAssignmentTarget = !1), + (this.context.isBindingElement = !1); + } else if ( + ((e = this.inheritCoverGrammar(this.parseLeftHandSideExpressionAllowCall)), + !this.hasLineTerminator && + 7 === this.lookahead.type && + (this.match('++') || this.match('--'))) + ) { + this.context.strict && + e.type === a.Syntax.Identifier && + this.scanner.isRestrictedWord(e.name) && + this.tolerateError(o.Messages.StrictLHSPostfix), + this.context.isAssignmentTarget || + this.tolerateError(o.Messages.InvalidLHSInAssignment), + (this.context.isAssignmentTarget = !1), + (this.context.isBindingElement = !1); + var A = this.nextToken().value; + (i = !1), + (e = this.finalize(this.startNode(t), new s.UpdateExpression(A, e, i))); + } + return e; + }), + (e.prototype.parseAwaitExpression = function () { + var e = this.createNode(); + this.nextToken(); + var t = this.parseUnaryExpression(); + return this.finalize(e, new s.AwaitExpression(t)); + }), + (e.prototype.parseUnaryExpression = function () { + var e; + if ( + this.match('+') || + this.match('-') || + this.match('~') || + this.match('!') || + this.matchKeyword('delete') || + this.matchKeyword('void') || + this.matchKeyword('typeof') + ) { + var t = this.startNode(this.lookahead), + r = this.nextToken(); + (e = this.inheritCoverGrammar(this.parseUnaryExpression)), + (e = this.finalize(t, new s.UnaryExpression(r.value, e))), + this.context.strict && + 'delete' === e.operator && + e.argument.type === a.Syntax.Identifier && + this.tolerateError(o.Messages.StrictDelete), + (this.context.isAssignmentTarget = !1), + (this.context.isBindingElement = !1); + } else + e = + this.context.await && this.matchContextualKeyword('await') + ? this.parseAwaitExpression() + : this.parseUpdateExpression(); + return e; + }), + (e.prototype.parseExponentiationExpression = function () { + var e = this.lookahead, + t = this.inheritCoverGrammar(this.parseUnaryExpression); + if (t.type !== a.Syntax.UnaryExpression && this.match('**')) { + this.nextToken(), + (this.context.isAssignmentTarget = !1), + (this.context.isBindingElement = !1); + var r = t, + n = this.isolateCoverGrammar(this.parseExponentiationExpression); + t = this.finalize(this.startNode(e), new s.BinaryExpression('**', r, n)); + } + return t; + }), + (e.prototype.binaryPrecedence = function (e) { + var t = e.value; + return 7 === e.type + ? this.operatorPrecedence[t] || 0 + : 4 === e.type && + ('instanceof' === t || (this.context.allowIn && 'in' === t)) + ? 7 + : 0; + }), + (e.prototype.parseBinaryExpression = function () { + var e = this.lookahead, + t = this.inheritCoverGrammar(this.parseExponentiationExpression), + r = this.lookahead, + n = this.binaryPrecedence(r); + if (n > 0) { + this.nextToken(), + (this.context.isAssignmentTarget = !1), + (this.context.isBindingElement = !1); + for ( + var i = [e, this.lookahead], + o = t, + A = this.isolateCoverGrammar(this.parseExponentiationExpression), + a = [o, r.value, A], + c = [n]; + !((n = this.binaryPrecedence(this.lookahead)) <= 0); + + ) { + for (; a.length > 2 && n <= c[c.length - 1]; ) { + A = a.pop(); + var u = a.pop(); + c.pop(), (o = a.pop()), i.pop(); + var l = this.startNode(i[i.length - 1]); + a.push(this.finalize(l, new s.BinaryExpression(u, o, A))); + } + a.push(this.nextToken().value), + c.push(n), + i.push(this.lookahead), + a.push(this.isolateCoverGrammar(this.parseExponentiationExpression)); + } + var h = a.length - 1; + t = a[h]; + for (var g = i.pop(); h > 1; ) { + var f = i.pop(), + p = g && g.lineStart; + (l = this.startNode(f, p)), + (u = a[h - 1]), + (t = this.finalize(l, new s.BinaryExpression(u, a[h - 2], t))), + (h -= 2), + (g = f); + } + } + return t; + }), + (e.prototype.parseConditionalExpression = function () { + var e = this.lookahead, + t = this.inheritCoverGrammar(this.parseBinaryExpression); + if (this.match('?')) { + this.nextToken(); + var r = this.context.allowIn; + this.context.allowIn = !0; + var n = this.isolateCoverGrammar(this.parseAssignmentExpression); + (this.context.allowIn = r), this.expect(':'); + var i = this.isolateCoverGrammar(this.parseAssignmentExpression); + (t = this.finalize( + this.startNode(e), + new s.ConditionalExpression(t, n, i) + )), + (this.context.isAssignmentTarget = !1), + (this.context.isBindingElement = !1); + } + return t; + }), + (e.prototype.checkPatternParam = function (e, t) { + switch (t.type) { + case a.Syntax.Identifier: + this.validateParam(e, t, t.name); + break; + case a.Syntax.RestElement: + this.checkPatternParam(e, t.argument); + break; + case a.Syntax.AssignmentPattern: + this.checkPatternParam(e, t.left); + break; + case a.Syntax.ArrayPattern: + for (var r = 0; r < t.elements.length; r++) + null !== t.elements[r] && this.checkPatternParam(e, t.elements[r]); + break; + case a.Syntax.ObjectPattern: + for (r = 0; r < t.properties.length; r++) + this.checkPatternParam(e, t.properties[r].value); + } + e.simple = e.simple && t instanceof s.Identifier; + }), + (e.prototype.reinterpretAsCoverFormalsList = function (e) { + var t, + r = [e], + n = !1; + switch (e.type) { + case a.Syntax.Identifier: + break; + case 'ArrowParameterPlaceHolder': + (r = e.params), (n = e.async); + break; + default: + return null; + } + t = { simple: !0, paramSet: {} }; + for (var i = 0; i < r.length; ++i) + (s = r[i]).type === a.Syntax.AssignmentPattern + ? s.right.type === a.Syntax.YieldExpression && + (s.right.argument && this.throwUnexpectedToken(this.lookahead), + (s.right.type = a.Syntax.Identifier), + (s.right.name = 'yield'), + delete s.right.argument, + delete s.right.delegate) + : n && + s.type === a.Syntax.Identifier && + 'await' === s.name && + this.throwUnexpectedToken(this.lookahead), + this.checkPatternParam(t, s), + (r[i] = s); + if (this.context.strict || !this.context.allowYield) + for (i = 0; i < r.length; ++i) { + var s; + (s = r[i]).type === a.Syntax.YieldExpression && + this.throwUnexpectedToken(this.lookahead); + } + if (t.message === o.Messages.StrictParamDupe) { + var A = this.context.strict ? t.stricted : t.firstRestricted; + this.throwUnexpectedToken(A, t.message); + } + return { + simple: t.simple, + params: r, + stricted: t.stricted, + firstRestricted: t.firstRestricted, + message: t.message, + }; + }), + (e.prototype.parseAssignmentExpression = function () { + var e; + if (!this.context.allowYield && this.matchKeyword('yield')) + e = this.parseYieldExpression(); + else { + var t = this.lookahead, + r = t; + if ( + ((e = this.parseConditionalExpression()), + 3 === r.type && + r.lineNumber === this.lookahead.lineNumber && + 'async' === r.value && + (3 === this.lookahead.type || this.matchKeyword('yield'))) + ) { + var n = this.parsePrimaryExpression(); + this.reinterpretExpressionAsPattern(n), + (e = { type: 'ArrowParameterPlaceHolder', params: [n], async: !0 }); + } + if ('ArrowParameterPlaceHolder' === e.type || this.match('=>')) { + (this.context.isAssignmentTarget = !1), + (this.context.isBindingElement = !1); + var i = e.async, + A = this.reinterpretAsCoverFormalsList(e); + if (A) { + this.hasLineTerminator && this.tolerateUnexpectedToken(this.lookahead), + (this.context.firstCoverInitializedNameError = null); + var c = this.context.strict, + u = this.context.allowStrictDirective; + this.context.allowStrictDirective = A.simple; + var l = this.context.allowYield, + h = this.context.await; + (this.context.allowYield = !0), (this.context.await = i); + var g = this.startNode(t); + this.expect('=>'); + var f = void 0; + if (this.match('{')) { + var p = this.context.allowIn; + (this.context.allowIn = !0), + (f = this.parseFunctionSourceElements()), + (this.context.allowIn = p); + } else f = this.isolateCoverGrammar(this.parseAssignmentExpression); + var d = f.type !== a.Syntax.BlockStatement; + this.context.strict && + A.firstRestricted && + this.throwUnexpectedToken(A.firstRestricted, A.message), + this.context.strict && + A.stricted && + this.tolerateUnexpectedToken(A.stricted, A.message), + (e = i + ? this.finalize( + g, + new s.AsyncArrowFunctionExpression(A.params, f, d) + ) + : this.finalize(g, new s.ArrowFunctionExpression(A.params, f, d))), + (this.context.strict = c), + (this.context.allowStrictDirective = u), + (this.context.allowYield = l), + (this.context.await = h); + } + } else if (this.matchAssign()) { + if ( + (this.context.isAssignmentTarget || + this.tolerateError(o.Messages.InvalidLHSInAssignment), + this.context.strict && e.type === a.Syntax.Identifier) + ) { + var C = e; + this.scanner.isRestrictedWord(C.name) && + this.tolerateUnexpectedToken(r, o.Messages.StrictLHSAssignment), + this.scanner.isStrictModeReservedWord(C.name) && + this.tolerateUnexpectedToken(r, o.Messages.StrictReservedWord); + } + this.match('=') + ? this.reinterpretExpressionAsPattern(e) + : ((this.context.isAssignmentTarget = !1), + (this.context.isBindingElement = !1)); + var E = (r = this.nextToken()).value, + I = this.isolateCoverGrammar(this.parseAssignmentExpression); + (e = this.finalize( + this.startNode(t), + new s.AssignmentExpression(E, e, I) + )), + (this.context.firstCoverInitializedNameError = null); + } + } + return e; + }), + (e.prototype.parseExpression = function () { + var e = this.lookahead, + t = this.isolateCoverGrammar(this.parseAssignmentExpression); + if (this.match(',')) { + var r = []; + for (r.push(t); 2 !== this.lookahead.type && this.match(','); ) + this.nextToken(), + r.push(this.isolateCoverGrammar(this.parseAssignmentExpression)); + t = this.finalize(this.startNode(e), new s.SequenceExpression(r)); + } + return t; + }), + (e.prototype.parseStatementListItem = function () { + var e; + if ( + ((this.context.isAssignmentTarget = !0), + (this.context.isBindingElement = !0), + 4 === this.lookahead.type) + ) + switch (this.lookahead.value) { + case 'export': + this.context.isModule || + this.tolerateUnexpectedToken( + this.lookahead, + o.Messages.IllegalExportDeclaration + ), + (e = this.parseExportDeclaration()); + break; + case 'import': + this.context.isModule || + this.tolerateUnexpectedToken( + this.lookahead, + o.Messages.IllegalImportDeclaration + ), + (e = this.parseImportDeclaration()); + break; + case 'const': + e = this.parseLexicalDeclaration({ inFor: !1 }); + break; + case 'function': + e = this.parseFunctionDeclaration(); + break; + case 'class': + e = this.parseClassDeclaration(); + break; + case 'let': + e = this.isLexicalDeclaration() + ? this.parseLexicalDeclaration({ inFor: !1 }) + : this.parseStatement(); + break; + default: + e = this.parseStatement(); + } + else e = this.parseStatement(); + return e; + }), + (e.prototype.parseBlock = function () { + var e = this.createNode(); + this.expect('{'); + for (var t = []; !this.match('}'); ) t.push(this.parseStatementListItem()); + return this.expect('}'), this.finalize(e, new s.BlockStatement(t)); + }), + (e.prototype.parseLexicalBinding = function (e, t) { + var r = this.createNode(), + n = this.parsePattern([], e); + this.context.strict && + n.type === a.Syntax.Identifier && + this.scanner.isRestrictedWord(n.name) && + this.tolerateError(o.Messages.StrictVarName); + var i = null; + return ( + 'const' === e + ? this.matchKeyword('in') || + this.matchContextualKeyword('of') || + (this.match('=') + ? (this.nextToken(), + (i = this.isolateCoverGrammar(this.parseAssignmentExpression))) + : this.throwError(o.Messages.DeclarationMissingInitializer, 'const')) + : ((!t.inFor && n.type !== a.Syntax.Identifier) || this.match('=')) && + (this.expect('='), + (i = this.isolateCoverGrammar(this.parseAssignmentExpression))), + this.finalize(r, new s.VariableDeclarator(n, i)) + ); + }), + (e.prototype.parseBindingList = function (e, t) { + for (var r = [this.parseLexicalBinding(e, t)]; this.match(','); ) + this.nextToken(), r.push(this.parseLexicalBinding(e, t)); + return r; + }), + (e.prototype.isLexicalDeclaration = function () { + var e = this.scanner.saveState(); + this.scanner.scanComments(); + var t = this.scanner.lex(); + return ( + this.scanner.restoreState(e), + 3 === t.type || + (7 === t.type && '[' === t.value) || + (7 === t.type && '{' === t.value) || + (4 === t.type && 'let' === t.value) || + (4 === t.type && 'yield' === t.value) + ); + }), + (e.prototype.parseLexicalDeclaration = function (e) { + var t = this.createNode(), + r = this.nextToken().value; + n.assert( + 'let' === r || 'const' === r, + 'Lexical declaration must be either let or const' + ); + var i = this.parseBindingList(r, e); + return ( + this.consumeSemicolon(), this.finalize(t, new s.VariableDeclaration(i, r)) + ); + }), + (e.prototype.parseBindingRestElement = function (e, t) { + var r = this.createNode(); + this.expect('...'); + var n = this.parsePattern(e, t); + return this.finalize(r, new s.RestElement(n)); + }), + (e.prototype.parseArrayPattern = function (e, t) { + var r = this.createNode(); + this.expect('['); + for (var n = []; !this.match(']'); ) + if (this.match(',')) this.nextToken(), n.push(null); + else { + if (this.match('...')) { + n.push(this.parseBindingRestElement(e, t)); + break; + } + n.push(this.parsePatternWithDefault(e, t)), + this.match(']') || this.expect(','); + } + return this.expect(']'), this.finalize(r, new s.ArrayPattern(n)); + }), + (e.prototype.parsePropertyPattern = function (e, t) { + var r, + n, + i = this.createNode(), + o = !1, + A = !1; + if (3 === this.lookahead.type) { + var a = this.lookahead; + r = this.parseVariableIdentifier(); + var c = this.finalize(i, new s.Identifier(a.value)); + if (this.match('=')) { + e.push(a), (A = !0), this.nextToken(); + var u = this.parseAssignmentExpression(); + n = this.finalize(this.startNode(a), new s.AssignmentPattern(c, u)); + } else + this.match(':') + ? (this.expect(':'), (n = this.parsePatternWithDefault(e, t))) + : (e.push(a), (A = !0), (n = c)); + } else + (o = this.match('[')), + (r = this.parseObjectPropertyKey()), + this.expect(':'), + (n = this.parsePatternWithDefault(e, t)); + return this.finalize(i, new s.Property('init', r, o, n, !1, A)); + }), + (e.prototype.parseObjectPattern = function (e, t) { + var r = this.createNode(), + n = []; + for (this.expect('{'); !this.match('}'); ) + n.push(this.parsePropertyPattern(e, t)), + this.match('}') || this.expect(','); + return this.expect('}'), this.finalize(r, new s.ObjectPattern(n)); + }), + (e.prototype.parsePattern = function (e, t) { + var r; + return ( + this.match('[') + ? (r = this.parseArrayPattern(e, t)) + : this.match('{') + ? (r = this.parseObjectPattern(e, t)) + : (!this.matchKeyword('let') || + ('const' !== t && 'let' !== t) || + this.tolerateUnexpectedToken( + this.lookahead, + o.Messages.LetInLexicalBinding + ), + e.push(this.lookahead), + (r = this.parseVariableIdentifier(t))), + r + ); + }), + (e.prototype.parsePatternWithDefault = function (e, t) { + var r = this.lookahead, + n = this.parsePattern(e, t); + if (this.match('=')) { + this.nextToken(); + var i = this.context.allowYield; + this.context.allowYield = !0; + var o = this.isolateCoverGrammar(this.parseAssignmentExpression); + (this.context.allowYield = i), + (n = this.finalize(this.startNode(r), new s.AssignmentPattern(n, o))); + } + return n; + }), + (e.prototype.parseVariableIdentifier = function (e) { + var t = this.createNode(), + r = this.nextToken(); + return ( + 4 === r.type && 'yield' === r.value + ? this.context.strict + ? this.tolerateUnexpectedToken(r, o.Messages.StrictReservedWord) + : this.context.allowYield || this.throwUnexpectedToken(r) + : 3 !== r.type + ? this.context.strict && + 4 === r.type && + this.scanner.isStrictModeReservedWord(r.value) + ? this.tolerateUnexpectedToken(r, o.Messages.StrictReservedWord) + : (this.context.strict || 'let' !== r.value || 'var' !== e) && + this.throwUnexpectedToken(r) + : (this.context.isModule || this.context.await) && + 3 === r.type && + 'await' === r.value && + this.tolerateUnexpectedToken(r), + this.finalize(t, new s.Identifier(r.value)) + ); + }), + (e.prototype.parseVariableDeclaration = function (e) { + var t = this.createNode(), + r = this.parsePattern([], 'var'); + this.context.strict && + r.type === a.Syntax.Identifier && + this.scanner.isRestrictedWord(r.name) && + this.tolerateError(o.Messages.StrictVarName); + var n = null; + return ( + this.match('=') + ? (this.nextToken(), + (n = this.isolateCoverGrammar(this.parseAssignmentExpression))) + : r.type === a.Syntax.Identifier || e.inFor || this.expect('='), + this.finalize(t, new s.VariableDeclarator(r, n)) + ); + }), + (e.prototype.parseVariableDeclarationList = function (e) { + var t = { inFor: e.inFor }, + r = []; + for (r.push(this.parseVariableDeclaration(t)); this.match(','); ) + this.nextToken(), r.push(this.parseVariableDeclaration(t)); + return r; + }), + (e.prototype.parseVariableStatement = function () { + var e = this.createNode(); + this.expectKeyword('var'); + var t = this.parseVariableDeclarationList({ inFor: !1 }); + return ( + this.consumeSemicolon(), + this.finalize(e, new s.VariableDeclaration(t, 'var')) + ); + }), + (e.prototype.parseEmptyStatement = function () { + var e = this.createNode(); + return this.expect(';'), this.finalize(e, new s.EmptyStatement()); + }), + (e.prototype.parseExpressionStatement = function () { + var e = this.createNode(), + t = this.parseExpression(); + return ( + this.consumeSemicolon(), this.finalize(e, new s.ExpressionStatement(t)) + ); + }), + (e.prototype.parseIfClause = function () { + return ( + this.context.strict && + this.matchKeyword('function') && + this.tolerateError(o.Messages.StrictFunction), + this.parseStatement() + ); + }), + (e.prototype.parseIfStatement = function () { + var e, + t = this.createNode(), + r = null; + this.expectKeyword('if'), this.expect('('); + var n = this.parseExpression(); + return ( + !this.match(')') && this.config.tolerant + ? (this.tolerateUnexpectedToken(this.nextToken()), + (e = this.finalize(this.createNode(), new s.EmptyStatement()))) + : (this.expect(')'), + (e = this.parseIfClause()), + this.matchKeyword('else') && + (this.nextToken(), (r = this.parseIfClause()))), + this.finalize(t, new s.IfStatement(n, e, r)) + ); + }), + (e.prototype.parseDoWhileStatement = function () { + var e = this.createNode(); + this.expectKeyword('do'); + var t = this.context.inIteration; + this.context.inIteration = !0; + var r = this.parseStatement(); + (this.context.inIteration = t), this.expectKeyword('while'), this.expect('('); + var n = this.parseExpression(); + return ( + !this.match(')') && this.config.tolerant + ? this.tolerateUnexpectedToken(this.nextToken()) + : (this.expect(')'), this.match(';') && this.nextToken()), + this.finalize(e, new s.DoWhileStatement(r, n)) + ); + }), + (e.prototype.parseWhileStatement = function () { + var e, + t = this.createNode(); + this.expectKeyword('while'), this.expect('('); + var r = this.parseExpression(); + if (!this.match(')') && this.config.tolerant) + this.tolerateUnexpectedToken(this.nextToken()), + (e = this.finalize(this.createNode(), new s.EmptyStatement())); + else { + this.expect(')'); + var n = this.context.inIteration; + (this.context.inIteration = !0), + (e = this.parseStatement()), + (this.context.inIteration = n); + } + return this.finalize(t, new s.WhileStatement(r, e)); + }), + (e.prototype.parseForStatement = function () { + var e, + t, + r, + n = null, + i = null, + A = null, + c = !0, + u = this.createNode(); + if ((this.expectKeyword('for'), this.expect('('), this.match(';'))) + this.nextToken(); + else if (this.matchKeyword('var')) { + (n = this.createNode()), this.nextToken(); + var l = this.context.allowIn; + this.context.allowIn = !1; + var h = this.parseVariableDeclarationList({ inFor: !0 }); + if ( + ((this.context.allowIn = l), 1 === h.length && this.matchKeyword('in')) + ) { + var g = h[0]; + g.init && + (g.id.type === a.Syntax.ArrayPattern || + g.id.type === a.Syntax.ObjectPattern || + this.context.strict) && + this.tolerateError(o.Messages.ForInOfLoopInitializer, 'for-in'), + (n = this.finalize(n, new s.VariableDeclaration(h, 'var'))), + this.nextToken(), + (e = n), + (t = this.parseExpression()), + (n = null); + } else + 1 === h.length && null === h[0].init && this.matchContextualKeyword('of') + ? ((n = this.finalize(n, new s.VariableDeclaration(h, 'var'))), + this.nextToken(), + (e = n), + (t = this.parseAssignmentExpression()), + (n = null), + (c = !1)) + : ((n = this.finalize(n, new s.VariableDeclaration(h, 'var'))), + this.expect(';')); + } else if (this.matchKeyword('const') || this.matchKeyword('let')) { + n = this.createNode(); + var f = this.nextToken().value; + this.context.strict || 'in' !== this.lookahead.value + ? ((l = this.context.allowIn), + (this.context.allowIn = !1), + (h = this.parseBindingList(f, { inFor: !0 })), + (this.context.allowIn = l), + 1 === h.length && null === h[0].init && this.matchKeyword('in') + ? ((n = this.finalize(n, new s.VariableDeclaration(h, f))), + this.nextToken(), + (e = n), + (t = this.parseExpression()), + (n = null)) + : 1 === h.length && + null === h[0].init && + this.matchContextualKeyword('of') + ? ((n = this.finalize(n, new s.VariableDeclaration(h, f))), + this.nextToken(), + (e = n), + (t = this.parseAssignmentExpression()), + (n = null), + (c = !1)) + : (this.consumeSemicolon(), + (n = this.finalize(n, new s.VariableDeclaration(h, f))))) + : ((n = this.finalize(n, new s.Identifier(f))), + this.nextToken(), + (e = n), + (t = this.parseExpression()), + (n = null)); + } else { + var p = this.lookahead; + if ( + ((l = this.context.allowIn), + (this.context.allowIn = !1), + (n = this.inheritCoverGrammar(this.parseAssignmentExpression)), + (this.context.allowIn = l), + this.matchKeyword('in')) + ) + (this.context.isAssignmentTarget && + n.type !== a.Syntax.AssignmentExpression) || + this.tolerateError(o.Messages.InvalidLHSInForIn), + this.nextToken(), + this.reinterpretExpressionAsPattern(n), + (e = n), + (t = this.parseExpression()), + (n = null); + else if (this.matchContextualKeyword('of')) + (this.context.isAssignmentTarget && + n.type !== a.Syntax.AssignmentExpression) || + this.tolerateError(o.Messages.InvalidLHSInForLoop), + this.nextToken(), + this.reinterpretExpressionAsPattern(n), + (e = n), + (t = this.parseAssignmentExpression()), + (n = null), + (c = !1); + else { + if (this.match(',')) { + for (var d = [n]; this.match(','); ) + this.nextToken(), + d.push(this.isolateCoverGrammar(this.parseAssignmentExpression)); + n = this.finalize(this.startNode(p), new s.SequenceExpression(d)); + } + this.expect(';'); + } + } + if ( + (void 0 === e && + (this.match(';') || (i = this.parseExpression()), + this.expect(';'), + this.match(')') || (A = this.parseExpression())), + !this.match(')') && this.config.tolerant) + ) + this.tolerateUnexpectedToken(this.nextToken()), + (r = this.finalize(this.createNode(), new s.EmptyStatement())); + else { + this.expect(')'); + var C = this.context.inIteration; + (this.context.inIteration = !0), + (r = this.isolateCoverGrammar(this.parseStatement)), + (this.context.inIteration = C); + } + return void 0 === e + ? this.finalize(u, new s.ForStatement(n, i, A, r)) + : c + ? this.finalize(u, new s.ForInStatement(e, t, r)) + : this.finalize(u, new s.ForOfStatement(e, t, r)); + }), + (e.prototype.parseContinueStatement = function () { + var e = this.createNode(); + this.expectKeyword('continue'); + var t = null; + if (3 === this.lookahead.type && !this.hasLineTerminator) { + var r = this.parseVariableIdentifier(); + t = r; + var n = '$' + r.name; + Object.prototype.hasOwnProperty.call(this.context.labelSet, n) || + this.throwError(o.Messages.UnknownLabel, r.name); + } + return ( + this.consumeSemicolon(), + null !== t || + this.context.inIteration || + this.throwError(o.Messages.IllegalContinue), + this.finalize(e, new s.ContinueStatement(t)) + ); + }), + (e.prototype.parseBreakStatement = function () { + var e = this.createNode(); + this.expectKeyword('break'); + var t = null; + if (3 === this.lookahead.type && !this.hasLineTerminator) { + var r = this.parseVariableIdentifier(), + n = '$' + r.name; + Object.prototype.hasOwnProperty.call(this.context.labelSet, n) || + this.throwError(o.Messages.UnknownLabel, r.name), + (t = r); + } + return ( + this.consumeSemicolon(), + null !== t || + this.context.inIteration || + this.context.inSwitch || + this.throwError(o.Messages.IllegalBreak), + this.finalize(e, new s.BreakStatement(t)) + ); + }), + (e.prototype.parseReturnStatement = function () { + this.context.inFunctionBody || this.tolerateError(o.Messages.IllegalReturn); + var e = this.createNode(); + this.expectKeyword('return'); + var t = + (this.match(';') || + this.match('}') || + this.hasLineTerminator || + 2 === this.lookahead.type) && + 8 !== this.lookahead.type && + 10 !== this.lookahead.type + ? null + : this.parseExpression(); + return this.consumeSemicolon(), this.finalize(e, new s.ReturnStatement(t)); + }), + (e.prototype.parseWithStatement = function () { + this.context.strict && this.tolerateError(o.Messages.StrictModeWith); + var e, + t = this.createNode(); + this.expectKeyword('with'), this.expect('('); + var r = this.parseExpression(); + return ( + !this.match(')') && this.config.tolerant + ? (this.tolerateUnexpectedToken(this.nextToken()), + (e = this.finalize(this.createNode(), new s.EmptyStatement()))) + : (this.expect(')'), (e = this.parseStatement())), + this.finalize(t, new s.WithStatement(r, e)) + ); + }), + (e.prototype.parseSwitchCase = function () { + var e, + t = this.createNode(); + this.matchKeyword('default') + ? (this.nextToken(), (e = null)) + : (this.expectKeyword('case'), (e = this.parseExpression())), + this.expect(':'); + for ( + var r = []; + !( + this.match('}') || + this.matchKeyword('default') || + this.matchKeyword('case') + ); + + ) + r.push(this.parseStatementListItem()); + return this.finalize(t, new s.SwitchCase(e, r)); + }), + (e.prototype.parseSwitchStatement = function () { + var e = this.createNode(); + this.expectKeyword('switch'), this.expect('('); + var t = this.parseExpression(); + this.expect(')'); + var r = this.context.inSwitch; + this.context.inSwitch = !0; + var n = [], + i = !1; + for (this.expect('{'); !this.match('}'); ) { + var A = this.parseSwitchCase(); + null === A.test && + (i && this.throwError(o.Messages.MultipleDefaultsInSwitch), (i = !0)), + n.push(A); + } + return ( + this.expect('}'), + (this.context.inSwitch = r), + this.finalize(e, new s.SwitchStatement(t, n)) + ); + }), + (e.prototype.parseLabelledStatement = function () { + var e, + t = this.createNode(), + r = this.parseExpression(); + if (r.type === a.Syntax.Identifier && this.match(':')) { + this.nextToken(); + var n = r, + i = '$' + n.name; + Object.prototype.hasOwnProperty.call(this.context.labelSet, i) && + this.throwError(o.Messages.Redeclaration, 'Label', n.name), + (this.context.labelSet[i] = !0); + var A = void 0; + if (this.matchKeyword('class')) + this.tolerateUnexpectedToken(this.lookahead), + (A = this.parseClassDeclaration()); + else if (this.matchKeyword('function')) { + var c = this.lookahead, + u = this.parseFunctionDeclaration(); + this.context.strict + ? this.tolerateUnexpectedToken(c, o.Messages.StrictFunction) + : u.generator && + this.tolerateUnexpectedToken(c, o.Messages.GeneratorInLegacyContext), + (A = u); + } else A = this.parseStatement(); + delete this.context.labelSet[i], (e = new s.LabeledStatement(n, A)); + } else this.consumeSemicolon(), (e = new s.ExpressionStatement(r)); + return this.finalize(t, e); + }), + (e.prototype.parseThrowStatement = function () { + var e = this.createNode(); + this.expectKeyword('throw'), + this.hasLineTerminator && this.throwError(o.Messages.NewlineAfterThrow); + var t = this.parseExpression(); + return this.consumeSemicolon(), this.finalize(e, new s.ThrowStatement(t)); + }), + (e.prototype.parseCatchClause = function () { + var e = this.createNode(); + this.expectKeyword('catch'), + this.expect('('), + this.match(')') && this.throwUnexpectedToken(this.lookahead); + for (var t = [], r = this.parsePattern(t), n = {}, i = 0; i < t.length; i++) { + var A = '$' + t[i].value; + Object.prototype.hasOwnProperty.call(n, A) && + this.tolerateError(o.Messages.DuplicateBinding, t[i].value), + (n[A] = !0); + } + this.context.strict && + r.type === a.Syntax.Identifier && + this.scanner.isRestrictedWord(r.name) && + this.tolerateError(o.Messages.StrictCatchVariable), + this.expect(')'); + var c = this.parseBlock(); + return this.finalize(e, new s.CatchClause(r, c)); + }), + (e.prototype.parseFinallyClause = function () { + return this.expectKeyword('finally'), this.parseBlock(); + }), + (e.prototype.parseTryStatement = function () { + var e = this.createNode(); + this.expectKeyword('try'); + var t = this.parseBlock(), + r = this.matchKeyword('catch') ? this.parseCatchClause() : null, + n = this.matchKeyword('finally') ? this.parseFinallyClause() : null; + return ( + r || n || this.throwError(o.Messages.NoCatchOrFinally), + this.finalize(e, new s.TryStatement(t, r, n)) + ); + }), + (e.prototype.parseDebuggerStatement = function () { + var e = this.createNode(); + return ( + this.expectKeyword('debugger'), + this.consumeSemicolon(), + this.finalize(e, new s.DebuggerStatement()) + ); + }), + (e.prototype.parseStatement = function () { + var e; + switch (this.lookahead.type) { + case 1: + case 5: + case 6: + case 8: + case 10: + case 9: + e = this.parseExpressionStatement(); + break; + case 7: + var t = this.lookahead.value; + e = + '{' === t + ? this.parseBlock() + : '(' === t + ? this.parseExpressionStatement() + : ';' === t + ? this.parseEmptyStatement() + : this.parseExpressionStatement(); + break; + case 3: + e = this.matchAsyncFunction() + ? this.parseFunctionDeclaration() + : this.parseLabelledStatement(); + break; + case 4: + switch (this.lookahead.value) { + case 'break': + e = this.parseBreakStatement(); + break; + case 'continue': + e = this.parseContinueStatement(); + break; + case 'debugger': + e = this.parseDebuggerStatement(); + break; + case 'do': + e = this.parseDoWhileStatement(); + break; + case 'for': + e = this.parseForStatement(); + break; + case 'function': + e = this.parseFunctionDeclaration(); + break; + case 'if': + e = this.parseIfStatement(); + break; + case 'return': + e = this.parseReturnStatement(); + break; + case 'switch': + e = this.parseSwitchStatement(); + break; + case 'throw': + e = this.parseThrowStatement(); + break; + case 'try': + e = this.parseTryStatement(); + break; + case 'var': + e = this.parseVariableStatement(); + break; + case 'while': + e = this.parseWhileStatement(); + break; + case 'with': + e = this.parseWithStatement(); + break; + default: + e = this.parseExpressionStatement(); + } + break; + default: + e = this.throwUnexpectedToken(this.lookahead); + } + return e; + }), + (e.prototype.parseFunctionSourceElements = function () { + var e = this.createNode(); + this.expect('{'); + var t = this.parseDirectivePrologues(), + r = this.context.labelSet, + n = this.context.inIteration, + i = this.context.inSwitch, + o = this.context.inFunctionBody; + for ( + this.context.labelSet = {}, + this.context.inIteration = !1, + this.context.inSwitch = !1, + this.context.inFunctionBody = !0; + 2 !== this.lookahead.type && !this.match('}'); + + ) + t.push(this.parseStatementListItem()); + return ( + this.expect('}'), + (this.context.labelSet = r), + (this.context.inIteration = n), + (this.context.inSwitch = i), + (this.context.inFunctionBody = o), + this.finalize(e, new s.BlockStatement(t)) + ); + }), + (e.prototype.validateParam = function (e, t, r) { + var n = '$' + r; + this.context.strict + ? (this.scanner.isRestrictedWord(r) && + ((e.stricted = t), (e.message = o.Messages.StrictParamName)), + Object.prototype.hasOwnProperty.call(e.paramSet, n) && + ((e.stricted = t), (e.message = o.Messages.StrictParamDupe))) + : e.firstRestricted || + (this.scanner.isRestrictedWord(r) + ? ((e.firstRestricted = t), (e.message = o.Messages.StrictParamName)) + : this.scanner.isStrictModeReservedWord(r) + ? ((e.firstRestricted = t), (e.message = o.Messages.StrictReservedWord)) + : Object.prototype.hasOwnProperty.call(e.paramSet, n) && + ((e.stricted = t), (e.message = o.Messages.StrictParamDupe))), + 'function' == typeof Object.defineProperty + ? Object.defineProperty(e.paramSet, n, { + value: !0, + enumerable: !0, + writable: !0, + configurable: !0, + }) + : (e.paramSet[n] = !0); + }), + (e.prototype.parseRestElement = function (e) { + var t = this.createNode(); + this.expect('...'); + var r = this.parsePattern(e); + return ( + this.match('=') && this.throwError(o.Messages.DefaultRestParameter), + this.match(')') || this.throwError(o.Messages.ParameterAfterRestParameter), + this.finalize(t, new s.RestElement(r)) + ); + }), + (e.prototype.parseFormalParameter = function (e) { + for ( + var t = [], + r = this.match('...') + ? this.parseRestElement(t) + : this.parsePatternWithDefault(t), + n = 0; + n < t.length; + n++ + ) + this.validateParam(e, t[n], t[n].value); + (e.simple = e.simple && r instanceof s.Identifier), e.params.push(r); + }), + (e.prototype.parseFormalParameters = function (e) { + var t; + if ( + ((t = { simple: !0, params: [], firstRestricted: e }), + this.expect('('), + !this.match(')')) + ) + for ( + t.paramSet = {}; + 2 !== this.lookahead.type && + (this.parseFormalParameter(t), !this.match(')')) && + (this.expect(','), !this.match(')')); + + ); + return ( + this.expect(')'), + { + simple: t.simple, + params: t.params, + stricted: t.stricted, + firstRestricted: t.firstRestricted, + message: t.message, + } + ); + }), + (e.prototype.matchAsyncFunction = function () { + var e = this.matchContextualKeyword('async'); + if (e) { + var t = this.scanner.saveState(); + this.scanner.scanComments(); + var r = this.scanner.lex(); + this.scanner.restoreState(t), + (e = + t.lineNumber === r.lineNumber && + 4 === r.type && + 'function' === r.value); + } + return e; + }), + (e.prototype.parseFunctionDeclaration = function (e) { + var t = this.createNode(), + r = this.matchContextualKeyword('async'); + r && this.nextToken(), this.expectKeyword('function'); + var n, + i = !r && this.match('*'); + i && this.nextToken(); + var A = null, + a = null; + if (!e || !this.match('(')) { + var c = this.lookahead; + (A = this.parseVariableIdentifier()), + this.context.strict + ? this.scanner.isRestrictedWord(c.value) && + this.tolerateUnexpectedToken(c, o.Messages.StrictFunctionName) + : this.scanner.isRestrictedWord(c.value) + ? ((a = c), (n = o.Messages.StrictFunctionName)) + : this.scanner.isStrictModeReservedWord(c.value) && + ((a = c), (n = o.Messages.StrictReservedWord)); + } + var u = this.context.await, + l = this.context.allowYield; + (this.context.await = r), (this.context.allowYield = !i); + var h = this.parseFormalParameters(a), + g = h.params, + f = h.stricted; + (a = h.firstRestricted), h.message && (n = h.message); + var p = this.context.strict, + d = this.context.allowStrictDirective; + this.context.allowStrictDirective = h.simple; + var C = this.parseFunctionSourceElements(); + return ( + this.context.strict && a && this.throwUnexpectedToken(a, n), + this.context.strict && f && this.tolerateUnexpectedToken(f, n), + (this.context.strict = p), + (this.context.allowStrictDirective = d), + (this.context.await = u), + (this.context.allowYield = l), + r + ? this.finalize(t, new s.AsyncFunctionDeclaration(A, g, C)) + : this.finalize(t, new s.FunctionDeclaration(A, g, C, i)) + ); + }), + (e.prototype.parseFunctionExpression = function () { + var e = this.createNode(), + t = this.matchContextualKeyword('async'); + t && this.nextToken(), this.expectKeyword('function'); + var r, + n = !t && this.match('*'); + n && this.nextToken(); + var i, + A = null, + a = this.context.await, + c = this.context.allowYield; + if ( + ((this.context.await = t), (this.context.allowYield = !n), !this.match('(')) + ) { + var u = this.lookahead; + (A = + this.context.strict || n || !this.matchKeyword('yield') + ? this.parseVariableIdentifier() + : this.parseIdentifierName()), + this.context.strict + ? this.scanner.isRestrictedWord(u.value) && + this.tolerateUnexpectedToken(u, o.Messages.StrictFunctionName) + : this.scanner.isRestrictedWord(u.value) + ? ((i = u), (r = o.Messages.StrictFunctionName)) + : this.scanner.isStrictModeReservedWord(u.value) && + ((i = u), (r = o.Messages.StrictReservedWord)); + } + var l = this.parseFormalParameters(i), + h = l.params, + g = l.stricted; + (i = l.firstRestricted), l.message && (r = l.message); + var f = this.context.strict, + p = this.context.allowStrictDirective; + this.context.allowStrictDirective = l.simple; + var d = this.parseFunctionSourceElements(); + return ( + this.context.strict && i && this.throwUnexpectedToken(i, r), + this.context.strict && g && this.tolerateUnexpectedToken(g, r), + (this.context.strict = f), + (this.context.allowStrictDirective = p), + (this.context.await = a), + (this.context.allowYield = c), + t + ? this.finalize(e, new s.AsyncFunctionExpression(A, h, d)) + : this.finalize(e, new s.FunctionExpression(A, h, d, n)) + ); + }), + (e.prototype.parseDirective = function () { + var e = this.lookahead, + t = this.createNode(), + r = this.parseExpression(), + n = r.type === a.Syntax.Literal ? this.getTokenRaw(e).slice(1, -1) : null; + return ( + this.consumeSemicolon(), + this.finalize(t, n ? new s.Directive(r, n) : new s.ExpressionStatement(r)) + ); + }), + (e.prototype.parseDirectivePrologues = function () { + for (var e = null, t = []; ; ) { + var r = this.lookahead; + if (8 !== r.type) break; + var n = this.parseDirective(); + t.push(n); + var i = n.directive; + if ('string' != typeof i) break; + 'use strict' === i + ? ((this.context.strict = !0), + e && this.tolerateUnexpectedToken(e, o.Messages.StrictOctalLiteral), + this.context.allowStrictDirective || + this.tolerateUnexpectedToken( + r, + o.Messages.IllegalLanguageModeDirective + )) + : !e && r.octal && (e = r); + } + return t; + }), + (e.prototype.qualifiedPropertyName = function (e) { + switch (e.type) { + case 3: + case 8: + case 1: + case 5: + case 6: + case 4: + return !0; + case 7: + return '[' === e.value; + } + return !1; + }), + (e.prototype.parseGetterMethod = function () { + var e = this.createNode(), + t = this.context.allowYield; + this.context.allowYield = !0; + var r = this.parseFormalParameters(); + r.params.length > 0 && this.tolerateError(o.Messages.BadGetterArity); + var n = this.parsePropertyMethod(r); + return ( + (this.context.allowYield = t), + this.finalize(e, new s.FunctionExpression(null, r.params, n, !1)) + ); + }), + (e.prototype.parseSetterMethod = function () { + var e = this.createNode(), + t = this.context.allowYield; + this.context.allowYield = !0; + var r = this.parseFormalParameters(); + 1 !== r.params.length + ? this.tolerateError(o.Messages.BadSetterArity) + : r.params[0] instanceof s.RestElement && + this.tolerateError(o.Messages.BadSetterRestParameter); + var n = this.parsePropertyMethod(r); + return ( + (this.context.allowYield = t), + this.finalize(e, new s.FunctionExpression(null, r.params, n, !1)) + ); + }), + (e.prototype.parseGeneratorMethod = function () { + var e = this.createNode(), + t = this.context.allowYield; + this.context.allowYield = !0; + var r = this.parseFormalParameters(); + this.context.allowYield = !1; + var n = this.parsePropertyMethod(r); + return ( + (this.context.allowYield = t), + this.finalize(e, new s.FunctionExpression(null, r.params, n, !0)) + ); + }), + (e.prototype.isStartOfExpression = function () { + var e = !0, + t = this.lookahead.value; + switch (this.lookahead.type) { + case 7: + e = + '[' === t || + '(' === t || + '{' === t || + '+' === t || + '-' === t || + '!' === t || + '~' === t || + '++' === t || + '--' === t || + '/' === t || + '/=' === t; + break; + case 4: + e = + 'class' === t || + 'delete' === t || + 'function' === t || + 'let' === t || + 'new' === t || + 'super' === t || + 'this' === t || + 'typeof' === t || + 'void' === t || + 'yield' === t; + } + return e; + }), + (e.prototype.parseYieldExpression = function () { + var e = this.createNode(); + this.expectKeyword('yield'); + var t = null, + r = !1; + if (!this.hasLineTerminator) { + var n = this.context.allowYield; + (this.context.allowYield = !1), + (r = this.match('*')) + ? (this.nextToken(), (t = this.parseAssignmentExpression())) + : this.isStartOfExpression() && (t = this.parseAssignmentExpression()), + (this.context.allowYield = n); + } + return this.finalize(e, new s.YieldExpression(t, r)); + }), + (e.prototype.parseClassElement = function (e) { + var t = this.lookahead, + r = this.createNode(), + n = '', + i = null, + A = null, + a = !1, + c = !1, + u = !1, + l = !1; + if (this.match('*')) this.nextToken(); + else if ( + ((a = this.match('[')), + 'static' === (i = this.parseObjectPropertyKey()).name && + (this.qualifiedPropertyName(this.lookahead) || this.match('*')) && + ((t = this.lookahead), + (u = !0), + (a = this.match('[')), + this.match('*') ? this.nextToken() : (i = this.parseObjectPropertyKey())), + 3 === t.type && !this.hasLineTerminator && 'async' === t.value) + ) { + var h = this.lookahead.value; + ':' !== h && + '(' !== h && + '*' !== h && + ((l = !0), + (t = this.lookahead), + (i = this.parseObjectPropertyKey()), + 3 === t.type && + 'constructor' === t.value && + this.tolerateUnexpectedToken(t, o.Messages.ConstructorIsAsync)); + } + var g = this.qualifiedPropertyName(this.lookahead); + return ( + 3 === t.type + ? 'get' === t.value && g + ? ((n = 'get'), + (a = this.match('[')), + (i = this.parseObjectPropertyKey()), + (this.context.allowYield = !1), + (A = this.parseGetterMethod())) + : 'set' === t.value && + g && + ((n = 'set'), + (a = this.match('[')), + (i = this.parseObjectPropertyKey()), + (A = this.parseSetterMethod())) + : 7 === t.type && + '*' === t.value && + g && + ((n = 'init'), + (a = this.match('[')), + (i = this.parseObjectPropertyKey()), + (A = this.parseGeneratorMethod()), + (c = !0)), + !n && + i && + this.match('(') && + ((n = 'init'), + (A = l + ? this.parsePropertyMethodAsyncFunction() + : this.parsePropertyMethodFunction()), + (c = !0)), + n || this.throwUnexpectedToken(this.lookahead), + 'init' === n && (n = 'method'), + a || + (u && + this.isPropertyKey(i, 'prototype') && + this.throwUnexpectedToken(t, o.Messages.StaticPrototype), + !u && + this.isPropertyKey(i, 'constructor') && + (('method' !== n || !c || (A && A.generator)) && + this.throwUnexpectedToken(t, o.Messages.ConstructorSpecialMethod), + e.value + ? this.throwUnexpectedToken(t, o.Messages.DuplicateConstructor) + : (e.value = !0), + (n = 'constructor'))), + this.finalize(r, new s.MethodDefinition(i, a, A, n, u)) + ); + }), + (e.prototype.parseClassElementList = function () { + var e = [], + t = { value: !1 }; + for (this.expect('{'); !this.match('}'); ) + this.match(';') ? this.nextToken() : e.push(this.parseClassElement(t)); + return this.expect('}'), e; + }), + (e.prototype.parseClassBody = function () { + var e = this.createNode(), + t = this.parseClassElementList(); + return this.finalize(e, new s.ClassBody(t)); + }), + (e.prototype.parseClassDeclaration = function (e) { + var t = this.createNode(), + r = this.context.strict; + (this.context.strict = !0), this.expectKeyword('class'); + var n = + e && 3 !== this.lookahead.type ? null : this.parseVariableIdentifier(), + i = null; + this.matchKeyword('extends') && + (this.nextToken(), + (i = this.isolateCoverGrammar(this.parseLeftHandSideExpressionAllowCall))); + var o = this.parseClassBody(); + return ( + (this.context.strict = r), this.finalize(t, new s.ClassDeclaration(n, i, o)) + ); + }), + (e.prototype.parseClassExpression = function () { + var e = this.createNode(), + t = this.context.strict; + (this.context.strict = !0), this.expectKeyword('class'); + var r = 3 === this.lookahead.type ? this.parseVariableIdentifier() : null, + n = null; + this.matchKeyword('extends') && + (this.nextToken(), + (n = this.isolateCoverGrammar(this.parseLeftHandSideExpressionAllowCall))); + var i = this.parseClassBody(); + return ( + (this.context.strict = t), this.finalize(e, new s.ClassExpression(r, n, i)) + ); + }), + (e.prototype.parseModule = function () { + (this.context.strict = !0), + (this.context.isModule = !0), + (this.scanner.isModule = !0); + for ( + var e = this.createNode(), t = this.parseDirectivePrologues(); + 2 !== this.lookahead.type; + + ) + t.push(this.parseStatementListItem()); + return this.finalize(e, new s.Module(t)); + }), + (e.prototype.parseScript = function () { + for ( + var e = this.createNode(), t = this.parseDirectivePrologues(); + 2 !== this.lookahead.type; + + ) + t.push(this.parseStatementListItem()); + return this.finalize(e, new s.Script(t)); + }), + (e.prototype.parseModuleSpecifier = function () { + var e = this.createNode(); + 8 !== this.lookahead.type && + this.throwError(o.Messages.InvalidModuleSpecifier); + var t = this.nextToken(), + r = this.getTokenRaw(t); + return this.finalize(e, new s.Literal(t.value, r)); + }), + (e.prototype.parseImportSpecifier = function () { + var e, + t, + r = this.createNode(); + return ( + 3 === this.lookahead.type + ? ((t = e = this.parseVariableIdentifier()), + this.matchContextualKeyword('as') && + (this.nextToken(), (t = this.parseVariableIdentifier()))) + : ((t = e = this.parseIdentifierName()), + this.matchContextualKeyword('as') + ? (this.nextToken(), (t = this.parseVariableIdentifier())) + : this.throwUnexpectedToken(this.nextToken())), + this.finalize(r, new s.ImportSpecifier(t, e)) + ); + }), + (e.prototype.parseNamedImports = function () { + this.expect('{'); + for (var e = []; !this.match('}'); ) + e.push(this.parseImportSpecifier()), this.match('}') || this.expect(','); + return this.expect('}'), e; + }), + (e.prototype.parseImportDefaultSpecifier = function () { + var e = this.createNode(), + t = this.parseIdentifierName(); + return this.finalize(e, new s.ImportDefaultSpecifier(t)); + }), + (e.prototype.parseImportNamespaceSpecifier = function () { + var e = this.createNode(); + this.expect('*'), + this.matchContextualKeyword('as') || + this.throwError(o.Messages.NoAsAfterImportNamespace), + this.nextToken(); + var t = this.parseIdentifierName(); + return this.finalize(e, new s.ImportNamespaceSpecifier(t)); + }), + (e.prototype.parseImportDeclaration = function () { + this.context.inFunctionBody && + this.throwError(o.Messages.IllegalImportDeclaration); + var e, + t = this.createNode(); + this.expectKeyword('import'); + var r = []; + if (8 === this.lookahead.type) e = this.parseModuleSpecifier(); + else { + if ( + (this.match('{') + ? (r = r.concat(this.parseNamedImports())) + : this.match('*') + ? r.push(this.parseImportNamespaceSpecifier()) + : this.isIdentifierName(this.lookahead) && !this.matchKeyword('default') + ? (r.push(this.parseImportDefaultSpecifier()), + this.match(',') && + (this.nextToken(), + this.match('*') + ? r.push(this.parseImportNamespaceSpecifier()) + : this.match('{') + ? (r = r.concat(this.parseNamedImports())) + : this.throwUnexpectedToken(this.lookahead))) + : this.throwUnexpectedToken(this.nextToken()), + !this.matchContextualKeyword('from')) + ) { + var n = this.lookahead.value + ? o.Messages.UnexpectedToken + : o.Messages.MissingFromClause; + this.throwError(n, this.lookahead.value); + } + this.nextToken(), (e = this.parseModuleSpecifier()); + } + return ( + this.consumeSemicolon(), this.finalize(t, new s.ImportDeclaration(r, e)) + ); + }), + (e.prototype.parseExportSpecifier = function () { + var e = this.createNode(), + t = this.parseIdentifierName(), + r = t; + return ( + this.matchContextualKeyword('as') && + (this.nextToken(), (r = this.parseIdentifierName())), + this.finalize(e, new s.ExportSpecifier(t, r)) + ); + }), + (e.prototype.parseExportDeclaration = function () { + this.context.inFunctionBody && + this.throwError(o.Messages.IllegalExportDeclaration); + var e, + t = this.createNode(); + if ((this.expectKeyword('export'), this.matchKeyword('default'))) + if ((this.nextToken(), this.matchKeyword('function'))) { + var r = this.parseFunctionDeclaration(!0); + e = this.finalize(t, new s.ExportDefaultDeclaration(r)); + } else + this.matchKeyword('class') + ? ((r = this.parseClassDeclaration(!0)), + (e = this.finalize(t, new s.ExportDefaultDeclaration(r)))) + : this.matchContextualKeyword('async') + ? ((r = this.matchAsyncFunction() + ? this.parseFunctionDeclaration(!0) + : this.parseAssignmentExpression()), + (e = this.finalize(t, new s.ExportDefaultDeclaration(r)))) + : (this.matchContextualKeyword('from') && + this.throwError(o.Messages.UnexpectedToken, this.lookahead.value), + (r = this.match('{') + ? this.parseObjectInitializer() + : this.match('[') + ? this.parseArrayInitializer() + : this.parseAssignmentExpression()), + this.consumeSemicolon(), + (e = this.finalize(t, new s.ExportDefaultDeclaration(r)))); + else if (this.match('*')) { + if ((this.nextToken(), !this.matchContextualKeyword('from'))) { + var n = this.lookahead.value + ? o.Messages.UnexpectedToken + : o.Messages.MissingFromClause; + this.throwError(n, this.lookahead.value); + } + this.nextToken(); + var i = this.parseModuleSpecifier(); + this.consumeSemicolon(), + (e = this.finalize(t, new s.ExportAllDeclaration(i))); + } else if (4 === this.lookahead.type) { + switch (((r = void 0), this.lookahead.value)) { + case 'let': + case 'const': + r = this.parseLexicalDeclaration({ inFor: !1 }); + break; + case 'var': + case 'class': + case 'function': + r = this.parseStatementListItem(); + break; + default: + this.throwUnexpectedToken(this.lookahead); + } + e = this.finalize(t, new s.ExportNamedDeclaration(r, [], null)); + } else if (this.matchAsyncFunction()) + (r = this.parseFunctionDeclaration()), + (e = this.finalize(t, new s.ExportNamedDeclaration(r, [], null))); + else { + var A = [], + a = null, + c = !1; + for (this.expect('{'); !this.match('}'); ) + (c = c || this.matchKeyword('default')), + A.push(this.parseExportSpecifier()), + this.match('}') || this.expect(','); + this.expect('}'), + this.matchContextualKeyword('from') + ? (this.nextToken(), + (a = this.parseModuleSpecifier()), + this.consumeSemicolon()) + : c + ? ((n = this.lookahead.value + ? o.Messages.UnexpectedToken + : o.Messages.MissingFromClause), + this.throwError(n, this.lookahead.value)) + : this.consumeSemicolon(), + (e = this.finalize(t, new s.ExportNamedDeclaration(null, A, a))); + } + return e; + }), + e + ); + })(); + t.Parser = u; + }, + function (e, t) { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }), + (t.assert = function (e, t) { + if (!e) throw new Error('ASSERT: ' + t); + }); + }, + function (e, t) { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + var r = (function () { + function e() { + (this.errors = []), (this.tolerant = !1); + } + return ( + (e.prototype.recordError = function (e) { + this.errors.push(e); + }), + (e.prototype.tolerate = function (e) { + if (!this.tolerant) throw e; + this.recordError(e); + }), + (e.prototype.constructError = function (e, t) { + var r = new Error(e); + try { + throw r; + } catch (e) { + Object.create && + Object.defineProperty && + ((r = Object.create(e)), Object.defineProperty(r, 'column', { value: t })); + } + return r; + }), + (e.prototype.createError = function (e, t, r, n) { + var i = 'Line ' + t + ': ' + n, + o = this.constructError(i, r); + return (o.index = e), (o.lineNumber = t), (o.description = n), o; + }), + (e.prototype.throwError = function (e, t, r, n) { + throw this.createError(e, t, r, n); + }), + (e.prototype.tolerateError = function (e, t, r, n) { + var i = this.createError(e, t, r, n); + if (!this.tolerant) throw i; + this.recordError(i); + }), + e + ); + })(); + t.ErrorHandler = r; + }, + function (e, t) { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }), + (t.Messages = { + BadGetterArity: 'Getter must not have any formal parameters', + BadSetterArity: 'Setter must have exactly one formal parameter', + BadSetterRestParameter: 'Setter function argument must not be a rest parameter', + ConstructorIsAsync: 'Class constructor may not be an async method', + ConstructorSpecialMethod: 'Class constructor may not be an accessor', + DeclarationMissingInitializer: 'Missing initializer in %0 declaration', + DefaultRestParameter: 'Unexpected token =', + DuplicateBinding: 'Duplicate binding %0', + DuplicateConstructor: 'A class may only have one constructor', + DuplicateProtoProperty: + 'Duplicate __proto__ fields are not allowed in object literals', + ForInOfLoopInitializer: + '%0 loop variable declaration may not have an initializer', + GeneratorInLegacyContext: + 'Generator declarations are not allowed in legacy contexts', + IllegalBreak: 'Illegal break statement', + IllegalContinue: 'Illegal continue statement', + IllegalExportDeclaration: 'Unexpected token', + IllegalImportDeclaration: 'Unexpected token', + IllegalLanguageModeDirective: + "Illegal 'use strict' directive in function with non-simple parameter list", + IllegalReturn: 'Illegal return statement', + InvalidEscapedReservedWord: 'Keyword must not contain escaped characters', + InvalidHexEscapeSequence: 'Invalid hexadecimal escape sequence', + InvalidLHSInAssignment: 'Invalid left-hand side in assignment', + InvalidLHSInForIn: 'Invalid left-hand side in for-in', + InvalidLHSInForLoop: 'Invalid left-hand side in for-loop', + InvalidModuleSpecifier: 'Unexpected token', + InvalidRegExp: 'Invalid regular expression', + LetInLexicalBinding: 'let is disallowed as a lexically bound name', + MissingFromClause: 'Unexpected token', + MultipleDefaultsInSwitch: 'More than one default clause in switch statement', + NewlineAfterThrow: 'Illegal newline after throw', + NoAsAfterImportNamespace: 'Unexpected token', + NoCatchOrFinally: 'Missing catch or finally after try', + ParameterAfterRestParameter: 'Rest parameter must be last formal parameter', + Redeclaration: "%0 '%1' has already been declared", + StaticPrototype: 'Classes may not have static property named prototype', + StrictCatchVariable: 'Catch variable may not be eval or arguments in strict mode', + StrictDelete: 'Delete of an unqualified identifier in strict mode.', + StrictFunction: + 'In strict mode code, functions can only be declared at top level or inside a block', + StrictFunctionName: 'Function name may not be eval or arguments in strict mode', + StrictLHSAssignment: + 'Assignment to eval or arguments is not allowed in strict mode', + StrictLHSPostfix: + 'Postfix increment/decrement may not have eval or arguments operand in strict mode', + StrictLHSPrefix: + 'Prefix increment/decrement may not have eval or arguments operand in strict mode', + StrictModeWith: 'Strict mode code may not include a with statement', + StrictOctalLiteral: 'Octal literals are not allowed in strict mode.', + StrictParamDupe: 'Strict mode function may not have duplicate parameter names', + StrictParamName: 'Parameter name eval or arguments is not allowed in strict mode', + StrictReservedWord: 'Use of future reserved word in strict mode', + StrictVarName: 'Variable name may not be eval or arguments in strict mode', + TemplateOctalLiteral: 'Octal literals are not allowed in template strings.', + UnexpectedEOS: 'Unexpected end of input', + UnexpectedIdentifier: 'Unexpected identifier', + UnexpectedNumber: 'Unexpected number', + UnexpectedReserved: 'Unexpected reserved word', + UnexpectedString: 'Unexpected string', + UnexpectedTemplate: 'Unexpected quasi %0', + UnexpectedToken: 'Unexpected token %0', + UnexpectedTokenIllegal: 'Unexpected token ILLEGAL', + UnknownLabel: "Undefined label '%0'", + UnterminatedRegExp: 'Invalid regular expression: missing /', + }); + }, + function (e, t, r) { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + var n = r(9), + i = r(4), + o = r(11); + function s(e) { + return '0123456789abcdef'.indexOf(e.toLowerCase()); + } + function A(e) { + return '01234567'.indexOf(e); + } + var a = (function () { + function e(e, t) { + (this.source = e), + (this.errorHandler = t), + (this.trackComment = !1), + (this.isModule = !1), + (this.length = e.length), + (this.index = 0), + (this.lineNumber = e.length > 0 ? 1 : 0), + (this.lineStart = 0), + (this.curlyStack = []); + } + return ( + (e.prototype.saveState = function () { + return { + index: this.index, + lineNumber: this.lineNumber, + lineStart: this.lineStart, + }; + }), + (e.prototype.restoreState = function (e) { + (this.index = e.index), + (this.lineNumber = e.lineNumber), + (this.lineStart = e.lineStart); + }), + (e.prototype.eof = function () { + return this.index >= this.length; + }), + (e.prototype.throwUnexpectedToken = function (e) { + return ( + void 0 === e && (e = o.Messages.UnexpectedTokenIllegal), + this.errorHandler.throwError( + this.index, + this.lineNumber, + this.index - this.lineStart + 1, + e + ) + ); + }), + (e.prototype.tolerateUnexpectedToken = function (e) { + void 0 === e && (e = o.Messages.UnexpectedTokenIllegal), + this.errorHandler.tolerateError( + this.index, + this.lineNumber, + this.index - this.lineStart + 1, + e + ); + }), + (e.prototype.skipSingleLineComment = function (e) { + var t, + r, + n = []; + for ( + this.trackComment && + ((n = []), + (t = this.index - e), + (r = { + start: { line: this.lineNumber, column: this.index - this.lineStart - e }, + end: {}, + })); + !this.eof(); + + ) { + var o = this.source.charCodeAt(this.index); + if ((++this.index, i.Character.isLineTerminator(o))) { + if (this.trackComment) { + r.end = { + line: this.lineNumber, + column: this.index - this.lineStart - 1, + }; + var s = { + multiLine: !1, + slice: [t + e, this.index - 1], + range: [t, this.index - 1], + loc: r, + }; + n.push(s); + } + return ( + 13 === o && 10 === this.source.charCodeAt(this.index) && ++this.index, + ++this.lineNumber, + (this.lineStart = this.index), + n + ); + } + } + return ( + this.trackComment && + ((r.end = { line: this.lineNumber, column: this.index - this.lineStart }), + (s = { + multiLine: !1, + slice: [t + e, this.index], + range: [t, this.index], + loc: r, + }), + n.push(s)), + n + ); + }), + (e.prototype.skipMultiLineComment = function () { + var e, + t, + r = []; + for ( + this.trackComment && + ((r = []), + (e = this.index - 2), + (t = { + start: { line: this.lineNumber, column: this.index - this.lineStart - 2 }, + end: {}, + })); + !this.eof(); + + ) { + var n = this.source.charCodeAt(this.index); + if (i.Character.isLineTerminator(n)) + 13 === n && 10 === this.source.charCodeAt(this.index + 1) && ++this.index, + ++this.lineNumber, + ++this.index, + (this.lineStart = this.index); + else if (42 === n) { + if (47 === this.source.charCodeAt(this.index + 1)) { + if (((this.index += 2), this.trackComment)) { + t.end = { line: this.lineNumber, column: this.index - this.lineStart }; + var o = { + multiLine: !0, + slice: [e + 2, this.index - 2], + range: [e, this.index], + loc: t, + }; + r.push(o); + } + return r; + } + ++this.index; + } else ++this.index; + } + return ( + this.trackComment && + ((t.end = { line: this.lineNumber, column: this.index - this.lineStart }), + (o = { + multiLine: !0, + slice: [e + 2, this.index], + range: [e, this.index], + loc: t, + }), + r.push(o)), + this.tolerateUnexpectedToken(), + r + ); + }), + (e.prototype.scanComments = function () { + var e; + this.trackComment && (e = []); + for (var t = 0 === this.index; !this.eof(); ) { + var r = this.source.charCodeAt(this.index); + if (i.Character.isWhiteSpace(r)) ++this.index; + else if (i.Character.isLineTerminator(r)) + ++this.index, + 13 === r && 10 === this.source.charCodeAt(this.index) && ++this.index, + ++this.lineNumber, + (this.lineStart = this.index), + (t = !0); + else if (47 === r) + if (47 === (r = this.source.charCodeAt(this.index + 1))) { + this.index += 2; + var n = this.skipSingleLineComment(2); + this.trackComment && (e = e.concat(n)), (t = !0); + } else { + if (42 !== r) break; + (this.index += 2), + (n = this.skipMultiLineComment()), + this.trackComment && (e = e.concat(n)); + } + else if (t && 45 === r) { + if ( + 45 !== this.source.charCodeAt(this.index + 1) || + 62 !== this.source.charCodeAt(this.index + 2) + ) + break; + (this.index += 3), + (n = this.skipSingleLineComment(3)), + this.trackComment && (e = e.concat(n)); + } else { + if (60 !== r || this.isModule) break; + if ('!--' !== this.source.slice(this.index + 1, this.index + 4)) break; + (this.index += 4), + (n = this.skipSingleLineComment(4)), + this.trackComment && (e = e.concat(n)); + } + } + return e; + }), + (e.prototype.isFutureReservedWord = function (e) { + switch (e) { + case 'enum': + case 'export': + case 'import': + case 'super': + return !0; + default: + return !1; + } + }), + (e.prototype.isStrictModeReservedWord = function (e) { + switch (e) { + case 'implements': + case 'interface': + case 'package': + case 'private': + case 'protected': + case 'public': + case 'static': + case 'yield': + case 'let': + return !0; + default: + return !1; + } + }), + (e.prototype.isRestrictedWord = function (e) { + return 'eval' === e || 'arguments' === e; + }), + (e.prototype.isKeyword = function (e) { + switch (e.length) { + case 2: + return 'if' === e || 'in' === e || 'do' === e; + case 3: + return ( + 'var' === e || 'for' === e || 'new' === e || 'try' === e || 'let' === e + ); + case 4: + return ( + 'this' === e || + 'else' === e || + 'case' === e || + 'void' === e || + 'with' === e || + 'enum' === e + ); + case 5: + return ( + 'while' === e || + 'break' === e || + 'catch' === e || + 'throw' === e || + 'const' === e || + 'yield' === e || + 'class' === e || + 'super' === e + ); + case 6: + return ( + 'return' === e || + 'typeof' === e || + 'delete' === e || + 'switch' === e || + 'export' === e || + 'import' === e + ); + case 7: + return 'default' === e || 'finally' === e || 'extends' === e; + case 8: + return 'function' === e || 'continue' === e || 'debugger' === e; + case 10: + return 'instanceof' === e; + default: + return !1; + } + }), + (e.prototype.codePointAt = function (e) { + var t = this.source.charCodeAt(e); + if (t >= 55296 && t <= 56319) { + var r = this.source.charCodeAt(e + 1); + r >= 56320 && r <= 57343 && (t = 1024 * (t - 55296) + r - 56320 + 65536); + } + return t; + }), + (e.prototype.scanHexEscape = function (e) { + for (var t = 'u' === e ? 4 : 2, r = 0, n = 0; n < t; ++n) { + if (this.eof() || !i.Character.isHexDigit(this.source.charCodeAt(this.index))) + return null; + r = 16 * r + s(this.source[this.index++]); + } + return String.fromCharCode(r); + }), + (e.prototype.scanUnicodeCodePointEscape = function () { + var e = this.source[this.index], + t = 0; + for ( + '}' === e && this.throwUnexpectedToken(); + !this.eof() && + ((e = this.source[this.index++]), i.Character.isHexDigit(e.charCodeAt(0))); + + ) + t = 16 * t + s(e); + return ( + (t > 1114111 || '}' !== e) && this.throwUnexpectedToken(), + i.Character.fromCodePoint(t) + ); + }), + (e.prototype.getIdentifier = function () { + for (var e = this.index++; !this.eof(); ) { + var t = this.source.charCodeAt(this.index); + if (92 === t) return (this.index = e), this.getComplexIdentifier(); + if (t >= 55296 && t < 57343) + return (this.index = e), this.getComplexIdentifier(); + if (!i.Character.isIdentifierPart(t)) break; + ++this.index; + } + return this.source.slice(e, this.index); + }), + (e.prototype.getComplexIdentifier = function () { + var e, + t = this.codePointAt(this.index), + r = i.Character.fromCodePoint(t); + for ( + this.index += r.length, + 92 === t && + (117 !== this.source.charCodeAt(this.index) && + this.throwUnexpectedToken(), + ++this.index, + '{' === this.source[this.index] + ? (++this.index, (e = this.scanUnicodeCodePointEscape())) + : (null !== (e = this.scanHexEscape('u')) && + '\\' !== e && + i.Character.isIdentifierStart(e.charCodeAt(0))) || + this.throwUnexpectedToken(), + (r = e)); + !this.eof() && + ((t = this.codePointAt(this.index)), i.Character.isIdentifierPart(t)); + + ) + (r += e = i.Character.fromCodePoint(t)), + (this.index += e.length), + 92 === t && + ((r = r.substr(0, r.length - 1)), + 117 !== this.source.charCodeAt(this.index) && this.throwUnexpectedToken(), + ++this.index, + '{' === this.source[this.index] + ? (++this.index, (e = this.scanUnicodeCodePointEscape())) + : (null !== (e = this.scanHexEscape('u')) && + '\\' !== e && + i.Character.isIdentifierPart(e.charCodeAt(0))) || + this.throwUnexpectedToken(), + (r += e)); + return r; + }), + (e.prototype.octalToDecimal = function (e) { + var t = '0' !== e, + r = A(e); + return ( + !this.eof() && + i.Character.isOctalDigit(this.source.charCodeAt(this.index)) && + ((t = !0), + (r = 8 * r + A(this.source[this.index++])), + '0123'.indexOf(e) >= 0 && + !this.eof() && + i.Character.isOctalDigit(this.source.charCodeAt(this.index)) && + (r = 8 * r + A(this.source[this.index++]))), + { code: r, octal: t } + ); + }), + (e.prototype.scanIdentifier = function () { + var e, + t = this.index, + r = + 92 === this.source.charCodeAt(t) + ? this.getComplexIdentifier() + : this.getIdentifier(); + if ( + 3 != + (e = + 1 === r.length + ? 3 + : this.isKeyword(r) + ? 4 + : 'null' === r + ? 5 + : 'true' === r || 'false' === r + ? 1 + : 3) && + t + r.length !== this.index + ) { + var n = this.index; + (this.index = t), + this.tolerateUnexpectedToken(o.Messages.InvalidEscapedReservedWord), + (this.index = n); + } + return { + type: e, + value: r, + lineNumber: this.lineNumber, + lineStart: this.lineStart, + start: t, + end: this.index, + }; + }), + (e.prototype.scanPunctuator = function () { + var e = this.index, + t = this.source[this.index]; + switch (t) { + case '(': + case '{': + '{' === t && this.curlyStack.push('{'), ++this.index; + break; + case '.': + ++this.index, + '.' === this.source[this.index] && + '.' === this.source[this.index + 1] && + ((this.index += 2), (t = '...')); + break; + case '}': + ++this.index, this.curlyStack.pop(); + break; + case ')': + case ';': + case ',': + case '[': + case ']': + case ':': + case '?': + case '~': + ++this.index; + break; + default: + '>>>=' === (t = this.source.substr(this.index, 4)) + ? (this.index += 4) + : '===' === (t = t.substr(0, 3)) || + '!==' === t || + '>>>' === t || + '<<=' === t || + '>>=' === t || + '**=' === t + ? (this.index += 3) + : '&&' === (t = t.substr(0, 2)) || + '||' === t || + '==' === t || + '!=' === t || + '+=' === t || + '-=' === t || + '*=' === t || + '/=' === t || + '++' === t || + '--' === t || + '<<' === t || + '>>' === t || + '&=' === t || + '|=' === t || + '^=' === t || + '%=' === t || + '<=' === t || + '>=' === t || + '=>' === t || + '**' === t + ? (this.index += 2) + : ((t = this.source[this.index]), + '<>=!+-*%&|^/'.indexOf(t) >= 0 && ++this.index); + } + return ( + this.index === e && this.throwUnexpectedToken(), + { + type: 7, + value: t, + lineNumber: this.lineNumber, + lineStart: this.lineStart, + start: e, + end: this.index, + } + ); + }), + (e.prototype.scanHexLiteral = function (e) { + for ( + var t = ''; + !this.eof() && i.Character.isHexDigit(this.source.charCodeAt(this.index)); + + ) + t += this.source[this.index++]; + return ( + 0 === t.length && this.throwUnexpectedToken(), + i.Character.isIdentifierStart(this.source.charCodeAt(this.index)) && + this.throwUnexpectedToken(), + { + type: 6, + value: parseInt('0x' + t, 16), + lineNumber: this.lineNumber, + lineStart: this.lineStart, + start: e, + end: this.index, + } + ); + }), + (e.prototype.scanBinaryLiteral = function (e) { + for ( + var t, r = ''; + !this.eof() && ('0' === (t = this.source[this.index]) || '1' === t); + + ) + r += this.source[this.index++]; + return ( + 0 === r.length && this.throwUnexpectedToken(), + this.eof() || + ((t = this.source.charCodeAt(this.index)), + (i.Character.isIdentifierStart(t) || i.Character.isDecimalDigit(t)) && + this.throwUnexpectedToken()), + { + type: 6, + value: parseInt(r, 2), + lineNumber: this.lineNumber, + lineStart: this.lineStart, + start: e, + end: this.index, + } + ); + }), + (e.prototype.scanOctalLiteral = function (e, t) { + var r = '', + n = !1; + for ( + i.Character.isOctalDigit(e.charCodeAt(0)) + ? ((n = !0), (r = '0' + this.source[this.index++])) + : ++this.index; + !this.eof() && i.Character.isOctalDigit(this.source.charCodeAt(this.index)); + + ) + r += this.source[this.index++]; + return ( + n || 0 !== r.length || this.throwUnexpectedToken(), + (i.Character.isIdentifierStart(this.source.charCodeAt(this.index)) || + i.Character.isDecimalDigit(this.source.charCodeAt(this.index))) && + this.throwUnexpectedToken(), + { + type: 6, + value: parseInt(r, 8), + octal: n, + lineNumber: this.lineNumber, + lineStart: this.lineStart, + start: t, + end: this.index, + } + ); + }), + (e.prototype.isImplicitOctalLiteral = function () { + for (var e = this.index + 1; e < this.length; ++e) { + var t = this.source[e]; + if ('8' === t || '9' === t) return !1; + if (!i.Character.isOctalDigit(t.charCodeAt(0))) return !0; + } + return !0; + }), + (e.prototype.scanNumericLiteral = function () { + var e = this.index, + t = this.source[e]; + n.assert( + i.Character.isDecimalDigit(t.charCodeAt(0)) || '.' === t, + 'Numeric literal must start with a decimal digit or a decimal point' + ); + var r = ''; + if ('.' !== t) { + if ( + ((r = this.source[this.index++]), (t = this.source[this.index]), '0' === r) + ) { + if ('x' === t || 'X' === t) return ++this.index, this.scanHexLiteral(e); + if ('b' === t || 'B' === t) return ++this.index, this.scanBinaryLiteral(e); + if ('o' === t || 'O' === t) return this.scanOctalLiteral(t, e); + if ( + t && + i.Character.isOctalDigit(t.charCodeAt(0)) && + this.isImplicitOctalLiteral() + ) + return this.scanOctalLiteral(t, e); + } + for (; i.Character.isDecimalDigit(this.source.charCodeAt(this.index)); ) + r += this.source[this.index++]; + t = this.source[this.index]; + } + if ('.' === t) { + for ( + r += this.source[this.index++]; + i.Character.isDecimalDigit(this.source.charCodeAt(this.index)); + + ) + r += this.source[this.index++]; + t = this.source[this.index]; + } + if ('e' === t || 'E' === t) + if ( + ((r += this.source[this.index++]), + ('+' !== (t = this.source[this.index]) && '-' !== t) || + (r += this.source[this.index++]), + i.Character.isDecimalDigit(this.source.charCodeAt(this.index))) + ) + for (; i.Character.isDecimalDigit(this.source.charCodeAt(this.index)); ) + r += this.source[this.index++]; + else this.throwUnexpectedToken(); + return ( + i.Character.isIdentifierStart(this.source.charCodeAt(this.index)) && + this.throwUnexpectedToken(), + { + type: 6, + value: parseFloat(r), + lineNumber: this.lineNumber, + lineStart: this.lineStart, + start: e, + end: this.index, + } + ); + }), + (e.prototype.scanStringLiteral = function () { + var e = this.index, + t = this.source[e]; + n.assert("'" === t || '"' === t, 'String literal must starts with a quote'), + ++this.index; + for (var r = !1, s = ''; !this.eof(); ) { + var A = this.source[this.index++]; + if (A === t) { + t = ''; + break; + } + if ('\\' === A) + if ( + (A = this.source[this.index++]) && + i.Character.isLineTerminator(A.charCodeAt(0)) + ) + ++this.lineNumber, + '\r' === A && '\n' === this.source[this.index] && ++this.index, + (this.lineStart = this.index); + else + switch (A) { + case 'u': + if ('{' === this.source[this.index]) + ++this.index, (s += this.scanUnicodeCodePointEscape()); + else { + var a = this.scanHexEscape(A); + null === a && this.throwUnexpectedToken(), (s += a); + } + break; + case 'x': + var c = this.scanHexEscape(A); + null === c && + this.throwUnexpectedToken(o.Messages.InvalidHexEscapeSequence), + (s += c); + break; + case 'n': + s += '\n'; + break; + case 'r': + s += '\r'; + break; + case 't': + s += '\t'; + break; + case 'b': + s += '\b'; + break; + case 'f': + s += '\f'; + break; + case 'v': + s += '\v'; + break; + case '8': + case '9': + (s += A), this.tolerateUnexpectedToken(); + break; + default: + if (A && i.Character.isOctalDigit(A.charCodeAt(0))) { + var u = this.octalToDecimal(A); + (r = u.octal || r), (s += String.fromCharCode(u.code)); + } else s += A; + } + else { + if (i.Character.isLineTerminator(A.charCodeAt(0))) break; + s += A; + } + } + return ( + '' !== t && ((this.index = e), this.throwUnexpectedToken()), + { + type: 8, + value: s, + octal: r, + lineNumber: this.lineNumber, + lineStart: this.lineStart, + start: e, + end: this.index, + } + ); + }), + (e.prototype.scanTemplate = function () { + var e = '', + t = !1, + r = this.index, + n = '`' === this.source[r], + s = !1, + A = 2; + for (++this.index; !this.eof(); ) { + var a = this.source[this.index++]; + if ('`' === a) { + (A = 1), (s = !0), (t = !0); + break; + } + if ('$' === a) { + if ('{' === this.source[this.index]) { + this.curlyStack.push('${'), ++this.index, (t = !0); + break; + } + e += a; + } else if ('\\' === a) + if ( + ((a = this.source[this.index++]), + i.Character.isLineTerminator(a.charCodeAt(0))) + ) + ++this.lineNumber, + '\r' === a && '\n' === this.source[this.index] && ++this.index, + (this.lineStart = this.index); + else + switch (a) { + case 'n': + e += '\n'; + break; + case 'r': + e += '\r'; + break; + case 't': + e += '\t'; + break; + case 'u': + if ('{' === this.source[this.index]) + ++this.index, (e += this.scanUnicodeCodePointEscape()); + else { + var c = this.index, + u = this.scanHexEscape(a); + null !== u ? (e += u) : ((this.index = c), (e += a)); + } + break; + case 'x': + var l = this.scanHexEscape(a); + null === l && + this.throwUnexpectedToken(o.Messages.InvalidHexEscapeSequence), + (e += l); + break; + case 'b': + e += '\b'; + break; + case 'f': + e += '\f'; + break; + case 'v': + e += '\v'; + break; + default: + '0' === a + ? (i.Character.isDecimalDigit(this.source.charCodeAt(this.index)) && + this.throwUnexpectedToken(o.Messages.TemplateOctalLiteral), + (e += '\0')) + : i.Character.isOctalDigit(a.charCodeAt(0)) + ? this.throwUnexpectedToken(o.Messages.TemplateOctalLiteral) + : (e += a); + } + else + i.Character.isLineTerminator(a.charCodeAt(0)) + ? (++this.lineNumber, + '\r' === a && '\n' === this.source[this.index] && ++this.index, + (this.lineStart = this.index), + (e += '\n')) + : (e += a); + } + return ( + t || this.throwUnexpectedToken(), + n || this.curlyStack.pop(), + { + type: 10, + value: this.source.slice(r + 1, this.index - A), + cooked: e, + head: n, + tail: s, + lineNumber: this.lineNumber, + lineStart: this.lineStart, + start: r, + end: this.index, + } + ); + }), + (e.prototype.testRegExp = function (e, t) { + var r = e, + n = this; + t.indexOf('u') >= 0 && + (r = r + .replace(/\\u\{([0-9a-fA-F]+)\}|\\u([a-fA-F0-9]{4})/g, function (e, t, r) { + var i = parseInt(t || r, 16); + return ( + i > 1114111 && n.throwUnexpectedToken(o.Messages.InvalidRegExp), + i <= 65535 ? String.fromCharCode(i) : '￿' + ); + }) + .replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g, '￿')); + try { + RegExp(r); + } catch (e) { + this.throwUnexpectedToken(o.Messages.InvalidRegExp); + } + try { + return new RegExp(e, t); + } catch (e) { + return null; + } + }), + (e.prototype.scanRegExpBody = function () { + var e = this.source[this.index]; + n.assert('/' === e, 'Regular expression literal must start with a slash'); + for (var t = this.source[this.index++], r = !1, s = !1; !this.eof(); ) + if (((t += e = this.source[this.index++]), '\\' === e)) + (e = this.source[this.index++]), + i.Character.isLineTerminator(e.charCodeAt(0)) && + this.throwUnexpectedToken(o.Messages.UnterminatedRegExp), + (t += e); + else if (i.Character.isLineTerminator(e.charCodeAt(0))) + this.throwUnexpectedToken(o.Messages.UnterminatedRegExp); + else if (r) ']' === e && (r = !1); + else { + if ('/' === e) { + s = !0; + break; + } + '[' === e && (r = !0); + } + return ( + s || this.throwUnexpectedToken(o.Messages.UnterminatedRegExp), + t.substr(1, t.length - 2) + ); + }), + (e.prototype.scanRegExpFlags = function () { + for (var e = ''; !this.eof(); ) { + var t = this.source[this.index]; + if (!i.Character.isIdentifierPart(t.charCodeAt(0))) break; + if ((++this.index, '\\' !== t || this.eof())) e += t; + else if ('u' === (t = this.source[this.index])) { + ++this.index; + var r = this.index, + n = this.scanHexEscape('u'); + if (null !== n) for (e += n; r < this.index; ++r) this.source[r]; + else (this.index = r), (e += 'u'); + this.tolerateUnexpectedToken(); + } else this.tolerateUnexpectedToken(); + } + return e; + }), + (e.prototype.scanRegExp = function () { + var e = this.index, + t = this.scanRegExpBody(), + r = this.scanRegExpFlags(); + return { + type: 9, + value: '', + pattern: t, + flags: r, + regex: this.testRegExp(t, r), + lineNumber: this.lineNumber, + lineStart: this.lineStart, + start: e, + end: this.index, + }; + }), + (e.prototype.lex = function () { + if (this.eof()) + return { + type: 2, + value: '', + lineNumber: this.lineNumber, + lineStart: this.lineStart, + start: this.index, + end: this.index, + }; + var e = this.source.charCodeAt(this.index); + return i.Character.isIdentifierStart(e) + ? this.scanIdentifier() + : 40 === e || 41 === e || 59 === e + ? this.scanPunctuator() + : 39 === e || 34 === e + ? this.scanStringLiteral() + : 46 === e + ? i.Character.isDecimalDigit(this.source.charCodeAt(this.index + 1)) + ? this.scanNumericLiteral() + : this.scanPunctuator() + : i.Character.isDecimalDigit(e) + ? this.scanNumericLiteral() + : 96 === e || + (125 === e && '${' === this.curlyStack[this.curlyStack.length - 1]) + ? this.scanTemplate() + : e >= 55296 && + e < 57343 && + i.Character.isIdentifierStart(this.codePointAt(this.index)) + ? this.scanIdentifier() + : this.scanPunctuator(); + }), + e + ); + })(); + t.Scanner = a; + }, + function (e, t) { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }), + (t.TokenName = {}), + (t.TokenName[1] = 'Boolean'), + (t.TokenName[2] = ''), + (t.TokenName[3] = 'Identifier'), + (t.TokenName[4] = 'Keyword'), + (t.TokenName[5] = 'Null'), + (t.TokenName[6] = 'Numeric'), + (t.TokenName[7] = 'Punctuator'), + (t.TokenName[8] = 'String'), + (t.TokenName[9] = 'RegularExpression'), + (t.TokenName[10] = 'Template'); + }, + function (e, t) { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }), + (t.XHTMLEntities = { + quot: '"', + amp: '&', + apos: "'", + gt: '>', + nbsp: ' ', + iexcl: '¡', + cent: '¢', + pound: '£', + curren: '¤', + yen: '¥', + brvbar: '¦', + sect: '§', + uml: '¨', + copy: '©', + ordf: 'ª', + laquo: '«', + not: '¬', + shy: '­', + reg: '®', + macr: '¯', + deg: '°', + plusmn: '±', + sup2: '²', + sup3: '³', + acute: '´', + micro: 'µ', + para: '¶', + middot: '·', + cedil: '¸', + sup1: '¹', + ordm: 'º', + raquo: '»', + frac14: '¼', + frac12: '½', + frac34: '¾', + iquest: '¿', + Agrave: 'À', + Aacute: 'Á', + Acirc: 'Â', + Atilde: 'Ã', + Auml: 'Ä', + Aring: 'Å', + AElig: 'Æ', + Ccedil: 'Ç', + Egrave: 'È', + Eacute: 'É', + Ecirc: 'Ê', + Euml: 'Ë', + Igrave: 'Ì', + Iacute: 'Í', + Icirc: 'Î', + Iuml: 'Ï', + ETH: 'Ð', + Ntilde: 'Ñ', + Ograve: 'Ò', + Oacute: 'Ó', + Ocirc: 'Ô', + Otilde: 'Õ', + Ouml: 'Ö', + times: '×', + Oslash: 'Ø', + Ugrave: 'Ù', + Uacute: 'Ú', + Ucirc: 'Û', + Uuml: 'Ü', + Yacute: 'Ý', + THORN: 'Þ', + szlig: 'ß', + agrave: 'à', + aacute: 'á', + acirc: 'â', + atilde: 'ã', + auml: 'ä', + aring: 'å', + aelig: 'æ', + ccedil: 'ç', + egrave: 'è', + eacute: 'é', + ecirc: 'ê', + euml: 'ë', + igrave: 'ì', + iacute: 'í', + icirc: 'î', + iuml: 'ï', + eth: 'ð', + ntilde: 'ñ', + ograve: 'ò', + oacute: 'ó', + ocirc: 'ô', + otilde: 'õ', + ouml: 'ö', + divide: '÷', + oslash: 'ø', + ugrave: 'ù', + uacute: 'ú', + ucirc: 'û', + uuml: 'ü', + yacute: 'ý', + thorn: 'þ', + yuml: 'ÿ', + OElig: 'Œ', + oelig: 'œ', + Scaron: 'Š', + scaron: 'š', + Yuml: 'Ÿ', + fnof: 'ƒ', + circ: 'ˆ', + tilde: '˜', + Alpha: 'Α', + Beta: 'Β', + Gamma: 'Γ', + Delta: 'Δ', + Epsilon: 'Ε', + Zeta: 'Ζ', + Eta: 'Η', + Theta: 'Θ', + Iota: 'Ι', + Kappa: 'Κ', + Lambda: 'Λ', + Mu: 'Μ', + Nu: 'Ν', + Xi: 'Ξ', + Omicron: 'Ο', + Pi: 'Π', + Rho: 'Ρ', + Sigma: 'Σ', + Tau: 'Τ', + Upsilon: 'Υ', + Phi: 'Φ', + Chi: 'Χ', + Psi: 'Ψ', + Omega: 'Ω', + alpha: 'α', + beta: 'β', + gamma: 'γ', + delta: 'δ', + epsilon: 'ε', + zeta: 'ζ', + eta: 'η', + theta: 'θ', + iota: 'ι', + kappa: 'κ', + lambda: 'λ', + mu: 'μ', + nu: 'ν', + xi: 'ξ', + omicron: 'ο', + pi: 'π', + rho: 'ρ', + sigmaf: 'ς', + sigma: 'σ', + tau: 'τ', + upsilon: 'υ', + phi: 'φ', + chi: 'χ', + psi: 'ψ', + omega: 'ω', + thetasym: 'ϑ', + upsih: 'ϒ', + piv: 'ϖ', + ensp: ' ', + emsp: ' ', + thinsp: ' ', + zwnj: '‌', + zwj: '‍', + lrm: '‎', + rlm: '‏', + ndash: '–', + mdash: '—', + lsquo: '‘', + rsquo: '’', + sbquo: '‚', + ldquo: '“', + rdquo: '”', + bdquo: '„', + dagger: '†', + Dagger: '‡', + bull: '•', + hellip: '…', + permil: '‰', + prime: '′', + Prime: '″', + lsaquo: '‹', + rsaquo: '›', + oline: '‾', + frasl: '⁄', + euro: '€', + image: 'ℑ', + weierp: '℘', + real: 'ℜ', + trade: '™', + alefsym: 'ℵ', + larr: '←', + uarr: '↑', + rarr: '→', + darr: '↓', + harr: '↔', + crarr: '↵', + lArr: '⇐', + uArr: '⇑', + rArr: '⇒', + dArr: '⇓', + hArr: '⇔', + forall: '∀', + part: '∂', + exist: '∃', + empty: '∅', + nabla: '∇', + isin: '∈', + notin: '∉', + ni: '∋', + prod: '∏', + sum: '∑', + minus: '−', + lowast: '∗', + radic: '√', + prop: '∝', + infin: '∞', + ang: '∠', + and: '∧', + or: '∨', + cap: '∩', + cup: '∪', + int: '∫', + there4: '∴', + sim: '∼', + cong: '≅', + asymp: '≈', + ne: '≠', + equiv: '≡', + le: '≤', + ge: '≥', + sub: '⊂', + sup: '⊃', + nsub: '⊄', + sube: '⊆', + supe: '⊇', + oplus: '⊕', + otimes: '⊗', + perp: '⊥', + sdot: '⋅', + lceil: '⌈', + rceil: '⌉', + lfloor: '⌊', + rfloor: '⌋', + loz: '◊', + spades: '♠', + clubs: '♣', + hearts: '♥', + diams: '♦', + lang: '⟨', + rang: '⟩', + }); + }, + function (e, t, r) { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + var n = r(10), + i = r(12), + o = r(13), + s = (function () { + function e() { + (this.values = []), (this.curly = this.paren = -1); + } + return ( + (e.prototype.beforeFunctionExpression = function (e) { + return ( + [ + '(', + '{', + '[', + 'in', + 'typeof', + 'instanceof', + 'new', + 'return', + 'case', + 'delete', + 'throw', + 'void', + '=', + '+=', + '-=', + '*=', + '**=', + '/=', + '%=', + '<<=', + '>>=', + '>>>=', + '&=', + '|=', + '^=', + ',', + '+', + '-', + '*', + '**', + '/', + '%', + '++', + '--', + '<<', + '>>', + '>>>', + '&', + '|', + '^', + '!', + '~', + '&&', + '||', + '?', + ':', + '===', + '==', + '>=', + '<=', + '<', + '>', + '!=', + '!==', + ].indexOf(e) >= 0 + ); + }), + (e.prototype.isRegexStart = function () { + var e = this.values[this.values.length - 1], + t = null !== e; + switch (e) { + case 'this': + case ']': + t = !1; + break; + case ')': + var r = this.values[this.paren - 1]; + t = 'if' === r || 'while' === r || 'for' === r || 'with' === r; + break; + case '}': + if (((t = !1), 'function' === this.values[this.curly - 3])) + t = + !!(n = this.values[this.curly - 4]) && + !this.beforeFunctionExpression(n); + else if ('function' === this.values[this.curly - 4]) { + var n; + t = + !(n = this.values[this.curly - 5]) || + !this.beforeFunctionExpression(n); + } + } + return t; + }), + (e.prototype.push = function (e) { + 7 === e.type || 4 === e.type + ? ('{' === e.value + ? (this.curly = this.values.length) + : '(' === e.value && (this.paren = this.values.length), + this.values.push(e.value)) + : this.values.push(null); + }), + e + ); + })(), + A = (function () { + function e(e, t) { + (this.errorHandler = new n.ErrorHandler()), + (this.errorHandler.tolerant = + !!t && 'boolean' == typeof t.tolerant && t.tolerant), + (this.scanner = new i.Scanner(e, this.errorHandler)), + (this.scanner.trackComment = + !!t && 'boolean' == typeof t.comment && t.comment), + (this.trackRange = !!t && 'boolean' == typeof t.range && t.range), + (this.trackLoc = !!t && 'boolean' == typeof t.loc && t.loc), + (this.buffer = []), + (this.reader = new s()); + } + return ( + (e.prototype.errors = function () { + return this.errorHandler.errors; + }), + (e.prototype.getNextToken = function () { + if (0 === this.buffer.length) { + var e = this.scanner.scanComments(); + if (this.scanner.trackComment) + for (var t = 0; t < e.length; ++t) { + var r = e[t], + n = this.scanner.source.slice(r.slice[0], r.slice[1]), + i = { type: r.multiLine ? 'BlockComment' : 'LineComment', value: n }; + this.trackRange && (i.range = r.range), + this.trackLoc && (i.loc = r.loc), + this.buffer.push(i); + } + if (!this.scanner.eof()) { + var s = void 0; + this.trackLoc && + (s = { + start: { + line: this.scanner.lineNumber, + column: this.scanner.index - this.scanner.lineStart, + }, + end: {}, + }); + var A = + '/' === this.scanner.source[this.scanner.index] && + this.reader.isRegexStart() + ? this.scanner.scanRegExp() + : this.scanner.lex(); + this.reader.push(A); + var a = { + type: o.TokenName[A.type], + value: this.scanner.source.slice(A.start, A.end), + }; + if ( + (this.trackRange && (a.range = [A.start, A.end]), + this.trackLoc && + ((s.end = { + line: this.scanner.lineNumber, + column: this.scanner.index - this.scanner.lineStart, + }), + (a.loc = s)), + 9 === A.type) + ) { + var c = A.pattern, + u = A.flags; + a.regex = { pattern: c, flags: u }; + } + this.buffer.push(a); + } + } + return this.buffer.shift(); + }), + e + ); + })(); + t.Tokenizer = A; + }, + ]); + }), + (e.exports = t()); + }, + 79932: function (e, t) { + 'use strict'; + var r, + n = + (this && this.__extends) || + ((r = function (e, t) { + return (r = + Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && + function (e, t) { + e.__proto__ = t; + }) || + function (e, t) { + for (var r in t) t.hasOwnProperty(r) && (e[r] = t[r]); + })(e, t); + }), + function (e, t) { + function n() { + this.constructor = e; + } + r(e, t), + (e.prototype = + null === t ? Object.create(t) : ((n.prototype = t.prototype), new n())); + }); + Object.defineProperty(t, '__esModule', { value: !0 }); + var i = (function (e) { + function t(t) { + var r = this.constructor, + n = e.call(this, 'Failed to create temporary file for editor') || this; + n.originalError = t; + var i = r.prototype; + return ( + Object.setPrototypeOf ? Object.setPrototypeOf(n, i) : (n.__proto__ = r.prototype), n + ); + } + return n(t, e), t; + })(Error); + t.CreateFileError = i; + }, + 89885: function (e, t) { + 'use strict'; + var r, + n = + (this && this.__extends) || + ((r = function (e, t) { + return (r = + Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && + function (e, t) { + e.__proto__ = t; + }) || + function (e, t) { + for (var r in t) t.hasOwnProperty(r) && (e[r] = t[r]); + })(e, t); + }), + function (e, t) { + function n() { + this.constructor = e; + } + r(e, t), + (e.prototype = + null === t ? Object.create(t) : ((n.prototype = t.prototype), new n())); + }); + Object.defineProperty(t, '__esModule', { value: !0 }); + var i = (function (e) { + function t(t) { + var r = this.constructor, + n = e.call(this, 'Failed launch editor') || this; + n.originalError = t; + var i = r.prototype; + return ( + Object.setPrototypeOf ? Object.setPrototypeOf(n, i) : (n.__proto__ = r.prototype), n + ); + } + return n(t, e), t; + })(Error); + t.LaunchEditorError = i; + }, + 11124: function (e, t) { + 'use strict'; + var r, + n = + (this && this.__extends) || + ((r = function (e, t) { + return (r = + Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && + function (e, t) { + e.__proto__ = t; + }) || + function (e, t) { + for (var r in t) t.hasOwnProperty(r) && (e[r] = t[r]); + })(e, t); + }), + function (e, t) { + function n() { + this.constructor = e; + } + r(e, t), + (e.prototype = + null === t ? Object.create(t) : ((n.prototype = t.prototype), new n())); + }); + Object.defineProperty(t, '__esModule', { value: !0 }); + var i = (function (e) { + function t(t) { + var r = this.constructor, + n = e.call(this, 'Failed to read temporary file') || this; + n.originalError = t; + var i = r.prototype; + return ( + Object.setPrototypeOf ? Object.setPrototypeOf(n, i) : (n.__proto__ = r.prototype), n + ); + } + return n(t, e), t; + })(Error); + t.ReadFileError = i; + }, + 60239: function (e, t) { + 'use strict'; + var r, + n = + (this && this.__extends) || + ((r = function (e, t) { + return (r = + Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && + function (e, t) { + e.__proto__ = t; + }) || + function (e, t) { + for (var r in t) t.hasOwnProperty(r) && (e[r] = t[r]); + })(e, t); + }), + function (e, t) { + function n() { + this.constructor = e; + } + r(e, t), + (e.prototype = + null === t ? Object.create(t) : ((n.prototype = t.prototype), new n())); + }); + Object.defineProperty(t, '__esModule', { value: !0 }); + var i = (function (e) { + function t(t) { + var r = this.constructor, + n = e.call(this, 'Failed to cleanup temporary file') || this; + n.originalError = t; + var i = r.prototype; + return ( + Object.setPrototypeOf ? Object.setPrototypeOf(n, i) : (n.__proto__ = r.prototype), n + ); + } + return n(t, e), t; + })(Error); + t.RemoveFileError = i; + }, + 48011: (e, t, r) => { + 'use strict'; + var n = r(80848), + i = r(63129), + o = r(35747), + s = r(14503), + A = r(67783), + a = r(79932); + a.CreateFileError; + var c = r(89885); + c.LaunchEditorError; + var u = r(11124); + u.ReadFileError; + var l = r(60239); + l.RemoveFileError, + (t.Wl = function (e, t) { + void 0 === e && (e = ''); + var r = new h(e); + r.runAsync(function (e, n) { + if (e) setImmediate(t, e, null); + else + try { + r.cleanup(), setImmediate(t, null, n); + } catch (e) { + setImmediate(t, e, null); + } + }); + }); + var h = (function () { + function e(e) { + void 0 === e && (e = ''), + (this.text = ''), + (this.text = e), + this.determineEditor(), + this.createTemporaryFile(); + } + return ( + (e.splitStringBySpace = function (e) { + for (var t = [], r = '', n = 0; n < e.length; n++) { + var i = e[n]; + n > 0 && ' ' === i && '\\' !== e[n - 1] && r.length > 0 + ? (t.push(r), (r = '')) + : (r += i); + } + return r.length > 0 && t.push(r), t; + }), + Object.defineProperty(e.prototype, 'temp_file', { + get: function () { + return ( + console.log('DEPRECATED: temp_file. Use tempFile moving forward.'), this.tempFile + ); + }, + enumerable: !0, + configurable: !0, + }), + Object.defineProperty(e.prototype, 'last_exit_status', { + get: function () { + return ( + console.log('DEPRECATED: last_exit_status. Use lastExitStatus moving forward.'), + this.lastExitStatus + ); + }, + enumerable: !0, + configurable: !0, + }), + (e.prototype.run = function () { + return this.launchEditor(), this.readTemporaryFile(), this.text; + }), + (e.prototype.runAsync = function (e) { + var t = this; + try { + this.launchEditorAsync(function () { + try { + t.readTemporaryFile(), setImmediate(e, null, t.text); + } catch (t) { + setImmediate(e, t, null); + } + }); + } catch (t) { + setImmediate(e, t, null); + } + }), + (e.prototype.cleanup = function () { + this.removeTemporaryFile(); + }), + (e.prototype.determineEditor = function () { + var t = process.env.VISUAL + ? process.env.VISUAL + : process.env.EDITOR + ? process.env.EDITOR + : /^win/.test(process.platform) + ? 'notepad' + : 'vim', + r = e.splitStringBySpace(t).map(function (e) { + return e.replace('\\ ', ' '); + }), + n = r.shift(); + this.editor = { args: r, bin: n }; + }), + (e.prototype.createTemporaryFile = function () { + try { + (this.tempFile = A.tmpNameSync({})), + o.writeFileSync(this.tempFile, this.text, { encoding: 'utf8' }); + } catch (e) { + throw new a.CreateFileError(e); + } + }), + (e.prototype.readTemporaryFile = function () { + try { + var e = o.readFileSync(this.tempFile); + if (0 === e.length) this.text = ''; + else { + var t = n.detect(e).toString(); + s.encodingExists(t) || (t = 'utf8'), (this.text = s.decode(e, t)); + } + } catch (e) { + throw new u.ReadFileError(e); + } + }), + (e.prototype.removeTemporaryFile = function () { + try { + o.unlinkSync(this.tempFile); + } catch (e) { + throw new l.RemoveFileError(e); + } + }), + (e.prototype.launchEditor = function () { + try { + var e = i.spawnSync(this.editor.bin, this.editor.args.concat([this.tempFile]), { + stdio: 'inherit', + }); + this.lastExitStatus = e.status; + } catch (e) { + throw new c.LaunchEditorError(e); + } + }), + (e.prototype.launchEditorAsync = function (e) { + var t = this; + try { + i.spawn(this.editor.bin, this.editor.args.concat([this.tempFile]), { + stdio: 'inherit', + }).on('exit', function (r) { + (t.lastExitStatus = r), setImmediate(e); + }); + } catch (e) { + throw new c.LaunchEditorError(e); + } + }), + e + ); + })(); + }, + 19347: (e, t, r) => { + 'use strict'; + const n = r(80598), + i = r(58182), + o = r(67652), + s = r(81340), + A = r(43754), + a = r(16777); + async function c(e, t) { + l(e); + const r = u(e, i.default, t), + n = await Promise.all(r); + return a.array.flatten(n); + } + function u(e, t, r) { + const i = [].concat(e), + o = new A.default(r), + s = n.generate(i, o), + a = new t(o); + return s.map(a.read, a); + } + function l(e) { + if (![].concat(e).every((e) => a.string.isString(e) && !a.string.isEmpty(e))) + throw new TypeError('Patterns must be a string (non empty) or an array of strings'); + } + !(function (e) { + (e.sync = function (e, t) { + l(e); + const r = u(e, s.default, t); + return a.array.flatten(r); + }), + (e.stream = function (e, t) { + l(e); + const r = u(e, o.default, t); + return a.stream.merge(r); + }), + (e.generateTasks = function (e, t) { + l(e); + const r = [].concat(e), + i = new A.default(t); + return n.generate(r, i); + }), + (e.isDynamicPattern = function (e, t) { + l(e); + const r = new A.default(t); + return a.pattern.isDynamicPattern(e, r); + }), + (e.escapePath = function (e) { + return l(e), a.path.escape(e); + }); + })(c || (c = {})), + (e.exports = c); + }, + 80598: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(16777); + function i(e, t, r) { + const n = A(e); + if ('.' in n) { + return [c('.', e, t, r)]; + } + return a(n, t, r); + } + function o(e) { + return n.pattern.getPositivePatterns(e); + } + function s(e, t) { + return n.pattern.getNegativePatterns(e).concat(t).map(n.pattern.convertToPositivePattern); + } + function A(e) { + return e.reduce((e, t) => { + const r = n.pattern.getBaseDirectory(t); + return r in e ? e[r].push(t) : (e[r] = [t]), e; + }, {}); + } + function a(e, t, r) { + return Object.keys(e).map((n) => c(n, e[n], t, r)); + } + function c(e, t, r, i) { + return { + dynamic: i, + positive: t, + negative: r, + base: e, + patterns: [].concat(t, r.map(n.pattern.convertToNegativePattern)), + }; + } + (t.generate = function (e, t) { + const r = o(e), + A = s(e, t.ignore), + a = r.filter((e) => n.pattern.isStaticPattern(e, t)), + c = r.filter((e) => n.pattern.isDynamicPattern(e, t)), + u = i(a, A, !1), + l = i(c, A, !0); + return u.concat(l); + }), + (t.convertPatternsToTasks = i), + (t.getPositivePatterns = o), + (t.getNegativePatternsAsPositive = s), + (t.groupPatternsByBaseDirectory = A), + (t.convertPatternGroupsToTasks = a), + (t.convertPatternGroupToTask = c); + }, + 58182: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(82774), + i = r(40545); + class o extends i.default { + constructor() { + super(...arguments), (this._reader = new n.default(this._settings)); + } + read(e) { + const t = this._getRootDirectory(e), + r = this._getReaderOptions(e), + n = []; + return new Promise((i, o) => { + const s = this.api(t, e, r); + s.once('error', o), + s.on('data', (e) => n.push(r.transform(e))), + s.once('end', () => i(n)); + }); + } + api(e, t, r) { + return t.dynamic ? this._reader.dynamic(e, r) : this._reader.static(t.patterns, r); + } + } + t.default = o; + }, + 65989: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(16777), + i = r(42585); + t.default = class { + constructor(e, t) { + (this._settings = e), (this._micromatchOptions = t); + } + getFilter(e, t, r) { + const n = this._getMatcher(t), + i = this._getNegativePatternsRe(r); + return (t) => this._filter(e, t, n, i); + } + _getMatcher(e) { + return new i.default(e, this._settings, this._micromatchOptions); + } + _getNegativePatternsRe(e) { + const t = e.filter(n.pattern.isAffectDepthOfReadingPattern); + return n.pattern.convertPatternsToRe(t, this._micromatchOptions); + } + _filter(e, t, r, i) { + const o = this._getEntryLevel(e, t.path); + if (this._isSkippedByDeep(o)) return !1; + if (this._isSkippedSymbolicLink(t)) return !1; + const s = n.path.removeLeadingDotSegment(t.path); + return ( + !this._isSkippedByPositivePatterns(s, r) && this._isSkippedByNegativePatterns(s, i) + ); + } + _isSkippedByDeep(e) { + return e >= this._settings.deep; + } + _isSkippedSymbolicLink(e) { + return !this._settings.followSymbolicLinks && e.dirent.isSymbolicLink(); + } + _getEntryLevel(e, t) { + const r = e.split('/').length; + return t.split('/').length - ('' === e ? 0 : r); + } + _isSkippedByPositivePatterns(e, t) { + return !this._settings.baseNameMatch && !t.match(e); + } + _isSkippedByNegativePatterns(e, t) { + return !n.pattern.matchAny(e, t); + } + }; + }, + 37338: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(16777); + t.default = class { + constructor(e, t) { + (this._settings = e), (this._micromatchOptions = t), (this.index = new Map()); + } + getFilter(e, t) { + const r = n.pattern.convertPatternsToRe(e, this._micromatchOptions), + i = n.pattern.convertPatternsToRe(t, this._micromatchOptions); + return (e) => this._filter(e, r, i); + } + _filter(e, t, r) { + if (this._settings.unique) { + if (this._isDuplicateEntry(e)) return !1; + this._createIndexRecord(e); + } + if (this._onlyFileFilter(e) || this._onlyDirectoryFilter(e)) return !1; + if (this._isSkippedByAbsoluteNegativePatterns(e, r)) return !1; + const n = this._settings.baseNameMatch ? e.name : e.path; + return this._isMatchToPatterns(n, t) && !this._isMatchToPatterns(e.path, r); + } + _isDuplicateEntry(e) { + return this.index.has(e.path); + } + _createIndexRecord(e) { + this.index.set(e.path, void 0); + } + _onlyFileFilter(e) { + return this._settings.onlyFiles && !e.dirent.isFile(); + } + _onlyDirectoryFilter(e) { + return this._settings.onlyDirectories && !e.dirent.isDirectory(); + } + _isSkippedByAbsoluteNegativePatterns(e, t) { + if (!this._settings.absolute) return !1; + const r = n.path.makeAbsolute(this._settings.cwd, e.path); + return this._isMatchToPatterns(r, t); + } + _isMatchToPatterns(e, t) { + const r = n.path.removeLeadingDotSegment(e); + return n.pattern.matchAny(r, t); + } + }; + }, + 54345: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(16777); + t.default = class { + constructor(e) { + this._settings = e; + } + getFilter() { + return (e) => this._isNonFatalError(e); + } + _isNonFatalError(e) { + return n.errno.isEnoentCodeError(e) || this._settings.suppressErrors; + } + }; + }, + 34789: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(16777); + t.default = class { + constructor(e, t, r) { + (this._patterns = e), + (this._settings = t), + (this._micromatchOptions = r), + (this._storage = []), + this._fillStorage(); + } + _fillStorage() { + const e = n.pattern.expandPatternsWithBraceExpansion(this._patterns); + for (const t of e) { + const e = this._getPatternSegments(t), + r = this._splitSegmentsIntoSections(e); + this._storage.push({ complete: r.length <= 1, pattern: t, segments: e, sections: r }); + } + } + _getPatternSegments(e) { + return n.pattern + .getPatternParts(e, this._micromatchOptions) + .map((e) => + n.pattern.isDynamicPattern(e, this._settings) + ? { + dynamic: !0, + pattern: e, + patternRe: n.pattern.makeRe(e, this._micromatchOptions), + } + : { dynamic: !1, pattern: e } + ); + } + _splitSegmentsIntoSections(e) { + return n.array.splitWhen(e, (e) => e.dynamic && n.pattern.hasGlobStar(e.pattern)); + } + }; + }, + 42585: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(34789); + class i extends n.default { + match(e) { + const t = e.split('/'), + r = t.length, + n = this._storage.filter((e) => !e.complete || e.segments.length > r); + for (const e of n) { + const n = e.sections[0]; + if (!e.complete && r > n.length) return !0; + if ( + t.every((t, r) => { + const n = e.segments[r]; + return !(!n.dynamic || !n.patternRe.test(t)) || (!n.dynamic && n.pattern === t); + }) + ) + return !0; + } + return !1; + } + } + t.default = i; + }, + 40545: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(85622), + i = r(65989), + o = r(37338), + s = r(54345), + A = r(77541); + t.default = class { + constructor(e) { + (this._settings = e), + (this.errorFilter = new s.default(this._settings)), + (this.entryFilter = new o.default(this._settings, this._getMicromatchOptions())), + (this.deepFilter = new i.default(this._settings, this._getMicromatchOptions())), + (this.entryTransformer = new A.default(this._settings)); + } + _getRootDirectory(e) { + return n.resolve(this._settings.cwd, e.base); + } + _getReaderOptions(e) { + const t = '.' === e.base ? '' : e.base; + return { + basePath: t, + pathSegmentSeparator: '/', + concurrency: this._settings.concurrency, + deepFilter: this.deepFilter.getFilter(t, e.positive, e.negative), + entryFilter: this.entryFilter.getFilter(e.positive, e.negative), + errorFilter: this.errorFilter.getFilter(), + followSymbolicLinks: this._settings.followSymbolicLinks, + fs: this._settings.fs, + stats: this._settings.stats, + throwErrorOnBrokenSymbolicLink: this._settings.throwErrorOnBrokenSymbolicLink, + transform: this.entryTransformer.getTransformer(), + }; + } + _getMicromatchOptions() { + return { + dot: this._settings.dot, + matchBase: this._settings.baseNameMatch, + nobrace: !this._settings.braceExpansion, + nocase: !this._settings.caseSensitiveMatch, + noext: !this._settings.extglob, + noglobstar: !this._settings.globstar, + posix: !0, + strictSlashes: !1, + }; + } + }; + }, + 67652: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(92413), + i = r(82774), + o = r(40545); + class s extends o.default { + constructor() { + super(...arguments), (this._reader = new i.default(this._settings)); + } + read(e) { + const t = this._getRootDirectory(e), + r = this._getReaderOptions(e), + i = this.api(t, e, r), + o = new n.Readable({ objectMode: !0, read: () => {} }); + return ( + i + .once('error', (e) => o.emit('error', e)) + .on('data', (e) => o.emit('data', r.transform(e))) + .once('end', () => o.emit('end')), + o.once('close', () => i.destroy()), + o + ); + } + api(e, t, r) { + return t.dynamic ? this._reader.dynamic(e, r) : this._reader.static(t.patterns, r); + } + } + t.default = s; + }, + 81340: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(29543), + i = r(40545); + class o extends i.default { + constructor() { + super(...arguments), (this._reader = new n.default(this._settings)); + } + read(e) { + const t = this._getRootDirectory(e), + r = this._getReaderOptions(e); + return this.api(t, e, r).map(r.transform); + } + api(e, t, r) { + return t.dynamic ? this._reader.dynamic(e, r) : this._reader.static(t.patterns, r); + } + } + t.default = o; + }, + 77541: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(16777); + t.default = class { + constructor(e) { + this._settings = e; + } + getTransformer() { + return (e) => this._transform(e); + } + _transform(e) { + let t = e.path; + return ( + this._settings.absolute && + ((t = n.path.makeAbsolute(this._settings.cwd, t)), (t = n.path.unixify(t))), + this._settings.markDirectories && e.dirent.isDirectory() && (t += '/'), + this._settings.objectMode ? Object.assign(Object.assign({}, e), { path: t }) : t + ); + } + }; + }, + 99458: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(85622), + i = r(53403), + o = r(16777); + t.default = class { + constructor(e) { + (this._settings = e), + (this._fsStatSettings = new i.Settings({ + followSymbolicLink: this._settings.followSymbolicLinks, + fs: this._settings.fs, + throwErrorOnBrokenSymbolicLink: this._settings.followSymbolicLinks, + })); + } + _getFullEntryPath(e) { + return n.resolve(this._settings.cwd, e); + } + _makeEntry(e, t) { + const r = { name: t, path: t, dirent: o.fs.createDirentFromStats(t, e) }; + return this._settings.stats && (r.stats = e), r; + } + _isFatalError(e) { + return !o.errno.isEnoentCodeError(e) && !this._settings.suppressErrors; + } + }; + }, + 82774: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(92413), + i = r(53403), + o = r(72897), + s = r(99458); + class A extends s.default { + constructor() { + super(...arguments), (this._walkStream = o.walkStream), (this._stat = i.stat); + } + dynamic(e, t) { + return this._walkStream(e, t); + } + static(e, t) { + const r = e.map(this._getFullEntryPath, this), + i = new n.PassThrough({ objectMode: !0 }); + i._write = (n, o, s) => + this._getEntry(r[n], e[n], t) + .then((e) => { + null !== e && t.entryFilter(e) && i.push(e), n === r.length - 1 && i.end(), s(); + }) + .catch(s); + for (let e = 0; e < r.length; e++) i.write(e); + return i; + } + _getEntry(e, t, r) { + return this._getStat(e) + .then((e) => this._makeEntry(e, t)) + .catch((e) => { + if (r.errorFilter(e)) return null; + throw e; + }); + } + _getStat(e) { + return new Promise((t, r) => { + this._stat(e, this._fsStatSettings, (e, n) => (null === e ? t(n) : r(e))); + }); + } + } + t.default = A; + }, + 29543: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(53403), + i = r(72897), + o = r(99458); + class s extends o.default { + constructor() { + super(...arguments), (this._walkSync = i.walkSync), (this._statSync = n.statSync); + } + dynamic(e, t) { + return this._walkSync(e, t); + } + static(e, t) { + const r = []; + for (const n of e) { + const e = this._getFullEntryPath(n), + i = this._getEntry(e, n, t); + null !== i && t.entryFilter(i) && r.push(i); + } + return r; + } + _getEntry(e, t, r) { + try { + const r = this._getStat(e); + return this._makeEntry(r, t); + } catch (e) { + if (r.errorFilter(e)) return null; + throw e; + } + } + _getStat(e) { + return this._statSync(e, this._fsStatSettings); + } + } + t.default = s; + }, + 43754: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(35747), + i = r(12087).cpus().length; + t.DEFAULT_FILE_SYSTEM_ADAPTER = { + lstat: n.lstat, + lstatSync: n.lstatSync, + stat: n.stat, + statSync: n.statSync, + readdir: n.readdir, + readdirSync: n.readdirSync, + }; + t.default = class { + constructor(e = {}) { + (this._options = e), + (this.absolute = this._getValue(this._options.absolute, !1)), + (this.baseNameMatch = this._getValue(this._options.baseNameMatch, !1)), + (this.braceExpansion = this._getValue(this._options.braceExpansion, !0)), + (this.caseSensitiveMatch = this._getValue(this._options.caseSensitiveMatch, !0)), + (this.concurrency = this._getValue(this._options.concurrency, i)), + (this.cwd = this._getValue(this._options.cwd, process.cwd())), + (this.deep = this._getValue(this._options.deep, 1 / 0)), + (this.dot = this._getValue(this._options.dot, !1)), + (this.extglob = this._getValue(this._options.extglob, !0)), + (this.followSymbolicLinks = this._getValue(this._options.followSymbolicLinks, !0)), + (this.fs = this._getFileSystemMethods(this._options.fs)), + (this.globstar = this._getValue(this._options.globstar, !0)), + (this.ignore = this._getValue(this._options.ignore, [])), + (this.markDirectories = this._getValue(this._options.markDirectories, !1)), + (this.objectMode = this._getValue(this._options.objectMode, !1)), + (this.onlyDirectories = this._getValue(this._options.onlyDirectories, !1)), + (this.onlyFiles = this._getValue(this._options.onlyFiles, !0)), + (this.stats = this._getValue(this._options.stats, !1)), + (this.suppressErrors = this._getValue(this._options.suppressErrors, !1)), + (this.throwErrorOnBrokenSymbolicLink = this._getValue( + this._options.throwErrorOnBrokenSymbolicLink, + !1 + )), + (this.unique = this._getValue(this._options.unique, !0)), + this.onlyDirectories && (this.onlyFiles = !1), + this.stats && (this.objectMode = !0); + } + _getValue(e, t) { + return void 0 === e ? t : e; + } + _getFileSystemMethods(e = {}) { + return Object.assign(Object.assign({}, t.DEFAULT_FILE_SYSTEM_ADAPTER), e); + } + }; + }, + 60919: (e, t) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }), + (t.flatten = function (e) { + return e.reduce((e, t) => [].concat(e, t), []); + }), + (t.splitWhen = function (e, t) { + const r = [[]]; + let n = 0; + for (const i of e) t(i) ? (n++, (r[n] = [])) : r[n].push(i); + return r; + }); + }, + 35525: (e, t) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }), + (t.isEnoentCodeError = function (e) { + return 'ENOENT' === e.code; + }); + }, + 62524: (e, t) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + class r { + constructor(e, t) { + (this.name = e), + (this.isBlockDevice = t.isBlockDevice.bind(t)), + (this.isCharacterDevice = t.isCharacterDevice.bind(t)), + (this.isDirectory = t.isDirectory.bind(t)), + (this.isFIFO = t.isFIFO.bind(t)), + (this.isFile = t.isFile.bind(t)), + (this.isSocket = t.isSocket.bind(t)), + (this.isSymbolicLink = t.isSymbolicLink.bind(t)); + } + } + t.createDirentFromStats = function (e, t) { + return new r(e, t); + }; + }, + 16777: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(60919); + t.array = n; + const i = r(35525); + t.errno = i; + const o = r(62524); + t.fs = o; + const s = r(71462); + t.path = s; + const A = r(14659); + t.pattern = A; + const a = r(2042); + t.stream = a; + const c = r(10217); + t.string = c; + }, + 71462: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(85622), + i = /(\\?)([()*?[\]{|}]|^!|[!+@](?=\())/g; + (t.unixify = function (e) { + return e.replace(/\\/g, '/'); + }), + (t.makeAbsolute = function (e, t) { + return n.resolve(e, t); + }), + (t.escape = function (e) { + return e.replace(i, '\\$2'); + }), + (t.removeLeadingDotSegment = function (e) { + if ('.' === e.charAt(0)) { + const t = e.charAt(1); + if ('/' === t || '\\' === t) return e.slice(2); + } + return e; + }); + }, + 14659: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(85622), + i = r(97098), + o = r(2401), + s = r(54722), + A = /[*?]|^!/, + a = /\[.*]/, + c = /(?:^|[^!*+?@])\(.*\|.*\)/, + u = /[!*+?@]\(.*\)/, + l = /{.*(?:,|\.\.).*}/; + function h(e, t = {}) { + return !g(e, t); + } + function g(e, t = {}) { + return ( + !(!1 !== t.caseSensitiveMatch && !e.includes('\\')) || + !!(A.test(e) || a.test(e) || c.test(e)) || + !(!1 === t.extglob || !u.test(e)) || + !(!1 === t.braceExpansion || !l.test(e)) + ); + } + function f(e) { + return e.startsWith('!') && '(' !== e[1]; + } + function p(e) { + return !f(e); + } + function d(e) { + return e.endsWith('/**'); + } + function C(e) { + return o.braces(e, { expand: !0, nodupes: !0 }); + } + function E(e, t) { + return o.makeRe(e, t); + } + (t.isStaticPattern = h), + (t.isDynamicPattern = g), + (t.convertToPositivePattern = function (e) { + return f(e) ? e.slice(1) : e; + }), + (t.convertToNegativePattern = function (e) { + return '!' + e; + }), + (t.isNegativePattern = f), + (t.isPositivePattern = p), + (t.getNegativePatterns = function (e) { + return e.filter(f); + }), + (t.getPositivePatterns = function (e) { + return e.filter(p); + }), + (t.getBaseDirectory = function (e) { + return i(e, { flipBackslashes: !1 }); + }), + (t.hasGlobStar = function (e) { + return e.includes('**'); + }), + (t.endsWithSlashGlobStar = d), + (t.isAffectDepthOfReadingPattern = function (e) { + const t = n.basename(e); + return d(e) || h(t); + }), + (t.expandPatternsWithBraceExpansion = function (e) { + return e.reduce((e, t) => e.concat(C(t)), []); + }), + (t.expandBraceExpansion = C), + (t.getPatternParts = function (e, t) { + const r = s.scan(e, Object.assign(Object.assign({}, t), { parts: !0 })); + return 0 === r.parts.length ? [e] : r.parts; + }), + (t.makeRe = E), + (t.convertPatternsToRe = function (e, t) { + return e.map((e) => E(e, t)); + }), + (t.matchAny = function (e, t) { + return t.some((t) => t.test(e)); + }); + }, + 2042: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(55598); + function i(e) { + e.forEach((e) => e.emit('close')); + } + t.merge = function (e) { + const t = n(e); + return ( + e.forEach((e) => { + e.once('error', (e) => t.emit('error', e)); + }), + t.once('close', () => i(e)), + t.once('end', () => i(e)), + t + ); + }; + }, + 10217: (e, t) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }), + (t.isString = function (e) { + return 'string' == typeof e; + }), + (t.isEmpty = function (e) { + return '' === e; + }); + }, + 98360: (e, t, r) => { + 'use strict'; + var n = r(2383); + function i() {} + function o() { + (this.value = null), + (this.callback = i), + (this.next = null), + (this.release = i), + (this.context = null); + var e = this; + this.worked = function (t, r) { + var n = e.callback; + (e.value = null), (e.callback = i), n.call(e.context, t, r), e.release(e); + }; + } + e.exports = function (e, t, r) { + 'function' == typeof e && ((r = t), (t = e), (e = null)); + var s = n(o), + A = null, + a = null, + c = 0, + u = { + push: function (r, n) { + var o = s.get(); + (o.context = e), + (o.release = l), + (o.value = r), + (o.callback = n || i), + c === u.concurrency || u.paused + ? a + ? ((a.next = o), (a = o)) + : ((A = o), (a = o), u.saturated()) + : (c++, t.call(e, o.value, o.worked)); + }, + drain: i, + saturated: i, + pause: function () { + u.paused = !0; + }, + paused: !1, + concurrency: r, + running: function () { + return c; + }, + resume: function () { + if (!u.paused) return; + u.paused = !1; + for (var e = 0; e < u.concurrency; e++) c++, l(); + }, + idle: function () { + return 0 === c && 0 === u.length(); + }, + length: function () { + var e = A, + t = 0; + for (; e; ) (e = e.next), t++; + return t; + }, + unshift: function (r, n) { + var o = s.get(); + (o.context = e), + (o.release = l), + (o.value = r), + (o.callback = n || i), + c === u.concurrency || u.paused + ? A + ? ((o.next = A), (A = o)) + : ((A = o), (a = o), u.saturated()) + : (c++, t.call(e, o.value, o.worked)); + }, + empty: i, + kill: function () { + (A = null), (a = null), (u.drain = i); + }, + killAndDrain: function () { + (A = null), (a = null), u.drain(), (u.drain = i); + }, + }; + return u; + function l(r) { + r && s.release(r); + var n = A; + n + ? u.paused + ? c-- + : (a === A && (a = null), + (A = n.next), + (n.next = null), + t.call(e, n.value, n.worked), + null === a && u.empty()) + : 0 == --c && u.drain(); + } + }; + }, + 19184: (e, t, r) => { + 'use strict'; + class n { + constructor(e, t, r) { + (this.__specs = e || {}), + Object.keys(this.__specs).forEach((e) => { + if ('string' == typeof this.__specs[e]) { + const t = this.__specs[e], + r = this.__specs[t]; + if (!r) throw new Error(`Alias refers to invalid key: ${t} -> ${e}`); + { + const n = r.aliases || []; + n.push(e, t), (r.aliases = [...new Set(n)]), (this.__specs[e] = r); + } + } + }), + (this.__opts = t || {}), + (this.__providers = A(r.filter((e) => null != e && 'object' == typeof e))), + (this.__isFiggyPudding = !0); + } + get(e) { + return i(this, e, !0); + } + get [Symbol.toStringTag]() { + return 'FiggyPudding'; + } + forEach(e, t = this) { + for (let [r, n] of this.entries()) e.call(t, n, r, this); + } + toJSON() { + const e = {}; + return ( + this.forEach((t, r) => { + e[r] = t; + }), + e + ); + } + *entries(e) { + for (let e of Object.keys(this.__specs)) yield [e, this.get(e)]; + const t = e || this.__opts.other; + if (t) { + const e = new Set(); + for (let r of this.__providers) { + const n = r.entries ? r.entries(t) : a(r); + for (let [r, i] of n) t(r) && !e.has(r) && (e.add(r), yield [r, i]); + } + } + } + *[Symbol.iterator]() { + for (let [e, t] of this.entries()) yield [e, t]; + } + *keys() { + for (let [e] of this.entries()) yield e; + } + *values() { + for (let [, e] of this.entries()) yield e; + } + concat(...e) { + return new Proxy(new n(this.__specs, this.__opts, A(this.__providers).concat(e)), s); + } + } + try { + const e = r(31669); + n.prototype[e.inspect.custom] = function (t, r) { + return this[Symbol.toStringTag] + ' ' + e.inspect(this.toJSON(), r); + }; + } catch (e) {} + function i(e, t, r) { + let n = e.__specs[t]; + if (!r || n || (e.__opts.other && e.__opts.other(t))) { + let r; + n || (n = {}); + for (let i of e.__providers) { + if (((r = o(t, i)), void 0 === r && n.aliases && n.aliases.length)) + for (let e of n.aliases) if (e !== t && ((r = o(e, i)), void 0 !== r)) break; + if (void 0 !== r) break; + } + return void 0 === r && void 0 !== n.default + ? 'function' == typeof n.default + ? n.default(e) + : n.default + : r; + } + !(function (e) { + throw Object.assign(new Error('invalid config key requested: ' + e), { + code: 'EBADKEY', + }); + })(t); + } + function o(e, t) { + let r; + return ( + (r = t.__isFiggyPudding ? i(t, e, !1) : 'function' == typeof t.get ? t.get(e) : t[e]), r + ); + } + const s = { + has: (e, t) => t in e.__specs && void 0 !== i(e, t, !1), + ownKeys: (e) => Object.keys(e.__specs), + get: (e, t) => + 'symbol' == typeof t || '__' === t.slice(0, 2) || t in n.prototype ? e[t] : e.get(t), + set(e, t, r) { + if ('symbol' == typeof t || '__' === t.slice(0, 2)) return (e[t] = r), !0; + throw new Error('figgyPudding options cannot be modified. Use .concat() instead.'); + }, + deleteProperty() { + throw new Error( + 'figgyPudding options cannot be deleted. Use .concat() and shadow them instead.' + ); + }, + }; + function A(e) { + const t = []; + return e.forEach((e) => t.unshift(e)), t; + } + function a(e) { + return Object.keys(e).map((t) => [t, e[t]]); + } + e.exports = function (e, t) { + return function (...r) { + return new Proxy(new n(e, t, r), s); + }; + }; + }, + 51938: (e, t, r) => { + 'use strict'; + const n = r(66349), + { platform: i } = process, + o = { + tick: '✔', + cross: '✖', + star: '★', + square: '▇', + squareSmall: '◻', + squareSmallFilled: '◼', + play: '▶', + circle: '◯', + circleFilled: '◉', + circleDotted: '◌', + circleDouble: '◎', + circleCircle: 'ⓞ', + circleCross: 'ⓧ', + circlePipe: 'Ⓘ', + circleQuestionMark: '?⃝', + bullet: '●', + dot: '․', + line: '─', + ellipsis: '…', + pointer: '❯', + pointerSmall: '›', + info: 'ℹ', + warning: '⚠', + hamburger: '☰', + smiley: '㋡', + mustache: '෴', + heart: '♥', + nodejs: '⬢', + arrowUp: '↑', + arrowDown: '↓', + arrowLeft: '←', + arrowRight: '→', + radioOn: '◉', + radioOff: '◯', + checkboxOn: '☒', + checkboxOff: '☐', + checkboxCircleOn: 'ⓧ', + checkboxCircleOff: 'Ⓘ', + questionMarkPrefix: '?⃝', + oneHalf: '½', + oneThird: '⅓', + oneQuarter: '¼', + oneFifth: '⅕', + oneSixth: '⅙', + oneSeventh: '⅐', + oneEighth: '⅛', + oneNinth: '⅑', + oneTenth: '⅒', + twoThirds: '⅔', + twoFifths: '⅖', + threeQuarters: '¾', + threeFifths: '⅗', + threeEighths: '⅜', + fourFifths: '⅘', + fiveSixths: '⅚', + fiveEighths: '⅝', + sevenEighths: '⅞', + }, + s = { + tick: '√', + cross: '×', + star: '*', + square: '█', + squareSmall: '[ ]', + squareSmallFilled: '[█]', + play: '►', + circle: '( )', + circleFilled: '(*)', + circleDotted: '( )', + circleDouble: '( )', + circleCircle: '(○)', + circleCross: '(×)', + circlePipe: '(│)', + circleQuestionMark: '(?)', + bullet: '*', + dot: '.', + line: '─', + ellipsis: '...', + pointer: '>', + pointerSmall: '»', + info: 'i', + warning: '‼', + hamburger: '≡', + smiley: '☺', + mustache: '┌─┐', + heart: o.heart, + nodejs: '♦', + arrowUp: o.arrowUp, + arrowDown: o.arrowDown, + arrowLeft: o.arrowLeft, + arrowRight: o.arrowRight, + radioOn: '(*)', + radioOff: '( )', + checkboxOn: '[×]', + checkboxOff: '[ ]', + checkboxCircleOn: '(×)', + checkboxCircleOff: '( )', + questionMarkPrefix: '?', + oneHalf: '1/2', + oneThird: '1/3', + oneQuarter: '1/4', + oneFifth: '1/5', + oneSixth: '1/6', + oneSeventh: '1/7', + oneEighth: '1/8', + oneNinth: '1/9', + oneTenth: '1/10', + twoThirds: '2/3', + twoFifths: '2/5', + threeQuarters: '3/4', + threeFifths: '3/5', + threeEighths: '3/8', + fourFifths: '4/5', + fiveSixths: '5/6', + fiveEighths: '5/8', + sevenEighths: '7/8', + }; + 'linux' === i && (o.questionMarkPrefix = '?'); + const A = 'win32' === i ? s : o; + (e.exports = Object.assign((e) => { + if (A === o) return e; + for (const [t, r] of Object.entries(o)) + r !== A[t] && (e = e.replace(new RegExp(n(r), 'g'), A[t])); + return e; + }, A)), + (e.exports.main = o), + (e.exports.windows = s); + }, + 52169: (e, t, r) => { + 'use strict'; + /*! + * fill-range + * + * Copyright (c) 2014-present, Jon Schlinkert. + * Licensed under the MIT License. + */ const n = r(31669), + i = r(84615), + o = (e) => null !== e && 'object' == typeof e && !Array.isArray(e), + s = (e) => 'number' == typeof e || ('string' == typeof e && '' !== e), + A = (e) => Number.isInteger(+e), + a = (e) => { + let t = '' + e, + r = -1; + if (('-' === t[0] && (t = t.slice(1)), '0' === t)) return !1; + for (; '0' === t[++r]; ); + return r > 0; + }, + c = (e, t, r) => { + if (t > 0) { + let r = '-' === e[0] ? '-' : ''; + r && (e = e.slice(1)), (e = r + e.padStart(r ? t - 1 : t, '0')); + } + return !1 === r ? String(e) : e; + }, + u = (e, t) => { + let r = '-' === e[0] ? '-' : ''; + for (r && ((e = e.slice(1)), t--); e.length < t; ) e = '0' + e; + return r ? '-' + e : e; + }, + l = (e, t, r, n) => { + if (r) return i(e, t, { wrap: !1, ...n }); + let o = String.fromCharCode(e); + return e === t ? o : `[${o}-${String.fromCharCode(t)}]`; + }, + h = (e, t, r) => { + if (Array.isArray(e)) { + let t = !0 === r.wrap, + n = r.capture ? '' : '?:'; + return t ? `(${n}${e.join('|')})` : e.join('|'); + } + return i(e, t, r); + }, + g = (...e) => new RangeError('Invalid range arguments: ' + n.inspect(...e)), + f = (e, t, r) => { + if (!0 === r.strictRanges) throw g([e, t]); + return []; + }, + p = (e, t, r = 1, n = {}) => { + let i = Number(e), + o = Number(t); + if (!Number.isInteger(i) || !Number.isInteger(o)) { + if (!0 === n.strictRanges) throw g([e, t]); + return []; + } + 0 === i && (i = 0), 0 === o && (o = 0); + let s = i > o, + A = String(e), + f = String(t), + p = String(r); + r = Math.max(Math.abs(r), 1); + let d = a(A) || a(f) || a(p), + C = d ? Math.max(A.length, f.length, p.length) : 0, + E = + !1 === d && + !1 === + ((e, t, r) => 'string' == typeof e || 'string' == typeof t || !0 === r.stringify)( + e, + t, + n + ), + I = n.transform || ((e) => (t) => (!0 === e ? Number(t) : String(t)))(E); + if (n.toRegex && 1 === r) return l(u(e, C), u(t, C), !0, n); + let m = { negatives: [], positives: [] }, + y = [], + w = 0; + for (; s ? i >= o : i <= o; ) + !0 === n.toRegex && r > 1 + ? m[(B = i) < 0 ? 'negatives' : 'positives'].push(Math.abs(B)) + : y.push(c(I(i, w), C, E)), + (i = s ? i - r : i + r), + w++; + var B; + return !0 === n.toRegex + ? r > 1 + ? ((e, t) => { + e.negatives.sort((e, t) => (e < t ? -1 : e > t ? 1 : 0)), + e.positives.sort((e, t) => (e < t ? -1 : e > t ? 1 : 0)); + let r, + n = t.capture ? '' : '?:', + i = '', + o = ''; + return ( + e.positives.length && (i = e.positives.join('|')), + e.negatives.length && (o = `-(${n}${e.negatives.join('|')})`), + (r = i && o ? `${i}|${o}` : i || o), + t.wrap ? `(${n}${r})` : r + ); + })(m, n) + : h(y, null, { wrap: !1, ...n }) + : y; + }, + d = (e, t, r, n = {}) => { + if (null == t && s(e)) return [e]; + if (!s(e) || !s(t)) return f(e, t, n); + if ('function' == typeof r) return d(e, t, 1, { transform: r }); + if (o(r)) return d(e, t, 0, r); + let i = { ...n }; + return ( + !0 === i.capture && (i.wrap = !0), + (r = r || i.step || 1), + A(r) + ? A(e) && A(t) + ? p(e, t, r, i) + : ((e, t, r = 1, n = {}) => { + if ((!A(e) && e.length > 1) || (!A(t) && t.length > 1)) return f(e, t, n); + let i = n.transform || ((e) => String.fromCharCode(e)), + o = ('' + e).charCodeAt(0), + s = ('' + t).charCodeAt(0), + a = o > s, + c = Math.min(o, s), + u = Math.max(o, s); + if (n.toRegex && 1 === r) return l(c, u, !1, n); + let g = [], + p = 0; + for (; a ? o >= s : o <= s; ) g.push(i(o, p)), (o = a ? o - r : o + r), p++; + return !0 === n.toRegex ? h(g, null, { wrap: !1, options: n }) : g; + })(e, t, Math.max(Math.abs(r), 1), i) + : null == r || o(r) + ? d(e, t, 1, r) + : ((e, t) => { + if (!0 === t.strictRanges) + throw new TypeError(`Expected step "${e}" to be a number`); + return []; + })(r, i) + ); + }; + e.exports = d; + }, + 50683: (e) => { + e.exports = function (e) { + return [...e].reduce((e, [t, r]) => ((e[t] = r), e), {}); + }; + }, + 13302: (e, t, r) => { + e.exports = r(35747).constants || r(27619); + }, + 28123: (e, t, r) => { + 'use strict'; + const n = r(44380), + i = r(28614).EventEmitter, + o = r(35747), + s = process.binding('fs'), + A = (s.writeBuffers, s.FSReqWrap), + a = Symbol('_autoClose'), + c = Symbol('_close'), + u = Symbol('_ended'), + l = Symbol('_fd'), + h = Symbol('_finished'), + g = Symbol('_flags'), + f = Symbol('_flush'), + p = Symbol('_handleChunk'), + d = Symbol('_makeBuf'), + C = Symbol('_mode'), + E = Symbol('_needDrain'), + I = Symbol('_onerror'), + m = Symbol('_onopen'), + y = Symbol('_onread'), + w = Symbol('_onwrite'), + B = Symbol('_open'), + Q = Symbol('_path'), + v = Symbol('_pos'), + D = Symbol('_queue'), + b = Symbol('_read'), + S = Symbol('_readSize'), + k = Symbol('_reading'), + x = Symbol('_remain'), + F = Symbol('_size'), + M = Symbol('_write'), + N = Symbol('_writing'), + R = Symbol('_defaultFlag'); + class K extends n { + constructor(e, t) { + if ((super((t = t || {})), (this.writable = !1), 'string' != typeof e)) + throw new TypeError('path must be a string'); + (this[l] = 'number' == typeof t.fd ? t.fd : null), + (this[Q] = e), + (this[S] = t.readSize || 16777216), + (this[k] = !1), + (this[F] = 'number' == typeof t.size ? t.size : 1 / 0), + (this[x] = this[F]), + (this[a] = 'boolean' != typeof t.autoClose || t.autoClose), + 'number' == typeof this[l] ? this[b]() : this[B](); + } + get fd() { + return this[l]; + } + get path() { + return this[Q]; + } + write() { + throw new TypeError('this is a readable stream'); + } + end() { + throw new TypeError('this is a readable stream'); + } + [B]() { + o.open(this[Q], 'r', (e, t) => this[m](e, t)); + } + [m](e, t) { + e ? this[I](e) : ((this[l] = t), this.emit('open', t), this[b]()); + } + [d]() { + return Buffer.allocUnsafe(Math.min(this[S], this[x])); + } + [b]() { + if (!this[k]) { + this[k] = !0; + const e = this[d](); + if (0 === e.length) return process.nextTick(() => this[y](null, 0, e)); + o.read(this[l], e, 0, e.length, null, (e, t, r) => this[y](e, t, r)); + } + } + [y](e, t, r) { + (this[k] = !1), e ? this[I](e) : this[p](t, r) && this[b](); + } + [c]() { + this[a] && + 'number' == typeof this[l] && + (o.close(this[l], (e) => this.emit('close')), (this[l] = null)); + } + [I](e) { + (this[k] = !0), this[c](), this.emit('error', e); + } + [p](e, t) { + let r = !1; + return ( + (this[x] -= e), + e > 0 && (r = super.write(e < t.length ? t.slice(0, e) : t)), + (0 === e || this[x] <= 0) && ((r = !1), this[c](), super.end()), + r + ); + } + emit(e, t) { + switch (e) { + case 'prefinish': + case 'finish': + break; + case 'drain': + 'number' == typeof this[l] && this[b](); + break; + default: + return super.emit(e, t); + } + } + } + class L extends i { + constructor(e, t) { + super((t = t || {})), + (this.readable = !1), + (this[N] = !1), + (this[u] = !1), + (this[E] = !1), + (this[D] = []), + (this[Q] = e), + (this[l] = 'number' == typeof t.fd ? t.fd : null), + (this[C] = void 0 === t.mode ? 438 : t.mode), + (this[v] = 'number' == typeof t.start ? t.start : null), + (this[a] = 'boolean' != typeof t.autoClose || t.autoClose); + const r = null !== this[v] ? 'r+' : 'w'; + (this[R] = void 0 === t.flags), + (this[g] = this[R] ? r : t.flags), + null === this[l] && this[B](); + } + get fd() { + return this[l]; + } + get path() { + return this[Q]; + } + [I](e) { + this[c](), (this[N] = !0), this.emit('error', e); + } + [B]() { + o.open(this[Q], this[g], this[C], (e, t) => this[m](e, t)); + } + [m](e, t) { + this[R] && 'r+' === this[g] && e && 'ENOENT' === e.code + ? ((this[g] = 'w'), this[B]()) + : e + ? this[I](e) + : ((this[l] = t), this.emit('open', t), this[f]()); + } + end(e, t) { + e && this.write(e, t), + (this[u] = !0), + this[N] || this[D].length || 'number' != typeof this[l] || this[w](null, 0); + } + write(e, t) { + return ( + 'string' == typeof e && (e = new Buffer(e, t)), + this[u] + ? (this.emit('error', new Error('write() after end()')), !1) + : null === this[l] || this[N] || this[D].length + ? (this[D].push(e), (this[E] = !0), !1) + : ((this[N] = !0), this[M](e), !0) + ); + } + [M](e) { + o.write(this[l], e, 0, e.length, this[v], (e, t) => this[w](e, t)); + } + [w](e, t) { + e + ? this[I](e) + : (null !== this[v] && (this[v] += t), + this[D].length + ? this[f]() + : ((this[N] = !1), + this[u] && !this[h] + ? ((this[h] = !0), this[c](), this.emit('finish')) + : this[E] && ((this[E] = !1), this.emit('drain')))); + } + [f]() { + if (0 === this[D].length) this[u] && this[w](null, 0); + else if (1 === this[D].length) this[M](this[D].pop()); + else { + const e = this[D]; + (this[D] = []), T(this[l], e, this[v], (e, t) => this[w](e, t)); + } + } + [c]() { + this[a] && + 'number' == typeof this[l] && + (o.close(this[l], (e) => this.emit('close')), (this[l] = null)); + } + } + const T = (e, t, r, n) => { + const i = new A(); + (i.oncomplete = (e, r) => n(e, r, t)), s.writeBuffers(e, t, r, i); + }; + (t.ReadStream = K), + (t.ReadStreamSync = class extends K { + [B]() { + let e = !0; + try { + this[m](null, o.openSync(this[Q], 'r')), (e = !1); + } finally { + e && this[c](); + } + } + [b]() { + let e = !0; + try { + if (!this[k]) { + for (this[k] = !0; ; ) { + const e = this[d](), + t = 0 === e.length ? 0 : o.readSync(this[l], e, 0, e.length, null); + if (!this[p](t, e)) break; + } + this[k] = !1; + } + e = !1; + } finally { + e && this[c](); + } + } + [c]() { + if (this[a] && 'number' == typeof this[l]) { + try { + o.closeSync(this[l]); + } catch (e) {} + (this[l] = null), this.emit('close'); + } + } + }), + (t.WriteStream = L), + (t.WriteStreamSync = class extends L { + [B]() { + let e; + try { + e = o.openSync(this[Q], this[g], this[C]); + } catch (e) { + if (this[R] && 'r+' === this[g] && e && 'ENOENT' === e.code) + return (this[g] = 'w'), this[B](); + throw e; + } + this[m](null, e); + } + [c]() { + if (this[a] && 'number' == typeof this[l]) { + try { + o.closeSync(this[l]); + } catch (e) {} + (this[l] = null), this.emit('close'); + } + } + [M](e) { + try { + this[w](null, o.writeSync(this[l], e, 0, e.length, this[v])); + } catch (e) { + this[w](e, 0); + } + } + }); + }, + 33198: (e, t, r) => { + (e.exports = u), + (u.realpath = u), + (u.sync = l), + (u.realpathSync = l), + (u.monkeypatch = function () { + (n.realpath = u), (n.realpathSync = l); + }), + (u.unmonkeypatch = function () { + (n.realpath = i), (n.realpathSync = o); + }); + var n = r(35747), + i = n.realpath, + o = n.realpathSync, + s = process.version, + A = /^v[0-5]\./.test(s), + a = r(7343); + function c(e) { + return ( + e && + 'realpath' === e.syscall && + ('ELOOP' === e.code || 'ENOMEM' === e.code || 'ENAMETOOLONG' === e.code) + ); + } + function u(e, t, r) { + if (A) return i(e, t, r); + 'function' == typeof t && ((r = t), (t = null)), + i(e, t, function (n, i) { + c(n) ? a.realpath(e, t, r) : r(n, i); + }); + } + function l(e, t) { + if (A) return o(e, t); + try { + return o(e, t); + } catch (r) { + if (c(r)) return a.realpathSync(e, t); + throw r; + } + } + }, + 7343: (e, t, r) => { + var n = r(85622), + i = 'win32' === process.platform, + o = r(35747), + s = process.env.NODE_DEBUG && /fs/.test(process.env.NODE_DEBUG); + function A(e) { + return 'function' == typeof e + ? e + : (function () { + var e; + if (s) { + var t = new Error(); + e = function (e) { + e && ((t.message = e.message), r((e = t))); + }; + } else e = r; + return e; + function r(e) { + if (e) { + if (process.throwDeprecation) throw e; + if (!process.noDeprecation) { + var t = 'fs: missing callback ' + (e.stack || e.message); + process.traceDeprecation ? console.trace(t) : console.error(t); + } + } + } + })(); + } + n.normalize; + if (i) var a = /(.*?)(?:[\/\\]+|$)/g; + else a = /(.*?)(?:[\/]+|$)/g; + if (i) var c = /^(?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/][^\\\/]+)?[\\\/]*/; + else c = /^[\/]*/; + (t.realpathSync = function (e, t) { + if (((e = n.resolve(e)), t && Object.prototype.hasOwnProperty.call(t, e))) return t[e]; + var r, + s, + A, + u, + l = e, + h = {}, + g = {}; + function f() { + var t = c.exec(e); + (r = t[0].length), + (s = t[0]), + (A = t[0]), + (u = ''), + i && !g[A] && (o.lstatSync(A), (g[A] = !0)); + } + for (f(); r < e.length; ) { + a.lastIndex = r; + var p = a.exec(e); + if ( + ((u = s), + (s += p[0]), + (A = u + p[1]), + (r = a.lastIndex), + !(g[A] || (t && t[A] === A))) + ) { + var d; + if (t && Object.prototype.hasOwnProperty.call(t, A)) d = t[A]; + else { + var C = o.lstatSync(A); + if (!C.isSymbolicLink()) { + (g[A] = !0), t && (t[A] = A); + continue; + } + var E = null; + if (!i) { + var I = C.dev.toString(32) + ':' + C.ino.toString(32); + h.hasOwnProperty(I) && (E = h[I]); + } + null === E && (o.statSync(A), (E = o.readlinkSync(A))), + (d = n.resolve(u, E)), + t && (t[A] = d), + i || (h[I] = E); + } + (e = n.resolve(d, e.slice(r))), f(); + } + } + return t && (t[l] = e), e; + }), + (t.realpath = function (e, t, r) { + if ( + ('function' != typeof r && ((r = A(t)), (t = null)), + (e = n.resolve(e)), + t && Object.prototype.hasOwnProperty.call(t, e)) + ) + return process.nextTick(r.bind(null, null, t[e])); + var s, + u, + l, + h, + g = e, + f = {}, + p = {}; + function d() { + var t = c.exec(e); + (s = t[0].length), + (u = t[0]), + (l = t[0]), + (h = ''), + i && !p[l] + ? o.lstat(l, function (e) { + if (e) return r(e); + (p[l] = !0), C(); + }) + : process.nextTick(C); + } + function C() { + if (s >= e.length) return t && (t[g] = e), r(null, e); + a.lastIndex = s; + var n = a.exec(e); + return ( + (h = u), + (u += n[0]), + (l = h + n[1]), + (s = a.lastIndex), + p[l] || (t && t[l] === l) + ? process.nextTick(C) + : t && Object.prototype.hasOwnProperty.call(t, l) + ? m(t[l]) + : o.lstat(l, E) + ); + } + function E(e, n) { + if (e) return r(e); + if (!n.isSymbolicLink()) return (p[l] = !0), t && (t[l] = l), process.nextTick(C); + if (!i) { + var s = n.dev.toString(32) + ':' + n.ino.toString(32); + if (f.hasOwnProperty(s)) return I(null, f[s], l); + } + o.stat(l, function (e) { + if (e) return r(e); + o.readlink(l, function (e, t) { + i || (f[s] = t), I(e, t); + }); + }); + } + function I(e, i, o) { + if (e) return r(e); + var s = n.resolve(h, i); + t && (t[o] = s), m(s); + } + function m(t) { + (e = n.resolve(t, e.slice(s))), d(); + } + d(); + }); + }, + 72137: (e, t, r) => { + 'use strict'; + const { PassThrough: n } = r(92413); + e.exports = (e) => { + e = { ...e }; + const { array: t } = e; + let { encoding: r } = e; + const i = 'buffer' === r; + let o = !1; + t ? (o = !(r || i)) : (r = r || 'utf8'), i && (r = null); + const s = new n({ objectMode: o }); + r && s.setEncoding(r); + let A = 0; + const a = []; + return ( + s.on('data', (e) => { + a.push(e), o ? (A = a.length) : (A += e.length); + }), + (s.getBufferedValue = () => (t ? a : i ? Buffer.concat(a, A) : a.join(''))), + (s.getBufferedLength = () => A), + s + ); + }; + }, + 58764: (e, t, r) => { + 'use strict'; + const n = r(50372), + i = r(72137); + class o extends Error { + constructor() { + super('maxBuffer exceeded'), (this.name = 'MaxBufferError'); + } + } + async function s(e, t) { + if (!e) return Promise.reject(new Error('Expected a stream')); + t = { maxBuffer: 1 / 0, ...t }; + const { maxBuffer: r } = t; + let s; + return ( + await new Promise((A, a) => { + const c = (e) => { + e && (e.bufferedData = s.getBufferedValue()), a(e); + }; + (s = n(e, i(t), (e) => { + e ? c(e) : A(); + })), + s.on('data', () => { + s.getBufferedLength() > r && c(new o()); + }); + }), + s.getBufferedValue() + ); + } + (e.exports = s), + (e.exports.default = s), + (e.exports.buffer = (e, t) => s(e, { ...t, encoding: 'buffer' })), + (e.exports.array = (e, t) => s(e, { ...t, array: !0 })), + (e.exports.MaxBufferError = o); + }, + 72171: (e, t, r) => { + function n(e, t) { + return Object.prototype.hasOwnProperty.call(e, t); + } + (t.alphasort = c), + (t.alphasorti = a), + (t.setopts = function (e, t, r) { + r || (r = {}); + if (r.matchBase && -1 === t.indexOf('/')) { + if (r.noglobstar) throw new Error('base matching requires globstar'); + t = '**/' + t; + } + (e.silent = !!r.silent), + (e.pattern = t), + (e.strict = !1 !== r.strict), + (e.realpath = !!r.realpath), + (e.realpathCache = r.realpathCache || Object.create(null)), + (e.follow = !!r.follow), + (e.dot = !!r.dot), + (e.mark = !!r.mark), + (e.nodir = !!r.nodir), + e.nodir && (e.mark = !0); + (e.sync = !!r.sync), + (e.nounique = !!r.nounique), + (e.nonull = !!r.nonull), + (e.nosort = !!r.nosort), + (e.nocase = !!r.nocase), + (e.stat = !!r.stat), + (e.noprocess = !!r.noprocess), + (e.absolute = !!r.absolute), + (e.maxLength = r.maxLength || 1 / 0), + (e.cache = r.cache || Object.create(null)), + (e.statCache = r.statCache || Object.create(null)), + (e.symlinks = r.symlinks || Object.create(null)), + (function (e, t) { + (e.ignore = t.ignore || []), Array.isArray(e.ignore) || (e.ignore = [e.ignore]); + e.ignore.length && (e.ignore = e.ignore.map(u)); + })(e, r), + (e.changedCwd = !1); + var o = process.cwd(); + n(r, 'cwd') ? ((e.cwd = i.resolve(r.cwd)), (e.changedCwd = e.cwd !== o)) : (e.cwd = o); + (e.root = r.root || i.resolve(e.cwd, '/')), + (e.root = i.resolve(e.root)), + 'win32' === process.platform && (e.root = e.root.replace(/\\/g, '/')); + (e.cwdAbs = s(e.cwd) ? e.cwd : l(e, e.cwd)), + 'win32' === process.platform && (e.cwdAbs = e.cwdAbs.replace(/\\/g, '/')); + (e.nomount = !!r.nomount), + (r.nonegate = !0), + (r.nocomment = !0), + (e.minimatch = new A(t, r)), + (e.options = e.minimatch.options); + }), + (t.ownProp = n), + (t.makeAbs = l), + (t.finish = function (e) { + for ( + var t = e.nounique, r = t ? [] : Object.create(null), n = 0, i = e.matches.length; + n < i; + n++ + ) { + var o = e.matches[n]; + if (o && 0 !== Object.keys(o).length) { + var s = Object.keys(o); + t + ? r.push.apply(r, s) + : s.forEach(function (e) { + r[e] = !0; + }); + } else if (e.nonull) { + var A = e.minimatch.globSet[n]; + t ? r.push(A) : (r[A] = !0); + } + } + t || (r = Object.keys(r)); + e.nosort || (r = r.sort(e.nocase ? a : c)); + if (e.mark) { + for (n = 0; n < r.length; n++) r[n] = e._mark(r[n]); + e.nodir && + (r = r.filter(function (t) { + var r = !/\/$/.test(t), + n = e.cache[t] || e.cache[l(e, t)]; + return r && n && (r = 'DIR' !== n && !Array.isArray(n)), r; + })); + } + e.ignore.length && + (r = r.filter(function (t) { + return !h(e, t); + })); + e.found = r; + }), + (t.mark = function (e, t) { + var r = l(e, t), + n = e.cache[r], + i = t; + if (n) { + var o = 'DIR' === n || Array.isArray(n), + s = '/' === t.slice(-1); + if ((o && !s ? (i += '/') : !o && s && (i = i.slice(0, -1)), i !== t)) { + var A = l(e, i); + (e.statCache[A] = e.statCache[r]), (e.cache[A] = e.cache[r]); + } + } + return i; + }), + (t.isIgnored = h), + (t.childrenIgnored = function (e, t) { + return ( + !!e.ignore.length && + e.ignore.some(function (e) { + return !(!e.gmatcher || !e.gmatcher.match(t)); + }) + ); + }); + var i = r(85622), + o = r(52670), + s = r(71471), + A = o.Minimatch; + function a(e, t) { + return e.toLowerCase().localeCompare(t.toLowerCase()); + } + function c(e, t) { + return e.localeCompare(t); + } + function u(e) { + var t = null; + if ('/**' === e.slice(-3)) { + var r = e.replace(/(\/\*\*)+$/, ''); + t = new A(r, { dot: !0 }); + } + return { matcher: new A(e, { dot: !0 }), gmatcher: t }; + } + function l(e, t) { + var r = t; + return ( + (r = + '/' === t.charAt(0) + ? i.join(e.root, t) + : s(t) || '' === t + ? t + : e.changedCwd + ? i.resolve(e.cwd, t) + : i.resolve(t)), + 'win32' === process.platform && (r = r.replace(/\\/g, '/')), + r + ); + } + function h(e, t) { + return ( + !!e.ignore.length && + e.ignore.some(function (e) { + return e.matcher.match(t) || !(!e.gmatcher || !e.gmatcher.match(t)); + }) + ); + } + }, + 8401: (e, t, r) => { + e.exports = I; + var n = r(35747), + i = r(33198), + o = r(52670), + s = (o.Minimatch, r(85870)), + A = r(28614).EventEmitter, + a = r(85622), + c = r(42357), + u = r(71471), + l = r(131), + h = r(72171), + g = (h.alphasort, h.alphasorti, h.setopts), + f = h.ownProp, + p = r(24679), + d = (r(31669), h.childrenIgnored), + C = h.isIgnored, + E = r(91162); + function I(e, t, r) { + if (('function' == typeof t && ((r = t), (t = {})), t || (t = {}), t.sync)) { + if (r) throw new TypeError('callback provided to sync glob'); + return l(e, t); + } + return new y(e, t, r); + } + I.sync = l; + var m = (I.GlobSync = l.GlobSync); + function y(e, t, r) { + if (('function' == typeof t && ((r = t), (t = null)), t && t.sync)) { + if (r) throw new TypeError('callback provided to sync glob'); + return new m(e, t); + } + if (!(this instanceof y)) return new y(e, t, r); + g(this, e, t), (this._didRealPath = !1); + var n = this.minimatch.set.length; + (this.matches = new Array(n)), + 'function' == typeof r && + ((r = E(r)), + this.on('error', r), + this.on('end', function (e) { + r(null, e); + })); + var i = this; + if ( + ((this._processing = 0), + (this._emitQueue = []), + (this._processQueue = []), + (this.paused = !1), + this.noprocess) + ) + return this; + if (0 === n) return s(); + for (var o = 0; o < n; o++) this._process(this.minimatch.set[o], o, !1, s); + function s() { + --i._processing, i._processing <= 0 && i._finish(); + } + } + (I.glob = I), + (I.hasMagic = function (e, t) { + var r = (function (e, t) { + if (null === t || 'object' != typeof t) return e; + for (var r = Object.keys(t), n = r.length; n--; ) e[r[n]] = t[r[n]]; + return e; + })({}, t); + r.noprocess = !0; + var n = new y(e, r).minimatch.set; + if (!e) return !1; + if (n.length > 1) return !0; + for (var i = 0; i < n[0].length; i++) if ('string' != typeof n[0][i]) return !0; + return !1; + }), + (I.Glob = y), + s(y, A), + (y.prototype._finish = function () { + if ((c(this instanceof y), !this.aborted)) { + if (this.realpath && !this._didRealpath) return this._realpath(); + h.finish(this), this.emit('end', this.found); + } + }), + (y.prototype._realpath = function () { + if (!this._didRealpath) { + this._didRealpath = !0; + var e = this.matches.length; + if (0 === e) return this._finish(); + for (var t = this, r = 0; r < this.matches.length; r++) this._realpathSet(r, n); + } + function n() { + 0 == --e && t._finish(); + } + }), + (y.prototype._realpathSet = function (e, t) { + var r = this.matches[e]; + if (!r) return t(); + var n = Object.keys(r), + o = this, + s = n.length; + if (0 === s) return t(); + var A = (this.matches[e] = Object.create(null)); + n.forEach(function (r, n) { + (r = o._makeAbs(r)), + i.realpath(r, o.realpathCache, function (n, i) { + n ? ('stat' === n.syscall ? (A[r] = !0) : o.emit('error', n)) : (A[i] = !0), + 0 == --s && ((o.matches[e] = A), t()); + }); + }); + }), + (y.prototype._mark = function (e) { + return h.mark(this, e); + }), + (y.prototype._makeAbs = function (e) { + return h.makeAbs(this, e); + }), + (y.prototype.abort = function () { + (this.aborted = !0), this.emit('abort'); + }), + (y.prototype.pause = function () { + this.paused || ((this.paused = !0), this.emit('pause')); + }), + (y.prototype.resume = function () { + if (this.paused) { + if ((this.emit('resume'), (this.paused = !1), this._emitQueue.length)) { + var e = this._emitQueue.slice(0); + this._emitQueue.length = 0; + for (var t = 0; t < e.length; t++) { + var r = e[t]; + this._emitMatch(r[0], r[1]); + } + } + if (this._processQueue.length) { + var n = this._processQueue.slice(0); + this._processQueue.length = 0; + for (t = 0; t < n.length; t++) { + var i = n[t]; + this._processing--, this._process(i[0], i[1], i[2], i[3]); + } + } + } + }), + (y.prototype._process = function (e, t, r, n) { + if ((c(this instanceof y), c('function' == typeof n), !this.aborted)) + if ((this._processing++, this.paused)) this._processQueue.push([e, t, r, n]); + else { + for (var i, s = 0; 'string' == typeof e[s]; ) s++; + switch (s) { + case e.length: + return void this._processSimple(e.join('/'), t, n); + case 0: + i = null; + break; + default: + i = e.slice(0, s).join('/'); + } + var A, + a = e.slice(s); + null === i + ? (A = '.') + : u(i) || u(e.join('/')) + ? ((i && u(i)) || (i = '/' + i), (A = i)) + : (A = i); + var l = this._makeAbs(A); + if (d(this, A)) return n(); + a[0] === o.GLOBSTAR + ? this._processGlobStar(i, A, l, a, t, r, n) + : this._processReaddir(i, A, l, a, t, r, n); + } + }), + (y.prototype._processReaddir = function (e, t, r, n, i, o, s) { + var A = this; + this._readdir(r, o, function (a, c) { + return A._processReaddir2(e, t, r, n, i, o, c, s); + }); + }), + (y.prototype._processReaddir2 = function (e, t, r, n, i, o, s, A) { + if (!s) return A(); + for ( + var c = n[0], + u = !!this.minimatch.negate, + l = c._glob, + h = this.dot || '.' === l.charAt(0), + g = [], + f = 0; + f < s.length; + f++ + ) { + if ('.' !== (d = s[f]).charAt(0) || h) + (u && !e ? !d.match(c) : d.match(c)) && g.push(d); + } + var p = g.length; + if (0 === p) return A(); + if (1 === n.length && !this.mark && !this.stat) { + this.matches[i] || (this.matches[i] = Object.create(null)); + for (f = 0; f < p; f++) { + var d = g[f]; + e && (d = '/' !== e ? e + '/' + d : e + d), + '/' !== d.charAt(0) || this.nomount || (d = a.join(this.root, d)), + this._emitMatch(i, d); + } + return A(); + } + n.shift(); + for (f = 0; f < p; f++) { + d = g[f]; + e && (d = '/' !== e ? e + '/' + d : e + d), this._process([d].concat(n), i, o, A); + } + A(); + }), + (y.prototype._emitMatch = function (e, t) { + if (!this.aborted && !C(this, t)) + if (this.paused) this._emitQueue.push([e, t]); + else { + var r = u(t) ? t : this._makeAbs(t); + if ( + (this.mark && (t = this._mark(t)), this.absolute && (t = r), !this.matches[e][t]) + ) { + if (this.nodir) { + var n = this.cache[r]; + if ('DIR' === n || Array.isArray(n)) return; + } + this.matches[e][t] = !0; + var i = this.statCache[r]; + i && this.emit('stat', t, i), this.emit('match', t); + } + } + }), + (y.prototype._readdirInGlobStar = function (e, t) { + if (!this.aborted) { + if (this.follow) return this._readdir(e, !1, t); + var r = this, + i = p('lstat\0' + e, function (n, i) { + if (n && 'ENOENT' === n.code) return t(); + var o = i && i.isSymbolicLink(); + (r.symlinks[e] = o), + o || !i || i.isDirectory() + ? r._readdir(e, !1, t) + : ((r.cache[e] = 'FILE'), t()); + }); + i && n.lstat(e, i); + } + }), + (y.prototype._readdir = function (e, t, r) { + if (!this.aborted && (r = p('readdir\0' + e + '\0' + t, r))) { + if (t && !f(this.symlinks, e)) return this._readdirInGlobStar(e, r); + if (f(this.cache, e)) { + var i = this.cache[e]; + if (!i || 'FILE' === i) return r(); + if (Array.isArray(i)) return r(null, i); + } + n.readdir( + e, + (function (e, t, r) { + return function (n, i) { + n ? e._readdirError(t, n, r) : e._readdirEntries(t, i, r); + }; + })(this, e, r) + ); + } + }), + (y.prototype._readdirEntries = function (e, t, r) { + if (!this.aborted) { + if (!this.mark && !this.stat) + for (var n = 0; n < t.length; n++) { + var i = t[n]; + (i = '/' === e ? e + i : e + '/' + i), (this.cache[i] = !0); + } + return (this.cache[e] = t), r(null, t); + } + }), + (y.prototype._readdirError = function (e, t, r) { + if (!this.aborted) { + switch (t.code) { + case 'ENOTSUP': + case 'ENOTDIR': + var n = this._makeAbs(e); + if (((this.cache[n] = 'FILE'), n === this.cwdAbs)) { + var i = new Error(t.code + ' invalid cwd ' + this.cwd); + (i.path = this.cwd), (i.code = t.code), this.emit('error', i), this.abort(); + } + break; + case 'ENOENT': + case 'ELOOP': + case 'ENAMETOOLONG': + case 'UNKNOWN': + this.cache[this._makeAbs(e)] = !1; + break; + default: + (this.cache[this._makeAbs(e)] = !1), + this.strict && (this.emit('error', t), this.abort()), + this.silent || console.error('glob error', t); + } + return r(); + } + }), + (y.prototype._processGlobStar = function (e, t, r, n, i, o, s) { + var A = this; + this._readdir(r, o, function (a, c) { + A._processGlobStar2(e, t, r, n, i, o, c, s); + }); + }), + (y.prototype._processGlobStar2 = function (e, t, r, n, i, o, s, A) { + if (!s) return A(); + var a = n.slice(1), + c = e ? [e] : [], + u = c.concat(a); + this._process(u, i, !1, A); + var l = this.symlinks[r], + h = s.length; + if (l && o) return A(); + for (var g = 0; g < h; g++) { + if ('.' !== s[g].charAt(0) || this.dot) { + var f = c.concat(s[g], a); + this._process(f, i, !0, A); + var p = c.concat(s[g], n); + this._process(p, i, !0, A); + } + } + A(); + }), + (y.prototype._processSimple = function (e, t, r) { + var n = this; + this._stat(e, function (i, o) { + n._processSimple2(e, t, i, o, r); + }); + }), + (y.prototype._processSimple2 = function (e, t, r, n, i) { + if ((this.matches[t] || (this.matches[t] = Object.create(null)), !n)) return i(); + if (e && u(e) && !this.nomount) { + var o = /[\/\\]$/.test(e); + '/' === e.charAt(0) + ? (e = a.join(this.root, e)) + : ((e = a.resolve(this.root, e)), o && (e += '/')); + } + 'win32' === process.platform && (e = e.replace(/\\/g, '/')), this._emitMatch(t, e), i(); + }), + (y.prototype._stat = function (e, t) { + var r = this._makeAbs(e), + i = '/' === e.slice(-1); + if (e.length > this.maxLength) return t(); + if (!this.stat && f(this.cache, r)) { + var o = this.cache[r]; + if ((Array.isArray(o) && (o = 'DIR'), !i || 'DIR' === o)) return t(null, o); + if (i && 'FILE' === o) return t(); + } + var s = this.statCache[r]; + if (void 0 !== s) { + if (!1 === s) return t(null, s); + var A = s.isDirectory() ? 'DIR' : 'FILE'; + return i && 'FILE' === A ? t() : t(null, A, s); + } + var a = this, + c = p('stat\0' + r, function (i, o) { + if (o && o.isSymbolicLink()) + return n.stat(r, function (n, i) { + n ? a._stat2(e, r, null, o, t) : a._stat2(e, r, n, i, t); + }); + a._stat2(e, r, i, o, t); + }); + c && n.lstat(r, c); + }), + (y.prototype._stat2 = function (e, t, r, n, i) { + if (r && ('ENOENT' === r.code || 'ENOTDIR' === r.code)) + return (this.statCache[t] = !1), i(); + var o = '/' === e.slice(-1); + if (((this.statCache[t] = n), '/' === t.slice(-1) && n && !n.isDirectory())) + return i(null, !1, n); + var s = !0; + return ( + n && (s = n.isDirectory() ? 'DIR' : 'FILE'), + (this.cache[t] = this.cache[t] || s), + o && 'FILE' === s ? i() : i(null, s, n) + ); + }); + }, + 131: (e, t, r) => { + (e.exports = f), (f.GlobSync = p); + var n = r(35747), + i = r(33198), + o = r(52670), + s = (o.Minimatch, r(8401).Glob, r(31669), r(85622)), + A = r(42357), + a = r(71471), + c = r(72171), + u = (c.alphasort, c.alphasorti, c.setopts), + l = c.ownProp, + h = c.childrenIgnored, + g = c.isIgnored; + function f(e, t) { + if ('function' == typeof t || 3 === arguments.length) + throw new TypeError( + 'callback provided to sync glob\nSee: https://github.com/isaacs/node-glob/issues/167' + ); + return new p(e, t).found; + } + function p(e, t) { + if (!e) throw new Error('must provide pattern'); + if ('function' == typeof t || 3 === arguments.length) + throw new TypeError( + 'callback provided to sync glob\nSee: https://github.com/isaacs/node-glob/issues/167' + ); + if (!(this instanceof p)) return new p(e, t); + if ((u(this, e, t), this.noprocess)) return this; + var r = this.minimatch.set.length; + this.matches = new Array(r); + for (var n = 0; n < r; n++) this._process(this.minimatch.set[n], n, !1); + this._finish(); + } + (p.prototype._finish = function () { + if ((A(this instanceof p), this.realpath)) { + var e = this; + this.matches.forEach(function (t, r) { + var n = (e.matches[r] = Object.create(null)); + for (var o in t) + try { + (o = e._makeAbs(o)), (n[i.realpathSync(o, e.realpathCache)] = !0); + } catch (t) { + if ('stat' !== t.syscall) throw t; + n[e._makeAbs(o)] = !0; + } + }); + } + c.finish(this); + }), + (p.prototype._process = function (e, t, r) { + A(this instanceof p); + for (var n, i = 0; 'string' == typeof e[i]; ) i++; + switch (i) { + case e.length: + return void this._processSimple(e.join('/'), t); + case 0: + n = null; + break; + default: + n = e.slice(0, i).join('/'); + } + var s, + c = e.slice(i); + null === n + ? (s = '.') + : a(n) || a(e.join('/')) + ? ((n && a(n)) || (n = '/' + n), (s = n)) + : (s = n); + var u = this._makeAbs(s); + h(this, s) || + (c[0] === o.GLOBSTAR + ? this._processGlobStar(n, s, u, c, t, r) + : this._processReaddir(n, s, u, c, t, r)); + }), + (p.prototype._processReaddir = function (e, t, r, n, i, o) { + var A = this._readdir(r, o); + if (A) { + for ( + var a = n[0], + c = !!this.minimatch.negate, + u = a._glob, + l = this.dot || '.' === u.charAt(0), + h = [], + g = 0; + g < A.length; + g++ + ) { + if ('.' !== (d = A[g]).charAt(0) || l) + (c && !e ? !d.match(a) : d.match(a)) && h.push(d); + } + var f = h.length; + if (0 !== f) + if (1 !== n.length || this.mark || this.stat) { + n.shift(); + for (g = 0; g < f; g++) { + var p; + d = h[g]; + (p = e ? [e, d] : [d]), this._process(p.concat(n), i, o); + } + } else { + this.matches[i] || (this.matches[i] = Object.create(null)); + for (var g = 0; g < f; g++) { + var d = h[g]; + e && (d = '/' !== e.slice(-1) ? e + '/' + d : e + d), + '/' !== d.charAt(0) || this.nomount || (d = s.join(this.root, d)), + this._emitMatch(i, d); + } + } + } + }), + (p.prototype._emitMatch = function (e, t) { + if (!g(this, t)) { + var r = this._makeAbs(t); + if ( + (this.mark && (t = this._mark(t)), this.absolute && (t = r), !this.matches[e][t]) + ) { + if (this.nodir) { + var n = this.cache[r]; + if ('DIR' === n || Array.isArray(n)) return; + } + (this.matches[e][t] = !0), this.stat && this._stat(t); + } + } + }), + (p.prototype._readdirInGlobStar = function (e) { + if (this.follow) return this._readdir(e, !1); + var t, r; + try { + r = n.lstatSync(e); + } catch (e) { + if ('ENOENT' === e.code) return null; + } + var i = r && r.isSymbolicLink(); + return ( + (this.symlinks[e] = i), + i || !r || r.isDirectory() ? (t = this._readdir(e, !1)) : (this.cache[e] = 'FILE'), + t + ); + }), + (p.prototype._readdir = function (e, t) { + if (t && !l(this.symlinks, e)) return this._readdirInGlobStar(e); + if (l(this.cache, e)) { + var r = this.cache[e]; + if (!r || 'FILE' === r) return null; + if (Array.isArray(r)) return r; + } + try { + return this._readdirEntries(e, n.readdirSync(e)); + } catch (t) { + return this._readdirError(e, t), null; + } + }), + (p.prototype._readdirEntries = function (e, t) { + if (!this.mark && !this.stat) + for (var r = 0; r < t.length; r++) { + var n = t[r]; + (n = '/' === e ? e + n : e + '/' + n), (this.cache[n] = !0); + } + return (this.cache[e] = t), t; + }), + (p.prototype._readdirError = function (e, t) { + switch (t.code) { + case 'ENOTSUP': + case 'ENOTDIR': + var r = this._makeAbs(e); + if (((this.cache[r] = 'FILE'), r === this.cwdAbs)) { + var n = new Error(t.code + ' invalid cwd ' + this.cwd); + throw ((n.path = this.cwd), (n.code = t.code), n); + } + break; + case 'ENOENT': + case 'ELOOP': + case 'ENAMETOOLONG': + case 'UNKNOWN': + this.cache[this._makeAbs(e)] = !1; + break; + default: + if (((this.cache[this._makeAbs(e)] = !1), this.strict)) throw t; + this.silent || console.error('glob error', t); + } + }), + (p.prototype._processGlobStar = function (e, t, r, n, i, o) { + var s = this._readdir(r, o); + if (s) { + var A = n.slice(1), + a = e ? [e] : [], + c = a.concat(A); + this._process(c, i, !1); + var u = s.length; + if (!this.symlinks[r] || !o) + for (var l = 0; l < u; l++) { + if ('.' !== s[l].charAt(0) || this.dot) { + var h = a.concat(s[l], A); + this._process(h, i, !0); + var g = a.concat(s[l], n); + this._process(g, i, !0); + } + } + } + }), + (p.prototype._processSimple = function (e, t) { + var r = this._stat(e); + if ((this.matches[t] || (this.matches[t] = Object.create(null)), r)) { + if (e && a(e) && !this.nomount) { + var n = /[\/\\]$/.test(e); + '/' === e.charAt(0) + ? (e = s.join(this.root, e)) + : ((e = s.resolve(this.root, e)), n && (e += '/')); + } + 'win32' === process.platform && (e = e.replace(/\\/g, '/')), this._emitMatch(t, e); + } + }), + (p.prototype._stat = function (e) { + var t = this._makeAbs(e), + r = '/' === e.slice(-1); + if (e.length > this.maxLength) return !1; + if (!this.stat && l(this.cache, t)) { + var i = this.cache[t]; + if ((Array.isArray(i) && (i = 'DIR'), !r || 'DIR' === i)) return i; + if (r && 'FILE' === i) return !1; + } + var o = this.statCache[t]; + if (!o) { + var s; + try { + s = n.lstatSync(t); + } catch (e) { + if (e && ('ENOENT' === e.code || 'ENOTDIR' === e.code)) + return (this.statCache[t] = !1), !1; + } + if (s && s.isSymbolicLink()) + try { + o = n.statSync(t); + } catch (e) { + o = s; + } + else o = s; + } + this.statCache[t] = o; + i = !0; + return ( + o && (i = o.isDirectory() ? 'DIR' : 'FILE'), + (this.cache[t] = this.cache[t] || i), + (!r || 'FILE' !== i) && i + ); + }), + (p.prototype._mark = function (e) { + return c.mark(this, e); + }), + (p.prototype._makeAbs = function (e) { + return c.makeAbs(this, e); + }); + }, + 97098: (e, t, r) => { + 'use strict'; + var n = r(18193), + i = r(85622).posix.dirname, + o = 'win32' === r(12087).platform(), + s = /\\/g, + A = /[\{\[].*[\/]*.*[\}\]]$/, + a = /(^|[^\\])([\{\[]|\([^\)]+$)/, + c = /\\([\*\?\|\[\]\(\)\{\}])/g; + e.exports = function (e, t) { + Object.assign({ flipBackslashes: !0 }, t).flipBackslashes && + o && + e.indexOf('/') < 0 && + (e = e.replace(s, '/')), + A.test(e) && (e += '/'), + (e += 'a'); + do { + e = i(e); + } while (n(e) || a.test(e)); + return e.replace(c, '$1'); + }; + }, + 22787: (e, t, r) => { + 'use strict'; + const { promisify: n } = r(31669), + i = r(35747), + o = r(85622), + s = r(19347), + A = r(46458), + a = r(17234), + c = ['**/node_modules/**', '**/flow-typed/**', '**/coverage/**', '**/.git'], + u = n(i.readFile), + l = (e, t) => { + const r = a(o.relative(t.cwd, o.dirname(t.fileName))); + return e + .split(/\r?\n/) + .filter(Boolean) + .filter((e) => !e.startsWith('#')) + .map( + ((e) => (t) => + t.startsWith('!') ? '!' + o.posix.join(e, t.slice(1)) : o.posix.join(e, t))(r) + ); + }, + h = (e) => + e.reduce((e, t) => (e.add(l(t.content, { cwd: t.cwd, fileName: t.filePath })), e), A()), + g = (e, t) => (r) => + e.ignores( + a( + o.relative( + t, + ((e, t) => { + if (o.isAbsolute(t)) { + if (t.startsWith(e)) return t; + throw new Error(`Path ${t} is not in cwd ${e}`); + } + return o.join(e, t); + })(t, r) + ) + ) + ), + f = ({ ignore: e = [], cwd: t = process.cwd() } = {}) => ({ ignore: e, cwd: t }); + (e.exports = async (e) => { + e = f(e); + const t = await s('**/.gitignore', { ignore: c.concat(e.ignore), cwd: e.cwd }), + r = await Promise.all( + t.map((t) => + (async (e, t) => { + const r = o.join(t, e); + return { cwd: t, filePath: r, content: await u(r, 'utf8') }; + })(t, e.cwd) + ) + ), + n = h(r); + return g(n, e.cwd); + }), + (e.exports.sync = (e) => { + e = f(e); + const t = s.sync('**/.gitignore', { ignore: c.concat(e.ignore), cwd: e.cwd }).map((t) => + ((e, t) => { + const r = o.join(t, e); + return { cwd: t, filePath: r, content: i.readFileSync(r, 'utf8') }; + })(t, e.cwd) + ), + r = h(t); + return g(r, e.cwd); + }); + }, + 18710: (e, t, r) => { + 'use strict'; + const n = r(35747), + i = r(39920), + o = r(55598), + s = r(8401), + A = r(19347), + a = r(66241), + c = r(22787), + { FilterStream: u, UniqueStream: l } = r(90330), + h = () => !1, + g = (e) => '!' === e[0], + f = (e, t) => { + ((e) => { + if (!e.every((e) => 'string' == typeof e)) + throw new TypeError('Patterns must be a string or an array of strings'); + })((e = i([].concat(e)))), + ((e = {}) => { + if (!e.cwd) return; + let t; + try { + t = n.statSync(e.cwd); + } catch (e) { + return; + } + if (!t.isDirectory()) + throw new Error('The `cwd` option must be a path to a directory'); + })(t); + const r = []; + t = { ignore: [], expandDirectories: !0, ...t }; + for (const [n, i] of e.entries()) { + if (g(i)) continue; + const o = e + .slice(n) + .filter(g) + .map((e) => e.slice(1)), + s = { ...t, ignore: t.ignore.concat(o) }; + r.push({ pattern: i, options: s }); + } + return r; + }, + p = (e, t) => + e.options.expandDirectories + ? ((e, t) => { + let r = {}; + return ( + e.options.cwd && (r.cwd = e.options.cwd), + Array.isArray(e.options.expandDirectories) + ? (r = { ...r, files: e.options.expandDirectories }) + : 'object' == typeof e.options.expandDirectories && + (r = { ...r, ...e.options.expandDirectories }), + t(e.pattern, r) + ); + })(e, t) + : [e.pattern], + d = (e) => (e && e.gitignore ? c.sync({ cwd: e.cwd, ignore: e.ignore }) : h), + C = (e) => (t) => { + const { options: r } = e; + return ( + r.ignore && + Array.isArray(r.ignore) && + r.expandDirectories && + (r.ignore = a.sync(r.ignore)), + { pattern: t, options: r } + ); + }; + (e.exports = async (e, t) => { + const r = f(e, t), + [o, s] = await Promise.all([ + (async () => (t && t.gitignore ? c({ cwd: t.cwd, ignore: t.ignore }) : h))(), + (async () => { + const e = await Promise.all( + r.map(async (e) => { + const t = await p(e, a); + return Promise.all(t.map(C(e))); + }) + ); + return i(...e); + })(), + ]), + u = await Promise.all(s.map((e) => A(e.pattern, e.options))); + return i(...u).filter((e) => { + return !o(((t = e), t.stats instanceof n.Stats ? t.path : t)); + var t; + }); + }), + (e.exports.sync = (e, t) => { + const r = f(e, t).reduce((e, t) => { + const r = p(t, a.sync).map(C(t)); + return e.concat(r); + }, []), + n = d(t); + return r.reduce((e, t) => i(e, A.sync(t.pattern, t.options)), []).filter((e) => !n(e)); + }), + (e.exports.stream = (e, t) => { + const r = f(e, t).reduce((e, t) => { + const r = p(t, a.sync).map(C(t)); + return e.concat(r); + }, []), + n = d(t), + i = new u((e) => !n(e)), + s = new l(); + return o(r.map((e) => A.stream(e.pattern, e.options))) + .pipe(i) + .pipe(s); + }), + (e.exports.generateGlobTasks = f), + (e.exports.hasMagic = (e, t) => [].concat(e).some((e) => s.hasMagic(e, t))), + (e.exports.gitignore = c); + }, + 90330: (e, t, r) => { + 'use strict'; + const { Transform: n } = r(92413); + class i extends n { + constructor() { + super({ objectMode: !0 }); + } + } + e.exports = { + FilterStream: class extends i { + constructor(e) { + super(), (this._filter = e); + } + _transform(e, t, r) { + this._filter(e) && this.push(e), r(); + } + }, + UniqueStream: class extends i { + constructor() { + super(), (this._pushed = new Set()); + } + _transform(e, t, r) { + this._pushed.has(e) || (this.push(e), this._pushed.add(e)), r(); + } + }, + }; + }, + 67078: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(27143), + i = new Set([413, 429, 503]), + o = (e) => + e instanceof n.HTTPError || + e instanceof n.ParseError || + e instanceof n.MaxRedirectsError; + t.default = ({ attemptCount: e, retryOptions: t, error: r }) => { + if (e > t.limit) return 0; + const n = t.methods.includes(r.options.method), + s = t.errorCodes.includes(r.code), + A = o(r) && t.statusCodes.includes(r.response.statusCode); + if (!n || (!s && !A)) return 0; + if (o(r)) { + const { response: e } = r; + if (e && 'retry-after' in e.headers && i.has(e.statusCode)) { + let r = Number(e.headers['retry-after']); + return ( + Number.isNaN(r) + ? (r = Date.parse(e.headers['retry-after']) - Date.now()) + : (r *= 1e3), + void 0 === t.maxRetryAfter || r > t.maxRetryAfter ? 0 : r + ); + } + if (413 === e.statusCode) return 0; + } + return 2 ** (e - 1) * 1e3 + 100 * Math.random(); + }; + }, + 39560: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(8189), + i = r(27143), + o = r(8859); + o.knownHookEvents.includes('beforeRetry') || + o.knownHookEvents.push('beforeRetry', 'afterResponse'), + (t.knownBodyTypes = ['json', 'buffer', 'text']), + (t.parseBody = (e, t, r) => { + const { rawBody: n } = e; + try { + if ('text' === t) return n.toString(r); + if ('json' === t) return 0 === n.length ? '' : JSON.parse(n.toString()); + if ('buffer' === t) return Buffer.from(n); + throw new i.ParseError({ message: `Unknown body type '${t}'`, name: 'Error' }, e); + } catch (t) { + throw new i.ParseError(t, e); + } + }); + class s extends o.default { + static normalizeArguments(e, t, r) { + const i = super.normalizeArguments(e, t, r); + if (n.default.null_(i.encoding)) + throw new TypeError( + 'To get a Buffer, set `options.responseType` to `buffer` instead' + ); + n.assert.any([n.default.string, n.default.undefined], i.encoding), + n.assert.any([n.default.boolean, n.default.undefined], i.resolveBodyOnly), + n.assert.any([n.default.boolean, n.default.undefined], i.methodRewriting), + n.assert.any([n.default.boolean, n.default.undefined], i.isStream); + const { retry: o } = i; + if ( + ((i.retry = r + ? { ...r.retry } + : { + calculateDelay: (e) => e.computedValue, + limit: 0, + methods: [], + statusCodes: [], + errorCodes: [], + maxRetryAfter: void 0, + }), + n.default.object(o) + ? ((i.retry = { ...i.retry, ...o }), + (i.retry.methods = [...new Set(i.retry.methods.map((e) => e.toUpperCase()))]), + (i.retry.statusCodes = [...new Set(i.retry.statusCodes)]), + (i.retry.errorCodes = [...new Set(i.retry.errorCodes)])) + : n.default.number(o) && (i.retry.limit = o), + n.default.undefined(i.retry.maxRetryAfter) && + (i.retry.maxRetryAfter = Math.min( + ...[i.timeout.request, i.timeout.connect].filter(n.default.number) + )), + n.default.object(i.pagination)) + ) { + r && (i.pagination = { ...r.pagination, ...i.pagination }); + const { pagination: e } = i; + if (!n.default.function_(e.transform)) + throw new Error('`options.pagination.transform` must be implemented'); + if (!n.default.function_(e.shouldContinue)) + throw new Error('`options.pagination.shouldContinue` must be implemented'); + if (!n.default.function_(e.filter)) + throw new TypeError('`options.pagination.filter` must be implemented'); + if (!n.default.function_(e.paginate)) + throw new Error('`options.pagination.paginate` must be implemented'); + } + return ( + 'json' === i.responseType && + void 0 === i.headers.accept && + (i.headers.accept = 'application/json'), + i + ); + } + static mergeOptions(...e) { + let t; + for (const r of e) t = s.normalizeArguments(void 0, r, t); + return t; + } + async _beforeError(e) { + e instanceof o.RequestError || (e = new o.RequestError(e.message, e, this)), + this.emit('error', e); + } + } + t.default = s; + }, + 57019: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(27143); + t.default = function (e, ...t) { + const r = (async () => { + if (e instanceof n.RequestError) + try { + for (const r of t) if (r) for (const t of r) e = await t(e); + } catch (t) { + e = t; + } + throw e; + })(), + i = () => r; + return (r.json = i), (r.text = i), (r.buffer = i), (r.on = i), r; + }; + }, + 74850: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(28614), + i = r(58764), + o = r(59351), + s = r(67078), + A = r(27143), + a = r(39560); + t.PromisableRequest = a.default; + const c = r(63227), + u = ['request', 'response', 'redirect', 'uploadProgress', 'downloadProgress']; + (t.default = function e(t) { + let r, + l, + h = 0; + const g = new n.EventEmitter(), + f = new o((n, o, p) => { + const d = () => { + const { throwHttpErrors: C } = t; + C || (t.throwHttpErrors = !0); + const E = new a.default(t.url, t); + (E._noPipe = !0), p(() => E.destroy()); + const I = async (e) => { + try { + for (const r of t.hooks.beforeError) e = await r(e); + } catch (e) { + return void o(new A.RequestError(e.message, e, E)); + } + o(e); + }; + (r = E), + E.once('response', async (r) => { + if (((r.retryCount = h), r.request.aborted)) return; + const o = () => { + const { statusCode: e } = r, + n = t.followRedirect ? 299 : 399; + return (e >= 200 && e <= n) || 304 === e; + }; + let s; + try { + (s = await i.buffer(E)), (r.rawBody = s); + } catch (e) { + return; + } + try { + r.body = a.parseBody(r, t.responseType, t.encoding); + } catch (e) { + if (((r.body = s.toString()), o())) return void I(e); + } + try { + for (const [n, i] of t.hooks.afterResponse.entries()) + r = await i(r, async (r) => { + const i = a.default.normalizeArguments( + void 0, + { + ...r, + retry: { calculateDelay: () => 0 }, + throwHttpErrors: !1, + resolveBodyOnly: !1, + }, + t + ); + i.hooks.afterResponse = i.hooks.afterResponse.slice(0, n); + for (const e of i.hooks.beforeRetry) await e(i); + const o = e(i); + return ( + p(() => { + o.catch(() => {}), o.cancel(); + }), + o + ); + }); + } catch (e) { + return void I(new A.RequestError(e.message, e, E)); + } + !C || o() + ? ((l = r), n(t.resolveBodyOnly ? r.body : r)) + : I(new A.HTTPError(r)); + }), + E.once('error', (e) => { + if (f.isCanceled) return; + if (!E.options) return void I(e); + let r; + h++; + try { + r = t.retry.calculateDelay({ + attemptCount: h, + retryOptions: t.retry, + error: e, + computedValue: s.default({ + attemptCount: h, + retryOptions: t.retry, + error: e, + computedValue: 0, + }), + }); + } catch (t) { + return E.destroy(), void I(new A.RequestError(t.message, e, E)); + } + if (r) { + E.destroy(); + setTimeout(async () => { + t.throwHttpErrors = C; + try { + for (const r of t.hooks.beforeRetry) await r(t, e, h); + } catch (t) { + return E.destroy(), void I(new A.RequestError(t.message, e, E)); + } + d(); + }, r); + } else h--, e instanceof A.HTTPError || (E.destroy(), I(e)); + }), + c.default(E, g, u); + }; + d(); + }); + f.on = (e, t) => (g.on(e, t), f); + const p = (e) => { + const r = (async () => (await f, a.parseBody(l, e, t.encoding)))(); + return Object.defineProperties(r, Object.getOwnPropertyDescriptors(f)), r; + }; + return ( + (f.json = () => ( + r.writableFinished || + void 0 !== t.headers.accept || + (t.headers.accept = 'application/json'), + p('json') + )), + (f.buffer = () => p('buffer')), + (f.text = () => p('text')), + f + ); + }), + (function (e) { + for (var r in e) t.hasOwnProperty(r) || (t[r] = e[r]); + })(r(27143)); + }, + 27143: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(59351); + t.CancelError = n.CancelError; + const i = r(8859); + (t.RequestError = i.RequestError), + (t.MaxRedirectsError = i.MaxRedirectsError), + (t.CacheError = i.CacheError), + (t.UploadError = i.UploadError), + (t.TimeoutError = i.TimeoutError), + (t.HTTPError = i.HTTPError), + (t.ReadError = i.ReadError), + (t.UnsupportedProtocolError = i.UnsupportedProtocolError); + class o extends i.RequestError { + constructor(e, t) { + const { options: r } = t.request; + super(`${e.message} in "${r.url.toString()}"`, e, t.request), + (this.name = 'ParseError'), + Object.defineProperty(this, 'response', { enumerable: !1, value: t }); + } + } + t.ParseError = o; + }, + 8859: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(31669), + i = r(92413), + o = r(35747), + s = r(78835), + A = r(98605), + a = r(98605), + c = r(57211), + u = r(98298), + l = r(53832), + h = r(43261), + g = r(11200), + f = r(9453), + p = r(55737), + d = r(58764), + C = r(8189), + E = r(96596), + I = r(35637), + m = r(63227), + y = r(32449), + w = r(13656), + B = r(80972), + Q = r(30291), + v = Symbol('request'), + D = Symbol('response'), + b = Symbol('responseSize'), + S = Symbol('downloadedSize'), + k = Symbol('bodySize'), + x = Symbol('uploadedSize'), + F = Symbol('serverResponsesPiped'), + M = Symbol('unproxyEvents'), + N = Symbol('isFromCache'), + R = Symbol('cancelTimeouts'), + K = Symbol('startedReading'), + L = Symbol('stopReading'), + T = Symbol('triggerRead'), + P = Symbol('body'), + U = Symbol('jobs'), + _ = Symbol('originalResponse'); + t.kIsNormalizedAlready = Symbol('isNormalizedAlready'); + const O = C.default.string(process.versions.brotli); + (t.withoutBody = new Set(['GET', 'HEAD'])), + (t.knownHookEvents = ['init', 'beforeRequest', 'beforeRedirect', 'beforeError']); + const j = new Q.default(), + Y = new Set([300, 301, 302, 303, 304, 307, 308]), + G = ['context', 'body', 'json', 'form']; + class J extends Error { + constructor(e, t, r) { + var n; + if ( + (super(e), + Error.captureStackTrace(this, this.constructor), + (this.name = 'RequestError'), + (this.code = t.code), + r instanceof ee + ? (Object.defineProperty(this, 'request', { enumerable: !1, value: r }), + Object.defineProperty(this, 'response', { enumerable: !1, value: r[D] }), + Object.defineProperty(this, 'options', { enumerable: !1, value: r.options })) + : Object.defineProperty(this, 'options', { enumerable: !1, value: r }), + (this.timings = null === (n = this.request) || void 0 === n ? void 0 : n.timings), + !C.default.undefined(t.stack)) + ) { + const e = this.stack.indexOf(this.message) + this.message.length, + r = this.stack.slice(e).split('\n').reverse(), + n = t.stack + .slice(t.stack.indexOf(t.message) + t.message.length) + .split('\n') + .reverse(); + for (; 0 !== n.length && n[0] === r[0]; ) r.shift(); + this.stack = `${this.stack.slice(0, e)}${r.reverse().join('\n')}${n + .reverse() + .join('\n')}`; + } + } + } + t.RequestError = J; + class H extends J { + constructor(e) { + super(`Redirected ${e.options.maxRedirects} times. Aborting.`, {}, e), + (this.name = 'MaxRedirectsError'); + } + } + t.MaxRedirectsError = H; + class q extends J { + constructor(e) { + super(`Response code ${e.statusCode} (${e.statusMessage})`, {}, e.request), + (this.name = 'HTTPError'); + } + } + t.HTTPError = q; + class z extends J { + constructor(e, t) { + super(e.message, e, t), (this.name = 'CacheError'); + } + } + t.CacheError = z; + class W extends J { + constructor(e, t) { + super(e.message, e, t), (this.name = 'UploadError'); + } + } + t.UploadError = W; + class V extends J { + constructor(e, t, r) { + super(e.message, e, r), + (this.name = 'TimeoutError'), + (this.event = e.event), + (this.timings = t); + } + } + t.TimeoutError = V; + class X extends J { + constructor(e, t) { + super(e.message, e, t), (this.name = 'ReadError'); + } + } + t.ReadError = X; + class Z extends J { + constructor(e) { + super(`Unsupported protocol "${e.url.protocol}"`, {}, e), + (this.name = 'UnsupportedProtocolError'); + } + } + t.UnsupportedProtocolError = Z; + const $ = ['socket', 'connect', 'continue', 'information', 'upgrade', 'timeout']; + class ee extends i.Duplex { + constructor(e, r = {}, n) { + super({ highWaterMark: 0 }), + (this[S] = 0), + (this[x] = 0), + (this.requestInitialized = !1), + (this[F] = new Set()), + (this.redirects = []), + (this[L] = !1), + (this[T] = !1), + (this[U] = []), + (this._progressCallbacks = []); + const i = () => this._unlockWrite(), + s = () => this._lockWrite(); + this.on('pipe', (e) => { + e.prependListener('data', i), + e.on('data', s), + e.prependListener('end', i), + e.on('end', s); + }), + this.on('unpipe', (e) => { + e.off('data', i), e.off('data', s), e.off('end', i), e.off('end', s); + }), + this.on('pipe', (e) => { + e instanceof a.IncomingMessage && + (this.options.headers = { ...e.headers, ...this.options.headers }); + }); + const { json: A, body: c, form: u } = r; + (A || c || u) && this._lockWrite(), + (async (r) => { + var i; + try { + r.body instanceof o.ReadStream && + (await (async (e) => + new Promise((t, r) => { + const n = (e) => { + r(e); + }; + e.once('error', n), + e.once('open', () => { + e.off('error', n), t(); + }); + }))(r.body)), + t.kIsNormalizedAlready in r + ? (this.options = r) + : (this.options = this.constructor.normalizeArguments(e, r, n)); + const { url: s } = this.options; + if (!s) throw new TypeError('Missing `url` property'); + if ( + ((this.requestUrl = s.toString()), + decodeURI(this.requestUrl), + await this._finalizeBody(), + await this._makeRequest(), + this.destroyed) + ) + return void (null === (i = this[v]) || void 0 === i || i.destroy()); + for (const e of this[U]) e(); + this.requestInitialized = !0; + } catch (e) { + if (e instanceof J) return void this._beforeError(e); + this.destroyed || this.destroy(e); + } + })(r); + } + static normalizeArguments(e, r, i) { + var o, A, a, c; + const u = r; + if (C.default.object(e) && !C.default.urlInstance(e)) r = { ...i, ...e, ...r }; + else { + if (e && r && r.url) + throw new TypeError( + 'The `url` option is mutually exclusive with the `input` argument' + ); + (r = { ...i, ...r }), + e && (r.url = e), + C.default.urlInstance(r.url) && (r.url = new s.URL(r.url.toString())); + } + if ( + (!1 === r.cache && (r.cache = void 0), + !1 === r.dnsCache && (r.dnsCache = void 0), + C.assert.any([C.default.string, C.default.undefined], r.method), + C.assert.any([C.default.object, C.default.undefined], r.headers), + C.assert.any( + [C.default.string, C.default.urlInstance, C.default.undefined], + r.prefixUrl + ), + C.assert.any([C.default.object, C.default.undefined], r.cookieJar), + C.assert.any( + [C.default.object, C.default.string, C.default.undefined], + r.searchParams + ), + C.assert.any([C.default.object, C.default.string, C.default.undefined], r.cache), + C.assert.any([C.default.object, C.default.number, C.default.undefined], r.timeout), + C.assert.any([C.default.object, C.default.undefined], r.context), + C.assert.any([C.default.object, C.default.undefined], r.hooks), + C.assert.any([C.default.boolean, C.default.undefined], r.decompress), + C.assert.any([C.default.boolean, C.default.undefined], r.ignoreInvalidCookies), + C.assert.any([C.default.boolean, C.default.undefined], r.followRedirect), + C.assert.any([C.default.number, C.default.undefined], r.maxRedirects), + C.assert.any([C.default.boolean, C.default.undefined], r.throwHttpErrors), + C.assert.any([C.default.boolean, C.default.undefined], r.http2), + C.assert.any([C.default.boolean, C.default.undefined], r.allowGetBody), + C.assert.any([C.default.boolean, C.default.undefined], r.rejectUnauthorized), + C.default.string(r.method) ? (r.method = r.method.toUpperCase()) : (r.method = 'GET'), + r.headers === (null == i ? void 0 : i.headers) + ? (r.headers = { ...r.headers }) + : (r.headers = p({ ...(null == i ? void 0 : i.headers), ...r.headers })), + 'slashes' in r) + ) + throw new TypeError('The legacy `url.Url` has been deprecated. Use `URL` instead.'); + if ('auth' in r) + throw new TypeError( + 'Parameter `auth` is deprecated. Use `username` / `password` instead.' + ); + if ( + 'searchParams' in r && + r.searchParams && + r.searchParams !== (null == i ? void 0 : i.searchParams) + ) { + C.default.string(r.searchParams) || + r.searchParams instanceof s.URLSearchParams || + (function (e) { + for (const t in e) { + const r = e[t]; + if ( + !( + C.default.string(r) || + C.default.number(r) || + C.default.boolean(r) || + C.default.null_(r) + ) + ) + throw new TypeError( + `The \`searchParams\` value '${String( + r + )}' must be a string, number, boolean or null` + ); + } + })(r.searchParams); + const e = new s.URLSearchParams(r.searchParams); + null === (o = null == i ? void 0 : i.searchParams) || + void 0 === o || + o.forEach((t, r) => { + e.has(r) || e.append(r, t); + }), + (r.searchParams = e); + } + if ( + ((r.username = null !== (A = r.username) && void 0 !== A ? A : ''), + (r.password = null !== (a = r.password) && void 0 !== a ? a : ''), + r.prefixUrl + ? ((r.prefixUrl = r.prefixUrl.toString()), + '' === r.prefixUrl || r.prefixUrl.endsWith('/') || (r.prefixUrl += '/')) + : (r.prefixUrl = ''), + C.default.string(r.url)) + ) { + if (r.url.startsWith('/')) + throw new Error('`input` must not start with a slash when using `prefixUrl`'); + r.url = B.default(r.prefixUrl + r.url, r); + } else + ((C.default.undefined(r.url) && '' !== r.prefixUrl) || r.protocol) && + (r.url = B.default(r.prefixUrl, r)); + if (r.url) { + let { prefixUrl: e } = r; + Object.defineProperty(r, 'prefixUrl', { + set: (t) => { + const n = r.url; + if (!n.href.startsWith(t)) + throw new Error(`Cannot change \`prefixUrl\` from ${e} to ${t}: ${n.href}`); + (r.url = new s.URL(t + n.href.slice(e.length))), (e = t); + }, + get: () => e, + }); + let { protocol: t } = r.url; + if ( + ('unix:' === t && + ((t = 'http:'), + (r.url = new s.URL(`http://unix${r.url.pathname}${r.url.search}`))), + r.searchParams && (r.url.search = r.searchParams.toString()), + r.url.search) + ) { + const e = '_GOT_INTERNAL_TRIGGER_NORMALIZATION'; + r.url.searchParams.append(e, ''), r.url.searchParams.delete(e); + } + if ('http:' !== t && 'https:' !== t) throw new Z(r); + '' === r.username ? (r.username = r.url.username) : (r.url.username = r.username), + '' === r.password ? (r.password = r.url.password) : (r.url.password = r.password); + } + const { cookieJar: l } = r; + if (l) { + let { setCookie: e, getCookieString: t } = l; + C.assert.function_(e), + C.assert.function_(t), + 4 === e.length && + 0 === t.length && + ((e = n.promisify(e.bind(r.cookieJar))), + (t = n.promisify(t.bind(r.cookieJar))), + (r.cookieJar = { setCookie: e, getCookieString: t })); + } + const { cache: f } = r; + if ((f && (j.has(f) || j.set(f, new g((e, t) => e[v](e, t), f))), !0 === r.dnsCache)) + r.dnsCache = new h.default(); + else if (!(C.default.undefined(r.dnsCache) || r.dnsCache instanceof h.default)) + throw new TypeError( + 'Parameter `dnsCache` must be a CacheableLookup instance or a boolean, got ' + + C.default(r.dnsCache) + ); + C.default.number(r.timeout) + ? (r.timeout = { request: r.timeout }) + : i && r.timeout !== i.timeout + ? (r.timeout = { ...i.timeout, ...r.timeout }) + : (r.timeout = { ...r.timeout }), + r.context || (r.context = {}); + const d = r.hooks === (null == i ? void 0 : i.hooks); + r.hooks = { ...r.hooks }; + for (const e of t.knownHookEvents) + if (e in r.hooks) { + if (!C.default.array(r.hooks[e])) + throw new TypeError( + `Parameter \`${e}\` must be an Array, got ${C.default(r.hooks[e])}` + ); + r.hooks[e] = [...r.hooks[e]]; + } else r.hooks[e] = []; + if (i && !d) + for (const e of t.knownHookEvents) { + 0 !== i.hooks[e].length && (r.hooks[e] = [...i.hooks[e], ...r.hooks[e]]); + } + if ('followRedirects' in r) + throw new TypeError( + 'The `followRedirects` option does not exist. Use `followRedirect` instead.' + ); + if (r.agent) + for (const e in r.agent) + if ('http' !== e && 'https' !== e && 'http2' !== e) + throw new TypeError( + `Expected the \`options.agent\` properties to be \`http\`, \`https\` or \`http2\`, got \`${e}\`` + ); + return ( + (r.maxRedirects = null !== (c = r.maxRedirects) && void 0 !== c ? c : 0), + ((e, t) => { + const r = {}; + for (const t of e) + if (t) + for (const e of G) + e in t && + (r[e] = { writable: !0, configurable: !0, enumerable: !1, value: t[e] }); + Object.defineProperties(t, r); + })([i, u], r), + r + ); + } + _lockWrite() { + const e = () => { + throw new TypeError('The payload has been already provided'); + }; + (this.write = e), (this.end = e); + } + _unlockWrite() { + (this.write = super.write), (this.end = super.end); + } + async _finalizeBody() { + const { options: e } = this, + { headers: r } = e, + n = !C.default.undefined(e.form), + o = !C.default.undefined(e.json), + A = !C.default.undefined(e.body), + a = n || o || A, + c = t.withoutBody.has(e.method) && !('GET' === e.method && e.allowGetBody); + if (((this._cannotHaveBody = c), a)) { + if (c) throw new TypeError(`The \`${e.method}\` method cannot be used with a body`); + if ([A, n, o].filter((e) => e).length > 1) + throw new TypeError('The `body`, `json` and `form` options are mutually exclusive'); + if ( + A && + !(e.body instanceof i.Readable) && + !C.default.string(e.body) && + !C.default.buffer(e.body) && + !I.default(e.body) + ) + throw new TypeError( + 'The `body` option must be a stream.Readable, string or Buffer' + ); + if (n && !C.default.object(e.form)) + throw new TypeError('The `form` option must be an Object'); + { + const t = !C.default.string(r['content-type']); + A + ? (I.default(e.body) && + t && + (r['content-type'] = 'multipart/form-data; boundary=' + e.body.getBoundary()), + (this[P] = e.body)) + : n + ? (t && (r['content-type'] = 'application/x-www-form-urlencoded'), + (this[P] = new s.URLSearchParams(e.form).toString())) + : (t && (r['content-type'] = 'application/json'), + (this[P] = JSON.stringify(e.json))); + const i = await E.default(this[P], e.headers); + C.default.undefined(r['content-length']) && + C.default.undefined(r['transfer-encoding']) && + (c || C.default.undefined(i) || (r['content-length'] = String(i))); + } + } else c ? this._lockWrite() : this._unlockWrite(); + this[k] = Number(r['content-length']) || void 0; + } + async _onResponse(e) { + const { options: t } = this, + { url: r } = t; + (this[_] = e), t.decompress && (e = l(e)); + const n = e.statusCode, + i = e; + (i.statusMessage = i.statusMessage ? i.statusMessage : A.STATUS_CODES[n]), + (i.url = t.url.toString()), + (i.requestUrl = this.requestUrl), + (i.redirectUrls = this.redirects), + (i.request = this), + (i.isFromCache = e.fromCache || !1), + (i.ip = this.ip), + (this[N] = i.isFromCache), + (this[b] = Number(e.headers['content-length']) || void 0), + (this[D] = e), + e.once('end', () => { + (this[b] = this[S]), this.emit('downloadProgress', this.downloadProgress); + }), + e.once('error', (t) => { + e.destroy(), this._beforeError(new X(t, this)); + }), + e.once('aborted', () => { + this.aborted || + this._beforeError( + new X( + { name: 'Error', message: 'The server aborted the pending request' }, + this + ) + ); + }), + this.emit('downloadProgress', this.downloadProgress); + const o = e.headers['set-cookie']; + if (C.default.object(t.cookieJar) && o) { + let e = o.map(async (e) => t.cookieJar.setCookie(e, r.toString())); + t.ignoreInvalidCookies && (e = e.map(async (e) => e.catch(() => {}))); + try { + await Promise.all(e); + } catch (e) { + return void this._beforeError(e); + } + } + if (t.followRedirect && e.headers.location && Y.has(n)) { + e.resume(), this[v] && (this[R](), delete this[v], this[M]()); + if ( + ((!(303 === n && 'GET' !== t.method && 'HEAD' !== t.method) && t.methodRewriting) || + ((t.method = 'GET'), + 'body' in t && delete t.body, + 'json' in t && delete t.json, + 'form' in t && delete t.form), + this.redirects.length >= t.maxRedirects) + ) + return void this._beforeError(new H(this)); + try { + const n = Buffer.from(e.headers.location, 'binary').toString(), + o = new s.URL(n, r), + A = o.toString(); + decodeURI(A), + o.hostname !== r.hostname && + ('host' in t.headers && delete t.headers.host, + 'cookie' in t.headers && delete t.headers.cookie, + 'authorization' in t.headers && delete t.headers.authorization, + (t.username || t.password) && (delete t.username, delete t.password)), + this.redirects.push(A), + (t.url = o); + for (const e of t.hooks.beforeRedirect) await e(t, i); + this.emit('redirect', i, t), await this._makeRequest(); + } catch (e) { + return void this._beforeError(e); + } + return; + } + const a = t.followRedirect ? 299 : 399, + c = (n >= 200 && n <= a) || 304 === n; + if (!t.throwHttpErrors || c || (await this._beforeError(new q(i)), !this.destroyed)) { + e.on('readable', () => { + this[T] && this._read(); + }), + this.on('resume', () => { + e.resume(); + }), + this.on('pause', () => { + e.pause(); + }), + e.once('end', () => { + this.push(null); + }), + this.emit('response', e); + for (const r of this[F]) + if (!r.headersSent) { + for (const n in e.headers) { + const i = !t.decompress || 'content-encoding' !== n, + o = e.headers[n]; + i && r.setHeader(n, o); + } + r.statusCode = n; + } + } + } + _onRequest(e) { + const { options: t } = this, + { timeout: r, url: n } = t; + u.default(e), (this[R] = y.default(e, r, n)); + const i = t.cache ? 'cacheableResponse' : 'response'; + e.once(i, (e) => { + this._onResponse(e); + }), + e.once('error', (t) => { + e.destroy(), + (t = + t instanceof y.TimeoutError + ? new V(t, this.timings, this) + : new J(t.message, t, this)), + this._beforeError(t); + }), + (this[M] = m.default(e, this, $)), + (this[v] = e), + this.emit('uploadProgress', this.uploadProgress); + const o = this[P], + s = 0 === this.redirects.length ? this : e; + C.default.nodeStream(o) + ? (o.pipe(s), + o.once('error', (e) => { + this._beforeError(new W(e, this)); + }), + o.once('end', () => { + delete t.body; + })) + : (this._unlockWrite(), + C.default.undefined(o) + ? (this._cannotHaveBody || this._noPipe) && (s.end(), this._lockWrite()) + : (this._writeRequest(o, null, () => {}), s.end(), this._lockWrite())), + this.emit('request', e); + } + async _createCacheableRequest(e, t) { + return new Promise((r, n) => { + Object.assign(t, w.default(e)), delete t.url; + const i = j.get(t.cache)(t, (e) => { + const t = e, + { req: n } = t; + n && n.emit('cacheableResponse', t), r(t); + }); + (t.url = e), i.once('error', n), i.once('request', r); + }); + } + async _makeRequest() { + var e; + const { options: t } = this, + { url: r, headers: n, request: i, agent: o, timeout: s } = t; + for (const e in n) + if (C.default.undefined(n[e])) delete n[e]; + else if (C.default.null_(n[e])) + throw new TypeError( + `Use \`undefined\` instead of \`null\` to delete the \`${e}\` header` + ); + if ( + (t.decompress && + C.default.undefined(n['accept-encoding']) && + (n['accept-encoding'] = O ? 'gzip, deflate, br' : 'gzip, deflate'), + t.cookieJar) + ) { + const e = await t.cookieJar.getCookieString(t.url.toString()); + C.default.nonEmptyString(e) && (t.headers.cookie = e); + } + for (const e of t.hooks.beforeRequest) { + const r = await e(t); + if (!C.default.undefined(r)) { + t.request = () => r; + break; + } + } + if ( + (t.dnsCache && !('lookup' in t) && (t.lookup = t.dnsCache.lookup), + 'unix' === r.hostname) + ) { + const e = /(?.+?):(?.+)/.exec(`${r.pathname}${r.search}`); + if (null == e ? void 0 : e.groups) { + const { socketPath: r, path: n } = e.groups; + Object.assign(t, { socketPath: r, path: n, host: '' }); + } + } + const a = 'https:' === r.protocol; + let u; + u = t.http2 ? f.auto : a ? c.request : A.request; + const l = null !== (e = t.request) && void 0 !== e ? e : u, + h = t.cache ? this._createCacheableRequest : l; + o && !t.http2 && (t.agent = o[a ? 'https' : 'http']), + (t[v] = l), + delete t.request, + delete t.timeout; + try { + let e = await h(r, t); + C.default.undefined(e) && (e = u(r, t)), + (t.request = i), + (t.timeout = s), + (t.agent = o), + (p = e), + C.default.object(p) && !('statusCode' in p) + ? this._onRequest(e) + : this.writable + ? (this.once('finish', () => { + this._onResponse(e); + }), + this._unlockWrite(), + this.end(), + this._lockWrite()) + : this._onResponse(e); + } catch (e) { + if (e instanceof g.CacheError) throw new z(e, this); + throw new J(e.message, e, this); + } + var p; + } + async _beforeError(e) { + (this[L] = !0), e instanceof J || (e = new J(e.message, e, this)); + try { + const { response: t } = e; + t && + (t.setEncoding(this._readableState.encoding), + (t.rawBody = await d.buffer(t)), + (t.body = t.rawBody.toString())); + } catch (e) {} + try { + for (const t of this.options.hooks.beforeError) e = await t(e); + } catch (t) { + e = new J(t.message, t, this); + } + this.destroyed || this.destroy(e); + } + _read() { + this[T] = !0; + const e = this[D]; + if (e && !this[L]) { + let t; + for (e.readableLength && (this[T] = !1); null !== (t = e.read()); ) { + (this[S] += t.length), (this[K] = !0); + const e = this.downloadProgress; + e.percent < 1 && this.emit('downloadProgress', e), this.push(t); + } + } + } + _write(e, t, r) { + const n = () => { + this._writeRequest(e, t, r); + }; + this.requestInitialized ? n() : this[U].push(n); + } + _writeRequest(e, t, r) { + this._progressCallbacks.push(() => { + this[x] += Buffer.byteLength(e, t); + const r = this.uploadProgress; + r.percent < 1 && this.emit('uploadProgress', r); + }), + this[v].write(e, t, (e) => { + e || 0 === this._progressCallbacks.length || this._progressCallbacks.shift()(), + r(e); + }); + } + _final(e) { + const t = () => { + for (; 0 !== this._progressCallbacks.length; ) this._progressCallbacks.shift()(); + v in this + ? this[v].end((t) => { + t || + ((this[k] = this[x]), + this.emit('uploadProgress', this.uploadProgress), + this[v].emit('upload-complete')), + e(t); + }) + : e(); + }; + this.requestInitialized ? t() : this[U].push(t); + } + _destroy(e, t) { + var r; + v in this && + (this[R](), + (null === (r = this[D]) || void 0 === r ? void 0 : r.complete) || this[v].destroy()), + null === e || + C.default.undefined(e) || + e instanceof J || + (e = new J(e.message, e, this)), + t(e); + } + get ip() { + var e; + return null === (e = this[v]) || void 0 === e ? void 0 : e.socket.remoteAddress; + } + get aborted() { + var e, t, r; + return ( + (null !== (t = null === (e = this[v]) || void 0 === e ? void 0 : e.destroyed) && + void 0 !== t + ? t + : this.destroyed) && !(null === (r = this[_]) || void 0 === r ? void 0 : r.complete) + ); + } + get socket() { + var e; + return null === (e = this[v]) || void 0 === e ? void 0 : e.socket; + } + get downloadProgress() { + let e; + return ( + (e = this[b] ? this[S] / this[b] : this[b] === this[S] ? 1 : 0), + { percent: e, transferred: this[S], total: this[b] } + ); + } + get uploadProgress() { + let e; + return ( + (e = this[k] ? this[x] / this[k] : this[k] === this[x] ? 1 : 0), + { percent: e, transferred: this[x], total: this[k] } + ); + } + get timings() { + var e; + return null === (e = this[v]) || void 0 === e ? void 0 : e.timings; + } + get isFromCache() { + return this[N]; + } + pipe(e, t) { + if (this[K]) throw new Error('Failed to pipe. The response has been emitted already.'); + return e instanceof a.ServerResponse && this[F].add(e), super.pipe(e, t); + } + unpipe(e) { + return e instanceof a.ServerResponse && this[F].delete(e), super.unpipe(e), this; + } + } + t.default = ee; + }, + 96596: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(35747), + i = r(31669), + o = r(8189), + s = r(35637), + A = i.promisify(n.stat); + t.default = async (e, t) => { + if (t && 'content-length' in t) return Number(t['content-length']); + if (!e) return 0; + if (o.default.string(e)) return Buffer.byteLength(e); + if (o.default.buffer(e)) return e.length; + if (s.default(e)) return i.promisify(e.getLength.bind(e))(); + if (e instanceof n.ReadStream) { + const { size: t } = await A(e.path); + return t; + } + }; + }, + 35637: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(8189); + t.default = (e) => n.default.nodeStream(e) && n.default.function_(e.getBoundary); + }, + 80972: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(78835), + i = ['protocol', 'host', 'hostname', 'port', 'pathname', 'search']; + t.default = (e, t) => { + var r, o; + if (t.path) { + if (t.pathname) + throw new TypeError('Parameters `path` and `pathname` are mutually exclusive.'); + if (t.search) + throw new TypeError('Parameters `path` and `search` are mutually exclusive.'); + if (t.searchParams) + throw new TypeError('Parameters `path` and `searchParams` are mutually exclusive.'); + } + if (t.search && t.searchParams) + throw new TypeError('Parameters `search` and `searchParams` are mutually exclusive.'); + if (!e) { + if (!t.protocol) throw new TypeError('No URL protocol specified'); + e = `${t.protocol}//${ + null !== (o = null !== (r = t.hostname) && void 0 !== r ? r : t.host) && void 0 !== o + ? o + : '' + }`; + } + const s = new n.URL(e); + if (t.path) { + const e = t.path.indexOf('?'); + -1 === e + ? (t.pathname = t.path) + : ((t.pathname = t.path.slice(0, e)), (t.search = t.path.slice(e + 1))), + delete t.path; + } + for (const e of i) t[e] && (s[e] = t[e].toString()); + return s; + }; + }, + 63227: (e, t) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }), + (t.default = function (e, t, r) { + const n = {}; + for (const i of r) + (n[i] = (...e) => { + t.emit(i, ...e); + }), + e.on(i, n[i]); + return () => { + for (const t of r) e.off(t, n[t]); + }; + }); + }, + 32449: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(11631), + i = r(46248), + o = Symbol('reentry'), + s = () => {}; + class A extends Error { + constructor(e, t) { + super(`Timeout awaiting '${t}' for ${e}ms`), + (this.event = t), + (this.name = 'TimeoutError'), + (this.code = 'ETIMEDOUT'); + } + } + (t.TimeoutError = A), + (t.default = (e, t, r) => { + if (o in e) return s; + e[o] = !0; + const a = [], + { once: c, unhandleAll: u } = i.default(), + l = (e, t, r) => { + var n; + const i = setTimeout(t, e, e, r); + null === (n = i.unref) || void 0 === n || n.call(i); + const o = () => { + clearTimeout(i); + }; + return a.push(o), o; + }, + { host: h, hostname: g } = r, + f = (t, r) => { + e.destroy(new A(t, r)); + }, + p = () => { + for (const e of a) e(); + u(); + }; + if ( + (e.once('error', (t) => { + if ((p(), 0 === e.listenerCount('error'))) throw t; + }), + e.once('close', p), + c(e, 'response', (e) => { + c(e, 'end', p); + }), + void 0 !== t.request && l(t.request, f, 'request'), + void 0 !== t.socket) + ) { + const r = () => { + f(t.socket, 'socket'); + }; + e.setTimeout(t.socket, r), + a.push(() => { + e.removeListener('timeout', r); + }); + } + return ( + c(e, 'socket', (i) => { + var o; + const { socketPath: s } = e; + if (i.connecting) { + const e = Boolean( + null != s + ? s + : 0 !== n.isIP(null !== (o = null != g ? g : h) && void 0 !== o ? o : '') + ); + if (void 0 !== t.lookup && !e && void 0 === i.address().address) { + const e = l(t.lookup, f, 'lookup'); + c(i, 'lookup', e); + } + if (void 0 !== t.connect) { + const r = () => l(t.connect, f, 'connect'); + e + ? c(i, 'connect', r()) + : c(i, 'lookup', (e) => { + null === e && c(i, 'connect', r()); + }); + } + void 0 !== t.secureConnect && + 'https:' === r.protocol && + c(i, 'connect', () => { + const e = l(t.secureConnect, f, 'secureConnect'); + c(i, 'secureConnect', e); + }); + } + if (void 0 !== t.send) { + const r = () => l(t.send, f, 'send'); + i.connecting + ? c(i, 'connect', () => { + c(e, 'upload-complete', r()); + }) + : c(e, 'upload-complete', r()); + } + }), + void 0 !== t.response && + c(e, 'upload-complete', () => { + const r = l(t.response, f, 'response'); + c(e, 'response', r); + }), + p + ); + }); + }, + 46248: (e, t) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }), + (t.default = () => { + const e = []; + return { + once(t, r, n) { + t.once(r, n), e.push({ origin: t, event: r, fn: n }); + }, + unhandleAll() { + for (const t of e) { + const { origin: e, event: r, fn: n } = t; + e.removeListener(r, n); + } + e.length = 0; + }, + }; + }); + }, + 13656: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(8189); + t.default = (e) => { + const t = { + protocol: (e = e).protocol, + hostname: + n.default.string(e.hostname) && e.hostname.startsWith('[') + ? e.hostname.slice(1, -1) + : e.hostname, + host: e.host, + hash: e.hash, + search: e.search, + pathname: e.pathname, + href: e.href, + path: `${e.pathname || ''}${e.search || ''}`, + }; + return ( + n.default.string(e.port) && 0 !== e.port.length && (t.port = Number(e.port)), + (e.username || e.password) && (t.auth = `${e.username || ''}:${e.password || ''}`), + t + ); + }; + }, + 30291: (e, t) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + t.default = class { + constructor() { + (this.weakMap = new WeakMap()), (this.map = new Map()); + } + set(e, t) { + 'object' == typeof e ? this.weakMap.set(e, t) : this.map.set(e, t); + } + get(e) { + return 'object' == typeof e ? this.weakMap.get(e) : this.map.get(e); + } + has(e) { + return 'object' == typeof e ? this.weakMap.has(e) : this.map.has(e); + } + }; + }, + 88190: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(59351), + i = r(8189), + o = r(74850), + s = r(57019), + A = r(8859), + a = r(5571), + c = { + RequestError: o.RequestError, + CacheError: o.CacheError, + ReadError: o.ReadError, + HTTPError: o.HTTPError, + MaxRedirectsError: o.MaxRedirectsError, + TimeoutError: o.TimeoutError, + ParseError: o.ParseError, + CancelError: n.CancelError, + UnsupportedProtocolError: o.UnsupportedProtocolError, + UploadError: o.UploadError, + }, + { normalizeArguments: u, mergeOptions: l } = o.PromisableRequest, + h = (e) => (e.isStream ? new A.default(e.url, e) : o.default(e)), + g = (e) => 'defaults' in e && 'options' in e.defaults, + f = ['get', 'post', 'put', 'patch', 'head', 'delete']; + t.defaultHandler = (e, t) => t(e); + const p = (e, t) => { + if (e) for (const r of e) r(t); + }, + d = (e) => { + (e._rawHandlers = e.handlers), + (e.handlers = e.handlers.map((e) => (t, r) => { + let n; + const i = e(t, (e) => ((n = r(e)), n)); + if (i !== n && !t.isStream && n) { + const e = i, + { then: t, catch: r, finally: o } = e; + Object.setPrototypeOf(e, Object.getPrototypeOf(n)), + Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)), + (e.then = t), + (e.catch = r), + (e.finally = o); + } + return i; + })); + const r = (t, r) => { + var n, a; + let c = 0; + const l = (t) => e.handlers[c++](t, c === e.handlers.length ? h : l); + i.default.plainObject(t) && ((r = { ...t, ...r }), (t = void 0)); + try { + let i; + try { + p(e.options.hooks.init, r), + p( + null === (n = null == r ? void 0 : r.hooks) || void 0 === n ? void 0 : n.init, + r + ); + } catch (e) { + i = e; + } + const s = u(t, r, e.options); + if (((s[A.kIsNormalizedAlready] = !0), i)) + throw new o.RequestError(i.message, i, s); + return l(s); + } catch (t) { + if (null == r ? void 0 : r.isStream) throw t; + return s.default( + t, + e.options.hooks.beforeError, + null === (a = null == r ? void 0 : r.hooks) || void 0 === a + ? void 0 + : a.beforeError + ); + } + }; + (r.extend = (...r) => { + const n = [e.options]; + let i, + o = [...e._rawHandlers]; + for (const e of r) + g(e) + ? (n.push(e.defaults.options), + o.push(...e.defaults._rawHandlers), + (i = e.defaults.mutableDefaults)) + : (n.push(e), 'handlers' in e && o.push(...e.handlers), (i = e.mutableDefaults)); + return ( + (o = o.filter((e) => e !== t.defaultHandler)), + 0 === o.length && o.push(t.defaultHandler), + d({ options: l(...n), handlers: o, mutableDefaults: Boolean(i) }) + ); + }), + ((r.paginate = async function* (t, n) { + let o = u(t, n, e.options); + o.resolveBodyOnly = !1; + const s = o.pagination; + if (!i.default.object(s)) + throw new TypeError('`options.pagination` must be implemented'); + const A = []; + let { countLimit: a } = s, + c = 0; + for (; c < s.requestLimit; ) { + const e = await r('', o), + t = await s.transform(e), + n = []; + for (const e of t) + if (s.filter(e, A, n)) { + if (!s.shouldContinue(e, A, n)) return; + if ((yield e, s.stackAllItems && A.push(e), n.push(e), --a <= 0)) return; + } + const i = s.paginate(e, A, n); + if (!1 === i) return; + i === e.request.options + ? (o = e.request.options) + : void 0 !== i && (o = u(void 0, i, o)), + c++; + } + }).all = async (e, t) => { + const n = []; + for await (const i of r.paginate(e, t)) n.push(i); + return n; + }), + (r.stream = (e, t) => r(e, { ...t, isStream: !0 })); + for (const e of f) + (r[e] = (t, n) => r(t, { ...n, method: e })), + (r.stream[e] = (t, n) => r(t, { ...n, method: e, isStream: !0 })); + return ( + Object.assign(r, { ...c, mergeOptions: l }), + Object.defineProperty(r, 'defaults', { + value: e.mutableDefaults ? e : a.default(e), + writable: e.mutableDefaults, + configurable: e.mutableDefaults, + enumerable: !0, + }), + r + ); + }; + t.default = d; + }, + 22395: (e, t, r) => { + 'use strict'; + function n(e) { + for (var r in e) t.hasOwnProperty(r) || (t[r] = e[r]); + } + Object.defineProperty(t, '__esModule', { value: !0 }); + const i = r(78835), + o = r(88190), + s = { + options: { + method: 'GET', + retry: { + limit: 2, + methods: ['GET', 'PUT', 'HEAD', 'DELETE', 'OPTIONS', 'TRACE'], + statusCodes: [408, 413, 429, 500, 502, 503, 504, 521, 522, 524], + errorCodes: [ + 'ETIMEDOUT', + 'ECONNRESET', + 'EADDRINUSE', + 'ECONNREFUSED', + 'EPIPE', + 'ENOTFOUND', + 'ENETUNREACH', + 'EAI_AGAIN', + ], + maxRetryAfter: void 0, + calculateDelay: ({ computedValue: e }) => e, + }, + timeout: {}, + headers: { 'user-agent': 'got (https://github.com/sindresorhus/got)' }, + hooks: { + init: [], + beforeRequest: [], + beforeRedirect: [], + beforeRetry: [], + beforeError: [], + afterResponse: [], + }, + cache: void 0, + dnsCache: void 0, + decompress: !0, + throwHttpErrors: !0, + followRedirect: !0, + isStream: !1, + responseType: 'text', + resolveBodyOnly: !1, + maxRedirects: 10, + prefixUrl: '', + methodRewriting: !0, + ignoreInvalidCookies: !1, + context: {}, + http2: !1, + allowGetBody: !1, + rejectUnauthorized: !0, + pagination: { + transform: (e) => + 'json' === e.request.options.responseType ? e.body : JSON.parse(e.body), + paginate: (e) => { + if (!Reflect.has(e.headers, 'link')) return !1; + const t = e.headers.link.split(','); + let r; + for (const e of t) { + const t = e.split(';'); + if (t[1].includes('next')) { + (r = t[0].trimStart().trim()), (r = r.slice(1, -1)); + break; + } + } + if (r) { + return { url: new i.URL(r) }; + } + return !1; + }, + filter: () => !0, + shouldContinue: () => !0, + countLimit: 1 / 0, + requestLimit: 1e4, + stackAllItems: !0, + }, + }, + handlers: [o.defaultHandler], + mutableDefaults: !1, + }, + A = o.default(s); + (t.default = A), (e.exports = A), (e.exports.default = A), n(r(88190)), n(r(74850)); + }, + 5571: (e, t, r) => { + 'use strict'; + Object.defineProperty(t, '__esModule', { value: !0 }); + const n = r(8189); + t.default = function e(t) { + for (const r of Object.values(t)) + (n.default.plainObject(r) || n.default.array(r)) && e(r); + return Object.freeze(t); + }; + }, + 74988: (e) => { + e.exports && + (e.exports = function () { + var e = 3, + t = 4, + r = 12, + n = 13, + i = 16, + o = 17; + function s(e, t) { + void 0 === t && (t = 0); + var r = e.charCodeAt(t); + if (55296 <= r && r <= 56319 && t < e.length - 1) { + var n = r; + return 56320 <= (i = e.charCodeAt(t + 1)) && i <= 57343 + ? 1024 * (n - 55296) + (i - 56320) + 65536 + : n; + } + if (56320 <= r && r <= 57343 && t >= 1) { + var i = r; + return 55296 <= (n = e.charCodeAt(t - 1)) && n <= 56319 + ? 1024 * (n - 55296) + (i - 56320) + 65536 + : i; + } + return r; + } + function A(s, A, a) { + var c = [s].concat(A).concat([a]), + u = c[c.length - 2], + l = a, + h = c.lastIndexOf(14); + if ( + h > 1 && + c.slice(1, h).every(function (t) { + return t == e; + }) && + -1 == [e, n, o].indexOf(s) + ) + return 2; + var g = c.lastIndexOf(t); + if ( + g > 0 && + c.slice(1, g).every(function (e) { + return e == t; + }) && + -1 == [r, t].indexOf(u) + ) + return c.filter(function (e) { + return e == t; + }).length % + 2 == + 1 + ? 3 + : 4; + if (0 == u && 1 == l) return 0; + if (2 == u || 0 == u || 1 == u) + return 14 == l && + A.every(function (t) { + return t == e; + }) + ? 2 + : 1; + if (2 == l || 0 == l || 1 == l) return 1; + if (6 == u && (6 == l || 7 == l || 9 == l || 10 == l)) return 0; + if (!((9 != u && 7 != u) || (7 != l && 8 != l))) return 0; + if ((10 == u || 8 == u) && 8 == l) return 0; + if (l == e || 15 == l) return 0; + if (5 == l) return 0; + if (u == r) return 0; + var f = -1 != c.indexOf(e) ? c.lastIndexOf(e) - 1 : c.length - 2; + return (-1 != [n, o].indexOf(c[f]) && + c.slice(f + 1, -1).every(function (t) { + return t == e; + }) && + 14 == l) || + (15 == u && -1 != [i, o].indexOf(l)) + ? 0 + : -1 != A.indexOf(t) + ? 2 + : u == t && l == t + ? 0 + : 1; + } + function a(s) { + return (1536 <= s && s <= 1541) || + 1757 == s || + 1807 == s || + 2274 == s || + 3406 == s || + 69821 == s || + (70082 <= s && s <= 70083) || + 72250 == s || + (72326 <= s && s <= 72329) || + 73030 == s + ? r + : 13 == s + ? 0 + : 10 == s + ? 1 + : (0 <= s && s <= 9) || + (11 <= s && s <= 12) || + (14 <= s && s <= 31) || + (127 <= s && s <= 159) || + 173 == s || + 1564 == s || + 6158 == s || + 8203 == s || + (8206 <= s && s <= 8207) || + 8232 == s || + 8233 == s || + (8234 <= s && s <= 8238) || + (8288 <= s && s <= 8292) || + 8293 == s || + (8294 <= s && s <= 8303) || + (55296 <= s && s <= 57343) || + 65279 == s || + (65520 <= s && s <= 65528) || + (65529 <= s && s <= 65531) || + (113824 <= s && s <= 113827) || + (119155 <= s && s <= 119162) || + 917504 == s || + 917505 == s || + (917506 <= s && s <= 917535) || + (917632 <= s && s <= 917759) || + (918e3 <= s && s <= 921599) + ? 2 + : (768 <= s && s <= 879) || + (1155 <= s && s <= 1159) || + (1160 <= s && s <= 1161) || + (1425 <= s && s <= 1469) || + 1471 == s || + (1473 <= s && s <= 1474) || + (1476 <= s && s <= 1477) || + 1479 == s || + (1552 <= s && s <= 1562) || + (1611 <= s && s <= 1631) || + 1648 == s || + (1750 <= s && s <= 1756) || + (1759 <= s && s <= 1764) || + (1767 <= s && s <= 1768) || + (1770 <= s && s <= 1773) || + 1809 == s || + (1840 <= s && s <= 1866) || + (1958 <= s && s <= 1968) || + (2027 <= s && s <= 2035) || + (2070 <= s && s <= 2073) || + (2075 <= s && s <= 2083) || + (2085 <= s && s <= 2087) || + (2089 <= s && s <= 2093) || + (2137 <= s && s <= 2139) || + (2260 <= s && s <= 2273) || + (2275 <= s && s <= 2306) || + 2362 == s || + 2364 == s || + (2369 <= s && s <= 2376) || + 2381 == s || + (2385 <= s && s <= 2391) || + (2402 <= s && s <= 2403) || + 2433 == s || + 2492 == s || + 2494 == s || + (2497 <= s && s <= 2500) || + 2509 == s || + 2519 == s || + (2530 <= s && s <= 2531) || + (2561 <= s && s <= 2562) || + 2620 == s || + (2625 <= s && s <= 2626) || + (2631 <= s && s <= 2632) || + (2635 <= s && s <= 2637) || + 2641 == s || + (2672 <= s && s <= 2673) || + 2677 == s || + (2689 <= s && s <= 2690) || + 2748 == s || + (2753 <= s && s <= 2757) || + (2759 <= s && s <= 2760) || + 2765 == s || + (2786 <= s && s <= 2787) || + (2810 <= s && s <= 2815) || + 2817 == s || + 2876 == s || + 2878 == s || + 2879 == s || + (2881 <= s && s <= 2884) || + 2893 == s || + 2902 == s || + 2903 == s || + (2914 <= s && s <= 2915) || + 2946 == s || + 3006 == s || + 3008 == s || + 3021 == s || + 3031 == s || + 3072 == s || + (3134 <= s && s <= 3136) || + (3142 <= s && s <= 3144) || + (3146 <= s && s <= 3149) || + (3157 <= s && s <= 3158) || + (3170 <= s && s <= 3171) || + 3201 == s || + 3260 == s || + 3263 == s || + 3266 == s || + 3270 == s || + (3276 <= s && s <= 3277) || + (3285 <= s && s <= 3286) || + (3298 <= s && s <= 3299) || + (3328 <= s && s <= 3329) || + (3387 <= s && s <= 3388) || + 3390 == s || + (3393 <= s && s <= 3396) || + 3405 == s || + 3415 == s || + (3426 <= s && s <= 3427) || + 3530 == s || + 3535 == s || + (3538 <= s && s <= 3540) || + 3542 == s || + 3551 == s || + 3633 == s || + (3636 <= s && s <= 3642) || + (3655 <= s && s <= 3662) || + 3761 == s || + (3764 <= s && s <= 3769) || + (3771 <= s && s <= 3772) || + (3784 <= s && s <= 3789) || + (3864 <= s && s <= 3865) || + 3893 == s || + 3895 == s || + 3897 == s || + (3953 <= s && s <= 3966) || + (3968 <= s && s <= 3972) || + (3974 <= s && s <= 3975) || + (3981 <= s && s <= 3991) || + (3993 <= s && s <= 4028) || + 4038 == s || + (4141 <= s && s <= 4144) || + (4146 <= s && s <= 4151) || + (4153 <= s && s <= 4154) || + (4157 <= s && s <= 4158) || + (4184 <= s && s <= 4185) || + (4190 <= s && s <= 4192) || + (4209 <= s && s <= 4212) || + 4226 == s || + (4229 <= s && s <= 4230) || + 4237 == s || + 4253 == s || + (4957 <= s && s <= 4959) || + (5906 <= s && s <= 5908) || + (5938 <= s && s <= 5940) || + (5970 <= s && s <= 5971) || + (6002 <= s && s <= 6003) || + (6068 <= s && s <= 6069) || + (6071 <= s && s <= 6077) || + 6086 == s || + (6089 <= s && s <= 6099) || + 6109 == s || + (6155 <= s && s <= 6157) || + (6277 <= s && s <= 6278) || + 6313 == s || + (6432 <= s && s <= 6434) || + (6439 <= s && s <= 6440) || + 6450 == s || + (6457 <= s && s <= 6459) || + (6679 <= s && s <= 6680) || + 6683 == s || + 6742 == s || + (6744 <= s && s <= 6750) || + 6752 == s || + 6754 == s || + (6757 <= s && s <= 6764) || + (6771 <= s && s <= 6780) || + 6783 == s || + (6832 <= s && s <= 6845) || + 6846 == s || + (6912 <= s && s <= 6915) || + 6964 == s || + (6966 <= s && s <= 6970) || + 6972 == s || + 6978 == s || + (7019 <= s && s <= 7027) || + (7040 <= s && s <= 7041) || + (7074 <= s && s <= 7077) || + (7080 <= s && s <= 7081) || + (7083 <= s && s <= 7085) || + 7142 == s || + (7144 <= s && s <= 7145) || + 7149 == s || + (7151 <= s && s <= 7153) || + (7212 <= s && s <= 7219) || + (7222 <= s && s <= 7223) || + (7376 <= s && s <= 7378) || + (7380 <= s && s <= 7392) || + (7394 <= s && s <= 7400) || + 7405 == s || + 7412 == s || + (7416 <= s && s <= 7417) || + (7616 <= s && s <= 7673) || + (7675 <= s && s <= 7679) || + 8204 == s || + (8400 <= s && s <= 8412) || + (8413 <= s && s <= 8416) || + 8417 == s || + (8418 <= s && s <= 8420) || + (8421 <= s && s <= 8432) || + (11503 <= s && s <= 11505) || + 11647 == s || + (11744 <= s && s <= 11775) || + (12330 <= s && s <= 12333) || + (12334 <= s && s <= 12335) || + (12441 <= s && s <= 12442) || + 42607 == s || + (42608 <= s && s <= 42610) || + (42612 <= s && s <= 42621) || + (42654 <= s && s <= 42655) || + (42736 <= s && s <= 42737) || + 43010 == s || + 43014 == s || + 43019 == s || + (43045 <= s && s <= 43046) || + (43204 <= s && s <= 43205) || + (43232 <= s && s <= 43249) || + (43302 <= s && s <= 43309) || + (43335 <= s && s <= 43345) || + (43392 <= s && s <= 43394) || + 43443 == s || + (43446 <= s && s <= 43449) || + 43452 == s || + 43493 == s || + (43561 <= s && s <= 43566) || + (43569 <= s && s <= 43570) || + (43573 <= s && s <= 43574) || + 43587 == s || + 43596 == s || + 43644 == s || + 43696 == s || + (43698 <= s && s <= 43700) || + (43703 <= s && s <= 43704) || + (43710 <= s && s <= 43711) || + 43713 == s || + (43756 <= s && s <= 43757) || + 43766 == s || + 44005 == s || + 44008 == s || + 44013 == s || + 64286 == s || + (65024 <= s && s <= 65039) || + (65056 <= s && s <= 65071) || + (65438 <= s && s <= 65439) || + 66045 == s || + 66272 == s || + (66422 <= s && s <= 66426) || + (68097 <= s && s <= 68099) || + (68101 <= s && s <= 68102) || + (68108 <= s && s <= 68111) || + (68152 <= s && s <= 68154) || + 68159 == s || + (68325 <= s && s <= 68326) || + 69633 == s || + (69688 <= s && s <= 69702) || + (69759 <= s && s <= 69761) || + (69811 <= s && s <= 69814) || + (69817 <= s && s <= 69818) || + (69888 <= s && s <= 69890) || + (69927 <= s && s <= 69931) || + (69933 <= s && s <= 69940) || + 70003 == s || + (70016 <= s && s <= 70017) || + (70070 <= s && s <= 70078) || + (70090 <= s && s <= 70092) || + (70191 <= s && s <= 70193) || + 70196 == s || + (70198 <= s && s <= 70199) || + 70206 == s || + 70367 == s || + (70371 <= s && s <= 70378) || + (70400 <= s && s <= 70401) || + 70460 == s || + 70462 == s || + 70464 == s || + 70487 == s || + (70502 <= s && s <= 70508) || + (70512 <= s && s <= 70516) || + (70712 <= s && s <= 70719) || + (70722 <= s && s <= 70724) || + 70726 == s || + 70832 == s || + (70835 <= s && s <= 70840) || + 70842 == s || + 70845 == s || + (70847 <= s && s <= 70848) || + (70850 <= s && s <= 70851) || + 71087 == s || + (71090 <= s && s <= 71093) || + (71100 <= s && s <= 71101) || + (71103 <= s && s <= 71104) || + (71132 <= s && s <= 71133) || + (71219 <= s && s <= 71226) || + 71229 == s || + (71231 <= s && s <= 71232) || + 71339 == s || + 71341 == s || + (71344 <= s && s <= 71349) || + 71351 == s || + (71453 <= s && s <= 71455) || + (71458 <= s && s <= 71461) || + (71463 <= s && s <= 71467) || + (72193 <= s && s <= 72198) || + (72201 <= s && s <= 72202) || + (72243 <= s && s <= 72248) || + (72251 <= s && s <= 72254) || + 72263 == s || + (72273 <= s && s <= 72278) || + (72281 <= s && s <= 72283) || + (72330 <= s && s <= 72342) || + (72344 <= s && s <= 72345) || + (72752 <= s && s <= 72758) || + (72760 <= s && s <= 72765) || + 72767 == s || + (72850 <= s && s <= 72871) || + (72874 <= s && s <= 72880) || + (72882 <= s && s <= 72883) || + (72885 <= s && s <= 72886) || + (73009 <= s && s <= 73014) || + 73018 == s || + (73020 <= s && s <= 73021) || + (73023 <= s && s <= 73029) || + 73031 == s || + (92912 <= s && s <= 92916) || + (92976 <= s && s <= 92982) || + (94095 <= s && s <= 94098) || + (113821 <= s && s <= 113822) || + 119141 == s || + (119143 <= s && s <= 119145) || + (119150 <= s && s <= 119154) || + (119163 <= s && s <= 119170) || + (119173 <= s && s <= 119179) || + (119210 <= s && s <= 119213) || + (119362 <= s && s <= 119364) || + (121344 <= s && s <= 121398) || + (121403 <= s && s <= 121452) || + 121461 == s || + 121476 == s || + (121499 <= s && s <= 121503) || + (121505 <= s && s <= 121519) || + (122880 <= s && s <= 122886) || + (122888 <= s && s <= 122904) || + (122907 <= s && s <= 122913) || + (122915 <= s && s <= 122916) || + (122918 <= s && s <= 122922) || + (125136 <= s && s <= 125142) || + (125252 <= s && s <= 125258) || + (917536 <= s && s <= 917631) || + (917760 <= s && s <= 917999) + ? e + : 127462 <= s && s <= 127487 + ? t + : 2307 == s || + 2363 == s || + (2366 <= s && s <= 2368) || + (2377 <= s && s <= 2380) || + (2382 <= s && s <= 2383) || + (2434 <= s && s <= 2435) || + (2495 <= s && s <= 2496) || + (2503 <= s && s <= 2504) || + (2507 <= s && s <= 2508) || + 2563 == s || + (2622 <= s && s <= 2624) || + 2691 == s || + (2750 <= s && s <= 2752) || + 2761 == s || + (2763 <= s && s <= 2764) || + (2818 <= s && s <= 2819) || + 2880 == s || + (2887 <= s && s <= 2888) || + (2891 <= s && s <= 2892) || + 3007 == s || + (3009 <= s && s <= 3010) || + (3014 <= s && s <= 3016) || + (3018 <= s && s <= 3020) || + (3073 <= s && s <= 3075) || + (3137 <= s && s <= 3140) || + (3202 <= s && s <= 3203) || + 3262 == s || + (3264 <= s && s <= 3265) || + (3267 <= s && s <= 3268) || + (3271 <= s && s <= 3272) || + (3274 <= s && s <= 3275) || + (3330 <= s && s <= 3331) || + (3391 <= s && s <= 3392) || + (3398 <= s && s <= 3400) || + (3402 <= s && s <= 3404) || + (3458 <= s && s <= 3459) || + (3536 <= s && s <= 3537) || + (3544 <= s && s <= 3550) || + (3570 <= s && s <= 3571) || + 3635 == s || + 3763 == s || + (3902 <= s && s <= 3903) || + 3967 == s || + 4145 == s || + (4155 <= s && s <= 4156) || + (4182 <= s && s <= 4183) || + 4228 == s || + 6070 == s || + (6078 <= s && s <= 6085) || + (6087 <= s && s <= 6088) || + (6435 <= s && s <= 6438) || + (6441 <= s && s <= 6443) || + (6448 <= s && s <= 6449) || + (6451 <= s && s <= 6456) || + (6681 <= s && s <= 6682) || + 6741 == s || + 6743 == s || + (6765 <= s && s <= 6770) || + 6916 == s || + 6965 == s || + 6971 == s || + (6973 <= s && s <= 6977) || + (6979 <= s && s <= 6980) || + 7042 == s || + 7073 == s || + (7078 <= s && s <= 7079) || + 7082 == s || + 7143 == s || + (7146 <= s && s <= 7148) || + 7150 == s || + (7154 <= s && s <= 7155) || + (7204 <= s && s <= 7211) || + (7220 <= s && s <= 7221) || + 7393 == s || + (7410 <= s && s <= 7411) || + 7415 == s || + (43043 <= s && s <= 43044) || + 43047 == s || + (43136 <= s && s <= 43137) || + (43188 <= s && s <= 43203) || + (43346 <= s && s <= 43347) || + 43395 == s || + (43444 <= s && s <= 43445) || + (43450 <= s && s <= 43451) || + (43453 <= s && s <= 43456) || + (43567 <= s && s <= 43568) || + (43571 <= s && s <= 43572) || + 43597 == s || + 43755 == s || + (43758 <= s && s <= 43759) || + 43765 == s || + (44003 <= s && s <= 44004) || + (44006 <= s && s <= 44007) || + (44009 <= s && s <= 44010) || + 44012 == s || + 69632 == s || + 69634 == s || + 69762 == s || + (69808 <= s && s <= 69810) || + (69815 <= s && s <= 69816) || + 69932 == s || + 70018 == s || + (70067 <= s && s <= 70069) || + (70079 <= s && s <= 70080) || + (70188 <= s && s <= 70190) || + (70194 <= s && s <= 70195) || + 70197 == s || + (70368 <= s && s <= 70370) || + (70402 <= s && s <= 70403) || + 70463 == s || + (70465 <= s && s <= 70468) || + (70471 <= s && s <= 70472) || + (70475 <= s && s <= 70477) || + (70498 <= s && s <= 70499) || + (70709 <= s && s <= 70711) || + (70720 <= s && s <= 70721) || + 70725 == s || + (70833 <= s && s <= 70834) || + 70841 == s || + (70843 <= s && s <= 70844) || + 70846 == s || + 70849 == s || + (71088 <= s && s <= 71089) || + (71096 <= s && s <= 71099) || + 71102 == s || + (71216 <= s && s <= 71218) || + (71227 <= s && s <= 71228) || + 71230 == s || + 71340 == s || + (71342 <= s && s <= 71343) || + 71350 == s || + (71456 <= s && s <= 71457) || + 71462 == s || + (72199 <= s && s <= 72200) || + 72249 == s || + (72279 <= s && s <= 72280) || + 72343 == s || + 72751 == s || + 72766 == s || + 72873 == s || + 72881 == s || + 72884 == s || + (94033 <= s && s <= 94078) || + 119142 == s || + 119149 == s + ? 5 + : (4352 <= s && s <= 4447) || (43360 <= s && s <= 43388) + ? 6 + : (4448 <= s && s <= 4519) || (55216 <= s && s <= 55238) + ? 7 + : (4520 <= s && s <= 4607) || (55243 <= s && s <= 55291) + ? 8 + : 44032 == s || + 44060 == s || + 44088 == s || + 44116 == s || + 44144 == s || + 44172 == s || + 44200 == s || + 44228 == s || + 44256 == s || + 44284 == s || + 44312 == s || + 44340 == s || + 44368 == s || + 44396 == s || + 44424 == s || + 44452 == s || + 44480 == s || + 44508 == s || + 44536 == s || + 44564 == s || + 44592 == s || + 44620 == s || + 44648 == s || + 44676 == s || + 44704 == s || + 44732 == s || + 44760 == s || + 44788 == s || + 44816 == s || + 44844 == s || + 44872 == s || + 44900 == s || + 44928 == s || + 44956 == s || + 44984 == s || + 45012 == s || + 45040 == s || + 45068 == s || + 45096 == s || + 45124 == s || + 45152 == s || + 45180 == s || + 45208 == s || + 45236 == s || + 45264 == s || + 45292 == s || + 45320 == s || + 45348 == s || + 45376 == s || + 45404 == s || + 45432 == s || + 45460 == s || + 45488 == s || + 45516 == s || + 45544 == s || + 45572 == s || + 45600 == s || + 45628 == s || + 45656 == s || + 45684 == s || + 45712 == s || + 45740 == s || + 45768 == s || + 45796 == s || + 45824 == s || + 45852 == s || + 45880 == s || + 45908 == s || + 45936 == s || + 45964 == s || + 45992 == s || + 46020 == s || + 46048 == s || + 46076 == s || + 46104 == s || + 46132 == s || + 46160 == s || + 46188 == s || + 46216 == s || + 46244 == s || + 46272 == s || + 46300 == s || + 46328 == s || + 46356 == s || + 46384 == s || + 46412 == s || + 46440 == s || + 46468 == s || + 46496 == s || + 46524 == s || + 46552 == s || + 46580 == s || + 46608 == s || + 46636 == s || + 46664 == s || + 46692 == s || + 46720 == s || + 46748 == s || + 46776 == s || + 46804 == s || + 46832 == s || + 46860 == s || + 46888 == s || + 46916 == s || + 46944 == s || + 46972 == s || + 47e3 == s || + 47028 == s || + 47056 == s || + 47084 == s || + 47112 == s || + 47140 == s || + 47168 == s || + 47196 == s || + 47224 == s || + 47252 == s || + 47280 == s || + 47308 == s || + 47336 == s || + 47364 == s || + 47392 == s || + 47420 == s || + 47448 == s || + 47476 == s || + 47504 == s || + 47532 == s || + 47560 == s || + 47588 == s || + 47616 == s || + 47644 == s || + 47672 == s || + 47700 == s || + 47728 == s || + 47756 == s || + 47784 == s || + 47812 == s || + 47840 == s || + 47868 == s || + 47896 == s || + 47924 == s || + 47952 == s || + 47980 == s || + 48008 == s || + 48036 == s || + 48064 == s || + 48092 == s || + 48120 == s || + 48148 == s || + 48176 == s || + 48204 == s || + 48232 == s || + 48260 == s || + 48288 == s || + 48316 == s || + 48344 == s || + 48372 == s || + 48400 == s || + 48428 == s || + 48456 == s || + 48484 == s || + 48512 == s || + 48540 == s || + 48568 == s || + 48596 == s || + 48624 == s || + 48652 == s || + 48680 == s || + 48708 == s || + 48736 == s || + 48764 == s || + 48792 == s || + 48820 == s || + 48848 == s || + 48876 == s || + 48904 == s || + 48932 == s || + 48960 == s || + 48988 == s || + 49016 == s || + 49044 == s || + 49072 == s || + 49100 == s || + 49128 == s || + 49156 == s || + 49184 == s || + 49212 == s || + 49240 == s || + 49268 == s || + 49296 == s || + 49324 == s || + 49352 == s || + 49380 == s || + 49408 == s || + 49436 == s || + 49464 == s || + 49492 == s || + 49520 == s || + 49548 == s || + 49576 == s || + 49604 == s || + 49632 == s || + 49660 == s || + 49688 == s || + 49716 == s || + 49744 == s || + 49772 == s || + 49800 == s || + 49828 == s || + 49856 == s || + 49884 == s || + 49912 == s || + 49940 == s || + 49968 == s || + 49996 == s || + 50024 == s || + 50052 == s || + 50080 == s || + 50108 == s || + 50136 == s || + 50164 == s || + 50192 == s || + 50220 == s || + 50248 == s || + 50276 == s || + 50304 == s || + 50332 == s || + 50360 == s || + 50388 == s || + 50416 == s || + 50444 == s || + 50472 == s || + 50500 == s || + 50528 == s || + 50556 == s || + 50584 == s || + 50612 == s || + 50640 == s || + 50668 == s || + 50696 == s || + 50724 == s || + 50752 == s || + 50780 == s || + 50808 == s || + 50836 == s || + 50864 == s || + 50892 == s || + 50920 == s || + 50948 == s || + 50976 == s || + 51004 == s || + 51032 == s || + 51060 == s || + 51088 == s || + 51116 == s || + 51144 == s || + 51172 == s || + 51200 == s || + 51228 == s || + 51256 == s || + 51284 == s || + 51312 == s || + 51340 == s || + 51368 == s || + 51396 == s || + 51424 == s || + 51452 == s || + 51480 == s || + 51508 == s || + 51536 == s || + 51564 == s || + 51592 == s || + 51620 == s || + 51648 == s || + 51676 == s || + 51704 == s || + 51732 == s || + 51760 == s || + 51788 == s || + 51816 == s || + 51844 == s || + 51872 == s || + 51900 == s || + 51928 == s || + 51956 == s || + 51984 == s || + 52012 == s || + 52040 == s || + 52068 == s || + 52096 == s || + 52124 == s || + 52152 == s || + 52180 == s || + 52208 == s || + 52236 == s || + 52264 == s || + 52292 == s || + 52320 == s || + 52348 == s || + 52376 == s || + 52404 == s || + 52432 == s || + 52460 == s || + 52488 == s || + 52516 == s || + 52544 == s || + 52572 == s || + 52600 == s || + 52628 == s || + 52656 == s || + 52684 == s || + 52712 == s || + 52740 == s || + 52768 == s || + 52796 == s || + 52824 == s || + 52852 == s || + 52880 == s || + 52908 == s || + 52936 == s || + 52964 == s || + 52992 == s || + 53020 == s || + 53048 == s || + 53076 == s || + 53104 == s || + 53132 == s || + 53160 == s || + 53188 == s || + 53216 == s || + 53244 == s || + 53272 == s || + 53300 == s || + 53328 == s || + 53356 == s || + 53384 == s || + 53412 == s || + 53440 == s || + 53468 == s || + 53496 == s || + 53524 == s || + 53552 == s || + 53580 == s || + 53608 == s || + 53636 == s || + 53664 == s || + 53692 == s || + 53720 == s || + 53748 == s || + 53776 == s || + 53804 == s || + 53832 == s || + 53860 == s || + 53888 == s || + 53916 == s || + 53944 == s || + 53972 == s || + 54e3 == s || + 54028 == s || + 54056 == s || + 54084 == s || + 54112 == s || + 54140 == s || + 54168 == s || + 54196 == s || + 54224 == s || + 54252 == s || + 54280 == s || + 54308 == s || + 54336 == s || + 54364 == s || + 54392 == s || + 54420 == s || + 54448 == s || + 54476 == s || + 54504 == s || + 54532 == s || + 54560 == s || + 54588 == s || + 54616 == s || + 54644 == s || + 54672 == s || + 54700 == s || + 54728 == s || + 54756 == s || + 54784 == s || + 54812 == s || + 54840 == s || + 54868 == s || + 54896 == s || + 54924 == s || + 54952 == s || + 54980 == s || + 55008 == s || + 55036 == s || + 55064 == s || + 55092 == s || + 55120 == s || + 55148 == s || + 55176 == s + ? 9 + : (44033 <= s && s <= 44059) || + (44061 <= s && s <= 44087) || + (44089 <= s && s <= 44115) || + (44117 <= s && s <= 44143) || + (44145 <= s && s <= 44171) || + (44173 <= s && s <= 44199) || + (44201 <= s && s <= 44227) || + (44229 <= s && s <= 44255) || + (44257 <= s && s <= 44283) || + (44285 <= s && s <= 44311) || + (44313 <= s && s <= 44339) || + (44341 <= s && s <= 44367) || + (44369 <= s && s <= 44395) || + (44397 <= s && s <= 44423) || + (44425 <= s && s <= 44451) || + (44453 <= s && s <= 44479) || + (44481 <= s && s <= 44507) || + (44509 <= s && s <= 44535) || + (44537 <= s && s <= 44563) || + (44565 <= s && s <= 44591) || + (44593 <= s && s <= 44619) || + (44621 <= s && s <= 44647) || + (44649 <= s && s <= 44675) || + (44677 <= s && s <= 44703) || + (44705 <= s && s <= 44731) || + (44733 <= s && s <= 44759) || + (44761 <= s && s <= 44787) || + (44789 <= s && s <= 44815) || + (44817 <= s && s <= 44843) || + (44845 <= s && s <= 44871) || + (44873 <= s && s <= 44899) || + (44901 <= s && s <= 44927) || + (44929 <= s && s <= 44955) || + (44957 <= s && s <= 44983) || + (44985 <= s && s <= 45011) || + (45013 <= s && s <= 45039) || + (45041 <= s && s <= 45067) || + (45069 <= s && s <= 45095) || + (45097 <= s && s <= 45123) || + (45125 <= s && s <= 45151) || + (45153 <= s && s <= 45179) || + (45181 <= s && s <= 45207) || + (45209 <= s && s <= 45235) || + (45237 <= s && s <= 45263) || + (45265 <= s && s <= 45291) || + (45293 <= s && s <= 45319) || + (45321 <= s && s <= 45347) || + (45349 <= s && s <= 45375) || + (45377 <= s && s <= 45403) || + (45405 <= s && s <= 45431) || + (45433 <= s && s <= 45459) || + (45461 <= s && s <= 45487) || + (45489 <= s && s <= 45515) || + (45517 <= s && s <= 45543) || + (45545 <= s && s <= 45571) || + (45573 <= s && s <= 45599) || + (45601 <= s && s <= 45627) || + (45629 <= s && s <= 45655) || + (45657 <= s && s <= 45683) || + (45685 <= s && s <= 45711) || + (45713 <= s && s <= 45739) || + (45741 <= s && s <= 45767) || + (45769 <= s && s <= 45795) || + (45797 <= s && s <= 45823) || + (45825 <= s && s <= 45851) || + (45853 <= s && s <= 45879) || + (45881 <= s && s <= 45907) || + (45909 <= s && s <= 45935) || + (45937 <= s && s <= 45963) || + (45965 <= s && s <= 45991) || + (45993 <= s && s <= 46019) || + (46021 <= s && s <= 46047) || + (46049 <= s && s <= 46075) || + (46077 <= s && s <= 46103) || + (46105 <= s && s <= 46131) || + (46133 <= s && s <= 46159) || + (46161 <= s && s <= 46187) || + (46189 <= s && s <= 46215) || + (46217 <= s && s <= 46243) || + (46245 <= s && s <= 46271) || + (46273 <= s && s <= 46299) || + (46301 <= s && s <= 46327) || + (46329 <= s && s <= 46355) || + (46357 <= s && s <= 46383) || + (46385 <= s && s <= 46411) || + (46413 <= s && s <= 46439) || + (46441 <= s && s <= 46467) || + (46469 <= s && s <= 46495) || + (46497 <= s && s <= 46523) || + (46525 <= s && s <= 46551) || + (46553 <= s && s <= 46579) || + (46581 <= s && s <= 46607) || + (46609 <= s && s <= 46635) || + (46637 <= s && s <= 46663) || + (46665 <= s && s <= 46691) || + (46693 <= s && s <= 46719) || + (46721 <= s && s <= 46747) || + (46749 <= s && s <= 46775) || + (46777 <= s && s <= 46803) || + (46805 <= s && s <= 46831) || + (46833 <= s && s <= 46859) || + (46861 <= s && s <= 46887) || + (46889 <= s && s <= 46915) || + (46917 <= s && s <= 46943) || + (46945 <= s && s <= 46971) || + (46973 <= s && s <= 46999) || + (47001 <= s && s <= 47027) || + (47029 <= s && s <= 47055) || + (47057 <= s && s <= 47083) || + (47085 <= s && s <= 47111) || + (47113 <= s && s <= 47139) || + (47141 <= s && s <= 47167) || + (47169 <= s && s <= 47195) || + (47197 <= s && s <= 47223) || + (47225 <= s && s <= 47251) || + (47253 <= s && s <= 47279) || + (47281 <= s && s <= 47307) || + (47309 <= s && s <= 47335) || + (47337 <= s && s <= 47363) || + (47365 <= s && s <= 47391) || + (47393 <= s && s <= 47419) || + (47421 <= s && s <= 47447) || + (47449 <= s && s <= 47475) || + (47477 <= s && s <= 47503) || + (47505 <= s && s <= 47531) || + (47533 <= s && s <= 47559) || + (47561 <= s && s <= 47587) || + (47589 <= s && s <= 47615) || + (47617 <= s && s <= 47643) || + (47645 <= s && s <= 47671) || + (47673 <= s && s <= 47699) || + (47701 <= s && s <= 47727) || + (47729 <= s && s <= 47755) || + (47757 <= s && s <= 47783) || + (47785 <= s && s <= 47811) || + (47813 <= s && s <= 47839) || + (47841 <= s && s <= 47867) || + (47869 <= s && s <= 47895) || + (47897 <= s && s <= 47923) || + (47925 <= s && s <= 47951) || + (47953 <= s && s <= 47979) || + (47981 <= s && s <= 48007) || + (48009 <= s && s <= 48035) || + (48037 <= s && s <= 48063) || + (48065 <= s && s <= 48091) || + (48093 <= s && s <= 48119) || + (48121 <= s && s <= 48147) || + (48149 <= s && s <= 48175) || + (48177 <= s && s <= 48203) || + (48205 <= s && s <= 48231) || + (48233 <= s && s <= 48259) || + (48261 <= s && s <= 48287) || + (48289 <= s && s <= 48315) || + (48317 <= s && s <= 48343) || + (48345 <= s && s <= 48371) || + (48373 <= s && s <= 48399) || + (48401 <= s && s <= 48427) || + (48429 <= s && s <= 48455) || + (48457 <= s && s <= 48483) || + (48485 <= s && s <= 48511) || + (48513 <= s && s <= 48539) || + (48541 <= s && s <= 48567) || + (48569 <= s && s <= 48595) || + (48597 <= s && s <= 48623) || + (48625 <= s && s <= 48651) || + (48653 <= s && s <= 48679) || + (48681 <= s && s <= 48707) || + (48709 <= s && s <= 48735) || + (48737 <= s && s <= 48763) || + (48765 <= s && s <= 48791) || + (48793 <= s && s <= 48819) || + (48821 <= s && s <= 48847) || + (48849 <= s && s <= 48875) || + (48877 <= s && s <= 48903) || + (48905 <= s && s <= 48931) || + (48933 <= s && s <= 48959) || + (48961 <= s && s <= 48987) || + (48989 <= s && s <= 49015) || + (49017 <= s && s <= 49043) || + (49045 <= s && s <= 49071) || + (49073 <= s && s <= 49099) || + (49101 <= s && s <= 49127) || + (49129 <= s && s <= 49155) || + (49157 <= s && s <= 49183) || + (49185 <= s && s <= 49211) || + (49213 <= s && s <= 49239) || + (49241 <= s && s <= 49267) || + (49269 <= s && s <= 49295) || + (49297 <= s && s <= 49323) || + (49325 <= s && s <= 49351) || + (49353 <= s && s <= 49379) || + (49381 <= s && s <= 49407) || + (49409 <= s && s <= 49435) || + (49437 <= s && s <= 49463) || + (49465 <= s && s <= 49491) || + (49493 <= s && s <= 49519) || + (49521 <= s && s <= 49547) || + (49549 <= s && s <= 49575) || + (49577 <= s && s <= 49603) || + (49605 <= s && s <= 49631) || + (49633 <= s && s <= 49659) || + (49661 <= s && s <= 49687) || + (49689 <= s && s <= 49715) || + (49717 <= s && s <= 49743) || + (49745 <= s && s <= 49771) || + (49773 <= s && s <= 49799) || + (49801 <= s && s <= 49827) || + (49829 <= s && s <= 49855) || + (49857 <= s && s <= 49883) || + (49885 <= s && s <= 49911) || + (49913 <= s && s <= 49939) || + (49941 <= s && s <= 49967) || + (49969 <= s && s <= 49995) || + (49997 <= s && s <= 50023) || + (50025 <= s && s <= 50051) || + (50053 <= s && s <= 50079) || + (50081 <= s && s <= 50107) || + (50109 <= s && s <= 50135) || + (50137 <= s && s <= 50163) || + (50165 <= s && s <= 50191) || + (50193 <= s && s <= 50219) || + (50221 <= s && s <= 50247) || + (50249 <= s && s <= 50275) || + (50277 <= s && s <= 50303) || + (50305 <= s && s <= 50331) || + (50333 <= s && s <= 50359) || + (50361 <= s && s <= 50387) || + (50389 <= s && s <= 50415) || + (50417 <= s && s <= 50443) || + (50445 <= s && s <= 50471) || + (50473 <= s && s <= 50499) || + (50501 <= s && s <= 50527) || + (50529 <= s && s <= 50555) || + (50557 <= s && s <= 50583) || + (50585 <= s && s <= 50611) || + (50613 <= s && s <= 50639) || + (50641 <= s && s <= 50667) || + (50669 <= s && s <= 50695) || + (50697 <= s && s <= 50723) || + (50725 <= s && s <= 50751) || + (50753 <= s && s <= 50779) || + (50781 <= s && s <= 50807) || + (50809 <= s && s <= 50835) || + (50837 <= s && s <= 50863) || + (50865 <= s && s <= 50891) || + (50893 <= s && s <= 50919) || + (50921 <= s && s <= 50947) || + (50949 <= s && s <= 50975) || + (50977 <= s && s <= 51003) || + (51005 <= s && s <= 51031) || + (51033 <= s && s <= 51059) || + (51061 <= s && s <= 51087) || + (51089 <= s && s <= 51115) || + (51117 <= s && s <= 51143) || + (51145 <= s && s <= 51171) || + (51173 <= s && s <= 51199) || + (51201 <= s && s <= 51227) || + (51229 <= s && s <= 51255) || + (51257 <= s && s <= 51283) || + (51285 <= s && s <= 51311) || + (51313 <= s && s <= 51339) || + (51341 <= s && s <= 51367) || + (51369 <= s && s <= 51395) || + (51397 <= s && s <= 51423) || + (51425 <= s && s <= 51451) || + (51453 <= s && s <= 51479) || + (51481 <= s && s <= 51507) || + (51509 <= s && s <= 51535) || + (51537 <= s && s <= 51563) || + (51565 <= s && s <= 51591) || + (51593 <= s && s <= 51619) || + (51621 <= s && s <= 51647) || + (51649 <= s && s <= 51675) || + (51677 <= s && s <= 51703) || + (51705 <= s && s <= 51731) || + (51733 <= s && s <= 51759) || + (51761 <= s && s <= 51787) || + (51789 <= s && s <= 51815) || + (51817 <= s && s <= 51843) || + (51845 <= s && s <= 51871) || + (51873 <= s && s <= 51899) || + (51901 <= s && s <= 51927) || + (51929 <= s && s <= 51955) || + (51957 <= s && s <= 51983) || + (51985 <= s && s <= 52011) || + (52013 <= s && s <= 52039) || + (52041 <= s && s <= 52067) || + (52069 <= s && s <= 52095) || + (52097 <= s && s <= 52123) || + (52125 <= s && s <= 52151) || + (52153 <= s && s <= 52179) || + (52181 <= s && s <= 52207) || + (52209 <= s && s <= 52235) || + (52237 <= s && s <= 52263) || + (52265 <= s && s <= 52291) || + (52293 <= s && s <= 52319) || + (52321 <= s && s <= 52347) || + (52349 <= s && s <= 52375) || + (52377 <= s && s <= 52403) || + (52405 <= s && s <= 52431) || + (52433 <= s && s <= 52459) || + (52461 <= s && s <= 52487) || + (52489 <= s && s <= 52515) || + (52517 <= s && s <= 52543) || + (52545 <= s && s <= 52571) || + (52573 <= s && s <= 52599) || + (52601 <= s && s <= 52627) || + (52629 <= s && s <= 52655) || + (52657 <= s && s <= 52683) || + (52685 <= s && s <= 52711) || + (52713 <= s && s <= 52739) || + (52741 <= s && s <= 52767) || + (52769 <= s && s <= 52795) || + (52797 <= s && s <= 52823) || + (52825 <= s && s <= 52851) || + (52853 <= s && s <= 52879) || + (52881 <= s && s <= 52907) || + (52909 <= s && s <= 52935) || + (52937 <= s && s <= 52963) || + (52965 <= s && s <= 52991) || + (52993 <= s && s <= 53019) || + (53021 <= s && s <= 53047) || + (53049 <= s && s <= 53075) || + (53077 <= s && s <= 53103) || + (53105 <= s && s <= 53131) || + (53133 <= s && s <= 53159) || + (53161 <= s && s <= 53187) || + (53189 <= s && s <= 53215) || + (53217 <= s && s <= 53243) || + (53245 <= s && s <= 53271) || + (53273 <= s && s <= 53299) || + (53301 <= s && s <= 53327) || + (53329 <= s && s <= 53355) || + (53357 <= s && s <= 53383) || + (53385 <= s && s <= 53411) || + (53413 <= s && s <= 53439) || + (53441 <= s && s <= 53467) || + (53469 <= s && s <= 53495) || + (53497 <= s && s <= 53523) || + (53525 <= s && s <= 53551) || + (53553 <= s && s <= 53579) || + (53581 <= s && s <= 53607) || + (53609 <= s && s <= 53635) || + (53637 <= s && s <= 53663) || + (53665 <= s && s <= 53691) || + (53693 <= s && s <= 53719) || + (53721 <= s && s <= 53747) || + (53749 <= s && s <= 53775) || + (53777 <= s && s <= 53803) || + (53805 <= s && s <= 53831) || + (53833 <= s && s <= 53859) || + (53861 <= s && s <= 53887) || + (53889 <= s && s <= 53915) || + (53917 <= s && s <= 53943) || + (53945 <= s && s <= 53971) || + (53973 <= s && s <= 53999) || + (54001 <= s && s <= 54027) || + (54029 <= s && s <= 54055) || + (54057 <= s && s <= 54083) || + (54085 <= s && s <= 54111) || + (54113 <= s && s <= 54139) || + (54141 <= s && s <= 54167) || + (54169 <= s && s <= 54195) || + (54197 <= s && s <= 54223) || + (54225 <= s && s <= 54251) || + (54253 <= s && s <= 54279) || + (54281 <= s && s <= 54307) || + (54309 <= s && s <= 54335) || + (54337 <= s && s <= 54363) || + (54365 <= s && s <= 54391) || + (54393 <= s && s <= 54419) || + (54421 <= s && s <= 54447) || + (54449 <= s && s <= 54475) || + (54477 <= s && s <= 54503) || + (54505 <= s && s <= 54531) || + (54533 <= s && s <= 54559) || + (54561 <= s && s <= 54587) || + (54589 <= s && s <= 54615) || + (54617 <= s && s <= 54643) || + (54645 <= s && s <= 54671) || + (54673 <= s && s <= 54699) || + (54701 <= s && s <= 54727) || + (54729 <= s && s <= 54755) || + (54757 <= s && s <= 54783) || + (54785 <= s && s <= 54811) || + (54813 <= s && s <= 54839) || + (54841 <= s && s <= 54867) || + (54869 <= s && s <= 54895) || + (54897 <= s && s <= 54923) || + (54925 <= s && s <= 54951) || + (54953 <= s && s <= 54979) || + (54981 <= s && s <= 55007) || + (55009 <= s && s <= 55035) || + (55037 <= s && s <= 55063) || + (55065 <= s && s <= 55091) || + (55093 <= s && s <= 55119) || + (55121 <= s && s <= 55147) || + (55149 <= s && s <= 55175) || + (55177 <= s && s <= 55203) + ? 10 + : 9757 == s || + 9977 == s || + (9994 <= s && s <= 9997) || + 127877 == s || + (127938 <= s && s <= 127940) || + 127943 == s || + (127946 <= s && s <= 127948) || + (128066 <= s && s <= 128067) || + (128070 <= s && s <= 128080) || + 128110 == s || + (128112 <= s && s <= 128120) || + 128124 == s || + (128129 <= s && s <= 128131) || + (128133 <= s && s <= 128135) || + 128170 == s || + (128372 <= s && s <= 128373) || + 128378 == s || + 128400 == s || + (128405 <= s && s <= 128406) || + (128581 <= s && s <= 128583) || + (128587 <= s && s <= 128591) || + 128675 == s || + (128692 <= s && s <= 128694) || + 128704 == s || + 128716 == s || + (129304 <= s && s <= 129308) || + (129310 <= s && s <= 129311) || + 129318 == s || + (129328 <= s && s <= 129337) || + (129341 <= s && s <= 129342) || + (129489 <= s && s <= 129501) + ? n + : 127995 <= s && s <= 127999 + ? 14 + : 8205 == s + ? 15 + : 9792 == s || + 9794 == s || + (9877 <= s && s <= 9878) || + 9992 == s || + 10084 == s || + 127752 == s || + 127806 == s || + 127859 == s || + 127891 == s || + 127908 == s || + 127912 == s || + 127979 == s || + 127981 == s || + 128139 == s || + (128187 <= s && s <= 128188) || + 128295 == s || + 128300 == s || + 128488 == s || + 128640 == s || + 128658 == s + ? i + : 128102 <= s && s <= 128105 + ? o + : 11; + } + return ( + (this.nextBreak = function (e, t) { + if ((void 0 === t && (t = 0), t < 0)) return 0; + if (t >= e.length - 1) return e.length; + for (var r, n, i = a(s(e, t)), o = [], c = t + 1; c < e.length; c++) + if ( + ((n = c - 1), + !( + 55296 <= (r = e).charCodeAt(n) && + r.charCodeAt(n) <= 56319 && + 56320 <= r.charCodeAt(n + 1) && + r.charCodeAt(n + 1) <= 57343 + )) + ) { + var u = a(s(e, c)); + if (A(i, o, u)) return c; + o.push(u); + } + return e.length; + }), + (this.splitGraphemes = function (e) { + for (var t, r = [], n = 0; (t = this.nextBreak(e, n)) < e.length; ) + r.push(e.slice(n, t)), (n = t); + return n < e.length && r.push(e.slice(n)), r; + }), + (this.iterateGraphemes = function (e) { + var t = 0, + r = { + next: function () { + var r, n; + return (n = this.nextBreak(e, t)) < e.length + ? ((r = e.slice(t, n)), (t = n), { value: r, done: !1 }) + : t < e.length + ? ((r = e.slice(t)), (t = e.length), { value: r, done: !1 }) + : { value: void 0, done: !0 }; + }.bind(this), + }; + return ( + 'undefined' != typeof Symbol && + Symbol.iterator && + (r[Symbol.iterator] = function () { + return r; + }), + r + ); + }), + (this.countGraphemes = function (e) { + for (var t, r = 0, n = 0; (t = this.nextBreak(e, n)) < e.length; ) (n = t), r++; + return n < e.length && r++, r; + }), + this + ); + }); + }, + 72918: (e) => { + 'use strict'; + e.exports = (e, t = process.argv) => { + const r = e.startsWith('-') ? '' : 1 === e.length ? '-' : '--', + n = t.indexOf(r + e), + i = t.indexOf('--'); + return -1 !== n && (-1 === i || n < i); + }; + }, + 86834: (e) => { + 'use strict'; + const t = [200, 203, 204, 206, 300, 301, 404, 405, 410, 414, 501], + r = [200, 203, 204, 300, 301, 302, 303, 307, 308, 404, 405, 410, 414, 501], + n = { + date: !0, + connection: !0, + 'keep-alive': !0, + 'proxy-authenticate': !0, + 'proxy-authorization': !0, + te: !0, + trailer: !0, + 'transfer-encoding': !0, + upgrade: !0, + }, + i = { + 'content-length': !0, + 'content-encoding': !0, + 'transfer-encoding': !0, + 'content-range': !0, + }; + function o(e) { + const t = {}; + if (!e) return t; + const r = e.trim().split(/\s*,\s*/); + for (const e of r) { + const [r, n] = e.split(/\s*=\s*/, 2); + t[r] = void 0 === n || n.replace(/^"|"$/g, ''); + } + return t; + } + function s(e) { + let t = []; + for (const r in e) { + const n = e[r]; + t.push(!0 === n ? r : r + '=' + n); + } + if (t.length) return t.join(', '); + } + e.exports = class { + constructor( + e, + t, + { + shared: r, + cacheHeuristic: n, + immutableMinTimeToLive: i, + ignoreCargoCult: A, + trustServerDate: a, + _fromObject: c, + } = {} + ) { + if (c) this._fromObject(c); + else { + if (!t || !t.headers) throw Error('Response headers missing'); + this._assertRequestHasHeaders(e), + (this._responseTime = this.now()), + (this._isShared = !1 !== r), + (this._trustServerDate = void 0 === a || a), + (this._cacheHeuristic = void 0 !== n ? n : 0.1), + (this._immutableMinTtl = void 0 !== i ? i : 864e5), + (this._status = 'status' in t ? t.status : 200), + (this._resHeaders = t.headers), + (this._rescc = o(t.headers['cache-control'])), + (this._method = 'method' in e ? e.method : 'GET'), + (this._url = e.url), + (this._host = e.headers.host), + (this._noAuthorization = !e.headers.authorization), + (this._reqHeaders = t.headers.vary ? e.headers : null), + (this._reqcc = o(e.headers['cache-control'])), + A && + 'pre-check' in this._rescc && + 'post-check' in this._rescc && + (delete this._rescc['pre-check'], + delete this._rescc['post-check'], + delete this._rescc['no-cache'], + delete this._rescc['no-store'], + delete this._rescc['must-revalidate'], + (this._resHeaders = Object.assign({}, this._resHeaders, { + 'cache-control': s(this._rescc), + })), + delete this._resHeaders.expires, + delete this._resHeaders.pragma), + !t.headers['cache-control'] && + /no-cache/.test(t.headers.pragma) && + (this._rescc['no-cache'] = !0); + } + } + now() { + return Date.now(); + } + storable() { + return !( + this._reqcc['no-store'] || + !( + 'GET' === this._method || + 'HEAD' === this._method || + ('POST' === this._method && this._hasExplicitExpiration()) + ) || + -1 === r.indexOf(this._status) || + this._rescc['no-store'] || + (this._isShared && this._rescc.private) || + (this._isShared && !this._noAuthorization && !this._allowsStoringAuthenticated()) || + !( + this._resHeaders.expires || + this._rescc.public || + this._rescc['max-age'] || + this._rescc['s-maxage'] || + -1 !== t.indexOf(this._status) + ) + ); + } + _hasExplicitExpiration() { + return ( + (this._isShared && this._rescc['s-maxage']) || + this._rescc['max-age'] || + this._resHeaders.expires + ); + } + _assertRequestHasHeaders(e) { + if (!e || !e.headers) throw Error('Request headers missing'); + } + satisfiesWithoutRevalidation(e) { + this._assertRequestHasHeaders(e); + const t = o(e.headers['cache-control']); + if (t['no-cache'] || /no-cache/.test(e.headers.pragma)) return !1; + if (t['max-age'] && this.age() > t['max-age']) return !1; + if (t['min-fresh'] && this.timeToLive() < 1e3 * t['min-fresh']) return !1; + if (this.stale()) { + if ( + !( + t['max-stale'] && + !this._rescc['must-revalidate'] && + (!0 === t['max-stale'] || t['max-stale'] > this.age() - this.maxAge()) + ) + ) + return !1; + } + return this._requestMatches(e, !1); + } + _requestMatches(e, t) { + return ( + (!this._url || this._url === e.url) && + this._host === e.headers.host && + (!e.method || this._method === e.method || (t && 'HEAD' === e.method)) && + this._varyMatches(e) + ); + } + _allowsStoringAuthenticated() { + return this._rescc['must-revalidate'] || this._rescc.public || this._rescc['s-maxage']; + } + _varyMatches(e) { + if (!this._resHeaders.vary) return !0; + if ('*' === this._resHeaders.vary) return !1; + const t = this._resHeaders.vary + .trim() + .toLowerCase() + .split(/\s*,\s*/); + for (const r of t) if (e.headers[r] !== this._reqHeaders[r]) return !1; + return !0; + } + _copyWithoutHopByHopHeaders(e) { + const t = {}; + for (const r in e) n[r] || (t[r] = e[r]); + if (e.connection) { + const r = e.connection.trim().split(/\s*,\s*/); + for (const e of r) delete t[e]; + } + if (t.warning) { + const e = t.warning.split(/,/).filter((e) => !/^\s*1[0-9][0-9]/.test(e)); + e.length ? (t.warning = e.join(',').trim()) : delete t.warning; + } + return t; + } + responseHeaders() { + const e = this._copyWithoutHopByHopHeaders(this._resHeaders), + t = this.age(); + return ( + t > 86400 && + !this._hasExplicitExpiration() && + this.maxAge() > 86400 && + (e.warning = (e.warning ? e.warning + ', ' : '') + '113 - "rfc7234 5.5.4"'), + (e.age = '' + Math.round(t)), + (e.date = new Date(this.now()).toUTCString()), + e + ); + } + date() { + return this._trustServerDate ? this._serverDate() : this._responseTime; + } + _serverDate() { + const e = Date.parse(this._resHeaders.date); + if (isFinite(e)) { + const t = 288e5; + if (Math.abs(this._responseTime - e) < t) return e; + } + return this._responseTime; + } + age() { + let e = Math.max(0, (this._responseTime - this.date()) / 1e3); + if (this._resHeaders.age) { + let t = this._ageValue(); + t > e && (e = t); + } + return e + (this.now() - this._responseTime) / 1e3; + } + _ageValue() { + const e = parseInt(this._resHeaders.age); + return isFinite(e) ? e : 0; + } + maxAge() { + if (!this.storable() || this._rescc['no-cache']) return 0; + if ( + this._isShared && + this._resHeaders['set-cookie'] && + !this._rescc.public && + !this._rescc.immutable + ) + return 0; + if ('*' === this._resHeaders.vary) return 0; + if (this._isShared) { + if (this._rescc['proxy-revalidate']) return 0; + if (this._rescc['s-maxage']) return parseInt(this._rescc['s-maxage'], 10); + } + if (this._rescc['max-age']) return parseInt(this._rescc['max-age'], 10); + const e = this._rescc.immutable ? this._immutableMinTtl : 0, + t = this._serverDate(); + if (this._resHeaders.expires) { + const r = Date.parse(this._resHeaders.expires); + return Number.isNaN(r) || r < t ? 0 : Math.max(e, (r - t) / 1e3); + } + if (this._resHeaders['last-modified']) { + const r = Date.parse(this._resHeaders['last-modified']); + if (isFinite(r) && t > r) return Math.max(e, ((t - r) / 1e3) * this._cacheHeuristic); + } + return e; + } + timeToLive() { + return 1e3 * Math.max(0, this.maxAge() - this.age()); + } + stale() { + return this.maxAge() <= this.age(); + } + static fromObject(e) { + return new this(void 0, void 0, { _fromObject: e }); + } + _fromObject(e) { + if (this._responseTime) throw Error('Reinitialized'); + if (!e || 1 !== e.v) throw Error('Invalid serialization'); + (this._responseTime = e.t), + (this._isShared = e.sh), + (this._cacheHeuristic = e.ch), + (this._immutableMinTtl = void 0 !== e.imm ? e.imm : 864e5), + (this._status = e.st), + (this._resHeaders = e.resh), + (this._rescc = e.rescc), + (this._method = e.m), + (this._url = e.u), + (this._host = e.h), + (this._noAuthorization = e.a), + (this._reqHeaders = e.reqh), + (this._reqcc = e.reqcc); + } + toObject() { + return { + v: 1, + t: this._responseTime, + sh: this._isShared, + ch: this._cacheHeuristic, + imm: this._immutableMinTtl, + st: this._status, + resh: this._resHeaders, + rescc: this._rescc, + m: this._method, + u: this._url, + h: this._host, + a: this._noAuthorization, + reqh: this._reqHeaders, + reqcc: this._reqcc, + }; + } + revalidationHeaders(e) { + this._assertRequestHasHeaders(e); + const t = this._copyWithoutHopByHopHeaders(e.headers); + if ((delete t['if-range'], !this._requestMatches(e, !0) || !this.storable())) + return delete t['if-none-match'], delete t['if-modified-since'], t; + this._resHeaders.etag && + (t['if-none-match'] = t['if-none-match'] + ? `${t['if-none-match']}, ${this._resHeaders.etag}` + : this._resHeaders.etag); + if ( + t['accept-ranges'] || + t['if-match'] || + t['if-unmodified-since'] || + (this._method && 'GET' != this._method) + ) { + if ((delete t['if-modified-since'], t['if-none-match'])) { + const e = t['if-none-match'].split(/,/).filter((e) => !/^\s*W\//.test(e)); + e.length ? (t['if-none-match'] = e.join(',').trim()) : delete t['if-none-match']; + } + } else + this._resHeaders['last-modified'] && + !t['if-modified-since'] && + (t['if-modified-since'] = this._resHeaders['last-modified']); + return t; + } + revalidatedPolicy(e, t) { + if ((this._assertRequestHasHeaders(e), !t || !t.headers)) + throw Error('Response headers missing'); + let r = !1; + if ( + (void 0 !== t.status && 304 != t.status + ? (r = !1) + : t.headers.etag && !/^\s*W\//.test(t.headers.etag) + ? (r = + this._resHeaders.etag && + this._resHeaders.etag.replace(/^\s*W\//, '') === t.headers.etag) + : this._resHeaders.etag && t.headers.etag + ? (r = + this._resHeaders.etag.replace(/^\s*W\//, '') === + t.headers.etag.replace(/^\s*W\//, '')) + : this._resHeaders['last-modified'] + ? (r = this._resHeaders['last-modified'] === t.headers['last-modified']) + : this._resHeaders.etag || + this._resHeaders['last-modified'] || + t.headers.etag || + t.headers['last-modified'] || + (r = !0), + !r) + ) + return { policy: new this.constructor(e, t), modified: 304 != t.status, matches: !1 }; + const n = {}; + for (const e in this._resHeaders) + n[e] = e in t.headers && !i[e] ? t.headers[e] : this._resHeaders[e]; + const o = Object.assign({}, t, { + status: this._status, + method: this._method, + headers: n, + }); + return { + policy: new this.constructor(e, o, { + shared: this._isShared, + cacheHeuristic: this._cacheHeuristic, + immutableMinTimeToLive: this._immutableMinTtl, + trustServerDate: this._trustServerDate, + }), + modified: !1, + matches: !0, + }; + } + }; + }, + 92967: (e, t, r) => { + 'use strict'; + const n = r(28614), + i = r(4016), + o = r(97565), + s = r(82905), + A = Symbol('currentStreamsCount'), + a = Symbol('request'), + c = Symbol('cachedOriginSet'), + u = [ + 'maxDeflateDynamicTableSize', + 'maxSessionMemory', + 'maxHeaderListPairs', + 'maxOutstandingPings', + 'maxReservedRemoteStreams', + 'maxSendHeaderBlockLength', + 'paddingStrategy', + 'localAddress', + 'path', + 'rejectUnauthorized', + 'minDHSize', + 'ca', + 'cert', + 'clientCertEngine', + 'ciphers', + 'key', + 'pfx', + 'servername', + 'minVersion', + 'maxVersion', + 'secureProtocol', + 'crl', + 'honorCipherOrder', + 'ecdhCurve', + 'dhparam', + 'secureOptions', + 'sessionIdContext', + ], + l = (e, t, r) => { + if (t in e) { + const n = e[t].indexOf(r); + if (-1 !== n) return e[t].splice(n, 1), 0 === e[t].length && delete e[t], !0; + } + return !1; + }, + h = (e, t, r) => { + t in e ? e[t].push(r) : (e[t] = [r]); + }, + g = (e, t, r) => + t in e ? e[t].filter((e) => !e.closed && !e.destroyed && e[c].includes(r)) : [], + f = (e, t, r) => { + if (t in e) + for (const n of e[t]) + n[c].length < r[c].length && + n[c].every((e) => r[c].includes(e)) && + n[A] + r[A] <= r.remoteSettings.maxConcurrentStreams && + n.close(); + }; + class p extends n { + constructor({ + timeout: e = 6e4, + maxSessions: t = 1 / 0, + maxFreeSessions: r = 1, + maxCachedTlsSessions: n = 100, + } = {}) { + super(), + (this.busySessions = {}), + (this.freeSessions = {}), + (this.queue = {}), + (this.timeout = e), + (this.maxSessions = t), + (this.maxFreeSessions = r), + (this.settings = { enablePush: !1 }), + (this.tlsSessionCache = new s({ maxSize: n })); + } + static normalizeOrigin(e, t) { + return ( + 'string' == typeof e && (e = new URL(e)), + t && e.hostname !== t && (e.hostname = t), + e.origin + ); + } + normalizeOptions(e) { + let t = ''; + if (e) for (const r of u) e[r] && (t += ':' + e[r]); + return t; + } + _tryToCreateNewSession(e, t) { + if (!(e in this.queue) || !(t in this.queue[e])) return; + const r = g(this.busySessions, e, t).length, + n = this.queue[e][t]; + r < this.maxSessions && !n.completed && ((n.completed = !0), n()); + } + _closeCoveredSessions(e, t) { + f(this.freeSessions, e, t), f(this.busySessions, e, t); + } + getSession(e, t, r) { + return new Promise((n, i) => { + Array.isArray(r) ? ((r = [...r]), n()) : (r = [{ resolve: n, reject: i }]); + const s = this.normalizeOptions(t), + u = p.normalizeOrigin(e, t && t.servername); + if (void 0 === u) { + for (const { reject: e } of r) + e(new TypeError('The `origin` argument needs to be a string or an URL object')); + return; + } + if (s in this.freeSessions) { + const e = g(this.freeSessions, s, u); + if (0 !== e.length) { + const t = e.reduce((e, t) => + t.remoteSettings.maxConcurrentStreams >= + e.remoteSettings.maxConcurrentStreams && t[A] > e[A] + ? t + : e + ); + for (const { resolve: e } of r) e(t); + return; + } + } + if (s in this.queue) { + if (u in this.queue[s]) return void this.queue[s][u].listeners.push(...r); + } else this.queue[s] = {}; + const f = () => { + s in this.queue && + this.queue[s][u] === d && + (delete this.queue[s][u], + 0 === Object.keys(this.queue[s]).length && delete this.queue[s]); + }, + d = () => { + const n = `${u}:${s}`; + let i, + p = !1; + try { + const C = this.tlsSessionCache.get(n), + E = o.connect(e, { + createConnection: this.createConnection, + settings: this.settings, + session: C ? C.session : void 0, + ...t, + }); + E[A] = 0; + const I = () => + E[c].reduce( + (e, t) => Math.min(e, g(this.freeSessions, s, t).length), + 1 / 0 + ) < this.maxFreeSessions && (h(this.freeSessions, s, E), !0), + m = () => E[A] < E.remoteSettings.maxConcurrentStreams; + E.socket.once('session', (e) => { + setImmediate(() => { + this.tlsSessionCache.set(n, { session: e, servername: i }); + }); + }), + E.socket.once('secureConnect', () => { + (i = E.socket.servername), + !1 === i && + void 0 !== C && + void 0 !== C.servername && + (E.socket.servername = C.servername); + }), + E.once('error', (e) => { + if (!p) for (const { reject: t } of r) t(e); + this.tlsSessionCache.delete(n); + }), + E.setTimeout(this.timeout, () => { + E.destroy(); + }), + E.once('close', () => { + if (!p) { + const e = new Error('Session closed without receiving a SETTINGS frame'); + for (const { reject: t } of r) t(e); + } + f(), l(this.freeSessions, s, E), this._tryToCreateNewSession(s, u); + }); + const y = () => { + if (s in this.queue) + for (const e of E[c]) + if (e in this.queue[s]) { + const { listeners: t } = this.queue[s][e]; + for (; 0 !== t.length && m(); ) t.shift().resolve(E); + if ( + 0 === this.queue[s][e].listeners.length && + (delete this.queue[s][e], 0 === Object.keys(this.queue[s]).length) + ) { + delete this.queue[s]; + break; + } + if (!m()) break; + } + }; + E.once('origin', () => { + (E[c] = E.originSet), + m() && + (this._closeCoveredSessions(s, E), + y(), + E.on('remoteSettings', () => { + this._closeCoveredSessions(s, E); + })); + }), + E.once('remoteSettings', () => { + if (d.destroyed) { + const e = new Error('Agent has been destroyed'); + for (const t of r) t.reject(e); + E.destroy(); + } else + (E[c] = E.originSet), + this.emit('session', E), + I() + ? y() + : 0 === this.maxFreeSessions + ? (y(), + setImmediate(() => { + E.close(); + })) + : E.close(), + f(), + 0 !== r.length && (this.getSession(u, t, r), (r.length = 0)), + (p = !0), + E.on('remoteSettings', () => { + m() && + l(this.busySessions, s, E) && + (I() ? y() : h(this.busySessions, s, E)); + }); + }), + (E[a] = E.request), + (E.request = (e) => { + const t = E[a](e, { endStream: !1 }); + return ( + E.ref(), + ++E[A], + !m() && l(this.freeSessions, s, E) && h(this.busySessions, s, E), + t.once('close', () => { + --E[A], + m() && + (0 === E[A] && E.unref(), + !l(this.busySessions, s, E) || + E.destroyed || + E.closed || + (I() ? (this._closeCoveredSessions(s, E), y()) : E.close())), + E.destroyed || + E.closed || + ((e, t, r) => { + if (t in e) + for (const n of e[t]) + r[c].length < n[c].length && + r[c].every((e) => n[c].includes(e)) && + r[A] + n[A] <= n.remoteSettings.maxConcurrentStreams && + r.close(); + })(this.freeSessions, s, E); + }), + t + ); + }); + } catch (e) { + for (const t of r) t.reject(e); + f(); + } + }; + (d.listeners = r), + (d.completed = !1), + (d.destroyed = !1), + (this.queue[s][u] = d), + this._tryToCreateNewSession(s, u); + }); + } + request(e, t, r) { + return new Promise((n, i) => { + this.getSession(e, t, [ + { + reject: i, + resolve: (e) => { + n(e.request(r)); + }, + }, + ]); + }); + } + createConnection(e, t) { + return p.connect(e, t); + } + static connect(e, t) { + t.ALPNProtocols = ['h2']; + const r = e.port || 443, + n = e.hostname || e.host; + return void 0 === t.servername && (t.servername = n), i.connect(r, n, t); + } + closeFreeSessions() { + for (const e of Object.values(this.freeSessions)) + for (const t of e) 0 === t[A] && t.close(); + } + destroy(e) { + for (const t of Object.values(this.busySessions)) for (const r of t) r.destroy(e); + for (const t of Object.values(this.freeSessions)) for (const r of t) r.destroy(e); + for (const e of Object.values(this.queue)) + for (const t of Object.values(e)) t.destroyed = !0; + this.queue = {}; + } + } + e.exports = { Agent: p, globalAgent: new p() }; + }, + 89018: (e, t, r) => { + 'use strict'; + const n = r(98605), + i = r(57211), + o = r(19476), + s = r(82905), + A = r(46889), + a = r(44294), + c = r(95581), + u = new s({ maxSize: 100 }), + l = new Map(), + h = (e, t, r) => { + t._httpMessage = { shouldKeepAlive: !0 }; + const n = () => { + e.emit('free', t, r); + }; + t.on('free', n); + const i = () => { + e.removeSocket(t, r); + }; + t.on('close', i); + const o = () => { + e.removeSocket(t, r), t.off('close', i), t.off('free', n), t.off('agentRemove', o); + }; + t.on('agentRemove', o), e.emit('free', t, r); + }; + (e.exports = async (e, t, r) => { + ('string' == typeof e || e instanceof URL) && (e = c(new URL(e))), + 'function' == typeof t && ((r = t), (t = void 0)); + const s = + 'https:' === + (t = { + ALPNProtocols: ['h2', 'http/1.1'], + protocol: 'https:', + ...e, + ...t, + resolveSocket: !0, + }).protocol, + g = t.agent; + if ( + ((t.host = t.hostname || t.host || 'localhost'), + (t.session = t.tlsSession), + (t.servername = t.servername || a(t)), + (t.port = t.port || (s ? 443 : 80)), + (t._defaultAgent = s ? i.globalAgent : n.globalAgent), + g) + ) { + if (g.addRequest) + throw new Error( + 'The `options.agent` object can contain only `http`, `https` or `http2` properties' + ); + t.agent = g[s ? 'https' : 'http']; + } + if (s) { + if ( + 'h2' === + (await (async (e) => { + const t = `${e.host}:${e.port}:${e.ALPNProtocols.sort()}`; + if (!u.has(t)) { + if (l.has(t)) { + return (await l.get(t)).alpnProtocol; + } + const { path: r, agent: n } = e; + e.path = e.socketPath; + const s = o(e); + l.set(t, s); + try { + const { socket: o, alpnProtocol: A } = await s; + if ((u.set(t, A), (e.path = r), 'h2' === A)) o.destroy(); + else { + const { globalAgent: t } = i, + r = i.Agent.prototype.createConnection; + n + ? n.createConnection === r + ? h(n, o, e) + : o.destroy() + : t.createConnection === r + ? h(t, o, e) + : o.destroy(); + } + return l.delete(t), A; + } catch (e) { + throw (l.delete(t), e); + } + } + return u.get(t); + })(t)) + ) + return g && (t.agent = g.http2), new A(t, r); + } + return n.request(t, r); + }), + (e.exports.protocolCache = u); + }, + 46889: (e, t, r) => { + 'use strict'; + const n = r(97565), + { Writable: i } = r(92413), + { Agent: o, globalAgent: s } = r(92967), + A = r(75744), + a = r(95581), + c = r(17395), + u = r(13110), + { + ERR_INVALID_ARG_TYPE: l, + ERR_INVALID_PROTOCOL: h, + ERR_HTTP_HEADERS_SENT: g, + ERR_INVALID_HTTP_TOKEN: f, + ERR_HTTP_INVALID_HEADER_VALUE: p, + ERR_INVALID_CHAR: d, + } = r(91078), + { + HTTP2_HEADER_STATUS: C, + HTTP2_HEADER_METHOD: E, + HTTP2_HEADER_PATH: I, + HTTP2_METHOD_CONNECT: m, + } = n.constants, + y = Symbol('headers'), + w = Symbol('origin'), + B = Symbol('session'), + Q = Symbol('options'), + v = Symbol('flushedHeaders'), + D = Symbol('jobs'), + b = /^[\^_`a-zA-Z\-0-9!#$%&'*+.|~]+$/, + S = /[^\t\u0020-\u007E\u0080-\u00FF]/; + e.exports = class extends i { + constructor(e, t, r) { + super({ autoDestroy: !1 }); + const n = 'string' == typeof e || e instanceof URL; + if ( + (n && (e = a(e instanceof URL ? e : new URL(e))), + 'function' == typeof t || void 0 === t + ? ((r = t), (t = n ? e : { ...e })) + : (t = { ...e, ...t }), + t.h2session) + ) + this[B] = t.h2session; + else if (!1 === t.agent) this.agent = new o({ maxFreeSessions: 0 }); + else if (void 0 === t.agent || null === t.agent) + 'function' == typeof t.createConnection + ? ((this.agent = new o({ maxFreeSessions: 0 })), + (this.agent.createConnection = t.createConnection)) + : (this.agent = s); + else { + if ('function' != typeof t.agent.request) + throw new l('options.agent', ['Agent-like Object', 'undefined', 'false'], t.agent); + this.agent = t.agent; + } + if ( + (t.port || (t.port = t.defaultPort || (this.agent && this.agent.defaultPort) || 443), + (t.host = t.hostname || t.host || 'localhost'), + t.protocol && 'https:' !== t.protocol) + ) + throw new h(t.protocol, 'https:'); + const { timeout: i } = t; + if ( + ((t.timeout = void 0), + (this[y] = Object.create(null)), + (this[D] = []), + (this.socket = null), + (this.connection = null), + (this.method = t.method), + (this.path = t.path), + (this.res = null), + (this.aborted = !1), + (this.reusedSocket = !1), + t.headers) + ) + for (const [e, r] of Object.entries(t.headers)) this.setHeader(e, r); + t.auth && + !('authorization' in this[y]) && + (this[y].authorization = 'Basic ' + Buffer.from(t.auth).toString('base64')), + (t.session = t.tlsSession), + (t.path = t.socketPath), + (this[Q] = t), + 443 === t.port + ? ((t.origin = 'https://' + t.host), + ':authority' in this[y] || (this[y][':authority'] = t.host)) + : ((t.origin = `https://${t.host}:${t.port}`), + ':authority' in this[y] || (this[y][':authority'] = `${t.host}:${t.port}`)), + (this[w] = t), + i && this.setTimeout(i), + r && this.once('response', r), + (this[v] = !1); + } + get method() { + return this[y][E]; + } + set method(e) { + e && (this[y][E] = e.toUpperCase()); + } + get path() { + return this[y][I]; + } + set path(e) { + e && (this[y][I] = e); + } + _write(e, t, r) { + this.flushHeaders(); + const n = () => this._request.write(e, t, r); + this._request ? n() : this[D].push(n); + } + _final(e) { + if (this.destroyed) return; + this.flushHeaders(); + const t = () => this._request.end(e); + this._request ? t() : this[D].push(t); + } + abort() { + (this.res && this.res.complete) || + (this.aborted || process.nextTick(() => this.emit('abort')), + (this.aborted = !0), + this.destroy()); + } + _destroy(e, t) { + this.res && this.res._dump(), this._request && this._request.destroy(), t(e); + } + async flushHeaders() { + if (this[v] || this.destroyed) return; + this[v] = !0; + const e = this.method === m, + t = (t) => { + if (((this._request = t), this.destroyed)) return void t.destroy(); + e || c(t, this, ['timeout', 'continue', 'close', 'error']), + t.once('response', (r, n, i) => { + const o = new A(this.socket, t.readableHighWaterMark); + (this.res = o), + (o.req = this), + (o.statusCode = r[C]), + (o.headers = r), + (o.rawHeaders = i), + o.once('end', () => { + this.aborted + ? ((o.aborted = !0), o.emit('aborted')) + : ((o.complete = !0), (o.socket = null), (o.connection = null)); + }), + e + ? ((o.upgrade = !0), + this.emit('connect', o, t, Buffer.alloc(0)) + ? this.emit('close') + : t.destroy()) + : (t.on('data', (e) => { + o._dumped || o.push(e) || t.pause(); + }), + t.once('end', () => { + o.push(null); + }), + this.emit('response', o) || o._dump()); + }), + t.once('headers', (e) => this.emit('information', { statusCode: e[C] })), + t.once('trailers', (e, t, r) => { + const { res: n } = this; + (n.trailers = e), (n.rawTrailers = r); + }); + const { socket: r } = t.session; + (this.socket = r), (this.connection = r); + for (const e of this[D]) e(); + this.emit('socket', this.socket); + }; + if (this[B]) + try { + t(this[B].request(this[y], { endStream: !1 })); + } catch (e) { + this.emit('error', e); + } + else { + this.reusedSocket = !0; + try { + t(await this.agent.request(this[w], this[Q], this[y])); + } catch (e) { + this.emit('error', e); + } + } + } + getHeader(e) { + if ('string' != typeof e) throw new l('name', 'string', e); + return this[y][e.toLowerCase()]; + } + get headersSent() { + return this[v]; + } + removeHeader(e) { + if ('string' != typeof e) throw new l('name', 'string', e); + if (this.headersSent) throw new g('remove'); + delete this[y][e.toLowerCase()]; + } + setHeader(e, t) { + if (this.headersSent) throw new g('set'); + if ('string' != typeof e || (!b.test(e) && !u(e))) throw new f('Header name', e); + if (void 0 === t) throw new p(t, e); + if (S.test(t)) throw new d('header content', e); + this[y][e.toLowerCase()] = t; + } + setNoDelay() {} + setSocketKeepAlive() {} + setTimeout(e, t) { + const r = () => this._request.setTimeout(e, t); + return this._request ? r() : this[D].push(r), this; + } + get maxHeadersCount() { + if (!this.destroyed && this._request) + return this._request.session.localSettings.maxHeaderListSize; + } + set maxHeadersCount(e) {} + }; + }, + 75744: (e, t, r) => { + 'use strict'; + const { Readable: n } = r(92413); + e.exports = class extends n { + constructor(e, t) { + super({ highWaterMark: t, autoDestroy: !1 }), + (this.statusCode = null), + (this.statusMessage = ''), + (this.httpVersion = '2.0'), + (this.httpVersionMajor = 2), + (this.httpVersionMinor = 0), + (this.headers = {}), + (this.trailers = {}), + (this.req = null), + (this.aborted = !1), + (this.complete = !1), + (this.upgrade = null), + (this.rawHeaders = []), + (this.rawTrailers = []), + (this.socket = e), + (this.connection = e), + (this._dumped = !1); + } + _destroy(e) { + this.req._request.destroy(e); + } + setTimeout(e, t) { + return this.req.setTimeout(e, t), this; + } + _dump() { + this._dumped || ((this._dumped = !0), this.removeAllListeners('data'), this.resume()); + } + _read() { + this.req && this.req._request.resume(); + } + }; + }, + 9453: (e, t, r) => { + 'use strict'; + const n = r(97565), + i = r(92967), + o = r(46889), + s = r(75744), + A = r(89018); + e.exports = { + ...n, + ClientRequest: o, + IncomingMessage: s, + ...i, + request: (e, t, r) => new o(e, t, r), + get: (e, t, r) => { + const n = new o(e, t, r); + return n.end(), n; + }, + auto: A, + }; + }, + 44294: (e, t, r) => { + 'use strict'; + const n = r(11631); + e.exports = (e) => { + let t = e.host; + const r = e.headers && e.headers.host; + if (r) + if (r.startsWith('[')) { + t = -1 === r.indexOf(']') ? r : r.slice(1, -1); + } else t = r.split(':', 1)[0]; + return n.isIP(t) ? '' : t; + }; + }, + 91078: (e) => { + 'use strict'; + const t = (t, r, n) => { + e.exports[r] = class extends t { + constructor(...e) { + super('string' == typeof n ? n : n(e)), + (this.name = `${super.name} [${r}]`), + (this.code = r); + } + }; + }; + t(TypeError, 'ERR_INVALID_ARG_TYPE', (e) => { + const t = e[0].includes('.') ? 'property' : 'argument'; + let r = e[1]; + const n = Array.isArray(r); + return ( + n && (r = `${r.slice(0, -1).join(', ')} or ${r.slice(-1)}`), + `The "${e[0]}" ${t} must be ${n ? 'one of' : 'of'} type ${r}. Received ${typeof e[2]}` + ); + }), + t( + TypeError, + 'ERR_INVALID_PROTOCOL', + (e) => `Protocol "${e[0]}" not supported. Expected "${e[1]}"` + ), + t( + Error, + 'ERR_HTTP_HEADERS_SENT', + (e) => `Cannot ${e[0]} headers after they are sent to the client` + ), + t( + TypeError, + 'ERR_INVALID_HTTP_TOKEN', + (e) => `${e[0]} must be a valid HTTP token [${e[1]}]` + ), + t( + TypeError, + 'ERR_HTTP_INVALID_HEADER_VALUE', + (e) => `Invalid value "${e[0]} for header "${e[1]}"` + ), + t(TypeError, 'ERR_INVALID_CHAR', (e) => `Invalid character in ${e[0]} [${e[1]}]`); + }, + 13110: (e) => { + 'use strict'; + e.exports = (e) => { + switch (e) { + case ':method': + case ':scheme': + case ':authority': + case ':path': + return !0; + default: + return !1; + } + }; + }, + 17395: (e) => { + 'use strict'; + e.exports = (e, t, r) => { + for (const n of r) e.on(n, (...e) => t.emit(n, ...e)); + }; + }, + 95581: (e) => { + 'use strict'; + e.exports = (e) => { + const t = { + protocol: e.protocol, + hostname: + 'string' == typeof e.hostname && e.hostname.startsWith('[') + ? e.hostname.slice(1, -1) + : e.hostname, + host: e.host, + hash: e.hash, + search: e.search, + pathname: e.pathname, + href: e.href, + path: `${e.pathname || ''}${e.search || ''}`, + }; + return ( + 'string' == typeof e.port && 0 !== e.port.length && (t.port = Number(e.port)), + (e.username || e.password) && (t.auth = `${e.username || ''}:${e.password || ''}`), + t + ); + }; + }, + 3870: (e, t, r) => { + 'use strict'; + var n = r(44765).Buffer; + t._dbcs = s; + for (var i = new Array(256), o = 0; o < 256; o++) i[o] = -1; + function s(e, t) { + if (((this.encodingName = e.encodingName), !e)) + throw new Error('DBCS codec is called without the data.'); + if (!e.table) throw new Error("Encoding '" + this.encodingName + "' has no data."); + var r = e.table(); + (this.decodeTables = []), (this.decodeTables[0] = i.slice(0)), (this.decodeTableSeq = []); + for (var n = 0; n < r.length; n++) this._addDecodeChunk(r[n]); + (this.defaultCharUnicode = t.defaultCharUnicode), + (this.encodeTable = []), + (this.encodeTableSeq = []); + var o = {}; + if (e.encodeSkipVals) + for (n = 0; n < e.encodeSkipVals.length; n++) { + var s = e.encodeSkipVals[n]; + if ('number' == typeof s) o[s] = !0; + else for (var A = s.from; A <= s.to; A++) o[A] = !0; + } + if ((this._fillEncodeTable(0, 0, o), e.encodeAdd)) + for (var a in e.encodeAdd) + Object.prototype.hasOwnProperty.call(e.encodeAdd, a) && + this._setEncodeChar(a.charCodeAt(0), e.encodeAdd[a]); + if ( + ((this.defCharSB = this.encodeTable[0][t.defaultCharSingleByte.charCodeAt(0)]), + -1 === this.defCharSB && (this.defCharSB = this.encodeTable[0]['?']), + -1 === this.defCharSB && (this.defCharSB = '?'.charCodeAt(0)), + 'function' == typeof e.gb18030) + ) { + this.gb18030 = e.gb18030(); + var c = this.decodeTables.length, + u = (this.decodeTables[c] = i.slice(0)), + l = this.decodeTables.length, + h = (this.decodeTables[l] = i.slice(0)); + for (n = 129; n <= 254; n++) { + var g = -1e3 - this.decodeTables[0][n], + f = this.decodeTables[g]; + for (A = 48; A <= 57; A++) f[A] = -1e3 - c; + } + for (n = 129; n <= 254; n++) u[n] = -1e3 - l; + for (n = 48; n <= 57; n++) h[n] = -2; + } + } + function A(e, t) { + (this.leadSurrogate = -1), + (this.seqObj = void 0), + (this.encodeTable = t.encodeTable), + (this.encodeTableSeq = t.encodeTableSeq), + (this.defaultCharSingleByte = t.defCharSB), + (this.gb18030 = t.gb18030); + } + function a(e, t) { + (this.nodeIdx = 0), + (this.prevBuf = n.alloc(0)), + (this.decodeTables = t.decodeTables), + (this.decodeTableSeq = t.decodeTableSeq), + (this.defaultCharUnicode = t.defaultCharUnicode), + (this.gb18030 = t.gb18030); + } + function c(e, t) { + if (e[0] > t) return -1; + for (var r = 0, n = e.length; r < n - 1; ) { + var i = r + Math.floor((n - r + 1) / 2); + e[i] <= t ? (r = i) : (n = i); + } + return r; + } + (s.prototype.encoder = A), + (s.prototype.decoder = a), + (s.prototype._getDecodeTrieNode = function (e) { + for (var t = []; e > 0; e >>= 8) t.push(255 & e); + 0 == t.length && t.push(0); + for (var r = this.decodeTables[0], n = t.length - 1; n > 0; n--) { + var o = r[t[n]]; + if (-1 == o) + (r[t[n]] = -1e3 - this.decodeTables.length), + this.decodeTables.push((r = i.slice(0))); + else { + if (!(o <= -1e3)) + throw new Error( + 'Overwrite byte in ' + this.encodingName + ', addr: ' + e.toString(16) + ); + r = this.decodeTables[-1e3 - o]; + } + } + return r; + }), + (s.prototype._addDecodeChunk = function (e) { + var t = parseInt(e[0], 16), + r = this._getDecodeTrieNode(t); + t &= 255; + for (var n = 1; n < e.length; n++) { + var i = e[n]; + if ('string' == typeof i) + for (var o = 0; o < i.length; ) { + var s = i.charCodeAt(o++); + if (55296 <= s && s < 56320) { + var A = i.charCodeAt(o++); + if (!(56320 <= A && A < 57344)) + throw new Error( + 'Incorrect surrogate pair in ' + this.encodingName + ' at chunk ' + e[0] + ); + r[t++] = 65536 + 1024 * (s - 55296) + (A - 56320); + } else if (4080 < s && s <= 4095) { + for (var a = 4095 - s + 2, c = [], u = 0; u < a; u++) c.push(i.charCodeAt(o++)); + (r[t++] = -10 - this.decodeTableSeq.length), this.decodeTableSeq.push(c); + } else r[t++] = s; + } + else { + if ('number' != typeof i) + throw new Error( + "Incorrect type '" + + typeof i + + "' given in " + + this.encodingName + + ' at chunk ' + + e[0] + ); + var l = r[t - 1] + 1; + for (o = 0; o < i; o++) r[t++] = l++; + } + } + if (t > 255) + throw new Error( + 'Incorrect chunk in ' + this.encodingName + ' at addr ' + e[0] + ': too long' + t + ); + }), + (s.prototype._getEncodeBucket = function (e) { + var t = e >> 8; + return ( + void 0 === this.encodeTable[t] && (this.encodeTable[t] = i.slice(0)), + this.encodeTable[t] + ); + }), + (s.prototype._setEncodeChar = function (e, t) { + var r = this._getEncodeBucket(e), + n = 255 & e; + r[n] <= -10 ? (this.encodeTableSeq[-10 - r[n]][-1] = t) : -1 == r[n] && (r[n] = t); + }), + (s.prototype._setEncodeSequence = function (e, t) { + var r, + n = e[0], + i = this._getEncodeBucket(n), + o = 255 & n; + i[o] <= -10 + ? (r = this.encodeTableSeq[-10 - i[o]]) + : ((r = {}), + -1 !== i[o] && (r[-1] = i[o]), + (i[o] = -10 - this.encodeTableSeq.length), + this.encodeTableSeq.push(r)); + for (var s = 1; s < e.length - 1; s++) { + var A = r[n]; + 'object' == typeof A ? (r = A) : ((r = r[n] = {}), void 0 !== A && (r[-1] = A)); + } + r[(n = e[e.length - 1])] = t; + }), + (s.prototype._fillEncodeTable = function (e, t, r) { + for (var n = this.decodeTables[e], i = 0; i < 256; i++) { + var o = n[i], + s = t + i; + r[s] || + (o >= 0 + ? this._setEncodeChar(o, s) + : o <= -1e3 + ? this._fillEncodeTable(-1e3 - o, s << 8, r) + : o <= -10 && this._setEncodeSequence(this.decodeTableSeq[-10 - o], s)); + } + }), + (A.prototype.write = function (e) { + for ( + var t = n.alloc(e.length * (this.gb18030 ? 4 : 3)), + r = this.leadSurrogate, + i = this.seqObj, + o = -1, + s = 0, + A = 0; + ; + + ) { + if (-1 === o) { + if (s == e.length) break; + var a = e.charCodeAt(s++); + } else { + a = o; + o = -1; + } + if (55296 <= a && a < 57344) + if (a < 56320) { + if (-1 === r) { + r = a; + continue; + } + (r = a), (a = -1); + } else + -1 !== r ? ((a = 65536 + 1024 * (r - 55296) + (a - 56320)), (r = -1)) : (a = -1); + else -1 !== r && ((o = a), (a = -1), (r = -1)); + var u = -1; + if (void 0 !== i && -1 != a) { + var l = i[a]; + if ('object' == typeof l) { + i = l; + continue; + } + 'number' == typeof l + ? (u = l) + : null == l && void 0 !== (l = i[-1]) && ((u = l), (o = a)), + (i = void 0); + } else if (a >= 0) { + var h = this.encodeTable[a >> 8]; + if ((void 0 !== h && (u = h[255 & a]), u <= -10)) { + i = this.encodeTableSeq[-10 - u]; + continue; + } + if (-1 == u && this.gb18030) { + var g = c(this.gb18030.uChars, a); + if (-1 != g) { + u = this.gb18030.gbChars[g] + (a - this.gb18030.uChars[g]); + (t[A++] = 129 + Math.floor(u / 12600)), + (u %= 12600), + (t[A++] = 48 + Math.floor(u / 1260)), + (u %= 1260), + (t[A++] = 129 + Math.floor(u / 10)), + (u %= 10), + (t[A++] = 48 + u); + continue; + } + } + } + -1 === u && (u = this.defaultCharSingleByte), + u < 256 + ? (t[A++] = u) + : u < 65536 + ? ((t[A++] = u >> 8), (t[A++] = 255 & u)) + : ((t[A++] = u >> 16), (t[A++] = (u >> 8) & 255), (t[A++] = 255 & u)); + } + return (this.seqObj = i), (this.leadSurrogate = r), t.slice(0, A); + }), + (A.prototype.end = function () { + if (-1 !== this.leadSurrogate || void 0 !== this.seqObj) { + var e = n.alloc(10), + t = 0; + if (this.seqObj) { + var r = this.seqObj[-1]; + void 0 !== r && (r < 256 ? (e[t++] = r) : ((e[t++] = r >> 8), (e[t++] = 255 & r))), + (this.seqObj = void 0); + } + return ( + -1 !== this.leadSurrogate && + ((e[t++] = this.defaultCharSingleByte), (this.leadSurrogate = -1)), + e.slice(0, t) + ); + } + }), + (A.prototype.findIdx = c), + (a.prototype.write = function (e) { + var t = n.alloc(2 * e.length), + r = this.nodeIdx, + i = this.prevBuf, + o = this.prevBuf.length, + s = -this.prevBuf.length; + o > 0 && (i = n.concat([i, e.slice(0, 10)])); + for (var A = 0, a = 0; A < e.length; A++) { + var u, + l = A >= 0 ? e[A] : i[A + o]; + if ((u = this.decodeTables[r][l]) >= 0); + else if (-1 === u) (A = s), (u = this.defaultCharUnicode.charCodeAt(0)); + else if (-2 === u) { + var h = s >= 0 ? e.slice(s, A + 1) : i.slice(s + o, A + 1 + o), + g = 12600 * (h[0] - 129) + 1260 * (h[1] - 48) + 10 * (h[2] - 129) + (h[3] - 48), + f = c(this.gb18030.gbChars, g); + u = this.gb18030.uChars[f] + g - this.gb18030.gbChars[f]; + } else { + if (u <= -1e3) { + r = -1e3 - u; + continue; + } + if (!(u <= -10)) + throw new Error( + 'iconv-lite internal error: invalid decoding table value ' + + u + + ' at ' + + r + + '/' + + l + ); + for (var p = this.decodeTableSeq[-10 - u], d = 0; d < p.length - 1; d++) + (u = p[d]), (t[a++] = 255 & u), (t[a++] = u >> 8); + u = p[p.length - 1]; + } + if (u > 65535) { + u -= 65536; + var C = 55296 + Math.floor(u / 1024); + (t[a++] = 255 & C), (t[a++] = C >> 8), (u = 56320 + (u % 1024)); + } + (t[a++] = 255 & u), (t[a++] = u >> 8), (r = 0), (s = A + 1); + } + return ( + (this.nodeIdx = r), + (this.prevBuf = s >= 0 ? e.slice(s) : i.slice(s + o)), + t.slice(0, a).toString('ucs2') + ); + }), + (a.prototype.end = function () { + for (var e = ''; this.prevBuf.length > 0; ) { + e += this.defaultCharUnicode; + var t = this.prevBuf.slice(1); + (this.prevBuf = n.alloc(0)), (this.nodeIdx = 0), t.length > 0 && (e += this.write(t)); + } + return (this.nodeIdx = 0), e; + }); + }, + 18476: (e, t, r) => { + 'use strict'; + e.exports = { + shiftjis: { + type: '_dbcs', + table: function () { + return r(49688); + }, + encodeAdd: { '¥': 92, '‾': 126 }, + encodeSkipVals: [{ from: 60736, to: 63808 }], + }, + csshiftjis: 'shiftjis', + mskanji: 'shiftjis', + sjis: 'shiftjis', + windows31j: 'shiftjis', + ms31j: 'shiftjis', + xsjis: 'shiftjis', + windows932: 'shiftjis', + ms932: 'shiftjis', + 932: 'shiftjis', + cp932: 'shiftjis', + eucjp: { + type: '_dbcs', + table: function () { + return r(20345); + }, + encodeAdd: { '¥': 92, '‾': 126 }, + }, + gb2312: 'cp936', + gb231280: 'cp936', + gb23121980: 'cp936', + csgb2312: 'cp936', + csiso58gb231280: 'cp936', + euccn: 'cp936', + windows936: 'cp936', + ms936: 'cp936', + 936: 'cp936', + cp936: { + type: '_dbcs', + table: function () { + return r(2685); + }, + }, + gbk: { + type: '_dbcs', + table: function () { + return r(2685).concat(r(4764)); + }, + }, + xgbk: 'gbk', + isoir58: 'gbk', + gb18030: { + type: '_dbcs', + table: function () { + return r(2685).concat(r(4764)); + }, + gb18030: function () { + return r(39909); + }, + encodeSkipVals: [128], + encodeAdd: { '€': 41699 }, + }, + chinese: 'gb18030', + windows949: 'cp949', + ms949: 'cp949', + 949: 'cp949', + cp949: { + type: '_dbcs', + table: function () { + return r(39192); + }, + }, + cseuckr: 'cp949', + csksc56011987: 'cp949', + euckr: 'cp949', + isoir149: 'cp949', + korean: 'cp949', + ksc56011987: 'cp949', + ksc56011989: 'cp949', + ksc5601: 'cp949', + windows950: 'cp950', + ms950: 'cp950', + 950: 'cp950', + cp950: { + type: '_dbcs', + table: function () { + return r(73691); + }, + }, + big5: 'big5hkscs', + big5hkscs: { + type: '_dbcs', + table: function () { + return r(73691).concat(r(93701)); + }, + encodeSkipVals: [41676], + }, + cnbig5: 'big5hkscs', + csbig5: 'big5hkscs', + xxbig5: 'big5hkscs', + }; + }, + 15709: (e, t, r) => { + 'use strict'; + for ( + var n = [r(70497), r(2682), r(46339), r(31658), r(1999), r(53522), r(3870), r(18476)], + i = 0; + i < n.length; + i++ + ) { + var o = n[i]; + for (var s in o) Object.prototype.hasOwnProperty.call(o, s) && (t[s] = o[s]); + } + }, + 70497: (e, t, r) => { + 'use strict'; + var n = r(44765).Buffer; + function i(e, t) { + (this.enc = e.encodingName), + (this.bomAware = e.bomAware), + 'base64' === this.enc + ? (this.encoder = a) + : 'cesu8' === this.enc && + ((this.enc = 'utf8'), + (this.encoder = c), + '💩' !== n.from('eda0bdedb2a9', 'hex').toString() && + ((this.decoder = u), (this.defaultCharUnicode = t.defaultCharUnicode))); + } + (e.exports = { + utf8: { type: '_internal', bomAware: !0 }, + cesu8: { type: '_internal', bomAware: !0 }, + unicode11utf8: 'utf8', + ucs2: { type: '_internal', bomAware: !0 }, + utf16le: 'ucs2', + binary: { type: '_internal' }, + base64: { type: '_internal' }, + hex: { type: '_internal' }, + _internal: i, + }), + (i.prototype.encoder = A), + (i.prototype.decoder = s); + var o = r(24304).StringDecoder; + function s(e, t) { + o.call(this, t.enc); + } + function A(e, t) { + this.enc = t.enc; + } + function a(e, t) { + this.prevStr = ''; + } + function c(e, t) {} + function u(e, t) { + (this.acc = 0), + (this.contBytes = 0), + (this.accBytes = 0), + (this.defaultCharUnicode = t.defaultCharUnicode); + } + o.prototype.end || (o.prototype.end = function () {}), + (s.prototype = o.prototype), + (A.prototype.write = function (e) { + return n.from(e, this.enc); + }), + (A.prototype.end = function () {}), + (a.prototype.write = function (e) { + var t = (e = this.prevStr + e).length - (e.length % 4); + return (this.prevStr = e.slice(t)), (e = e.slice(0, t)), n.from(e, 'base64'); + }), + (a.prototype.end = function () { + return n.from(this.prevStr, 'base64'); + }), + (c.prototype.write = function (e) { + for (var t = n.alloc(3 * e.length), r = 0, i = 0; i < e.length; i++) { + var o = e.charCodeAt(i); + o < 128 + ? (t[r++] = o) + : o < 2048 + ? ((t[r++] = 192 + (o >>> 6)), (t[r++] = 128 + (63 & o))) + : ((t[r++] = 224 + (o >>> 12)), + (t[r++] = 128 + ((o >>> 6) & 63)), + (t[r++] = 128 + (63 & o))); + } + return t.slice(0, r); + }), + (c.prototype.end = function () {}), + (u.prototype.write = function (e) { + for ( + var t = this.acc, r = this.contBytes, n = this.accBytes, i = '', o = 0; + o < e.length; + o++ + ) { + var s = e[o]; + 128 != (192 & s) + ? (r > 0 && ((i += this.defaultCharUnicode), (r = 0)), + s < 128 + ? (i += String.fromCharCode(s)) + : s < 224 + ? ((t = 31 & s), (r = 1), (n = 1)) + : s < 240 + ? ((t = 15 & s), (r = 2), (n = 1)) + : (i += this.defaultCharUnicode)) + : r > 0 + ? ((t = (t << 6) | (63 & s)), + n++, + 0 === --r && + (i += + (2 === n && t < 128 && t > 0) || (3 === n && t < 2048) + ? this.defaultCharUnicode + : String.fromCharCode(t))) + : (i += this.defaultCharUnicode); + } + return (this.acc = t), (this.contBytes = r), (this.accBytes = n), i; + }), + (u.prototype.end = function () { + var e = 0; + return this.contBytes > 0 && (e += this.defaultCharUnicode), e; + }); + }, + 31658: (e, t, r) => { + 'use strict'; + var n = r(44765).Buffer; + function i(e, t) { + if (!e) throw new Error('SBCS codec is called without the data.'); + if (!e.chars || (128 !== e.chars.length && 256 !== e.chars.length)) + throw new Error( + "Encoding '" + e.type + "' has incorrect 'chars' (must be of len 128 or 256)" + ); + if (128 === e.chars.length) { + for (var r = '', i = 0; i < 128; i++) r += String.fromCharCode(i); + e.chars = r + e.chars; + } + this.decodeBuf = n.from(e.chars, 'ucs2'); + var o = n.alloc(65536, t.defaultCharSingleByte.charCodeAt(0)); + for (i = 0; i < e.chars.length; i++) o[e.chars.charCodeAt(i)] = i; + this.encodeBuf = o; + } + function o(e, t) { + this.encodeBuf = t.encodeBuf; + } + function s(e, t) { + this.decodeBuf = t.decodeBuf; + } + (t._sbcs = i), + (i.prototype.encoder = o), + (i.prototype.decoder = s), + (o.prototype.write = function (e) { + for (var t = n.alloc(e.length), r = 0; r < e.length; r++) + t[r] = this.encodeBuf[e.charCodeAt(r)]; + return t; + }), + (o.prototype.end = function () {}), + (s.prototype.write = function (e) { + for ( + var t = this.decodeBuf, r = n.alloc(2 * e.length), i = 0, o = 0, s = 0; + s < e.length; + s++ + ) + (i = 2 * e[s]), (r[(o = 2 * s)] = t[i]), (r[o + 1] = t[i + 1]); + return r.toString('ucs2'); + }), + (s.prototype.end = function () {}); + }, + 53522: (e) => { + 'use strict'; + e.exports = { + 437: 'cp437', + 737: 'cp737', + 775: 'cp775', + 850: 'cp850', + 852: 'cp852', + 855: 'cp855', + 856: 'cp856', + 857: 'cp857', + 858: 'cp858', + 860: 'cp860', + 861: 'cp861', + 862: 'cp862', + 863: 'cp863', + 864: 'cp864', + 865: 'cp865', + 866: 'cp866', + 869: 'cp869', + 874: 'windows874', + 922: 'cp922', + 1046: 'cp1046', + 1124: 'cp1124', + 1125: 'cp1125', + 1129: 'cp1129', + 1133: 'cp1133', + 1161: 'cp1161', + 1162: 'cp1162', + 1163: 'cp1163', + 1250: 'windows1250', + 1251: 'windows1251', + 1252: 'windows1252', + 1253: 'windows1253', + 1254: 'windows1254', + 1255: 'windows1255', + 1256: 'windows1256', + 1257: 'windows1257', + 1258: 'windows1258', + 28591: 'iso88591', + 28592: 'iso88592', + 28593: 'iso88593', + 28594: 'iso88594', + 28595: 'iso88595', + 28596: 'iso88596', + 28597: 'iso88597', + 28598: 'iso88598', + 28599: 'iso88599', + 28600: 'iso885910', + 28601: 'iso885911', + 28603: 'iso885913', + 28604: 'iso885914', + 28605: 'iso885915', + 28606: 'iso885916', + windows874: { + type: '_sbcs', + chars: + '€����…�����������‘’“”•–—�������� กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะัาำิีึืฺุู����฿เแโใไๅๆ็่้๊๋์ํ๎๏๐๑๒๓๔๕๖๗๘๙๚๛����', + }, + win874: 'windows874', + cp874: 'windows874', + windows1250: { + type: '_sbcs', + chars: + '€�‚�„…†‡�‰Š‹ŚŤŽŹ�‘’“”•–—�™š›śťžź ˇ˘Ł¤Ą¦§¨©Ş«¬­®Ż°±˛ł´µ¶·¸ąş»Ľ˝ľżŔÁÂĂÄĹĆÇČÉĘËĚÍÎĎĐŃŇÓÔŐÖ×ŘŮÚŰÜÝŢßŕáâăäĺćçčéęëěíîďđńňóôőö÷řůúűüýţ˙', + }, + win1250: 'windows1250', + cp1250: 'windows1250', + windows1251: { + type: '_sbcs', + chars: + 'ЂЃ‚ѓ„…†‡€‰Љ‹ЊЌЋЏђ‘’“”•–—�™љ›њќћџ ЎўЈ¤Ґ¦§Ё©Є«¬­®Ї°±Ііґµ¶·ё№є»јЅѕїАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя', + }, + win1251: 'windows1251', + cp1251: 'windows1251', + windows1252: { + type: '_sbcs', + chars: + '€�‚ƒ„…†‡ˆ‰Š‹Œ�Ž��‘’“”•–—˜™š›œ�žŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ', + }, + win1252: 'windows1252', + cp1252: 'windows1252', + windows1253: { + type: '_sbcs', + chars: + '€�‚ƒ„…†‡�‰�‹�����‘’“”•–—�™�›���� ΅Ά£¤¥¦§¨©�«¬­®―°±²³΄µ¶·ΈΉΊ»Ό½ΎΏΐΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡ�ΣΤΥΦΧΨΩΪΫάέήίΰαβγδεζηθικλμνξοπρςστυφχψωϊϋόύώ�', + }, + win1253: 'windows1253', + cp1253: 'windows1253', + windows1254: { + type: '_sbcs', + chars: + '€�‚ƒ„…†‡ˆ‰Š‹Œ����‘’“”•–—˜™š›œ��Ÿ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏĞÑÒÓÔÕÖ×ØÙÚÛÜİŞßàáâãäåæçèéêëìíîïğñòóôõö÷øùúûüışÿ', + }, + win1254: 'windows1254', + cp1254: 'windows1254', + windows1255: { + type: '_sbcs', + chars: + '€�‚ƒ„…†‡ˆ‰�‹�����‘’“”•–—˜™�›���� ¡¢£₪¥¦§¨©×«¬­®¯°±²³´µ¶·¸¹÷»¼½¾¿ְֱֲֳִֵֶַָֹֺֻּֽ־ֿ׀ׁׂ׃װױײ׳״�������אבגדהוזחטיךכלםמןנסעףפץצקרשת��‎‏�', + }, + win1255: 'windows1255', + cp1255: 'windows1255', + windows1256: { + type: '_sbcs', + chars: + '€پ‚ƒ„…†‡ˆ‰ٹ‹Œچژڈگ‘’“”•–—ک™ڑ›œ‌‍ں ،¢£¤¥¦§¨©ھ«¬­®¯°±²³´µ¶·¸¹؛»¼½¾؟ہءآأؤإئابةتثجحخدذرزسشصض×طظعغـفقكàلâمنهوçèéêëىيîïًٌٍَôُِ÷ّùْûü‎‏ے', + }, + win1256: 'windows1256', + cp1256: 'windows1256', + windows1257: { + type: '_sbcs', + chars: + '€�‚�„…†‡�‰�‹�¨ˇ¸�‘’“”•–—�™�›�¯˛� �¢£¤�¦§Ø©Ŗ«¬­®Æ°±²³´µ¶·ø¹ŗ»¼½¾æĄĮĀĆÄÅĘĒČÉŹĖĢĶĪĻŠŃŅÓŌÕÖ×ŲŁŚŪÜŻŽßąįāćäåęēčéźėģķīļšńņóōõö÷ųłśūüżž˙', + }, + win1257: 'windows1257', + cp1257: 'windows1257', + windows1258: { + type: '_sbcs', + chars: + '€�‚ƒ„…†‡ˆ‰�‹Œ����‘’“”•–—˜™�›œ��Ÿ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂĂÄÅÆÇÈÉÊË̀ÍÎÏĐÑ̉ÓÔƠÖ×ØÙÚÛÜỮßàáâăäåæçèéêë́íîïđṇ̃óôơö÷øùúûüư₫ÿ', + }, + win1258: 'windows1258', + cp1258: 'windows1258', + iso88591: { + type: '_sbcs', + chars: + '€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ', + }, + cp28591: 'iso88591', + iso88592: { + type: '_sbcs', + chars: + '€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ Ą˘Ł¤ĽŚ§¨ŠŞŤŹ­ŽŻ°ą˛ł´ľśˇ¸šşťź˝žżŔÁÂĂÄĹĆÇČÉĘËĚÍÎĎĐŃŇÓÔŐÖ×ŘŮÚŰÜÝŢßŕáâăäĺćçčéęëěíîďđńňóôőö÷řůúűüýţ˙', + }, + cp28592: 'iso88592', + iso88593: { + type: '_sbcs', + chars: + '€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ Ħ˘£¤�Ĥ§¨İŞĞĴ­�Ż°ħ²³´µĥ·¸ışğĵ½�żÀÁÂ�ÄĊĈÇÈÉÊËÌÍÎÏ�ÑÒÓÔĠÖ×ĜÙÚÛÜŬŜßàáâ�äċĉçèéêëìíîï�ñòóôġö÷ĝùúûüŭŝ˙', + }, + cp28593: 'iso88593', + iso88594: { + type: '_sbcs', + chars: + '€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ĄĸŖ¤ĨĻ§¨ŠĒĢŦ­Ž¯°ą˛ŗ´ĩļˇ¸šēģŧŊžŋĀÁÂÃÄÅÆĮČÉĘËĖÍÎĪĐŅŌĶÔÕÖ×ØŲÚÛÜŨŪßāáâãäåæįčéęëėíîīđņōķôõö÷øųúûüũū˙', + }, + cp28594: 'iso88594', + iso88595: { + type: '_sbcs', + chars: + '€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ЁЂЃЄЅІЇЈЉЊЋЌ­ЎЏАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя№ёђѓєѕіїјљњћќ§ўџ', + }, + cp28595: 'iso88595', + iso88596: { + type: '_sbcs', + chars: + '€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ���¤�������،­�������������؛���؟�ءآأؤإئابةتثجحخدذرزسشصضطظعغ�����ـفقكلمنهوىيًٌٍَُِّْ�������������', + }, + cp28596: 'iso88596', + iso88597: { + type: '_sbcs', + chars: + '€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ‘’£€₯¦§¨©ͺ«¬­�―°±²³΄΅Ά·ΈΉΊ»Ό½ΎΏΐΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡ�ΣΤΥΦΧΨΩΪΫάέήίΰαβγδεζηθικλμνξοπρςστυφχψωϊϋόύώ�', + }, + cp28597: 'iso88597', + iso88598: { + type: '_sbcs', + chars: + '€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ �¢£¤¥¦§¨©×«¬­®¯°±²³´µ¶·¸¹÷»¼½¾��������������������������������‗אבגדהוזחטיךכלםמןנסעףפץצקרשת��‎‏�', + }, + cp28598: 'iso88598', + iso88599: { + type: '_sbcs', + chars: + '€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏĞÑÒÓÔÕÖ×ØÙÚÛÜİŞßàáâãäåæçèéêëìíîïğñòóôõö÷øùúûüışÿ', + }, + cp28599: 'iso88599', + iso885910: { + type: '_sbcs', + chars: + '€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ĄĒĢĪĨĶ§ĻĐŠŦŽ­ŪŊ°ąēģīĩķ·ļđšŧž―ūŋĀÁÂÃÄÅÆĮČÉĘËĖÍÎÏÐŅŌÓÔÕÖŨØŲÚÛÜÝÞßāáâãäåæįčéęëėíîïðņōóôõöũøųúûüýþĸ', + }, + cp28600: 'iso885910', + iso885911: { + type: '_sbcs', + chars: + '€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะัาำิีึืฺุู����฿เแโใไๅๆ็่้๊๋์ํ๎๏๐๑๒๓๔๕๖๗๘๙๚๛����', + }, + cp28601: 'iso885911', + iso885913: { + type: '_sbcs', + chars: + '€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ”¢£¤„¦§Ø©Ŗ«¬­®Æ°±²³“µ¶·ø¹ŗ»¼½¾æĄĮĀĆÄÅĘĒČÉŹĖĢĶĪĻŠŃŅÓŌÕÖ×ŲŁŚŪÜŻŽßąįāćäåęēčéźėģķīļšńņóōõö÷ųłśūüżž’', + }, + cp28603: 'iso885913', + iso885914: { + type: '_sbcs', + chars: + '€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ Ḃḃ£ĊċḊ§Ẁ©ẂḋỲ­®ŸḞḟĠġṀṁ¶ṖẁṗẃṠỳẄẅṡÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏŴÑÒÓÔÕÖṪØÙÚÛÜÝŶßàáâãäåæçèéêëìíîïŵñòóôõöṫøùúûüýŷÿ', + }, + cp28604: 'iso885914', + iso885915: { + type: '_sbcs', + chars: + '€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£€¥Š§š©ª«¬­®¯°±²³Žµ¶·ž¹º»ŒœŸ¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ', + }, + cp28605: 'iso885915', + iso885916: { + type: '_sbcs', + chars: + '€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ĄąŁ€„Š§š©Ș«Ź­źŻ°±ČłŽ”¶·žčș»ŒœŸżÀÁÂĂÄĆÆÇÈÉÊËÌÍÎÏĐŃÒÓÔŐÖŚŰÙÚÛÜĘȚßàáâăäćæçèéêëìíîïđńòóôőöśűùúûüęțÿ', + }, + cp28606: 'iso885916', + cp437: { + type: '_sbcs', + chars: + 'ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ', + }, + ibm437: 'cp437', + csibm437: 'cp437', + cp737: { + type: '_sbcs', + chars: + 'ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩαβγδεζηθικλμνξοπρσςτυφχψ░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀ωάέήϊίόύϋώΆΈΉΊΌΎΏ±≥≤ΪΫ÷≈°∙·√ⁿ²■ ', + }, + ibm737: 'cp737', + csibm737: 'cp737', + cp775: { + type: '_sbcs', + chars: + 'ĆüéāäģåćłēŖŗīŹÄÅÉæÆōöĢ¢ŚśÖÜø£ØפĀĪóŻżź”¦©®¬½¼Ł«»░▒▓│┤ĄČĘĖ╣║╗╝ĮŠ┐└┴┬├─┼ŲŪ╚╔╩╦╠═╬Žąčęėįšųūž┘┌█▄▌▐▀ÓßŌŃõÕµńĶķĻļņĒŅ’­±“¾¶§÷„°∙·¹³²■ ', + }, + ibm775: 'cp775', + csibm775: 'cp775', + cp850: { + type: '_sbcs', + chars: + 'ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜø£Ø׃áíóúñѪº¿®¬½¼¡«»░▒▓│┤ÁÂÀ©╣║╗╝¢¥┐└┴┬├─┼ãÃ╚╔╩╦╠═╬¤ðÐÊËÈıÍÎÏ┘┌█▄¦Ì▀ÓßÔÒõÕµþÞÚÛÙýݯ´­±‗¾¶§÷¸°¨·¹³²■ ', + }, + ibm850: 'cp850', + csibm850: 'cp850', + cp852: { + type: '_sbcs', + chars: + 'ÇüéâäůćçłëŐőîŹÄĆÉĹĺôöĽľŚśÖÜŤťŁ×čáíóúĄąŽžĘ꬟Ⱥ«»░▒▓│┤ÁÂĚŞ╣║╗╝Żż┐└┴┬├─┼Ăă╚╔╩╦╠═╬¤đĐĎËďŇÍÎě┘┌█▄ŢŮ▀ÓßÔŃńňŠšŔÚŕŰýÝţ´­˝˛ˇ˘§÷¸°¨˙űŘř■ ', + }, + ibm852: 'cp852', + csibm852: 'cp852', + cp855: { + type: '_sbcs', + chars: + 'ђЂѓЃёЁєЄѕЅіІїЇјЈљЉњЊћЋќЌўЎџЏюЮъЪаАбБцЦдДеЕфФгГ«»░▒▓│┤хХиИ╣║╗╝йЙ┐└┴┬├─┼кК╚╔╩╦╠═╬¤лЛмМнНоОп┘┌█▄Пя▀ЯрРсСтТуУжЖвВьЬ№­ыЫзЗшШэЭщЩчЧ§■ ', + }, + ibm855: 'cp855', + csibm855: 'cp855', + cp856: { + type: '_sbcs', + chars: + 'אבגדהוזחטיךכלםמןנסעףפץצקרשת�£�×����������®¬½¼�«»░▒▓│┤���©╣║╗╝¢¥┐└┴┬├─┼��╚╔╩╦╠═╬¤���������┘┌█▄¦�▀������µ�������¯´­±‗¾¶§÷¸°¨·¹³²■ ', + }, + ibm856: 'cp856', + csibm856: 'cp856', + cp857: { + type: '_sbcs', + chars: + 'ÇüéâäàåçêëèïîıÄÅÉæÆôöòûùİÖÜø£ØŞşáíóúñÑĞ𿮬½¼¡«»░▒▓│┤ÁÂÀ©╣║╗╝¢¥┐└┴┬├─┼ãÃ╚╔╩╦╠═╬¤ºªÊËÈ�ÍÎÏ┘┌█▄¦Ì▀ÓßÔÒõÕµ�×ÚÛÙìÿ¯´­±�¾¶§÷¸°¨·¹³²■ ', + }, + ibm857: 'cp857', + csibm857: 'cp857', + cp858: { + type: '_sbcs', + chars: + 'ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜø£Ø׃áíóúñѪº¿®¬½¼¡«»░▒▓│┤ÁÂÀ©╣║╗╝¢¥┐└┴┬├─┼ãÃ╚╔╩╦╠═╬¤ðÐÊËÈ€ÍÎÏ┘┌█▄¦Ì▀ÓßÔÒõÕµþÞÚÛÙýݯ´­±‗¾¶§÷¸°¨·¹³²■ ', + }, + ibm858: 'cp858', + csibm858: 'cp858', + cp860: { + type: '_sbcs', + chars: + 'ÇüéâãàÁçêÊèÍÔìÃÂÉÀÈôõòÚùÌÕÜ¢£Ù₧ÓáíóúñѪº¿Ò¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ', + }, + ibm860: 'cp860', + csibm860: 'cp860', + cp861: { + type: '_sbcs', + chars: + 'ÇüéâäàåçêëèÐðÞÄÅÉæÆôöþûÝýÖÜø£Ø₧ƒáíóúÁÍÓÚ¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ', + }, + ibm861: 'cp861', + csibm861: 'cp861', + cp862: { + type: '_sbcs', + chars: + 'אבגדהוזחטיךכלםמןנסעףפץצקרשת¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ', + }, + ibm862: 'cp862', + csibm862: 'cp862', + cp863: { + type: '_sbcs', + chars: + 'ÇüéâÂà¶çêëèïî‗À§ÉÈÊôËÏûù¤ÔÜ¢£ÙÛƒ¦´óú¨¸³¯Î⌐¬½¼¾«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ', + }, + ibm863: 'cp863', + csibm863: 'cp863', + cp864: { + type: '_sbcs', + chars: + '\0\b\t\n\v\f\r !"#$٪&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~°·∙√▒─│┼┤┬├┴┐┌└┘β∞φ±½¼≈«»ﻷﻸ��ﻻﻼ� ­ﺂ£¤ﺄ��ﺎﺏﺕﺙ،ﺝﺡﺥ٠١٢٣٤٥٦٧٨٩ﻑ؛ﺱﺵﺹ؟¢ﺀﺁﺃﺅﻊﺋﺍﺑﺓﺗﺛﺟﺣﺧﺩﺫﺭﺯﺳﺷﺻﺿﻁﻅﻋﻏ¦¬÷×ﻉـﻓﻗﻛﻟﻣﻧﻫﻭﻯﻳﺽﻌﻎﻍﻡﹽّﻥﻩﻬﻰﻲﻐﻕﻵﻶﻝﻙﻱ■�', + }, + ibm864: 'cp864', + csibm864: 'cp864', + cp865: { + type: '_sbcs', + chars: + 'ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜø£Ø₧ƒáíóúñѪº¿⌐¬½¼¡«¤░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ', + }, + ibm865: 'cp865', + csibm865: 'cp865', + cp866: { + type: '_sbcs', + chars: + 'АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмноп░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀рстуфхцчшщъыьэюяЁёЄєЇїЎў°∙·√№¤■ ', + }, + ibm866: 'cp866', + csibm866: 'cp866', + cp869: { + type: '_sbcs', + chars: + '������Ά�·¬¦‘’Έ―ΉΊΪΌ��ΎΫ©Ώ²³ά£έήίϊΐόύΑΒΓΔΕΖΗ½ΘΙ«»░▒▓│┤ΚΛΜΝ╣║╗╝ΞΟ┐└┴┬├─┼ΠΡ╚╔╩╦╠═╬ΣΤΥΦΧΨΩαβγ┘┌█▄δε▀ζηθικλμνξοπρσςτ΄­±υφχ§ψ΅°¨ωϋΰώ■ ', + }, + ibm869: 'cp869', + csibm869: 'cp869', + cp922: { + type: '_sbcs', + chars: + '€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®‾°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏŠÑÒÓÔÕÖ×ØÙÚÛÜÝŽßàáâãäåæçèéêëìíîïšñòóôõö÷øùúûüýžÿ', + }, + ibm922: 'cp922', + csibm922: 'cp922', + cp1046: { + type: '_sbcs', + chars: + 'ﺈ×÷ﹱˆ■│─┐┌└┘ﹹﹻﹽﹿﹷﺊﻰﻳﻲﻎﻏﻐﻶﻸﻺﻼ ¤ﺋﺑﺗﺛﺟﺣ،­ﺧﺳ٠١٢٣٤٥٦٧٨٩ﺷ؛ﺻﺿﻊ؟ﻋءآأؤإئابةتثجحخدذرزسشصضطﻇعغﻌﺂﺄﺎﻓـفقكلمنهوىيًٌٍَُِّْﻗﻛﻟﻵﻷﻹﻻﻣﻧﻬﻩ�', + }, + ibm1046: 'cp1046', + csibm1046: 'cp1046', + cp1124: { + type: '_sbcs', + chars: + '€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ЁЂҐЄЅІЇЈЉЊЋЌ­ЎЏАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя№ёђґєѕіїјљњћќ§ўџ', + }, + ibm1124: 'cp1124', + csibm1124: 'cp1124', + cp1125: { + type: '_sbcs', + chars: + 'АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмноп░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀рстуфхцчшщъыьэюяЁёҐґЄєІіЇї·√№¤■ ', + }, + ibm1125: 'cp1125', + csibm1125: 'cp1125', + cp1129: { + type: '_sbcs', + chars: + '€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§œ©ª«¬­®¯°±²³Ÿµ¶·Œ¹º»¼½¾¿ÀÁÂĂÄÅÆÇÈÉÊË̀ÍÎÏĐÑ̉ÓÔƠÖ×ØÙÚÛÜỮßàáâăäåæçèéêë́íîïđṇ̃óôơö÷øùúûüư₫ÿ', + }, + ibm1129: 'cp1129', + csibm1129: 'cp1129', + cp1133: { + type: '_sbcs', + chars: + '€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ກຂຄງຈສຊຍດຕຖທນບປຜຝພຟມຢຣລວຫອຮ���ຯະາຳິີຶືຸູຼັົຽ���ເແໂໃໄ່້໊໋໌ໍໆ�ໜໝ₭����������������໐໑໒໓໔໕໖໗໘໙��¢¬¦�', + }, + ibm1133: 'cp1133', + csibm1133: 'cp1133', + cp1161: { + type: '_sbcs', + chars: + '��������������������������������่กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะัาำิีึืฺุู้๊๋€฿เแโใไๅๆ็่้๊๋์ํ๎๏๐๑๒๓๔๕๖๗๘๙๚๛¢¬¦ ', + }, + ibm1161: 'cp1161', + csibm1161: 'cp1161', + cp1162: { + type: '_sbcs', + chars: + '€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะัาำิีึืฺุู����฿เแโใไๅๆ็่้๊๋์ํ๎๏๐๑๒๓๔๕๖๗๘๙๚๛����', + }, + ibm1162: 'cp1162', + csibm1162: 'cp1162', + cp1163: { + type: '_sbcs', + chars: + '€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£€¥¦§œ©ª«¬­®¯°±²³Ÿµ¶·Œ¹º»¼½¾¿ÀÁÂĂÄÅÆÇÈÉÊË̀ÍÎÏĐÑ̉ÓÔƠÖ×ØÙÚÛÜỮßàáâăäåæçèéêë́íîïđṇ̃óôơö÷øùúûüư₫ÿ', + }, + ibm1163: 'cp1163', + csibm1163: 'cp1163', + maccroatian: { + type: '_sbcs', + chars: + 'ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®Š™´¨≠ŽØ∞±≤≥∆µ∂∑∏š∫ªºΩžø¿¡¬√ƒ≈Ć«Č… ÀÃÕŒœĐ—“”‘’÷◊�©⁄¤‹›Æ»–·‚„‰ÂćÁčÈÍÎÏÌÓÔđÒÚÛÙıˆ˜¯πË˚¸Êæˇ', + }, + maccyrillic: { + type: '_sbcs', + chars: + 'АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ†°¢£§•¶І®©™Ђђ≠Ѓѓ∞±≤≥іµ∂ЈЄєЇїЉљЊњјЅ¬√ƒ≈∆«»… ЋћЌќѕ–—“”‘’÷„ЎўЏџ№Ёёяабвгдежзийклмнопрстуфхцчшщъыьэю¤', + }, + macgreek: { + type: '_sbcs', + chars: + 'Ĺ²É³ÖÜ΅àâä΄¨çéèê룙î‰ôö¦­ùûü†ΓΔΘΛΞΠß®©ΣΪ§≠°·Α±≤≥¥ΒΕΖΗΙΚΜΦΫΨΩάΝ¬ΟΡ≈Τ«»… ΥΧΆΈœ–―“”‘’÷ΉΊΌΎέήίόΏύαβψδεφγηιξκλμνοπώρστθωςχυζϊϋΐΰ�', + }, + maciceland: { + type: '_sbcs', + chars: + 'ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûüÝ°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄¤ÐðÞþý·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ', + }, + macroman: { + type: '_sbcs', + chars: + 'ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄¤‹›fifl‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ', + }, + macromania: { + type: '_sbcs', + chars: + 'ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ĂŞ∞±≤≥¥µ∂∑∏π∫ªºΩăş¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄¤‹›Ţţ‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ', + }, + macthai: { + type: '_sbcs', + chars: + '«»…“”�•‘’� กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะัาำิีึืฺุู\ufeff​–—฿เแโใไๅๆ็่้๊๋์ํ™๏๐๑๒๓๔๕๖๗๘๙®©����', + }, + macturkish: { + type: '_sbcs', + chars: + 'ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸĞğİıŞş‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙ�ˆ˜¯˘˙˚¸˝˛ˇ', + }, + macukraine: { + type: '_sbcs', + chars: + 'АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ†°Ґ£§•¶І®©™Ђђ≠Ѓѓ∞±≤≥іµґЈЄєЇїЉљЊњјЅ¬√ƒ≈∆«»… ЋћЌќѕ–—“”‘’÷„ЎўЏџ№Ёёяабвгдежзийклмнопрстуфхцчшщъыьэю¤', + }, + koi8r: { + type: '_sbcs', + chars: + '─│┌┐└┘├┤┬┴┼▀▄█▌▐░▒▓⌠■∙√≈≤≥ ⌡°²·÷═║╒ё╓╔╕╖╗╘╙╚╛╜╝╞╟╠╡Ё╢╣╤╥╦╧╨╩╪╫╬©юабцдефгхийклмнопярстужвьызшэщчъЮАБЦДЕФГХИЙКЛМНОПЯРСТУЖВЬЫЗШЭЩЧЪ', + }, + koi8u: { + type: '_sbcs', + chars: + '─│┌┐└┘├┤┬┴┼▀▄█▌▐░▒▓⌠■∙√≈≤≥ ⌡°²·÷═║╒ёє╔ії╗╘╙╚╛ґ╝╞╟╠╡ЁЄ╣ІЇ╦╧╨╩╪Ґ╬©юабцдефгхийклмнопярстужвьызшэщчъЮАБЦДЕФГХИЙКЛМНОПЯРСТУЖВЬЫЗШЭЩЧЪ', + }, + koi8ru: { + type: '_sbcs', + chars: + '─│┌┐└┘├┤┬┴┼▀▄█▌▐░▒▓⌠■∙√≈≤≥ ⌡°²·÷═║╒ёє╔ії╗╘╙╚╛ґў╞╟╠╡ЁЄ╣ІЇ╦╧╨╩╪ҐЎ©юабцдефгхийклмнопярстужвьызшэщчъЮАБЦДЕФГХИЙКЛМНОПЯРСТУЖВЬЫЗШЭЩЧЪ', + }, + koi8t: { + type: '_sbcs', + chars: + 'қғ‚Ғ„…†‡�‰ҳ‹ҲҷҶ�Қ‘’“”•–—�™�›�����ӯӮё¤ӣ¦§���«¬­®�°±²Ё�Ӣ¶·�№�»���©юабцдефгхийклмнопярстужвьызшэщчъЮАБЦДЕФГХИЙКЛМНОПЯРСТУЖВЬЫЗШЭЩЧЪ', + }, + armscii8: { + type: '_sbcs', + chars: + '€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ �և։)(»«—.՝,-֊…՜՛՞ԱաԲբԳգԴդԵեԶզԷէԸըԹթԺժԻիԼլԽխԾծԿկՀհՁձՂղՃճՄմՅյՆնՇշՈոՉչՊպՋջՌռՍսՎվՏտՐրՑցՒւՓփՔքՕօՖֆ՚�', + }, + rk1048: { + type: '_sbcs', + chars: + 'ЂЃ‚ѓ„…†‡€‰Љ‹ЊҚҺЏђ‘’“”•–—�™љ›њқһџ ҰұӘ¤Ө¦§Ё©Ғ«¬­®Ү°±Ііөµ¶·ё№ғ»әҢңүАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя', + }, + tcvn: { + type: '_sbcs', + chars: + '\0ÚỤỪỬỮ\b\t\n\v\f\rỨỰỲỶỸÝỴ !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÀẢÃÁẠẶẬÈẺẼÉẸỆÌỈĨÍỊÒỎÕÓỌỘỜỞỠỚỢÙỦŨ ĂÂÊÔƠƯĐăâêôơưđẶ̀̀̉̃́àảãáạẲằẳẵắẴẮẦẨẪẤỀặầẩẫấậèỂẻẽéẹềểễếệìỉỄẾỒĩíịòỔỏõóọồổỗốộờởỡớợùỖủũúụừửữứựỳỷỹýỵỐ', + }, + georgianacademy: { + type: '_sbcs', + chars: + '€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿აბგდევზთიკლმნოპჟრსტუფქღყშჩცძწჭხჯჰჱჲჳჴჵჶçèéêëìíîïðñòóôõö÷øùúûüýþÿ', + }, + georgianps: { + type: '_sbcs', + chars: + '€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿აბგდევზჱთიკლმნჲოპჟრსტჳუფქღყშჩცძწჭხჴჯჰჵæçèéêëìíîïðñòóôõö÷øùúûüýþÿ', + }, + pt154: { + type: '_sbcs', + chars: + 'ҖҒӮғ„…ҶҮҲүҠӢҢҚҺҸҗ‘’“”•–—ҳҷҡӣңқһҹ ЎўЈӨҘҰ§Ё©Ә«¬ӯ®Ҝ°ұІіҙө¶·ё№ә»јҪҫҝАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя', + }, + viscii: { + type: '_sbcs', + chars: + '\0ẲẴẪ\b\t\n\v\f\rỶỸỴ !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ẠẮẰẶẤẦẨẬẼẸẾỀỂỄỆỐỒỔỖỘỢỚỜỞỊỎỌỈỦŨỤỲÕắằặấầẩậẽẹếềểễệốồổỗỠƠộờởịỰỨỪỬơớƯÀÁÂÃẢĂẳẵÈÉÊẺÌÍĨỳĐứÒÓÔạỷừửÙÚỹỵÝỡưàáâãảăữẫèéêẻìíĩỉđựòóôõỏọụùúũủýợỮ', + }, + iso646cn: { + type: '_sbcs', + chars: + '\0\b\t\n\v\f\r !"#¥%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}‾��������������������������������������������������������������������������������������������������������������������������������', + }, + iso646jp: { + type: '_sbcs', + chars: + '\0\b\t\n\v\f\r !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[¥]^_`abcdefghijklmnopqrstuvwxyz{|}‾��������������������������������������������������������������������������������������������������������������������������������', + }, + hproman8: { + type: '_sbcs', + chars: + '€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ÀÂÈÊËÎÏ´ˋˆ¨˜ÙÛ₤¯Ýý°ÇçÑñ¡¿¤£¥§ƒ¢âêôûáéóúàèòùäëöüÅîØÆåíøæÄìÖÜÉïßÔÁÃãÐðÍÌÓÒÕõŠšÚŸÿÞþ·µ¶¾—¼½ªº«■»±�', + }, + macintosh: { + type: '_sbcs', + chars: + 'ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄¤‹›fifl‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ', + }, + ascii: { + type: '_sbcs', + chars: + '��������������������������������������������������������������������������������������������������������������������������������', + }, + tis620: { + type: '_sbcs', + chars: + '���������������������������������กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะัาำิีึืฺุู����฿เแโใไๅๆ็่้๊๋์ํ๎๏๐๑๒๓๔๕๖๗๘๙๚๛����', + }, + }; + }, + 1999: (e) => { + 'use strict'; + e.exports = { + 10029: 'maccenteuro', + maccenteuro: { + type: '_sbcs', + chars: + 'ÄĀāÉĄÖÜáąČäčĆć鏟ĎíďĒēĖóėôöõúĚěü†°Ę£§•¶ß®©™ę¨≠ģĮįĪ≤≥īĶ∂∑łĻļĽľĹĺŅņѬ√ńŇ∆«»… ňŐÕőŌ–—“”‘’÷◊ōŔŕŘ‹›řŖŗŠ‚„šŚśÁŤťÍŽžŪÓÔūŮÚůŰűŲųÝýķŻŁżĢˇ', + }, + 808: 'cp808', + ibm808: 'cp808', + cp808: { + type: '_sbcs', + chars: + 'АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмноп░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀рстуфхцчшщъыьэюяЁёЄєЇїЎў°∙·√№€■ ', + }, + mik: { + type: '_sbcs', + chars: + 'АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя└┴┬├─┼╣║╚╔╩╦╠═╬┐░▒▓│┤№§╗╝┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ ', + }, + ascii8bit: 'ascii', + usascii: 'ascii', + ansix34: 'ascii', + ansix341968: 'ascii', + ansix341986: 'ascii', + csascii: 'ascii', + cp367: 'ascii', + ibm367: 'ascii', + isoir6: 'ascii', + iso646us: 'ascii', + iso646irv: 'ascii', + us: 'ascii', + latin1: 'iso88591', + latin2: 'iso88592', + latin3: 'iso88593', + latin4: 'iso88594', + latin5: 'iso88599', + latin6: 'iso885910', + latin7: 'iso885913', + latin8: 'iso885914', + latin9: 'iso885915', + latin10: 'iso885916', + csisolatin1: 'iso88591', + csisolatin2: 'iso88592', + csisolatin3: 'iso88593', + csisolatin4: 'iso88594', + csisolatincyrillic: 'iso88595', + csisolatinarabic: 'iso88596', + csisolatingreek: 'iso88597', + csisolatinhebrew: 'iso88598', + csisolatin5: 'iso88599', + csisolatin6: 'iso885910', + l1: 'iso88591', + l2: 'iso88592', + l3: 'iso88593', + l4: 'iso88594', + l5: 'iso88599', + l6: 'iso885910', + l7: 'iso885913', + l8: 'iso885914', + l9: 'iso885915', + l10: 'iso885916', + isoir14: 'iso646jp', + isoir57: 'iso646cn', + isoir100: 'iso88591', + isoir101: 'iso88592', + isoir109: 'iso88593', + isoir110: 'iso88594', + isoir144: 'iso88595', + isoir127: 'iso88596', + isoir126: 'iso88597', + isoir138: 'iso88598', + isoir148: 'iso88599', + isoir157: 'iso885910', + isoir166: 'tis620', + isoir179: 'iso885913', + isoir199: 'iso885914', + isoir203: 'iso885915', + isoir226: 'iso885916', + cp819: 'iso88591', + ibm819: 'iso88591', + cyrillic: 'iso88595', + arabic: 'iso88596', + arabic8: 'iso88596', + ecma114: 'iso88596', + asmo708: 'iso88596', + greek: 'iso88597', + greek8: 'iso88597', + ecma118: 'iso88597', + elot928: 'iso88597', + hebrew: 'iso88598', + hebrew8: 'iso88598', + turkish: 'iso88599', + turkish8: 'iso88599', + thai: 'iso885911', + thai8: 'iso885911', + celtic: 'iso885914', + celtic8: 'iso885914', + isoceltic: 'iso885914', + tis6200: 'tis620', + tis62025291: 'tis620', + tis62025330: 'tis620', + 1e4: 'macroman', + 10006: 'macgreek', + 10007: 'maccyrillic', + 10079: 'maciceland', + 10081: 'macturkish', + cspc8codepage437: 'cp437', + cspc775baltic: 'cp775', + cspc850multilingual: 'cp850', + cspcp852: 'cp852', + cspc862latinhebrew: 'cp862', + cpgr: 'cp869', + msee: 'cp1250', + mscyrl: 'cp1251', + msansi: 'cp1252', + msgreek: 'cp1253', + msturk: 'cp1254', + mshebr: 'cp1255', + msarab: 'cp1256', + winbaltrim: 'cp1257', + cp20866: 'koi8r', + 20866: 'koi8r', + ibm878: 'koi8r', + cskoi8r: 'koi8r', + cp21866: 'koi8u', + 21866: 'koi8u', + ibm1168: 'koi8u', + strk10482002: 'rk1048', + tcvn5712: 'tcvn', + tcvn57121: 'tcvn', + gb198880: 'iso646cn', + cn: 'iso646cn', + csiso14jisc6220ro: 'iso646jp', + jisc62201969ro: 'iso646jp', + jp: 'iso646jp', + cshproman8: 'hproman8', + r8: 'hproman8', + roman8: 'hproman8', + xroman8: 'hproman8', + ibm1051: 'hproman8', + mac: 'macintosh', + csmacintosh: 'macintosh', + }; + }, + 93701: (e) => { + 'use strict'; + e.exports = JSON.parse( + '[["8740","䏰䰲䘃䖦䕸𧉧䵷䖳𧲱䳢𧳅㮕䜶䝄䱇䱀𤊿𣘗𧍒𦺋𧃒䱗𪍑䝏䗚䲅𧱬䴇䪤䚡𦬣爥𥩔𡩣𣸆𣽡晍囻"],["8767","綕夝𨮹㷴霴𧯯寛𡵞媤㘥𩺰嫑宷峼杮薓𩥅瑡璝㡵𡵓𣚞𦀡㻬"],["87a1","𥣞㫵竼龗𤅡𨤍𣇪𠪊𣉞䌊蒄龖鐯䤰蘓墖靊鈘秐稲晠権袝瑌篅枂稬剏遆㓦珄𥶹瓆鿇垳䤯呌䄱𣚎堘穲𧭥讏䚮𦺈䆁𥶙箮𢒼鿈𢓁𢓉𢓌鿉蔄𣖻䂴鿊䓡𪷿拁灮鿋"],["8840","㇀",4,"𠄌㇅𠃑𠃍㇆㇇𠃋𡿨㇈𠃊㇉㇊㇋㇌𠄎㇍㇎ĀÁǍÀĒÉĚÈŌÓǑÒ࿿Ê̄Ế࿿Ê̌ỀÊāáǎàɑēéěèīíǐìōóǒòūúǔùǖǘǚ"],["88a1","ǜü࿿ê̄ế࿿ê̌ềêɡ⏚⏛"],["8940","𪎩𡅅"],["8943","攊"],["8946","丽滝鵎釟"],["894c","𧜵撑会伨侨兖兴农凤务动医华发变团声处备夲头学实実岚庆总斉柾栄桥济炼电纤纬纺织经统缆缷艺苏药视设询车轧轮"],["89a1","琑糼緍楆竉刧"],["89ab","醌碸酞肼"],["89b0","贋胶𠧧"],["89b5","肟黇䳍鷉鸌䰾𩷶𧀎鸊𪄳㗁"],["89c1","溚舾甙"],["89c5","䤑马骏龙禇𨑬𡷊𠗐𢫦两亁亀亇亿仫伷㑌侽㹈倃傈㑽㒓㒥円夅凛凼刅争剹劐匧㗇厩㕑厰㕓参吣㕭㕲㚁咓咣咴咹哐哯唘唣唨㖘唿㖥㖿嗗㗅"],["8a40","𧶄唥"],["8a43","𠱂𠴕𥄫喐𢳆㧬𠍁蹆𤶸𩓥䁓𨂾睺𢰸㨴䟕𨅝𦧲𤷪擝𠵼𠾴𠳕𡃴撍蹾𠺖𠰋𠽤𢲩𨉖𤓓"],["8a64","𠵆𩩍𨃩䟴𤺧𢳂骲㩧𩗴㿭㔆𥋇𩟔𧣈𢵄鵮頕"],["8a76","䏙𦂥撴哣𢵌𢯊𡁷㧻𡁯"],["8aa1","𦛚𦜖𧦠擪𥁒𠱃蹨𢆡𨭌𠜱"],["8aac","䠋𠆩㿺塳𢶍"],["8ab2","𤗈𠓼𦂗𠽌𠶖啹䂻䎺"],["8abb","䪴𢩦𡂝膪飵𠶜捹㧾𢝵跀嚡摼㹃"],["8ac9","𪘁𠸉𢫏𢳉"],["8ace","𡃈𣧂㦒㨆𨊛㕸𥹉𢃇噒𠼱𢲲𩜠㒼氽𤸻"],["8adf","𧕴𢺋𢈈𪙛𨳍𠹺𠰴𦠜羓𡃏𢠃𢤹㗻𥇣𠺌𠾍𠺪㾓𠼰𠵇𡅏𠹌"],["8af6","𠺫𠮩𠵈𡃀𡄽㿹𢚖搲𠾭"],["8b40","𣏴𧘹𢯎𠵾𠵿𢱑𢱕㨘𠺘𡃇𠼮𪘲𦭐𨳒𨶙𨳊閪哌苄喹"],["8b55","𩻃鰦骶𧝞𢷮煀腭胬尜𦕲脴㞗卟𨂽醶𠻺𠸏𠹷𠻻㗝𤷫㘉𠳖嚯𢞵𡃉𠸐𠹸𡁸𡅈𨈇𡑕𠹹𤹐𢶤婔𡀝𡀞𡃵𡃶垜𠸑"],["8ba1","𧚔𨋍𠾵𠹻𥅾㜃𠾶𡆀𥋘𪊽𤧚𡠺𤅷𨉼墙剨㘚𥜽箲孨䠀䬬鼧䧧鰟鮍𥭴𣄽嗻㗲嚉丨夂𡯁屮靑𠂆乛亻㔾尣彑忄㣺扌攵歺氵氺灬爫丬犭𤣩罒礻糹罓𦉪㓁"],["8bde","𦍋耂肀𦘒𦥑卝衤见𧢲讠贝钅镸长门𨸏韦页风飞饣𩠐鱼鸟黄歯龜丷𠂇阝户钢"],["8c40","倻淾𩱳龦㷉袏𤅎灷峵䬠𥇍㕙𥴰愢𨨲辧釶熑朙玺𣊁𪄇㲋𡦀䬐磤琂冮𨜏䀉橣𪊺䈣蘏𠩯稪𩥇𨫪靕灍匤𢁾鏴盙𨧣龧矝亣俰傼丯众龨吴綋墒壐𡶶庒庙忂𢜒斋"],["8ca1","𣏹椙橃𣱣泿"],["8ca7","爀𤔅玌㻛𤨓嬕璹讃𥲤𥚕窓篬糃繬苸薗龩袐龪躹龫迏蕟駠鈡龬𨶹𡐿䁱䊢娚"],["8cc9","顨杫䉶圽"],["8cce","藖𤥻芿𧄍䲁𦵴嵻𦬕𦾾龭龮宖龯曧繛湗秊㶈䓃𣉖𢞖䎚䔶"],["8ce6","峕𣬚諹屸㴒𣕑嵸龲煗䕘𤃬𡸣䱷㥸㑊𠆤𦱁諌侴𠈹妿腬顖𩣺弻"],["8d40","𠮟"],["8d42","𢇁𨥭䄂䚻𩁹㼇龳𪆵䃸㟖䛷𦱆䅼𨚲𧏿䕭㣔𥒚䕡䔛䶉䱻䵶䗪㿈𤬏㙡䓞䒽䇭崾嵈嵖㷼㠏嶤嶹㠠㠸幂庽弥徃㤈㤔㤿㥍惗愽峥㦉憷憹懏㦸戬抐拥挘㧸嚱"],["8da1","㨃揢揻搇摚㩋擀崕嘡龟㪗斆㪽旿晓㫲暒㬢朖㭂枤栀㭘桊梄㭲㭱㭻椉楃牜楤榟榅㮼槖㯝橥橴橱檂㯬檙㯲檫檵櫔櫶殁毁毪汵沪㳋洂洆洦涁㳯涤涱渕渘温溆𨧀溻滢滚齿滨滩漤漴㵆𣽁澁澾㵪㵵熷岙㶊瀬㶑灐灔灯灿炉𠌥䏁㗱𠻘"],["8e40","𣻗垾𦻓焾𥟠㙎榢𨯩孴穉𥣡𩓙穥穽𥦬窻窰竂竃燑𦒍䇊竚竝竪䇯咲𥰁笋筕笩𥌎𥳾箢筯莜𥮴𦱿篐萡箒箸𥴠㶭𥱥蒒篺簆簵𥳁籄粃𤢂粦晽𤕸糉糇糦籴糳糵糎"],["8ea1","繧䔝𦹄絝𦻖璍綉綫焵綳緒𤁗𦀩緤㴓緵𡟹緥𨍭縝𦄡𦅚繮纒䌫鑬縧罀罁罇礶𦋐駡羗𦍑羣𡙡𠁨䕜𣝦䔃𨌺翺𦒉者耈耝耨耯𪂇𦳃耻耼聡𢜔䦉𦘦𣷣𦛨朥肧𨩈脇脚墰𢛶汿𦒘𤾸擧𡒊舘𡡞橓𤩥𤪕䑺舩𠬍𦩒𣵾俹𡓽蓢荢𦬊𤦧𣔰𡝳𣷸芪椛芳䇛"],["8f40","蕋苐茚𠸖𡞴㛁𣅽𣕚艻苢茘𣺋𦶣𦬅𦮗𣗎㶿茝嗬莅䔋𦶥莬菁菓㑾𦻔橗蕚㒖𦹂𢻯葘𥯤葱㷓䓤檧葊𣲵祘蒨𦮖𦹷𦹃蓞萏莑䒠蒓蓤𥲑䉀𥳀䕃蔴嫲𦺙䔧蕳䔖枿蘖"],["8fa1","𨘥𨘻藁𧂈蘂𡖂𧃍䕫䕪蘨㙈𡢢号𧎚虾蝱𪃸蟮𢰧螱蟚蠏噡虬桖䘏衅衆𧗠𣶹𧗤衞袜䙛袴袵揁装睷𧜏覇覊覦覩覧覼𨨥觧𧤤𧪽誜瞓釾誐𧩙竩𧬺𣾏䜓𧬸煼謌謟𥐰𥕥謿譌譍誩𤩺讐讛誯𡛟䘕衏貛𧵔𧶏貫㜥𧵓賖𧶘𧶽贒贃𡤐賛灜贑𤳉㻐起"],["9040","趩𨀂𡀔𤦊㭼𨆼𧄌竧躭躶軃鋔輙輭𨍥𨐒辥錃𪊟𠩐辳䤪𨧞𨔽𣶻廸𣉢迹𪀔𨚼𨔁𢌥㦀𦻗逷𨔼𧪾遡𨕬𨘋邨𨜓郄𨛦邮都酧㫰醩釄粬𨤳𡺉鈎沟鉁鉢𥖹銹𨫆𣲛𨬌𥗛"],["90a1","𠴱錬鍫𨫡𨯫炏嫃𨫢𨫥䥥鉄𨯬𨰹𨯿鍳鑛躼閅閦鐦閠濶䊹𢙺𨛘𡉼𣸮䧟氜陻隖䅬隣𦻕懚隶磵𨫠隽双䦡𦲸𠉴𦐐𩂯𩃥𤫑𡤕𣌊霱虂霶䨏䔽䖅𤫩灵孁霛靜𩇕靗孊𩇫靟鐥僐𣂷𣂼鞉鞟鞱鞾韀韒韠𥑬韮琜𩐳響韵𩐝𧥺䫑頴頳顋顦㬎𧅵㵑𠘰𤅜"],["9140","𥜆飊颷飈飇䫿𦴧𡛓喰飡飦飬鍸餹𤨩䭲𩡗𩤅駵騌騻騐驘𥜥㛄𩂱𩯕髠髢𩬅髴䰎鬔鬭𨘀倴鬴𦦨㣃𣁽魐魀𩴾婅𡡣鮎𤉋鰂鯿鰌𩹨鷔𩾷𪆒𪆫𪃡𪄣𪇟鵾鶃𪄴鸎梈"],["91a1","鷄𢅛𪆓𪈠𡤻𪈳鴹𪂹𪊴麐麕麞麢䴴麪麯𤍤黁㭠㧥㴝伲㞾𨰫鼂鼈䮖鐤𦶢鼗鼖鼹嚟嚊齅馸𩂋韲葿齢齩竜龎爖䮾𤥵𤦻煷𤧸𤍈𤩑玞𨯚𡣺禟𨥾𨸶鍩鏳𨩄鋬鎁鏋𨥬𤒹爗㻫睲穃烐𤑳𤏸煾𡟯炣𡢾𣖙㻇𡢅𥐯𡟸㜢𡛻𡠹㛡𡝴𡣑𥽋㜣𡛀坛𤨥𡏾𡊨"],["9240","𡏆𡒶蔃𣚦蔃葕𤦔𧅥𣸱𥕜𣻻𧁒䓴𣛮𩦝𦼦柹㜳㰕㷧塬𡤢栐䁗𣜿𤃡𤂋𤄏𦰡哋嚞𦚱嚒𠿟𠮨𠸍鏆𨬓鎜仸儫㠙𤐶亼𠑥𠍿佋侊𥙑婨𠆫𠏋㦙𠌊𠐔㐵伩𠋀𨺳𠉵諚𠈌亘"],["92a1","働儍侢伃𤨎𣺊佂倮偬傁俌俥偘僼兙兛兝兞湶𣖕𣸹𣺿浲𡢄𣺉冨凃𠗠䓝𠒣𠒒𠒑赺𨪜𠜎剙劤𠡳勡鍮䙺熌𤎌𠰠𤦬𡃤槑𠸝瑹㻞璙琔瑖玘䮎𤪼𤂍叐㖄爏𤃉喴𠍅响𠯆圝鉝雴鍦埝垍坿㘾壋媙𨩆𡛺𡝯𡜐娬妸銏婾嫏娒𥥆𡧳𡡡𤊕㛵洅瑃娡𥺃"],["9340","媁𨯗𠐓鏠璌𡌃焅䥲鐈𨧻鎽㞠尞岞幞幈𡦖𡥼𣫮廍孏𡤃𡤄㜁𡢠㛝𡛾㛓脪𨩇𡶺𣑲𨦨弌弎𡤧𡞫婫𡜻孄蘔𧗽衠恾𢡠𢘫忛㺸𢖯𢖾𩂈𦽳懀𠀾𠁆𢘛憙憘恵𢲛𢴇𤛔𩅍"],["93a1","摱𤙥𢭪㨩𢬢𣑐𩣪𢹸挷𪑛撶挱揑𤧣𢵧护𢲡搻敫楲㯴𣂎𣊭𤦉𣊫唍𣋠𡣙𩐿曎𣊉𣆳㫠䆐𥖄𨬢𥖏𡛼𥕛𥐥磮𣄃𡠪𣈴㑤𣈏𣆂𤋉暎𦴤晫䮓昰𧡰𡷫晣𣋒𣋡昞𥡲㣑𣠺𣞼㮙𣞢𣏾瓐㮖枏𤘪梶栞㯄檾㡣𣟕𤒇樳橒櫉欅𡤒攑梘橌㯗橺歗𣿀𣲚鎠鋲𨯪𨫋"],["9440","銉𨀞𨧜鑧涥漋𤧬浧𣽿㶏渄𤀼娽渊塇洤硂焻𤌚𤉶烱牐犇犔𤞏𤜥兹𤪤𠗫瑺𣻸𣙟𤩊𤤗𥿡㼆㺱𤫟𨰣𣼵悧㻳瓌琼鎇琷䒟𦷪䕑疃㽣𤳙𤴆㽘畕癳𪗆㬙瑨𨫌𤦫𤦎㫻"],["94a1","㷍𤩎㻿𤧅𤣳釺圲鍂𨫣𡡤僟𥈡𥇧睸𣈲眎眏睻𤚗𣞁㩞𤣰琸璛㺿𤪺𤫇䃈𤪖𦆮錇𥖁砞碍碈磒珐祙𧝁𥛣䄎禛蒖禥樭𣻺稺秴䅮𡛦䄲鈵秱𠵌𤦌𠊙𣶺𡝮㖗啫㕰㚪𠇔𠰍竢婙𢛵𥪯𥪜娍𠉛磰娪𥯆竾䇹籝籭䈑𥮳𥺼𥺦糍𤧹𡞰粎籼粮檲緜縇緓罎𦉡"],["9540","𦅜𧭈綗𥺂䉪𦭵𠤖柖𠁎𣗏埄𦐒𦏸𤥢翝笧𠠬𥫩𥵃笌𥸎駦虅驣樜𣐿㧢𤧷𦖭騟𦖠蒀𧄧𦳑䓪脷䐂胆脉腂𦞴飃𦩂艢艥𦩑葓𦶧蘐𧈛媆䅿𡡀嬫𡢡嫤𡣘蚠蜨𣶏蠭𧐢娂"],["95a1","衮佅袇袿裦襥襍𥚃襔𧞅𧞄𨯵𨯙𨮜𨧹㺭蒣䛵䛏㟲訽訜𩑈彍鈫𤊄旔焩烄𡡅鵭貟賩𧷜妚矃姰䍮㛔踪躧𤰉輰轊䋴汘澻𢌡䢛潹溋𡟚鯩㚵𤤯邻邗啱䤆醻鐄𨩋䁢𨫼鐧𨰝𨰻蓥訫閙閧閗閖𨴴瑅㻂𤣿𤩂𤏪㻧𣈥随𨻧𨹦𨹥㻌𤧭𤩸𣿮琒瑫㻼靁𩂰"],["9640","桇䨝𩂓𥟟靝鍨𨦉𨰦𨬯𦎾銺嬑譩䤼珹𤈛鞛靱餸𠼦巁𨯅𤪲頟𩓚鋶𩗗釥䓀𨭐𤩧𨭤飜𨩅㼀鈪䤥萔餻饍𧬆㷽馛䭯馪驜𨭥𥣈檏騡嫾騯𩣱䮐𩥈馼䮽䮗鍽塲𡌂堢𤦸"],["96a1","𡓨硄𢜟𣶸棅㵽鑘㤧慐𢞁𢥫愇鱏鱓鱻鰵鰐魿鯏𩸭鮟𪇵𪃾鴡䲮𤄄鸘䲰鴌𪆴𪃭𪃳𩤯鶥蒽𦸒𦿟𦮂藼䔳𦶤𦺄𦷰萠藮𦸀𣟗𦁤秢𣖜𣙀䤭𤧞㵢鏛銾鍈𠊿碹鉷鑍俤㑀遤𥕝砽硔碶硋𡝗𣇉𤥁㚚佲濚濙瀞瀞吔𤆵垻壳垊鴖埗焴㒯𤆬燫𦱀𤾗嬨𡞵𨩉"],["9740","愌嫎娋䊼𤒈㜬䭻𨧼鎻鎸𡣖𠼝葲𦳀𡐓𤋺𢰦𤏁妔𣶷𦝁綨𦅛𦂤𤦹𤦋𨧺鋥珢㻩璴𨭣𡢟㻡𤪳櫘珳珻㻖𤨾𤪔𡟙𤩦𠎧𡐤𤧥瑈𤤖炥𤥶銄珦鍟𠓾錱𨫎𨨖鎆𨯧𥗕䤵𨪂煫"],["97a1","𤥃𠳿嚤𠘚𠯫𠲸唂秄𡟺緾𡛂𤩐𡡒䔮鐁㜊𨫀𤦭妰𡢿𡢃𧒄媡㛢𣵛㚰鉟婹𨪁𡡢鍴㳍𠪴䪖㦊僴㵩㵌𡎜煵䋻𨈘渏𩃤䓫浗𧹏灧沯㳖𣿭𣸭渂漌㵯𠏵畑㚼㓈䚀㻚䡱姄鉮䤾轁𨰜𦯀堒埈㛖𡑒烾𤍢𤩱𢿣𡊰𢎽梹楧𡎘𣓥𧯴𣛟𨪃𣟖𣏺𤲟樚𣚭𦲷萾䓟䓎"],["9840","𦴦𦵑𦲂𦿞漗𧄉茽𡜺菭𦲀𧁓𡟛妉媂𡞳婡婱𡤅𤇼㜭姯𡜼㛇熎鎐暚𤊥婮娫𤊓樫𣻹𧜶𤑛𤋊焝𤉙𨧡侰𦴨峂𤓎𧹍𤎽樌𤉖𡌄炦焳𤏩㶥泟勇𤩏繥姫崯㷳彜𤩝𡟟綤萦"],["98a1","咅𣫺𣌀𠈔坾𠣕𠘙㿥𡾞𪊶瀃𩅛嵰玏糓𨩙𩐠俈翧狍猐𧫴猸猹𥛶獁獈㺩𧬘遬燵𤣲珡臶㻊県㻑沢国琙琞琟㻢㻰㻴㻺瓓㼎㽓畂畭畲疍㽼痈痜㿀癍㿗癴㿜発𤽜熈嘣覀塩䀝睃䀹条䁅㗛瞘䁪䁯属瞾矋売砘点砜䂨砹硇硑硦葈𥔵礳栃礲䄃"],["9940","䄉禑禙辻稆込䅧窑䆲窼艹䇄竏竛䇏両筢筬筻簒簛䉠䉺类粜䊌粸䊔糭输烀𠳏総緔緐緽羮羴犟䎗耠耥笹耮耱联㷌垴炠肷胩䏭脌猪脎脒畠脔䐁㬹腖腙腚"],["99a1","䐓堺腼膄䐥膓䐭膥埯臁臤艔䒏芦艶苊苘苿䒰荗险榊萅烵葤惣蒈䔄蒾蓡蓸蔐蔸蕒䔻蕯蕰藠䕷虲蚒蚲蛯际螋䘆䘗袮裿褤襇覑𧥧訩訸誔誴豑賔賲贜䞘塟跃䟭仮踺嗘坔蹱嗵躰䠷軎転軤軭軲辷迁迊迌逳駄䢭飠鈓䤞鈨鉘鉫銱銮銿"],["9a40","鋣鋫鋳鋴鋽鍃鎄鎭䥅䥑麿鐗匁鐝鐭鐾䥪鑔鑹锭関䦧间阳䧥枠䨤靀䨵鞲韂噔䫤惨颹䬙飱塄餎餙冴餜餷饂饝饢䭰駅䮝騼鬏窃魩鮁鯝鯱鯴䱭鰠㝯𡯂鵉鰺"],["9aa1","黾噐鶓鶽鷀鷼银辶鹻麬麱麽黆铜黢黱黸竈齄𠂔𠊷𠎠椚铃妬𠓗塀铁㞹𠗕𠘕𠙶𡚺块煳𠫂𠫍𠮿呪吆𠯋咞𠯻𠰻𠱓𠱥𠱼惧𠲍噺𠲵𠳝𠳭𠵯𠶲𠷈楕鰯螥𠸄𠸎𠻗𠾐𠼭𠹳尠𠾼帋𡁜𡁏𡁶朞𡁻𡂈𡂖㙇𡂿𡃓𡄯𡄻卤蒭𡋣𡍵𡌶讁𡕷𡘙𡟃𡟇乸炻𡠭𡥪"],["9b40","𡨭𡩅𡰪𡱰𡲬𡻈拃𡻕𡼕熘桕𢁅槩㛈𢉼𢏗𢏺𢜪𢡱𢥏苽𢥧𢦓𢫕覥𢫨辠𢬎鞸𢬿顇骽𢱌"],["9b62","𢲈𢲷𥯨𢴈𢴒𢶷𢶕𢹂𢽴𢿌𣀳𣁦𣌟𣏞徱晈暿𧩹𣕧𣗳爁𤦺矗𣘚𣜖纇𠍆墵朎"],["9ba1","椘𣪧𧙗𥿢𣸑𣺹𧗾𢂚䣐䪸𤄙𨪚𤋮𤌍𤀻𤌴𤎖𤩅𠗊凒𠘑妟𡺨㮾𣳿𤐄𤓖垈𤙴㦛𤜯𨗨𩧉㝢𢇃譞𨭎駖𤠒𤣻𤨕爉𤫀𠱸奥𤺥𤾆𠝹軚𥀬劏圿煱𥊙𥐙𣽊𤪧喼𥑆𥑮𦭒釔㑳𥔿𧘲𥕞䜘𥕢𥕦𥟇𤤿𥡝偦㓻𣏌惞𥤃䝼𨥈𥪮𥮉𥰆𡶐垡煑澶𦄂𧰒遖𦆲𤾚譢𦐂𦑊"],["9c40","嵛𦯷輶𦒄𡤜諪𤧶𦒈𣿯𦔒䯀𦖿𦚵𢜛鑥𥟡憕娧晉侻嚹𤔡𦛼乪𤤴陖涏𦲽㘘襷𦞙𦡮𦐑𦡞營𦣇筂𩃀𠨑𦤦鄄𦤹穅鷰𦧺騦𦨭㙟𦑩𠀡禃𦨴𦭛崬𣔙菏𦮝䛐𦲤画补𦶮墶"],["9ca1","㜜𢖍𧁋𧇍㱔𧊀𧊅銁𢅺𧊋錰𧋦𤧐氹钟𧑐𠻸蠧裵𢤦𨑳𡞱溸𤨪𡠠㦤㚹尐秣䔿暶𩲭𩢤襃𧟌𧡘囖䃟𡘊㦡𣜯𨃨𡏅熭荦𧧝𩆨婧䲷𧂯𨦫𧧽𧨊𧬋𧵦𤅺筃祾𨀉澵𪋟樃𨌘厢𦸇鎿栶靝𨅯𨀣𦦵𡏭𣈯𨁈嶅𨰰𨂃圕頣𨥉嶫𤦈斾槕叒𤪥𣾁㰑朶𨂐𨃴𨄮𡾡𨅏"],["9d40","𨆉𨆯𨈚𨌆𨌯𨎊㗊𨑨𨚪䣺揦𨥖砈鉕𨦸䏲𨧧䏟𨧨𨭆𨯔姸𨰉輋𨿅𩃬筑𩄐𩄼㷷𩅞𤫊运犏嚋𩓧𩗩𩖰𩖸𩜲𩣑𩥉𩥪𩧃𩨨𩬎𩵚𩶛纟𩻸𩼣䲤镇𪊓熢𪋿䶑递𪗋䶜𠲜达嗁"],["9da1","辺𢒰边𤪓䔉繿潖檱仪㓤𨬬𧢝㜺躀𡟵𨀤𨭬𨮙𧨾𦚯㷫𧙕𣲷𥘵𥥖亚𥺁𦉘嚿𠹭踎孭𣺈𤲞揞拐𡟶𡡻攰嘭𥱊吚𥌑㷆𩶘䱽嘢嘞罉𥻘奵𣵀蝰东𠿪𠵉𣚺脗鵞贘瘻鱅癎瞹鍅吲腈苷嘥脲萘肽嗪祢噃吖𠺝㗎嘅嗱曱𨋢㘭甴嗰喺咗啲𠱁𠲖廐𥅈𠹶𢱢"],["9e40","𠺢麫絚嗞𡁵抝靭咔賍燶酶揼掹揾啩𢭃鱲𢺳冚㓟𠶧冧呍唞唓癦踭𦢊疱肶蠄螆裇膶萜𡃁䓬猄𤜆宐茋𦢓噻𢛴𧴯𤆣𧵳𦻐𧊶酰𡇙鈈𣳼𪚩𠺬𠻹牦𡲢䝎𤿂𧿹𠿫䃺"],["9ea1","鱝攟𢶠䣳𤟠𩵼𠿬𠸊恢𧖣𠿭"],["9ead","𦁈𡆇熣纎鵐业丄㕷嬍沲卧㚬㧜卽㚥𤘘墚𤭮舭呋垪𥪕𠥹"],["9ec5","㩒𢑥獴𩺬䴉鯭𣳾𩼰䱛𤾩𩖞𩿞葜𣶶𧊲𦞳𣜠挮紥𣻷𣸬㨪逈勌㹴㙺䗩𠒎癀嫰𠺶硺𧼮墧䂿噼鮋嵴癔𪐴麅䳡痹㟻愙𣃚𤏲"],["9ef5","噝𡊩垧𤥣𩸆刴𧂮㖭汊鵼"],["9f40","籖鬹埞𡝬屓擓𩓐𦌵𧅤蚭𠴨𦴢𤫢𠵱"],["9f4f","凾𡼏嶎霃𡷑麁遌笟鬂峑箣扨挵髿篏鬪籾鬮籂粆鰕篼鬉鼗鰛𤤾齚啳寃俽麘俲剠㸆勑坧偖妷帒韈鶫轜呩鞴饀鞺匬愰"],["9fa1","椬叚鰊鴂䰻陁榀傦畆𡝭駚剳"],["9fae","酙隁酜"],["9fb2","酑𨺗捿𦴣櫊嘑醎畺抅𠏼獏籰𥰡𣳽"],["9fc1","𤤙盖鮝个𠳔莾衂"],["9fc9","届槀僭坺刟巵从氱𠇲伹咜哚劚趂㗾弌㗳"],["9fdb","歒酼龥鮗頮颴骺麨麄煺笔"],["9fe7","毺蠘罸"],["9feb","嘠𪙊蹷齓"],["9ff0","跔蹏鸜踁抂𨍽踨蹵竓𤩷稾磘泪詧瘇"],["a040","𨩚鼦泎蟖痃𪊲硓咢贌狢獱謭猂瓱賫𤪻蘯徺袠䒷"],["a055","𡠻𦸅"],["a058","詾𢔛"],["a05b","惽癧髗鵄鍮鮏蟵"],["a063","蠏賷猬霡鮰㗖犲䰇籑饊𦅙慙䰄麖慽"],["a073","坟慯抦戹拎㩜懢厪𣏵捤栂㗒"],["a0a1","嵗𨯂迚𨸹"],["a0a6","僙𡵆礆匲阸𠼻䁥"],["a0ae","矾"],["a0b0","糂𥼚糚稭聦聣絍甅瓲覔舚朌聢𧒆聛瓰脃眤覉𦟌畓𦻑螩蟎臈螌詉貭譃眫瓸蓚㘵榲趦"],["a0d4","覩瑨涹蟁𤀑瓧㷛煶悤憜㳑煢恷"],["a0e2","罱𨬭牐惩䭾删㰘𣳇𥻗𧙖𥔱𡥄𡋾𩤃𦷜𧂭峁𦆭𨨏𣙷𠃮𦡆𤼎䕢嬟𦍌齐麦𦉫"],["a3c0","␀",31,"␡"],["c6a1","①",9,"⑴",9,"ⅰ",9,"丶丿亅亠冂冖冫勹匸卩厶夊宀巛⼳广廴彐彡攴无疒癶辵隶¨ˆヽヾゝゞ〃仝々〆〇ー[]✽ぁ",23],["c740","す",58,"ァアィイ"],["c7a1","ゥ",81,"А",5,"ЁЖ",4],["c840","Л",26,"ёж",25,"⇧↸↹㇏𠃌乚𠂊刂䒑"],["c8a1","龰冈龱𧘇"],["c8cd","¬¦'"㈱№℡゛゜⺀⺄⺆⺇⺈⺊⺌⺍⺕⺜⺝⺥⺧⺪⺬⺮⺶⺼⺾⻆⻊⻌⻍⻏⻖⻗⻞⻣"],["c8f5","ʃɐɛɔɵœøŋʊɪ"],["f9fe","■"],["fa40","𠕇鋛𠗟𣿅蕌䊵珯况㙉𤥂𨧤鍄𡧛苮𣳈砼杄拟𤤳𨦪𠊠𦮳𡌅侫𢓭倈𦴩𧪄𣘀𤪱𢔓倩𠍾徤𠎀𠍇滛𠐟偽儁㑺儎顬㝃萖𤦤𠒇兠𣎴兪𠯿𢃼𠋥𢔰𠖎𣈳𡦃宂蝽𠖳𣲙冲冸"],["faa1","鴴凉减凑㳜凓𤪦决凢卂凭菍椾𣜭彻刋刦刼劵剗劔効勅簕蕂勠蘍𦬓包𨫞啉滙𣾀𠥔𣿬匳卄𠯢泋𡜦栛珕恊㺪㣌𡛨燝䒢卭却𨚫卾卿𡖖𡘓矦厓𨪛厠厫厮玧𥝲㽙玜叁叅汉义埾叙㪫𠮏叠𣿫𢶣叶𠱷吓灹唫晗浛呭𦭓𠵴啝咏咤䞦𡜍𠻝㶴𠵍"],["fb40","𨦼𢚘啇䳭启琗喆喩嘅𡣗𤀺䕒𤐵暳𡂴嘷曍𣊊暤暭噍噏磱囱鞇叾圀囯园𨭦㘣𡉏坆𤆥汮炋坂㚱𦱾埦𡐖堃𡑔𤍣堦𤯵塜墪㕡壠壜𡈼壻寿坃𪅐𤉸鏓㖡够梦㛃湙"],["fba1","𡘾娤啓𡚒蔅姉𠵎𦲁𦴪𡟜姙𡟻𡞲𦶦浱𡠨𡛕姹𦹅媫婣㛦𤦩婷㜈媖瑥嫓𦾡𢕔㶅𡤑㜲𡚸広勐孶斈孼𧨎䀄䡝𠈄寕慠𡨴𥧌𠖥寳宝䴐尅𡭄尓珎尔𡲥𦬨屉䣝岅峩峯嶋𡷹𡸷崐崘嵆𡺤岺巗苼㠭𤤁𢁉𢅳芇㠶㯂帮檊幵幺𤒼𠳓厦亷廐厨𡝱帉廴𨒂"],["fc40","廹廻㢠廼栾鐛弍𠇁弢㫞䢮𡌺强𦢈𢏐彘𢑱彣鞽𦹮彲鍀𨨶徧嶶㵟𥉐𡽪𧃸𢙨釖𠊞𨨩怱暅𡡷㥣㷇㘹垐𢞴祱㹀悞悤悳𤦂𤦏𧩓璤僡媠慤萤慂慈𦻒憁凴𠙖憇宪𣾷"],["fca1","𢡟懓𨮝𩥝懐㤲𢦀𢣁怣慜攞掋𠄘担𡝰拕𢸍捬𤧟㨗搸揸𡎎𡟼撐澊𢸶頔𤂌𥜝擡擥鑻㩦携㩗敍漖𤨨𤨣斅敭敟𣁾斵𤥀䬷旑䃘𡠩无旣忟𣐀昘𣇷𣇸晄𣆤𣆥晋𠹵晧𥇦晳晴𡸽𣈱𨗴𣇈𥌓矅𢣷馤朂𤎜𤨡㬫槺𣟂杞杧杢𤇍𩃭柗䓩栢湐鈼栁𣏦𦶠桝"],["fd40","𣑯槡樋𨫟楳棃𣗍椁椀㴲㨁𣘼㮀枬楡𨩊䋼椶榘㮡𠏉荣傐槹𣙙𢄪橅𣜃檝㯳枱櫈𩆜㰍欝𠤣惞欵歴𢟍溵𣫛𠎵𡥘㝀吡𣭚毡𣻼毜氷𢒋𤣱𦭑汚舦汹𣶼䓅𣶽𤆤𤤌𤤀"],["fda1","𣳉㛥㳫𠴲鮃𣇹𢒑羏样𦴥𦶡𦷫涖浜湼漄𤥿𤂅𦹲蔳𦽴凇沜渝萮𨬡港𣸯瑓𣾂秌湏媑𣁋濸㜍澝𣸰滺𡒗𤀽䕕鏰潄潜㵎潴𩅰㴻澟𤅄濓𤂑𤅕𤀹𣿰𣾴𤄿凟𤅖𤅗𤅀𦇝灋灾炧炁烌烕烖烟䄄㷨熴熖𤉷焫煅媈煊煮岜𤍥煏鍢𤋁焬𤑚𤨧𤨢熺𨯨炽爎"],["fe40","鑂爕夑鑃爤鍁𥘅爮牀𤥴梽牕牗㹕𣁄栍漽犂猪猫𤠣𨠫䣭𨠄猨献珏玪𠰺𦨮珉瑉𤇢𡛧𤨤昣㛅𤦷𤦍𤧻珷琕椃𤨦琹𠗃㻗瑜𢢭瑠𨺲瑇珤瑶莹瑬㜰瑴鏱樬璂䥓𤪌"],["fea1","𤅟𤩹𨮏孆𨰃𡢞瓈𡦈甎瓩甞𨻙𡩋寗𨺬鎅畍畊畧畮𤾂㼄𤴓疎瑝疞疴瘂瘬癑癏癯癶𦏵皐臯㟸𦤑𦤎皡皥皷盌𦾟葢𥂝𥅽𡸜眞眦着撯𥈠睘𣊬瞯𨥤𨥨𡛁矴砉𡍶𤨒棊碯磇磓隥礮𥗠磗礴碱𧘌辸袄𨬫𦂃𢘜禆褀椂禀𥡗禝𧬹礼禩渪𧄦㺨秆𩄍秔"]]' + ); + }, + 2685: (e) => { + 'use strict'; + e.exports = JSON.parse( + '[["0","\\u0000",127,"€"],["8140","丂丄丅丆丏丒丗丟丠両丣並丩丮丯丱丳丵丷丼乀乁乂乄乆乊乑乕乗乚乛乢乣乤乥乧乨乪",5,"乲乴",9,"乿",6,"亇亊"],["8180","亐亖亗亙亜亝亞亣亪亯亰亱亴亶亷亸亹亼亽亾仈仌仏仐仒仚仛仜仠仢仦仧仩仭仮仯仱仴仸仹仺仼仾伀伂",6,"伋伌伒",4,"伜伝伡伣伨伩伬伭伮伱伳伵伷伹伻伾",4,"佄佅佇",5,"佒佔佖佡佢佦佨佪佫佭佮佱佲併佷佸佹佺佽侀侁侂侅來侇侊侌侎侐侒侓侕侖侘侙侚侜侞侟価侢"],["8240","侤侫侭侰",4,"侶",8,"俀俁係俆俇俈俉俋俌俍俒",4,"俙俛俠俢俤俥俧俫俬俰俲俴俵俶俷俹俻俼俽俿",11],["8280","個倎倐們倓倕倖倗倛倝倞倠倢倣値倧倫倯",10,"倻倽倿偀偁偂偄偅偆偉偊偋偍偐",4,"偖偗偘偙偛偝",7,"偦",5,"偭",8,"偸偹偺偼偽傁傂傃傄傆傇傉傊傋傌傎",20,"傤傦傪傫傭",4,"傳",6,"傼"],["8340","傽",17,"僐",5,"僗僘僙僛",10,"僨僩僪僫僯僰僱僲僴僶",4,"僼",9,"儈"],["8380","儉儊儌",5,"儓",13,"儢",28,"兂兇兊兌兎兏児兒兓兗兘兙兛兝",4,"兣兤兦內兩兪兯兲兺兾兿冃冄円冇冊冋冎冏冐冑冓冔冘冚冝冞冟冡冣冦",4,"冭冮冴冸冹冺冾冿凁凂凃凅凈凊凍凎凐凒",5],["8440","凘凙凚凜凞凟凢凣凥",5,"凬凮凱凲凴凷凾刄刅刉刋刌刏刐刓刔刕刜刞刟刡刢刣別刦刧刪刬刯刱刲刴刵刼刾剄",5,"剋剎剏剒剓剕剗剘"],["8480","剙剚剛剝剟剠剢剣剤剦剨剫剬剭剮剰剱剳",9,"剾劀劃",4,"劉",6,"劑劒劔",6,"劜劤劥劦劧劮劯劰労",9,"勀勁勂勄勅勆勈勊勌勍勎勏勑勓勔動勗務",5,"勠勡勢勣勥",10,"勱",7,"勻勼勽匁匂匃匄匇匉匊匋匌匎"],["8540","匑匒匓匔匘匛匜匞匟匢匤匥匧匨匩匫匬匭匯",9,"匼匽區卂卄卆卋卌卍卐協単卙卛卝卥卨卪卬卭卲卶卹卻卼卽卾厀厁厃厇厈厊厎厏"],["8580","厐",4,"厖厗厙厛厜厞厠厡厤厧厪厫厬厭厯",6,"厷厸厹厺厼厽厾叀參",4,"収叏叐叒叓叕叚叜叝叞叡叢叧叴叺叾叿吀吂吅吇吋吔吘吙吚吜吢吤吥吪吰吳吶吷吺吽吿呁呂呄呅呇呉呌呍呎呏呑呚呝",4,"呣呥呧呩",7,"呴呹呺呾呿咁咃咅咇咈咉咊咍咑咓咗咘咜咞咟咠咡"],["8640","咢咥咮咰咲咵咶咷咹咺咼咾哃哅哊哋哖哘哛哠",4,"哫哬哯哰哱哴",5,"哻哾唀唂唃唄唅唈唊",4,"唒唓唕",5,"唜唝唞唟唡唥唦"],["8680","唨唩唫唭唲唴唵唶唸唹唺唻唽啀啂啅啇啈啋",4,"啑啒啓啔啗",4,"啝啞啟啠啢啣啨啩啫啯",5,"啹啺啽啿喅喆喌喍喎喐喒喓喕喖喗喚喛喞喠",6,"喨",8,"喲喴営喸喺喼喿",4,"嗆嗇嗈嗊嗋嗎嗏嗐嗕嗗",4,"嗞嗠嗢嗧嗩嗭嗮嗰嗱嗴嗶嗸",4,"嗿嘂嘃嘄嘅"],["8740","嘆嘇嘊嘋嘍嘐",7,"嘙嘚嘜嘝嘠嘡嘢嘥嘦嘨嘩嘪嘫嘮嘯嘰嘳嘵嘷嘸嘺嘼嘽嘾噀",11,"噏",4,"噕噖噚噛噝",4],["8780","噣噥噦噧噭噮噯噰噲噳噴噵噷噸噹噺噽",7,"嚇",6,"嚐嚑嚒嚔",14,"嚤",10,"嚰",6,"嚸嚹嚺嚻嚽",12,"囋",8,"囕囖囘囙囜団囥",5,"囬囮囯囲図囶囷囸囻囼圀圁圂圅圇國",6],["8840","園",9,"圝圞圠圡圢圤圥圦圧圫圱圲圴",4,"圼圽圿坁坃坄坅坆坈坉坋坒",4,"坘坙坢坣坥坧坬坮坰坱坲坴坵坸坹坺坽坾坿垀"],["8880","垁垇垈垉垊垍",4,"垔",6,"垜垝垞垟垥垨垪垬垯垰垱垳垵垶垷垹",8,"埄",6,"埌埍埐埑埓埖埗埛埜埞埡埢埣埥",7,"埮埰埱埲埳埵埶執埻埼埾埿堁堃堄堅堈堉堊堌堎堏堐堒堓堔堖堗堘堚堛堜堝堟堢堣堥",4,"堫",4,"報堲堳場堶",7],["8940","堾",5,"塅",6,"塎塏塐塒塓塕塖塗塙",4,"塟",5,"塦",4,"塭",16,"塿墂墄墆墇墈墊墋墌"],["8980","墍",4,"墔",4,"墛墜墝墠",7,"墪",17,"墽墾墿壀壂壃壄壆",10,"壒壓壔壖",13,"壥",5,"壭壯壱売壴壵壷壸壺",7,"夃夅夆夈",4,"夎夐夑夒夓夗夘夛夝夞夠夡夢夣夦夨夬夰夲夳夵夶夻"],["8a40","夽夾夿奀奃奅奆奊奌奍奐奒奓奙奛",4,"奡奣奤奦",12,"奵奷奺奻奼奾奿妀妅妉妋妌妎妏妐妑妔妕妘妚妛妜妝妟妠妡妢妦"],["8a80","妧妬妭妰妱妳",5,"妺妼妽妿",6,"姇姈姉姌姍姎姏姕姖姙姛姞",4,"姤姦姧姩姪姫姭",11,"姺姼姽姾娀娂娊娋娍娎娏娐娒娔娕娖娗娙娚娛娝娞娡娢娤娦娧娨娪",6,"娳娵娷",4,"娽娾娿婁",4,"婇婈婋",9,"婖婗婘婙婛",5],["8b40","婡婣婤婥婦婨婩婫",8,"婸婹婻婼婽婾媀",17,"媓",6,"媜",13,"媫媬"],["8b80","媭",4,"媴媶媷媹",4,"媿嫀嫃",5,"嫊嫋嫍",4,"嫓嫕嫗嫙嫚嫛嫝嫞嫟嫢嫤嫥嫧嫨嫪嫬",4,"嫲",22,"嬊",11,"嬘",25,"嬳嬵嬶嬸",7,"孁",6],["8c40","孈",7,"孒孖孞孠孡孧孨孫孭孮孯孲孴孶孷學孹孻孼孾孿宂宆宊宍宎宐宑宒宔宖実宧宨宩宬宭宮宯宱宲宷宺宻宼寀寁寃寈寉寊寋寍寎寏"],["8c80","寑寔",8,"寠寢寣實寧審",4,"寯寱",6,"寽対尀専尃尅將專尋尌對導尐尒尓尗尙尛尞尟尠尡尣尦尨尩尪尫尭尮尯尰尲尳尵尶尷屃屄屆屇屌屍屒屓屔屖屗屘屚屛屜屝屟屢層屧",6,"屰屲",6,"屻屼屽屾岀岃",4,"岉岊岋岎岏岒岓岕岝",4,"岤",4],["8d40","岪岮岯岰岲岴岶岹岺岻岼岾峀峂峃峅",5,"峌",5,"峓",5,"峚",6,"峢峣峧峩峫峬峮峯峱",9,"峼",4],["8d80","崁崄崅崈",5,"崏",4,"崕崗崘崙崚崜崝崟",4,"崥崨崪崫崬崯",4,"崵",7,"崿",7,"嵈嵉嵍",10,"嵙嵚嵜嵞",10,"嵪嵭嵮嵰嵱嵲嵳嵵",12,"嶃",21,"嶚嶛嶜嶞嶟嶠"],["8e40","嶡",21,"嶸",12,"巆",6,"巎",12,"巜巟巠巣巤巪巬巭"],["8e80","巰巵巶巸",4,"巿帀帄帇帉帊帋帍帎帒帓帗帞",7,"帨",4,"帯帰帲",4,"帹帺帾帿幀幁幃幆",5,"幍",6,"幖",4,"幜幝幟幠幣",14,"幵幷幹幾庁庂広庅庈庉庌庍庎庒庘庛庝庡庢庣庤庨",4,"庮",4,"庴庺庻庼庽庿",6],["8f40","廆廇廈廋",5,"廔廕廗廘廙廚廜",11,"廩廫",8,"廵廸廹廻廼廽弅弆弇弉弌弍弎弐弒弔弖弙弚弜弝弞弡弢弣弤"],["8f80","弨弫弬弮弰弲",6,"弻弽弾弿彁",14,"彑彔彙彚彛彜彞彟彠彣彥彧彨彫彮彯彲彴彵彶彸彺彽彾彿徃徆徍徎徏徑従徔徖徚徛徝從徟徠徢",5,"復徫徬徯",5,"徶徸徹徺徻徾",4,"忇忈忊忋忎忓忔忕忚忛応忞忟忢忣忥忦忨忩忬忯忰忲忳忴忶忷忹忺忼怇"],["9040","怈怉怋怌怐怑怓怗怘怚怞怟怢怣怤怬怭怮怰",4,"怶",4,"怽怾恀恄",6,"恌恎恏恑恓恔恖恗恘恛恜恞恟恠恡恥恦恮恱恲恴恵恷恾悀"],["9080","悁悂悅悆悇悈悊悋悎悏悐悑悓悕悗悘悙悜悞悡悢悤悥悧悩悪悮悰悳悵悶悷悹悺悽",7,"惇惈惉惌",4,"惒惓惔惖惗惙惛惞惡",4,"惪惱惲惵惷惸惻",4,"愂愃愄愅愇愊愋愌愐",4,"愖愗愘愙愛愜愝愞愡愢愥愨愩愪愬",18,"慀",6],["9140","慇慉態慍慏慐慒慓慔慖",6,"慞慟慠慡慣慤慥慦慩",6,"慱慲慳慴慶慸",18,"憌憍憏",4,"憕"],["9180","憖",6,"憞",8,"憪憫憭",9,"憸",5,"憿懀懁懃",4,"應懌",4,"懓懕",16,"懧",13,"懶",8,"戀",5,"戇戉戓戔戙戜戝戞戠戣戦戧戨戩戫戭戯戰戱戲戵戶戸",4,"扂扄扅扆扊"],["9240","扏扐払扖扗扙扚扜",6,"扤扥扨扱扲扴扵扷扸扺扻扽抁抂抃抅抆抇抈抋",5,"抔抙抜抝択抣抦抧抩抪抭抮抯抰抲抳抴抶抷抸抺抾拀拁"],["9280","拃拋拏拑拕拝拞拠拡拤拪拫拰拲拵拸拹拺拻挀挃挄挅挆挊挋挌挍挏挐挒挓挔挕挗挘挙挜挦挧挩挬挭挮挰挱挳",5,"挻挼挾挿捀捁捄捇捈捊捑捒捓捔捖",7,"捠捤捥捦捨捪捫捬捯捰捲捳捴捵捸捹捼捽捾捿掁掃掄掅掆掋掍掑掓掔掕掗掙",6,"採掤掦掫掯掱掲掵掶掹掻掽掿揀"],["9340","揁揂揃揅揇揈揊揋揌揑揓揔揕揗",6,"揟揢揤",4,"揫揬揮揯揰揱揳揵揷揹揺揻揼揾搃搄搆",4,"損搎搑搒搕",5,"搝搟搢搣搤"],["9380","搥搧搨搩搫搮",5,"搵",4,"搻搼搾摀摂摃摉摋",6,"摓摕摖摗摙",4,"摟",7,"摨摪摫摬摮",9,"摻",6,"撃撆撈",8,"撓撔撗撘撚撛撜撝撟",4,"撥撦撧撨撪撫撯撱撲撳撴撶撹撻撽撾撿擁擃擄擆",6,"擏擑擓擔擕擖擙據"],["9440","擛擜擝擟擠擡擣擥擧",24,"攁",7,"攊",7,"攓",4,"攙",8],["9480","攢攣攤攦",4,"攬攭攰攱攲攳攷攺攼攽敀",4,"敆敇敊敋敍敎敐敒敓敔敗敘敚敜敟敠敡敤敥敧敨敩敪敭敮敯敱敳敵敶數",14,"斈斉斊斍斎斏斒斔斕斖斘斚斝斞斠斢斣斦斨斪斬斮斱",7,"斺斻斾斿旀旂旇旈旉旊旍旐旑旓旔旕旘",7,"旡旣旤旪旫"],["9540","旲旳旴旵旸旹旻",4,"昁昄昅昇昈昉昋昍昐昑昒昖昗昘昚昛昜昞昡昢昣昤昦昩昪昫昬昮昰昲昳昷",4,"昽昿晀時晄",6,"晍晎晐晑晘"],["9580","晙晛晜晝晞晠晢晣晥晧晩",4,"晱晲晳晵晸晹晻晼晽晿暀暁暃暅暆暈暉暊暋暍暎暏暐暒暓暔暕暘",4,"暞",8,"暩",4,"暯",4,"暵暶暷暸暺暻暼暽暿",25,"曚曞",7,"曧曨曪",5,"曱曵曶書曺曻曽朁朂會"],["9640","朄朅朆朇朌朎朏朑朒朓朖朘朙朚朜朞朠",5,"朧朩朮朰朲朳朶朷朸朹朻朼朾朿杁杄杅杇杊杋杍杒杔杕杗",4,"杝杢杣杤杦杧杫杬杮東杴杶"],["9680","杸杹杺杻杽枀枂枃枅枆枈枊枌枍枎枏枑枒枓枔枖枙枛枟枠枡枤枦枩枬枮枱枲枴枹",7,"柂柅",9,"柕柖柗柛柟柡柣柤柦柧柨柪柫柭柮柲柵",7,"柾栁栂栃栄栆栍栐栒栔栕栘",4,"栞栟栠栢",6,"栫",6,"栴栵栶栺栻栿桇桋桍桏桒桖",5],["9740","桜桝桞桟桪桬",7,"桵桸",8,"梂梄梇",7,"梐梑梒梔梕梖梘",9,"梣梤梥梩梪梫梬梮梱梲梴梶梷梸"],["9780","梹",6,"棁棃",5,"棊棌棎棏棐棑棓棔棖棗棙棛",4,"棡棢棤",9,"棯棲棳棴棶棷棸棻棽棾棿椀椂椃椄椆",4,"椌椏椑椓",11,"椡椢椣椥",7,"椮椯椱椲椳椵椶椷椸椺椻椼椾楀楁楃",16,"楕楖楘楙楛楜楟"],["9840","楡楢楤楥楧楨楩楪楬業楯楰楲",4,"楺楻楽楾楿榁榃榅榊榋榌榎",5,"榖榗榙榚榝",9,"榩榪榬榮榯榰榲榳榵榶榸榹榺榼榽"],["9880","榾榿槀槂",7,"構槍槏槑槒槓槕",5,"槜槝槞槡",11,"槮槯槰槱槳",9,"槾樀",9,"樋",11,"標",5,"樠樢",5,"権樫樬樭樮樰樲樳樴樶",6,"樿",4,"橅橆橈",7,"橑",6,"橚"],["9940","橜",4,"橢橣橤橦",10,"橲",6,"橺橻橽橾橿檁檂檃檅",8,"檏檒",4,"檘",7,"檡",5],["9980","檧檨檪檭",114,"欥欦欨",6],["9a40","欯欰欱欳欴欵欶欸欻欼欽欿歀歁歂歄歅歈歊歋歍",11,"歚",7,"歨歩歫",13,"歺歽歾歿殀殅殈"],["9a80","殌殎殏殐殑殔殕殗殘殙殜",4,"殢",7,"殫",7,"殶殸",6,"毀毃毄毆",4,"毌毎毐毑毘毚毜",4,"毢",7,"毬毭毮毰毱毲毴毶毷毸毺毻毼毾",6,"氈",4,"氎氒気氜氝氞氠氣氥氫氬氭氱氳氶氷氹氺氻氼氾氿汃汄汅汈汋",4,"汑汒汓汖汘"],["9b40","汙汚汢汣汥汦汧汫",4,"汱汳汵汷汸決汻汼汿沀沄沇沊沋沍沎沑沒沕沖沗沘沚沜沝沞沠沢沨沬沯沰沴沵沶沷沺泀況泂泃泆泇泈泋泍泎泏泑泒泘"],["9b80","泙泚泜泝泟泤泦泧泩泬泭泲泴泹泿洀洂洃洅洆洈洉洊洍洏洐洑洓洔洕洖洘洜洝洟",5,"洦洨洩洬洭洯洰洴洶洷洸洺洿浀浂浄浉浌浐浕浖浗浘浛浝浟浡浢浤浥浧浨浫浬浭浰浱浲浳浵浶浹浺浻浽",4,"涃涄涆涇涊涋涍涏涐涒涖",4,"涜涢涥涬涭涰涱涳涴涶涷涹",5,"淁淂淃淈淉淊"],["9c40","淍淎淏淐淒淓淔淕淗淚淛淜淟淢淣淥淧淨淩淪淭淯淰淲淴淵淶淸淺淽",7,"渆渇済渉渋渏渒渓渕渘渙減渜渞渟渢渦渧渨渪測渮渰渱渳渵"],["9c80","渶渷渹渻",7,"湅",7,"湏湐湑湒湕湗湙湚湜湝湞湠",10,"湬湭湯",14,"満溁溂溄溇溈溊",4,"溑",6,"溙溚溛溝溞溠溡溣溤溦溨溩溫溬溭溮溰溳溵溸溹溼溾溿滀滃滄滅滆滈滉滊滌滍滎滐滒滖滘滙滛滜滝滣滧滪",5],["9d40","滰滱滲滳滵滶滷滸滺",7,"漃漄漅漇漈漊",4,"漐漑漒漖",9,"漡漢漣漥漦漧漨漬漮漰漲漴漵漷",6,"漿潀潁潂"],["9d80","潃潄潅潈潉潊潌潎",9,"潙潚潛潝潟潠潡潣潤潥潧",5,"潯潰潱潳潵潶潷潹潻潽",6,"澅澆澇澊澋澏",12,"澝澞澟澠澢",4,"澨",10,"澴澵澷澸澺",5,"濁濃",5,"濊",6,"濓",10,"濟濢濣濤濥"],["9e40","濦",7,"濰",32,"瀒",7,"瀜",6,"瀤",6],["9e80","瀫",9,"瀶瀷瀸瀺",17,"灍灎灐",13,"灟",11,"灮灱灲灳灴灷灹灺灻災炁炂炃炄炆炇炈炋炌炍炏炐炑炓炗炘炚炛炞",12,"炰炲炴炵炶為炾炿烄烅烆烇烉烋",12,"烚"],["9f40","烜烝烞烠烡烢烣烥烪烮烰",6,"烸烺烻烼烾",10,"焋",4,"焑焒焔焗焛",10,"焧",7,"焲焳焴"],["9f80","焵焷",13,"煆煇煈煉煋煍煏",12,"煝煟",4,"煥煩",4,"煯煰煱煴煵煶煷煹煻煼煾",5,"熅",4,"熋熌熍熎熐熑熒熓熕熖熗熚",4,"熡",6,"熩熪熫熭",5,"熴熶熷熸熺",8,"燄",9,"燏",4],["a040","燖",9,"燡燢燣燤燦燨",5,"燯",9,"燺",11,"爇",19],["a080","爛爜爞",9,"爩爫爭爮爯爲爳爴爺爼爾牀",6,"牉牊牋牎牏牐牑牓牔牕牗牘牚牜牞牠牣牤牥牨牪牫牬牭牰牱牳牴牶牷牸牻牼牽犂犃犅",4,"犌犎犐犑犓",11,"犠",11,"犮犱犲犳犵犺",6,"狅狆狇狉狊狋狌狏狑狓狔狕狖狘狚狛"],["a1a1"," 、。·ˉˇ¨〃々—~‖…‘’“”〔〕〈",7,"〖〗【】±×÷∶∧∨∑∏∪∩∈∷√⊥∥∠⌒⊙∫∮≡≌≈∽∝≠≮≯≤≥∞∵∴♂♀°′″℃$¤¢£‰§№☆★○●◎◇◆□■△▲※→←↑↓〓"],["a2a1","ⅰ",9],["a2b1","⒈",19,"⑴",19,"①",9],["a2e5","㈠",9],["a2f1","Ⅰ",11],["a3a1","!"#¥%",88," ̄"],["a4a1","ぁ",82],["a5a1","ァ",85],["a6a1","Α",16,"Σ",6],["a6c1","α",16,"σ",6],["a6e0","︵︶︹︺︿﹀︽︾﹁﹂﹃﹄"],["a6ee","︻︼︷︸︱"],["a6f4","︳︴"],["a7a1","А",5,"ЁЖ",25],["a7d1","а",5,"ёж",25],["a840","ˊˋ˙–―‥‵℅℉↖↗↘↙∕∟∣≒≦≧⊿═",35,"▁",6],["a880","█",7,"▓▔▕▼▽◢◣◤◥☉⊕〒〝〞"],["a8a1","āáǎàēéěèīíǐìōóǒòūúǔùǖǘǚǜüêɑ"],["a8bd","ńň"],["a8c0","ɡ"],["a8c5","ㄅ",36],["a940","〡",8,"㊣㎎㎏㎜㎝㎞㎡㏄㏎㏑㏒㏕︰¬¦"],["a959","℡㈱"],["a95c","‐"],["a960","ー゛゜ヽヾ〆ゝゞ﹉",9,"﹔﹕﹖﹗﹙",8],["a980","﹢",4,"﹨﹩﹪﹫"],["a996","〇"],["a9a4","─",75],["aa40","狜狝狟狢",5,"狪狫狵狶狹狽狾狿猀猂猄",5,"猋猌猍猏猐猑猒猔猘猙猚猟猠猣猤猦猧猨猭猯猰猲猳猵猶猺猻猼猽獀",8],["aa80","獉獊獋獌獎獏獑獓獔獕獖獘",7,"獡",10,"獮獰獱"],["ab40","獲",11,"獿",4,"玅玆玈玊玌玍玏玐玒玓玔玕玗玘玙玚玜玝玞玠玡玣",5,"玪玬玭玱玴玵玶玸玹玼玽玾玿珁珃",4],["ab80","珋珌珎珒",6,"珚珛珜珝珟珡珢珣珤珦珨珪珫珬珮珯珰珱珳",4],["ac40","珸",10,"琄琇琈琋琌琍琎琑",8,"琜",5,"琣琤琧琩琫琭琯琱琲琷",4,"琽琾琿瑀瑂",11],["ac80","瑎",6,"瑖瑘瑝瑠",12,"瑮瑯瑱",4,"瑸瑹瑺"],["ad40","瑻瑼瑽瑿璂璄璅璆璈璉璊璌璍璏璑",10,"璝璟",7,"璪",15,"璻",12],["ad80","瓈",9,"瓓",8,"瓝瓟瓡瓥瓧",6,"瓰瓱瓲"],["ae40","瓳瓵瓸",6,"甀甁甂甃甅",7,"甎甐甒甔甕甖甗甛甝甞甠",4,"甦甧甪甮甴甶甹甼甽甿畁畂畃畄畆畇畉畊畍畐畑畒畓畕畖畗畘"],["ae80","畝",7,"畧畨畩畫",6,"畳畵當畷畺",4,"疀疁疂疄疅疇"],["af40","疈疉疊疌疍疎疐疓疕疘疛疜疞疢疦",4,"疭疶疷疺疻疿痀痁痆痋痌痎痏痐痑痓痗痙痚痜痝痟痠痡痥痩痬痭痮痯痲痳痵痶痷痸痺痻痽痾瘂瘄瘆瘇"],["af80","瘈瘉瘋瘍瘎瘏瘑瘒瘓瘔瘖瘚瘜瘝瘞瘡瘣瘧瘨瘬瘮瘯瘱瘲瘶瘷瘹瘺瘻瘽癁療癄"],["b040","癅",6,"癎",5,"癕癗",4,"癝癟癠癡癢癤",6,"癬癭癮癰",7,"癹発發癿皀皁皃皅皉皊皌皍皏皐皒皔皕皗皘皚皛"],["b080","皜",7,"皥",8,"皯皰皳皵",9,"盀盁盃啊阿埃挨哎唉哀皑癌蔼矮艾碍爱隘鞍氨安俺按暗岸胺案肮昂盎凹敖熬翱袄傲奥懊澳芭捌扒叭吧笆八疤巴拔跋靶把耙坝霸罢爸白柏百摆佰败拜稗斑班搬扳般颁板版扮拌伴瓣半办绊邦帮梆榜膀绑棒磅蚌镑傍谤苞胞包褒剥"],["b140","盄盇盉盋盌盓盕盙盚盜盝盞盠",4,"盦",7,"盰盳盵盶盷盺盻盽盿眀眂眃眅眆眊県眎",10,"眛眜眝眞眡眣眤眥眧眪眫"],["b180","眬眮眰",4,"眹眻眽眾眿睂睄睅睆睈",7,"睒",7,"睜薄雹保堡饱宝抱报暴豹鲍爆杯碑悲卑北辈背贝钡倍狈备惫焙被奔苯本笨崩绷甭泵蹦迸逼鼻比鄙笔彼碧蓖蔽毕毙毖币庇痹闭敝弊必辟壁臂避陛鞭边编贬扁便变卞辨辩辫遍标彪膘表鳖憋别瘪彬斌濒滨宾摈兵冰柄丙秉饼炳"],["b240","睝睞睟睠睤睧睩睪睭",11,"睺睻睼瞁瞂瞃瞆",5,"瞏瞐瞓",11,"瞡瞣瞤瞦瞨瞫瞭瞮瞯瞱瞲瞴瞶",4],["b280","瞼瞾矀",12,"矎",8,"矘矙矚矝",4,"矤病并玻菠播拨钵波博勃搏铂箔伯帛舶脖膊渤泊驳捕卜哺补埠不布步簿部怖擦猜裁材才财睬踩采彩菜蔡餐参蚕残惭惨灿苍舱仓沧藏操糙槽曹草厕策侧册测层蹭插叉茬茶查碴搽察岔差诧拆柴豺搀掺蝉馋谗缠铲产阐颤昌猖"],["b340","矦矨矪矯矰矱矲矴矵矷矹矺矻矼砃",5,"砊砋砎砏砐砓砕砙砛砞砠砡砢砤砨砪砫砮砯砱砲砳砵砶砽砿硁硂硃硄硆硈硉硊硋硍硏硑硓硔硘硙硚"],["b380","硛硜硞",11,"硯",7,"硸硹硺硻硽",6,"场尝常长偿肠厂敞畅唱倡超抄钞朝嘲潮巢吵炒车扯撤掣彻澈郴臣辰尘晨忱沉陈趁衬撑称城橙成呈乘程惩澄诚承逞骋秤吃痴持匙池迟弛驰耻齿侈尺赤翅斥炽充冲虫崇宠抽酬畴踌稠愁筹仇绸瞅丑臭初出橱厨躇锄雏滁除楚"],["b440","碄碅碆碈碊碋碏碐碒碔碕碖碙碝碞碠碢碤碦碨",7,"碵碶碷碸確碻碼碽碿磀磂磃磄磆磇磈磌磍磎磏磑磒磓磖磗磘磚",9],["b480","磤磥磦磧磩磪磫磭",4,"磳磵磶磸磹磻",5,"礂礃礄礆",6,"础储矗搐触处揣川穿椽传船喘串疮窗幢床闯创吹炊捶锤垂春椿醇唇淳纯蠢戳绰疵茨磁雌辞慈瓷词此刺赐次聪葱囱匆从丛凑粗醋簇促蹿篡窜摧崔催脆瘁粹淬翠村存寸磋撮搓措挫错搭达答瘩打大呆歹傣戴带殆代贷袋待逮"],["b540","礍",5,"礔",9,"礟",4,"礥",14,"礵",4,"礽礿祂祃祄祅祇祊",8,"祔祕祘祙祡祣"],["b580","祤祦祩祪祫祬祮祰",6,"祹祻",4,"禂禃禆禇禈禉禋禌禍禎禐禑禒怠耽担丹单郸掸胆旦氮但惮淡诞弹蛋当挡党荡档刀捣蹈倒岛祷导到稻悼道盗德得的蹬灯登等瞪凳邓堤低滴迪敌笛狄涤翟嫡抵底地蒂第帝弟递缔颠掂滇碘点典靛垫电佃甸店惦奠淀殿碉叼雕凋刁掉吊钓调跌爹碟蝶迭谍叠"],["b640","禓",6,"禛",11,"禨",10,"禴",4,"禼禿秂秄秅秇秈秊秌秎秏秐秓秔秖秗秙",5,"秠秡秢秥秨秪"],["b680","秬秮秱",6,"秹秺秼秾秿稁稄稅稇稈稉稊稌稏",4,"稕稖稘稙稛稜丁盯叮钉顶鼎锭定订丢东冬董懂动栋侗恫冻洞兜抖斗陡豆逗痘都督毒犊独读堵睹赌杜镀肚度渡妒端短锻段断缎堆兑队对墩吨蹲敦顿囤钝盾遁掇哆多夺垛躲朵跺舵剁惰堕蛾峨鹅俄额讹娥恶厄扼遏鄂饿恩而儿耳尔饵洱二"],["b740","稝稟稡稢稤",14,"稴稵稶稸稺稾穀",5,"穇",9,"穒",4,"穘",16],["b780","穩",6,"穱穲穳穵穻穼穽穾窂窅窇窉窊窋窌窎窏窐窓窔窙窚窛窞窡窢贰发罚筏伐乏阀法珐藩帆番翻樊矾钒繁凡烦反返范贩犯饭泛坊芳方肪房防妨仿访纺放菲非啡飞肥匪诽吠肺废沸费芬酚吩氛分纷坟焚汾粉奋份忿愤粪丰封枫蜂峰锋风疯烽逢冯缝讽奉凤佛否夫敷肤孵扶拂辐幅氟符伏俘服"],["b840","窣窤窧窩窪窫窮",4,"窴",10,"竀",10,"竌",9,"竗竘竚竛竜竝竡竢竤竧",5,"竮竰竱竲竳"],["b880","竴",4,"竻竼竾笀笁笂笅笇笉笌笍笎笐笒笓笖笗笘笚笜笝笟笡笢笣笧笩笭浮涪福袱弗甫抚辅俯釜斧脯腑府腐赴副覆赋复傅付阜父腹负富讣附妇缚咐噶嘎该改概钙盖溉干甘杆柑竿肝赶感秆敢赣冈刚钢缸肛纲岗港杠篙皋高膏羔糕搞镐稿告哥歌搁戈鸽胳疙割革葛格蛤阁隔铬个各给根跟耕更庚羹"],["b940","笯笰笲笴笵笶笷笹笻笽笿",5,"筆筈筊筍筎筓筕筗筙筜筞筟筡筣",10,"筯筰筳筴筶筸筺筼筽筿箁箂箃箄箆",6,"箎箏"],["b980","箑箒箓箖箘箙箚箛箞箟箠箣箤箥箮箯箰箲箳箵箶箷箹",7,"篂篃範埂耿梗工攻功恭龚供躬公宫弓巩汞拱贡共钩勾沟苟狗垢构购够辜菇咕箍估沽孤姑鼓古蛊骨谷股故顾固雇刮瓜剐寡挂褂乖拐怪棺关官冠观管馆罐惯灌贯光广逛瑰规圭硅归龟闺轨鬼诡癸桂柜跪贵刽辊滚棍锅郭国果裹过哈"],["ba40","篅篈築篊篋篍篎篏篐篒篔",4,"篛篜篞篟篠篢篣篤篧篨篩篫篬篭篯篰篲",4,"篸篹篺篻篽篿",7,"簈簉簊簍簎簐",5,"簗簘簙"],["ba80","簚",4,"簠",5,"簨簩簫",12,"簹",5,"籂骸孩海氦亥害骇酣憨邯韩含涵寒函喊罕翰撼捍旱憾悍焊汗汉夯杭航壕嚎豪毫郝好耗号浩呵喝荷菏核禾和何合盒貉阂河涸赫褐鹤贺嘿黑痕很狠恨哼亨横衡恒轰哄烘虹鸿洪宏弘红喉侯猴吼厚候后呼乎忽瑚壶葫胡蝴狐糊湖"],["bb40","籃",9,"籎",36,"籵",5,"籾",9],["bb80","粈粊",6,"粓粔粖粙粚粛粠粡粣粦粧粨粩粫粬粭粯粰粴",4,"粺粻弧虎唬护互沪户花哗华猾滑画划化话槐徊怀淮坏欢环桓还缓换患唤痪豢焕涣宦幻荒慌黄磺蝗簧皇凰惶煌晃幌恍谎灰挥辉徽恢蛔回毁悔慧卉惠晦贿秽会烩汇讳诲绘荤昏婚魂浑混豁活伙火获或惑霍货祸击圾基机畸稽积箕"],["bc40","粿糀糂糃糄糆糉糋糎",6,"糘糚糛糝糞糡",6,"糩",5,"糰",7,"糹糺糼",13,"紋",5],["bc80","紑",14,"紡紣紤紥紦紨紩紪紬紭紮細",6,"肌饥迹激讥鸡姬绩缉吉极棘辑籍集及急疾汲即嫉级挤几脊己蓟技冀季伎祭剂悸济寄寂计记既忌际妓继纪嘉枷夹佳家加荚颊贾甲钾假稼价架驾嫁歼监坚尖笺间煎兼肩艰奸缄茧检柬碱硷拣捡简俭剪减荐槛鉴践贱见键箭件"],["bd40","紷",54,"絯",7],["bd80","絸",32,"健舰剑饯渐溅涧建僵姜将浆江疆蒋桨奖讲匠酱降蕉椒礁焦胶交郊浇骄娇嚼搅铰矫侥脚狡角饺缴绞剿教酵轿较叫窖揭接皆秸街阶截劫节桔杰捷睫竭洁结解姐戒藉芥界借介疥诫届巾筋斤金今津襟紧锦仅谨进靳晋禁近烬浸"],["be40","継",12,"綧",6,"綯",42],["be80","線",32,"尽劲荆兢茎睛晶鲸京惊精粳经井警景颈静境敬镜径痉靖竟竞净炯窘揪究纠玖韭久灸九酒厩救旧臼舅咎就疚鞠拘狙疽居驹菊局咀矩举沮聚拒据巨具距踞锯俱句惧炬剧捐鹃娟倦眷卷绢撅攫抉掘倔爵觉决诀绝均菌钧军君峻"],["bf40","緻",62],["bf80","縺縼",4,"繂",4,"繈",21,"俊竣浚郡骏喀咖卡咯开揩楷凯慨刊堪勘坎砍看康慷糠扛抗亢炕考拷烤靠坷苛柯棵磕颗科壳咳可渴克刻客课肯啃垦恳坑吭空恐孔控抠口扣寇枯哭窟苦酷库裤夸垮挎跨胯块筷侩快宽款匡筐狂框矿眶旷况亏盔岿窥葵奎魁傀"],["c040","繞",35,"纃",23,"纜纝纞"],["c080","纮纴纻纼绖绤绬绹缊缐缞缷缹缻",6,"罃罆",9,"罒罓馈愧溃坤昆捆困括扩廓阔垃拉喇蜡腊辣啦莱来赖蓝婪栏拦篮阑兰澜谰揽览懒缆烂滥琅榔狼廊郎朗浪捞劳牢老佬姥酪烙涝勒乐雷镭蕾磊累儡垒擂肋类泪棱楞冷厘梨犁黎篱狸离漓理李里鲤礼莉荔吏栗丽厉励砾历利傈例俐"],["c140","罖罙罛罜罝罞罠罣",4,"罫罬罭罯罰罳罵罶罷罸罺罻罼罽罿羀羂",7,"羋羍羏",4,"羕",4,"羛羜羠羢羣羥羦羨",6,"羱"],["c180","羳",4,"羺羻羾翀翂翃翄翆翇翈翉翋翍翏",4,"翖翗翙",5,"翢翣痢立粒沥隶力璃哩俩联莲连镰廉怜涟帘敛脸链恋炼练粮凉梁粱良两辆量晾亮谅撩聊僚疗燎寥辽潦了撂镣廖料列裂烈劣猎琳林磷霖临邻鳞淋凛赁吝拎玲菱零龄铃伶羚凌灵陵岭领另令溜琉榴硫馏留刘瘤流柳六龙聋咙笼窿"],["c240","翤翧翨翪翫翬翭翯翲翴",6,"翽翾翿耂耇耈耉耊耎耏耑耓耚耛耝耞耟耡耣耤耫",5,"耲耴耹耺耼耾聀聁聄聅聇聈聉聎聏聐聑聓聕聖聗"],["c280","聙聛",13,"聫",5,"聲",11,"隆垄拢陇楼娄搂篓漏陋芦卢颅庐炉掳卤虏鲁麓碌露路赂鹿潞禄录陆戮驴吕铝侣旅履屡缕虑氯律率滤绿峦挛孪滦卵乱掠略抡轮伦仑沦纶论萝螺罗逻锣箩骡裸落洛骆络妈麻玛码蚂马骂嘛吗埋买麦卖迈脉瞒馒蛮满蔓曼慢漫"],["c340","聾肁肂肅肈肊肍",5,"肔肕肗肙肞肣肦肧肨肬肰肳肵肶肸肹肻胅胇",4,"胏",6,"胘胟胠胢胣胦胮胵胷胹胻胾胿脀脁脃脄脅脇脈脋"],["c380","脌脕脗脙脛脜脝脟",12,"脭脮脰脳脴脵脷脹",4,"脿谩芒茫盲氓忙莽猫茅锚毛矛铆卯茂冒帽貌贸么玫枚梅酶霉煤没眉媒镁每美昧寐妹媚门闷们萌蒙檬盟锰猛梦孟眯醚靡糜迷谜弥米秘觅泌蜜密幂棉眠绵冕免勉娩缅面苗描瞄藐秒渺庙妙蔑灭民抿皿敏悯闽明螟鸣铭名命谬摸"],["c440","腀",5,"腇腉腍腎腏腒腖腗腘腛",4,"腡腢腣腤腦腨腪腫腬腯腲腳腵腶腷腸膁膃",4,"膉膋膌膍膎膐膒",5,"膙膚膞",4,"膤膥"],["c480","膧膩膫",7,"膴",5,"膼膽膾膿臄臅臇臈臉臋臍",6,"摹蘑模膜磨摩魔抹末莫墨默沫漠寞陌谋牟某拇牡亩姆母墓暮幕募慕木目睦牧穆拿哪呐钠那娜纳氖乃奶耐奈南男难囊挠脑恼闹淖呢馁内嫩能妮霓倪泥尼拟你匿腻逆溺蔫拈年碾撵捻念娘酿鸟尿捏聂孽啮镊镍涅您柠狞凝宁"],["c540","臔",14,"臤臥臦臨臩臫臮",4,"臵",5,"臽臿舃與",4,"舎舏舑舓舕",5,"舝舠舤舥舦舧舩舮舲舺舼舽舿"],["c580","艀艁艂艃艅艆艈艊艌艍艎艐",7,"艙艛艜艝艞艠",7,"艩拧泞牛扭钮纽脓浓农弄奴努怒女暖虐疟挪懦糯诺哦欧鸥殴藕呕偶沤啪趴爬帕怕琶拍排牌徘湃派攀潘盘磐盼畔判叛乓庞旁耪胖抛咆刨炮袍跑泡呸胚培裴赔陪配佩沛喷盆砰抨烹澎彭蓬棚硼篷膨朋鹏捧碰坯砒霹批披劈琵毗"],["c640","艪艫艬艭艱艵艶艷艸艻艼芀芁芃芅芆芇芉芌芐芓芔芕芖芚芛芞芠芢芣芧芲芵芶芺芻芼芿苀苂苃苅苆苉苐苖苙苚苝苢苧苨苩苪苬苭苮苰苲苳苵苶苸"],["c680","苺苼",4,"茊茋茍茐茒茓茖茘茙茝",9,"茩茪茮茰茲茷茻茽啤脾疲皮匹痞僻屁譬篇偏片骗飘漂瓢票撇瞥拼频贫品聘乒坪苹萍平凭瓶评屏坡泼颇婆破魄迫粕剖扑铺仆莆葡菩蒲埔朴圃普浦谱曝瀑期欺栖戚妻七凄漆柒沏其棋奇歧畦崎脐齐旗祈祁骑起岂乞企启契砌器气迄弃汽泣讫掐"],["c740","茾茿荁荂荄荅荈荊",4,"荓荕",4,"荝荢荰",6,"荹荺荾",6,"莇莈莊莋莌莍莏莐莑莔莕莖莗莙莚莝莟莡",6,"莬莭莮"],["c780","莯莵莻莾莿菂菃菄菆菈菉菋菍菎菐菑菒菓菕菗菙菚菛菞菢菣菤菦菧菨菫菬菭恰洽牵扦钎铅千迁签仟谦乾黔钱钳前潜遣浅谴堑嵌欠歉枪呛腔羌墙蔷强抢橇锹敲悄桥瞧乔侨巧鞘撬翘峭俏窍切茄且怯窃钦侵亲秦琴勤芹擒禽寝沁青轻氢倾卿清擎晴氰情顷请庆琼穷秋丘邱球求囚酋泅趋区蛆曲躯屈驱渠"],["c840","菮華菳",4,"菺菻菼菾菿萀萂萅萇萈萉萊萐萒",5,"萙萚萛萞",5,"萩",7,"萲",5,"萹萺萻萾",7,"葇葈葉"],["c880","葊",6,"葒",4,"葘葝葞葟葠葢葤",4,"葪葮葯葰葲葴葷葹葻葼取娶龋趣去圈颧权醛泉全痊拳犬券劝缺炔瘸却鹊榷确雀裙群然燃冉染瓤壤攘嚷让饶扰绕惹热壬仁人忍韧任认刃妊纫扔仍日戎茸蓉荣融熔溶容绒冗揉柔肉茹蠕儒孺如辱乳汝入褥软阮蕊瑞锐闰润若弱撒洒萨腮鳃塞赛三叁"],["c940","葽",4,"蒃蒄蒅蒆蒊蒍蒏",7,"蒘蒚蒛蒝蒞蒟蒠蒢",12,"蒰蒱蒳蒵蒶蒷蒻蒼蒾蓀蓂蓃蓅蓆蓇蓈蓋蓌蓎蓏蓒蓔蓕蓗"],["c980","蓘",4,"蓞蓡蓢蓤蓧",4,"蓭蓮蓯蓱",10,"蓽蓾蔀蔁蔂伞散桑嗓丧搔骚扫嫂瑟色涩森僧莎砂杀刹沙纱傻啥煞筛晒珊苫杉山删煽衫闪陕擅赡膳善汕扇缮墒伤商赏晌上尚裳梢捎稍烧芍勺韶少哨邵绍奢赊蛇舌舍赦摄射慑涉社设砷申呻伸身深娠绅神沈审婶甚肾慎渗声生甥牲升绳"],["ca40","蔃",8,"蔍蔎蔏蔐蔒蔔蔕蔖蔘蔙蔛蔜蔝蔞蔠蔢",8,"蔭",9,"蔾",4,"蕄蕅蕆蕇蕋",10],["ca80","蕗蕘蕚蕛蕜蕝蕟",4,"蕥蕦蕧蕩",8,"蕳蕵蕶蕷蕸蕼蕽蕿薀薁省盛剩胜圣师失狮施湿诗尸虱十石拾时什食蚀实识史矢使屎驶始式示士世柿事拭誓逝势是嗜噬适仕侍释饰氏市恃室视试收手首守寿授售受瘦兽蔬枢梳殊抒输叔舒淑疏书赎孰熟薯暑曙署蜀黍鼠属术述树束戍竖墅庶数漱"],["cb40","薂薃薆薈",6,"薐",10,"薝",6,"薥薦薧薩薫薬薭薱",5,"薸薺",6,"藂",6,"藊",4,"藑藒"],["cb80","藔藖",5,"藝",6,"藥藦藧藨藪",14,"恕刷耍摔衰甩帅栓拴霜双爽谁水睡税吮瞬顺舜说硕朔烁斯撕嘶思私司丝死肆寺嗣四伺似饲巳松耸怂颂送宋讼诵搜艘擞嗽苏酥俗素速粟僳塑溯宿诉肃酸蒜算虽隋随绥髓碎岁穗遂隧祟孙损笋蓑梭唆缩琐索锁所塌他它她塔"],["cc40","藹藺藼藽藾蘀",4,"蘆",10,"蘒蘓蘔蘕蘗",15,"蘨蘪",13,"蘹蘺蘻蘽蘾蘿虀"],["cc80","虁",11,"虒虓處",4,"虛虜虝號虠虡虣",7,"獭挞蹋踏胎苔抬台泰酞太态汰坍摊贪瘫滩坛檀痰潭谭谈坦毯袒碳探叹炭汤塘搪堂棠膛唐糖倘躺淌趟烫掏涛滔绦萄桃逃淘陶讨套特藤腾疼誊梯剔踢锑提题蹄啼体替嚏惕涕剃屉天添填田甜恬舔腆挑条迢眺跳贴铁帖厅听烃"],["cd40","虭虯虰虲",6,"蚃",6,"蚎",4,"蚔蚖",5,"蚞",4,"蚥蚦蚫蚭蚮蚲蚳蚷蚸蚹蚻",4,"蛁蛂蛃蛅蛈蛌蛍蛒蛓蛕蛖蛗蛚蛜"],["cd80","蛝蛠蛡蛢蛣蛥蛦蛧蛨蛪蛫蛬蛯蛵蛶蛷蛺蛻蛼蛽蛿蜁蜄蜅蜆蜋蜌蜎蜏蜐蜑蜔蜖汀廷停亭庭挺艇通桐酮瞳同铜彤童桶捅筒统痛偷投头透凸秃突图徒途涂屠土吐兔湍团推颓腿蜕褪退吞屯臀拖托脱鸵陀驮驼椭妥拓唾挖哇蛙洼娃瓦袜歪外豌弯湾玩顽丸烷完碗挽晚皖惋宛婉万腕汪王亡枉网往旺望忘妄威"],["ce40","蜙蜛蜝蜟蜠蜤蜦蜧蜨蜪蜫蜬蜭蜯蜰蜲蜳蜵蜶蜸蜹蜺蜼蜽蝀",6,"蝊蝋蝍蝏蝐蝑蝒蝔蝕蝖蝘蝚",5,"蝡蝢蝦",7,"蝯蝱蝲蝳蝵"],["ce80","蝷蝸蝹蝺蝿螀螁螄螆螇螉螊螌螎",4,"螔螕螖螘",6,"螠",4,"巍微危韦违桅围唯惟为潍维苇萎委伟伪尾纬未蔚味畏胃喂魏位渭谓尉慰卫瘟温蚊文闻纹吻稳紊问嗡翁瓮挝蜗涡窝我斡卧握沃巫呜钨乌污诬屋无芜梧吾吴毋武五捂午舞伍侮坞戊雾晤物勿务悟误昔熙析西硒矽晰嘻吸锡牺"],["cf40","螥螦螧螩螪螮螰螱螲螴螶螷螸螹螻螼螾螿蟁",4,"蟇蟈蟉蟌",4,"蟔",6,"蟜蟝蟞蟟蟡蟢蟣蟤蟦蟧蟨蟩蟫蟬蟭蟯",9],["cf80","蟺蟻蟼蟽蟿蠀蠁蠂蠄",5,"蠋",7,"蠔蠗蠘蠙蠚蠜",4,"蠣稀息希悉膝夕惜熄烯溪汐犀檄袭席习媳喜铣洗系隙戏细瞎虾匣霞辖暇峡侠狭下厦夏吓掀锨先仙鲜纤咸贤衔舷闲涎弦嫌显险现献县腺馅羡宪陷限线相厢镶香箱襄湘乡翔祥详想响享项巷橡像向象萧硝霄削哮嚣销消宵淆晓"],["d040","蠤",13,"蠳",5,"蠺蠻蠽蠾蠿衁衂衃衆",5,"衎",5,"衕衖衘衚",6,"衦衧衪衭衯衱衳衴衵衶衸衹衺"],["d080","衻衼袀袃袆袇袉袊袌袎袏袐袑袓袔袕袗",4,"袝",4,"袣袥",5,"小孝校肖啸笑效楔些歇蝎鞋协挟携邪斜胁谐写械卸蟹懈泄泻谢屑薪芯锌欣辛新忻心信衅星腥猩惺兴刑型形邢行醒幸杏性姓兄凶胸匈汹雄熊休修羞朽嗅锈秀袖绣墟戌需虚嘘须徐许蓄酗叙旭序畜恤絮婿绪续轩喧宣悬旋玄"],["d140","袬袮袯袰袲",4,"袸袹袺袻袽袾袿裀裃裄裇裈裊裋裌裍裏裐裑裓裖裗裚",4,"裠裡裦裧裩",6,"裲裵裶裷裺裻製裿褀褁褃",5],["d180","褉褋",4,"褑褔",4,"褜",4,"褢褣褤褦褧褨褩褬褭褮褯褱褲褳褵褷选癣眩绚靴薛学穴雪血勋熏循旬询寻驯巡殉汛训讯逊迅压押鸦鸭呀丫芽牙蚜崖衙涯雅哑亚讶焉咽阉烟淹盐严研蜒岩延言颜阎炎沿奄掩眼衍演艳堰燕厌砚雁唁彦焰宴谚验殃央鸯秧杨扬佯疡羊洋阳氧仰痒养样漾邀腰妖瑶"],["d240","褸",8,"襂襃襅",24,"襠",5,"襧",19,"襼"],["d280","襽襾覀覂覄覅覇",26,"摇尧遥窑谣姚咬舀药要耀椰噎耶爷野冶也页掖业叶曳腋夜液一壹医揖铱依伊衣颐夷遗移仪胰疑沂宜姨彝椅蚁倚已乙矣以艺抑易邑屹亿役臆逸肄疫亦裔意毅忆义益溢诣议谊译异翼翌绎茵荫因殷音阴姻吟银淫寅饮尹引隐"],["d340","覢",30,"觃觍觓觔觕觗觘觙觛觝觟觠觡觢觤觧觨觩觪觬觭觮觰觱觲觴",6],["d380","觻",4,"訁",5,"計",21,"印英樱婴鹰应缨莹萤营荧蝇迎赢盈影颖硬映哟拥佣臃痈庸雍踊蛹咏泳涌永恿勇用幽优悠忧尤由邮铀犹油游酉有友右佑釉诱又幼迂淤于盂榆虞愚舆余俞逾鱼愉渝渔隅予娱雨与屿禹宇语羽玉域芋郁吁遇喻峪御愈欲狱育誉"],["d440","訞",31,"訿",8,"詉",21],["d480","詟",25,"詺",6,"浴寓裕预豫驭鸳渊冤元垣袁原援辕园员圆猿源缘远苑愿怨院曰约越跃钥岳粤月悦阅耘云郧匀陨允运蕴酝晕韵孕匝砸杂栽哉灾宰载再在咱攒暂赞赃脏葬遭糟凿藻枣早澡蚤躁噪造皂灶燥责择则泽贼怎增憎曾赠扎喳渣札轧"],["d540","誁",7,"誋",7,"誔",46],["d580","諃",32,"铡闸眨栅榨咋乍炸诈摘斋宅窄债寨瞻毡詹粘沾盏斩辗崭展蘸栈占战站湛绽樟章彰漳张掌涨杖丈帐账仗胀瘴障招昭找沼赵照罩兆肇召遮折哲蛰辙者锗蔗这浙珍斟真甄砧臻贞针侦枕疹诊震振镇阵蒸挣睁征狰争怔整拯正政"],["d640","諤",34,"謈",27],["d680","謤謥謧",30,"帧症郑证芝枝支吱蜘知肢脂汁之织职直植殖执值侄址指止趾只旨纸志挚掷至致置帜峙制智秩稚质炙痔滞治窒中盅忠钟衷终种肿重仲众舟周州洲诌粥轴肘帚咒皱宙昼骤珠株蛛朱猪诸诛逐竹烛煮拄瞩嘱主著柱助蛀贮铸筑"],["d740","譆",31,"譧",4,"譭",25],["d780","讇",24,"讬讱讻诇诐诪谉谞住注祝驻抓爪拽专砖转撰赚篆桩庄装妆撞壮状椎锥追赘坠缀谆准捉拙卓桌琢茁酌啄着灼浊兹咨资姿滋淄孜紫仔籽滓子自渍字鬃棕踪宗综总纵邹走奏揍租足卒族祖诅阻组钻纂嘴醉最罪尊遵昨左佐柞做作坐座"],["d840","谸",8,"豂豃豄豅豈豊豋豍",7,"豖豗豘豙豛",5,"豣",6,"豬",6,"豴豵豶豷豻",6,"貃貄貆貇"],["d880","貈貋貍",6,"貕貖貗貙",20,"亍丌兀丐廿卅丕亘丞鬲孬噩丨禺丿匕乇夭爻卮氐囟胤馗毓睾鼗丶亟鼐乜乩亓芈孛啬嘏仄厍厝厣厥厮靥赝匚叵匦匮匾赜卦卣刂刈刎刭刳刿剀剌剞剡剜蒯剽劂劁劐劓冂罔亻仃仉仂仨仡仫仞伛仳伢佤仵伥伧伉伫佞佧攸佚佝"],["d940","貮",62],["d980","賭",32,"佟佗伲伽佶佴侑侉侃侏佾佻侪佼侬侔俦俨俪俅俚俣俜俑俟俸倩偌俳倬倏倮倭俾倜倌倥倨偾偃偕偈偎偬偻傥傧傩傺僖儆僭僬僦僮儇儋仝氽佘佥俎龠汆籴兮巽黉馘冁夔勹匍訇匐凫夙兕亠兖亳衮袤亵脔裒禀嬴蠃羸冫冱冽冼"],["da40","贎",14,"贠赑赒赗赟赥赨赩赪赬赮赯赱赲赸",8,"趂趃趆趇趈趉趌",4,"趒趓趕",9,"趠趡"],["da80","趢趤",12,"趲趶趷趹趻趽跀跁跂跅跇跈跉跊跍跐跒跓跔凇冖冢冥讠讦讧讪讴讵讷诂诃诋诏诎诒诓诔诖诘诙诜诟诠诤诨诩诮诰诳诶诹诼诿谀谂谄谇谌谏谑谒谔谕谖谙谛谘谝谟谠谡谥谧谪谫谮谯谲谳谵谶卩卺阝阢阡阱阪阽阼陂陉陔陟陧陬陲陴隈隍隗隰邗邛邝邙邬邡邴邳邶邺"],["db40","跕跘跙跜跠跡跢跥跦跧跩跭跮跰跱跲跴跶跼跾",6,"踆踇踈踋踍踎踐踑踒踓踕",7,"踠踡踤",4,"踫踭踰踲踳踴踶踷踸踻踼踾"],["db80","踿蹃蹅蹆蹌",4,"蹓",5,"蹚",11,"蹧蹨蹪蹫蹮蹱邸邰郏郅邾郐郄郇郓郦郢郜郗郛郫郯郾鄄鄢鄞鄣鄱鄯鄹酃酆刍奂劢劬劭劾哿勐勖勰叟燮矍廴凵凼鬯厶弁畚巯坌垩垡塾墼壅壑圩圬圪圳圹圮圯坜圻坂坩垅坫垆坼坻坨坭坶坳垭垤垌垲埏垧垴垓垠埕埘埚埙埒垸埴埯埸埤埝"],["dc40","蹳蹵蹷",4,"蹽蹾躀躂躃躄躆躈",6,"躑躒躓躕",6,"躝躟",11,"躭躮躰躱躳",6,"躻",7],["dc80","軃",10,"軏",21,"堋堍埽埭堀堞堙塄堠塥塬墁墉墚墀馨鼙懿艹艽艿芏芊芨芄芎芑芗芙芫芸芾芰苈苊苣芘芷芮苋苌苁芩芴芡芪芟苄苎芤苡茉苷苤茏茇苜苴苒苘茌苻苓茑茚茆茔茕苠苕茜荑荛荜茈莒茼茴茱莛荞茯荏荇荃荟荀茗荠茭茺茳荦荥"],["dd40","軥",62],["dd80","輤",32,"荨茛荩荬荪荭荮莰荸莳莴莠莪莓莜莅荼莶莩荽莸荻莘莞莨莺莼菁萁菥菘堇萘萋菝菽菖萜萸萑萆菔菟萏萃菸菹菪菅菀萦菰菡葜葑葚葙葳蒇蒈葺蒉葸萼葆葩葶蒌蒎萱葭蓁蓍蓐蓦蒽蓓蓊蒿蒺蓠蒡蒹蒴蒗蓥蓣蔌甍蔸蓰蔹蔟蔺"],["de40","轅",32,"轪辀辌辒辝辠辡辢辤辥辦辧辪辬辭辮辯農辳辴辵辷辸辺辻込辿迀迃迆"],["de80","迉",4,"迏迒迖迗迚迠迡迣迧迬迯迱迲迴迵迶迺迻迼迾迿逇逈逌逎逓逕逘蕖蔻蓿蓼蕙蕈蕨蕤蕞蕺瞢蕃蕲蕻薤薨薇薏蕹薮薜薅薹薷薰藓藁藜藿蘧蘅蘩蘖蘼廾弈夼奁耷奕奚奘匏尢尥尬尴扌扪抟抻拊拚拗拮挢拶挹捋捃掭揶捱捺掎掴捭掬掊捩掮掼揲揸揠揿揄揞揎摒揆掾摅摁搋搛搠搌搦搡摞撄摭撖"],["df40","這逜連逤逥逧",5,"逰",4,"逷逹逺逽逿遀遃遅遆遈",4,"過達違遖遙遚遜",5,"遤遦遧適遪遫遬遯",4,"遶",6,"遾邁"],["df80","還邅邆邇邉邊邌",4,"邒邔邖邘邚邜邞邟邠邤邥邧邨邩邫邭邲邷邼邽邿郀摺撷撸撙撺擀擐擗擤擢攉攥攮弋忒甙弑卟叱叽叩叨叻吒吖吆呋呒呓呔呖呃吡呗呙吣吲咂咔呷呱呤咚咛咄呶呦咝哐咭哂咴哒咧咦哓哔呲咣哕咻咿哌哙哚哜咩咪咤哝哏哞唛哧唠哽唔哳唢唣唏唑唧唪啧喏喵啉啭啁啕唿啐唼"],["e040","郂郃郆郈郉郋郌郍郒郔郕郖郘郙郚郞郟郠郣郤郥郩郪郬郮郰郱郲郳郵郶郷郹郺郻郼郿鄀鄁鄃鄅",19,"鄚鄛鄜"],["e080","鄝鄟鄠鄡鄤",10,"鄰鄲",6,"鄺",8,"酄唷啖啵啶啷唳唰啜喋嗒喃喱喹喈喁喟啾嗖喑啻嗟喽喾喔喙嗪嗷嗉嘟嗑嗫嗬嗔嗦嗝嗄嗯嗥嗲嗳嗌嗍嗨嗵嗤辔嘞嘈嘌嘁嘤嘣嗾嘀嘧嘭噘嘹噗嘬噍噢噙噜噌噔嚆噤噱噫噻噼嚅嚓嚯囔囗囝囡囵囫囹囿圄圊圉圜帏帙帔帑帱帻帼"],["e140","酅酇酈酑酓酔酕酖酘酙酛酜酟酠酦酧酨酫酭酳酺酻酼醀",4,"醆醈醊醎醏醓",6,"醜",5,"醤",5,"醫醬醰醱醲醳醶醷醸醹醻"],["e180","醼",10,"釈釋釐釒",9,"針",8,"帷幄幔幛幞幡岌屺岍岐岖岈岘岙岑岚岜岵岢岽岬岫岱岣峁岷峄峒峤峋峥崂崃崧崦崮崤崞崆崛嵘崾崴崽嵬嵛嵯嵝嵫嵋嵊嵩嵴嶂嶙嶝豳嶷巅彳彷徂徇徉後徕徙徜徨徭徵徼衢彡犭犰犴犷犸狃狁狎狍狒狨狯狩狲狴狷猁狳猃狺"],["e240","釦",62],["e280","鈥",32,"狻猗猓猡猊猞猝猕猢猹猥猬猸猱獐獍獗獠獬獯獾舛夥飧夤夂饣饧",5,"饴饷饽馀馄馇馊馍馐馑馓馔馕庀庑庋庖庥庠庹庵庾庳赓廒廑廛廨廪膺忄忉忖忏怃忮怄忡忤忾怅怆忪忭忸怙怵怦怛怏怍怩怫怊怿怡恸恹恻恺恂"],["e340","鉆",45,"鉵",16],["e380","銆",7,"銏",24,"恪恽悖悚悭悝悃悒悌悛惬悻悱惝惘惆惚悴愠愦愕愣惴愀愎愫慊慵憬憔憧憷懔懵忝隳闩闫闱闳闵闶闼闾阃阄阆阈阊阋阌阍阏阒阕阖阗阙阚丬爿戕氵汔汜汊沣沅沐沔沌汨汩汴汶沆沩泐泔沭泷泸泱泗沲泠泖泺泫泮沱泓泯泾"],["e440","銨",5,"銯",24,"鋉",31],["e480","鋩",32,"洹洧洌浃浈洇洄洙洎洫浍洮洵洚浏浒浔洳涑浯涞涠浞涓涔浜浠浼浣渚淇淅淞渎涿淠渑淦淝淙渖涫渌涮渫湮湎湫溲湟溆湓湔渲渥湄滟溱溘滠漭滢溥溧溽溻溷滗溴滏溏滂溟潢潆潇漤漕滹漯漶潋潴漪漉漩澉澍澌潸潲潼潺濑"],["e540","錊",51,"錿",10],["e580","鍊",31,"鍫濉澧澹澶濂濡濮濞濠濯瀚瀣瀛瀹瀵灏灞宀宄宕宓宥宸甯骞搴寤寮褰寰蹇謇辶迓迕迥迮迤迩迦迳迨逅逄逋逦逑逍逖逡逵逶逭逯遄遑遒遐遨遘遢遛暹遴遽邂邈邃邋彐彗彖彘尻咫屐屙孱屣屦羼弪弩弭艴弼鬻屮妁妃妍妩妪妣"],["e640","鍬",34,"鎐",27],["e680","鎬",29,"鏋鏌鏍妗姊妫妞妤姒妲妯姗妾娅娆姝娈姣姘姹娌娉娲娴娑娣娓婀婧婊婕娼婢婵胬媪媛婷婺媾嫫媲嫒嫔媸嫠嫣嫱嫖嫦嫘嫜嬉嬗嬖嬲嬷孀尕尜孚孥孳孑孓孢驵驷驸驺驿驽骀骁骅骈骊骐骒骓骖骘骛骜骝骟骠骢骣骥骧纟纡纣纥纨纩"],["e740","鏎",7,"鏗",54],["e780","鐎",32,"纭纰纾绀绁绂绉绋绌绐绔绗绛绠绡绨绫绮绯绱绲缍绶绺绻绾缁缂缃缇缈缋缌缏缑缒缗缙缜缛缟缡",6,"缪缫缬缭缯",4,"缵幺畿巛甾邕玎玑玮玢玟珏珂珑玷玳珀珉珈珥珙顼琊珩珧珞玺珲琏琪瑛琦琥琨琰琮琬"],["e840","鐯",14,"鐿",43,"鑬鑭鑮鑯"],["e880","鑰",20,"钑钖钘铇铏铓铔铚铦铻锜锠琛琚瑁瑜瑗瑕瑙瑷瑭瑾璜璎璀璁璇璋璞璨璩璐璧瓒璺韪韫韬杌杓杞杈杩枥枇杪杳枘枧杵枨枞枭枋杷杼柰栉柘栊柩枰栌柙枵柚枳柝栀柃枸柢栎柁柽栲栳桠桡桎桢桄桤梃栝桕桦桁桧桀栾桊桉栩梵梏桴桷梓桫棂楮棼椟椠棹"],["e940","锧锳锽镃镈镋镕镚镠镮镴镵長",7,"門",42],["e980","閫",32,"椤棰椋椁楗棣椐楱椹楠楂楝榄楫榀榘楸椴槌榇榈槎榉楦楣楹榛榧榻榫榭槔榱槁槊槟榕槠榍槿樯槭樗樘橥槲橄樾檠橐橛樵檎橹樽樨橘橼檑檐檩檗檫猷獒殁殂殇殄殒殓殍殚殛殡殪轫轭轱轲轳轵轶轸轷轹轺轼轾辁辂辄辇辋"],["ea40","闌",27,"闬闿阇阓阘阛阞阠阣",6,"阫阬阭阯阰阷阸阹阺阾陁陃陊陎陏陑陒陓陖陗"],["ea80","陘陙陚陜陝陞陠陣陥陦陫陭",4,"陳陸",12,"隇隉隊辍辎辏辘辚軎戋戗戛戟戢戡戥戤戬臧瓯瓴瓿甏甑甓攴旮旯旰昊昙杲昃昕昀炅曷昝昴昱昶昵耆晟晔晁晏晖晡晗晷暄暌暧暝暾曛曜曦曩贲贳贶贻贽赀赅赆赈赉赇赍赕赙觇觊觋觌觎觏觐觑牮犟牝牦牯牾牿犄犋犍犏犒挈挲掰"],["eb40","隌階隑隒隓隕隖隚際隝",9,"隨",7,"隱隲隴隵隷隸隺隻隿雂雃雈雊雋雐雑雓雔雖",9,"雡",6,"雫"],["eb80","雬雭雮雰雱雲雴雵雸雺電雼雽雿霂霃霅霊霋霌霐霑霒霔霕霗",4,"霝霟霠搿擘耄毪毳毽毵毹氅氇氆氍氕氘氙氚氡氩氤氪氲攵敕敫牍牒牖爰虢刖肟肜肓肼朊肽肱肫肭肴肷胧胨胩胪胛胂胄胙胍胗朐胝胫胱胴胭脍脎胲胼朕脒豚脶脞脬脘脲腈腌腓腴腙腚腱腠腩腼腽腭腧塍媵膈膂膑滕膣膪臌朦臊膻"],["ec40","霡",8,"霫霬霮霯霱霳",4,"霺霻霼霽霿",18,"靔靕靗靘靚靜靝靟靣靤靦靧靨靪",7],["ec80","靲靵靷",4,"靽",7,"鞆",4,"鞌鞎鞏鞐鞓鞕鞖鞗鞙",4,"臁膦欤欷欹歃歆歙飑飒飓飕飙飚殳彀毂觳斐齑斓於旆旄旃旌旎旒旖炀炜炖炝炻烀炷炫炱烨烊焐焓焖焯焱煳煜煨煅煲煊煸煺熘熳熵熨熠燠燔燧燹爝爨灬焘煦熹戾戽扃扈扉礻祀祆祉祛祜祓祚祢祗祠祯祧祺禅禊禚禧禳忑忐"],["ed40","鞞鞟鞡鞢鞤",6,"鞬鞮鞰鞱鞳鞵",46],["ed80","韤韥韨韮",4,"韴韷",23,"怼恝恚恧恁恙恣悫愆愍慝憩憝懋懑戆肀聿沓泶淼矶矸砀砉砗砘砑斫砭砜砝砹砺砻砟砼砥砬砣砩硎硭硖硗砦硐硇硌硪碛碓碚碇碜碡碣碲碹碥磔磙磉磬磲礅磴礓礤礞礴龛黹黻黼盱眄眍盹眇眈眚眢眙眭眦眵眸睐睑睇睃睚睨"],["ee40","頏",62],["ee80","顎",32,"睢睥睿瞍睽瞀瞌瞑瞟瞠瞰瞵瞽町畀畎畋畈畛畲畹疃罘罡罟詈罨罴罱罹羁罾盍盥蠲钅钆钇钋钊钌钍钏钐钔钗钕钚钛钜钣钤钫钪钭钬钯钰钲钴钶",4,"钼钽钿铄铈",6,"铐铑铒铕铖铗铙铘铛铞铟铠铢铤铥铧铨铪"],["ef40","顯",5,"颋颎颒颕颙颣風",37,"飏飐飔飖飗飛飜飝飠",4],["ef80","飥飦飩",30,"铩铫铮铯铳铴铵铷铹铼铽铿锃锂锆锇锉锊锍锎锏锒",4,"锘锛锝锞锟锢锪锫锩锬锱锲锴锶锷锸锼锾锿镂锵镄镅镆镉镌镎镏镒镓镔镖镗镘镙镛镞镟镝镡镢镤",8,"镯镱镲镳锺矧矬雉秕秭秣秫稆嵇稃稂稞稔"],["f040","餈",4,"餎餏餑",28,"餯",26],["f080","饊",9,"饖",12,"饤饦饳饸饹饻饾馂馃馉稹稷穑黏馥穰皈皎皓皙皤瓞瓠甬鸠鸢鸨",4,"鸲鸱鸶鸸鸷鸹鸺鸾鹁鹂鹄鹆鹇鹈鹉鹋鹌鹎鹑鹕鹗鹚鹛鹜鹞鹣鹦",6,"鹱鹭鹳疒疔疖疠疝疬疣疳疴疸痄疱疰痃痂痖痍痣痨痦痤痫痧瘃痱痼痿瘐瘀瘅瘌瘗瘊瘥瘘瘕瘙"],["f140","馌馎馚",10,"馦馧馩",47],["f180","駙",32,"瘛瘼瘢瘠癀瘭瘰瘿瘵癃瘾瘳癍癞癔癜癖癫癯翊竦穸穹窀窆窈窕窦窠窬窨窭窳衤衩衲衽衿袂袢裆袷袼裉裢裎裣裥裱褚裼裨裾裰褡褙褓褛褊褴褫褶襁襦襻疋胥皲皴矜耒耔耖耜耠耢耥耦耧耩耨耱耋耵聃聆聍聒聩聱覃顸颀颃"],["f240","駺",62],["f280","騹",32,"颉颌颍颏颔颚颛颞颟颡颢颥颦虍虔虬虮虿虺虼虻蚨蚍蚋蚬蚝蚧蚣蚪蚓蚩蚶蛄蚵蛎蚰蚺蚱蚯蛉蛏蚴蛩蛱蛲蛭蛳蛐蜓蛞蛴蛟蛘蛑蜃蜇蛸蜈蜊蜍蜉蜣蜻蜞蜥蜮蜚蜾蝈蜴蜱蜩蜷蜿螂蜢蝽蝾蝻蝠蝰蝌蝮螋蝓蝣蝼蝤蝙蝥螓螯螨蟒"],["f340","驚",17,"驲骃骉骍骎骔骕骙骦骩",6,"骲骳骴骵骹骻骽骾骿髃髄髆",4,"髍髎髏髐髒體髕髖髗髙髚髛髜"],["f380","髝髞髠髢髣髤髥髧髨髩髪髬髮髰",8,"髺髼",6,"鬄鬅鬆蟆螈螅螭螗螃螫蟥螬螵螳蟋蟓螽蟑蟀蟊蟛蟪蟠蟮蠖蠓蟾蠊蠛蠡蠹蠼缶罂罄罅舐竺竽笈笃笄笕笊笫笏筇笸笪笙笮笱笠笥笤笳笾笞筘筚筅筵筌筝筠筮筻筢筲筱箐箦箧箸箬箝箨箅箪箜箢箫箴篑篁篌篝篚篥篦篪簌篾篼簏簖簋"],["f440","鬇鬉",5,"鬐鬑鬒鬔",10,"鬠鬡鬢鬤",10,"鬰鬱鬳",7,"鬽鬾鬿魀魆魊魋魌魎魐魒魓魕",5],["f480","魛",32,"簟簪簦簸籁籀臾舁舂舄臬衄舡舢舣舭舯舨舫舸舻舳舴舾艄艉艋艏艚艟艨衾袅袈裘裟襞羝羟羧羯羰羲籼敉粑粝粜粞粢粲粼粽糁糇糌糍糈糅糗糨艮暨羿翎翕翥翡翦翩翮翳糸絷綦綮繇纛麸麴赳趄趔趑趱赧赭豇豉酊酐酎酏酤"],["f540","魼",62],["f580","鮻",32,"酢酡酰酩酯酽酾酲酴酹醌醅醐醍醑醢醣醪醭醮醯醵醴醺豕鹾趸跫踅蹙蹩趵趿趼趺跄跖跗跚跞跎跏跛跆跬跷跸跣跹跻跤踉跽踔踝踟踬踮踣踯踺蹀踹踵踽踱蹉蹁蹂蹑蹒蹊蹰蹶蹼蹯蹴躅躏躔躐躜躞豸貂貊貅貘貔斛觖觞觚觜"],["f640","鯜",62],["f680","鰛",32,"觥觫觯訾謦靓雩雳雯霆霁霈霏霎霪霭霰霾龀龃龅",5,"龌黾鼋鼍隹隼隽雎雒瞿雠銎銮鋈錾鍪鏊鎏鐾鑫鱿鲂鲅鲆鲇鲈稣鲋鲎鲐鲑鲒鲔鲕鲚鲛鲞",5,"鲥",4,"鲫鲭鲮鲰",7,"鲺鲻鲼鲽鳄鳅鳆鳇鳊鳋"],["f740","鰼",62],["f780","鱻鱽鱾鲀鲃鲄鲉鲊鲌鲏鲓鲖鲗鲘鲙鲝鲪鲬鲯鲹鲾",4,"鳈鳉鳑鳒鳚鳛鳠鳡鳌",4,"鳓鳔鳕鳗鳘鳙鳜鳝鳟鳢靼鞅鞑鞒鞔鞯鞫鞣鞲鞴骱骰骷鹘骶骺骼髁髀髅髂髋髌髑魅魃魇魉魈魍魑飨餍餮饕饔髟髡髦髯髫髻髭髹鬈鬏鬓鬟鬣麽麾縻麂麇麈麋麒鏖麝麟黛黜黝黠黟黢黩黧黥黪黯鼢鼬鼯鼹鼷鼽鼾齄"],["f840","鳣",62],["f880","鴢",32],["f940","鵃",62],["f980","鶂",32],["fa40","鶣",62],["fa80","鷢",32],["fb40","鸃",27,"鸤鸧鸮鸰鸴鸻鸼鹀鹍鹐鹒鹓鹔鹖鹙鹝鹟鹠鹡鹢鹥鹮鹯鹲鹴",9,"麀"],["fb80","麁麃麄麅麆麉麊麌",5,"麔",8,"麞麠",5,"麧麨麩麪"],["fc40","麫",8,"麵麶麷麹麺麼麿",4,"黅黆黇黈黊黋黌黐黒黓黕黖黗黙黚點黡黣黤黦黨黫黬黭黮黰",8,"黺黽黿",6],["fc80","鼆",4,"鼌鼏鼑鼒鼔鼕鼖鼘鼚",5,"鼡鼣",8,"鼭鼮鼰鼱"],["fd40","鼲",4,"鼸鼺鼼鼿",4,"齅",10,"齒",38],["fd80","齹",5,"龁龂龍",11,"龜龝龞龡",4,"郎凉秊裏隣"],["fe40","兀嗀﨎﨏﨑﨓﨔礼﨟蘒﨡﨣﨤﨧﨨﨩"]]' + ); + }, + 39192: (e) => { + 'use strict'; + e.exports = JSON.parse( + '[["0","\\u0000",127],["8141","갂갃갅갆갋",4,"갘갞갟갡갢갣갥",6,"갮갲갳갴"],["8161","갵갶갷갺갻갽갾갿걁",9,"걌걎",5,"걕"],["8181","걖걗걙걚걛걝",18,"걲걳걵걶걹걻",4,"겂겇겈겍겎겏겑겒겓겕",6,"겞겢",5,"겫겭겮겱",6,"겺겾겿곀곂곃곅곆곇곉곊곋곍",7,"곖곘",7,"곢곣곥곦곩곫곭곮곲곴곷",4,"곾곿괁괂괃괅괇",4,"괎괐괒괓"],["8241","괔괕괖괗괙괚괛괝괞괟괡",7,"괪괫괮",5],["8261","괶괷괹괺괻괽",6,"굆굈굊",5,"굑굒굓굕굖굗"],["8281","굙",7,"굢굤",7,"굮굯굱굲굷굸굹굺굾궀궃",4,"궊궋궍궎궏궑",10,"궞",5,"궥",17,"궸",7,"귂귃귅귆귇귉",6,"귒귔",7,"귝귞귟귡귢귣귥",18],["8341","귺귻귽귾긂",5,"긊긌긎",5,"긕",7],["8361","긝",18,"긲긳긵긶긹긻긼"],["8381","긽긾긿깂깄깇깈깉깋깏깑깒깓깕깗",4,"깞깢깣깤깦깧깪깫깭깮깯깱",6,"깺깾",5,"꺆",5,"꺍",46,"꺿껁껂껃껅",6,"껎껒",5,"껚껛껝",8],["8441","껦껧껩껪껬껮",5,"껵껶껷껹껺껻껽",8],["8461","꼆꼉꼊꼋꼌꼎꼏꼑",18],["8481","꼤",7,"꼮꼯꼱꼳꼵",6,"꼾꽀꽄꽅꽆꽇꽊",5,"꽑",10,"꽞",5,"꽦",18,"꽺",5,"꾁꾂꾃꾅꾆꾇꾉",6,"꾒꾓꾔꾖",5,"꾝",26,"꾺꾻꾽꾾"],["8541","꾿꿁",5,"꿊꿌꿏",4,"꿕",6,"꿝",4],["8561","꿢",5,"꿪",5,"꿲꿳꿵꿶꿷꿹",6,"뀂뀃"],["8581","뀅",6,"뀍뀎뀏뀑뀒뀓뀕",6,"뀞",9,"뀩",26,"끆끇끉끋끍끏끐끑끒끖끘끚끛끜끞",29,"끾끿낁낂낃낅",6,"낎낐낒",5,"낛낝낞낣낤"],["8641","낥낦낧낪낰낲낶낷낹낺낻낽",6,"냆냊",5,"냒"],["8661","냓냕냖냗냙",6,"냡냢냣냤냦",10],["8681","냱",22,"넊넍넎넏넑넔넕넖넗넚넞",4,"넦넧넩넪넫넭",6,"넶넺",5,"녂녃녅녆녇녉",6,"녒녓녖녗녙녚녛녝녞녟녡",22,"녺녻녽녾녿놁놃",4,"놊놌놎놏놐놑놕놖놗놙놚놛놝"],["8741","놞",9,"놩",15],["8761","놹",18,"뇍뇎뇏뇑뇒뇓뇕"],["8781","뇖",5,"뇞뇠",7,"뇪뇫뇭뇮뇯뇱",7,"뇺뇼뇾",5,"눆눇눉눊눍",6,"눖눘눚",5,"눡",18,"눵",6,"눽",26,"뉙뉚뉛뉝뉞뉟뉡",6,"뉪",4],["8841","뉯",4,"뉶",5,"뉽",6,"늆늇늈늊",4],["8861","늏늒늓늕늖늗늛",4,"늢늤늧늨늩늫늭늮늯늱늲늳늵늶늷"],["8881","늸",15,"닊닋닍닎닏닑닓",4,"닚닜닞닟닠닡닣닧닩닪닰닱닲닶닼닽닾댂댃댅댆댇댉",6,"댒댖",5,"댝",54,"덗덙덚덝덠덡덢덣"],["8941","덦덨덪덬덭덯덲덳덵덶덷덹",6,"뎂뎆",5,"뎍"],["8961","뎎뎏뎑뎒뎓뎕",10,"뎢",5,"뎩뎪뎫뎭"],["8981","뎮",21,"돆돇돉돊돍돏돑돒돓돖돘돚돜돞돟돡돢돣돥돦돧돩",18,"돽",18,"됑",6,"됙됚됛됝됞됟됡",6,"됪됬",7,"됵",15],["8a41","둅",10,"둒둓둕둖둗둙",6,"둢둤둦"],["8a61","둧",4,"둭",18,"뒁뒂"],["8a81","뒃",4,"뒉",19,"뒞",5,"뒥뒦뒧뒩뒪뒫뒭",7,"뒶뒸뒺",5,"듁듂듃듅듆듇듉",6,"듑듒듓듔듖",5,"듞듟듡듢듥듧",4,"듮듰듲",5,"듹",26,"딖딗딙딚딝"],["8b41","딞",5,"딦딫",4,"딲딳딵딶딷딹",6,"땂땆"],["8b61","땇땈땉땊땎땏땑땒땓땕",6,"땞땢",8],["8b81","땫",52,"떢떣떥떦떧떩떬떭떮떯떲떶",4,"떾떿뗁뗂뗃뗅",6,"뗎뗒",5,"뗙",18,"뗭",18],["8c41","똀",15,"똒똓똕똖똗똙",4],["8c61","똞",6,"똦",5,"똭",6,"똵",5],["8c81","똻",12,"뙉",26,"뙥뙦뙧뙩",50,"뚞뚟뚡뚢뚣뚥",5,"뚭뚮뚯뚰뚲",16],["8d41","뛃",16,"뛕",8],["8d61","뛞",17,"뛱뛲뛳뛵뛶뛷뛹뛺"],["8d81","뛻",4,"뜂뜃뜄뜆",33,"뜪뜫뜭뜮뜱",6,"뜺뜼",7,"띅띆띇띉띊띋띍",6,"띖",9,"띡띢띣띥띦띧띩",6,"띲띴띶",5,"띾띿랁랂랃랅",6,"랎랓랔랕랚랛랝랞"],["8e41","랟랡",6,"랪랮",5,"랶랷랹",8],["8e61","럂",4,"럈럊",19],["8e81","럞",13,"럮럯럱럲럳럵",6,"럾렂",4,"렊렋렍렎렏렑",6,"렚렜렞",5,"렦렧렩렪렫렭",6,"렶렺",5,"롁롂롃롅",11,"롒롔",7,"롞롟롡롢롣롥",6,"롮롰롲",5,"롹롺롻롽",7],["8f41","뢅",7,"뢎",17],["8f61","뢠",7,"뢩",6,"뢱뢲뢳뢵뢶뢷뢹",4],["8f81","뢾뢿룂룄룆",5,"룍룎룏룑룒룓룕",7,"룞룠룢",5,"룪룫룭룮룯룱",6,"룺룼룾",5,"뤅",18,"뤙",6,"뤡",26,"뤾뤿륁륂륃륅",6,"륍륎륐륒",5],["9041","륚륛륝륞륟륡",6,"륪륬륮",5,"륶륷륹륺륻륽"],["9061","륾",5,"릆릈릋릌릏",15],["9081","릟",12,"릮릯릱릲릳릵",6,"릾맀맂",5,"맊맋맍맓",4,"맚맜맟맠맢맦맧맩맪맫맭",6,"맶맻",4,"먂",5,"먉",11,"먖",33,"먺먻먽먾먿멁멃멄멅멆"],["9141","멇멊멌멏멐멑멒멖멗멙멚멛멝",6,"멦멪",5],["9161","멲멳멵멶멷멹",9,"몆몈몉몊몋몍",5],["9181","몓",20,"몪몭몮몯몱몳",4,"몺몼몾",5,"뫅뫆뫇뫉",14,"뫚",33,"뫽뫾뫿묁묂묃묅",7,"묎묐묒",5,"묙묚묛묝묞묟묡",6],["9241","묨묪묬",7,"묷묹묺묿",4,"뭆뭈뭊뭋뭌뭎뭑뭒"],["9261","뭓뭕뭖뭗뭙",7,"뭢뭤",7,"뭭",4],["9281","뭲",21,"뮉뮊뮋뮍뮎뮏뮑",18,"뮥뮦뮧뮩뮪뮫뮭",6,"뮵뮶뮸",7,"믁믂믃믅믆믇믉",6,"믑믒믔",35,"믺믻믽믾밁"],["9341","밃",4,"밊밎밐밒밓밙밚밠밡밢밣밦밨밪밫밬밮밯밲밳밵"],["9361","밶밷밹",6,"뱂뱆뱇뱈뱊뱋뱎뱏뱑",8],["9381","뱚뱛뱜뱞",37,"벆벇벉벊벍벏",4,"벖벘벛",4,"벢벣벥벦벩",6,"벲벶",5,"벾벿볁볂볃볅",7,"볎볒볓볔볖볗볙볚볛볝",22,"볷볹볺볻볽"],["9441","볾",5,"봆봈봊",5,"봑봒봓봕",8],["9461","봞",5,"봥",6,"봭",12],["9481","봺",5,"뵁",6,"뵊뵋뵍뵎뵏뵑",6,"뵚",9,"뵥뵦뵧뵩",22,"붂붃붅붆붋",4,"붒붔붖붗붘붛붝",6,"붥",10,"붱",6,"붹",24],["9541","뷒뷓뷖뷗뷙뷚뷛뷝",11,"뷪",5,"뷱"],["9561","뷲뷳뷵뷶뷷뷹",6,"븁븂븄븆",5,"븎븏븑븒븓"],["9581","븕",6,"븞븠",35,"빆빇빉빊빋빍빏",4,"빖빘빜빝빞빟빢빣빥빦빧빩빫",4,"빲빶",4,"빾빿뺁뺂뺃뺅",6,"뺎뺒",5,"뺚",13,"뺩",14],["9641","뺸",23,"뻒뻓"],["9661","뻕뻖뻙",6,"뻡뻢뻦",5,"뻭",8],["9681","뻶",10,"뼂",5,"뼊",13,"뼚뼞",33,"뽂뽃뽅뽆뽇뽉",6,"뽒뽓뽔뽖",44],["9741","뾃",16,"뾕",8],["9761","뾞",17,"뾱",7],["9781","뾹",11,"뿆",5,"뿎뿏뿑뿒뿓뿕",6,"뿝뿞뿠뿢",89,"쀽쀾쀿"],["9841","쁀",16,"쁒",5,"쁙쁚쁛"],["9861","쁝쁞쁟쁡",6,"쁪",15],["9881","쁺",21,"삒삓삕삖삗삙",6,"삢삤삦",5,"삮삱삲삷",4,"삾샂샃샄샆샇샊샋샍샎샏샑",6,"샚샞",5,"샦샧샩샪샫샭",6,"샶샸샺",5,"섁섂섃섅섆섇섉",6,"섑섒섓섔섖",5,"섡섢섥섨섩섪섫섮"],["9941","섲섳섴섵섷섺섻섽섾섿셁",6,"셊셎",5,"셖셗"],["9961","셙셚셛셝",6,"셦셪",5,"셱셲셳셵셶셷셹셺셻"],["9981","셼",8,"솆",5,"솏솑솒솓솕솗",4,"솞솠솢솣솤솦솧솪솫솭솮솯솱",11,"솾",5,"쇅쇆쇇쇉쇊쇋쇍",6,"쇕쇖쇙",6,"쇡쇢쇣쇥쇦쇧쇩",6,"쇲쇴",7,"쇾쇿숁숂숃숅",6,"숎숐숒",5,"숚숛숝숞숡숢숣"],["9a41","숤숥숦숧숪숬숮숰숳숵",16],["9a61","쉆쉇쉉",6,"쉒쉓쉕쉖쉗쉙",6,"쉡쉢쉣쉤쉦"],["9a81","쉧",4,"쉮쉯쉱쉲쉳쉵",6,"쉾슀슂",5,"슊",5,"슑",6,"슙슚슜슞",5,"슦슧슩슪슫슮",5,"슶슸슺",33,"싞싟싡싢싥",5,"싮싰싲싳싴싵싷싺싽싾싿쌁",6,"쌊쌋쌎쌏"],["9b41","쌐쌑쌒쌖쌗쌙쌚쌛쌝",6,"쌦쌧쌪",8],["9b61","쌳",17,"썆",7],["9b81","썎",25,"썪썫썭썮썯썱썳",4,"썺썻썾",5,"쎅쎆쎇쎉쎊쎋쎍",50,"쏁",22,"쏚"],["9c41","쏛쏝쏞쏡쏣",4,"쏪쏫쏬쏮",5,"쏶쏷쏹",5],["9c61","쏿",8,"쐉",6,"쐑",9],["9c81","쐛",8,"쐥",6,"쐭쐮쐯쐱쐲쐳쐵",6,"쐾",9,"쑉",26,"쑦쑧쑩쑪쑫쑭",6,"쑶쑷쑸쑺",5,"쒁",18,"쒕",6,"쒝",12],["9d41","쒪",13,"쒹쒺쒻쒽",8],["9d61","쓆",25],["9d81","쓠",8,"쓪",5,"쓲쓳쓵쓶쓷쓹쓻쓼쓽쓾씂",9,"씍씎씏씑씒씓씕",6,"씝",10,"씪씫씭씮씯씱",6,"씺씼씾",5,"앆앇앋앏앐앑앒앖앚앛앜앟앢앣앥앦앧앩",6,"앲앶",5,"앾앿얁얂얃얅얆얈얉얊얋얎얐얒얓얔"],["9e41","얖얙얚얛얝얞얟얡",7,"얪",9,"얶"],["9e61","얷얺얿",4,"엋엍엏엒엓엕엖엗엙",6,"엢엤엦엧"],["9e81","엨엩엪엫엯엱엲엳엵엸엹엺엻옂옃옄옉옊옋옍옎옏옑",6,"옚옝",6,"옦옧옩옪옫옯옱옲옶옸옺옼옽옾옿왂왃왅왆왇왉",6,"왒왖",5,"왞왟왡",10,"왭왮왰왲",5,"왺왻왽왾왿욁",6,"욊욌욎",5,"욖욗욙욚욛욝",6,"욦"],["9f41","욨욪",5,"욲욳욵욶욷욻",4,"웂웄웆",5,"웎"],["9f61","웏웑웒웓웕",6,"웞웟웢",5,"웪웫웭웮웯웱웲"],["9f81","웳",4,"웺웻웼웾",5,"윆윇윉윊윋윍",6,"윖윘윚",5,"윢윣윥윦윧윩",6,"윲윴윶윸윹윺윻윾윿읁읂읃읅",4,"읋읎읐읙읚읛읝읞읟읡",6,"읩읪읬",7,"읶읷읹읺읻읿잀잁잂잆잋잌잍잏잒잓잕잙잛",4,"잢잧",4,"잮잯잱잲잳잵잶잷"],["a041","잸잹잺잻잾쟂",5,"쟊쟋쟍쟏쟑",6,"쟙쟚쟛쟜"],["a061","쟞",5,"쟥쟦쟧쟩쟪쟫쟭",13],["a081","쟻",4,"젂젃젅젆젇젉젋",4,"젒젔젗",4,"젞젟젡젢젣젥",6,"젮젰젲",5,"젹젺젻젽젾젿졁",6,"졊졋졎",5,"졕",26,"졲졳졵졶졷졹졻",4,"좂좄좈좉좊좎",5,"좕",7,"좞좠좢좣좤"],["a141","좥좦좧좩",18,"좾좿죀죁"],["a161","죂죃죅죆죇죉죊죋죍",6,"죖죘죚",5,"죢죣죥"],["a181","죦",14,"죶",5,"죾죿줁줂줃줇",4,"줎 、。·‥…¨〃­―∥\∼‘’“”〔〕〈",9,"±×÷≠≤≥∞∴°′″℃Å¢£¥♂♀∠⊥⌒∂∇≡≒§※☆★○●◎◇◆□■△▲▽▼→←↑↓↔〓≪≫√∽∝∵∫∬∈∋⊆⊇⊂⊃∪∩∧∨¬"],["a241","줐줒",5,"줙",18],["a261","줭",6,"줵",18],["a281","쥈",7,"쥒쥓쥕쥖쥗쥙",6,"쥢쥤",7,"쥭쥮쥯⇒⇔∀∃´~ˇ˘˝˚˙¸˛¡¿ː∮∑∏¤℉‰◁◀▷▶♤♠♡♥♧♣⊙◈▣◐◑▒▤▥▨▧▦▩♨☏☎☜☞¶†‡↕↗↙↖↘♭♩♪♬㉿㈜№㏇™㏂㏘℡€®"],["a341","쥱쥲쥳쥵",6,"쥽",10,"즊즋즍즎즏"],["a361","즑",6,"즚즜즞",16],["a381","즯",16,"짂짃짅짆짉짋",4,"짒짔짗짘짛!",58,"₩]",32," ̄"],["a441","짞짟짡짣짥짦짨짩짪짫짮짲",5,"짺짻짽짾짿쨁쨂쨃쨄"],["a461","쨅쨆쨇쨊쨎",5,"쨕쨖쨗쨙",12],["a481","쨦쨧쨨쨪",28,"ㄱ",93],["a541","쩇",4,"쩎쩏쩑쩒쩓쩕",6,"쩞쩢",5,"쩩쩪"],["a561","쩫",17,"쩾",5,"쪅쪆"],["a581","쪇",16,"쪙",14,"ⅰ",9],["a5b0","Ⅰ",9],["a5c1","Α",16,"Σ",6],["a5e1","α",16,"σ",6],["a641","쪨",19,"쪾쪿쫁쫂쫃쫅"],["a661","쫆",5,"쫎쫐쫒쫔쫕쫖쫗쫚",5,"쫡",6],["a681","쫨쫩쫪쫫쫭",6,"쫵",18,"쬉쬊─│┌┐┘└├┬┤┴┼━┃┏┓┛┗┣┳┫┻╋┠┯┨┷┿┝┰┥┸╂┒┑┚┙┖┕┎┍┞┟┡┢┦┧┩┪┭┮┱┲┵┶┹┺┽┾╀╁╃",7],["a741","쬋",4,"쬑쬒쬓쬕쬖쬗쬙",6,"쬢",7],["a761","쬪",22,"쭂쭃쭄"],["a781","쭅쭆쭇쭊쭋쭍쭎쭏쭑",6,"쭚쭛쭜쭞",5,"쭥",7,"㎕㎖㎗ℓ㎘㏄㎣㎤㎥㎦㎙",9,"㏊㎍㎎㎏㏏㎈㎉㏈㎧㎨㎰",9,"㎀",4,"㎺",5,"㎐",4,"Ω㏀㏁㎊㎋㎌㏖㏅㎭㎮㎯㏛㎩㎪㎫㎬㏝㏐㏓㏃㏉㏜㏆"],["a841","쭭",10,"쭺",14],["a861","쮉",18,"쮝",6],["a881","쮤",19,"쮹",11,"ÆЪĦ"],["a8a6","IJ"],["a8a8","ĿŁØŒºÞŦŊ"],["a8b1","㉠",27,"ⓐ",25,"①",14,"½⅓⅔¼¾⅛⅜⅝⅞"],["a941","쯅",14,"쯕",10],["a961","쯠쯡쯢쯣쯥쯦쯨쯪",18],["a981","쯽",14,"찎찏찑찒찓찕",6,"찞찟찠찣찤æđðħıijĸŀłøœßþŧŋʼn㈀",27,"⒜",25,"⑴",14,"¹²³⁴ⁿ₁₂₃₄"],["aa41","찥찦찪찫찭찯찱",6,"찺찿",4,"챆챇챉챊챋챍챎"],["aa61","챏",4,"챖챚",5,"챡챢챣챥챧챩",6,"챱챲"],["aa81","챳챴챶",29,"ぁ",82],["ab41","첔첕첖첗첚첛첝첞첟첡",6,"첪첮",5,"첶첷첹"],["ab61","첺첻첽",6,"쳆쳈쳊",5,"쳑쳒쳓쳕",5],["ab81","쳛",8,"쳥",6,"쳭쳮쳯쳱",12,"ァ",85],["ac41","쳾쳿촀촂",5,"촊촋촍촎촏촑",6,"촚촜촞촟촠"],["ac61","촡촢촣촥촦촧촩촪촫촭",11,"촺",4],["ac81","촿",28,"쵝쵞쵟А",5,"ЁЖ",25],["acd1","а",5,"ёж",25],["ad41","쵡쵢쵣쵥",6,"쵮쵰쵲",5,"쵹",7],["ad61","춁",6,"춉",10,"춖춗춙춚춛춝춞춟"],["ad81","춠춡춢춣춦춨춪",5,"춱",18,"췅"],["ae41","췆",5,"췍췎췏췑",16],["ae61","췢",5,"췩췪췫췭췮췯췱",6,"췺췼췾",4],["ae81","츃츅츆츇츉츊츋츍",6,"츕츖츗츘츚",5,"츢츣츥츦츧츩츪츫"],["af41","츬츭츮츯츲츴츶",19],["af61","칊",13,"칚칛칝칞칢",5,"칪칬"],["af81","칮",5,"칶칷칹칺칻칽",6,"캆캈캊",5,"캒캓캕캖캗캙"],["b041","캚",5,"캢캦",5,"캮",12],["b061","캻",5,"컂",19],["b081","컖",13,"컦컧컩컪컭",6,"컶컺",5,"가각간갇갈갉갊감",7,"같",4,"갠갤갬갭갯갰갱갸갹갼걀걋걍걔걘걜거걱건걷걸걺검겁것겄겅겆겉겊겋게겐겔겜겝겟겠겡겨격겪견겯결겸겹겻겼경곁계곈곌곕곗고곡곤곧골곪곬곯곰곱곳공곶과곽관괄괆"],["b141","켂켃켅켆켇켉",6,"켒켔켖",5,"켝켞켟켡켢켣"],["b161","켥",6,"켮켲",5,"켹",11],["b181","콅",14,"콖콗콙콚콛콝",6,"콦콨콪콫콬괌괍괏광괘괜괠괩괬괭괴괵괸괼굄굅굇굉교굔굘굡굣구국군굳굴굵굶굻굼굽굿궁궂궈궉권궐궜궝궤궷귀귁귄귈귐귑귓규균귤그극근귿글긁금급긋긍긔기긱긴긷길긺김깁깃깅깆깊까깍깎깐깔깖깜깝깟깠깡깥깨깩깬깰깸"],["b241","콭콮콯콲콳콵콶콷콹",6,"쾁쾂쾃쾄쾆",5,"쾍"],["b261","쾎",18,"쾢",5,"쾩"],["b281","쾪",5,"쾱",18,"쿅",6,"깹깻깼깽꺄꺅꺌꺼꺽꺾껀껄껌껍껏껐껑께껙껜껨껫껭껴껸껼꼇꼈꼍꼐꼬꼭꼰꼲꼴꼼꼽꼿꽁꽂꽃꽈꽉꽐꽜꽝꽤꽥꽹꾀꾄꾈꾐꾑꾕꾜꾸꾹꾼꿀꿇꿈꿉꿋꿍꿎꿔꿜꿨꿩꿰꿱꿴꿸뀀뀁뀄뀌뀐뀔뀜뀝뀨끄끅끈끊끌끎끓끔끕끗끙"],["b341","쿌",19,"쿢쿣쿥쿦쿧쿩"],["b361","쿪",5,"쿲쿴쿶",5,"쿽쿾쿿퀁퀂퀃퀅",5],["b381","퀋",5,"퀒",5,"퀙",19,"끝끼끽낀낄낌낍낏낑나낙낚난낟날낡낢남납낫",4,"낱낳내낵낸낼냄냅냇냈냉냐냑냔냘냠냥너넉넋넌널넒넓넘넙넛넜넝넣네넥넨넬넴넵넷넸넹녀녁년녈념녑녔녕녘녜녠노녹논놀놂놈놉놋농높놓놔놘놜놨뇌뇐뇔뇜뇝"],["b441","퀮",5,"퀶퀷퀹퀺퀻퀽",6,"큆큈큊",5],["b461","큑큒큓큕큖큗큙",6,"큡",10,"큮큯"],["b481","큱큲큳큵",6,"큾큿킀킂",18,"뇟뇨뇩뇬뇰뇹뇻뇽누눅눈눋눌눔눕눗눙눠눴눼뉘뉜뉠뉨뉩뉴뉵뉼늄늅늉느늑는늘늙늚늠늡늣능늦늪늬늰늴니닉닌닐닒님닙닛닝닢다닥닦단닫",4,"닳담답닷",4,"닿대댁댄댈댐댑댓댔댕댜더덕덖던덛덜덞덟덤덥"],["b541","킕",14,"킦킧킩킪킫킭",5],["b561","킳킶킸킺",5,"탂탃탅탆탇탊",5,"탒탖",4],["b581","탛탞탟탡탢탣탥",6,"탮탲",5,"탹",11,"덧덩덫덮데덱덴델뎀뎁뎃뎄뎅뎌뎐뎔뎠뎡뎨뎬도독돈돋돌돎돐돔돕돗동돛돝돠돤돨돼됐되된될됨됩됫됴두둑둔둘둠둡둣둥둬뒀뒈뒝뒤뒨뒬뒵뒷뒹듀듄듈듐듕드득든듣들듦듬듭듯등듸디딕딘딛딜딤딥딧딨딩딪따딱딴딸"],["b641","턅",7,"턎",17],["b661","턠",15,"턲턳턵턶턷턹턻턼턽턾"],["b681","턿텂텆",5,"텎텏텑텒텓텕",6,"텞텠텢",5,"텩텪텫텭땀땁땃땄땅땋때땍땐땔땜땝땟땠땡떠떡떤떨떪떫떰떱떳떴떵떻떼떽뗀뗄뗌뗍뗏뗐뗑뗘뗬또똑똔똘똥똬똴뙈뙤뙨뚜뚝뚠뚤뚫뚬뚱뛔뛰뛴뛸뜀뜁뜅뜨뜩뜬뜯뜰뜸뜹뜻띄띈띌띔띕띠띤띨띰띱띳띵라락란랄람랍랏랐랑랒랖랗"],["b741","텮",13,"텽",6,"톅톆톇톉톊"],["b761","톋",20,"톢톣톥톦톧"],["b781","톩",6,"톲톴톶톷톸톹톻톽톾톿퇁",14,"래랙랜랠램랩랫랬랭랴략랸럇량러럭런럴럼럽럿렀렁렇레렉렌렐렘렙렛렝려력련렬렴렵렷렸령례롄롑롓로록론롤롬롭롯롱롸롼뢍뢨뢰뢴뢸룀룁룃룅료룐룔룝룟룡루룩룬룰룸룹룻룽뤄뤘뤠뤼뤽륀륄륌륏륑류륙륜률륨륩"],["b841","퇐",7,"퇙",17],["b861","퇫",8,"퇵퇶퇷퇹",13],["b881","툈툊",5,"툑",24,"륫륭르륵른를름릅릇릉릊릍릎리릭린릴림립릿링마막만많",4,"맘맙맛망맞맡맣매맥맨맬맴맵맷맸맹맺먀먁먈먕머먹먼멀멂멈멉멋멍멎멓메멕멘멜멤멥멧멨멩며멱면멸몃몄명몇몌모목몫몬몰몲몸몹못몽뫄뫈뫘뫙뫼"],["b941","툪툫툮툯툱툲툳툵",6,"툾퉀퉂",5,"퉉퉊퉋퉌"],["b961","퉍",14,"퉝",6,"퉥퉦퉧퉨"],["b981","퉩",22,"튂튃튅튆튇튉튊튋튌묀묄묍묏묑묘묜묠묩묫무묵묶문묻물묽묾뭄뭅뭇뭉뭍뭏뭐뭔뭘뭡뭣뭬뮈뮌뮐뮤뮨뮬뮴뮷므믄믈믐믓미믹민믿밀밂밈밉밋밌밍및밑바",4,"받",4,"밤밥밧방밭배백밴밸뱀뱁뱃뱄뱅뱉뱌뱍뱐뱝버벅번벋벌벎범법벗"],["ba41","튍튎튏튒튓튔튖",5,"튝튞튟튡튢튣튥",6,"튭"],["ba61","튮튯튰튲",5,"튺튻튽튾틁틃",4,"틊틌",5],["ba81","틒틓틕틖틗틙틚틛틝",6,"틦",9,"틲틳틵틶틷틹틺벙벚베벡벤벧벨벰벱벳벴벵벼벽변별볍볏볐병볕볘볜보복볶본볼봄봅봇봉봐봔봤봬뵀뵈뵉뵌뵐뵘뵙뵤뵨부북분붇불붉붊붐붑붓붕붙붚붜붤붰붸뷔뷕뷘뷜뷩뷰뷴뷸븀븃븅브븍븐블븜븝븟비빅빈빌빎빔빕빗빙빚빛빠빡빤"],["bb41","틻",4,"팂팄팆",5,"팏팑팒팓팕팗",4,"팞팢팣"],["bb61","팤팦팧팪팫팭팮팯팱",6,"팺팾",5,"퍆퍇퍈퍉"],["bb81","퍊",31,"빨빪빰빱빳빴빵빻빼빽뺀뺄뺌뺍뺏뺐뺑뺘뺙뺨뻐뻑뻔뻗뻘뻠뻣뻤뻥뻬뼁뼈뼉뼘뼙뼛뼜뼝뽀뽁뽄뽈뽐뽑뽕뾔뾰뿅뿌뿍뿐뿔뿜뿟뿡쀼쁑쁘쁜쁠쁨쁩삐삑삔삘삠삡삣삥사삭삯산삳살삵삶삼삽삿샀상샅새색샌샐샘샙샛샜생샤"],["bc41","퍪",17,"퍾퍿펁펂펃펅펆펇"],["bc61","펈펉펊펋펎펒",5,"펚펛펝펞펟펡",6,"펪펬펮"],["bc81","펯",4,"펵펶펷펹펺펻펽",6,"폆폇폊",5,"폑",5,"샥샨샬샴샵샷샹섀섄섈섐섕서",4,"섣설섦섧섬섭섯섰성섶세섹센셀셈셉셋셌셍셔셕션셜셤셥셧셨셩셰셴셸솅소속솎손솔솖솜솝솟송솥솨솩솬솰솽쇄쇈쇌쇔쇗쇘쇠쇤쇨쇰쇱쇳쇼쇽숀숄숌숍숏숑수숙순숟술숨숩숫숭"],["bd41","폗폙",7,"폢폤",7,"폮폯폱폲폳폵폶폷"],["bd61","폸폹폺폻폾퐀퐂",5,"퐉",13],["bd81","퐗",5,"퐞",25,"숯숱숲숴쉈쉐쉑쉔쉘쉠쉥쉬쉭쉰쉴쉼쉽쉿슁슈슉슐슘슛슝스슥슨슬슭슴습슷승시식신싣실싫심십싯싱싶싸싹싻싼쌀쌈쌉쌌쌍쌓쌔쌕쌘쌜쌤쌥쌨쌩썅써썩썬썰썲썸썹썼썽쎄쎈쎌쏀쏘쏙쏜쏟쏠쏢쏨쏩쏭쏴쏵쏸쐈쐐쐤쐬쐰"],["be41","퐸",7,"푁푂푃푅",14],["be61","푔",7,"푝푞푟푡푢푣푥",7,"푮푰푱푲"],["be81","푳",4,"푺푻푽푾풁풃",4,"풊풌풎",5,"풕",8,"쐴쐼쐽쑈쑤쑥쑨쑬쑴쑵쑹쒀쒔쒜쒸쒼쓩쓰쓱쓴쓸쓺쓿씀씁씌씐씔씜씨씩씬씰씸씹씻씽아악안앉않알앍앎앓암압앗았앙앝앞애액앤앨앰앱앳앴앵야약얀얄얇얌얍얏양얕얗얘얜얠얩어억언얹얻얼얽얾엄",6,"엌엎"],["bf41","풞",10,"풪",14],["bf61","풹",18,"퓍퓎퓏퓑퓒퓓퓕"],["bf81","퓖",5,"퓝퓞퓠",7,"퓩퓪퓫퓭퓮퓯퓱",6,"퓹퓺퓼에엑엔엘엠엡엣엥여역엮연열엶엷염",5,"옅옆옇예옌옐옘옙옛옜오옥온올옭옮옰옳옴옵옷옹옻와왁완왈왐왑왓왔왕왜왝왠왬왯왱외왹왼욀욈욉욋욍요욕욘욜욤욥욧용우욱운울욹욺움웁웃웅워웍원월웜웝웠웡웨"],["c041","퓾",5,"픅픆픇픉픊픋픍",6,"픖픘",5],["c061","픞",25],["c081","픸픹픺픻픾픿핁핂핃핅",6,"핎핐핒",5,"핚핛핝핞핟핡핢핣웩웬웰웸웹웽위윅윈윌윔윕윗윙유육윤율윰윱윳융윷으윽은을읊음읍읏응",7,"읜읠읨읫이익인일읽읾잃임입잇있잉잊잎자작잔잖잗잘잚잠잡잣잤장잦재잭잰잴잼잽잿쟀쟁쟈쟉쟌쟎쟐쟘쟝쟤쟨쟬저적전절젊"],["c141","핤핦핧핪핬핮",5,"핶핷핹핺핻핽",6,"햆햊햋"],["c161","햌햍햎햏햑",19,"햦햧"],["c181","햨",31,"점접젓정젖제젝젠젤젬젭젯젱져젼졀졈졉졌졍졔조족존졸졺좀좁좃종좆좇좋좌좍좔좝좟좡좨좼좽죄죈죌죔죕죗죙죠죡죤죵주죽준줄줅줆줌줍줏중줘줬줴쥐쥑쥔쥘쥠쥡쥣쥬쥰쥴쥼즈즉즌즐즘즙즛증지직진짇질짊짐집짓"],["c241","헊헋헍헎헏헑헓",4,"헚헜헞",5,"헦헧헩헪헫헭헮"],["c261","헯",4,"헶헸헺",5,"혂혃혅혆혇혉",6,"혒"],["c281","혖",5,"혝혞혟혡혢혣혥",7,"혮",9,"혺혻징짖짙짚짜짝짠짢짤짧짬짭짯짰짱째짹짼쨀쨈쨉쨋쨌쨍쨔쨘쨩쩌쩍쩐쩔쩜쩝쩟쩠쩡쩨쩽쪄쪘쪼쪽쫀쫄쫌쫍쫏쫑쫓쫘쫙쫠쫬쫴쬈쬐쬔쬘쬠쬡쭁쭈쭉쭌쭐쭘쭙쭝쭤쭸쭹쮜쮸쯔쯤쯧쯩찌찍찐찔찜찝찡찢찧차착찬찮찰참찹찻"],["c341","혽혾혿홁홂홃홄홆홇홊홌홎홏홐홒홓홖홗홙홚홛홝",4],["c361","홢",4,"홨홪",5,"홲홳홵",11],["c381","횁횂횄횆",5,"횎횏횑횒횓횕",7,"횞횠횢",5,"횩횪찼창찾채책챈챌챔챕챗챘챙챠챤챦챨챰챵처척천철첨첩첫첬청체첵첸첼쳄쳅쳇쳉쳐쳔쳤쳬쳰촁초촉촌촐촘촙촛총촤촨촬촹최쵠쵤쵬쵭쵯쵱쵸춈추축춘출춤춥춧충춰췄췌췐취췬췰췸췹췻췽츄츈츌츔츙츠측츤츨츰츱츳층"],["c441","횫횭횮횯횱",7,"횺횼",7,"훆훇훉훊훋"],["c461","훍훎훏훐훒훓훕훖훘훚",5,"훡훢훣훥훦훧훩",4],["c481","훮훯훱훲훳훴훶",5,"훾훿휁휂휃휅",11,"휒휓휔치칙친칟칠칡침칩칫칭카칵칸칼캄캅캇캉캐캑캔캘캠캡캣캤캥캬캭컁커컥컨컫컬컴컵컷컸컹케켁켄켈켐켑켓켕켜켠켤켬켭켯켰켱켸코콕콘콜콤콥콧콩콰콱콴콸쾀쾅쾌쾡쾨쾰쿄쿠쿡쿤쿨쿰쿱쿳쿵쿼퀀퀄퀑퀘퀭퀴퀵퀸퀼"],["c541","휕휖휗휚휛휝휞휟휡",6,"휪휬휮",5,"휶휷휹"],["c561","휺휻휽",6,"흅흆흈흊",5,"흒흓흕흚",4],["c581","흟흢흤흦흧흨흪흫흭흮흯흱흲흳흵",6,"흾흿힀힂",5,"힊힋큄큅큇큉큐큔큘큠크큭큰클큼큽킁키킥킨킬킴킵킷킹타탁탄탈탉탐탑탓탔탕태택탠탤탬탭탯탰탱탸턍터턱턴털턺텀텁텃텄텅테텍텐텔템텝텟텡텨텬텼톄톈토톡톤톨톰톱톳통톺톼퇀퇘퇴퇸툇툉툐투툭툰툴툼툽툿퉁퉈퉜"],["c641","힍힎힏힑",6,"힚힜힞",5],["c6a1","퉤튀튁튄튈튐튑튕튜튠튤튬튱트특튼튿틀틂틈틉틋틔틘틜틤틥티틱틴틸팀팁팃팅파팍팎판팔팖팜팝팟팠팡팥패팩팬팰팸팹팻팼팽퍄퍅퍼퍽펀펄펌펍펏펐펑페펙펜펠펨펩펫펭펴편펼폄폅폈평폐폘폡폣포폭폰폴폼폽폿퐁"],["c7a1","퐈퐝푀푄표푠푤푭푯푸푹푼푿풀풂품풉풋풍풔풩퓌퓐퓔퓜퓟퓨퓬퓰퓸퓻퓽프픈플픔픕픗피픽핀필핌핍핏핑하학한할핥함합핫항해핵핸핼햄햅햇했행햐향허헉헌헐헒험헙헛헝헤헥헨헬헴헵헷헹혀혁현혈혐협혓혔형혜혠"],["c8a1","혤혭호혹혼홀홅홈홉홋홍홑화확환활홧황홰홱홴횃횅회획횐횔횝횟횡효횬횰횹횻후훅훈훌훑훔훗훙훠훤훨훰훵훼훽휀휄휑휘휙휜휠휨휩휫휭휴휵휸휼흄흇흉흐흑흔흖흗흘흙흠흡흣흥흩희흰흴흼흽힁히힉힌힐힘힙힛힝"],["caa1","伽佳假價加可呵哥嘉嫁家暇架枷柯歌珂痂稼苛茄街袈訶賈跏軻迦駕刻却各恪慤殼珏脚覺角閣侃刊墾奸姦干幹懇揀杆柬桿澗癎看磵稈竿簡肝艮艱諫間乫喝曷渴碣竭葛褐蝎鞨勘坎堪嵌感憾戡敢柑橄減甘疳監瞰紺邯鑑鑒龕"],["cba1","匣岬甲胛鉀閘剛堈姜岡崗康强彊慷江畺疆糠絳綱羌腔舡薑襁講鋼降鱇介价個凱塏愷愾慨改槪漑疥皆盖箇芥蓋豈鎧開喀客坑更粳羹醵倨去居巨拒据據擧渠炬祛距踞車遽鉅鋸乾件健巾建愆楗腱虔蹇鍵騫乞傑杰桀儉劍劒檢"],["cca1","瞼鈐黔劫怯迲偈憩揭擊格檄激膈覡隔堅牽犬甄絹繭肩見譴遣鵑抉決潔結缺訣兼慊箝謙鉗鎌京俓倞傾儆勁勍卿坰境庚徑慶憬擎敬景暻更梗涇炅烱璟璥瓊痙硬磬竟競絅經耕耿脛莖警輕逕鏡頃頸驚鯨係啓堺契季屆悸戒桂械"],["cda1","棨溪界癸磎稽系繫繼計誡谿階鷄古叩告呱固姑孤尻庫拷攷故敲暠枯槁沽痼皐睾稿羔考股膏苦苽菰藁蠱袴誥賈辜錮雇顧高鼓哭斛曲梏穀谷鵠困坤崑昆梱棍滾琨袞鯤汨滑骨供公共功孔工恐恭拱控攻珙空蚣貢鞏串寡戈果瓜"],["cea1","科菓誇課跨過鍋顆廓槨藿郭串冠官寬慣棺款灌琯瓘管罐菅觀貫關館刮恝括适侊光匡壙廣曠洸炚狂珖筐胱鑛卦掛罫乖傀塊壞怪愧拐槐魁宏紘肱轟交僑咬喬嬌嶠巧攪敎校橋狡皎矯絞翹膠蕎蛟較轎郊餃驕鮫丘久九仇俱具勾"],["cfa1","區口句咎嘔坵垢寇嶇廐懼拘救枸柩構歐毆毬求溝灸狗玖球瞿矩究絿耉臼舅舊苟衢謳購軀逑邱鉤銶駒驅鳩鷗龜國局菊鞠鞫麴君窘群裙軍郡堀屈掘窟宮弓穹窮芎躬倦券勸卷圈拳捲權淃眷厥獗蕨蹶闕机櫃潰詭軌饋句晷歸貴"],["d0a1","鬼龜叫圭奎揆槻珪硅窺竅糾葵規赳逵閨勻均畇筠菌鈞龜橘克剋劇戟棘極隙僅劤勤懃斤根槿瑾筋芹菫覲謹近饉契今妗擒昑檎琴禁禽芩衾衿襟金錦伋及急扱汲級給亘兢矜肯企伎其冀嗜器圻基埼夔奇妓寄岐崎己幾忌技旗旣"],["d1a1","朞期杞棋棄機欺氣汽沂淇玘琦琪璂璣畸畿碁磯祁祇祈祺箕紀綺羈耆耭肌記譏豈起錡錤飢饑騎騏驥麒緊佶吉拮桔金喫儺喇奈娜懦懶拏拿癩",5,"那樂",4,"諾酪駱亂卵暖欄煖爛蘭難鸞捏捺南嵐枏楠湳濫男藍襤拉"],["d2a1","納臘蠟衲囊娘廊",4,"乃來內奈柰耐冷女年撚秊念恬拈捻寧寗努勞奴弩怒擄櫓爐瑙盧",5,"駑魯",10,"濃籠聾膿農惱牢磊腦賂雷尿壘",7,"嫩訥杻紐勒",5,"能菱陵尼泥匿溺多茶"],["d3a1","丹亶但單團壇彖斷旦檀段湍短端簞緞蛋袒鄲鍛撻澾獺疸達啖坍憺擔曇淡湛潭澹痰聃膽蕁覃談譚錟沓畓答踏遝唐堂塘幢戇撞棠當糖螳黨代垈坮大對岱帶待戴擡玳臺袋貸隊黛宅德悳倒刀到圖堵塗導屠島嶋度徒悼挑掉搗桃"],["d4a1","棹櫂淘渡滔濤燾盜睹禱稻萄覩賭跳蹈逃途道都鍍陶韜毒瀆牘犢獨督禿篤纛讀墩惇敦旽暾沌焞燉豚頓乭突仝冬凍動同憧東桐棟洞潼疼瞳童胴董銅兜斗杜枓痘竇荳讀豆逗頭屯臀芚遁遯鈍得嶝橙燈登等藤謄鄧騰喇懶拏癩羅"],["d5a1","蘿螺裸邏樂洛烙珞絡落諾酪駱丹亂卵欄欒瀾爛蘭鸞剌辣嵐擥攬欖濫籃纜藍襤覽拉臘蠟廊朗浪狼琅瑯螂郞來崍徠萊冷掠略亮倆兩凉梁樑粮粱糧良諒輛量侶儷勵呂廬慮戾旅櫚濾礪藜蠣閭驢驪麗黎力曆歷瀝礫轢靂憐戀攣漣"],["d6a1","煉璉練聯蓮輦連鍊冽列劣洌烈裂廉斂殮濂簾獵令伶囹寧岺嶺怜玲笭羚翎聆逞鈴零靈領齡例澧禮醴隷勞怒撈擄櫓潞瀘爐盧老蘆虜路輅露魯鷺鹵碌祿綠菉錄鹿麓論壟弄朧瀧瓏籠聾儡瀨牢磊賂賚賴雷了僚寮廖料燎療瞭聊蓼"],["d7a1","遼鬧龍壘婁屢樓淚漏瘻累縷蔞褸鏤陋劉旒柳榴流溜瀏琉瑠留瘤硫謬類六戮陸侖倫崙淪綸輪律慄栗率隆勒肋凜凌楞稜綾菱陵俚利厘吏唎履悧李梨浬犁狸理璃異痢籬罹羸莉裏裡里釐離鯉吝潾燐璘藺躪隣鱗麟林淋琳臨霖砬"],["d8a1","立笠粒摩瑪痲碼磨馬魔麻寞幕漠膜莫邈万卍娩巒彎慢挽晩曼滿漫灣瞞萬蔓蠻輓饅鰻唜抹末沫茉襪靺亡妄忘忙望網罔芒茫莽輞邙埋妹媒寐昧枚梅每煤罵買賣邁魅脈貊陌驀麥孟氓猛盲盟萌冪覓免冕勉棉沔眄眠綿緬面麵滅"],["d9a1","蔑冥名命明暝椧溟皿瞑茗蓂螟酩銘鳴袂侮冒募姆帽慕摸摹暮某模母毛牟牡瑁眸矛耗芼茅謀謨貌木沐牧目睦穆鶩歿沒夢朦蒙卯墓妙廟描昴杳渺猫竗苗錨務巫憮懋戊拇撫无楙武毋無珷畝繆舞茂蕪誣貿霧鵡墨默們刎吻問文"],["daa1","汶紊紋聞蚊門雯勿沕物味媚尾嵋彌微未梶楣渼湄眉米美薇謎迷靡黴岷悶愍憫敏旻旼民泯玟珉緡閔密蜜謐剝博拍搏撲朴樸泊珀璞箔粕縛膊舶薄迫雹駁伴半反叛拌搬攀斑槃泮潘班畔瘢盤盼磐磻礬絆般蟠返頒飯勃拔撥渤潑"],["dba1","發跋醱鉢髮魃倣傍坊妨尨幇彷房放方旁昉枋榜滂磅紡肪膀舫芳蒡蚌訪謗邦防龐倍俳北培徘拜排杯湃焙盃背胚裴裵褙賠輩配陪伯佰帛柏栢白百魄幡樊煩燔番磻繁蕃藩飜伐筏罰閥凡帆梵氾汎泛犯範范法琺僻劈壁擘檗璧癖"],["dca1","碧蘗闢霹便卞弁變辨辯邊別瞥鱉鼈丙倂兵屛幷昞昺柄棅炳甁病秉竝輧餠騈保堡報寶普步洑湺潽珤甫菩補褓譜輔伏僕匐卜宓復服福腹茯蔔複覆輹輻馥鰒本乶俸奉封峯峰捧棒烽熢琫縫蓬蜂逢鋒鳳不付俯傅剖副否咐埠夫婦"],["dda1","孚孵富府復扶敷斧浮溥父符簿缶腐腑膚艀芙莩訃負賦賻赴趺部釜阜附駙鳧北分吩噴墳奔奮忿憤扮昐汾焚盆粉糞紛芬賁雰不佛弗彿拂崩朋棚硼繃鵬丕備匕匪卑妃婢庇悲憊扉批斐枇榧比毖毗毘沸泌琵痺砒碑秕秘粃緋翡肥"],["dea1","脾臂菲蜚裨誹譬費鄙非飛鼻嚬嬪彬斌檳殯浜濱瀕牝玭貧賓頻憑氷聘騁乍事些仕伺似使俟僿史司唆嗣四士奢娑寫寺射巳師徙思捨斜斯柶査梭死沙泗渣瀉獅砂社祀祠私篩紗絲肆舍莎蓑蛇裟詐詞謝賜赦辭邪飼駟麝削數朔索"],["dfa1","傘刪山散汕珊産疝算蒜酸霰乷撒殺煞薩三參杉森渗芟蔘衫揷澁鈒颯上傷像償商喪嘗孀尙峠常床庠廂想桑橡湘爽牀狀相祥箱翔裳觴詳象賞霜塞璽賽嗇塞穡索色牲生甥省笙墅壻嶼序庶徐恕抒捿敍暑曙書栖棲犀瑞筮絮緖署"],["e0a1","胥舒薯西誓逝鋤黍鼠夕奭席惜昔晳析汐淅潟石碩蓆釋錫仙僊先善嬋宣扇敾旋渲煽琁瑄璇璿癬禪線繕羨腺膳船蘚蟬詵跣選銑鐥饍鮮卨屑楔泄洩渫舌薛褻設說雪齧剡暹殲纖蟾贍閃陝攝涉燮葉城姓宬性惺成星晟猩珹盛省筬"],["e1a1","聖聲腥誠醒世勢歲洗稅笹細說貰召嘯塑宵小少巢所掃搔昭梳沼消溯瀟炤燒甦疏疎瘙笑篠簫素紹蔬蕭蘇訴逍遡邵銷韶騷俗屬束涑粟續謖贖速孫巽損蓀遜飡率宋悚松淞訟誦送頌刷殺灑碎鎖衰釗修受嗽囚垂壽嫂守岫峀帥愁"],["e2a1","戍手授搜收數樹殊水洙漱燧狩獸琇璲瘦睡秀穗竪粹綏綬繡羞脩茱蒐蓚藪袖誰讐輸遂邃酬銖銹隋隧隨雖需須首髓鬚叔塾夙孰宿淑潚熟琡璹肅菽巡徇循恂旬栒楯橓殉洵淳珣盾瞬筍純脣舜荀蓴蕣詢諄醇錞順馴戌術述鉥崇崧"],["e3a1","嵩瑟膝蝨濕拾習褶襲丞乘僧勝升承昇繩蠅陞侍匙嘶始媤尸屎屍市弑恃施是時枾柴猜矢示翅蒔蓍視試詩諡豕豺埴寔式息拭植殖湜熄篒蝕識軾食飾伸侁信呻娠宸愼新晨燼申神紳腎臣莘薪藎蜃訊身辛辰迅失室實悉審尋心沁"],["e4a1","沈深瀋甚芯諶什十拾雙氏亞俄兒啞娥峨我牙芽莪蛾衙訝阿雅餓鴉鵝堊岳嶽幄惡愕握樂渥鄂鍔顎鰐齷安岸按晏案眼雁鞍顔鮟斡謁軋閼唵岩巖庵暗癌菴闇壓押狎鴨仰央怏昻殃秧鴦厓哀埃崖愛曖涯碍艾隘靄厄扼掖液縊腋額"],["e5a1","櫻罌鶯鸚也倻冶夜惹揶椰爺耶若野弱掠略約若葯蒻藥躍亮佯兩凉壤孃恙揚攘敭暘梁楊樣洋瀁煬痒瘍禳穰糧羊良襄諒讓釀陽量養圄御於漁瘀禦語馭魚齬億憶抑檍臆偃堰彦焉言諺孼蘖俺儼嚴奄掩淹嶪業円予余勵呂女如廬"],["e6a1","旅歟汝濾璵礖礪與艅茹輿轝閭餘驪麗黎亦力域役易曆歷疫繹譯轢逆驛嚥堧姸娟宴年延憐戀捐挻撚椽沇沿涎涓淵演漣烟然煙煉燃燕璉硏硯秊筵緣練縯聯衍軟輦蓮連鉛鍊鳶列劣咽悅涅烈熱裂說閱厭廉念捻染殮炎焰琰艶苒"],["e7a1","簾閻髥鹽曄獵燁葉令囹塋寧嶺嶸影怜映暎楹榮永泳渶潁濚瀛瀯煐營獰玲瑛瑩瓔盈穎纓羚聆英詠迎鈴鍈零霙靈領乂倪例刈叡曳汭濊猊睿穢芮藝蘂禮裔詣譽豫醴銳隸霓預五伍俉傲午吾吳嗚塢墺奧娛寤悟惡懊敖旿晤梧汚澳"],["e8a1","烏熬獒筽蜈誤鰲鼇屋沃獄玉鈺溫瑥瘟穩縕蘊兀壅擁瓮甕癰翁邕雍饔渦瓦窩窪臥蛙蝸訛婉完宛梡椀浣玩琓琬碗緩翫脘腕莞豌阮頑曰往旺枉汪王倭娃歪矮外嵬巍猥畏了僚僥凹堯夭妖姚寥寮尿嶢拗搖撓擾料曜樂橈燎燿瑤療"],["e9a1","窈窯繇繞耀腰蓼蟯要謠遙遼邀饒慾欲浴縟褥辱俑傭冗勇埇墉容庸慂榕涌湧溶熔瑢用甬聳茸蓉踊鎔鏞龍于佑偶優又友右宇寓尤愚憂旴牛玗瑀盂祐禑禹紆羽芋藕虞迂遇郵釪隅雨雩勖彧旭昱栯煜稶郁頊云暈橒殞澐熉耘芸蕓"],["eaa1","運隕雲韻蔚鬱亐熊雄元原員圓園垣媛嫄寃怨愿援沅洹湲源爰猿瑗苑袁轅遠阮院願鴛月越鉞位偉僞危圍委威尉慰暐渭爲瑋緯胃萎葦蔿蝟衛褘謂違韋魏乳侑儒兪劉唯喩孺宥幼幽庾悠惟愈愉揄攸有杻柔柚柳楡楢油洧流游溜"],["eba1","濡猶猷琉瑜由留癒硫紐維臾萸裕誘諛諭踰蹂遊逾遺酉釉鍮類六堉戮毓肉育陸倫允奫尹崙淪潤玧胤贇輪鈗閏律慄栗率聿戎瀜絨融隆垠恩慇殷誾銀隱乙吟淫蔭陰音飮揖泣邑凝應膺鷹依倚儀宜意懿擬椅毅疑矣義艤薏蟻衣誼"],["eca1","議醫二以伊利吏夷姨履已弛彛怡易李梨泥爾珥理異痍痢移罹而耳肄苡荑裏裡貽貳邇里離飴餌匿溺瀷益翊翌翼謚人仁刃印吝咽因姻寅引忍湮燐璘絪茵藺蚓認隣靭靷鱗麟一佚佾壹日溢逸鎰馹任壬妊姙恁林淋稔臨荏賃入卄"],["eda1","立笠粒仍剩孕芿仔刺咨姉姿子字孜恣慈滋炙煮玆瓷疵磁紫者自茨蔗藉諮資雌作勺嚼斫昨灼炸爵綽芍酌雀鵲孱棧殘潺盞岑暫潛箴簪蠶雜丈仗匠場墻壯奬將帳庄張掌暲杖樟檣欌漿牆狀獐璋章粧腸臟臧莊葬蔣薔藏裝贓醬長"],["eea1","障再哉在宰才材栽梓渽滓災縡裁財載齋齎爭箏諍錚佇低儲咀姐底抵杵楮樗沮渚狙猪疽箸紵苧菹著藷詛貯躇這邸雎齟勣吊嫡寂摘敵滴狄炙的積笛籍績翟荻謫賊赤跡蹟迪迹適鏑佃佺傳全典前剪塡塼奠專展廛悛戰栓殿氈澱"],["efa1","煎琠田甸畑癲筌箋箭篆纏詮輾轉鈿銓錢鐫電顚顫餞切截折浙癤竊節絶占岾店漸点粘霑鮎點接摺蝶丁井亭停偵呈姃定幀庭廷征情挺政整旌晶晸柾楨檉正汀淀淨渟湞瀞炡玎珽町睛碇禎程穽精綎艇訂諪貞鄭酊釘鉦鋌錠霆靖"],["f0a1","靜頂鼎制劑啼堤帝弟悌提梯濟祭第臍薺製諸蹄醍除際霽題齊俎兆凋助嘲弔彫措操早晁曺曹朝條棗槽漕潮照燥爪璪眺祖祚租稠窕粗糟組繰肇藻蚤詔調趙躁造遭釣阻雕鳥族簇足鏃存尊卒拙猝倧宗從悰慫棕淙琮種終綜縱腫"],["f1a1","踪踵鍾鐘佐坐左座挫罪主住侏做姝胄呪周嗾奏宙州廚晝朱柱株注洲湊澍炷珠疇籌紂紬綢舟蛛註誅走躊輳週酎酒鑄駐竹粥俊儁准埈寯峻晙樽浚準濬焌畯竣蠢逡遵雋駿茁中仲衆重卽櫛楫汁葺增憎曾拯烝甑症繒蒸證贈之只"],["f2a1","咫地址志持指摯支旨智枝枳止池沚漬知砥祉祗紙肢脂至芝芷蜘誌識贄趾遲直稙稷織職唇嗔塵振搢晉晋桭榛殄津溱珍瑨璡畛疹盡眞瞋秦縉縝臻蔯袗診賑軫辰進鎭陣陳震侄叱姪嫉帙桎瓆疾秩窒膣蛭質跌迭斟朕什執潗緝輯"],["f3a1","鏶集徵懲澄且侘借叉嗟嵯差次此磋箚茶蹉車遮捉搾着窄錯鑿齪撰澯燦璨瓚竄簒纂粲纘讚贊鑽餐饌刹察擦札紮僭參塹慘慙懺斬站讒讖倉倡創唱娼廠彰愴敞昌昶暢槍滄漲猖瘡窓脹艙菖蒼債埰寀寨彩採砦綵菜蔡采釵冊柵策"],["f4a1","責凄妻悽處倜刺剔尺慽戚拓擲斥滌瘠脊蹠陟隻仟千喘天川擅泉淺玔穿舛薦賤踐遷釧闡阡韆凸哲喆徹撤澈綴輟轍鐵僉尖沾添甛瞻簽籤詹諂堞妾帖捷牒疊睫諜貼輒廳晴淸聽菁請靑鯖切剃替涕滯締諦逮遞體初剿哨憔抄招梢"],["f5a1","椒楚樵炒焦硝礁礎秒稍肖艸苕草蕉貂超酢醋醮促囑燭矗蜀觸寸忖村邨叢塚寵悤憁摠總聰蔥銃撮催崔最墜抽推椎楸樞湫皺秋芻萩諏趨追鄒酋醜錐錘鎚雛騶鰍丑畜祝竺筑築縮蓄蹙蹴軸逐春椿瑃出朮黜充忠沖蟲衝衷悴膵萃"],["f6a1","贅取吹嘴娶就炊翠聚脆臭趣醉驟鷲側仄厠惻測層侈値嗤峙幟恥梔治淄熾痔痴癡稚穉緇緻置致蚩輜雉馳齒則勅飭親七柒漆侵寢枕沈浸琛砧針鍼蟄秤稱快他咤唾墮妥惰打拖朶楕舵陀馱駝倬卓啄坼度托拓擢晫柝濁濯琢琸託"],["f7a1","鐸呑嘆坦彈憚歎灘炭綻誕奪脫探眈耽貪塔搭榻宕帑湯糖蕩兌台太怠態殆汰泰笞胎苔跆邰颱宅擇澤撑攄兎吐土討慟桶洞痛筒統通堆槌腿褪退頹偸套妬投透鬪慝特闖坡婆巴把播擺杷波派爬琶破罷芭跛頗判坂板版瓣販辦鈑"],["f8a1","阪八叭捌佩唄悖敗沛浿牌狽稗覇貝彭澎烹膨愎便偏扁片篇編翩遍鞭騙貶坪平枰萍評吠嬖幣廢弊斃肺蔽閉陛佈包匍匏咆哺圃布怖抛抱捕暴泡浦疱砲胞脯苞葡蒲袍褒逋鋪飽鮑幅暴曝瀑爆輻俵剽彪慓杓標漂瓢票表豹飇飄驃"],["f9a1","品稟楓諷豊風馮彼披疲皮被避陂匹弼必泌珌畢疋筆苾馝乏逼下何厦夏廈昰河瑕荷蝦賀遐霞鰕壑學虐謔鶴寒恨悍旱汗漢澣瀚罕翰閑閒限韓割轄函含咸啣喊檻涵緘艦銜陷鹹合哈盒蛤閤闔陜亢伉姮嫦巷恒抗杭桁沆港缸肛航"],["faa1","行降項亥偕咳垓奚孩害懈楷海瀣蟹解該諧邂駭骸劾核倖幸杏荇行享向嚮珦鄕響餉饗香噓墟虛許憲櫶獻軒歇險驗奕爀赫革俔峴弦懸晛泫炫玄玹現眩睍絃絢縣舷衒見賢鉉顯孑穴血頁嫌俠協夾峽挾浹狹脅脇莢鋏頰亨兄刑型"],["fba1","形泂滎瀅灐炯熒珩瑩荊螢衡逈邢鎣馨兮彗惠慧暳蕙蹊醯鞋乎互呼壕壺好岵弧戶扈昊晧毫浩淏湖滸澔濠濩灝狐琥瑚瓠皓祜糊縞胡芦葫蒿虎號蝴護豪鎬頀顥惑或酷婚昏混渾琿魂忽惚笏哄弘汞泓洪烘紅虹訌鴻化和嬅樺火畵"],["fca1","禍禾花華話譁貨靴廓擴攫確碻穫丸喚奐宦幻患換歡晥桓渙煥環紈還驩鰥活滑猾豁闊凰幌徨恍惶愰慌晃晄榥況湟滉潢煌璜皇篁簧荒蝗遑隍黃匯回廻徊恢悔懷晦會檜淮澮灰獪繪膾茴蛔誨賄劃獲宖橫鐄哮嚆孝效斅曉梟涍淆"],["fda1","爻肴酵驍侯候厚后吼喉嗅帿後朽煦珝逅勛勳塤壎焄熏燻薰訓暈薨喧暄煊萱卉喙毁彙徽揮暉煇諱輝麾休携烋畦虧恤譎鷸兇凶匈洶胸黑昕欣炘痕吃屹紇訖欠欽歆吸恰洽翕興僖凞喜噫囍姬嬉希憙憘戱晞曦熙熹熺犧禧稀羲詰"]]' + ); + }, + 73691: (e) => { + 'use strict'; + e.exports = JSON.parse( + '[["0","\\u0000",127],["a140"," ,、。.‧;:?!︰…‥﹐﹑﹒·﹔﹕﹖﹗|–︱—︳╴︴﹏()︵︶{}︷︸〔〕︹︺【】︻︼《》︽︾〈〉︿﹀「」﹁﹂『』﹃﹄﹙﹚"],["a1a1","﹛﹜﹝﹞‘’“”〝〞‵′#&*※§〃○●△▲◎☆★◇◆□■▽▼㊣℅¯ ̄_ˍ﹉﹊﹍﹎﹋﹌﹟﹠﹡+-×÷±√<>=≦≧≠∞≒≡﹢",4,"~∩∪⊥∠∟⊿㏒㏑∫∮∵∴♀♂⊕⊙↑↓←→↖↗↙↘∥∣/"],["a240","\∕﹨$¥〒¢£%@℃℉﹩﹪﹫㏕㎜㎝㎞㏎㎡㎎㎏㏄°兙兛兞兝兡兣嗧瓩糎▁",7,"▏▎▍▌▋▊▉┼┴┬┤├▔─│▕┌┐└┘╭"],["a2a1","╮╰╯═╞╪╡◢◣◥◤╱╲╳0",9,"Ⅰ",9,"〡",8,"十卄卅A",25,"a",21],["a340","wxyzΑ",16,"Σ",6,"α",16,"σ",6,"ㄅ",10],["a3a1","ㄐ",25,"˙ˉˊˇˋ"],["a3e1","€"],["a440","一乙丁七乃九了二人儿入八几刀刁力匕十卜又三下丈上丫丸凡久么也乞于亡兀刃勺千叉口土士夕大女子孑孓寸小尢尸山川工己已巳巾干廾弋弓才"],["a4a1","丑丐不中丰丹之尹予云井互五亢仁什仃仆仇仍今介仄元允內六兮公冗凶分切刈勻勾勿化匹午升卅卞厄友及反壬天夫太夭孔少尤尺屯巴幻廿弔引心戈戶手扎支文斗斤方日曰月木欠止歹毋比毛氏水火爪父爻片牙牛犬王丙"],["a540","世丕且丘主乍乏乎以付仔仕他仗代令仙仞充兄冉冊冬凹出凸刊加功包匆北匝仟半卉卡占卯卮去可古右召叮叩叨叼司叵叫另只史叱台句叭叻四囚外"],["a5a1","央失奴奶孕它尼巨巧左市布平幼弁弘弗必戊打扔扒扑斥旦朮本未末札正母民氐永汁汀氾犯玄玉瓜瓦甘生用甩田由甲申疋白皮皿目矛矢石示禾穴立丞丟乒乓乩亙交亦亥仿伉伙伊伕伍伐休伏仲件任仰仳份企伋光兇兆先全"],["a640","共再冰列刑划刎刖劣匈匡匠印危吉吏同吊吐吁吋各向名合吃后吆吒因回囝圳地在圭圬圯圩夙多夷夸妄奸妃好她如妁字存宇守宅安寺尖屹州帆并年"],["a6a1","式弛忙忖戎戌戍成扣扛托收早旨旬旭曲曳有朽朴朱朵次此死氖汝汗汙江池汐汕污汛汍汎灰牟牝百竹米糸缶羊羽老考而耒耳聿肉肋肌臣自至臼舌舛舟艮色艾虫血行衣西阡串亨位住佇佗佞伴佛何估佐佑伽伺伸佃佔似但佣"],["a740","作你伯低伶余佝佈佚兌克免兵冶冷別判利刪刨劫助努劬匣即卵吝吭吞吾否呎吧呆呃吳呈呂君吩告吹吻吸吮吵吶吠吼呀吱含吟听囪困囤囫坊坑址坍"],["a7a1","均坎圾坐坏圻壯夾妝妒妨妞妣妙妖妍妤妓妊妥孝孜孚孛完宋宏尬局屁尿尾岐岑岔岌巫希序庇床廷弄弟彤形彷役忘忌志忍忱快忸忪戒我抄抗抖技扶抉扭把扼找批扳抒扯折扮投抓抑抆改攻攸旱更束李杏材村杜杖杞杉杆杠"],["a840","杓杗步每求汞沙沁沈沉沅沛汪決沐汰沌汨沖沒汽沃汲汾汴沆汶沍沔沘沂灶灼災灸牢牡牠狄狂玖甬甫男甸皂盯矣私秀禿究系罕肖肓肝肘肛肚育良芒"],["a8a1","芋芍見角言谷豆豕貝赤走足身車辛辰迂迆迅迄巡邑邢邪邦那酉釆里防阮阱阪阬並乖乳事些亞享京佯依侍佳使佬供例來侃佰併侈佩佻侖佾侏侑佺兔兒兕兩具其典冽函刻券刷刺到刮制剁劾劻卒協卓卑卦卷卸卹取叔受味呵"],["a940","咖呸咕咀呻呷咄咒咆呼咐呱呶和咚呢周咋命咎固垃坷坪坩坡坦坤坼夜奉奇奈奄奔妾妻委妹妮姑姆姐姍始姓姊妯妳姒姅孟孤季宗定官宜宙宛尚屈居"],["a9a1","屆岷岡岸岩岫岱岳帘帚帖帕帛帑幸庚店府底庖延弦弧弩往征彿彼忝忠忽念忿怏怔怯怵怖怪怕怡性怩怫怛或戕房戾所承拉拌拄抿拂抹拒招披拓拔拋拈抨抽押拐拙拇拍抵拚抱拘拖拗拆抬拎放斧於旺昔易昌昆昂明昀昏昕昊"],["aa40","昇服朋杭枋枕東果杳杷枇枝林杯杰板枉松析杵枚枓杼杪杲欣武歧歿氓氛泣注泳沱泌泥河沽沾沼波沫法泓沸泄油況沮泗泅泱沿治泡泛泊沬泯泜泖泠"],["aaa1","炕炎炒炊炙爬爭爸版牧物狀狎狙狗狐玩玨玟玫玥甽疝疙疚的盂盲直知矽社祀祁秉秈空穹竺糾罔羌羋者肺肥肢肱股肫肩肴肪肯臥臾舍芳芝芙芭芽芟芹花芬芥芯芸芣芰芾芷虎虱初表軋迎返近邵邸邱邶采金長門阜陀阿阻附"],["ab40","陂隹雨青非亟亭亮信侵侯便俠俑俏保促侶俘俟俊俗侮俐俄係俚俎俞侷兗冒冑冠剎剃削前剌剋則勇勉勃勁匍南卻厚叛咬哀咨哎哉咸咦咳哇哂咽咪品"],["aba1","哄哈咯咫咱咻咩咧咿囿垂型垠垣垢城垮垓奕契奏奎奐姜姘姿姣姨娃姥姪姚姦威姻孩宣宦室客宥封屎屏屍屋峙峒巷帝帥帟幽庠度建弈弭彥很待徊律徇後徉怒思怠急怎怨恍恰恨恢恆恃恬恫恪恤扁拜挖按拼拭持拮拽指拱拷"],["ac40","拯括拾拴挑挂政故斫施既春昭映昧是星昨昱昤曷柿染柱柔某柬架枯柵柩柯柄柑枴柚查枸柏柞柳枰柙柢柝柒歪殃殆段毒毗氟泉洋洲洪流津洌洱洞洗"],["aca1","活洽派洶洛泵洹洧洸洩洮洵洎洫炫為炳炬炯炭炸炮炤爰牲牯牴狩狠狡玷珊玻玲珍珀玳甚甭畏界畎畋疫疤疥疢疣癸皆皇皈盈盆盃盅省盹相眉看盾盼眇矜砂研砌砍祆祉祈祇禹禺科秒秋穿突竿竽籽紂紅紀紉紇約紆缸美羿耄"],["ad40","耐耍耑耶胖胥胚胃胄背胡胛胎胞胤胝致舢苧范茅苣苛苦茄若茂茉苒苗英茁苜苔苑苞苓苟苯茆虐虹虻虺衍衫要觔計訂訃貞負赴赳趴軍軌述迦迢迪迥"],["ada1","迭迫迤迨郊郎郁郃酋酊重閂限陋陌降面革韋韭音頁風飛食首香乘亳倌倍倣俯倦倥俸倩倖倆值借倚倒們俺倀倔倨俱倡個候倘俳修倭倪俾倫倉兼冤冥冢凍凌准凋剖剜剔剛剝匪卿原厝叟哨唐唁唷哼哥哲唆哺唔哩哭員唉哮哪"],["ae40","哦唧唇哽唏圃圄埂埔埋埃堉夏套奘奚娑娘娜娟娛娓姬娠娣娩娥娌娉孫屘宰害家宴宮宵容宸射屑展屐峭峽峻峪峨峰島崁峴差席師庫庭座弱徒徑徐恙"],["aea1","恣恥恐恕恭恩息悄悟悚悍悔悌悅悖扇拳挈拿捎挾振捕捂捆捏捉挺捐挽挪挫挨捍捌效敉料旁旅時晉晏晃晒晌晅晁書朔朕朗校核案框桓根桂桔栩梳栗桌桑栽柴桐桀格桃株桅栓栘桁殊殉殷氣氧氨氦氤泰浪涕消涇浦浸海浙涓"],["af40","浬涉浮浚浴浩涌涊浹涅浥涔烊烘烤烙烈烏爹特狼狹狽狸狷玆班琉珮珠珪珞畔畝畜畚留疾病症疲疳疽疼疹痂疸皋皰益盍盎眩真眠眨矩砰砧砸砝破砷"],["afa1","砥砭砠砟砲祕祐祠祟祖神祝祗祚秤秣秧租秦秩秘窄窈站笆笑粉紡紗紋紊素索純紐紕級紜納紙紛缺罟羔翅翁耆耘耕耙耗耽耿胱脂胰脅胭胴脆胸胳脈能脊胼胯臭臬舀舐航舫舨般芻茫荒荔荊茸荐草茵茴荏茲茹茶茗荀茱茨荃"],["b040","虔蚊蚪蚓蚤蚩蚌蚣蚜衰衷袁袂衽衹記訐討訌訕訊託訓訖訏訑豈豺豹財貢起躬軒軔軏辱送逆迷退迺迴逃追逅迸邕郡郝郢酒配酌釘針釗釜釙閃院陣陡"],["b0a1","陛陝除陘陞隻飢馬骨高鬥鬲鬼乾偺偽停假偃偌做偉健偶偎偕偵側偷偏倏偯偭兜冕凰剪副勒務勘動匐匏匙匿區匾參曼商啪啦啄啞啡啃啊唱啖問啕唯啤唸售啜唬啣唳啁啗圈國圉域堅堊堆埠埤基堂堵執培夠奢娶婁婉婦婪婀"],["b140","娼婢婚婆婊孰寇寅寄寂宿密尉專將屠屜屝崇崆崎崛崖崢崑崩崔崙崤崧崗巢常帶帳帷康庸庶庵庾張強彗彬彩彫得徙從徘御徠徜恿患悉悠您惋悴惦悽"],["b1a1","情悻悵惜悼惘惕惆惟悸惚惇戚戛扈掠控捲掖探接捷捧掘措捱掩掉掃掛捫推掄授掙採掬排掏掀捻捩捨捺敝敖救教敗啟敏敘敕敔斜斛斬族旋旌旎晝晚晤晨晦晞曹勗望梁梯梢梓梵桿桶梱梧梗械梃棄梭梆梅梔條梨梟梡梂欲殺"],["b240","毫毬氫涎涼淳淙液淡淌淤添淺清淇淋涯淑涮淞淹涸混淵淅淒渚涵淚淫淘淪深淮淨淆淄涪淬涿淦烹焉焊烽烯爽牽犁猜猛猖猓猙率琅琊球理現琍瓠瓶"],["b2a1","瓷甜產略畦畢異疏痔痕疵痊痍皎盔盒盛眷眾眼眶眸眺硫硃硎祥票祭移窒窕笠笨笛第符笙笞笮粒粗粕絆絃統紮紹紼絀細紳組累終紲紱缽羞羚翌翎習耜聊聆脯脖脣脫脩脰脤舂舵舷舶船莎莞莘荸莢莖莽莫莒莊莓莉莠荷荻荼"],["b340","莆莧處彪蛇蛀蚶蛄蚵蛆蛋蚱蚯蛉術袞袈被袒袖袍袋覓規訪訝訣訥許設訟訛訢豉豚販責貫貨貪貧赧赦趾趺軛軟這逍通逗連速逝逐逕逞造透逢逖逛途"],["b3a1","部郭都酗野釵釦釣釧釭釩閉陪陵陳陸陰陴陶陷陬雀雪雩章竟頂頃魚鳥鹵鹿麥麻傢傍傅備傑傀傖傘傚最凱割剴創剩勞勝勛博厥啻喀喧啼喊喝喘喂喜喪喔喇喋喃喳單喟唾喲喚喻喬喱啾喉喫喙圍堯堪場堤堰報堡堝堠壹壺奠"],["b440","婷媚婿媒媛媧孳孱寒富寓寐尊尋就嵌嵐崴嵇巽幅帽幀幃幾廊廁廂廄弼彭復循徨惑惡悲悶惠愜愣惺愕惰惻惴慨惱愎惶愉愀愒戟扉掣掌描揀揩揉揆揍"],["b4a1","插揣提握揖揭揮捶援揪換摒揚揹敞敦敢散斑斐斯普晰晴晶景暑智晾晷曾替期朝棺棕棠棘棗椅棟棵森棧棹棒棲棣棋棍植椒椎棉棚楮棻款欺欽殘殖殼毯氮氯氬港游湔渡渲湧湊渠渥渣減湛湘渤湖湮渭渦湯渴湍渺測湃渝渾滋"],["b540","溉渙湎湣湄湲湩湟焙焚焦焰無然煮焜牌犄犀猶猥猴猩琺琪琳琢琥琵琶琴琯琛琦琨甥甦畫番痢痛痣痙痘痞痠登發皖皓皴盜睏短硝硬硯稍稈程稅稀窘"],["b5a1","窗窖童竣等策筆筐筒答筍筋筏筑粟粥絞結絨絕紫絮絲絡給絢絰絳善翔翕耋聒肅腕腔腋腑腎脹腆脾腌腓腴舒舜菩萃菸萍菠菅萋菁華菱菴著萊菰萌菌菽菲菊萸萎萄菜萇菔菟虛蛟蛙蛭蛔蛛蛤蛐蛞街裁裂袱覃視註詠評詞証詁"],["b640","詔詛詐詆訴診訶詖象貂貯貼貳貽賁費賀貴買貶貿貸越超趁跎距跋跚跑跌跛跆軻軸軼辜逮逵週逸進逶鄂郵鄉郾酣酥量鈔鈕鈣鈉鈞鈍鈐鈇鈑閔閏開閑"],["b6a1","間閒閎隊階隋陽隅隆隍陲隄雁雅雄集雇雯雲韌項順須飧飪飯飩飲飭馮馭黃黍黑亂傭債傲傳僅傾催傷傻傯僇剿剷剽募勦勤勢勣匯嗟嗨嗓嗦嗎嗜嗇嗑嗣嗤嗯嗚嗡嗅嗆嗥嗉園圓塞塑塘塗塚塔填塌塭塊塢塒塋奧嫁嫉嫌媾媽媼"],["b740","媳嫂媲嵩嵯幌幹廉廈弒彙徬微愚意慈感想愛惹愁愈慎慌慄慍愾愴愧愍愆愷戡戢搓搾搞搪搭搽搬搏搜搔損搶搖搗搆敬斟新暗暉暇暈暖暄暘暍會榔業"],["b7a1","楚楷楠楔極椰概楊楨楫楞楓楹榆楝楣楛歇歲毀殿毓毽溢溯滓溶滂源溝滇滅溥溘溼溺溫滑準溜滄滔溪溧溴煎煙煩煤煉照煜煬煦煌煥煞煆煨煖爺牒猷獅猿猾瑯瑚瑕瑟瑞瑁琿瑙瑛瑜當畸瘀痰瘁痲痱痺痿痴痳盞盟睛睫睦睞督"],["b840","睹睪睬睜睥睨睢矮碎碰碗碘碌碉硼碑碓硿祺祿禁萬禽稜稚稠稔稟稞窟窠筷節筠筮筧粱粳粵經絹綑綁綏絛置罩罪署義羨群聖聘肆肄腱腰腸腥腮腳腫"],["b8a1","腹腺腦舅艇蒂葷落萱葵葦葫葉葬葛萼萵葡董葩葭葆虞虜號蛹蜓蜈蜇蜀蛾蛻蜂蜃蜆蜊衙裟裔裙補裘裝裡裊裕裒覜解詫該詳試詩詰誇詼詣誠話誅詭詢詮詬詹詻訾詨豢貊貉賊資賈賄貲賃賂賅跡跟跨路跳跺跪跤跦躲較載軾輊"],["b940","辟農運遊道遂達逼違遐遇遏過遍遑逾遁鄒鄗酬酪酩釉鈷鉗鈸鈽鉀鈾鉛鉋鉤鉑鈴鉉鉍鉅鈹鈿鉚閘隘隔隕雍雋雉雊雷電雹零靖靴靶預頑頓頊頒頌飼飴"],["b9a1","飽飾馳馱馴髡鳩麂鼎鼓鼠僧僮僥僖僭僚僕像僑僱僎僩兢凳劃劂匱厭嗾嘀嘛嘗嗽嘔嘆嘉嘍嘎嗷嘖嘟嘈嘐嗶團圖塵塾境墓墊塹墅塽壽夥夢夤奪奩嫡嫦嫩嫗嫖嫘嫣孵寞寧寡寥實寨寢寤察對屢嶄嶇幛幣幕幗幔廓廖弊彆彰徹慇"],["ba40","愿態慷慢慣慟慚慘慵截撇摘摔撤摸摟摺摑摧搴摭摻敲斡旗旖暢暨暝榜榨榕槁榮槓構榛榷榻榫榴槐槍榭槌榦槃榣歉歌氳漳演滾漓滴漩漾漠漬漏漂漢"],["baa1","滿滯漆漱漸漲漣漕漫漯澈漪滬漁滲滌滷熔熙煽熊熄熒爾犒犖獄獐瑤瑣瑪瑰瑭甄疑瘧瘍瘋瘉瘓盡監瞄睽睿睡磁碟碧碳碩碣禎福禍種稱窪窩竭端管箕箋筵算箝箔箏箸箇箄粹粽精綻綰綜綽綾綠緊綴網綱綺綢綿綵綸維緒緇綬"],["bb40","罰翠翡翟聞聚肇腐膀膏膈膊腿膂臧臺與舔舞艋蓉蒿蓆蓄蒙蒞蒲蒜蓋蒸蓀蓓蒐蒼蓑蓊蜿蜜蜻蜢蜥蜴蜘蝕蜷蜩裳褂裴裹裸製裨褚裯誦誌語誣認誡誓誤"],["bba1","說誥誨誘誑誚誧豪貍貌賓賑賒赫趙趕跼輔輒輕輓辣遠遘遜遣遙遞遢遝遛鄙鄘鄞酵酸酷酴鉸銀銅銘銖鉻銓銜銨鉼銑閡閨閩閣閥閤隙障際雌雒需靼鞅韶頗領颯颱餃餅餌餉駁骯骰髦魁魂鳴鳶鳳麼鼻齊億儀僻僵價儂儈儉儅凜"],["bc40","劇劈劉劍劊勰厲嘮嘻嘹嘲嘿嘴嘩噓噎噗噴嘶嘯嘰墀墟增墳墜墮墩墦奭嬉嫻嬋嫵嬌嬈寮寬審寫層履嶝嶔幢幟幡廢廚廟廝廣廠彈影德徵慶慧慮慝慕憂"],["bca1","慼慰慫慾憧憐憫憎憬憚憤憔憮戮摩摯摹撞撲撈撐撰撥撓撕撩撒撮播撫撚撬撙撢撳敵敷數暮暫暴暱樣樟槨樁樞標槽模樓樊槳樂樅槭樑歐歎殤毅毆漿潼澄潑潦潔澆潭潛潸潮澎潺潰潤澗潘滕潯潠潟熟熬熱熨牖犛獎獗瑩璋璃"],["bd40","瑾璀畿瘠瘩瘟瘤瘦瘡瘢皚皺盤瞎瞇瞌瞑瞋磋磅確磊碾磕碼磐稿稼穀稽稷稻窯窮箭箱範箴篆篇篁箠篌糊締練緯緻緘緬緝編緣線緞緩綞緙緲緹罵罷羯"],["bda1","翩耦膛膜膝膠膚膘蔗蔽蔚蓮蔬蔭蔓蔑蔣蔡蔔蓬蔥蓿蔆螂蝴蝶蝠蝦蝸蝨蝙蝗蝌蝓衛衝褐複褒褓褕褊誼諒談諄誕請諸課諉諂調誰論諍誶誹諛豌豎豬賠賞賦賤賬賭賢賣賜質賡赭趟趣踫踐踝踢踏踩踟踡踞躺輝輛輟輩輦輪輜輞"],["be40","輥適遮遨遭遷鄰鄭鄧鄱醇醉醋醃鋅銻銷鋪銬鋤鋁銳銼鋒鋇鋰銲閭閱霄霆震霉靠鞍鞋鞏頡頫頜颳養餓餒餘駝駐駟駛駑駕駒駙骷髮髯鬧魅魄魷魯鴆鴉"],["bea1","鴃麩麾黎墨齒儒儘儔儐儕冀冪凝劑劓勳噙噫噹噩噤噸噪器噥噱噯噬噢噶壁墾壇壅奮嬝嬴學寰導彊憲憑憩憊懍憶憾懊懈戰擅擁擋撻撼據擄擇擂操撿擒擔撾整曆曉暹曄曇暸樽樸樺橙橫橘樹橄橢橡橋橇樵機橈歙歷氅濂澱澡"],["bf40","濃澤濁澧澳激澹澶澦澠澴熾燉燐燒燈燕熹燎燙燜燃燄獨璜璣璘璟璞瓢甌甍瘴瘸瘺盧盥瞠瞞瞟瞥磨磚磬磧禦積穎穆穌穋窺篙簑築篤篛篡篩篦糕糖縊"],["bfa1","縑縈縛縣縞縝縉縐罹羲翰翱翮耨膳膩膨臻興艘艙蕊蕙蕈蕨蕩蕃蕉蕭蕪蕞螃螟螞螢融衡褪褲褥褫褡親覦諦諺諫諱謀諜諧諮諾謁謂諷諭諳諶諼豫豭貓賴蹄踱踴蹂踹踵輻輯輸輳辨辦遵遴選遲遼遺鄴醒錠錶鋸錳錯錢鋼錫錄錚"],["c040","錐錦錡錕錮錙閻隧隨險雕霎霑霖霍霓霏靛靜靦鞘頰頸頻頷頭頹頤餐館餞餛餡餚駭駢駱骸骼髻髭鬨鮑鴕鴣鴦鴨鴒鴛默黔龍龜優償儡儲勵嚎嚀嚐嚅嚇"],["c0a1","嚏壕壓壑壎嬰嬪嬤孺尷屨嶼嶺嶽嶸幫彌徽應懂懇懦懋戲戴擎擊擘擠擰擦擬擱擢擭斂斃曙曖檀檔檄檢檜櫛檣橾檗檐檠歜殮毚氈濘濱濟濠濛濤濫濯澀濬濡濩濕濮濰燧營燮燦燥燭燬燴燠爵牆獰獲璩環璦璨癆療癌盪瞳瞪瞰瞬"],["c140","瞧瞭矯磷磺磴磯礁禧禪穗窿簇簍篾篷簌篠糠糜糞糢糟糙糝縮績繆縷縲繃縫總縱繅繁縴縹繈縵縿縯罄翳翼聱聲聰聯聳臆臃膺臂臀膿膽臉膾臨舉艱薪"],["c1a1","薄蕾薜薑薔薯薛薇薨薊虧蟀蟑螳蟒蟆螫螻螺蟈蟋褻褶襄褸褽覬謎謗謙講謊謠謝謄謐豁谿豳賺賽購賸賻趨蹉蹋蹈蹊轄輾轂轅輿避遽還邁邂邀鄹醣醞醜鍍鎂錨鍵鍊鍥鍋錘鍾鍬鍛鍰鍚鍔闊闋闌闈闆隱隸雖霜霞鞠韓顆颶餵騁"],["c240","駿鮮鮫鮪鮭鴻鴿麋黏點黜黝黛鼾齋叢嚕嚮壙壘嬸彝懣戳擴擲擾攆擺擻擷斷曜朦檳檬櫃檻檸櫂檮檯歟歸殯瀉瀋濾瀆濺瀑瀏燻燼燾燸獷獵璧璿甕癖癘"],["c2a1","癒瞽瞿瞻瞼礎禮穡穢穠竄竅簫簧簪簞簣簡糧織繕繞繚繡繒繙罈翹翻職聶臍臏舊藏薩藍藐藉薰薺薹薦蟯蟬蟲蟠覆覲觴謨謹謬謫豐贅蹙蹣蹦蹤蹟蹕軀轉轍邇邃邈醫醬釐鎔鎊鎖鎢鎳鎮鎬鎰鎘鎚鎗闔闖闐闕離雜雙雛雞霤鞣鞦"],["c340","鞭韹額顏題顎顓颺餾餿餽餮馥騎髁鬃鬆魏魎魍鯊鯉鯽鯈鯀鵑鵝鵠黠鼕鼬儳嚥壞壟壢寵龐廬懲懷懶懵攀攏曠曝櫥櫝櫚櫓瀛瀟瀨瀚瀝瀕瀘爆爍牘犢獸"],["c3a1","獺璽瓊瓣疇疆癟癡矇礙禱穫穩簾簿簸簽簷籀繫繭繹繩繪羅繳羶羹羸臘藩藝藪藕藤藥藷蟻蠅蠍蟹蟾襠襟襖襞譁譜識證譚譎譏譆譙贈贊蹼蹲躇蹶蹬蹺蹴轔轎辭邊邋醱醮鏡鏑鏟鏃鏈鏜鏝鏖鏢鏍鏘鏤鏗鏨關隴難霪霧靡韜韻類"],["c440","願顛颼饅饉騖騙鬍鯨鯧鯖鯛鶉鵡鵲鵪鵬麒麗麓麴勸嚨嚷嚶嚴嚼壤孀孃孽寶巉懸懺攘攔攙曦朧櫬瀾瀰瀲爐獻瓏癢癥礦礪礬礫竇競籌籃籍糯糰辮繽繼"],["c4a1","纂罌耀臚艦藻藹蘑藺蘆蘋蘇蘊蠔蠕襤覺觸議譬警譯譟譫贏贍躉躁躅躂醴釋鐘鐃鏽闡霰飄饒饑馨騫騰騷騵鰓鰍鹹麵黨鼯齟齣齡儷儸囁囀囂夔屬巍懼懾攝攜斕曩櫻欄櫺殲灌爛犧瓖瓔癩矓籐纏續羼蘗蘭蘚蠣蠢蠡蠟襪襬覽譴"],["c540","護譽贓躊躍躋轟辯醺鐮鐳鐵鐺鐸鐲鐫闢霸霹露響顧顥饗驅驃驀騾髏魔魑鰭鰥鶯鶴鷂鶸麝黯鼙齜齦齧儼儻囈囊囉孿巔巒彎懿攤權歡灑灘玀瓤疊癮癬"],["c5a1","禳籠籟聾聽臟襲襯觼讀贖贗躑躓轡酈鑄鑑鑒霽霾韃韁顫饕驕驍髒鬚鱉鰱鰾鰻鷓鷗鼴齬齪龔囌巖戀攣攫攪曬欐瓚竊籤籣籥纓纖纔臢蘸蘿蠱變邐邏鑣鑠鑤靨顯饜驚驛驗髓體髑鱔鱗鱖鷥麟黴囑壩攬灞癱癲矗罐羈蠶蠹衢讓讒"],["c640","讖艷贛釀鑪靂靈靄韆顰驟鬢魘鱟鷹鷺鹼鹽鼇齷齲廳欖灣籬籮蠻觀躡釁鑲鑰顱饞髖鬣黌灤矚讚鑷韉驢驥纜讜躪釅鑽鑾鑼鱷鱸黷豔鑿鸚爨驪鬱鸛鸞籲"],["c940","乂乜凵匚厂万丌乇亍囗兀屮彳丏冇与丮亓仂仉仈冘勼卬厹圠夃夬尐巿旡殳毌气爿丱丼仨仜仩仡仝仚刌匜卌圢圣夗夯宁宄尒尻屴屳帄庀庂忉戉扐氕"],["c9a1","氶汃氿氻犮犰玊禸肊阞伎优伬仵伔仱伀价伈伝伂伅伢伓伄仴伒冱刓刉刐劦匢匟卍厊吇囡囟圮圪圴夼妀奼妅奻奾奷奿孖尕尥屼屺屻屾巟幵庄异弚彴忕忔忏扜扞扤扡扦扢扙扠扚扥旯旮朾朹朸朻机朿朼朳氘汆汒汜汏汊汔汋"],["ca40","汌灱牞犴犵玎甪癿穵网艸艼芀艽艿虍襾邙邗邘邛邔阢阤阠阣佖伻佢佉体佤伾佧佒佟佁佘伭伳伿佡冏冹刜刞刡劭劮匉卣卲厎厏吰吷吪呔呅吙吜吥吘"],["caa1","吽呏呁吨吤呇囮囧囥坁坅坌坉坋坒夆奀妦妘妠妗妎妢妐妏妧妡宎宒尨尪岍岏岈岋岉岒岊岆岓岕巠帊帎庋庉庌庈庍弅弝彸彶忒忑忐忭忨忮忳忡忤忣忺忯忷忻怀忴戺抃抌抎抏抔抇扱扻扺扰抁抈扷扽扲扴攷旰旴旳旲旵杅杇"],["cb40","杙杕杌杈杝杍杚杋毐氙氚汸汧汫沄沋沏汱汯汩沚汭沇沕沜汦汳汥汻沎灴灺牣犿犽狃狆狁犺狅玕玗玓玔玒町甹疔疕皁礽耴肕肙肐肒肜芐芏芅芎芑芓"],["cba1","芊芃芄豸迉辿邟邡邥邞邧邠阰阨阯阭丳侘佼侅佽侀侇佶佴侉侄佷佌侗佪侚佹侁佸侐侜侔侞侒侂侕佫佮冞冼冾刵刲刳剆刱劼匊匋匼厒厔咇呿咁咑咂咈呫呺呾呥呬呴呦咍呯呡呠咘呣呧呤囷囹坯坲坭坫坱坰坶垀坵坻坳坴坢"],["cc40","坨坽夌奅妵妺姏姎妲姌姁妶妼姃姖妱妽姀姈妴姇孢孥宓宕屄屇岮岤岠岵岯岨岬岟岣岭岢岪岧岝岥岶岰岦帗帔帙弨弢弣弤彔徂彾彽忞忥怭怦怙怲怋"],["cca1","怴怊怗怳怚怞怬怢怍怐怮怓怑怌怉怜戔戽抭抴拑抾抪抶拊抮抳抯抻抩抰抸攽斨斻昉旼昄昒昈旻昃昋昍昅旽昑昐曶朊枅杬枎枒杶杻枘枆构杴枍枌杺枟枑枙枃杽极杸杹枔欥殀歾毞氝沓泬泫泮泙沶泔沭泧沷泐泂沺泃泆泭泲"],["cd40","泒泝沴沊沝沀泞泀洰泍泇沰泹泏泩泑炔炘炅炓炆炄炑炖炂炚炃牪狖狋狘狉狜狒狔狚狌狑玤玡玭玦玢玠玬玝瓝瓨甿畀甾疌疘皯盳盱盰盵矸矼矹矻矺"],["cda1","矷祂礿秅穸穻竻籵糽耵肏肮肣肸肵肭舠芠苀芫芚芘芛芵芧芮芼芞芺芴芨芡芩苂芤苃芶芢虰虯虭虮豖迒迋迓迍迖迕迗邲邴邯邳邰阹阽阼阺陃俍俅俓侲俉俋俁俔俜俙侻侳俛俇俖侺俀侹俬剄剉勀勂匽卼厗厖厙厘咺咡咭咥哏"],["ce40","哃茍咷咮哖咶哅哆咠呰咼咢咾呲哞咰垵垞垟垤垌垗垝垛垔垘垏垙垥垚垕壴复奓姡姞姮娀姱姝姺姽姼姶姤姲姷姛姩姳姵姠姾姴姭宨屌峐峘峌峗峋峛"],["cea1","峞峚峉峇峊峖峓峔峏峈峆峎峟峸巹帡帢帣帠帤庰庤庢庛庣庥弇弮彖徆怷怹恔恲恞恅恓恇恉恛恌恀恂恟怤恄恘恦恮扂扃拏挍挋拵挎挃拫拹挏挌拸拶挀挓挔拺挕拻拰敁敃斪斿昶昡昲昵昜昦昢昳昫昺昝昴昹昮朏朐柁柲柈枺"],["cf40","柜枻柸柘柀枷柅柫柤柟枵柍枳柷柶柮柣柂枹柎柧柰枲柼柆柭柌枮柦柛柺柉柊柃柪柋欨殂殄殶毖毘毠氠氡洨洴洭洟洼洿洒洊泚洳洄洙洺洚洑洀洝浂"],["cfa1","洁洘洷洃洏浀洇洠洬洈洢洉洐炷炟炾炱炰炡炴炵炩牁牉牊牬牰牳牮狊狤狨狫狟狪狦狣玅珌珂珈珅玹玶玵玴珫玿珇玾珃珆玸珋瓬瓮甮畇畈疧疪癹盄眈眃眄眅眊盷盻盺矧矨砆砑砒砅砐砏砎砉砃砓祊祌祋祅祄秕种秏秖秎窀"],["d040","穾竑笀笁籺籸籹籿粀粁紃紈紁罘羑羍羾耇耎耏耔耷胘胇胠胑胈胂胐胅胣胙胜胊胕胉胏胗胦胍臿舡芔苙苾苹茇苨茀苕茺苫苖苴苬苡苲苵茌苻苶苰苪"],["d0a1","苤苠苺苳苭虷虴虼虳衁衎衧衪衩觓訄訇赲迣迡迮迠郱邽邿郕郅邾郇郋郈釔釓陔陏陑陓陊陎倞倅倇倓倢倰倛俵俴倳倷倬俶俷倗倜倠倧倵倯倱倎党冔冓凊凄凅凈凎剡剚剒剞剟剕剢勍匎厞唦哢唗唒哧哳哤唚哿唄唈哫唑唅哱"],["d140","唊哻哷哸哠唎唃唋圁圂埌堲埕埒垺埆垽垼垸垶垿埇埐垹埁夎奊娙娖娭娮娕娏娗娊娞娳孬宧宭宬尃屖屔峬峿峮峱峷崀峹帩帨庨庮庪庬弳弰彧恝恚恧"],["d1a1","恁悢悈悀悒悁悝悃悕悛悗悇悜悎戙扆拲挐捖挬捄捅挶捃揤挹捋捊挼挩捁挴捘捔捙挭捇挳捚捑挸捗捀捈敊敆旆旃旄旂晊晟晇晑朒朓栟栚桉栲栳栻桋桏栖栱栜栵栫栭栯桎桄栴栝栒栔栦栨栮桍栺栥栠欬欯欭欱欴歭肂殈毦毤"],["d240","毨毣毢毧氥浺浣浤浶洍浡涒浘浢浭浯涑涍淯浿涆浞浧浠涗浰浼浟涂涘洯浨涋浾涀涄洖涃浻浽浵涐烜烓烑烝烋缹烢烗烒烞烠烔烍烅烆烇烚烎烡牂牸"],["d2a1","牷牶猀狺狴狾狶狳狻猁珓珙珥珖玼珧珣珩珜珒珛珔珝珚珗珘珨瓞瓟瓴瓵甡畛畟疰痁疻痄痀疿疶疺皊盉眝眛眐眓眒眣眑眕眙眚眢眧砣砬砢砵砯砨砮砫砡砩砳砪砱祔祛祏祜祓祒祑秫秬秠秮秭秪秜秞秝窆窉窅窋窌窊窇竘笐"],["d340","笄笓笅笏笈笊笎笉笒粄粑粊粌粈粍粅紞紝紑紎紘紖紓紟紒紏紌罜罡罞罠罝罛羖羒翃翂翀耖耾耹胺胲胹胵脁胻脀舁舯舥茳茭荄茙荑茥荖茿荁茦茜茢"],["d3a1","荂荎茛茪茈茼荍茖茤茠茷茯茩荇荅荌荓茞茬荋茧荈虓虒蚢蚨蚖蚍蚑蚞蚇蚗蚆蚋蚚蚅蚥蚙蚡蚧蚕蚘蚎蚝蚐蚔衃衄衭衵衶衲袀衱衿衯袃衾衴衼訒豇豗豻貤貣赶赸趵趷趶軑軓迾迵适迿迻逄迼迶郖郠郙郚郣郟郥郘郛郗郜郤酐"],["d440","酎酏釕釢釚陜陟隼飣髟鬯乿偰偪偡偞偠偓偋偝偲偈偍偁偛偊偢倕偅偟偩偫偣偤偆偀偮偳偗偑凐剫剭剬剮勖勓匭厜啵啶唼啍啐唴唪啑啢唶唵唰啒啅"],["d4a1","唌唲啥啎唹啈唭唻啀啋圊圇埻堔埢埶埜埴堀埭埽堈埸堋埳埏堇埮埣埲埥埬埡堎埼堐埧堁堌埱埩埰堍堄奜婠婘婕婧婞娸娵婭婐婟婥婬婓婤婗婃婝婒婄婛婈媎娾婍娹婌婰婩婇婑婖婂婜孲孮寁寀屙崞崋崝崚崠崌崨崍崦崥崏"],["d540","崰崒崣崟崮帾帴庱庴庹庲庳弶弸徛徖徟悊悐悆悾悰悺惓惔惏惤惙惝惈悱惛悷惊悿惃惍惀挲捥掊掂捽掽掞掭掝掗掫掎捯掇掐据掯捵掜捭掮捼掤挻掟"],["d5a1","捸掅掁掑掍捰敓旍晥晡晛晙晜晢朘桹梇梐梜桭桮梮梫楖桯梣梬梩桵桴梲梏桷梒桼桫桲梪梀桱桾梛梖梋梠梉梤桸桻梑梌梊桽欶欳欷欸殑殏殍殎殌氪淀涫涴涳湴涬淩淢涷淶淔渀淈淠淟淖涾淥淜淝淛淴淊涽淭淰涺淕淂淏淉"],["d640","淐淲淓淽淗淍淣涻烺焍烷焗烴焌烰焄烳焐烼烿焆焓焀烸烶焋焂焎牾牻牼牿猝猗猇猑猘猊猈狿猏猞玈珶珸珵琄琁珽琇琀珺珼珿琌琋珴琈畤畣痎痒痏"],["d6a1","痋痌痑痐皏皉盓眹眯眭眱眲眴眳眽眥眻眵硈硒硉硍硊硌砦硅硐祤祧祩祪祣祫祡离秺秸秶秷窏窔窐笵筇笴笥笰笢笤笳笘笪笝笱笫笭笯笲笸笚笣粔粘粖粣紵紽紸紶紺絅紬紩絁絇紾紿絊紻紨罣羕羜羝羛翊翋翍翐翑翇翏翉耟"],["d740","耞耛聇聃聈脘脥脙脛脭脟脬脞脡脕脧脝脢舑舸舳舺舴舲艴莐莣莨莍荺荳莤荴莏莁莕莙荵莔莩荽莃莌莝莛莪莋荾莥莯莈莗莰荿莦莇莮荶莚虙虖蚿蚷"],["d7a1","蛂蛁蛅蚺蚰蛈蚹蚳蚸蛌蚴蚻蚼蛃蚽蚾衒袉袕袨袢袪袚袑袡袟袘袧袙袛袗袤袬袌袓袎覂觖觙觕訰訧訬訞谹谻豜豝豽貥赽赻赹趼跂趹趿跁軘軞軝軜軗軠軡逤逋逑逜逌逡郯郪郰郴郲郳郔郫郬郩酖酘酚酓酕釬釴釱釳釸釤釹釪"],["d840","釫釷釨釮镺閆閈陼陭陫陱陯隿靪頄飥馗傛傕傔傞傋傣傃傌傎傝偨傜傒傂傇兟凔匒匑厤厧喑喨喥喭啷噅喢喓喈喏喵喁喣喒喤啽喌喦啿喕喡喎圌堩堷"],["d8a1","堙堞堧堣堨埵塈堥堜堛堳堿堶堮堹堸堭堬堻奡媯媔媟婺媢媞婸媦婼媥媬媕媮娷媄媊媗媃媋媩婻婽媌媜媏媓媝寪寍寋寔寑寊寎尌尰崷嵃嵫嵁嵋崿崵嵑嵎嵕崳崺嵒崽崱嵙嵂崹嵉崸崼崲崶嵀嵅幄幁彘徦徥徫惉悹惌惢惎惄愔"],["d940","惲愊愖愅惵愓惸惼惾惁愃愘愝愐惿愄愋扊掔掱掰揎揥揨揯揃撝揳揊揠揶揕揲揵摡揟掾揝揜揄揘揓揂揇揌揋揈揰揗揙攲敧敪敤敜敨敥斌斝斞斮旐旒"],["d9a1","晼晬晻暀晱晹晪晲朁椌棓椄棜椪棬棪棱椏棖棷棫棤棶椓椐棳棡椇棌椈楰梴椑棯棆椔棸棐棽棼棨椋椊椗棎棈棝棞棦棴棑椆棔棩椕椥棇欹欻欿欼殔殗殙殕殽毰毲毳氰淼湆湇渟湉溈渼渽湅湢渫渿湁湝湳渜渳湋湀湑渻渃渮湞"],["da40","湨湜湡渱渨湠湱湫渹渢渰湓湥渧湸湤湷湕湹湒湦渵渶湚焠焞焯烻焮焱焣焥焢焲焟焨焺焛牋牚犈犉犆犅犋猒猋猰猢猱猳猧猲猭猦猣猵猌琮琬琰琫琖"],["daa1","琚琡琭琱琤琣琝琩琠琲瓻甯畯畬痧痚痡痦痝痟痤痗皕皒盚睆睇睄睍睅睊睎睋睌矞矬硠硤硥硜硭硱硪确硰硩硨硞硢祴祳祲祰稂稊稃稌稄窙竦竤筊笻筄筈筌筎筀筘筅粢粞粨粡絘絯絣絓絖絧絪絏絭絜絫絒絔絩絑絟絎缾缿罥"],["db40","罦羢羠羡翗聑聏聐胾胔腃腊腒腏腇脽腍脺臦臮臷臸臹舄舼舽舿艵茻菏菹萣菀菨萒菧菤菼菶萐菆菈菫菣莿萁菝菥菘菿菡菋菎菖菵菉萉萏菞萑萆菂菳"],["dba1","菕菺菇菑菪萓菃菬菮菄菻菗菢萛菛菾蛘蛢蛦蛓蛣蛚蛪蛝蛫蛜蛬蛩蛗蛨蛑衈衖衕袺裗袹袸裀袾袶袼袷袽袲褁裉覕覘覗觝觚觛詎詍訹詙詀詗詘詄詅詒詈詑詊詌詏豟貁貀貺貾貰貹貵趄趀趉跘跓跍跇跖跜跏跕跙跈跗跅軯軷軺"],["dc40","軹軦軮軥軵軧軨軶軫軱軬軴軩逭逴逯鄆鄬鄄郿郼鄈郹郻鄁鄀鄇鄅鄃酡酤酟酢酠鈁鈊鈥鈃鈚鈦鈏鈌鈀鈒釿釽鈆鈄鈧鈂鈜鈤鈙鈗鈅鈖镻閍閌閐隇陾隈"],["dca1","隉隃隀雂雈雃雱雰靬靰靮頇颩飫鳦黹亃亄亶傽傿僆傮僄僊傴僈僂傰僁傺傱僋僉傶傸凗剺剸剻剼嗃嗛嗌嗐嗋嗊嗝嗀嗔嗄嗩喿嗒喍嗏嗕嗢嗖嗈嗲嗍嗙嗂圔塓塨塤塏塍塉塯塕塎塝塙塥塛堽塣塱壼嫇嫄嫋媺媸媱媵媰媿嫈媻嫆"],["dd40","媷嫀嫊媴媶嫍媹媐寖寘寙尟尳嵱嵣嵊嵥嵲嵬嵞嵨嵧嵢巰幏幎幊幍幋廅廌廆廋廇彀徯徭惷慉慊愫慅愶愲愮慆愯慏愩慀戠酨戣戥戤揅揱揫搐搒搉搠搤"],["dda1","搳摃搟搕搘搹搷搢搣搌搦搰搨摁搵搯搊搚摀搥搧搋揧搛搮搡搎敯斒旓暆暌暕暐暋暊暙暔晸朠楦楟椸楎楢楱椿楅楪椹楂楗楙楺楈楉椵楬椳椽楥棰楸椴楩楀楯楄楶楘楁楴楌椻楋椷楜楏楑椲楒椯楻椼歆歅歃歂歈歁殛嗀毻毼"],["de40","毹毷毸溛滖滈溏滀溟溓溔溠溱溹滆滒溽滁溞滉溷溰滍溦滏溲溾滃滜滘溙溒溎溍溤溡溿溳滐滊溗溮溣煇煔煒煣煠煁煝煢煲煸煪煡煂煘煃煋煰煟煐煓"],["dea1","煄煍煚牏犍犌犑犐犎猼獂猻猺獀獊獉瑄瑊瑋瑒瑑瑗瑀瑏瑐瑎瑂瑆瑍瑔瓡瓿瓾瓽甝畹畷榃痯瘏瘃痷痾痼痹痸瘐痻痶痭痵痽皙皵盝睕睟睠睒睖睚睩睧睔睙睭矠碇碚碔碏碄碕碅碆碡碃硹碙碀碖硻祼禂祽祹稑稘稙稒稗稕稢稓"],["df40","稛稐窣窢窞竫筦筤筭筴筩筲筥筳筱筰筡筸筶筣粲粴粯綈綆綀綍絿綅絺綎絻綃絼綌綔綄絽綒罭罫罧罨罬羦羥羧翛翜耡腤腠腷腜腩腛腢腲朡腞腶腧腯"],["dfa1","腄腡舝艉艄艀艂艅蓱萿葖葶葹蒏蒍葥葑葀蒆葧萰葍葽葚葙葴葳葝蔇葞萷萺萴葺葃葸萲葅萩菙葋萯葂萭葟葰萹葎葌葒葯蓅蒎萻葇萶萳葨葾葄萫葠葔葮葐蜋蜄蛷蜌蛺蛖蛵蝍蛸蜎蜉蜁蛶蜍蜅裖裋裍裎裞裛裚裌裐覅覛觟觥觤"],["e040","觡觠觢觜触詶誆詿詡訿詷誂誄詵誃誁詴詺谼豋豊豥豤豦貆貄貅賌赨赩趑趌趎趏趍趓趔趐趒跰跠跬跱跮跐跩跣跢跧跲跫跴輆軿輁輀輅輇輈輂輋遒逿"],["e0a1","遄遉逽鄐鄍鄏鄑鄖鄔鄋鄎酮酯鉈鉒鈰鈺鉦鈳鉥鉞銃鈮鉊鉆鉭鉬鉏鉠鉧鉯鈶鉡鉰鈱鉔鉣鉐鉲鉎鉓鉌鉖鈲閟閜閞閛隒隓隑隗雎雺雽雸雵靳靷靸靲頏頍頎颬飶飹馯馲馰馵骭骫魛鳪鳭鳧麀黽僦僔僗僨僳僛僪僝僤僓僬僰僯僣僠"],["e140","凘劀劁勩勫匰厬嘧嘕嘌嘒嗼嘏嘜嘁嘓嘂嗺嘝嘄嗿嗹墉塼墐墘墆墁塿塴墋塺墇墑墎塶墂墈塻墔墏壾奫嫜嫮嫥嫕嫪嫚嫭嫫嫳嫢嫠嫛嫬嫞嫝嫙嫨嫟孷寠"],["e1a1","寣屣嶂嶀嵽嶆嵺嶁嵷嶊嶉嶈嵾嵼嶍嵹嵿幘幙幓廘廑廗廎廜廕廙廒廔彄彃彯徶愬愨慁慞慱慳慒慓慲慬憀慴慔慺慛慥愻慪慡慖戩戧戫搫摍摛摝摴摶摲摳摽摵摦撦摎撂摞摜摋摓摠摐摿搿摬摫摙摥摷敳斠暡暠暟朅朄朢榱榶槉"],["e240","榠槎榖榰榬榼榑榙榎榧榍榩榾榯榿槄榽榤槔榹槊榚槏榳榓榪榡榞槙榗榐槂榵榥槆歊歍歋殞殟殠毃毄毾滎滵滱漃漥滸漷滻漮漉潎漙漚漧漘漻漒滭漊"],["e2a1","漶潳滹滮漭潀漰漼漵滫漇漎潃漅滽滶漹漜滼漺漟漍漞漈漡熇熐熉熀熅熂熏煻熆熁熗牄牓犗犕犓獃獍獑獌瑢瑳瑱瑵瑲瑧瑮甀甂甃畽疐瘖瘈瘌瘕瘑瘊瘔皸瞁睼瞅瞂睮瞀睯睾瞃碲碪碴碭碨硾碫碞碥碠碬碢碤禘禊禋禖禕禔禓"],["e340","禗禈禒禐稫穊稰稯稨稦窨窫窬竮箈箜箊箑箐箖箍箌箛箎箅箘劄箙箤箂粻粿粼粺綧綷緂綣綪緁緀緅綝緎緄緆緋緌綯綹綖綼綟綦綮綩綡緉罳翢翣翥翞"],["e3a1","耤聝聜膉膆膃膇膍膌膋舕蒗蒤蒡蒟蒺蓎蓂蒬蒮蒫蒹蒴蓁蓍蒪蒚蒱蓐蒝蒧蒻蒢蒔蓇蓌蒛蒩蒯蒨蓖蒘蒶蓏蒠蓗蓔蓒蓛蒰蒑虡蜳蜣蜨蝫蝀蜮蜞蜡蜙蜛蝃蜬蝁蜾蝆蜠蜲蜪蜭蜼蜒蜺蜱蜵蝂蜦蜧蜸蜤蜚蜰蜑裷裧裱裲裺裾裮裼裶裻"],["e440","裰裬裫覝覡覟覞觩觫觨誫誙誋誒誏誖谽豨豩賕賏賗趖踉踂跿踍跽踊踃踇踆踅跾踀踄輐輑輎輍鄣鄜鄠鄢鄟鄝鄚鄤鄡鄛酺酲酹酳銥銤鉶銛鉺銠銔銪銍"],["e4a1","銦銚銫鉹銗鉿銣鋮銎銂銕銢鉽銈銡銊銆銌銙銧鉾銇銩銝銋鈭隞隡雿靘靽靺靾鞃鞀鞂靻鞄鞁靿韎韍頖颭颮餂餀餇馝馜駃馹馻馺駂馽駇骱髣髧鬾鬿魠魡魟鳱鳲鳵麧僿儃儰僸儆儇僶僾儋儌僽儊劋劌勱勯噈噂噌嘵噁噊噉噆噘"],["e540","噚噀嘳嘽嘬嘾嘸嘪嘺圚墫墝墱墠墣墯墬墥墡壿嫿嫴嫽嫷嫶嬃嫸嬂嫹嬁嬇嬅嬏屧嶙嶗嶟嶒嶢嶓嶕嶠嶜嶡嶚嶞幩幝幠幜緳廛廞廡彉徲憋憃慹憱憰憢憉"],["e5a1","憛憓憯憭憟憒憪憡憍慦憳戭摮摰撖撠撅撗撜撏撋撊撌撣撟摨撱撘敶敺敹敻斲斳暵暰暩暲暷暪暯樀樆樗槥槸樕槱槤樠槿槬槢樛樝槾樧槲槮樔槷槧橀樈槦槻樍槼槫樉樄樘樥樏槶樦樇槴樖歑殥殣殢殦氁氀毿氂潁漦潾澇濆澒"],["e640","澍澉澌潢潏澅潚澖潶潬澂潕潲潒潐潗澔澓潝漀潡潫潽潧澐潓澋潩潿澕潣潷潪潻熲熯熛熰熠熚熩熵熝熥熞熤熡熪熜熧熳犘犚獘獒獞獟獠獝獛獡獚獙"],["e6a1","獢璇璉璊璆璁瑽璅璈瑼瑹甈甇畾瘥瘞瘙瘝瘜瘣瘚瘨瘛皜皝皞皛瞍瞏瞉瞈磍碻磏磌磑磎磔磈磃磄磉禚禡禠禜禢禛歶稹窲窴窳箷篋箾箬篎箯箹篊箵糅糈糌糋緷緛緪緧緗緡縃緺緦緶緱緰緮緟罶羬羰羭翭翫翪翬翦翨聤聧膣膟"],["e740","膞膕膢膙膗舖艏艓艒艐艎艑蔤蔻蔏蔀蔩蔎蔉蔍蔟蔊蔧蔜蓻蔫蓺蔈蔌蓴蔪蓲蔕蓷蓫蓳蓼蔒蓪蓩蔖蓾蔨蔝蔮蔂蓽蔞蓶蔱蔦蓧蓨蓰蓯蓹蔘蔠蔰蔋蔙蔯虢"],["e7a1","蝖蝣蝤蝷蟡蝳蝘蝔蝛蝒蝡蝚蝑蝞蝭蝪蝐蝎蝟蝝蝯蝬蝺蝮蝜蝥蝏蝻蝵蝢蝧蝩衚褅褌褔褋褗褘褙褆褖褑褎褉覢覤覣觭觰觬諏諆誸諓諑諔諕誻諗誾諀諅諘諃誺誽諙谾豍貏賥賟賙賨賚賝賧趠趜趡趛踠踣踥踤踮踕踛踖踑踙踦踧"],["e840","踔踒踘踓踜踗踚輬輤輘輚輠輣輖輗遳遰遯遧遫鄯鄫鄩鄪鄲鄦鄮醅醆醊醁醂醄醀鋐鋃鋄鋀鋙銶鋏鋱鋟鋘鋩鋗鋝鋌鋯鋂鋨鋊鋈鋎鋦鋍鋕鋉鋠鋞鋧鋑鋓"],["e8a1","銵鋡鋆銴镼閬閫閮閰隤隢雓霅霈霂靚鞊鞎鞈韐韏頞頝頦頩頨頠頛頧颲餈飺餑餔餖餗餕駜駍駏駓駔駎駉駖駘駋駗駌骳髬髫髳髲髱魆魃魧魴魱魦魶魵魰魨魤魬鳼鳺鳽鳿鳷鴇鴀鳹鳻鴈鴅鴄麃黓鼏鼐儜儓儗儚儑凞匴叡噰噠噮"],["e940","噳噦噣噭噲噞噷圜圛壈墽壉墿墺壂墼壆嬗嬙嬛嬡嬔嬓嬐嬖嬨嬚嬠嬞寯嶬嶱嶩嶧嶵嶰嶮嶪嶨嶲嶭嶯嶴幧幨幦幯廩廧廦廨廥彋徼憝憨憖懅憴懆懁懌憺"],["e9a1","憿憸憌擗擖擐擏擉撽撉擃擛擳擙攳敿敼斢曈暾曀曊曋曏暽暻暺曌朣樴橦橉橧樲橨樾橝橭橶橛橑樨橚樻樿橁橪橤橐橏橔橯橩橠樼橞橖橕橍橎橆歕歔歖殧殪殫毈毇氄氃氆澭濋澣濇澼濎濈潞濄澽澞濊澨瀄澥澮澺澬澪濏澿澸"],["ea40","澢濉澫濍澯澲澰燅燂熿熸燖燀燁燋燔燊燇燏熽燘熼燆燚燛犝犞獩獦獧獬獥獫獪瑿璚璠璔璒璕璡甋疀瘯瘭瘱瘽瘳瘼瘵瘲瘰皻盦瞚瞝瞡瞜瞛瞢瞣瞕瞙"],["eaa1","瞗磝磩磥磪磞磣磛磡磢磭磟磠禤穄穈穇窶窸窵窱窷篞篣篧篝篕篥篚篨篹篔篪篢篜篫篘篟糒糔糗糐糑縒縡縗縌縟縠縓縎縜縕縚縢縋縏縖縍縔縥縤罃罻罼罺羱翯耪耩聬膱膦膮膹膵膫膰膬膴膲膷膧臲艕艖艗蕖蕅蕫蕍蕓蕡蕘"],["eb40","蕀蕆蕤蕁蕢蕄蕑蕇蕣蔾蕛蕱蕎蕮蕵蕕蕧蕠薌蕦蕝蕔蕥蕬虣虥虤螛螏螗螓螒螈螁螖螘蝹螇螣螅螐螑螝螄螔螜螚螉褞褦褰褭褮褧褱褢褩褣褯褬褟觱諠"],["eba1","諢諲諴諵諝謔諤諟諰諈諞諡諨諿諯諻貑貒貐賵賮賱賰賳赬赮趥趧踳踾踸蹀蹅踶踼踽蹁踰踿躽輶輮輵輲輹輷輴遶遹遻邆郺鄳鄵鄶醓醐醑醍醏錧錞錈錟錆錏鍺錸錼錛錣錒錁鍆錭錎錍鋋錝鋺錥錓鋹鋷錴錂錤鋿錩錹錵錪錔錌"],["ec40","錋鋾錉錀鋻錖閼闍閾閹閺閶閿閵閽隩雔霋霒霐鞙鞗鞔韰韸頵頯頲餤餟餧餩馞駮駬駥駤駰駣駪駩駧骹骿骴骻髶髺髹髷鬳鮀鮅鮇魼魾魻鮂鮓鮒鮐魺鮕"],["eca1","魽鮈鴥鴗鴠鴞鴔鴩鴝鴘鴢鴐鴙鴟麈麆麇麮麭黕黖黺鼒鼽儦儥儢儤儠儩勴嚓嚌嚍嚆嚄嚃噾嚂噿嚁壖壔壏壒嬭嬥嬲嬣嬬嬧嬦嬯嬮孻寱寲嶷幬幪徾徻懃憵憼懧懠懥懤懨懞擯擩擣擫擤擨斁斀斶旚曒檍檖檁檥檉檟檛檡檞檇檓檎"],["ed40","檕檃檨檤檑橿檦檚檅檌檒歛殭氉濌澩濴濔濣濜濭濧濦濞濲濝濢濨燡燱燨燲燤燰燢獳獮獯璗璲璫璐璪璭璱璥璯甐甑甒甏疄癃癈癉癇皤盩瞵瞫瞲瞷瞶"],["eda1","瞴瞱瞨矰磳磽礂磻磼磲礅磹磾礄禫禨穜穛穖穘穔穚窾竀竁簅簏篲簀篿篻簎篴簋篳簂簉簃簁篸篽簆篰篱簐簊糨縭縼繂縳顈縸縪繉繀繇縩繌縰縻縶繄縺罅罿罾罽翴翲耬膻臄臌臊臅臇膼臩艛艚艜薃薀薏薧薕薠薋薣蕻薤薚薞"],["ee40","蕷蕼薉薡蕺蕸蕗薎薖薆薍薙薝薁薢薂薈薅蕹蕶薘薐薟虨螾螪螭蟅螰螬螹螵螼螮蟉蟃蟂蟌螷螯蟄蟊螴螶螿螸螽蟞螲褵褳褼褾襁襒褷襂覭覯覮觲觳謞"],["eea1","謘謖謑謅謋謢謏謒謕謇謍謈謆謜謓謚豏豰豲豱豯貕貔賹赯蹎蹍蹓蹐蹌蹇轃轀邅遾鄸醚醢醛醙醟醡醝醠鎡鎃鎯鍤鍖鍇鍼鍘鍜鍶鍉鍐鍑鍠鍭鎏鍌鍪鍹鍗鍕鍒鍏鍱鍷鍻鍡鍞鍣鍧鎀鍎鍙闇闀闉闃闅閷隮隰隬霠霟霘霝霙鞚鞡鞜"],["ef40","鞞鞝韕韔韱顁顄顊顉顅顃餥餫餬餪餳餲餯餭餱餰馘馣馡騂駺駴駷駹駸駶駻駽駾駼騃骾髾髽鬁髼魈鮚鮨鮞鮛鮦鮡鮥鮤鮆鮢鮠鮯鴳鵁鵧鴶鴮鴯鴱鴸鴰"],["efa1","鵅鵂鵃鴾鴷鵀鴽翵鴭麊麉麍麰黈黚黻黿鼤鼣鼢齔龠儱儭儮嚘嚜嚗嚚嚝嚙奰嬼屩屪巀幭幮懘懟懭懮懱懪懰懫懖懩擿攄擽擸攁攃擼斔旛曚曛曘櫅檹檽櫡櫆檺檶檷櫇檴檭歞毉氋瀇瀌瀍瀁瀅瀔瀎濿瀀濻瀦濼濷瀊爁燿燹爃燽獶"],["f040","璸瓀璵瓁璾璶璻瓂甔甓癜癤癙癐癓癗癚皦皽盬矂瞺磿礌礓礔礉礐礒礑禭禬穟簜簩簙簠簟簭簝簦簨簢簥簰繜繐繖繣繘繢繟繑繠繗繓羵羳翷翸聵臑臒"],["f0a1","臐艟艞薴藆藀藃藂薳薵薽藇藄薿藋藎藈藅薱薶藒蘤薸薷薾虩蟧蟦蟢蟛蟫蟪蟥蟟蟳蟤蟔蟜蟓蟭蟘蟣螤蟗蟙蠁蟴蟨蟝襓襋襏襌襆襐襑襉謪謧謣謳謰謵譇謯謼謾謱謥謷謦謶謮謤謻謽謺豂豵貙貘貗賾贄贂贀蹜蹢蹠蹗蹖蹞蹥蹧"],["f140","蹛蹚蹡蹝蹩蹔轆轇轈轋鄨鄺鄻鄾醨醥醧醯醪鎵鎌鎒鎷鎛鎝鎉鎧鎎鎪鎞鎦鎕鎈鎙鎟鎍鎱鎑鎲鎤鎨鎴鎣鎥闒闓闑隳雗雚巂雟雘雝霣霢霥鞬鞮鞨鞫鞤鞪"],["f1a1","鞢鞥韗韙韖韘韺顐顑顒颸饁餼餺騏騋騉騍騄騑騊騅騇騆髀髜鬈鬄鬅鬩鬵魊魌魋鯇鯆鯃鮿鯁鮵鮸鯓鮶鯄鮹鮽鵜鵓鵏鵊鵛鵋鵙鵖鵌鵗鵒鵔鵟鵘鵚麎麌黟鼁鼀鼖鼥鼫鼪鼩鼨齌齕儴儵劖勷厴嚫嚭嚦嚧嚪嚬壚壝壛夒嬽嬾嬿巃幰"],["f240","徿懻攇攐攍攉攌攎斄旞旝曞櫧櫠櫌櫑櫙櫋櫟櫜櫐櫫櫏櫍櫞歠殰氌瀙瀧瀠瀖瀫瀡瀢瀣瀩瀗瀤瀜瀪爌爊爇爂爅犥犦犤犣犡瓋瓅璷瓃甖癠矉矊矄矱礝礛"],["f2a1","礡礜礗礞禰穧穨簳簼簹簬簻糬糪繶繵繸繰繷繯繺繲繴繨罋罊羃羆羷翽翾聸臗臕艤艡艣藫藱藭藙藡藨藚藗藬藲藸藘藟藣藜藑藰藦藯藞藢蠀蟺蠃蟶蟷蠉蠌蠋蠆蟼蠈蟿蠊蠂襢襚襛襗襡襜襘襝襙覈覷覶觶譐譈譊譀譓譖譔譋譕"],["f340","譑譂譒譗豃豷豶貚贆贇贉趬趪趭趫蹭蹸蹳蹪蹯蹻軂轒轑轏轐轓辴酀鄿醰醭鏞鏇鏏鏂鏚鏐鏹鏬鏌鏙鎩鏦鏊鏔鏮鏣鏕鏄鏎鏀鏒鏧镽闚闛雡霩霫霬霨霦"],["f3a1","鞳鞷鞶韝韞韟顜顙顝顗颿颽颻颾饈饇饃馦馧騚騕騥騝騤騛騢騠騧騣騞騜騔髂鬋鬊鬎鬌鬷鯪鯫鯠鯞鯤鯦鯢鯰鯔鯗鯬鯜鯙鯥鯕鯡鯚鵷鶁鶊鶄鶈鵱鶀鵸鶆鶋鶌鵽鵫鵴鵵鵰鵩鶅鵳鵻鶂鵯鵹鵿鶇鵨麔麑黀黼鼭齀齁齍齖齗齘匷嚲"],["f440","嚵嚳壣孅巆巇廮廯忀忁懹攗攖攕攓旟曨曣曤櫳櫰櫪櫨櫹櫱櫮櫯瀼瀵瀯瀷瀴瀱灂瀸瀿瀺瀹灀瀻瀳灁爓爔犨獽獼璺皫皪皾盭矌矎矏矍矲礥礣礧礨礤礩"],["f4a1","禲穮穬穭竷籉籈籊籇籅糮繻繾纁纀羺翿聹臛臙舋艨艩蘢藿蘁藾蘛蘀藶蘄蘉蘅蘌藽蠙蠐蠑蠗蠓蠖襣襦覹觷譠譪譝譨譣譥譧譭趮躆躈躄轙轖轗轕轘轚邍酃酁醷醵醲醳鐋鐓鏻鐠鐏鐔鏾鐕鐐鐨鐙鐍鏵鐀鏷鐇鐎鐖鐒鏺鐉鏸鐊鏿"],["f540","鏼鐌鏶鐑鐆闞闠闟霮霯鞹鞻韽韾顠顢顣顟飁飂饐饎饙饌饋饓騲騴騱騬騪騶騩騮騸騭髇髊髆鬐鬒鬑鰋鰈鯷鰅鰒鯸鱀鰇鰎鰆鰗鰔鰉鶟鶙鶤鶝鶒鶘鶐鶛"],["f5a1","鶠鶔鶜鶪鶗鶡鶚鶢鶨鶞鶣鶿鶩鶖鶦鶧麙麛麚黥黤黧黦鼰鼮齛齠齞齝齙龑儺儹劘劗囃嚽嚾孈孇巋巏廱懽攛欂櫼欃櫸欀灃灄灊灈灉灅灆爝爚爙獾甗癪矐礭礱礯籔籓糲纊纇纈纋纆纍罍羻耰臝蘘蘪蘦蘟蘣蘜蘙蘧蘮蘡蘠蘩蘞蘥"],["f640","蠩蠝蠛蠠蠤蠜蠫衊襭襩襮襫觺譹譸譅譺譻贐贔趯躎躌轞轛轝酆酄酅醹鐿鐻鐶鐩鐽鐼鐰鐹鐪鐷鐬鑀鐱闥闤闣霵霺鞿韡顤飉飆飀饘饖騹騽驆驄驂驁騺"],["f6a1","騿髍鬕鬗鬘鬖鬺魒鰫鰝鰜鰬鰣鰨鰩鰤鰡鶷鶶鶼鷁鷇鷊鷏鶾鷅鷃鶻鶵鷎鶹鶺鶬鷈鶱鶭鷌鶳鷍鶲鹺麜黫黮黭鼛鼘鼚鼱齎齥齤龒亹囆囅囋奱孋孌巕巑廲攡攠攦攢欋欈欉氍灕灖灗灒爞爟犩獿瓘瓕瓙瓗癭皭礵禴穰穱籗籜籙籛籚"],["f740","糴糱纑罏羇臞艫蘴蘵蘳蘬蘲蘶蠬蠨蠦蠪蠥襱覿覾觻譾讄讂讆讅譿贕躕躔躚躒躐躖躗轠轢酇鑌鑐鑊鑋鑏鑇鑅鑈鑉鑆霿韣顪顩飋饔饛驎驓驔驌驏驈驊"],["f7a1","驉驒驐髐鬙鬫鬻魖魕鱆鱈鰿鱄鰹鰳鱁鰼鰷鰴鰲鰽鰶鷛鷒鷞鷚鷋鷐鷜鷑鷟鷩鷙鷘鷖鷵鷕鷝麶黰鼵鼳鼲齂齫龕龢儽劙壨壧奲孍巘蠯彏戁戃戄攩攥斖曫欑欒欏毊灛灚爢玂玁玃癰矔籧籦纕艬蘺虀蘹蘼蘱蘻蘾蠰蠲蠮蠳襶襴襳觾"],["f840","讌讎讋讈豅贙躘轤轣醼鑢鑕鑝鑗鑞韄韅頀驖驙鬞鬟鬠鱒鱘鱐鱊鱍鱋鱕鱙鱌鱎鷻鷷鷯鷣鷫鷸鷤鷶鷡鷮鷦鷲鷰鷢鷬鷴鷳鷨鷭黂黐黲黳鼆鼜鼸鼷鼶齃齏"],["f8a1","齱齰齮齯囓囍孎屭攭曭曮欓灟灡灝灠爣瓛瓥矕礸禷禶籪纗羉艭虃蠸蠷蠵衋讔讕躞躟躠躝醾醽釂鑫鑨鑩雥靆靃靇韇韥驞髕魙鱣鱧鱦鱢鱞鱠鸂鷾鸇鸃鸆鸅鸀鸁鸉鷿鷽鸄麠鼞齆齴齵齶囔攮斸欘欙欗欚灢爦犪矘矙礹籩籫糶纚"],["f940","纘纛纙臠臡虆虇虈襹襺襼襻觿讘讙躥躤躣鑮鑭鑯鑱鑳靉顲饟鱨鱮鱭鸋鸍鸐鸏鸒鸑麡黵鼉齇齸齻齺齹圞灦籯蠼趲躦釃鑴鑸鑶鑵驠鱴鱳鱱鱵鸔鸓黶鼊"],["f9a1","龤灨灥糷虪蠾蠽蠿讞貜躩軉靋顳顴飌饡馫驤驦驧鬤鸕鸗齈戇欞爧虌躨钂钀钁驩驨鬮鸙爩虋讟钃鱹麷癵驫鱺鸝灩灪麤齾齉龘碁銹裏墻恒粧嫺╔╦╗╠╬╣╚╩╝╒╤╕╞╪╡╘╧╛╓╥╖╟╫╢╙╨╜║═╭╮╰╯▓"]]' + ); + }, + 20345: (e) => { + 'use strict'; + e.exports = JSON.parse( + '[["0","\\u0000",127],["8ea1","。",62],["a1a1"," 、。,.・:;?!゛゜´`¨^ ̄_ヽヾゝゞ〃仝々〆〇ー―‐/\~∥|…‥‘’“”()〔〕[]{}〈",9,"+-±×÷=≠<>≦≧∞∴♂♀°′″℃¥$¢£%#&*@§☆★○●◎◇"],["a2a1","◆□■△▲▽▼※〒→←↑↓〓"],["a2ba","∈∋⊆⊇⊂⊃∪∩"],["a2ca","∧∨¬⇒⇔∀∃"],["a2dc","∠⊥⌒∂∇≡≒≪≫√∽∝∵∫∬"],["a2f2","ʼn♯♭♪†‡¶"],["a2fe","◯"],["a3b0","0",9],["a3c1","A",25],["a3e1","a",25],["a4a1","ぁ",82],["a5a1","ァ",85],["a6a1","Α",16,"Σ",6],["a6c1","α",16,"σ",6],["a7a1","А",5,"ЁЖ",25],["a7d1","а",5,"ёж",25],["a8a1","─│┌┐┘└├┬┤┴┼━┃┏┓┛┗┣┳┫┻╋┠┯┨┷┿┝┰┥┸╂"],["ada1","①",19,"Ⅰ",9],["adc0","㍉㌔㌢㍍㌘㌧㌃㌶㍑㍗㌍㌦㌣㌫㍊㌻㎜㎝㎞㎎㎏㏄㎡"],["addf","㍻〝〟№㏍℡㊤",4,"㈱㈲㈹㍾㍽㍼≒≡∫∮∑√⊥∠∟⊿∵∩∪"],["b0a1","亜唖娃阿哀愛挨姶逢葵茜穐悪握渥旭葦芦鯵梓圧斡扱宛姐虻飴絢綾鮎或粟袷安庵按暗案闇鞍杏以伊位依偉囲夷委威尉惟意慰易椅為畏異移維緯胃萎衣謂違遺医井亥域育郁磯一壱溢逸稲茨芋鰯允印咽員因姻引飲淫胤蔭"],["b1a1","院陰隠韻吋右宇烏羽迂雨卯鵜窺丑碓臼渦嘘唄欝蔚鰻姥厩浦瓜閏噂云運雲荏餌叡営嬰影映曳栄永泳洩瑛盈穎頴英衛詠鋭液疫益駅悦謁越閲榎厭円園堰奄宴延怨掩援沿演炎焔煙燕猿縁艶苑薗遠鉛鴛塩於汚甥凹央奥往応"],["b2a1","押旺横欧殴王翁襖鴬鴎黄岡沖荻億屋憶臆桶牡乙俺卸恩温穏音下化仮何伽価佳加可嘉夏嫁家寡科暇果架歌河火珂禍禾稼箇花苛茄荷華菓蝦課嘩貨迦過霞蚊俄峨我牙画臥芽蛾賀雅餓駕介会解回塊壊廻快怪悔恢懐戒拐改"],["b3a1","魁晦械海灰界皆絵芥蟹開階貝凱劾外咳害崖慨概涯碍蓋街該鎧骸浬馨蛙垣柿蛎鈎劃嚇各廓拡撹格核殻獲確穫覚角赫較郭閣隔革学岳楽額顎掛笠樫橿梶鰍潟割喝恰括活渇滑葛褐轄且鰹叶椛樺鞄株兜竃蒲釜鎌噛鴨栢茅萱"],["b4a1","粥刈苅瓦乾侃冠寒刊勘勧巻喚堪姦完官寛干幹患感慣憾換敢柑桓棺款歓汗漢澗潅環甘監看竿管簡緩缶翰肝艦莞観諌貫還鑑間閑関陥韓館舘丸含岸巌玩癌眼岩翫贋雁頑顔願企伎危喜器基奇嬉寄岐希幾忌揮机旗既期棋棄"],["b5a1","機帰毅気汽畿祈季稀紀徽規記貴起軌輝飢騎鬼亀偽儀妓宜戯技擬欺犠疑祇義蟻誼議掬菊鞠吉吃喫桔橘詰砧杵黍却客脚虐逆丘久仇休及吸宮弓急救朽求汲泣灸球究窮笈級糾給旧牛去居巨拒拠挙渠虚許距鋸漁禦魚亨享京"],["b6a1","供侠僑兇競共凶協匡卿叫喬境峡強彊怯恐恭挟教橋況狂狭矯胸脅興蕎郷鏡響饗驚仰凝尭暁業局曲極玉桐粁僅勤均巾錦斤欣欽琴禁禽筋緊芹菌衿襟謹近金吟銀九倶句区狗玖矩苦躯駆駈駒具愚虞喰空偶寓遇隅串櫛釧屑屈"],["b7a1","掘窟沓靴轡窪熊隈粂栗繰桑鍬勲君薫訓群軍郡卦袈祁係傾刑兄啓圭珪型契形径恵慶慧憩掲携敬景桂渓畦稽系経継繋罫茎荊蛍計詣警軽頚鶏芸迎鯨劇戟撃激隙桁傑欠決潔穴結血訣月件倹倦健兼券剣喧圏堅嫌建憲懸拳捲"],["b8a1","検権牽犬献研硯絹県肩見謙賢軒遣鍵険顕験鹸元原厳幻弦減源玄現絃舷言諺限乎個古呼固姑孤己庫弧戸故枯湖狐糊袴股胡菰虎誇跨鈷雇顧鼓五互伍午呉吾娯後御悟梧檎瑚碁語誤護醐乞鯉交佼侯候倖光公功効勾厚口向"],["b9a1","后喉坑垢好孔孝宏工巧巷幸広庚康弘恒慌抗拘控攻昂晃更杭校梗構江洪浩港溝甲皇硬稿糠紅紘絞綱耕考肯肱腔膏航荒行衡講貢購郊酵鉱砿鋼閤降項香高鴻剛劫号合壕拷濠豪轟麹克刻告国穀酷鵠黒獄漉腰甑忽惚骨狛込"],["baa1","此頃今困坤墾婚恨懇昏昆根梱混痕紺艮魂些佐叉唆嵯左差査沙瑳砂詐鎖裟坐座挫債催再最哉塞妻宰彩才採栽歳済災采犀砕砦祭斎細菜裁載際剤在材罪財冴坂阪堺榊肴咲崎埼碕鷺作削咋搾昨朔柵窄策索錯桜鮭笹匙冊刷"],["bba1","察拶撮擦札殺薩雑皐鯖捌錆鮫皿晒三傘参山惨撒散桟燦珊産算纂蚕讃賛酸餐斬暫残仕仔伺使刺司史嗣四士始姉姿子屍市師志思指支孜斯施旨枝止死氏獅祉私糸紙紫肢脂至視詞詩試誌諮資賜雌飼歯事似侍児字寺慈持時"],["bca1","次滋治爾璽痔磁示而耳自蒔辞汐鹿式識鴫竺軸宍雫七叱執失嫉室悉湿漆疾質実蔀篠偲柴芝屡蕊縞舎写射捨赦斜煮社紗者謝車遮蛇邪借勺尺杓灼爵酌釈錫若寂弱惹主取守手朱殊狩珠種腫趣酒首儒受呪寿授樹綬需囚収周"],["bda1","宗就州修愁拾洲秀秋終繍習臭舟蒐衆襲讐蹴輯週酋酬集醜什住充十従戎柔汁渋獣縦重銃叔夙宿淑祝縮粛塾熟出術述俊峻春瞬竣舜駿准循旬楯殉淳準潤盾純巡遵醇順処初所暑曙渚庶緒署書薯藷諸助叙女序徐恕鋤除傷償"],["bea1","勝匠升召哨商唱嘗奨妾娼宵将小少尚庄床廠彰承抄招掌捷昇昌昭晶松梢樟樵沼消渉湘焼焦照症省硝礁祥称章笑粧紹肖菖蒋蕉衝裳訟証詔詳象賞醤鉦鍾鐘障鞘上丈丞乗冗剰城場壌嬢常情擾条杖浄状畳穣蒸譲醸錠嘱埴飾"],["bfa1","拭植殖燭織職色触食蝕辱尻伸信侵唇娠寝審心慎振新晋森榛浸深申疹真神秦紳臣芯薪親診身辛進針震人仁刃塵壬尋甚尽腎訊迅陣靭笥諏須酢図厨逗吹垂帥推水炊睡粋翠衰遂酔錐錘随瑞髄崇嵩数枢趨雛据杉椙菅頗雀裾"],["c0a1","澄摺寸世瀬畝是凄制勢姓征性成政整星晴棲栖正清牲生盛精聖声製西誠誓請逝醒青静斉税脆隻席惜戚斥昔析石積籍績脊責赤跡蹟碩切拙接摂折設窃節説雪絶舌蝉仙先千占宣専尖川戦扇撰栓栴泉浅洗染潜煎煽旋穿箭線"],["c1a1","繊羨腺舛船薦詮賎践選遷銭銑閃鮮前善漸然全禅繕膳糎噌塑岨措曾曽楚狙疏疎礎祖租粗素組蘇訴阻遡鼠僧創双叢倉喪壮奏爽宋層匝惣想捜掃挿掻操早曹巣槍槽漕燥争痩相窓糟総綜聡草荘葬蒼藻装走送遭鎗霜騒像増憎"],["c2a1","臓蔵贈造促側則即息捉束測足速俗属賊族続卒袖其揃存孫尊損村遜他多太汰詑唾堕妥惰打柁舵楕陀駄騨体堆対耐岱帯待怠態戴替泰滞胎腿苔袋貸退逮隊黛鯛代台大第醍題鷹滝瀧卓啄宅托択拓沢濯琢託鐸濁諾茸凧蛸只"],["c3a1","叩但達辰奪脱巽竪辿棚谷狸鱈樽誰丹単嘆坦担探旦歎淡湛炭短端箪綻耽胆蛋誕鍛団壇弾断暖檀段男談値知地弛恥智池痴稚置致蜘遅馳築畜竹筑蓄逐秩窒茶嫡着中仲宙忠抽昼柱注虫衷註酎鋳駐樗瀦猪苧著貯丁兆凋喋寵"],["c4a1","帖帳庁弔張彫徴懲挑暢朝潮牒町眺聴脹腸蝶調諜超跳銚長頂鳥勅捗直朕沈珍賃鎮陳津墜椎槌追鎚痛通塚栂掴槻佃漬柘辻蔦綴鍔椿潰坪壷嬬紬爪吊釣鶴亭低停偵剃貞呈堤定帝底庭廷弟悌抵挺提梯汀碇禎程締艇訂諦蹄逓"],["c5a1","邸鄭釘鼎泥摘擢敵滴的笛適鏑溺哲徹撤轍迭鉄典填天展店添纏甜貼転顛点伝殿澱田電兎吐堵塗妬屠徒斗杜渡登菟賭途都鍍砥砺努度土奴怒倒党冬凍刀唐塔塘套宕島嶋悼投搭東桃梼棟盗淘湯涛灯燈当痘祷等答筒糖統到"],["c6a1","董蕩藤討謄豆踏逃透鐙陶頭騰闘働動同堂導憧撞洞瞳童胴萄道銅峠鴇匿得徳涜特督禿篤毒独読栃橡凸突椴届鳶苫寅酉瀞噸屯惇敦沌豚遁頓呑曇鈍奈那内乍凪薙謎灘捺鍋楢馴縄畷南楠軟難汝二尼弐迩匂賑肉虹廿日乳入"],["c7a1","如尿韮任妊忍認濡禰祢寧葱猫熱年念捻撚燃粘乃廼之埜嚢悩濃納能脳膿農覗蚤巴把播覇杷波派琶破婆罵芭馬俳廃拝排敗杯盃牌背肺輩配倍培媒梅楳煤狽買売賠陪這蝿秤矧萩伯剥博拍柏泊白箔粕舶薄迫曝漠爆縛莫駁麦"],["c8a1","函箱硲箸肇筈櫨幡肌畑畠八鉢溌発醗髪伐罰抜筏閥鳩噺塙蛤隼伴判半反叛帆搬斑板氾汎版犯班畔繁般藩販範釆煩頒飯挽晩番盤磐蕃蛮匪卑否妃庇彼悲扉批披斐比泌疲皮碑秘緋罷肥被誹費避非飛樋簸備尾微枇毘琵眉美"],["c9a1","鼻柊稗匹疋髭彦膝菱肘弼必畢筆逼桧姫媛紐百謬俵彪標氷漂瓢票表評豹廟描病秒苗錨鋲蒜蛭鰭品彬斌浜瀕貧賓頻敏瓶不付埠夫婦富冨布府怖扶敷斧普浮父符腐膚芙譜負賦赴阜附侮撫武舞葡蕪部封楓風葺蕗伏副復幅服"],["caa1","福腹複覆淵弗払沸仏物鮒分吻噴墳憤扮焚奮粉糞紛雰文聞丙併兵塀幣平弊柄並蔽閉陛米頁僻壁癖碧別瞥蔑箆偏変片篇編辺返遍便勉娩弁鞭保舗鋪圃捕歩甫補輔穂募墓慕戊暮母簿菩倣俸包呆報奉宝峰峯崩庖抱捧放方朋"],["cba1","法泡烹砲縫胞芳萌蓬蜂褒訪豊邦鋒飽鳳鵬乏亡傍剖坊妨帽忘忙房暴望某棒冒紡肪膨謀貌貿鉾防吠頬北僕卜墨撲朴牧睦穆釦勃没殆堀幌奔本翻凡盆摩磨魔麻埋妹昧枚毎哩槙幕膜枕鮪柾鱒桝亦俣又抹末沫迄侭繭麿万慢満"],["cca1","漫蔓味未魅巳箕岬密蜜湊蓑稔脈妙粍民眠務夢無牟矛霧鵡椋婿娘冥名命明盟迷銘鳴姪牝滅免棉綿緬面麺摸模茂妄孟毛猛盲網耗蒙儲木黙目杢勿餅尤戻籾貰問悶紋門匁也冶夜爺耶野弥矢厄役約薬訳躍靖柳薮鑓愉愈油癒"],["cda1","諭輸唯佑優勇友宥幽悠憂揖有柚湧涌猶猷由祐裕誘遊邑郵雄融夕予余与誉輿預傭幼妖容庸揚揺擁曜楊様洋溶熔用窯羊耀葉蓉要謡踊遥陽養慾抑欲沃浴翌翼淀羅螺裸来莱頼雷洛絡落酪乱卵嵐欄濫藍蘭覧利吏履李梨理璃"],["cea1","痢裏裡里離陸律率立葎掠略劉流溜琉留硫粒隆竜龍侶慮旅虜了亮僚両凌寮料梁涼猟療瞭稜糧良諒遼量陵領力緑倫厘林淋燐琳臨輪隣鱗麟瑠塁涙累類令伶例冷励嶺怜玲礼苓鈴隷零霊麗齢暦歴列劣烈裂廉恋憐漣煉簾練聯"],["cfa1","蓮連錬呂魯櫓炉賂路露労婁廊弄朗楼榔浪漏牢狼篭老聾蝋郎六麓禄肋録論倭和話歪賄脇惑枠鷲亙亘鰐詫藁蕨椀湾碗腕"],["d0a1","弌丐丕个丱丶丼丿乂乖乘亂亅豫亊舒弍于亞亟亠亢亰亳亶从仍仄仆仂仗仞仭仟价伉佚估佛佝佗佇佶侈侏侘佻佩佰侑佯來侖儘俔俟俎俘俛俑俚俐俤俥倚倨倔倪倥倅伜俶倡倩倬俾俯們倆偃假會偕偐偈做偖偬偸傀傚傅傴傲"],["d1a1","僉僊傳僂僖僞僥僭僣僮價僵儉儁儂儖儕儔儚儡儺儷儼儻儿兀兒兌兔兢竸兩兪兮冀冂囘册冉冏冑冓冕冖冤冦冢冩冪冫决冱冲冰况冽凅凉凛几處凩凭凰凵凾刄刋刔刎刧刪刮刳刹剏剄剋剌剞剔剪剴剩剳剿剽劍劔劒剱劈劑辨"],["d2a1","辧劬劭劼劵勁勍勗勞勣勦飭勠勳勵勸勹匆匈甸匍匐匏匕匚匣匯匱匳匸區卆卅丗卉卍凖卞卩卮夘卻卷厂厖厠厦厥厮厰厶參簒雙叟曼燮叮叨叭叺吁吽呀听吭吼吮吶吩吝呎咏呵咎呟呱呷呰咒呻咀呶咄咐咆哇咢咸咥咬哄哈咨"],["d3a1","咫哂咤咾咼哘哥哦唏唔哽哮哭哺哢唹啀啣啌售啜啅啖啗唸唳啝喙喀咯喊喟啻啾喘喞單啼喃喩喇喨嗚嗅嗟嗄嗜嗤嗔嘔嗷嘖嗾嗽嘛嗹噎噐營嘴嘶嘲嘸噫噤嘯噬噪嚆嚀嚊嚠嚔嚏嚥嚮嚶嚴囂嚼囁囃囀囈囎囑囓囗囮囹圀囿圄圉"],["d4a1","圈國圍圓團圖嗇圜圦圷圸坎圻址坏坩埀垈坡坿垉垓垠垳垤垪垰埃埆埔埒埓堊埖埣堋堙堝塲堡塢塋塰毀塒堽塹墅墹墟墫墺壞墻墸墮壅壓壑壗壙壘壥壜壤壟壯壺壹壻壼壽夂夊夐夛梦夥夬夭夲夸夾竒奕奐奎奚奘奢奠奧奬奩"],["d5a1","奸妁妝佞侫妣妲姆姨姜妍姙姚娥娟娑娜娉娚婀婬婉娵娶婢婪媚媼媾嫋嫂媽嫣嫗嫦嫩嫖嫺嫻嬌嬋嬖嬲嫐嬪嬶嬾孃孅孀孑孕孚孛孥孩孰孳孵學斈孺宀它宦宸寃寇寉寔寐寤實寢寞寥寫寰寶寳尅將專對尓尠尢尨尸尹屁屆屎屓"],["d6a1","屐屏孱屬屮乢屶屹岌岑岔妛岫岻岶岼岷峅岾峇峙峩峽峺峭嶌峪崋崕崗嵜崟崛崑崔崢崚崙崘嵌嵒嵎嵋嵬嵳嵶嶇嶄嶂嶢嶝嶬嶮嶽嶐嶷嶼巉巍巓巒巖巛巫已巵帋帚帙帑帛帶帷幄幃幀幎幗幔幟幢幤幇幵并幺麼广庠廁廂廈廐廏"],["d7a1","廖廣廝廚廛廢廡廨廩廬廱廳廰廴廸廾弃弉彝彜弋弑弖弩弭弸彁彈彌彎弯彑彖彗彙彡彭彳彷徃徂彿徊很徑徇從徙徘徠徨徭徼忖忻忤忸忱忝悳忿怡恠怙怐怩怎怱怛怕怫怦怏怺恚恁恪恷恟恊恆恍恣恃恤恂恬恫恙悁悍惧悃悚"],["d8a1","悄悛悖悗悒悧悋惡悸惠惓悴忰悽惆悵惘慍愕愆惶惷愀惴惺愃愡惻惱愍愎慇愾愨愧慊愿愼愬愴愽慂慄慳慷慘慙慚慫慴慯慥慱慟慝慓慵憙憖憇憬憔憚憊憑憫憮懌懊應懷懈懃懆憺懋罹懍懦懣懶懺懴懿懽懼懾戀戈戉戍戌戔戛"],["d9a1","戞戡截戮戰戲戳扁扎扞扣扛扠扨扼抂抉找抒抓抖拔抃抔拗拑抻拏拿拆擔拈拜拌拊拂拇抛拉挌拮拱挧挂挈拯拵捐挾捍搜捏掖掎掀掫捶掣掏掉掟掵捫捩掾揩揀揆揣揉插揶揄搖搴搆搓搦搶攝搗搨搏摧摯摶摎攪撕撓撥撩撈撼"],["daa1","據擒擅擇撻擘擂擱擧舉擠擡抬擣擯攬擶擴擲擺攀擽攘攜攅攤攣攫攴攵攷收攸畋效敖敕敍敘敞敝敲數斂斃變斛斟斫斷旃旆旁旄旌旒旛旙无旡旱杲昊昃旻杳昵昶昴昜晏晄晉晁晞晝晤晧晨晟晢晰暃暈暎暉暄暘暝曁暹曉暾暼"],["dba1","曄暸曖曚曠昿曦曩曰曵曷朏朖朞朦朧霸朮朿朶杁朸朷杆杞杠杙杣杤枉杰枩杼杪枌枋枦枡枅枷柯枴柬枳柩枸柤柞柝柢柮枹柎柆柧檜栞框栩桀桍栲桎梳栫桙档桷桿梟梏梭梔條梛梃檮梹桴梵梠梺椏梍桾椁棊椈棘椢椦棡椌棍"],["dca1","棔棧棕椶椒椄棗棣椥棹棠棯椨椪椚椣椡棆楹楷楜楸楫楔楾楮椹楴椽楙椰楡楞楝榁楪榲榮槐榿槁槓榾槎寨槊槝榻槃榧樮榑榠榜榕榴槞槨樂樛槿權槹槲槧樅榱樞槭樔槫樊樒櫁樣樓橄樌橲樶橸橇橢橙橦橈樸樢檐檍檠檄檢檣"],["dda1","檗蘗檻櫃櫂檸檳檬櫞櫑櫟檪櫚櫪櫻欅蘖櫺欒欖鬱欟欸欷盜欹飮歇歃歉歐歙歔歛歟歡歸歹歿殀殄殃殍殘殕殞殤殪殫殯殲殱殳殷殼毆毋毓毟毬毫毳毯麾氈氓气氛氤氣汞汕汢汪沂沍沚沁沛汾汨汳沒沐泄泱泓沽泗泅泝沮沱沾"],["dea1","沺泛泯泙泪洟衍洶洫洽洸洙洵洳洒洌浣涓浤浚浹浙涎涕濤涅淹渕渊涵淇淦涸淆淬淞淌淨淒淅淺淙淤淕淪淮渭湮渮渙湲湟渾渣湫渫湶湍渟湃渺湎渤滿渝游溂溪溘滉溷滓溽溯滄溲滔滕溏溥滂溟潁漑灌滬滸滾漿滲漱滯漲滌"],["dfa1","漾漓滷澆潺潸澁澀潯潛濳潭澂潼潘澎澑濂潦澳澣澡澤澹濆澪濟濕濬濔濘濱濮濛瀉瀋濺瀑瀁瀏濾瀛瀚潴瀝瀘瀟瀰瀾瀲灑灣炙炒炯烱炬炸炳炮烟烋烝烙焉烽焜焙煥煕熈煦煢煌煖煬熏燻熄熕熨熬燗熹熾燒燉燔燎燠燬燧燵燼"],["e0a1","燹燿爍爐爛爨爭爬爰爲爻爼爿牀牆牋牘牴牾犂犁犇犒犖犢犧犹犲狃狆狄狎狒狢狠狡狹狷倏猗猊猜猖猝猴猯猩猥猾獎獏默獗獪獨獰獸獵獻獺珈玳珎玻珀珥珮珞璢琅瑯琥珸琲琺瑕琿瑟瑙瑁瑜瑩瑰瑣瑪瑶瑾璋璞璧瓊瓏瓔珱"],["e1a1","瓠瓣瓧瓩瓮瓲瓰瓱瓸瓷甄甃甅甌甎甍甕甓甞甦甬甼畄畍畊畉畛畆畚畩畤畧畫畭畸當疆疇畴疊疉疂疔疚疝疥疣痂疳痃疵疽疸疼疱痍痊痒痙痣痞痾痿痼瘁痰痺痲痳瘋瘍瘉瘟瘧瘠瘡瘢瘤瘴瘰瘻癇癈癆癜癘癡癢癨癩癪癧癬癰"],["e2a1","癲癶癸發皀皃皈皋皎皖皓皙皚皰皴皸皹皺盂盍盖盒盞盡盥盧盪蘯盻眈眇眄眩眤眞眥眦眛眷眸睇睚睨睫睛睥睿睾睹瞎瞋瞑瞠瞞瞰瞶瞹瞿瞼瞽瞻矇矍矗矚矜矣矮矼砌砒礦砠礪硅碎硴碆硼碚碌碣碵碪碯磑磆磋磔碾碼磅磊磬"],["e3a1","磧磚磽磴礇礒礑礙礬礫祀祠祗祟祚祕祓祺祿禊禝禧齋禪禮禳禹禺秉秕秧秬秡秣稈稍稘稙稠稟禀稱稻稾稷穃穗穉穡穢穩龝穰穹穽窈窗窕窘窖窩竈窰窶竅竄窿邃竇竊竍竏竕竓站竚竝竡竢竦竭竰笂笏笊笆笳笘笙笞笵笨笶筐"],["e4a1","筺笄筍笋筌筅筵筥筴筧筰筱筬筮箝箘箟箍箜箚箋箒箏筝箙篋篁篌篏箴篆篝篩簑簔篦篥籠簀簇簓篳篷簗簍篶簣簧簪簟簷簫簽籌籃籔籏籀籐籘籟籤籖籥籬籵粃粐粤粭粢粫粡粨粳粲粱粮粹粽糀糅糂糘糒糜糢鬻糯糲糴糶糺紆"],["e5a1","紂紜紕紊絅絋紮紲紿紵絆絳絖絎絲絨絮絏絣經綉絛綏絽綛綺綮綣綵緇綽綫總綢綯緜綸綟綰緘緝緤緞緻緲緡縅縊縣縡縒縱縟縉縋縢繆繦縻縵縹繃縷縲縺繧繝繖繞繙繚繹繪繩繼繻纃緕繽辮繿纈纉續纒纐纓纔纖纎纛纜缸缺"],["e6a1","罅罌罍罎罐网罕罔罘罟罠罨罩罧罸羂羆羃羈羇羌羔羞羝羚羣羯羲羹羮羶羸譱翅翆翊翕翔翡翦翩翳翹飜耆耄耋耒耘耙耜耡耨耿耻聊聆聒聘聚聟聢聨聳聲聰聶聹聽聿肄肆肅肛肓肚肭冐肬胛胥胙胝胄胚胖脉胯胱脛脩脣脯腋"],["e7a1","隋腆脾腓腑胼腱腮腥腦腴膃膈膊膀膂膠膕膤膣腟膓膩膰膵膾膸膽臀臂膺臉臍臑臙臘臈臚臟臠臧臺臻臾舁舂舅與舊舍舐舖舩舫舸舳艀艙艘艝艚艟艤艢艨艪艫舮艱艷艸艾芍芒芫芟芻芬苡苣苟苒苴苳苺莓范苻苹苞茆苜茉苙"],["e8a1","茵茴茖茲茱荀茹荐荅茯茫茗茘莅莚莪莟莢莖茣莎莇莊荼莵荳荵莠莉莨菴萓菫菎菽萃菘萋菁菷萇菠菲萍萢萠莽萸蔆菻葭萪萼蕚蒄葷葫蒭葮蒂葩葆萬葯葹萵蓊葢蒹蒿蒟蓙蓍蒻蓚蓐蓁蓆蓖蒡蔡蓿蓴蔗蔘蔬蔟蔕蔔蓼蕀蕣蕘蕈"],["e9a1","蕁蘂蕋蕕薀薤薈薑薊薨蕭薔薛藪薇薜蕷蕾薐藉薺藏薹藐藕藝藥藜藹蘊蘓蘋藾藺蘆蘢蘚蘰蘿虍乕虔號虧虱蚓蚣蚩蚪蚋蚌蚶蚯蛄蛆蚰蛉蠣蚫蛔蛞蛩蛬蛟蛛蛯蜒蜆蜈蜀蜃蛻蜑蜉蜍蛹蜊蜴蜿蜷蜻蜥蜩蜚蝠蝟蝸蝌蝎蝴蝗蝨蝮蝙"],["eaa1","蝓蝣蝪蠅螢螟螂螯蟋螽蟀蟐雖螫蟄螳蟇蟆螻蟯蟲蟠蠏蠍蟾蟶蟷蠎蟒蠑蠖蠕蠢蠡蠱蠶蠹蠧蠻衄衂衒衙衞衢衫袁衾袞衵衽袵衲袂袗袒袮袙袢袍袤袰袿袱裃裄裔裘裙裝裹褂裼裴裨裲褄褌褊褓襃褞褥褪褫襁襄褻褶褸襌褝襠襞"],["eba1","襦襤襭襪襯襴襷襾覃覈覊覓覘覡覩覦覬覯覲覺覽覿觀觚觜觝觧觴觸訃訖訐訌訛訝訥訶詁詛詒詆詈詼詭詬詢誅誂誄誨誡誑誥誦誚誣諄諍諂諚諫諳諧諤諱謔諠諢諷諞諛謌謇謚諡謖謐謗謠謳鞫謦謫謾謨譁譌譏譎證譖譛譚譫"],["eca1","譟譬譯譴譽讀讌讎讒讓讖讙讚谺豁谿豈豌豎豐豕豢豬豸豺貂貉貅貊貍貎貔豼貘戝貭貪貽貲貳貮貶賈賁賤賣賚賽賺賻贄贅贊贇贏贍贐齎贓賍贔贖赧赭赱赳趁趙跂趾趺跏跚跖跌跛跋跪跫跟跣跼踈踉跿踝踞踐踟蹂踵踰踴蹊"],["eda1","蹇蹉蹌蹐蹈蹙蹤蹠踪蹣蹕蹶蹲蹼躁躇躅躄躋躊躓躑躔躙躪躡躬躰軆躱躾軅軈軋軛軣軼軻軫軾輊輅輕輒輙輓輜輟輛輌輦輳輻輹轅轂輾轌轉轆轎轗轜轢轣轤辜辟辣辭辯辷迚迥迢迪迯邇迴逅迹迺逑逕逡逍逞逖逋逧逶逵逹迸"],["eea1","遏遐遑遒逎遉逾遖遘遞遨遯遶隨遲邂遽邁邀邊邉邏邨邯邱邵郢郤扈郛鄂鄒鄙鄲鄰酊酖酘酣酥酩酳酲醋醉醂醢醫醯醪醵醴醺釀釁釉釋釐釖釟釡釛釼釵釶鈞釿鈔鈬鈕鈑鉞鉗鉅鉉鉤鉈銕鈿鉋鉐銜銖銓銛鉚鋏銹銷鋩錏鋺鍄錮"],["efa1","錙錢錚錣錺錵錻鍜鍠鍼鍮鍖鎰鎬鎭鎔鎹鏖鏗鏨鏥鏘鏃鏝鏐鏈鏤鐚鐔鐓鐃鐇鐐鐶鐫鐵鐡鐺鑁鑒鑄鑛鑠鑢鑞鑪鈩鑰鑵鑷鑽鑚鑼鑾钁鑿閂閇閊閔閖閘閙閠閨閧閭閼閻閹閾闊濶闃闍闌闕闔闖關闡闥闢阡阨阮阯陂陌陏陋陷陜陞"],["f0a1","陝陟陦陲陬隍隘隕隗險隧隱隲隰隴隶隸隹雎雋雉雍襍雜霍雕雹霄霆霈霓霎霑霏霖霙霤霪霰霹霽霾靄靆靈靂靉靜靠靤靦靨勒靫靱靹鞅靼鞁靺鞆鞋鞏鞐鞜鞨鞦鞣鞳鞴韃韆韈韋韜韭齏韲竟韶韵頏頌頸頤頡頷頽顆顏顋顫顯顰"],["f1a1","顱顴顳颪颯颱颶飄飃飆飩飫餃餉餒餔餘餡餝餞餤餠餬餮餽餾饂饉饅饐饋饑饒饌饕馗馘馥馭馮馼駟駛駝駘駑駭駮駱駲駻駸騁騏騅駢騙騫騷驅驂驀驃騾驕驍驛驗驟驢驥驤驩驫驪骭骰骼髀髏髑髓體髞髟髢髣髦髯髫髮髴髱髷"],["f2a1","髻鬆鬘鬚鬟鬢鬣鬥鬧鬨鬩鬪鬮鬯鬲魄魃魏魍魎魑魘魴鮓鮃鮑鮖鮗鮟鮠鮨鮴鯀鯊鮹鯆鯏鯑鯒鯣鯢鯤鯔鯡鰺鯲鯱鯰鰕鰔鰉鰓鰌鰆鰈鰒鰊鰄鰮鰛鰥鰤鰡鰰鱇鰲鱆鰾鱚鱠鱧鱶鱸鳧鳬鳰鴉鴈鳫鴃鴆鴪鴦鶯鴣鴟鵄鴕鴒鵁鴿鴾鵆鵈"],["f3a1","鵝鵞鵤鵑鵐鵙鵲鶉鶇鶫鵯鵺鶚鶤鶩鶲鷄鷁鶻鶸鶺鷆鷏鷂鷙鷓鷸鷦鷭鷯鷽鸚鸛鸞鹵鹹鹽麁麈麋麌麒麕麑麝麥麩麸麪麭靡黌黎黏黐黔黜點黝黠黥黨黯黴黶黷黹黻黼黽鼇鼈皷鼕鼡鼬鼾齊齒齔齣齟齠齡齦齧齬齪齷齲齶龕龜龠"],["f4a1","堯槇遙瑤凜熙"],["f9a1","纊褜鍈銈蓜俉炻昱棈鋹曻彅丨仡仼伀伃伹佖侒侊侚侔俍偀倢俿倞偆偰偂傔僴僘兊兤冝冾凬刕劜劦勀勛匀匇匤卲厓厲叝﨎咜咊咩哿喆坙坥垬埈埇﨏塚增墲夋奓奛奝奣妤妺孖寀甯寘寬尞岦岺峵崧嵓﨑嵂嵭嶸嶹巐弡弴彧德"],["faa1","忞恝悅悊惞惕愠惲愑愷愰憘戓抦揵摠撝擎敎昀昕昻昉昮昞昤晥晗晙晴晳暙暠暲暿曺朎朗杦枻桒柀栁桄棏﨓楨﨔榘槢樰橫橆橳橾櫢櫤毖氿汜沆汯泚洄涇浯涖涬淏淸淲淼渹湜渧渼溿澈澵濵瀅瀇瀨炅炫焏焄煜煆煇凞燁燾犱"],["fba1","犾猤猪獷玽珉珖珣珒琇珵琦琪琩琮瑢璉璟甁畯皂皜皞皛皦益睆劯砡硎硤硺礰礼神祥禔福禛竑竧靖竫箞精絈絜綷綠緖繒罇羡羽茁荢荿菇菶葈蒴蕓蕙蕫﨟薰蘒﨡蠇裵訒訷詹誧誾諟諸諶譓譿賰賴贒赶﨣軏﨤逸遧郞都鄕鄧釚"],["fca1","釗釞釭釮釤釥鈆鈐鈊鈺鉀鈼鉎鉙鉑鈹鉧銧鉷鉸鋧鋗鋙鋐﨧鋕鋠鋓錥錡鋻﨨錞鋿錝錂鍰鍗鎤鏆鏞鏸鐱鑅鑈閒隆﨩隝隯霳霻靃靍靏靑靕顗顥飯飼餧館馞驎髙髜魵魲鮏鮱鮻鰀鵰鵫鶴鸙黑"],["fcf1","ⅰ",9,"¬¦'""],["8fa2af","˘ˇ¸˙˝¯˛˚~΄΅"],["8fa2c2","¡¦¿"],["8fa2eb","ºª©®™¤№"],["8fa6e1","ΆΈΉΊΪ"],["8fa6e7","Ό"],["8fa6e9","ΎΫ"],["8fa6ec","Ώ"],["8fa6f1","άέήίϊΐόςύϋΰώ"],["8fa7c2","Ђ",10,"ЎЏ"],["8fa7f2","ђ",10,"ўџ"],["8fa9a1","ÆĐ"],["8fa9a4","Ħ"],["8fa9a6","IJ"],["8fa9a8","ŁĿ"],["8fa9ab","ŊØŒ"],["8fa9af","ŦÞ"],["8fa9c1","æđðħıijĸłŀʼnŋøœßŧþ"],["8faaa1","ÁÀÄÂĂǍĀĄÅÃĆĈČÇĊĎÉÈËÊĚĖĒĘ"],["8faaba","ĜĞĢĠĤÍÌÏÎǏİĪĮĨĴĶĹĽĻŃŇŅÑÓÒÖÔǑŐŌÕŔŘŖŚŜŠŞŤŢÚÙÜÛŬǓŰŪŲŮŨǗǛǙǕŴÝŸŶŹŽŻ"],["8faba1","áàäâăǎāąåãćĉčçċďéèëêěėēęǵĝğ"],["8fabbd","ġĥíìïîǐ"],["8fabc5","īįĩĵķĺľļńňņñóòöôǒőōõŕřŗśŝšşťţúùüûŭǔűūųůũǘǜǚǖŵýÿŷźžż"],["8fb0a1","丂丄丅丌丒丟丣两丨丫丮丯丰丵乀乁乄乇乑乚乜乣乨乩乴乵乹乿亍亖亗亝亯亹仃仐仚仛仠仡仢仨仯仱仳仵份仾仿伀伂伃伈伋伌伒伕伖众伙伮伱你伳伵伷伹伻伾佀佂佈佉佋佌佒佔佖佘佟佣佪佬佮佱佷佸佹佺佽佾侁侂侄"],["8fb1a1","侅侉侊侌侎侐侒侓侔侗侙侚侞侟侲侷侹侻侼侽侾俀俁俅俆俈俉俋俌俍俏俒俜俠俢俰俲俼俽俿倀倁倄倇倊倌倎倐倓倗倘倛倜倝倞倢倧倮倰倲倳倵偀偁偂偅偆偊偌偎偑偒偓偗偙偟偠偢偣偦偧偪偭偰偱倻傁傃傄傆傊傎傏傐"],["8fb2a1","傒傓傔傖傛傜傞",4,"傪傯傰傹傺傽僀僃僄僇僌僎僐僓僔僘僜僝僟僢僤僦僨僩僯僱僶僺僾儃儆儇儈儋儌儍儎僲儐儗儙儛儜儝儞儣儧儨儬儭儯儱儳儴儵儸儹兂兊兏兓兕兗兘兟兤兦兾冃冄冋冎冘冝冡冣冭冸冺冼冾冿凂"],["8fb3a1","凈减凑凒凓凕凘凞凢凥凮凲凳凴凷刁刂刅划刓刕刖刘刢刨刱刲刵刼剅剉剕剗剘剚剜剟剠剡剦剮剷剸剹劀劂劅劊劌劓劕劖劗劘劚劜劤劥劦劧劯劰劶劷劸劺劻劽勀勄勆勈勌勏勑勔勖勛勜勡勥勨勩勪勬勰勱勴勶勷匀匃匊匋"],["8fb4a1","匌匑匓匘匛匜匞匟匥匧匨匩匫匬匭匰匲匵匼匽匾卂卌卋卙卛卡卣卥卬卭卲卹卾厃厇厈厎厓厔厙厝厡厤厪厫厯厲厴厵厷厸厺厽叀叅叏叒叓叕叚叝叞叠另叧叵吂吓吚吡吧吨吪启吱吴吵呃呄呇呍呏呞呢呤呦呧呩呫呭呮呴呿"],["8fb5a1","咁咃咅咈咉咍咑咕咖咜咟咡咦咧咩咪咭咮咱咷咹咺咻咿哆哊响哎哠哪哬哯哶哼哾哿唀唁唅唈唉唌唍唎唕唪唫唲唵唶唻唼唽啁啇啉啊啍啐啑啘啚啛啞啠啡啤啦啿喁喂喆喈喎喏喑喒喓喔喗喣喤喭喲喿嗁嗃嗆嗉嗋嗌嗎嗑嗒"],["8fb6a1","嗓嗗嗘嗛嗞嗢嗩嗶嗿嘅嘈嘊嘍",5,"嘙嘬嘰嘳嘵嘷嘹嘻嘼嘽嘿噀噁噃噄噆噉噋噍噏噔噞噠噡噢噣噦噩噭噯噱噲噵嚄嚅嚈嚋嚌嚕嚙嚚嚝嚞嚟嚦嚧嚨嚩嚫嚬嚭嚱嚳嚷嚾囅囉囊囋囏囐囌囍囙囜囝囟囡囤",4,"囱囫园"],["8fb7a1","囶囷圁圂圇圊圌圑圕圚圛圝圠圢圣圤圥圩圪圬圮圯圳圴圽圾圿坅坆坌坍坒坢坥坧坨坫坭",4,"坳坴坵坷坹坺坻坼坾垁垃垌垔垗垙垚垜垝垞垟垡垕垧垨垩垬垸垽埇埈埌埏埕埝埞埤埦埧埩埭埰埵埶埸埽埾埿堃堄堈堉埡"],["8fb8a1","堌堍堛堞堟堠堦堧堭堲堹堿塉塌塍塏塐塕塟塡塤塧塨塸塼塿墀墁墇墈墉墊墌墍墏墐墔墖墝墠墡墢墦墩墱墲壄墼壂壈壍壎壐壒壔壖壚壝壡壢壩壳夅夆夋夌夒夓夔虁夝夡夣夤夨夯夰夳夵夶夿奃奆奒奓奙奛奝奞奟奡奣奫奭"],["8fb9a1","奯奲奵奶她奻奼妋妌妎妒妕妗妟妤妧妭妮妯妰妳妷妺妼姁姃姄姈姊姍姒姝姞姟姣姤姧姮姯姱姲姴姷娀娄娌娍娎娒娓娞娣娤娧娨娪娭娰婄婅婇婈婌婐婕婞婣婥婧婭婷婺婻婾媋媐媓媖媙媜媞媟媠媢媧媬媱媲媳媵媸媺媻媿"],["8fbaa1","嫄嫆嫈嫏嫚嫜嫠嫥嫪嫮嫵嫶嫽嬀嬁嬈嬗嬴嬙嬛嬝嬡嬥嬭嬸孁孋孌孒孖孞孨孮孯孼孽孾孿宁宄宆宊宎宐宑宓宔宖宨宩宬宭宯宱宲宷宺宼寀寁寍寏寖",4,"寠寯寱寴寽尌尗尞尟尣尦尩尫尬尮尰尲尵尶屙屚屜屢屣屧屨屩"],["8fbba1","屭屰屴屵屺屻屼屽岇岈岊岏岒岝岟岠岢岣岦岪岲岴岵岺峉峋峒峝峗峮峱峲峴崁崆崍崒崫崣崤崦崧崱崴崹崽崿嵂嵃嵆嵈嵕嵑嵙嵊嵟嵠嵡嵢嵤嵪嵭嵰嵹嵺嵾嵿嶁嶃嶈嶊嶒嶓嶔嶕嶙嶛嶟嶠嶧嶫嶰嶴嶸嶹巃巇巋巐巎巘巙巠巤"],["8fbca1","巩巸巹帀帇帍帒帔帕帘帟帠帮帨帲帵帾幋幐幉幑幖幘幛幜幞幨幪",4,"幰庀庋庎庢庤庥庨庪庬庱庳庽庾庿廆廌廋廎廑廒廔廕廜廞廥廫异弆弇弈弎弙弜弝弡弢弣弤弨弫弬弮弰弴弶弻弽弿彀彄彅彇彍彐彔彘彛彠彣彤彧"],["8fbda1","彯彲彴彵彸彺彽彾徉徍徏徖徜徝徢徧徫徤徬徯徰徱徸忄忇忈忉忋忐",4,"忞忡忢忨忩忪忬忭忮忯忲忳忶忺忼怇怊怍怓怔怗怘怚怟怤怭怳怵恀恇恈恉恌恑恔恖恗恝恡恧恱恾恿悂悆悈悊悎悑悓悕悘悝悞悢悤悥您悰悱悷"],["8fbea1","悻悾惂惄惈惉惊惋惎惏惔惕惙惛惝惞惢惥惲惵惸惼惽愂愇愊愌愐",4,"愖愗愙愜愞愢愪愫愰愱愵愶愷愹慁慅慆慉慞慠慬慲慸慻慼慿憀憁憃憄憋憍憒憓憗憘憜憝憟憠憥憨憪憭憸憹憼懀懁懂懎懏懕懜懝懞懟懡懢懧懩懥"],["8fbfa1","懬懭懯戁戃戄戇戓戕戜戠戢戣戧戩戫戹戽扂扃扄扆扌扐扑扒扔扖扚扜扤扭扯扳扺扽抍抎抏抐抦抨抳抶抷抺抾抿拄拎拕拖拚拪拲拴拼拽挃挄挊挋挍挐挓挖挘挩挪挭挵挶挹挼捁捂捃捄捆捊捋捎捒捓捔捘捛捥捦捬捭捱捴捵"],["8fc0a1","捸捼捽捿掂掄掇掊掐掔掕掙掚掞掤掦掭掮掯掽揁揅揈揎揑揓揔揕揜揠揥揪揬揲揳揵揸揹搉搊搐搒搔搘搞搠搢搤搥搩搪搯搰搵搽搿摋摏摑摒摓摔摚摛摜摝摟摠摡摣摭摳摴摻摽撅撇撏撐撑撘撙撛撝撟撡撣撦撨撬撳撽撾撿"],["8fc1a1","擄擉擊擋擌擎擐擑擕擗擤擥擩擪擭擰擵擷擻擿攁攄攈攉攊攏攓攔攖攙攛攞攟攢攦攩攮攱攺攼攽敃敇敉敐敒敔敟敠敧敫敺敽斁斅斊斒斕斘斝斠斣斦斮斲斳斴斿旂旈旉旎旐旔旖旘旟旰旲旴旵旹旾旿昀昄昈昉昍昑昒昕昖昝"],["8fc2a1","昞昡昢昣昤昦昩昪昫昬昮昰昱昳昹昷晀晅晆晊晌晑晎晗晘晙晛晜晠晡曻晪晫晬晾晳晵晿晷晸晹晻暀晼暋暌暍暐暒暙暚暛暜暟暠暤暭暱暲暵暻暿曀曂曃曈曌曎曏曔曛曟曨曫曬曮曺朅朇朎朓朙朜朠朢朳朾杅杇杈杌杔杕杝"],["8fc3a1","杦杬杮杴杶杻极构枎枏枑枓枖枘枙枛枰枱枲枵枻枼枽柹柀柂柃柅柈柉柒柗柙柜柡柦柰柲柶柷桒栔栙栝栟栨栧栬栭栯栰栱栳栻栿桄桅桊桌桕桗桘桛桫桮",4,"桵桹桺桻桼梂梄梆梈梖梘梚梜梡梣梥梩梪梮梲梻棅棈棌棏"],["8fc4a1","棐棑棓棖棙棜棝棥棨棪棫棬棭棰棱棵棶棻棼棽椆椉椊椐椑椓椖椗椱椳椵椸椻楂楅楉楎楗楛楣楤楥楦楨楩楬楰楱楲楺楻楿榀榍榒榖榘榡榥榦榨榫榭榯榷榸榺榼槅槈槑槖槗槢槥槮槯槱槳槵槾樀樁樃樏樑樕樚樝樠樤樨樰樲"],["8fc5a1","樴樷樻樾樿橅橆橉橊橎橐橑橒橕橖橛橤橧橪橱橳橾檁檃檆檇檉檋檑檛檝檞檟檥檫檯檰檱檴檽檾檿櫆櫉櫈櫌櫐櫔櫕櫖櫜櫝櫤櫧櫬櫰櫱櫲櫼櫽欂欃欆欇欉欏欐欑欗欛欞欤欨欫欬欯欵欶欻欿歆歊歍歒歖歘歝歠歧歫歮歰歵歽"],["8fc6a1","歾殂殅殗殛殟殠殢殣殨殩殬殭殮殰殸殹殽殾毃毄毉毌毖毚毡毣毦毧毮毱毷毹毿氂氄氅氉氍氎氐氒氙氟氦氧氨氬氮氳氵氶氺氻氿汊汋汍汏汒汔汙汛汜汫汭汯汴汶汸汹汻沅沆沇沉沔沕沗沘沜沟沰沲沴泂泆泍泏泐泑泒泔泖"],["8fc7a1","泚泜泠泧泩泫泬泮泲泴洄洇洊洎洏洑洓洚洦洧洨汧洮洯洱洹洼洿浗浞浟浡浥浧浯浰浼涂涇涑涒涔涖涗涘涪涬涴涷涹涽涿淄淈淊淎淏淖淛淝淟淠淢淥淩淯淰淴淶淼渀渄渞渢渧渲渶渹渻渼湄湅湈湉湋湏湑湒湓湔湗湜湝湞"],["8fc8a1","湢湣湨湳湻湽溍溓溙溠溧溭溮溱溳溻溿滀滁滃滇滈滊滍滎滏滫滭滮滹滻滽漄漈漊漌漍漖漘漚漛漦漩漪漯漰漳漶漻漼漭潏潑潒潓潗潙潚潝潞潡潢潨潬潽潾澃澇澈澋澌澍澐澒澓澔澖澚澟澠澥澦澧澨澮澯澰澵澶澼濅濇濈濊"],["8fc9a1","濚濞濨濩濰濵濹濼濽瀀瀅瀆瀇瀍瀗瀠瀣瀯瀴瀷瀹瀼灃灄灈灉灊灋灔灕灝灞灎灤灥灬灮灵灶灾炁炅炆炔",4,"炛炤炫炰炱炴炷烊烑烓烔烕烖烘烜烤烺焃",4,"焋焌焏焞焠焫焭焯焰焱焸煁煅煆煇煊煋煐煒煗煚煜煞煠"],["8fcaa1","煨煹熀熅熇熌熒熚熛熠熢熯熰熲熳熺熿燀燁燄燋燌燓燖燙燚燜燸燾爀爇爈爉爓爗爚爝爟爤爫爯爴爸爹牁牂牃牅牎牏牐牓牕牖牚牜牞牠牣牨牫牮牯牱牷牸牻牼牿犄犉犍犎犓犛犨犭犮犱犴犾狁狇狉狌狕狖狘狟狥狳狴狺狻"],["8fcba1","狾猂猄猅猇猋猍猒猓猘猙猞猢猤猧猨猬猱猲猵猺猻猽獃獍獐獒獖獘獝獞獟獠獦獧獩獫獬獮獯獱獷獹獼玀玁玃玅玆玎玐玓玕玗玘玜玞玟玠玢玥玦玪玫玭玵玷玹玼玽玿珅珆珉珋珌珏珒珓珖珙珝珡珣珦珧珩珴珵珷珹珺珻珽"],["8fcca1","珿琀琁琄琇琊琑琚琛琤琦琨",9,"琹瑀瑃瑄瑆瑇瑋瑍瑑瑒瑗瑝瑢瑦瑧瑨瑫瑭瑮瑱瑲璀璁璅璆璇璉璏璐璑璒璘璙璚璜璟璠璡璣璦璨璩璪璫璮璯璱璲璵璹璻璿瓈瓉瓌瓐瓓瓘瓚瓛瓞瓟瓤瓨瓪瓫瓯瓴瓺瓻瓼瓿甆"],["8fcda1","甒甖甗甠甡甤甧甩甪甯甶甹甽甾甿畀畃畇畈畎畐畒畗畞畟畡畯畱畹",5,"疁疅疐疒疓疕疙疜疢疤疴疺疿痀痁痄痆痌痎痏痗痜痟痠痡痤痧痬痮痯痱痹瘀瘂瘃瘄瘇瘈瘊瘌瘏瘒瘓瘕瘖瘙瘛瘜瘝瘞瘣瘥瘦瘩瘭瘲瘳瘵瘸瘹"],["8fcea1","瘺瘼癊癀癁癃癄癅癉癋癕癙癟癤癥癭癮癯癱癴皁皅皌皍皕皛皜皝皟皠皢",6,"皪皭皽盁盅盉盋盌盎盔盙盠盦盨盬盰盱盶盹盼眀眆眊眎眒眔眕眗眙眚眜眢眨眭眮眯眴眵眶眹眽眾睂睅睆睊睍睎睏睒睖睗睜睞睟睠睢"],["8fcfa1","睤睧睪睬睰睲睳睴睺睽瞀瞄瞌瞍瞔瞕瞖瞚瞟瞢瞧瞪瞮瞯瞱瞵瞾矃矉矑矒矕矙矞矟矠矤矦矪矬矰矱矴矸矻砅砆砉砍砎砑砝砡砢砣砭砮砰砵砷硃硄硇硈硌硎硒硜硞硠硡硣硤硨硪确硺硾碊碏碔碘碡碝碞碟碤碨碬碭碰碱碲碳"],["8fd0a1","碻碽碿磇磈磉磌磎磒磓磕磖磤磛磟磠磡磦磪磲磳礀磶磷磺磻磿礆礌礐礚礜礞礟礠礥礧礩礭礱礴礵礻礽礿祄祅祆祊祋祏祑祔祘祛祜祧祩祫祲祹祻祼祾禋禌禑禓禔禕禖禘禛禜禡禨禩禫禯禱禴禸离秂秄秇秈秊秏秔秖秚秝秞"],["8fd1a1","秠秢秥秪秫秭秱秸秼稂稃稇稉稊稌稑稕稛稞稡稧稫稭稯稰稴稵稸稹稺穄穅穇穈穌穕穖穙穜穝穟穠穥穧穪穭穵穸穾窀窂窅窆窊窋窐窑窔窞窠窣窬窳窵窹窻窼竆竉竌竎竑竛竨竩竫竬竱竴竻竽竾笇笔笟笣笧笩笪笫笭笮笯笰"],["8fd2a1","笱笴笽笿筀筁筇筎筕筠筤筦筩筪筭筯筲筳筷箄箉箎箐箑箖箛箞箠箥箬箯箰箲箵箶箺箻箼箽篂篅篈篊篔篖篗篙篚篛篨篪篲篴篵篸篹篺篼篾簁簂簃簄簆簉簋簌簎簏簙簛簠簥簦簨簬簱簳簴簶簹簺籆籊籕籑籒籓籙",5],["8fd3a1","籡籣籧籩籭籮籰籲籹籼籽粆粇粏粔粞粠粦粰粶粷粺粻粼粿糄糇糈糉糍糏糓糔糕糗糙糚糝糦糩糫糵紃紇紈紉紏紑紒紓紖紝紞紣紦紪紭紱紼紽紾絀絁絇絈絍絑絓絗絙絚絜絝絥絧絪絰絸絺絻絿綁綂綃綅綆綈綋綌綍綑綖綗綝"],["8fd4a1","綞綦綧綪綳綶綷綹緂",4,"緌緍緎緗緙縀緢緥緦緪緫緭緱緵緶緹緺縈縐縑縕縗縜縝縠縧縨縬縭縯縳縶縿繄繅繇繎繐繒繘繟繡繢繥繫繮繯繳繸繾纁纆纇纊纍纑纕纘纚纝纞缼缻缽缾缿罃罄罇罏罒罓罛罜罝罡罣罤罥罦罭"],["8fd5a1","罱罽罾罿羀羋羍羏羐羑羖羗羜羡羢羦羪羭羴羼羿翀翃翈翎翏翛翟翣翥翨翬翮翯翲翺翽翾翿耇耈耊耍耎耏耑耓耔耖耝耞耟耠耤耦耬耮耰耴耵耷耹耺耼耾聀聄聠聤聦聭聱聵肁肈肎肜肞肦肧肫肸肹胈胍胏胒胔胕胗胘胠胭胮"],["8fd6a1","胰胲胳胶胹胺胾脃脋脖脗脘脜脞脠脤脧脬脰脵脺脼腅腇腊腌腒腗腠腡腧腨腩腭腯腷膁膐膄膅膆膋膎膖膘膛膞膢膮膲膴膻臋臃臅臊臎臏臕臗臛臝臞臡臤臫臬臰臱臲臵臶臸臹臽臿舀舃舏舓舔舙舚舝舡舢舨舲舴舺艃艄艅艆"],["8fd7a1","艋艎艏艑艖艜艠艣艧艭艴艻艽艿芀芁芃芄芇芉芊芎芑芔芖芘芚芛芠芡芣芤芧芨芩芪芮芰芲芴芷芺芼芾芿苆苐苕苚苠苢苤苨苪苭苯苶苷苽苾茀茁茇茈茊茋荔茛茝茞茟茡茢茬茭茮茰茳茷茺茼茽荂荃荄荇荍荎荑荕荖荗荰荸"],["8fd8a1","荽荿莀莂莄莆莍莒莔莕莘莙莛莜莝莦莧莩莬莾莿菀菇菉菏菐菑菔菝荓菨菪菶菸菹菼萁萆萊萏萑萕萙莭萯萹葅葇葈葊葍葏葑葒葖葘葙葚葜葠葤葥葧葪葰葳葴葶葸葼葽蒁蒅蒒蒓蒕蒞蒦蒨蒩蒪蒯蒱蒴蒺蒽蒾蓀蓂蓇蓈蓌蓏蓓"],["8fd9a1","蓜蓧蓪蓯蓰蓱蓲蓷蔲蓺蓻蓽蔂蔃蔇蔌蔎蔐蔜蔞蔢蔣蔤蔥蔧蔪蔫蔯蔳蔴蔶蔿蕆蕏",4,"蕖蕙蕜",6,"蕤蕫蕯蕹蕺蕻蕽蕿薁薅薆薉薋薌薏薓薘薝薟薠薢薥薧薴薶薷薸薼薽薾薿藂藇藊藋藎薭藘藚藟藠藦藨藭藳藶藼"],["8fdaa1","藿蘀蘄蘅蘍蘎蘐蘑蘒蘘蘙蘛蘞蘡蘧蘩蘶蘸蘺蘼蘽虀虂虆虒虓虖虗虘虙虝虠",4,"虩虬虯虵虶虷虺蚍蚑蚖蚘蚚蚜蚡蚦蚧蚨蚭蚱蚳蚴蚵蚷蚸蚹蚿蛀蛁蛃蛅蛑蛒蛕蛗蛚蛜蛠蛣蛥蛧蚈蛺蛼蛽蜄蜅蜇蜋蜎蜏蜐蜓蜔蜙蜞蜟蜡蜣"],["8fdba1","蜨蜮蜯蜱蜲蜹蜺蜼蜽蜾蝀蝃蝅蝍蝘蝝蝡蝤蝥蝯蝱蝲蝻螃",6,"螋螌螐螓螕螗螘螙螞螠螣螧螬螭螮螱螵螾螿蟁蟈蟉蟊蟎蟕蟖蟙蟚蟜蟟蟢蟣蟤蟪蟫蟭蟱蟳蟸蟺蟿蠁蠃蠆蠉蠊蠋蠐蠙蠒蠓蠔蠘蠚蠛蠜蠞蠟蠨蠭蠮蠰蠲蠵"],["8fdca1","蠺蠼衁衃衅衈衉衊衋衎衑衕衖衘衚衜衟衠衤衩衱衹衻袀袘袚袛袜袟袠袨袪袺袽袾裀裊",4,"裑裒裓裛裞裧裯裰裱裵裷褁褆褍褎褏褕褖褘褙褚褜褠褦褧褨褰褱褲褵褹褺褾襀襂襅襆襉襏襒襗襚襛襜襡襢襣襫襮襰襳襵襺"],["8fdda1","襻襼襽覉覍覐覔覕覛覜覟覠覥覰覴覵覶覷覼觔",4,"觥觩觫觭觱觳觶觹觽觿訄訅訇訏訑訒訔訕訞訠訢訤訦訫訬訯訵訷訽訾詀詃詅詇詉詍詎詓詖詗詘詜詝詡詥詧詵詶詷詹詺詻詾詿誀誃誆誋誏誐誒誖誗誙誟誧誩誮誯誳"],["8fdea1","誶誷誻誾諃諆諈諉諊諑諓諔諕諗諝諟諬諰諴諵諶諼諿謅謆謋謑謜謞謟謊謭謰謷謼譂",4,"譈譒譓譔譙譍譞譣譭譶譸譹譼譾讁讄讅讋讍讏讔讕讜讞讟谸谹谽谾豅豇豉豋豏豑豓豔豗豘豛豝豙豣豤豦豨豩豭豳豵豶豻豾貆"],["8fdfa1","貇貋貐貒貓貙貛貜貤貹貺賅賆賉賋賏賖賕賙賝賡賨賬賯賰賲賵賷賸賾賿贁贃贉贒贗贛赥赩赬赮赿趂趄趈趍趐趑趕趞趟趠趦趫趬趯趲趵趷趹趻跀跅跆跇跈跊跎跑跔跕跗跙跤跥跧跬跰趼跱跲跴跽踁踄踅踆踋踑踔踖踠踡踢"],["8fe0a1","踣踦踧踱踳踶踷踸踹踽蹀蹁蹋蹍蹎蹏蹔蹛蹜蹝蹞蹡蹢蹩蹬蹭蹯蹰蹱蹹蹺蹻躂躃躉躐躒躕躚躛躝躞躢躧躩躭躮躳躵躺躻軀軁軃軄軇軏軑軔軜軨軮軰軱軷軹軺軭輀輂輇輈輏輐輖輗輘輞輠輡輣輥輧輨輬輭輮輴輵輶輷輺轀轁"],["8fe1a1","轃轇轏轑",4,"轘轝轞轥辝辠辡辤辥辦辵辶辸达迀迁迆迊迋迍运迒迓迕迠迣迤迨迮迱迵迶迻迾适逄逈逌逘逛逨逩逯逪逬逭逳逴逷逿遃遄遌遛遝遢遦遧遬遰遴遹邅邈邋邌邎邐邕邗邘邙邛邠邡邢邥邰邲邳邴邶邽郌邾郃"],["8fe2a1","郄郅郇郈郕郗郘郙郜郝郟郥郒郶郫郯郰郴郾郿鄀鄄鄅鄆鄈鄍鄐鄔鄖鄗鄘鄚鄜鄞鄠鄥鄢鄣鄧鄩鄮鄯鄱鄴鄶鄷鄹鄺鄼鄽酃酇酈酏酓酗酙酚酛酡酤酧酭酴酹酺酻醁醃醅醆醊醎醑醓醔醕醘醞醡醦醨醬醭醮醰醱醲醳醶醻醼醽醿"],["8fe3a1","釂釃釅釓釔釗釙釚釞釤釥釩釪釬",5,"釷釹釻釽鈀鈁鈄鈅鈆鈇鈉鈊鈌鈐鈒鈓鈖鈘鈜鈝鈣鈤鈥鈦鈨鈮鈯鈰鈳鈵鈶鈸鈹鈺鈼鈾鉀鉂鉃鉆鉇鉊鉍鉎鉏鉑鉘鉙鉜鉝鉠鉡鉥鉧鉨鉩鉮鉯鉰鉵",4,"鉻鉼鉽鉿銈銉銊銍銎銒銗"],["8fe4a1","銙銟銠銤銥銧銨銫銯銲銶銸銺銻銼銽銿",4,"鋅鋆鋇鋈鋋鋌鋍鋎鋐鋓鋕鋗鋘鋙鋜鋝鋟鋠鋡鋣鋥鋧鋨鋬鋮鋰鋹鋻鋿錀錂錈錍錑錔錕錜錝錞錟錡錤錥錧錩錪錳錴錶錷鍇鍈鍉鍐鍑鍒鍕鍗鍘鍚鍞鍤鍥鍧鍩鍪鍭鍯鍰鍱鍳鍴鍶"],["8fe5a1","鍺鍽鍿鎀鎁鎂鎈鎊鎋鎍鎏鎒鎕鎘鎛鎞鎡鎣鎤鎦鎨鎫鎴鎵鎶鎺鎩鏁鏄鏅鏆鏇鏉",4,"鏓鏙鏜鏞鏟鏢鏦鏧鏹鏷鏸鏺鏻鏽鐁鐂鐄鐈鐉鐍鐎鐏鐕鐖鐗鐟鐮鐯鐱鐲鐳鐴鐻鐿鐽鑃鑅鑈鑊鑌鑕鑙鑜鑟鑡鑣鑨鑫鑭鑮鑯鑱鑲钄钃镸镹"],["8fe6a1","镾閄閈閌閍閎閝閞閟閡閦閩閫閬閴閶閺閽閿闆闈闉闋闐闑闒闓闙闚闝闞闟闠闤闦阝阞阢阤阥阦阬阱阳阷阸阹阺阼阽陁陒陔陖陗陘陡陮陴陻陼陾陿隁隂隃隄隉隑隖隚隝隟隤隥隦隩隮隯隳隺雊雒嶲雘雚雝雞雟雩雯雱雺霂"],["8fe7a1","霃霅霉霚霛霝霡霢霣霨霱霳靁靃靊靎靏靕靗靘靚靛靣靧靪靮靳靶靷靸靻靽靿鞀鞉鞕鞖鞗鞙鞚鞞鞟鞢鞬鞮鞱鞲鞵鞶鞸鞹鞺鞼鞾鞿韁韄韅韇韉韊韌韍韎韐韑韔韗韘韙韝韞韠韛韡韤韯韱韴韷韸韺頇頊頙頍頎頔頖頜頞頠頣頦"],["8fe8a1","頫頮頯頰頲頳頵頥頾顄顇顊顑顒顓顖顗顙顚顢顣顥顦顪顬颫颭颮颰颴颷颸颺颻颿飂飅飈飌飡飣飥飦飧飪飳飶餂餇餈餑餕餖餗餚餛餜餟餢餦餧餫餱",4,"餹餺餻餼饀饁饆饇饈饍饎饔饘饙饛饜饞饟饠馛馝馟馦馰馱馲馵"],["8fe9a1","馹馺馽馿駃駉駓駔駙駚駜駞駧駪駫駬駰駴駵駹駽駾騂騃騄騋騌騐騑騖騞騠騢騣騤騧騭騮騳騵騶騸驇驁驄驊驋驌驎驑驔驖驝骪骬骮骯骲骴骵骶骹骻骾骿髁髃髆髈髎髐髒髕髖髗髛髜髠髤髥髧髩髬髲髳髵髹髺髽髿",4],["8feaa1","鬄鬅鬈鬉鬋鬌鬍鬎鬐鬒鬖鬙鬛鬜鬠鬦鬫鬭鬳鬴鬵鬷鬹鬺鬽魈魋魌魕魖魗魛魞魡魣魥魦魨魪",4,"魳魵魷魸魹魿鮀鮄鮅鮆鮇鮉鮊鮋鮍鮏鮐鮔鮚鮝鮞鮦鮧鮩鮬鮰鮱鮲鮷鮸鮻鮼鮾鮿鯁鯇鯈鯎鯐鯗鯘鯝鯟鯥鯧鯪鯫鯯鯳鯷鯸"],["8feba1","鯹鯺鯽鯿鰀鰂鰋鰏鰑鰖鰘鰙鰚鰜鰞鰢鰣鰦",4,"鰱鰵鰶鰷鰽鱁鱃鱄鱅鱉鱊鱎鱏鱐鱓鱔鱖鱘鱛鱝鱞鱟鱣鱩鱪鱜鱫鱨鱮鱰鱲鱵鱷鱻鳦鳲鳷鳹鴋鴂鴑鴗鴘鴜鴝鴞鴯鴰鴲鴳鴴鴺鴼鵅鴽鵂鵃鵇鵊鵓鵔鵟鵣鵢鵥鵩鵪鵫鵰鵶鵷鵻"],["8feca1","鵼鵾鶃鶄鶆鶊鶍鶎鶒鶓鶕鶖鶗鶘鶡鶪鶬鶮鶱鶵鶹鶼鶿鷃鷇鷉鷊鷔鷕鷖鷗鷚鷞鷟鷠鷥鷧鷩鷫鷮鷰鷳鷴鷾鸊鸂鸇鸎鸐鸑鸒鸕鸖鸙鸜鸝鹺鹻鹼麀麂麃麄麅麇麎麏麖麘麛麞麤麨麬麮麯麰麳麴麵黆黈黋黕黟黤黧黬黭黮黰黱黲黵"],["8feda1","黸黿鼂鼃鼉鼏鼐鼑鼒鼔鼖鼗鼙鼚鼛鼟鼢鼦鼪鼫鼯鼱鼲鼴鼷鼹鼺鼼鼽鼿齁齃",4,"齓齕齖齗齘齚齝齞齨齩齭",4,"齳齵齺齽龏龐龑龒龔龖龗龞龡龢龣龥"]]' + ); + }, + 39909: (e) => { + 'use strict'; + e.exports = JSON.parse( + '{"uChars":[128,165,169,178,184,216,226,235,238,244,248,251,253,258,276,284,300,325,329,334,364,463,465,467,469,471,473,475,477,506,594,610,712,716,730,930,938,962,970,1026,1104,1106,8209,8215,8218,8222,8231,8241,8244,8246,8252,8365,8452,8454,8458,8471,8482,8556,8570,8596,8602,8713,8720,8722,8726,8731,8737,8740,8742,8748,8751,8760,8766,8777,8781,8787,8802,8808,8816,8854,8858,8870,8896,8979,9322,9372,9548,9588,9616,9622,9634,9652,9662,9672,9676,9680,9702,9735,9738,9793,9795,11906,11909,11913,11917,11928,11944,11947,11951,11956,11960,11964,11979,12284,12292,12312,12319,12330,12351,12436,12447,12535,12543,12586,12842,12850,12964,13200,13215,13218,13253,13263,13267,13270,13384,13428,13727,13839,13851,14617,14703,14801,14816,14964,15183,15471,15585,16471,16736,17208,17325,17330,17374,17623,17997,18018,18212,18218,18301,18318,18760,18811,18814,18820,18823,18844,18848,18872,19576,19620,19738,19887,40870,59244,59336,59367,59413,59417,59423,59431,59437,59443,59452,59460,59478,59493,63789,63866,63894,63976,63986,64016,64018,64021,64025,64034,64037,64042,65074,65093,65107,65112,65127,65132,65375,65510,65536],"gbChars":[0,36,38,45,50,81,89,95,96,100,103,104,105,109,126,133,148,172,175,179,208,306,307,308,309,310,311,312,313,341,428,443,544,545,558,741,742,749,750,805,819,820,7922,7924,7925,7927,7934,7943,7944,7945,7950,8062,8148,8149,8152,8164,8174,8236,8240,8262,8264,8374,8380,8381,8384,8388,8390,8392,8393,8394,8396,8401,8406,8416,8419,8424,8437,8439,8445,8482,8485,8496,8521,8603,8936,8946,9046,9050,9063,9066,9076,9092,9100,9108,9111,9113,9131,9162,9164,9218,9219,11329,11331,11334,11336,11346,11361,11363,11366,11370,11372,11375,11389,11682,11686,11687,11692,11694,11714,11716,11723,11725,11730,11736,11982,11989,12102,12336,12348,12350,12384,12393,12395,12397,12510,12553,12851,12962,12973,13738,13823,13919,13933,14080,14298,14585,14698,15583,15847,16318,16434,16438,16481,16729,17102,17122,17315,17320,17402,17418,17859,17909,17911,17915,17916,17936,17939,17961,18664,18703,18814,18962,19043,33469,33470,33471,33484,33485,33490,33497,33501,33505,33513,33520,33536,33550,37845,37921,37948,38029,38038,38064,38065,38066,38069,38075,38076,38078,39108,39109,39113,39114,39115,39116,39265,39394,189000]}' + ); + }, + 4764: (e) => { + 'use strict'; + e.exports = JSON.parse( + '[["a140","",62],["a180","",32],["a240","",62],["a280","",32],["a2ab","",5],["a2e3","€"],["a2ef",""],["a2fd",""],["a340","",62],["a380","",31," "],["a440","",62],["a480","",32],["a4f4","",10],["a540","",62],["a580","",32],["a5f7","",7],["a640","",62],["a680","",32],["a6b9","",7],["a6d9","",6],["a6ec",""],["a6f3",""],["a6f6","",8],["a740","",62],["a780","",32],["a7c2","",14],["a7f2","",12],["a896","",10],["a8bc",""],["a8bf","ǹ"],["a8c1",""],["a8ea","",20],["a958",""],["a95b",""],["a95d",""],["a989","〾⿰",11],["a997","",12],["a9f0","",14],["aaa1","",93],["aba1","",93],["aca1","",93],["ada1","",93],["aea1","",93],["afa1","",93],["d7fa","",4],["f8a1","",93],["f9a1","",93],["faa1","",93],["fba1","",93],["fca1","",93],["fda1","",93],["fe50","⺁⺄㑳㑇⺈⺋㖞㘚㘎⺌⺗㥮㤘㧏㧟㩳㧐㭎㱮㳠⺧⺪䁖䅟⺮䌷⺳⺶⺷䎱䎬⺻䏝䓖䙡䙌"],["fe80","䜣䜩䝼䞍⻊䥇䥺䥽䦂䦃䦅䦆䦟䦛䦷䦶䲣䲟䲠䲡䱷䲢䴓",6,"䶮",93]]' + ); + }, + 49688: (e) => { + 'use strict'; + e.exports = JSON.parse( + '[["0","\\u0000",128],["a1","。",62],["8140"," 、。,.・:;?!゛゜´`¨^ ̄_ヽヾゝゞ〃仝々〆〇ー―‐/\~∥|…‥‘’“”()〔〕[]{}〈",9,"+-±×"],["8180","÷=≠<>≦≧∞∴♂♀°′″℃¥$¢£%#&*@§☆★○●◎◇◆□■△▲▽▼※〒→←↑↓〓"],["81b8","∈∋⊆⊇⊂⊃∪∩"],["81c8","∧∨¬⇒⇔∀∃"],["81da","∠⊥⌒∂∇≡≒≪≫√∽∝∵∫∬"],["81f0","ʼn♯♭♪†‡¶"],["81fc","◯"],["824f","0",9],["8260","A",25],["8281","a",25],["829f","ぁ",82],["8340","ァ",62],["8380","ム",22],["839f","Α",16,"Σ",6],["83bf","α",16,"σ",6],["8440","А",5,"ЁЖ",25],["8470","а",5,"ёж",7],["8480","о",17],["849f","─│┌┐┘└├┬┤┴┼━┃┏┓┛┗┣┳┫┻╋┠┯┨┷┿┝┰┥┸╂"],["8740","①",19,"Ⅰ",9],["875f","㍉㌔㌢㍍㌘㌧㌃㌶㍑㍗㌍㌦㌣㌫㍊㌻㎜㎝㎞㎎㎏㏄㎡"],["877e","㍻"],["8780","〝〟№㏍℡㊤",4,"㈱㈲㈹㍾㍽㍼≒≡∫∮∑√⊥∠∟⊿∵∩∪"],["889f","亜唖娃阿哀愛挨姶逢葵茜穐悪握渥旭葦芦鯵梓圧斡扱宛姐虻飴絢綾鮎或粟袷安庵按暗案闇鞍杏以伊位依偉囲夷委威尉惟意慰易椅為畏異移維緯胃萎衣謂違遺医井亥域育郁磯一壱溢逸稲茨芋鰯允印咽員因姻引飲淫胤蔭"],["8940","院陰隠韻吋右宇烏羽迂雨卯鵜窺丑碓臼渦嘘唄欝蔚鰻姥厩浦瓜閏噂云運雲荏餌叡営嬰影映曳栄永泳洩瑛盈穎頴英衛詠鋭液疫益駅悦謁越閲榎厭円"],["8980","園堰奄宴延怨掩援沿演炎焔煙燕猿縁艶苑薗遠鉛鴛塩於汚甥凹央奥往応押旺横欧殴王翁襖鴬鴎黄岡沖荻億屋憶臆桶牡乙俺卸恩温穏音下化仮何伽価佳加可嘉夏嫁家寡科暇果架歌河火珂禍禾稼箇花苛茄荷華菓蝦課嘩貨迦過霞蚊俄峨我牙画臥芽蛾賀雅餓駕介会解回塊壊廻快怪悔恢懐戒拐改"],["8a40","魁晦械海灰界皆絵芥蟹開階貝凱劾外咳害崖慨概涯碍蓋街該鎧骸浬馨蛙垣柿蛎鈎劃嚇各廓拡撹格核殻獲確穫覚角赫較郭閣隔革学岳楽額顎掛笠樫"],["8a80","橿梶鰍潟割喝恰括活渇滑葛褐轄且鰹叶椛樺鞄株兜竃蒲釜鎌噛鴨栢茅萱粥刈苅瓦乾侃冠寒刊勘勧巻喚堪姦完官寛干幹患感慣憾換敢柑桓棺款歓汗漢澗潅環甘監看竿管簡緩缶翰肝艦莞観諌貫還鑑間閑関陥韓館舘丸含岸巌玩癌眼岩翫贋雁頑顔願企伎危喜器基奇嬉寄岐希幾忌揮机旗既期棋棄"],["8b40","機帰毅気汽畿祈季稀紀徽規記貴起軌輝飢騎鬼亀偽儀妓宜戯技擬欺犠疑祇義蟻誼議掬菊鞠吉吃喫桔橘詰砧杵黍却客脚虐逆丘久仇休及吸宮弓急救"],["8b80","朽求汲泣灸球究窮笈級糾給旧牛去居巨拒拠挙渠虚許距鋸漁禦魚亨享京供侠僑兇競共凶協匡卿叫喬境峡強彊怯恐恭挟教橋況狂狭矯胸脅興蕎郷鏡響饗驚仰凝尭暁業局曲極玉桐粁僅勤均巾錦斤欣欽琴禁禽筋緊芹菌衿襟謹近金吟銀九倶句区狗玖矩苦躯駆駈駒具愚虞喰空偶寓遇隅串櫛釧屑屈"],["8c40","掘窟沓靴轡窪熊隈粂栗繰桑鍬勲君薫訓群軍郡卦袈祁係傾刑兄啓圭珪型契形径恵慶慧憩掲携敬景桂渓畦稽系経継繋罫茎荊蛍計詣警軽頚鶏芸迎鯨"],["8c80","劇戟撃激隙桁傑欠決潔穴結血訣月件倹倦健兼券剣喧圏堅嫌建憲懸拳捲検権牽犬献研硯絹県肩見謙賢軒遣鍵険顕験鹸元原厳幻弦減源玄現絃舷言諺限乎個古呼固姑孤己庫弧戸故枯湖狐糊袴股胡菰虎誇跨鈷雇顧鼓五互伍午呉吾娯後御悟梧檎瑚碁語誤護醐乞鯉交佼侯候倖光公功効勾厚口向"],["8d40","后喉坑垢好孔孝宏工巧巷幸広庚康弘恒慌抗拘控攻昂晃更杭校梗構江洪浩港溝甲皇硬稿糠紅紘絞綱耕考肯肱腔膏航荒行衡講貢購郊酵鉱砿鋼閤降"],["8d80","項香高鴻剛劫号合壕拷濠豪轟麹克刻告国穀酷鵠黒獄漉腰甑忽惚骨狛込此頃今困坤墾婚恨懇昏昆根梱混痕紺艮魂些佐叉唆嵯左差査沙瑳砂詐鎖裟坐座挫債催再最哉塞妻宰彩才採栽歳済災采犀砕砦祭斎細菜裁載際剤在材罪財冴坂阪堺榊肴咲崎埼碕鷺作削咋搾昨朔柵窄策索錯桜鮭笹匙冊刷"],["8e40","察拶撮擦札殺薩雑皐鯖捌錆鮫皿晒三傘参山惨撒散桟燦珊産算纂蚕讃賛酸餐斬暫残仕仔伺使刺司史嗣四士始姉姿子屍市師志思指支孜斯施旨枝止"],["8e80","死氏獅祉私糸紙紫肢脂至視詞詩試誌諮資賜雌飼歯事似侍児字寺慈持時次滋治爾璽痔磁示而耳自蒔辞汐鹿式識鴫竺軸宍雫七叱執失嫉室悉湿漆疾質実蔀篠偲柴芝屡蕊縞舎写射捨赦斜煮社紗者謝車遮蛇邪借勺尺杓灼爵酌釈錫若寂弱惹主取守手朱殊狩珠種腫趣酒首儒受呪寿授樹綬需囚収周"],["8f40","宗就州修愁拾洲秀秋終繍習臭舟蒐衆襲讐蹴輯週酋酬集醜什住充十従戎柔汁渋獣縦重銃叔夙宿淑祝縮粛塾熟出術述俊峻春瞬竣舜駿准循旬楯殉淳"],["8f80","準潤盾純巡遵醇順処初所暑曙渚庶緒署書薯藷諸助叙女序徐恕鋤除傷償勝匠升召哨商唱嘗奨妾娼宵将小少尚庄床廠彰承抄招掌捷昇昌昭晶松梢樟樵沼消渉湘焼焦照症省硝礁祥称章笑粧紹肖菖蒋蕉衝裳訟証詔詳象賞醤鉦鍾鐘障鞘上丈丞乗冗剰城場壌嬢常情擾条杖浄状畳穣蒸譲醸錠嘱埴飾"],["9040","拭植殖燭織職色触食蝕辱尻伸信侵唇娠寝審心慎振新晋森榛浸深申疹真神秦紳臣芯薪親診身辛進針震人仁刃塵壬尋甚尽腎訊迅陣靭笥諏須酢図厨"],["9080","逗吹垂帥推水炊睡粋翠衰遂酔錐錘随瑞髄崇嵩数枢趨雛据杉椙菅頗雀裾澄摺寸世瀬畝是凄制勢姓征性成政整星晴棲栖正清牲生盛精聖声製西誠誓請逝醒青静斉税脆隻席惜戚斥昔析石積籍績脊責赤跡蹟碩切拙接摂折設窃節説雪絶舌蝉仙先千占宣専尖川戦扇撰栓栴泉浅洗染潜煎煽旋穿箭線"],["9140","繊羨腺舛船薦詮賎践選遷銭銑閃鮮前善漸然全禅繕膳糎噌塑岨措曾曽楚狙疏疎礎祖租粗素組蘇訴阻遡鼠僧創双叢倉喪壮奏爽宋層匝惣想捜掃挿掻"],["9180","操早曹巣槍槽漕燥争痩相窓糟総綜聡草荘葬蒼藻装走送遭鎗霜騒像増憎臓蔵贈造促側則即息捉束測足速俗属賊族続卒袖其揃存孫尊損村遜他多太汰詑唾堕妥惰打柁舵楕陀駄騨体堆対耐岱帯待怠態戴替泰滞胎腿苔袋貸退逮隊黛鯛代台大第醍題鷹滝瀧卓啄宅托択拓沢濯琢託鐸濁諾茸凧蛸只"],["9240","叩但達辰奪脱巽竪辿棚谷狸鱈樽誰丹単嘆坦担探旦歎淡湛炭短端箪綻耽胆蛋誕鍛団壇弾断暖檀段男談値知地弛恥智池痴稚置致蜘遅馳築畜竹筑蓄"],["9280","逐秩窒茶嫡着中仲宙忠抽昼柱注虫衷註酎鋳駐樗瀦猪苧著貯丁兆凋喋寵帖帳庁弔張彫徴懲挑暢朝潮牒町眺聴脹腸蝶調諜超跳銚長頂鳥勅捗直朕沈珍賃鎮陳津墜椎槌追鎚痛通塚栂掴槻佃漬柘辻蔦綴鍔椿潰坪壷嬬紬爪吊釣鶴亭低停偵剃貞呈堤定帝底庭廷弟悌抵挺提梯汀碇禎程締艇訂諦蹄逓"],["9340","邸鄭釘鼎泥摘擢敵滴的笛適鏑溺哲徹撤轍迭鉄典填天展店添纏甜貼転顛点伝殿澱田電兎吐堵塗妬屠徒斗杜渡登菟賭途都鍍砥砺努度土奴怒倒党冬"],["9380","凍刀唐塔塘套宕島嶋悼投搭東桃梼棟盗淘湯涛灯燈当痘祷等答筒糖統到董蕩藤討謄豆踏逃透鐙陶頭騰闘働動同堂導憧撞洞瞳童胴萄道銅峠鴇匿得徳涜特督禿篤毒独読栃橡凸突椴届鳶苫寅酉瀞噸屯惇敦沌豚遁頓呑曇鈍奈那内乍凪薙謎灘捺鍋楢馴縄畷南楠軟難汝二尼弐迩匂賑肉虹廿日乳入"],["9440","如尿韮任妊忍認濡禰祢寧葱猫熱年念捻撚燃粘乃廼之埜嚢悩濃納能脳膿農覗蚤巴把播覇杷波派琶破婆罵芭馬俳廃拝排敗杯盃牌背肺輩配倍培媒梅"],["9480","楳煤狽買売賠陪這蝿秤矧萩伯剥博拍柏泊白箔粕舶薄迫曝漠爆縛莫駁麦函箱硲箸肇筈櫨幡肌畑畠八鉢溌発醗髪伐罰抜筏閥鳩噺塙蛤隼伴判半反叛帆搬斑板氾汎版犯班畔繁般藩販範釆煩頒飯挽晩番盤磐蕃蛮匪卑否妃庇彼悲扉批披斐比泌疲皮碑秘緋罷肥被誹費避非飛樋簸備尾微枇毘琵眉美"],["9540","鼻柊稗匹疋髭彦膝菱肘弼必畢筆逼桧姫媛紐百謬俵彪標氷漂瓢票表評豹廟描病秒苗錨鋲蒜蛭鰭品彬斌浜瀕貧賓頻敏瓶不付埠夫婦富冨布府怖扶敷"],["9580","斧普浮父符腐膚芙譜負賦赴阜附侮撫武舞葡蕪部封楓風葺蕗伏副復幅服福腹複覆淵弗払沸仏物鮒分吻噴墳憤扮焚奮粉糞紛雰文聞丙併兵塀幣平弊柄並蔽閉陛米頁僻壁癖碧別瞥蔑箆偏変片篇編辺返遍便勉娩弁鞭保舗鋪圃捕歩甫補輔穂募墓慕戊暮母簿菩倣俸包呆報奉宝峰峯崩庖抱捧放方朋"],["9640","法泡烹砲縫胞芳萌蓬蜂褒訪豊邦鋒飽鳳鵬乏亡傍剖坊妨帽忘忙房暴望某棒冒紡肪膨謀貌貿鉾防吠頬北僕卜墨撲朴牧睦穆釦勃没殆堀幌奔本翻凡盆"],["9680","摩磨魔麻埋妹昧枚毎哩槙幕膜枕鮪柾鱒桝亦俣又抹末沫迄侭繭麿万慢満漫蔓味未魅巳箕岬密蜜湊蓑稔脈妙粍民眠務夢無牟矛霧鵡椋婿娘冥名命明盟迷銘鳴姪牝滅免棉綿緬面麺摸模茂妄孟毛猛盲網耗蒙儲木黙目杢勿餅尤戻籾貰問悶紋門匁也冶夜爺耶野弥矢厄役約薬訳躍靖柳薮鑓愉愈油癒"],["9740","諭輸唯佑優勇友宥幽悠憂揖有柚湧涌猶猷由祐裕誘遊邑郵雄融夕予余与誉輿預傭幼妖容庸揚揺擁曜楊様洋溶熔用窯羊耀葉蓉要謡踊遥陽養慾抑欲"],["9780","沃浴翌翼淀羅螺裸来莱頼雷洛絡落酪乱卵嵐欄濫藍蘭覧利吏履李梨理璃痢裏裡里離陸律率立葎掠略劉流溜琉留硫粒隆竜龍侶慮旅虜了亮僚両凌寮料梁涼猟療瞭稜糧良諒遼量陵領力緑倫厘林淋燐琳臨輪隣鱗麟瑠塁涙累類令伶例冷励嶺怜玲礼苓鈴隷零霊麗齢暦歴列劣烈裂廉恋憐漣煉簾練聯"],["9840","蓮連錬呂魯櫓炉賂路露労婁廊弄朗楼榔浪漏牢狼篭老聾蝋郎六麓禄肋録論倭和話歪賄脇惑枠鷲亙亘鰐詫藁蕨椀湾碗腕"],["989f","弌丐丕个丱丶丼丿乂乖乘亂亅豫亊舒弍于亞亟亠亢亰亳亶从仍仄仆仂仗仞仭仟价伉佚估佛佝佗佇佶侈侏侘佻佩佰侑佯來侖儘俔俟俎俘俛俑俚俐俤俥倚倨倔倪倥倅伜俶倡倩倬俾俯們倆偃假會偕偐偈做偖偬偸傀傚傅傴傲"],["9940","僉僊傳僂僖僞僥僭僣僮價僵儉儁儂儖儕儔儚儡儺儷儼儻儿兀兒兌兔兢竸兩兪兮冀冂囘册冉冏冑冓冕冖冤冦冢冩冪冫决冱冲冰况冽凅凉凛几處凩凭"],["9980","凰凵凾刄刋刔刎刧刪刮刳刹剏剄剋剌剞剔剪剴剩剳剿剽劍劔劒剱劈劑辨辧劬劭劼劵勁勍勗勞勣勦飭勠勳勵勸勹匆匈甸匍匐匏匕匚匣匯匱匳匸區卆卅丗卉卍凖卞卩卮夘卻卷厂厖厠厦厥厮厰厶參簒雙叟曼燮叮叨叭叺吁吽呀听吭吼吮吶吩吝呎咏呵咎呟呱呷呰咒呻咀呶咄咐咆哇咢咸咥咬哄哈咨"],["9a40","咫哂咤咾咼哘哥哦唏唔哽哮哭哺哢唹啀啣啌售啜啅啖啗唸唳啝喙喀咯喊喟啻啾喘喞單啼喃喩喇喨嗚嗅嗟嗄嗜嗤嗔嘔嗷嘖嗾嗽嘛嗹噎噐營嘴嘶嘲嘸"],["9a80","噫噤嘯噬噪嚆嚀嚊嚠嚔嚏嚥嚮嚶嚴囂嚼囁囃囀囈囎囑囓囗囮囹圀囿圄圉圈國圍圓團圖嗇圜圦圷圸坎圻址坏坩埀垈坡坿垉垓垠垳垤垪垰埃埆埔埒埓堊埖埣堋堙堝塲堡塢塋塰毀塒堽塹墅墹墟墫墺壞墻墸墮壅壓壑壗壙壘壥壜壤壟壯壺壹壻壼壽夂夊夐夛梦夥夬夭夲夸夾竒奕奐奎奚奘奢奠奧奬奩"],["9b40","奸妁妝佞侫妣妲姆姨姜妍姙姚娥娟娑娜娉娚婀婬婉娵娶婢婪媚媼媾嫋嫂媽嫣嫗嫦嫩嫖嫺嫻嬌嬋嬖嬲嫐嬪嬶嬾孃孅孀孑孕孚孛孥孩孰孳孵學斈孺宀"],["9b80","它宦宸寃寇寉寔寐寤實寢寞寥寫寰寶寳尅將專對尓尠尢尨尸尹屁屆屎屓屐屏孱屬屮乢屶屹岌岑岔妛岫岻岶岼岷峅岾峇峙峩峽峺峭嶌峪崋崕崗嵜崟崛崑崔崢崚崙崘嵌嵒嵎嵋嵬嵳嵶嶇嶄嶂嶢嶝嶬嶮嶽嶐嶷嶼巉巍巓巒巖巛巫已巵帋帚帙帑帛帶帷幄幃幀幎幗幔幟幢幤幇幵并幺麼广庠廁廂廈廐廏"],["9c40","廖廣廝廚廛廢廡廨廩廬廱廳廰廴廸廾弃弉彝彜弋弑弖弩弭弸彁彈彌彎弯彑彖彗彙彡彭彳彷徃徂彿徊很徑徇從徙徘徠徨徭徼忖忻忤忸忱忝悳忿怡恠"],["9c80","怙怐怩怎怱怛怕怫怦怏怺恚恁恪恷恟恊恆恍恣恃恤恂恬恫恙悁悍惧悃悚悄悛悖悗悒悧悋惡悸惠惓悴忰悽惆悵惘慍愕愆惶惷愀惴惺愃愡惻惱愍愎慇愾愨愧慊愿愼愬愴愽慂慄慳慷慘慙慚慫慴慯慥慱慟慝慓慵憙憖憇憬憔憚憊憑憫憮懌懊應懷懈懃懆憺懋罹懍懦懣懶懺懴懿懽懼懾戀戈戉戍戌戔戛"],["9d40","戞戡截戮戰戲戳扁扎扞扣扛扠扨扼抂抉找抒抓抖拔抃抔拗拑抻拏拿拆擔拈拜拌拊拂拇抛拉挌拮拱挧挂挈拯拵捐挾捍搜捏掖掎掀掫捶掣掏掉掟掵捫"],["9d80","捩掾揩揀揆揣揉插揶揄搖搴搆搓搦搶攝搗搨搏摧摯摶摎攪撕撓撥撩撈撼據擒擅擇撻擘擂擱擧舉擠擡抬擣擯攬擶擴擲擺攀擽攘攜攅攤攣攫攴攵攷收攸畋效敖敕敍敘敞敝敲數斂斃變斛斟斫斷旃旆旁旄旌旒旛旙无旡旱杲昊昃旻杳昵昶昴昜晏晄晉晁晞晝晤晧晨晟晢晰暃暈暎暉暄暘暝曁暹曉暾暼"],["9e40","曄暸曖曚曠昿曦曩曰曵曷朏朖朞朦朧霸朮朿朶杁朸朷杆杞杠杙杣杤枉杰枩杼杪枌枋枦枡枅枷柯枴柬枳柩枸柤柞柝柢柮枹柎柆柧檜栞框栩桀桍栲桎"],["9e80","梳栫桙档桷桿梟梏梭梔條梛梃檮梹桴梵梠梺椏梍桾椁棊椈棘椢椦棡椌棍棔棧棕椶椒椄棗棣椥棹棠棯椨椪椚椣椡棆楹楷楜楸楫楔楾楮椹楴椽楙椰楡楞楝榁楪榲榮槐榿槁槓榾槎寨槊槝榻槃榧樮榑榠榜榕榴槞槨樂樛槿權槹槲槧樅榱樞槭樔槫樊樒櫁樣樓橄樌橲樶橸橇橢橙橦橈樸樢檐檍檠檄檢檣"],["9f40","檗蘗檻櫃櫂檸檳檬櫞櫑櫟檪櫚櫪櫻欅蘖櫺欒欖鬱欟欸欷盜欹飮歇歃歉歐歙歔歛歟歡歸歹歿殀殄殃殍殘殕殞殤殪殫殯殲殱殳殷殼毆毋毓毟毬毫毳毯"],["9f80","麾氈氓气氛氤氣汞汕汢汪沂沍沚沁沛汾汨汳沒沐泄泱泓沽泗泅泝沮沱沾沺泛泯泙泪洟衍洶洫洽洸洙洵洳洒洌浣涓浤浚浹浙涎涕濤涅淹渕渊涵淇淦涸淆淬淞淌淨淒淅淺淙淤淕淪淮渭湮渮渙湲湟渾渣湫渫湶湍渟湃渺湎渤滿渝游溂溪溘滉溷滓溽溯滄溲滔滕溏溥滂溟潁漑灌滬滸滾漿滲漱滯漲滌"],["e040","漾漓滷澆潺潸澁澀潯潛濳潭澂潼潘澎澑濂潦澳澣澡澤澹濆澪濟濕濬濔濘濱濮濛瀉瀋濺瀑瀁瀏濾瀛瀚潴瀝瀘瀟瀰瀾瀲灑灣炙炒炯烱炬炸炳炮烟烋烝"],["e080","烙焉烽焜焙煥煕熈煦煢煌煖煬熏燻熄熕熨熬燗熹熾燒燉燔燎燠燬燧燵燼燹燿爍爐爛爨爭爬爰爲爻爼爿牀牆牋牘牴牾犂犁犇犒犖犢犧犹犲狃狆狄狎狒狢狠狡狹狷倏猗猊猜猖猝猴猯猩猥猾獎獏默獗獪獨獰獸獵獻獺珈玳珎玻珀珥珮珞璢琅瑯琥珸琲琺瑕琿瑟瑙瑁瑜瑩瑰瑣瑪瑶瑾璋璞璧瓊瓏瓔珱"],["e140","瓠瓣瓧瓩瓮瓲瓰瓱瓸瓷甄甃甅甌甎甍甕甓甞甦甬甼畄畍畊畉畛畆畚畩畤畧畫畭畸當疆疇畴疊疉疂疔疚疝疥疣痂疳痃疵疽疸疼疱痍痊痒痙痣痞痾痿"],["e180","痼瘁痰痺痲痳瘋瘍瘉瘟瘧瘠瘡瘢瘤瘴瘰瘻癇癈癆癜癘癡癢癨癩癪癧癬癰癲癶癸發皀皃皈皋皎皖皓皙皚皰皴皸皹皺盂盍盖盒盞盡盥盧盪蘯盻眈眇眄眩眤眞眥眦眛眷眸睇睚睨睫睛睥睿睾睹瞎瞋瞑瞠瞞瞰瞶瞹瞿瞼瞽瞻矇矍矗矚矜矣矮矼砌砒礦砠礪硅碎硴碆硼碚碌碣碵碪碯磑磆磋磔碾碼磅磊磬"],["e240","磧磚磽磴礇礒礑礙礬礫祀祠祗祟祚祕祓祺祿禊禝禧齋禪禮禳禹禺秉秕秧秬秡秣稈稍稘稙稠稟禀稱稻稾稷穃穗穉穡穢穩龝穰穹穽窈窗窕窘窖窩竈窰"],["e280","窶竅竄窿邃竇竊竍竏竕竓站竚竝竡竢竦竭竰笂笏笊笆笳笘笙笞笵笨笶筐筺笄筍笋筌筅筵筥筴筧筰筱筬筮箝箘箟箍箜箚箋箒箏筝箙篋篁篌篏箴篆篝篩簑簔篦篥籠簀簇簓篳篷簗簍篶簣簧簪簟簷簫簽籌籃籔籏籀籐籘籟籤籖籥籬籵粃粐粤粭粢粫粡粨粳粲粱粮粹粽糀糅糂糘糒糜糢鬻糯糲糴糶糺紆"],["e340","紂紜紕紊絅絋紮紲紿紵絆絳絖絎絲絨絮絏絣經綉絛綏絽綛綺綮綣綵緇綽綫總綢綯緜綸綟綰緘緝緤緞緻緲緡縅縊縣縡縒縱縟縉縋縢繆繦縻縵縹繃縷"],["e380","縲縺繧繝繖繞繙繚繹繪繩繼繻纃緕繽辮繿纈纉續纒纐纓纔纖纎纛纜缸缺罅罌罍罎罐网罕罔罘罟罠罨罩罧罸羂羆羃羈羇羌羔羞羝羚羣羯羲羹羮羶羸譱翅翆翊翕翔翡翦翩翳翹飜耆耄耋耒耘耙耜耡耨耿耻聊聆聒聘聚聟聢聨聳聲聰聶聹聽聿肄肆肅肛肓肚肭冐肬胛胥胙胝胄胚胖脉胯胱脛脩脣脯腋"],["e440","隋腆脾腓腑胼腱腮腥腦腴膃膈膊膀膂膠膕膤膣腟膓膩膰膵膾膸膽臀臂膺臉臍臑臙臘臈臚臟臠臧臺臻臾舁舂舅與舊舍舐舖舩舫舸舳艀艙艘艝艚艟艤"],["e480","艢艨艪艫舮艱艷艸艾芍芒芫芟芻芬苡苣苟苒苴苳苺莓范苻苹苞茆苜茉苙茵茴茖茲茱荀茹荐荅茯茫茗茘莅莚莪莟莢莖茣莎莇莊荼莵荳荵莠莉莨菴萓菫菎菽萃菘萋菁菷萇菠菲萍萢萠莽萸蔆菻葭萪萼蕚蒄葷葫蒭葮蒂葩葆萬葯葹萵蓊葢蒹蒿蒟蓙蓍蒻蓚蓐蓁蓆蓖蒡蔡蓿蓴蔗蔘蔬蔟蔕蔔蓼蕀蕣蕘蕈"],["e540","蕁蘂蕋蕕薀薤薈薑薊薨蕭薔薛藪薇薜蕷蕾薐藉薺藏薹藐藕藝藥藜藹蘊蘓蘋藾藺蘆蘢蘚蘰蘿虍乕虔號虧虱蚓蚣蚩蚪蚋蚌蚶蚯蛄蛆蚰蛉蠣蚫蛔蛞蛩蛬"],["e580","蛟蛛蛯蜒蜆蜈蜀蜃蛻蜑蜉蜍蛹蜊蜴蜿蜷蜻蜥蜩蜚蝠蝟蝸蝌蝎蝴蝗蝨蝮蝙蝓蝣蝪蠅螢螟螂螯蟋螽蟀蟐雖螫蟄螳蟇蟆螻蟯蟲蟠蠏蠍蟾蟶蟷蠎蟒蠑蠖蠕蠢蠡蠱蠶蠹蠧蠻衄衂衒衙衞衢衫袁衾袞衵衽袵衲袂袗袒袮袙袢袍袤袰袿袱裃裄裔裘裙裝裹褂裼裴裨裲褄褌褊褓襃褞褥褪褫襁襄褻褶褸襌褝襠襞"],["e640","襦襤襭襪襯襴襷襾覃覈覊覓覘覡覩覦覬覯覲覺覽覿觀觚觜觝觧觴觸訃訖訐訌訛訝訥訶詁詛詒詆詈詼詭詬詢誅誂誄誨誡誑誥誦誚誣諄諍諂諚諫諳諧"],["e680","諤諱謔諠諢諷諞諛謌謇謚諡謖謐謗謠謳鞫謦謫謾謨譁譌譏譎證譖譛譚譫譟譬譯譴譽讀讌讎讒讓讖讙讚谺豁谿豈豌豎豐豕豢豬豸豺貂貉貅貊貍貎貔豼貘戝貭貪貽貲貳貮貶賈賁賤賣賚賽賺賻贄贅贊贇贏贍贐齎贓賍贔贖赧赭赱赳趁趙跂趾趺跏跚跖跌跛跋跪跫跟跣跼踈踉跿踝踞踐踟蹂踵踰踴蹊"],["e740","蹇蹉蹌蹐蹈蹙蹤蹠踪蹣蹕蹶蹲蹼躁躇躅躄躋躊躓躑躔躙躪躡躬躰軆躱躾軅軈軋軛軣軼軻軫軾輊輅輕輒輙輓輜輟輛輌輦輳輻輹轅轂輾轌轉轆轎轗轜"],["e780","轢轣轤辜辟辣辭辯辷迚迥迢迪迯邇迴逅迹迺逑逕逡逍逞逖逋逧逶逵逹迸遏遐遑遒逎遉逾遖遘遞遨遯遶隨遲邂遽邁邀邊邉邏邨邯邱邵郢郤扈郛鄂鄒鄙鄲鄰酊酖酘酣酥酩酳酲醋醉醂醢醫醯醪醵醴醺釀釁釉釋釐釖釟釡釛釼釵釶鈞釿鈔鈬鈕鈑鉞鉗鉅鉉鉤鉈銕鈿鉋鉐銜銖銓銛鉚鋏銹銷鋩錏鋺鍄錮"],["e840","錙錢錚錣錺錵錻鍜鍠鍼鍮鍖鎰鎬鎭鎔鎹鏖鏗鏨鏥鏘鏃鏝鏐鏈鏤鐚鐔鐓鐃鐇鐐鐶鐫鐵鐡鐺鑁鑒鑄鑛鑠鑢鑞鑪鈩鑰鑵鑷鑽鑚鑼鑾钁鑿閂閇閊閔閖閘閙"],["e880","閠閨閧閭閼閻閹閾闊濶闃闍闌闕闔闖關闡闥闢阡阨阮阯陂陌陏陋陷陜陞陝陟陦陲陬隍隘隕隗險隧隱隲隰隴隶隸隹雎雋雉雍襍雜霍雕雹霄霆霈霓霎霑霏霖霙霤霪霰霹霽霾靄靆靈靂靉靜靠靤靦靨勒靫靱靹鞅靼鞁靺鞆鞋鞏鞐鞜鞨鞦鞣鞳鞴韃韆韈韋韜韭齏韲竟韶韵頏頌頸頤頡頷頽顆顏顋顫顯顰"],["e940","顱顴顳颪颯颱颶飄飃飆飩飫餃餉餒餔餘餡餝餞餤餠餬餮餽餾饂饉饅饐饋饑饒饌饕馗馘馥馭馮馼駟駛駝駘駑駭駮駱駲駻駸騁騏騅駢騙騫騷驅驂驀驃"],["e980","騾驕驍驛驗驟驢驥驤驩驫驪骭骰骼髀髏髑髓體髞髟髢髣髦髯髫髮髴髱髷髻鬆鬘鬚鬟鬢鬣鬥鬧鬨鬩鬪鬮鬯鬲魄魃魏魍魎魑魘魴鮓鮃鮑鮖鮗鮟鮠鮨鮴鯀鯊鮹鯆鯏鯑鯒鯣鯢鯤鯔鯡鰺鯲鯱鯰鰕鰔鰉鰓鰌鰆鰈鰒鰊鰄鰮鰛鰥鰤鰡鰰鱇鰲鱆鰾鱚鱠鱧鱶鱸鳧鳬鳰鴉鴈鳫鴃鴆鴪鴦鶯鴣鴟鵄鴕鴒鵁鴿鴾鵆鵈"],["ea40","鵝鵞鵤鵑鵐鵙鵲鶉鶇鶫鵯鵺鶚鶤鶩鶲鷄鷁鶻鶸鶺鷆鷏鷂鷙鷓鷸鷦鷭鷯鷽鸚鸛鸞鹵鹹鹽麁麈麋麌麒麕麑麝麥麩麸麪麭靡黌黎黏黐黔黜點黝黠黥黨黯"],["ea80","黴黶黷黹黻黼黽鼇鼈皷鼕鼡鼬鼾齊齒齔齣齟齠齡齦齧齬齪齷齲齶龕龜龠堯槇遙瑤凜熙"],["ed40","纊褜鍈銈蓜俉炻昱棈鋹曻彅丨仡仼伀伃伹佖侒侊侚侔俍偀倢俿倞偆偰偂傔僴僘兊兤冝冾凬刕劜劦勀勛匀匇匤卲厓厲叝﨎咜咊咩哿喆坙坥垬埈埇﨏"],["ed80","塚增墲夋奓奛奝奣妤妺孖寀甯寘寬尞岦岺峵崧嵓﨑嵂嵭嶸嶹巐弡弴彧德忞恝悅悊惞惕愠惲愑愷愰憘戓抦揵摠撝擎敎昀昕昻昉昮昞昤晥晗晙晴晳暙暠暲暿曺朎朗杦枻桒柀栁桄棏﨓楨﨔榘槢樰橫橆橳橾櫢櫤毖氿汜沆汯泚洄涇浯涖涬淏淸淲淼渹湜渧渼溿澈澵濵瀅瀇瀨炅炫焏焄煜煆煇凞燁燾犱"],["ee40","犾猤猪獷玽珉珖珣珒琇珵琦琪琩琮瑢璉璟甁畯皂皜皞皛皦益睆劯砡硎硤硺礰礼神祥禔福禛竑竧靖竫箞精絈絜綷綠緖繒罇羡羽茁荢荿菇菶葈蒴蕓蕙"],["ee80","蕫﨟薰蘒﨡蠇裵訒訷詹誧誾諟諸諶譓譿賰賴贒赶﨣軏﨤逸遧郞都鄕鄧釚釗釞釭釮釤釥鈆鈐鈊鈺鉀鈼鉎鉙鉑鈹鉧銧鉷鉸鋧鋗鋙鋐﨧鋕鋠鋓錥錡鋻﨨錞鋿錝錂鍰鍗鎤鏆鏞鏸鐱鑅鑈閒隆﨩隝隯霳霻靃靍靏靑靕顗顥飯飼餧館馞驎髙髜魵魲鮏鮱鮻鰀鵰鵫鶴鸙黑"],["eeef","ⅰ",9,"¬¦'""],["f040","",62],["f080","",124],["f140","",62],["f180","",124],["f240","",62],["f280","",124],["f340","",62],["f380","",124],["f440","",62],["f480","",124],["f540","",62],["f580","",124],["f640","",62],["f680","",124],["f740","",62],["f780","",124],["f840","",62],["f880","",124],["f940",""],["fa40","ⅰ",9,"Ⅰ",9,"¬¦'"㈱№℡∵纊褜鍈銈蓜俉炻昱棈鋹曻彅丨仡仼伀伃伹佖侒侊侚侔俍偀倢俿倞偆偰偂傔僴僘兊"],["fa80","兤冝冾凬刕劜劦勀勛匀匇匤卲厓厲叝﨎咜咊咩哿喆坙坥垬埈埇﨏塚增墲夋奓奛奝奣妤妺孖寀甯寘寬尞岦岺峵崧嵓﨑嵂嵭嶸嶹巐弡弴彧德忞恝悅悊惞惕愠惲愑愷愰憘戓抦揵摠撝擎敎昀昕昻昉昮昞昤晥晗晙晴晳暙暠暲暿曺朎朗杦枻桒柀栁桄棏﨓楨﨔榘槢樰橫橆橳橾櫢櫤毖氿汜沆汯泚洄涇浯"],["fb40","涖涬淏淸淲淼渹湜渧渼溿澈澵濵瀅瀇瀨炅炫焏焄煜煆煇凞燁燾犱犾猤猪獷玽珉珖珣珒琇珵琦琪琩琮瑢璉璟甁畯皂皜皞皛皦益睆劯砡硎硤硺礰礼神"],["fb80","祥禔福禛竑竧靖竫箞精絈絜綷綠緖繒罇羡羽茁荢荿菇菶葈蒴蕓蕙蕫﨟薰蘒﨡蠇裵訒訷詹誧誾諟諸諶譓譿賰賴贒赶﨣軏﨤逸遧郞都鄕鄧釚釗釞釭釮釤釥鈆鈐鈊鈺鉀鈼鉎鉙鉑鈹鉧銧鉷鉸鋧鋗鋙鋐﨧鋕鋠鋓錥錡鋻﨨錞鋿錝錂鍰鍗鎤鏆鏞鏸鐱鑅鑈閒隆﨩隝隯霳霻靃靍靏靑靕顗顥飯飼餧館馞驎髙"],["fc40","髜魵魲鮏鮱鮻鰀鵰鵫鶴鸙黑"]]' + ); + }, + 2682: (e, t, r) => { + 'use strict'; + var n = r(44765).Buffer; + function i() {} + function o() {} + function s() { + this.overflowByte = -1; + } + function A(e, t) { + this.iconv = t; + } + function a(e, t) { + void 0 === (e = e || {}).addBOM && (e.addBOM = !0), + (this.encoder = t.iconv.getEncoder('utf-16le', e)); + } + function c(e, t) { + (this.decoder = null), + (this.initialBytes = []), + (this.initialBytesLen = 0), + (this.options = e || {}), + (this.iconv = t.iconv); + } + function u(e, t) { + var r = t || 'utf-16le'; + if (e.length >= 2) + if (254 == e[0] && 255 == e[1]) r = 'utf-16be'; + else if (255 == e[0] && 254 == e[1]) r = 'utf-16le'; + else { + for ( + var n = 0, i = 0, o = Math.min(e.length - (e.length % 2), 64), s = 0; + s < o; + s += 2 + ) + 0 === e[s] && 0 !== e[s + 1] && i++, 0 !== e[s] && 0 === e[s + 1] && n++; + i > n ? (r = 'utf-16be') : i < n && (r = 'utf-16le'); + } + return r; + } + (t.utf16be = i), + (i.prototype.encoder = o), + (i.prototype.decoder = s), + (i.prototype.bomAware = !0), + (o.prototype.write = function (e) { + for (var t = n.from(e, 'ucs2'), r = 0; r < t.length; r += 2) { + var i = t[r]; + (t[r] = t[r + 1]), (t[r + 1] = i); + } + return t; + }), + (o.prototype.end = function () {}), + (s.prototype.write = function (e) { + if (0 == e.length) return ''; + var t = n.alloc(e.length + 1), + r = 0, + i = 0; + for ( + -1 !== this.overflowByte && + ((t[0] = e[0]), (t[1] = this.overflowByte), (r = 1), (i = 2)); + r < e.length - 1; + r += 2, i += 2 + ) + (t[i] = e[r + 1]), (t[i + 1] = e[r]); + return ( + (this.overflowByte = r == e.length - 1 ? e[e.length - 1] : -1), + t.slice(0, i).toString('ucs2') + ); + }), + (s.prototype.end = function () {}), + (t.utf16 = A), + (A.prototype.encoder = a), + (A.prototype.decoder = c), + (a.prototype.write = function (e) { + return this.encoder.write(e); + }), + (a.prototype.end = function () { + return this.encoder.end(); + }), + (c.prototype.write = function (e) { + if (!this.decoder) { + if ( + (this.initialBytes.push(e), + (this.initialBytesLen += e.length), + this.initialBytesLen < 16) + ) + return ''; + var t = u((e = n.concat(this.initialBytes)), this.options.defaultEncoding); + (this.decoder = this.iconv.getDecoder(t, this.options)), + (this.initialBytes.length = this.initialBytesLen = 0); + } + return this.decoder.write(e); + }), + (c.prototype.end = function () { + if (!this.decoder) { + var e = n.concat(this.initialBytes), + t = u(e, this.options.defaultEncoding); + this.decoder = this.iconv.getDecoder(t, this.options); + var r = this.decoder.write(e), + i = this.decoder.end(); + return i ? r + i : r; + } + return this.decoder.end(); + }); + }, + 46339: (e, t, r) => { + 'use strict'; + var n = r(44765).Buffer; + function i(e, t) { + this.iconv = t; + } + (t.utf7 = i), + (t.unicode11utf7 = 'utf7'), + (i.prototype.encoder = s), + (i.prototype.decoder = A), + (i.prototype.bomAware = !0); + var o = /[^A-Za-z0-9'\(\),-\.\/:\? \n\r\t]+/g; + function s(e, t) { + this.iconv = t.iconv; + } + function A(e, t) { + (this.iconv = t.iconv), (this.inBase64 = !1), (this.base64Accum = ''); + } + (s.prototype.write = function (e) { + return n.from( + e.replace( + o, + function (e) { + return ( + '+' + + ('+' === e + ? '' + : this.iconv.encode(e, 'utf16-be').toString('base64').replace(/=+$/, '')) + + '-' + ); + }.bind(this) + ) + ); + }), + (s.prototype.end = function () {}); + for (var a = /[A-Za-z0-9\/+]/, c = [], u = 0; u < 256; u++) + c[u] = a.test(String.fromCharCode(u)); + var l = '+'.charCodeAt(0), + h = '-'.charCodeAt(0), + g = '&'.charCodeAt(0); + function f(e, t) { + this.iconv = t; + } + function p(e, t) { + (this.iconv = t.iconv), + (this.inBase64 = !1), + (this.base64Accum = n.alloc(6)), + (this.base64AccumIdx = 0); + } + function d(e, t) { + (this.iconv = t.iconv), (this.inBase64 = !1), (this.base64Accum = ''); + } + (A.prototype.write = function (e) { + for (var t = '', r = 0, i = this.inBase64, o = this.base64Accum, s = 0; s < e.length; s++) + if (i) { + if (!c[e[s]]) { + if (s == r && e[s] == h) t += '+'; + else { + var A = o + e.slice(r, s).toString(); + t += this.iconv.decode(n.from(A, 'base64'), 'utf16-be'); + } + e[s] != h && s--, (r = s + 1), (i = !1), (o = ''); + } + } else + e[s] == l && + ((t += this.iconv.decode(e.slice(r, s), 'ascii')), (r = s + 1), (i = !0)); + if (i) { + var a = (A = o + e.slice(r).toString()).length - (A.length % 8); + (o = A.slice(a)), + (A = A.slice(0, a)), + (t += this.iconv.decode(n.from(A, 'base64'), 'utf16-be')); + } else t += this.iconv.decode(e.slice(r), 'ascii'); + return (this.inBase64 = i), (this.base64Accum = o), t; + }), + (A.prototype.end = function () { + var e = ''; + return ( + this.inBase64 && + this.base64Accum.length > 0 && + (e = this.iconv.decode(n.from(this.base64Accum, 'base64'), 'utf16-be')), + (this.inBase64 = !1), + (this.base64Accum = ''), + e + ); + }), + (t.utf7imap = f), + (f.prototype.encoder = p), + (f.prototype.decoder = d), + (f.prototype.bomAware = !0), + (p.prototype.write = function (e) { + for ( + var t = this.inBase64, + r = this.base64Accum, + i = this.base64AccumIdx, + o = n.alloc(5 * e.length + 10), + s = 0, + A = 0; + A < e.length; + A++ + ) { + var a = e.charCodeAt(A); + 32 <= a && a <= 126 + ? (t && + (i > 0 && + ((s += o.write( + r.slice(0, i).toString('base64').replace(/\//g, ',').replace(/=+$/, ''), + s + )), + (i = 0)), + (o[s++] = h), + (t = !1)), + t || ((o[s++] = a), a === g && (o[s++] = h))) + : (t || ((o[s++] = g), (t = !0)), + t && + ((r[i++] = a >> 8), + (r[i++] = 255 & a), + i == r.length && + ((s += o.write(r.toString('base64').replace(/\//g, ','), s)), (i = 0)))); + } + return (this.inBase64 = t), (this.base64AccumIdx = i), o.slice(0, s); + }), + (p.prototype.end = function () { + var e = n.alloc(10), + t = 0; + return ( + this.inBase64 && + (this.base64AccumIdx > 0 && + ((t += e.write( + this.base64Accum + .slice(0, this.base64AccumIdx) + .toString('base64') + .replace(/\//g, ',') + .replace(/=+$/, ''), + t + )), + (this.base64AccumIdx = 0)), + (e[t++] = h), + (this.inBase64 = !1)), + e.slice(0, t) + ); + }); + var C = c.slice(); + (C[','.charCodeAt(0)] = !0), + (d.prototype.write = function (e) { + for ( + var t = '', r = 0, i = this.inBase64, o = this.base64Accum, s = 0; + s < e.length; + s++ + ) + if (i) { + if (!C[e[s]]) { + if (s == r && e[s] == h) t += '&'; + else { + var A = o + e.slice(r, s).toString().replace(/,/g, '/'); + t += this.iconv.decode(n.from(A, 'base64'), 'utf16-be'); + } + e[s] != h && s--, (r = s + 1), (i = !1), (o = ''); + } + } else + e[s] == g && + ((t += this.iconv.decode(e.slice(r, s), 'ascii')), (r = s + 1), (i = !0)); + if (i) { + var a = (A = o + e.slice(r).toString().replace(/,/g, '/')).length - (A.length % 8); + (o = A.slice(a)), + (A = A.slice(0, a)), + (t += this.iconv.decode(n.from(A, 'base64'), 'utf16-be')); + } else t += this.iconv.decode(e.slice(r), 'ascii'); + return (this.inBase64 = i), (this.base64Accum = o), t; + }), + (d.prototype.end = function () { + var e = ''; + return ( + this.inBase64 && + this.base64Accum.length > 0 && + (e = this.iconv.decode(n.from(this.base64Accum, 'base64'), 'utf16-be')), + (this.inBase64 = !1), + (this.base64Accum = ''), + e + ); + }); + }, + 47773: (e, t) => { + 'use strict'; + function r(e, t) { + (this.encoder = e), (this.addBOM = !0); + } + function n(e, t) { + (this.decoder = e), (this.pass = !1), (this.options = t || {}); + } + (t.PrependBOM = r), + (r.prototype.write = function (e) { + return this.addBOM && ((e = '\ufeff' + e), (this.addBOM = !1)), this.encoder.write(e); + }), + (r.prototype.end = function () { + return this.encoder.end(); + }), + (t.StripBOM = n), + (n.prototype.write = function (e) { + var t = this.decoder.write(e); + return ( + this.pass || + !t || + ('\ufeff' === t[0] && + ((t = t.slice(1)), + 'function' == typeof this.options.stripBOM && this.options.stripBOM()), + (this.pass = !0)), + t + ); + }), + (n.prototype.end = function () { + return this.decoder.end(); + }); + }, + 819: (e, t, r) => { + 'use strict'; + var n = r(64293).Buffer; + e.exports = function (e) { + var t = void 0; + (e.supportsNodeEncodingsExtension = !(n.from || new n(0) instanceof Uint8Array)), + (e.extendNodeEncodings = function () { + if (!t) { + if (((t = {}), !e.supportsNodeEncodingsExtension)) + return ( + console.error( + "ACTION NEEDED: require('iconv-lite').extendNodeEncodings() is not supported in your version of Node" + ), + void console.error( + 'See more info at https://github.com/ashtuchkin/iconv-lite/wiki/Node-v4-compatibility' + ) + ); + var i = { + hex: !0, + utf8: !0, + 'utf-8': !0, + ascii: !0, + binary: !0, + base64: !0, + ucs2: !0, + 'ucs-2': !0, + utf16le: !0, + 'utf-16le': !0, + }; + n.isNativeEncoding = function (e) { + return e && i[e.toLowerCase()]; + }; + var o = r(64293).SlowBuffer; + if ( + ((t.SlowBufferToString = o.prototype.toString), + (o.prototype.toString = function (r, i, o) { + return ( + (r = String(r || 'utf8').toLowerCase()), + n.isNativeEncoding(r) + ? t.SlowBufferToString.call(this, r, i, o) + : (void 0 === i && (i = 0), + void 0 === o && (o = this.length), + e.decode(this.slice(i, o), r)) + ); + }), + (t.SlowBufferWrite = o.prototype.write), + (o.prototype.write = function (r, i, o, s) { + if (isFinite(i)) isFinite(o) || ((s = o), (o = void 0)); + else { + var A = s; + (s = i), (i = o), (o = A); + } + i = +i || 0; + var a = this.length - i; + if ( + (o ? (o = +o) > a && (o = a) : (o = a), + (s = String(s || 'utf8').toLowerCase()), + n.isNativeEncoding(s)) + ) + return t.SlowBufferWrite.call(this, r, i, o, s); + if (r.length > 0 && (o < 0 || i < 0)) + throw new RangeError('attempt to write beyond buffer bounds'); + var c = e.encode(r, s); + return c.length < o && (o = c.length), c.copy(this, i, 0, o), o; + }), + (t.BufferIsEncoding = n.isEncoding), + (n.isEncoding = function (t) { + return n.isNativeEncoding(t) || e.encodingExists(t); + }), + (t.BufferByteLength = n.byteLength), + (n.byteLength = o.byteLength = function (r, i) { + return ( + (i = String(i || 'utf8').toLowerCase()), + n.isNativeEncoding(i) + ? t.BufferByteLength.call(this, r, i) + : e.encode(r, i).length + ); + }), + (t.BufferToString = n.prototype.toString), + (n.prototype.toString = function (r, i, o) { + return ( + (r = String(r || 'utf8').toLowerCase()), + n.isNativeEncoding(r) + ? t.BufferToString.call(this, r, i, o) + : (void 0 === i && (i = 0), + void 0 === o && (o = this.length), + e.decode(this.slice(i, o), r)) + ); + }), + (t.BufferWrite = n.prototype.write), + (n.prototype.write = function (r, i, o, s) { + var A = i, + a = o, + c = s; + if (isFinite(i)) isFinite(o) || ((s = o), (o = void 0)); + else { + var u = s; + (s = i), (i = o), (o = u); + } + if (((s = String(s || 'utf8').toLowerCase()), n.isNativeEncoding(s))) + return t.BufferWrite.call(this, r, A, a, c); + i = +i || 0; + var l = this.length - i; + if ((o ? (o = +o) > l && (o = l) : (o = l), r.length > 0 && (o < 0 || i < 0))) + throw new RangeError('attempt to write beyond buffer bounds'); + var h = e.encode(r, s); + return h.length < o && (o = h.length), h.copy(this, i, 0, o), o; + }), + e.supportsStreams) + ) { + var s = r(92413).Readable; + (t.ReadableSetEncoding = s.prototype.setEncoding), + (s.prototype.setEncoding = function (t, r) { + (this._readableState.decoder = e.getDecoder(t, r)), + (this._readableState.encoding = t); + }), + (s.prototype.collect = e._collect); + } + } + }), + (e.undoExtendNodeEncodings = function () { + if (e.supportsNodeEncodingsExtension) { + if (!t) + throw new Error( + "require('iconv-lite').undoExtendNodeEncodings(): Nothing to undo; extendNodeEncodings() is not called." + ); + delete n.isNativeEncoding; + var i = r(64293).SlowBuffer; + if ( + ((i.prototype.toString = t.SlowBufferToString), + (i.prototype.write = t.SlowBufferWrite), + (n.isEncoding = t.BufferIsEncoding), + (n.byteLength = t.BufferByteLength), + (n.prototype.toString = t.BufferToString), + (n.prototype.write = t.BufferWrite), + e.supportsStreams) + ) { + var o = r(92413).Readable; + (o.prototype.setEncoding = t.ReadableSetEncoding), delete o.prototype.collect; + } + t = void 0; + } + }); + }; + }, + 14503: (e, t, r) => { + 'use strict'; + var n = r(44765).Buffer, + i = r(47773), + o = e.exports; + (o.encodings = null), + (o.defaultCharUnicode = '�'), + (o.defaultCharSingleByte = '?'), + (o.encode = function (e, t, r) { + e = '' + (e || ''); + var i = o.getEncoder(t, r), + s = i.write(e), + A = i.end(); + return A && A.length > 0 ? n.concat([s, A]) : s; + }), + (o.decode = function (e, t, r) { + 'string' == typeof e && + (o.skipDecodeWarning || + (console.error( + 'Iconv-lite warning: decode()-ing strings is deprecated. Refer to https://github.com/ashtuchkin/iconv-lite/wiki/Use-Buffers-when-decoding' + ), + (o.skipDecodeWarning = !0)), + (e = n.from('' + (e || ''), 'binary'))); + var i = o.getDecoder(t, r), + s = i.write(e), + A = i.end(); + return A ? s + A : s; + }), + (o.encodingExists = function (e) { + try { + return o.getCodec(e), !0; + } catch (e) { + return !1; + } + }), + (o.toEncoding = o.encode), + (o.fromEncoding = o.decode), + (o._codecDataCache = {}), + (o.getCodec = function (e) { + o.encodings || (o.encodings = r(15709)); + for (var t = o._canonicalizeEncoding(e), n = {}; ; ) { + var i = o._codecDataCache[t]; + if (i) return i; + var s = o.encodings[t]; + switch (typeof s) { + case 'string': + t = s; + break; + case 'object': + for (var A in s) n[A] = s[A]; + n.encodingName || (n.encodingName = t), (t = s.type); + break; + case 'function': + return ( + n.encodingName || (n.encodingName = t), + (i = new s(n, o)), + (o._codecDataCache[n.encodingName] = i), + i + ); + default: + throw new Error( + "Encoding not recognized: '" + e + "' (searched as: '" + t + "')" + ); + } + } + }), + (o._canonicalizeEncoding = function (e) { + return ('' + e).toLowerCase().replace(/:\d{4}$|[^0-9a-z]/g, ''); + }), + (o.getEncoder = function (e, t) { + var r = o.getCodec(e), + n = new r.encoder(t, r); + return r.bomAware && t && t.addBOM && (n = new i.PrependBOM(n, t)), n; + }), + (o.getDecoder = function (e, t) { + var r = o.getCodec(e), + n = new r.decoder(t, r); + return !r.bomAware || (t && !1 === t.stripBOM) || (n = new i.StripBOM(n, t)), n; + }); + var s = 'undefined' != typeof process && process.versions && process.versions.node; + if (s) { + var A = s.split('.').map(Number); + (A[0] > 0 || A[1] >= 10) && r(16034)(o), r(819)(o); + } + }, + 16034: (e, t, r) => { + 'use strict'; + var n = r(64293).Buffer, + i = r(92413).Transform; + function o(e, t) { + (this.conv = e), ((t = t || {}).decodeStrings = !1), i.call(this, t); + } + function s(e, t) { + (this.conv = e), ((t = t || {}).encoding = this.encoding = 'utf8'), i.call(this, t); + } + (e.exports = function (e) { + (e.encodeStream = function (t, r) { + return new o(e.getEncoder(t, r), r); + }), + (e.decodeStream = function (t, r) { + return new s(e.getDecoder(t, r), r); + }), + (e.supportsStreams = !0), + (e.IconvLiteEncoderStream = o), + (e.IconvLiteDecoderStream = s), + (e._collect = s.prototype.collect); + }), + (o.prototype = Object.create(i.prototype, { constructor: { value: o } })), + (o.prototype._transform = function (e, t, r) { + if ('string' != typeof e) + return r(new Error('Iconv encoding stream needs strings as its input.')); + try { + var n = this.conv.write(e); + n && n.length && this.push(n), r(); + } catch (e) { + r(e); + } + }), + (o.prototype._flush = function (e) { + try { + var t = this.conv.end(); + t && t.length && this.push(t), e(); + } catch (t) { + e(t); + } + }), + (o.prototype.collect = function (e) { + var t = []; + return ( + this.on('error', e), + this.on('data', function (e) { + t.push(e); + }), + this.on('end', function () { + e(null, n.concat(t)); + }), + this + ); + }), + (s.prototype = Object.create(i.prototype, { constructor: { value: s } })), + (s.prototype._transform = function (e, t, r) { + if (!n.isBuffer(e)) + return r(new Error('Iconv decoding stream needs buffers as its input.')); + try { + var i = this.conv.write(e); + i && i.length && this.push(i, this.encoding), r(); + } catch (e) { + r(e); + } + }), + (s.prototype._flush = function (e) { + try { + var t = this.conv.end(); + t && t.length && this.push(t, this.encoding), e(); + } catch (t) { + e(t); + } + }), + (s.prototype.collect = function (e) { + var t = ''; + return ( + this.on('error', e), + this.on('data', function (e) { + t += e; + }), + this.on('end', function () { + e(null, t); + }), + this + ); + }); + }, + 46458: (e) => { + function t(e) { + return Array.isArray(e) ? e : [e]; + } + const r = /^\s+$/, + n = /^\\!/, + i = /^\\#/, + o = /\r?\n/g, + s = /^\.*\/|^\.+$/, + A = 'undefined' != typeof Symbol ? Symbol.for('node-ignore') : 'node-ignore', + a = /([0-z])-([0-z])/g, + c = [ + [/\\?\s+$/, (e) => (0 === e.indexOf('\\') ? ' ' : '')], + [/\\\s/g, () => ' '], + [/[\\^$.|*+(){]/g, (e) => '\\' + e], + [ + /\[([^\]/]*)($|\])/g, + (e, t, r) => { + return ']' === r + ? `[${ + ((n = t), + n.replace(a, (e, t, r) => (t.charCodeAt(0) <= r.charCodeAt(0) ? e : ''))) + }]` + : '\\' + e; + var n; + }, + ], + [/(?!\\)\?/g, () => '[^/]'], + [/^\//, () => '^'], + [/\//g, () => '\\/'], + [/^\^*\\\*\\\*\\\//, () => '^(?:.*\\/)?'], + [/(?:[^*])$/, (e) => (/\/$/.test(e) ? e + '$' : e + '(?=$|\\/$)')], + [ + /^(?=[^^])/, + function () { + return /\/(?!$)/.test(this) ? '^' : '(?:^|\\/)'; + }, + ], + [ + /\\\/\\\*\\\*(?=\\\/|$)/g, + (e, t, r) => (t + 6 < r.length ? '(?:\\/[^\\/]+)*' : '\\/.+'), + ], + [/(^|[^\\]+)\\\*(?=.+)/g, (e, t) => t + '[^\\/]*'], + [/(\^|\\\/)?\\\*$/, (e, t) => (t ? t + '[^/]+' : '[^/]*') + '(?=$|\\/$)'], + [/\\\\\\/g, () => '\\'], + ], + u = Object.create(null), + l = (e) => 'string' == typeof e; + class h { + constructor(e, t, r, n) { + (this.origin = e), (this.pattern = t), (this.negative = r), (this.regex = n); + } + } + const g = (e, t) => { + const r = e; + let o = !1; + 0 === e.indexOf('!') && ((o = !0), (e = e.substr(1))); + const s = ((e, t, r) => { + const n = u[e]; + if (n) return n; + const i = c.reduce((t, r) => t.replace(r[0], r[1].bind(e)), e); + return (u[e] = r ? new RegExp(i, 'i') : new RegExp(i)); + })((e = e.replace(n, '!').replace(i, '#')), 0, t); + return new h(r, e, o, s); + }, + f = (e, t) => { + throw new t(e); + }, + p = (e, t, r) => { + if (!l(e)) return r(`path must be a string, but got \`${t}\``, TypeError); + if (!e) return r('path must not be empty', TypeError); + if (p.isNotRelative(e)) { + return r( + `path should be a ${'`path.relative()`d'} string, but got "${t}"`, + RangeError + ); + } + return !0; + }, + d = (e) => s.test(e); + (p.isNotRelative = d), (p.convert = (e) => e); + class C { + constructor({ ignorecase: e = !0 } = {}) { + var t, r, n; + (this._rules = []), + (this._ignorecase = e), + (t = this), + (r = A), + (n = !0), + Object.defineProperty(t, r, { value: n }), + this._initCache(); + } + _initCache() { + (this._ignoreCache = Object.create(null)), (this._testCache = Object.create(null)); + } + _addPattern(e) { + if (e && e[A]) + return (this._rules = this._rules.concat(e._rules)), void (this._added = !0); + if (((e) => e && l(e) && !r.test(e) && 0 !== e.indexOf('#'))(e)) { + const t = g(e, this._ignorecase); + (this._added = !0), this._rules.push(t); + } + } + add(e) { + return ( + (this._added = !1), + t(l(e) ? ((e) => e.split(o))(e) : e).forEach(this._addPattern, this), + this._added && this._initCache(), + this + ); + } + addPattern(e) { + return this.add(e); + } + _testOne(e, t) { + let r = !1, + n = !1; + return ( + this._rules.forEach((i) => { + const { negative: o } = i; + if ((n === o && r !== n) || (o && !r && !n && !t)) return; + i.regex.test(e) && ((r = !o), (n = o)); + }), + { ignored: r, unignored: n } + ); + } + _test(e, t, r, n) { + const i = e && p.convert(e); + return p(i, e, f), this._t(i, t, r, n); + } + _t(e, t, r, n) { + if (e in t) return t[e]; + if ((n || (n = e.split('/')), n.pop(), !n.length)) return (t[e] = this._testOne(e, r)); + const i = this._t(n.join('/') + '/', t, r, n); + return (t[e] = i.ignored ? i : this._testOne(e, r)); + } + ignores(e) { + return this._test(e, this._ignoreCache, !1).ignored; + } + createFilter() { + return (e) => !this.ignores(e); + } + filter(e) { + return t(e).filter(this.createFilter()); + } + test(e) { + return this._test(e, this._testCache, !0); + } + } + const E = (e) => new C(e), + I = () => !1; + if ( + ((E.isPathValid = (e) => p(e && p.convert(e), e, I)), + (E.default = E), + (e.exports = E), + 'undefined' != typeof process && + ((process.env && process.env.IGNORE_TEST_WIN32) || 'win32' === process.platform)) + ) { + const e = (e) => + /^\\\\\?\\/.test(e) || /["<>|\u0000-\u001F]+/u.test(e) ? e : e.replace(/\\/g, '/'); + p.convert = e; + const t = /^[a-z]:\//i; + p.isNotRelative = (e) => t.test(e) || d(e); + } + }, + 24679: (e, t, r) => { + var n = r(98984), + i = Object.create(null), + o = r(91162); + function s(e) { + for (var t = e.length, r = [], n = 0; n < t; n++) r[n] = e[n]; + return r; + } + e.exports = n(function (e, t) { + return i[e] + ? (i[e].push(t), null) + : ((i[e] = [t]), + (function (e) { + return o(function t() { + var r = i[e], + n = r.length, + o = s(arguments); + try { + for (var A = 0; A < n; A++) r[A].apply(null, o); + } finally { + r.length > n + ? (r.splice(0, n), + process.nextTick(function () { + t.apply(null, o); + })) + : delete i[e]; + } + }); + })(e)); + }); + }, + 85870: (e, t, r) => { + try { + var n = r(31669); + if ('function' != typeof n.inherits) throw ''; + e.exports = n.inherits; + } catch (t) { + e.exports = r(48145); + } + }, + 48145: (e) => { + 'function' == typeof Object.create + ? (e.exports = function (e, t) { + (e.super_ = t), + (e.prototype = Object.create(t.prototype, { + constructor: { value: e, enumerable: !1, writable: !0, configurable: !0 }, + })); + }) + : (e.exports = function (e, t) { + e.super_ = t; + var r = function () {}; + (r.prototype = t.prototype), (e.prototype = new r()), (e.prototype.constructor = e); + }); + }, + 9494: (e, t, r) => { + 'use strict'; + var n = e.exports; + (n.prompts = {}), + (n.Separator = r(88249)), + (n.ui = { BottomBar: r(36896), Prompt: r(87380) }), + (n.createPromptModule = function (e) { + var t = function (r, i) { + var o; + try { + o = new n.ui.Prompt(t.prompts, e); + } catch (e) { + return Promise.reject(e); + } + var s = o.run(r, i); + return (s.ui = o), s; + }; + return ( + (t.prompts = {}), + (t.registerPrompt = function (e, r) { + return (t.prompts[e] = r), this; + }), + (t.restoreDefaultPrompts = function () { + this.registerPrompt('list', r(89336)), + this.registerPrompt('input', r(90013)), + this.registerPrompt('number', r(90307)), + this.registerPrompt('confirm', r(32107)), + this.registerPrompt('rawlist', r(942)), + this.registerPrompt('expand', r(73870)), + this.registerPrompt('checkbox', r(33375)), + this.registerPrompt('password', r(30428)), + this.registerPrompt('editor', r(48748)); + }), + t.restoreDefaultPrompts(), + t + ); + }), + (n.prompt = n.createPromptModule()), + (n.registerPrompt = function (e, t) { + n.prompt.registerPrompt(e, t); + }), + (n.restoreDefaultPrompts = function () { + n.prompt.restoreDefaultPrompts(); + }); + }, + 1996: (e, t, r) => { + 'use strict'; + var n = { isString: r(221), isNumber: r(71044), extend: r(94501), isFunction: r(92533) }; + e.exports = class e { + constructor(t, r) { + if (t instanceof e || 'separator' === t.type) return t; + n.isString(t) || n.isNumber(t) + ? ((this.name = String(t)), (this.value = t), (this.short = String(t))) + : n.extend(this, t, { + name: t.name || t.value, + value: 'value' in t ? t.value : t.name, + short: t.short || t.name || t.value, + }), + n.isFunction(t.disabled) + ? (this.disabled = t.disabled(r)) + : (this.disabled = t.disabled); + } + }; + }, + 21027: (e, t, r) => { + 'use strict'; + var n = r(42357), + i = { isNumber: r(71044), filter: r(59181), map: r(27869), find: r(98347) }, + o = r(88249), + s = r(1996); + e.exports = class { + constructor(e, t) { + (this.choices = e.map((e) => + 'separator' === e.type ? (e instanceof o || (e = new o(e.line)), e) : new s(e, t) + )), + (this.realChoices = this.choices.filter(o.exclude).filter((e) => !e.disabled)), + Object.defineProperty(this, 'length', { + get() { + return this.choices.length; + }, + set(e) { + this.choices.length = e; + }, + }), + Object.defineProperty(this, 'realLength', { + get() { + return this.realChoices.length; + }, + set() { + throw new Error('Cannot set `realLength` of a Choices collection'); + }, + }); + } + getChoice(e) { + return n(i.isNumber(e)), this.realChoices[e]; + } + get(e) { + return n(i.isNumber(e)), this.choices[e]; + } + where(e) { + return i.filter(this.realChoices, e); + } + pluck(e) { + return i.map(this.realChoices, e); + } + indexOf() { + return this.choices.indexOf.apply(this.choices, arguments); + } + forEach() { + return this.choices.forEach.apply(this.choices, arguments); + } + filter() { + return this.choices.filter.apply(this.choices, arguments); + } + find(e) { + return i.find(this.choices, e); + } + push() { + var e = i.map(arguments, (e) => new s(e)); + return ( + this.choices.push.apply(this.choices, e), + (this.realChoices = this.choices.filter(o.exclude).filter((e) => !e.disabled)), + this.choices + ); + } + }; + }, + 88249: (e, t, r) => { + 'use strict'; + var n = r(95882), + i = r(51938); + class o { + constructor(e) { + (this.type = 'separator'), (this.line = n.dim(e || new Array(15).join(i.line))); + } + toString() { + return this.line; + } + } + (o.exclude = function (e) { + return 'separator' !== e.type; + }), + (e.exports = o); + }, + 10485: (e, t, r) => { + 'use strict'; + var n = { assign: r(9682), defaults: r(99906), clone: r(22254) }, + i = r(95882), + o = r(28855), + { filter: s, flatMap: A, share: a, take: c, takeUntil: u } = r(20683), + l = r(21027), + h = r(32542); + e.exports = class { + constructor(e, t, r) { + n.assign(this, { answers: r, status: 'pending' }), + (this.opt = n.defaults(n.clone(e), { + validate: () => !0, + filter: (e) => e, + when: () => !0, + suffix: '', + prefix: i.green('?'), + })), + this.opt.name || this.throwParamError('name'), + this.opt.message || (this.opt.message = this.opt.name + ':'), + Array.isArray(this.opt.choices) && (this.opt.choices = new l(this.opt.choices, r)), + (this.rl = t), + (this.screen = new h(this.rl)); + } + run() { + return new Promise((e) => { + this._run((t) => e(t)); + }); + } + _run(e) { + e(); + } + throwParamError(e) { + throw new Error('You must provide a `' + e + '` parameter'); + } + close() { + this.screen.releaseCursor(); + } + handleSubmitEvents(e) { + var t = this, + r = o(this.opt.validate), + n = o(this.opt.filter), + i = e.pipe( + A((e) => + n(e, t.answers).then( + (e) => + r(e, t.answers).then( + (t) => ({ isValid: t, value: e }), + (t) => ({ isValid: t, value: e }) + ), + (e) => ({ isValid: e }) + ) + ), + a() + ), + l = i.pipe( + s((e) => !0 === e.isValid), + c(1) + ); + return { + success: l, + error: i.pipe( + s((e) => !0 !== e.isValid), + u(l) + ), + }; + } + getQuestion() { + var e = + this.opt.prefix + ' ' + i.bold(this.opt.message) + this.opt.suffix + i.reset(' '); + return ( + null != this.opt.default && + 'answered' !== this.status && + ('password' === this.opt.type + ? (e += i.italic.dim('[hidden] ')) + : (e += i.dim('(' + this.opt.default + ') '))), + e + ); + } + }; + }, + 33375: (e, t, r) => { + 'use strict'; + var n = { isArray: r(82664), map: r(27869), isString: r(221) }, + i = r(95882), + o = r(61696), + s = r(51938), + { map: A, takeUntil: a } = r(20683), + c = r(10485), + u = r(92330), + l = r(78635); + e.exports = class extends c { + constructor(e, t, r) { + super(e, t, r), + this.opt.choices || this.throwParamError('choices'), + n.isArray(this.opt.default) && + this.opt.choices.forEach(function (e) { + this.opt.default.indexOf(e.value) >= 0 && (e.checked = !0); + }, this), + (this.pointer = 0), + (this.opt.default = null), + (this.paginator = new l(this.screen)); + } + _run(e) { + this.done = e; + var t = u(this.rl), + r = this.handleSubmitEvents(t.line.pipe(A(this.getCurrentValue.bind(this)))); + return ( + r.success.forEach(this.onEnd.bind(this)), + r.error.forEach(this.onError.bind(this)), + t.normalizedUpKey.pipe(a(r.success)).forEach(this.onUpKey.bind(this)), + t.normalizedDownKey.pipe(a(r.success)).forEach(this.onDownKey.bind(this)), + t.numberKey.pipe(a(r.success)).forEach(this.onNumberKey.bind(this)), + t.spaceKey.pipe(a(r.success)).forEach(this.onSpaceKey.bind(this)), + t.aKey.pipe(a(r.success)).forEach(this.onAllKey.bind(this)), + t.iKey.pipe(a(r.success)).forEach(this.onInverseKey.bind(this)), + o.hide(), + this.render(), + (this.firstRender = !1), + this + ); + } + render(e) { + var t, + r, + o, + A, + a = this.getQuestion(), + c = ''; + if ( + (this.spaceKeyPressed || + (a += + '(Press ' + + i.cyan.bold('') + + ' to select, ' + + i.cyan.bold('') + + ' to toggle all, ' + + i.cyan.bold('') + + ' to invert selection)'), + 'answered' === this.status) + ) + a += i.cyan(this.selection.join(', ')); + else { + var u = + ((t = this.opt.choices), + (r = this.pointer), + (o = ''), + (A = 0), + t.forEach(function (e, t) { + if ('separator' === e.type) return A++, void (o += ' ' + e + '\n'); + if (e.disabled) + A++, + (o += ' - ' + e.name), + (o += ' (' + (n.isString(e.disabled) ? e.disabled : 'Disabled') + ')'); + else { + var a = (e.checked ? i.green(s.radioOn) : s.radioOff) + ' ' + e.name; + o += t - A === r ? i.cyan(s.pointer + a) : ' ' + a; + } + o += '\n'; + }), + o.replace(/\n$/, '')), + l = this.opt.choices.indexOf(this.opt.choices.getChoice(this.pointer)); + a += '\n' + this.paginator.paginate(u, l, this.opt.pageSize); + } + e && (c = i.red('>> ') + e), this.screen.render(a, c); + } + onEnd(e) { + (this.status = 'answered'), + (this.spaceKeyPressed = !0), + this.render(), + this.screen.done(), + o.show(), + this.done(e.value); + } + onError(e) { + this.render(e.isValid); + } + getCurrentValue() { + var e = this.opt.choices.filter(function (e) { + return Boolean(e.checked) && !e.disabled; + }); + return (this.selection = n.map(e, 'short')), n.map(e, 'value'); + } + onUpKey() { + var e = this.opt.choices.realLength; + (this.pointer = this.pointer > 0 ? this.pointer - 1 : e - 1), this.render(); + } + onDownKey() { + var e = this.opt.choices.realLength; + (this.pointer = this.pointer < e - 1 ? this.pointer + 1 : 0), this.render(); + } + onNumberKey(e) { + e <= this.opt.choices.realLength && + ((this.pointer = e - 1), this.toggleChoice(this.pointer)), + this.render(); + } + onSpaceKey() { + (this.spaceKeyPressed = !0), this.toggleChoice(this.pointer), this.render(); + } + onAllKey() { + var e = Boolean( + this.opt.choices.find(function (e) { + return 'separator' !== e.type && !e.checked; + }) + ); + this.opt.choices.forEach(function (t) { + 'separator' !== t.type && (t.checked = e); + }), + this.render(); + } + onInverseKey() { + this.opt.choices.forEach(function (e) { + 'separator' !== e.type && (e.checked = !e.checked); + }), + this.render(); + } + toggleChoice(e) { + var t = this.opt.choices.getChoice(e); + void 0 !== t && (this.opt.choices.getChoice(e).checked = !t.checked); + } + }; + }, + 32107: (e, t, r) => { + 'use strict'; + var n = { extend: r(94501), isBoolean: r(66807) }, + i = r(95882), + { take: o, takeUntil: s } = r(20683), + A = r(10485), + a = r(92330); + e.exports = class extends A { + constructor(e, t, r) { + super(e, t, r); + var i = !0; + n.extend(this.opt, { + filter: function (e) { + var t = i; + return null != e && '' !== e && (t = /^y(es)?/i.test(e)), t; + }, + }), + n.isBoolean(this.opt.default) && (i = this.opt.default), + (this.opt.default = i ? 'Y/n' : 'y/N'); + } + _run(e) { + this.done = e; + var t = a(this.rl); + return ( + t.keypress.pipe(s(t.line)).forEach(this.onKeypress.bind(this)), + t.line.pipe(o(1)).forEach(this.onEnd.bind(this)), + this.render(), + this + ); + } + render(e) { + var t = this.getQuestion(); + return ( + (t += 'boolean' == typeof e ? i.cyan(e ? 'Yes' : 'No') : this.rl.line), + this.screen.render(t), + this + ); + } + onEnd(e) { + this.status = 'answered'; + var t = this.opt.filter(e); + this.render(t), this.screen.done(), this.done(t); + } + onKeypress() { + this.render(); + } + }; + }, + 48748: (e, t, r) => { + 'use strict'; + var n = r(95882), + i = r(48011).Wl, + o = r(10485), + s = r(92330), + { Subject: A } = r(86596); + e.exports = class extends o { + _run(e) { + (this.done = e), (this.editorResult = new A()); + var t = s(this.rl); + this.lineSubscription = t.line.subscribe(this.startExternalEditor.bind(this)); + var r = this.handleSubmitEvents(this.editorResult); + return ( + r.success.forEach(this.onEnd.bind(this)), + r.error.forEach(this.onError.bind(this)), + (this.currentText = this.opt.default), + (this.opt.default = null), + this.render(), + this + ); + } + render(e) { + var t = '', + r = this.getQuestion(); + 'answered' === this.status + ? (r += n.dim('Received')) + : (r += n.dim('Press to launch your preferred editor.')), + e && (t = n.red('>> ') + e), + this.screen.render(r, t); + } + startExternalEditor() { + this.rl.pause(), i(this.currentText, this.endExternalEditor.bind(this)); + } + endExternalEditor(e, t) { + this.rl.resume(), e ? this.editorResult.error(e) : this.editorResult.next(t); + } + onEnd(e) { + this.editorResult.unsubscribe(), + this.lineSubscription.unsubscribe(), + (this.answer = e.value), + (this.status = 'answered'), + this.render(), + this.screen.done(), + this.done(this.answer); + } + onError(e) { + this.render(e.isValid); + } + }; + }, + 73870: (e, t, r) => { + 'use strict'; + var n = { uniq: r(44852), isString: r(221), isNumber: r(71044), findIndex: r(17506) }, + i = r(95882), + { map: o, takeUntil: s } = r(20683), + A = r(10485), + a = r(88249), + c = r(92330), + u = r(78635); + e.exports = class extends A { + constructor(e, t, r) { + super(e, t, r), + this.opt.choices || this.throwParamError('choices'), + this.validateChoices(this.opt.choices), + this.opt.choices.push({ key: 'h', name: 'Help, list all options', value: 'help' }), + (this.opt.validate = (e) => + null == e ? 'Please enter a valid command' : 'help' !== e), + (this.opt.default = this.generateChoicesString(this.opt.choices, this.opt.default)), + (this.paginator = new u(this.screen)); + } + _run(e) { + this.done = e; + var t = c(this.rl), + r = this.handleSubmitEvents(t.line.pipe(o(this.getCurrentValue.bind(this)))); + return ( + r.success.forEach(this.onSubmit.bind(this)), + r.error.forEach(this.onError.bind(this)), + (this.keypressObs = t.keypress + .pipe(s(r.success)) + .forEach(this.onKeypress.bind(this))), + this.render(), + this + ); + } + render(e, t) { + var r, + n, + o, + s = this.getQuestion(), + A = ''; + if ('answered' === this.status) s += i.cyan(this.answer); + else if ('expanded' === this.status) { + var a = + ((r = this.opt.choices), + (n = this.selectedKey), + (o = ''), + r.forEach((e) => { + if (((o += '\n '), 'separator' !== e.type)) { + var t = e.key + ') ' + e.name; + n === e.key && (t = i.cyan(t)), (o += t); + } else o += ' ' + e; + }), + o); + (s += this.paginator.paginate(a, this.selectedKey, this.opt.pageSize)), + (s += '\n Answer: '); + } + (s += this.rl.line), + e && (A = i.red('>> ') + e), + t && (A = i.cyan('>> ') + t), + this.screen.render(s, A); + } + getCurrentValue(e) { + e || (e = this.rawDefault); + var t = this.opt.choices.where({ key: e.toLowerCase().trim() })[0]; + return t ? t.value : null; + } + getChoices() { + var e = ''; + return ( + this.opt.choices.forEach((t) => { + if (((e += '\n '), 'separator' !== t.type)) { + var r = t.key + ') ' + t.name; + this.selectedKey === t.key && (r = i.cyan(r)), (e += r); + } else e += ' ' + t; + }), + e + ); + } + onError(e) { + if ('help' === e.value) + return (this.selectedKey = ''), (this.status = 'expanded'), void this.render(); + this.render(e.isValid); + } + onSubmit(e) { + this.status = 'answered'; + var t = this.opt.choices.where({ value: e.value })[0]; + (this.answer = t.short || t.name), + this.render(), + this.screen.done(), + this.done(e.value); + } + onKeypress() { + this.selectedKey = this.rl.line.toLowerCase(); + var e = this.opt.choices.where({ key: this.selectedKey })[0]; + 'expanded' === this.status ? this.render() : this.render(null, e ? e.name : null); + } + validateChoices(e) { + var t, + r = [], + i = {}; + if ( + (e.filter(a.exclude).forEach((e) => { + (e.key && 1 === e.key.length) || (t = !0), + i[e.key] && r.push(e.key), + (i[e.key] = !0), + (e.key = String(e.key).toLowerCase()); + }), + t) + ) + throw new Error('Format error: `key` param must be a single letter and is required.'); + if (i.h) + throw new Error( + 'Reserved key error: `key` param cannot be `h` - this value is reserved.' + ); + if (r.length) + throw new Error( + 'Duplicate key error: `key` param must be unique. Duplicates: ' + + n.uniq(r).join(', ') + ); + } + generateChoicesString(e, t) { + var r = e.realLength - 1; + if (n.isNumber(t) && this.opt.choices.getChoice(t)) r = t; + else if (n.isString(t)) { + let i = n.findIndex(e.realChoices, ({ value: e }) => e === t); + r = -1 === i ? r : i; + } + var i = this.opt.choices.pluck('key'); + return (this.rawDefault = i[r]), (i[r] = String(i[r]).toUpperCase()), i.join(''); + } + }; + }, + 90013: (e, t, r) => { + 'use strict'; + var n = r(95882), + { map: i, takeUntil: o } = r(20683), + s = r(10485), + A = r(92330); + e.exports = class extends s { + _run(e) { + this.done = e; + var t = A(this.rl), + r = t.line.pipe(i(this.filterInput.bind(this))), + n = this.handleSubmitEvents(r); + return ( + n.success.forEach(this.onEnd.bind(this)), + n.error.forEach(this.onError.bind(this)), + t.keypress.pipe(o(n.success)).forEach(this.onKeypress.bind(this)), + this.render(), + this + ); + } + render(e) { + var t = '', + r = '', + i = this.getQuestion(), + o = this.opt.transformer, + s = 'answered' === this.status; + (r = s ? this.answer : this.rl.line), + (i += o ? o(r, this.answers, { isFinal: s }) : s ? n.cyan(r) : r), + e && (t = n.red('>> ') + e), + this.screen.render(i, t); + } + filterInput(e) { + return e || (null == this.opt.default ? '' : this.opt.default); + } + onEnd(e) { + (this.answer = e.value), + (this.status = 'answered'), + this.render(), + this.screen.done(), + this.done(e.value); + } + onError({ value: e = '', isValid: t }) { + (this.rl.line += e), (this.rl.cursor += e.length), this.render(t); + } + onKeypress() { + this.opt.default && (this.opt.default = void 0), this.render(); + } + }; + }, + 89336: (e, t, r) => { + 'use strict'; + var n = { isNumber: r(71044), findIndex: r(17506), isString: r(221) }, + i = r(95882), + o = r(51938), + s = r(61696), + A = r(28855), + { flatMap: a, map: c, take: u, takeUntil: l } = r(20683), + h = r(10485), + g = r(92330), + f = r(78635); + e.exports = class extends h { + constructor(e, t, r) { + super(e, t, r), + this.opt.choices || this.throwParamError('choices'), + (this.firstRender = !0), + (this.selected = 0); + var i = this.opt.default; + if (n.isNumber(i) && i >= 0 && i < this.opt.choices.realLength) this.selected = i; + else if (!n.isNumber(i) && null != i) { + let e = n.findIndex(this.opt.choices.realChoices, ({ value: e }) => e === i); + this.selected = Math.max(e, 0); + } + (this.opt.default = null), (this.paginator = new f(this.screen)); + } + _run(e) { + this.done = e; + var t = this, + r = g(this.rl); + return ( + r.normalizedUpKey.pipe(l(r.line)).forEach(this.onUpKey.bind(this)), + r.normalizedDownKey.pipe(l(r.line)).forEach(this.onDownKey.bind(this)), + r.numberKey.pipe(l(r.line)).forEach(this.onNumberKey.bind(this)), + r.line + .pipe( + u(1), + c(this.getCurrentValue.bind(this)), + a((e) => A(t.opt.filter)(e).catch((e) => e)) + ) + .forEach(this.onSubmit.bind(this)), + s.hide(), + this.render(), + this + ); + } + render() { + var e, + t, + r, + s, + A = this.getQuestion(); + if ((this.firstRender && (A += i.dim('(Use arrow keys)')), 'answered' === this.status)) + A += i.cyan(this.opt.choices.getChoice(this.selected).short); + else { + var a = + ((e = this.opt.choices), + (t = this.selected), + (r = ''), + (s = 0), + e.forEach((e, A) => { + if ('separator' === e.type) return s++, void (r += ' ' + e + '\n'); + if (e.disabled) + return ( + s++, + (r += ' - ' + e.name), + (r += ' (' + (n.isString(e.disabled) ? e.disabled : 'Disabled') + ')'), + void (r += '\n') + ); + var a = A - s === t, + c = (a ? o.pointer + ' ' : ' ') + e.name; + a && (c = i.cyan(c)), (r += c + ' \n'); + }), + r.replace(/\n$/, '')), + c = this.opt.choices.indexOf(this.opt.choices.getChoice(this.selected)); + A += '\n' + this.paginator.paginate(a, c, this.opt.pageSize); + } + (this.firstRender = !1), this.screen.render(A); + } + onSubmit(e) { + (this.status = 'answered'), this.render(), this.screen.done(), s.show(), this.done(e); + } + getCurrentValue() { + return this.opt.choices.getChoice(this.selected).value; + } + onUpKey() { + var e = this.opt.choices.realLength; + (this.selected = this.selected > 0 ? this.selected - 1 : e - 1), this.render(); + } + onDownKey() { + var e = this.opt.choices.realLength; + (this.selected = this.selected < e - 1 ? this.selected + 1 : 0), this.render(); + } + onNumberKey(e) { + e <= this.opt.choices.realLength && (this.selected = e - 1), this.render(); + } + }; + }, + 90307: (e, t, r) => { + 'use strict'; + var n = r(90013); + e.exports = class extends n { + filterInput(e) { + if (e && 'string' == typeof e) { + let t = (e = e.trim()).match(/(^-?\d+|^\d+\.\d*|^\d*\.\d+)(e\d+)?$/); + if (t) return Number(t[0]); + } + return null == this.opt.default ? NaN : this.opt.default; + } + }; + }, + 30428: (e, t, r) => { + 'use strict'; + var n = r(95882), + { map: i, takeUntil: o } = r(20683), + s = r(10485), + A = r(92330); + function a(e, t) { + return ( + (t = 'string' == typeof t ? t : '*'), + 0 === (e = String(e)).length ? '' : new Array(e.length + 1).join(t) + ); + } + e.exports = class extends s { + _run(e) { + this.done = e; + var t = A(this.rl), + r = t.line.pipe(i(this.filterInput.bind(this))), + n = this.handleSubmitEvents(r); + return ( + n.success.forEach(this.onEnd.bind(this)), + n.error.forEach(this.onError.bind(this)), + t.keypress.pipe(o(n.success)).forEach(this.onKeypress.bind(this)), + this.render(), + this + ); + } + render(e) { + var t = this.getQuestion(), + r = ''; + 'answered' === this.status + ? (t += this.opt.mask + ? n.cyan(a(this.answer, this.opt.mask)) + : n.italic.dim('[hidden]')) + : this.opt.mask + ? (t += a(this.rl.line || '', this.opt.mask)) + : (t += n.italic.dim('[input is hidden] ')), + e && (r = '\n' + n.red('>> ') + e), + this.screen.render(t, r); + } + filterInput(e) { + return e || (null == this.opt.default ? '' : this.opt.default); + } + onEnd(e) { + (this.status = 'answered'), + (this.answer = e.value), + this.render(), + this.screen.done(), + this.done(e.value); + } + onError(e) { + this.render(e.isValid); + } + onKeypress() { + this.opt.default && (this.opt.default = void 0), this.render(); + } + }; + }, + 942: (e, t, r) => { + 'use strict'; + var n = { extend: r(94501), isNumber: r(71044), findIndex: r(17506) }, + i = r(95882), + { map: o, takeUntil: s } = r(20683), + A = r(10485), + a = r(88249), + c = r(92330), + u = r(78635); + e.exports = class extends A { + constructor(e, t, r) { + super(e, t, r), + this.opt.choices || this.throwParamError('choices'), + (this.opt.validChoices = this.opt.choices.filter(a.exclude)), + (this.selected = 0), + (this.rawDefault = 0), + n.extend(this.opt, { + validate: function (e) { + return null != e; + }, + }); + var i = this.opt.default; + if (n.isNumber(i) && i >= 0 && i < this.opt.choices.realLength) + (this.selected = i), (this.rawDefault = i); + else if (!n.isNumber(i) && null != i) { + let e = n.findIndex(this.opt.choices.realChoices, ({ value: e }) => e === i), + t = Math.max(e, 0); + (this.selected = t), (this.rawDefault = t); + } + (this.opt.default = null), (this.paginator = new u()); + } + _run(e) { + this.done = e; + var t = c(this.rl), + r = t.line.pipe(o(this.getCurrentValue.bind(this))), + n = this.handleSubmitEvents(r); + return ( + n.success.forEach(this.onEnd.bind(this)), + n.error.forEach(this.onError.bind(this)), + t.normalizedUpKey.pipe(s(t.line)).forEach(this.onUpKey.bind(this)), + t.normalizedDownKey.pipe(s(t.line)).forEach(this.onDownKey.bind(this)), + t.keypress.pipe(s(n.success)).forEach(this.onKeypress.bind(this)), + this.render(), + this + ); + } + render(e) { + var t, + r, + n, + o, + s = this.getQuestion(), + A = ''; + if ('answered' === this.status) s += i.cyan(this.answer); + else { + var a = + ((t = this.opt.choices), + (r = this.selected), + (n = ''), + (o = 0), + t.forEach(function (e, t) { + if (((n += '\n '), 'separator' === e.type)) return o++, void (n += ' ' + e); + var s = t - o, + A = s + 1 + ') ' + e.name; + s === r && (A = i.cyan(A)), (n += A); + }), + n); + (s += '\n' + this.paginator.paginate(a, this.selected, this.opt.pageSize)), + (s += '\n Answer: '); + } + (s += this.rl.line), e && (A = '\n' + i.red('>> ') + e), this.screen.render(s, A); + } + getCurrentValue(e) { + null == e ? (e = this.rawDefault) : '' === e ? (e = this.selected) : (e -= 1); + var t = this.opt.choices.getChoice(e); + return t ? t.value : null; + } + onEnd(e) { + (this.status = 'answered'), + (this.answer = e.value), + this.render(), + this.screen.done(), + this.done(e.value); + } + onError() { + this.render('Please enter a valid index'); + } + onKeypress() { + var e = this.rl.line.length ? Number(this.rl.line) - 1 : 0; + this.opt.choices.getChoice(e) ? (this.selected = e) : (this.selected = void 0), + this.render(); + } + onUpKey() { + this.onArrowKey('up'); + } + onDownKey() { + this.onArrowKey('down'); + } + onArrowKey(e) { + var t = this.opt.choices.realLength; + (this.selected = + 'up' === e + ? this.selected > 0 + ? this.selected - 1 + : t - 1 + : this.selected < t - 1 + ? this.selected + 1 + : 0), + (this.rl.line = String(this.selected + 1)); + } + }; + }, + 89127: (e, t, r) => { + 'use strict'; + var n = { extend: r(94501), omit: r(82740) }, + i = r(75319), + o = r(51058); + e.exports = class { + constructor(e) { + this.rl || + (this.rl = o.createInterface( + (function (e) { + (e = e || {}).skipTTYChecks = void 0 === e.skipTTYChecks || e.skipTTYChecks; + var t = e.input || process.stdin; + if (!e.skipTTYChecks && !t.isTTY) { + const e = new Error( + 'Prompts can not be meaningfully rendered in non-TTY environments' + ); + throw ((e.isTtyError = !0), e); + } + var r = new i(); + r.pipe(e.output || process.stdout); + var o = r; + return n.extend( + { terminal: !0, input: t, output: o }, + n.omit(e, ['input', 'output']) + ); + })(e) + )), + this.rl.resume(), + (this.onForceClose = this.onForceClose.bind(this)), + process.on('exit', this.onForceClose), + this.rl.on('SIGINT', this.onForceClose); + } + onForceClose() { + this.close(), process.kill(process.pid, 'SIGINT'), console.log(''); + } + close() { + this.rl.removeListener('SIGINT', this.onForceClose), + process.removeListener('exit', this.onForceClose), + this.rl.output.unmute(), + this.activePrompt && + 'function' == typeof this.activePrompt.close && + this.activePrompt.close(), + this.rl.output.end(), + this.rl.pause(), + this.rl.close(); + } + }; + }, + 36896: (e, t, r) => { + 'use strict'; + var n = r(94864), + i = r(89127), + o = r(4446), + s = { last: r(49845) }; + e.exports = class extends i { + constructor(e) { + super((e = e || {})), + (this.log = n(this.writeLog.bind(this))), + (this.bottomBar = e.bottomBar || ''), + this.render(); + } + render() { + return this.write(this.bottomBar), this; + } + clean() { + return o.clearLine(this.rl, this.bottomBar.split('\n').length), this; + } + updateBottomBar(e) { + return ( + o.clearLine(this.rl, 1), + this.rl.output.unmute(), + this.clean(), + (this.bottomBar = e), + this.render(), + this.rl.output.mute(), + this + ); + } + writeLog(e) { + return ( + this.rl.output.unmute(), + this.clean(), + this.rl.output.write(this.enforceLF(e.toString())), + this.render(), + this.rl.output.mute(), + this + ); + } + enforceLF(e) { + return e.match(/[\r\n]$/) ? e : e + '\n'; + } + write(e) { + var t = e.split(/\n/); + (this.height = t.length), + this.rl.setPrompt(s.last(t)), + 0 === this.rl.output.rows && + 0 === this.rl.output.columns && + o.left(this.rl, e.length + this.rl.line.length), + this.rl.output.write(e); + } + }; + }, + 87380: (e, t, r) => { + 'use strict'; + var n = { + isPlainObject: r(11672), + clone: r(22254), + isArray: r(82664), + set: r(81534), + isFunction: r(92533), + }, + { defer: i, empty: o, from: s, of: A } = r(86596), + { concatMap: a, filter: c, publish: u, reduce: l } = r(20683), + h = r(28855), + g = r(74941), + f = r(89127); + e.exports = class extends f { + constructor(e, t) { + super(t), (this.prompts = e); + } + run(e, t) { + n.isPlainObject(t) ? (this.answers = n.clone(t)) : (this.answers = {}), + n.isPlainObject(e) && (e = [e]); + var r = n.isArray(e) ? s(e) : e; + return ( + (this.process = r.pipe(a(this.processQuestion.bind(this)), u())), + this.process.connect(), + this.process + .pipe(l((e, t) => (n.set(e, t.name, t.answer), e), this.answers)) + .toPromise(Promise) + .then(this.onCompletion.bind(this)) + ); + } + onCompletion() { + return this.close(), this.answers; + } + processQuestion(e) { + return ( + (e = n.clone(e)), + i(() => + A(e).pipe( + a(this.setDefaultType.bind(this)), + a(this.filterIfRunnable.bind(this)), + a(() => g.fetchAsyncQuestionProperty(e, 'message', this.answers)), + a(() => g.fetchAsyncQuestionProperty(e, 'default', this.answers)), + a(() => g.fetchAsyncQuestionProperty(e, 'choices', this.answers)), + a(this.fetchAnswer.bind(this)) + ) + ) + ); + } + fetchAnswer(e) { + var t = this.prompts[e.type]; + return ( + (this.activePrompt = new t(e, this.rl, this.answers)), + i(() => s(this.activePrompt.run().then((t) => ({ name: e.name, answer: t })))) + ); + } + setDefaultType(e) { + return this.prompts[e.type] || (e.type = 'input'), i(() => A(e)); + } + filterIfRunnable(e) { + if (!0 !== e.askAnswered && void 0 !== this.answers[e.name]) return o(); + if (!1 === e.when) return o(); + if (!n.isFunction(e.when)) return A(e); + var t = this.answers; + return i(() => + s( + h(e.when)(t).then((t) => { + if (t) return e; + }) + ).pipe(c((e) => null != e)) + ); + } + }; + }, + 92330: (e, t, r) => { + 'use strict'; + var { fromEvent: n } = r(86596), + { filter: i, map: o, share: s, takeUntil: A } = r(20683); + function a(e, t) { + return { value: e, key: t || {} }; + } + e.exports = function (e) { + var t = n(e.input, 'keypress', a) + .pipe(A(n(e, 'close'))) + .pipe(i(({ key: e }) => 'enter' !== e.name && 'return' !== e.name)); + return { + line: n(e, 'line'), + keypress: t, + normalizedUpKey: t.pipe( + i(({ key: e }) => 'up' === e.name || 'k' === e.name || ('p' === e.name && e.ctrl)), + s() + ), + normalizedDownKey: t.pipe( + i(({ key: e }) => 'down' === e.name || 'j' === e.name || ('n' === e.name && e.ctrl)), + s() + ), + numberKey: t.pipe( + i((e) => e.value && '123456789'.indexOf(e.value) >= 0), + o((e) => Number(e.value)), + s() + ), + spaceKey: t.pipe( + i(({ key: e }) => e && 'space' === e.name), + s() + ), + aKey: t.pipe( + i(({ key: e }) => e && 'a' === e.name), + s() + ), + iKey: t.pipe( + i(({ key: e }) => e && 'i' === e.name), + s() + ), + }; + }; + }, + 78635: (e, t, r) => { + 'use strict'; + var n = { sum: r(2614), flatten: r(54690) }, + i = r(95882); + e.exports = class { + constructor(e) { + (this.pointer = 0), (this.lastIndex = 0), (this.screen = e); + } + paginate(e, t, r) { + r = r || 7; + var o = Math.floor(r / 2), + s = e.split('\n'); + if ( + (this.screen && + ((s = this.screen.breakLines(s)), + (t = n.sum(s.map((e) => e.length).splice(0, t))), + (s = n.flatten(s))), + s.length <= r) + ) + return e; + this.pointer < o && + this.lastIndex < t && + t - this.lastIndex < r && + (this.pointer = Math.min(o, this.pointer + t - this.lastIndex)), + (this.lastIndex = t); + var A = n.flatten([s, s, s]), + a = Math.max(0, t + s.length - this.pointer); + return ( + A.splice(a, r).join('\n') + '\n' + i.dim('(Move up and down to reveal more choices)') + ); + } + }; + }, + 4446: (e, t, r) => { + 'use strict'; + var n = r(27589); + (t.left = function (e, t) { + e.output.write(n.cursorBackward(t)); + }), + (t.right = function (e, t) { + e.output.write(n.cursorForward(t)); + }), + (t.up = function (e, t) { + e.output.write(n.cursorUp(t)); + }), + (t.down = function (e, t) { + e.output.write(n.cursorDown(t)); + }), + (t.clearLine = function (e, t) { + e.output.write(n.eraseLines(t)); + }); + }, + 32542: (e, t, r) => { + 'use strict'; + var n = { last: r(49845), flatten: r(54690) }, + i = r(4446), + o = r(17945), + s = r(7915), + A = r(55043); + function a(e) { + return e.split('\n').length; + } + function c(e) { + return n.last(e.split('\n')); + } + e.exports = class { + constructor(e) { + (this.height = 0), (this.extraLinesUnderPrompt = 0), (this.rl = e); + } + render(e, t) { + this.rl.output.unmute(), this.clean(this.extraLinesUnderPrompt); + var r = c(e), + n = s(r), + o = n; + this.rl.line.length && (o = o.slice(0, -this.rl.line.length)), this.rl.setPrompt(o); + var u = this.rl._getCursorPos(), + l = this.normalizedCliWidth(); + (e = this.forceLineReturn(e, l)), + t && (t = this.forceLineReturn(t, l)), + n.length % l == 0 && (e += '\n'); + var h = e + (t ? '\n' + t : ''); + this.rl.output.write(h); + var g = Math.floor(n.length / l) - u.rows + (t ? a(t) : 0); + g > 0 && i.up(this.rl, g), + i.left(this.rl, A(c(h))), + u.cols > 0 && i.right(this.rl, u.cols), + (this.extraLinesUnderPrompt = g), + (this.height = a(h)), + this.rl.output.mute(); + } + clean(e) { + e > 0 && i.down(this.rl, e), i.clearLine(this.rl, this.height); + } + done() { + this.rl.setPrompt(''), this.rl.output.unmute(), this.rl.output.write('\n'); + } + releaseCursor() { + this.extraLinesUnderPrompt > 0 && i.down(this.rl, this.extraLinesUnderPrompt); + } + normalizedCliWidth() { + return o({ defaultWidth: 80, output: this.rl.output }); + } + breakLines(e, t) { + t = t || this.normalizedCliWidth(); + var r = new RegExp('(?:(?:\\033[[0-9;]*m)*.?){1,' + t + '}', 'g'); + return e.map((e) => { + var t = e.match(r); + return t.pop(), t || ''; + }); + } + forceLineReturn(e, t) { + return ( + (t = t || this.normalizedCliWidth()), + n.flatten(this.breakLines(e.split('\n'), t)).join('\n') + ); + } + }; + }, + 74941: (e, t, r) => { + 'use strict'; + var n = { isFunction: r(92533) }, + { from: i, of: o } = r(86596), + s = r(28855); + t.fetchAsyncQuestionProperty = function (e, t, r) { + return n.isFunction(e[t]) ? i(s(e[t])(r).then((r) => ((e[t] = r), e))) : o(e); + }; + }, + 44486: (e) => { + /*! + * is-extglob + * + * Copyright (c) 2014-2016, Jon Schlinkert. + * Licensed under the MIT License. + */ + e.exports = function (e) { + if ('string' != typeof e || '' === e) return !1; + for (var t; (t = /(\\).|([@?!+*]\(.*\))/g.exec(e)); ) { + if (t[2]) return !0; + e = e.slice(t.index + t[0].length); + } + return !1; + }; + }, + 7347: (e) => { + 'use strict'; + const t = (e) => + !Number.isNaN(e) && + e >= 4352 && + (e <= 4447 || + 9001 === e || + 9002 === e || + (11904 <= e && e <= 12871 && 12351 !== e) || + (12880 <= e && e <= 19903) || + (19968 <= e && e <= 42182) || + (43360 <= e && e <= 43388) || + (44032 <= e && e <= 55203) || + (63744 <= e && e <= 64255) || + (65040 <= e && e <= 65049) || + (65072 <= e && e <= 65131) || + (65281 <= e && e <= 65376) || + (65504 <= e && e <= 65510) || + (110592 <= e && e <= 110593) || + (127488 <= e && e <= 127569) || + (131072 <= e && e <= 262141)); + (e.exports = t), (e.exports.default = t); + }, + 18193: (e, t, r) => { + /*! + * is-glob + * + * Copyright (c) 2014-2017, Jon Schlinkert. + * Released under the MIT License. + */ + var n = r(44486), + i = { '{': '}', '(': ')', '[': ']' }, + o = /\\(.)|(^!|\*|[\].+)]\?|\[[^\\\]]+\]|\{[^\\}]+\}|\(\?[:!=][^\\)]+\)|\([^|]+\|[^\\)]+\))/, + s = /\\(.)|(^!|[*?{}()[\]]|\(\?)/; + e.exports = function (e, t) { + if ('string' != typeof e || '' === e) return !1; + if (n(e)) return !0; + var r, + A = o; + for (t && !1 === t.strict && (A = s); (r = A.exec(e)); ) { + if (r[2]) return !0; + var a = r.index + r[0].length, + c = r[1], + u = c ? i[c] : null; + if (c && u) { + var l = e.indexOf(u, a); + -1 !== l && (a = l + 1); + } + e = e.slice(a); + } + return !1; + }; + }, + 59235: (e) => { + 'use strict'; + /*! + * is-number + * + * Copyright (c) 2014-present, Jon Schlinkert. + * Released under the MIT License. + */ e.exports = function (e) { + return 'number' == typeof e + ? e - e == 0 + : 'string' == typeof e && + '' !== e.trim() && + (Number.isFinite ? Number.isFinite(+e) : isFinite(+e)); + }; + }, + 61047: (e) => { + e.exports = function (e) { + return ( + !!e && ('object' == typeof e || 'function' == typeof e) && 'function' == typeof e.then + ); + }; + }, + 97369: (e, t) => { + var r, n, i, o; + /*! + * is-windows + * + * Copyright © 2015-2018, Jon Schlinkert. + * Released under the MIT License. + */ (o = function () { + 'use strict'; + return function () { + return ( + process && + ('win32' === process.platform || /^(msys|cygwin)$/.test(process.env.OSTYPE)) + ); + }; + }), + t && 'object' == typeof t + ? (e.exports = o()) + : ((n = []), + void 0 === (i = 'function' == typeof (r = o) ? r.apply(t, n) : r) || (e.exports = i)); + }, + 64151: (e, t, r) => { + var n; + r(35747); + function i(e, t, r) { + if (('function' == typeof t && ((r = t), (t = {})), !r)) { + if ('function' != typeof Promise) throw new TypeError('callback not provided'); + return new Promise(function (r, n) { + i(e, t || {}, function (e, t) { + e ? n(e) : r(t); + }); + }); + } + n(e, t || {}, function (e, n) { + e && ('EACCES' === e.code || (t && t.ignoreErrors)) && ((e = null), (n = !1)), r(e, n); + }); + } + (n = 'win32' === process.platform || global.TESTING_WINDOWS ? r(3202) : r(2151)), + (e.exports = i), + (i.sync = function (e, t) { + try { + return n.sync(e, t || {}); + } catch (e) { + if ((t && t.ignoreErrors) || 'EACCES' === e.code) return !1; + throw e; + } + }); + }, + 2151: (e, t, r) => { + (e.exports = i), + (i.sync = function (e, t) { + return o(n.statSync(e), t); + }); + var n = r(35747); + function i(e, t, r) { + n.stat(e, function (e, n) { + r(e, !e && o(n, t)); + }); + } + function o(e, t) { + return ( + e.isFile() && + (function (e, t) { + var r = e.mode, + n = e.uid, + i = e.gid, + o = void 0 !== t.uid ? t.uid : process.getuid && process.getuid(), + s = void 0 !== t.gid ? t.gid : process.getgid && process.getgid(), + A = parseInt('100', 8), + a = parseInt('010', 8), + c = parseInt('001', 8), + u = A | a; + return r & c || (r & a && i === s) || (r & A && n === o) || (r & u && 0 === o); + })(e, t) + ); + } + }, + 3202: (e, t, r) => { + (e.exports = o), + (o.sync = function (e, t) { + return i(n.statSync(e), e, t); + }); + var n = r(35747); + function i(e, t, r) { + return ( + !(!e.isSymbolicLink() && !e.isFile()) && + (function (e, t) { + var r = void 0 !== t.pathExt ? t.pathExt : process.env.PATHEXT; + if (!r) return !0; + if (-1 !== (r = r.split(';')).indexOf('')) return !0; + for (var n = 0; n < r.length; n++) { + var i = r[n].toLowerCase(); + if (i && e.substr(-i.length).toLowerCase() === i) return !0; + } + return !1; + })(t, r) + ); + } + function o(e, t, r) { + n.stat(e, function (n, o) { + r(n, !n && i(o, e, t)); + }); + } + }, + 21194: (e, t, r) => { + 'use strict'; + var n = r(40744); + e.exports = n; + }, + 40744: (e, t, r) => { + 'use strict'; + var n = r(55384), + i = r(24129); + function o(e) { + return function () { + throw new Error('Function ' + e + ' is deprecated and cannot be used.'); + }; + } + (e.exports.Type = r(81704)), + (e.exports.Schema = r(8212)), + (e.exports.FAILSAFE_SCHEMA = r(44413)), + (e.exports.JSON_SCHEMA = r(45247)), + (e.exports.CORE_SCHEMA = r(8769)), + (e.exports.DEFAULT_SAFE_SCHEMA = r(65483)), + (e.exports.DEFAULT_FULL_SCHEMA = r(5235)), + (e.exports.load = n.load), + (e.exports.loadAll = n.loadAll), + (e.exports.safeLoad = n.safeLoad), + (e.exports.safeLoadAll = n.safeLoadAll), + (e.exports.dump = i.dump), + (e.exports.safeDump = i.safeDump), + (e.exports.YAMLException = r(17345)), + (e.exports.MINIMAL_SCHEMA = r(44413)), + (e.exports.SAFE_SCHEMA = r(65483)), + (e.exports.DEFAULT_SCHEMA = r(5235)), + (e.exports.scan = o('scan')), + (e.exports.parse = o('parse')), + (e.exports.compose = o('compose')), + (e.exports.addConstructor = o('addConstructor')); + }, + 28149: (e) => { + 'use strict'; + function t(e) { + return null == e; + } + (e.exports.isNothing = t), + (e.exports.isObject = function (e) { + return 'object' == typeof e && null !== e; + }), + (e.exports.toArray = function (e) { + return Array.isArray(e) ? e : t(e) ? [] : [e]; + }), + (e.exports.repeat = function (e, t) { + var r, + n = ''; + for (r = 0; r < t; r += 1) n += e; + return n; + }), + (e.exports.isNegativeZero = function (e) { + return 0 === e && Number.NEGATIVE_INFINITY === 1 / e; + }), + (e.exports.extend = function (e, t) { + var r, n, i, o; + if (t) for (r = 0, n = (o = Object.keys(t)).length; r < n; r += 1) e[(i = o[r])] = t[i]; + return e; + }); + }, + 24129: (e, t, r) => { + 'use strict'; + var n = r(28149), + i = r(17345), + o = r(5235), + s = r(65483), + A = Object.prototype.toString, + a = Object.prototype.hasOwnProperty, + c = { + 0: '\\0', + 7: '\\a', + 8: '\\b', + 9: '\\t', + 10: '\\n', + 11: '\\v', + 12: '\\f', + 13: '\\r', + 27: '\\e', + 34: '\\"', + 92: '\\\\', + 133: '\\N', + 160: '\\_', + 8232: '\\L', + 8233: '\\P', + }, + u = [ + 'y', + 'Y', + 'yes', + 'Yes', + 'YES', + 'on', + 'On', + 'ON', + 'n', + 'N', + 'no', + 'No', + 'NO', + 'off', + 'Off', + 'OFF', + ]; + function l(e) { + var t, r, o; + if (((t = e.toString(16).toUpperCase()), e <= 255)) (r = 'x'), (o = 2); + else if (e <= 65535) (r = 'u'), (o = 4); + else { + if (!(e <= 4294967295)) + throw new i('code point within a string may not be greater than 0xFFFFFFFF'); + (r = 'U'), (o = 8); + } + return '\\' + r + n.repeat('0', o - t.length) + t; + } + function h(e) { + (this.schema = e.schema || o), + (this.indent = Math.max(1, e.indent || 2)), + (this.noArrayIndent = e.noArrayIndent || !1), + (this.skipInvalid = e.skipInvalid || !1), + (this.flowLevel = n.isNothing(e.flowLevel) ? -1 : e.flowLevel), + (this.styleMap = (function (e, t) { + var r, n, i, o, s, A, c; + if (null === t) return {}; + for (r = {}, i = 0, o = (n = Object.keys(t)).length; i < o; i += 1) + (s = n[i]), + (A = String(t[s])), + '!!' === s.slice(0, 2) && (s = 'tag:yaml.org,2002:' + s.slice(2)), + (c = e.compiledTypeMap.fallback[s]) && + a.call(c.styleAliases, A) && + (A = c.styleAliases[A]), + (r[s] = A); + return r; + })(this.schema, e.styles || null)), + (this.sortKeys = e.sortKeys || !1), + (this.lineWidth = e.lineWidth || 80), + (this.noRefs = e.noRefs || !1), + (this.noCompatMode = e.noCompatMode || !1), + (this.condenseFlow = e.condenseFlow || !1), + (this.implicitTypes = this.schema.compiledImplicit), + (this.explicitTypes = this.schema.compiledExplicit), + (this.tag = null), + (this.result = ''), + (this.duplicates = []), + (this.usedDuplicates = null); + } + function g(e, t) { + for (var r, i = n.repeat(' ', t), o = 0, s = -1, A = '', a = e.length; o < a; ) + -1 === (s = e.indexOf('\n', o)) + ? ((r = e.slice(o)), (o = a)) + : ((r = e.slice(o, s + 1)), (o = s + 1)), + r.length && '\n' !== r && (A += i), + (A += r); + return A; + } + function f(e, t) { + return '\n' + n.repeat(' ', e.indent * t); + } + function p(e) { + return 32 === e || 9 === e; + } + function d(e) { + return ( + (32 <= e && e <= 126) || + (161 <= e && e <= 55295 && 8232 !== e && 8233 !== e) || + (57344 <= e && e <= 65533 && 65279 !== e) || + (65536 <= e && e <= 1114111) + ); + } + function C(e) { + return ( + d(e) && + 65279 !== e && + 44 !== e && + 91 !== e && + 93 !== e && + 123 !== e && + 125 !== e && + 58 !== e && + 35 !== e + ); + } + function E(e) { + return /^\n* /.test(e); + } + function I(e, t, r, n, i) { + var o, + s, + A, + a = !1, + c = !1, + u = -1 !== n, + l = -1, + h = + d((A = e.charCodeAt(0))) && + 65279 !== A && + !p(A) && + 45 !== A && + 63 !== A && + 58 !== A && + 44 !== A && + 91 !== A && + 93 !== A && + 123 !== A && + 125 !== A && + 35 !== A && + 38 !== A && + 42 !== A && + 33 !== A && + 124 !== A && + 62 !== A && + 39 !== A && + 34 !== A && + 37 !== A && + 64 !== A && + 96 !== A && + !p(e.charCodeAt(e.length - 1)); + if (t) + for (o = 0; o < e.length; o++) { + if (!d((s = e.charCodeAt(o)))) return 5; + h = h && C(s); + } + else { + for (o = 0; o < e.length; o++) { + if (10 === (s = e.charCodeAt(o))) + (a = !0), u && ((c = c || (o - l - 1 > n && ' ' !== e[l + 1])), (l = o)); + else if (!d(s)) return 5; + h = h && C(s); + } + c = c || (u && o - l - 1 > n && ' ' !== e[l + 1]); + } + return a || c ? (r > 9 && E(e) ? 5 : c ? 4 : 3) : h && !i(e) ? 1 : 2; + } + function m(e, t, r, n) { + e.dump = (function () { + if (0 === t.length) return "''"; + if (!e.noCompatMode && -1 !== u.indexOf(t)) return "'" + t + "'"; + var o = e.indent * Math.max(1, r), + s = -1 === e.lineWidth ? -1 : Math.max(Math.min(e.lineWidth, 40), e.lineWidth - o), + A = n || (e.flowLevel > -1 && r >= e.flowLevel); + switch ( + I(t, A, e.indent, s, function (t) { + return (function (e, t) { + var r, n; + for (r = 0, n = e.implicitTypes.length; r < n; r += 1) + if (e.implicitTypes[r].resolve(t)) return !0; + return !1; + })(e, t); + }) + ) { + case 1: + return t; + case 2: + return "'" + t.replace(/'/g, "''") + "'"; + case 3: + return '|' + y(t, e.indent) + w(g(t, o)); + case 4: + return ( + '>' + + y(t, e.indent) + + w( + g( + (function (e, t) { + var r, + n, + i = /(\n+)([^\n]*)/g, + o = + ((A = e.indexOf('\n')), + (A = -1 !== A ? A : e.length), + (i.lastIndex = A), + B(e.slice(0, A), t)), + s = '\n' === e[0] || ' ' === e[0]; + var A; + for (; (n = i.exec(e)); ) { + var a = n[1], + c = n[2]; + (r = ' ' === c[0]), + (o += a + (s || r || '' === c ? '' : '\n') + B(c, t)), + (s = r); + } + return o; + })(t, s), + o + ) + ) + ); + case 5: + return ( + '"' + + (function (e) { + for (var t, r, n, i = '', o = 0; o < e.length; o++) + (t = e.charCodeAt(o)) >= 55296 && + t <= 56319 && + (r = e.charCodeAt(o + 1)) >= 56320 && + r <= 57343 + ? ((i += l(1024 * (t - 55296) + r - 56320 + 65536)), o++) + : ((n = c[t]), (i += !n && d(t) ? e[o] : n || l(t))); + return i; + })(t) + + '"' + ); + default: + throw new i('impossible error: invalid scalar style'); + } + })(); + } + function y(e, t) { + var r = E(e) ? String(t) : '', + n = '\n' === e[e.length - 1]; + return r + (n && ('\n' === e[e.length - 2] || '\n' === e) ? '+' : n ? '' : '-') + '\n'; + } + function w(e) { + return '\n' === e[e.length - 1] ? e.slice(0, -1) : e; + } + function B(e, t) { + if ('' === e || ' ' === e[0]) return e; + for (var r, n, i = / [^ ]/g, o = 0, s = 0, A = 0, a = ''; (r = i.exec(e)); ) + (A = r.index) - o > t && + ((n = s > o ? s : A), (a += '\n' + e.slice(o, n)), (o = n + 1)), + (s = A); + return ( + (a += '\n'), + e.length - o > t && s > o + ? (a += e.slice(o, s) + '\n' + e.slice(s + 1)) + : (a += e.slice(o)), + a.slice(1) + ); + } + function Q(e, t, r) { + var n, o, s, c, u, l; + for (s = 0, c = (o = r ? e.explicitTypes : e.implicitTypes).length; s < c; s += 1) + if ( + ((u = o[s]).instanceOf || u.predicate) && + (!u.instanceOf || ('object' == typeof t && t instanceof u.instanceOf)) && + (!u.predicate || u.predicate(t)) + ) { + if (((e.tag = r ? u.tag : '?'), u.represent)) { + if ( + ((l = e.styleMap[u.tag] || u.defaultStyle), + '[object Function]' === A.call(u.represent)) + ) + n = u.represent(t, l); + else { + if (!a.call(u.represent, l)) + throw new i('!<' + u.tag + '> tag resolver accepts not "' + l + '" style'); + n = u.represent[l](t, l); + } + e.dump = n; + } + return !0; + } + return !1; + } + function v(e, t, r, n, o, s) { + (e.tag = null), (e.dump = r), Q(e, r, !1) || Q(e, r, !0); + var a = A.call(e.dump); + n && (n = e.flowLevel < 0 || e.flowLevel > t); + var c, + u, + l = '[object Object]' === a || '[object Array]' === a; + if ( + (l && (u = -1 !== (c = e.duplicates.indexOf(r))), + ((null !== e.tag && '?' !== e.tag) || u || (2 !== e.indent && t > 0)) && (o = !1), + u && e.usedDuplicates[c]) + ) + e.dump = '*ref_' + c; + else { + if ( + (l && u && !e.usedDuplicates[c] && (e.usedDuplicates[c] = !0), + '[object Object]' === a) + ) + n && 0 !== Object.keys(e.dump).length + ? (!(function (e, t, r, n) { + var o, + s, + A, + a, + c, + u, + l = '', + h = e.tag, + g = Object.keys(r); + if (!0 === e.sortKeys) g.sort(); + else if ('function' == typeof e.sortKeys) g.sort(e.sortKeys); + else if (e.sortKeys) throw new i('sortKeys must be a boolean or a function'); + for (o = 0, s = g.length; o < s; o += 1) + (u = ''), + (n && 0 === o) || (u += f(e, t)), + (a = r[(A = g[o])]), + v(e, t + 1, A, !0, !0, !0) && + ((c = + (null !== e.tag && '?' !== e.tag) || + (e.dump && e.dump.length > 1024)) && + (e.dump && 10 === e.dump.charCodeAt(0) ? (u += '?') : (u += '? ')), + (u += e.dump), + c && (u += f(e, t)), + v(e, t + 1, a, !0, c) && + (e.dump && 10 === e.dump.charCodeAt(0) ? (u += ':') : (u += ': '), + (l += u += e.dump))); + (e.tag = h), (e.dump = l || '{}'); + })(e, t, e.dump, o), + u && (e.dump = '&ref_' + c + e.dump)) + : (!(function (e, t, r) { + var n, + i, + o, + s, + A, + a = '', + c = e.tag, + u = Object.keys(r); + for (n = 0, i = u.length; n < i; n += 1) + (A = e.condenseFlow ? '"' : ''), + 0 !== n && (A += ', '), + (s = r[(o = u[n])]), + v(e, t, o, !1, !1) && + (e.dump.length > 1024 && (A += '? '), + (A += + e.dump + + (e.condenseFlow ? '"' : '') + + ':' + + (e.condenseFlow ? '' : ' ')), + v(e, t, s, !1, !1) && (a += A += e.dump)); + (e.tag = c), (e.dump = '{' + a + '}'); + })(e, t, e.dump), + u && (e.dump = '&ref_' + c + ' ' + e.dump)); + else if ('[object Array]' === a) { + var h = e.noArrayIndent && t > 0 ? t - 1 : t; + n && 0 !== e.dump.length + ? (!(function (e, t, r, n) { + var i, + o, + s = '', + A = e.tag; + for (i = 0, o = r.length; i < o; i += 1) + v(e, t + 1, r[i], !0, !0) && + ((n && 0 === i) || (s += f(e, t)), + e.dump && 10 === e.dump.charCodeAt(0) ? (s += '-') : (s += '- '), + (s += e.dump)); + (e.tag = A), (e.dump = s || '[]'); + })(e, h, e.dump, o), + u && (e.dump = '&ref_' + c + e.dump)) + : (!(function (e, t, r) { + var n, + i, + o = '', + s = e.tag; + for (n = 0, i = r.length; n < i; n += 1) + v(e, t, r[n], !1, !1) && + (0 !== n && (o += ',' + (e.condenseFlow ? '' : ' ')), (o += e.dump)); + (e.tag = s), (e.dump = '[' + o + ']'); + })(e, h, e.dump), + u && (e.dump = '&ref_' + c + ' ' + e.dump)); + } else { + if ('[object String]' !== a) { + if (e.skipInvalid) return !1; + throw new i('unacceptable kind of an object to dump ' + a); + } + '?' !== e.tag && m(e, e.dump, t, s); + } + null !== e.tag && '?' !== e.tag && (e.dump = '!<' + e.tag + '> ' + e.dump); + } + return !0; + } + function D(e, t) { + var r, + n, + i = [], + o = []; + for ( + (function e(t, r, n) { + var i, o, s; + if (null !== t && 'object' == typeof t) + if (-1 !== (o = r.indexOf(t))) -1 === n.indexOf(o) && n.push(o); + else if ((r.push(t), Array.isArray(t))) + for (o = 0, s = t.length; o < s; o += 1) e(t[o], r, n); + else for (i = Object.keys(t), o = 0, s = i.length; o < s; o += 1) e(t[i[o]], r, n); + })(e, i, o), + r = 0, + n = o.length; + r < n; + r += 1 + ) + t.duplicates.push(i[o[r]]); + t.usedDuplicates = new Array(n); + } + function b(e, t) { + var r = new h((t = t || {})); + return r.noRefs || D(e, r), v(r, 0, e, !0, !0) ? r.dump + '\n' : ''; + } + (e.exports.dump = b), + (e.exports.safeDump = function (e, t) { + return b(e, n.extend({ schema: s }, t)); + }); + }, + 17345: (e) => { + 'use strict'; + function t(e, t) { + Error.call(this), + (this.name = 'YAMLException'), + (this.reason = e), + (this.mark = t), + (this.message = + (this.reason || '(unknown reason)') + (this.mark ? ' ' + this.mark.toString() : '')), + Error.captureStackTrace + ? Error.captureStackTrace(this, this.constructor) + : (this.stack = new Error().stack || ''); + } + (t.prototype = Object.create(Error.prototype)), + (t.prototype.constructor = t), + (t.prototype.toString = function (e) { + var t = this.name + ': '; + return ( + (t += this.reason || '(unknown reason)'), + !e && this.mark && (t += ' ' + this.mark.toString()), + t + ); + }), + (e.exports = t); + }, + 55384: (e, t, r) => { + 'use strict'; + var n = r(28149), + i = r(17345), + o = r(30399), + s = r(65483), + A = r(5235), + a = Object.prototype.hasOwnProperty, + c = /[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/, + u = /[\x85\u2028\u2029]/, + l = /[,\[\]\{\}]/, + h = /^(?:!|!!|![a-z\-]+!)$/i, + g = /^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i; + function f(e) { + return 10 === e || 13 === e; + } + function p(e) { + return 9 === e || 32 === e; + } + function d(e) { + return 9 === e || 32 === e || 10 === e || 13 === e; + } + function C(e) { + return 44 === e || 91 === e || 93 === e || 123 === e || 125 === e; + } + function E(e) { + var t; + return 48 <= e && e <= 57 ? e - 48 : 97 <= (t = 32 | e) && t <= 102 ? t - 97 + 10 : -1; + } + function I(e) { + return 48 === e + ? '\0' + : 97 === e + ? '' + : 98 === e + ? '\b' + : 116 === e || 9 === e + ? '\t' + : 110 === e + ? '\n' + : 118 === e + ? '\v' + : 102 === e + ? '\f' + : 114 === e + ? '\r' + : 101 === e + ? '' + : 32 === e + ? ' ' + : 34 === e + ? '"' + : 47 === e + ? '/' + : 92 === e + ? '\\' + : 78 === e + ? '…' + : 95 === e + ? ' ' + : 76 === e + ? '\u2028' + : 80 === e + ? '\u2029' + : ''; + } + function m(e) { + return e <= 65535 + ? String.fromCharCode(e) + : String.fromCharCode(55296 + ((e - 65536) >> 10), 56320 + ((e - 65536) & 1023)); + } + for (var y = new Array(256), w = new Array(256), B = 0; B < 256; B++) + (y[B] = I(B) ? 1 : 0), (w[B] = I(B)); + function Q(e, t) { + (this.input = e), + (this.filename = t.filename || null), + (this.schema = t.schema || A), + (this.onWarning = t.onWarning || null), + (this.legacy = t.legacy || !1), + (this.json = t.json || !1), + (this.listener = t.listener || null), + (this.implicitTypes = this.schema.compiledImplicit), + (this.typeMap = this.schema.compiledTypeMap), + (this.length = e.length), + (this.position = 0), + (this.line = 0), + (this.lineStart = 0), + (this.lineIndent = 0), + (this.documents = []); + } + function v(e, t) { + return new i(t, new o(e.filename, e.input, e.position, e.line, e.position - e.lineStart)); + } + function D(e, t) { + throw v(e, t); + } + function b(e, t) { + e.onWarning && e.onWarning.call(null, v(e, t)); + } + var S = { + YAML: function (e, t, r) { + var n, i, o; + null !== e.version && D(e, 'duplication of %YAML directive'), + 1 !== r.length && D(e, 'YAML directive accepts exactly one argument'), + null === (n = /^([0-9]+)\.([0-9]+)$/.exec(r[0])) && + D(e, 'ill-formed argument of the YAML directive'), + (i = parseInt(n[1], 10)), + (o = parseInt(n[2], 10)), + 1 !== i && D(e, 'unacceptable YAML version of the document'), + (e.version = r[0]), + (e.checkLineBreaks = o < 2), + 1 !== o && 2 !== o && b(e, 'unsupported YAML version of the document'); + }, + TAG: function (e, t, r) { + var n, i; + 2 !== r.length && D(e, 'TAG directive accepts exactly two arguments'), + (n = r[0]), + (i = r[1]), + h.test(n) || D(e, 'ill-formed tag handle (first argument) of the TAG directive'), + a.call(e.tagMap, n) && + D(e, 'there is a previously declared suffix for "' + n + '" tag handle'), + g.test(i) || D(e, 'ill-formed tag prefix (second argument) of the TAG directive'), + (e.tagMap[n] = i); + }, + }; + function k(e, t, r, n) { + var i, o, s, A; + if (t < r) { + if (((A = e.input.slice(t, r)), n)) + for (i = 0, o = A.length; i < o; i += 1) + 9 === (s = A.charCodeAt(i)) || + (32 <= s && s <= 1114111) || + D(e, 'expected valid JSON character'); + else c.test(A) && D(e, 'the stream contains non-printable characters'); + e.result += A; + } + } + function x(e, t, r, i) { + var o, s, A, c; + for ( + n.isObject(r) || + D(e, 'cannot merge mappings; the provided source object is unacceptable'), + A = 0, + c = (o = Object.keys(r)).length; + A < c; + A += 1 + ) + (s = o[A]), a.call(t, s) || ((t[s] = r[s]), (i[s] = !0)); + } + function F(e, t, r, n, i, o, s, A) { + var c, u; + if (((i = String(i)), null === t && (t = {}), 'tag:yaml.org,2002:merge' === n)) + if (Array.isArray(o)) for (c = 0, u = o.length; c < u; c += 1) x(e, t, o[c], r); + else x(e, t, o, r); + else + e.json || + a.call(r, i) || + !a.call(t, i) || + ((e.line = s || e.line), + (e.position = A || e.position), + D(e, 'duplicated mapping key')), + (t[i] = o), + delete r[i]; + return t; + } + function M(e) { + var t; + 10 === (t = e.input.charCodeAt(e.position)) + ? e.position++ + : 13 === t + ? (e.position++, 10 === e.input.charCodeAt(e.position) && e.position++) + : D(e, 'a line break is expected'), + (e.line += 1), + (e.lineStart = e.position); + } + function N(e, t, r) { + for (var n = 0, i = e.input.charCodeAt(e.position); 0 !== i; ) { + for (; p(i); ) i = e.input.charCodeAt(++e.position); + if (t && 35 === i) + do { + i = e.input.charCodeAt(++e.position); + } while (10 !== i && 13 !== i && 0 !== i); + if (!f(i)) break; + for (M(e), i = e.input.charCodeAt(e.position), n++, e.lineIndent = 0; 32 === i; ) + e.lineIndent++, (i = e.input.charCodeAt(++e.position)); + } + return -1 !== r && 0 !== n && e.lineIndent < r && b(e, 'deficient indentation'), n; + } + function R(e) { + var t, + r = e.position; + return !( + (45 !== (t = e.input.charCodeAt(r)) && 46 !== t) || + t !== e.input.charCodeAt(r + 1) || + t !== e.input.charCodeAt(r + 2) || + ((r += 3), 0 !== (t = e.input.charCodeAt(r)) && !d(t)) + ); + } + function K(e, t) { + 1 === t ? (e.result += ' ') : t > 1 && (e.result += n.repeat('\n', t - 1)); + } + function L(e, t) { + var r, + n, + i = e.tag, + o = e.anchor, + s = [], + A = !1; + for ( + null !== e.anchor && (e.anchorMap[e.anchor] = s), n = e.input.charCodeAt(e.position); + 0 !== n && 45 === n && d(e.input.charCodeAt(e.position + 1)); + + ) + if (((A = !0), e.position++, N(e, !0, -1) && e.lineIndent <= t)) + s.push(null), (n = e.input.charCodeAt(e.position)); + else if ( + ((r = e.line), + U(e, t, 3, !1, !0), + s.push(e.result), + N(e, !0, -1), + (n = e.input.charCodeAt(e.position)), + (e.line === r || e.lineIndent > t) && 0 !== n) + ) + D(e, 'bad indentation of a sequence entry'); + else if (e.lineIndent < t) break; + return !!A && ((e.tag = i), (e.anchor = o), (e.kind = 'sequence'), (e.result = s), !0); + } + function T(e) { + var t, + r, + n, + i, + o = !1, + s = !1; + if (33 !== (i = e.input.charCodeAt(e.position))) return !1; + if ( + (null !== e.tag && D(e, 'duplication of a tag property'), + 60 === (i = e.input.charCodeAt(++e.position)) + ? ((o = !0), (i = e.input.charCodeAt(++e.position))) + : 33 === i + ? ((s = !0), (r = '!!'), (i = e.input.charCodeAt(++e.position))) + : (r = '!'), + (t = e.position), + o) + ) { + do { + i = e.input.charCodeAt(++e.position); + } while (0 !== i && 62 !== i); + e.position < e.length + ? ((n = e.input.slice(t, e.position)), (i = e.input.charCodeAt(++e.position))) + : D(e, 'unexpected end of the stream within a verbatim tag'); + } else { + for (; 0 !== i && !d(i); ) + 33 === i && + (s + ? D(e, 'tag suffix cannot contain exclamation marks') + : ((r = e.input.slice(t - 1, e.position + 1)), + h.test(r) || D(e, 'named tag handle cannot contain such characters'), + (s = !0), + (t = e.position + 1))), + (i = e.input.charCodeAt(++e.position)); + (n = e.input.slice(t, e.position)), + l.test(n) && D(e, 'tag suffix cannot contain flow indicator characters'); + } + return ( + n && !g.test(n) && D(e, 'tag name cannot contain such characters: ' + n), + o + ? (e.tag = n) + : a.call(e.tagMap, r) + ? (e.tag = e.tagMap[r] + n) + : '!' === r + ? (e.tag = '!' + n) + : '!!' === r + ? (e.tag = 'tag:yaml.org,2002:' + n) + : D(e, 'undeclared tag handle "' + r + '"'), + !0 + ); + } + function P(e) { + var t, r; + if (38 !== (r = e.input.charCodeAt(e.position))) return !1; + for ( + null !== e.anchor && D(e, 'duplication of an anchor property'), + r = e.input.charCodeAt(++e.position), + t = e.position; + 0 !== r && !d(r) && !C(r); + + ) + r = e.input.charCodeAt(++e.position); + return ( + e.position === t && D(e, 'name of an anchor node must contain at least one character'), + (e.anchor = e.input.slice(t, e.position)), + !0 + ); + } + function U(e, t, r, i, o) { + var s, + A, + c, + u, + l, + h, + g, + I, + B = 1, + Q = !1, + v = !1; + if ( + (null !== e.listener && e.listener('open', e), + (e.tag = null), + (e.anchor = null), + (e.kind = null), + (e.result = null), + (s = A = c = 4 === r || 3 === r), + i && + N(e, !0, -1) && + ((Q = !0), + e.lineIndent > t + ? (B = 1) + : e.lineIndent === t + ? (B = 0) + : e.lineIndent < t && (B = -1)), + 1 === B) + ) + for (; T(e) || P(e); ) + N(e, !0, -1) + ? ((Q = !0), + (c = s), + e.lineIndent > t + ? (B = 1) + : e.lineIndent === t + ? (B = 0) + : e.lineIndent < t && (B = -1)) + : (c = !1); + if ( + (c && (c = Q || o), + (1 !== B && 4 !== r) || + ((g = 1 === r || 2 === r ? t : t + 1), + (I = e.position - e.lineStart), + 1 === B + ? (c && + (L(e, I) || + (function (e, t, r) { + var n, + i, + o, + s, + A, + a = e.tag, + c = e.anchor, + u = {}, + l = {}, + h = null, + g = null, + f = null, + C = !1, + E = !1; + for ( + null !== e.anchor && (e.anchorMap[e.anchor] = u), + A = e.input.charCodeAt(e.position); + 0 !== A; + + ) { + if ( + ((n = e.input.charCodeAt(e.position + 1)), + (o = e.line), + (s = e.position), + (63 !== A && 58 !== A) || !d(n)) + ) { + if (!U(e, r, 2, !1, !0)) break; + if (e.line === o) { + for (A = e.input.charCodeAt(e.position); p(A); ) + A = e.input.charCodeAt(++e.position); + if (58 === A) + d((A = e.input.charCodeAt(++e.position))) || + D( + e, + 'a whitespace character is expected after the key-value separator within a block mapping' + ), + C && (F(e, u, l, h, g, null), (h = g = f = null)), + (E = !0), + (C = !1), + (i = !1), + (h = e.tag), + (g = e.result); + else { + if (!E) return (e.tag = a), (e.anchor = c), !0; + D(e, 'can not read an implicit mapping pair; a colon is missed'); + } + } else { + if (!E) return (e.tag = a), (e.anchor = c), !0; + D( + e, + 'can not read a block mapping entry; a multiline key may not be an implicit key' + ); + } + } else + 63 === A + ? (C && (F(e, u, l, h, g, null), (h = g = f = null)), + (E = !0), + (C = !0), + (i = !0)) + : C + ? ((C = !1), (i = !0)) + : D( + e, + 'incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line' + ), + (e.position += 1), + (A = n); + if ( + ((e.line === o || e.lineIndent > t) && + (U(e, t, 4, !0, i) && (C ? (g = e.result) : (f = e.result)), + C || (F(e, u, l, h, g, f, o, s), (h = g = f = null)), + N(e, !0, -1), + (A = e.input.charCodeAt(e.position))), + e.lineIndent > t && 0 !== A) + ) + D(e, 'bad indentation of a mapping entry'); + else if (e.lineIndent < t) break; + } + return ( + C && F(e, u, l, h, g, null), + E && ((e.tag = a), (e.anchor = c), (e.kind = 'mapping'), (e.result = u)), + E + ); + })(e, I, g))) || + (function (e, t) { + var r, + n, + i, + o, + s, + A, + a, + c, + u, + l, + h = !0, + g = e.tag, + f = e.anchor, + p = {}; + if (91 === (l = e.input.charCodeAt(e.position))) (i = 93), (A = !1), (n = []); + else { + if (123 !== l) return !1; + (i = 125), (A = !0), (n = {}); + } + for ( + null !== e.anchor && (e.anchorMap[e.anchor] = n), + l = e.input.charCodeAt(++e.position); + 0 !== l; + + ) { + if ((N(e, !0, t), (l = e.input.charCodeAt(e.position)) === i)) + return ( + e.position++, + (e.tag = g), + (e.anchor = f), + (e.kind = A ? 'mapping' : 'sequence'), + (e.result = n), + !0 + ); + h || D(e, 'missed comma between flow collection entries'), + (u = null), + (o = s = !1), + 63 === l && + d(e.input.charCodeAt(e.position + 1)) && + ((o = s = !0), e.position++, N(e, !0, t)), + (r = e.line), + U(e, t, 1, !1, !0), + (c = e.tag), + (a = e.result), + N(e, !0, t), + (l = e.input.charCodeAt(e.position)), + (!s && e.line !== r) || + 58 !== l || + ((o = !0), + (l = e.input.charCodeAt(++e.position)), + N(e, !0, t), + U(e, t, 1, !1, !0), + (u = e.result)), + A ? F(e, n, p, c, a, u) : o ? n.push(F(e, null, p, c, a, u)) : n.push(a), + N(e, !0, t), + 44 === (l = e.input.charCodeAt(e.position)) + ? ((h = !0), (l = e.input.charCodeAt(++e.position))) + : (h = !1); + } + D(e, 'unexpected end of the stream within a flow collection'); + })(e, g) + ? (v = !0) + : ((A && + (function (e, t) { + var r, + i, + o, + s, + A, + a = 1, + c = !1, + u = !1, + l = t, + h = 0, + g = !1; + if (124 === (s = e.input.charCodeAt(e.position))) i = !1; + else { + if (62 !== s) return !1; + i = !0; + } + for (e.kind = 'scalar', e.result = ''; 0 !== s; ) + if (43 === (s = e.input.charCodeAt(++e.position)) || 45 === s) + 1 === a + ? (a = 43 === s ? 3 : 2) + : D(e, 'repeat of a chomping mode identifier'); + else { + if (!((o = 48 <= (A = s) && A <= 57 ? A - 48 : -1) >= 0)) break; + 0 === o + ? D( + e, + 'bad explicit indentation width of a block scalar; it cannot be less than one' + ) + : u + ? D(e, 'repeat of an indentation width identifier') + : ((l = t + o - 1), (u = !0)); + } + if (p(s)) { + do { + s = e.input.charCodeAt(++e.position); + } while (p(s)); + if (35 === s) + do { + s = e.input.charCodeAt(++e.position); + } while (!f(s) && 0 !== s); + } + for (; 0 !== s; ) { + for ( + M(e), e.lineIndent = 0, s = e.input.charCodeAt(e.position); + (!u || e.lineIndent < l) && 32 === s; + + ) + e.lineIndent++, (s = e.input.charCodeAt(++e.position)); + if ((!u && e.lineIndent > l && (l = e.lineIndent), f(s))) h++; + else { + if (e.lineIndent < l) { + 3 === a + ? (e.result += n.repeat('\n', c ? 1 + h : h)) + : 1 === a && c && (e.result += '\n'); + break; + } + for ( + i + ? p(s) + ? ((g = !0), (e.result += n.repeat('\n', c ? 1 + h : h))) + : g + ? ((g = !1), (e.result += n.repeat('\n', h + 1))) + : 0 === h + ? c && (e.result += ' ') + : (e.result += n.repeat('\n', h)) + : (e.result += n.repeat('\n', c ? 1 + h : h)), + c = !0, + u = !0, + h = 0, + r = e.position; + !f(s) && 0 !== s; + + ) + s = e.input.charCodeAt(++e.position); + k(e, r, e.position, !1); + } + } + return !0; + })(e, g)) || + (function (e, t) { + var r, n, i; + if (39 !== (r = e.input.charCodeAt(e.position))) return !1; + for ( + e.kind = 'scalar', e.result = '', e.position++, n = i = e.position; + 0 !== (r = e.input.charCodeAt(e.position)); + + ) + if (39 === r) { + if ( + (k(e, n, e.position, !0), 39 !== (r = e.input.charCodeAt(++e.position))) + ) + return !0; + (n = e.position), e.position++, (i = e.position); + } else + f(r) + ? (k(e, n, i, !0), K(e, N(e, !1, t)), (n = i = e.position)) + : e.position === e.lineStart && R(e) + ? D(e, 'unexpected end of the document within a single quoted scalar') + : (e.position++, (i = e.position)); + D(e, 'unexpected end of the stream within a single quoted scalar'); + })(e, g) || + (function (e, t) { + var r, n, i, o, s, A, a; + if (34 !== (A = e.input.charCodeAt(e.position))) return !1; + for ( + e.kind = 'scalar', e.result = '', e.position++, r = n = e.position; + 0 !== (A = e.input.charCodeAt(e.position)); + + ) { + if (34 === A) return k(e, r, e.position, !0), e.position++, !0; + if (92 === A) { + if ((k(e, r, e.position, !0), f((A = e.input.charCodeAt(++e.position))))) + N(e, !1, t); + else if (A < 256 && y[A]) (e.result += w[A]), e.position++; + else if ( + (s = 120 === (a = A) ? 2 : 117 === a ? 4 : 85 === a ? 8 : 0) > 0 + ) { + for (i = s, o = 0; i > 0; i--) + (s = E((A = e.input.charCodeAt(++e.position)))) >= 0 + ? (o = (o << 4) + s) + : D(e, 'expected hexadecimal character'); + (e.result += m(o)), e.position++; + } else D(e, 'unknown escape sequence'); + r = n = e.position; + } else + f(A) + ? (k(e, r, n, !0), K(e, N(e, !1, t)), (r = n = e.position)) + : e.position === e.lineStart && R(e) + ? D(e, 'unexpected end of the document within a double quoted scalar') + : (e.position++, (n = e.position)); + } + D(e, 'unexpected end of the stream within a double quoted scalar'); + })(e, g) + ? (v = !0) + : !(function (e) { + var t, r, n; + if (42 !== (n = e.input.charCodeAt(e.position))) return !1; + for ( + n = e.input.charCodeAt(++e.position), t = e.position; + 0 !== n && !d(n) && !C(n); + + ) + n = e.input.charCodeAt(++e.position); + return ( + e.position === t && + D(e, 'name of an alias node must contain at least one character'), + (r = e.input.slice(t, e.position)), + e.anchorMap.hasOwnProperty(r) || D(e, 'unidentified alias "' + r + '"'), + (e.result = e.anchorMap[r]), + N(e, !0, -1), + !0 + ); + })(e) + ? (function (e, t, r) { + var n, + i, + o, + s, + A, + a, + c, + u, + l = e.kind, + h = e.result; + if ( + d((u = e.input.charCodeAt(e.position))) || + C(u) || + 35 === u || + 38 === u || + 42 === u || + 33 === u || + 124 === u || + 62 === u || + 39 === u || + 34 === u || + 37 === u || + 64 === u || + 96 === u + ) + return !1; + if ( + (63 === u || 45 === u) && + (d((n = e.input.charCodeAt(e.position + 1))) || (r && C(n))) + ) + return !1; + for ( + e.kind = 'scalar', e.result = '', i = o = e.position, s = !1; + 0 !== u; + + ) { + if (58 === u) { + if (d((n = e.input.charCodeAt(e.position + 1))) || (r && C(n))) break; + } else if (35 === u) { + if (d(e.input.charCodeAt(e.position - 1))) break; + } else { + if ((e.position === e.lineStart && R(e)) || (r && C(u))) break; + if (f(u)) { + if ( + ((A = e.line), + (a = e.lineStart), + (c = e.lineIndent), + N(e, !1, -1), + e.lineIndent >= t) + ) { + (s = !0), (u = e.input.charCodeAt(e.position)); + continue; + } + (e.position = o), + (e.line = A), + (e.lineStart = a), + (e.lineIndent = c); + break; + } + } + s && (k(e, i, o, !1), K(e, e.line - A), (i = o = e.position), (s = !1)), + p(u) || (o = e.position + 1), + (u = e.input.charCodeAt(++e.position)); + } + return k(e, i, o, !1), !!e.result || ((e.kind = l), (e.result = h), !1); + })(e, g, 1 === r) && ((v = !0), null === e.tag && (e.tag = '?')) + : ((v = !0), + (null === e.tag && null === e.anchor) || + D(e, 'alias node should not have any properties')), + null !== e.anchor && (e.anchorMap[e.anchor] = e.result)) + : 0 === B && (v = c && L(e, I))), + null !== e.tag && '!' !== e.tag) + ) + if ('?' === e.tag) { + for (u = 0, l = e.implicitTypes.length; u < l; u += 1) + if ((h = e.implicitTypes[u]).resolve(e.result)) { + (e.result = h.construct(e.result)), + (e.tag = h.tag), + null !== e.anchor && (e.anchorMap[e.anchor] = e.result); + break; + } + } else + a.call(e.typeMap[e.kind || 'fallback'], e.tag) + ? ((h = e.typeMap[e.kind || 'fallback'][e.tag]), + null !== e.result && + h.kind !== e.kind && + D( + e, + 'unacceptable node kind for !<' + + e.tag + + '> tag; it should be "' + + h.kind + + '", not "' + + e.kind + + '"' + ), + h.resolve(e.result) + ? ((e.result = h.construct(e.result)), + null !== e.anchor && (e.anchorMap[e.anchor] = e.result)) + : D(e, 'cannot resolve a node with !<' + e.tag + '> explicit tag')) + : D(e, 'unknown tag !<' + e.tag + '>'); + return ( + null !== e.listener && e.listener('close', e), null !== e.tag || null !== e.anchor || v + ); + } + function _(e) { + var t, + r, + n, + i, + o = e.position, + s = !1; + for ( + e.version = null, e.checkLineBreaks = e.legacy, e.tagMap = {}, e.anchorMap = {}; + 0 !== (i = e.input.charCodeAt(e.position)) && + (N(e, !0, -1), (i = e.input.charCodeAt(e.position)), !(e.lineIndent > 0 || 37 !== i)); + + ) { + for (s = !0, i = e.input.charCodeAt(++e.position), t = e.position; 0 !== i && !d(i); ) + i = e.input.charCodeAt(++e.position); + for ( + n = [], + (r = e.input.slice(t, e.position)).length < 1 && + D(e, 'directive name must not be less than one character in length'); + 0 !== i; + + ) { + for (; p(i); ) i = e.input.charCodeAt(++e.position); + if (35 === i) { + do { + i = e.input.charCodeAt(++e.position); + } while (0 !== i && !f(i)); + break; + } + if (f(i)) break; + for (t = e.position; 0 !== i && !d(i); ) i = e.input.charCodeAt(++e.position); + n.push(e.input.slice(t, e.position)); + } + 0 !== i && M(e), + a.call(S, r) ? S[r](e, r, n) : b(e, 'unknown document directive "' + r + '"'); + } + N(e, !0, -1), + 0 === e.lineIndent && + 45 === e.input.charCodeAt(e.position) && + 45 === e.input.charCodeAt(e.position + 1) && + 45 === e.input.charCodeAt(e.position + 2) + ? ((e.position += 3), N(e, !0, -1)) + : s && D(e, 'directives end mark is expected'), + U(e, e.lineIndent - 1, 4, !1, !0), + N(e, !0, -1), + e.checkLineBreaks && + u.test(e.input.slice(o, e.position)) && + b(e, 'non-ASCII line breaks are interpreted as content'), + e.documents.push(e.result), + e.position === e.lineStart && R(e) + ? 46 === e.input.charCodeAt(e.position) && ((e.position += 3), N(e, !0, -1)) + : e.position < e.length - 1 && + D(e, 'end of the stream or a document separator is expected'); + } + function O(e, t) { + (t = t || {}), + 0 !== (e = String(e)).length && + (10 !== e.charCodeAt(e.length - 1) && + 13 !== e.charCodeAt(e.length - 1) && + (e += '\n'), + 65279 === e.charCodeAt(0) && (e = e.slice(1))); + var r = new Q(e, t); + for (r.input += '\0'; 32 === r.input.charCodeAt(r.position); ) + (r.lineIndent += 1), (r.position += 1); + for (; r.position < r.length - 1; ) _(r); + return r.documents; + } + function j(e, t, r) { + var n, + i, + o = O(e, r); + if ('function' != typeof t) return o; + for (n = 0, i = o.length; n < i; n += 1) t(o[n]); + } + function Y(e, t) { + var r = O(e, t); + if (0 !== r.length) { + if (1 === r.length) return r[0]; + throw new i('expected a single document in the stream, but found more'); + } + } + (e.exports.loadAll = j), + (e.exports.load = Y), + (e.exports.safeLoadAll = function (e, t, r) { + if ('function' != typeof t) return j(e, n.extend({ schema: s }, r)); + j(e, t, n.extend({ schema: s }, r)); + }), + (e.exports.safeLoad = function (e, t) { + return Y(e, n.extend({ schema: s }, t)); + }); + }, + 30399: (e, t, r) => { + 'use strict'; + var n = r(28149); + function i(e, t, r, n, i) { + (this.name = e), + (this.buffer = t), + (this.position = r), + (this.line = n), + (this.column = i); + } + (i.prototype.getSnippet = function (e, t) { + var r, i, o, s, A; + if (!this.buffer) return null; + for ( + e = e || 4, t = t || 75, r = '', i = this.position; + i > 0 && -1 === '\0\r\n…\u2028\u2029'.indexOf(this.buffer.charAt(i - 1)); + + ) + if (((i -= 1), this.position - i > t / 2 - 1)) { + (r = ' ... '), (i += 5); + break; + } + for ( + o = '', s = this.position; + s < this.buffer.length && -1 === '\0\r\n…\u2028\u2029'.indexOf(this.buffer.charAt(s)); + + ) + if ((s += 1) - this.position > t / 2 - 1) { + (o = ' ... '), (s -= 5); + break; + } + return ( + (A = this.buffer.slice(i, s)), + n.repeat(' ', e) + + r + + A + + o + + '\n' + + n.repeat(' ', e + this.position - i + r.length) + + '^' + ); + }), + (i.prototype.toString = function (e) { + var t, + r = ''; + return ( + this.name && (r += 'in "' + this.name + '" '), + (r += 'at line ' + (this.line + 1) + ', column ' + (this.column + 1)), + e || ((t = this.getSnippet()) && (r += ':\n' + t)), + r + ); + }), + (e.exports = i); + }, + 8212: (e, t, r) => { + 'use strict'; + var n = r(28149), + i = r(17345), + o = r(81704); + function s(e, t, r) { + var n = []; + return ( + e.include.forEach(function (e) { + r = s(e, t, r); + }), + e[t].forEach(function (e) { + r.forEach(function (t, r) { + t.tag === e.tag && t.kind === e.kind && n.push(r); + }), + r.push(e); + }), + r.filter(function (e, t) { + return -1 === n.indexOf(t); + }) + ); + } + function A(e) { + (this.include = e.include || []), + (this.implicit = e.implicit || []), + (this.explicit = e.explicit || []), + this.implicit.forEach(function (e) { + if (e.loadKind && 'scalar' !== e.loadKind) + throw new i( + 'There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.' + ); + }), + (this.compiledImplicit = s(this, 'implicit', [])), + (this.compiledExplicit = s(this, 'explicit', [])), + (this.compiledTypeMap = (function () { + var e, + t, + r = { scalar: {}, sequence: {}, mapping: {}, fallback: {} }; + function n(e) { + r[e.kind][e.tag] = r.fallback[e.tag] = e; + } + for (e = 0, t = arguments.length; e < t; e += 1) arguments[e].forEach(n); + return r; + })(this.compiledImplicit, this.compiledExplicit)); + } + (A.DEFAULT = null), + (A.create = function () { + var e, t; + switch (arguments.length) { + case 1: + (e = A.DEFAULT), (t = arguments[0]); + break; + case 2: + (e = arguments[0]), (t = arguments[1]); + break; + default: + throw new i('Wrong number of arguments for Schema.create function'); + } + if ( + ((e = n.toArray(e)), + (t = n.toArray(t)), + !e.every(function (e) { + return e instanceof A; + })) + ) + throw new i( + 'Specified list of super schemas (or a single Schema object) contains a non-Schema object.' + ); + if ( + !t.every(function (e) { + return e instanceof o; + }) + ) + throw new i( + 'Specified list of YAML types (or a single Type object) contains a non-Type object.' + ); + return new A({ include: e, explicit: t }); + }), + (e.exports = A); + }, + 8769: (e, t, r) => { + 'use strict'; + var n = r(8212); + e.exports = new n({ include: [r(45247)] }); + }, + 5235: (e, t, r) => { + 'use strict'; + var n = r(8212); + e.exports = n.DEFAULT = new n({ + include: [r(65483)], + explicit: [r(61425), r(61872), r(79982)], + }); + }, + 65483: (e, t, r) => { + 'use strict'; + var n = r(8212); + e.exports = new n({ + include: [r(8769)], + implicit: [r(83516), r(95441)], + explicit: [r(34836), r(6847), r(65173), r(92025)], + }); + }, + 44413: (e, t, r) => { + 'use strict'; + var n = r(8212); + e.exports = new n({ explicit: [r(19952), r(46557), r(90173)] }); + }, + 45247: (e, t, r) => { + 'use strict'; + var n = r(8212); + e.exports = new n({ + include: [r(44413)], + implicit: [r(40188), r(58357), r(82106), r(71945)], + }); + }, + 81704: (e, t, r) => { + 'use strict'; + var n = r(17345), + i = [ + 'kind', + 'resolve', + 'construct', + 'instanceOf', + 'predicate', + 'represent', + 'defaultStyle', + 'styleAliases', + ], + o = ['scalar', 'sequence', 'mapping']; + e.exports = function (e, t) { + var r, s; + if ( + ((t = t || {}), + Object.keys(t).forEach(function (t) { + if (-1 === i.indexOf(t)) + throw new n( + 'Unknown option "' + t + '" is met in definition of "' + e + '" YAML type.' + ); + }), + (this.tag = e), + (this.kind = t.kind || null), + (this.resolve = + t.resolve || + function () { + return !0; + }), + (this.construct = + t.construct || + function (e) { + return e; + }), + (this.instanceOf = t.instanceOf || null), + (this.predicate = t.predicate || null), + (this.represent = t.represent || null), + (this.defaultStyle = t.defaultStyle || null), + (this.styleAliases = + ((r = t.styleAliases || null), + (s = {}), + null !== r && + Object.keys(r).forEach(function (e) { + r[e].forEach(function (t) { + s[String(t)] = e; + }); + }), + s)), + -1 === o.indexOf(this.kind)) + ) + throw new n('Unknown kind "' + this.kind + '" is specified for "' + e + '" YAML type.'); + }; + }, + 34836: (e, t, r) => { + 'use strict'; + var n; + try { + n = r(64293).Buffer; + } catch (e) {} + var i = r(81704), + o = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r'; + e.exports = new i('tag:yaml.org,2002:binary', { + kind: 'scalar', + resolve: function (e) { + if (null === e) return !1; + var t, + r, + n = 0, + i = e.length, + s = o; + for (r = 0; r < i; r++) + if (!((t = s.indexOf(e.charAt(r))) > 64)) { + if (t < 0) return !1; + n += 6; + } + return n % 8 == 0; + }, + construct: function (e) { + var t, + r, + i = e.replace(/[\r\n=]/g, ''), + s = i.length, + A = o, + a = 0, + c = []; + for (t = 0; t < s; t++) + t % 4 == 0 && t && (c.push((a >> 16) & 255), c.push((a >> 8) & 255), c.push(255 & a)), + (a = (a << 6) | A.indexOf(i.charAt(t))); + return ( + 0 === (r = (s % 4) * 6) + ? (c.push((a >> 16) & 255), c.push((a >> 8) & 255), c.push(255 & a)) + : 18 === r + ? (c.push((a >> 10) & 255), c.push((a >> 2) & 255)) + : 12 === r && c.push((a >> 4) & 255), + n ? (n.from ? n.from(c) : new n(c)) : c + ); + }, + predicate: function (e) { + return n && n.isBuffer(e); + }, + represent: function (e) { + var t, + r, + n = '', + i = 0, + s = e.length, + A = o; + for (t = 0; t < s; t++) + t % 3 == 0 && + t && + ((n += A[(i >> 18) & 63]), + (n += A[(i >> 12) & 63]), + (n += A[(i >> 6) & 63]), + (n += A[63 & i])), + (i = (i << 8) + e[t]); + return ( + 0 === (r = s % 3) + ? ((n += A[(i >> 18) & 63]), + (n += A[(i >> 12) & 63]), + (n += A[(i >> 6) & 63]), + (n += A[63 & i])) + : 2 === r + ? ((n += A[(i >> 10) & 63]), + (n += A[(i >> 4) & 63]), + (n += A[(i << 2) & 63]), + (n += A[64])) + : 1 === r && + ((n += A[(i >> 2) & 63]), (n += A[(i << 4) & 63]), (n += A[64]), (n += A[64])), + n + ); + }, + }); + }, + 58357: (e, t, r) => { + 'use strict'; + var n = r(81704); + e.exports = new n('tag:yaml.org,2002:bool', { + kind: 'scalar', + resolve: function (e) { + if (null === e) return !1; + var t = e.length; + return ( + (4 === t && ('true' === e || 'True' === e || 'TRUE' === e)) || + (5 === t && ('false' === e || 'False' === e || 'FALSE' === e)) + ); + }, + construct: function (e) { + return 'true' === e || 'True' === e || 'TRUE' === e; + }, + predicate: function (e) { + return '[object Boolean]' === Object.prototype.toString.call(e); + }, + represent: { + lowercase: function (e) { + return e ? 'true' : 'false'; + }, + uppercase: function (e) { + return e ? 'TRUE' : 'FALSE'; + }, + camelcase: function (e) { + return e ? 'True' : 'False'; + }, + }, + defaultStyle: 'lowercase', + }); + }, + 71945: (e, t, r) => { + 'use strict'; + var n = r(28149), + i = r(81704), + o = new RegExp( + '^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$' + ); + var s = /^[-+]?[0-9]+e/; + e.exports = new i('tag:yaml.org,2002:float', { + kind: 'scalar', + resolve: function (e) { + return null !== e && !(!o.test(e) || '_' === e[e.length - 1]); + }, + construct: function (e) { + var t, r, n, i; + return ( + (r = '-' === (t = e.replace(/_/g, '').toLowerCase())[0] ? -1 : 1), + (i = []), + '+-'.indexOf(t[0]) >= 0 && (t = t.slice(1)), + '.inf' === t + ? 1 === r + ? Number.POSITIVE_INFINITY + : Number.NEGATIVE_INFINITY + : '.nan' === t + ? NaN + : t.indexOf(':') >= 0 + ? (t.split(':').forEach(function (e) { + i.unshift(parseFloat(e, 10)); + }), + (t = 0), + (n = 1), + i.forEach(function (e) { + (t += e * n), (n *= 60); + }), + r * t) + : r * parseFloat(t, 10) + ); + }, + predicate: function (e) { + return ( + '[object Number]' === Object.prototype.toString.call(e) && + (e % 1 != 0 || n.isNegativeZero(e)) + ); + }, + represent: function (e, t) { + var r; + if (isNaN(e)) + switch (t) { + case 'lowercase': + return '.nan'; + case 'uppercase': + return '.NAN'; + case 'camelcase': + return '.NaN'; + } + else if (Number.POSITIVE_INFINITY === e) + switch (t) { + case 'lowercase': + return '.inf'; + case 'uppercase': + return '.INF'; + case 'camelcase': + return '.Inf'; + } + else if (Number.NEGATIVE_INFINITY === e) + switch (t) { + case 'lowercase': + return '-.inf'; + case 'uppercase': + return '-.INF'; + case 'camelcase': + return '-.Inf'; + } + else if (n.isNegativeZero(e)) return '-0.0'; + return (r = e.toString(10)), s.test(r) ? r.replace('e', '.e') : r; + }, + defaultStyle: 'lowercase', + }); + }, + 82106: (e, t, r) => { + 'use strict'; + var n = r(28149), + i = r(81704); + function o(e) { + return 48 <= e && e <= 55; + } + function s(e) { + return 48 <= e && e <= 57; + } + e.exports = new i('tag:yaml.org,2002:int', { + kind: 'scalar', + resolve: function (e) { + if (null === e) return !1; + var t, + r, + n = e.length, + i = 0, + A = !1; + if (!n) return !1; + if ((('-' !== (t = e[i]) && '+' !== t) || (t = e[++i]), '0' === t)) { + if (i + 1 === n) return !0; + if ('b' === (t = e[++i])) { + for (i++; i < n; i++) + if ('_' !== (t = e[i])) { + if ('0' !== t && '1' !== t) return !1; + A = !0; + } + return A && '_' !== t; + } + if ('x' === t) { + for (i++; i < n; i++) + if ('_' !== (t = e[i])) { + if ( + !( + (48 <= (r = e.charCodeAt(i)) && r <= 57) || + (65 <= r && r <= 70) || + (97 <= r && r <= 102) + ) + ) + return !1; + A = !0; + } + return A && '_' !== t; + } + for (; i < n; i++) + if ('_' !== (t = e[i])) { + if (!o(e.charCodeAt(i))) return !1; + A = !0; + } + return A && '_' !== t; + } + if ('_' === t) return !1; + for (; i < n; i++) + if ('_' !== (t = e[i])) { + if (':' === t) break; + if (!s(e.charCodeAt(i))) return !1; + A = !0; + } + return !(!A || '_' === t) && (':' !== t || /^(:[0-5]?[0-9])+$/.test(e.slice(i))); + }, + construct: function (e) { + var t, + r, + n = e, + i = 1, + o = []; + return ( + -1 !== n.indexOf('_') && (n = n.replace(/_/g, '')), + ('-' !== (t = n[0]) && '+' !== t) || + ('-' === t && (i = -1), (t = (n = n.slice(1))[0])), + '0' === n + ? 0 + : '0' === t + ? 'b' === n[1] + ? i * parseInt(n.slice(2), 2) + : 'x' === n[1] + ? i * parseInt(n, 16) + : i * parseInt(n, 8) + : -1 !== n.indexOf(':') + ? (n.split(':').forEach(function (e) { + o.unshift(parseInt(e, 10)); + }), + (n = 0), + (r = 1), + o.forEach(function (e) { + (n += e * r), (r *= 60); + }), + i * n) + : i * parseInt(n, 10) + ); + }, + predicate: function (e) { + return ( + '[object Number]' === Object.prototype.toString.call(e) && + e % 1 == 0 && + !n.isNegativeZero(e) + ); + }, + represent: { + binary: function (e) { + return e >= 0 ? '0b' + e.toString(2) : '-0b' + e.toString(2).slice(1); + }, + octal: function (e) { + return e >= 0 ? '0' + e.toString(8) : '-0' + e.toString(8).slice(1); + }, + decimal: function (e) { + return e.toString(10); + }, + hexadecimal: function (e) { + return e >= 0 + ? '0x' + e.toString(16).toUpperCase() + : '-0x' + e.toString(16).toUpperCase().slice(1); + }, + }, + defaultStyle: 'decimal', + styleAliases: { + binary: [2, 'bin'], + octal: [8, 'oct'], + decimal: [10, 'dec'], + hexadecimal: [16, 'hex'], + }, + }); + }, + 79982: (e, t, r) => { + 'use strict'; + var n; + try { + n = r(41313); + } catch (e) { + 'undefined' != typeof window && (n = window.esprima); + } + var i = r(81704); + e.exports = new i('tag:yaml.org,2002:js/function', { + kind: 'scalar', + resolve: function (e) { + if (null === e) return !1; + try { + var t = '(' + e + ')', + r = n.parse(t, { range: !0 }); + return ( + 'Program' === r.type && + 1 === r.body.length && + 'ExpressionStatement' === r.body[0].type && + ('ArrowFunctionExpression' === r.body[0].expression.type || + 'FunctionExpression' === r.body[0].expression.type) + ); + } catch (e) { + return !1; + } + }, + construct: function (e) { + var t, + r = '(' + e + ')', + i = n.parse(r, { range: !0 }), + o = []; + if ( + 'Program' !== i.type || + 1 !== i.body.length || + 'ExpressionStatement' !== i.body[0].type || + ('ArrowFunctionExpression' !== i.body[0].expression.type && + 'FunctionExpression' !== i.body[0].expression.type) + ) + throw new Error('Failed to resolve function'); + return ( + i.body[0].expression.params.forEach(function (e) { + o.push(e.name); + }), + (t = i.body[0].expression.body.range), + 'BlockStatement' === i.body[0].expression.body.type + ? new Function(o, r.slice(t[0] + 1, t[1] - 1)) + : new Function(o, 'return ' + r.slice(t[0], t[1])) + ); + }, + predicate: function (e) { + return '[object Function]' === Object.prototype.toString.call(e); + }, + represent: function (e) { + return e.toString(); + }, + }); + }, + 61872: (e, t, r) => { + 'use strict'; + var n = r(81704); + e.exports = new n('tag:yaml.org,2002:js/regexp', { + kind: 'scalar', + resolve: function (e) { + if (null === e) return !1; + if (0 === e.length) return !1; + var t = e, + r = /\/([gim]*)$/.exec(e), + n = ''; + if ('/' === t[0]) { + if ((r && (n = r[1]), n.length > 3)) return !1; + if ('/' !== t[t.length - n.length - 1]) return !1; + } + return !0; + }, + construct: function (e) { + var t = e, + r = /\/([gim]*)$/.exec(e), + n = ''; + return ( + '/' === t[0] && (r && (n = r[1]), (t = t.slice(1, t.length - n.length - 1))), + new RegExp(t, n) + ); + }, + predicate: function (e) { + return '[object RegExp]' === Object.prototype.toString.call(e); + }, + represent: function (e) { + var t = '/' + e.source + '/'; + return e.global && (t += 'g'), e.multiline && (t += 'm'), e.ignoreCase && (t += 'i'), t; + }, + }); + }, + 61425: (e, t, r) => { + 'use strict'; + var n = r(81704); + e.exports = new n('tag:yaml.org,2002:js/undefined', { + kind: 'scalar', + resolve: function () { + return !0; + }, + construct: function () {}, + predicate: function (e) { + return void 0 === e; + }, + represent: function () { + return ''; + }, + }); + }, + 90173: (e, t, r) => { + 'use strict'; + var n = r(81704); + e.exports = new n('tag:yaml.org,2002:map', { + kind: 'mapping', + construct: function (e) { + return null !== e ? e : {}; + }, + }); + }, + 95441: (e, t, r) => { + 'use strict'; + var n = r(81704); + e.exports = new n('tag:yaml.org,2002:merge', { + kind: 'scalar', + resolve: function (e) { + return '<<' === e || null === e; + }, + }); + }, + 40188: (e, t, r) => { + 'use strict'; + var n = r(81704); + e.exports = new n('tag:yaml.org,2002:null', { + kind: 'scalar', + resolve: function (e) { + if (null === e) return !0; + var t = e.length; + return ( + (1 === t && '~' === e) || (4 === t && ('null' === e || 'Null' === e || 'NULL' === e)) + ); + }, + construct: function () { + return null; + }, + predicate: function (e) { + return null === e; + }, + represent: { + canonical: function () { + return '~'; + }, + lowercase: function () { + return 'null'; + }, + uppercase: function () { + return 'NULL'; + }, + camelcase: function () { + return 'Null'; + }, + }, + defaultStyle: 'lowercase', + }); + }, + 6847: (e, t, r) => { + 'use strict'; + var n = r(81704), + i = Object.prototype.hasOwnProperty, + o = Object.prototype.toString; + e.exports = new n('tag:yaml.org,2002:omap', { + kind: 'sequence', + resolve: function (e) { + if (null === e) return !0; + var t, + r, + n, + s, + A, + a = [], + c = e; + for (t = 0, r = c.length; t < r; t += 1) { + if (((n = c[t]), (A = !1), '[object Object]' !== o.call(n))) return !1; + for (s in n) + if (i.call(n, s)) { + if (A) return !1; + A = !0; + } + if (!A) return !1; + if (-1 !== a.indexOf(s)) return !1; + a.push(s); + } + return !0; + }, + construct: function (e) { + return null !== e ? e : []; + }, + }); + }, + 65173: (e, t, r) => { + 'use strict'; + var n = r(81704), + i = Object.prototype.toString; + e.exports = new n('tag:yaml.org,2002:pairs', { + kind: 'sequence', + resolve: function (e) { + if (null === e) return !0; + var t, + r, + n, + o, + s, + A = e; + for (s = new Array(A.length), t = 0, r = A.length; t < r; t += 1) { + if (((n = A[t]), '[object Object]' !== i.call(n))) return !1; + if (1 !== (o = Object.keys(n)).length) return !1; + s[t] = [o[0], n[o[0]]]; + } + return !0; + }, + construct: function (e) { + if (null === e) return []; + var t, + r, + n, + i, + o, + s = e; + for (o = new Array(s.length), t = 0, r = s.length; t < r; t += 1) + (n = s[t]), (i = Object.keys(n)), (o[t] = [i[0], n[i[0]]]); + return o; + }, + }); + }, + 46557: (e, t, r) => { + 'use strict'; + var n = r(81704); + e.exports = new n('tag:yaml.org,2002:seq', { + kind: 'sequence', + construct: function (e) { + return null !== e ? e : []; + }, + }); + }, + 92025: (e, t, r) => { + 'use strict'; + var n = r(81704), + i = Object.prototype.hasOwnProperty; + e.exports = new n('tag:yaml.org,2002:set', { + kind: 'mapping', + resolve: function (e) { + if (null === e) return !0; + var t, + r = e; + for (t in r) if (i.call(r, t) && null !== r[t]) return !1; + return !0; + }, + construct: function (e) { + return null !== e ? e : {}; + }, + }); + }, + 19952: (e, t, r) => { + 'use strict'; + var n = r(81704); + e.exports = new n('tag:yaml.org,2002:str', { + kind: 'scalar', + construct: function (e) { + return null !== e ? e : ''; + }, + }); + }, + 83516: (e, t, r) => { + 'use strict'; + var n = r(81704), + i = new RegExp('^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$'), + o = new RegExp( + '^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$' + ); + e.exports = new n('tag:yaml.org,2002:timestamp', { + kind: 'scalar', + resolve: function (e) { + return null !== e && (null !== i.exec(e) || null !== o.exec(e)); + }, + construct: function (e) { + var t, + r, + n, + s, + A, + a, + c, + u, + l = 0, + h = null; + if ((null === (t = i.exec(e)) && (t = o.exec(e)), null === t)) + throw new Error('Date resolve error'); + if (((r = +t[1]), (n = +t[2] - 1), (s = +t[3]), !t[4])) + return new Date(Date.UTC(r, n, s)); + if (((A = +t[4]), (a = +t[5]), (c = +t[6]), t[7])) { + for (l = t[7].slice(0, 3); l.length < 3; ) l += '0'; + l = +l; + } + return ( + t[9] && ((h = 6e4 * (60 * +t[10] + +(t[11] || 0))), '-' === t[9] && (h = -h)), + (u = new Date(Date.UTC(r, n, s, A, a, c, l))), + h && u.setTime(u.getTime() - h), + u + ); + }, + instanceOf: Date, + represent: function (e) { + return e.toISOString(); + }, + }); + }, + 7427: (e, t) => { + (t.stringify = function e(t) { + if (void 0 === t) return t; + if (t && Buffer.isBuffer(t)) return JSON.stringify(':base64:' + t.toString('base64')); + if ((t && t.toJSON && (t = t.toJSON()), t && 'object' == typeof t)) { + var r = '', + n = Array.isArray(t); + r = n ? '[' : '{'; + var i = !0; + for (var o in t) { + var s = 'function' == typeof t[o] || (!n && void 0 === t[o]); + Object.hasOwnProperty.call(t, o) && + !s && + (i || (r += ','), + (i = !1), + n + ? null == t[o] + ? (r += 'null') + : (r += e(t[o])) + : void 0 !== t[o] && (r += e(o) + ':' + e(t[o]))); + } + return (r += n ? ']' : '}'); + } + return 'string' == typeof t + ? JSON.stringify(/^:/.test(t) ? ':' + t : t) + : void 0 === t + ? 'null' + : JSON.stringify(t); + }), + (t.parse = function (e) { + return JSON.parse(e, function (e, t) { + return 'string' == typeof t + ? /^:base64:/.test(t) + ? Buffer.from(t.substring(8), 'base64') + : /^:/.test(t) + ? t.substring(1) + : t + : t; + }); + }); + }, + 72515: (e, t, r) => { + 'use strict'; + const n = r(28614), + i = r(7427); + e.exports = class extends n { + constructor(e, t) { + if ( + (super(), + (this.opts = Object.assign( + { namespace: 'keyv', serialize: i.stringify, deserialize: i.parse }, + 'string' == typeof e ? { uri: e } : e, + t + )), + !this.opts.store) + ) { + const e = Object.assign({}, this.opts); + this.opts.store = ((e) => { + const t = { + redis: '@keyv/redis', + mongodb: '@keyv/mongo', + mongo: '@keyv/mongo', + sqlite: '@keyv/sqlite', + postgresql: '@keyv/postgres', + postgres: '@keyv/postgres', + mysql: '@keyv/mysql', + }; + if (e.adapter || e.uri) { + const n = e.adapter || /^[^:]*/.exec(e.uri)[0]; + return new (r(89112)(t[n]))(e); + } + return new Map(); + })(e); + } + 'function' == typeof this.opts.store.on && + this.opts.store.on('error', (e) => this.emit('error', e)), + (this.opts.store.namespace = this.opts.namespace); + } + _getKeyPrefix(e) { + return `${this.opts.namespace}:${e}`; + } + get(e, t) { + e = this._getKeyPrefix(e); + const { store: r } = this.opts; + return Promise.resolve() + .then(() => r.get(e)) + .then((e) => ('string' == typeof e ? this.opts.deserialize(e) : e)) + .then((r) => { + if (void 0 !== r) { + if (!('number' == typeof r.expires && Date.now() > r.expires)) + return t && t.raw ? r : r.value; + this.delete(e); + } + }); + } + set(e, t, r) { + (e = this._getKeyPrefix(e)), + void 0 === r && (r = this.opts.ttl), + 0 === r && (r = void 0); + const { store: n } = this.opts; + return Promise.resolve() + .then(() => { + const e = 'number' == typeof r ? Date.now() + r : null; + return (t = { value: t, expires: e }), this.opts.serialize(t); + }) + .then((t) => n.set(e, t, r)) + .then(() => !0); + } + delete(e) { + e = this._getKeyPrefix(e); + const { store: t } = this.opts; + return Promise.resolve().then(() => t.delete(e)); + } + clear() { + const { store: e } = this.opts; + return Promise.resolve().then(() => e.clear()); + } + }; + }, + 89112: (e) => { + function t(e) { + var t = new Error("Cannot find module '" + e + "'"); + throw ((t.code = 'MODULE_NOT_FOUND'), t); + } + (t.keys = () => []), (t.resolve = t), (t.id = 89112), (e.exports = t); + }, + 78962: (e, t, r) => { + var n = r(99513)(r(76169), 'DataView'); + e.exports = n; + }, + 72574: (e, t, r) => { + var n = r(31713), + i = r(86688), + o = r(45937), + s = r(5017), + A = r(79457); + function a(e) { + var t = -1, + r = null == e ? 0 : e.length; + for (this.clear(); ++t < r; ) { + var n = e[t]; + this.set(n[0], n[1]); + } + } + (a.prototype.clear = n), + (a.prototype.delete = i), + (a.prototype.get = o), + (a.prototype.has = s), + (a.prototype.set = A), + (e.exports = a); + }, + 29197: (e, t, r) => { + var n = r(14620), + i = r(73682), + o = r(43112), + s = r(90640), + A = r(9380); + function a(e) { + var t = -1, + r = null == e ? 0 : e.length; + for (this.clear(); ++t < r; ) { + var n = e[t]; + this.set(n[0], n[1]); + } + } + (a.prototype.clear = n), + (a.prototype.delete = i), + (a.prototype.get = o), + (a.prototype.has = s), + (a.prototype.set = A), + (e.exports = a); + }, + 63603: (e, t, r) => { + var n = r(99513)(r(76169), 'Map'); + e.exports = n; + }, + 75009: (e, t, r) => { + var n = r(18209), + i = r(89706), + o = r(43786), + s = r(17926), + A = r(87345); + function a(e) { + var t = -1, + r = null == e ? 0 : e.length; + for (this.clear(); ++t < r; ) { + var n = e[t]; + this.set(n[0], n[1]); + } + } + (a.prototype.clear = n), + (a.prototype.delete = i), + (a.prototype.get = o), + (a.prototype.has = s), + (a.prototype.set = A), + (e.exports = a); + }, + 5825: (e, t, r) => { + var n = r(99513)(r(76169), 'Promise'); + e.exports = n; + }, + 43231: (e, t, r) => { + var n = r(99513)(r(76169), 'Set'); + e.exports = n; + }, + 46235: (e, t, r) => { + var n = r(75009), + i = r(74785), + o = r(87760); + function s(e) { + var t = -1, + r = null == e ? 0 : e.length; + for (this.__data__ = new n(); ++t < r; ) this.add(e[t]); + } + (s.prototype.add = s.prototype.push = i), (s.prototype.has = o), (e.exports = s); + }, + 22851: (e, t, r) => { + var n = r(29197), + i = r(35678), + o = r(33336), + s = r(97163), + A = r(43737), + a = r(48548); + function c(e) { + var t = (this.__data__ = new n(e)); + this.size = t.size; + } + (c.prototype.clear = i), + (c.prototype.delete = o), + (c.prototype.get = s), + (c.prototype.has = A), + (c.prototype.set = a), + (e.exports = c); + }, + 69976: (e, t, r) => { + var n = r(76169).Symbol; + e.exports = n; + }, + 2740: (e, t, r) => { + var n = r(76169).Uint8Array; + e.exports = n; + }, + 47063: (e, t, r) => { + var n = r(99513)(r(76169), 'WeakMap'); + e.exports = n; + }, + 66636: (e) => { + e.exports = function (e, t, r) { + switch (r.length) { + case 0: + return e.call(t); + case 1: + return e.call(t, r[0]); + case 2: + return e.call(t, r[0], r[1]); + case 3: + return e.call(t, r[0], r[1], r[2]); + } + return e.apply(t, r); + }; + }, + 33326: (e) => { + e.exports = function (e, t) { + for (var r = -1, n = null == e ? 0 : e.length; ++r < n && !1 !== t(e[r], r, e); ); + return e; + }; + }, + 9073: (e) => { + e.exports = function (e, t) { + for (var r = -1, n = null == e ? 0 : e.length, i = 0, o = []; ++r < n; ) { + var s = e[r]; + t(s, r, e) && (o[i++] = s); + } + return o; + }; + }, + 24066: (e, t, r) => { + var n = r(37872); + e.exports = function (e, t) { + return !!(null == e ? 0 : e.length) && n(e, t, 0) > -1; + }; + }, + 36669: (e) => { + e.exports = function (e, t, r) { + for (var n = -1, i = null == e ? 0 : e.length; ++n < i; ) if (r(t, e[n])) return !0; + return !1; + }; + }, + 11886: (e, t, r) => { + var n = r(7089), + i = r(61771), + o = r(82664), + s = r(10667), + A = r(98041), + a = r(32565), + c = Object.prototype.hasOwnProperty; + e.exports = function (e, t) { + var r = o(e), + u = !r && i(e), + l = !r && !u && s(e), + h = !r && !u && !l && a(e), + g = r || u || l || h, + f = g ? n(e.length, String) : [], + p = f.length; + for (var d in e) + (!t && !c.call(e, d)) || + (g && + ('length' == d || + (l && ('offset' == d || 'parent' == d)) || + (h && ('buffer' == d || 'byteLength' == d || 'byteOffset' == d)) || + A(d, p))) || + f.push(d); + return f; + }; + }, + 60783: (e) => { + e.exports = function (e, t) { + for (var r = -1, n = null == e ? 0 : e.length, i = Array(n); ++r < n; ) + i[r] = t(e[r], r, e); + return i; + }; + }, + 40945: (e) => { + e.exports = function (e, t) { + for (var r = -1, n = t.length, i = e.length; ++r < n; ) e[i + r] = t[r]; + return e; + }; + }, + 66054: (e) => { + e.exports = function (e, t, r, n) { + var i = -1, + o = null == e ? 0 : e.length; + for (n && o && (r = e[++i]); ++i < o; ) r = t(r, e[i], i, e); + return r; + }; + }, + 17765: (e) => { + e.exports = function (e, t) { + for (var r = -1, n = null == e ? 0 : e.length; ++r < n; ) if (t(e[r], r, e)) return !0; + return !1; + }; + }, + 1051: (e) => { + e.exports = function (e) { + return e.split(''); + }; + }, + 11852: (e) => { + var t = /[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g; + e.exports = function (e) { + return e.match(t) || []; + }; + }, + 65759: (e, t, r) => { + var n = r(91198), + i = r(71074), + o = Object.prototype.hasOwnProperty; + e.exports = function (e, t, r) { + var s = e[t]; + (o.call(e, t) && i(s, r) && (void 0 !== r || t in e)) || n(e, t, r); + }; + }, + 39836: (e, t, r) => { + var n = r(71074); + e.exports = function (e, t) { + for (var r = e.length; r--; ) if (n(e[r][0], t)) return r; + return -1; + }; + }, + 28628: (e, t, r) => { + var n = r(75182), + i = r(42185); + e.exports = function (e, t) { + return e && n(t, i(t), e); + }; + }, + 78707: (e, t, r) => { + var n = r(75182), + i = r(24887); + e.exports = function (e, t) { + return e && n(t, i(t), e); + }; + }, + 91198: (e, t, r) => { + var n = r(65); + e.exports = function (e, t, r) { + '__proto__' == t && n + ? n(e, t, { configurable: !0, enumerable: !0, value: r, writable: !0 }) + : (e[t] = r); + }; + }, + 41076: (e, t, r) => { + var n = r(22851), + i = r(33326), + o = r(65759), + s = r(28628), + A = r(78707), + a = r(64266), + c = r(87229), + u = r(23105), + l = r(60741), + h = r(60753), + g = r(64420), + f = r(79435), + p = r(27908), + d = r(37836), + C = r(88438), + E = r(82664), + I = r(10667), + m = r(13349), + y = r(46778), + w = r(33931), + B = r(42185), + Q = {}; + (Q['[object Arguments]'] = Q['[object Array]'] = Q['[object ArrayBuffer]'] = Q[ + '[object DataView]' + ] = Q['[object Boolean]'] = Q['[object Date]'] = Q['[object Float32Array]'] = Q[ + '[object Float64Array]' + ] = Q['[object Int8Array]'] = Q['[object Int16Array]'] = Q['[object Int32Array]'] = Q[ + '[object Map]' + ] = Q['[object Number]'] = Q['[object Object]'] = Q['[object RegExp]'] = Q[ + '[object Set]' + ] = Q['[object String]'] = Q['[object Symbol]'] = Q['[object Uint8Array]'] = Q[ + '[object Uint8ClampedArray]' + ] = Q['[object Uint16Array]'] = Q['[object Uint32Array]'] = !0), + (Q['[object Error]'] = Q['[object Function]'] = Q['[object WeakMap]'] = !1), + (e.exports = function e(t, r, v, D, b, S) { + var k, + x = 1 & r, + F = 2 & r, + M = 4 & r; + if ((v && (k = b ? v(t, D, b, S) : v(t)), void 0 !== k)) return k; + if (!y(t)) return t; + var N = E(t); + if (N) { + if (((k = p(t)), !x)) return c(t, k); + } else { + var R = f(t), + K = '[object Function]' == R || '[object GeneratorFunction]' == R; + if (I(t)) return a(t, x); + if ('[object Object]' == R || '[object Arguments]' == R || (K && !b)) { + if (((k = F || K ? {} : C(t)), !x)) return F ? l(t, A(k, t)) : u(t, s(k, t)); + } else { + if (!Q[R]) return b ? t : {}; + k = d(t, R, x); + } + } + S || (S = new n()); + var L = S.get(t); + if (L) return L; + S.set(t, k), + w(t) + ? t.forEach(function (n) { + k.add(e(n, r, v, n, t, S)); + }) + : m(t) && + t.forEach(function (n, i) { + k.set(i, e(n, r, v, i, t, S)); + }); + var T = M ? (F ? g : h) : F ? keysIn : B, + P = N ? void 0 : T(t); + return ( + i(P || t, function (n, i) { + P && (n = t[(i = n)]), o(k, i, e(n, r, v, i, t, S)); + }), + k + ); + }); + }, + 15178: (e, t, r) => { + var n = r(46778), + i = Object.create, + o = (function () { + function e() {} + return function (t) { + if (!n(t)) return {}; + if (i) return i(t); + e.prototype = t; + var r = new e(); + return (e.prototype = void 0), r; + }; + })(); + e.exports = o; + }, + 50773: (e, t, r) => { + var n = r(62164), + i = r(85115)(n); + e.exports = i; + }, + 3691: (e, t, r) => { + var n = r(50773); + e.exports = function (e, t) { + var r = []; + return ( + n(e, function (e, n, i) { + t(e, n, i) && r.push(e); + }), + r + ); + }; + }, + 72151: (e) => { + e.exports = function (e, t, r, n) { + for (var i = e.length, o = r + (n ? 1 : -1); n ? o-- : ++o < i; ) + if (t(e[o], o, e)) return o; + return -1; + }; + }, + 93274: (e, t, r) => { + var n = r(40945), + i = r(958); + e.exports = function e(t, r, o, s, A) { + var a = -1, + c = t.length; + for (o || (o = i), A || (A = []); ++a < c; ) { + var u = t[a]; + r > 0 && o(u) ? (r > 1 ? e(u, r - 1, o, s, A) : n(A, u)) : s || (A[A.length] = u); + } + return A; + }; + }, + 31689: (e, t, r) => { + var n = r(59907)(); + e.exports = n; + }, + 62164: (e, t, r) => { + var n = r(31689), + i = r(42185); + e.exports = function (e, t) { + return e && n(e, t, i); + }; + }, + 84173: (e, t, r) => { + var n = r(56725), + i = r(49874); + e.exports = function (e, t) { + for (var r = 0, o = (t = n(t, e)).length; null != e && r < o; ) e = e[i(t[r++])]; + return r && r == o ? e : void 0; + }; + }, + 40104: (e, t, r) => { + var n = r(40945), + i = r(82664); + e.exports = function (e, t, r) { + var o = t(e); + return i(e) ? o : n(o, r(e)); + }; + }, + 52502: (e, t, r) => { + var n = r(69976), + i = r(2854), + o = r(87427), + s = n ? n.toStringTag : void 0; + e.exports = function (e) { + return null == e + ? void 0 === e + ? '[object Undefined]' + : '[object Null]' + : s && s in Object(e) + ? i(e) + : o(e); + }; + }, + 95325: (e) => { + var t = Object.prototype.hasOwnProperty; + e.exports = function (e, r) { + return null != e && t.call(e, r); + }; + }, + 3881: (e) => { + e.exports = function (e, t) { + return null != e && t in Object(e); + }; + }, + 37872: (e, t, r) => { + var n = r(72151), + i = r(14564), + o = r(95145); + e.exports = function (e, t, r) { + return t == t ? o(e, t, r) : n(e, i, r); + }; + }, + 76357: (e, t, r) => { + var n = r(52502), + i = r(38496); + e.exports = function (e) { + return i(e) && '[object Arguments]' == n(e); + }; + }, + 74195: (e, t, r) => { + var n = r(48957), + i = r(38496); + e.exports = function e(t, r, o, s, A) { + return ( + t === r || + (null == t || null == r || (!i(t) && !i(r)) ? t != t && r != r : n(t, r, o, s, e, A)) + ); + }; + }, + 48957: (e, t, r) => { + var n = r(22851), + i = r(75500), + o = r(28475), + s = r(50245), + A = r(79435), + a = r(82664), + c = r(10667), + u = r(32565), + l = '[object Object]', + h = Object.prototype.hasOwnProperty; + e.exports = function (e, t, r, g, f, p) { + var d = a(e), + C = a(t), + E = d ? '[object Array]' : A(e), + I = C ? '[object Array]' : A(t), + m = (E = '[object Arguments]' == E ? l : E) == l, + y = (I = '[object Arguments]' == I ? l : I) == l, + w = E == I; + if (w && c(e)) { + if (!c(t)) return !1; + (d = !0), (m = !1); + } + if (w && !m) + return p || (p = new n()), d || u(e) ? i(e, t, r, g, f, p) : o(e, t, E, r, g, f, p); + if (!(1 & r)) { + var B = m && h.call(e, '__wrapped__'), + Q = y && h.call(t, '__wrapped__'); + if (B || Q) { + var v = B ? e.value() : e, + D = Q ? t.value() : t; + return p || (p = new n()), f(v, D, r, g, p); + } + } + return !!w && (p || (p = new n()), s(e, t, r, g, f, p)); + }; + }, + 55994: (e, t, r) => { + var n = r(79435), + i = r(38496); + e.exports = function (e) { + return i(e) && '[object Map]' == n(e); + }; + }, + 66470: (e, t, r) => { + var n = r(22851), + i = r(74195); + e.exports = function (e, t, r, o) { + var s = r.length, + A = s, + a = !o; + if (null == e) return !A; + for (e = Object(e); s--; ) { + var c = r[s]; + if (a && c[2] ? c[1] !== e[c[0]] : !(c[0] in e)) return !1; + } + for (; ++s < A; ) { + var u = (c = r[s])[0], + l = e[u], + h = c[1]; + if (a && c[2]) { + if (void 0 === l && !(u in e)) return !1; + } else { + var g = new n(); + if (o) var f = o(l, h, u, e, t, g); + if (!(void 0 === f ? i(h, l, 3, o, g) : f)) return !1; + } + } + return !0; + }; + }, + 14564: (e) => { + e.exports = function (e) { + return e != e; + }; + }, + 91686: (e, t, r) => { + var n = r(92533), + i = r(15061), + o = r(46778), + s = r(76384), + A = /^\[object .+?Constructor\]$/, + a = Function.prototype, + c = Object.prototype, + u = a.toString, + l = c.hasOwnProperty, + h = RegExp( + '^' + + u + .call(l) + .replace(/[\\^$.*+?()[\]{}|]/g, '\\$&') + .replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + + '$' + ); + e.exports = function (e) { + return !(!o(e) || i(e)) && (n(e) ? h : A).test(s(e)); + }; + }, + 28612: (e, t, r) => { + var n = r(79435), + i = r(38496); + e.exports = function (e) { + return i(e) && '[object Set]' == n(e); + }; + }, + 98998: (e, t, r) => { + var n = r(52502), + i = r(46369), + o = r(38496), + s = {}; + (s['[object Float32Array]'] = s['[object Float64Array]'] = s['[object Int8Array]'] = s[ + '[object Int16Array]' + ] = s['[object Int32Array]'] = s['[object Uint8Array]'] = s[ + '[object Uint8ClampedArray]' + ] = s['[object Uint16Array]'] = s['[object Uint32Array]'] = !0), + (s['[object Arguments]'] = s['[object Array]'] = s['[object ArrayBuffer]'] = s[ + '[object Boolean]' + ] = s['[object DataView]'] = s['[object Date]'] = s['[object Error]'] = s[ + '[object Function]' + ] = s['[object Map]'] = s['[object Number]'] = s['[object Object]'] = s[ + '[object RegExp]' + ] = s['[object Set]'] = s['[object String]'] = s['[object WeakMap]'] = !1), + (e.exports = function (e) { + return o(e) && i(e.length) && !!s[n(e)]; + }); + }, + 42208: (e, t, r) => { + var n = r(96962), + i = r(90348), + o = r(61977), + s = r(82664), + A = r(7430); + e.exports = function (e) { + return 'function' == typeof e + ? e + : null == e + ? o + : 'object' == typeof e + ? s(e) + ? i(e[0], e[1]) + : n(e) + : A(e); + }; + }, + 50994: (e, t, r) => { + var n = r(89513), + i = r(60657), + o = Object.prototype.hasOwnProperty; + e.exports = function (e) { + if (!n(e)) return i(e); + var t = []; + for (var r in Object(e)) o.call(e, r) && 'constructor' != r && t.push(r); + return t; + }; + }, + 8372: (e, t, r) => { + var n = r(46778), + i = r(89513), + o = r(95632), + s = Object.prototype.hasOwnProperty; + e.exports = function (e) { + if (!n(e)) return o(e); + var t = i(e), + r = []; + for (var A in e) ('constructor' != A || (!t && s.call(e, A))) && r.push(A); + return r; + }; + }, + 26309: (e, t, r) => { + var n = r(50773), + i = r(41929); + e.exports = function (e, t) { + var r = -1, + o = i(e) ? Array(e.length) : []; + return ( + n(e, function (e, n, i) { + o[++r] = t(e, n, i); + }), + o + ); + }; + }, + 96962: (e, t, r) => { + var n = r(66470), + i = r(98705), + o = r(12757); + e.exports = function (e) { + var t = i(e); + return 1 == t.length && t[0][2] + ? o(t[0][0], t[0][1]) + : function (r) { + return r === e || n(r, e, t); + }; + }; + }, + 90348: (e, t, r) => { + var n = r(74195), + i = r(44674), + o = r(34878), + s = r(70474), + A = r(20925), + a = r(12757), + c = r(49874); + e.exports = function (e, t) { + return s(e) && A(t) + ? a(c(e), t) + : function (r) { + var s = i(r, e); + return void 0 === s && s === t ? o(r, e) : n(t, s, 3); + }; + }; + }, + 35400: (e) => { + e.exports = function (e) { + return function (t) { + return null == t ? void 0 : t[e]; + }; + }; + }, + 43018: (e, t, r) => { + var n = r(84173); + e.exports = function (e) { + return function (t) { + return n(t, e); + }; + }; + }, + 51587: (e) => { + e.exports = function (e) { + return function (t) { + return null == e ? void 0 : e[t]; + }; + }; + }, + 30383: (e, t, r) => { + var n = r(61977), + i = r(44322), + o = r(3111); + e.exports = function (e, t) { + return o(i(e, t, n), e + ''); + }; + }, + 10624: (e, t, r) => { + var n = r(65759), + i = r(56725), + o = r(98041), + s = r(46778), + A = r(49874); + e.exports = function (e, t, r, a) { + if (!s(e)) return e; + for (var c = -1, u = (t = i(t, e)).length, l = u - 1, h = e; null != h && ++c < u; ) { + var g = A(t[c]), + f = r; + if (c != l) { + var p = h[g]; + void 0 === (f = a ? a(p, g, h) : void 0) && (f = s(p) ? p : o(t[c + 1]) ? [] : {}); + } + n(h, g, f), (h = h[g]); + } + return e; + }; + }, + 4899: (e, t, r) => { + var n = r(4967), + i = r(65), + o = r(61977), + s = i + ? function (e, t) { + return i(e, 'toString', { + configurable: !0, + enumerable: !1, + value: n(t), + writable: !0, + }); + } + : o; + e.exports = s; + }, + 27708: (e) => { + e.exports = function (e, t, r) { + var n = -1, + i = e.length; + t < 0 && (t = -t > i ? 0 : i + t), + (r = r > i ? i : r) < 0 && (r += i), + (i = t > r ? 0 : (r - t) >>> 0), + (t >>>= 0); + for (var o = Array(i); ++n < i; ) o[n] = e[n + t]; + return o; + }; + }, + 96815: (e) => { + e.exports = function (e, t) { + for (var r, n = -1, i = e.length; ++n < i; ) { + var o = t(e[n]); + void 0 !== o && (r = void 0 === r ? o : r + o); + } + return r; + }; + }, + 7089: (e) => { + e.exports = function (e, t) { + for (var r = -1, n = Array(e); ++r < e; ) n[r] = t(r); + return n; + }; + }, + 35: (e, t, r) => { + var n = r(69976), + i = r(60783), + o = r(82664), + s = r(65558), + A = n ? n.prototype : void 0, + a = A ? A.toString : void 0; + e.exports = function e(t) { + if ('string' == typeof t) return t; + if (o(t)) return i(t, e) + ''; + if (s(t)) return a ? a.call(t) : ''; + var r = t + ''; + return '0' == r && 1 / t == -1 / 0 ? '-0' : r; + }; + }, + 73635: (e) => { + e.exports = function (e) { + return function (t) { + return e(t); + }; + }; + }, + 42150: (e, t, r) => { + var n = r(46235), + i = r(24066), + o = r(36669), + s = r(93022), + A = r(17879), + a = r(7442); + e.exports = function (e, t, r) { + var c = -1, + u = i, + l = e.length, + h = !0, + g = [], + f = g; + if (r) (h = !1), (u = o); + else if (l >= 200) { + var p = t ? null : A(e); + if (p) return a(p); + (h = !1), (u = s), (f = new n()); + } else f = t ? [] : g; + e: for (; ++c < l; ) { + var d = e[c], + C = t ? t(d) : d; + if (((d = r || 0 !== d ? d : 0), h && C == C)) { + for (var E = f.length; E--; ) if (f[E] === C) continue e; + t && f.push(C), g.push(d); + } else u(f, C, r) || (f !== g && f.push(C), g.push(d)); + } + return g; + }; + }, + 81622: (e, t, r) => { + var n = r(56725), + i = r(49845), + o = r(37574), + s = r(49874); + e.exports = function (e, t) { + return (t = n(t, e)), null == (e = o(e, t)) || delete e[s(i(t))]; + }; + }, + 18290: (e, t, r) => { + var n = r(60783); + e.exports = function (e, t) { + return n(t, function (t) { + return e[t]; + }); + }; + }, + 93022: (e) => { + e.exports = function (e, t) { + return e.has(t); + }; + }, + 56725: (e, t, r) => { + var n = r(82664), + i = r(70474), + o = r(8689), + s = r(33580); + e.exports = function (e, t) { + return n(e) ? e : i(e, t) ? [e] : o(s(e)); + }; + }, + 92568: (e, t, r) => { + var n = r(27708); + e.exports = function (e, t, r) { + var i = e.length; + return (r = void 0 === r ? i : r), !t && r >= i ? e : n(e, t, r); + }; + }, + 76255: (e, t, r) => { + var n = r(2740); + e.exports = function (e) { + var t = new e.constructor(e.byteLength); + return new n(t).set(new n(e)), t; + }; + }, + 64266: (e, t, r) => { + e = r.nmd(e); + var n = r(76169), + i = t && !t.nodeType && t, + o = i && e && !e.nodeType && e, + s = o && o.exports === i ? n.Buffer : void 0, + A = s ? s.allocUnsafe : void 0; + e.exports = function (e, t) { + if (t) return e.slice(); + var r = e.length, + n = A ? A(r) : new e.constructor(r); + return e.copy(n), n; + }; + }, + 63749: (e, t, r) => { + var n = r(76255); + e.exports = function (e, t) { + var r = t ? n(e.buffer) : e.buffer; + return new e.constructor(r, e.byteOffset, e.byteLength); + }; + }, + 41705: (e) => { + var t = /\w*$/; + e.exports = function (e) { + var r = new e.constructor(e.source, t.exec(e)); + return (r.lastIndex = e.lastIndex), r; + }; + }, + 25791: (e, t, r) => { + var n = r(69976), + i = n ? n.prototype : void 0, + o = i ? i.valueOf : void 0; + e.exports = function (e) { + return o ? Object(o.call(e)) : {}; + }; + }, + 58042: (e, t, r) => { + var n = r(76255); + e.exports = function (e, t) { + var r = t ? n(e.buffer) : e.buffer; + return new e.constructor(r, e.byteOffset, e.length); + }; + }, + 87229: (e) => { + e.exports = function (e, t) { + var r = -1, + n = e.length; + for (t || (t = Array(n)); ++r < n; ) t[r] = e[r]; + return t; + }; + }, + 75182: (e, t, r) => { + var n = r(65759), + i = r(91198); + e.exports = function (e, t, r, o) { + var s = !r; + r || (r = {}); + for (var A = -1, a = t.length; ++A < a; ) { + var c = t[A], + u = o ? o(r[c], e[c], c, r, e) : void 0; + void 0 === u && (u = e[c]), s ? i(r, c, u) : n(r, c, u); + } + return r; + }; + }, + 23105: (e, t, r) => { + var n = r(75182), + i = r(68727); + e.exports = function (e, t) { + return n(e, i(e), t); + }; + }, + 60741: (e, t, r) => { + var n = r(75182), + i = r(35368); + e.exports = function (e, t) { + return n(e, i(e), t); + }; + }, + 14429: (e, t, r) => { + var n = r(76169)['__core-js_shared__']; + e.exports = n; + }, + 27913: (e, t, r) => { + var n = r(30383), + i = r(33193); + e.exports = function (e) { + return n(function (t, r) { + var n = -1, + o = r.length, + s = o > 1 ? r[o - 1] : void 0, + A = o > 2 ? r[2] : void 0; + for ( + s = e.length > 3 && 'function' == typeof s ? (o--, s) : void 0, + A && i(r[0], r[1], A) && ((s = o < 3 ? void 0 : s), (o = 1)), + t = Object(t); + ++n < o; + + ) { + var a = r[n]; + a && e(t, a, n, s); + } + return t; + }); + }; + }, + 85115: (e, t, r) => { + var n = r(41929); + e.exports = function (e, t) { + return function (r, i) { + if (null == r) return r; + if (!n(r)) return e(r, i); + for ( + var o = r.length, s = t ? o : -1, A = Object(r); + (t ? s-- : ++s < o) && !1 !== i(A[s], s, A); + + ); + return r; + }; + }; + }, + 59907: (e) => { + e.exports = function (e) { + return function (t, r, n) { + for (var i = -1, o = Object(t), s = n(t), A = s.length; A--; ) { + var a = s[e ? A : ++i]; + if (!1 === r(o[a], a, o)) break; + } + return t; + }; + }; + }, + 56989: (e, t, r) => { + var n = r(92568), + i = r(93024), + o = r(30475), + s = r(33580); + e.exports = function (e) { + return function (t) { + t = s(t); + var r = i(t) ? o(t) : void 0, + A = r ? r[0] : t.charAt(0), + a = r ? n(r, 1).join('') : t.slice(1); + return A[e]() + a; + }; + }; + }, + 30369: (e, t, r) => { + var n = r(66054), + i = r(68968), + o = r(97684), + s = RegExp("['’]", 'g'); + e.exports = function (e) { + return function (t) { + return n(o(i(t).replace(s, '')), e, ''); + }; + }; + }, + 80937: (e, t, r) => { + var n = r(42208), + i = r(41929), + o = r(42185); + e.exports = function (e) { + return function (t, r, s) { + var A = Object(t); + if (!i(t)) { + var a = n(r, 3); + (t = o(t)), + (r = function (e) { + return a(A[e], e, A); + }); + } + var c = e(t, r, s); + return c > -1 ? A[a ? t[c] : c] : void 0; + }; + }; + }, + 17879: (e, t, r) => { + var n = r(43231), + i = r(34791), + o = r(7442), + s = + n && 1 / o(new n([, -0]))[1] == 1 / 0 + ? function (e) { + return new n(e); + } + : i; + e.exports = s; + }, + 37306: (e, t, r) => { + var n = r(11672); + e.exports = function (e) { + return n(e) ? void 0 : e; + }; + }, + 69922: (e, t, r) => { + var n = r(51587)({ + À: 'A', + Á: 'A', + Â: 'A', + Ã: 'A', + Ä: 'A', + Å: 'A', + à: 'a', + á: 'a', + â: 'a', + ã: 'a', + ä: 'a', + å: 'a', + Ç: 'C', + ç: 'c', + Ð: 'D', + ð: 'd', + È: 'E', + É: 'E', + Ê: 'E', + Ë: 'E', + è: 'e', + é: 'e', + ê: 'e', + ë: 'e', + Ì: 'I', + Í: 'I', + Î: 'I', + Ï: 'I', + ì: 'i', + í: 'i', + î: 'i', + ï: 'i', + Ñ: 'N', + ñ: 'n', + Ò: 'O', + Ó: 'O', + Ô: 'O', + Õ: 'O', + Ö: 'O', + Ø: 'O', + ò: 'o', + ó: 'o', + ô: 'o', + õ: 'o', + ö: 'o', + ø: 'o', + Ù: 'U', + Ú: 'U', + Û: 'U', + Ü: 'U', + ù: 'u', + ú: 'u', + û: 'u', + ü: 'u', + Ý: 'Y', + ý: 'y', + ÿ: 'y', + Æ: 'Ae', + æ: 'ae', + Þ: 'Th', + þ: 'th', + ß: 'ss', + Ā: 'A', + Ă: 'A', + Ą: 'A', + ā: 'a', + ă: 'a', + ą: 'a', + Ć: 'C', + Ĉ: 'C', + Ċ: 'C', + Č: 'C', + ć: 'c', + ĉ: 'c', + ċ: 'c', + č: 'c', + Ď: 'D', + Đ: 'D', + ď: 'd', + đ: 'd', + Ē: 'E', + Ĕ: 'E', + Ė: 'E', + Ę: 'E', + Ě: 'E', + ē: 'e', + ĕ: 'e', + ė: 'e', + ę: 'e', + ě: 'e', + Ĝ: 'G', + Ğ: 'G', + Ġ: 'G', + Ģ: 'G', + ĝ: 'g', + ğ: 'g', + ġ: 'g', + ģ: 'g', + Ĥ: 'H', + Ħ: 'H', + ĥ: 'h', + ħ: 'h', + Ĩ: 'I', + Ī: 'I', + Ĭ: 'I', + Į: 'I', + İ: 'I', + ĩ: 'i', + ī: 'i', + ĭ: 'i', + į: 'i', + ı: 'i', + Ĵ: 'J', + ĵ: 'j', + Ķ: 'K', + ķ: 'k', + ĸ: 'k', + Ĺ: 'L', + Ļ: 'L', + Ľ: 'L', + Ŀ: 'L', + Ł: 'L', + ĺ: 'l', + ļ: 'l', + ľ: 'l', + ŀ: 'l', + ł: 'l', + Ń: 'N', + Ņ: 'N', + Ň: 'N', + Ŋ: 'N', + ń: 'n', + ņ: 'n', + ň: 'n', + ŋ: 'n', + Ō: 'O', + Ŏ: 'O', + Ő: 'O', + ō: 'o', + ŏ: 'o', + ő: 'o', + Ŕ: 'R', + Ŗ: 'R', + Ř: 'R', + ŕ: 'r', + ŗ: 'r', + ř: 'r', + Ś: 'S', + Ŝ: 'S', + Ş: 'S', + Š: 'S', + ś: 's', + ŝ: 's', + ş: 's', + š: 's', + Ţ: 'T', + Ť: 'T', + Ŧ: 'T', + ţ: 't', + ť: 't', + ŧ: 't', + Ũ: 'U', + Ū: 'U', + Ŭ: 'U', + Ů: 'U', + Ű: 'U', + Ų: 'U', + ũ: 'u', + ū: 'u', + ŭ: 'u', + ů: 'u', + ű: 'u', + ų: 'u', + Ŵ: 'W', + ŵ: 'w', + Ŷ: 'Y', + ŷ: 'y', + Ÿ: 'Y', + Ź: 'Z', + Ż: 'Z', + Ž: 'Z', + ź: 'z', + ż: 'z', + ž: 'z', + IJ: 'IJ', + ij: 'ij', + Œ: 'Oe', + œ: 'oe', + ʼn: "'n", + ſ: 's', + }); + e.exports = n; + }, + 65: (e, t, r) => { + var n = r(99513), + i = (function () { + try { + var e = n(Object, 'defineProperty'); + return e({}, '', {}), e; + } catch (e) {} + })(); + e.exports = i; + }, + 75500: (e, t, r) => { + var n = r(46235), + i = r(17765), + o = r(93022); + e.exports = function (e, t, r, s, A, a) { + var c = 1 & r, + u = e.length, + l = t.length; + if (u != l && !(c && l > u)) return !1; + var h = a.get(e); + if (h && a.get(t)) return h == t; + var g = -1, + f = !0, + p = 2 & r ? new n() : void 0; + for (a.set(e, t), a.set(t, e); ++g < u; ) { + var d = e[g], + C = t[g]; + if (s) var E = c ? s(C, d, g, t, e, a) : s(d, C, g, e, t, a); + if (void 0 !== E) { + if (E) continue; + f = !1; + break; + } + if (p) { + if ( + !i(t, function (e, t) { + if (!o(p, t) && (d === e || A(d, e, r, s, a))) return p.push(t); + }) + ) { + f = !1; + break; + } + } else if (d !== C && !A(d, C, r, s, a)) { + f = !1; + break; + } + } + return a.delete(e), a.delete(t), f; + }; + }, + 28475: (e, t, r) => { + var n = r(69976), + i = r(2740), + o = r(71074), + s = r(75500), + A = r(7877), + a = r(7442), + c = n ? n.prototype : void 0, + u = c ? c.valueOf : void 0; + e.exports = function (e, t, r, n, c, l, h) { + switch (r) { + case '[object DataView]': + if (e.byteLength != t.byteLength || e.byteOffset != t.byteOffset) return !1; + (e = e.buffer), (t = t.buffer); + case '[object ArrayBuffer]': + return !(e.byteLength != t.byteLength || !l(new i(e), new i(t))); + case '[object Boolean]': + case '[object Date]': + case '[object Number]': + return o(+e, +t); + case '[object Error]': + return e.name == t.name && e.message == t.message; + case '[object RegExp]': + case '[object String]': + return e == t + ''; + case '[object Map]': + var g = A; + case '[object Set]': + var f = 1 & n; + if ((g || (g = a), e.size != t.size && !f)) return !1; + var p = h.get(e); + if (p) return p == t; + (n |= 2), h.set(e, t); + var d = s(g(e), g(t), n, c, l, h); + return h.delete(e), d; + case '[object Symbol]': + if (u) return u.call(e) == u.call(t); + } + return !1; + }; + }, + 50245: (e, t, r) => { + var n = r(60753), + i = Object.prototype.hasOwnProperty; + e.exports = function (e, t, r, o, s, A) { + var a = 1 & r, + c = n(e), + u = c.length; + if (u != n(t).length && !a) return !1; + for (var l = u; l--; ) { + var h = c[l]; + if (!(a ? h in t : i.call(t, h))) return !1; + } + var g = A.get(e); + if (g && A.get(t)) return g == t; + var f = !0; + A.set(e, t), A.set(t, e); + for (var p = a; ++l < u; ) { + var d = e[(h = c[l])], + C = t[h]; + if (o) var E = a ? o(C, d, h, t, e, A) : o(d, C, h, e, t, A); + if (!(void 0 === E ? d === C || s(d, C, r, o, A) : E)) { + f = !1; + break; + } + p || (p = 'constructor' == h); + } + if (f && !p) { + var I = e.constructor, + m = t.constructor; + I == m || + !('constructor' in e) || + !('constructor' in t) || + ('function' == typeof I && + I instanceof I && + 'function' == typeof m && + m instanceof m) || + (f = !1); + } + return A.delete(e), A.delete(t), f; + }; + }, + 87298: (e, t, r) => { + var n = r(54690), + i = r(44322), + o = r(3111); + e.exports = function (e) { + return o(i(e, void 0, n), e + ''); + }; + }, + 68399: (e) => { + var t = 'object' == typeof global && global && global.Object === Object && global; + e.exports = t; + }, + 60753: (e, t, r) => { + var n = r(40104), + i = r(68727), + o = r(42185); + e.exports = function (e) { + return n(e, o, i); + }; + }, + 64420: (e, t, r) => { + var n = r(40104), + i = r(35368), + o = r(24887); + e.exports = function (e) { + return n(e, o, i); + }; + }, + 59253: (e, t, r) => { + var n = r(69448); + e.exports = function (e, t) { + var r = e.__data__; + return n(t) ? r['string' == typeof t ? 'string' : 'hash'] : r.map; + }; + }, + 98705: (e, t, r) => { + var n = r(20925), + i = r(42185); + e.exports = function (e) { + for (var t = i(e), r = t.length; r--; ) { + var o = t[r], + s = e[o]; + t[r] = [o, s, n(s)]; + } + return t; + }; + }, + 99513: (e, t, r) => { + var n = r(91686), + i = r(98054); + e.exports = function (e, t) { + var r = i(e, t); + return n(r) ? r : void 0; + }; + }, + 41181: (e, t, r) => { + var n = r(64309)(Object.getPrototypeOf, Object); + e.exports = n; + }, + 2854: (e, t, r) => { + var n = r(69976), + i = Object.prototype, + o = i.hasOwnProperty, + s = i.toString, + A = n ? n.toStringTag : void 0; + e.exports = function (e) { + var t = o.call(e, A), + r = e[A]; + try { + e[A] = void 0; + var n = !0; + } catch (e) {} + var i = s.call(e); + return n && (t ? (e[A] = r) : delete e[A]), i; + }; + }, + 68727: (e, t, r) => { + var n = r(9073), + i = r(62162), + o = Object.prototype.propertyIsEnumerable, + s = Object.getOwnPropertySymbols, + A = s + ? function (e) { + return null == e + ? [] + : ((e = Object(e)), + n(s(e), function (t) { + return o.call(e, t); + })); + } + : i; + e.exports = A; + }, + 35368: (e, t, r) => { + var n = r(40945), + i = r(41181), + o = r(68727), + s = r(62162), + A = Object.getOwnPropertySymbols + ? function (e) { + for (var t = []; e; ) n(t, o(e)), (e = i(e)); + return t; + } + : s; + e.exports = A; + }, + 79435: (e, t, r) => { + var n = r(78962), + i = r(63603), + o = r(5825), + s = r(43231), + A = r(47063), + a = r(52502), + c = r(76384), + u = c(n), + l = c(i), + h = c(o), + g = c(s), + f = c(A), + p = a; + ((n && '[object DataView]' != p(new n(new ArrayBuffer(1)))) || + (i && '[object Map]' != p(new i())) || + (o && '[object Promise]' != p(o.resolve())) || + (s && '[object Set]' != p(new s())) || + (A && '[object WeakMap]' != p(new A()))) && + (p = function (e) { + var t = a(e), + r = '[object Object]' == t ? e.constructor : void 0, + n = r ? c(r) : ''; + if (n) + switch (n) { + case u: + return '[object DataView]'; + case l: + return '[object Map]'; + case h: + return '[object Promise]'; + case g: + return '[object Set]'; + case f: + return '[object WeakMap]'; + } + return t; + }), + (e.exports = p); + }, + 98054: (e) => { + e.exports = function (e, t) { + return null == e ? void 0 : e[t]; + }; + }, + 71507: (e, t, r) => { + var n = r(56725), + i = r(61771), + o = r(82664), + s = r(98041), + A = r(46369), + a = r(49874); + e.exports = function (e, t, r) { + for (var c = -1, u = (t = n(t, e)).length, l = !1; ++c < u; ) { + var h = a(t[c]); + if (!(l = null != e && r(e, h))) break; + e = e[h]; + } + return l || ++c != u + ? l + : !!(u = null == e ? 0 : e.length) && A(u) && s(h, u) && (o(e) || i(e)); + }; + }, + 93024: (e) => { + var t = RegExp( + '[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]' + ); + e.exports = function (e) { + return t.test(e); + }; + }, + 60466: (e) => { + var t = /[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/; + e.exports = function (e) { + return t.test(e); + }; + }, + 31713: (e, t, r) => { + var n = r(52437); + e.exports = function () { + (this.__data__ = n ? n(null) : {}), (this.size = 0); + }; + }, + 86688: (e) => { + e.exports = function (e) { + var t = this.has(e) && delete this.__data__[e]; + return (this.size -= t ? 1 : 0), t; + }; + }, + 45937: (e, t, r) => { + var n = r(52437), + i = Object.prototype.hasOwnProperty; + e.exports = function (e) { + var t = this.__data__; + if (n) { + var r = t[e]; + return '__lodash_hash_undefined__' === r ? void 0 : r; + } + return i.call(t, e) ? t[e] : void 0; + }; + }, + 5017: (e, t, r) => { + var n = r(52437), + i = Object.prototype.hasOwnProperty; + e.exports = function (e) { + var t = this.__data__; + return n ? void 0 !== t[e] : i.call(t, e); + }; + }, + 79457: (e, t, r) => { + var n = r(52437); + e.exports = function (e, t) { + var r = this.__data__; + return ( + (this.size += this.has(e) ? 0 : 1), + (r[e] = n && void 0 === t ? '__lodash_hash_undefined__' : t), + this + ); + }; + }, + 27908: (e) => { + var t = Object.prototype.hasOwnProperty; + e.exports = function (e) { + var r = e.length, + n = new e.constructor(r); + return ( + r && + 'string' == typeof e[0] && + t.call(e, 'index') && + ((n.index = e.index), (n.input = e.input)), + n + ); + }; + }, + 37836: (e, t, r) => { + var n = r(76255), + i = r(63749), + o = r(41705), + s = r(25791), + A = r(58042); + e.exports = function (e, t, r) { + var a = e.constructor; + switch (t) { + case '[object ArrayBuffer]': + return n(e); + case '[object Boolean]': + case '[object Date]': + return new a(+e); + case '[object DataView]': + return i(e, r); + case '[object Float32Array]': + case '[object Float64Array]': + case '[object Int8Array]': + case '[object Int16Array]': + case '[object Int32Array]': + case '[object Uint8Array]': + case '[object Uint8ClampedArray]': + case '[object Uint16Array]': + case '[object Uint32Array]': + return A(e, r); + case '[object Map]': + return new a(); + case '[object Number]': + case '[object String]': + return new a(e); + case '[object RegExp]': + return o(e); + case '[object Set]': + return new a(); + case '[object Symbol]': + return s(e); + } + }; + }, + 88438: (e, t, r) => { + var n = r(15178), + i = r(41181), + o = r(89513); + e.exports = function (e) { + return 'function' != typeof e.constructor || o(e) ? {} : n(i(e)); + }; + }, + 958: (e, t, r) => { + var n = r(69976), + i = r(61771), + o = r(82664), + s = n ? n.isConcatSpreadable : void 0; + e.exports = function (e) { + return o(e) || i(e) || !!(s && e && e[s]); + }; + }, + 98041: (e) => { + var t = /^(?:0|[1-9]\d*)$/; + e.exports = function (e, r) { + var n = typeof e; + return ( + !!(r = null == r ? 9007199254740991 : r) && + ('number' == n || ('symbol' != n && t.test(e))) && + e > -1 && + e % 1 == 0 && + e < r + ); + }; + }, + 33193: (e, t, r) => { + var n = r(71074), + i = r(41929), + o = r(98041), + s = r(46778); + e.exports = function (e, t, r) { + if (!s(r)) return !1; + var A = typeof t; + return !!('number' == A ? i(r) && o(t, r.length) : 'string' == A && t in r) && n(r[t], e); + }; + }, + 70474: (e, t, r) => { + var n = r(82664), + i = r(65558), + o = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/, + s = /^\w*$/; + e.exports = function (e, t) { + if (n(e)) return !1; + var r = typeof e; + return ( + !('number' != r && 'symbol' != r && 'boolean' != r && null != e && !i(e)) || + s.test(e) || + !o.test(e) || + (null != t && e in Object(t)) + ); + }; + }, + 69448: (e) => { + e.exports = function (e) { + var t = typeof e; + return 'string' == t || 'number' == t || 'symbol' == t || 'boolean' == t + ? '__proto__' !== e + : null === e; + }; + }, + 15061: (e, t, r) => { + var n, + i = r(14429), + o = (n = /[^.]+$/.exec((i && i.keys && i.keys.IE_PROTO) || '')) + ? 'Symbol(src)_1.' + n + : ''; + e.exports = function (e) { + return !!o && o in e; + }; + }, + 89513: (e) => { + var t = Object.prototype; + e.exports = function (e) { + var r = e && e.constructor; + return e === (('function' == typeof r && r.prototype) || t); + }; + }, + 20925: (e, t, r) => { + var n = r(46778); + e.exports = function (e) { + return e == e && !n(e); + }; + }, + 82262: (e) => { + e.exports = function (e) { + for (var t, r = []; !(t = e.next()).done; ) r.push(t.value); + return r; + }; + }, + 14620: (e) => { + e.exports = function () { + (this.__data__ = []), (this.size = 0); + }; + }, + 73682: (e, t, r) => { + var n = r(39836), + i = Array.prototype.splice; + e.exports = function (e) { + var t = this.__data__, + r = n(t, e); + return !(r < 0) && (r == t.length - 1 ? t.pop() : i.call(t, r, 1), --this.size, !0); + }; + }, + 43112: (e, t, r) => { + var n = r(39836); + e.exports = function (e) { + var t = this.__data__, + r = n(t, e); + return r < 0 ? void 0 : t[r][1]; + }; + }, + 90640: (e, t, r) => { + var n = r(39836); + e.exports = function (e) { + return n(this.__data__, e) > -1; + }; + }, + 9380: (e, t, r) => { + var n = r(39836); + e.exports = function (e, t) { + var r = this.__data__, + i = n(r, e); + return i < 0 ? (++this.size, r.push([e, t])) : (r[i][1] = t), this; + }; + }, + 18209: (e, t, r) => { + var n = r(72574), + i = r(29197), + o = r(63603); + e.exports = function () { + (this.size = 0), + (this.__data__ = { hash: new n(), map: new (o || i)(), string: new n() }); + }; + }, + 89706: (e, t, r) => { + var n = r(59253); + e.exports = function (e) { + var t = n(this, e).delete(e); + return (this.size -= t ? 1 : 0), t; + }; + }, + 43786: (e, t, r) => { + var n = r(59253); + e.exports = function (e) { + return n(this, e).get(e); + }; + }, + 17926: (e, t, r) => { + var n = r(59253); + e.exports = function (e) { + return n(this, e).has(e); + }; + }, + 87345: (e, t, r) => { + var n = r(59253); + e.exports = function (e, t) { + var r = n(this, e), + i = r.size; + return r.set(e, t), (this.size += r.size == i ? 0 : 1), this; + }; + }, + 7877: (e) => { + e.exports = function (e) { + var t = -1, + r = Array(e.size); + return ( + e.forEach(function (e, n) { + r[++t] = [n, e]; + }), + r + ); + }; + }, + 12757: (e) => { + e.exports = function (e, t) { + return function (r) { + return null != r && r[e] === t && (void 0 !== t || e in Object(r)); + }; + }; + }, + 31948: (e, t, r) => { + var n = r(74499); + e.exports = function (e) { + var t = n(e, function (e) { + return 500 === r.size && r.clear(), e; + }), + r = t.cache; + return t; + }; + }, + 52437: (e, t, r) => { + var n = r(99513)(Object, 'create'); + e.exports = n; + }, + 60657: (e, t, r) => { + var n = r(64309)(Object.keys, Object); + e.exports = n; + }, + 95632: (e) => { + e.exports = function (e) { + var t = []; + if (null != e) for (var r in Object(e)) t.push(r); + return t; + }; + }, + 26391: (e, t, r) => { + e = r.nmd(e); + var n = r(68399), + i = t && !t.nodeType && t, + o = i && e && !e.nodeType && e, + s = o && o.exports === i && n.process, + A = (function () { + try { + var e = o && o.require && o.require('util').types; + return e || (s && s.binding && s.binding('util')); + } catch (e) {} + })(); + e.exports = A; + }, + 87427: (e) => { + var t = Object.prototype.toString; + e.exports = function (e) { + return t.call(e); + }; + }, + 64309: (e) => { + e.exports = function (e, t) { + return function (r) { + return e(t(r)); + }; + }; + }, + 44322: (e, t, r) => { + var n = r(66636), + i = Math.max; + e.exports = function (e, t, r) { + return ( + (t = i(void 0 === t ? e.length - 1 : t, 0)), + function () { + for (var o = arguments, s = -1, A = i(o.length - t, 0), a = Array(A); ++s < A; ) + a[s] = o[t + s]; + s = -1; + for (var c = Array(t + 1); ++s < t; ) c[s] = o[s]; + return (c[t] = r(a)), n(e, this, c); + } + ); + }; + }, + 37574: (e, t, r) => { + var n = r(84173), + i = r(27708); + e.exports = function (e, t) { + return t.length < 2 ? e : n(e, i(t, 0, -1)); + }; + }, + 76169: (e, t, r) => { + var n = r(68399), + i = 'object' == typeof self && self && self.Object === Object && self, + o = n || i || Function('return this')(); + e.exports = o; + }, + 74785: (e) => { + e.exports = function (e) { + return this.__data__.set(e, '__lodash_hash_undefined__'), this; + }; + }, + 87760: (e) => { + e.exports = function (e) { + return this.__data__.has(e); + }; + }, + 7442: (e) => { + e.exports = function (e) { + var t = -1, + r = Array(e.size); + return ( + e.forEach(function (e) { + r[++t] = e; + }), + r + ); + }; + }, + 3111: (e, t, r) => { + var n = r(4899), + i = r(19908)(n); + e.exports = i; + }, + 19908: (e) => { + var t = Date.now; + e.exports = function (e) { + var r = 0, + n = 0; + return function () { + var i = t(), + o = 16 - (i - n); + if (((n = i), o > 0)) { + if (++r >= 800) return arguments[0]; + } else r = 0; + return e.apply(void 0, arguments); + }; + }; + }, + 35678: (e, t, r) => { + var n = r(29197); + e.exports = function () { + (this.__data__ = new n()), (this.size = 0); + }; + }, + 33336: (e) => { + e.exports = function (e) { + var t = this.__data__, + r = t.delete(e); + return (this.size = t.size), r; + }; + }, + 97163: (e) => { + e.exports = function (e) { + return this.__data__.get(e); + }; + }, + 43737: (e) => { + e.exports = function (e) { + return this.__data__.has(e); + }; + }, + 48548: (e, t, r) => { + var n = r(29197), + i = r(63603), + o = r(75009); + e.exports = function (e, t) { + var r = this.__data__; + if (r instanceof n) { + var s = r.__data__; + if (!i || s.length < 199) return s.push([e, t]), (this.size = ++r.size), this; + r = this.__data__ = new o(s); + } + return r.set(e, t), (this.size = r.size), this; + }; + }, + 95145: (e) => { + e.exports = function (e, t, r) { + for (var n = r - 1, i = e.length; ++n < i; ) if (e[n] === t) return n; + return -1; + }; + }, + 30475: (e, t, r) => { + var n = r(1051), + i = r(93024), + o = r(297); + e.exports = function (e) { + return i(e) ? o(e) : n(e); + }; + }, + 8689: (e, t, r) => { + var n = r(31948), + i = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g, + o = /\\(\\)?/g, + s = n(function (e) { + var t = []; + return ( + 46 === e.charCodeAt(0) && t.push(''), + e.replace(i, function (e, r, n, i) { + t.push(n ? i.replace(o, '$1') : r || e); + }), + t + ); + }); + e.exports = s; + }, + 49874: (e, t, r) => { + var n = r(65558); + e.exports = function (e) { + if ('string' == typeof e || n(e)) return e; + var t = e + ''; + return '0' == t && 1 / e == -1 / 0 ? '-0' : t; + }; + }, + 76384: (e) => { + var t = Function.prototype.toString; + e.exports = function (e) { + if (null != e) { + try { + return t.call(e); + } catch (e) {} + try { + return e + ''; + } catch (e) {} + } + return ''; + }; + }, + 297: (e) => { + var t = '[\\ud800-\\udfff]', + r = '[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]', + n = '\\ud83c[\\udffb-\\udfff]', + i = '[^\\ud800-\\udfff]', + o = '(?:\\ud83c[\\udde6-\\uddff]){2}', + s = '[\\ud800-\\udbff][\\udc00-\\udfff]', + A = '(?:' + r + '|' + n + ')' + '?', + a = + '[\\ufe0e\\ufe0f]?' + + A + + ('(?:\\u200d(?:' + [i, o, s].join('|') + ')[\\ufe0e\\ufe0f]?' + A + ')*'), + c = '(?:' + [i + r + '?', r, o, s, t].join('|') + ')', + u = RegExp(n + '(?=' + n + ')|' + c + a, 'g'); + e.exports = function (e) { + return e.match(u) || []; + }; + }, + 89887: (e) => { + var t = + '\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000', + r = '[' + t + ']', + n = '\\d+', + i = '[\\u2700-\\u27bf]', + o = '[a-z\\xdf-\\xf6\\xf8-\\xff]', + s = + '[^\\ud800-\\udfff' + + t + + n + + '\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde]', + A = '(?:\\ud83c[\\udde6-\\uddff]){2}', + a = '[\\ud800-\\udbff][\\udc00-\\udfff]', + c = '[A-Z\\xc0-\\xd6\\xd8-\\xde]', + u = '(?:' + o + '|' + s + ')', + l = '(?:' + c + '|' + s + ')', + h = '(?:[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]|\\ud83c[\\udffb-\\udfff])?', + g = + '[\\ufe0e\\ufe0f]?' + + h + + ('(?:\\u200d(?:' + + ['[^\\ud800-\\udfff]', A, a].join('|') + + ')[\\ufe0e\\ufe0f]?' + + h + + ')*'), + f = '(?:' + [i, A, a].join('|') + ')' + g, + p = RegExp( + [ + c + '?' + o + "+(?:['’](?:d|ll|m|re|s|t|ve))?(?=" + [r, c, '$'].join('|') + ')', + l + "+(?:['’](?:D|LL|M|RE|S|T|VE))?(?=" + [r, c + u, '$'].join('|') + ')', + c + '?' + u + "+(?:['’](?:d|ll|m|re|s|t|ve))?", + c + "+(?:['’](?:D|LL|M|RE|S|T|VE))?", + '\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])', + '\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])', + n, + f, + ].join('|'), + 'g' + ); + e.exports = function (e) { + return e.match(p) || []; + }; + }, + 9682: (e, t, r) => { + var n = r(65759), + i = r(75182), + o = r(27913), + s = r(41929), + A = r(89513), + a = r(42185), + c = Object.prototype.hasOwnProperty, + u = o(function (e, t) { + if (A(t) || s(t)) i(t, a(t), e); + else for (var r in t) c.call(t, r) && n(e, r, t[r]); + }); + e.exports = u; + }, + 88863: (e, t, r) => { + var n = r(75182), + i = r(27913), + o = r(24887), + s = i(function (e, t) { + n(t, o(t), e); + }); + e.exports = s; + }, + 89170: (e, t, r) => { + var n = r(61814), + i = r(30369)(function (e, t, r) { + return (t = t.toLowerCase()), e + (r ? n(t) : t); + }); + e.exports = i; + }, + 61814: (e, t, r) => { + var n = r(33580), + i = r(72609); + e.exports = function (e) { + return i(n(e).toLowerCase()); + }; + }, + 22254: (e, t, r) => { + var n = r(41076); + e.exports = function (e) { + return n(e, 4); + }; + }, + 82558: (e, t, r) => { + var n = r(41076); + e.exports = function (e) { + return n(e, 5); + }; + }, + 26052: (e, t, r) => { + var n = r(41076); + e.exports = function (e, t) { + return n(e, 5, (t = 'function' == typeof t ? t : void 0)); + }; + }, + 4967: (e) => { + e.exports = function (e) { + return function () { + return e; + }; + }; + }, + 68968: (e, t, r) => { + var n = r(69922), + i = r(33580), + o = /[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g, + s = RegExp('[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]', 'g'); + e.exports = function (e) { + return (e = i(e)) && e.replace(o, n).replace(s, ''); + }; + }, + 99906: (e, t, r) => { + var n = r(30383), + i = r(71074), + o = r(33193), + s = r(24887), + A = Object.prototype, + a = A.hasOwnProperty, + c = n(function (e, t) { + e = Object(e); + var r = -1, + n = t.length, + c = n > 2 ? t[2] : void 0; + for (c && o(t[0], t[1], c) && (n = 1); ++r < n; ) + for (var u = t[r], l = s(u), h = -1, g = l.length; ++h < g; ) { + var f = l[h], + p = e[f]; + (void 0 === p || (i(p, A[f]) && !a.call(e, f))) && (e[f] = u[f]); + } + return e; + }); + e.exports = c; + }, + 71074: (e) => { + e.exports = function (e, t) { + return e === t || (e != e && t != t); + }; + }, + 94501: (e, t, r) => { + e.exports = r(88863); + }, + 59181: (e, t, r) => { + var n = r(9073), + i = r(3691), + o = r(42208), + s = r(82664); + e.exports = function (e, t) { + return (s(e) ? n : i)(e, o(t, 3)); + }; + }, + 98347: (e, t, r) => { + var n = r(80937)(r(17506)); + e.exports = n; + }, + 17506: (e, t, r) => { + var n = r(72151), + i = r(42208), + o = r(864), + s = Math.max; + e.exports = function (e, t, r) { + var A = null == e ? 0 : e.length; + if (!A) return -1; + var a = null == r ? 0 : o(r); + return a < 0 && (a = s(A + a, 0)), n(e, i(t, 3), a); + }; + }, + 54690: (e, t, r) => { + var n = r(93274); + e.exports = function (e) { + return (null == e ? 0 : e.length) ? n(e, 1) : []; + }; + }, + 44674: (e, t, r) => { + var n = r(84173); + e.exports = function (e, t, r) { + var i = null == e ? void 0 : n(e, t); + return void 0 === i ? r : i; + }; + }, + 15215: (e, t, r) => { + var n = r(95325), + i = r(71507); + e.exports = function (e, t) { + return null != e && i(e, t, n); + }; + }, + 34878: (e, t, r) => { + var n = r(3881), + i = r(71507); + e.exports = function (e, t) { + return null != e && i(e, t, n); + }; + }, + 61977: (e) => { + e.exports = function (e) { + return e; + }; + }, + 61771: (e, t, r) => { + var n = r(76357), + i = r(38496), + o = Object.prototype, + s = o.hasOwnProperty, + A = o.propertyIsEnumerable, + a = n( + (function () { + return arguments; + })() + ) + ? n + : function (e) { + return i(e) && s.call(e, 'callee') && !A.call(e, 'callee'); + }; + e.exports = a; + }, + 82664: (e) => { + var t = Array.isArray; + e.exports = t; + }, + 41929: (e, t, r) => { + var n = r(92533), + i = r(46369); + e.exports = function (e) { + return null != e && i(e.length) && !n(e); + }; + }, + 66807: (e, t, r) => { + var n = r(52502), + i = r(38496); + e.exports = function (e) { + return !0 === e || !1 === e || (i(e) && '[object Boolean]' == n(e)); + }; + }, + 10667: (e, t, r) => { + e = r.nmd(e); + var n = r(76169), + i = r(88988), + o = t && !t.nodeType && t, + s = o && e && !e.nodeType && e, + A = s && s.exports === o ? n.Buffer : void 0, + a = (A ? A.isBuffer : void 0) || i; + e.exports = a; + }, + 92533: (e, t, r) => { + var n = r(52502), + i = r(46778); + e.exports = function (e) { + if (!i(e)) return !1; + var t = n(e); + return ( + '[object Function]' == t || + '[object GeneratorFunction]' == t || + '[object AsyncFunction]' == t || + '[object Proxy]' == t + ); + }; + }, + 46369: (e) => { + e.exports = function (e) { + return 'number' == typeof e && e > -1 && e % 1 == 0 && e <= 9007199254740991; + }; + }, + 13349: (e, t, r) => { + var n = r(55994), + i = r(73635), + o = r(26391), + s = o && o.isMap, + A = s ? i(s) : n; + e.exports = A; + }, + 71044: (e, t, r) => { + var n = r(52502), + i = r(38496); + e.exports = function (e) { + return 'number' == typeof e || (i(e) && '[object Number]' == n(e)); + }; + }, + 46778: (e) => { + e.exports = function (e) { + var t = typeof e; + return null != e && ('object' == t || 'function' == t); + }; + }, + 38496: (e) => { + e.exports = function (e) { + return null != e && 'object' == typeof e; + }; + }, + 11672: (e, t, r) => { + var n = r(52502), + i = r(41181), + o = r(38496), + s = Function.prototype, + A = Object.prototype, + a = s.toString, + c = A.hasOwnProperty, + u = a.call(Object); + e.exports = function (e) { + if (!o(e) || '[object Object]' != n(e)) return !1; + var t = i(e); + if (null === t) return !0; + var r = c.call(t, 'constructor') && t.constructor; + return 'function' == typeof r && r instanceof r && a.call(r) == u; + }; + }, + 33931: (e, t, r) => { + var n = r(28612), + i = r(73635), + o = r(26391), + s = o && o.isSet, + A = s ? i(s) : n; + e.exports = A; + }, + 221: (e, t, r) => { + var n = r(52502), + i = r(82664), + o = r(38496); + e.exports = function (e) { + return 'string' == typeof e || (!i(e) && o(e) && '[object String]' == n(e)); + }; + }, + 65558: (e, t, r) => { + var n = r(52502), + i = r(38496); + e.exports = function (e) { + return 'symbol' == typeof e || (i(e) && '[object Symbol]' == n(e)); + }; + }, + 32565: (e, t, r) => { + var n = r(98998), + i = r(73635), + o = r(26391), + s = o && o.isTypedArray, + A = s ? i(s) : n; + e.exports = A; + }, + 42185: (e, t, r) => { + var n = r(11886), + i = r(50994), + o = r(41929); + e.exports = function (e) { + return o(e) ? n(e) : i(e); + }; + }, + 24887: (e, t, r) => { + var n = r(11886), + i = r(8372), + o = r(41929); + e.exports = function (e) { + return o(e) ? n(e, !0) : i(e); + }; + }, + 49845: (e) => { + e.exports = function (e) { + var t = null == e ? 0 : e.length; + return t ? e[t - 1] : void 0; + }; + }, + 7564: function (e, t, r) { + var n; + /** + * @license + * Lodash + * Copyright OpenJS Foundation and other contributors + * Released under MIT license + * Based on Underscore.js 1.8.3 + * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors + */ (e = r.nmd(e)), + function () { + var i = 'Expected a function', + o = '__lodash_placeholder__', + s = [ + ['ary', 128], + ['bind', 1], + ['bindKey', 2], + ['curry', 8], + ['curryRight', 16], + ['flip', 512], + ['partial', 32], + ['partialRight', 64], + ['rearg', 256], + ], + A = '[object Arguments]', + a = '[object Array]', + c = '[object Boolean]', + u = '[object Date]', + l = '[object Error]', + h = '[object Function]', + g = '[object GeneratorFunction]', + f = '[object Map]', + p = '[object Number]', + d = '[object Object]', + C = '[object RegExp]', + E = '[object Set]', + I = '[object String]', + m = '[object Symbol]', + y = '[object WeakMap]', + w = '[object ArrayBuffer]', + B = '[object DataView]', + Q = '[object Float32Array]', + v = '[object Float64Array]', + D = '[object Int8Array]', + b = '[object Int16Array]', + S = '[object Int32Array]', + k = '[object Uint8Array]', + x = '[object Uint16Array]', + F = '[object Uint32Array]', + M = /\b__p \+= '';/g, + N = /\b(__p \+=) '' \+/g, + R = /(__e\(.*?\)|\b__t\)) \+\n'';/g, + K = /&(?:amp|lt|gt|quot|#39);/g, + L = /[&<>"']/g, + T = RegExp(K.source), + P = RegExp(L.source), + U = /<%-([\s\S]+?)%>/g, + _ = /<%([\s\S]+?)%>/g, + O = /<%=([\s\S]+?)%>/g, + j = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/, + Y = /^\w*$/, + G = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g, + J = /[\\^$.*+?()[\]{}|]/g, + H = RegExp(J.source), + q = /^\s+|\s+$/g, + z = /^\s+/, + W = /\s+$/, + V = /\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/, + X = /\{\n\/\* \[wrapped with (.+)\] \*/, + Z = /,? & /, + $ = /[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g, + ee = /\\(\\)?/g, + te = /\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g, + re = /\w*$/, + ne = /^[-+]0x[0-9a-f]+$/i, + ie = /^0b[01]+$/i, + oe = /^\[object .+?Constructor\]$/, + se = /^0o[0-7]+$/i, + Ae = /^(?:0|[1-9]\d*)$/, + ae = /[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g, + ce = /($^)/, + ue = /['\n\r\u2028\u2029\\]/g, + le = '\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff', + he = + '\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000', + ge = '[\\ud800-\\udfff]', + fe = '[' + he + ']', + pe = '[' + le + ']', + de = '\\d+', + Ce = '[\\u2700-\\u27bf]', + Ee = '[a-z\\xdf-\\xf6\\xf8-\\xff]', + Ie = + '[^\\ud800-\\udfff' + + he + + de + + '\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde]', + me = '\\ud83c[\\udffb-\\udfff]', + ye = '[^\\ud800-\\udfff]', + we = '(?:\\ud83c[\\udde6-\\uddff]){2}', + Be = '[\\ud800-\\udbff][\\udc00-\\udfff]', + Qe = '[A-Z\\xc0-\\xd6\\xd8-\\xde]', + ve = '(?:' + Ee + '|' + Ie + ')', + De = '(?:' + Qe + '|' + Ie + ')', + be = '(?:' + pe + '|' + me + ')' + '?', + Se = + '[\\ufe0e\\ufe0f]?' + + be + + ('(?:\\u200d(?:' + [ye, we, Be].join('|') + ')[\\ufe0e\\ufe0f]?' + be + ')*'), + ke = '(?:' + [Ce, we, Be].join('|') + ')' + Se, + xe = '(?:' + [ye + pe + '?', pe, we, Be, ge].join('|') + ')', + Fe = RegExp("['’]", 'g'), + Me = RegExp(pe, 'g'), + Ne = RegExp(me + '(?=' + me + ')|' + xe + Se, 'g'), + Re = RegExp( + [ + Qe + + '?' + + Ee + + "+(?:['’](?:d|ll|m|re|s|t|ve))?(?=" + + [fe, Qe, '$'].join('|') + + ')', + De + "+(?:['’](?:D|LL|M|RE|S|T|VE))?(?=" + [fe, Qe + ve, '$'].join('|') + ')', + Qe + '?' + ve + "+(?:['’](?:d|ll|m|re|s|t|ve))?", + Qe + "+(?:['’](?:D|LL|M|RE|S|T|VE))?", + '\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])', + '\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])', + de, + ke, + ].join('|'), + 'g' + ), + Ke = RegExp('[\\u200d\\ud800-\\udfff' + le + '\\ufe0e\\ufe0f]'), + Le = /[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/, + Te = [ + 'Array', + 'Buffer', + 'DataView', + 'Date', + 'Error', + 'Float32Array', + 'Float64Array', + 'Function', + 'Int8Array', + 'Int16Array', + 'Int32Array', + 'Map', + 'Math', + 'Object', + 'Promise', + 'RegExp', + 'Set', + 'String', + 'Symbol', + 'TypeError', + 'Uint8Array', + 'Uint8ClampedArray', + 'Uint16Array', + 'Uint32Array', + 'WeakMap', + '_', + 'clearTimeout', + 'isFinite', + 'parseInt', + 'setTimeout', + ], + Pe = -1, + Ue = {}; + (Ue[Q] = Ue[v] = Ue[D] = Ue[b] = Ue[S] = Ue[k] = Ue['[object Uint8ClampedArray]'] = Ue[ + x + ] = Ue[F] = !0), + (Ue[A] = Ue[a] = Ue[w] = Ue[c] = Ue[B] = Ue[u] = Ue[l] = Ue[h] = Ue[f] = Ue[p] = Ue[ + d + ] = Ue[C] = Ue[E] = Ue[I] = Ue[y] = !1); + var _e = {}; + (_e[A] = _e[a] = _e[w] = _e[B] = _e[c] = _e[u] = _e[Q] = _e[v] = _e[D] = _e[b] = _e[ + S + ] = _e[f] = _e[p] = _e[d] = _e[C] = _e[E] = _e[I] = _e[m] = _e[k] = _e[ + '[object Uint8ClampedArray]' + ] = _e[x] = _e[F] = !0), + (_e[l] = _e[h] = _e[y] = !1); + var Oe = { + '\\': '\\', + "'": "'", + '\n': 'n', + '\r': 'r', + '\u2028': 'u2028', + '\u2029': 'u2029', + }, + je = parseFloat, + Ye = parseInt, + Ge = 'object' == typeof global && global && global.Object === Object && global, + Je = 'object' == typeof self && self && self.Object === Object && self, + He = Ge || Je || Function('return this')(), + qe = t && !t.nodeType && t, + ze = qe && e && !e.nodeType && e, + We = ze && ze.exports === qe, + Ve = We && Ge.process, + Xe = (function () { + try { + var e = ze && ze.require && ze.require('util').types; + return e || (Ve && Ve.binding && Ve.binding('util')); + } catch (e) {} + })(), + Ze = Xe && Xe.isArrayBuffer, + $e = Xe && Xe.isDate, + et = Xe && Xe.isMap, + tt = Xe && Xe.isRegExp, + rt = Xe && Xe.isSet, + nt = Xe && Xe.isTypedArray; + function it(e, t, r) { + switch (r.length) { + case 0: + return e.call(t); + case 1: + return e.call(t, r[0]); + case 2: + return e.call(t, r[0], r[1]); + case 3: + return e.call(t, r[0], r[1], r[2]); + } + return e.apply(t, r); + } + function ot(e, t, r, n) { + for (var i = -1, o = null == e ? 0 : e.length; ++i < o; ) { + var s = e[i]; + t(n, s, r(s), e); + } + return n; + } + function st(e, t) { + for (var r = -1, n = null == e ? 0 : e.length; ++r < n && !1 !== t(e[r], r, e); ); + return e; + } + function At(e, t) { + for (var r = null == e ? 0 : e.length; r-- && !1 !== t(e[r], r, e); ); + return e; + } + function at(e, t) { + for (var r = -1, n = null == e ? 0 : e.length; ++r < n; ) + if (!t(e[r], r, e)) return !1; + return !0; + } + function ct(e, t) { + for (var r = -1, n = null == e ? 0 : e.length, i = 0, o = []; ++r < n; ) { + var s = e[r]; + t(s, r, e) && (o[i++] = s); + } + return o; + } + function ut(e, t) { + return !!(null == e ? 0 : e.length) && mt(e, t, 0) > -1; + } + function lt(e, t, r) { + for (var n = -1, i = null == e ? 0 : e.length; ++n < i; ) if (r(t, e[n])) return !0; + return !1; + } + function ht(e, t) { + for (var r = -1, n = null == e ? 0 : e.length, i = Array(n); ++r < n; ) + i[r] = t(e[r], r, e); + return i; + } + function gt(e, t) { + for (var r = -1, n = t.length, i = e.length; ++r < n; ) e[i + r] = t[r]; + return e; + } + function ft(e, t, r, n) { + var i = -1, + o = null == e ? 0 : e.length; + for (n && o && (r = e[++i]); ++i < o; ) r = t(r, e[i], i, e); + return r; + } + function pt(e, t, r, n) { + var i = null == e ? 0 : e.length; + for (n && i && (r = e[--i]); i--; ) r = t(r, e[i], i, e); + return r; + } + function dt(e, t) { + for (var r = -1, n = null == e ? 0 : e.length; ++r < n; ) + if (t(e[r], r, e)) return !0; + return !1; + } + var Ct = Qt('length'); + function Et(e, t, r) { + var n; + return ( + r(e, function (e, r, i) { + if (t(e, r, i)) return (n = r), !1; + }), + n + ); + } + function It(e, t, r, n) { + for (var i = e.length, o = r + (n ? 1 : -1); n ? o-- : ++o < i; ) + if (t(e[o], o, e)) return o; + return -1; + } + function mt(e, t, r) { + return t == t + ? (function (e, t, r) { + var n = r - 1, + i = e.length; + for (; ++n < i; ) if (e[n] === t) return n; + return -1; + })(e, t, r) + : It(e, wt, r); + } + function yt(e, t, r, n) { + for (var i = r - 1, o = e.length; ++i < o; ) if (n(e[i], t)) return i; + return -1; + } + function wt(e) { + return e != e; + } + function Bt(e, t) { + var r = null == e ? 0 : e.length; + return r ? bt(e, t) / r : NaN; + } + function Qt(e) { + return function (t) { + return null == t ? void 0 : t[e]; + }; + } + function vt(e) { + return function (t) { + return null == e ? void 0 : e[t]; + }; + } + function Dt(e, t, r, n, i) { + return ( + i(e, function (e, i, o) { + r = n ? ((n = !1), e) : t(r, e, i, o); + }), + r + ); + } + function bt(e, t) { + for (var r, n = -1, i = e.length; ++n < i; ) { + var o = t(e[n]); + void 0 !== o && (r = void 0 === r ? o : r + o); + } + return r; + } + function St(e, t) { + for (var r = -1, n = Array(e); ++r < e; ) n[r] = t(r); + return n; + } + function kt(e) { + return function (t) { + return e(t); + }; + } + function xt(e, t) { + return ht(t, function (t) { + return e[t]; + }); + } + function Ft(e, t) { + return e.has(t); + } + function Mt(e, t) { + for (var r = -1, n = e.length; ++r < n && mt(t, e[r], 0) > -1; ); + return r; + } + function Nt(e, t) { + for (var r = e.length; r-- && mt(t, e[r], 0) > -1; ); + return r; + } + function Rt(e, t) { + for (var r = e.length, n = 0; r--; ) e[r] === t && ++n; + return n; + } + var Kt = vt({ + À: 'A', + Á: 'A', + Â: 'A', + Ã: 'A', + Ä: 'A', + Å: 'A', + à: 'a', + á: 'a', + â: 'a', + ã: 'a', + ä: 'a', + å: 'a', + Ç: 'C', + ç: 'c', + Ð: 'D', + ð: 'd', + È: 'E', + É: 'E', + Ê: 'E', + Ë: 'E', + è: 'e', + é: 'e', + ê: 'e', + ë: 'e', + Ì: 'I', + Í: 'I', + Î: 'I', + Ï: 'I', + ì: 'i', + í: 'i', + î: 'i', + ï: 'i', + Ñ: 'N', + ñ: 'n', + Ò: 'O', + Ó: 'O', + Ô: 'O', + Õ: 'O', + Ö: 'O', + Ø: 'O', + ò: 'o', + ó: 'o', + ô: 'o', + õ: 'o', + ö: 'o', + ø: 'o', + Ù: 'U', + Ú: 'U', + Û: 'U', + Ü: 'U', + ù: 'u', + ú: 'u', + û: 'u', + ü: 'u', + Ý: 'Y', + ý: 'y', + ÿ: 'y', + Æ: 'Ae', + æ: 'ae', + Þ: 'Th', + þ: 'th', + ß: 'ss', + Ā: 'A', + Ă: 'A', + Ą: 'A', + ā: 'a', + ă: 'a', + ą: 'a', + Ć: 'C', + Ĉ: 'C', + Ċ: 'C', + Č: 'C', + ć: 'c', + ĉ: 'c', + ċ: 'c', + č: 'c', + Ď: 'D', + Đ: 'D', + ď: 'd', + đ: 'd', + Ē: 'E', + Ĕ: 'E', + Ė: 'E', + Ę: 'E', + Ě: 'E', + ē: 'e', + ĕ: 'e', + ė: 'e', + ę: 'e', + ě: 'e', + Ĝ: 'G', + Ğ: 'G', + Ġ: 'G', + Ģ: 'G', + ĝ: 'g', + ğ: 'g', + ġ: 'g', + ģ: 'g', + Ĥ: 'H', + Ħ: 'H', + ĥ: 'h', + ħ: 'h', + Ĩ: 'I', + Ī: 'I', + Ĭ: 'I', + Į: 'I', + İ: 'I', + ĩ: 'i', + ī: 'i', + ĭ: 'i', + į: 'i', + ı: 'i', + Ĵ: 'J', + ĵ: 'j', + Ķ: 'K', + ķ: 'k', + ĸ: 'k', + Ĺ: 'L', + Ļ: 'L', + Ľ: 'L', + Ŀ: 'L', + Ł: 'L', + ĺ: 'l', + ļ: 'l', + ľ: 'l', + ŀ: 'l', + ł: 'l', + Ń: 'N', + Ņ: 'N', + Ň: 'N', + Ŋ: 'N', + ń: 'n', + ņ: 'n', + ň: 'n', + ŋ: 'n', + Ō: 'O', + Ŏ: 'O', + Ő: 'O', + ō: 'o', + ŏ: 'o', + ő: 'o', + Ŕ: 'R', + Ŗ: 'R', + Ř: 'R', + ŕ: 'r', + ŗ: 'r', + ř: 'r', + Ś: 'S', + Ŝ: 'S', + Ş: 'S', + Š: 'S', + ś: 's', + ŝ: 's', + ş: 's', + š: 's', + Ţ: 'T', + Ť: 'T', + Ŧ: 'T', + ţ: 't', + ť: 't', + ŧ: 't', + Ũ: 'U', + Ū: 'U', + Ŭ: 'U', + Ů: 'U', + Ű: 'U', + Ų: 'U', + ũ: 'u', + ū: 'u', + ŭ: 'u', + ů: 'u', + ű: 'u', + ų: 'u', + Ŵ: 'W', + ŵ: 'w', + Ŷ: 'Y', + ŷ: 'y', + Ÿ: 'Y', + Ź: 'Z', + Ż: 'Z', + Ž: 'Z', + ź: 'z', + ż: 'z', + ž: 'z', + IJ: 'IJ', + ij: 'ij', + Œ: 'Oe', + œ: 'oe', + ʼn: "'n", + ſ: 's', + }), + Lt = vt({ '&': '&', '<': '<', '>': '>', '"': '"', "'": ''' }); + function Tt(e) { + return '\\' + Oe[e]; + } + function Pt(e) { + return Ke.test(e); + } + function Ut(e) { + var t = -1, + r = Array(e.size); + return ( + e.forEach(function (e, n) { + r[++t] = [n, e]; + }), + r + ); + } + function _t(e, t) { + return function (r) { + return e(t(r)); + }; + } + function Ot(e, t) { + for (var r = -1, n = e.length, i = 0, s = []; ++r < n; ) { + var A = e[r]; + (A !== t && A !== o) || ((e[r] = o), (s[i++] = r)); + } + return s; + } + function jt(e) { + var t = -1, + r = Array(e.size); + return ( + e.forEach(function (e) { + r[++t] = e; + }), + r + ); + } + function Yt(e) { + var t = -1, + r = Array(e.size); + return ( + e.forEach(function (e) { + r[++t] = [e, e]; + }), + r + ); + } + function Gt(e) { + return Pt(e) + ? (function (e) { + var t = (Ne.lastIndex = 0); + for (; Ne.test(e); ) ++t; + return t; + })(e) + : Ct(e); + } + function Jt(e) { + return Pt(e) + ? (function (e) { + return e.match(Ne) || []; + })(e) + : (function (e) { + return e.split(''); + })(e); + } + var Ht = vt({ '&': '&', '<': '<', '>': '>', '"': '"', ''': "'" }); + var qt = (function e(t) { + var r, + n = (t = null == t ? He : qt.defaults(He.Object(), t, qt.pick(He, Te))).Array, + le = t.Date, + he = t.Error, + ge = t.Function, + fe = t.Math, + pe = t.Object, + de = t.RegExp, + Ce = t.String, + Ee = t.TypeError, + Ie = n.prototype, + me = ge.prototype, + ye = pe.prototype, + we = t['__core-js_shared__'], + Be = me.toString, + Qe = ye.hasOwnProperty, + ve = 0, + De = (r = /[^.]+$/.exec((we && we.keys && we.keys.IE_PROTO) || '')) + ? 'Symbol(src)_1.' + r + : '', + be = ye.toString, + Se = Be.call(pe), + ke = He._, + xe = de( + '^' + + Be.call(Qe) + .replace(J, '\\$&') + .replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + + '$' + ), + Ne = We ? t.Buffer : void 0, + Ke = t.Symbol, + Oe = t.Uint8Array, + Ge = Ne ? Ne.allocUnsafe : void 0, + Je = _t(pe.getPrototypeOf, pe), + qe = pe.create, + ze = ye.propertyIsEnumerable, + Ve = Ie.splice, + Xe = Ke ? Ke.isConcatSpreadable : void 0, + Ct = Ke ? Ke.iterator : void 0, + vt = Ke ? Ke.toStringTag : void 0, + zt = (function () { + try { + var e = $i(pe, 'defineProperty'); + return e({}, '', {}), e; + } catch (e) {} + })(), + Wt = t.clearTimeout !== He.clearTimeout && t.clearTimeout, + Vt = le && le.now !== He.Date.now && le.now, + Xt = t.setTimeout !== He.setTimeout && t.setTimeout, + Zt = fe.ceil, + $t = fe.floor, + er = pe.getOwnPropertySymbols, + tr = Ne ? Ne.isBuffer : void 0, + rr = t.isFinite, + nr = Ie.join, + ir = _t(pe.keys, pe), + or = fe.max, + sr = fe.min, + Ar = le.now, + ar = t.parseInt, + cr = fe.random, + ur = Ie.reverse, + lr = $i(t, 'DataView'), + hr = $i(t, 'Map'), + gr = $i(t, 'Promise'), + fr = $i(t, 'Set'), + pr = $i(t, 'WeakMap'), + dr = $i(pe, 'create'), + Cr = pr && new pr(), + Er = {}, + Ir = bo(lr), + mr = bo(hr), + yr = bo(gr), + wr = bo(fr), + Br = bo(pr), + Qr = Ke ? Ke.prototype : void 0, + vr = Qr ? Qr.valueOf : void 0, + Dr = Qr ? Qr.toString : void 0; + function br(e) { + if (Gs(e) && !Ns(e) && !(e instanceof Fr)) { + if (e instanceof xr) return e; + if (Qe.call(e, '__wrapped__')) return So(e); + } + return new xr(e); + } + var Sr = (function () { + function e() {} + return function (t) { + if (!Ys(t)) return {}; + if (qe) return qe(t); + e.prototype = t; + var r = new e(); + return (e.prototype = void 0), r; + }; + })(); + function kr() {} + function xr(e, t) { + (this.__wrapped__ = e), + (this.__actions__ = []), + (this.__chain__ = !!t), + (this.__index__ = 0), + (this.__values__ = void 0); + } + function Fr(e) { + (this.__wrapped__ = e), + (this.__actions__ = []), + (this.__dir__ = 1), + (this.__filtered__ = !1), + (this.__iteratees__ = []), + (this.__takeCount__ = 4294967295), + (this.__views__ = []); + } + function Mr(e) { + var t = -1, + r = null == e ? 0 : e.length; + for (this.clear(); ++t < r; ) { + var n = e[t]; + this.set(n[0], n[1]); + } + } + function Nr(e) { + var t = -1, + r = null == e ? 0 : e.length; + for (this.clear(); ++t < r; ) { + var n = e[t]; + this.set(n[0], n[1]); + } + } + function Rr(e) { + var t = -1, + r = null == e ? 0 : e.length; + for (this.clear(); ++t < r; ) { + var n = e[t]; + this.set(n[0], n[1]); + } + } + function Kr(e) { + var t = -1, + r = null == e ? 0 : e.length; + for (this.__data__ = new Rr(); ++t < r; ) this.add(e[t]); + } + function Lr(e) { + var t = (this.__data__ = new Nr(e)); + this.size = t.size; + } + function Tr(e, t) { + var r = Ns(e), + n = !r && Ms(e), + i = !r && !n && Ts(e), + o = !r && !n && !i && Zs(e), + s = r || n || i || o, + A = s ? St(e.length, Ce) : [], + a = A.length; + for (var c in e) + (!t && !Qe.call(e, c)) || + (s && + ('length' == c || + (i && ('offset' == c || 'parent' == c)) || + (o && ('buffer' == c || 'byteLength' == c || 'byteOffset' == c)) || + so(c, a))) || + A.push(c); + return A; + } + function Pr(e) { + var t = e.length; + return t ? e[Ln(0, t - 1)] : void 0; + } + function Ur(e, t) { + return Qo(Ci(e), zr(t, 0, e.length)); + } + function _r(e) { + return Qo(Ci(e)); + } + function Or(e, t, r) { + ((void 0 !== r && !ks(e[t], r)) || (void 0 === r && !(t in e))) && Hr(e, t, r); + } + function jr(e, t, r) { + var n = e[t]; + (Qe.call(e, t) && ks(n, r) && (void 0 !== r || t in e)) || Hr(e, t, r); + } + function Yr(e, t) { + for (var r = e.length; r--; ) if (ks(e[r][0], t)) return r; + return -1; + } + function Gr(e, t, r, n) { + return ( + $r(e, function (e, i, o) { + t(n, e, r(e), o); + }), + n + ); + } + function Jr(e, t) { + return e && Ei(t, mA(t), e); + } + function Hr(e, t, r) { + '__proto__' == t && zt + ? zt(e, t, { configurable: !0, enumerable: !0, value: r, writable: !0 }) + : (e[t] = r); + } + function qr(e, t) { + for (var r = -1, i = t.length, o = n(i), s = null == e; ++r < i; ) + o[r] = s ? void 0 : pA(e, t[r]); + return o; + } + function zr(e, t, r) { + return ( + e == e && + (void 0 !== r && (e = e <= r ? e : r), void 0 !== t && (e = e >= t ? e : t)), + e + ); + } + function Wr(e, t, r, n, i, o) { + var s, + a = 1 & t, + l = 2 & t, + y = 4 & t; + if ((r && (s = i ? r(e, n, i, o) : r(e)), void 0 !== s)) return s; + if (!Ys(e)) return e; + var M = Ns(e); + if (M) { + if ( + ((s = (function (e) { + var t = e.length, + r = new e.constructor(t); + t && + 'string' == typeof e[0] && + Qe.call(e, 'index') && + ((r.index = e.index), (r.input = e.input)); + return r; + })(e)), + !a) + ) + return Ci(e, s); + } else { + var N = ro(e), + R = N == h || N == g; + if (Ts(e)) return li(e, a); + if (N == d || N == A || (R && !i)) { + if (((s = l || R ? {} : io(e)), !a)) + return l + ? (function (e, t) { + return Ei(e, to(e), t); + })( + e, + (function (e, t) { + return e && Ei(t, yA(t), e); + })(s, e) + ) + : (function (e, t) { + return Ei(e, eo(e), t); + })(e, Jr(s, e)); + } else { + if (!_e[N]) return i ? e : {}; + s = (function (e, t, r) { + var n = e.constructor; + switch (t) { + case w: + return hi(e); + case c: + case u: + return new n(+e); + case B: + return (function (e, t) { + var r = t ? hi(e.buffer) : e.buffer; + return new e.constructor(r, e.byteOffset, e.byteLength); + })(e, r); + case Q: + case v: + case D: + case b: + case S: + case k: + case '[object Uint8ClampedArray]': + case x: + case F: + return gi(e, r); + case f: + return new n(); + case p: + case I: + return new n(e); + case C: + return (function (e) { + var t = new e.constructor(e.source, re.exec(e)); + return (t.lastIndex = e.lastIndex), t; + })(e); + case E: + return new n(); + case m: + return (i = e), vr ? pe(vr.call(i)) : {}; + } + var i; + })(e, N, a); + } + } + o || (o = new Lr()); + var K = o.get(e); + if (K) return K; + o.set(e, s), + Ws(e) + ? e.forEach(function (n) { + s.add(Wr(n, t, r, n, e, o)); + }) + : Js(e) && + e.forEach(function (n, i) { + s.set(i, Wr(n, t, r, i, e, o)); + }); + var L = M ? void 0 : (y ? (l ? Hi : Ji) : l ? yA : mA)(e); + return ( + st(L || e, function (n, i) { + L && (n = e[(i = n)]), jr(s, i, Wr(n, t, r, i, e, o)); + }), + s + ); + } + function Vr(e, t, r) { + var n = r.length; + if (null == e) return !n; + for (e = pe(e); n--; ) { + var i = r[n], + o = t[i], + s = e[i]; + if ((void 0 === s && !(i in e)) || !o(s)) return !1; + } + return !0; + } + function Xr(e, t, r) { + if ('function' != typeof e) throw new Ee(i); + return mo(function () { + e.apply(void 0, r); + }, t); + } + function Zr(e, t, r, n) { + var i = -1, + o = ut, + s = !0, + A = e.length, + a = [], + c = t.length; + if (!A) return a; + r && (t = ht(t, kt(r))), + n + ? ((o = lt), (s = !1)) + : t.length >= 200 && ((o = Ft), (s = !1), (t = new Kr(t))); + e: for (; ++i < A; ) { + var u = e[i], + l = null == r ? u : r(u); + if (((u = n || 0 !== u ? u : 0), s && l == l)) { + for (var h = c; h--; ) if (t[h] === l) continue e; + a.push(u); + } else o(t, l, n) || a.push(u); + } + return a; + } + (br.templateSettings = { + escape: U, + evaluate: _, + interpolate: O, + variable: '', + imports: { _: br }, + }), + (br.prototype = kr.prototype), + (br.prototype.constructor = br), + (xr.prototype = Sr(kr.prototype)), + (xr.prototype.constructor = xr), + (Fr.prototype = Sr(kr.prototype)), + (Fr.prototype.constructor = Fr), + (Mr.prototype.clear = function () { + (this.__data__ = dr ? dr(null) : {}), (this.size = 0); + }), + (Mr.prototype.delete = function (e) { + var t = this.has(e) && delete this.__data__[e]; + return (this.size -= t ? 1 : 0), t; + }), + (Mr.prototype.get = function (e) { + var t = this.__data__; + if (dr) { + var r = t[e]; + return '__lodash_hash_undefined__' === r ? void 0 : r; + } + return Qe.call(t, e) ? t[e] : void 0; + }), + (Mr.prototype.has = function (e) { + var t = this.__data__; + return dr ? void 0 !== t[e] : Qe.call(t, e); + }), + (Mr.prototype.set = function (e, t) { + var r = this.__data__; + return ( + (this.size += this.has(e) ? 0 : 1), + (r[e] = dr && void 0 === t ? '__lodash_hash_undefined__' : t), + this + ); + }), + (Nr.prototype.clear = function () { + (this.__data__ = []), (this.size = 0); + }), + (Nr.prototype.delete = function (e) { + var t = this.__data__, + r = Yr(t, e); + return ( + !(r < 0) && (r == t.length - 1 ? t.pop() : Ve.call(t, r, 1), --this.size, !0) + ); + }), + (Nr.prototype.get = function (e) { + var t = this.__data__, + r = Yr(t, e); + return r < 0 ? void 0 : t[r][1]; + }), + (Nr.prototype.has = function (e) { + return Yr(this.__data__, e) > -1; + }), + (Nr.prototype.set = function (e, t) { + var r = this.__data__, + n = Yr(r, e); + return n < 0 ? (++this.size, r.push([e, t])) : (r[n][1] = t), this; + }), + (Rr.prototype.clear = function () { + (this.size = 0), + (this.__data__ = { hash: new Mr(), map: new (hr || Nr)(), string: new Mr() }); + }), + (Rr.prototype.delete = function (e) { + var t = Xi(this, e).delete(e); + return (this.size -= t ? 1 : 0), t; + }), + (Rr.prototype.get = function (e) { + return Xi(this, e).get(e); + }), + (Rr.prototype.has = function (e) { + return Xi(this, e).has(e); + }), + (Rr.prototype.set = function (e, t) { + var r = Xi(this, e), + n = r.size; + return r.set(e, t), (this.size += r.size == n ? 0 : 1), this; + }), + (Kr.prototype.add = Kr.prototype.push = function (e) { + return this.__data__.set(e, '__lodash_hash_undefined__'), this; + }), + (Kr.prototype.has = function (e) { + return this.__data__.has(e); + }), + (Lr.prototype.clear = function () { + (this.__data__ = new Nr()), (this.size = 0); + }), + (Lr.prototype.delete = function (e) { + var t = this.__data__, + r = t.delete(e); + return (this.size = t.size), r; + }), + (Lr.prototype.get = function (e) { + return this.__data__.get(e); + }), + (Lr.prototype.has = function (e) { + return this.__data__.has(e); + }), + (Lr.prototype.set = function (e, t) { + var r = this.__data__; + if (r instanceof Nr) { + var n = r.__data__; + if (!hr || n.length < 199) return n.push([e, t]), (this.size = ++r.size), this; + r = this.__data__ = new Rr(n); + } + return r.set(e, t), (this.size = r.size), this; + }); + var $r = yi(an), + en = yi(cn, !0); + function tn(e, t) { + var r = !0; + return ( + $r(e, function (e, n, i) { + return (r = !!t(e, n, i)); + }), + r + ); + } + function rn(e, t, r) { + for (var n = -1, i = e.length; ++n < i; ) { + var o = e[n], + s = t(o); + if (null != s && (void 0 === A ? s == s && !Xs(s) : r(s, A))) + var A = s, + a = o; + } + return a; + } + function nn(e, t) { + var r = []; + return ( + $r(e, function (e, n, i) { + t(e, n, i) && r.push(e); + }), + r + ); + } + function on(e, t, r, n, i) { + var o = -1, + s = e.length; + for (r || (r = oo), i || (i = []); ++o < s; ) { + var A = e[o]; + t > 0 && r(A) + ? t > 1 + ? on(A, t - 1, r, n, i) + : gt(i, A) + : n || (i[i.length] = A); + } + return i; + } + var sn = wi(), + An = wi(!0); + function an(e, t) { + return e && sn(e, t, mA); + } + function cn(e, t) { + return e && An(e, t, mA); + } + function un(e, t) { + return ct(t, function (t) { + return _s(e[t]); + }); + } + function ln(e, t) { + for (var r = 0, n = (t = Ai(t, e)).length; null != e && r < n; ) e = e[Do(t[r++])]; + return r && r == n ? e : void 0; + } + function hn(e, t, r) { + var n = t(e); + return Ns(e) ? n : gt(n, r(e)); + } + function gn(e) { + return null == e + ? void 0 === e + ? '[object Undefined]' + : '[object Null]' + : vt && vt in pe(e) + ? (function (e) { + var t = Qe.call(e, vt), + r = e[vt]; + try { + e[vt] = void 0; + var n = !0; + } catch (e) {} + var i = be.call(e); + n && (t ? (e[vt] = r) : delete e[vt]); + return i; + })(e) + : (function (e) { + return be.call(e); + })(e); + } + function fn(e, t) { + return e > t; + } + function pn(e, t) { + return null != e && Qe.call(e, t); + } + function dn(e, t) { + return null != e && t in pe(e); + } + function Cn(e, t, r) { + for ( + var i = r ? lt : ut, + o = e[0].length, + s = e.length, + A = s, + a = n(s), + c = 1 / 0, + u = []; + A--; + + ) { + var l = e[A]; + A && t && (l = ht(l, kt(t))), + (c = sr(l.length, c)), + (a[A] = !r && (t || (o >= 120 && l.length >= 120)) ? new Kr(A && l) : void 0); + } + l = e[0]; + var h = -1, + g = a[0]; + e: for (; ++h < o && u.length < c; ) { + var f = l[h], + p = t ? t(f) : f; + if (((f = r || 0 !== f ? f : 0), !(g ? Ft(g, p) : i(u, p, r)))) { + for (A = s; --A; ) { + var d = a[A]; + if (!(d ? Ft(d, p) : i(e[A], p, r))) continue e; + } + g && g.push(p), u.push(f); + } + } + return u; + } + function En(e, t, r) { + var n = null == (e = po(e, (t = Ai(t, e)))) ? e : e[Do(Uo(t))]; + return null == n ? void 0 : it(n, e, r); + } + function In(e) { + return Gs(e) && gn(e) == A; + } + function mn(e, t, r, n, i) { + return ( + e === t || + (null == e || null == t || (!Gs(e) && !Gs(t)) + ? e != e && t != t + : (function (e, t, r, n, i, o) { + var s = Ns(e), + h = Ns(t), + g = s ? a : ro(e), + y = h ? a : ro(t), + Q = (g = g == A ? d : g) == d, + v = (y = y == A ? d : y) == d, + D = g == y; + if (D && Ts(e)) { + if (!Ts(t)) return !1; + (s = !0), (Q = !1); + } + if (D && !Q) + return ( + o || (o = new Lr()), + s || Zs(e) + ? Yi(e, t, r, n, i, o) + : (function (e, t, r, n, i, o, s) { + switch (r) { + case B: + if ( + e.byteLength != t.byteLength || + e.byteOffset != t.byteOffset + ) + return !1; + (e = e.buffer), (t = t.buffer); + case w: + return !( + e.byteLength != t.byteLength || !o(new Oe(e), new Oe(t)) + ); + case c: + case u: + case p: + return ks(+e, +t); + case l: + return e.name == t.name && e.message == t.message; + case C: + case I: + return e == t + ''; + case f: + var A = Ut; + case E: + var a = 1 & n; + if ((A || (A = jt), e.size != t.size && !a)) return !1; + var h = s.get(e); + if (h) return h == t; + (n |= 2), s.set(e, t); + var g = Yi(A(e), A(t), n, i, o, s); + return s.delete(e), g; + case m: + if (vr) return vr.call(e) == vr.call(t); + } + return !1; + })(e, t, g, r, n, i, o) + ); + if (!(1 & r)) { + var b = Q && Qe.call(e, '__wrapped__'), + S = v && Qe.call(t, '__wrapped__'); + if (b || S) { + var k = b ? e.value() : e, + x = S ? t.value() : t; + return o || (o = new Lr()), i(k, x, r, n, o); + } + } + if (!D) return !1; + return ( + o || (o = new Lr()), + (function (e, t, r, n, i, o) { + var s = 1 & r, + A = Ji(e), + a = A.length, + c = Ji(t).length; + if (a != c && !s) return !1; + var u = a; + for (; u--; ) { + var l = A[u]; + if (!(s ? l in t : Qe.call(t, l))) return !1; + } + var h = o.get(e); + if (h && o.get(t)) return h == t; + var g = !0; + o.set(e, t), o.set(t, e); + var f = s; + for (; ++u < a; ) { + l = A[u]; + var p = e[l], + d = t[l]; + if (n) var C = s ? n(d, p, l, t, e, o) : n(p, d, l, e, t, o); + if (!(void 0 === C ? p === d || i(p, d, r, n, o) : C)) { + g = !1; + break; + } + f || (f = 'constructor' == l); + } + if (g && !f) { + var E = e.constructor, + I = t.constructor; + E == I || + !('constructor' in e) || + !('constructor' in t) || + ('function' == typeof E && + E instanceof E && + 'function' == typeof I && + I instanceof I) || + (g = !1); + } + return o.delete(e), o.delete(t), g; + })(e, t, r, n, i, o) + ); + })(e, t, r, n, mn, i)) + ); + } + function yn(e, t, r, n) { + var i = r.length, + o = i, + s = !n; + if (null == e) return !o; + for (e = pe(e); i--; ) { + var A = r[i]; + if (s && A[2] ? A[1] !== e[A[0]] : !(A[0] in e)) return !1; + } + for (; ++i < o; ) { + var a = (A = r[i])[0], + c = e[a], + u = A[1]; + if (s && A[2]) { + if (void 0 === c && !(a in e)) return !1; + } else { + var l = new Lr(); + if (n) var h = n(c, u, a, e, t, l); + if (!(void 0 === h ? mn(u, c, 3, n, l) : h)) return !1; + } + } + return !0; + } + function wn(e) { + return !(!Ys(e) || ((t = e), De && De in t)) && (_s(e) ? xe : oe).test(bo(e)); + var t; + } + function Bn(e) { + return 'function' == typeof e + ? e + : null == e + ? HA + : 'object' == typeof e + ? Ns(e) + ? kn(e[0], e[1]) + : Sn(e) + : ta(e); + } + function Qn(e) { + if (!lo(e)) return ir(e); + var t = []; + for (var r in pe(e)) Qe.call(e, r) && 'constructor' != r && t.push(r); + return t; + } + function vn(e) { + if (!Ys(e)) + return (function (e) { + var t = []; + if (null != e) for (var r in pe(e)) t.push(r); + return t; + })(e); + var t = lo(e), + r = []; + for (var n in e) ('constructor' != n || (!t && Qe.call(e, n))) && r.push(n); + return r; + } + function Dn(e, t) { + return e < t; + } + function bn(e, t) { + var r = -1, + i = Ks(e) ? n(e.length) : []; + return ( + $r(e, function (e, n, o) { + i[++r] = t(e, n, o); + }), + i + ); + } + function Sn(e) { + var t = Zi(e); + return 1 == t.length && t[0][2] + ? go(t[0][0], t[0][1]) + : function (r) { + return r === e || yn(r, e, t); + }; + } + function kn(e, t) { + return ao(e) && ho(t) + ? go(Do(e), t) + : function (r) { + var n = pA(r, e); + return void 0 === n && n === t ? dA(r, e) : mn(t, n, 3); + }; + } + function xn(e, t, r, n, i) { + e !== t && + sn( + t, + function (o, s) { + if ((i || (i = new Lr()), Ys(o))) + !(function (e, t, r, n, i, o, s) { + var A = Eo(e, r), + a = Eo(t, r), + c = s.get(a); + if (c) return void Or(e, r, c); + var u = o ? o(A, a, r + '', e, t, s) : void 0, + l = void 0 === u; + if (l) { + var h = Ns(a), + g = !h && Ts(a), + f = !h && !g && Zs(a); + (u = a), + h || g || f + ? Ns(A) + ? (u = A) + : Ls(A) + ? (u = Ci(A)) + : g + ? ((l = !1), (u = li(a, !0))) + : f + ? ((l = !1), (u = gi(a, !0))) + : (u = []) + : qs(a) || Ms(a) + ? ((u = A), Ms(A) ? (u = sA(A)) : (Ys(A) && !_s(A)) || (u = io(a))) + : (l = !1); + } + l && (s.set(a, u), i(u, a, n, o, s), s.delete(a)); + Or(e, r, u); + })(e, t, s, r, xn, n, i); + else { + var A = n ? n(Eo(e, s), o, s + '', e, t, i) : void 0; + void 0 === A && (A = o), Or(e, s, A); + } + }, + yA + ); + } + function Fn(e, t) { + var r = e.length; + if (r) return so((t += t < 0 ? r : 0), r) ? e[t] : void 0; + } + function Mn(e, t, r) { + var n = -1; + return ( + (t = ht(t.length ? t : [HA], kt(Vi()))), + (function (e, t) { + var r = e.length; + for (e.sort(t); r--; ) e[r] = e[r].value; + return e; + })( + bn(e, function (e, r, i) { + return { + criteria: ht(t, function (t) { + return t(e); + }), + index: ++n, + value: e, + }; + }), + function (e, t) { + return (function (e, t, r) { + var n = -1, + i = e.criteria, + o = t.criteria, + s = i.length, + A = r.length; + for (; ++n < s; ) { + var a = fi(i[n], o[n]); + if (a) { + if (n >= A) return a; + var c = r[n]; + return a * ('desc' == c ? -1 : 1); + } + } + return e.index - t.index; + })(e, t, r); + } + ) + ); + } + function Nn(e, t, r) { + for (var n = -1, i = t.length, o = {}; ++n < i; ) { + var s = t[n], + A = ln(e, s); + r(A, s) && On(o, Ai(s, e), A); + } + return o; + } + function Rn(e, t, r, n) { + var i = n ? yt : mt, + o = -1, + s = t.length, + A = e; + for (e === t && (t = Ci(t)), r && (A = ht(e, kt(r))); ++o < s; ) + for (var a = 0, c = t[o], u = r ? r(c) : c; (a = i(A, u, a, n)) > -1; ) + A !== e && Ve.call(A, a, 1), Ve.call(e, a, 1); + return e; + } + function Kn(e, t) { + for (var r = e ? t.length : 0, n = r - 1; r--; ) { + var i = t[r]; + if (r == n || i !== o) { + var o = i; + so(i) ? Ve.call(e, i, 1) : $n(e, i); + } + } + return e; + } + function Ln(e, t) { + return e + $t(cr() * (t - e + 1)); + } + function Tn(e, t) { + var r = ''; + if (!e || t < 1 || t > 9007199254740991) return r; + do { + t % 2 && (r += e), (t = $t(t / 2)) && (e += e); + } while (t); + return r; + } + function Pn(e, t) { + return yo(fo(e, t, HA), e + ''); + } + function Un(e) { + return Pr(kA(e)); + } + function _n(e, t) { + var r = kA(e); + return Qo(r, zr(t, 0, r.length)); + } + function On(e, t, r, n) { + if (!Ys(e)) return e; + for ( + var i = -1, o = (t = Ai(t, e)).length, s = o - 1, A = e; + null != A && ++i < o; + + ) { + var a = Do(t[i]), + c = r; + if (i != s) { + var u = A[a]; + void 0 === (c = n ? n(u, a, A) : void 0) && + (c = Ys(u) ? u : so(t[i + 1]) ? [] : {}); + } + jr(A, a, c), (A = A[a]); + } + return e; + } + var jn = Cr + ? function (e, t) { + return Cr.set(e, t), e; + } + : HA, + Yn = zt + ? function (e, t) { + return zt(e, 'toString', { + configurable: !0, + enumerable: !1, + value: YA(t), + writable: !0, + }); + } + : HA; + function Gn(e) { + return Qo(kA(e)); + } + function Jn(e, t, r) { + var i = -1, + o = e.length; + t < 0 && (t = -t > o ? 0 : o + t), + (r = r > o ? o : r) < 0 && (r += o), + (o = t > r ? 0 : (r - t) >>> 0), + (t >>>= 0); + for (var s = n(o); ++i < o; ) s[i] = e[i + t]; + return s; + } + function Hn(e, t) { + var r; + return ( + $r(e, function (e, n, i) { + return !(r = t(e, n, i)); + }), + !!r + ); + } + function qn(e, t, r) { + var n = 0, + i = null == e ? n : e.length; + if ('number' == typeof t && t == t && i <= 2147483647) { + for (; n < i; ) { + var o = (n + i) >>> 1, + s = e[o]; + null !== s && !Xs(s) && (r ? s <= t : s < t) ? (n = o + 1) : (i = o); + } + return i; + } + return zn(e, t, HA, r); + } + function zn(e, t, r, n) { + t = r(t); + for ( + var i = 0, + o = null == e ? 0 : e.length, + s = t != t, + A = null === t, + a = Xs(t), + c = void 0 === t; + i < o; + + ) { + var u = $t((i + o) / 2), + l = r(e[u]), + h = void 0 !== l, + g = null === l, + f = l == l, + p = Xs(l); + if (s) var d = n || f; + else + d = c + ? f && (n || h) + : A + ? f && h && (n || !g) + : a + ? f && h && !g && (n || !p) + : !g && !p && (n ? l <= t : l < t); + d ? (i = u + 1) : (o = u); + } + return sr(o, 4294967294); + } + function Wn(e, t) { + for (var r = -1, n = e.length, i = 0, o = []; ++r < n; ) { + var s = e[r], + A = t ? t(s) : s; + if (!r || !ks(A, a)) { + var a = A; + o[i++] = 0 === s ? 0 : s; + } + } + return o; + } + function Vn(e) { + return 'number' == typeof e ? e : Xs(e) ? NaN : +e; + } + function Xn(e) { + if ('string' == typeof e) return e; + if (Ns(e)) return ht(e, Xn) + ''; + if (Xs(e)) return Dr ? Dr.call(e) : ''; + var t = e + ''; + return '0' == t && 1 / e == -1 / 0 ? '-0' : t; + } + function Zn(e, t, r) { + var n = -1, + i = ut, + o = e.length, + s = !0, + A = [], + a = A; + if (r) (s = !1), (i = lt); + else if (o >= 200) { + var c = t ? null : Ti(e); + if (c) return jt(c); + (s = !1), (i = Ft), (a = new Kr()); + } else a = t ? [] : A; + e: for (; ++n < o; ) { + var u = e[n], + l = t ? t(u) : u; + if (((u = r || 0 !== u ? u : 0), s && l == l)) { + for (var h = a.length; h--; ) if (a[h] === l) continue e; + t && a.push(l), A.push(u); + } else i(a, l, r) || (a !== A && a.push(l), A.push(u)); + } + return A; + } + function $n(e, t) { + return null == (e = po(e, (t = Ai(t, e)))) || delete e[Do(Uo(t))]; + } + function ei(e, t, r, n) { + return On(e, t, r(ln(e, t)), n); + } + function ti(e, t, r, n) { + for (var i = e.length, o = n ? i : -1; (n ? o-- : ++o < i) && t(e[o], o, e); ); + return r ? Jn(e, n ? 0 : o, n ? o + 1 : i) : Jn(e, n ? o + 1 : 0, n ? i : o); + } + function ri(e, t) { + var r = e; + return ( + r instanceof Fr && (r = r.value()), + ft( + t, + function (e, t) { + return t.func.apply(t.thisArg, gt([e], t.args)); + }, + r + ) + ); + } + function ni(e, t, r) { + var i = e.length; + if (i < 2) return i ? Zn(e[0]) : []; + for (var o = -1, s = n(i); ++o < i; ) + for (var A = e[o], a = -1; ++a < i; ) + a != o && (s[o] = Zr(s[o] || A, e[a], t, r)); + return Zn(on(s, 1), t, r); + } + function ii(e, t, r) { + for (var n = -1, i = e.length, o = t.length, s = {}; ++n < i; ) { + var A = n < o ? t[n] : void 0; + r(s, e[n], A); + } + return s; + } + function oi(e) { + return Ls(e) ? e : []; + } + function si(e) { + return 'function' == typeof e ? e : HA; + } + function Ai(e, t) { + return Ns(e) ? e : ao(e, t) ? [e] : vo(AA(e)); + } + var ai = Pn; + function ci(e, t, r) { + var n = e.length; + return (r = void 0 === r ? n : r), !t && r >= n ? e : Jn(e, t, r); + } + var ui = + Wt || + function (e) { + return He.clearTimeout(e); + }; + function li(e, t) { + if (t) return e.slice(); + var r = e.length, + n = Ge ? Ge(r) : new e.constructor(r); + return e.copy(n), n; + } + function hi(e) { + var t = new e.constructor(e.byteLength); + return new Oe(t).set(new Oe(e)), t; + } + function gi(e, t) { + var r = t ? hi(e.buffer) : e.buffer; + return new e.constructor(r, e.byteOffset, e.length); + } + function fi(e, t) { + if (e !== t) { + var r = void 0 !== e, + n = null === e, + i = e == e, + o = Xs(e), + s = void 0 !== t, + A = null === t, + a = t == t, + c = Xs(t); + if ( + (!A && !c && !o && e > t) || + (o && s && a && !A && !c) || + (n && s && a) || + (!r && a) || + !i + ) + return 1; + if ( + (!n && !o && !c && e < t) || + (c && r && i && !n && !o) || + (A && r && i) || + (!s && i) || + !a + ) + return -1; + } + return 0; + } + function pi(e, t, r, i) { + for ( + var o = -1, + s = e.length, + A = r.length, + a = -1, + c = t.length, + u = or(s - A, 0), + l = n(c + u), + h = !i; + ++a < c; + + ) + l[a] = t[a]; + for (; ++o < A; ) (h || o < s) && (l[r[o]] = e[o]); + for (; u--; ) l[a++] = e[o++]; + return l; + } + function di(e, t, r, i) { + for ( + var o = -1, + s = e.length, + A = -1, + a = r.length, + c = -1, + u = t.length, + l = or(s - a, 0), + h = n(l + u), + g = !i; + ++o < l; + + ) + h[o] = e[o]; + for (var f = o; ++c < u; ) h[f + c] = t[c]; + for (; ++A < a; ) (g || o < s) && (h[f + r[A]] = e[o++]); + return h; + } + function Ci(e, t) { + var r = -1, + i = e.length; + for (t || (t = n(i)); ++r < i; ) t[r] = e[r]; + return t; + } + function Ei(e, t, r, n) { + var i = !r; + r || (r = {}); + for (var o = -1, s = t.length; ++o < s; ) { + var A = t[o], + a = n ? n(r[A], e[A], A, r, e) : void 0; + void 0 === a && (a = e[A]), i ? Hr(r, A, a) : jr(r, A, a); + } + return r; + } + function Ii(e, t) { + return function (r, n) { + var i = Ns(r) ? ot : Gr, + o = t ? t() : {}; + return i(r, e, Vi(n, 2), o); + }; + } + function mi(e) { + return Pn(function (t, r) { + var n = -1, + i = r.length, + o = i > 1 ? r[i - 1] : void 0, + s = i > 2 ? r[2] : void 0; + for ( + o = e.length > 3 && 'function' == typeof o ? (i--, o) : void 0, + s && Ao(r[0], r[1], s) && ((o = i < 3 ? void 0 : o), (i = 1)), + t = pe(t); + ++n < i; + + ) { + var A = r[n]; + A && e(t, A, n, o); + } + return t; + }); + } + function yi(e, t) { + return function (r, n) { + if (null == r) return r; + if (!Ks(r)) return e(r, n); + for ( + var i = r.length, o = t ? i : -1, s = pe(r); + (t ? o-- : ++o < i) && !1 !== n(s[o], o, s); + + ); + return r; + }; + } + function wi(e) { + return function (t, r, n) { + for (var i = -1, o = pe(t), s = n(t), A = s.length; A--; ) { + var a = s[e ? A : ++i]; + if (!1 === r(o[a], a, o)) break; + } + return t; + }; + } + function Bi(e) { + return function (t) { + var r = Pt((t = AA(t))) ? Jt(t) : void 0, + n = r ? r[0] : t.charAt(0), + i = r ? ci(r, 1).join('') : t.slice(1); + return n[e]() + i; + }; + } + function Qi(e) { + return function (t) { + return ft(_A(MA(t).replace(Fe, '')), e, ''); + }; + } + function vi(e) { + return function () { + var t = arguments; + switch (t.length) { + case 0: + return new e(); + case 1: + return new e(t[0]); + case 2: + return new e(t[0], t[1]); + case 3: + return new e(t[0], t[1], t[2]); + case 4: + return new e(t[0], t[1], t[2], t[3]); + case 5: + return new e(t[0], t[1], t[2], t[3], t[4]); + case 6: + return new e(t[0], t[1], t[2], t[3], t[4], t[5]); + case 7: + return new e(t[0], t[1], t[2], t[3], t[4], t[5], t[6]); + } + var r = Sr(e.prototype), + n = e.apply(r, t); + return Ys(n) ? n : r; + }; + } + function Di(e) { + return function (t, r, n) { + var i = pe(t); + if (!Ks(t)) { + var o = Vi(r, 3); + (t = mA(t)), + (r = function (e) { + return o(i[e], e, i); + }); + } + var s = e(t, r, n); + return s > -1 ? i[o ? t[s] : s] : void 0; + }; + } + function bi(e) { + return Gi(function (t) { + var r = t.length, + n = r, + o = xr.prototype.thru; + for (e && t.reverse(); n--; ) { + var s = t[n]; + if ('function' != typeof s) throw new Ee(i); + if (o && !A && 'wrapper' == zi(s)) var A = new xr([], !0); + } + for (n = A ? n : r; ++n < r; ) { + var a = zi((s = t[n])), + c = 'wrapper' == a ? qi(s) : void 0; + A = + c && co(c[0]) && 424 == c[1] && !c[4].length && 1 == c[9] + ? A[zi(c[0])].apply(A, c[3]) + : 1 == s.length && co(s) + ? A[a]() + : A.thru(s); + } + return function () { + var e = arguments, + n = e[0]; + if (A && 1 == e.length && Ns(n)) return A.plant(n).value(); + for (var i = 0, o = r ? t[i].apply(this, e) : n; ++i < r; ) + o = t[i].call(this, o); + return o; + }; + }); + } + function Si(e, t, r, i, o, s, A, a, c, u) { + var l = 128 & t, + h = 1 & t, + g = 2 & t, + f = 24 & t, + p = 512 & t, + d = g ? void 0 : vi(e); + return function C() { + for (var E = arguments.length, I = n(E), m = E; m--; ) I[m] = arguments[m]; + if (f) + var y = Wi(C), + w = Rt(I, y); + if ( + (i && (I = pi(I, i, o, f)), s && (I = di(I, s, A, f)), (E -= w), f && E < u) + ) { + var B = Ot(I, y); + return Ki(e, t, Si, C.placeholder, r, I, B, a, c, u - E); + } + var Q = h ? r : this, + v = g ? Q[e] : e; + return ( + (E = I.length), + a ? (I = Co(I, a)) : p && E > 1 && I.reverse(), + l && c < E && (I.length = c), + this && this !== He && this instanceof C && (v = d || vi(v)), + v.apply(Q, I) + ); + }; + } + function ki(e, t) { + return function (r, n) { + return (function (e, t, r, n) { + return ( + an(e, function (e, i, o) { + t(n, r(e), i, o); + }), + n + ); + })(r, e, t(n), {}); + }; + } + function xi(e, t) { + return function (r, n) { + var i; + if (void 0 === r && void 0 === n) return t; + if ((void 0 !== r && (i = r), void 0 !== n)) { + if (void 0 === i) return n; + 'string' == typeof r || 'string' == typeof n + ? ((r = Xn(r)), (n = Xn(n))) + : ((r = Vn(r)), (n = Vn(n))), + (i = e(r, n)); + } + return i; + }; + } + function Fi(e) { + return Gi(function (t) { + return ( + (t = ht(t, kt(Vi()))), + Pn(function (r) { + var n = this; + return e(t, function (e) { + return it(e, n, r); + }); + }) + ); + }); + } + function Mi(e, t) { + var r = (t = void 0 === t ? ' ' : Xn(t)).length; + if (r < 2) return r ? Tn(t, e) : t; + var n = Tn(t, Zt(e / Gt(t))); + return Pt(t) ? ci(Jt(n), 0, e).join('') : n.slice(0, e); + } + function Ni(e) { + return function (t, r, i) { + return ( + i && 'number' != typeof i && Ao(t, r, i) && (r = i = void 0), + (t = rA(t)), + void 0 === r ? ((r = t), (t = 0)) : (r = rA(r)), + (function (e, t, r, i) { + for (var o = -1, s = or(Zt((t - e) / (r || 1)), 0), A = n(s); s--; ) + (A[i ? s : ++o] = e), (e += r); + return A; + })(t, r, (i = void 0 === i ? (t < r ? 1 : -1) : rA(i)), e) + ); + }; + } + function Ri(e) { + return function (t, r) { + return ( + ('string' == typeof t && 'string' == typeof r) || ((t = oA(t)), (r = oA(r))), + e(t, r) + ); + }; + } + function Ki(e, t, r, n, i, o, s, A, a, c) { + var u = 8 & t; + (t |= u ? 32 : 64), 4 & (t &= ~(u ? 64 : 32)) || (t &= -4); + var l = [ + e, + t, + i, + u ? o : void 0, + u ? s : void 0, + u ? void 0 : o, + u ? void 0 : s, + A, + a, + c, + ], + h = r.apply(void 0, l); + return co(e) && Io(h, l), (h.placeholder = n), wo(h, e, t); + } + function Li(e) { + var t = fe[e]; + return function (e, r) { + if (((e = oA(e)), (r = null == r ? 0 : sr(nA(r), 292)) && rr(e))) { + var n = (AA(e) + 'e').split('e'); + return +( + (n = (AA(t(n[0] + 'e' + (+n[1] + r))) + 'e').split('e'))[0] + + 'e' + + (+n[1] - r) + ); + } + return t(e); + }; + } + var Ti = + fr && 1 / jt(new fr([, -0]))[1] == 1 / 0 + ? function (e) { + return new fr(e); + } + : XA; + function Pi(e) { + return function (t) { + var r = ro(t); + return r == f + ? Ut(t) + : r == E + ? Yt(t) + : (function (e, t) { + return ht(t, function (t) { + return [t, e[t]]; + }); + })(t, e(t)); + }; + } + function Ui(e, t, r, s, A, a, c, u) { + var l = 2 & t; + if (!l && 'function' != typeof e) throw new Ee(i); + var h = s ? s.length : 0; + if ( + (h || ((t &= -97), (s = A = void 0)), + (c = void 0 === c ? c : or(nA(c), 0)), + (u = void 0 === u ? u : nA(u)), + (h -= A ? A.length : 0), + 64 & t) + ) { + var g = s, + f = A; + s = A = void 0; + } + var p = l ? void 0 : qi(e), + d = [e, t, r, s, A, g, f, a, c, u]; + if ( + (p && + (function (e, t) { + var r = e[1], + n = t[1], + i = r | n, + s = i < 131, + A = + (128 == n && 8 == r) || + (128 == n && 256 == r && e[7].length <= t[8]) || + (384 == n && t[7].length <= t[8] && 8 == r); + if (!s && !A) return e; + 1 & n && ((e[2] = t[2]), (i |= 1 & r ? 0 : 4)); + var a = t[3]; + if (a) { + var c = e[3]; + (e[3] = c ? pi(c, a, t[4]) : a), (e[4] = c ? Ot(e[3], o) : t[4]); + } + (a = t[5]) && + ((c = e[5]), + (e[5] = c ? di(c, a, t[6]) : a), + (e[6] = c ? Ot(e[5], o) : t[6])); + (a = t[7]) && (e[7] = a); + 128 & n && (e[8] = null == e[8] ? t[8] : sr(e[8], t[8])); + null == e[9] && (e[9] = t[9]); + (e[0] = t[0]), (e[1] = i); + })(d, p), + (e = d[0]), + (t = d[1]), + (r = d[2]), + (s = d[3]), + (A = d[4]), + !(u = d[9] = void 0 === d[9] ? (l ? 0 : e.length) : or(d[9] - h, 0)) && + 24 & t && + (t &= -25), + t && 1 != t) + ) + C = + 8 == t || 16 == t + ? (function (e, t, r) { + var i = vi(e); + return function o() { + for (var s = arguments.length, A = n(s), a = s, c = Wi(o); a--; ) + A[a] = arguments[a]; + var u = s < 3 && A[0] !== c && A[s - 1] !== c ? [] : Ot(A, c); + if ((s -= u.length) < r) + return Ki( + e, + t, + Si, + o.placeholder, + void 0, + A, + u, + void 0, + void 0, + r - s + ); + var l = this && this !== He && this instanceof o ? i : e; + return it(l, this, A); + }; + })(e, t, u) + : (32 != t && 33 != t) || A.length + ? Si.apply(void 0, d) + : (function (e, t, r, i) { + var o = 1 & t, + s = vi(e); + return function t() { + for ( + var A = -1, + a = arguments.length, + c = -1, + u = i.length, + l = n(u + a), + h = this && this !== He && this instanceof t ? s : e; + ++c < u; + + ) + l[c] = i[c]; + for (; a--; ) l[c++] = arguments[++A]; + return it(h, o ? r : this, l); + }; + })(e, t, r, s); + else + var C = (function (e, t, r) { + var n = 1 & t, + i = vi(e); + return function t() { + var o = this && this !== He && this instanceof t ? i : e; + return o.apply(n ? r : this, arguments); + }; + })(e, t, r); + return wo((p ? jn : Io)(C, d), e, t); + } + function _i(e, t, r, n) { + return void 0 === e || (ks(e, ye[r]) && !Qe.call(n, r)) ? t : e; + } + function Oi(e, t, r, n, i, o) { + return Ys(e) && Ys(t) && (o.set(t, e), xn(e, t, void 0, Oi, o), o.delete(t)), e; + } + function ji(e) { + return qs(e) ? void 0 : e; + } + function Yi(e, t, r, n, i, o) { + var s = 1 & r, + A = e.length, + a = t.length; + if (A != a && !(s && a > A)) return !1; + var c = o.get(e); + if (c && o.get(t)) return c == t; + var u = -1, + l = !0, + h = 2 & r ? new Kr() : void 0; + for (o.set(e, t), o.set(t, e); ++u < A; ) { + var g = e[u], + f = t[u]; + if (n) var p = s ? n(f, g, u, t, e, o) : n(g, f, u, e, t, o); + if (void 0 !== p) { + if (p) continue; + l = !1; + break; + } + if (h) { + if ( + !dt(t, function (e, t) { + if (!Ft(h, t) && (g === e || i(g, e, r, n, o))) return h.push(t); + }) + ) { + l = !1; + break; + } + } else if (g !== f && !i(g, f, r, n, o)) { + l = !1; + break; + } + } + return o.delete(e), o.delete(t), l; + } + function Gi(e) { + return yo(fo(e, void 0, Ro), e + ''); + } + function Ji(e) { + return hn(e, mA, eo); + } + function Hi(e) { + return hn(e, yA, to); + } + var qi = Cr + ? function (e) { + return Cr.get(e); + } + : XA; + function zi(e) { + for (var t = e.name + '', r = Er[t], n = Qe.call(Er, t) ? r.length : 0; n--; ) { + var i = r[n], + o = i.func; + if (null == o || o == e) return i.name; + } + return t; + } + function Wi(e) { + return (Qe.call(br, 'placeholder') ? br : e).placeholder; + } + function Vi() { + var e = br.iteratee || qA; + return ( + (e = e === qA ? Bn : e), arguments.length ? e(arguments[0], arguments[1]) : e + ); + } + function Xi(e, t) { + var r, + n, + i = e.__data__; + return ( + 'string' == (n = typeof (r = t)) || + 'number' == n || + 'symbol' == n || + 'boolean' == n + ? '__proto__' !== r + : null === r + ) + ? i['string' == typeof t ? 'string' : 'hash'] + : i.map; + } + function Zi(e) { + for (var t = mA(e), r = t.length; r--; ) { + var n = t[r], + i = e[n]; + t[r] = [n, i, ho(i)]; + } + return t; + } + function $i(e, t) { + var r = (function (e, t) { + return null == e ? void 0 : e[t]; + })(e, t); + return wn(r) ? r : void 0; + } + var eo = er + ? function (e) { + return null == e + ? [] + : ((e = pe(e)), + ct(er(e), function (t) { + return ze.call(e, t); + })); + } + : ia, + to = er + ? function (e) { + for (var t = []; e; ) gt(t, eo(e)), (e = Je(e)); + return t; + } + : ia, + ro = gn; + function no(e, t, r) { + for (var n = -1, i = (t = Ai(t, e)).length, o = !1; ++n < i; ) { + var s = Do(t[n]); + if (!(o = null != e && r(e, s))) break; + e = e[s]; + } + return o || ++n != i + ? o + : !!(i = null == e ? 0 : e.length) && js(i) && so(s, i) && (Ns(e) || Ms(e)); + } + function io(e) { + return 'function' != typeof e.constructor || lo(e) ? {} : Sr(Je(e)); + } + function oo(e) { + return Ns(e) || Ms(e) || !!(Xe && e && e[Xe]); + } + function so(e, t) { + var r = typeof e; + return ( + !!(t = null == t ? 9007199254740991 : t) && + ('number' == r || ('symbol' != r && Ae.test(e))) && + e > -1 && + e % 1 == 0 && + e < t + ); + } + function Ao(e, t, r) { + if (!Ys(r)) return !1; + var n = typeof t; + return ( + !!('number' == n ? Ks(r) && so(t, r.length) : 'string' == n && t in r) && + ks(r[t], e) + ); + } + function ao(e, t) { + if (Ns(e)) return !1; + var r = typeof e; + return ( + !('number' != r && 'symbol' != r && 'boolean' != r && null != e && !Xs(e)) || + Y.test(e) || + !j.test(e) || + (null != t && e in pe(t)) + ); + } + function co(e) { + var t = zi(e), + r = br[t]; + if ('function' != typeof r || !(t in Fr.prototype)) return !1; + if (e === r) return !0; + var n = qi(r); + return !!n && e === n[0]; + } + ((lr && ro(new lr(new ArrayBuffer(1))) != B) || + (hr && ro(new hr()) != f) || + (gr && '[object Promise]' != ro(gr.resolve())) || + (fr && ro(new fr()) != E) || + (pr && ro(new pr()) != y)) && + (ro = function (e) { + var t = gn(e), + r = t == d ? e.constructor : void 0, + n = r ? bo(r) : ''; + if (n) + switch (n) { + case Ir: + return B; + case mr: + return f; + case yr: + return '[object Promise]'; + case wr: + return E; + case Br: + return y; + } + return t; + }); + var uo = we ? _s : oa; + function lo(e) { + var t = e && e.constructor; + return e === (('function' == typeof t && t.prototype) || ye); + } + function ho(e) { + return e == e && !Ys(e); + } + function go(e, t) { + return function (r) { + return null != r && r[e] === t && (void 0 !== t || e in pe(r)); + }; + } + function fo(e, t, r) { + return ( + (t = or(void 0 === t ? e.length - 1 : t, 0)), + function () { + for (var i = arguments, o = -1, s = or(i.length - t, 0), A = n(s); ++o < s; ) + A[o] = i[t + o]; + o = -1; + for (var a = n(t + 1); ++o < t; ) a[o] = i[o]; + return (a[t] = r(A)), it(e, this, a); + } + ); + } + function po(e, t) { + return t.length < 2 ? e : ln(e, Jn(t, 0, -1)); + } + function Co(e, t) { + for (var r = e.length, n = sr(t.length, r), i = Ci(e); n--; ) { + var o = t[n]; + e[n] = so(o, r) ? i[o] : void 0; + } + return e; + } + function Eo(e, t) { + if (('constructor' !== t || 'function' != typeof e[t]) && '__proto__' != t) + return e[t]; + } + var Io = Bo(jn), + mo = + Xt || + function (e, t) { + return He.setTimeout(e, t); + }, + yo = Bo(Yn); + function wo(e, t, r) { + var n = t + ''; + return yo( + e, + (function (e, t) { + var r = t.length; + if (!r) return e; + var n = r - 1; + return ( + (t[n] = (r > 1 ? '& ' : '') + t[n]), + (t = t.join(r > 2 ? ', ' : ' ')), + e.replace(V, '{\n/* [wrapped with ' + t + '] */\n') + ); + })( + n, + (function (e, t) { + return ( + st(s, function (r) { + var n = '_.' + r[0]; + t & r[1] && !ut(e, n) && e.push(n); + }), + e.sort() + ); + })( + (function (e) { + var t = e.match(X); + return t ? t[1].split(Z) : []; + })(n), + r + ) + ) + ); + } + function Bo(e) { + var t = 0, + r = 0; + return function () { + var n = Ar(), + i = 16 - (n - r); + if (((r = n), i > 0)) { + if (++t >= 800) return arguments[0]; + } else t = 0; + return e.apply(void 0, arguments); + }; + } + function Qo(e, t) { + var r = -1, + n = e.length, + i = n - 1; + for (t = void 0 === t ? n : t; ++r < t; ) { + var o = Ln(r, i), + s = e[o]; + (e[o] = e[r]), (e[r] = s); + } + return (e.length = t), e; + } + var vo = (function (e) { + var t = Bs(e, function (e) { + return 500 === r.size && r.clear(), e; + }), + r = t.cache; + return t; + })(function (e) { + var t = []; + return ( + 46 === e.charCodeAt(0) && t.push(''), + e.replace(G, function (e, r, n, i) { + t.push(n ? i.replace(ee, '$1') : r || e); + }), + t + ); + }); + function Do(e) { + if ('string' == typeof e || Xs(e)) return e; + var t = e + ''; + return '0' == t && 1 / e == -1 / 0 ? '-0' : t; + } + function bo(e) { + if (null != e) { + try { + return Be.call(e); + } catch (e) {} + try { + return e + ''; + } catch (e) {} + } + return ''; + } + function So(e) { + if (e instanceof Fr) return e.clone(); + var t = new xr(e.__wrapped__, e.__chain__); + return ( + (t.__actions__ = Ci(e.__actions__)), + (t.__index__ = e.__index__), + (t.__values__ = e.__values__), + t + ); + } + var ko = Pn(function (e, t) { + return Ls(e) ? Zr(e, on(t, 1, Ls, !0)) : []; + }), + xo = Pn(function (e, t) { + var r = Uo(t); + return Ls(r) && (r = void 0), Ls(e) ? Zr(e, on(t, 1, Ls, !0), Vi(r, 2)) : []; + }), + Fo = Pn(function (e, t) { + var r = Uo(t); + return Ls(r) && (r = void 0), Ls(e) ? Zr(e, on(t, 1, Ls, !0), void 0, r) : []; + }); + function Mo(e, t, r) { + var n = null == e ? 0 : e.length; + if (!n) return -1; + var i = null == r ? 0 : nA(r); + return i < 0 && (i = or(n + i, 0)), It(e, Vi(t, 3), i); + } + function No(e, t, r) { + var n = null == e ? 0 : e.length; + if (!n) return -1; + var i = n - 1; + return ( + void 0 !== r && ((i = nA(r)), (i = r < 0 ? or(n + i, 0) : sr(i, n - 1))), + It(e, Vi(t, 3), i, !0) + ); + } + function Ro(e) { + return (null == e ? 0 : e.length) ? on(e, 1) : []; + } + function Ko(e) { + return e && e.length ? e[0] : void 0; + } + var Lo = Pn(function (e) { + var t = ht(e, oi); + return t.length && t[0] === e[0] ? Cn(t) : []; + }), + To = Pn(function (e) { + var t = Uo(e), + r = ht(e, oi); + return ( + t === Uo(r) ? (t = void 0) : r.pop(), + r.length && r[0] === e[0] ? Cn(r, Vi(t, 2)) : [] + ); + }), + Po = Pn(function (e) { + var t = Uo(e), + r = ht(e, oi); + return ( + (t = 'function' == typeof t ? t : void 0) && r.pop(), + r.length && r[0] === e[0] ? Cn(r, void 0, t) : [] + ); + }); + function Uo(e) { + var t = null == e ? 0 : e.length; + return t ? e[t - 1] : void 0; + } + var _o = Pn(Oo); + function Oo(e, t) { + return e && e.length && t && t.length ? Rn(e, t) : e; + } + var jo = Gi(function (e, t) { + var r = null == e ? 0 : e.length, + n = qr(e, t); + return ( + Kn( + e, + ht(t, function (e) { + return so(e, r) ? +e : e; + }).sort(fi) + ), + n + ); + }); + function Yo(e) { + return null == e ? e : ur.call(e); + } + var Go = Pn(function (e) { + return Zn(on(e, 1, Ls, !0)); + }), + Jo = Pn(function (e) { + var t = Uo(e); + return Ls(t) && (t = void 0), Zn(on(e, 1, Ls, !0), Vi(t, 2)); + }), + Ho = Pn(function (e) { + var t = Uo(e); + return (t = 'function' == typeof t ? t : void 0), Zn(on(e, 1, Ls, !0), void 0, t); + }); + function qo(e) { + if (!e || !e.length) return []; + var t = 0; + return ( + (e = ct(e, function (e) { + if (Ls(e)) return (t = or(e.length, t)), !0; + })), + St(t, function (t) { + return ht(e, Qt(t)); + }) + ); + } + function zo(e, t) { + if (!e || !e.length) return []; + var r = qo(e); + return null == t + ? r + : ht(r, function (e) { + return it(t, void 0, e); + }); + } + var Wo = Pn(function (e, t) { + return Ls(e) ? Zr(e, t) : []; + }), + Vo = Pn(function (e) { + return ni(ct(e, Ls)); + }), + Xo = Pn(function (e) { + var t = Uo(e); + return Ls(t) && (t = void 0), ni(ct(e, Ls), Vi(t, 2)); + }), + Zo = Pn(function (e) { + var t = Uo(e); + return (t = 'function' == typeof t ? t : void 0), ni(ct(e, Ls), void 0, t); + }), + $o = Pn(qo); + var es = Pn(function (e) { + var t = e.length, + r = t > 1 ? e[t - 1] : void 0; + return (r = 'function' == typeof r ? (e.pop(), r) : void 0), zo(e, r); + }); + function ts(e) { + var t = br(e); + return (t.__chain__ = !0), t; + } + function rs(e, t) { + return t(e); + } + var ns = Gi(function (e) { + var t = e.length, + r = t ? e[0] : 0, + n = this.__wrapped__, + i = function (t) { + return qr(t, e); + }; + return !(t > 1 || this.__actions__.length) && n instanceof Fr && so(r) + ? ((n = n.slice(r, +r + (t ? 1 : 0))).__actions__.push({ + func: rs, + args: [i], + thisArg: void 0, + }), + new xr(n, this.__chain__).thru(function (e) { + return t && !e.length && e.push(void 0), e; + })) + : this.thru(i); + }); + var is = Ii(function (e, t, r) { + Qe.call(e, r) ? ++e[r] : Hr(e, r, 1); + }); + var os = Di(Mo), + ss = Di(No); + function As(e, t) { + return (Ns(e) ? st : $r)(e, Vi(t, 3)); + } + function as(e, t) { + return (Ns(e) ? At : en)(e, Vi(t, 3)); + } + var cs = Ii(function (e, t, r) { + Qe.call(e, r) ? e[r].push(t) : Hr(e, r, [t]); + }); + var us = Pn(function (e, t, r) { + var i = -1, + o = 'function' == typeof t, + s = Ks(e) ? n(e.length) : []; + return ( + $r(e, function (e) { + s[++i] = o ? it(t, e, r) : En(e, t, r); + }), + s + ); + }), + ls = Ii(function (e, t, r) { + Hr(e, r, t); + }); + function hs(e, t) { + return (Ns(e) ? ht : bn)(e, Vi(t, 3)); + } + var gs = Ii( + function (e, t, r) { + e[r ? 0 : 1].push(t); + }, + function () { + return [[], []]; + } + ); + var fs = Pn(function (e, t) { + if (null == e) return []; + var r = t.length; + return ( + r > 1 && Ao(e, t[0], t[1]) + ? (t = []) + : r > 2 && Ao(t[0], t[1], t[2]) && (t = [t[0]]), + Mn(e, on(t, 1), []) + ); + }), + ps = + Vt || + function () { + return He.Date.now(); + }; + function ds(e, t, r) { + return ( + (t = r ? void 0 : t), + Ui(e, 128, void 0, void 0, void 0, void 0, (t = e && null == t ? e.length : t)) + ); + } + function Cs(e, t) { + var r; + if ('function' != typeof t) throw new Ee(i); + return ( + (e = nA(e)), + function () { + return --e > 0 && (r = t.apply(this, arguments)), e <= 1 && (t = void 0), r; + } + ); + } + var Es = Pn(function (e, t, r) { + var n = 1; + if (r.length) { + var i = Ot(r, Wi(Es)); + n |= 32; + } + return Ui(e, n, t, r, i); + }), + Is = Pn(function (e, t, r) { + var n = 3; + if (r.length) { + var i = Ot(r, Wi(Is)); + n |= 32; + } + return Ui(t, n, e, r, i); + }); + function ms(e, t, r) { + var n, + o, + s, + A, + a, + c, + u = 0, + l = !1, + h = !1, + g = !0; + if ('function' != typeof e) throw new Ee(i); + function f(t) { + var r = n, + i = o; + return (n = o = void 0), (u = t), (A = e.apply(i, r)); + } + function p(e) { + return (u = e), (a = mo(C, t)), l ? f(e) : A; + } + function d(e) { + var r = e - c; + return void 0 === c || r >= t || r < 0 || (h && e - u >= s); + } + function C() { + var e = ps(); + if (d(e)) return E(e); + a = mo( + C, + (function (e) { + var r = t - (e - c); + return h ? sr(r, s - (e - u)) : r; + })(e) + ); + } + function E(e) { + return (a = void 0), g && n ? f(e) : ((n = o = void 0), A); + } + function I() { + var e = ps(), + r = d(e); + if (((n = arguments), (o = this), (c = e), r)) { + if (void 0 === a) return p(c); + if (h) return ui(a), (a = mo(C, t)), f(c); + } + return void 0 === a && (a = mo(C, t)), A; + } + return ( + (t = oA(t) || 0), + Ys(r) && + ((l = !!r.leading), + (s = (h = 'maxWait' in r) ? or(oA(r.maxWait) || 0, t) : s), + (g = 'trailing' in r ? !!r.trailing : g)), + (I.cancel = function () { + void 0 !== a && ui(a), (u = 0), (n = c = o = a = void 0); + }), + (I.flush = function () { + return void 0 === a ? A : E(ps()); + }), + I + ); + } + var ys = Pn(function (e, t) { + return Xr(e, 1, t); + }), + ws = Pn(function (e, t, r) { + return Xr(e, oA(t) || 0, r); + }); + function Bs(e, t) { + if ('function' != typeof e || (null != t && 'function' != typeof t)) + throw new Ee(i); + var r = function () { + var n = arguments, + i = t ? t.apply(this, n) : n[0], + o = r.cache; + if (o.has(i)) return o.get(i); + var s = e.apply(this, n); + return (r.cache = o.set(i, s) || o), s; + }; + return (r.cache = new (Bs.Cache || Rr)()), r; + } + function Qs(e) { + if ('function' != typeof e) throw new Ee(i); + return function () { + var t = arguments; + switch (t.length) { + case 0: + return !e.call(this); + case 1: + return !e.call(this, t[0]); + case 2: + return !e.call(this, t[0], t[1]); + case 3: + return !e.call(this, t[0], t[1], t[2]); + } + return !e.apply(this, t); + }; + } + Bs.Cache = Rr; + var vs = ai(function (e, t) { + var r = (t = + 1 == t.length && Ns(t[0]) ? ht(t[0], kt(Vi())) : ht(on(t, 1), kt(Vi()))).length; + return Pn(function (n) { + for (var i = -1, o = sr(n.length, r); ++i < o; ) n[i] = t[i].call(this, n[i]); + return it(e, this, n); + }); + }), + Ds = Pn(function (e, t) { + return Ui(e, 32, void 0, t, Ot(t, Wi(Ds))); + }), + bs = Pn(function (e, t) { + return Ui(e, 64, void 0, t, Ot(t, Wi(bs))); + }), + Ss = Gi(function (e, t) { + return Ui(e, 256, void 0, void 0, void 0, t); + }); + function ks(e, t) { + return e === t || (e != e && t != t); + } + var xs = Ri(fn), + Fs = Ri(function (e, t) { + return e >= t; + }), + Ms = In( + (function () { + return arguments; + })() + ) + ? In + : function (e) { + return Gs(e) && Qe.call(e, 'callee') && !ze.call(e, 'callee'); + }, + Ns = n.isArray, + Rs = Ze + ? kt(Ze) + : function (e) { + return Gs(e) && gn(e) == w; + }; + function Ks(e) { + return null != e && js(e.length) && !_s(e); + } + function Ls(e) { + return Gs(e) && Ks(e); + } + var Ts = tr || oa, + Ps = $e + ? kt($e) + : function (e) { + return Gs(e) && gn(e) == u; + }; + function Us(e) { + if (!Gs(e)) return !1; + var t = gn(e); + return ( + t == l || + '[object DOMException]' == t || + ('string' == typeof e.message && 'string' == typeof e.name && !qs(e)) + ); + } + function _s(e) { + if (!Ys(e)) return !1; + var t = gn(e); + return t == h || t == g || '[object AsyncFunction]' == t || '[object Proxy]' == t; + } + function Os(e) { + return 'number' == typeof e && e == nA(e); + } + function js(e) { + return 'number' == typeof e && e > -1 && e % 1 == 0 && e <= 9007199254740991; + } + function Ys(e) { + var t = typeof e; + return null != e && ('object' == t || 'function' == t); + } + function Gs(e) { + return null != e && 'object' == typeof e; + } + var Js = et + ? kt(et) + : function (e) { + return Gs(e) && ro(e) == f; + }; + function Hs(e) { + return 'number' == typeof e || (Gs(e) && gn(e) == p); + } + function qs(e) { + if (!Gs(e) || gn(e) != d) return !1; + var t = Je(e); + if (null === t) return !0; + var r = Qe.call(t, 'constructor') && t.constructor; + return 'function' == typeof r && r instanceof r && Be.call(r) == Se; + } + var zs = tt + ? kt(tt) + : function (e) { + return Gs(e) && gn(e) == C; + }; + var Ws = rt + ? kt(rt) + : function (e) { + return Gs(e) && ro(e) == E; + }; + function Vs(e) { + return 'string' == typeof e || (!Ns(e) && Gs(e) && gn(e) == I); + } + function Xs(e) { + return 'symbol' == typeof e || (Gs(e) && gn(e) == m); + } + var Zs = nt + ? kt(nt) + : function (e) { + return Gs(e) && js(e.length) && !!Ue[gn(e)]; + }; + var $s = Ri(Dn), + eA = Ri(function (e, t) { + return e <= t; + }); + function tA(e) { + if (!e) return []; + if (Ks(e)) return Vs(e) ? Jt(e) : Ci(e); + if (Ct && e[Ct]) + return (function (e) { + for (var t, r = []; !(t = e.next()).done; ) r.push(t.value); + return r; + })(e[Ct]()); + var t = ro(e); + return (t == f ? Ut : t == E ? jt : kA)(e); + } + function rA(e) { + return e + ? (e = oA(e)) === 1 / 0 || e === -1 / 0 + ? 17976931348623157e292 * (e < 0 ? -1 : 1) + : e == e + ? e + : 0 + : 0 === e + ? e + : 0; + } + function nA(e) { + var t = rA(e), + r = t % 1; + return t == t ? (r ? t - r : t) : 0; + } + function iA(e) { + return e ? zr(nA(e), 0, 4294967295) : 0; + } + function oA(e) { + if ('number' == typeof e) return e; + if (Xs(e)) return NaN; + if (Ys(e)) { + var t = 'function' == typeof e.valueOf ? e.valueOf() : e; + e = Ys(t) ? t + '' : t; + } + if ('string' != typeof e) return 0 === e ? e : +e; + e = e.replace(q, ''); + var r = ie.test(e); + return r || se.test(e) ? Ye(e.slice(2), r ? 2 : 8) : ne.test(e) ? NaN : +e; + } + function sA(e) { + return Ei(e, yA(e)); + } + function AA(e) { + return null == e ? '' : Xn(e); + } + var aA = mi(function (e, t) { + if (lo(t) || Ks(t)) Ei(t, mA(t), e); + else for (var r in t) Qe.call(t, r) && jr(e, r, t[r]); + }), + cA = mi(function (e, t) { + Ei(t, yA(t), e); + }), + uA = mi(function (e, t, r, n) { + Ei(t, yA(t), e, n); + }), + lA = mi(function (e, t, r, n) { + Ei(t, mA(t), e, n); + }), + hA = Gi(qr); + var gA = Pn(function (e, t) { + e = pe(e); + var r = -1, + n = t.length, + i = n > 2 ? t[2] : void 0; + for (i && Ao(t[0], t[1], i) && (n = 1); ++r < n; ) + for (var o = t[r], s = yA(o), A = -1, a = s.length; ++A < a; ) { + var c = s[A], + u = e[c]; + (void 0 === u || (ks(u, ye[c]) && !Qe.call(e, c))) && (e[c] = o[c]); + } + return e; + }), + fA = Pn(function (e) { + return e.push(void 0, Oi), it(BA, void 0, e); + }); + function pA(e, t, r) { + var n = null == e ? void 0 : ln(e, t); + return void 0 === n ? r : n; + } + function dA(e, t) { + return null != e && no(e, t, dn); + } + var CA = ki(function (e, t, r) { + null != t && 'function' != typeof t.toString && (t = be.call(t)), (e[t] = r); + }, YA(HA)), + EA = ki(function (e, t, r) { + null != t && 'function' != typeof t.toString && (t = be.call(t)), + Qe.call(e, t) ? e[t].push(r) : (e[t] = [r]); + }, Vi), + IA = Pn(En); + function mA(e) { + return Ks(e) ? Tr(e) : Qn(e); + } + function yA(e) { + return Ks(e) ? Tr(e, !0) : vn(e); + } + var wA = mi(function (e, t, r) { + xn(e, t, r); + }), + BA = mi(function (e, t, r, n) { + xn(e, t, r, n); + }), + QA = Gi(function (e, t) { + var r = {}; + if (null == e) return r; + var n = !1; + (t = ht(t, function (t) { + return (t = Ai(t, e)), n || (n = t.length > 1), t; + })), + Ei(e, Hi(e), r), + n && (r = Wr(r, 7, ji)); + for (var i = t.length; i--; ) $n(r, t[i]); + return r; + }); + var vA = Gi(function (e, t) { + return null == e + ? {} + : (function (e, t) { + return Nn(e, t, function (t, r) { + return dA(e, r); + }); + })(e, t); + }); + function DA(e, t) { + if (null == e) return {}; + var r = ht(Hi(e), function (e) { + return [e]; + }); + return ( + (t = Vi(t)), + Nn(e, r, function (e, r) { + return t(e, r[0]); + }) + ); + } + var bA = Pi(mA), + SA = Pi(yA); + function kA(e) { + return null == e ? [] : xt(e, mA(e)); + } + var xA = Qi(function (e, t, r) { + return (t = t.toLowerCase()), e + (r ? FA(t) : t); + }); + function FA(e) { + return UA(AA(e).toLowerCase()); + } + function MA(e) { + return (e = AA(e)) && e.replace(ae, Kt).replace(Me, ''); + } + var NA = Qi(function (e, t, r) { + return e + (r ? '-' : '') + t.toLowerCase(); + }), + RA = Qi(function (e, t, r) { + return e + (r ? ' ' : '') + t.toLowerCase(); + }), + KA = Bi('toLowerCase'); + var LA = Qi(function (e, t, r) { + return e + (r ? '_' : '') + t.toLowerCase(); + }); + var TA = Qi(function (e, t, r) { + return e + (r ? ' ' : '') + UA(t); + }); + var PA = Qi(function (e, t, r) { + return e + (r ? ' ' : '') + t.toUpperCase(); + }), + UA = Bi('toUpperCase'); + function _A(e, t, r) { + return ( + (e = AA(e)), + void 0 === (t = r ? void 0 : t) + ? (function (e) { + return Le.test(e); + })(e) + ? (function (e) { + return e.match(Re) || []; + })(e) + : (function (e) { + return e.match($) || []; + })(e) + : e.match(t) || [] + ); + } + var OA = Pn(function (e, t) { + try { + return it(e, void 0, t); + } catch (e) { + return Us(e) ? e : new he(e); + } + }), + jA = Gi(function (e, t) { + return ( + st(t, function (t) { + (t = Do(t)), Hr(e, t, Es(e[t], e)); + }), + e + ); + }); + function YA(e) { + return function () { + return e; + }; + } + var GA = bi(), + JA = bi(!0); + function HA(e) { + return e; + } + function qA(e) { + return Bn('function' == typeof e ? e : Wr(e, 1)); + } + var zA = Pn(function (e, t) { + return function (r) { + return En(r, e, t); + }; + }), + WA = Pn(function (e, t) { + return function (r) { + return En(e, r, t); + }; + }); + function VA(e, t, r) { + var n = mA(t), + i = un(t, n); + null != r || + (Ys(t) && (i.length || !n.length)) || + ((r = t), (t = e), (e = this), (i = un(t, mA(t)))); + var o = !(Ys(r) && 'chain' in r && !r.chain), + s = _s(e); + return ( + st(i, function (r) { + var n = t[r]; + (e[r] = n), + s && + (e.prototype[r] = function () { + var t = this.__chain__; + if (o || t) { + var r = e(this.__wrapped__), + i = (r.__actions__ = Ci(this.__actions__)); + return ( + i.push({ func: n, args: arguments, thisArg: e }), (r.__chain__ = t), r + ); + } + return n.apply(e, gt([this.value()], arguments)); + }); + }), + e + ); + } + function XA() {} + var ZA = Fi(ht), + $A = Fi(at), + ea = Fi(dt); + function ta(e) { + return ao(e) + ? Qt(Do(e)) + : (function (e) { + return function (t) { + return ln(t, e); + }; + })(e); + } + var ra = Ni(), + na = Ni(!0); + function ia() { + return []; + } + function oa() { + return !1; + } + var sa = xi(function (e, t) { + return e + t; + }, 0), + Aa = Li('ceil'), + aa = xi(function (e, t) { + return e / t; + }, 1), + ca = Li('floor'); + var ua, + la = xi(function (e, t) { + return e * t; + }, 1), + ha = Li('round'), + ga = xi(function (e, t) { + return e - t; + }, 0); + return ( + (br.after = function (e, t) { + if ('function' != typeof t) throw new Ee(i); + return ( + (e = nA(e)), + function () { + if (--e < 1) return t.apply(this, arguments); + } + ); + }), + (br.ary = ds), + (br.assign = aA), + (br.assignIn = cA), + (br.assignInWith = uA), + (br.assignWith = lA), + (br.at = hA), + (br.before = Cs), + (br.bind = Es), + (br.bindAll = jA), + (br.bindKey = Is), + (br.castArray = function () { + if (!arguments.length) return []; + var e = arguments[0]; + return Ns(e) ? e : [e]; + }), + (br.chain = ts), + (br.chunk = function (e, t, r) { + t = (r ? Ao(e, t, r) : void 0 === t) ? 1 : or(nA(t), 0); + var i = null == e ? 0 : e.length; + if (!i || t < 1) return []; + for (var o = 0, s = 0, A = n(Zt(i / t)); o < i; ) A[s++] = Jn(e, o, (o += t)); + return A; + }), + (br.compact = function (e) { + for (var t = -1, r = null == e ? 0 : e.length, n = 0, i = []; ++t < r; ) { + var o = e[t]; + o && (i[n++] = o); + } + return i; + }), + (br.concat = function () { + var e = arguments.length; + if (!e) return []; + for (var t = n(e - 1), r = arguments[0], i = e; i--; ) t[i - 1] = arguments[i]; + return gt(Ns(r) ? Ci(r) : [r], on(t, 1)); + }), + (br.cond = function (e) { + var t = null == e ? 0 : e.length, + r = Vi(); + return ( + (e = t + ? ht(e, function (e) { + if ('function' != typeof e[1]) throw new Ee(i); + return [r(e[0]), e[1]]; + }) + : []), + Pn(function (r) { + for (var n = -1; ++n < t; ) { + var i = e[n]; + if (it(i[0], this, r)) return it(i[1], this, r); + } + }) + ); + }), + (br.conforms = function (e) { + return (function (e) { + var t = mA(e); + return function (r) { + return Vr(r, e, t); + }; + })(Wr(e, 1)); + }), + (br.constant = YA), + (br.countBy = is), + (br.create = function (e, t) { + var r = Sr(e); + return null == t ? r : Jr(r, t); + }), + (br.curry = function e(t, r, n) { + var i = Ui(t, 8, void 0, void 0, void 0, void 0, void 0, (r = n ? void 0 : r)); + return (i.placeholder = e.placeholder), i; + }), + (br.curryRight = function e(t, r, n) { + var i = Ui(t, 16, void 0, void 0, void 0, void 0, void 0, (r = n ? void 0 : r)); + return (i.placeholder = e.placeholder), i; + }), + (br.debounce = ms), + (br.defaults = gA), + (br.defaultsDeep = fA), + (br.defer = ys), + (br.delay = ws), + (br.difference = ko), + (br.differenceBy = xo), + (br.differenceWith = Fo), + (br.drop = function (e, t, r) { + var n = null == e ? 0 : e.length; + return n ? Jn(e, (t = r || void 0 === t ? 1 : nA(t)) < 0 ? 0 : t, n) : []; + }), + (br.dropRight = function (e, t, r) { + var n = null == e ? 0 : e.length; + return n + ? Jn(e, 0, (t = n - (t = r || void 0 === t ? 1 : nA(t))) < 0 ? 0 : t) + : []; + }), + (br.dropRightWhile = function (e, t) { + return e && e.length ? ti(e, Vi(t, 3), !0, !0) : []; + }), + (br.dropWhile = function (e, t) { + return e && e.length ? ti(e, Vi(t, 3), !0) : []; + }), + (br.fill = function (e, t, r, n) { + var i = null == e ? 0 : e.length; + return i + ? (r && 'number' != typeof r && Ao(e, t, r) && ((r = 0), (n = i)), + (function (e, t, r, n) { + var i = e.length; + for ( + (r = nA(r)) < 0 && (r = -r > i ? 0 : i + r), + (n = void 0 === n || n > i ? i : nA(n)) < 0 && (n += i), + n = r > n ? 0 : iA(n); + r < n; + + ) + e[r++] = t; + return e; + })(e, t, r, n)) + : []; + }), + (br.filter = function (e, t) { + return (Ns(e) ? ct : nn)(e, Vi(t, 3)); + }), + (br.flatMap = function (e, t) { + return on(hs(e, t), 1); + }), + (br.flatMapDeep = function (e, t) { + return on(hs(e, t), 1 / 0); + }), + (br.flatMapDepth = function (e, t, r) { + return (r = void 0 === r ? 1 : nA(r)), on(hs(e, t), r); + }), + (br.flatten = Ro), + (br.flattenDeep = function (e) { + return (null == e ? 0 : e.length) ? on(e, 1 / 0) : []; + }), + (br.flattenDepth = function (e, t) { + return (null == e ? 0 : e.length) ? on(e, (t = void 0 === t ? 1 : nA(t))) : []; + }), + (br.flip = function (e) { + return Ui(e, 512); + }), + (br.flow = GA), + (br.flowRight = JA), + (br.fromPairs = function (e) { + for (var t = -1, r = null == e ? 0 : e.length, n = {}; ++t < r; ) { + var i = e[t]; + n[i[0]] = i[1]; + } + return n; + }), + (br.functions = function (e) { + return null == e ? [] : un(e, mA(e)); + }), + (br.functionsIn = function (e) { + return null == e ? [] : un(e, yA(e)); + }), + (br.groupBy = cs), + (br.initial = function (e) { + return (null == e ? 0 : e.length) ? Jn(e, 0, -1) : []; + }), + (br.intersection = Lo), + (br.intersectionBy = To), + (br.intersectionWith = Po), + (br.invert = CA), + (br.invertBy = EA), + (br.invokeMap = us), + (br.iteratee = qA), + (br.keyBy = ls), + (br.keys = mA), + (br.keysIn = yA), + (br.map = hs), + (br.mapKeys = function (e, t) { + var r = {}; + return ( + (t = Vi(t, 3)), + an(e, function (e, n, i) { + Hr(r, t(e, n, i), e); + }), + r + ); + }), + (br.mapValues = function (e, t) { + var r = {}; + return ( + (t = Vi(t, 3)), + an(e, function (e, n, i) { + Hr(r, n, t(e, n, i)); + }), + r + ); + }), + (br.matches = function (e) { + return Sn(Wr(e, 1)); + }), + (br.matchesProperty = function (e, t) { + return kn(e, Wr(t, 1)); + }), + (br.memoize = Bs), + (br.merge = wA), + (br.mergeWith = BA), + (br.method = zA), + (br.methodOf = WA), + (br.mixin = VA), + (br.negate = Qs), + (br.nthArg = function (e) { + return ( + (e = nA(e)), + Pn(function (t) { + return Fn(t, e); + }) + ); + }), + (br.omit = QA), + (br.omitBy = function (e, t) { + return DA(e, Qs(Vi(t))); + }), + (br.once = function (e) { + return Cs(2, e); + }), + (br.orderBy = function (e, t, r, n) { + return null == e + ? [] + : (Ns(t) || (t = null == t ? [] : [t]), + Ns((r = n ? void 0 : r)) || (r = null == r ? [] : [r]), + Mn(e, t, r)); + }), + (br.over = ZA), + (br.overArgs = vs), + (br.overEvery = $A), + (br.overSome = ea), + (br.partial = Ds), + (br.partialRight = bs), + (br.partition = gs), + (br.pick = vA), + (br.pickBy = DA), + (br.property = ta), + (br.propertyOf = function (e) { + return function (t) { + return null == e ? void 0 : ln(e, t); + }; + }), + (br.pull = _o), + (br.pullAll = Oo), + (br.pullAllBy = function (e, t, r) { + return e && e.length && t && t.length ? Rn(e, t, Vi(r, 2)) : e; + }), + (br.pullAllWith = function (e, t, r) { + return e && e.length && t && t.length ? Rn(e, t, void 0, r) : e; + }), + (br.pullAt = jo), + (br.range = ra), + (br.rangeRight = na), + (br.rearg = Ss), + (br.reject = function (e, t) { + return (Ns(e) ? ct : nn)(e, Qs(Vi(t, 3))); + }), + (br.remove = function (e, t) { + var r = []; + if (!e || !e.length) return r; + var n = -1, + i = [], + o = e.length; + for (t = Vi(t, 3); ++n < o; ) { + var s = e[n]; + t(s, n, e) && (r.push(s), i.push(n)); + } + return Kn(e, i), r; + }), + (br.rest = function (e, t) { + if ('function' != typeof e) throw new Ee(i); + return Pn(e, (t = void 0 === t ? t : nA(t))); + }), + (br.reverse = Yo), + (br.sampleSize = function (e, t, r) { + return ( + (t = (r ? Ao(e, t, r) : void 0 === t) ? 1 : nA(t)), (Ns(e) ? Ur : _n)(e, t) + ); + }), + (br.set = function (e, t, r) { + return null == e ? e : On(e, t, r); + }), + (br.setWith = function (e, t, r, n) { + return (n = 'function' == typeof n ? n : void 0), null == e ? e : On(e, t, r, n); + }), + (br.shuffle = function (e) { + return (Ns(e) ? _r : Gn)(e); + }), + (br.slice = function (e, t, r) { + var n = null == e ? 0 : e.length; + return n + ? (r && 'number' != typeof r && Ao(e, t, r) + ? ((t = 0), (r = n)) + : ((t = null == t ? 0 : nA(t)), (r = void 0 === r ? n : nA(r))), + Jn(e, t, r)) + : []; + }), + (br.sortBy = fs), + (br.sortedUniq = function (e) { + return e && e.length ? Wn(e) : []; + }), + (br.sortedUniqBy = function (e, t) { + return e && e.length ? Wn(e, Vi(t, 2)) : []; + }), + (br.split = function (e, t, r) { + return ( + r && 'number' != typeof r && Ao(e, t, r) && (t = r = void 0), + (r = void 0 === r ? 4294967295 : r >>> 0) + ? (e = AA(e)) && + ('string' == typeof t || (null != t && !zs(t))) && + !(t = Xn(t)) && + Pt(e) + ? ci(Jt(e), 0, r) + : e.split(t, r) + : [] + ); + }), + (br.spread = function (e, t) { + if ('function' != typeof e) throw new Ee(i); + return ( + (t = null == t ? 0 : or(nA(t), 0)), + Pn(function (r) { + var n = r[t], + i = ci(r, 0, t); + return n && gt(i, n), it(e, this, i); + }) + ); + }), + (br.tail = function (e) { + var t = null == e ? 0 : e.length; + return t ? Jn(e, 1, t) : []; + }), + (br.take = function (e, t, r) { + return e && e.length + ? Jn(e, 0, (t = r || void 0 === t ? 1 : nA(t)) < 0 ? 0 : t) + : []; + }), + (br.takeRight = function (e, t, r) { + var n = null == e ? 0 : e.length; + return n + ? Jn(e, (t = n - (t = r || void 0 === t ? 1 : nA(t))) < 0 ? 0 : t, n) + : []; + }), + (br.takeRightWhile = function (e, t) { + return e && e.length ? ti(e, Vi(t, 3), !1, !0) : []; + }), + (br.takeWhile = function (e, t) { + return e && e.length ? ti(e, Vi(t, 3)) : []; + }), + (br.tap = function (e, t) { + return t(e), e; + }), + (br.throttle = function (e, t, r) { + var n = !0, + o = !0; + if ('function' != typeof e) throw new Ee(i); + return ( + Ys(r) && + ((n = 'leading' in r ? !!r.leading : n), + (o = 'trailing' in r ? !!r.trailing : o)), + ms(e, t, { leading: n, maxWait: t, trailing: o }) + ); + }), + (br.thru = rs), + (br.toArray = tA), + (br.toPairs = bA), + (br.toPairsIn = SA), + (br.toPath = function (e) { + return Ns(e) ? ht(e, Do) : Xs(e) ? [e] : Ci(vo(AA(e))); + }), + (br.toPlainObject = sA), + (br.transform = function (e, t, r) { + var n = Ns(e), + i = n || Ts(e) || Zs(e); + if (((t = Vi(t, 4)), null == r)) { + var o = e && e.constructor; + r = i ? (n ? new o() : []) : Ys(e) && _s(o) ? Sr(Je(e)) : {}; + } + return ( + (i ? st : an)(e, function (e, n, i) { + return t(r, e, n, i); + }), + r + ); + }), + (br.unary = function (e) { + return ds(e, 1); + }), + (br.union = Go), + (br.unionBy = Jo), + (br.unionWith = Ho), + (br.uniq = function (e) { + return e && e.length ? Zn(e) : []; + }), + (br.uniqBy = function (e, t) { + return e && e.length ? Zn(e, Vi(t, 2)) : []; + }), + (br.uniqWith = function (e, t) { + return ( + (t = 'function' == typeof t ? t : void 0), e && e.length ? Zn(e, void 0, t) : [] + ); + }), + (br.unset = function (e, t) { + return null == e || $n(e, t); + }), + (br.unzip = qo), + (br.unzipWith = zo), + (br.update = function (e, t, r) { + return null == e ? e : ei(e, t, si(r)); + }), + (br.updateWith = function (e, t, r, n) { + return ( + (n = 'function' == typeof n ? n : void 0), null == e ? e : ei(e, t, si(r), n) + ); + }), + (br.values = kA), + (br.valuesIn = function (e) { + return null == e ? [] : xt(e, yA(e)); + }), + (br.without = Wo), + (br.words = _A), + (br.wrap = function (e, t) { + return Ds(si(t), e); + }), + (br.xor = Vo), + (br.xorBy = Xo), + (br.xorWith = Zo), + (br.zip = $o), + (br.zipObject = function (e, t) { + return ii(e || [], t || [], jr); + }), + (br.zipObjectDeep = function (e, t) { + return ii(e || [], t || [], On); + }), + (br.zipWith = es), + (br.entries = bA), + (br.entriesIn = SA), + (br.extend = cA), + (br.extendWith = uA), + VA(br, br), + (br.add = sa), + (br.attempt = OA), + (br.camelCase = xA), + (br.capitalize = FA), + (br.ceil = Aa), + (br.clamp = function (e, t, r) { + return ( + void 0 === r && ((r = t), (t = void 0)), + void 0 !== r && (r = (r = oA(r)) == r ? r : 0), + void 0 !== t && (t = (t = oA(t)) == t ? t : 0), + zr(oA(e), t, r) + ); + }), + (br.clone = function (e) { + return Wr(e, 4); + }), + (br.cloneDeep = function (e) { + return Wr(e, 5); + }), + (br.cloneDeepWith = function (e, t) { + return Wr(e, 5, (t = 'function' == typeof t ? t : void 0)); + }), + (br.cloneWith = function (e, t) { + return Wr(e, 4, (t = 'function' == typeof t ? t : void 0)); + }), + (br.conformsTo = function (e, t) { + return null == t || Vr(e, t, mA(t)); + }), + (br.deburr = MA), + (br.defaultTo = function (e, t) { + return null == e || e != e ? t : e; + }), + (br.divide = aa), + (br.endsWith = function (e, t, r) { + (e = AA(e)), (t = Xn(t)); + var n = e.length, + i = (r = void 0 === r ? n : zr(nA(r), 0, n)); + return (r -= t.length) >= 0 && e.slice(r, i) == t; + }), + (br.eq = ks), + (br.escape = function (e) { + return (e = AA(e)) && P.test(e) ? e.replace(L, Lt) : e; + }), + (br.escapeRegExp = function (e) { + return (e = AA(e)) && H.test(e) ? e.replace(J, '\\$&') : e; + }), + (br.every = function (e, t, r) { + var n = Ns(e) ? at : tn; + return r && Ao(e, t, r) && (t = void 0), n(e, Vi(t, 3)); + }), + (br.find = os), + (br.findIndex = Mo), + (br.findKey = function (e, t) { + return Et(e, Vi(t, 3), an); + }), + (br.findLast = ss), + (br.findLastIndex = No), + (br.findLastKey = function (e, t) { + return Et(e, Vi(t, 3), cn); + }), + (br.floor = ca), + (br.forEach = As), + (br.forEachRight = as), + (br.forIn = function (e, t) { + return null == e ? e : sn(e, Vi(t, 3), yA); + }), + (br.forInRight = function (e, t) { + return null == e ? e : An(e, Vi(t, 3), yA); + }), + (br.forOwn = function (e, t) { + return e && an(e, Vi(t, 3)); + }), + (br.forOwnRight = function (e, t) { + return e && cn(e, Vi(t, 3)); + }), + (br.get = pA), + (br.gt = xs), + (br.gte = Fs), + (br.has = function (e, t) { + return null != e && no(e, t, pn); + }), + (br.hasIn = dA), + (br.head = Ko), + (br.identity = HA), + (br.includes = function (e, t, r, n) { + (e = Ks(e) ? e : kA(e)), (r = r && !n ? nA(r) : 0); + var i = e.length; + return ( + r < 0 && (r = or(i + r, 0)), + Vs(e) ? r <= i && e.indexOf(t, r) > -1 : !!i && mt(e, t, r) > -1 + ); + }), + (br.indexOf = function (e, t, r) { + var n = null == e ? 0 : e.length; + if (!n) return -1; + var i = null == r ? 0 : nA(r); + return i < 0 && (i = or(n + i, 0)), mt(e, t, i); + }), + (br.inRange = function (e, t, r) { + return ( + (t = rA(t)), + void 0 === r ? ((r = t), (t = 0)) : (r = rA(r)), + (function (e, t, r) { + return e >= sr(t, r) && e < or(t, r); + })((e = oA(e)), t, r) + ); + }), + (br.invoke = IA), + (br.isArguments = Ms), + (br.isArray = Ns), + (br.isArrayBuffer = Rs), + (br.isArrayLike = Ks), + (br.isArrayLikeObject = Ls), + (br.isBoolean = function (e) { + return !0 === e || !1 === e || (Gs(e) && gn(e) == c); + }), + (br.isBuffer = Ts), + (br.isDate = Ps), + (br.isElement = function (e) { + return Gs(e) && 1 === e.nodeType && !qs(e); + }), + (br.isEmpty = function (e) { + if (null == e) return !0; + if ( + Ks(e) && + (Ns(e) || + 'string' == typeof e || + 'function' == typeof e.splice || + Ts(e) || + Zs(e) || + Ms(e)) + ) + return !e.length; + var t = ro(e); + if (t == f || t == E) return !e.size; + if (lo(e)) return !Qn(e).length; + for (var r in e) if (Qe.call(e, r)) return !1; + return !0; + }), + (br.isEqual = function (e, t) { + return mn(e, t); + }), + (br.isEqualWith = function (e, t, r) { + var n = (r = 'function' == typeof r ? r : void 0) ? r(e, t) : void 0; + return void 0 === n ? mn(e, t, void 0, r) : !!n; + }), + (br.isError = Us), + (br.isFinite = function (e) { + return 'number' == typeof e && rr(e); + }), + (br.isFunction = _s), + (br.isInteger = Os), + (br.isLength = js), + (br.isMap = Js), + (br.isMatch = function (e, t) { + return e === t || yn(e, t, Zi(t)); + }), + (br.isMatchWith = function (e, t, r) { + return (r = 'function' == typeof r ? r : void 0), yn(e, t, Zi(t), r); + }), + (br.isNaN = function (e) { + return Hs(e) && e != +e; + }), + (br.isNative = function (e) { + if (uo(e)) + throw new he('Unsupported core-js use. Try https://npms.io/search?q=ponyfill.'); + return wn(e); + }), + (br.isNil = function (e) { + return null == e; + }), + (br.isNull = function (e) { + return null === e; + }), + (br.isNumber = Hs), + (br.isObject = Ys), + (br.isObjectLike = Gs), + (br.isPlainObject = qs), + (br.isRegExp = zs), + (br.isSafeInteger = function (e) { + return Os(e) && e >= -9007199254740991 && e <= 9007199254740991; + }), + (br.isSet = Ws), + (br.isString = Vs), + (br.isSymbol = Xs), + (br.isTypedArray = Zs), + (br.isUndefined = function (e) { + return void 0 === e; + }), + (br.isWeakMap = function (e) { + return Gs(e) && ro(e) == y; + }), + (br.isWeakSet = function (e) { + return Gs(e) && '[object WeakSet]' == gn(e); + }), + (br.join = function (e, t) { + return null == e ? '' : nr.call(e, t); + }), + (br.kebabCase = NA), + (br.last = Uo), + (br.lastIndexOf = function (e, t, r) { + var n = null == e ? 0 : e.length; + if (!n) return -1; + var i = n; + return ( + void 0 !== r && (i = (i = nA(r)) < 0 ? or(n + i, 0) : sr(i, n - 1)), + t == t + ? (function (e, t, r) { + for (var n = r + 1; n--; ) if (e[n] === t) return n; + return n; + })(e, t, i) + : It(e, wt, i, !0) + ); + }), + (br.lowerCase = RA), + (br.lowerFirst = KA), + (br.lt = $s), + (br.lte = eA), + (br.max = function (e) { + return e && e.length ? rn(e, HA, fn) : void 0; + }), + (br.maxBy = function (e, t) { + return e && e.length ? rn(e, Vi(t, 2), fn) : void 0; + }), + (br.mean = function (e) { + return Bt(e, HA); + }), + (br.meanBy = function (e, t) { + return Bt(e, Vi(t, 2)); + }), + (br.min = function (e) { + return e && e.length ? rn(e, HA, Dn) : void 0; + }), + (br.minBy = function (e, t) { + return e && e.length ? rn(e, Vi(t, 2), Dn) : void 0; + }), + (br.stubArray = ia), + (br.stubFalse = oa), + (br.stubObject = function () { + return {}; + }), + (br.stubString = function () { + return ''; + }), + (br.stubTrue = function () { + return !0; + }), + (br.multiply = la), + (br.nth = function (e, t) { + return e && e.length ? Fn(e, nA(t)) : void 0; + }), + (br.noConflict = function () { + return He._ === this && (He._ = ke), this; + }), + (br.noop = XA), + (br.now = ps), + (br.pad = function (e, t, r) { + e = AA(e); + var n = (t = nA(t)) ? Gt(e) : 0; + if (!t || n >= t) return e; + var i = (t - n) / 2; + return Mi($t(i), r) + e + Mi(Zt(i), r); + }), + (br.padEnd = function (e, t, r) { + e = AA(e); + var n = (t = nA(t)) ? Gt(e) : 0; + return t && n < t ? e + Mi(t - n, r) : e; + }), + (br.padStart = function (e, t, r) { + e = AA(e); + var n = (t = nA(t)) ? Gt(e) : 0; + return t && n < t ? Mi(t - n, r) + e : e; + }), + (br.parseInt = function (e, t, r) { + return r || null == t ? (t = 0) : t && (t = +t), ar(AA(e).replace(z, ''), t || 0); + }), + (br.random = function (e, t, r) { + if ( + (r && 'boolean' != typeof r && Ao(e, t, r) && (t = r = void 0), + void 0 === r && + ('boolean' == typeof t + ? ((r = t), (t = void 0)) + : 'boolean' == typeof e && ((r = e), (e = void 0))), + void 0 === e && void 0 === t + ? ((e = 0), (t = 1)) + : ((e = rA(e)), void 0 === t ? ((t = e), (e = 0)) : (t = rA(t))), + e > t) + ) { + var n = e; + (e = t), (t = n); + } + if (r || e % 1 || t % 1) { + var i = cr(); + return sr(e + i * (t - e + je('1e-' + ((i + '').length - 1))), t); + } + return Ln(e, t); + }), + (br.reduce = function (e, t, r) { + var n = Ns(e) ? ft : Dt, + i = arguments.length < 3; + return n(e, Vi(t, 4), r, i, $r); + }), + (br.reduceRight = function (e, t, r) { + var n = Ns(e) ? pt : Dt, + i = arguments.length < 3; + return n(e, Vi(t, 4), r, i, en); + }), + (br.repeat = function (e, t, r) { + return (t = (r ? Ao(e, t, r) : void 0 === t) ? 1 : nA(t)), Tn(AA(e), t); + }), + (br.replace = function () { + var e = arguments, + t = AA(e[0]); + return e.length < 3 ? t : t.replace(e[1], e[2]); + }), + (br.result = function (e, t, r) { + var n = -1, + i = (t = Ai(t, e)).length; + for (i || ((i = 1), (e = void 0)); ++n < i; ) { + var o = null == e ? void 0 : e[Do(t[n])]; + void 0 === o && ((n = i), (o = r)), (e = _s(o) ? o.call(e) : o); + } + return e; + }), + (br.round = ha), + (br.runInContext = e), + (br.sample = function (e) { + return (Ns(e) ? Pr : Un)(e); + }), + (br.size = function (e) { + if (null == e) return 0; + if (Ks(e)) return Vs(e) ? Gt(e) : e.length; + var t = ro(e); + return t == f || t == E ? e.size : Qn(e).length; + }), + (br.snakeCase = LA), + (br.some = function (e, t, r) { + var n = Ns(e) ? dt : Hn; + return r && Ao(e, t, r) && (t = void 0), n(e, Vi(t, 3)); + }), + (br.sortedIndex = function (e, t) { + return qn(e, t); + }), + (br.sortedIndexBy = function (e, t, r) { + return zn(e, t, Vi(r, 2)); + }), + (br.sortedIndexOf = function (e, t) { + var r = null == e ? 0 : e.length; + if (r) { + var n = qn(e, t); + if (n < r && ks(e[n], t)) return n; + } + return -1; + }), + (br.sortedLastIndex = function (e, t) { + return qn(e, t, !0); + }), + (br.sortedLastIndexBy = function (e, t, r) { + return zn(e, t, Vi(r, 2), !0); + }), + (br.sortedLastIndexOf = function (e, t) { + if (null == e ? 0 : e.length) { + var r = qn(e, t, !0) - 1; + if (ks(e[r], t)) return r; + } + return -1; + }), + (br.startCase = TA), + (br.startsWith = function (e, t, r) { + return ( + (e = AA(e)), + (r = null == r ? 0 : zr(nA(r), 0, e.length)), + (t = Xn(t)), + e.slice(r, r + t.length) == t + ); + }), + (br.subtract = ga), + (br.sum = function (e) { + return e && e.length ? bt(e, HA) : 0; + }), + (br.sumBy = function (e, t) { + return e && e.length ? bt(e, Vi(t, 2)) : 0; + }), + (br.template = function (e, t, r) { + var n = br.templateSettings; + r && Ao(e, t, r) && (t = void 0), (e = AA(e)), (t = uA({}, t, n, _i)); + var i, + o, + s = uA({}, t.imports, n.imports, _i), + A = mA(s), + a = xt(s, A), + c = 0, + u = t.interpolate || ce, + l = "__p += '", + h = de( + (t.escape || ce).source + + '|' + + u.source + + '|' + + (u === O ? te : ce).source + + '|' + + (t.evaluate || ce).source + + '|$', + 'g' + ), + g = + '//# sourceURL=' + + (Qe.call(t, 'sourceURL') + ? (t.sourceURL + '').replace(/[\r\n]/g, ' ') + : 'lodash.templateSources[' + ++Pe + ']') + + '\n'; + e.replace(h, function (t, r, n, s, A, a) { + return ( + n || (n = s), + (l += e.slice(c, a).replace(ue, Tt)), + r && ((i = !0), (l += "' +\n__e(" + r + ") +\n'")), + A && ((o = !0), (l += "';\n" + A + ";\n__p += '")), + n && (l += "' +\n((__t = (" + n + ")) == null ? '' : __t) +\n'"), + (c = a + t.length), + t + ); + }), + (l += "';\n"); + var f = Qe.call(t, 'variable') && t.variable; + f || (l = 'with (obj) {\n' + l + '\n}\n'), + (l = (o ? l.replace(M, '') : l).replace(N, '$1').replace(R, '$1;')), + (l = + 'function(' + + (f || 'obj') + + ') {\n' + + (f ? '' : 'obj || (obj = {});\n') + + "var __t, __p = ''" + + (i ? ', __e = _.escape' : '') + + (o + ? ", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n" + : ';\n') + + l + + 'return __p\n}'); + var p = OA(function () { + return ge(A, g + 'return ' + l).apply(void 0, a); + }); + if (((p.source = l), Us(p))) throw p; + return p; + }), + (br.times = function (e, t) { + if ((e = nA(e)) < 1 || e > 9007199254740991) return []; + var r = 4294967295, + n = sr(e, 4294967295); + e -= 4294967295; + for (var i = St(n, (t = Vi(t))); ++r < e; ) t(r); + return i; + }), + (br.toFinite = rA), + (br.toInteger = nA), + (br.toLength = iA), + (br.toLower = function (e) { + return AA(e).toLowerCase(); + }), + (br.toNumber = oA), + (br.toSafeInteger = function (e) { + return e ? zr(nA(e), -9007199254740991, 9007199254740991) : 0 === e ? e : 0; + }), + (br.toString = AA), + (br.toUpper = function (e) { + return AA(e).toUpperCase(); + }), + (br.trim = function (e, t, r) { + if ((e = AA(e)) && (r || void 0 === t)) return e.replace(q, ''); + if (!e || !(t = Xn(t))) return e; + var n = Jt(e), + i = Jt(t); + return ci(n, Mt(n, i), Nt(n, i) + 1).join(''); + }), + (br.trimEnd = function (e, t, r) { + if ((e = AA(e)) && (r || void 0 === t)) return e.replace(W, ''); + if (!e || !(t = Xn(t))) return e; + var n = Jt(e); + return ci(n, 0, Nt(n, Jt(t)) + 1).join(''); + }), + (br.trimStart = function (e, t, r) { + if ((e = AA(e)) && (r || void 0 === t)) return e.replace(z, ''); + if (!e || !(t = Xn(t))) return e; + var n = Jt(e); + return ci(n, Mt(n, Jt(t))).join(''); + }), + (br.truncate = function (e, t) { + var r = 30, + n = '...'; + if (Ys(t)) { + var i = 'separator' in t ? t.separator : i; + (r = 'length' in t ? nA(t.length) : r), + (n = 'omission' in t ? Xn(t.omission) : n); + } + var o = (e = AA(e)).length; + if (Pt(e)) { + var s = Jt(e); + o = s.length; + } + if (r >= o) return e; + var A = r - Gt(n); + if (A < 1) return n; + var a = s ? ci(s, 0, A).join('') : e.slice(0, A); + if (void 0 === i) return a + n; + if ((s && (A += a.length - A), zs(i))) { + if (e.slice(A).search(i)) { + var c, + u = a; + for ( + i.global || (i = de(i.source, AA(re.exec(i)) + 'g')), i.lastIndex = 0; + (c = i.exec(u)); + + ) + var l = c.index; + a = a.slice(0, void 0 === l ? A : l); + } + } else if (e.indexOf(Xn(i), A) != A) { + var h = a.lastIndexOf(i); + h > -1 && (a = a.slice(0, h)); + } + return a + n; + }), + (br.unescape = function (e) { + return (e = AA(e)) && T.test(e) ? e.replace(K, Ht) : e; + }), + (br.uniqueId = function (e) { + var t = ++ve; + return AA(e) + t; + }), + (br.upperCase = PA), + (br.upperFirst = UA), + (br.each = As), + (br.eachRight = as), + (br.first = Ko), + VA( + br, + ((ua = {}), + an(br, function (e, t) { + Qe.call(br.prototype, t) || (ua[t] = e); + }), + ua), + { chain: !1 } + ), + (br.VERSION = '4.17.15'), + st(['bind', 'bindKey', 'curry', 'curryRight', 'partial', 'partialRight'], function ( + e + ) { + br[e].placeholder = br; + }), + st(['drop', 'take'], function (e, t) { + (Fr.prototype[e] = function (r) { + r = void 0 === r ? 1 : or(nA(r), 0); + var n = this.__filtered__ && !t ? new Fr(this) : this.clone(); + return ( + n.__filtered__ + ? (n.__takeCount__ = sr(r, n.__takeCount__)) + : n.__views__.push({ + size: sr(r, 4294967295), + type: e + (n.__dir__ < 0 ? 'Right' : ''), + }), + n + ); + }), + (Fr.prototype[e + 'Right'] = function (t) { + return this.reverse()[e](t).reverse(); + }); + }), + st(['filter', 'map', 'takeWhile'], function (e, t) { + var r = t + 1, + n = 1 == r || 3 == r; + Fr.prototype[e] = function (e) { + var t = this.clone(); + return ( + t.__iteratees__.push({ iteratee: Vi(e, 3), type: r }), + (t.__filtered__ = t.__filtered__ || n), + t + ); + }; + }), + st(['head', 'last'], function (e, t) { + var r = 'take' + (t ? 'Right' : ''); + Fr.prototype[e] = function () { + return this[r](1).value()[0]; + }; + }), + st(['initial', 'tail'], function (e, t) { + var r = 'drop' + (t ? '' : 'Right'); + Fr.prototype[e] = function () { + return this.__filtered__ ? new Fr(this) : this[r](1); + }; + }), + (Fr.prototype.compact = function () { + return this.filter(HA); + }), + (Fr.prototype.find = function (e) { + return this.filter(e).head(); + }), + (Fr.prototype.findLast = function (e) { + return this.reverse().find(e); + }), + (Fr.prototype.invokeMap = Pn(function (e, t) { + return 'function' == typeof e + ? new Fr(this) + : this.map(function (r) { + return En(r, e, t); + }); + })), + (Fr.prototype.reject = function (e) { + return this.filter(Qs(Vi(e))); + }), + (Fr.prototype.slice = function (e, t) { + e = nA(e); + var r = this; + return r.__filtered__ && (e > 0 || t < 0) + ? new Fr(r) + : (e < 0 ? (r = r.takeRight(-e)) : e && (r = r.drop(e)), + void 0 !== t && (r = (t = nA(t)) < 0 ? r.dropRight(-t) : r.take(t - e)), + r); + }), + (Fr.prototype.takeRightWhile = function (e) { + return this.reverse().takeWhile(e).reverse(); + }), + (Fr.prototype.toArray = function () { + return this.take(4294967295); + }), + an(Fr.prototype, function (e, t) { + var r = /^(?:filter|find|map|reject)|While$/.test(t), + n = /^(?:head|last)$/.test(t), + i = br[n ? 'take' + ('last' == t ? 'Right' : '') : t], + o = n || /^find/.test(t); + i && + (br.prototype[t] = function () { + var t = this.__wrapped__, + s = n ? [1] : arguments, + A = t instanceof Fr, + a = s[0], + c = A || Ns(t), + u = function (e) { + var t = i.apply(br, gt([e], s)); + return n && l ? t[0] : t; + }; + c && r && 'function' == typeof a && 1 != a.length && (A = c = !1); + var l = this.__chain__, + h = !!this.__actions__.length, + g = o && !l, + f = A && !h; + if (!o && c) { + t = f ? t : new Fr(this); + var p = e.apply(t, s); + return ( + p.__actions__.push({ func: rs, args: [u], thisArg: void 0 }), new xr(p, l) + ); + } + return g && f + ? e.apply(this, s) + : ((p = this.thru(u)), g ? (n ? p.value()[0] : p.value()) : p); + }); + }), + st(['pop', 'push', 'shift', 'sort', 'splice', 'unshift'], function (e) { + var t = Ie[e], + r = /^(?:push|sort|unshift)$/.test(e) ? 'tap' : 'thru', + n = /^(?:pop|shift)$/.test(e); + br.prototype[e] = function () { + var e = arguments; + if (n && !this.__chain__) { + var i = this.value(); + return t.apply(Ns(i) ? i : [], e); + } + return this[r](function (r) { + return t.apply(Ns(r) ? r : [], e); + }); + }; + }), + an(Fr.prototype, function (e, t) { + var r = br[t]; + if (r) { + var n = r.name + ''; + Qe.call(Er, n) || (Er[n] = []), Er[n].push({ name: t, func: r }); + } + }), + (Er[Si(void 0, 2).name] = [{ name: 'wrapper', func: void 0 }]), + (Fr.prototype.clone = function () { + var e = new Fr(this.__wrapped__); + return ( + (e.__actions__ = Ci(this.__actions__)), + (e.__dir__ = this.__dir__), + (e.__filtered__ = this.__filtered__), + (e.__iteratees__ = Ci(this.__iteratees__)), + (e.__takeCount__ = this.__takeCount__), + (e.__views__ = Ci(this.__views__)), + e + ); + }), + (Fr.prototype.reverse = function () { + if (this.__filtered__) { + var e = new Fr(this); + (e.__dir__ = -1), (e.__filtered__ = !0); + } else (e = this.clone()).__dir__ *= -1; + return e; + }), + (Fr.prototype.value = function () { + var e = this.__wrapped__.value(), + t = this.__dir__, + r = Ns(e), + n = t < 0, + i = r ? e.length : 0, + o = (function (e, t, r) { + var n = -1, + i = r.length; + for (; ++n < i; ) { + var o = r[n], + s = o.size; + switch (o.type) { + case 'drop': + e += s; + break; + case 'dropRight': + t -= s; + break; + case 'take': + t = sr(t, e + s); + break; + case 'takeRight': + e = or(e, t - s); + } + } + return { start: e, end: t }; + })(0, i, this.__views__), + s = o.start, + A = o.end, + a = A - s, + c = n ? A : s - 1, + u = this.__iteratees__, + l = u.length, + h = 0, + g = sr(a, this.__takeCount__); + if (!r || (!n && i == a && g == a)) return ri(e, this.__actions__); + var f = []; + e: for (; a-- && h < g; ) { + for (var p = -1, d = e[(c += t)]; ++p < l; ) { + var C = u[p], + E = C.iteratee, + I = C.type, + m = E(d); + if (2 == I) d = m; + else if (!m) { + if (1 == I) continue e; + break e; + } + } + f[h++] = d; + } + return f; + }), + (br.prototype.at = ns), + (br.prototype.chain = function () { + return ts(this); + }), + (br.prototype.commit = function () { + return new xr(this.value(), this.__chain__); + }), + (br.prototype.next = function () { + void 0 === this.__values__ && (this.__values__ = tA(this.value())); + var e = this.__index__ >= this.__values__.length; + return { done: e, value: e ? void 0 : this.__values__[this.__index__++] }; + }), + (br.prototype.plant = function (e) { + for (var t, r = this; r instanceof kr; ) { + var n = So(r); + (n.__index__ = 0), (n.__values__ = void 0), t ? (i.__wrapped__ = n) : (t = n); + var i = n; + r = r.__wrapped__; + } + return (i.__wrapped__ = e), t; + }), + (br.prototype.reverse = function () { + var e = this.__wrapped__; + if (e instanceof Fr) { + var t = e; + return ( + this.__actions__.length && (t = new Fr(this)), + (t = t.reverse()).__actions__.push({ func: rs, args: [Yo], thisArg: void 0 }), + new xr(t, this.__chain__) + ); + } + return this.thru(Yo); + }), + (br.prototype.toJSON = br.prototype.valueOf = br.prototype.value = function () { + return ri(this.__wrapped__, this.__actions__); + }), + (br.prototype.first = br.prototype.head), + Ct && + (br.prototype[Ct] = function () { + return this; + }), + br + ); + })(); + (He._ = qt), + void 0 === + (n = function () { + return qt; + }.call(t, r, t, e)) || (e.exports = n); + }.call(this); + }, + 27869: (e, t, r) => { + var n = r(60783), + i = r(42208), + o = r(26309), + s = r(82664); + e.exports = function (e, t) { + return (s(e) ? n : o)(e, i(t, 3)); + }; + }, + 5253: (e, t, r) => { + var n = r(91198), + i = r(62164), + o = r(42208); + e.exports = function (e, t) { + var r = {}; + return ( + (t = o(t, 3)), + i(e, function (e, i, o) { + n(r, t(e, i, o), e); + }), + r + ); + }; + }, + 89612: (e, t, r) => { + var n = r(91198), + i = r(62164), + o = r(42208); + e.exports = function (e, t) { + var r = {}; + return ( + (t = o(t, 3)), + i(e, function (e, i, o) { + n(r, i, t(e, i, o)); + }), + r + ); + }; + }, + 74499: (e, t, r) => { + var n = r(75009); + function i(e, t) { + if ('function' != typeof e || (null != t && 'function' != typeof t)) + throw new TypeError('Expected a function'); + var r = function () { + var n = arguments, + i = t ? t.apply(this, n) : n[0], + o = r.cache; + if (o.has(i)) return o.get(i); + var s = e.apply(this, n); + return (r.cache = o.set(i, s) || o), s; + }; + return (r.cache = new (i.Cache || n)()), r; + } + (i.Cache = n), (e.exports = i); + }, + 34791: (e) => { + e.exports = function () {}; + }, + 82740: (e, t, r) => { + var n = r(60783), + i = r(41076), + o = r(81622), + s = r(56725), + A = r(75182), + a = r(37306), + c = r(87298), + u = r(64420), + l = c(function (e, t) { + var r = {}; + if (null == e) return r; + var c = !1; + (t = n(t, function (t) { + return (t = s(t, e)), c || (c = t.length > 1), t; + })), + A(e, u(e), r), + c && (r = i(r, 7, a)); + for (var l = t.length; l--; ) o(r, t[l]); + return r; + }); + e.exports = l; + }, + 7430: (e, t, r) => { + var n = r(35400), + i = r(43018), + o = r(70474), + s = r(49874); + e.exports = function (e) { + return o(e) ? n(s(e)) : i(e); + }; + }, + 81534: (e, t, r) => { + var n = r(10624); + e.exports = function (e, t, r) { + return null == e ? e : n(e, t, r); + }; + }, + 36494: (e, t, r) => { + var n = r(30369)(function (e, t, r) { + return e + (r ? '_' : '') + t.toLowerCase(); + }); + e.exports = n; + }, + 62162: (e) => { + e.exports = function () { + return []; + }; + }, + 88988: (e) => { + e.exports = function () { + return !1; + }; + }, + 2614: (e, t, r) => { + var n = r(96815), + i = r(61977); + e.exports = function (e) { + return e && e.length ? n(e, i) : 0; + }; + }, + 78700: (e, t, r) => { + var n = r(69976), + i = r(87229), + o = r(79435), + s = r(41929), + A = r(221), + a = r(82262), + c = r(7877), + u = r(7442), + l = r(30475), + h = r(24448), + g = n ? n.iterator : void 0; + e.exports = function (e) { + if (!e) return []; + if (s(e)) return A(e) ? l(e) : i(e); + if (g && e[g]) return a(e[g]()); + var t = o(e); + return ('[object Map]' == t ? c : '[object Set]' == t ? u : h)(e); + }; + }, + 67770: (e, t, r) => { + var n = r(90257); + e.exports = function (e) { + return e + ? (e = n(e)) === 1 / 0 || e === -1 / 0 + ? 17976931348623157e292 * (e < 0 ? -1 : 1) + : e == e + ? e + : 0 + : 0 === e + ? e + : 0; + }; + }, + 864: (e, t, r) => { + var n = r(67770); + e.exports = function (e) { + var t = n(e), + r = t % 1; + return t == t ? (r ? t - r : t) : 0; + }; + }, + 90257: (e, t, r) => { + var n = r(46778), + i = r(65558), + o = /^\s+|\s+$/g, + s = /^[-+]0x[0-9a-f]+$/i, + A = /^0b[01]+$/i, + a = /^0o[0-7]+$/i, + c = parseInt; + e.exports = function (e) { + if ('number' == typeof e) return e; + if (i(e)) return NaN; + if (n(e)) { + var t = 'function' == typeof e.valueOf ? e.valueOf() : e; + e = n(t) ? t + '' : t; + } + if ('string' != typeof e) return 0 === e ? e : +e; + e = e.replace(o, ''); + var r = A.test(e); + return r || a.test(e) ? c(e.slice(2), r ? 2 : 8) : s.test(e) ? NaN : +e; + }; + }, + 33580: (e, t, r) => { + var n = r(35); + e.exports = function (e) { + return null == e ? '' : n(e); + }; + }, + 44852: (e, t, r) => { + var n = r(42150); + e.exports = function (e) { + return e && e.length ? n(e) : []; + }; + }, + 72609: (e, t, r) => { + var n = r(56989)('toUpperCase'); + e.exports = n; + }, + 24448: (e, t, r) => { + var n = r(18290), + i = r(42185); + e.exports = function (e) { + return null == e ? [] : n(e, i(e)); + }; + }, + 97684: (e, t, r) => { + var n = r(11852), + i = r(60466), + o = r(33580), + s = r(89887); + e.exports = function (e, t, r) { + return ( + (e = o(e)), void 0 === (t = r ? void 0 : t) ? (i(e) ? s(e) : n(e)) : e.match(t) || [] + ); + }; + }, + 58708: (e, t, r) => { + var n, + i = r(73789), + o = r(5817), + s = function (e, t) { + return (t.description = e), t; + }, + A = function (e, t, r) { + return s(e, function (e) { + return e instanceof t[r]; + }); + }; + ((n = {}).isNumTerm = s('a NumTerm (non-zero integer)', function (e) { + return e === (0 | e) && 0 !== e; + })), + (n.isNameTerm = s('a NameTerm (string)', function (e) { + return 'string' == typeof e && !/^-*[0-9]*$/.test(e); + })), + (n.isTerm = s('a Term (appropriate string or number)', function (e) { + return n.isNumTerm(e) || n.isNameTerm(e); + })), + (n.isWholeNumber = s('a whole number (integer >= 0)', function (e) { + return e === (0 | e) && e >= 0; + })), + (n.isFormula = A('a Formula', n, 'Formula')), + (n.isClause = A('a Clause', n, 'Clause')), + (n.isBits = A('a Bits', n, 'Bits')), + (n._isInteger = s('an integer', function (e) { + return e === (0 | e); + })), + (n._isFunction = s('a Function', function (e) { + return 'function' == typeof e; + })), + (n._isString = s('a String', function (e) { + return 'string' == typeof e; + })), + (n._isArrayWhere = function (e) { + var t = 'an array'; + return ( + e.description && (t += ' of ' + e.description), + s(t, function (t) { + if (o.isArray(t)) { + for (var r = 0; r < t.length; r++) if (!e(t[r])) return !1; + return !0; + } + return !1; + }) + ); + }), + (n._isFormulaOrTerm = s('a Formula or Term', function (e) { + return n.isFormula(e) || n.isTerm(e); + })), + (n._isFormulaOrTermOrBits = s('a Formula, Term, or Bits', function (e) { + return n.isFormula(e) || n.isBits(e) || n.isTerm(e); + })), + (n._MiniSat = i); + var a = n._isInteger, + c = n._isFunction, + u = n._isString, + l = n._isArrayWhere, + h = n._isFormulaOrTerm, + g = n._isFormulaOrTermOrBits; + n._assert = function (e, t, r) { + if (!t(e)) { + var n = 'string' == typeof e ? JSON.stringify(e) : e; + throw new Error(n + ' is not ' + (t.description || r)); + } + }; + var f = function (e, t, r) { + if (e !== t) throw new Error('Expected ' + t + ' args in ' + r + ', got ' + e); + }, + p = n._assert; + (n._assertIfEnabled = function (e, t, r) { + p && p(e, t, r); + }), + (n.disablingAssertions = function (e) { + var t = p; + try { + return (p = null), e(); + } finally { + p = t; + } + }), + (n._disablingTypeChecks = n.disablingAssertions), + (n.not = function (e) { + return ( + p && p(e, h), + e instanceof n.Formula + ? new n.NotFormula(e) + : 'number' == typeof e + ? -e + : '-' === e.charAt(0) + ? e.slice(1) + : '-' + e + ); + }), + (n.NAME_FALSE = '$F'), + (n.NAME_TRUE = '$T'), + (n.NUM_FALSE = 1), + (n.NUM_TRUE = 2), + (n.TRUE = n.NAME_TRUE), + (n.FALSE = n.NAME_FALSE), + (n.Formula = function () {}), + (n._defineFormula = function (e, t, r) { + p && p(e, c), + p && p(t, u), + (e.prototype = new n.Formula()), + (e.prototype.type = t), + r && o.extend(e.prototype, r); + }), + (n.Formula.prototype.generateClauses = function (e, t) { + throw new Error('Cannot generate this Formula; it must be expanded'); + }), + (n.Formula._nextGuid = 1), + (n.Formula.prototype._guid = null), + (n.Formula.prototype.guid = function () { + return null === this._guid && (this._guid = n.Formula._nextGuid++), this._guid; + }), + (n.Clause = function () { + var e = o.flatten(arguments); + p && p(e, l(n.isNumTerm)), (this.terms = e); + }), + (n.Clause.prototype.append = function () { + return new n.Clause(this.terms.concat(o.flatten(arguments))); + }); + var d = function () { + (this.varName = null), + (this.varNum = null), + (this.occursPositively = !1), + (this.occursNegatively = !1), + (this.isRequired = !1), + (this.isForbidden = !1); + }; + (n.Termifier = function (e) { + this.solver = e; + }), + (n.Termifier.prototype.clause = function () { + var e = this, + t = o.flatten(arguments); + return ( + p && p(t, l(h)), + new n.Clause( + o.map(t, function (t) { + return e.term(t); + }) + ) + ); + }), + (n.Termifier.prototype.term = function (e) { + return this.solver._formulaToTerm(e); + }), + (n.Termifier.prototype.generate = function (e, t) { + return this.solver._generateFormula(e, t, this); + }), + (n.Solver = function () { + (this.clauses = []), (this._num2name = [null]), (this._name2num = {}); + var e = this.getVarNum(n.NAME_FALSE, !1, !0), + t = this.getVarNum(n.NAME_TRUE, !1, !0); + if (e !== n.NUM_FALSE || t !== n.NUM_TRUE) + throw new Error('Assertion failure: $T and $F have wrong numeric value'); + (this._F_used = !1), + (this._T_used = !1), + this.clauses.push(new n.Clause(-n.NUM_FALSE)), + this.clauses.push(new n.Clause(n.NUM_TRUE)), + (this._formulaInfo = {}), + (this._nextFormulaNumByType = {}), + (this._ungeneratedFormulas = {}), + (this._numClausesAddedToMiniSat = 0), + (this._unsat = !1), + (this._minisat = new i()), + (this._termifier = new n.Termifier(this)); + }), + (n.Solver.prototype.getVarNum = function (e, t, r) { + var n = ' ' + e; + if (o.has(this._name2num, n)) return this._name2num[n]; + if (t) return 0; + if ('$' === e.charAt(0) && !r) + throw new Error('Only generated variable names can start with $'); + var i = this._num2name.length; + return (this._name2num[n] = i), this._num2name.push(e), i; + }), + (n.Solver.prototype.getVarName = function (e) { + p && p(e, a); + var t = this._num2name; + if (e < 1 || e >= t.length) throw new Error('Bad variable num: ' + e); + return t[e]; + }), + (n.Solver.prototype.toNumTerm = function (e, t) { + if ((p && p(e, n.isTerm), 'number' == typeof e)) return e; + for (var r = !1; '-' === e.charAt(0); ) (e = e.slice(1)), (r = !r); + var i = this.getVarNum(e, t); + return i ? (r ? -i : i) : 0; + }), + (n.Solver.prototype.toNameTerm = function (e) { + if ((p && p(e, n.isTerm), 'string' == typeof e)) { + for (; '--' === e.slice(0, 2); ) e = e.slice(2); + return e; + } + var t = !1; + return e < 0 && ((t = !0), (e = -e)), (e = this.getVarName(e)), t && (e = '-' + e), e; + }), + (n.Solver.prototype._addClause = function (e, t, r) { + p && p(e, n.isClause); + var i = null; + t && ((i = t), p && p(i, l(n.isNumTerm))); + var o = !1, + s = !1, + A = e.terms.length; + i && (e = e.append(i)); + for (var a = 0; a < e.terms.length; a++) { + var c = e.terms[a], + u = c < 0 ? -c : c; + if (u === n.NUM_FALSE) o = !0; + else if (u === n.NUM_TRUE) s = !0; + else { + if (u < 1 || u >= this._num2name.length) + throw new Error('Bad variable number: ' + u); + a < A && (r ? r(c) : this._useFormulaTerm(c)); + } + } + (this._F_used = this._F_used || o), + (this._T_used = this._T_used || s), + this.clauses.push(e); + }), + (n.Solver.prototype._useFormulaTerm = function (e, t) { + var r = this; + p && p(e, n.isNumTerm); + var i = e < 0 ? -e : e; + if (o.has(r._ungeneratedFormulas, i)) { + var s, + A = r._ungeneratedFormulas[i], + a = r._getFormulaInfo(A), + c = e > 0, + u = null; + if ( + (t + ? (s = t) + : ((u = []), + (s = function (e, t) { + u.push({ clauses: e, extraTerms: t }); + })), + c && !a.occursPositively) + ) { + a.occursPositively = !0; + var l = r._generateFormula(!0, A); + s(l, [-i]); + } else if (!c && !a.occursNegatively) { + a.occursNegatively = !0; + l = r._generateFormula(!1, A); + s(l, [i]); + } + if ( + (a.occursPositively && a.occursNegatively && delete r._ungeneratedFormulas[i], + u && u.length) + ) + for ( + var h = function (e) { + r._useFormulaTerm(e, s); + }; + u.length; + + ) { + var g = u.pop(); + r._addClauses(g.clauses, g.extraTerms, h); + } + } + }), + (n.Solver.prototype._addClauses = function (e, t, r) { + p && p(e, l(n.isClause)); + var i = this; + o.each(e, function (e) { + i._addClause(e, t, r); + }); + }), + (n.Solver.prototype.require = function () { + this._requireForbidImpl(!0, o.flatten(arguments)); + }), + (n.Solver.prototype.forbid = function () { + this._requireForbidImpl(!1, o.flatten(arguments)); + }), + (n.Solver.prototype._requireForbidImpl = function (e, t) { + var r = this; + p && p(t, l(h)), + o.each(t, function (t) { + if (t instanceof n.NotFormula) r._requireForbidImpl(!e, [t.operand]); + else if (t instanceof n.Formula) { + var i = r._getFormulaInfo(t); + if (null !== i.varNum) { + var o = e ? 1 : -1; + r._addClause(new n.Clause(o * i.varNum)); + } else r._addClauses(r._generateFormula(e, t)); + e ? (i.isRequired = !0) : (i.isForbidden = !0); + } else r._addClauses(r._generateFormula(e, t)); + }); + }), + (n.Solver.prototype._generateFormula = function (e, t, r) { + if ((p && p(t, h), t instanceof n.NotFormula)) + return this._generateFormula(!e, t.operand); + if (t instanceof n.Formula) { + var i = this._getFormulaInfo(t); + if ((e && i.isRequired) || (!e && i.isForbidden)) return []; + if ((e && i.isForbidden) || (!e && i.isRequired)) return [new n.Clause()]; + var s = t.generateClauses(e, r || this._termifier); + return o.isArray(s) ? s : [s]; + } + var A = this.toNumTerm(t), + a = e ? 1 : -1; + return A === a * n.NUM_TRUE || A === -a * n.NUM_FALSE + ? [] + : A === a * n.NUM_FALSE || A === -a * n.NUM_TRUE + ? [new n.Clause()] + : [new n.Clause(a * A)]; + }), + (n.Solver.prototype._clauseData = function () { + var e = o.pluck(this.clauses, 'terms'); + return this._T_used || e.splice(1, 1), this._F_used || e.splice(0, 1), e; + }), + (n.Solver.prototype._clauseStrings = function () { + var e = this, + t = e._clauseData(); + return o.map(t, function (t) { + return o + .map(t, function (t) { + var r = e.toNameTerm(t); + if (/\s/.test(r)) { + var n = ''; + '-' === r.charAt(0) && ((n = '-'), (r = r.slice(1))), (r = n + '"' + r + '"'); + } + return r; + }) + .join(' v '); + }); + }), + (n.Solver.prototype._getFormulaInfo = function (e, t) { + var r = e.guid(); + if (!this._formulaInfo[r]) { + if (t) return null; + this._formulaInfo[r] = new d(); + } + return this._formulaInfo[r]; + }), + (n.Solver.prototype._formulaToTerm = function (e) { + if (o.isArray(e)) return p && p(e, l(h)), o.map(e, o.bind(this._formulaToTerm, this)); + if ((p && p(e, h), e instanceof n.NotFormula)) + return n.not(this._formulaToTerm(e.operand)); + if (e instanceof n.Formula) { + var t = this._getFormulaInfo(e); + if (t.isRequired) return n.NUM_TRUE; + if (t.isForbidden) return n.NUM_FALSE; + if (null === t.varNum) { + var r = e.type; + this._nextFormulaNumByType[r] || (this._nextFormulaNumByType[r] = 1); + var i = this._nextFormulaNumByType[r]++; + (t.varName = '$' + e.type + i), + (t.varNum = this.getVarNum(t.varName, !1, !0)), + (this._ungeneratedFormulas[t.varNum] = e); + } + return t.varNum; + } + return this.toNumTerm(e); + }), + (n.or = function () { + var e = o.flatten(arguments); + return 0 === e.length + ? n.FALSE + : 1 === e.length + ? (p && p(e[0], h), e[0]) + : new n.OrFormula(e); + }), + (n.OrFormula = function (e) { + p && p(e, l(h)), (this.operands = e); + }), + n._defineFormula(n.OrFormula, 'or', { + generateClauses: function (e, t) { + if (e) return t.clause(this.operands); + var r = []; + return ( + o.each(this.operands, function (e) { + r.push.apply(r, t.generate(!1, e)); + }), + r + ); + }, + }), + (n.NotFormula = function (e) { + p && p(e, h), (this.operand = e); + }), + n._defineFormula(n.NotFormula, 'not'), + (n.and = function () { + var e = o.flatten(arguments); + return 0 === e.length + ? n.TRUE + : 1 === e.length + ? (p && p(e[0], h), e[0]) + : new n.AndFormula(e); + }), + (n.AndFormula = function (e) { + p && p(e, l(h)), (this.operands = e); + }), + n._defineFormula(n.AndFormula, 'and', { + generateClauses: function (e, t) { + if (e) { + var r = []; + return ( + o.each(this.operands, function (e) { + r.push.apply(r, t.generate(!0, e)); + }), + r + ); + } + return t.clause(o.map(this.operands, n.not)); + }, + }); + var C = function (e, t) { + for (var r = [], n = 0; n < e.length; n += t) r.push(e.slice(n, n + t)); + return r; + }; + (n.xor = function () { + var e = o.flatten(arguments); + return 0 === e.length + ? n.FALSE + : 1 === e.length + ? (p && p(e[0], h), e[0]) + : new n.XorFormula(e); + }), + (n.XorFormula = function (e) { + p && p(e, l(h)), (this.operands = e); + }), + n._defineFormula(n.XorFormula, 'xor', { + generateClauses: function (e, t) { + var r = this.operands, + i = n.not; + if (r.length > 3) + return t.generate( + e, + n.xor( + o.map(C(this.operands, 3), function (e) { + return n.xor(e); + }) + ) + ); + if (e) { + if (0 === r.length) return t.clause(); + if (1 === r.length) return t.clause(r[0]); + if (2 === r.length) { + var s = r[0], + A = r[1]; + return [t.clause(s, A), t.clause(i(s), i(A))]; + } + if (3 === r.length) { + (s = r[0]), (A = r[1]); + var a = r[2]; + return [ + t.clause(s, A, a), + t.clause(s, i(A), i(a)), + t.clause(i(s), A, i(a)), + t.clause(i(s), i(A), a), + ]; + } + } else { + if (0 === r.length) return []; + if (1 === r.length) return t.clause(i(r[0])); + if (2 === r.length) { + (s = r[0]), (A = r[1]); + return [t.clause(s, i(A)), t.clause(i(s), A)]; + } + if (3 === r.length) { + (s = r[0]), (A = r[1]), (a = r[2]); + return [ + t.clause(i(s), i(A), i(a)), + t.clause(i(s), A, a), + t.clause(s, i(A), a), + t.clause(s, A, i(a)), + ]; + } + } + }, + }), + (n.atMostOne = function () { + var e = o.flatten(arguments); + return e.length <= 1 ? n.TRUE : new n.AtMostOneFormula(e); + }), + (n.AtMostOneFormula = function (e) { + p && p(e, l(h)), (this.operands = e); + }), + n._defineFormula(n.AtMostOneFormula, 'atMostOne', { + generateClauses: function (e, t) { + var r = this.operands, + i = n.not; + if (r.length <= 1) return []; + if (2 === r.length) return t.generate(e, n.not(n.and(r))); + if (e && 3 === r.length) { + for (var s = [], A = 0; A < r.length; A++) + for (var a = A + 1; a < r.length; a++) s.push(t.clause(i(r[A]), i(r[a]))); + return s; + } + if (e || 3 !== r.length) { + var c = C(r, 3), + u = o.map(c, function (e) { + return n.or(e); + }); + c[c.length - 1].length < 2 && c.pop(); + var l = o.map(c, function (e) { + return n.atMostOne(e); + }); + return t.generate(e, n.and(n.atMostOne(u), l)); + } + var h = r[0], + g = r[1], + f = r[2]; + return [t.clause(h, g), t.clause(h, f), t.clause(g, f)]; + }, + }), + (n.implies = function (e, t) { + return p && f(arguments.length, 2, 'Logic.implies'), new n.ImpliesFormula(e, t); + }), + (n.ImpliesFormula = function (e, t) { + p && p(e, h), + p && p(t, h), + p && f(arguments.length, 2, 'Logic.implies'), + (this.A = e), + (this.B = t); + }), + n._defineFormula(n.ImpliesFormula, 'implies', { + generateClauses: function (e, t) { + return t.generate(e, n.or(n.not(this.A), this.B)); + }, + }), + (n.equiv = function (e, t) { + return p && f(arguments.length, 2, 'Logic.equiv'), new n.EquivFormula(e, t); + }), + (n.EquivFormula = function (e, t) { + p && p(e, h), + p && p(t, h), + p && f(arguments.length, 2, 'Logic.equiv'), + (this.A = e), + (this.B = t); + }), + n._defineFormula(n.EquivFormula, 'equiv', { + generateClauses: function (e, t) { + return t.generate(!e, n.xor(this.A, this.B)); + }, + }), + (n.exactlyOne = function () { + var e = o.flatten(arguments); + return 0 === e.length + ? n.FALSE + : 1 === e.length + ? (p && p(e[0], h), e[0]) + : new n.ExactlyOneFormula(e); + }), + (n.ExactlyOneFormula = function (e) { + p && p(e, l(h)), (this.operands = e); + }), + n._defineFormula(n.ExactlyOneFormula, 'exactlyOne', { + generateClauses: function (e, t) { + var r = this.operands; + return r.length < 3 + ? t.generate(e, n.xor(r)) + : t.generate(e, n.and(n.atMostOne(r), n.or(r))); + }, + }), + (n.Bits = function (e) { + p && p(e, l(h)), (this.bits = e); + }), + (n.constantBits = function (e) { + p && p(e, n.isWholeNumber); + for (var t = []; e; ) t.push(1 & e ? n.TRUE : n.FALSE), (e >>>= 1); + return new n.Bits(t); + }), + (n.variableBits = function (e, t) { + p && p(t, n.isWholeNumber); + for (var r = [], i = 0; i < t; i++) r.push(e + '$' + i); + return new n.Bits(r); + }), + (n.lessThanOrEqual = function (e, t) { + return new n.LessThanOrEqualFormula(e, t); + }), + (n.LessThanOrEqualFormula = function (e, t) { + p && p(e, n.isBits), + p && p(t, n.isBits), + p && f(arguments.length, 2, 'Bits comparison function'), + (this.bits1 = e), + (this.bits2 = t); + }); + var E = function (e, t, r, i) { + var s = [], + A = e.bits.slice(), + a = t.bits.slice(); + if (i && !t.bits.length) return r.clause(); + for (; A.length > a.length; ) { + var c = A.pop(); + s.push(r.clause(n.not(c))); + } + for ( + var u = o.map(a, function (e, t) { + return t < A.length ? n.xor(A[t], e) : e; + }), + l = A.length - 1; + l >= 0; + l-- + ) + s.push(r.clause(u.slice(l + 1), n.not(A[l]), a[l])); + return i && s.push.apply(s, r.generate(!0, n.or(u))), s; + }; + n._defineFormula(n.LessThanOrEqualFormula, 'lte', { + generateClauses: function (e, t) { + return e ? E(this.bits1, this.bits2, t, !1) : E(this.bits2, this.bits1, t, !0); + }, + }), + (n.lessThan = function (e, t) { + return new n.LessThanFormula(e, t); + }), + (n.LessThanFormula = function (e, t) { + p && p(e, n.isBits), + p && p(t, n.isBits), + p && f(arguments.length, 2, 'Bits comparison function'), + (this.bits1 = e), + (this.bits2 = t); + }), + n._defineFormula(n.LessThanFormula, 'lt', { + generateClauses: function (e, t) { + return e ? E(this.bits1, this.bits2, t, !0) : E(this.bits2, this.bits1, t, !1); + }, + }), + (n.greaterThan = function (e, t) { + return n.lessThan(t, e); + }), + (n.greaterThanOrEqual = function (e, t) { + return n.lessThanOrEqual(t, e); + }), + (n.equalBits = function (e, t) { + return new n.EqualBitsFormula(e, t); + }), + (n.EqualBitsFormula = function (e, t) { + p && p(e, n.isBits), + p && p(t, n.isBits), + p && f(arguments.length, 2, 'Logic.equalBits'), + (this.bits1 = e), + (this.bits2 = t); + }), + n._defineFormula(n.EqualBitsFormula, 'equalBits', { + generateClauses: function (e, t) { + for ( + var r = this.bits1.bits, + i = this.bits2.bits, + o = Math.max(r.length, i.length), + s = [], + A = 0; + A < o; + A++ + ) + A >= r.length + ? s.push(n.not(i[A])) + : A >= i.length + ? s.push(n.not(r[A])) + : s.push(n.equiv(r[A], i[A])); + return t.generate(e, n.and(s)); + }, + }), + (n.HalfAdderSum = function (e, t) { + p && p(e, h), + p && p(t, h), + p && f(arguments.length, 2, 'Logic.HalfAdderSum'), + (this.a = e), + (this.b = t); + }), + n._defineFormula(n.HalfAdderSum, 'hsum', { + generateClauses: function (e, t) { + return t.generate(e, n.xor(this.a, this.b)); + }, + }), + (n.HalfAdderCarry = function (e, t) { + p && p(e, h), + p && p(t, h), + p && f(arguments.length, 2, 'Logic.HalfAdderCarry'), + (this.a = e), + (this.b = t); + }), + n._defineFormula(n.HalfAdderCarry, 'hcarry', { + generateClauses: function (e, t) { + return t.generate(e, n.and(this.a, this.b)); + }, + }), + (n.FullAdderSum = function (e, t, r) { + p && p(e, h), + p && p(t, h), + p && p(r, h), + p && f(arguments.length, 3, 'Logic.FullAdderSum'), + (this.a = e), + (this.b = t), + (this.c = r); + }), + n._defineFormula(n.FullAdderSum, 'fsum', { + generateClauses: function (e, t) { + return t.generate(e, n.xor(this.a, this.b, this.c)); + }, + }), + (n.FullAdderCarry = function (e, t, r) { + p && p(e, h), + p && p(t, h), + p && p(r, h), + p && f(arguments.length, 3, 'Logic.FullAdderCarry'), + (this.a = e), + (this.b = t), + (this.c = r); + }), + n._defineFormula(n.FullAdderCarry, 'fcarry', { + generateClauses: function (e, t) { + return t.generate(!e, n.atMostOne(this.a, this.b, this.c)); + }, + }); + var I = function (e) { + p && p(e, l(l(h))); + for (var t = o.map(e, o.clone), r = 0, i = []; r < t.length; ) { + var s = t[r]; + if (s.length) + if (1 === s.length) i.push(s[0]), r++; + else if (2 === s.length) { + var A = new n.HalfAdderSum(s[0], s[1]), + a = new n.HalfAdderCarry(s[0], s[1]); + (s.length = 0), s.push(A), m(t, r + 1, a); + } else { + var c = s.pop(), + u = s.pop(), + g = s.pop(); + (A = new n.FullAdderSum(g, u, c)), (a = new n.FullAdderCarry(g, u, c)); + s.push(A), m(t, r + 1, a); + } + else i.push(n.FALSE), r++; + } + return i; + }, + m = function (e, t, r) { + for (; t >= e.length; ) e.push([]); + e[t].push(r); + }, + y = function (e, t) { + if ((p && p(e, l(h)), 'number' == typeof t)) p && p(t, n.isWholeNumber); + else if ((p && p(t, l(n.isWholeNumber)), e.length !== t.length)) + throw new Error( + 'Formula array and weight array must be same length; they are ' + + e.length + + ' and ' + + t.length + ); + }; + (n.weightedSum = function (e, t) { + if ((y(e, t), 0 === e.length)) return new n.Bits([]); + 'number' == typeof t && + (t = o.map(e, function () { + return t; + })); + var r = []; + return ( + o.each(e, function (e, n) { + for (var i = t[n], o = 0; i; ) 1 & i && m(r, o, e), (i >>>= 1), o++; + }), + new n.Bits(I(r)) + ); + }), + (n.sum = function () { + var e = o.flatten(arguments); + p && p(e, l(g)); + var t = []; + return ( + o.each(e, function (e) { + e instanceof n.Bits + ? o.each(e.bits, function (e, r) { + m(t, r, e); + }) + : m(t, 0, e); + }), + new n.Bits(I(t)) + ); + }), + (n.Solver.prototype.solve = function (e) { + if (void 0 !== e && !(e >= 1)) throw new Error('_assumpVar must be a variable number'); + if (this._unsat) return null; + for (; this._numClausesAddedToMiniSat < this.clauses.length; ) { + var t = this._numClausesAddedToMiniSat, + r = this.clauses[t].terms; + p && p(r, l(n.isNumTerm)); + var i = this._minisat.addClause(r); + if ((this._numClausesAddedToMiniSat++, !i)) return (this._unsat = !0), null; + } + return ( + p && p(this._num2name.length - 1, n.isWholeNumber), + this._minisat.ensureVar(this._num2name.length - 1), + (i = e ? this._minisat.solveAssuming(e) : this._minisat.solve()) + ? new n.Solution(this, this._minisat.getSolution()) + : (e || (this._unsat = !0), null) + ); + }), + (n.Solver.prototype.solveAssuming = function (e) { + p && p(e, h); + var t = new n.Assumption(e), + r = this._formulaToTerm(t); + if (!('number' == typeof r && r > 0)) + throw new Error('Assertion failure: not a positive numeric term'); + this._useFormulaTerm(r); + var i = this.solve(r); + return this._minisat.retireVar(r), i; + }), + (n.Assumption = function (e) { + p && p(e, h), (this.formula = e); + }), + n._defineFormula(n.Assumption, 'assump', { + generateClauses: function (e, t) { + return e ? t.clause(this.formula) : t.clause(n.not(this.formula)); + }, + }), + (n.Solution = function (e, t) { + var r = this; + (r._solver = e), + (r._assignment = t), + (r._ungeneratedFormulas = o.clone(e._ungeneratedFormulas)), + (r._formulaValueCache = {}), + (r._termifier = new n.Termifier(r._solver)), + (r._termifier.term = function (e) { + return r.evaluate(e) ? n.NUM_TRUE : n.NUM_FALSE; + }), + (r._ignoreUnknownVariables = !1); + }), + (n.Solution.prototype.ignoreUnknownVariables = function () { + this._ignoreUnknownVariables = !0; + }), + (n.Solution.prototype.getMap = function () { + for (var e = this._solver, t = this._assignment, r = {}, n = 1; n < t.length; n++) { + var i = e.getVarName(n); + i && '$' !== i.charAt(0) && (r[i] = t[n]); + } + return r; + }), + (n.Solution.prototype.getTrueVars = function () { + for (var e = this._solver, t = this._assignment, r = [], n = 1; n < t.length; n++) + if (t[n]) { + var i = e.getVarName(n); + i && '$' !== i.charAt(0) && r.push(i); + } + return r.sort(), r; + }), + (n.Solution.prototype.getFormula = function () { + for (var e = this._solver, t = this._assignment, r = [], i = 1; i < t.length; i++) { + var o = e.getVarName(i); + o && '$' !== o.charAt(0) && r.push(t[i] ? i : -i); + } + return n.and(r); + }), + (n.Solution.prototype.evaluate = function (e) { + var t = this; + if ((p && p(e, g), e instanceof n.Bits)) { + var r = 0; + return ( + o.each(e.bits, function (e, n) { + t.evaluate(e) && (r += 1 << n); + }), + r + ); + } + var i = t._solver, + s = t._ignoreUnknownVariables, + A = t._assignment, + a = e; + if (a instanceof n.NotFormula) return !t.evaluate(a.operand); + if (a instanceof n.Formula) { + var c = t._formulaValueCache[a.guid()]; + if ('boolean' == typeof c) return c; + var u = i._getFormulaInfo(a, !0); + if (u && u.varNum && u.varNum < A.length && !o.has(t._ungeneratedFormulas, u.varNum)) + h = A[u.varNum]; + else + var l = i._generateFormula(!0, a, t._termifier), + h = o.all(l, function (e) { + return o.any(e.terms, function (e) { + return t.evaluate(e); + }); + }); + return (t._formulaValueCache[a.guid()] = h), h; + } + var f = i.toNumTerm(a, !0); + if (!f) { + if (s) return !1; + var d = String(a).replace(/^-*/, ''); + throw new Error('No such variable: ' + d); + } + var C = f, + E = !1; + if ((f < 0 && ((C = -C), (E = !0)), C < 1 || C >= A.length)) { + d = C; + if ((C >= 1 && C < i._num2name.length && (d = i._num2name[C]), s)) return !1; + throw new Error('Variable not part of solution: ' + d); + } + r = A[C]; + return E && (r = !r), r; + }), + (n.Solution.prototype.getWeightedSum = function (e, t) { + y(e, t); + var r = 0; + if ('number' == typeof t) + for (var n = 0; n < e.length; n++) r += t * (this.evaluate(e[n]) ? 1 : 0); + else for (n = 0; n < e.length; n++) r += t[n] * (this.evaluate(e[n]) ? 1 : 0); + return r; + }); + var w = function (e, t) { + if ('number' == typeof t) return t ? e : []; + for (var r = [], n = 0; n < e.length; n++) t[n] && r.push(e[n]); + return r; + }, + B = function (e, t, r, i, o, s) { + var A = t, + a = A.getWeightedSum(r, i), + c = (o && o.formula) || n.weightedSum(r, i), + u = o && o.progress, + l = o && o.strategy, + h = null; + if (s && a > 0) { + u && u('trying', 0); + var g = null; + (h = w(r, i)), (g = e.solveAssuming(n.not(n.or(h)))) && ((A = g), (a = 0)); + } + if (s && 'bottom-up' === l) + for (var f = 1; f < a; f++) { + u && u('trying', f); + var p = n.equalBits(c, n.constantBits(f)); + if ((d = e.solveAssuming(p))) { + (A = d), (a = f); + break; + } + } + else { + if (l && 'default' !== l) throw new Error('Bad strategy: ' + l); + l = 'default'; + } + if ('default' === l) + for (; !s || a > 0; ) { + u && u('improving', a); + var d, + C = (s ? n.lessThan : n.greaterThan)(c, n.constantBits(a)); + if (!(d = e.solveAssuming(C))) break; + e.require(C), (a = (A = d).getWeightedSum(r, i)); + } + return ( + s && 0 === a + ? (h || (h = w(r, i)), e.forbid(h)) + : e.require(n.equalBits(c, n.constantBits(a))), + u && u('finished', a), + A + ); + }; + (n.Solver.prototype.minimizeWeightedSum = function (e, t, r, n) { + return B(this, e, t, r, n, !0); + }), + (n.Solver.prototype.maximizeWeightedSum = function (e, t, r, n) { + return B(this, e, t, r, n, !1); + }), + (e.exports = n); + }, + 98312: (module) => { + var C_MINISAT; + (C_MINISAT = function () { + var module = {}, + require = function () {}, + process = { + argv: ['node', 'minisat'], + on: function () {}, + stdout: { + write: function (e) { + console.log('MINISAT-out:', e.replace(/\n$/, '')); + }, + }, + stderr: { + write: function (e) { + console.log('MINISAT-err:', e.replace(/\n$/, '')); + }, + }, + }, + window = 0, + Module; + Module || (Module = (void 0 !== Module ? Module : null) || {}); + var moduleOverrides = {}; + for (var key in Module) + Module.hasOwnProperty(key) && (moduleOverrides[key] = Module[key]); + var ENVIRONMENT_IS_NODE = 'object' == typeof process && 'function' == typeof require, + ENVIRONMENT_IS_WEB = 'object' == typeof window, + ENVIRONMENT_IS_WORKER = 'function' == typeof importScripts, + ENVIRONMENT_IS_SHELL = + !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_NODE && !ENVIRONMENT_IS_WORKER; + if (ENVIRONMENT_IS_NODE) { + Module.print || + (Module.print = function (e) { + process.stdout.write(e + '\n'); + }), + Module.printErr || + (Module.printErr = function (e) { + process.stderr.write(e + '\n'); + }); + var nodeFS = require('fs'), + nodePath = require('path'); + (Module.read = function (e, t) { + e = nodePath.normalize(e); + var r = nodeFS.readFileSync(e); + return ( + r || + e == nodePath.resolve(e) || + ((e = path.join(__dirname, '..', 'src', e)), (r = nodeFS.readFileSync(e))), + r && !t && (r = r.toString()), + r + ); + }), + (Module.readBinary = function (e) { + return Module.read(e, !0); + }), + (Module.load = function (e) { + globalEval(read(e)); + }), + process.argv.length > 1 + ? (Module.thisProgram = process.argv[1].replace(/\\/g, '/')) + : (Module.thisProgram = 'unknown-program'), + (Module.arguments = process.argv.slice(2)), + void 0 !== module && (module.exports = Module), + process.on('uncaughtException', function (e) { + if (!(e instanceof ExitStatus)) throw e; + }); + } else if (ENVIRONMENT_IS_SHELL) + Module.print || (Module.print = print), + 'undefined' != typeof printErr && (Module.printErr = printErr), + 'undefined' != typeof read + ? (Module.read = read) + : (Module.read = function () { + throw 'no read() available (jsc?)'; + }), + (Module.readBinary = function (e) { + if ('function' == typeof readbuffer) return new Uint8Array(readbuffer(e)); + var t = read(e, 'binary'); + return assert('object' == typeof t), t; + }), + 'undefined' != typeof scriptArgs + ? (Module.arguments = scriptArgs) + : void 0 !== arguments && (Module.arguments = arguments), + (this.Module = Module); + else { + if (!ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_WORKER) + throw 'Unknown runtime environment. Where are we?'; + if ( + ((Module.read = function (e) { + var t = new XMLHttpRequest(); + return t.open('GET', e, !1), t.send(null), t.responseText; + }), + void 0 !== arguments && (Module.arguments = arguments), + 'undefined' != typeof console) + ) + Module.print || + (Module.print = function (e) { + console.log(e); + }), + Module.printErr || + (Module.printErr = function (e) { + console.log(e); + }); + else { + var TRY_USE_DUMP = !1; + Module.print || + (Module.print = + TRY_USE_DUMP && 'undefined' != typeof dump + ? function (e) { + dump(e); + } + : function (e) {}); + } + ENVIRONMENT_IS_WEB ? (window.Module = Module) : (Module.load = importScripts); + } + function globalEval(e) { + eval.call(null, e); + } + for (var key in (!Module.load && + Module.read && + (Module.load = function (e) { + globalEval(Module.read(e)); + }), + Module.print || (Module.print = function () {}), + Module.printErr || (Module.printErr = Module.print), + Module.arguments || (Module.arguments = []), + Module.thisProgram || (Module.thisProgram = './this.program'), + (Module.print = Module.print), + (Module.printErr = Module.printErr), + (Module.preRun = []), + (Module.postRun = []), + moduleOverrides)) + moduleOverrides.hasOwnProperty(key) && (Module[key] = moduleOverrides[key]); + var Runtime = { + setTempRet0: function (e) { + tempRet0 = e; + }, + getTempRet0: function () { + return tempRet0; + }, + stackSave: function () { + return STACKTOP; + }, + stackRestore: function (e) { + STACKTOP = e; + }, + getNativeTypeSize: function (e) { + switch (e) { + case 'i1': + case 'i8': + return 1; + case 'i16': + return 2; + case 'i32': + return 4; + case 'i64': + return 8; + case 'float': + return 4; + case 'double': + return 8; + default: + if ('*' === e[e.length - 1]) return Runtime.QUANTUM_SIZE; + if ('i' === e[0]) { + var t = parseInt(e.substr(1)); + return assert(t % 8 == 0), t / 8; + } + return 0; + } + }, + getNativeFieldSize: function (e) { + return Math.max(Runtime.getNativeTypeSize(e), Runtime.QUANTUM_SIZE); + }, + STACK_ALIGN: 16, + getAlignSize: function (e, t, r) { + return r || ('i64' != e && 'double' != e) + ? e + ? Math.min(t || (e ? Runtime.getNativeFieldSize(e) : 0), Runtime.QUANTUM_SIZE) + : Math.min(t, 8) + : 8; + }, + dynCall: function (e, t, r) { + return r && r.length + ? (r.splice || (r = Array.prototype.slice.call(r)), + r.splice(0, 0, t), + Module['dynCall_' + e].apply(null, r)) + : Module['dynCall_' + e].call(null, t); + }, + functionPointers: [], + addFunction: function (e) { + for (var t = 0; t < Runtime.functionPointers.length; t++) + if (!Runtime.functionPointers[t]) + return (Runtime.functionPointers[t] = e), 2 * (1 + t); + throw 'Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS.'; + }, + removeFunction: function (e) { + Runtime.functionPointers[(e - 2) / 2] = null; + }, + getAsmConst: function (code, numArgs) { + Runtime.asmConstCache || (Runtime.asmConstCache = {}); + var func = Runtime.asmConstCache[code]; + if (func) return func; + for (var args = [], i = 0; i < numArgs; i++) args.push(String.fromCharCode(36) + i); + var source = Pointer_stringify(code); + '"' === source[0] && + (source.indexOf('"', 1) === source.length - 1 + ? (source = source.substr(1, source.length - 2)) + : abort( + 'invalid EM_ASM input |' + + source + + '|. Please use EM_ASM(..code..) (no quotes) or EM_ASM({ ..code($0).. }, input) (to input values)' + )); + try { + var evalled = eval( + '(function(Module, FS) { return function(' + + args.join(',') + + '){ ' + + source + + ' } })' + )(Module, void 0 !== FS ? FS : null); + } catch (e) { + throw ( + (Module.printErr( + 'error in executing inline EM_ASM code: ' + + e + + ' on: \n\n' + + source + + '\n\nwith args |' + + args + + '| (make sure to use the right one out of EM_ASM, EM_ASM_ARGS, etc.)' + ), + e) + ); + } + return (Runtime.asmConstCache[code] = evalled); + }, + warnOnce: function (e) { + Runtime.warnOnce.shown || (Runtime.warnOnce.shown = {}), + Runtime.warnOnce.shown[e] || ((Runtime.warnOnce.shown[e] = 1), Module.printErr(e)); + }, + funcWrappers: {}, + getFuncWrapper: function (e, t) { + assert(t), Runtime.funcWrappers[t] || (Runtime.funcWrappers[t] = {}); + var r = Runtime.funcWrappers[t]; + return ( + r[e] || + (r[e] = function () { + return Runtime.dynCall(t, e, arguments); + }), + r[e] + ); + }, + UTF8Processor: function () { + var e = [], + t = 0; + (this.processCChar = function (r) { + if (((r &= 255), 0 == e.length)) + return 0 == (128 & r) + ? String.fromCharCode(r) + : (e.push(r), (t = 192 == (224 & r) ? 1 : 224 == (240 & r) ? 2 : 3), ''); + if (t && (e.push(r), --t > 0)) return ''; + var n, + i = e[0], + o = e[1], + s = e[2], + A = e[3]; + if (2 == e.length) n = String.fromCharCode(((31 & i) << 6) | (63 & o)); + else if (3 == e.length) + n = String.fromCharCode(((15 & i) << 12) | ((63 & o) << 6) | (63 & s)); + else { + var a = ((7 & i) << 18) | ((63 & o) << 12) | ((63 & s) << 6) | (63 & A); + n = String.fromCharCode( + 55296 + (((a - 65536) / 1024) | 0), + ((a - 65536) % 1024) + 56320 + ); + } + return (e.length = 0), n; + }), + (this.processJSString = function (e) { + e = unescape(encodeURIComponent(e)); + for (var t = [], r = 0; r < e.length; r++) t.push(e.charCodeAt(r)); + return t; + }); + }, + getCompilerSetting: function (e) { + throw 'You must build with -s RETAIN_COMPILER_SETTINGS=1 for Runtime.getCompilerSetting or emscripten_get_compiler_setting to work'; + }, + stackAlloc: function (e) { + var t = STACKTOP; + return (STACKTOP = ((STACKTOP = (STACKTOP + e) | 0) + 15) & -16), t; + }, + staticAlloc: function (e) { + var t = STATICTOP; + return (STATICTOP = ((STATICTOP = (STATICTOP + e) | 0) + 15) & -16), t; + }, + dynamicAlloc: function (e) { + var t = DYNAMICTOP; + return ( + (DYNAMICTOP = ((DYNAMICTOP = (DYNAMICTOP + e) | 0) + 15) & -16) >= TOTAL_MEMORY && + enlargeMemory(), + t + ); + }, + alignMemory: function (e, t) { + return (e = Math.ceil(e / (t || 16)) * (t || 16)); + }, + makeBigInt: function (e, t, r) { + return r ? +(e >>> 0) + 4294967296 * +(t >>> 0) : +(e >>> 0) + 4294967296 * +(0 | t); + }, + GLOBAL_BASE: 8, + QUANTUM_SIZE: 4, + __dummy__: 0, + }; + Module.Runtime = Runtime; + var __THREW__ = 0, + ABORT = !1, + EXITSTATUS = 0, + undef = 0, + tempValue, + tempInt, + tempBigInt, + tempInt2, + tempBigInt2, + tempPair, + tempBigIntI, + tempBigIntR, + tempBigIntS, + tempBigIntP, + tempBigIntD, + tempDouble, + tempFloat, + tempI64, + tempI64b, + tempRet0, + tempRet1, + tempRet2, + tempRet3, + tempRet4, + tempRet5, + tempRet6, + tempRet7, + tempRet8, + tempRet9; + function assert(e, t) { + e || abort('Assertion failed: ' + t); + } + var globalScope = this, + cwrap, + ccall; + function getCFunc(ident) { + var func = Module['_' + ident]; + if (!func) + try { + func = eval('_' + ident); + } catch (e) {} + return ( + assert( + func, + 'Cannot call unknown function ' + + ident + + ' (perhaps LLVM optimizations or closure removed it?)' + ), + func + ); + } + function setValue(e, t, r, n) { + switch (('*' === (r = r || 'i8').charAt(r.length - 1) && (r = 'i32'), r)) { + case 'i1': + case 'i8': + HEAP8[e >> 0] = t; + break; + case 'i16': + HEAP16[e >> 1] = t; + break; + case 'i32': + HEAP32[e >> 2] = t; + break; + case 'i64': + (tempI64 = [ + t >>> 0, + ((tempDouble = t), + +Math_abs(tempDouble) >= 1 + ? tempDouble > 0 + ? (0 | Math_min(+Math_floor(tempDouble / 4294967296), 4294967295)) >>> 0 + : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 + : 0), + ]), + (HEAP32[e >> 2] = tempI64[0]), + (HEAP32[(e + 4) >> 2] = tempI64[1]); + break; + case 'float': + HEAPF32[e >> 2] = t; + break; + case 'double': + HEAPF64[e >> 3] = t; + break; + default: + abort('invalid type for setValue: ' + r); + } + } + function getValue(e, t, r) { + switch (('*' === (t = t || 'i8').charAt(t.length - 1) && (t = 'i32'), t)) { + case 'i1': + case 'i8': + return HEAP8[e >> 0]; + case 'i16': + return HEAP16[e >> 1]; + case 'i32': + case 'i64': + return HEAP32[e >> 2]; + case 'float': + return HEAPF32[e >> 2]; + case 'double': + return HEAPF64[e >> 3]; + default: + abort('invalid type for setValue: ' + t); + } + return null; + } + !(function () { + var JSfuncs = { + stackSave: function () { + Runtime.stackSave(); + }, + stackRestore: function () { + Runtime.stackRestore(); + }, + arrayToC: function (e) { + var t = Runtime.stackAlloc(e.length); + return writeArrayToMemory(e, t), t; + }, + stringToC: function (e) { + var t = 0; + return ( + null != e && + 0 !== e && + writeStringToMemory(e, (t = Runtime.stackAlloc(1 + (e.length << 2)))), + t + ); + }, + }, + toC = { string: JSfuncs.stringToC, array: JSfuncs.arrayToC }; + ccall = function (e, t, r, n) { + var i = getCFunc(e), + o = [], + s = 0; + if (n) + for (var A = 0; A < n.length; A++) { + var a = toC[r[A]]; + a ? (0 === s && (s = Runtime.stackSave()), (o[A] = a(n[A]))) : (o[A] = n[A]); + } + var c = i.apply(null, o); + return ( + 'string' === t && (c = Pointer_stringify(c)), 0 !== s && Runtime.stackRestore(s), c + ); + }; + var sourceRegex = /^function\s*\(([^)]*)\)\s*{\s*([^*]*?)[\s;]*(?:return\s*(.*?)[;\s]*)?}$/; + function parseJSFunc(e) { + var t = e.toString().match(sourceRegex).slice(1); + return { arguments: t[0], body: t[1], returnValue: t[2] }; + } + var JSsource = {}; + for (var fun in JSfuncs) + JSfuncs.hasOwnProperty(fun) && (JSsource[fun] = parseJSFunc(JSfuncs[fun])); + cwrap = function cwrap(ident, returnType, argTypes) { + argTypes = argTypes || []; + var cfunc = getCFunc(ident), + numericArgs = argTypes.every(function (e) { + return 'number' === e; + }), + numericRet = 'string' !== returnType; + if (numericRet && numericArgs) return cfunc; + var argNames = argTypes.map(function (e, t) { + return '$' + t; + }), + funcstr = '(function(' + argNames.join(',') + ') {', + nargs = argTypes.length; + if (!numericArgs) { + funcstr += 'var stack = ' + JSsource.stackSave.body + ';'; + for (var i = 0; i < nargs; i++) { + var arg = argNames[i], + type = argTypes[i]; + if ('number' !== type) { + var convertCode = JSsource[type + 'ToC']; + (funcstr += 'var ' + convertCode.arguments + ' = ' + arg + ';'), + (funcstr += convertCode.body + ';'), + (funcstr += arg + '=' + convertCode.returnValue + ';'); + } + } + } + var cfuncname = parseJSFunc(function () { + return cfunc; + }).returnValue; + if ( + ((funcstr += 'var ret = ' + cfuncname + '(' + argNames.join(',') + ');'), + !numericRet) + ) { + var strgfy = parseJSFunc(function () { + return Pointer_stringify; + }).returnValue; + funcstr += 'ret = ' + strgfy + '(ret);'; + } + return ( + numericArgs || + (funcstr += JSsource.stackRestore.body.replace('()', '(stack)') + ';'), + (funcstr += 'return ret})'), + eval(funcstr) + ); + }; + })(), + (Module.cwrap = cwrap), + (Module.ccall = ccall), + (Module.setValue = setValue), + (Module.getValue = getValue); + var ALLOC_NORMAL = 0, + ALLOC_STACK = 1, + ALLOC_STATIC = 2, + ALLOC_DYNAMIC = 3, + ALLOC_NONE = 4; + function allocate(e, t, r, n) { + var i, o; + 'number' == typeof e ? ((i = !0), (o = e)) : ((i = !1), (o = e.length)); + var s, + A = 'string' == typeof t ? t : null; + if ( + ((s = + r == ALLOC_NONE + ? n + : [_malloc, Runtime.stackAlloc, Runtime.staticAlloc, Runtime.dynamicAlloc][ + void 0 === r ? ALLOC_STATIC : r + ](Math.max(o, A ? 1 : t.length))), + i) + ) { + var a; + n = s; + for (assert(0 == (3 & s)), a = s + (-4 & o); n < a; n += 4) HEAP32[n >> 2] = 0; + for (a = s + o; n < a; ) HEAP8[n++ >> 0] = 0; + return s; + } + if ('i8' === A) + return e.subarray || e.slice ? HEAPU8.set(e, s) : HEAPU8.set(new Uint8Array(e), s), s; + for (var c, u, l, h = 0; h < o; ) { + var g = e[h]; + 'function' == typeof g && (g = Runtime.getFunctionIndex(g)), + 0 !== (c = A || t[h]) + ? ('i64' == c && (c = 'i32'), + setValue(s + h, g, c), + l !== c && ((u = Runtime.getNativeTypeSize(c)), (l = c)), + (h += u)) + : h++; + } + return s; + } + function Pointer_stringify(e, t) { + if (0 === t || !e) return ''; + for (var r, n = !1, i = 0; ; ) { + if ((r = HEAPU8[(e + i) >> 0]) >= 128) n = !0; + else if (0 == r && !t) break; + if ((i++, t && i == t)) break; + } + t || (t = i); + var o = ''; + if (!n) { + for (var s; t > 0; ) + (s = String.fromCharCode.apply(String, HEAPU8.subarray(e, e + Math.min(t, 1024)))), + (o = o ? o + s : s), + (e += 1024), + (t -= 1024); + return o; + } + var A = new Runtime.UTF8Processor(); + for (i = 0; i < t; i++) (r = HEAPU8[(e + i) >> 0]), (o += A.processCChar(r)); + return o; + } + function UTF16ToString(e) { + for (var t = 0, r = ''; ; ) { + var n = HEAP16[(e + 2 * t) >> 1]; + if (0 == n) return r; + ++t, (r += String.fromCharCode(n)); + } + } + function stringToUTF16(e, t) { + for (var r = 0; r < e.length; ++r) { + var n = e.charCodeAt(r); + HEAP16[(t + 2 * r) >> 1] = n; + } + HEAP16[(t + 2 * e.length) >> 1] = 0; + } + function UTF32ToString(e) { + for (var t = 0, r = ''; ; ) { + var n = HEAP32[(e + 4 * t) >> 2]; + if (0 == n) return r; + if ((++t, n >= 65536)) { + var i = n - 65536; + r += String.fromCharCode(55296 | (i >> 10), 56320 | (1023 & i)); + } else r += String.fromCharCode(n); + } + } + function stringToUTF32(e, t) { + for (var r = 0, n = 0; n < e.length; ++n) { + var i = e.charCodeAt(n); + if (i >= 55296 && i <= 57343) + i = (65536 + ((1023 & i) << 10)) | (1023 & e.charCodeAt(++n)); + (HEAP32[(t + 4 * r) >> 2] = i), ++r; + } + HEAP32[(t + 4 * r) >> 2] = 0; + } + function demangle(e) { + var t = !!Module.___cxa_demangle; + if (t) + try { + var r = _malloc(e.length); + writeStringToMemory(e.substr(1), r); + var n = _malloc(4), + i = Module.___cxa_demangle(r, 0, 0, n); + if (0 === getValue(n, 'i32') && i) return Pointer_stringify(i); + } catch (e) { + } finally { + r && _free(r), n && _free(n), i && _free(i); + } + var o = 3, + s = { + v: 'void', + b: 'bool', + c: 'char', + s: 'short', + i: 'int', + l: 'long', + f: 'float', + d: 'double', + w: 'wchar_t', + a: 'signed char', + h: 'unsigned char', + t: 'unsigned short', + j: 'unsigned int', + m: 'unsigned long', + x: 'long long', + y: 'unsigned long long', + z: '...', + }, + A = [], + a = !0; + var c = e; + try { + if ('Object._main' == e || '_main' == e) return 'main()'; + if (('number' == typeof e && (e = Pointer_stringify(e)), '_' !== e[0])) return e; + if ('_' !== e[1]) return e; + if ('Z' !== e[2]) return e; + switch (e[3]) { + case 'n': + return 'operator new()'; + case 'd': + return 'operator delete()'; + } + c = (function t(r, n, i) { + n = n || 1 / 0; + var c, + u = '', + l = []; + if ('N' === e[o]) { + if ( + ((c = (function () { + o++, 'K' === e[o] && o++; + for (var t = []; 'E' !== e[o]; ) + if ('S' !== e[o]) + if ('C' !== e[o]) { + var r = parseInt(e.substr(o)), + n = r.toString().length; + if (!r || !n) { + o--; + break; + } + var i = e.substr(o + n, r); + t.push(i), A.push(i), (o += n + r); + } else t.push(t[t.length - 1]), (o += 2); + else { + o++; + var s = e.indexOf('_', o), + a = e.substring(o, s) || 0; + t.push(A[a] || '?'), (o = s + 1); + } + return o++, t; + })().join('::')), + 0 === --n) + ) + return r ? [c] : c; + } else if ( + (('K' === e[o] || (a && 'L' === e[o])) && o++, (p = parseInt(e.substr(o)))) + ) { + var h = p.toString().length; + (c = e.substr(o + h, p)), (o += h + p); + } + if (((a = !1), 'I' === e[o])) { + o++; + var g = t(!0); + u += t(!0, 1, !0)[0] + ' ' + c + '<' + g.join(', ') + '>'; + } else u = c; + e: for (; o < e.length && n-- > 0; ) { + var f = e[o++]; + if (f in s) l.push(s[f]); + else + switch (f) { + case 'P': + l.push(t(!0, 1, !0)[0] + '*'); + break; + case 'R': + l.push(t(!0, 1, !0)[0] + '&'); + break; + case 'L': + o++; + var p = e.indexOf('E', o) - o; + l.push(e.substr(o, p)), (o += p + 2); + break; + case 'A': + p = parseInt(e.substr(o)); + if (((o += p.toString().length), '_' !== e[o])) throw '?'; + o++, l.push(t(!0, 1, !0)[0] + ' [' + p + ']'); + break; + case 'E': + break e; + default: + u += '?' + f; + break e; + } + } + return ( + i || 1 !== l.length || 'void' !== l[0] || (l = []), + r ? (u && l.push(u + '?'), l) : u + '(' + l.join(', ') + ')' + ); + })(); + } catch (e) { + c += '?'; + } + return ( + c.indexOf('?') >= 0 && + !t && + Runtime.warnOnce( + 'warning: a problem occurred in builtin C++ name demangling; build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling' + ), + c + ); + } + function demangleAll(e) { + return e.replace(/__Z[\w\d_]+/g, function (e) { + var t = demangle(e); + return e === t ? e : e + ' [' + t + ']'; + }); + } + function jsStackTrace() { + var e = new Error(); + if (!e.stack) { + try { + throw new Error(0); + } catch (t) { + e = t; + } + if (!e.stack) return '(no stack trace available)'; + } + return e.stack.toString(); + } + function stackTrace() { + return demangleAll(jsStackTrace()); + } + (Module.ALLOC_NORMAL = ALLOC_NORMAL), + (Module.ALLOC_STACK = ALLOC_STACK), + (Module.ALLOC_STATIC = ALLOC_STATIC), + (Module.ALLOC_DYNAMIC = ALLOC_DYNAMIC), + (Module.ALLOC_NONE = ALLOC_NONE), + (Module.allocate = allocate), + (Module.Pointer_stringify = Pointer_stringify), + (Module.UTF16ToString = UTF16ToString), + (Module.stringToUTF16 = stringToUTF16), + (Module.UTF32ToString = UTF32ToString), + (Module.stringToUTF32 = stringToUTF32), + (Module.stackTrace = stackTrace); + var PAGE_SIZE = 4096, + HEAP, + HEAP8, + HEAPU8, + HEAP16, + HEAPU16, + HEAP32, + HEAPU32, + HEAPF32, + HEAPF64; + function alignMemoryPage(e) { + return (e + 4095) & -4096; + } + var STATIC_BASE = 0, + STATICTOP = 0, + staticSealed = !1, + STACK_BASE = 0, + STACKTOP = 0, + STACK_MAX = 0, + DYNAMIC_BASE = 0, + DYNAMICTOP = 0; + function enlargeMemory() { + abort( + 'Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value ' + + TOTAL_MEMORY + + ', (2) compile with ALLOW_MEMORY_GROWTH which adjusts the size at runtime but prevents some optimizations, or (3) set Module.TOTAL_MEMORY before the program runs.' + ); + } + for ( + var TOTAL_STACK = Module.TOTAL_STACK || 5242880, + TOTAL_MEMORY = Module.TOTAL_MEMORY || 67108864, + FAST_MEMORY = Module.FAST_MEMORY || 2097152, + totalMemory = 65536; + totalMemory < TOTAL_MEMORY || totalMemory < 2 * TOTAL_STACK; + + ) + totalMemory < 16777216 ? (totalMemory *= 2) : (totalMemory += 16777216); + totalMemory !== TOTAL_MEMORY && + (Module.printErr( + 'increasing TOTAL_MEMORY to ' + totalMemory + ' to be compliant with the asm.js spec' + ), + (TOTAL_MEMORY = totalMemory)), + assert( + 'undefined' != typeof Int32Array && + 'undefined' != typeof Float64Array && + !!new Int32Array(1).subarray && + !!new Int32Array(1).set, + 'JS engine does not provide full typed array support' + ); + var buffer = new ArrayBuffer(TOTAL_MEMORY); + function callRuntimeCallbacks(e) { + for (; e.length > 0; ) { + var t = e.shift(); + if ('function' != typeof t) { + var r = t.func; + 'number' == typeof r + ? void 0 === t.arg + ? Runtime.dynCall('v', r) + : Runtime.dynCall('vi', r, [t.arg]) + : r(void 0 === t.arg ? null : t.arg); + } else t(); + } + } + (HEAP8 = new Int8Array(buffer)), + (HEAP16 = new Int16Array(buffer)), + (HEAP32 = new Int32Array(buffer)), + (HEAPU8 = new Uint8Array(buffer)), + (HEAPU16 = new Uint16Array(buffer)), + (HEAPU32 = new Uint32Array(buffer)), + (HEAPF32 = new Float32Array(buffer)), + (HEAPF64 = new Float64Array(buffer)), + (HEAP32[0] = 255), + assert( + 255 === HEAPU8[0] && 0 === HEAPU8[3], + 'Typed arrays 2 must be run on a little-endian system' + ), + (Module.HEAP = HEAP), + (Module.buffer = buffer), + (Module.HEAP8 = HEAP8), + (Module.HEAP16 = HEAP16), + (Module.HEAP32 = HEAP32), + (Module.HEAPU8 = HEAPU8), + (Module.HEAPU16 = HEAPU16), + (Module.HEAPU32 = HEAPU32), + (Module.HEAPF32 = HEAPF32), + (Module.HEAPF64 = HEAPF64); + var __ATPRERUN__ = [], + __ATINIT__ = [], + __ATMAIN__ = [], + __ATEXIT__ = [], + __ATPOSTRUN__ = [], + runtimeInitialized = !1, + runtimeExited = !1; + function preRun() { + if (Module.preRun) + for ( + 'function' == typeof Module.preRun && (Module.preRun = [Module.preRun]); + Module.preRun.length; + + ) + addOnPreRun(Module.preRun.shift()); + callRuntimeCallbacks(__ATPRERUN__); + } + function ensureInitRuntime() { + runtimeInitialized || ((runtimeInitialized = !0), callRuntimeCallbacks(__ATINIT__)); + } + function preMain() { + callRuntimeCallbacks(__ATMAIN__); + } + function exitRuntime() { + callRuntimeCallbacks(__ATEXIT__), (runtimeExited = !0); + } + function postRun() { + if (Module.postRun) + for ( + 'function' == typeof Module.postRun && (Module.postRun = [Module.postRun]); + Module.postRun.length; + + ) + addOnPostRun(Module.postRun.shift()); + callRuntimeCallbacks(__ATPOSTRUN__); + } + function addOnPreRun(e) { + __ATPRERUN__.unshift(e); + } + function addOnInit(e) { + __ATINIT__.unshift(e); + } + function addOnPreMain(e) { + __ATMAIN__.unshift(e); + } + function addOnExit(e) { + __ATEXIT__.unshift(e); + } + function addOnPostRun(e) { + __ATPOSTRUN__.unshift(e); + } + function intArrayFromString(e, t, r) { + var n = new Runtime.UTF8Processor().processJSString(e); + return r && (n.length = r), t || n.push(0), n; + } + function intArrayToString(e) { + for (var t = [], r = 0; r < e.length; r++) { + var n = e[r]; + n > 255 && (n &= 255), t.push(String.fromCharCode(n)); + } + return t.join(''); + } + function writeStringToMemory(e, t, r) { + for (var n = intArrayFromString(e, r), i = 0; i < n.length; ) { + var o = n[i]; + (HEAP8[(t + i) >> 0] = o), (i += 1); + } + } + function writeArrayToMemory(e, t) { + for (var r = 0; r < e.length; r++) HEAP8[(t + r) >> 0] = e[r]; + } + function writeAsciiToMemory(e, t, r) { + for (var n = 0; n < e.length; n++) HEAP8[(t + n) >> 0] = e.charCodeAt(n); + r || (HEAP8[(t + e.length) >> 0] = 0); + } + function unSign(e, t, r) { + return e >= 0 ? e : t <= 32 ? 2 * Math.abs(1 << (t - 1)) + e : Math.pow(2, t) + e; + } + function reSign(e, t, r) { + if (e <= 0) return e; + var n = t <= 32 ? Math.abs(1 << (t - 1)) : Math.pow(2, t - 1); + return e >= n && (t <= 32 || e > n) && (e = -2 * n + e), e; + } + (Module.addOnPreRun = Module.addOnPreRun = addOnPreRun), + (Module.addOnInit = Module.addOnInit = addOnInit), + (Module.addOnPreMain = Module.addOnPreMain = addOnPreMain), + (Module.addOnExit = Module.addOnExit = addOnExit), + (Module.addOnPostRun = Module.addOnPostRun = addOnPostRun), + (Module.intArrayFromString = intArrayFromString), + (Module.intArrayToString = intArrayToString), + (Module.writeStringToMemory = writeStringToMemory), + (Module.writeArrayToMemory = writeArrayToMemory), + (Module.writeAsciiToMemory = writeAsciiToMemory), + (Math.imul && -5 === Math.imul(4294967295, 5)) || + (Math.imul = function (e, t) { + var r = 65535 & e, + n = 65535 & t; + return (r * n + (((e >>> 16) * n + r * (t >>> 16)) << 16)) | 0; + }), + (Math.imul = Math.imul); + var Math_abs = Math.abs, + Math_cos = Math.cos, + Math_sin = Math.sin, + Math_tan = Math.tan, + Math_acos = Math.acos, + Math_asin = Math.asin, + Math_atan = Math.atan, + Math_atan2 = Math.atan2, + Math_exp = Math.exp, + Math_log = Math.log, + Math_sqrt = Math.sqrt, + Math_ceil = Math.ceil, + Math_floor = Math.floor, + Math_pow = Math.pow, + Math_imul = Math.imul, + Math_fround = Math.fround, + Math_min = Math.min, + runDependencies = 0, + runDependencyWatcher = null, + dependenciesFulfilled = null; + function addRunDependency(e) { + runDependencies++, + Module.monitorRunDependencies && Module.monitorRunDependencies(runDependencies); + } + function removeRunDependency(e) { + if ( + (runDependencies--, + Module.monitorRunDependencies && Module.monitorRunDependencies(runDependencies), + 0 == runDependencies && + (null !== runDependencyWatcher && + (clearInterval(runDependencyWatcher), (runDependencyWatcher = null)), + dependenciesFulfilled)) + ) { + var t = dependenciesFulfilled; + (dependenciesFulfilled = null), t(); + } + } + (Module.addRunDependency = addRunDependency), + (Module.removeRunDependency = removeRunDependency), + (Module.preloadedImages = {}), + (Module.preloadedAudios = {}); + var memoryInitializer = null; + (STATIC_BASE = 8), + (STATICTOP = STATIC_BASE + 5664), + __ATINIT__.push( + { + func: function () { + __GLOBAL__I_a(); + }, + }, + { + func: function () { + __GLOBAL__I_a127(); + }, + } + ), + allocate( + [ + 78, + 55, + 77, + 105, + 110, + 105, + 115, + 97, + 116, + 50, + 48, + 79, + 117, + 116, + 79, + 102, + 77, + 101, + 109, + 111, + 114, + 121, + 69, + 120, + 99, + 101, + 112, + 116, + 105, + 111, + 110, + 69, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 88, + 18, + 0, + 0, + 8, + 0, + 0, + 0, + 78, + 55, + 77, + 105, + 110, + 105, + 115, + 97, + 116, + 54, + 79, + 112, + 116, + 105, + 111, + 110, + 69, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 88, + 18, + 0, + 0, + 56, + 0, + 0, + 0, + 10, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 37, + 115, + 10, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 80, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 2, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 200, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 3, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 78, + 55, + 77, + 105, + 110, + 105, + 115, + 97, + 116, + 49, + 48, + 66, + 111, + 111, + 108, + 79, + 112, + 116, + 105, + 111, + 110, + 69, + 0, + 0, + 128, + 18, + 0, + 0, + 176, + 0, + 0, + 0, + 80, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 32, + 32, + 45, + 37, + 115, + 44, + 32, + 45, + 110, + 111, + 45, + 37, + 115, + 0, + 0, + 0, + 40, + 100, + 101, + 102, + 97, + 117, + 108, + 116, + 58, + 32, + 37, + 115, + 41, + 10, + 0, + 0, + 111, + 110, + 0, + 0, + 0, + 0, + 0, + 0, + 111, + 102, + 102, + 0, + 0, + 0, + 0, + 0, + 110, + 111, + 45, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 64, + 1, + 0, + 0, + 1, + 0, + 0, + 0, + 4, + 0, + 0, + 0, + 2, + 0, + 0, + 0, + 2, + 0, + 0, + 0, + 78, + 55, + 77, + 105, + 110, + 105, + 115, + 97, + 116, + 57, + 73, + 110, + 116, + 79, + 112, + 116, + 105, + 111, + 110, + 69, + 0, + 0, + 0, + 0, + 128, + 18, + 0, + 0, + 40, + 1, + 0, + 0, + 80, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 32, + 32, + 45, + 37, + 45, + 49, + 50, + 115, + 32, + 61, + 32, + 37, + 45, + 56, + 115, + 32, + 91, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 105, + 109, + 105, + 110, + 0, + 0, + 0, + 0, + 37, + 52, + 100, + 0, + 0, + 0, + 0, + 0, + 32, + 46, + 46, + 32, + 0, + 0, + 0, + 0, + 105, + 109, + 97, + 120, + 0, + 0, + 0, + 0, + 93, + 32, + 40, + 100, + 101, + 102, + 97, + 117, + 108, + 116, + 58, + 32, + 37, + 100, + 41, + 10, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 69, + 82, + 82, + 79, + 82, + 33, + 32, + 118, + 97, + 108, + 117, + 101, + 32, + 60, + 37, + 115, + 62, + 32, + 105, + 115, + 32, + 116, + 111, + 111, + 32, + 108, + 97, + 114, + 103, + 101, + 32, + 102, + 111, + 114, + 32, + 111, + 112, + 116, + 105, + 111, + 110, + 32, + 34, + 37, + 115, + 34, + 46, + 10, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 69, + 82, + 82, + 79, + 82, + 33, + 32, + 118, + 97, + 108, + 117, + 101, + 32, + 60, + 37, + 115, + 62, + 32, + 105, + 115, + 32, + 116, + 111, + 111, + 32, + 115, + 109, + 97, + 108, + 108, + 32, + 102, + 111, + 114, + 32, + 111, + 112, + 116, + 105, + 111, + 110, + 32, + 34, + 37, + 115, + 34, + 46, + 10, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 118, + 97, + 114, + 45, + 100, + 101, + 99, + 97, + 121, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 84, + 104, + 101, + 32, + 118, + 97, + 114, + 105, + 97, + 98, + 108, + 101, + 32, + 97, + 99, + 116, + 105, + 118, + 105, + 116, + 121, + 32, + 100, + 101, + 99, + 97, + 121, + 32, + 102, + 97, + 99, + 116, + 111, + 114, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 99, + 108, + 97, + 45, + 100, + 101, + 99, + 97, + 121, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 84, + 104, + 101, + 32, + 99, + 108, + 97, + 117, + 115, + 101, + 32, + 97, + 99, + 116, + 105, + 118, + 105, + 116, + 121, + 32, + 100, + 101, + 99, + 97, + 121, + 32, + 102, + 97, + 99, + 116, + 111, + 114, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 114, + 110, + 100, + 45, + 102, + 114, + 101, + 113, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 84, + 104, + 101, + 32, + 102, + 114, + 101, + 113, + 117, + 101, + 110, + 99, + 121, + 32, + 119, + 105, + 116, + 104, + 32, + 119, + 104, + 105, + 99, + 104, + 32, + 116, + 104, + 101, + 32, + 100, + 101, + 99, + 105, + 115, + 105, + 111, + 110, + 32, + 104, + 101, + 117, + 114, + 105, + 115, + 116, + 105, + 99, + 32, + 116, + 114, + 105, + 101, + 115, + 32, + 116, + 111, + 32, + 99, + 104, + 111, + 111, + 115, + 101, + 32, + 97, + 32, + 114, + 97, + 110, + 100, + 111, + 109, + 32, + 118, + 97, + 114, + 105, + 97, + 98, + 108, + 101, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 114, + 110, + 100, + 45, + 115, + 101, + 101, + 100, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 85, + 115, + 101, + 100, + 32, + 98, + 121, + 32, + 116, + 104, + 101, + 32, + 114, + 97, + 110, + 100, + 111, + 109, + 32, + 118, + 97, + 114, + 105, + 97, + 98, + 108, + 101, + 32, + 115, + 101, + 108, + 101, + 99, + 116, + 105, + 111, + 110, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 99, + 99, + 109, + 105, + 110, + 45, + 109, + 111, + 100, + 101, + 0, + 0, + 0, + 0, + 0, + 0, + 67, + 111, + 110, + 116, + 114, + 111, + 108, + 115, + 32, + 99, + 111, + 110, + 102, + 108, + 105, + 99, + 116, + 32, + 99, + 108, + 97, + 117, + 115, + 101, + 32, + 109, + 105, + 110, + 105, + 109, + 105, + 122, + 97, + 116, + 105, + 111, + 110, + 32, + 40, + 48, + 61, + 110, + 111, + 110, + 101, + 44, + 32, + 49, + 61, + 98, + 97, + 115, + 105, + 99, + 44, + 32, + 50, + 61, + 100, + 101, + 101, + 112, + 41, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 112, + 104, + 97, + 115, + 101, + 45, + 115, + 97, + 118, + 105, + 110, + 103, + 0, + 0, + 0, + 0, + 67, + 111, + 110, + 116, + 114, + 111, + 108, + 115, + 32, + 116, + 104, + 101, + 32, + 108, + 101, + 118, + 101, + 108, + 32, + 111, + 102, + 32, + 112, + 104, + 97, + 115, + 101, + 32, + 115, + 97, + 118, + 105, + 110, + 103, + 32, + 40, + 48, + 61, + 110, + 111, + 110, + 101, + 44, + 32, + 49, + 61, + 108, + 105, + 109, + 105, + 116, + 101, + 100, + 44, + 32, + 50, + 61, + 102, + 117, + 108, + 108, + 41, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 114, + 110, + 100, + 45, + 105, + 110, + 105, + 116, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 82, + 97, + 110, + 100, + 111, + 109, + 105, + 122, + 101, + 32, + 116, + 104, + 101, + 32, + 105, + 110, + 105, + 116, + 105, + 97, + 108, + 32, + 97, + 99, + 116, + 105, + 118, + 105, + 116, + 121, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 108, + 117, + 98, + 121, + 0, + 0, + 0, + 0, + 85, + 115, + 101, + 32, + 116, + 104, + 101, + 32, + 76, + 117, + 98, + 121, + 32, + 114, + 101, + 115, + 116, + 97, + 114, + 116, + 32, + 115, + 101, + 113, + 117, + 101, + 110, + 99, + 101, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 114, + 102, + 105, + 114, + 115, + 116, + 0, + 0, + 84, + 104, + 101, + 32, + 98, + 97, + 115, + 101, + 32, + 114, + 101, + 115, + 116, + 97, + 114, + 116, + 32, + 105, + 110, + 116, + 101, + 114, + 118, + 97, + 108, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 114, + 105, + 110, + 99, + 0, + 0, + 0, + 0, + 82, + 101, + 115, + 116, + 97, + 114, + 116, + 32, + 105, + 110, + 116, + 101, + 114, + 118, + 97, + 108, + 32, + 105, + 110, + 99, + 114, + 101, + 97, + 115, + 101, + 32, + 102, + 97, + 99, + 116, + 111, + 114, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 103, + 99, + 45, + 102, + 114, + 97, + 99, + 0, + 84, + 104, + 101, + 32, + 102, + 114, + 97, + 99, + 116, + 105, + 111, + 110, + 32, + 111, + 102, + 32, + 119, + 97, + 115, + 116, + 101, + 100, + 32, + 109, + 101, + 109, + 111, + 114, + 121, + 32, + 97, + 108, + 108, + 111, + 119, + 101, + 100, + 32, + 98, + 101, + 102, + 111, + 114, + 101, + 32, + 97, + 32, + 103, + 97, + 114, + 98, + 97, + 103, + 101, + 32, + 99, + 111, + 108, + 108, + 101, + 99, + 116, + 105, + 111, + 110, + 32, + 105, + 115, + 32, + 116, + 114, + 105, + 103, + 103, + 101, + 114, + 101, + 100, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 109, + 105, + 110, + 45, + 108, + 101, + 97, + 114, + 110, + 116, + 115, + 0, + 0, + 0, + 0, + 0, + 77, + 105, + 110, + 105, + 109, + 117, + 109, + 32, + 108, + 101, + 97, + 114, + 110, + 116, + 32, + 99, + 108, + 97, + 117, + 115, + 101, + 32, + 108, + 105, + 109, + 105, + 116, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 192, + 7, + 0, + 0, + 5, + 0, + 0, + 0, + 6, + 0, + 0, + 0, + 7, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 124, + 32, + 37, + 57, + 100, + 32, + 124, + 32, + 37, + 55, + 100, + 32, + 37, + 56, + 100, + 32, + 37, + 56, + 100, + 32, + 124, + 32, + 37, + 56, + 100, + 32, + 37, + 56, + 100, + 32, + 37, + 54, + 46, + 48, + 102, + 32, + 124, + 32, + 37, + 54, + 46, + 51, + 102, + 32, + 37, + 37, + 32, + 124, + 10, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 124, + 32, + 32, + 71, + 97, + 114, + 98, + 97, + 103, + 101, + 32, + 99, + 111, + 108, + 108, + 101, + 99, + 116, + 105, + 111, + 110, + 58, + 32, + 32, + 32, + 37, + 49, + 50, + 100, + 32, + 98, + 121, + 116, + 101, + 115, + 32, + 61, + 62, + 32, + 37, + 49, + 50, + 100, + 32, + 98, + 121, + 116, + 101, + 115, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 124, + 10, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 78, + 55, + 77, + 105, + 110, + 105, + 115, + 97, + 116, + 54, + 83, + 111, + 108, + 118, + 101, + 114, + 69, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 88, + 18, + 0, + 0, + 168, + 7, + 0, + 0, + 60, + 98, + 111, + 111, + 108, + 62, + 0, + 0, + 10, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 37, + 115, + 10, + 0, + 0, + 0, + 0, + 60, + 105, + 110, + 116, + 51, + 50, + 62, + 0, + 69, + 82, + 82, + 79, + 82, + 33, + 32, + 118, + 97, + 108, + 117, + 101, + 32, + 60, + 37, + 115, + 62, + 32, + 105, + 115, + 32, + 116, + 111, + 111, + 32, + 108, + 97, + 114, + 103, + 101, + 32, + 102, + 111, + 114, + 32, + 111, + 112, + 116, + 105, + 111, + 110, + 32, + 34, + 37, + 115, + 34, + 46, + 10, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 69, + 82, + 82, + 79, + 82, + 33, + 32, + 118, + 97, + 108, + 117, + 101, + 32, + 60, + 37, + 115, + 62, + 32, + 105, + 115, + 32, + 116, + 111, + 111, + 32, + 115, + 109, + 97, + 108, + 108, + 32, + 102, + 111, + 114, + 32, + 111, + 112, + 116, + 105, + 111, + 110, + 32, + 34, + 37, + 115, + 34, + 46, + 10, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 67, + 79, + 82, + 69, + 0, + 0, + 0, + 0, + 60, + 100, + 111, + 117, + 98, + 108, + 101, + 62, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 168, + 8, + 0, + 0, + 1, + 0, + 0, + 0, + 8, + 0, + 0, + 0, + 3, + 0, + 0, + 0, + 3, + 0, + 0, + 0, + 78, + 55, + 77, + 105, + 110, + 105, + 115, + 97, + 116, + 49, + 50, + 68, + 111, + 117, + 98, + 108, + 101, + 79, + 112, + 116, + 105, + 111, + 110, + 69, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 128, + 18, + 0, + 0, + 136, + 8, + 0, + 0, + 80, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 32, + 32, + 45, + 37, + 45, + 49, + 50, + 115, + 32, + 61, + 32, + 37, + 45, + 56, + 115, + 32, + 37, + 99, + 37, + 52, + 46, + 50, + 103, + 32, + 46, + 46, + 32, + 37, + 52, + 46, + 50, + 103, + 37, + 99, + 32, + 40, + 100, + 101, + 102, + 97, + 117, + 108, + 116, + 58, + 32, + 37, + 103, + 41, + 10, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 91, + 32, + 83, + 101, + 97, + 114, + 99, + 104, + 32, + 83, + 116, + 97, + 116, + 105, + 115, + 116, + 105, + 99, + 115, + 32, + 93, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 0, + 124, + 32, + 67, + 111, + 110, + 102, + 108, + 105, + 99, + 116, + 115, + 32, + 124, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 79, + 82, + 73, + 71, + 73, + 78, + 65, + 76, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 124, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 76, + 69, + 65, + 82, + 78, + 84, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 124, + 32, + 80, + 114, + 111, + 103, + 114, + 101, + 115, + 115, + 32, + 124, + 0, + 124, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 124, + 32, + 32, + 32, + 32, + 86, + 97, + 114, + 115, + 32, + 32, + 67, + 108, + 97, + 117, + 115, + 101, + 115, + 32, + 76, + 105, + 116, + 101, + 114, + 97, + 108, + 115, + 32, + 124, + 32, + 32, + 32, + 32, + 76, + 105, + 109, + 105, + 116, + 32, + 32, + 67, + 108, + 97, + 117, + 115, + 101, + 115, + 32, + 76, + 105, + 116, + 47, + 67, + 108, + 32, + 124, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 124, + 0, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 97, + 115, + 121, + 109, + 109, + 0, + 0, + 0, + 83, + 104, + 114, + 105, + 110, + 107, + 32, + 99, + 108, + 97, + 117, + 115, + 101, + 115, + 32, + 98, + 121, + 32, + 97, + 115, + 121, + 109, + 109, + 101, + 116, + 114, + 105, + 99, + 32, + 98, + 114, + 97, + 110, + 99, + 104, + 105, + 110, + 103, + 46, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 114, + 99, + 104, + 101, + 99, + 107, + 0, + 0, + 67, + 104, + 101, + 99, + 107, + 32, + 105, + 102, + 32, + 97, + 32, + 99, + 108, + 97, + 117, + 115, + 101, + 32, + 105, + 115, + 32, + 97, + 108, + 114, + 101, + 97, + 100, + 121, + 32, + 105, + 109, + 112, + 108, + 105, + 101, + 100, + 46, + 32, + 40, + 99, + 111, + 115, + 116, + 108, + 121, + 41, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 101, + 108, + 105, + 109, + 0, + 0, + 0, + 0, + 80, + 101, + 114, + 102, + 111, + 114, + 109, + 32, + 118, + 97, + 114, + 105, + 97, + 98, + 108, + 101, + 32, + 101, + 108, + 105, + 109, + 105, + 110, + 97, + 116, + 105, + 111, + 110, + 46, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 103, + 114, + 111, + 119, + 0, + 0, + 0, + 0, + 65, + 108, + 108, + 111, + 119, + 32, + 97, + 32, + 118, + 97, + 114, + 105, + 97, + 98, + 108, + 101, + 32, + 101, + 108, + 105, + 109, + 105, + 110, + 97, + 116, + 105, + 111, + 110, + 32, + 115, + 116, + 101, + 112, + 32, + 116, + 111, + 32, + 103, + 114, + 111, + 119, + 32, + 98, + 121, + 32, + 97, + 32, + 110, + 117, + 109, + 98, + 101, + 114, + 32, + 111, + 102, + 32, + 99, + 108, + 97, + 117, + 115, + 101, + 115, + 46, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 99, + 108, + 45, + 108, + 105, + 109, + 0, + 0, + 86, + 97, + 114, + 105, + 97, + 98, + 108, + 101, + 115, + 32, + 97, + 114, + 101, + 32, + 110, + 111, + 116, + 32, + 101, + 108, + 105, + 109, + 105, + 110, + 97, + 116, + 101, + 100, + 32, + 105, + 102, + 32, + 105, + 116, + 32, + 112, + 114, + 111, + 100, + 117, + 99, + 101, + 115, + 32, + 97, + 32, + 114, + 101, + 115, + 111, + 108, + 118, + 101, + 110, + 116, + 32, + 119, + 105, + 116, + 104, + 32, + 97, + 32, + 108, + 101, + 110, + 103, + 116, + 104, + 32, + 97, + 98, + 111, + 118, + 101, + 32, + 116, + 104, + 105, + 115, + 32, + 108, + 105, + 109, + 105, + 116, + 46, + 32, + 45, + 49, + 32, + 109, + 101, + 97, + 110, + 115, + 32, + 110, + 111, + 32, + 108, + 105, + 109, + 105, + 116, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 115, + 117, + 98, + 45, + 108, + 105, + 109, + 0, + 68, + 111, + 32, + 110, + 111, + 116, + 32, + 99, + 104, + 101, + 99, + 107, + 32, + 105, + 102, + 32, + 115, + 117, + 98, + 115, + 117, + 109, + 112, + 116, + 105, + 111, + 110, + 32, + 97, + 103, + 97, + 105, + 110, + 115, + 116, + 32, + 97, + 32, + 99, + 108, + 97, + 117, + 115, + 101, + 32, + 108, + 97, + 114, + 103, + 101, + 114, + 32, + 116, + 104, + 97, + 110, + 32, + 116, + 104, + 105, + 115, + 46, + 32, + 45, + 49, + 32, + 109, + 101, + 97, + 110, + 115, + 32, + 110, + 111, + 32, + 108, + 105, + 109, + 105, + 116, + 46, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 115, + 105, + 109, + 112, + 45, + 103, + 99, + 45, + 102, + 114, + 97, + 99, + 0, + 0, + 0, + 0, + 84, + 104, + 101, + 32, + 102, + 114, + 97, + 99, + 116, + 105, + 111, + 110, + 32, + 111, + 102, + 32, + 119, + 97, + 115, + 116, + 101, + 100, + 32, + 109, + 101, + 109, + 111, + 114, + 121, + 32, + 97, + 108, + 108, + 111, + 119, + 101, + 100, + 32, + 98, + 101, + 102, + 111, + 114, + 101, + 32, + 97, + 32, + 103, + 97, + 114, + 98, + 97, + 103, + 101, + 32, + 99, + 111, + 108, + 108, + 101, + 99, + 116, + 105, + 111, + 110, + 32, + 105, + 115, + 32, + 116, + 114, + 105, + 103, + 103, + 101, + 114, + 101, + 100, + 32, + 100, + 117, + 114, + 105, + 110, + 103, + 32, + 115, + 105, + 109, + 112, + 108, + 105, + 102, + 105, + 99, + 97, + 116, + 105, + 111, + 110, + 46, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 120, + 14, + 0, + 0, + 9, + 0, + 0, + 0, + 10, + 0, + 0, + 0, + 11, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 115, + 117, + 98, + 115, + 117, + 109, + 112, + 116, + 105, + 111, + 110, + 32, + 108, + 101, + 102, + 116, + 58, + 32, + 37, + 49, + 48, + 100, + 32, + 40, + 37, + 49, + 48, + 100, + 32, + 115, + 117, + 98, + 115, + 117, + 109, + 101, + 100, + 44, + 32, + 37, + 49, + 48, + 100, + 32, + 100, + 101, + 108, + 101, + 116, + 101, + 100, + 32, + 108, + 105, + 116, + 101, + 114, + 97, + 108, + 115, + 41, + 13, + 0, + 0, + 101, + 108, + 105, + 109, + 105, + 110, + 97, + 116, + 105, + 111, + 110, + 32, + 108, + 101, + 102, + 116, + 58, + 32, + 37, + 49, + 48, + 100, + 13, + 0, + 124, + 32, + 32, + 69, + 108, + 105, + 109, + 105, + 110, + 97, + 116, + 101, + 100, + 32, + 99, + 108, + 97, + 117, + 115, + 101, + 115, + 58, + 32, + 32, + 32, + 32, + 32, + 37, + 49, + 48, + 46, + 50, + 102, + 32, + 77, + 98, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 124, + 10, + 0, + 0, + 0, + 0, + 124, + 32, + 32, + 71, + 97, + 114, + 98, + 97, + 103, + 101, + 32, + 99, + 111, + 108, + 108, + 101, + 99, + 116, + 105, + 111, + 110, + 58, + 32, + 32, + 32, + 37, + 49, + 50, + 100, + 32, + 98, + 121, + 116, + 101, + 115, + 32, + 61, + 62, + 32, + 37, + 49, + 50, + 100, + 32, + 98, + 121, + 116, + 101, + 115, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 32, + 124, + 10, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 78, + 55, + 77, + 105, + 110, + 105, + 115, + 97, + 116, + 49, + 48, + 83, + 105, + 109, + 112, + 83, + 111, + 108, + 118, + 101, + 114, + 69, + 0, + 0, + 128, + 18, + 0, + 0, + 96, + 14, + 0, + 0, + 192, + 7, + 0, + 0, + 0, + 0, + 0, + 0, + 60, + 100, + 111, + 117, + 98, + 108, + 101, + 62, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 60, + 105, + 110, + 116, + 51, + 50, + 62, + 0, + 83, + 73, + 77, + 80, + 0, + 0, + 0, + 0, + 60, + 98, + 111, + 111, + 108, + 62, + 0, + 0, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 61, + 0, + 2, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 89, + 79, + 33, + 0, + 0, + 0, + 0, + 0, + 2, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 48, + 15, + 0, + 0, + 0, + 0, + 0, + 0, + 117, + 110, + 99, + 97, + 117, + 103, + 104, + 116, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 116, + 101, + 114, + 109, + 105, + 110, + 97, + 116, + 105, + 110, + 103, + 32, + 119, + 105, + 116, + 104, + 32, + 37, + 115, + 32, + 101, + 120, + 99, + 101, + 112, + 116, + 105, + 111, + 110, + 32, + 111, + 102, + 32, + 116, + 121, + 112, + 101, + 32, + 37, + 115, + 58, + 32, + 37, + 115, + 0, + 0, + 0, + 0, + 116, + 101, + 114, + 109, + 105, + 110, + 97, + 116, + 105, + 110, + 103, + 32, + 119, + 105, + 116, + 104, + 32, + 37, + 115, + 32, + 101, + 120, + 99, + 101, + 112, + 116, + 105, + 111, + 110, + 32, + 111, + 102, + 32, + 116, + 121, + 112, + 101, + 32, + 37, + 115, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 116, + 101, + 114, + 109, + 105, + 110, + 97, + 116, + 105, + 110, + 103, + 32, + 119, + 105, + 116, + 104, + 32, + 37, + 115, + 32, + 102, + 111, + 114, + 101, + 105, + 103, + 110, + 32, + 101, + 120, + 99, + 101, + 112, + 116, + 105, + 111, + 110, + 0, + 0, + 0, + 116, + 101, + 114, + 109, + 105, + 110, + 97, + 116, + 105, + 110, + 103, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 112, + 116, + 104, + 114, + 101, + 97, + 100, + 95, + 111, + 110, + 99, + 101, + 32, + 102, + 97, + 105, + 108, + 117, + 114, + 101, + 32, + 105, + 110, + 32, + 95, + 95, + 99, + 120, + 97, + 95, + 103, + 101, + 116, + 95, + 103, + 108, + 111, + 98, + 97, + 108, + 115, + 95, + 102, + 97, + 115, + 116, + 40, + 41, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 99, + 97, + 110, + 110, + 111, + 116, + 32, + 99, + 114, + 101, + 97, + 116, + 101, + 32, + 112, + 116, + 104, + 114, + 101, + 97, + 100, + 32, + 107, + 101, + 121, + 32, + 102, + 111, + 114, + 32, + 95, + 95, + 99, + 120, + 97, + 95, + 103, + 101, + 116, + 95, + 103, + 108, + 111, + 98, + 97, + 108, + 115, + 40, + 41, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 99, + 97, + 110, + 110, + 111, + 116, + 32, + 122, + 101, + 114, + 111, + 32, + 111, + 117, + 116, + 32, + 116, + 104, + 114, + 101, + 97, + 100, + 32, + 118, + 97, + 108, + 117, + 101, + 32, + 102, + 111, + 114, + 32, + 95, + 95, + 99, + 120, + 97, + 95, + 103, + 101, + 116, + 95, + 103, + 108, + 111, + 98, + 97, + 108, + 115, + 40, + 41, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 200, + 16, + 0, + 0, + 12, + 0, + 0, + 0, + 13, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 115, + 116, + 100, + 58, + 58, + 98, + 97, + 100, + 95, + 97, + 108, + 108, + 111, + 99, + 0, + 0, + 83, + 116, + 57, + 98, + 97, + 100, + 95, + 97, + 108, + 108, + 111, + 99, + 0, + 0, + 0, + 0, + 128, + 18, + 0, + 0, + 184, + 16, + 0, + 0, + 80, + 17, + 0, + 0, + 0, + 0, + 0, + 0, + 116, + 101, + 114, + 109, + 105, + 110, + 97, + 116, + 101, + 95, + 104, + 97, + 110, + 100, + 108, + 101, + 114, + 32, + 117, + 110, + 101, + 120, + 112, + 101, + 99, + 116, + 101, + 100, + 108, + 121, + 32, + 114, + 101, + 116, + 117, + 114, + 110, + 101, + 100, + 0, + 116, + 101, + 114, + 109, + 105, + 110, + 97, + 116, + 101, + 95, + 104, + 97, + 110, + 100, + 108, + 101, + 114, + 32, + 117, + 110, + 101, + 120, + 112, + 101, + 99, + 116, + 101, + 100, + 108, + 121, + 32, + 116, + 104, + 114, + 101, + 119, + 32, + 97, + 110, + 32, + 101, + 120, + 99, + 101, + 112, + 116, + 105, + 111, + 110, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 83, + 116, + 57, + 101, + 120, + 99, + 101, + 112, + 116, + 105, + 111, + 110, + 0, + 0, + 0, + 0, + 88, + 18, + 0, + 0, + 64, + 17, + 0, + 0, + 83, + 116, + 57, + 116, + 121, + 112, + 101, + 95, + 105, + 110, + 102, + 111, + 0, + 0, + 0, + 0, + 88, + 18, + 0, + 0, + 88, + 17, + 0, + 0, + 78, + 49, + 48, + 95, + 95, + 99, + 120, + 120, + 97, + 98, + 105, + 118, + 49, + 49, + 54, + 95, + 95, + 115, + 104, + 105, + 109, + 95, + 116, + 121, + 112, + 101, + 95, + 105, + 110, + 102, + 111, + 69, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 128, + 18, + 0, + 0, + 112, + 17, + 0, + 0, + 104, + 17, + 0, + 0, + 0, + 0, + 0, + 0, + 78, + 49, + 48, + 95, + 95, + 99, + 120, + 120, + 97, + 98, + 105, + 118, + 49, + 49, + 55, + 95, + 95, + 99, + 108, + 97, + 115, + 115, + 95, + 116, + 121, + 112, + 101, + 95, + 105, + 110, + 102, + 111, + 69, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 128, + 18, + 0, + 0, + 168, + 17, + 0, + 0, + 152, + 17, + 0, + 0, + 0, + 0, + 0, + 0, + 78, + 49, + 48, + 95, + 95, + 99, + 120, + 120, + 97, + 98, + 105, + 118, + 49, + 49, + 57, + 95, + 95, + 112, + 111, + 105, + 110, + 116, + 101, + 114, + 95, + 116, + 121, + 112, + 101, + 95, + 105, + 110, + 102, + 111, + 69, + 0, + 0, + 0, + 0, + 0, + 78, + 49, + 48, + 95, + 95, + 99, + 120, + 120, + 97, + 98, + 105, + 118, + 49, + 49, + 55, + 95, + 95, + 112, + 98, + 97, + 115, + 101, + 95, + 116, + 121, + 112, + 101, + 95, + 105, + 110, + 102, + 111, + 69, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 128, + 18, + 0, + 0, + 8, + 18, + 0, + 0, + 152, + 17, + 0, + 0, + 0, + 0, + 0, + 0, + 128, + 18, + 0, + 0, + 224, + 17, + 0, + 0, + 48, + 18, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 208, + 17, + 0, + 0, + 14, + 0, + 0, + 0, + 15, + 0, + 0, + 0, + 16, + 0, + 0, + 0, + 17, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 200, + 18, + 0, + 0, + 14, + 0, + 0, + 0, + 18, + 0, + 0, + 0, + 16, + 0, + 0, + 0, + 17, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 2, + 0, + 0, + 0, + 2, + 0, + 0, + 0, + 2, + 0, + 0, + 0, + 78, + 49, + 48, + 95, + 95, + 99, + 120, + 120, + 97, + 98, + 105, + 118, + 49, + 50, + 48, + 95, + 95, + 115, + 105, + 95, + 99, + 108, + 97, + 115, + 115, + 95, + 116, + 121, + 112, + 101, + 95, + 105, + 110, + 102, + 111, + 69, + 0, + 0, + 0, + 0, + 128, + 18, + 0, + 0, + 160, + 18, + 0, + 0, + 208, + 17, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 255, + 255, + 255, + 255, + 255, + 255, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 2, + 4, + 7, + 3, + 6, + 5, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 105, + 110, + 102, + 105, + 110, + 105, + 116, + 121, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 110, + 97, + 110, + 0, + 0, + 0, + 0, + 0, + 95, + 112, + 137, + 0, + 255, + 9, + 47, + 15, + 10, + 0, + 0, + 0, + 100, + 0, + 0, + 0, + 232, + 3, + 0, + 0, + 16, + 39, + 0, + 0, + 160, + 134, + 1, + 0, + 64, + 66, + 15, + 0, + 128, + 150, + 152, + 0, + 0, + 225, + 245, + 5, + ], + 'i8', + ALLOC_NONE, + Runtime.GLOBAL_BASE + ); + var tempDoublePtr = Runtime.alignMemory(allocate(12, 'i8', ALLOC_STATIC), 8); + function copyTempFloat(e) { + (HEAP8[tempDoublePtr] = HEAP8[e]), + (HEAP8[tempDoublePtr + 1] = HEAP8[e + 1]), + (HEAP8[tempDoublePtr + 2] = HEAP8[e + 2]), + (HEAP8[tempDoublePtr + 3] = HEAP8[e + 3]); + } + function copyTempDouble(e) { + (HEAP8[tempDoublePtr] = HEAP8[e]), + (HEAP8[tempDoublePtr + 1] = HEAP8[e + 1]), + (HEAP8[tempDoublePtr + 2] = HEAP8[e + 2]), + (HEAP8[tempDoublePtr + 3] = HEAP8[e + 3]), + (HEAP8[tempDoublePtr + 4] = HEAP8[e + 4]), + (HEAP8[tempDoublePtr + 5] = HEAP8[e + 5]), + (HEAP8[tempDoublePtr + 6] = HEAP8[e + 6]), + (HEAP8[tempDoublePtr + 7] = HEAP8[e + 7]); + } + function _atexit(e, t) { + __ATEXIT__.unshift({ func: e, arg: t }); + } + function ___cxa_atexit() { + return _atexit.apply(null, arguments); + } + assert(tempDoublePtr % 8 == 0), (Module._i64Subtract = _i64Subtract); + var ___errno_state = 0; + function ___setErrNo(e) { + return (HEAP32[___errno_state >> 2] = e), e; + } + var ERRNO_CODES = { + EPERM: 1, + ENOENT: 2, + ESRCH: 3, + EINTR: 4, + EIO: 5, + ENXIO: 6, + E2BIG: 7, + ENOEXEC: 8, + EBADF: 9, + ECHILD: 10, + EAGAIN: 11, + EWOULDBLOCK: 11, + ENOMEM: 12, + EACCES: 13, + EFAULT: 14, + ENOTBLK: 15, + EBUSY: 16, + EEXIST: 17, + EXDEV: 18, + ENODEV: 19, + ENOTDIR: 20, + EISDIR: 21, + EINVAL: 22, + ENFILE: 23, + EMFILE: 24, + ENOTTY: 25, + ETXTBSY: 26, + EFBIG: 27, + ENOSPC: 28, + ESPIPE: 29, + EROFS: 30, + EMLINK: 31, + EPIPE: 32, + EDOM: 33, + ERANGE: 34, + ENOMSG: 42, + EIDRM: 43, + ECHRNG: 44, + EL2NSYNC: 45, + EL3HLT: 46, + EL3RST: 47, + ELNRNG: 48, + EUNATCH: 49, + ENOCSI: 50, + EL2HLT: 51, + EDEADLK: 35, + ENOLCK: 37, + EBADE: 52, + EBADR: 53, + EXFULL: 54, + ENOANO: 55, + EBADRQC: 56, + EBADSLT: 57, + EDEADLOCK: 35, + EBFONT: 59, + ENOSTR: 60, + ENODATA: 61, + ETIME: 62, + ENOSR: 63, + ENONET: 64, + ENOPKG: 65, + EREMOTE: 66, + ENOLINK: 67, + EADV: 68, + ESRMNT: 69, + ECOMM: 70, + EPROTO: 71, + EMULTIHOP: 72, + EDOTDOT: 73, + EBADMSG: 74, + ENOTUNIQ: 76, + EBADFD: 77, + EREMCHG: 78, + ELIBACC: 79, + ELIBBAD: 80, + ELIBSCN: 81, + ELIBMAX: 82, + ELIBEXEC: 83, + ENOSYS: 38, + ENOTEMPTY: 39, + ENAMETOOLONG: 36, + ELOOP: 40, + EOPNOTSUPP: 95, + EPFNOSUPPORT: 96, + ECONNRESET: 104, + ENOBUFS: 105, + EAFNOSUPPORT: 97, + EPROTOTYPE: 91, + ENOTSOCK: 88, + ENOPROTOOPT: 92, + ESHUTDOWN: 108, + ECONNREFUSED: 111, + EADDRINUSE: 98, + ECONNABORTED: 103, + ENETUNREACH: 101, + ENETDOWN: 100, + ETIMEDOUT: 110, + EHOSTDOWN: 112, + EHOSTUNREACH: 113, + EINPROGRESS: 115, + EALREADY: 114, + EDESTADDRREQ: 89, + EMSGSIZE: 90, + EPROTONOSUPPORT: 93, + ESOCKTNOSUPPORT: 94, + EADDRNOTAVAIL: 99, + ENETRESET: 102, + EISCONN: 106, + ENOTCONN: 107, + ETOOMANYREFS: 109, + EUSERS: 87, + EDQUOT: 122, + ESTALE: 116, + ENOTSUP: 95, + ENOMEDIUM: 123, + EILSEQ: 84, + EOVERFLOW: 75, + ECANCELED: 125, + ENOTRECOVERABLE: 131, + EOWNERDEAD: 130, + ESTRPIPE: 86, + }; + function _sysconf(e) { + switch (e) { + case 30: + return PAGE_SIZE; + case 132: + case 133: + case 12: + case 137: + case 138: + case 15: + case 235: + case 16: + case 17: + case 18: + case 19: + case 20: + case 149: + case 13: + case 10: + case 236: + case 153: + case 9: + case 21: + case 22: + case 159: + case 154: + case 14: + case 77: + case 78: + case 139: + case 80: + case 81: + case 79: + case 82: + case 68: + case 67: + case 164: + case 11: + case 29: + case 47: + case 48: + case 95: + case 52: + case 51: + case 46: + return 200809; + case 27: + case 246: + case 127: + case 128: + case 23: + case 24: + case 160: + case 161: + case 181: + case 182: + case 242: + case 183: + case 184: + case 243: + case 244: + case 245: + case 165: + case 178: + case 179: + case 49: + case 50: + case 168: + case 169: + case 175: + case 170: + case 171: + case 172: + case 97: + case 76: + case 32: + case 173: + case 35: + return -1; + case 176: + case 177: + case 7: + case 155: + case 8: + case 157: + case 125: + case 126: + case 92: + case 93: + case 129: + case 130: + case 131: + case 94: + case 91: + return 1; + case 74: + case 60: + case 69: + case 70: + case 4: + return 1024; + case 31: + case 42: + case 72: + return 32; + case 87: + case 26: + case 33: + return 2147483647; + case 34: + case 1: + return 47839; + case 38: + case 36: + return 99; + case 43: + case 37: + return 2048; + case 0: + return 2097152; + case 3: + return 65536; + case 28: + return 32768; + case 44: + return 32767; + case 75: + return 16384; + case 39: + return 1e3; + case 89: + return 700; + case 71: + return 256; + case 40: + return 255; + case 2: + return 100; + case 180: + return 64; + case 25: + return 20; + case 5: + return 16; + case 6: + return 6; + case 73: + return 4; + case 84: + return ('object' == typeof navigator && navigator.hardwareConcurrency) || 1; + } + return ___setErrNo(ERRNO_CODES.EINVAL), -1; + } + function __ZSt18uncaught_exceptionv() { + return !!__ZSt18uncaught_exceptionv.uncaught_exception; + } + var EXCEPTIONS = { + last: 0, + caught: [], + infos: {}, + deAdjust: function (e) { + if (!e || EXCEPTIONS.infos[e]) return e; + for (var t in EXCEPTIONS.infos) { + if (EXCEPTIONS.infos[t].adjusted === e) return t; + } + return e; + }, + addRef: function (e) { + e && EXCEPTIONS.infos[e].refcount++; + }, + decRef: function (e) { + if (e) { + var t = EXCEPTIONS.infos[e]; + assert(t.refcount > 0), + t.refcount--, + 0 === t.refcount && + (t.destructor && Runtime.dynCall('vi', t.destructor, [e]), + delete EXCEPTIONS.infos[e], + ___cxa_free_exception(e)); + } + }, + clearRef: function (e) { + e && (EXCEPTIONS.infos[e].refcount = 0); + }, + }; + function ___resumeException(e) { + throw ( + (EXCEPTIONS.last || (EXCEPTIONS.last = e), + EXCEPTIONS.clearRef(EXCEPTIONS.deAdjust(e)), + e + + ' - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch.') + ); + } + function ___cxa_find_matching_catch() { + var e = EXCEPTIONS.last; + if (!e) return 0 | (asm.setTempRet0(0), 0); + var t = EXCEPTIONS.infos[e], + r = t.type; + if (!r) return 0 | (asm.setTempRet0(0), e); + var n = Array.prototype.slice.call(arguments); + Module.___cxa_is_pointer_type(r); + ___cxa_find_matching_catch.buffer || (___cxa_find_matching_catch.buffer = _malloc(4)), + (HEAP32[___cxa_find_matching_catch.buffer >> 2] = e), + (e = ___cxa_find_matching_catch.buffer); + for (var i = 0; i < n.length; i++) + if (n[i] && Module.___cxa_can_catch(n[i], r, e)) + return (e = HEAP32[e >> 2]), (t.adjusted = e), 0 | (asm.setTempRet0(n[i]), e); + return (e = HEAP32[e >> 2]), 0 | (asm.setTempRet0(r), e); + } + function ___cxa_throw(e, t, r) { + throw ( + ((EXCEPTIONS.infos[e] = { ptr: e, adjusted: e, type: t, destructor: r, refcount: 0 }), + (EXCEPTIONS.last = e), + 'uncaught_exception' in __ZSt18uncaught_exceptionv + ? __ZSt18uncaught_exceptionv.uncaught_exception++ + : (__ZSt18uncaught_exceptionv.uncaught_exception = 1), + e + + ' - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch.') + ); + } + function _abort() { + Module.abort(); + } + (Module._memset = _memset), (Module._bitshift64Shl = _bitshift64Shl); + var FS = void 0, + SOCKFS = void 0; + function _send(e, t, r, n) { + return SOCKFS.getSocket(e) ? _write(e, t, r) : (___setErrNo(ERRNO_CODES.EBADF), -1); + } + function _pwrite(e, t, r, n) { + var i = FS.getStream(e); + if (!i) return ___setErrNo(ERRNO_CODES.EBADF), -1; + try { + var o = HEAP8; + return FS.write(i, o, t, r, n); + } catch (e) { + return FS.handleFSError(e), -1; + } + } + function _write(e, t, r) { + var n = FS.getStream(e); + if (!n) return ___setErrNo(ERRNO_CODES.EBADF), -1; + try { + var i = HEAP8; + return FS.write(n, i, t, r); + } catch (e) { + return FS.handleFSError(e), -1; + } + } + function _fileno(e) { + return (e = FS.getStreamFromPtr(e)) ? e.fd : -1; + } + function _fwrite(e, t, r, n) { + var i = r * t; + if (0 == i) return 0; + var o = _write(_fileno(n), e, i); + if (-1 == o) { + var s = FS.getStreamFromPtr(n); + return s && (s.error = !0), 0; + } + return (o / t) | 0; + } + function __reallyNegative(e) { + return e < 0 || (0 === e && 1 / e == -1 / 0); + } + function __formatString(e, t) { + var r = e, + n = 0; + function i(e) { + var r; + return ( + 'double' === e + ? ((HEAP32[tempDoublePtr >> 2] = HEAP32[(t + n) >> 2]), + (HEAP32[(tempDoublePtr + 4) >> 2] = HEAP32[(t + (n + 4)) >> 2]), + (r = +HEAPF64[tempDoublePtr >> 3])) + : 'i64' == e + ? (r = [HEAP32[(t + n) >> 2], HEAP32[(t + (n + 4)) >> 2]]) + : ((e = 'i32'), (r = HEAP32[(t + n) >> 2])), + (n += Runtime.getNativeFieldSize(e)), + r + ); + } + for (var o, s, A = []; ; ) { + var a = r; + if (0 === (o = HEAP8[r >> 0])) break; + if (((s = HEAP8[(r + 1) >> 0]), 37 == o)) { + var c = !1, + u = !1, + l = !1, + h = !1, + g = !1; + e: for (;;) { + switch (s) { + case 43: + c = !0; + break; + case 45: + u = !0; + break; + case 35: + l = !0; + break; + case 48: + if (h) break e; + h = !0; + break; + case 32: + g = !0; + break; + default: + break e; + } + r++, (s = HEAP8[(r + 1) >> 0]); + } + var f = 0; + if (42 == s) (f = i('i32')), r++, (s = HEAP8[(r + 1) >> 0]); + else + for (; s >= 48 && s <= 57; ) + (f = 10 * f + (s - 48)), r++, (s = HEAP8[(r + 1) >> 0]); + var p, + d = !1, + C = -1; + if (46 == s) { + if (((C = 0), (d = !0), r++, 42 == (s = HEAP8[(r + 1) >> 0]))) + (C = i('i32')), r++; + else + for (;;) { + var E = HEAP8[(r + 1) >> 0]; + if (E < 48 || E > 57) break; + (C = 10 * C + (E - 48)), r++; + } + s = HEAP8[(r + 1) >> 0]; + } + switch ((C < 0 && ((C = 6), (d = !1)), String.fromCharCode(s))) { + case 'h': + 104 == HEAP8[(r + 2) >> 0] ? (r++, (p = 1)) : (p = 2); + break; + case 'l': + 108 == HEAP8[(r + 2) >> 0] ? (r++, (p = 8)) : (p = 4); + break; + case 'L': + case 'q': + case 'j': + p = 8; + break; + case 'z': + case 't': + case 'I': + p = 4; + break; + default: + p = null; + } + switch ((p && r++, (s = HEAP8[(r + 1) >> 0]), String.fromCharCode(s))) { + case 'd': + case 'i': + case 'u': + case 'o': + case 'x': + case 'X': + case 'p': + var I = 100 == s || 105 == s, + m = (b = i('i' + 8 * (p = p || 4))); + if ((8 == p && (b = Runtime.makeBigInt(b[0], b[1], 117 == s)), p <= 4)) + b = (I ? reSign : unSign)(b & (Math.pow(256, p) - 1), 8 * p); + var y = Math.abs(b), + w = ''; + if (100 == s || 105 == s) + D = + 8 == p && i64Math + ? i64Math.stringify(m[0], m[1], null) + : reSign(b, 8 * p, 1).toString(10); + else if (117 == s) + (D = + 8 == p && i64Math + ? i64Math.stringify(m[0], m[1], !0) + : unSign(b, 8 * p, 1).toString(10)), + (b = Math.abs(b)); + else if (111 == s) D = (l ? '0' : '') + y.toString(8); + else if (120 == s || 88 == s) { + if (((w = l && 0 != b ? '0x' : ''), 8 == p && i64Math)) + if (m[1]) { + D = (m[1] >>> 0).toString(16); + for (var B = (m[0] >>> 0).toString(16); B.length < 8; ) B = '0' + B; + D += B; + } else D = (m[0] >>> 0).toString(16); + else if (b < 0) { + (b = -b), (D = (y - 1).toString(16)); + for (var Q = [], v = 0; v < D.length; v++) + Q.push((15 - parseInt(D[v], 16)).toString(16)); + for (D = Q.join(''); D.length < 2 * p; ) D = 'f' + D; + } else D = y.toString(16); + 88 == s && ((w = w.toUpperCase()), (D = D.toUpperCase())); + } else + 112 == s && (0 === y ? (D = '(nil)') : ((w = '0x'), (D = y.toString(16)))); + if (d) for (; D.length < C; ) D = '0' + D; + for ( + b >= 0 && (c ? (w = '+' + w) : g && (w = ' ' + w)), + '-' == D.charAt(0) && ((w = '-' + w), (D = D.substr(1))); + w.length + D.length < f; + + ) + u ? (D += ' ') : h ? (D = '0' + D) : (w = ' ' + w); + (D = w + D).split('').forEach(function (e) { + A.push(e.charCodeAt(0)); + }); + break; + case 'f': + case 'F': + case 'e': + case 'E': + case 'g': + case 'G': + var D, + b = i('double'); + if (isNaN(b)) (D = 'nan'), (h = !1); + else if (isFinite(b)) { + var S = !1, + k = Math.min(C, 20); + if (103 == s || 71 == s) { + (S = !0), (C = C || 1); + var x = parseInt(b.toExponential(k).split('e')[1], 10); + C > x && x >= -4 + ? ((s = (103 == s ? 'f' : 'F').charCodeAt(0)), (C -= x + 1)) + : ((s = (103 == s ? 'e' : 'E').charCodeAt(0)), C--), + (k = Math.min(C, 20)); + } + 101 == s || 69 == s + ? ((D = b.toExponential(k)), + /[eE][-+]\d$/.test(D) && (D = D.slice(0, -1) + '0' + D.slice(-1))) + : (102 != s && 70 != s) || + ((D = b.toFixed(k)), 0 === b && __reallyNegative(b) && (D = '-' + D)); + var F = D.split('e'); + if (S && !l) + for ( + ; + F[0].length > 1 && + -1 != F[0].indexOf('.') && + ('0' == F[0].slice(-1) || '.' == F[0].slice(-1)); + + ) + F[0] = F[0].slice(0, -1); + else for (l && -1 == D.indexOf('.') && (F[0] += '.'); C > k++; ) F[0] += '0'; + (D = F[0] + (F.length > 1 ? 'e' + F[1] : '')), + 69 == s && (D = D.toUpperCase()), + b >= 0 && (c ? (D = '+' + D) : g && (D = ' ' + D)); + } else (D = (b < 0 ? '-' : '') + 'inf'), (h = !1); + for (; D.length < f; ) + u + ? (D += ' ') + : (D = + !h || ('-' != D[0] && '+' != D[0]) + ? (h ? '0' : ' ') + D + : D[0] + '0' + D.slice(1)); + s < 97 && (D = D.toUpperCase()), + D.split('').forEach(function (e) { + A.push(e.charCodeAt(0)); + }); + break; + case 's': + var M = i('i8*'), + N = M ? _strlen(M) : '(null)'.length; + if ((d && (N = Math.min(N, C)), !u)) for (; N < f--; ) A.push(32); + if (M) for (v = 0; v < N; v++) A.push(HEAPU8[M++ >> 0]); + else A = A.concat(intArrayFromString('(null)'.substr(0, N), !0)); + if (u) for (; N < f--; ) A.push(32); + break; + case 'c': + for (u && A.push(i('i8')); --f > 0; ) A.push(32); + u || A.push(i('i8')); + break; + case 'n': + var R = i('i32*'); + HEAP32[R >> 2] = A.length; + break; + case '%': + A.push(o); + break; + default: + for (v = a; v < r + 2; v++) A.push(HEAP8[v >> 0]); + } + r += 2; + } else A.push(o), (r += 1); + } + return A; + } + function _fprintf(e, t, r) { + var n = __formatString(t, r), + i = Runtime.stackSave(), + o = _fwrite(allocate(n, 'i8', ALLOC_STACK), 1, n.length, e); + return Runtime.stackRestore(i), o; + } + function _printf(e, t) { + var r = __formatString(e, t), + n = intArrayToString(r); + return ( + '\n' === n[n.length - 1] && (n = n.substr(0, n.length - 1)), Module.print(n), r.length + ); + } + function _pthread_once(e, t) { + _pthread_once.seen || (_pthread_once.seen = {}), + e in _pthread_once.seen || (Runtime.dynCall('v', t), (_pthread_once.seen[e] = 1)); + } + function _fputc(e, t) { + var r = unSign(255 & e); + if (((HEAP8[_fputc.ret >> 0] = r), -1 == _write(_fileno(t), _fputc.ret, 1))) { + var n = FS.getStreamFromPtr(t); + return n && (n.error = !0), -1; + } + return r; + } + Module._strlen = _strlen; + var PTHREAD_SPECIFIC = {}; + function _pthread_getspecific(e) { + return PTHREAD_SPECIFIC[e] || 0; + } + function _fputs(e, t) { + return _write(_fileno(t), e, _strlen(e)); + } + Module._i64Add = _i64Add; + var _stdout = allocate(1, 'i32*', ALLOC_STATIC); + function _puts(e) { + var t = Pointer_stringify(e), + r = t.substr(0); + return ( + '\n' === r[r.length - 1] && (r = r.substr(0, r.length - 1)), Module.print(r), t.length + ); + } + function _pthread_setspecific(e, t) { + return e in PTHREAD_SPECIFIC ? ((PTHREAD_SPECIFIC[e] = t), 0) : ERRNO_CODES.EINVAL; + } + function __exit(e) { + Module.exit(e); + } + function _exit(e) { + __exit(e); + } + var _UItoD = !0; + function _malloc(e) { + return (Runtime.dynamicAlloc(e + 8) + 8) & 4294967288; + } + function ___cxa_allocate_exception(e) { + return _malloc(e); + } + function _fmod(e, t) { + return e % t; + } + function _fmodl() { + return _fmod.apply(null, arguments); + } + function ___cxa_pure_virtual() { + throw ((ABORT = !0), 'Pure virtual function called!'); + } + function _time(e) { + var t = (Date.now() / 1e3) | 0; + return e && (HEAP32[e >> 2] = t), t; + } + (Module._malloc = _malloc), (Module._bitshift64Lshr = _bitshift64Lshr); + var PTHREAD_SPECIFIC_NEXT_KEY = 1; + function _pthread_key_create(e, t) { + return 0 == e + ? ERRNO_CODES.EINVAL + : ((HEAP32[e >> 2] = PTHREAD_SPECIFIC_NEXT_KEY), + (PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY] = 0), + PTHREAD_SPECIFIC_NEXT_KEY++, + 0); + } + function ___cxa_guard_acquire(e) { + return HEAP8[e >> 0] ? 0 : ((HEAP8[e >> 0] = 1), 1); + } + function ___cxa_guard_release() {} + function _vfprintf(e, t, r) { + return _fprintf(e, t, HEAP32[r >> 2]); + } + function ___cxa_begin_catch(e) { + return ( + __ZSt18uncaught_exceptionv.uncaught_exception--, + EXCEPTIONS.caught.push(e), + EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(e)), + e + ); + } + function _emscripten_memcpy_big(e, t, r) { + return HEAPU8.set(HEAPU8.subarray(t, t + r), e), e; + } + Module._memcpy = _memcpy; + var _llvm_pow_f64 = Math_pow; + function _sbrk(e) { + var t = _sbrk; + t.called || + ((DYNAMICTOP = alignMemoryPage(DYNAMICTOP)), + (t.called = !0), + assert(Runtime.dynamicAlloc), + (t.alloc = Runtime.dynamicAlloc), + (Runtime.dynamicAlloc = function () { + abort('cannot dynamically allocate, sbrk now has control'); + })); + var r = DYNAMICTOP; + return 0 != e && t.alloc(e), r; + } + var _fabs = Math_abs; + function ___errno_location() { + return ___errno_state; + } + var _BItoD = !0; + function _copysign(e, t) { + return __reallyNegative(e) === __reallyNegative(t) ? e : -e; + } + function _copysignl() { + return _copysign.apply(null, arguments); + } + var ___dso_handle = allocate(1, 'i32*', ALLOC_STATIC), + _stderr = allocate(1, 'i32*', ALLOC_STATIC); + (___errno_state = Runtime.staticAlloc(4)), + (HEAP32[___errno_state >> 2] = 0), + (_fputc.ret = allocate([0], 'i8', ALLOC_STATIC)), + (STACK_BASE = STACKTOP = Runtime.alignMemory(STATICTOP)), + (staticSealed = !0), + (STACK_MAX = STACK_BASE + TOTAL_STACK), + (DYNAMIC_BASE = DYNAMICTOP = Runtime.alignMemory(STACK_MAX)), + assert(DYNAMIC_BASE < TOTAL_MEMORY, 'TOTAL_MEMORY not big enough for stack'); + var ctlz_i8 = allocate( + [ + 8, + 7, + 6, + 6, + 5, + 5, + 5, + 5, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 3, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 2, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + ], + 'i8', + ALLOC_DYNAMIC + ), + cttz_i8 = allocate( + [ + 8, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + 3, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + 4, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + 3, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + 5, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + 3, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + 4, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + 3, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + 6, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + 3, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + 4, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + 3, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + 5, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + 3, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + 4, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + 3, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + 7, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + 3, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + 4, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + 3, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + 5, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + 3, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + 4, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + 3, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + 6, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + 3, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + 4, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + 3, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + 5, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + 3, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + 4, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + 3, + 0, + 1, + 0, + 2, + 0, + 1, + 0, + ], + 'i8', + ALLOC_DYNAMIC + ); + function invoke_iiii(e, t, r, n) { + try { + return Module.dynCall_iiii(e, t, r, n); + } catch (e) { + if ('number' != typeof e && 'longjmp' !== e) throw e; + asm.setThrew(1, 0); + } + } + function invoke_viiiii(e, t, r, n, i, o) { + try { + Module.dynCall_viiiii(e, t, r, n, i, o); + } catch (e) { + if ('number' != typeof e && 'longjmp' !== e) throw e; + asm.setThrew(1, 0); + } + } + function invoke_vi(e, t) { + try { + Module.dynCall_vi(e, t); + } catch (e) { + if ('number' != typeof e && 'longjmp' !== e) throw e; + asm.setThrew(1, 0); + } + } + function invoke_vii(e, t, r) { + try { + Module.dynCall_vii(e, t, r); + } catch (e) { + if ('number' != typeof e && 'longjmp' !== e) throw e; + asm.setThrew(1, 0); + } + } + function invoke_ii(e, t) { + try { + return Module.dynCall_ii(e, t); + } catch (e) { + if ('number' != typeof e && 'longjmp' !== e) throw e; + asm.setThrew(1, 0); + } + } + function invoke_v(e) { + try { + Module.dynCall_v(e); + } catch (e) { + if ('number' != typeof e && 'longjmp' !== e) throw e; + asm.setThrew(1, 0); + } + } + function invoke_viiiiii(e, t, r, n, i, o, s) { + try { + Module.dynCall_viiiiii(e, t, r, n, i, o, s); + } catch (e) { + if ('number' != typeof e && 'longjmp' !== e) throw e; + asm.setThrew(1, 0); + } + } + function invoke_iii(e, t, r) { + try { + return Module.dynCall_iii(e, t, r); + } catch (e) { + if ('number' != typeof e && 'longjmp' !== e) throw e; + asm.setThrew(1, 0); + } + } + function invoke_viiii(e, t, r, n, i) { + try { + Module.dynCall_viiii(e, t, r, n, i); + } catch (e) { + if ('number' != typeof e && 'longjmp' !== e) throw e; + asm.setThrew(1, 0); + } + } + (Module.asmGlobalArg = { + Math, + Int8Array, + Int16Array, + Int32Array, + Uint8Array, + Uint16Array, + Uint32Array, + Float32Array, + Float64Array, + }), + (Module.asmLibraryArg = { + abort, + assert, + min: Math_min, + invoke_iiii, + invoke_viiiii, + invoke_vi, + invoke_vii, + invoke_ii, + invoke_v, + invoke_viiiiii, + invoke_iii, + invoke_viiii, + _fabs, + _llvm_pow_f64, + _send, + _fmod, + ___cxa_guard_acquire, + ___setErrNo, + _vfprintf, + ___cxa_allocate_exception, + ___cxa_find_matching_catch, + ___cxa_guard_release, + _pwrite, + __reallyNegative, + _sbrk, + ___cxa_begin_catch, + _emscripten_memcpy_big, + _fileno, + ___resumeException, + __ZSt18uncaught_exceptionv, + _sysconf, + _pthread_getspecific, + _atexit, + _pthread_once, + _puts, + _printf, + _pthread_key_create, + _write, + ___errno_location, + _pthread_setspecific, + ___cxa_atexit, + _copysign, + _fputc, + ___cxa_throw, + __exit, + _copysignl, + _abort, + _fwrite, + _time, + _fprintf, + __formatString, + _fputs, + _exit, + ___cxa_pure_virtual, + _fmodl, + STACKTOP, + STACK_MAX, + tempDoublePtr, + ABORT, + cttz_i8, + ctlz_i8, + NaN: NaN, + Infinity: 1 / 0, + ___dso_handle, + _stderr, + }); + var asm = (function (e, t, r) { + 'use asm'; + var n = new e.Int8Array(r); + var i = new e.Int16Array(r); + var o = new e.Int32Array(r); + var s = new e.Uint8Array(r); + var A = new e.Uint16Array(r); + var a = new e.Uint32Array(r); + var c = new e.Float32Array(r); + var u = new e.Float64Array(r); + var l = t.STACKTOP | 0; + var h = t.STACK_MAX | 0; + var g = t.tempDoublePtr | 0; + var f = t.ABORT | 0; + var p = t.cttz_i8 | 0; + var d = t.ctlz_i8 | 0; + var C = t.___dso_handle | 0; + var E = t._stderr | 0; + var I = 0; + var m = 0; + var y = 0; + var w = 0; + var B = +t.NaN, + Q = +t.Infinity; + var v = 0, + D = 0, + b = 0, + S = 0, + k = 0.0, + x = 0, + F = 0, + M = 0, + N = 0.0; + var R = 0; + var K = 0; + var L = 0; + var T = 0; + var P = 0; + var U = 0; + var _ = 0; + var O = 0; + var j = 0; + var Y = 0; + var G = e.Math.floor; + var J = e.Math.abs; + var H = e.Math.sqrt; + var q = e.Math.pow; + var z = e.Math.cos; + var W = e.Math.sin; + var V = e.Math.tan; + var X = e.Math.acos; + var Z = e.Math.asin; + var $ = e.Math.atan; + var ee = e.Math.atan2; + var te = e.Math.exp; + var re = e.Math.log; + var ne = e.Math.ceil; + var ie = e.Math.imul; + var oe = t.abort; + var se = t.assert; + var Ae = t.min; + var ae = t.invoke_iiii; + var ce = t.invoke_viiiii; + var ue = t.invoke_vi; + var le = t.invoke_vii; + var he = t.invoke_ii; + var ge = t.invoke_v; + var fe = t.invoke_viiiiii; + var pe = t.invoke_iii; + var de = t.invoke_viiii; + var Ce = t._fabs; + var Ee = t._llvm_pow_f64; + var Ie = t._send; + var me = t._fmod; + var ye = t.___cxa_guard_acquire; + var we = t.___setErrNo; + var Be = t._vfprintf; + var Qe = t.___cxa_allocate_exception; + var ve = t.___cxa_find_matching_catch; + var De = t.___cxa_guard_release; + var be = t._pwrite; + var Se = t.__reallyNegative; + var ke = t._sbrk; + var xe = t.___cxa_begin_catch; + var Fe = t._emscripten_memcpy_big; + var Me = t._fileno; + var Ne = t.___resumeException; + var Re = t.__ZSt18uncaught_exceptionv; + var Ke = t._sysconf; + var Le = t._pthread_getspecific; + var Te = t._atexit; + var Pe = t._pthread_once; + var Ue = t._puts; + var _e = t._printf; + var Oe = t._pthread_key_create; + var je = t._write; + var Ye = t.___errno_location; + var Ge = t._pthread_setspecific; + var Je = t.___cxa_atexit; + var He = t._copysign; + var qe = t._fputc; + var ze = t.___cxa_throw; + var We = t.__exit; + var Ve = t._copysignl; + var Xe = t._abort; + var Ze = t._fwrite; + var $e = t._time; + var et = t._fprintf; + var tt = t.__formatString; + var rt = t._fputs; + var nt = t._exit; + var it = t.___cxa_pure_virtual; + var ot = t._fmodl; + var st = 0.0; + function At(e) { + e = e | 0; + var t = 0; + t = l; + l = (l + e) | 0; + l = (l + 15) & -16; + return t | 0; + } + function at() { + return l | 0; + } + function ct(e) { + e = e | 0; + l = e; + } + function ut(e, t) { + e = e | 0; + t = t | 0; + if (!I) { + I = e; + m = t; + } + } + function lt(e) { + e = e | 0; + n[g >> 0] = n[e >> 0]; + n[(g + 1) >> 0] = n[(e + 1) >> 0]; + n[(g + 2) >> 0] = n[(e + 2) >> 0]; + n[(g + 3) >> 0] = n[(e + 3) >> 0]; + } + function ht(e) { + e = e | 0; + n[g >> 0] = n[e >> 0]; + n[(g + 1) >> 0] = n[(e + 1) >> 0]; + n[(g + 2) >> 0] = n[(e + 2) >> 0]; + n[(g + 3) >> 0] = n[(e + 3) >> 0]; + n[(g + 4) >> 0] = n[(e + 4) >> 0]; + n[(g + 5) >> 0] = n[(e + 5) >> 0]; + n[(g + 6) >> 0] = n[(e + 6) >> 0]; + n[(g + 7) >> 0] = n[(e + 7) >> 0]; + } + function gt(e) { + e = e | 0; + R = e; + } + function ft() { + return R | 0; + } + function pt(e) { + e = e | 0; + xe(e | 0) | 0; + pn(); + } + function dt(e) { + e = e | 0; + return; + } + function Ct(e, t, r, i, s) { + e = e | 0; + t = t | 0; + r = r | 0; + i = i | 0; + s = s | 0; + var A = 0; + A = l; + o[e >> 2] = 112; + o[(e + 4) >> 2] = t; + o[(e + 8) >> 2] = r; + o[(e + 12) >> 2] = i; + o[(e + 16) >> 2] = s; + if ((n[144] | 0) == 0 ? (ye(144) | 0) != 0 : 0) { + o[32] = 0; + o[33] = 0; + o[34] = 0; + Je(19, 128, C | 0) | 0; + De(144); + } + s = o[33] | 0; + if ((s | 0) == (o[34] | 0)) { + i = ((s >> 1) + 2) & -2; + i = (i | 0) < 2 ? 2 : i; + if ((i | 0) > ((2147483647 - s) | 0)) { + t = Qe(1) | 0; + ze(t | 0, 48, 0); + } + r = o[32] | 0; + t = (i + s) | 0; + o[34] = t; + t = On(r, t << 2) | 0; + o[32] = t; + if ((t | 0) == 0 ? (o[(Ye() | 0) >> 2] | 0) == 12 : 0) { + t = Qe(1) | 0; + ze(t | 0, 48, 0); + } + s = o[33] | 0; + } + o[33] = s + 1; + s = ((o[32] | 0) + (s << 2)) | 0; + if (!s) { + l = A; + return; + } + o[s >> 2] = e; + l = A; + return; + } + function Et(e) { + e = e | 0; + var t = 0; + t = l; + un(e); + l = t; + return; + } + function It(e) { + e = e | 0; + var t = 0, + r = 0; + t = l; + r = o[e >> 2] | 0; + if (!r) { + l = t; + return; + } + o[(e + 4) >> 2] = 0; + _n(r); + o[e >> 2] = 0; + o[(e + 8) >> 2] = 0; + l = t; + return; + } + function mt(e) { + e = e | 0; + var t = 0; + t = l; + un(e); + l = t; + return; + } + function yt(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0; + r = l; + if ((n[t >> 0] | 0) != 45) { + c = 0; + l = r; + return c | 0; + } + i = (t + 1) | 0; + s = 110; + a = i; + c = 0; + while (1) { + A = (c + 1) | 0; + if ((n[a >> 0] | 0) != (s << 24) >> 24) { + s = 1; + break; + } + a = (t + (c + 2)) | 0; + if ((A | 0) == 3) { + s = 0; + i = a; + break; + } else { + s = n[(264 + A) >> 0] | 0; + c = A; + } + } + if ($n(i, o[(e + 4) >> 2] | 0) | 0) { + c = 0; + l = r; + return c | 0; + } + n[(e + 20) >> 0] = s; + c = 1; + l = r; + return c | 0; + } + function wt(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0; + A = l; + l = (l + 16) | 0; + r = A; + i = o[E >> 2] | 0; + s = (e + 4) | 0; + a = o[s >> 2] | 0; + o[r >> 2] = a; + o[(r + 4) >> 2] = a; + et(i | 0, 216, r | 0) | 0; + a = 0; + while (1) { + c = a >>> 0 < ((32 - ((Ai(o[s >> 2] | 0) | 0) << 1)) | 0) >>> 0; + qe(32, i | 0) | 0; + if (c) a = (a + 1) | 0; + else break; + } + o[r >> 2] = (n[(e + 20) >> 0] | 0) != 0 ? 248 : 256; + et(i | 0, 232, r | 0) | 0; + if (!t) { + l = A; + return; + } + o[r >> 2] = o[(e + 8) >> 2]; + et(i | 0, 88, r | 0) | 0; + qe(10, i | 0) | 0; + l = A; + return; + } + function Bt(e) { + e = e | 0; + var t = 0; + t = l; + un(e); + l = t; + return; + } + function Qt(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0; + r = l; + l = (l + 16) | 0; + A = r; + s = (r + 8) | 0; + if ((n[t >> 0] | 0) != 45) { + g = 0; + l = r; + return g | 0; + } + u = (t + 1) | 0; + i = (e + 4) | 0; + a = o[i >> 2] | 0; + c = n[a >> 0] | 0; + e: do { + if ((c << 24) >> 24) { + h = 0; + while (1) { + g = h; + h = (h + 1) | 0; + if ((n[u >> 0] | 0) != (c << 24) >> 24) { + e = 0; + break; + } + c = n[(a + h) >> 0] | 0; + u = (t + (g + 2)) | 0; + if (!((c << 24) >> 24)) break e; + } + l = r; + return e | 0; + } + } while (0); + if ((n[u >> 0] | 0) != 61) { + g = 0; + l = r; + return g | 0; + } + t = (u + 1) | 0; + a = Zn(t, s, 10) | 0; + if (!(o[s >> 2] | 0)) { + g = 0; + l = r; + return g | 0; + } + if ((a | 0) > (o[(e + 24) >> 2] | 0)) { + g = o[E >> 2] | 0; + h = o[i >> 2] | 0; + o[A >> 2] = t; + o[(A + 4) >> 2] = h; + et(g | 0, 416, A | 0) | 0; + nt(1); + } + if ((a | 0) < (o[(e + 20) >> 2] | 0)) { + g = o[E >> 2] | 0; + h = o[i >> 2] | 0; + o[A >> 2] = t; + o[(A + 4) >> 2] = h; + et(g | 0, 472, A | 0) | 0; + nt(1); + } + o[(e + 28) >> 2] = a; + g = 1; + l = r; + return g | 0; + } + function vt(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + n = 0, + i = 0, + s = 0; + r = l; + l = (l + 16) | 0; + n = r; + i = o[E >> 2] | 0; + s = o[(e + 16) >> 2] | 0; + o[n >> 2] = o[(e + 4) >> 2]; + o[(n + 4) >> 2] = s; + et(i | 0, 336, n | 0) | 0; + s = o[(e + 20) >> 2] | 0; + if ((s | 0) == -2147483648) Ze(360, 4, 1, i | 0) | 0; + else { + o[n >> 2] = s; + et(i | 0, 368, n | 0) | 0; + } + Ze(376, 4, 1, i | 0) | 0; + s = o[(e + 24) >> 2] | 0; + if ((s | 0) == 2147483647) Ze(384, 4, 1, i | 0) | 0; + else { + o[n >> 2] = s; + et(i | 0, 368, n | 0) | 0; + } + o[n >> 2] = o[(e + 28) >> 2]; + et(i | 0, 392, n | 0) | 0; + if (!t) { + l = r; + return; + } + o[n >> 2] = o[(e + 8) >> 2]; + et(i | 0, 88, n | 0) | 0; + qe(10, i | 0) | 0; + l = r; + return; + } + function Dt(e) { + e = e | 0; + var t = 0, + r = 0, + i = 0, + s = 0, + A = 0; + s = l; + o[e >> 2] = 1816; + i = (e + 4) | 0; + r = (e + 32) | 0; + A = (e + 48) | 0; + o[(i + 0) >> 2] = 0; + o[(i + 4) >> 2] = 0; + o[(i + 8) >> 2] = 0; + o[(i + 12) >> 2] = 0; + o[(i + 16) >> 2] = 0; + o[(i + 20) >> 2] = 0; + o[(r + 0) >> 2] = 0; + o[(r + 4) >> 2] = 0; + o[(r + 8) >> 2] = 0; + o[(r + 12) >> 2] = 0; + u[A >> 3] = +u[75]; + u[(e + 56) >> 3] = +u[89]; + u[(e + 64) >> 3] = +u[103]; + u[(e + 72) >> 3] = +u[123]; + n[(e + 80) >> 0] = n[1364] | 0; + o[(e + 84) >> 2] = o[269]; + o[(e + 88) >> 2] = o[297]; + n[(e + 92) >> 0] = 0; + n[(e + 93) >> 0] = n[1292] | 0; + u[(e + 96) >> 3] = +u[204]; + o[(e + 104) >> 2] = o[439]; + o[(e + 108) >> 2] = o[359]; + u[(e + 112) >> 3] = +u[191]; + u[(e + 120) >> 3] = 0.3333333333333333; + u[(e + 128) >> 3] = 1.1; + o[(e + 136) >> 2] = 100; + u[(e + 144) >> 3] = 1.5; + A = (e + 316) | 0; + o[(e + 332) >> 2] = 0; + o[(e + 336) >> 2] = 0; + o[(e + 340) >> 2] = 0; + o[(e + 348) >> 2] = 0; + o[(e + 352) >> 2] = 0; + o[(e + 356) >> 2] = 0; + o[(e + 364) >> 2] = 0; + o[(e + 368) >> 2] = 0; + o[(e + 372) >> 2] = 0; + o[(e + 380) >> 2] = 0; + o[(e + 384) >> 2] = 0; + o[(e + 388) >> 2] = 0; + o[(e + 396) >> 2] = 0; + o[(e + 400) >> 2] = 0; + o[(e + 404) >> 2] = 0; + r = (e + 544) | 0; + o[(e + 412) >> 2] = 0; + o[(e + 416) >> 2] = 0; + o[(e + 420) >> 2] = 0; + o[(e + 428) >> 2] = 0; + o[(e + 432) >> 2] = 0; + o[(e + 436) >> 2] = 0; + o[(e + 444) >> 2] = 0; + o[(e + 448) >> 2] = 0; + o[(e + 452) >> 2] = 0; + oi((e + 152) | 0, 0, 176) | 0; + o[(e + 456) >> 2] = r; + i = (e + 460) | 0; + o[(i + 0) >> 2] = 0; + o[(i + 4) >> 2] = 0; + o[(i + 8) >> 2] = 0; + o[(i + 12) >> 2] = 0; + o[(i + 16) >> 2] = 0; + o[(i + 20) >> 2] = 0; + o[(e + 488) >> 2] = A; + n[(e + 492) >> 0] = 1; + u[(e + 496) >> 3] = 1.0; + u[(e + 504) >> 3] = 1.0; + o[(e + 512) >> 2] = 0; + o[(e + 516) >> 2] = -1; + A = (e + 520) | 0; + i = (e + 536) | 0; + o[(A + 0) >> 2] = 0; + o[(A + 4) >> 2] = 0; + o[(A + 8) >> 2] = 0; + o[(A + 12) >> 2] = 0; + n[i >> 0] = 1; + i = (e + 540) | 0; + o[(i + 0) >> 2] = 0; + o[(i + 4) >> 2] = 0; + o[(i + 8) >> 2] = 0; + o[(i + 12) >> 2] = 0; + o[(i + 16) >> 2] = 0; + er(r, 1048576); + n[(e + 560) >> 0] = 0; + r = (e + 604) | 0; + i = (e + 664) | 0; + A = (e + 564) | 0; + t = (A + 36) | 0; + do { + o[A >> 2] = 0; + A = (A + 4) | 0; + } while ((A | 0) < (t | 0)); + A = (r + 0) | 0; + t = (A + 36) | 0; + do { + o[A >> 2] = 0; + A = (A + 4) | 0; + } while ((A | 0) < (t | 0)); + A = (e + 680) | 0; + o[(i + 0) >> 2] = -1; + o[(i + 4) >> 2] = -1; + o[(i + 8) >> 2] = -1; + o[(i + 12) >> 2] = -1; + n[A >> 0] = 0; + l = s; + return; + } + function bt(e) { + e = e | 0; + var t = 0; + t = l; + St(e); + un(e); + l = t; + return; + } + function St(e) { + e = e | 0; + var t = 0, + r = 0, + n = 0; + t = l; + o[e >> 2] = 1816; + r = (e + 628) | 0; + n = o[r >> 2] | 0; + if (n) { + o[(e + 632) >> 2] = 0; + _n(n); + o[r >> 2] = 0; + o[(e + 636) >> 2] = 0; + } + r = (e + 616) | 0; + n = o[r >> 2] | 0; + if (n) { + o[(e + 620) >> 2] = 0; + _n(n); + o[r >> 2] = 0; + o[(e + 624) >> 2] = 0; + } + r = (e + 604) | 0; + n = o[r >> 2] | 0; + if (n) { + o[(e + 608) >> 2] = 0; + _n(n); + o[r >> 2] = 0; + o[(e + 612) >> 2] = 0; + } + r = (e + 588) | 0; + n = o[r >> 2] | 0; + if (n) { + o[(e + 592) >> 2] = 0; + _n(n); + o[r >> 2] = 0; + o[(e + 596) >> 2] = 0; + } + r = (e + 576) | 0; + n = o[r >> 2] | 0; + if (n) { + o[(e + 580) >> 2] = 0; + _n(n); + o[r >> 2] = 0; + o[(e + 584) >> 2] = 0; + } + r = (e + 564) | 0; + n = o[r >> 2] | 0; + if (n) { + o[(e + 568) >> 2] = 0; + _n(n); + o[r >> 2] = 0; + o[(e + 572) >> 2] = 0; + } + r = o[(e + 544) >> 2] | 0; + if (r) _n(r); + r = (e + 472) | 0; + n = o[r >> 2] | 0; + if (n) { + o[(e + 476) >> 2] = 0; + _n(n); + o[r >> 2] = 0; + o[(e + 480) >> 2] = 0; + } + r = (e + 460) | 0; + n = o[r >> 2] | 0; + if (n) { + o[(e + 464) >> 2] = 0; + _n(n); + o[r >> 2] = 0; + o[(e + 468) >> 2] = 0; + } + tr((e + 412) | 0); + r = (e + 396) | 0; + n = o[r >> 2] | 0; + if (n) { + o[(e + 400) >> 2] = 0; + _n(n); + o[r >> 2] = 0; + o[(e + 404) >> 2] = 0; + } + r = (e + 380) | 0; + n = o[r >> 2] | 0; + if (n) { + o[(e + 384) >> 2] = 0; + _n(n); + o[r >> 2] = 0; + o[(e + 388) >> 2] = 0; + } + n = (e + 364) | 0; + r = o[n >> 2] | 0; + if (r) { + o[(e + 368) >> 2] = 0; + _n(r); + o[n >> 2] = 0; + o[(e + 372) >> 2] = 0; + } + r = (e + 348) | 0; + n = o[r >> 2] | 0; + if (n) { + o[(e + 352) >> 2] = 0; + _n(n); + o[r >> 2] = 0; + o[(e + 356) >> 2] = 0; + } + r = (e + 332) | 0; + n = o[r >> 2] | 0; + if (n) { + o[(e + 336) >> 2] = 0; + _n(n); + o[r >> 2] = 0; + o[(e + 340) >> 2] = 0; + } + r = (e + 316) | 0; + n = o[r >> 2] | 0; + if (n) { + o[(e + 320) >> 2] = 0; + _n(n); + o[r >> 2] = 0; + o[(e + 324) >> 2] = 0; + } + r = (e + 304) | 0; + n = o[r >> 2] | 0; + if (n) { + o[(e + 308) >> 2] = 0; + _n(n); + o[r >> 2] = 0; + o[(e + 312) >> 2] = 0; + } + r = (e + 292) | 0; + n = o[r >> 2] | 0; + if (n) { + o[(e + 296) >> 2] = 0; + _n(n); + o[r >> 2] = 0; + o[(e + 300) >> 2] = 0; + } + r = (e + 280) | 0; + n = o[r >> 2] | 0; + if (n) { + o[(e + 284) >> 2] = 0; + _n(n); + o[r >> 2] = 0; + o[(e + 288) >> 2] = 0; + } + r = (e + 268) | 0; + n = o[r >> 2] | 0; + if (n) { + o[(e + 272) >> 2] = 0; + _n(n); + o[r >> 2] = 0; + o[(e + 276) >> 2] = 0; + } + r = (e + 256) | 0; + n = o[r >> 2] | 0; + if (n) { + o[(e + 260) >> 2] = 0; + _n(n); + o[r >> 2] = 0; + o[(e + 264) >> 2] = 0; + } + r = (e + 32) | 0; + n = o[r >> 2] | 0; + if (n) { + o[(e + 36) >> 2] = 0; + _n(n); + o[r >> 2] = 0; + o[(e + 40) >> 2] = 0; + } + r = (e + 16) | 0; + n = o[r >> 2] | 0; + if (n) { + o[(e + 20) >> 2] = 0; + _n(n); + o[r >> 2] = 0; + o[(e + 24) >> 2] = 0; + } + n = (e + 4) | 0; + r = o[n >> 2] | 0; + if (!r) { + l = t; + return; + } + o[(e + 8) >> 2] = 0; + _n(r); + o[n >> 2] = 0; + o[(e + 12) >> 2] = 0; + l = t; + return; + } + function kt(e, t, r) { + e = e | 0; + t = t | 0; + r = r | 0; + var i = 0, + s = 0, + A = 0, + a = 0, + c = 0.0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0, + C = 0; + i = l; + l = (l + 16) | 0; + a = (i + 4) | 0; + A = i; + s = (e + 580) | 0; + h = o[s >> 2] | 0; + if ((h | 0) > 0) { + f = (h + -1) | 0; + p = o[((o[(e + 576) >> 2] | 0) + (f << 2)) >> 2] | 0; + o[s >> 2] = f; + s = p; + } else { + p = (e + 540) | 0; + s = o[p >> 2] | 0; + o[p >> 2] = s + 1; + } + h = (e + 412) | 0; + p = s << 1; + o[a >> 2] = p; + rr(h, a); + o[A >> 2] = p | 1; + rr(h, A); + a = (e + 332) | 0; + h = n[544] | 0; + A = (s + 1) | 0; + nr(a, A); + n[((o[a >> 2] | 0) + s) >> 0] = h; + a = (e + 396) | 0; + h = (e + 400) | 0; + if ((o[h >> 2] | 0) < (A | 0)) { + f = (e + 404) | 0; + p = o[f >> 2] | 0; + if ((p | 0) < (A | 0)) { + d = (s + 2 - p) & -2; + g = ((p >> 1) + 2) & -2; + g = (d | 0) > (g | 0) ? d : g; + if ((g | 0) > ((2147483647 - p) | 0)) { + d = Qe(1) | 0; + ze(d | 0, 48, 0); + } + C = o[a >> 2] | 0; + d = (g + p) | 0; + o[f >> 2] = d; + d = On(C, d << 3) | 0; + o[a >> 2] = d; + if ((d | 0) == 0 ? (o[(Ye() | 0) >> 2] | 0) == 12 : 0) { + C = Qe(1) | 0; + ze(C | 0, 48, 0); + } + } + f = o[h >> 2] | 0; + if ((f | 0) < (A | 0)) + do { + g = ((o[a >> 2] | 0) + (f << 3)) | 0; + if (g) { + C = g; + o[C >> 2] = 0; + o[(C + 4) >> 2] = 0; + } + f = (f + 1) | 0; + } while ((f | 0) != (A | 0)); + o[h >> 2] = A; + } + h = ((o[a >> 2] | 0) + (s << 3)) | 0; + o[h >> 2] = -1; + o[(h + 4) >> 2] = 0; + h = (e + 316) | 0; + if (!(n[(e + 93) >> 0] | 0)) c = 0.0; + else { + C = (e + 72) | 0; + c = +u[C >> 3] * 1389796.0; + c = c - +(~~(c / 2147483647.0) | 0) * 2147483647.0; + u[C >> 3] = c; + c = (c / 2147483647.0) * 1.0e-5; + } + a = (e + 320) | 0; + if ((o[a >> 2] | 0) < (A | 0)) { + g = (e + 324) | 0; + f = o[g >> 2] | 0; + if ((f | 0) < (A | 0)) { + C = (s + 2 - f) & -2; + p = ((f >> 1) + 2) & -2; + p = (C | 0) > (p | 0) ? C : p; + if ((p | 0) > ((2147483647 - f) | 0)) { + C = Qe(1) | 0; + ze(C | 0, 48, 0); + } + d = o[h >> 2] | 0; + C = (p + f) | 0; + o[g >> 2] = C; + C = On(d, C << 3) | 0; + o[h >> 2] = C; + if ((C | 0) == 0 ? (o[(Ye() | 0) >> 2] | 0) == 12 : 0) { + C = Qe(1) | 0; + ze(C | 0, 48, 0); + } + } + p = o[a >> 2] | 0; + if ((p | 0) < (A | 0)) { + g = o[h >> 2] | 0; + do { + f = (g + (p << 3)) | 0; + if (f) u[f >> 3] = 0.0; + p = (p + 1) | 0; + } while ((p | 0) != (A | 0)); + } + o[a >> 2] = A; + } + u[((o[h >> 2] | 0) + (s << 3)) >> 3] = c; + ir((e + 588) | 0, s, 0); + ir((e + 348) | 0, s, 1); + a = (e + 364) | 0; + t = n[t >> 0] | 0; + nr(a, A); + n[((o[a >> 2] | 0) + s) >> 0] = t; + a = (e + 380) | 0; + t = (e + 384) | 0; + if ((o[t >> 2] | 0) < (A | 0)) { + h = (e + 388) | 0; + f = o[h >> 2] | 0; + if ((f | 0) < (A | 0)) { + C = (s + 2 - f) & -2; + g = ((f >> 1) + 2) & -2; + g = (C | 0) > (g | 0) ? C : g; + if ((g | 0) > ((2147483647 - f) | 0)) { + C = Qe(1) | 0; + ze(C | 0, 48, 0); + } + d = o[a >> 2] | 0; + C = (g + f) | 0; + o[h >> 2] = C; + C = On(d, C) | 0; + o[a >> 2] = C; + if ((C | 0) == 0 ? (o[(Ye() | 0) >> 2] | 0) == 12 : 0) { + C = Qe(1) | 0; + ze(C | 0, 48, 0); + } + } + h = o[t >> 2] | 0; + if ((h | 0) < (A | 0)) + do { + g = ((o[a >> 2] | 0) + h) | 0; + if (g) n[g >> 0] = 0; + h = (h + 1) | 0; + } while ((h | 0) != (A | 0)); + o[t >> 2] = A; + } + t = (e + 288) | 0; + a = o[t >> 2] | 0; + if ((a | 0) < (A | 0)) { + C = (s + 2 - a) & -2; + A = ((a >> 1) + 2) & -2; + A = (C | 0) > (A | 0) ? C : A; + if ((A | 0) > ((2147483647 - a) | 0)) { + C = Qe(1) | 0; + ze(C | 0, 48, 0); + } + d = (e + 280) | 0; + p = o[d >> 2] | 0; + C = (A + a) | 0; + o[t >> 2] = C; + C = On(p, C << 2) | 0; + o[d >> 2] = C; + if ((C | 0) == 0 ? (o[(Ye() | 0) >> 2] | 0) == 12 : 0) { + C = Qe(1) | 0; + ze(C | 0, 48, 0); + } + } + A = (e + 380) | 0; + t = ((o[A >> 2] | 0) + s) | 0; + a = (n[t >> 0] | 0) == 0; + if (r) { + if (a) { + C = (e + 200) | 0; + d = C; + d = ai(o[d >> 2] | 0, o[(d + 4) >> 2] | 0, 1, 0) | 0; + o[C >> 2] = d; + o[(C + 4) >> 2] = R; + } + } else if (!a) { + C = (e + 200) | 0; + d = C; + d = ai(o[d >> 2] | 0, o[(d + 4) >> 2] | 0, -1, -1) | 0; + o[C >> 2] = d; + o[(C + 4) >> 2] = R; + } + n[t >> 0] = r & 1; + r = (e + 460) | 0; + if ( + (o[(e + 476) >> 2] | 0) > (s | 0) + ? (o[((o[(e + 472) >> 2] | 0) + (s << 2)) >> 2] | 0) > -1 + : 0 + ) { + l = i; + return s | 0; + } + if (!(n[((o[A >> 2] | 0) + s) >> 0] | 0)) { + l = i; + return s | 0; + } + or(r, s); + l = i; + return s | 0; + } + function xt(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + i = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0, + C = 0, + E = 0, + I = 0, + m = 0; + r = l; + l = (l + 16) | 0; + c = (r + 1) | 0; + a = r; + i = (e + 492) | 0; + if (!(n[i >> 0] | 0)) { + E = 0; + l = r; + return E | 0; + } + E = o[t >> 2] | 0; + A = (t + 4) | 0; + u = o[A >> 2] | 0; + n[(c + 0) >> 0] = n[(a + 0) >> 0] | 0; + ar(E, u, c); + u = o[A >> 2] | 0; + e: do { + if ((u | 0) > 0) { + c = (e + 332) | 0; + a = n[528] | 0; + h = 0; + g = 0; + p = -2; + while (1) { + E = o[t >> 2] | 0; + f = o[(E + (h << 2)) >> 2] | 0; + C = s[((o[c >> 2] | 0) + (f >> 1)) >> 0] | 0; + I = C ^ (f & 1); + d = I & 255; + m = a & 255; + if ( + (f | 0) == ((p ^ 1) | 0) + ? 1 + : ((((d << 24) >> 24 == (a << 24) >> 24) & ((m >>> 1) ^ 1)) | + (m & 2 & I) | + 0) != + 0 + ) { + e = 1; + break; + } + I = n[536] | 0; + m = I & 255; + if ( + (f | 0) != (p | 0) + ? ((((m >>> 1) ^ 1) & ((d << 24) >> 24 == (I << 24) >> 24)) | + (C & 2 & m) | + 0) == + 0 + : 0 + ) { + o[(E + (g << 2)) >> 2] = f; + u = o[A >> 2] | 0; + g = (g + 1) | 0; + } else f = p; + h = (h + 1) | 0; + if ((h | 0) < (u | 0)) p = f; + else break e; + } + l = r; + return e | 0; + } else { + h = 0; + g = 0; + } + } while (0); + a = (h - g) | 0; + if ((a | 0) > 0) { + u = (u - a) | 0; + o[A >> 2] = u; + } + if (!u) { + n[i >> 0] = 0; + m = 0; + l = r; + return m | 0; + } else if ((u | 0) == 1) { + I = o[o[t >> 2] >> 2] | 0; + E = I >> 1; + n[((o[(e + 332) >> 2] | 0) + E) >> 0] = (((I & 1) ^ 1) & 255) ^ 1; + m = o[(e + 296) >> 2] | 0; + E = ((o[(e + 396) >> 2] | 0) + (E << 3)) | 0; + o[E >> 2] = -1; + o[(E + 4) >> 2] = m; + E = (e + 284) | 0; + m = o[E >> 2] | 0; + o[E >> 2] = m + 1; + o[((o[(e + 280) >> 2] | 0) + (m << 2)) >> 2] = I; + m = (Mt(e) | 0) == -1; + n[i >> 0] = m & 1; + l = r; + return m | 0; + } else { + t = cr((e + 544) | 0, t, 0) | 0; + A = (e + 256) | 0; + i = (e + 260) | 0; + c = o[i >> 2] | 0; + a = (e + 264) | 0; + if ((c | 0) == (o[a >> 2] | 0)) { + u = ((c >> 1) + 2) & -2; + u = (u | 0) < 2 ? 2 : u; + if ((u | 0) > ((2147483647 - c) | 0)) { + m = Qe(1) | 0; + ze(m | 0, 48, 0); + } + I = o[A >> 2] | 0; + m = (u + c) | 0; + o[a >> 2] = m; + m = On(I, m << 2) | 0; + o[A >> 2] = m; + if ((m | 0) == 0 ? (o[(Ye() | 0) >> 2] | 0) == 12 : 0) { + m = Qe(1) | 0; + ze(m | 0, 48, 0); + } + c = o[i >> 2] | 0; + } + o[i >> 2] = c + 1; + i = ((o[A >> 2] | 0) + (c << 2)) | 0; + if (i) o[i >> 2] = t; + Nt(e, t); + m = 1; + l = r; + return m | 0; + } + return 0; + } + function Ft(e, t, r) { + e = e | 0; + t = t | 0; + r = r | 0; + var i = 0, + s = 0; + i = o[t >> 2] | 0; + t = i >> 1; + n[((o[(e + 332) >> 2] | 0) + t) >> 0] = (((i & 1) ^ 1) & 255) ^ 1; + s = o[(e + 296) >> 2] | 0; + t = ((o[(e + 396) >> 2] | 0) + (t << 3)) | 0; + o[t >> 2] = r; + o[(t + 4) >> 2] = s; + r = (e + 284) | 0; + t = o[r >> 2] | 0; + o[r >> 2] = t + 1; + o[((o[(e + 280) >> 2] | 0) + (t << 2)) >> 2] = i; + return; + } + function Mt(e) { + e = e | 0; + var t = 0, + r = 0, + i = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0, + C = 0, + E = 0, + I = 0, + m = 0, + y = 0, + w = 0, + B = 0, + Q = 0, + v = 0, + D = 0, + b = 0, + S = 0, + k = 0, + x = 0, + F = 0, + M = 0, + N = 0, + K = 0, + L = 0, + T = 0, + P = 0, + U = 0, + _ = 0, + O = 0; + c = l; + l = (l + 16) | 0; + C = c; + A = (e + 512) | 0; + I = o[A >> 2] | 0; + d = (e + 284) | 0; + if ((I | 0) >= (o[d >> 2] | 0)) { + P = 0; + L = 0; + _ = -1; + U = (e + 184) | 0; + N = U; + T = N; + T = o[T >> 2] | 0; + N = (N + 4) | 0; + N = o[N >> 2] | 0; + N = ai(T | 0, N | 0, P | 0, L | 0) | 0; + T = R; + K = U; + o[K >> 2] = N; + U = (U + 4) | 0; + o[U >> 2] = T; + U = (e + 520) | 0; + T = U; + K = T; + K = o[K >> 2] | 0; + T = (T + 4) | 0; + T = o[T >> 2] | 0; + L = ii(K | 0, T | 0, P | 0, L | 0) | 0; + P = R; + T = U; + o[T >> 2] = L; + U = (U + 4) | 0; + o[U >> 2] = P; + l = c; + return _ | 0; + } + f = (e + 280) | 0; + a = (e + 428) | 0; + i = (e + 412) | 0; + u = (e + 332) | 0; + h = (e + 544) | 0; + g = (C + 4) | 0; + t = (e + 396) | 0; + p = (e + 296) | 0; + r = (e + 456) | 0; + v = -1; + E = 0; + do { + o[A >> 2] = I + 1; + w = o[((o[f >> 2] | 0) + (I << 2)) >> 2] | 0; + if (n[((o[a >> 2] | 0) + w) >> 0] | 0) { + m = o[i >> 2] | 0; + I = (m + ((w * 12) | 0) + 4) | 0; + Q = o[I >> 2] | 0; + if ((Q | 0) > 0) { + m = (m + ((w * 12) | 0)) | 0; + y = 0; + B = 0; + do { + b = o[m >> 2] | 0; + D = (b + (y << 3)) | 0; + if (((o[((o[o[r >> 2] >> 2] | 0) + (o[D >> 2] << 2)) >> 2] & 3) | 0) != 1) { + U = D; + _ = o[(U + 4) >> 2] | 0; + Q = (b + (B << 3)) | 0; + o[Q >> 2] = o[U >> 2]; + o[(Q + 4) >> 2] = _; + Q = o[I >> 2] | 0; + B = (B + 1) | 0; + } + y = (y + 1) | 0; + } while ((y | 0) < (Q | 0)); + } else { + y = 0; + B = 0; + } + m = (y - B) | 0; + if ((m | 0) > 0) o[I >> 2] = Q - m; + n[((o[a >> 2] | 0) + w) >> 0] = 0; + } + I = o[i >> 2] | 0; + E = (E + 1) | 0; + m = o[(I + ((w * 12) | 0)) >> 2] | 0; + I = (I + ((w * 12) | 0) + 4) | 0; + B = o[I >> 2] | 0; + y = (m + (B << 3)) | 0; + e: do { + if (!B) { + y = m; + Q = m; + } else { + w = w ^ 1; + B = ((B << 3) + -1) | 0; + b = m; + Q = m; + while (1) { + while (1) { + t: while (1) { + M = o[(b + 4) >> 2] | 0; + _ = s[((o[u >> 2] | 0) + (M >> 1)) >> 0] ^ (M & 1); + K = n[528] | 0; + N = K & 255; + L = N & 2; + N = (N >>> 1) ^ 1; + if (((((_ & 255) << 24) >> 24 == (K << 24) >> 24) & N) | (L & _)) { + x = 19; + break; + } + D = o[b >> 2] | 0; + x = o[h >> 2] | 0; + F = (x + (D << 2)) | 0; + S = (x + ((D + 1) << 2)) | 0; + k = o[S >> 2] | 0; + if ((k | 0) == (w | 0)) { + _ = (x + ((D + 2) << 2)) | 0; + k = o[_ >> 2] | 0; + o[S >> 2] = k; + o[_ >> 2] = w; + } + S = (b + 8) | 0; + o[C >> 2] = D; + o[g >> 2] = k; + if ( + (k | 0) != (M | 0) + ? ((_ = s[((o[u >> 2] | 0) + (k >> 1)) >> 0] ^ (k & 1)), + (((((_ & 255) << 24) >> 24 == (K << 24) >> 24) & N) | + (L & _) | + 0) != + 0) + : 0 + ) { + x = 27; + break; + } + L = o[F >> 2] | 0; + if (L >>> 0 <= 95) { + x = 31; + break; + } + N = o[u >> 2] | 0; + K = n[536] | 0; + M = K & 255; + _ = M & 2; + M = (M >>> 1) ^ 1; + U = 2; + while (1) { + T = (F + (U << 2) + 4) | 0; + P = o[T >> 2] | 0; + O = s[(N + (P >> 1)) >> 0] ^ (P & 1); + U = (U + 1) | 0; + if (!(((((O & 255) << 24) >> 24 == (K << 24) >> 24) & M) | (_ & O))) + break; + if ((U | 0) >= ((L >>> 5) | 0)) { + x = 32; + break t; + } + } + O = (x + ((D + 2) << 2)) | 0; + o[O >> 2] = P; + o[T >> 2] = w; + ur(((o[i >> 2] | 0) + (((o[O >> 2] ^ 1) * 12) | 0)) | 0, C); + if ((S | 0) == (y | 0)) break e; + else b = S; + } + if ((x | 0) == 19) { + x = 0; + U = b; + _ = o[(U + 4) >> 2] | 0; + O = Q; + o[O >> 2] = o[U >> 2]; + o[(O + 4) >> 2] = _; + b = (b + 8) | 0; + Q = (Q + 8) | 0; + } else if ((x | 0) == 27) { + x = 0; + _ = C; + O = o[(_ + 4) >> 2] | 0; + b = Q; + o[b >> 2] = o[_ >> 2]; + o[(b + 4) >> 2] = O; + b = S; + Q = (Q + 8) | 0; + } else if ((x | 0) == 31) { + K = n[536] | 0; + x = 32; + } + if ((x | 0) == 32) { + x = (Q + 8) | 0; + F = C; + N = o[(F + 4) >> 2] | 0; + M = Q; + o[M >> 2] = o[F >> 2]; + o[(M + 4) >> 2] = N; + M = k >> 1; + N = k & 1; + F = ((o[u >> 2] | 0) + M) | 0; + O = s[F >> 0] ^ N; + _ = K & 255; + if ( + ((((O & 255) << 24) >> 24 == (K << 24) >> 24) & ((_ >>> 1) ^ 1)) | + (_ & 2 & O) + ) + break; + n[F >> 0] = ((N ^ 1) & 255) ^ 1; + Q = o[p >> 2] | 0; + b = ((o[t >> 2] | 0) + (M << 3)) | 0; + o[b >> 2] = D; + o[(b + 4) >> 2] = Q; + b = o[d >> 2] | 0; + o[d >> 2] = b + 1; + o[((o[f >> 2] | 0) + (b << 2)) >> 2] = k; + b = S; + Q = x; + } + if ((b | 0) == (y | 0)) break e; + } + o[A >> 2] = o[d >> 2]; + if (S >>> 0 < y >>> 0) { + v = ((m + (B - S)) | 0) >>> 3; + while (1) { + U = S; + S = (S + 8) | 0; + _ = o[(U + 4) >> 2] | 0; + O = x; + o[O >> 2] = o[U >> 2]; + o[(O + 4) >> 2] = _; + if (S >>> 0 >= y >>> 0) break; + else x = (x + 8) | 0; + } + b = (b + ((v + 2) << 3)) | 0; + Q = (Q + ((v + 2) << 3)) | 0; + } else { + b = S; + Q = x; + } + if ((b | 0) == (y | 0)) { + v = D; + break; + } else v = D; + } + } + } while (0); + m = (y - Q) | 0; + if ((m | 0) > 0) o[I >> 2] = (o[I >> 2] | 0) - (m >> 3); + I = o[A >> 2] | 0; + } while ((I | 0) < (o[d >> 2] | 0)); + U = E; + T = (((E | 0) < 0) << 31) >> 31; + O = v; + _ = (e + 184) | 0; + K = _; + P = K; + P = o[P >> 2] | 0; + K = (K + 4) | 0; + K = o[K >> 2] | 0; + K = ai(P | 0, K | 0, U | 0, T | 0) | 0; + P = R; + L = _; + o[L >> 2] = K; + _ = (_ + 4) | 0; + o[_ >> 2] = P; + _ = (e + 520) | 0; + P = _; + L = P; + L = o[L >> 2] | 0; + P = (P + 4) | 0; + P = o[P >> 2] | 0; + T = ii(L | 0, P | 0, U | 0, T | 0) | 0; + U = R; + P = _; + o[P >> 2] = T; + _ = (_ + 4) | 0; + o[_ >> 2] = U; + l = c; + return O | 0; + } + function Nt(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + n = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0; + r = l; + l = (l + 16) | 0; + c = (r + 8) | 0; + i = r; + s = o[(e + 544) >> 2] | 0; + n = (s + (t << 2)) | 0; + A = (s + ((t + 1) << 2)) | 0; + a = (e + 412) | 0; + u = ((o[a >> 2] | 0) + (((o[A >> 2] ^ 1) * 12) | 0)) | 0; + s = (s + ((t + 2) << 2)) | 0; + h = o[s >> 2] | 0; + o[c >> 2] = t; + o[(c + 4) >> 2] = h; + ur(u, c); + s = ((o[a >> 2] | 0) + (((o[s >> 2] ^ 1) * 12) | 0)) | 0; + A = o[A >> 2] | 0; + o[i >> 2] = t; + o[(i + 4) >> 2] = A; + ur(s, i); + if (!(o[n >> 2] & 4)) { + h = (e + 208) | 0; + u = h; + u = ai(o[u >> 2] | 0, o[(u + 4) >> 2] | 0, 1, 0) | 0; + o[h >> 2] = u; + o[(h + 4) >> 2] = R; + h = (e + 224) | 0; + u = h; + u = ai(((o[n >> 2] | 0) >>> 5) | 0, 0, o[u >> 2] | 0, o[(u + 4) >> 2] | 0) | 0; + o[h >> 2] = u; + o[(h + 4) >> 2] = R; + l = r; + return; + } else { + h = (e + 216) | 0; + u = h; + u = ai(o[u >> 2] | 0, o[(u + 4) >> 2] | 0, 1, 0) | 0; + o[h >> 2] = u; + o[(h + 4) >> 2] = R; + h = (e + 232) | 0; + u = h; + u = ai(((o[n >> 2] | 0) >>> 5) | 0, 0, o[u >> 2] | 0, o[(u + 4) >> 2] | 0) | 0; + o[h >> 2] = u; + o[(h + 4) >> 2] = R; + l = r; + return; + } + } + function Rt(e, t, r) { + e = e | 0; + t = t | 0; + r = r | 0; + var i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0, + p = 0; + s = l; + l = (l + 16) | 0; + u = (s + 4) | 0; + a = s; + A = o[(e + 544) >> 2] | 0; + i = (A + (t << 2)) | 0; + c = o[(A + ((t + 1) << 2)) >> 2] ^ 1; + if (!r) { + o[u >> 2] = c; + r = (e + 428) | 0; + h = o[r >> 2] | 0; + c = (h + c) | 0; + if (!(n[c >> 0] | 0)) { + n[c >> 0] = 1; + sr((e + 444) | 0, u); + h = o[r >> 2] | 0; + } + t = o[(A + ((t + 2) << 2)) >> 2] ^ 1; + o[a >> 2] = t; + t = (h + t) | 0; + if (!(n[t >> 0] | 0)) { + n[t >> 0] = 1; + sr((e + 444) | 0, a); + } + } else { + a = (e + 412) | 0; + r = o[a >> 2] | 0; + u = (r + ((c * 12) | 0)) | 0; + A = (A + ((t + 2) << 2)) | 0; + c = (r + ((c * 12) | 0) + 4) | 0; + h = o[c >> 2] | 0; + e: do { + if ((h | 0) > 0) { + p = o[u >> 2] | 0; + f = 0; + while (1) { + g = (f + 1) | 0; + if ((o[(p + (f << 3)) >> 2] | 0) == (t | 0)) { + g = f; + break e; + } + if ((g | 0) < (h | 0)) f = g; + else break; + } + } else g = 0; + } while (0); + h = (h + -1) | 0; + if ((g | 0) < (h | 0)) { + do { + r = o[u >> 2] | 0; + h = g; + g = (g + 1) | 0; + f = (r + (g << 3)) | 0; + p = o[(f + 4) >> 2] | 0; + h = (r + (h << 3)) | 0; + o[h >> 2] = o[f >> 2]; + o[(h + 4) >> 2] = p; + h = ((o[c >> 2] | 0) + -1) | 0; + } while ((g | 0) < (h | 0)); + r = o[a >> 2] | 0; + } + o[c >> 2] = h; + a = o[A >> 2] ^ 1; + A = (r + ((a * 12) | 0)) | 0; + a = (r + ((a * 12) | 0) + 4) | 0; + c = o[a >> 2] | 0; + e: do { + if ((c | 0) > 0) { + r = o[A >> 2] | 0; + h = 0; + while (1) { + u = (h + 1) | 0; + if ((o[(r + (h << 3)) >> 2] | 0) == (t | 0)) { + u = h; + break e; + } + if ((u | 0) < (c | 0)) h = u; + else break; + } + } else u = 0; + } while (0); + t = (c + -1) | 0; + if ((u | 0) < (t | 0)) + do { + g = o[A >> 2] | 0; + t = u; + u = (u + 1) | 0; + f = (g + (u << 3)) | 0; + p = o[(f + 4) >> 2] | 0; + t = (g + (t << 3)) | 0; + o[t >> 2] = o[f >> 2]; + o[(t + 4) >> 2] = p; + t = ((o[a >> 2] | 0) + -1) | 0; + } while ((u | 0) < (t | 0)); + o[a >> 2] = t; + } + if (!(o[i >> 2] & 4)) { + p = (e + 208) | 0; + f = p; + f = ai(o[f >> 2] | 0, o[(f + 4) >> 2] | 0, -1, -1) | 0; + o[p >> 2] = f; + o[(p + 4) >> 2] = R; + p = (e + 224) | 0; + f = p; + f = ii(o[f >> 2] | 0, o[(f + 4) >> 2] | 0, ((o[i >> 2] | 0) >>> 5) | 0, 0) | 0; + o[p >> 2] = f; + o[(p + 4) >> 2] = R; + l = s; + return; + } else { + p = (e + 216) | 0; + f = p; + f = ai(o[f >> 2] | 0, o[(f + 4) >> 2] | 0, -1, -1) | 0; + o[p >> 2] = f; + o[(p + 4) >> 2] = R; + p = (e + 232) | 0; + f = p; + f = ii(o[f >> 2] | 0, o[(f + 4) >> 2] | 0, ((o[i >> 2] | 0) >>> 5) | 0, 0) | 0; + o[p >> 2] = f; + o[(p + 4) >> 2] = R; + l = s; + return; + } + } + function Kt(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + i = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0; + A = l; + i = (e + 544) | 0; + h = o[i >> 2] | 0; + r = (h + (t << 2)) | 0; + Rt(e, t, 0); + h = o[(h + ((t + 1) << 2)) >> 2] | 0; + a = h >> 1; + h = (s[((o[(e + 332) >> 2] | 0) + a) >> 0] | 0) ^ (h & 1); + f = n[528] | 0; + g = f & 255; + if ( + ( + (((((h & 255) << 24) >> 24 == (f << 24) >> 24) & ((g >>> 1) ^ 1)) | + (g & 2 & h) | + 0) != + 0 + ? ((c = ((o[(e + 396) >> 2] | 0) + (a << 3)) | 0), + (u = o[c >> 2] | 0), + (u | 0) != -1) + : 0 + ) + ? (((o[i >> 2] | 0) + (u << 2)) | 0) == (r | 0) + : 0 + ) + o[c >> 2] = -1; + o[r >> 2] = (o[r >> 2] & -4) | 1; + g = o[((o[i >> 2] | 0) + (t << 2)) >> 2] | 0; + f = (e + 556) | 0; + o[f >> 2] = + (((((((g >>> 3) & 1) + (g >>> 5)) << 2) + 4) | 0) >>> 2) + (o[f >> 2] | 0); + l = A; + return; + } + function Lt(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + i = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0; + r = l; + i = o[t >> 2] | 0; + if (i >>> 0 <= 31) { + u = 0; + l = r; + return u | 0; + } + A = o[(e + 332) >> 2] | 0; + a = n[528] | 0; + c = a & 255; + u = c & 2; + c = (c >>> 1) ^ 1; + e = 0; + while (1) { + h = o[(t + (e << 2) + 4) >> 2] | 0; + h = (s[(A + (h >> 1)) >> 0] | 0) ^ (h & 1); + e = (e + 1) | 0; + if (((((h & 255) << 24) >> 24 == (a << 24) >> 24) & c) | (u & h)) { + i = 1; + t = 5; + break; + } + if ((e | 0) >= ((i >>> 5) | 0)) { + i = 0; + t = 5; + break; + } + } + if ((t | 0) == 5) { + l = r; + return i | 0; + } + return 0; + } + function Tt(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0, + C = 0, + E = 0, + I = 0, + m = 0; + s = l; + r = (e + 296) | 0; + if ((o[r >> 2] | 0) <= (t | 0)) { + l = s; + return; + } + i = (e + 284) | 0; + E = o[i >> 2] | 0; + a = (e + 292) | 0; + I = o[a >> 2] | 0; + m = o[(I + (t << 2)) >> 2] | 0; + if ((E | 0) > (m | 0)) { + C = (e + 280) | 0; + h = (e + 332) | 0; + u = (e + 88) | 0; + c = (e + 348) | 0; + g = (e + 460) | 0; + p = (e + 476) | 0; + d = (e + 472) | 0; + f = (e + 380) | 0; + do { + E = (E + -1) | 0; + m = o[((o[C >> 2] | 0) + (E << 2)) >> 2] >> 1; + n[((o[h >> 2] | 0) + m) >> 0] = n[544] | 0; + I = o[u >> 2] | 0; + if ((I | 0) <= 1) { + if ( + (I | 0) == 1 + ? (E | 0) > + (o[((o[a >> 2] | 0) + (((o[r >> 2] | 0) + -1) << 2)) >> 2] | 0) + : 0 + ) + A = 7; + } else A = 7; + if ((A | 0) == 7) { + A = 0; + n[((o[c >> 2] | 0) + m) >> 0] = o[((o[C >> 2] | 0) + (E << 2)) >> 2] & 1; + } + if ( + !((o[p >> 2] | 0) > (m | 0) + ? (o[((o[d >> 2] | 0) + (m << 2)) >> 2] | 0) > -1 + : 0) + ) + A = 11; + if ((A | 0) == 11 ? ((A = 0), (n[((o[f >> 2] | 0) + m) >> 0] | 0) != 0) : 0) + or(g, m); + I = o[a >> 2] | 0; + m = o[(I + (t << 2)) >> 2] | 0; + } while ((E | 0) > (m | 0)); + E = o[i >> 2] | 0; + } + o[(e + 512) >> 2] = m; + e = o[(I + (t << 2)) >> 2] | 0; + if (((E - e) | 0) > 0) o[i >> 2] = e; + if ((((o[r >> 2] | 0) - t) | 0) <= 0) { + l = s; + return; + } + o[r >> 2] = t; + l = s; + return; + } + function Pt(e) { + e = e | 0; + var t = 0, + r = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0.0, + C = 0; + t = l; + i = (e + 72) | 0; + d = +u[i >> 3] * 1389796.0; + d = d - +(~~(d / 2147483647.0) | 0) * 2147483647.0; + u[i >> 3] = d; + c = (e + 464) | 0; + if ( + d / 2147483647.0 < +u[(e + 64) >> 3] ? ((h = o[c >> 2] | 0), (h | 0) != 0) : 0 + ) { + d = d * 1389796.0; + d = d - +(~~(d / 2147483647.0) | 0) * 2147483647.0; + u[i >> 3] = d; + h = + o[((o[(e + 460) >> 2] | 0) + (~~(+(h | 0) * (d / 2147483647.0)) << 2)) >> 2] | + 0; + f = n[((o[(e + 332) >> 2] | 0) + h) >> 0] | 0; + g = n[544] | 0; + p = g & 255; + if ( + ((((p >>> 1) ^ 1) & ((f << 24) >> 24 == (g << 24) >> 24)) | (f & 2 & p) | 0) != + 0 + ? (n[((o[(e + 380) >> 2] | 0) + h) >> 0] | 0) != 0 + : 0 + ) { + p = (e + 176) | 0; + f = p; + f = ai(o[f >> 2] | 0, o[(f + 4) >> 2] | 0, 1, 0) | 0; + o[p >> 2] = f; + o[(p + 4) >> 2] = R; + } + } else h = -1; + g = (e + 460) | 0; + p = (e + 332) | 0; + f = (e + 380) | 0; + while (1) { + if ( + ( + (h | 0) != -1 + ? ((C = n[((o[p >> 2] | 0) + h) >> 0] | 0), + (A = n[544] | 0), + (r = A & 255), + (s = (r >>> 1) ^ 1), + ((s & ((C << 24) >> 24 == (A << 24) >> 24)) | (C & 2 & r) | 0) != 0) + : 0 + ) + ? (n[((o[f >> 2] | 0) + h) >> 0] | 0) != 0 + : 0 + ) + break; + if (!(o[c >> 2] | 0)) { + r = -2; + a = 17; + break; + } + h = lr(g) | 0; + } + if ((a | 0) == 17) { + l = t; + return r | 0; + } + c = n[((o[(e + 364) >> 2] | 0) + h) >> 0] | 0; + a = c & 255; + if (!((s & ((c << 24) >> 24 == (A << 24) >> 24)) | (r & 2 & a))) { + p = n[528] | 0; + C = p & 255; + C = + (((((C >>> 1) ^ 1) & ((c << 24) >> 24 == (p << 24) >> 24)) | (a & 2 & C) | 0) != + 0) | + (h << 1); + l = t; + return C | 0; + } + if (!(n[(e + 92) >> 0] | 0)) { + C = ((n[((o[(e + 348) >> 2] | 0) + h) >> 0] | 0) != 0) | (h << 1); + l = t; + return C | 0; + } else { + d = +u[i >> 3] * 1389796.0; + d = d - +(~~(d / 2147483647.0) | 0) * 2147483647.0; + u[i >> 3] = d; + C = (d / 2147483647.0 < 0.5) | (h << 1); + l = t; + return C | 0; + } + return 0; + } + function Ut(e, t, r, i) { + e = e | 0; + t = t | 0; + r = r | 0; + i = i | 0; + var s = 0, + A = 0, + a = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0, + C = 0.0, + E = 0, + I = 0, + m = 0, + y = 0, + w = 0, + B = 0, + Q = 0, + v = 0, + D = 0, + b = 0, + S = 0, + k = 0, + x = 0, + F = 0, + M = 0, + N = 0, + K = 0, + L = 0, + T = 0, + P = 0, + U = 0, + _ = 0, + O = 0, + j = 0, + Y = 0, + G = 0, + J = 0.0, + H = 0; + s = l; + l = (l + 16) | 0; + p = (s + 8) | 0; + I = (s + 4) | 0; + g = s; + h = (r + 4) | 0; + A = o[h >> 2] | 0; + a = (r + 8) | 0; + if ((A | 0) == (o[a >> 2] | 0)) { + d = ((A >> 1) + 2) & -2; + d = (d | 0) < 2 ? 2 : d; + if ((d | 0) > ((2147483647 - A) | 0)) { + G = Qe(1) | 0; + ze(G | 0, 48, 0); + } + Y = o[r >> 2] | 0; + G = (d + A) | 0; + o[a >> 2] = G; + G = On(Y, G << 2) | 0; + o[r >> 2] = G; + if ((G | 0) == 0 ? (o[(Ye() | 0) >> 2] | 0) == 12 : 0) { + G = Qe(1) | 0; + ze(G | 0, 48, 0); + } + A = o[h >> 2] | 0; + } + a = ((o[r >> 2] | 0) + (A << 2)) | 0; + if (a) { + o[a >> 2] = 0; + A = o[h >> 2] | 0; + } + o[h >> 2] = A + 1; + d = (e + 544) | 0; + M = (e + 280) | 0; + A = (e + 588) | 0; + a = (e + 396) | 0; + S = (e + 504) | 0; + x = (e + 316) | 0; + k = (e + 540) | 0; + b = (e + 476) | 0; + D = (e + 472) | 0; + v = (e + 460) | 0; + Q = (e + 488) | 0; + B = (e + 296) | 0; + y = (e + 496) | 0; + w = (e + 272) | 0; + F = (e + 268) | 0; + K = -2; + N = ((o[(e + 284) >> 2] | 0) + -1) | 0; + L = 0; + do { + T = o[d >> 2] | 0; + t = (T + (t << 2)) | 0; + P = o[t >> 2] | 0; + if ( + ((P & 4) | 0) != 0 + ? ((C = +u[y >> 3]), + (G = (t + ((P >>> 5) << 2) + 4) | 0), + (J = C + +c[G >> 2]), + (c[G >> 2] = J), + J > 1.0e20) + : 0 + ) { + _ = o[w >> 2] | 0; + if ((_ | 0) > 0) { + U = o[F >> 2] | 0; + P = 0; + do { + G = (T + (o[(U + (P << 2)) >> 2] << 2)) | 0; + G = (G + (((o[G >> 2] | 0) >>> 5) << 2) + 4) | 0; + c[G >> 2] = +c[G >> 2] * 1.0e-20; + P = (P + 1) | 0; + } while ((P | 0) != (_ | 0)); + } + u[y >> 3] = C * 1.0e-20; + } + K = ((K | 0) != -2) & 1; + if (K >>> 0 < ((o[t >> 2] | 0) >>> 5) >>> 0) + do { + P = o[(t + (K << 2) + 4) >> 2] | 0; + o[I >> 2] = P; + P = P >> 1; + T = ((o[A >> 2] | 0) + P) | 0; + do { + if ( + (n[T >> 0] | 0) == 0 + ? (o[((o[a >> 2] | 0) + (P << 3) + 4) >> 2] | 0) > 0 + : 0 + ) { + _ = o[x >> 2] | 0; + G = (_ + (P << 3)) | 0; + J = +u[S >> 3] + +u[G >> 3]; + u[G >> 3] = J; + if (J > 1.0e100) { + O = o[k >> 2] | 0; + if ((O | 0) > 0) { + U = 0; + do { + G = (_ + (U << 3)) | 0; + u[G >> 3] = +u[G >> 3] * 1.0e-100; + U = (U + 1) | 0; + } while ((U | 0) != (O | 0)); + } + u[S >> 3] = +u[S >> 3] * 1.0e-100; + } + if ( + (o[b >> 2] | 0) > (P | 0) + ? ((m = o[D >> 2] | 0), + (E = o[(m + (P << 2)) >> 2] | 0), + (E | 0) > -1) + : 0 + ) { + U = o[v >> 2] | 0; + _ = o[(U + (E << 2)) >> 2] | 0; + e: do { + if (!E) Y = 0; + else { + G = E; + while (1) { + Y = G; + G = (G + -1) >> 1; + j = (U + (G << 2)) | 0; + O = o[j >> 2] | 0; + H = o[o[Q >> 2] >> 2] | 0; + if (!(+u[(H + (_ << 3)) >> 3] > +u[(H + (O << 3)) >> 3])) break e; + o[(U + (Y << 2)) >> 2] = O; + o[(m + (o[j >> 2] << 2)) >> 2] = Y; + if (!G) { + Y = 0; + break; + } + } + } + } while (0); + o[(U + (Y << 2)) >> 2] = _; + o[(m + (_ << 2)) >> 2] = Y; + } + n[T >> 0] = 1; + if ((o[((o[a >> 2] | 0) + (P << 3) + 4) >> 2] | 0) < (o[B >> 2] | 0)) { + sr(r, I); + break; + } else { + L = (L + 1) | 0; + break; + } + } + } while (0); + K = (K + 1) | 0; + } while ((K | 0) < (((o[t >> 2] | 0) >>> 5) | 0)); + t = o[M >> 2] | 0; + T = o[A >> 2] | 0; + do { + K = N; + N = (N + -1) | 0; + K = o[(t + (K << 2)) >> 2] | 0; + U = K >> 1; + P = (T + U) | 0; + } while ((n[P >> 0] | 0) == 0); + t = o[((o[a >> 2] | 0) + (U << 3)) >> 2] | 0; + n[P >> 0] = 0; + L = (L + -1) | 0; + } while ((L | 0) > 0); + o[o[r >> 2] >> 2] = K ^ 1; + I = (e + 616) | 0; + y = o[I >> 2] | 0; + E = (e + 620) | 0; + if (!y) w = o[E >> 2] | 0; + else { + o[E >> 2] = 0; + w = 0; + } + m = o[h >> 2] | 0; + if ((w | 0) < (m | 0)) { + Q = (e + 624) | 0; + B = o[Q >> 2] | 0; + if ((B | 0) < (m | 0)) { + H = (m + 1 - B) & -2; + w = ((B >> 1) + 2) & -2; + w = (H | 0) > (w | 0) ? H : w; + if ((w | 0) > ((2147483647 - B) | 0)) { + H = Qe(1) | 0; + ze(H | 0, 48, 0); + } + H = (w + B) | 0; + o[Q >> 2] = H; + y = On(y, H << 2) | 0; + o[I >> 2] = y; + if ((y | 0) == 0 ? (o[(Ye() | 0) >> 2] | 0) == 12 : 0) { + H = Qe(1) | 0; + ze(H | 0, 48, 0); + } + } + w = o[E >> 2] | 0; + e: do { + if ((w | 0) < (m | 0)) + while (1) { + y = (y + (w << 2)) | 0; + if (y) o[y >> 2] = 0; + w = (w + 1) | 0; + if ((w | 0) == (m | 0)) break e; + y = o[I >> 2] | 0; + } + } while (0); + o[E >> 2] = m; + m = o[h >> 2] | 0; + } + if ((m | 0) > 0) { + w = o[I >> 2] | 0; + y = o[r >> 2] | 0; + B = 0; + do { + o[(w + (B << 2)) >> 2] = o[(y + (B << 2)) >> 2]; + B = (B + 1) | 0; + m = o[h >> 2] | 0; + } while ((B | 0) < (m | 0)); + } + y = o[(e + 84) >> 2] | 0; + if ((y | 0) == 1) + if ((m | 0) > 1) { + g = o[r >> 2] | 0; + f = 1; + y = 1; + while (1) { + m = o[(g + (f << 2)) >> 2] | 0; + p = o[a >> 2] | 0; + w = o[(p + ((m >> 1) << 3)) >> 2] | 0; + e: do { + if ((w | 0) != -1) { + B = ((o[d >> 2] | 0) + (w << 2)) | 0; + Q = o[B >> 2] | 0; + if (Q >>> 0 > 63) { + w = o[A >> 2] | 0; + v = 1; + while (1) { + H = o[(B + (v << 2) + 4) >> 2] >> 1; + if ( + (n[(w + H) >> 0] | 0) == 0 + ? (o[(p + (H << 3) + 4) >> 2] | 0) > 0 + : 0 + ) + break; + v = (v + 1) | 0; + if ((v | 0) >= ((Q >>> 5) | 0)) break e; + } + o[(g + (y << 2)) >> 2] = m; + y = (y + 1) | 0; + } + } else { + o[(g + (y << 2)) >> 2] = m; + y = (y + 1) | 0; + } + } while (0); + f = (f + 1) | 0; + p = o[h >> 2] | 0; + if ((f | 0) >= (p | 0)) { + g = p; + break; + } + } + } else { + g = m; + f = 1; + y = 1; + } + else if ((y | 0) == 2) + if ((m | 0) > 1) { + d = 1; + y = 1; + do { + w = o[r >> 2] | 0; + m = o[(w + (d << 2)) >> 2] | 0; + if ((o[((o[a >> 2] | 0) + ((m >> 1) << 3)) >> 2] | 0) != -1) { + o[g >> 2] = m; + o[(p + 0) >> 2] = o[(g + 0) >> 2]; + if (!(_t(e, p) | 0)) { + m = o[r >> 2] | 0; + w = m; + m = o[(m + (d << 2)) >> 2] | 0; + f = 62; + } + } else f = 62; + if ((f | 0) == 62) { + f = 0; + o[(w + (y << 2)) >> 2] = m; + y = (y + 1) | 0; + } + d = (d + 1) | 0; + m = o[h >> 2] | 0; + } while ((d | 0) < (m | 0)); + g = m; + f = d; + } else { + g = m; + f = 1; + y = 1; + } + else { + g = m; + f = m; + y = m; + } + H = (e + 240) | 0; + G = H; + G = + ai(o[G >> 2] | 0, o[(G + 4) >> 2] | 0, g | 0, ((((g | 0) < 0) << 31) >> 31) | 0) | + 0; + o[H >> 2] = G; + o[(H + 4) >> 2] = R; + f = (f - y) | 0; + if ((f | 0) > 0) { + g = (g - f) | 0; + o[h >> 2] = g; + } + H = (e + 248) | 0; + G = H; + G = + ai(o[G >> 2] | 0, o[(G + 4) >> 2] | 0, g | 0, ((((g | 0) < 0) << 31) >> 31) | 0) | + 0; + o[H >> 2] = G; + o[(H + 4) >> 2] = R; + if ((g | 0) == 1) r = 0; + else { + r = o[r >> 2] | 0; + if ((g | 0) > 2) { + e = o[a >> 2] | 0; + h = 2; + f = 1; + do { + f = + (o[(e + ((o[(r + (h << 2)) >> 2] >> 1) << 3) + 4) >> 2] | 0) > + (o[(e + ((o[(r + (f << 2)) >> 2] >> 1) << 3) + 4) >> 2] | 0) + ? h + : f; + h = (h + 1) | 0; + } while ((h | 0) < (g | 0)); + } else f = 1; + G = (r + (f << 2)) | 0; + H = o[G >> 2] | 0; + r = (r + 4) | 0; + o[G >> 2] = o[r >> 2]; + o[r >> 2] = H; + r = o[((o[a >> 2] | 0) + ((H >> 1) << 3) + 4) >> 2] | 0; + } + o[i >> 2] = r; + if ((o[E >> 2] | 0) > 0) i = 0; + else { + l = s; + return; + } + do { + n[((o[A >> 2] | 0) + (o[((o[I >> 2] | 0) + (i << 2)) >> 2] >> 1)) >> 0] = 0; + i = (i + 1) | 0; + } while ((i | 0) < (o[E >> 2] | 0)); + l = s; + return; + } + function _t(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0, + C = 0, + E = 0, + I = 0, + m = 0; + r = l; + g = o[t >> 2] | 0; + u = (e + 396) | 0; + d = o[u >> 2] | 0; + c = (e + 544) | 0; + E = ((o[c >> 2] | 0) + (o[(d + ((g >> 1) << 3)) >> 2] << 2)) | 0; + A = (e + 604) | 0; + i = (e + 608) | 0; + if (o[A >> 2] | 0) o[i >> 2] = 0; + s = (e + 588) | 0; + a = (e + 612) | 0; + e = (e + 616) | 0; + f = 1; + while (1) { + if (f >>> 0 < ((o[E >> 2] | 0) >>> 5) >>> 0) { + C = o[(E + (f << 2) + 4) >> 2] | 0; + p = C >> 1; + if ( + (o[(d + (p << 3) + 4) >> 2] | 0) != 0 + ? ((h = n[((o[s >> 2] | 0) + p) >> 0] | 0), + ((((h + -1) << 24) >> 24) & 255) >= 2) + : 0 + ) { + E = o[i >> 2] | 0; + I = (E | 0) == (o[a >> 2] | 0); + if ((h << 24) >> 24 == 3 ? 1 : (o[(d + (p << 3)) >> 2] | 0) == -1) { + c = 8; + break; + } + if (I) { + d = ((E >> 1) + 2) & -2; + d = (d | 0) < 2 ? 2 : d; + if ((d | 0) > ((2147483647 - E) | 0)) { + c = 24; + break; + } + m = o[A >> 2] | 0; + I = (d + E) | 0; + o[a >> 2] = I; + I = On(m, I << 3) | 0; + o[A >> 2] = I; + if ((I | 0) == 0 ? (o[(Ye() | 0) >> 2] | 0) == 12 : 0) { + c = 24; + break; + } + E = o[i >> 2] | 0; + } + o[i >> 2] = E + 1; + d = ((o[A >> 2] | 0) + (E << 3)) | 0; + if (d) { + m = d; + o[m >> 2] = f; + o[(m + 4) >> 2] = g; + } + o[t >> 2] = C; + E = o[u >> 2] | 0; + g = C; + d = E; + E = ((o[c >> 2] | 0) + (o[(E + (p << 3)) >> 2] << 2)) | 0; + f = 0; + } + } else { + g = ((o[s >> 2] | 0) + (g >> 1)) | 0; + if (!(n[g >> 0] | 0)) { + n[g >> 0] = 2; + sr(e, t); + } + g = o[i >> 2] | 0; + if (!g) { + i = 1; + c = 34; + break; + } + m = (g + -1) | 0; + g = o[A >> 2] | 0; + f = o[(g + (m << 3)) >> 2] | 0; + g = o[(g + (m << 3) + 4) >> 2] | 0; + o[t >> 2] = g; + d = o[u >> 2] | 0; + E = ((o[c >> 2] | 0) + (o[(d + ((g >> 1) << 3)) >> 2] << 2)) | 0; + o[i >> 2] = m; + } + f = (f + 1) | 0; + } + if ((c | 0) == 8) { + if (I) { + c = ((E >> 1) + 2) & -2; + c = (c | 0) < 2 ? 2 : c; + if ((c | 0) > ((2147483647 - E) | 0)) { + m = Qe(1) | 0; + ze(m | 0, 48, 0); + } + I = o[A >> 2] | 0; + m = (c + E) | 0; + o[a >> 2] = m; + m = On(I, m << 3) | 0; + o[A >> 2] = m; + if ((m | 0) == 0 ? (o[(Ye() | 0) >> 2] | 0) == 12 : 0) { + m = Qe(1) | 0; + ze(m | 0, 48, 0); + } + E = o[i >> 2] | 0; + } + a = (E + 1) | 0; + o[i >> 2] = a; + c = ((o[A >> 2] | 0) + (E << 3)) | 0; + if (c) { + a = c; + o[a >> 2] = 0; + o[(a + 4) >> 2] = g; + a = o[i >> 2] | 0; + } + if ((a | 0) > 0) c = 0; + else { + m = 0; + l = r; + return m | 0; + } + do { + u = ((o[s >> 2] | 0) + (o[((o[A >> 2] | 0) + (c << 3) + 4) >> 2] >> 1)) | 0; + if (!(n[u >> 0] | 0)) { + n[u >> 0] = 3; + sr(e, ((o[A >> 2] | 0) + (c << 3) + 4) | 0); + a = o[i >> 2] | 0; + } + c = (c + 1) | 0; + } while ((c | 0) < (a | 0)); + i = 0; + l = r; + return i | 0; + } else if ((c | 0) == 24) ze(Qe(1) | 0, 48, 0); + else if ((c | 0) == 34) { + l = r; + return i | 0; + } + return 0; + } + function Ot(e, t, r) { + e = e | 0; + t = t | 0; + r = r | 0; + var i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0, + C = 0, + E = 0, + I = 0, + m = 0, + y = 0; + a = l; + l = (l + 32) | 0; + A = (a + 16) | 0; + s = (a + 12) | 0; + c = (a + 8) | 0; + i = a; + g = (r + 20) | 0; + u = (r + 16) | 0; + if ((o[g >> 2] | 0) > 0) { + h = 0; + do { + n[((o[r >> 2] | 0) + (o[((o[u >> 2] | 0) + (h << 2)) >> 2] | 0)) >> 0] = 0; + h = (h + 1) | 0; + } while ((h | 0) < (o[g >> 2] | 0)); + } + if (o[u >> 2] | 0) o[g >> 2] = 0; + h = o[t >> 2] | 0; + o[c >> 2] = h; + o[s >> 2] = h; + o[(A + 0) >> 2] = o[(s + 0) >> 2]; + hr(r, A, 0); + u = ((o[r >> 2] | 0) + h) | 0; + if (!(n[u >> 0] | 0)) { + n[u >> 0] = 1; + sr((r + 16) | 0, c); + } + if (!(o[(e + 296) >> 2] | 0)) { + l = a; + return; + } + t = h >> 1; + f = (e + 588) | 0; + n[((o[f >> 2] | 0) + t) >> 0] = 1; + p = o[(e + 284) >> 2] | 0; + g = (e + 292) | 0; + E = o[o[g >> 2] >> 2] | 0; + if ((p | 0) > (E | 0)) { + c = (e + 280) | 0; + u = (e + 396) | 0; + h = (r + 16) | 0; + e = (e + 544) | 0; + do { + p = (p + -1) | 0; + C = o[((o[c >> 2] | 0) + (p << 2)) >> 2] | 0; + d = C >> 1; + if (n[((o[f >> 2] | 0) + d) >> 0] | 0) { + E = o[u >> 2] | 0; + I = o[(E + (d << 3)) >> 2] | 0; + e: do { + if ((I | 0) == -1) { + C = C ^ 1; + o[i >> 2] = C; + o[s >> 2] = C; + o[(A + 0) >> 2] = o[(s + 0) >> 2]; + hr(r, A, 0); + C = ((o[r >> 2] | 0) + C) | 0; + if (!(n[C >> 0] | 0)) { + n[C >> 0] = 1; + sr(h, i); + } + } else { + C = ((o[e >> 2] | 0) + (I << 2)) | 0; + I = o[C >> 2] | 0; + if (I >>> 0 > 63) { + m = 1; + while (1) { + y = o[(C + (m << 2) + 4) >> 2] >> 1; + if ((o[(E + (y << 3) + 4) >> 2] | 0) > 0) { + n[((o[f >> 2] | 0) + y) >> 0] = 1; + I = o[C >> 2] | 0; + } + m = (m + 1) | 0; + if ((m | 0) >= ((I >>> 5) | 0)) break e; + E = o[u >> 2] | 0; + } + } + } + } while (0); + n[((o[f >> 2] | 0) + d) >> 0] = 0; + E = o[o[g >> 2] >> 2] | 0; + } + } while ((p | 0) > (E | 0)); + } + n[((o[f >> 2] | 0) + t) >> 0] = 0; + l = a; + return; + } + function jt(e) { + e = e | 0; + var t = 0, + r = 0, + i = 0, + A = 0, + a = 0, + h = 0, + g = 0.0, + f = 0, + p = 0, + d = 0, + C = 0, + E = 0, + I = 0, + m = 0, + y = 0, + w = 0, + B = 0, + Q = 0, + v = 0; + r = l; + l = (l + 16) | 0; + p = (r + 4) | 0; + m = r; + t = (e + 272) | 0; + w = o[t >> 2] | 0; + g = +u[(e + 496) >> 3] / +(w | 0); + A = (e + 544) | 0; + a = (e + 268) | 0; + y = o[a >> 2] | 0; + o[m >> 2] = A; + o[(p + 0) >> 2] = o[(m + 0) >> 2]; + gr(y, w, p); + p = o[t >> 2] | 0; + if ((p | 0) > 0) { + h = (e + 332) | 0; + f = (e + 396) | 0; + d = 0; + y = 0; + do { + I = o[a >> 2] | 0; + m = o[(I + (d << 2)) >> 2] | 0; + w = o[A >> 2] | 0; + C = (w + (m << 2)) | 0; + E = o[C >> 2] | 0; + do { + if (E >>> 0 > 95) { + B = o[(w + ((m + 1) << 2)) >> 2] | 0; + w = B >> 1; + B = (s[((o[h >> 2] | 0) + w) >> 0] | 0) ^ (B & 1); + v = n[528] | 0; + Q = v & 255; + if ( + (((((B & 255) << 24) >> 24 == (v << 24) >> 24) & ((Q >>> 1) ^ 1)) | + (Q & 2 & B) | + 0) != + 0 + ? ((v = o[((o[f >> 2] | 0) + (w << 3)) >> 2] | 0), + ((v | 0) != -1) & ((v | 0) == (m | 0))) + : 0 + ) { + i = 9; + break; + } + if ( + (d | 0) >= (((p | 0) / 2) | 0 | 0) + ? !(+c[(C + ((E >>> 5) << 2) + 4) >> 2] < g) + : 0 + ) { + i = 9; + break; + } + Kt(e, m); + } else i = 9; + } while (0); + if ((i | 0) == 9) { + i = 0; + o[(I + (y << 2)) >> 2] = m; + y = (y + 1) | 0; + } + d = (d + 1) | 0; + p = o[t >> 2] | 0; + } while ((d | 0) < (p | 0)); + } else { + d = 0; + y = 0; + } + i = (d - y) | 0; + if ((i | 0) > 0) o[t >> 2] = p - i; + if ( + !( + +((o[(e + 556) >> 2] | 0) >>> 0) > + +u[(e + 96) >> 3] * +((o[(e + 548) >> 2] | 0) >>> 0) + ) + ) { + l = r; + return; + } + ji[o[((o[e >> 2] | 0) + 8) >> 2] & 31](e); + l = r; + return; + } + function Yt(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + i = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0, + C = 0, + E = 0, + I = 0, + m = 0, + y = 0, + w = 0, + B = 0; + r = l; + i = (t + 4) | 0; + h = o[i >> 2] | 0; + if ((h | 0) > 0) { + a = (e + 544) | 0; + A = (e + 332) | 0; + c = 0; + u = 0; + do { + m = o[t >> 2] | 0; + p = o[(m + (c << 2)) >> 2] | 0; + h = ((o[a >> 2] | 0) + (p << 2)) | 0; + f = o[h >> 2] | 0; + do { + if (f >>> 0 > 31) { + y = o[A >> 2] | 0; + C = n[528] | 0; + d = C & 255; + w = d & 2; + d = (d >>> 1) ^ 1; + E = f >>> 5; + I = 0; + do { + B = o[(h + (I << 2) + 4) >> 2] | 0; + B = (s[(y + (B >> 1)) >> 0] | 0) ^ (B & 1); + I = (I + 1) | 0; + if (((((B & 255) << 24) >> 24 == (C << 24) >> 24) & d) | (w & B)) { + g = 7; + break; + } + } while ((I | 0) < (E | 0)); + if ((g | 0) == 7) { + g = 0; + Kt(e, p); + break; + } + if (f >>> 0 > 95) { + g = n[536] | 0; + d = f >>> 5; + p = 2; + do { + C = (h + (p << 2) + 4) | 0; + B = o[C >> 2] | 0; + B = (s[((o[A >> 2] | 0) + (B >> 1)) >> 0] | 0) ^ (B & 1); + w = g & 255; + if ( + ((((B & 255) << 24) >> 24 == (g << 24) >> 24) & ((w >>> 1) ^ 1)) | + (w & 2 & B) + ) { + o[C >> 2] = o[(h + ((d + -1) << 2) + 4) >> 2]; + f = o[h >> 2] | 0; + if (f & 8) { + f = f >>> 5; + o[(h + ((f + -1) << 2) + 4) >> 2] = o[(h + (f << 2) + 4) >> 2]; + f = o[h >> 2] | 0; + } + f = (f + -32) | 0; + o[h >> 2] = f; + p = (p + -1) | 0; + } + p = (p + 1) | 0; + d = f >>> 5; + } while ((p | 0) < (d | 0)); + p = o[t >> 2] | 0; + m = p; + p = o[(p + (c << 2)) >> 2] | 0; + g = 16; + } else g = 16; + } else g = 16; + } while (0); + if ((g | 0) == 16) { + g = 0; + o[(m + (u << 2)) >> 2] = p; + u = (u + 1) | 0; + } + c = (c + 1) | 0; + h = o[i >> 2] | 0; + } while ((c | 0) < (h | 0)); + } else { + c = 0; + u = 0; + } + t = (c - u) | 0; + if ((t | 0) <= 0) { + l = r; + return; + } + o[i >> 2] = h - t; + l = r; + return; + } + function Gt(e) { + e = e | 0; + var t = 0, + r = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0; + s = l; + l = (l + 16) | 0; + r = (s + 4) | 0; + A = s; + o[r >> 2] = 0; + t = (r + 4) | 0; + o[t >> 2] = 0; + i = (r + 8) | 0; + o[i >> 2] = 0; + o[A >> 2] = 0; + a = (e + 540) | 0; + g = o[a >> 2] | 0; + if ((g | 0) > 0) { + u = (e + 380) | 0; + c = (e + 332) | 0; + h = 0; + do { + if ( + (n[((o[u >> 2] | 0) + h) >> 0] | 0) != 0 + ? ((p = n[((o[c >> 2] | 0) + h) >> 0] | 0), + (d = n[544] | 0), + (f = d & 255), + ((((f >>> 1) ^ 1) & ((p << 24) >> 24 == (d << 24) >> 24)) | + (p & 2 & f) | + 0) != + 0) + : 0 + ) { + Ar(r, A); + g = o[a >> 2] | 0; + } + h = (h + 1) | 0; + o[A >> 2] = h; + } while ((h | 0) < (g | 0)); + } + fr((e + 460) | 0, r); + e = o[r >> 2] | 0; + if (!e) { + l = s; + return; + } + o[t >> 2] = 0; + _n(e); + o[r >> 2] = 0; + o[i >> 2] = 0; + l = s; + return; + } + function Jt(e) { + e = e | 0; + var t = 0, + r = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0, + C = 0, + E = 0; + t = l; + i = (e + 492) | 0; + if ((n[i >> 0] | 0) != 0 ? (Mt(e) | 0) == -1 : 0) { + i = (e + 284) | 0; + s = (e + 516) | 0; + if ((o[i >> 2] | 0) == (o[s >> 2] | 0)) { + E = 1; + l = t; + return E | 0; + } + A = (e + 520) | 0; + E = A; + C = o[(E + 4) >> 2] | 0; + if (((C | 0) > 0) | (((C | 0) == 0) & ((o[E >> 2] | 0) >>> 0 > 0))) { + E = 1; + l = t; + return E | 0; + } + Yt(e, (e + 268) | 0); + if (n[(e + 536) >> 0] | 0) { + Yt(e, (e + 256) | 0); + c = (e + 564) | 0; + a = (e + 568) | 0; + if ((o[a >> 2] | 0) > 0) { + g = (e + 588) | 0; + h = 0; + do { + n[((o[g >> 2] | 0) + (o[((o[c >> 2] | 0) + (h << 2)) >> 2] | 0)) >> 0] = 1; + h = (h + 1) | 0; + } while ((h | 0) < (o[a >> 2] | 0)); + } + p = o[i >> 2] | 0; + if ((p | 0) > 0) { + h = o[(e + 280) >> 2] | 0; + g = o[(e + 588) >> 2] | 0; + d = 0; + f = 0; + do { + C = o[(h + (d << 2)) >> 2] | 0; + if (!(n[(g + (C >> 1)) >> 0] | 0)) { + o[(h + (f << 2)) >> 2] = C; + p = o[i >> 2] | 0; + f = (f + 1) | 0; + } + d = (d + 1) | 0; + } while ((d | 0) < (p | 0)); + } else { + d = 0; + f = 0; + } + h = (d - f) | 0; + if ((h | 0) > 0) { + p = (p - h) | 0; + o[i >> 2] = p; + } + o[(e + 512) >> 2] = p; + e: do { + if ((o[a >> 2] | 0) > 0) { + f = (e + 588) | 0; + h = 0; + do { + n[ + ((o[f >> 2] | 0) + (o[((o[c >> 2] | 0) + (h << 2)) >> 2] | 0)) >> 0 + ] = 0; + h = (h + 1) | 0; + g = o[a >> 2] | 0; + } while ((h | 0) < (g | 0)); + if ((g | 0) > 0) { + g = (e + 580) | 0; + f = (e + 584) | 0; + h = (e + 576) | 0; + p = 0; + while (1) { + C = o[g >> 2] | 0; + if ((C | 0) == (o[f >> 2] | 0)) { + d = ((C >> 1) + 2) & -2; + d = (d | 0) < 2 ? 2 : d; + if ((d | 0) > ((2147483647 - C) | 0)) { + r = 28; + break; + } + E = o[h >> 2] | 0; + d = (d + C) | 0; + o[f >> 2] = d; + d = On(E, d << 2) | 0; + o[h >> 2] = d; + if ((d | 0) == 0 ? (o[(Ye() | 0) >> 2] | 0) == 12 : 0) { + r = 28; + break; + } + C = o[g >> 2] | 0; + } else d = o[h >> 2] | 0; + E = (d + (C << 2)) | 0; + if (E) { + o[E >> 2] = 0; + C = o[g >> 2] | 0; + } + o[g >> 2] = C + 1; + E = o[c >> 2] | 0; + o[(d + (C << 2)) >> 2] = o[(E + (p << 2)) >> 2]; + p = (p + 1) | 0; + if ((p | 0) >= (o[a >> 2] | 0)) break e; + } + if ((r | 0) == 28) ze(Qe(1) | 0, 48, 0); + } else r = 21; + } else r = 21; + } while (0); + if ((r | 0) == 21) E = o[c >> 2] | 0; + if (E) o[a >> 2] = 0; + } + if ( + +((o[(e + 556) >> 2] | 0) >>> 0) > + +u[(e + 96) >> 3] * +((o[(e + 548) >> 2] | 0) >>> 0) + ) + ji[o[((o[e >> 2] | 0) + 8) >> 2] & 31](e); + Gt(e); + o[s >> 2] = o[i >> 2]; + C = (e + 224) | 0; + E = (e + 232) | 0; + C = + ai(o[E >> 2] | 0, o[(E + 4) >> 2] | 0, o[C >> 2] | 0, o[(C + 4) >> 2] | 0) | 0; + E = A; + o[E >> 2] = C; + o[(E + 4) >> 2] = R; + E = 1; + l = t; + return E | 0; + } + n[i >> 0] = 0; + E = 0; + l = t; + return E | 0; + } + function Ht(e, t, r) { + e = e | 0; + t = t | 0; + r = r | 0; + var i = 0, + A = 0, + a = 0, + h = 0, + f = 0, + p = 0, + d = 0, + C = 0, + E = 0, + I = 0, + m = 0, + y = 0, + w = 0, + B = 0, + Q = 0, + v = 0, + D = 0, + b = 0, + S = 0, + k = 0, + x = 0, + F = 0, + M = 0, + N = 0, + K = 0, + L = 0, + T = 0, + P = 0, + U = 0, + _ = 0, + O = 0, + j = 0, + Y = 0, + G = 0, + J = 0, + H = 0, + z = 0, + W = 0, + V = 0, + X = 0, + Z = 0, + $ = 0, + ee = 0, + te = 0, + re = 0, + ne = 0, + ie = 0, + oe = 0.0, + se = 0, + Ae = 0, + ae = 0, + ce = 0.0, + ue = 0, + le = 0, + he = 0, + ge = 0, + fe = 0, + pe = 0, + de = 0.0, + Ce = 0, + Ee = 0, + Ie = 0.0; + h = l; + l = (l + 64) | 0; + Z = h; + F = (h + 60) | 0; + b = (h + 56) | 0; + i = (h + 44) | 0; + $ = (h + 40) | 0; + o[i >> 2] = 0; + a = (i + 4) | 0; + o[a >> 2] = 0; + A = (i + 8) | 0; + o[A >> 2] = 0; + U = (t + 160) | 0; + P = U; + P = ai(o[P >> 2] | 0, o[(P + 4) >> 2] | 0, 1, 0) | 0; + o[U >> 2] = P; + o[(U + 4) >> 2] = R; + U = (r | 0) < 0; + P = (t + 680) | 0; + T = (t + 664) | 0; + L = (t + 672) | 0; + d = (t + 296) | 0; + w = (t + 272) | 0; + f = (t + 284) | 0; + N = (t + 640) | 0; + x = (t + 308) | 0; + k = (t + 304) | 0; + C = (t + 332) | 0; + M = (t + 292) | 0; + te = (t + 168) | 0; + I = (t + 396) | 0; + y = (t + 280) | 0; + K = (t + 184) | 0; + S = (t + 192) | 0; + m = (t + 48) | 0; + J = (t + 504) | 0; + V = (t + 56) | 0; + ee = (t + 496) | 0; + re = (t + 656) | 0; + _ = (t + 144) | 0; + O = (t + 648) | 0; + j = (t + 128) | 0; + Y = (t + 44) | 0; + G = (t + 200) | 0; + H = (t + 208) | 0; + z = (t + 224) | 0; + W = (t + 216) | 0; + E = (t + 232) | 0; + X = (t + 540) | 0; + p = (t + 292) | 0; + B = (t + 544) | 0; + v = (t + 276) | 0; + Q = (t + 268) | 0; + D = (t + 268) | 0; + ne = 0; + e: while (1) { + ie = U | ((ne | 0) < (r | 0)); + while (1) { + se = Mt(t) | 0; + if ((se | 0) != -1) break; + if (!ie) { + se = 41; + break e; + } + if (n[P >> 0] | 0) { + se = 41; + break e; + } + se = T; + Ae = o[(se + 4) >> 2] | 0; + if ( + (Ae | 0) >= 0 + ? ((Ee = S), + (Ce = o[(Ee + 4) >> 2] | 0), + !( + (Ce >>> 0 < Ae >>> 0) | + ((Ce | 0) == (Ae | 0) + ? (o[Ee >> 2] | 0) >>> 0 < (o[se >> 2] | 0) >>> 0 + : 0) + )) + : 0 + ) { + se = 41; + break e; + } + se = L; + Ae = o[(se + 4) >> 2] | 0; + if ( + (Ae | 0) >= 0 + ? ((Ee = K), + (Ce = o[(Ee + 4) >> 2] | 0), + !( + (Ce >>> 0 < Ae >>> 0) | + ((Ce | 0) == (Ae | 0) + ? (o[Ee >> 2] | 0) >>> 0 < (o[se >> 2] | 0) >>> 0 + : 0) + )) + : 0 + ) { + se = 41; + break e; + } + if ((o[d >> 2] | 0) == 0 ? !(Jt(t) | 0) : 0) { + se = 50; + break e; + } + if (+(((o[w >> 2] | 0) - (o[f >> 2] | 0)) | 0) >= +u[N >> 3]) jt(t); + while (1) { + se = o[d >> 2] | 0; + if ((se | 0) >= (o[x >> 2] | 0)) { + se = 59; + break; + } + ue = o[((o[k >> 2] | 0) + (se << 2)) >> 2] | 0; + Ae = s[((o[C >> 2] | 0) + (ue >> 1)) >> 0] | 0; + Ee = Ae ^ (ue & 1); + ae = Ee & 255; + pe = n[528] | 0; + Ce = pe & 255; + if ( + !( + (((ae << 24) >> 24 == (pe << 24) >> 24) & ((Ce >>> 1) ^ 1)) | + (Ce & 2 & Ee) + ) + ) { + se = 56; + break; + } + o[F >> 2] = o[f >> 2]; + Ar(M, F); + } + if ((se | 0) == 56) { + se = 0; + Ce = n[536] | 0; + Ee = Ce & 255; + if ( + (((Ee >>> 1) ^ 1) & ((ae << 24) >> 24 == (Ce << 24) >> 24)) | + (Ae & 2 & Ee) + ) { + se = 57; + break e; + } + if ((ue | 0) == -2) se = 59; + } + if ((se | 0) == 59) { + Ee = te; + Ee = ai(o[Ee >> 2] | 0, o[(Ee + 4) >> 2] | 0, 1, 0) | 0; + ue = te; + o[ue >> 2] = Ee; + o[(ue + 4) >> 2] = R; + ue = Pt(t) | 0; + if ((ue | 0) == -2) { + se = 60; + break e; + } + } + o[Z >> 2] = o[f >> 2]; + Ar(M, Z); + Ee = ue >> 1; + n[((o[C >> 2] | 0) + Ee) >> 0] = (((ue & 1) ^ 1) & 255) ^ 1; + Ce = o[d >> 2] | 0; + Ee = ((o[I >> 2] | 0) + (Ee << 3)) | 0; + o[Ee >> 2] = -1; + o[(Ee + 4) >> 2] = Ce; + Ee = o[f >> 2] | 0; + o[f >> 2] = Ee + 1; + o[((o[y >> 2] | 0) + (Ee << 2)) >> 2] = ue; + } + Ce = S; + Ce = ai(o[Ce >> 2] | 0, o[(Ce + 4) >> 2] | 0, 1, 0) | 0; + Ee = S; + o[Ee >> 2] = Ce; + o[(Ee + 4) >> 2] = R; + ne = (ne + 1) | 0; + if (!(o[d >> 2] | 0)) { + se = 5; + break; + } + if (o[i >> 2] | 0) o[a >> 2] = 0; + Ut(t, se, i, b); + Tt(t, o[b >> 2] | 0); + if ((o[a >> 2] | 0) == 1) { + Ce = o[o[i >> 2] >> 2] | 0; + Ee = Ce >> 1; + n[((o[C >> 2] | 0) + Ee) >> 0] = (((Ce & 1) ^ 1) & 255) ^ 1; + pe = o[d >> 2] | 0; + Ee = ((o[I >> 2] | 0) + (Ee << 3)) | 0; + o[Ee >> 2] = -1; + o[(Ee + 4) >> 2] = pe; + Ee = o[f >> 2] | 0; + o[f >> 2] = Ee + 1; + o[((o[y >> 2] | 0) + (Ee << 2)) >> 2] = Ce; + } else { + ie = cr(B, i, 1) | 0; + se = o[w >> 2] | 0; + if ((se | 0) == (o[v >> 2] | 0)) { + Ae = ((se >> 1) + 2) & -2; + Ae = (Ae | 0) < 2 ? 2 : Ae; + if ((Ae | 0) > ((2147483647 - se) | 0)) { + se = 14; + break; + } + Ce = o[Q >> 2] | 0; + Ee = (Ae + se) | 0; + o[v >> 2] = Ee; + Ee = On(Ce, Ee << 2) | 0; + o[Q >> 2] = Ee; + if ((Ee | 0) == 0 ? (o[(Ye() | 0) >> 2] | 0) == 12 : 0) { + se = 14; + break; + } + se = o[w >> 2] | 0; + } + o[w >> 2] = se + 1; + se = ((o[Q >> 2] | 0) + (se << 2)) | 0; + if (se) o[se >> 2] = ie; + Nt(t, ie); + ae = o[B >> 2] | 0; + Ee = (ae + (ie << 2)) | 0; + oe = +u[ee >> 3]; + Ee = (Ee + (((o[Ee >> 2] | 0) >>> 5) << 2) + 4) | 0; + Ie = oe + +c[Ee >> 2]; + c[Ee >> 2] = Ie; + if (Ie > 1.0e20) { + Ae = o[w >> 2] | 0; + if ((Ae | 0) > 0) { + se = o[D >> 2] | 0; + ue = 0; + do { + Ee = (ae + (o[(se + (ue << 2)) >> 2] << 2)) | 0; + Ee = (Ee + (((o[Ee >> 2] | 0) >>> 5) << 2) + 4) | 0; + c[Ee >> 2] = +c[Ee >> 2] * 1.0e-20; + ue = (ue + 1) | 0; + } while ((ue | 0) != (Ae | 0)); + } + u[ee >> 3] = oe * 1.0e-20; + } + Ce = o[o[i >> 2] >> 2] | 0; + Ee = Ce >> 1; + n[((o[C >> 2] | 0) + Ee) >> 0] = (((Ce & 1) ^ 1) & 255) ^ 1; + pe = o[d >> 2] | 0; + Ee = ((o[I >> 2] | 0) + (Ee << 3)) | 0; + o[Ee >> 2] = ie; + o[(Ee + 4) >> 2] = pe; + Ee = o[f >> 2] | 0; + o[f >> 2] = Ee + 1; + o[((o[y >> 2] | 0) + (Ee << 2)) >> 2] = Ce; + } + u[J >> 3] = (1.0 / +u[m >> 3]) * +u[J >> 3]; + u[ee >> 3] = (1.0 / +u[V >> 3]) * +u[ee >> 3]; + Ee = ((o[re >> 2] | 0) + -1) | 0; + o[re >> 2] = Ee; + if (Ee) continue; + oe = +u[_ >> 3] * +u[O >> 3]; + u[O >> 3] = oe; + o[re >> 2] = ~~oe; + oe = +u[j >> 3] * +u[N >> 3]; + u[N >> 3] = oe; + if ((o[Y >> 2] | 0) <= 0) continue; + se = o[S >> 2] | 0; + ie = o[G >> 2] | 0; + fe = o[d >> 2] | 0; + if (!fe) Ae = f; + else Ae = o[p >> 2] | 0; + Ae = o[Ae >> 2] | 0; + ge = o[H >> 2] | 0; + he = o[z >> 2] | 0; + le = o[W >> 2] | 0; + ue = E; + ae = o[ue >> 2] | 0; + ue = o[(ue + 4) >> 2] | 0; + ce = +(o[X >> 2] | 0); + de = 1.0 / ce; + if ((fe | 0) < 0) Ie = 0.0; + else { + pe = 0; + Ie = 0.0; + while (1) { + if (!pe) Ce = 0; + else Ce = o[((o[p >> 2] | 0) + ((pe + -1) << 2)) >> 2] | 0; + if ((pe | 0) == (fe | 0)) Ee = f; + else Ee = ((o[p >> 2] | 0) + (pe << 2)) | 0; + Ie = Ie + +q(+de, +(+(pe | 0))) * +(((o[Ee >> 2] | 0) - Ce) | 0); + if ((pe | 0) == (fe | 0)) break; + else pe = (pe + 1) | 0; + } + } + o[Z >> 2] = se; + o[(Z + 4) >> 2] = ie - Ae; + o[(Z + 8) >> 2] = ge; + o[(Z + 12) >> 2] = he; + o[(Z + 16) >> 2] = ~~oe; + o[(Z + 20) >> 2] = le; + Ee = (Z + 24) | 0; + u[g >> 3] = (+(ae >>> 0) + 4294967296.0 * +(ue >>> 0)) / +(le | 0); + o[Ee >> 2] = o[g >> 2]; + o[(Ee + 4) >> 2] = o[(g + 4) >> 2]; + Ee = (Z + 32) | 0; + u[g >> 3] = (Ie / ce) * 100.0; + o[Ee >> 2] = o[g >> 2]; + o[(Ee + 4) >> 2] = o[(g + 4) >> 2]; + _e(1832, Z | 0) | 0; + } + if ((se | 0) == 5) n[e >> 0] = n[536] | 0; + else if ((se | 0) == 14) ze(Qe(1) | 0, 48, 0); + else if ((se | 0) == 41) { + oe = +(o[X >> 2] | 0); + ce = 1.0 / oe; + C = o[d >> 2] | 0; + if ((C | 0) < 0) de = 0.0; + else { + d = 0; + de = 0.0; + while (1) { + if (!d) E = 0; + else E = o[((o[p >> 2] | 0) + ((d + -1) << 2)) >> 2] | 0; + if ((d | 0) == (C | 0)) I = f; + else I = ((o[p >> 2] | 0) + (d << 2)) | 0; + de = de + +q(+ce, +(+(d | 0))) * +(((o[I >> 2] | 0) - E) | 0); + if ((d | 0) == (C | 0)) break; + else d = (d + 1) | 0; + } + } + u[(t + 528) >> 3] = de / oe; + Tt(t, 0); + n[e >> 0] = n[544] | 0; + } else if ((se | 0) == 50) n[e >> 0] = n[536] | 0; + else if ((se | 0) == 57) { + o[$ >> 2] = ue ^ 1; + Ee = (t + 16) | 0; + o[(Z + 0) >> 2] = o[($ + 0) >> 2]; + Ot(t, Z, Ee); + n[e >> 0] = n[536] | 0; + } else if ((se | 0) == 60) n[e >> 0] = n[528] | 0; + e = o[i >> 2] | 0; + if (!e) { + l = h; + return; + } + o[a >> 2] = 0; + _n(e); + o[i >> 2] = 0; + o[A >> 2] = 0; + l = h; + return; + } + function qt(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0, + C = 0, + E = 0, + I = 0, + m = 0, + y = 0.0, + w = 0, + B = 0, + Q = 0, + v = 0.0, + D = 0, + b = 0; + i = l; + l = (l + 16) | 0; + A = i; + r = (t + 4) | 0; + if (o[r >> 2] | 0) o[(t + 8) >> 2] = 0; + s = (t + 36) | 0; + a = (t + 32) | 0; + if ((o[s >> 2] | 0) > 0) { + c = (t + 16) | 0; + h = 0; + do { + n[((o[c >> 2] | 0) + (o[((o[a >> 2] | 0) + (h << 2)) >> 2] | 0)) >> 0] = 0; + h = (h + 1) | 0; + } while ((h | 0) < (o[s >> 2] | 0)); + } + if (o[a >> 2] | 0) o[s >> 2] = 0; + a = (t + 492) | 0; + if (!(n[a >> 0] | 0)) { + n[e >> 0] = n[536] | 0; + l = i; + return; + } + c = (t + 152) | 0; + Q = c; + Q = ai(o[Q >> 2] | 0, o[(Q + 4) >> 2] | 0, 1, 0) | 0; + o[c >> 2] = Q; + o[(c + 4) >> 2] = R; + v = +u[(t + 120) >> 3] * +(o[(t + 208) >> 2] | 0); + c = (t + 640) | 0; + u[c >> 3] = v; + y = +(o[(t + 104) >> 2] | 0); + if (v < y) u[c >> 3] = y; + w = o[(t + 136) >> 2] | 0; + u[(t + 648) >> 3] = +(w | 0); + o[(t + 656) >> 2] = w; + w = n[544] | 0; + c = (t + 44) | 0; + if ((o[c >> 2] | 0) > 0) { + Ue(2288) | 0; + Ue(2368) | 0; + Ue(2448) | 0; + Ue(2528) | 0; + f = n[544] | 0; + } else f = w; + g = (t + 192) | 0; + h = (t + 184) | 0; + Q = f & 255; + e: do { + if ((((Q >>> 1) ^ 1) & ((w << 24) >> 24 == (f << 24) >> 24)) | (w & 2 & Q)) { + d = (t + 80) | 0; + I = (t + 112) | 0; + p = (t + 108) | 0; + f = (t + 680) | 0; + C = (t + 664) | 0; + E = (t + 672) | 0; + m = 0; + while (1) { + y = +u[I >> 3]; + if (!(n[d >> 0] | 0)) y = +q(+y, +(+(m | 0))); + else { + Q = (m + 1) | 0; + if ((m | 0) > 0) { + B = 0; + w = 1; + do { + B = (B + 1) | 0; + w = (w << 1) | 1; + } while ((w | 0) < (Q | 0)); + Q = (w + -1) | 0; + } else { + B = 0; + Q = 0; + } + if ((Q | 0) != (m | 0)) { + w = m; + do { + D = Q >> 1; + B = (B + -1) | 0; + w = (w | 0) % (D | 0) | 0; + Q = (D + -1) | 0; + } while ((Q | 0) != (w | 0)); + } + y = +q(+y, +(+(B | 0))); + } + Ht(A, t, ~~(y * +(o[p >> 2] | 0))); + w = n[A >> 0] | 0; + if (n[f >> 0] | 0) break e; + Q = C; + B = o[(Q + 4) >> 2] | 0; + if ( + (B | 0) >= 0 + ? ((D = g), + (b = o[(D + 4) >> 2] | 0), + !( + (b >>> 0 < B >>> 0) | + ((b | 0) == (B | 0) + ? (o[D >> 2] | 0) >>> 0 < (o[Q >> 2] | 0) >>> 0 + : 0) + )) + : 0 + ) + break e; + Q = E; + B = o[(Q + 4) >> 2] | 0; + if ( + (B | 0) >= 0 + ? ((b = h), + (D = o[(b + 4) >> 2] | 0), + !( + (D >>> 0 < B >>> 0) | + ((D | 0) == (B | 0) + ? (o[b >> 2] | 0) >>> 0 < (o[Q >> 2] | 0) >>> 0 + : 0) + )) + : 0 + ) + break e; + D = n[544] | 0; + b = D & 255; + if (!((((b >>> 1) ^ 1) & ((w << 24) >> 24 == (D << 24) >> 24)) | (w & 2 & b))) + break; + else m = (m + 1) | 0; + } + } + } while (0); + if ((o[c >> 2] | 0) > 0) Ue(2528) | 0; + D = n[528] | 0; + b = D & 255; + A = w & 2; + if (!((((b >>> 1) ^ 1) & ((w << 24) >> 24 == (D << 24) >> 24)) | (A & b))) { + D = n[536] | 0; + b = D & 255; + if ( + ((((b >>> 1) ^ 1) & ((w << 24) >> 24 == (D << 24) >> 24)) | (A & b) | 0) != 0 + ? (o[s >> 2] | 0) == 0 + : 0 + ) + n[a >> 0] = 0; + } else { + s = (t + 540) | 0; + nr(r, o[s >> 2] | 0); + if ((o[s >> 2] | 0) > 0) { + A = (t + 332) | 0; + a = 0; + do { + n[((o[r >> 2] | 0) + a) >> 0] = n[((o[A >> 2] | 0) + a) >> 0] | 0; + a = (a + 1) | 0; + } while ((a | 0) < (o[s >> 2] | 0)); + } + } + Tt(t, 0); + n[e >> 0] = w; + l = i; + return; + } + function zt(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + i = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0, + C = 0, + E = 0, + I = 0, + m = 0, + y = 0, + w = 0; + r = l; + A = (e + 412) | 0; + pr(A); + c = (e + 540) | 0; + if ((o[c >> 2] | 0) > 0) { + a = (e + 544) | 0; + i = 0; + do { + u = i << 1; + g = o[A >> 2] | 0; + h = (g + ((u * 12) | 0) + 4) | 0; + if ((o[h >> 2] | 0) > 0) { + p = (g + ((u * 12) | 0)) | 0; + f = 0; + do { + E = ((o[p >> 2] | 0) + (f << 3)) | 0; + g = o[E >> 2] | 0; + d = o[a >> 2] | 0; + C = (d + (g << 2)) | 0; + if (!(o[C >> 2] & 16)) { + I = dr(t, C) | 0; + o[E >> 2] = I; + o[C >> 2] = o[C >> 2] | 16; + o[(d + ((g + 1) << 2)) >> 2] = I; + } else o[E >> 2] = o[(d + ((g + 1) << 2)) >> 2]; + f = (f + 1) | 0; + } while ((f | 0) < (o[h >> 2] | 0)); + h = o[A >> 2] | 0; + } else h = g; + g = u | 1; + u = (h + ((g * 12) | 0) + 4) | 0; + if ((o[u >> 2] | 0) > 0) { + C = (h + ((g * 12) | 0)) | 0; + d = 0; + do { + h = ((o[C >> 2] | 0) + (d << 3)) | 0; + p = o[h >> 2] | 0; + f = o[a >> 2] | 0; + g = (f + (p << 2)) | 0; + if (!(o[g >> 2] & 16)) { + I = dr(t, g) | 0; + o[h >> 2] = I; + o[g >> 2] = o[g >> 2] | 16; + o[(f + ((p + 1) << 2)) >> 2] = I; + } else o[h >> 2] = o[(f + ((p + 1) << 2)) >> 2]; + d = (d + 1) | 0; + } while ((d | 0) < (o[u >> 2] | 0)); + } + i = (i + 1) | 0; + } while ((i | 0) < (o[c >> 2] | 0)); + } + i = (e + 284) | 0; + if ((o[i >> 2] | 0) > 0) { + u = (e + 280) | 0; + c = (e + 396) | 0; + a = (e + 544) | 0; + A = (e + 332) | 0; + h = 0; + do { + C = o[c >> 2] | 0; + p = (C + ((o[((o[u >> 2] | 0) + (h << 2)) >> 2] >> 1) << 3)) | 0; + d = o[p >> 2] | 0; + do { + if ((d | 0) != -1) { + I = o[a >> 2] | 0; + E = (I + (d << 2)) | 0; + f = ((o[E >> 2] & 16) | 0) == 0; + if (f) { + m = o[(I + ((d + 1) << 2)) >> 2] | 0; + g = m >> 1; + m = (s[((o[A >> 2] | 0) + g) >> 0] | 0) ^ (m & 1); + w = n[528] | 0; + y = w & 255; + if ( + !( + ((((m & 255) << 24) >> 24 == (w << 24) >> 24) & ((y >>> 1) ^ 1)) | + (y & 2 & m) + ) + ) + break; + w = o[(C + (g << 3)) >> 2] | 0; + if (!(((w | 0) != -1) & ((w | 0) == (d | 0)))) break; + if (f) { + w = dr(t, E) | 0; + o[p >> 2] = w; + o[E >> 2] = o[E >> 2] | 16; + o[(I + ((d + 1) << 2)) >> 2] = w; + break; + } + } + o[p >> 2] = o[(I + ((d + 1) << 2)) >> 2]; + } + } while (0); + h = (h + 1) | 0; + } while ((h | 0) < (o[i >> 2] | 0)); + } + i = (e + 272) | 0; + g = o[i >> 2] | 0; + if ((g | 0) > 0) { + a = (e + 268) | 0; + A = (e + 544) | 0; + h = o[a >> 2] | 0; + c = 0; + u = 0; + do { + p = (h + (c << 2)) | 0; + f = o[p >> 2] | 0; + C = o[A >> 2] | 0; + d = (C + (f << 2)) | 0; + E = o[d >> 2] | 0; + if (((E & 3) | 0) != 1) { + if (!(E & 16)) { + g = dr(t, d) | 0; + o[p >> 2] = g; + o[d >> 2] = o[d >> 2] | 16; + o[(C + ((f + 1) << 2)) >> 2] = g; + g = o[a >> 2] | 0; + h = g; + g = o[(g + (c << 2)) >> 2] | 0; + } else { + g = o[(C + ((f + 1) << 2)) >> 2] | 0; + o[p >> 2] = g; + } + o[(h + (u << 2)) >> 2] = g; + g = o[i >> 2] | 0; + u = (u + 1) | 0; + } + c = (c + 1) | 0; + } while ((c | 0) < (g | 0)); + } else { + c = 0; + u = 0; + } + A = (c - u) | 0; + if ((A | 0) > 0) o[i >> 2] = g - A; + i = (e + 260) | 0; + h = o[i >> 2] | 0; + if ((h | 0) > 0) { + A = (e + 256) | 0; + e = (e + 544) | 0; + u = o[A >> 2] | 0; + a = 0; + c = 0; + do { + g = (u + (a << 2)) | 0; + p = o[g >> 2] | 0; + f = o[e >> 2] | 0; + C = (f + (p << 2)) | 0; + d = o[C >> 2] | 0; + if (((d & 3) | 0) != 1) { + if (!(d & 16)) { + h = dr(t, C) | 0; + o[g >> 2] = h; + o[C >> 2] = o[C >> 2] | 16; + o[(f + ((p + 1) << 2)) >> 2] = h; + h = o[A >> 2] | 0; + u = h; + h = o[(h + (a << 2)) >> 2] | 0; + } else { + h = o[(f + ((p + 1) << 2)) >> 2] | 0; + o[g >> 2] = h; + } + o[(u + (c << 2)) >> 2] = h; + h = o[i >> 2] | 0; + c = (c + 1) | 0; + } + a = (a + 1) | 0; + } while ((a | 0) < (h | 0)); + } else { + a = 0; + c = 0; + } + t = (a - c) | 0; + if ((t | 0) <= 0) { + l = r; + return; + } + o[i >> 2] = h - t; + l = r; + return; + } + function Wt(e) { + e = e | 0; + var t = 0, + r = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0; + s = l; + l = (l + 32) | 0; + a = s; + t = (s + 8) | 0; + r = (e + 548) | 0; + i = (e + 556) | 0; + A = ((o[r >> 2] | 0) - (o[i >> 2] | 0)) | 0; + o[(t + 0) >> 2] = 0; + o[(t + 4) >> 2] = 0; + o[(t + 8) >> 2] = 0; + o[(t + 12) >> 2] = 0; + er(t, A); + A = (t + 16) | 0; + n[A >> 0] = 0; + zt(e, t); + if ((o[(e + 44) >> 2] | 0) > 1) { + c = o[(t + 4) >> 2] << 2; + o[a >> 2] = o[r >> 2] << 2; + o[(a + 4) >> 2] = c; + _e(1888, a | 0) | 0; + } + n[(e + 560) >> 0] = n[A >> 0] | 0; + A = (e + 544) | 0; + a = o[A >> 2] | 0; + if (a) _n(a); + o[A >> 2] = o[t >> 2]; + o[r >> 2] = o[(t + 4) >> 2]; + o[(e + 552) >> 2] = o[(t + 8) >> 2]; + o[i >> 2] = o[(t + 12) >> 2]; + l = s; + return; + } + function Vt() { + var e = 0, + t = 0, + r = 0; + e = l; + l = (l + 16) | 0; + t = e; + n[528] = 0; + n[536] = 1; + n[544] = 2; + Ct(552, 608, 624, 2136, 2144); + o[138] = 2168; + u[72] = 0.0; + u[73] = 1.0; + n[592] = 0; + n[593] = 0; + i[297] = i[(t + 0) >> 1] | 0; + i[298] = i[(t + 2) >> 1] | 0; + i[299] = i[(t + 4) >> 1] | 0; + u[75] = 0.95; + Ct(664, 720, 736, 2136, 2144); + o[166] = 2168; + u[86] = 0.0; + u[87] = 1.0; + n[704] = 0; + n[705] = 0; + i[353] = i[(t + 0) >> 1] | 0; + i[354] = i[(t + 2) >> 1] | 0; + i[355] = i[(t + 4) >> 1] | 0; + u[89] = 0.999; + Ct(776, 832, 848, 2136, 2144); + o[194] = 2168; + u[100] = 0.0; + u[101] = 1.0; + n[816] = 1; + n[817] = 1; + i[409] = i[(t + 0) >> 1] | 0; + i[410] = i[(t + 2) >> 1] | 0; + i[411] = i[(t + 4) >> 1] | 0; + u[103] = 0.0; + Ct(936, 992, 1008, 2136, 2144); + o[234] = 2168; + u[120] = 0.0; + u[121] = Q; + n[976] = 0; + n[977] = 0; + i[489] = i[(t + 0) >> 1] | 0; + i[490] = i[(t + 2) >> 1] | 0; + i[491] = i[(t + 4) >> 1] | 0; + u[123] = 91648253.0; + Ct(1048, 1080, 1096, 2136, 2016); + o[262] = 280; + r = 1068 | 0; + o[r >> 2] = 0; + o[(r + 4) >> 2] = 2; + o[269] = 2; + Ct(1160, 1192, 1208, 2136, 2016); + o[290] = 280; + r = 1180 | 0; + o[r >> 2] = 0; + o[(r + 4) >> 2] = 2; + o[297] = 2; + Ct(1272, 1296, 1312, 2136, 1992); + o[318] = 160; + n[1292] = 0; + Ct(1344, 1368, 1376, 2136, 1992); + o[336] = 160; + n[1364] = 1; + Ct(1408, 1440, 1448, 2136, 2016); + o[352] = 280; + r = 1428 | 0; + o[r >> 2] = 1; + o[(r + 4) >> 2] = 2147483647; + o[359] = 100; + Ct(1480, 1536, 1544, 2136, 2144); + o[370] = 2168; + u[188] = 1.0; + u[189] = Q; + n[1520] = 0; + n[1521] = 0; + i[761] = i[(t + 0) >> 1] | 0; + i[762] = i[(t + 2) >> 1] | 0; + i[763] = i[(t + 4) >> 1] | 0; + u[191] = 2.0; + Ct(1584, 1640, 1648, 2136, 2144); + o[396] = 2168; + u[201] = 0.0; + u[202] = Q; + n[1624] = 0; + n[1625] = 0; + i[813] = i[(t + 0) >> 1] | 0; + i[814] = i[(t + 2) >> 1] | 0; + i[815] = i[(t + 4) >> 1] | 0; + u[204] = 0.2; + Ct(1728, 1760, 1776, 2136, 2016); + o[432] = 280; + t = 1748 | 0; + o[t >> 2] = 0; + o[(t + 4) >> 2] = 2147483647; + o[439] = 0; + l = e; + return; + } + function Xt(e) { + e = e | 0; + var t = 0; + t = l; + un(e); + l = t; + return; + } + function Zt(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + h = 0, + g = 0, + f = 0, + p = 0.0, + d = 0.0; + r = l; + l = (l + 16) | 0; + A = r; + s = (r + 8) | 0; + if ((n[t >> 0] | 0) != 45) { + f = 0; + l = r; + return f | 0; + } + h = (t + 1) | 0; + i = (e + 4) | 0; + a = o[i >> 2] | 0; + c = n[a >> 0] | 0; + e: do { + if ((c << 24) >> 24) { + g = 0; + while (1) { + f = g; + g = (g + 1) | 0; + if ((n[h >> 0] | 0) != (c << 24) >> 24) { + e = 0; + break; + } + c = n[(a + g) >> 0] | 0; + h = (t + (f + 2)) | 0; + if (!((c << 24) >> 24)) break e; + } + l = r; + return e | 0; + } + } while (0); + if ((n[h >> 0] | 0) != 61) { + f = 0; + l = r; + return f | 0; + } + a = (h + 1) | 0; + p = +Xn(a, s); + if (!(o[s >> 2] | 0)) { + f = 0; + l = r; + return f | 0; + } + d = +u[(e + 32) >> 3]; + if (p >= d ? ((n[(e + 41) >> 0] | 0) == 0) | (p != d) : 0) { + f = o[E >> 2] | 0; + g = o[i >> 2] | 0; + o[A >> 2] = a; + o[(A + 4) >> 2] = g; + et(f | 0, 2024, A | 0) | 0; + nt(1); + } + d = +u[(e + 24) >> 3]; + if (p <= d ? ((n[(e + 40) >> 0] | 0) == 0) | (p != d) : 0) { + f = o[E >> 2] | 0; + g = o[i >> 2] | 0; + o[A >> 2] = a; + o[(A + 4) >> 2] = g; + et(f | 0, 2080, A | 0) | 0; + nt(1); + } + u[(e + 48) >> 3] = p; + f = 1; + l = r; + return f | 0; + } + function $t(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + i = 0, + s = 0, + A = 0, + a = 0.0, + c = 0, + h = 0.0, + f = 0.0, + p = 0; + r = l; + l = (l + 48) | 0; + i = r; + s = o[E >> 2] | 0; + p = o[(e + 16) >> 2] | 0; + c = (n[(e + 40) >> 0] | 0) != 0 ? 91 : 40; + f = +u[(e + 24) >> 3]; + h = +u[(e + 32) >> 3]; + A = (n[(e + 41) >> 0] | 0) != 0 ? 93 : 41; + a = +u[(e + 48) >> 3]; + o[i >> 2] = o[(e + 4) >> 2]; + o[(i + 4) >> 2] = p; + o[(i + 8) >> 2] = c; + c = (i + 12) | 0; + u[g >> 3] = f; + o[c >> 2] = o[g >> 2]; + o[(c + 4) >> 2] = o[(g + 4) >> 2]; + c = (i + 20) | 0; + u[g >> 3] = h; + o[c >> 2] = o[g >> 2]; + o[(c + 4) >> 2] = o[(g + 4) >> 2]; + o[(i + 28) >> 2] = A; + A = (i + 32) | 0; + u[g >> 3] = a; + o[A >> 2] = o[g >> 2]; + o[(A + 4) >> 2] = o[(g + 4) >> 2]; + et(s | 0, 2232, i | 0) | 0; + if (!t) { + l = r; + return; + } + o[i >> 2] = o[(e + 8) >> 2]; + et(s | 0, 2e3, i | 0) | 0; + qe(10, s | 0) | 0; + l = r; + return; + } + function er(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + n = 0, + i = 0, + s = 0, + A = 0; + r = l; + n = (e + 8) | 0; + i = o[n >> 2] | 0; + if (i >>> 0 < t >>> 0) A = i; + else { + l = r; + return; + } + while (1) { + if (A >>> 0 >= t >>> 0) break; + A = ((((A >>> 3) + 2 + (A >>> 1)) & -2) + A) | 0; + o[n >> 2] = A; + if (A >>> 0 <= i >>> 0) { + s = 4; + break; + } + } + if ((s | 0) == 4) ze(Qe(1) | 0, 48, 0); + n = On(o[e >> 2] | 0, A << 2) | 0; + if ((n | 0) == 0 ? (o[(Ye() | 0) >> 2] | 0) == 12 : 0) ze(Qe(1) | 0, 48, 0); + o[e >> 2] = n; + l = r; + return; + } + function tr(e) { + e = e | 0; + var t = 0, + r = 0, + n = 0, + i = 0, + s = 0, + A = 0, + a = 0; + t = l; + n = (e + 32) | 0; + r = o[n >> 2] | 0; + if (r) { + o[(e + 36) >> 2] = 0; + _n(r); + o[n >> 2] = 0; + o[(e + 40) >> 2] = 0; + } + n = (e + 16) | 0; + r = o[n >> 2] | 0; + if (r) { + o[(e + 20) >> 2] = 0; + _n(r); + o[n >> 2] = 0; + o[(e + 24) >> 2] = 0; + } + n = o[e >> 2] | 0; + if (!n) { + l = t; + return; + } + r = (e + 4) | 0; + s = o[r >> 2] | 0; + if ((s | 0) > 0) { + i = 0; + do { + a = (n + ((i * 12) | 0)) | 0; + A = o[a >> 2] | 0; + if (A) { + o[(n + ((i * 12) | 0) + 4) >> 2] = 0; + _n(A); + o[a >> 2] = 0; + o[(n + ((i * 12) | 0) + 8) >> 2] = 0; + n = o[e >> 2] | 0; + s = o[r >> 2] | 0; + } + i = (i + 1) | 0; + } while ((i | 0) < (s | 0)); + } + o[r >> 2] = 0; + _n(n); + o[e >> 2] = 0; + o[(e + 8) >> 2] = 0; + l = t; + return; + } + function rr(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + n = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0; + i = l; + l = (l + 16) | 0; + n = (i + 4) | 0; + r = i; + u = o[t >> 2] | 0; + A = (u + 1) | 0; + s = (e + 4) | 0; + if ((o[s >> 2] | 0) < (A | 0)) { + c = (e + 8) | 0; + a = o[c >> 2] | 0; + if ((a | 0) < (A | 0)) { + h = (u + 2 - a) & -2; + u = ((a >> 1) + 2) & -2; + u = (h | 0) > (u | 0) ? h : u; + if ((u | 0) > ((2147483647 - a) | 0)) { + h = Qe(1) | 0; + ze(h | 0, 48, 0); + } + g = o[e >> 2] | 0; + h = (u + a) | 0; + o[c >> 2] = h; + h = On(g, (h * 12) | 0) | 0; + o[e >> 2] = h; + if ((h | 0) == 0 ? (o[(Ye() | 0) >> 2] | 0) == 12 : 0) { + g = Qe(1) | 0; + ze(g | 0, 48, 0); + } + } + c = o[s >> 2] | 0; + if ((c | 0) < (A | 0)) { + a = o[e >> 2] | 0; + do { + u = (a + ((c * 12) | 0)) | 0; + if (u) { + o[u >> 2] = 0; + o[(a + ((c * 12) | 0) + 4) >> 2] = 0; + o[(a + ((c * 12) | 0) + 8) >> 2] = 0; + } + c = (c + 1) | 0; + } while ((c | 0) != (A | 0)); + } + o[s >> 2] = A; + u = o[t >> 2] | 0; + } + s = o[e >> 2] | 0; + if (!(o[(s + ((u * 12) | 0)) >> 2] | 0)) { + h = u; + g = (e + 16) | 0; + o[r >> 2] = h; + o[(n + 0) >> 2] = o[(r + 0) >> 2]; + hr(g, n, 0); + l = i; + return; + } + o[(s + ((u * 12) | 0) + 4) >> 2] = 0; + h = o[t >> 2] | 0; + g = (e + 16) | 0; + o[r >> 2] = h; + o[(n + 0) >> 2] = o[(r + 0) >> 2]; + hr(g, n, 0); + l = i; + return; + } + function nr(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0; + i = l; + r = (e + 4) | 0; + if ((o[r >> 2] | 0) >= (t | 0)) { + l = i; + return; + } + A = (e + 8) | 0; + s = o[A >> 2] | 0; + if ((s | 0) < (t | 0)) { + c = (t + 1 - s) & -2; + a = ((s >> 1) + 2) & -2; + a = (c | 0) > (a | 0) ? c : a; + if ((a | 0) > ((2147483647 - s) | 0)) { + c = Qe(1) | 0; + ze(c | 0, 48, 0); + } + u = o[e >> 2] | 0; + c = (a + s) | 0; + o[A >> 2] = c; + c = On(u, c) | 0; + o[e >> 2] = c; + if ((c | 0) == 0 ? (o[(Ye() | 0) >> 2] | 0) == 12 : 0) { + u = Qe(1) | 0; + ze(u | 0, 48, 0); + } + } + s = o[r >> 2] | 0; + if ((s | 0) < (t | 0)) { + e = o[e >> 2] | 0; + do { + A = (e + s) | 0; + if (A) n[A >> 0] = 0; + s = (s + 1) | 0; + } while ((s | 0) != (t | 0)); + } + o[r >> 2] = t; + l = i; + return; + } + function ir(e, t, r) { + e = e | 0; + t = t | 0; + r = r | 0; + var i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0; + A = l; + s = (t + 1) | 0; + i = (e + 4) | 0; + if ((o[i >> 2] | 0) >= (s | 0)) { + u = o[e >> 2] | 0; + u = (u + t) | 0; + n[u >> 0] = r; + l = A; + return; + } + c = (e + 8) | 0; + a = o[c >> 2] | 0; + if ((a | 0) < (s | 0)) { + h = (t + 2 - a) & -2; + u = ((a >> 1) + 2) & -2; + u = (h | 0) > (u | 0) ? h : u; + if ((u | 0) > ((2147483647 - a) | 0)) { + h = Qe(1) | 0; + ze(h | 0, 48, 0); + } + g = o[e >> 2] | 0; + h = (u + a) | 0; + o[c >> 2] = h; + h = On(g, h) | 0; + o[e >> 2] = h; + if ((h | 0) == 0 ? (o[(Ye() | 0) >> 2] | 0) == 12 : 0) { + g = Qe(1) | 0; + ze(g | 0, 48, 0); + } + } + a = o[i >> 2] | 0; + if ((a | 0) < (s | 0)) + do { + c = ((o[e >> 2] | 0) + a) | 0; + if (c) n[c >> 0] = 0; + a = (a + 1) | 0; + } while ((a | 0) != (s | 0)); + o[i >> 2] = s; + g = o[e >> 2] | 0; + g = (g + t) | 0; + n[g >> 0] = r; + l = A; + return; + } + function or(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + n = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + h = 0, + g = 0, + f = 0; + r = l; + l = (l + 16) | 0; + s = r; + o[s >> 2] = t; + A = (e + 12) | 0; + i = (t + 1) | 0; + n = (e + 16) | 0; + if ((o[n >> 2] | 0) < (i | 0)) { + c = (e + 20) | 0; + a = o[c >> 2] | 0; + if ((a | 0) < (i | 0)) { + g = (t + 2 - a) & -2; + h = ((a >> 1) + 2) & -2; + h = (g | 0) > (h | 0) ? g : h; + if ((h | 0) > ((2147483647 - a) | 0)) { + g = Qe(1) | 0; + ze(g | 0, 48, 0); + } + f = o[A >> 2] | 0; + g = (h + a) | 0; + o[c >> 2] = g; + g = On(f, g << 2) | 0; + o[A >> 2] = g; + if ((g | 0) == 0 ? (o[(Ye() | 0) >> 2] | 0) == 12 : 0) { + f = Qe(1) | 0; + ze(f | 0, 48, 0); + } + } + a = o[n >> 2] | 0; + if ((i | 0) > (a | 0)) + oi(((o[A >> 2] | 0) + (a << 2)) | 0, -1, ((i - a) << 2) | 0) | 0; + o[n >> 2] = i; + } + o[((o[A >> 2] | 0) + (t << 2)) >> 2] = o[(e + 4) >> 2]; + Ar(e, s); + n = o[A >> 2] | 0; + s = o[(n + (t << 2)) >> 2] | 0; + t = o[e >> 2] | 0; + i = o[(t + (s << 2)) >> 2] | 0; + if (!s) { + g = 0; + f = (t + (g << 2)) | 0; + o[f >> 2] = i; + f = (n + (i << 2)) | 0; + o[f >> 2] = g; + l = r; + return; + } + e = (e + 28) | 0; + while (1) { + A = s; + s = (s + -1) >> 1; + a = (t + (s << 2)) | 0; + c = o[a >> 2] | 0; + f = o[o[e >> 2] >> 2] | 0; + if (!(+u[(f + (i << 3)) >> 3] > +u[(f + (c << 3)) >> 3])) { + e = 14; + break; + } + o[(t + (A << 2)) >> 2] = c; + o[(n + (o[a >> 2] << 2)) >> 2] = A; + if (!s) { + A = 0; + e = 14; + break; + } + } + if ((e | 0) == 14) { + f = (t + (A << 2)) | 0; + o[f >> 2] = i; + f = (n + (i << 2)) | 0; + o[f >> 2] = A; + l = r; + return; + } + } + function sr(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + n = 0, + i = 0, + s = 0, + A = 0, + a = 0; + r = l; + n = (e + 4) | 0; + i = o[n >> 2] | 0; + s = (e + 8) | 0; + A = o[s >> 2] | 0; + if (((i | 0) == (A | 0)) & ((A | 0) < ((i + 1) | 0))) { + A = ((i >> 1) + 2) & -2; + A = (A | 0) < 2 ? 2 : A; + if ((A | 0) > ((2147483647 - i) | 0)) { + A = Qe(1) | 0; + ze(A | 0, 48, 0); + } + a = o[e >> 2] | 0; + i = (A + i) | 0; + o[s >> 2] = i; + i = On(a, i << 2) | 0; + o[e >> 2] = i; + if ((i | 0) == 0 ? (o[(Ye() | 0) >> 2] | 0) == 12 : 0) { + a = Qe(1) | 0; + ze(a | 0, 48, 0); + } + } else i = o[e >> 2] | 0; + a = o[n >> 2] | 0; + o[n >> 2] = a + 1; + n = (i + (a << 2)) | 0; + if (!n) { + l = r; + return; + } + o[n >> 2] = o[t >> 2]; + l = r; + return; + } + function Ar(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + n = 0, + i = 0, + s = 0, + A = 0, + a = 0; + r = l; + n = (e + 4) | 0; + i = o[n >> 2] | 0; + s = (e + 8) | 0; + A = o[s >> 2] | 0; + if (((i | 0) == (A | 0)) & ((A | 0) < ((i + 1) | 0))) { + A = ((i >> 1) + 2) & -2; + A = (A | 0) < 2 ? 2 : A; + if ((A | 0) > ((2147483647 - i) | 0)) { + A = Qe(1) | 0; + ze(A | 0, 48, 0); + } + a = o[e >> 2] | 0; + i = (A + i) | 0; + o[s >> 2] = i; + i = On(a, i << 2) | 0; + o[e >> 2] = i; + if ((i | 0) == 0 ? (o[(Ye() | 0) >> 2] | 0) == 12 : 0) { + a = Qe(1) | 0; + ze(a | 0, 48, 0); + } + } else i = o[e >> 2] | 0; + a = o[n >> 2] | 0; + o[n >> 2] = a + 1; + n = (i + (a << 2)) | 0; + if (!n) { + l = r; + return; + } + o[n >> 2] = o[t >> 2]; + l = r; + return; + } + function ar(e, t, r) { + e = e | 0; + t = t | 0; + r = r | 0; + var i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0, + p = 0; + r = l; + l = (l + 16) | 0; + i = (r + 2) | 0; + A = (r + 1) | 0; + s = r; + if ((t | 0) < 16) { + s = (t + -1) | 0; + if ((s | 0) > 0) A = 0; + else { + l = r; + return; + } + do { + i = A; + A = (A + 1) | 0; + if ((A | 0) < (t | 0)) { + c = i; + a = A; + do { + c = (o[(e + (a << 2)) >> 2] | 0) < (o[(e + (c << 2)) >> 2] | 0) ? a : c; + a = (a + 1) | 0; + } while ((a | 0) != (t | 0)); + } else c = i; + g = (e + (i << 2)) | 0; + f = o[g >> 2] | 0; + p = (e + (c << 2)) | 0; + o[g >> 2] = o[p >> 2]; + o[p >> 2] = f; + } while ((A | 0) != (s | 0)); + l = r; + return; + } + a = o[(e + ((((t | 0) / 2) | 0) << 2)) >> 2] | 0; + h = -1; + g = t; + while (1) { + do { + h = (h + 1) | 0; + u = (e + (h << 2)) | 0; + c = o[u >> 2] | 0; + } while ((c | 0) < (a | 0)); + do { + g = (g + -1) | 0; + f = (e + (g << 2)) | 0; + p = o[f >> 2] | 0; + } while ((a | 0) < (p | 0)); + if ((h | 0) >= (g | 0)) break; + o[u >> 2] = p; + o[f >> 2] = c; + } + n[(i + 0) >> 0] = n[(A + 0) >> 0] | 0; + ar(e, h, i); + p = (t - h) | 0; + n[(i + 0) >> 0] = n[(s + 0) >> 0] | 0; + ar(u, p, i); + l = r; + return; + } + function cr(e, t, r) { + e = e | 0; + t = t | 0; + r = r | 0; + var n = 0, + i = 0, + A = 0, + a = 0, + u = 0, + h = 0; + n = l; + a = r & 1; + A = s[(e + 16) >> 0] | 0 | a; + i = (t + 4) | 0; + u = ((((A + (o[i >> 2] | 0)) << 2) + 4) | 0) >>> 2; + h = (e + 4) | 0; + er(e, (u + (o[h >> 2] | 0)) | 0); + r = o[h >> 2] | 0; + u = (u + r) | 0; + o[h >> 2] = u; + if (u >>> 0 < r >>> 0) ze(Qe(1) | 0, 48, 0); + e = ((o[e >> 2] | 0) + (r << 2)) | 0; + if (!e) { + l = n; + return r | 0; + } + A = (A << 3) | (a << 2); + o[e >> 2] = (o[e >> 2] & -32) | A; + A = (o[i >> 2] << 5) | A; + o[e >> 2] = A; + if ((o[i >> 2] | 0) > 0) { + A = o[t >> 2] | 0; + t = 0; + do { + o[(e + (t << 2) + 4) >> 2] = o[(A + (t << 2)) >> 2]; + t = (t + 1) | 0; + } while ((t | 0) < (o[i >> 2] | 0)); + A = o[e >> 2] | 0; + } + if (!(A & 8)) { + l = n; + return r | 0; + } + i = A >>> 5; + if (A & 4) { + c[(e + (i << 2) + 4) >> 2] = 0.0; + l = n; + return r | 0; + } + if (!i) { + i = 0; + A = 0; + } else { + A = 0; + t = 0; + do { + A = (1 << (((o[(e + (t << 2) + 4) >> 2] | 0) >>> 1) & 31)) | A; + t = (t + 1) | 0; + } while ((t | 0) < (i | 0)); + } + o[(e + (i << 2) + 4) >> 2] = A; + l = n; + return r | 0; + } + function ur(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + n = 0, + i = 0, + s = 0, + A = 0, + a = 0; + r = l; + n = (e + 4) | 0; + i = o[n >> 2] | 0; + s = (e + 8) | 0; + A = o[s >> 2] | 0; + if (((i | 0) == (A | 0)) & ((A | 0) < ((i + 1) | 0))) { + A = ((i >> 1) + 2) & -2; + A = (A | 0) < 2 ? 2 : A; + if ((A | 0) > ((2147483647 - i) | 0)) { + A = Qe(1) | 0; + ze(A | 0, 48, 0); + } + a = o[e >> 2] | 0; + i = (A + i) | 0; + o[s >> 2] = i; + i = On(a, i << 3) | 0; + o[e >> 2] = i; + if ((i | 0) == 0 ? (o[(Ye() | 0) >> 2] | 0) == 12 : 0) { + a = Qe(1) | 0; + ze(a | 0, 48, 0); + } + } else i = o[e >> 2] | 0; + a = o[n >> 2] | 0; + o[n >> 2] = a + 1; + n = (i + (a << 3)) | 0; + if (!n) { + l = r; + return; + } + s = t; + A = o[(s + 4) >> 2] | 0; + a = n; + o[a >> 2] = o[s >> 2]; + o[(a + 4) >> 2] = A; + l = r; + return; + } + function lr(e) { + e = e | 0; + var t = 0, + r = 0, + n = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0.0, + C = 0.0, + E = 0; + t = l; + r = o[e >> 2] | 0; + i = o[r >> 2] | 0; + a = (e + 4) | 0; + f = o[(r + (((o[a >> 2] | 0) + -1) << 2)) >> 2] | 0; + o[r >> 2] = f; + n = o[(e + 12) >> 2] | 0; + o[(n + (f << 2)) >> 2] = 0; + o[(n + (i << 2)) >> 2] = -1; + f = ((o[a >> 2] | 0) + -1) | 0; + o[a >> 2] = f; + if ((f | 0) <= 1) { + l = t; + return i | 0; + } + s = o[r >> 2] | 0; + c = (e + 28) | 0; + e = 0; + h = 1; + while (1) { + g = ((e << 1) + 2) | 0; + if ((g | 0) < (f | 0)) { + p = o[(r + (g << 2)) >> 2] | 0; + E = o[(r + (h << 2)) >> 2] | 0; + f = o[o[c >> 2] >> 2] | 0; + d = +u[(f + (p << 3)) >> 3]; + C = +u[(f + (E << 3)) >> 3]; + if (!(d > C)) { + p = E; + d = C; + A = 6; + } + } else { + f = o[o[c >> 2] >> 2] | 0; + A = o[(r + (h << 2)) >> 2] | 0; + p = A; + d = +u[(f + (A << 3)) >> 3]; + A = 6; + } + if ((A | 0) == 6) { + A = 0; + g = h; + } + if (!(d > +u[(f + (s << 3)) >> 3])) break; + o[(r + (e << 2)) >> 2] = p; + o[(n + (p << 2)) >> 2] = e; + h = (g << 1) | 1; + f = o[a >> 2] | 0; + if ((h | 0) >= (f | 0)) { + e = g; + break; + } else e = g; + } + o[(r + (e << 2)) >> 2] = s; + o[(n + (s << 2)) >> 2] = e; + l = t; + return i | 0; + } + function hr(e, t, r) { + e = e | 0; + t = t | 0; + r = r | 0; + var i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0; + i = l; + c = o[t >> 2] | 0; + t = (c + 1) | 0; + s = (e + 4) | 0; + if ((o[s >> 2] | 0) >= (t | 0)) { + l = i; + return; + } + a = (e + 8) | 0; + A = o[a >> 2] | 0; + if ((A | 0) < (t | 0)) { + u = (c + 2 - A) & -2; + c = ((A >> 1) + 2) & -2; + c = (u | 0) > (c | 0) ? u : c; + if ((c | 0) > ((2147483647 - A) | 0)) { + u = Qe(1) | 0; + ze(u | 0, 48, 0); + } + h = o[e >> 2] | 0; + u = (c + A) | 0; + o[a >> 2] = u; + u = On(h, u) | 0; + o[e >> 2] = u; + if ((u | 0) == 0 ? (o[(Ye() | 0) >> 2] | 0) == 12 : 0) { + h = Qe(1) | 0; + ze(h | 0, 48, 0); + } + } + A = o[s >> 2] | 0; + if ((A | 0) < (t | 0)) + do { + n[((o[e >> 2] | 0) + A) >> 0] = r; + A = (A + 1) | 0; + } while ((A | 0) != (t | 0)); + o[s >> 2] = t; + l = i; + return; + } + function gr(e, t, r) { + e = e | 0; + t = t | 0; + r = r | 0; + var n = 0, + i = 0, + s = 0, + A = 0, + a = 0, + u = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0, + C = 0, + E = 0, + I = 0, + m = 0, + y = 0; + n = l; + l = (l + 16) | 0; + s = (n + 8) | 0; + i = (n + 4) | 0; + A = n; + if ((t | 0) < 16) { + i = (t + -1) | 0; + if ((i | 0) <= 0) { + l = n; + return; + } + s = o[r >> 2] | 0; + r = 0; + do { + A = r; + r = (r + 1) | 0; + if ((r | 0) < (t | 0)) { + a = o[s >> 2] | 0; + h = A; + u = r; + do { + g = (a + (o[(e + (u << 2)) >> 2] << 2)) | 0; + m = o[g >> 2] | 0; + d = m >>> 5; + if (m >>> 0 > 95) { + f = (a + (o[(e + (h << 2)) >> 2] << 2)) | 0; + p = (o[f >> 2] | 0) >>> 5; + if ((p | 0) == 2) h = u; + else + h = +c[(g + (d << 2) + 4) >> 2] < +c[(f + (p << 2) + 4) >> 2] ? u : h; + } + u = (u + 1) | 0; + } while ((u | 0) != (t | 0)); + } else h = A; + E = (e + (A << 2)) | 0; + I = o[E >> 2] | 0; + m = (e + (h << 2)) | 0; + o[E >> 2] = o[m >> 2]; + o[m >> 2] = I; + } while ((r | 0) != (i | 0)); + l = n; + return; + } + a = o[(e + ((((t | 0) / 2) | 0) << 2)) >> 2] | 0; + d = -1; + f = t; + while (1) { + I = (d + 1) | 0; + p = (e + (I << 2)) | 0; + m = o[p >> 2] | 0; + u = o[r >> 2] | 0; + h = o[u >> 2] | 0; + E = (h + (m << 2)) | 0; + C = o[E >> 2] | 0; + d = (h + (a << 2)) | 0; + g = o[d >> 2] | 0; + e: do { + if (C >>> 0 > 95) + while (1) { + y = g >>> 5; + if ( + (y | 0) != 2 + ? !(+c[(E + ((C >>> 5) << 2) + 4) >> 2] < +c[(d + (y << 2) + 4) >> 2]) + : 0 + ) { + d = I; + break e; + } + I = (I + 1) | 0; + p = (e + (I << 2)) | 0; + m = o[p >> 2] | 0; + E = (h + (m << 2)) | 0; + C = o[E >> 2] | 0; + if (C >>> 0 <= 95) { + d = I; + break; + } + } + else d = I; + } while (0); + f = (f + -1) | 0; + E = (e + (f << 2)) | 0; + C = (h + (a << 2)) | 0; + e: do { + if (g >>> 0 > 95) + while (1) { + I = (h + (o[E >> 2] << 2)) | 0; + y = (o[I >> 2] | 0) >>> 5; + if ( + (y | 0) != 2 + ? !(+c[(C + ((g >>> 5) << 2) + 4) >> 2] < +c[(I + (y << 2) + 4) >> 2]) + : 0 + ) + break e; + y = (f + -1) | 0; + E = (e + (y << 2)) | 0; + f = y; + } + } while (0); + if ((d | 0) >= (f | 0)) break; + o[p >> 2] = o[E >> 2]; + o[E >> 2] = m; + } + o[i >> 2] = u; + o[(s + 0) >> 2] = o[(i + 0) >> 2]; + gr(e, d, s); + y = (t - d) | 0; + o[A >> 2] = u; + o[(s + 0) >> 2] = o[(A + 0) >> 2]; + gr(p, y, s); + l = n; + return; + } + function fr(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + n = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0.0, + C = 0.0, + E = 0; + n = l; + i = (e + 4) | 0; + A = o[i >> 2] | 0; + s = o[e >> 2] | 0; + if ((A | 0) > 0) { + c = o[(e + 12) >> 2] | 0; + a = 0; + do { + o[(c + (o[(s + (a << 2)) >> 2] << 2)) >> 2] = -1; + a = (a + 1) | 0; + A = o[i >> 2] | 0; + } while ((a | 0) < (A | 0)); + } + if (s) { + o[i >> 2] = 0; + A = 0; + } + s = (t + 4) | 0; + if ((o[s >> 2] | 0) > 0) { + a = (e + 12) | 0; + A = 0; + do { + E = ((o[t >> 2] | 0) + (A << 2)) | 0; + o[((o[a >> 2] | 0) + (o[E >> 2] << 2)) >> 2] = A; + Ar(e, E); + A = (A + 1) | 0; + } while ((A | 0) < (o[s >> 2] | 0)); + A = o[i >> 2] | 0; + } + if ((A | 0) <= 1) { + l = n; + return; + } + s = o[e >> 2] | 0; + t = (e + 28) | 0; + e = (e + 12) | 0; + f = A; + a = ((A | 0) / 2) | 0; + while (1) { + a = (a + -1) | 0; + A = o[(s + (a << 2)) >> 2] | 0; + h = (a << 1) | 1; + e: do { + if ((h | 0) < (f | 0)) { + c = a; + while (1) { + g = ((c << 1) + 2) | 0; + if ((g | 0) < (f | 0)) { + p = o[(s + (g << 2)) >> 2] | 0; + E = o[(s + (h << 2)) >> 2] | 0; + f = o[o[t >> 2] >> 2] | 0; + d = +u[(f + (p << 3)) >> 3]; + C = +u[(f + (E << 3)) >> 3]; + if (!(d > C)) { + p = E; + d = C; + r = 16; + } + } else { + f = o[o[t >> 2] >> 2] | 0; + r = o[(s + (h << 2)) >> 2] | 0; + p = r; + d = +u[(f + (r << 3)) >> 3]; + r = 16; + } + if ((r | 0) == 16) { + r = 0; + g = h; + } + if (!(d > +u[(f + (A << 3)) >> 3])) break e; + o[(s + (c << 2)) >> 2] = p; + o[((o[e >> 2] | 0) + (p << 2)) >> 2] = c; + h = (g << 1) | 1; + f = o[i >> 2] | 0; + if ((h | 0) >= (f | 0)) { + c = g; + break; + } else c = g; + } + } else c = a; + } while (0); + o[(s + (c << 2)) >> 2] = A; + o[((o[e >> 2] | 0) + (A << 2)) >> 2] = c; + if ((a | 0) <= 0) break; + f = o[i >> 2] | 0; + } + l = n; + return; + } + function pr(e) { + e = e | 0; + var t = 0, + r = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0, + C = 0, + E = 0; + r = l; + t = (e + 36) | 0; + u = o[t >> 2] | 0; + i = (e + 32) | 0; + g = o[i >> 2] | 0; + if ((u | 0) > 0) { + A = (e + 16) | 0; + s = (e + 44) | 0; + a = 0; + do { + c = (g + (a << 2)) | 0; + h = o[c >> 2] | 0; + if (n[((o[A >> 2] | 0) + h) >> 0] | 0) { + g = o[e >> 2] | 0; + u = (g + ((h * 12) | 0) + 4) | 0; + p = o[u >> 2] | 0; + if ((p | 0) > 0) { + h = (g + ((h * 12) | 0)) | 0; + g = 0; + f = 0; + do { + d = o[h >> 2] | 0; + C = (d + (g << 3)) | 0; + if ( + ((o[((o[o[s >> 2] >> 2] | 0) + (o[C >> 2] << 2)) >> 2] & 3) | 0) != + 1 + ) { + E = C; + C = o[(E + 4) >> 2] | 0; + p = (d + (f << 3)) | 0; + o[p >> 2] = o[E >> 2]; + o[(p + 4) >> 2] = C; + p = o[u >> 2] | 0; + f = (f + 1) | 0; + } + g = (g + 1) | 0; + } while ((g | 0) < (p | 0)); + } else { + g = 0; + f = 0; + } + h = (g - f) | 0; + if ((h | 0) > 0) o[u >> 2] = p - h; + n[((o[A >> 2] | 0) + (o[c >> 2] | 0)) >> 0] = 0; + u = o[t >> 2] | 0; + g = o[i >> 2] | 0; + } + a = (a + 1) | 0; + } while ((a | 0) < (u | 0)); + } + if (!g) { + l = r; + return; + } + o[t >> 2] = 0; + l = r; + return; + } + function dr(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + n = 0, + i = 0, + A = 0, + a = 0; + n = l; + A = o[t >> 2] | 0; + i = ((A >>> 2) & 1) | (s[(e + 16) >> 0] | 0); + A = ((((i + (A >>> 5)) << 2) + 4) | 0) >>> 2; + a = (e + 4) | 0; + er(e, (A + (o[a >> 2] | 0)) | 0); + r = o[a >> 2] | 0; + A = (A + r) | 0; + o[a >> 2] = A; + if (A >>> 0 < r >>> 0) ze(Qe(1) | 0, 48, 0); + e = ((o[e >> 2] | 0) + (r << 2)) | 0; + if (!e) { + l = n; + return r | 0; + } + i = (o[t >> 2] & -9) | (i << 3); + o[e >> 2] = i; + if ((o[t >> 2] | 0) >>> 0 > 31) { + i = 0; + do { + o[(e + (i << 2) + 4) >> 2] = o[(t + (i << 2) + 4) >> 2]; + i = (i + 1) | 0; + } while ((i | 0) < (((o[t >> 2] | 0) >>> 5) | 0)); + i = o[e >> 2] | 0; + } + if (!(i & 8)) { + l = n; + return r | 0; + } + A = i >>> 5; + t = (t + (A << 2) + 4) | 0; + if (!(i & 4)) { + o[(e + (A << 2) + 4) >> 2] = o[t >> 2]; + l = n; + return r | 0; + } else { + c[(e + (A << 2) + 4) >> 2] = +c[t >> 2]; + l = n; + return r | 0; + } + return 0; + } + function Cr(e) { + e = e | 0; + var t = 0, + r = 0, + i = 0, + s = 0, + A = 0, + a = 0; + t = l; + l = (l + 16) | 0; + s = t; + Dt(e); + o[e >> 2] = 3424; + o[(e + 684) >> 2] = o[719]; + o[(e + 688) >> 2] = o[747]; + o[(e + 692) >> 2] = o[785]; + u[(e + 696) >> 3] = +u[411]; + n[(e + 704) >> 0] = n[2652] | 0; + n[(e + 705) >> 0] = n[2724] | 0; + n[(e + 706) >> 0] = n[2804] | 0; + n[(e + 707) >> 0] = 1; + o[(e + 708) >> 2] = 0; + o[(e + 712) >> 2] = 0; + o[(e + 716) >> 2] = 0; + o[(e + 720) >> 2] = 1; + n[(e + 724) >> 0] = 1; + r = (e + 732) | 0; + a = (e + 544) | 0; + o[(e + 760) >> 2] = 0; + o[(e + 764) >> 2] = 0; + o[(e + 768) >> 2] = 0; + o[(e + 776) >> 2] = 0; + o[(e + 780) >> 2] = 0; + o[(e + 784) >> 2] = 0; + o[(e + 792) >> 2] = 0; + o[(e + 796) >> 2] = 0; + o[(e + 800) >> 2] = 0; + A = (e + 804) | 0; + o[(r + 0) >> 2] = 0; + o[(r + 4) >> 2] = 0; + o[(r + 8) >> 2] = 0; + o[(r + 12) >> 2] = 0; + o[(r + 16) >> 2] = 0; + o[(r + 20) >> 2] = 0; + o[A >> 2] = a; + A = (e + 808) | 0; + o[A >> 2] = 0; + o[(e + 812) >> 2] = 0; + o[(e + 816) >> 2] = 0; + r = (e + 824) | 0; + o[(r + 0) >> 2] = 0; + o[(r + 4) >> 2] = 0; + o[(r + 8) >> 2] = 0; + o[(r + 12) >> 2] = 0; + o[(r + 16) >> 2] = 0; + o[(r + 20) >> 2] = 0; + o[(e + 852) >> 2] = A; + Lr((e + 856) | 0, 1); + A = (e + 868) | 0; + r = (e + 892) | 0; + o[(e + 920) >> 2] = 0; + o[(e + 924) >> 2] = 0; + o[(A + 0) >> 2] = 0; + o[(A + 4) >> 2] = 0; + o[(A + 8) >> 2] = 0; + o[(A + 12) >> 2] = 0; + o[(A + 16) >> 2] = 0; + o[(r + 0) >> 2] = 0; + o[(r + 4) >> 2] = 0; + o[(r + 8) >> 2] = 0; + o[(r + 12) >> 2] = 0; + o[(r + 16) >> 2] = 0; + o[(r + 20) >> 2] = 0; + r = (s + 4) | 0; + o[r >> 2] = 0; + A = (s + 8) | 0; + o[A >> 2] = 2; + i = On(0, 8) | 0; + o[s >> 2] = i; + if ((i | 0) == 0 ? (o[(Ye() | 0) >> 2] | 0) == 12 : 0) ze(Qe(1) | 0, 48, 0); + o[i >> 2] = -2; + o[r >> 2] = 1; + n[(e + 560) >> 0] = 1; + o[(e + 928) >> 2] = cr(a, s, 0) | 0; + n[(e + 536) >> 0] = 0; + if (!i) { + l = t; + return; + } + o[r >> 2] = 0; + _n(i); + o[s >> 2] = 0; + o[A >> 2] = 0; + l = t; + return; + } + function Er(e) { + e = e | 0; + var t = 0; + t = l; + Ir(e); + un(e); + l = t; + return; + } + function Ir(e) { + e = e | 0; + var t = 0, + r = 0, + n = 0; + t = l; + o[e >> 2] = 3424; + r = (e + 904) | 0; + n = o[r >> 2] | 0; + if (n) { + o[(e + 908) >> 2] = 0; + _n(n); + o[r >> 2] = 0; + o[(e + 912) >> 2] = 0; + } + r = (e + 892) | 0; + n = o[r >> 2] | 0; + if (n) { + o[(e + 896) >> 2] = 0; + _n(n); + o[r >> 2] = 0; + o[(e + 900) >> 2] = 0; + } + r = (e + 876) | 0; + n = o[r >> 2] | 0; + if (n) { + o[(e + 880) >> 2] = 0; + _n(n); + o[r >> 2] = 0; + o[(e + 884) >> 2] = 0; + } + r = (e + 856) | 0; + n = o[r >> 2] | 0; + if (n) { + o[(e + 860) >> 2] = 0; + _n(n); + o[r >> 2] = 0; + o[(e + 864) >> 2] = 0; + } + n = (e + 836) | 0; + r = o[n >> 2] | 0; + if (r) { + o[(e + 840) >> 2] = 0; + _n(r); + o[n >> 2] = 0; + o[(e + 844) >> 2] = 0; + } + r = (e + 824) | 0; + n = o[r >> 2] | 0; + if (n) { + o[(e + 828) >> 2] = 0; + _n(n); + o[r >> 2] = 0; + o[(e + 832) >> 2] = 0; + } + r = (e + 808) | 0; + n = o[r >> 2] | 0; + if (n) { + o[(e + 812) >> 2] = 0; + _n(n); + o[r >> 2] = 0; + o[(e + 816) >> 2] = 0; + } + Tr((e + 760) | 0); + r = (e + 744) | 0; + n = o[r >> 2] | 0; + if (n) { + o[(e + 748) >> 2] = 0; + _n(n); + o[r >> 2] = 0; + o[(e + 752) >> 2] = 0; + } + r = (e + 732) | 0; + n = o[r >> 2] | 0; + if (!n) { + St(e); + l = t; + return; + } + o[(e + 736) >> 2] = 0; + _n(n); + o[r >> 2] = 0; + o[(e + 740) >> 2] = 0; + St(e); + l = t; + return; + } + function mr(e, t, r) { + e = e | 0; + t = t | 0; + r = r | 0; + var i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0; + i = l; + l = (l + 32) | 0; + A = (i + 12) | 0; + c = (i + 8) | 0; + u = (i + 16) | 0; + s = (i + 4) | 0; + a = i; + n[u >> 0] = n[t >> 0] | 0; + n[(A + 0) >> 0] = n[(u + 0) >> 0] | 0; + r = kt(e, A, r) | 0; + o[c >> 2] = r; + ir((e + 876) | 0, r, 0); + ir((e + 904) | 0, r, 0); + if (!(n[(e + 724) >> 0] | 0)) { + l = i; + return r | 0; + } + u = (e + 808) | 0; + t = r << 1; + o[s >> 2] = t; + o[(A + 0) >> 2] = o[(s + 0) >> 2]; + Pr(u, A, 0); + o[a >> 2] = t | 1; + o[(A + 0) >> 2] = o[(a + 0) >> 2]; + Pr(u, A, 0); + Ur((e + 760) | 0, c); + ir((e + 744) | 0, r, 0); + _r((e + 824) | 0, r); + l = i; + return r | 0; + } + function yr(e, t, r, i) { + e = e | 0; + t = t | 0; + r = r | 0; + i = i | 0; + var A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0, + C = 0, + E = 0, + I = 0, + m = 0, + y = 0, + w = 0, + B = 0; + c = l; + l = (l + 32) | 0; + A = (c + 4) | 0; + C = c; + p = (c + 16) | 0; + o[A >> 2] = 0; + a = (A + 4) | 0; + o[a >> 2] = 0; + u = (A + 8) | 0; + o[u >> 2] = 0; + E = n[2608] | 0; + n[e >> 0] = E; + h = (t + 724) | 0; + r = ((s[h >> 0] & (r & 1)) | 0) != 0; + if (r) { + m = (t + 308) | 0; + B = o[m >> 2] | 0; + if ((B | 0) > 0) { + I = (t + 304) | 0; + E = (t + 876) | 0; + y = 0; + do { + w = o[((o[I >> 2] | 0) + (y << 2)) >> 2] >> 1; + o[C >> 2] = w; + w = ((o[E >> 2] | 0) + w) | 0; + if (!(n[w >> 0] | 0)) { + n[w >> 0] = 1; + Ar(A, C); + B = o[m >> 2] | 0; + } + y = (y + 1) | 0; + } while ((y | 0) < (B | 0)); + } + C = ((wr(t, i) | 0) & 1) ^ 1; + n[e >> 0] = C; + i = n[2608] | 0; + } else { + i = E; + C = E; + } + B = i & 255; + if ( + !((((B >>> 1) ^ 1) & ((C << 24) >> 24 == (i << 24) >> 24)) | (B & 2 & (C & 255))) + ) { + if ((o[(t + 44) >> 2] | 0) > 0) Ue(3760) | 0; + } else { + qt(p, t); + C = n[p >> 0] | 0; + n[e >> 0] = C; + } + w = n[2608] | 0; + B = w & 255; + if ( + ( + ((((B >>> 1) ^ 1) & ((C << 24) >> 24 == (w << 24) >> 24)) | + (B & 2 & (C & 255)) | + 0) != + 0 + ? (n[(t + 707) >> 0] | 0) != 0 + : 0 + ) + ? ((d = ((o[(t + 736) >> 2] | 0) + -1) | 0), (d | 0) > 0) + : 0 + ) { + e = (t + 732) | 0; + p = (t + 4) | 0; + do { + i = o[e >> 2] | 0; + m = o[(i + (d << 2)) >> 2] | 0; + y = (d + -1) | 0; + w = o[(i + (y << 2)) >> 2] | 0; + d = o[p >> 2] | 0; + e: do { + if ((m | 0) > 1) { + E = n[2616] | 0; + C = E & 255; + I = C & 2; + C = (C >>> 1) ^ 1; + B = y; + while (1) { + w = s[(d + (w >> 1)) >> 0] ^ (w & 1); + y = (m + -1) | 0; + if (!(((((w & 255) << 24) >> 24 == (E << 24) >> 24) & C) | (I & w))) + break e; + m = (B + -1) | 0; + w = o[(i + (m << 2)) >> 2] | 0; + if ((y | 0) > 1) { + B = m; + m = y; + } else { + B = m; + m = y; + f = 20; + break; + } + } + } else { + B = y; + f = 20; + } + } while (0); + if ((f | 0) == 20) { + f = 0; + n[(d + (w >> 1)) >> 0] = (((w & 1) ^ 1) & 255) ^ 1; + } + d = (B - m) | 0; + } while ((d | 0) > 0); + } + if (r ? ((g = o[a >> 2] | 0), (g | 0) > 0) : 0) { + f = o[A >> 2] | 0; + r = (t + 876) | 0; + p = 0; + do { + e = o[(f + (p << 2)) >> 2] | 0; + n[((o[r >> 2] | 0) + e) >> 0] = 0; + if (n[h >> 0] | 0) Or(t, e); + p = (p + 1) | 0; + } while ((p | 0) < (g | 0)); + } + t = o[A >> 2] | 0; + if (!t) { + l = c; + return; + } + o[a >> 2] = 0; + _n(t); + o[A >> 2] = 0; + o[u >> 2] = 0; + l = c; + return; + } + function wr(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + h = 0, + f = 0, + p = 0, + d = 0, + C = 0, + E = 0, + I = 0, + m = 0, + y = 0, + w = 0, + B = 0, + Q = 0, + v = 0, + D = 0, + b = 0, + S = 0, + k = 0, + x = 0, + F = 0, + M = 0, + N = 0, + R = 0, + K = 0; + c = l; + l = (l + 16) | 0; + A = c; + if (!(Jt(e) | 0)) { + N = 0; + l = c; + return N | 0; + } + a = (e + 724) | 0; + if (!(n[a >> 0] | 0)) { + N = 1; + l = c; + return N | 0; + } + B = (e + 924) | 0; + y = (e + 872) | 0; + w = (e + 868) | 0; + m = (e + 860) | 0; + C = (e + 680) | 0; + Q = (e + 824) | 0; + s = (e + 828) | 0; + f = (e + 836) | 0; + v = (e + 904) | 0; + D = (e + 332) | 0; + r = (e + 44) | 0; + b = (e + 704) | 0; + k = (e + 706) | 0; + x = (e + 696) | 0; + p = (e + 556) | 0; + d = (e + 548) | 0; + S = (e + 876) | 0; + E = (e + 920) | 0; + I = (e + 284) | 0; + e: while (1) { + if ( + ((o[B >> 2] | 0) <= 0 ? (o[E >> 2] | 0) >= (o[I >> 2] | 0) : 0) + ? (o[s >> 2] | 0) <= 0 + : 0 + ) + break; + Sr(e); + M = o[y >> 2] | 0; + N = o[w >> 2] | 0; + F = (M - N) | 0; + if ((M | 0) < (N | 0)) F = ((o[m >> 2] | 0) + F) | 0; + if (!((F | 0) <= 0 ? (o[E >> 2] | 0) >= (o[I >> 2] | 0) : 0)) h = 11; + if ((h | 0) == 11 ? ((h = 0), !(kr(e, 1) | 0)) : 0) { + h = 12; + break; + } + N = o[s >> 2] | 0; + if (n[C >> 0] | 0) { + h = 15; + break; + } + if (!N) continue; + else F = 0; + while (1) { + K = o[Q >> 2] | 0; + M = o[K >> 2] | 0; + R = o[(K + ((N + -1) << 2)) >> 2] | 0; + o[K >> 2] = R; + N = o[f >> 2] | 0; + o[(N + (R << 2)) >> 2] = 0; + o[(N + (M << 2)) >> 2] = -1; + N = ((o[s >> 2] | 0) + -1) | 0; + o[s >> 2] = N; + if ((N | 0) > 1) jr(Q, 0); + if (n[C >> 0] | 0) continue e; + if ( + (n[((o[v >> 2] | 0) + M) >> 0] | 0) == 0 + ? ((R = n[((o[D >> 2] | 0) + M) >> 0] | 0), + (N = n[2624] | 0), + (K = N & 255), + ((((K >>> 1) ^ 1) & ((R << 24) >> 24 == (N << 24) >> 24)) | + (R & 2 & K) | + 0) != + 0) + : 0 + ) { + if (((o[r >> 2] | 0) > 1) & (((F | 0) % 100 | 0 | 0) == 0)) { + o[A >> 2] = o[s >> 2]; + _e(3504, A | 0) | 0; + } + if (n[b >> 0] | 0) { + K = ((o[S >> 2] | 0) + M) | 0; + N = n[K >> 0] | 0; + n[K >> 0] = 1; + if (!(Fr(e, M) | 0)) { + h = 29; + break e; + } + n[((o[S >> 2] | 0) + M) >> 0] = ((N << 24) >> 24 != 0) & 1; + } + if ( + ( + ( + (n[k >> 0] | 0) != 0 + ? ((R = n[((o[D >> 2] | 0) + M) >> 0] | 0), + (N = n[2624] | 0), + (K = N & 255), + ((((K >>> 1) ^ 1) & ((R << 24) >> 24 == (N << 24) >> 24)) | + (R & 2 & K) | + 0) != + 0) + : 0 + ) + ? (n[((o[S >> 2] | 0) + M) >> 0] | 0) == 0 + : 0 + ) + ? !(Mr(e, M) | 0) + : 0 + ) { + h = 35; + break e; + } + if (+((o[p >> 2] | 0) >>> 0) > +u[x >> 3] * +((o[d >> 2] | 0) >>> 0)) + ji[o[((o[e >> 2] | 0) + 8) >> 2] & 31](e); + } + N = o[s >> 2] | 0; + if (!N) continue e; + else F = (F + 1) | 0; + } + } + do { + if ((h | 0) == 12) n[(e + 492) >> 0] = 0; + else if ((h | 0) == 15) { + C = o[(e + 824) >> 2] | 0; + if ((N | 0) <= 0) { + if (!C) break; + } else { + I = o[f >> 2] | 0; + E = 0; + do { + o[(I + (o[(C + (E << 2)) >> 2] << 2)) >> 2] = -1; + E = (E + 1) | 0; + } while ((E | 0) < (o[s >> 2] | 0)); + } + o[s >> 2] = 0; + } else if ((h | 0) == 29) n[(e + 492) >> 0] = 0; + else if ((h | 0) == 35) n[(e + 492) >> 0] = 0; + } while (0); + if (!t) { + if (+((o[p >> 2] | 0) >>> 0) > +u[(e + 96) >> 3] * +((o[d >> 2] | 0) >>> 0)) + ji[o[((o[e >> 2] | 0) + 8) >> 2] & 31](e); + } else { + t = (e + 744) | 0; + p = o[t >> 2] | 0; + if (p) { + o[(e + 748) >> 2] = 0; + _n(p); + o[t >> 2] = 0; + o[(e + 752) >> 2] = 0; + } + Yr((e + 760) | 0, 1); + t = (e + 808) | 0; + p = o[t >> 2] | 0; + if (p) { + o[(e + 812) >> 2] = 0; + _n(p); + o[t >> 2] = 0; + o[(e + 816) >> 2] = 0; + } + p = (e + 824) | 0; + t = o[p >> 2] | 0; + if ((o[s >> 2] | 0) <= 0) { + if (t) h = 48; + } else { + h = o[f >> 2] | 0; + f = 0; + do { + o[(h + (o[(t + (f << 2)) >> 2] << 2)) >> 2] = -1; + f = (f + 1) | 0; + } while ((f | 0) < (o[s >> 2] | 0)); + h = 48; + } + if ((h | 0) == 48) { + o[s >> 2] = 0; + _n(t); + o[p >> 2] = 0; + o[(e + 832) >> 2] = 0; + } + Gr((e + 856) | 0, 1); + n[a >> 0] = 0; + n[(e + 536) >> 0] = 1; + n[(e + 560) >> 0] = 0; + o[(e + 728) >> 2] = o[(e + 540) >> 2]; + Gt(e); + ji[o[((o[e >> 2] | 0) + 8) >> 2] & 31](e); + } + if ((o[r >> 2] | 0) > 0 ? ((i = o[(e + 736) >> 2] | 0), (i | 0) > 0) : 0) { + u[g >> 3] = +((i << 2) >>> 0) * 9.5367431640625e-7; + o[A >> 2] = o[g >> 2]; + o[(A + 4) >> 2] = o[(g + 4) >> 2]; + _e(3528, A | 0) | 0; + } + K = (n[(e + 492) >> 0] | 0) != 0; + l = c; + return K | 0; + } + function Br(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0; + r = l; + l = (l + 16) | 0; + s = r; + a = (e + 256) | 0; + c = (e + 260) | 0; + A = o[c >> 2] | 0; + if ((n[(e + 705) >> 0] | 0) != 0 ? Qr(e, t) | 0 : 0) { + p = 1; + l = r; + return p | 0; + } + if (!(xt(e, t) | 0)) { + p = 0; + l = r; + return p | 0; + } + if (!(n[(e + 724) >> 0] | 0)) { + p = 1; + l = r; + return p | 0; + } + t = o[c >> 2] | 0; + if ((t | 0) != ((A + 1) | 0)) { + p = 1; + l = r; + return p | 0; + } + p = o[((o[a >> 2] | 0) + ((t + -1) << 2)) >> 2] | 0; + o[s >> 2] = p; + h = ((o[(e + 544) >> 2] | 0) + (p << 2)) | 0; + Jr((e + 856) | 0, p); + if ((o[h >> 2] | 0) >>> 0 <= 31) { + p = 1; + l = r; + return p | 0; + } + u = (e + 760) | 0; + c = (e + 808) | 0; + a = (e + 744) | 0; + A = (e + 924) | 0; + t = (e + 824) | 0; + g = (e + 840) | 0; + e = (e + 836) | 0; + f = 0; + do { + p = (h + (f << 2) + 4) | 0; + Hr(((o[u >> 2] | 0) + (((o[p >> 2] >> 1) * 12) | 0)) | 0, s); + d = ((o[c >> 2] | 0) + (o[p >> 2] << 2)) | 0; + o[d >> 2] = (o[d >> 2] | 0) + 1; + n[((o[a >> 2] | 0) + (o[p >> 2] >> 1)) >> 0] = 1; + o[A >> 2] = (o[A >> 2] | 0) + 1; + p = o[p >> 2] >> 1; + if ( + (o[g >> 2] | 0) > (p | 0) + ? ((i = o[((o[e >> 2] | 0) + (p << 2)) >> 2] | 0), (i | 0) > -1) + : 0 + ) + jr(t, i); + f = (f + 1) | 0; + } while ((f | 0) < (((o[h >> 2] | 0) >>> 5) | 0)); + i = 1; + l = r; + return i | 0; + } + function Qr(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + i = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0, + C = 0, + E = 0; + c = l; + l = (l + 16) | 0; + A = (c + 8) | 0; + a = (c + 4) | 0; + i = c; + o[a >> 2] = o[(e + 284) >> 2]; + Ar((e + 292) | 0, a); + a = (t + 4) | 0; + h = o[a >> 2] | 0; + e: do { + if ((h | 0) > 0) { + r = (e + 332) | 0; + u = 0; + while (1) { + g = o[((o[t >> 2] | 0) + (u << 2)) >> 2] | 0; + p = s[((o[r >> 2] | 0) + (g >> 1)) >> 0] | 0; + d = p ^ (g & 1); + f = d & 255; + E = n[2608] | 0; + C = E & 255; + if ((((f << 24) >> 24 == (E << 24) >> 24) & ((C >>> 1) ^ 1)) | (C & 2 & d)) + break; + C = n[2616] | 0; + E = C & 255; + if ( + !((((E >>> 1) ^ 1) & ((f << 24) >> 24 == (C << 24) >> 24)) | (p & 2 & E)) + ) { + o[i >> 2] = g ^ 1; + o[(A + 0) >> 2] = o[(i + 0) >> 2]; + Ft(e, A, -1); + h = o[a >> 2] | 0; + } + u = (u + 1) | 0; + if ((u | 0) >= (h | 0)) break e; + } + Tt(e, 0); + E = 1; + l = c; + return E | 0; + } + } while (0); + E = (Mt(e) | 0) != -1; + Tt(e, 0); + l = c; + return E | 0; + } + function vr(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0; + r = l; + l = (l + 16) | 0; + s = r; + i = ((o[(e + 544) >> 2] | 0) + (t << 2)) | 0; + if (!(n[(e + 724) >> 0] | 0)) { + Kt(e, t); + l = r; + return; + } + if ((o[i >> 2] | 0) >>> 0 <= 31) { + Kt(e, t); + l = r; + return; + } + a = (e + 808) | 0; + c = (e + 776) | 0; + A = (e + 792) | 0; + u = 0; + do { + h = (i + (u << 2) + 4) | 0; + g = ((o[a >> 2] | 0) + (o[h >> 2] << 2)) | 0; + o[g >> 2] = (o[g >> 2] | 0) + -1; + Or(e, o[h >> 2] >> 1); + h = o[h >> 2] >> 1; + o[s >> 2] = h; + h = ((o[c >> 2] | 0) + h) | 0; + if (!(n[h >> 0] | 0)) { + n[h >> 0] = 1; + Ar(A, s); + } + u = (u + 1) | 0; + } while ((u | 0) < (((o[i >> 2] | 0) >>> 5) | 0)); + Kt(e, t); + l = r; + return; + } + function Dr(e, t, r) { + e = e | 0; + t = t | 0; + r = r | 0; + var i = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0, + C = 0, + E = 0; + i = l; + l = (l + 16) | 0; + a = (i + 4) | 0; + A = i; + u = o[(e + 544) >> 2] | 0; + c = (u + (t << 2)) | 0; + Jr((e + 856) | 0, t); + if (((o[c >> 2] & -32) | 0) == 64) { + vr(e, t); + p = o[r >> 2] | 0; + r = o[c >> 2] | 0; + e: do { + if (r >>> 0 > 31) { + h = r >>> 5; + g = 0; + while (1) { + f = (g + 1) | 0; + if ((o[(c + (g << 2) + 4) >> 2] | 0) == (p | 0)) { + f = g; + break e; + } + if ((f | 0) < (h | 0)) g = f; + else break; + } + } else { + h = 0; + f = 0; + } + } while (0); + g = (h + -1) | 0; + if ((f | 0) < (g | 0)) + do { + r = f; + f = (f + 1) | 0; + o[(c + (r << 2) + 4) >> 2] = o[(c + (f << 2) + 4) >> 2]; + r = o[c >> 2] | 0; + h = r >>> 5; + g = (h + -1) | 0; + } while ((f | 0) < (g | 0)); + if (r & 8) { + o[(c + (g << 2) + 4) >> 2] = o[(c + (h << 2) + 4) >> 2]; + r = o[c >> 2] | 0; + } + h = (r + -32) | 0; + o[c >> 2] = h; + h = h >>> 5; + if (!h) { + h = 0; + r = 0; + } else { + r = 0; + g = 0; + do { + r = (1 << (((o[(c + (g << 2) + 4) >> 2] | 0) >>> 1) & 31)) | r; + g = (g + 1) | 0; + } while ((g | 0) < (h | 0)); + } + o[(c + (h << 2) + 4) >> 2] = r; + } else { + Rt(e, t, 1); + r = o[r >> 2] | 0; + g = o[c >> 2] | 0; + e: do { + if (g >>> 0 > 31) { + h = g >>> 5; + f = 0; + while (1) { + p = (f + 1) | 0; + if ((o[(c + (f << 2) + 4) >> 2] | 0) == (r | 0)) { + p = f; + break e; + } + if ((p | 0) < (h | 0)) f = p; + else break; + } + } else { + h = 0; + p = 0; + } + } while (0); + f = (h + -1) | 0; + if ((p | 0) < (f | 0)) + do { + g = p; + p = (p + 1) | 0; + o[(c + (g << 2) + 4) >> 2] = o[(c + (p << 2) + 4) >> 2]; + g = o[c >> 2] | 0; + h = g >>> 5; + f = (h + -1) | 0; + } while ((p | 0) < (f | 0)); + if (g & 8) { + o[(c + (f << 2) + 4) >> 2] = o[(c + (h << 2) + 4) >> 2]; + g = o[c >> 2] | 0; + } + f = (g + -32) | 0; + o[c >> 2] = f; + f = f >>> 5; + if (!f) { + f = 0; + h = 0; + } else { + h = 0; + g = 0; + do { + h = (1 << (((o[(c + (g << 2) + 4) >> 2] | 0) >>> 1) & 31)) | h; + g = (g + 1) | 0; + } while ((g | 0) < (f | 0)); + } + o[(c + (f << 2) + 4) >> 2] = h; + Nt(e, t); + h = r >> 1; + g = o[(e + 760) >> 2] | 0; + f = (g + ((h * 12) | 0)) | 0; + g = (g + ((h * 12) | 0) + 4) | 0; + p = o[g >> 2] | 0; + e: do { + if ((p | 0) > 0) { + E = o[f >> 2] | 0; + d = 0; + while (1) { + C = (d + 1) | 0; + if ((o[(E + (d << 2)) >> 2] | 0) == (t | 0)) break e; + if ((C | 0) < (p | 0)) d = C; + else { + d = C; + break; + } + } + } else d = 0; + } while (0); + p = (p + -1) | 0; + if ((d | 0) < (p | 0)) { + f = o[f >> 2] | 0; + do { + p = d; + d = (d + 1) | 0; + o[(f + (p << 2)) >> 2] = o[(f + (d << 2)) >> 2]; + p = ((o[g >> 2] | 0) + -1) | 0; + } while ((d | 0) < (p | 0)); + } + o[g >> 2] = p; + E = ((o[(e + 808) >> 2] | 0) + (r << 2)) | 0; + o[E >> 2] = (o[E >> 2] | 0) + -1; + Or(e, h); + } + if (((o[c >> 2] & -32) | 0) != 32) { + E = 1; + l = i; + return E | 0; + } + u = o[(u + ((t + 1) << 2)) >> 2] | 0; + c = s[((o[(e + 332) >> 2] | 0) + (u >> 1)) >> 0] | 0; + E = c ^ (u & 1); + t = E & 255; + d = n[2624] | 0; + C = d & 255; + if (!((((t << 24) >> 24 == (d << 24) >> 24) & ((C >>> 1) ^ 1)) | (C & 2 & E))) { + C = n[2616] | 0; + E = C & 255; + if ((((E >>> 1) ^ 1) & ((t << 24) >> 24 == (C << 24) >> 24)) | (c & 2 & E)) { + E = 0; + l = i; + return E | 0; + } + } else { + o[A >> 2] = u; + o[(a + 0) >> 2] = o[(A + 0) >> 2]; + Ft(e, a, -1); + } + E = (Mt(e) | 0) == -1; + l = i; + return E | 0; + } + function br(e, t, r, n, i) { + e = e | 0; + t = t | 0; + r = r | 0; + n = n | 0; + i = i | 0; + var s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0; + s = l; + l = (l + 16) | 0; + a = (s + 4) | 0; + A = s; + f = (e + 708) | 0; + o[f >> 2] = (o[f >> 2] | 0) + 1; + if (o[i >> 2] | 0) o[(i + 4) >> 2] = 0; + c = ((o[t >> 2] | 0) >>> 5) >>> 0 < ((o[r >> 2] | 0) >>> 5) >>> 0; + e = c ? r : t; + t = c ? t : r; + c = o[t >> 2] | 0; + e: do { + if (c >>> 0 > 31) { + r = 0; + t: while (1) { + u = o[(t + (r << 2) + 4) >> 2] | 0; + r: do { + if (((u >> 1) | 0) != (n | 0)) { + h = o[e >> 2] | 0; + n: do { + if (h >>> 0 > 31) { + g = 0; + while (1) { + f = o[(e + (g << 2) + 4) >> 2] | 0; + g = (g + 1) | 0; + if ((u ^ f) >>> 0 < 2) break; + if ((g | 0) >= ((h >>> 5) | 0)) break n; + } + if ((f | 0) == ((u ^ 1) | 0)) { + i = 0; + break t; + } else break r; + } + } while (0); + o[a >> 2] = u; + sr(i, a); + c = o[t >> 2] | 0; + } + } while (0); + r = (r + 1) | 0; + if ((r | 0) >= ((c >>> 5) | 0)) break e; + } + l = s; + return i | 0; + } + } while (0); + r = o[e >> 2] | 0; + if (r >>> 0 <= 31) { + f = 1; + l = s; + return f | 0; + } + a = 0; + do { + t = o[(e + (a << 2) + 4) >> 2] | 0; + if (((t >> 1) | 0) != (n | 0)) { + o[A >> 2] = t; + sr(i, A); + r = o[e >> 2] | 0; + } + a = (a + 1) | 0; + } while ((a | 0) < ((r >>> 5) | 0)); + i = 1; + l = s; + return i | 0; + } + function Sr(e) { + e = e | 0; + var t = 0, + r = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0, + C = 0, + E = 0, + I = 0, + m = 0, + y = 0, + w = 0; + t = l; + c = (e + 924) | 0; + if (!(o[c >> 2] | 0)) { + l = t; + return; + } + A = (e + 856) | 0; + r = (e + 872) | 0; + i = (e + 868) | 0; + a = (e + 860) | 0; + s = (e + 544) | 0; + u = 0; + while (1) { + w = o[r >> 2] | 0; + h = o[i >> 2] | 0; + g = (w - h) | 0; + if ((w | 0) < (h | 0)) g = ((o[a >> 2] | 0) + g) | 0; + if ((u | 0) >= (g | 0)) break; + g = + ((o[s >> 2] | 0) + + (o[((o[A >> 2] | 0) + ((((h + u) | 0) % (o[a >> 2] | 0) | 0) << 2)) >> 2] << + 2)) | + 0; + h = o[g >> 2] | 0; + if (!(h & 3)) o[g >> 2] = (h & -4) | 2; + u = (u + 1) | 0; + } + u = (e + 540) | 0; + d = o[u >> 2] | 0; + if ((d | 0) > 0) { + g = (e + 744) | 0; + f = (e + 776) | 0; + h = (e + 760) | 0; + e = (e + 804) | 0; + p = 0; + do { + if (n[((o[g >> 2] | 0) + p) >> 0] | 0) { + C = ((o[f >> 2] | 0) + p) | 0; + if (n[C >> 0] | 0) { + E = o[h >> 2] | 0; + d = (E + ((p * 12) | 0) + 4) | 0; + m = o[d >> 2] | 0; + if ((m | 0) > 0) { + E = o[(E + ((p * 12) | 0)) >> 2] | 0; + y = 0; + I = 0; + do { + w = o[(E + (y << 2)) >> 2] | 0; + if (((o[((o[o[e >> 2] >> 2] | 0) + (w << 2)) >> 2] & 3) | 0) != 1) { + o[(E + (I << 2)) >> 2] = w; + m = o[d >> 2] | 0; + I = (I + 1) | 0; + } + y = (y + 1) | 0; + } while ((y | 0) < (m | 0)); + } else { + y = 0; + I = 0; + } + E = (y - I) | 0; + if ((E | 0) > 0) o[d >> 2] = m - E; + n[C >> 0] = 0; + } + C = o[h >> 2] | 0; + d = (C + ((p * 12) | 0) + 4) | 0; + I = o[d >> 2] | 0; + if ((I | 0) > 0) { + C = (C + ((p * 12) | 0)) | 0; + E = 0; + do { + m = o[((o[C >> 2] | 0) + (E << 2)) >> 2] | 0; + if (!(o[((o[s >> 2] | 0) + (m << 2)) >> 2] & 3)) { + Jr(A, m); + I = ((o[s >> 2] | 0) + (o[((o[C >> 2] | 0) + (E << 2)) >> 2] << 2)) | 0; + o[I >> 2] = (o[I >> 2] & -4) | 2; + I = o[d >> 2] | 0; + } + E = (E + 1) | 0; + } while ((E | 0) < (I | 0)); + } + n[((o[g >> 2] | 0) + p) >> 0] = 0; + d = o[u >> 2] | 0; + } + p = (p + 1) | 0; + } while ((p | 0) < (d | 0)); + u = 0; + } else u = 0; + while (1) { + w = o[r >> 2] | 0; + h = o[i >> 2] | 0; + g = (w - h) | 0; + if ((w | 0) < (h | 0)) g = ((o[a >> 2] | 0) + g) | 0; + if ((u | 0) >= (g | 0)) break; + h = + ((o[s >> 2] | 0) + + (o[((o[A >> 2] | 0) + ((((h + u) | 0) % (o[a >> 2] | 0) | 0) << 2)) >> 2] << + 2)) | + 0; + g = o[h >> 2] | 0; + if (((g & 3) | 0) == 2) o[h >> 2] = g & -4; + u = (u + 1) | 0; + } + o[c >> 2] = 0; + l = t; + return; + } + function kr(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0, + C = 0, + E = 0, + I = 0, + m = 0, + y = 0, + w = 0, + B = 0, + Q = 0, + v = 0, + D = 0, + b = 0, + S = 0, + k = 0, + x = 0, + F = 0, + M = 0, + N = 0, + R = 0, + K = 0, + L = 0, + T = 0, + P = 0, + U = 0, + _ = 0, + O = 0; + r = l; + l = (l + 16) | 0; + h = r; + B = (r + 12) | 0; + s = (e + 856) | 0; + u = (e + 872) | 0; + d = (e + 868) | 0; + a = (e + 860) | 0; + m = (e + 680) | 0; + i = (e + 920) | 0; + A = (e + 284) | 0; + I = (e + 280) | 0; + C = (e + 544) | 0; + E = (e + 928) | 0; + f = (e + 44) | 0; + g = (e + 776) | 0; + y = (e + 692) | 0; + p = (e + 804) | 0; + c = (e + 760) | 0; + S = 0; + F = 0; + k = 0; + e: while (1) { + x = o[d >> 2] | 0; + do { + D = o[u >> 2] | 0; + b = (D | 0) < (x | 0); + D = (D - x) | 0; + if (b) M = ((o[a >> 2] | 0) + D) | 0; + else M = D; + if ((M | 0) <= 0 ? (o[i >> 2] | 0) >= (o[A >> 2] | 0) : 0) { + i = 1; + a = 53; + break e; + } + if (n[m >> 0] | 0) { + a = 8; + break e; + } + if (b) D = ((o[a >> 2] | 0) + D) | 0; + if ((D | 0) == 0 ? ((v = o[i >> 2] | 0), (v | 0) < (o[A >> 2] | 0)) : 0) { + o[i >> 2] = v + 1; + o[((o[C >> 2] | 0) + (((o[E >> 2] | 0) + 1) << 2)) >> 2] = + o[((o[I >> 2] | 0) + (v << 2)) >> 2]; + D = ((o[C >> 2] | 0) + (o[E >> 2] << 2)) | 0; + b = (o[D >> 2] | 0) >>> 5; + if (!b) { + b = 0; + M = 0; + } else { + M = 0; + x = 0; + do { + M = (1 << (((o[(D + (x << 2) + 4) >> 2] | 0) >>> 1) & 31)) | M; + x = (x + 1) | 0; + } while ((x | 0) < (b | 0)); + } + o[(D + (b << 2) + 4) >> 2] = M; + Jr(s, o[E >> 2] | 0); + x = o[d >> 2] | 0; + } + D = o[((o[s >> 2] | 0) + (x << 2)) >> 2] | 0; + x = (x + 1) | 0; + K = o[a >> 2] | 0; + x = (x | 0) == (K | 0) ? 0 : x; + o[d >> 2] = x; + M = o[C >> 2] | 0; + b = (M + (D << 2)) | 0; + R = o[b >> 2] | 0; + } while (((R & 3) | 0) != 0); + if (t ? (o[f >> 2] | 0) > 1 : 0) { + N = (S + 1) | 0; + if (!((S | 0) % 1e3 | 0)) { + R = o[u >> 2] | 0; + o[h >> 2] = R - x + ((R | 0) < (x | 0) ? K : 0); + o[(h + 4) >> 2] = k; + o[(h + 8) >> 2] = F; + _e(3440, h | 0) | 0; + R = o[b >> 2] | 0; + S = N; + } else S = N; + } + x = (M + ((D + 1) << 2)) | 0; + M = o[x >> 2] >> 1; + if (R >>> 0 > 63) { + N = o[c >> 2] | 0; + R = R >>> 5; + K = 1; + do { + O = o[(b + (K << 2) + 4) >> 2] >> 1; + M = + (o[(N + ((O * 12) | 0) + 4) >> 2] | 0) < + (o[(N + ((M * 12) | 0) + 4) >> 2] | 0) + ? O + : M; + K = (K + 1) | 0; + } while ((K | 0) < (R | 0)); + } + R = ((o[g >> 2] | 0) + M) | 0; + if (n[R >> 0] | 0) { + K = o[c >> 2] | 0; + N = (K + ((M * 12) | 0) + 4) | 0; + P = o[N >> 2] | 0; + if ((P | 0) > 0) { + K = o[(K + ((M * 12) | 0)) >> 2] | 0; + T = 0; + L = 0; + do { + U = o[(K + (T << 2)) >> 2] | 0; + if (((o[((o[o[p >> 2] >> 2] | 0) + (U << 2)) >> 2] & 3) | 0) != 1) { + o[(K + (L << 2)) >> 2] = U; + P = o[N >> 2] | 0; + L = (L + 1) | 0; + } + T = (T + 1) | 0; + } while ((T | 0) < (P | 0)); + } else { + T = 0; + L = 0; + } + K = (T - L) | 0; + if ((K | 0) > 0) o[N >> 2] = P - K; + n[R >> 0] = 0; + } + R = o[c >> 2] | 0; + N = o[(R + ((M * 12) | 0)) >> 2] | 0; + R = (R + ((M * 12) | 0) + 4) | 0; + if ((o[R >> 2] | 0) > 0) K = 0; + else continue; + while (1) { + U = o[b >> 2] | 0; + if (U & 3) continue e; + L = o[(N + (K << 2)) >> 2] | 0; + T = o[C >> 2] | 0; + _ = (T + (L << 2)) | 0; + P = o[_ >> 2] | 0; + t: do { + if ( + ( + ( + !((((P & 3) | 0) != 0) | ((L | 0) == (D | 0))) + ? ((O = o[y >> 2] | 0), + (Q = P >>> 5), + ((O | 0) == -1) | ((Q | 0) < (O | 0))) + : 0 + ) + ? ((w = U >>> 5), Q >>> 0 >= w >>> 0) + : 0 + ) + ? ((o[(b + (w << 2) + 4) >> 2] & ~o[(_ + (Q << 2) + 4) >> 2]) | 0) == 0 + : 0 + ) { + T = (T + ((L + 1) << 2)) | 0; + do { + if (U >>> 0 > 31) { + if (P >>> 0 > 31) { + _ = -2; + P = 0; + } else break t; + while (1) { + U = o[(x + (P << 2)) >> 2] | 0; + r: do { + if ((_ | 0) == -2) { + O = 0; + while (1) { + _ = o[(T + (O << 2)) >> 2] | 0; + if ((U | 0) == (_ | 0)) { + U = -2; + break r; + } + O = (O + 1) | 0; + if ((U | 0) == ((_ ^ 1) | 0)) break r; + if (O >>> 0 >= Q >>> 0) break t; + } + } else { + O = 0; + while (1) { + if ((U | 0) == (o[(T + (O << 2)) >> 2] | 0)) { + U = _; + break r; + } + O = (O + 1) | 0; + if (O >>> 0 >= Q >>> 0) break t; + } + } + } while (0); + P = (P + 1) | 0; + if (P >>> 0 >= w >>> 0) break; + else _ = U; + } + if ((U | 0) == -2) break; + else if ((U | 0) == -1) break t; + o[B >> 2] = U ^ 1; + o[(h + 0) >> 2] = o[(B + 0) >> 2]; + if (!(Dr(e, L, h) | 0)) { + i = 0; + a = 53; + break e; + } + F = (F + 1) | 0; + K = ((((((U >> 1) | 0) == (M | 0)) << 31) >> 31) + K) | 0; + break t; + } + } while (0); + vr(e, L); + k = (k + 1) | 0; + } + } while (0); + K = (K + 1) | 0; + if ((K | 0) >= (o[R >> 2] | 0)) continue e; + } + } + if ((a | 0) == 8) { + Gr(s, 0); + o[i >> 2] = o[A >> 2]; + O = 1; + l = r; + return O | 0; + } else if ((a | 0) == 53) { + l = r; + return i | 0; + } + return 0; + } + function xr(e, t, r) { + e = e | 0; + t = t | 0; + r = r | 0; + var i = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0, + C = 0, + E = 0, + I = 0; + A = l; + l = (l + 16) | 0; + i = (A + 12) | 0; + h = (A + 8) | 0; + c = (A + 4) | 0; + a = A; + u = ((o[(e + 544) >> 2] | 0) + (r << 2)) | 0; + if (o[u >> 2] & 3) { + C = 1; + l = A; + return C | 0; + } + if (Lt(e, u) | 0) { + C = 1; + l = A; + return C | 0; + } + o[h >> 2] = o[(e + 284) >> 2]; + Ar((e + 292) | 0, h); + p = o[u >> 2] | 0; + if (p >>> 0 > 31) { + h = (e + 332) | 0; + g = 0; + f = -2; + do { + d = o[(u + (g << 2) + 4) >> 2] | 0; + C = d >> 1; + if ( + (C | 0) != (t | 0) + ? ((C = (s[((o[h >> 2] | 0) + C) >> 0] | 0) ^ (d & 1)), + (I = n[2616] | 0), + (E = I & 255), + (((((C & 255) << 24) >> 24 == (I << 24) >> 24) & ((E >>> 1) ^ 1)) | + (E & 2 & C) | + 0) == + 0) + : 0 + ) { + o[c >> 2] = d ^ 1; + o[(i + 0) >> 2] = o[(c + 0) >> 2]; + Ft(e, i, -1); + p = o[u >> 2] | 0; + } else f = d; + g = (g + 1) | 0; + } while ((g | 0) < ((p >>> 5) | 0)); + } else f = -2; + I = (Mt(e) | 0) == -1; + Tt(e, 0); + if (!I) { + I = (e + 712) | 0; + o[I >> 2] = (o[I >> 2] | 0) + 1; + o[a >> 2] = f; + o[(i + 0) >> 2] = o[(a + 0) >> 2]; + if (!(Dr(e, r, i) | 0)) { + I = 0; + l = A; + return I | 0; + } + } + I = 1; + l = A; + return I | 0; + } + function Fr(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0; + r = l; + A = ((o[(e + 776) >> 2] | 0) + t) | 0; + i = (e + 760) | 0; + if (n[A >> 0] | 0) { + c = o[i >> 2] | 0; + s = (c + ((t * 12) | 0) + 4) | 0; + g = o[s >> 2] | 0; + if ((g | 0) > 0) { + a = (e + 804) | 0; + c = o[(c + ((t * 12) | 0)) >> 2] | 0; + h = 0; + u = 0; + do { + f = o[(c + (h << 2)) >> 2] | 0; + if (((o[((o[o[a >> 2] >> 2] | 0) + (f << 2)) >> 2] & 3) | 0) != 1) { + o[(c + (u << 2)) >> 2] = f; + g = o[s >> 2] | 0; + u = (u + 1) | 0; + } + h = (h + 1) | 0; + } while ((h | 0) < (g | 0)); + } else { + h = 0; + u = 0; + } + a = (h - u) | 0; + if ((a | 0) > 0) o[s >> 2] = g - a; + n[A >> 0] = 0; + } + s = o[i >> 2] | 0; + g = n[((o[(e + 332) >> 2] | 0) + t) >> 0] | 0; + h = n[2624] | 0; + f = h & 255; + if (!((((f >>> 1) ^ 1) & ((g << 24) >> 24 == (h << 24) >> 24)) | (g & 2 & f))) { + f = 1; + l = r; + return f | 0; + } + i = (s + ((t * 12) | 0) + 4) | 0; + A = o[i >> 2] | 0; + if (!A) { + f = 1; + l = r; + return f | 0; + } + e: do { + if ((A | 0) > 0) { + s = (s + ((t * 12) | 0)) | 0; + A = 0; + while (1) { + if (!(xr(e, t, o[((o[s >> 2] | 0) + (A << 2)) >> 2] | 0) | 0)) { + e = 0; + break; + } + A = (A + 1) | 0; + if ((A | 0) >= (o[i >> 2] | 0)) break e; + } + l = r; + return e | 0; + } + } while (0); + f = kr(e, 0) | 0; + l = r; + return f | 0; + } + function Mr(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0, + C = 0, + E = 0, + I = 0, + m = 0, + y = 0, + w = 0, + B = 0, + Q = 0, + v = 0, + D = 0, + b = 0, + S = 0, + k = 0, + x = 0, + F = 0, + M = 0, + N = 0, + K = 0, + L = 0, + T = 0, + P = 0, + U = 0, + _ = 0, + O = 0, + j = 0, + Y = 0, + G = 0, + J = 0, + H = 0, + q = 0, + z = 0, + W = 0, + V = 0, + X = 0; + r = l; + l = (l + 48) | 0; + E = (r + 36) | 0; + C = (r + 32) | 0; + I = (r + 28) | 0; + m = (r + 24) | 0; + i = (r + 12) | 0; + s = r; + g = ((o[(e + 776) >> 2] | 0) + t) | 0; + h = (e + 760) | 0; + if (n[g >> 0] | 0) { + d = o[h >> 2] | 0; + f = (d + ((t * 12) | 0) + 4) | 0; + Q = o[f >> 2] | 0; + if ((Q | 0) > 0) { + p = (e + 804) | 0; + d = o[(d + ((t * 12) | 0)) >> 2] | 0; + w = 0; + y = 0; + do { + v = o[(d + (w << 2)) >> 2] | 0; + if (((o[((o[o[p >> 2] >> 2] | 0) + (v << 2)) >> 2] & 3) | 0) != 1) { + o[(d + (y << 2)) >> 2] = v; + Q = o[f >> 2] | 0; + y = (y + 1) | 0; + } + w = (w + 1) | 0; + } while ((w | 0) < (Q | 0)); + } else { + w = 0; + y = 0; + } + p = (w - y) | 0; + if ((p | 0) > 0) o[f >> 2] = Q - p; + n[g >> 0] = 0; + } + y = o[h >> 2] | 0; + w = (y + ((t * 12) | 0)) | 0; + o[i >> 2] = 0; + g = (i + 4) | 0; + o[g >> 2] = 0; + f = (i + 8) | 0; + o[f >> 2] = 0; + o[s >> 2] = 0; + d = (s + 4) | 0; + o[d >> 2] = 0; + p = (s + 8) | 0; + o[p >> 2] = 0; + y = (y + ((t * 12) | 0) + 4) | 0; + e: do { + if ((o[y >> 2] | 0) > 0) { + Q = (e + 544) | 0; + b = t << 1; + D = 0; + do { + S = ((o[w >> 2] | 0) + (D << 2)) | 0; + x = ((o[Q >> 2] | 0) + (o[S >> 2] << 2)) | 0; + X = o[x >> 2] | 0; + v = X >>> 5; + t: do { + if (X >>> 0 > 31) { + F = 0; + while (1) { + k = (F + 1) | 0; + if ((o[(x + (F << 2) + 4) >> 2] | 0) == (b | 0)) { + k = F; + break t; + } + if ((k | 0) < (v | 0)) F = k; + else break; + } + } else k = 0; + } while (0); + Hr((k | 0) < (v | 0) ? i : s, S); + D = (D + 1) | 0; + v = o[y >> 2] | 0; + } while ((D | 0) < (v | 0)); + Q = o[g >> 2] | 0; + b = (Q | 0) > 0; + if (b) { + S = o[d >> 2] | 0; + L = (S | 0) > 0; + K = (e + 544) | 0; + k = o[i >> 2] | 0; + D = o[s >> 2] | 0; + x = (e + 708) | 0; + N = (e + 684) | 0; + M = (e + 688) | 0; + O = 0; + F = 0; + while (1) { + if (L) { + P = (k + (F << 2)) | 0; + T = o[K >> 2] | 0; + U = o[x >> 2] | 0; + _ = 0; + do { + G = (T + (o[P >> 2] << 2)) | 0; + H = (T + (o[(D + (_ << 2)) >> 2] << 2)) | 0; + U = (U + 1) | 0; + o[x >> 2] = U; + j = ((o[G >> 2] | 0) >>> 5) >>> 0 < ((o[H >> 2] | 0) >>> 5) >>> 0; + Y = j ? H : G; + H = j ? G : H; + G = (Y + 4) | 0; + j = (H + 4) | 0; + Y = o[Y >> 2] | 0; + J = Y >>> 5; + z = (J + -1) | 0; + H = o[H >> 2] | 0; + t: do { + if (H >>> 0 > 31) { + q = 0; + while (1) { + X = o[(j + (q << 2)) >> 2] | 0; + r: do { + if (((X >> 1) | 0) != (t | 0)) { + n: do { + if (Y >>> 0 > 31) { + V = 0; + while (1) { + W = o[(G + (V << 2)) >> 2] | 0; + V = (V + 1) | 0; + if ((W ^ X) >>> 0 < 2) break; + if ((V | 0) >= (J | 0)) break n; + } + if ((W | 0) == ((X ^ 1) | 0)) break t; + else break r; + } + } while (0); + z = (z + 1) | 0; + } + } while (0); + q = (q + 1) | 0; + if ((q | 0) >= ((H >>> 5) | 0)) { + B = 28; + break; + } + } + } else B = 28; + } while (0); + if ((B | 0) == 28) { + B = 0; + if ((O | 0) >= (((o[N >> 2] | 0) + v) | 0)) { + e = 1; + break e; + } + X = o[M >> 2] | 0; + if (((X | 0) != -1) & ((z | 0) > (X | 0))) { + e = 1; + break e; + } else O = (O + 1) | 0; + } + _ = (_ + 1) | 0; + } while ((_ | 0) < (S | 0)); + } + F = (F + 1) | 0; + if ((F | 0) >= (Q | 0)) { + B = 32; + break; + } + } + } else { + b = 0; + B = 32; + } + } else { + Q = 0; + b = 0; + B = 32; + } + } while (0); + e: do { + if ((B | 0) == 32) { + n[((o[(e + 904) >> 2] | 0) + t) >> 0] = 1; + v = (e + 380) | 0; + D = ((o[v >> 2] | 0) + t) | 0; + if (n[D >> 0] | 0) { + X = (e + 200) | 0; + V = X; + V = ai(o[V >> 2] | 0, o[(V + 4) >> 2] | 0, -1, -1) | 0; + o[X >> 2] = V; + o[(X + 4) >> 2] = R; + } + n[D >> 0] = 0; + D = (e + 460) | 0; + if ( + !((o[(e + 476) >> 2] | 0) > (t | 0) + ? (o[((o[(e + 472) >> 2] | 0) + (t << 2)) >> 2] | 0) > -1 + : 0) + ) + B = 36; + if ((B | 0) == 36 ? (n[((o[v >> 2] | 0) + t) >> 0] | 0) != 0 : 0) or(D, t); + B = (e + 716) | 0; + o[B >> 2] = (o[B >> 2] | 0) + 1; + B = o[d >> 2] | 0; + if ((Q | 0) > (B | 0)) { + D = (e + 732) | 0; + if ((B | 0) > 0) { + m = (e + 544) | 0; + I = o[s >> 2] | 0; + x = (e + 736) | 0; + k = 0; + do { + S = ((o[m >> 2] | 0) + (o[(I + (k << 2)) >> 2] << 2)) | 0; + v = o[x >> 2] | 0; + if ((o[S >> 2] | 0) >>> 0 > 31) { + F = 0; + M = -1; + do { + X = (S + (F << 2) + 4) | 0; + o[E >> 2] = o[X >> 2]; + Hr(D, E); + M = ((o[X >> 2] >> 1) | 0) == (t | 0) ? (F + v) | 0 : M; + F = (F + 1) | 0; + } while ((F | 0) < (((o[S >> 2] | 0) >>> 5) | 0)); + } else M = -1; + X = o[D >> 2] | 0; + W = (X + (M << 2)) | 0; + V = o[W >> 2] | 0; + X = (X + (v << 2)) | 0; + o[W >> 2] = o[X >> 2]; + o[X >> 2] = V; + o[C >> 2] = (o[S >> 2] | 0) >>> 5; + Hr(D, C); + k = (k + 1) | 0; + } while ((k | 0) < (B | 0)); + } + o[E >> 2] = t << 1; + Hr(D, E); + o[C >> 2] = 1; + Hr(D, C); + } else { + k = (e + 732) | 0; + if (b) { + F = (e + 544) | 0; + x = o[i >> 2] | 0; + v = (e + 736) | 0; + M = 0; + do { + S = ((o[F >> 2] | 0) + (o[(x + (M << 2)) >> 2] << 2)) | 0; + D = o[v >> 2] | 0; + if ((o[S >> 2] | 0) >>> 0 > 31) { + N = 0; + K = -1; + do { + X = (S + (N << 2) + 4) | 0; + o[E >> 2] = o[X >> 2]; + Hr(k, E); + K = ((o[X >> 2] >> 1) | 0) == (t | 0) ? (N + D) | 0 : K; + N = (N + 1) | 0; + } while ((N | 0) < (((o[S >> 2] | 0) >>> 5) | 0)); + } else K = -1; + X = o[k >> 2] | 0; + W = (X + (K << 2)) | 0; + V = o[W >> 2] | 0; + X = (X + (D << 2)) | 0; + o[W >> 2] = o[X >> 2]; + o[X >> 2] = V; + o[C >> 2] = (o[S >> 2] | 0) >>> 5; + Hr(k, C); + M = (M + 1) | 0; + } while ((M | 0) < (Q | 0)); + } + o[I >> 2] = (t << 1) | 1; + Hr(k, I); + o[m >> 2] = 1; + Hr(k, m); + } + if ((o[y >> 2] | 0) > 0) { + C = 0; + do { + vr(e, o[((o[w >> 2] | 0) + (C << 2)) >> 2] | 0); + C = (C + 1) | 0; + } while ((C | 0) < (o[y >> 2] | 0)); + } + C = (e + 628) | 0; + t: do { + if (b) { + E = (e + 544) | 0; + w = o[i >> 2] | 0; + D = o[s >> 2] | 0; + if ((B | 0) > 0) y = 0; + else { + C = 0; + while (1) { + C = (C + 1) | 0; + if ((C | 0) >= (Q | 0)) break t; + } + } + do { + m = (w + (y << 2)) | 0; + I = 0; + do { + X = o[E >> 2] | 0; + if ( + br( + e, + (X + (o[m >> 2] << 2)) | 0, + (X + (o[(D + (I << 2)) >> 2] << 2)) | 0, + t, + C + ) | 0 + ? !(Br(e, C) | 0) + : 0 + ) { + e = 0; + break e; + } + I = (I + 1) | 0; + } while ((I | 0) < (B | 0)); + y = (y + 1) | 0; + } while ((y | 0) < (Q | 0)); + } + } while (0); + C = o[h >> 2] | 0; + h = (C + ((t * 12) | 0)) | 0; + E = o[h >> 2] | 0; + if (E) { + o[(C + ((t * 12) | 0) + 4) >> 2] = 0; + _n(E); + o[h >> 2] = 0; + o[(C + ((t * 12) | 0) + 8) >> 2] = 0; + } + h = (e + 412) | 0; + t = t << 1; + E = o[h >> 2] | 0; + C = (E + ((t * 12) | 0) + 4) | 0; + if ( + (o[C >> 2] | 0) == 0 + ? ((u = (E + ((t * 12) | 0)) | 0), (c = o[u >> 2] | 0), (c | 0) != 0) + : 0 + ) { + o[C >> 2] = 0; + _n(c); + o[u >> 2] = 0; + o[(E + ((t * 12) | 0) + 8) >> 2] = 0; + E = o[h >> 2] | 0; + } + c = t | 1; + u = (E + ((c * 12) | 0) + 4) | 0; + if ( + (o[u >> 2] | 0) == 0 + ? ((a = (E + ((c * 12) | 0)) | 0), (A = o[a >> 2] | 0), (A | 0) != 0) + : 0 + ) { + o[u >> 2] = 0; + _n(A); + o[a >> 2] = 0; + o[(E + ((c * 12) | 0) + 8) >> 2] = 0; + } + e = kr(e, 0) | 0; + D = o[s >> 2] | 0; + } + } while (0); + if (D) { + o[d >> 2] = 0; + _n(D); + o[s >> 2] = 0; + o[p >> 2] = 0; + } + s = o[i >> 2] | 0; + if (!s) { + l = r; + return e | 0; + } + o[g >> 2] = 0; + _n(s); + o[i >> 2] = 0; + o[f >> 2] = 0; + l = r; + return e | 0; + } + function Nr(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0, + C = 0, + E = 0, + I = 0; + r = l; + if (!(n[(e + 724) >> 0] | 0)) { + l = r; + return; + } + u = (e + 540) | 0; + if ((o[u >> 2] | 0) > 0) { + a = (e + 760) | 0; + i = (e + 804) | 0; + s = (e + 776) | 0; + c = (e + 544) | 0; + A = 0; + do { + g = o[a >> 2] | 0; + h = (g + ((A * 12) | 0) + 4) | 0; + p = o[h >> 2] | 0; + if ((p | 0) > 0) { + g = o[(g + ((A * 12) | 0)) >> 2] | 0; + d = 0; + f = 0; + do { + C = o[(g + (d << 2)) >> 2] | 0; + if (((o[((o[o[i >> 2] >> 2] | 0) + (C << 2)) >> 2] & 3) | 0) != 1) { + o[(g + (f << 2)) >> 2] = C; + p = o[h >> 2] | 0; + f = (f + 1) | 0; + } + d = (d + 1) | 0; + } while ((d | 0) < (p | 0)); + } else { + d = 0; + f = 0; + } + g = (d - f) | 0; + if ((g | 0) > 0) o[h >> 2] = p - g; + n[((o[s >> 2] | 0) + A) >> 0] = 0; + g = o[a >> 2] | 0; + h = (g + ((A * 12) | 0) + 4) | 0; + if ((o[h >> 2] | 0) > 0) { + C = (g + ((A * 12) | 0)) | 0; + p = 0; + do { + g = ((o[C >> 2] | 0) + (p << 2)) | 0; + f = o[g >> 2] | 0; + d = o[c >> 2] | 0; + E = (d + (f << 2)) | 0; + if (!(o[E >> 2] & 16)) { + I = dr(t, E) | 0; + o[g >> 2] = I; + o[E >> 2] = o[E >> 2] | 16; + o[(d + ((f + 1) << 2)) >> 2] = I; + } else o[g >> 2] = o[(d + ((f + 1) << 2)) >> 2]; + p = (p + 1) | 0; + } while ((p | 0) < (o[h >> 2] | 0)); + } + A = (A + 1) | 0; + } while ((A | 0) < (o[u >> 2] | 0)); + } + i = (e + 856) | 0; + I = o[(e + 872) >> 2] | 0; + s = (e + 868) | 0; + h = o[s >> 2] | 0; + c = (I - h) | 0; + if ((I | 0) < (h | 0)) c = ((o[(e + 860) >> 2] | 0) + c) | 0; + e: do { + if ((c | 0) > 0) { + A = (e + 860) | 0; + a = (e + 544) | 0; + while (1) { + u = o[((o[i >> 2] | 0) + (h << 2)) >> 2] | 0; + g = (h + 1) | 0; + o[s >> 2] = (g | 0) == (o[A >> 2] | 0) ? 0 : g; + g = o[a >> 2] | 0; + f = (g + (u << 2)) | 0; + h = o[f >> 2] | 0; + if (!(h & 3)) { + if (!(h & 16)) { + I = dr(t, f) | 0; + o[f >> 2] = o[f >> 2] | 16; + o[(g + ((u + 1) << 2)) >> 2] = I; + u = I; + } else u = o[(g + ((u + 1) << 2)) >> 2] | 0; + Jr(i, u); + } + c = (c + -1) | 0; + if ((c | 0) <= 0) break e; + h = o[s >> 2] | 0; + } + } else a = (e + 544) | 0; + } while (0); + e = (e + 928) | 0; + i = o[e >> 2] | 0; + A = o[a >> 2] | 0; + s = (A + (i << 2)) | 0; + if (!(o[s >> 2] & 16)) { + I = dr(t, s) | 0; + o[e >> 2] = I; + o[s >> 2] = o[s >> 2] | 16; + o[(A + ((i + 1) << 2)) >> 2] = I; + l = r; + return; + } else { + o[e >> 2] = o[(A + ((i + 1) << 2)) >> 2]; + l = r; + return; + } + } + function Rr(e) { + e = e | 0; + var t = 0, + r = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0; + A = l; + l = (l + 32) | 0; + u = A; + t = (A + 8) | 0; + r = (e + 544) | 0; + i = (e + 548) | 0; + s = (e + 556) | 0; + a = ((o[i >> 2] | 0) - (o[s >> 2] | 0)) | 0; + o[(t + 0) >> 2] = 0; + o[(t + 4) >> 2] = 0; + o[(t + 8) >> 2] = 0; + o[(t + 12) >> 2] = 0; + er(t, a); + a = (t + 16) | 0; + c = (e + 560) | 0; + n[a >> 0] = n[c >> 0] | 0; + Nr(e, t); + zt(e, t); + if ((o[(e + 44) >> 2] | 0) > 1) { + h = o[(t + 4) >> 2] << 2; + o[u >> 2] = o[i >> 2] << 2; + o[(u + 4) >> 2] = h; + _e(3608, u | 0) | 0; + } + n[c >> 0] = n[a >> 0] | 0; + a = o[r >> 2] | 0; + if (a) _n(a); + o[r >> 2] = o[t >> 2]; + o[i >> 2] = o[(t + 4) >> 2]; + o[(e + 552) >> 2] = o[(t + 8) >> 2]; + o[s >> 2] = o[(t + 12) >> 2]; + l = A; + return; + } + function Kr() { + var e = 0, + t = 0, + r = 0; + e = l; + l = (l + 16) | 0; + t = e; + n[2608] = 0; + n[2616] = 1; + n[2624] = 2; + Ct(2632, 2656, 2664, 3744, 3752); + o[658] = 160; + n[2652] = 0; + Ct(2704, 2728, 2736, 3744, 3752); + o[676] = 160; + n[2724] = 0; + Ct(2784, 2808, 2816, 3744, 3752); + o[696] = 160; + n[2804] = 1; + Ct(2848, 2880, 2888, 3744, 3736); + o[712] = 280; + r = 2868 | 0; + o[r >> 2] = -2147483648; + o[(r + 4) >> 2] = 2147483647; + o[719] = 0; + Ct(2960, 2992, 3e3, 3744, 3736); + o[740] = 280; + r = 2980 | 0; + o[r >> 2] = -1; + o[(r + 4) >> 2] = 2147483647; + o[747] = 20; + Ct(3112, 3144, 3152, 3744, 3736); + o[778] = 280; + r = 3132 | 0; + o[r >> 2] = -1; + o[(r + 4) >> 2] = 2147483647; + o[785] = 1e3; + Ct(3240, 3296, 3312, 3744, 3720); + o[810] = 2168; + u[408] = 0.0; + u[409] = Q; + n[3280] = 0; + n[3281] = 0; + i[1641] = i[(t + 0) >> 1] | 0; + i[1642] = i[(t + 2) >> 1] | 0; + i[1643] = i[(t + 4) >> 1] | 0; + u[411] = 0.5; + l = e; + return; + } + function Lr(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + n = 0, + i = 0, + s = 0; + r = l; + o[e >> 2] = 0; + n = (e + 4) | 0; + o[n >> 2] = 0; + i = (e + 8) | 0; + o[i >> 2] = 0; + if ((t | 0) <= 0) { + l = r; + return; + } + s = (t + 1) & -2; + s = (s | 0) > 2 ? s : 2; + o[i >> 2] = s; + i = On(0, s << 2) | 0; + o[e >> 2] = i; + if ((i | 0) == 0 ? (o[(Ye() | 0) >> 2] | 0) == 12 : 0) ze(Qe(1) | 0, 48, 0); + e = o[n >> 2] | 0; + if ((e | 0) < (t | 0)) + do { + s = (i + (e << 2)) | 0; + if (s) o[s >> 2] = 0; + e = (e + 1) | 0; + } while ((e | 0) != (t | 0)); + o[n >> 2] = t; + l = r; + return; + } + function Tr(e) { + e = e | 0; + var t = 0, + r = 0, + n = 0, + i = 0, + s = 0, + A = 0, + a = 0; + t = l; + n = (e + 32) | 0; + r = o[n >> 2] | 0; + if (r) { + o[(e + 36) >> 2] = 0; + _n(r); + o[n >> 2] = 0; + o[(e + 40) >> 2] = 0; + } + n = (e + 16) | 0; + r = o[n >> 2] | 0; + if (r) { + o[(e + 20) >> 2] = 0; + _n(r); + o[n >> 2] = 0; + o[(e + 24) >> 2] = 0; + } + n = o[e >> 2] | 0; + if (!n) { + l = t; + return; + } + r = (e + 4) | 0; + s = o[r >> 2] | 0; + if ((s | 0) > 0) { + i = 0; + do { + a = (n + ((i * 12) | 0)) | 0; + A = o[a >> 2] | 0; + if (A) { + o[(n + ((i * 12) | 0) + 4) >> 2] = 0; + _n(A); + o[a >> 2] = 0; + o[(n + ((i * 12) | 0) + 8) >> 2] = 0; + n = o[e >> 2] | 0; + s = o[r >> 2] | 0; + } + i = (i + 1) | 0; + } while ((i | 0) < (s | 0)); + } + o[r >> 2] = 0; + _n(n); + o[e >> 2] = 0; + o[(e + 8) >> 2] = 0; + l = t; + return; + } + function Pr(e, t, r) { + e = e | 0; + t = t | 0; + r = r | 0; + var n = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0; + n = l; + t = o[t >> 2] | 0; + s = (t + 1) | 0; + i = (e + 4) | 0; + if ((o[i >> 2] | 0) >= (s | 0)) { + c = o[e >> 2] | 0; + c = (c + (t << 2)) | 0; + o[c >> 2] = r; + l = n; + return; + } + A = (e + 8) | 0; + c = o[A >> 2] | 0; + if ((c | 0) < (s | 0)) { + u = (t + 2 - c) & -2; + a = ((c >> 1) + 2) & -2; + a = (u | 0) > (a | 0) ? u : a; + if ((a | 0) > ((2147483647 - c) | 0)) { + u = Qe(1) | 0; + ze(u | 0, 48, 0); + } + h = o[e >> 2] | 0; + u = (a + c) | 0; + o[A >> 2] = u; + u = On(h, u << 2) | 0; + o[e >> 2] = u; + if ((u | 0) == 0 ? (o[(Ye() | 0) >> 2] | 0) == 12 : 0) { + h = Qe(1) | 0; + ze(h | 0, 48, 0); + } + } + c = o[i >> 2] | 0; + if ((c | 0) < (s | 0)) { + A = o[e >> 2] | 0; + do { + a = (A + (c << 2)) | 0; + if (a) o[a >> 2] = 0; + c = (c + 1) | 0; + } while ((c | 0) != (s | 0)); + } + o[i >> 2] = s; + h = o[e >> 2] | 0; + h = (h + (t << 2)) | 0; + o[h >> 2] = r; + l = n; + return; + } + function Ur(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0; + r = l; + c = o[t >> 2] | 0; + s = (c + 1) | 0; + i = (e + 4) | 0; + if ((o[i >> 2] | 0) < (s | 0)) { + a = (e + 8) | 0; + A = o[a >> 2] | 0; + if ((A | 0) < (s | 0)) { + u = (c + 2 - A) & -2; + c = ((A >> 1) + 2) & -2; + c = (u | 0) > (c | 0) ? u : c; + if ((c | 0) > ((2147483647 - A) | 0)) { + u = Qe(1) | 0; + ze(u | 0, 48, 0); + } + h = o[e >> 2] | 0; + u = (c + A) | 0; + o[a >> 2] = u; + u = On(h, (u * 12) | 0) | 0; + o[e >> 2] = u; + if ((u | 0) == 0 ? (o[(Ye() | 0) >> 2] | 0) == 12 : 0) { + h = Qe(1) | 0; + ze(h | 0, 48, 0); + } + } + a = o[i >> 2] | 0; + if ((a | 0) < (s | 0)) { + A = o[e >> 2] | 0; + do { + c = (A + ((a * 12) | 0)) | 0; + if (c) { + o[c >> 2] = 0; + o[(A + ((a * 12) | 0) + 4) >> 2] = 0; + o[(A + ((a * 12) | 0) + 8) >> 2] = 0; + } + a = (a + 1) | 0; + } while ((a | 0) != (s | 0)); + } + o[i >> 2] = s; + A = o[t >> 2] | 0; + } else A = c; + i = o[e >> 2] | 0; + if (o[(i + ((A * 12) | 0)) >> 2] | 0) { + o[(i + ((A * 12) | 0) + 4) >> 2] = 0; + A = o[t >> 2] | 0; + } + t = (e + 16) | 0; + i = (A + 1) | 0; + s = (e + 20) | 0; + if ((o[s >> 2] | 0) >= (i | 0)) { + l = r; + return; + } + a = (e + 24) | 0; + e = o[a >> 2] | 0; + if ((e | 0) < (i | 0)) { + h = (A + 2 - e) & -2; + A = ((e >> 1) + 2) & -2; + A = (h | 0) > (A | 0) ? h : A; + if ((A | 0) > ((2147483647 - e) | 0)) { + h = Qe(1) | 0; + ze(h | 0, 48, 0); + } + u = o[t >> 2] | 0; + h = (A + e) | 0; + o[a >> 2] = h; + h = On(u, h) | 0; + o[t >> 2] = h; + if ((h | 0) == 0 ? (o[(Ye() | 0) >> 2] | 0) == 12 : 0) { + h = Qe(1) | 0; + ze(h | 0, 48, 0); + } + } + e = o[s >> 2] | 0; + if ((e | 0) < (i | 0)) + do { + n[((o[t >> 2] | 0) + e) >> 0] = 0; + e = (e + 1) | 0; + } while ((e | 0) != (i | 0)); + o[s >> 2] = i; + l = r; + return; + } + function _r(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + n = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0, + C = 0; + r = l; + l = (l + 16) | 0; + s = r; + o[s >> 2] = t; + i = (e + 12) | 0; + n = (t + 1) | 0; + A = (e + 16) | 0; + if ((o[A >> 2] | 0) < (n | 0)) { + c = (e + 20) | 0; + a = o[c >> 2] | 0; + if ((a | 0) < (n | 0)) { + h = (t + 2 - a) & -2; + u = ((a >> 1) + 2) & -2; + u = (h | 0) > (u | 0) ? h : u; + if ((u | 0) > ((2147483647 - a) | 0)) { + h = Qe(1) | 0; + ze(h | 0, 48, 0); + } + g = o[i >> 2] | 0; + h = (u + a) | 0; + o[c >> 2] = h; + h = On(g, h << 2) | 0; + o[i >> 2] = h; + if ((h | 0) == 0 ? (o[(Ye() | 0) >> 2] | 0) == 12 : 0) { + g = Qe(1) | 0; + ze(g | 0, 48, 0); + } + } + a = o[A >> 2] | 0; + if ((n | 0) > (a | 0)) + oi(((o[i >> 2] | 0) + (a << 2)) | 0, -1, ((n - a) << 2) | 0) | 0; + o[A >> 2] = n; + } + o[((o[i >> 2] | 0) + (t << 2)) >> 2] = o[(e + 4) >> 2]; + Ar(e, s); + n = o[i >> 2] | 0; + a = o[(n + (t << 2)) >> 2] | 0; + t = o[e >> 2] | 0; + i = o[(t + (a << 2)) >> 2] | 0; + if (!a) { + h = 0; + g = (t + (h << 2)) | 0; + o[g >> 2] = i; + g = (n + (i << 2)) | 0; + o[g >> 2] = h; + l = r; + return; + } + e = (e + 28) | 0; + s = i << 1; + A = s | 1; + while (1) { + h = a; + a = (a + -1) >> 1; + u = (t + (a << 2)) | 0; + c = o[u >> 2] | 0; + C = o[o[e >> 2] >> 2] | 0; + f = o[(C + (s << 2)) >> 2] | 0; + d = o[(C + (A << 2)) >> 2] | 0; + f = + Ci( + d | 0, + ((((d | 0) < 0) << 31) >> 31) | 0, + f | 0, + ((((f | 0) < 0) << 31) >> 31) | 0 + ) | 0; + d = R; + p = c << 1; + g = o[(C + (p << 2)) >> 2] | 0; + p = o[(C + ((p | 1) << 2)) >> 2] | 0; + g = + Ci( + p | 0, + ((((p | 0) < 0) << 31) >> 31) | 0, + g | 0, + ((((g | 0) < 0) << 31) >> 31) | 0 + ) | 0; + p = R; + if (!((d >>> 0 < p >>> 0) | (((d | 0) == (p | 0)) & (f >>> 0 < g >>> 0)))) { + e = 14; + break; + } + o[(t + (h << 2)) >> 2] = c; + o[(n + (o[u >> 2] << 2)) >> 2] = h; + if (!a) { + h = 0; + e = 14; + break; + } + } + if ((e | 0) == 14) { + C = (t + (h << 2)) | 0; + o[C >> 2] = i; + C = (n + (i << 2)) | 0; + o[C >> 2] = h; + l = r; + return; + } + } + function Or(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0, + C = 0, + E = 0, + I = 0, + m = 0; + r = l; + A = (e + 824) | 0; + u = (o[(e + 840) >> 2] | 0) > (t | 0); + if (u ? (o[((o[(e + 836) >> 2] | 0) + (t << 2)) >> 2] | 0) > -1 : 0) a = 7; + else a = 3; + do { + if ((a | 0) == 3) { + if (n[((o[(e + 876) >> 2] | 0) + t) >> 0] | 0) { + l = r; + return; + } + if (n[((o[(e + 904) >> 2] | 0) + t) >> 0] | 0) { + l = r; + return; + } + f = n[((o[(e + 332) >> 2] | 0) + t) >> 0] | 0; + g = n[2624] | 0; + p = g & 255; + if ((((p >>> 1) ^ 1) & ((f << 24) >> 24 == (g << 24) >> 24)) | (f & 2 & p)) + if (u) { + a = 7; + break; + } else break; + else { + l = r; + return; + } + } + } while (0); + if ( + (a | 0) == 7 + ? ((i = o[(e + 836) >> 2] | 0), + (s = (i + (t << 2)) | 0), + (c = o[s >> 2] | 0), + (c | 0) > -1) + : 0 + ) { + t = o[A >> 2] | 0; + a = o[(t + (c << 2)) >> 2] | 0; + e: do { + if (!c) f = 0; + else { + u = (e + 852) | 0; + h = a << 1; + e = h | 1; + while (1) { + f = c; + c = (c + -1) >> 1; + p = (t + (c << 2)) | 0; + g = o[p >> 2] | 0; + m = o[o[u >> 2] >> 2] | 0; + C = o[(m + (h << 2)) >> 2] | 0; + I = o[(m + (e << 2)) >> 2] | 0; + C = + Ci( + I | 0, + ((((I | 0) < 0) << 31) >> 31) | 0, + C | 0, + ((((C | 0) < 0) << 31) >> 31) | 0 + ) | 0; + I = R; + E = g << 1; + d = o[(m + (E << 2)) >> 2] | 0; + E = o[(m + ((E | 1) << 2)) >> 2] | 0; + d = + Ci( + E | 0, + ((((E | 0) < 0) << 31) >> 31) | 0, + d | 0, + ((((d | 0) < 0) << 31) >> 31) | 0 + ) | 0; + E = R; + if (!((I >>> 0 < E >>> 0) | (((I | 0) == (E | 0)) & (C >>> 0 < d >>> 0)))) + break e; + o[(t + (f << 2)) >> 2] = g; + o[(i + (o[p >> 2] << 2)) >> 2] = f; + if (!c) { + f = 0; + break; + } + } + } + } while (0); + o[(t + (f << 2)) >> 2] = a; + o[(i + (a << 2)) >> 2] = f; + jr(A, o[s >> 2] | 0); + l = r; + return; + } + _r(A, t); + l = r; + return; + } + function jr(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + n = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0, + C = 0, + E = 0, + I = 0, + m = 0; + r = l; + n = o[e >> 2] | 0; + i = o[(n + (t << 2)) >> 2] | 0; + h = (t << 1) | 1; + u = (e + 4) | 0; + f = o[u >> 2] | 0; + if ((h | 0) >= (f | 0)) { + p = t; + d = (e + 12) | 0; + f = (n + (p << 2)) | 0; + o[f >> 2] = i; + d = o[d >> 2] | 0; + d = (d + (i << 2)) | 0; + o[d >> 2] = p; + l = r; + return; + } + A = (e + 28) | 0; + c = i << 1; + a = c | 1; + e = (e + 12) | 0; + while (1) { + g = ((t << 1) + 2) | 0; + if ((g | 0) < (f | 0)) { + p = o[(n + (g << 2)) >> 2] | 0; + d = o[(n + (h << 2)) >> 2] | 0; + m = p << 1; + f = o[o[A >> 2] >> 2] | 0; + E = o[(f + (m << 2)) >> 2] | 0; + m = o[(f + ((m | 1) << 2)) >> 2] | 0; + E = + Ci( + m | 0, + ((((m | 0) < 0) << 31) >> 31) | 0, + E | 0, + ((((E | 0) < 0) << 31) >> 31) | 0 + ) | 0; + m = R; + I = d << 1; + C = o[(f + (I << 2)) >> 2] | 0; + I = o[(f + ((I | 1) << 2)) >> 2] | 0; + C = + Ci( + I | 0, + ((((I | 0) < 0) << 31) >> 31) | 0, + C | 0, + ((((C | 0) < 0) << 31) >> 31) | 0 + ) | 0; + I = R; + if (!((m >>> 0 < I >>> 0) | (((m | 0) == (I | 0)) & (E >>> 0 < C >>> 0)))) { + p = d; + s = 7; + } + } else { + p = o[(n + (h << 2)) >> 2] | 0; + f = o[o[A >> 2] >> 2] | 0; + s = 7; + } + if ((s | 0) == 7) { + s = 0; + g = h; + } + C = p << 1; + I = o[(f + (C << 2)) >> 2] | 0; + C = o[(f + ((C | 1) << 2)) >> 2] | 0; + I = + Ci( + C | 0, + ((((C | 0) < 0) << 31) >> 31) | 0, + I | 0, + ((((I | 0) < 0) << 31) >> 31) | 0 + ) | 0; + C = R; + m = o[(f + (c << 2)) >> 2] | 0; + E = o[(f + (a << 2)) >> 2] | 0; + m = + Ci( + E | 0, + ((((E | 0) < 0) << 31) >> 31) | 0, + m | 0, + ((((m | 0) < 0) << 31) >> 31) | 0 + ) | 0; + E = R; + if (!((C >>> 0 < E >>> 0) | (((C | 0) == (E | 0)) & (I >>> 0 < m >>> 0)))) { + s = 10; + break; + } + o[(n + (t << 2)) >> 2] = p; + o[((o[e >> 2] | 0) + (p << 2)) >> 2] = t; + h = (g << 1) | 1; + f = o[u >> 2] | 0; + if ((h | 0) >= (f | 0)) { + t = g; + s = 10; + break; + } else t = g; + } + if ((s | 0) == 10) { + m = (n + (t << 2)) | 0; + o[m >> 2] = i; + m = o[e >> 2] | 0; + m = (m + (i << 2)) | 0; + o[m >> 2] = t; + l = r; + return; + } + } + function Yr(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + n = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0; + r = l; + A = o[e >> 2] | 0; + if (A) { + n = (e + 4) | 0; + i = o[n >> 2] | 0; + e: do { + if ((i | 0) > 0) { + s = 0; + while (1) { + a = (A + ((s * 12) | 0)) | 0; + c = o[a >> 2] | 0; + if (c) { + o[(A + ((s * 12) | 0) + 4) >> 2] = 0; + _n(c); + o[a >> 2] = 0; + o[(A + ((s * 12) | 0) + 8) >> 2] = 0; + i = o[n >> 2] | 0; + } + s = (s + 1) | 0; + if ((s | 0) >= (i | 0)) break e; + A = o[e >> 2] | 0; + } + } + } while (0); + o[n >> 2] = 0; + if (t) { + _n(o[e >> 2] | 0); + o[e >> 2] = 0; + o[(e + 8) >> 2] = 0; + } + } + n = (e + 16) | 0; + i = o[n >> 2] | 0; + if ((i | 0) != 0 ? ((o[(e + 20) >> 2] = 0), t) : 0) { + _n(i); + o[n >> 2] = 0; + o[(e + 24) >> 2] = 0; + } + i = (e + 32) | 0; + n = o[i >> 2] | 0; + if (!n) { + l = r; + return; + } + o[(e + 36) >> 2] = 0; + if (!t) { + l = r; + return; + } + _n(n); + o[i >> 2] = 0; + o[(e + 40) >> 2] = 0; + l = r; + return; + } + function Gr(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + n = 0, + i = 0, + s = 0, + A = 0, + a = 0; + n = l; + i = o[e >> 2] | 0; + r = (e + 4) | 0; + if (i) { + o[r >> 2] = 0; + if (t) { + _n(i); + o[e >> 2] = 0; + o[(e + 8) >> 2] = 0; + i = 0; + } + } else i = 0; + if ((o[r >> 2] | 0) >= 1) { + A = (e + 16) | 0; + o[A >> 2] = 0; + A = (e + 12) | 0; + o[A >> 2] = 0; + l = n; + return; + } + A = (e + 8) | 0; + s = o[A >> 2] | 0; + if ((s | 0) < 1) { + a = (2 - s) & -2; + t = ((s >> 1) + 2) & -2; + t = (a | 0) > (t | 0) ? a : t; + if ((t | 0) > ((2147483647 - s) | 0)) { + a = Qe(1) | 0; + ze(a | 0, 48, 0); + } + a = (t + s) | 0; + o[A >> 2] = a; + i = On(i, a << 2) | 0; + o[e >> 2] = i; + if ((i | 0) == 0 ? (o[(Ye() | 0) >> 2] | 0) == 12 : 0) { + a = Qe(1) | 0; + ze(a | 0, 48, 0); + } + } + t = o[r >> 2] | 0; + if ((t | 0) < 1) + while (1) { + s = (i + (t << 2)) | 0; + if (s) o[s >> 2] = 0; + if (!t) break; + else t = (t + 1) | 0; + } + o[r >> 2] = 1; + a = (e + 16) | 0; + o[a >> 2] = 0; + a = (e + 12) | 0; + o[a >> 2] = 0; + l = n; + return; + } + function Jr(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + n = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0; + n = l; + l = (l + 16) | 0; + r = n; + i = (e + 16) | 0; + a = o[i >> 2] | 0; + o[i >> 2] = a + 1; + o[((o[e >> 2] | 0) + (a << 2)) >> 2] = t; + a = o[i >> 2] | 0; + t = (e + 4) | 0; + A = o[t >> 2] | 0; + if ((a | 0) == (A | 0)) { + o[i >> 2] = 0; + a = 0; + } + s = (e + 12) | 0; + if ((o[s >> 2] | 0) != (a | 0)) { + l = n; + return; + } + Lr(r, (((A * 3) | 0) + 1) >> 1); + u = o[s >> 2] | 0; + h = o[t >> 2] | 0; + if ((u | 0) < (h | 0)) { + a = o[e >> 2] | 0; + c = o[r >> 2] | 0; + h = 0; + while (1) { + A = (h + 1) | 0; + o[(c + (h << 2)) >> 2] = o[(a + (u << 2)) >> 2]; + u = (u + 1) | 0; + h = o[t >> 2] | 0; + if ((u | 0) >= (h | 0)) { + c = A; + break; + } else h = A; + } + } else c = 0; + A = o[e >> 2] | 0; + if ((o[i >> 2] | 0) > 0) { + a = o[r >> 2] | 0; + u = 0; + while (1) { + o[(a + (c << 2)) >> 2] = o[(A + (u << 2)) >> 2]; + u = (u + 1) | 0; + if ((u | 0) >= (o[i >> 2] | 0)) break; + else c = (c + 1) | 0; + } + h = o[t >> 2] | 0; + } + o[s >> 2] = 0; + o[i >> 2] = h; + if (!A) i = (e + 8) | 0; + else { + o[t >> 2] = 0; + _n(A); + o[e >> 2] = 0; + i = (e + 8) | 0; + o[i >> 2] = 0; + } + o[e >> 2] = o[r >> 2]; + u = (r + 4) | 0; + o[t >> 2] = o[u >> 2]; + h = (r + 8) | 0; + o[i >> 2] = o[h >> 2]; + o[r >> 2] = 0; + o[u >> 2] = 0; + o[h >> 2] = 0; + l = n; + return; + } + function Hr(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + n = 0, + i = 0, + s = 0, + A = 0, + a = 0; + r = l; + n = (e + 4) | 0; + i = o[n >> 2] | 0; + s = (e + 8) | 0; + A = o[s >> 2] | 0; + if (((i | 0) == (A | 0)) & ((A | 0) < ((i + 1) | 0))) { + A = ((i >> 1) + 2) & -2; + A = (A | 0) < 2 ? 2 : A; + if ((A | 0) > ((2147483647 - i) | 0)) { + A = Qe(1) | 0; + ze(A | 0, 48, 0); + } + a = o[e >> 2] | 0; + i = (A + i) | 0; + o[s >> 2] = i; + i = On(a, i << 2) | 0; + o[e >> 2] = i; + if ((i | 0) == 0 ? (o[(Ye() | 0) >> 2] | 0) == 12 : 0) { + a = Qe(1) | 0; + ze(a | 0, 48, 0); + } + } else i = o[e >> 2] | 0; + a = o[n >> 2] | 0; + o[n >> 2] = a + 1; + n = (i + (a << 2)) | 0; + if (!n) { + l = r; + return; + } + o[n >> 2] = o[t >> 2]; + l = r; + return; + } + function qr() { + var e = 0, + t = 0; + t = l; + Ue(3864) | 0; + e = cn(936) | 0; + Cr(e); + l = t; + return e | 0; + } + function zr(e) { + e = e | 0; + var t = 0; + t = l; + if (!e) { + l = t; + return; + } + ji[o[((o[e >> 2] | 0) + 4) >> 2] & 31](e); + l = t; + return; + } + function Wr() { + var e = 0, + t = 0, + r = 0; + e = l; + l = (l + 16) | 0; + t = e; + r = cn(936) | 0; + Cr(r); + o[964] = r; + wr(r, 1) | 0; + r = o[964] | 0; + n[(t + 0) >> 0] = n[3840] | 0; + mr(r, t, 1) | 0; + l = e; + return; + } + function Vr(e) { + e = e | 0; + var t = 0, + r = 0, + i = 0; + t = l; + l = (l + 16) | 0; + r = t; + if ((o[962] | 0) >= (e | 0)) { + l = t; + return; + } + do { + i = o[964] | 0; + n[(r + 0) >> 0] = n[3840] | 0; + mr(i, r, 1) | 0; + i = ((o[962] | 0) + 1) | 0; + o[962] = i; + } while ((i | 0) < (e | 0)); + l = t; + return; + } + function Xr(e) { + e = e | 0; + var t = 0, + r = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0; + s = l; + l = (l + 32) | 0; + A = (s + 16) | 0; + r = (s + 4) | 0; + a = s; + o[r >> 2] = 0; + i = (r + 4) | 0; + o[i >> 2] = 0; + t = (r + 8) | 0; + o[t >> 2] = 0; + c = o[e >> 2] | 0; + if (c) + do { + u = (c | 0) < 0 ? (0 - c) | 0 : c; + if ((o[962] | 0) < (u | 0)) + do { + h = o[964] | 0; + n[(A + 0) >> 0] = n[3840] | 0; + mr(h, A, 1) | 0; + h = ((o[962] | 0) + 1) | 0; + o[962] = h; + } while ((h | 0) < (u | 0)); + o[a >> 2] = (u << 1) | (c >>> 31); + sr(r, a); + e = (e + 4) | 0; + c = o[e >> 2] | 0; + } while ((c | 0) != 0); + a = o[964] | 0; + A = (a + 628) | 0; + sn(r, A); + A = Br(a, A) | 0; + a = o[r >> 2] | 0; + if (!a) { + l = s; + return A | 0; + } + o[i >> 2] = 0; + _n(a); + o[r >> 2] = 0; + o[t >> 2] = 0; + l = s; + return A | 0; + } + function Zr() { + var e = 0, + t = 0, + r = 0, + i = 0; + t = l; + l = (l + 16) | 0; + e = t; + r = o[964] | 0; + i = (r + 664) | 0; + o[(i + 0) >> 2] = -1; + o[(i + 4) >> 2] = -1; + o[(i + 8) >> 2] = -1; + o[(i + 12) >> 2] = -1; + if (o[(r + 304) >> 2] | 0) o[(r + 308) >> 2] = 0; + yr(e, r, 1, 0); + l = t; + return ((n[e >> 0] | 0) == 0) | 0; + } + function $r() { + return ((o[((o[964] | 0) + 4) >> 2] | 0) + 1) | 0; + } + function en() { + return o[962] | 0; + } + function tn(e) { + e = e | 0; + var t = 0, + r = 0, + i = 0, + s = 0, + A = 0, + a = 0; + t = l; + l = (l + 32) | 0; + A = (t + 16) | 0; + i = (t + 4) | 0; + a = t; + o[i >> 2] = 0; + r = (i + 4) | 0; + o[r >> 2] = 0; + s = (i + 8) | 0; + o[s >> 2] = 0; + o[a >> 2] = e << 1; + sr(i, a); + e = o[964] | 0; + a = (e + 664) | 0; + o[(a + 0) >> 2] = -1; + o[(a + 4) >> 2] = -1; + o[(a + 8) >> 2] = -1; + o[(a + 12) >> 2] = -1; + sn(i, (e + 304) | 0); + yr(A, e, 1, 0); + e = (n[A >> 0] | 0) == 0; + A = o[i >> 2] | 0; + if (!A) { + l = t; + return e | 0; + } + o[r >> 2] = 0; + _n(A); + o[i >> 2] = 0; + o[s >> 2] = 0; + l = t; + return e | 0; + } + function rn(e) { + e = e | 0; + var t = 0, + r = 0, + n = 0; + t = l; + l = (l + 16) | 0; + n = t; + r = o[964] | 0; + o[n >> 2] = (e << 1) | 1; + e = (r + 628) | 0; + if (o[e >> 2] | 0) o[(r + 632) >> 2] = 0; + sr(e, n); + Br(r, e) | 0; + l = t; + return; + } + function nn() { + return o[((o[964] | 0) + 36) >> 2] | 0; + } + function on() { + return o[((o[964] | 0) + 32) >> 2] | 0; + } + function sn(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + n = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0; + r = l; + A = o[t >> 2] | 0; + n = (t + 4) | 0; + if (!A) a = o[n >> 2] | 0; + else { + o[n >> 2] = 0; + a = 0; + } + n = (e + 4) | 0; + i = o[n >> 2] | 0; + s = (t + 4) | 0; + if ((a | 0) < (i | 0)) { + c = (t + 8) | 0; + a = o[c >> 2] | 0; + if ((a | 0) < (i | 0)) { + h = (i + 1 - a) & -2; + u = ((a >> 1) + 2) & -2; + u = (h | 0) > (u | 0) ? h : u; + if ((u | 0) > ((2147483647 - a) | 0)) { + h = Qe(1) | 0; + ze(h | 0, 48, 0); + } + h = (u + a) | 0; + o[c >> 2] = h; + A = On(A, h << 2) | 0; + o[t >> 2] = A; + if ((A | 0) == 0 ? (o[(Ye() | 0) >> 2] | 0) == 12 : 0) { + h = Qe(1) | 0; + ze(h | 0, 48, 0); + } + } + a = o[s >> 2] | 0; + e: do { + if ((a | 0) < (i | 0)) + while (1) { + A = (A + (a << 2)) | 0; + if (A) o[A >> 2] = 0; + a = (a + 1) | 0; + if ((a | 0) == (i | 0)) break e; + A = o[t >> 2] | 0; + } + } while (0); + o[s >> 2] = i; + i = o[n >> 2] | 0; + } + if ((i | 0) <= 0) { + l = r; + return; + } + t = o[t >> 2] | 0; + e = o[e >> 2] | 0; + i = 0; + do { + o[(t + (i << 2)) >> 2] = o[(e + (i << 2)) >> 2]; + i = (i + 1) | 0; + } while ((i | 0) < (o[n >> 2] | 0)); + l = r; + return; + } + function An(e, t) { + e = e | 0; + t = t | 0; + var r = 0; + r = l; + l = (l + 16) | 0; + o[r >> 2] = t; + t = o[E >> 2] | 0; + Be(t | 0, e | 0, r | 0) | 0; + qe(10, t | 0) | 0; + Xe(); + } + function an() { + var e = 0, + t = 0; + e = l; + l = (l + 16) | 0; + if (!(Pe(4064, 3) | 0)) { + t = Le(o[1014] | 0) | 0; + l = e; + return t | 0; + } else An(4072, e); + return 0; + } + function cn(e) { + e = e | 0; + var t = 0, + r = 0; + t = l; + e = (e | 0) == 0 ? 1 : e; + r = Un(e) | 0; + if (r) { + l = t; + return r | 0; + } + while (1) { + r = dn() | 0; + if (!r) { + e = 4; + break; + } + Ji[r & 3](); + r = Un(e) | 0; + if (r) { + e = 5; + break; + } + } + if ((e | 0) == 4) { + r = Qe(4) | 0; + o[r >> 2] = 4248; + ze(r | 0, 4296, 12); + } else if ((e | 0) == 5) { + l = t; + return r | 0; + } + return 0; + } + function un(e) { + e = e | 0; + var t = 0; + t = l; + _n(e); + l = t; + return; + } + function ln(e) { + e = e | 0; + var t = 0; + t = l; + un(e); + l = t; + return; + } + function hn(e) { + e = e | 0; + return; + } + function gn(e) { + e = e | 0; + return 4264; + } + function fn(e) { + e = e | 0; + var t = 0; + t = l; + l = (l + 16) | 0; + Ji[e & 3](); + An(4312, t); + } + function pn() { + var e = 0, + t = 0; + t = an() | 0; + if ( + ((t | 0) != 0 ? ((e = o[t >> 2] | 0), (e | 0) != 0) : 0) + ? ((t = (e + 48) | 0), + ((o[t >> 2] & -256) | 0) == 1126902528 + ? (o[(t + 4) >> 2] | 0) == 1129074247 + : 0) + : 0 + ) + fn(o[(e + 12) >> 2] | 0); + t = o[968] | 0; + o[968] = t + 0; + fn(t); + } + function dn() { + var e = 0; + e = o[1102] | 0; + o[1102] = e + 0; + return e | 0; + } + function Cn(e) { + e = e | 0; + return; + } + function En(e) { + e = e | 0; + return; + } + function In(e) { + e = e | 0; + return; + } + function mn(e) { + e = e | 0; + return; + } + function yn(e) { + e = e | 0; + return; + } + function wn(e) { + e = e | 0; + var t = 0; + t = l; + un(e); + l = t; + return; + } + function Bn(e) { + e = e | 0; + var t = 0; + t = l; + un(e); + l = t; + return; + } + function Qn(e, t, r) { + e = e | 0; + t = t | 0; + r = r | 0; + var n = 0, + i = 0, + s = 0, + A = 0; + n = l; + l = (l + 64) | 0; + i = n; + if ((e | 0) == (t | 0)) { + A = 1; + l = n; + return A | 0; + } + if (!t) { + A = 0; + l = n; + return A | 0; + } + t = Sn(t, 4504, 4560, 0) | 0; + if (!t) { + A = 0; + l = n; + return A | 0; + } + A = (i + 0) | 0; + s = (A + 56) | 0; + do { + o[A >> 2] = 0; + A = (A + 4) | 0; + } while ((A | 0) < (s | 0)); + o[i >> 2] = t; + o[(i + 8) >> 2] = e; + o[(i + 12) >> 2] = -1; + o[(i + 48) >> 2] = 1; + zi[o[((o[t >> 2] | 0) + 28) >> 2] & 3](t, i, o[r >> 2] | 0, 1); + if ((o[(i + 24) >> 2] | 0) != 1) { + A = 0; + l = n; + return A | 0; + } + o[r >> 2] = o[(i + 16) >> 2]; + A = 1; + l = n; + return A | 0; + } + function vn(e, t, r, i) { + e = e | 0; + t = t | 0; + r = r | 0; + i = i | 0; + var s = 0, + A = 0; + e = l; + s = (t + 16) | 0; + A = o[s >> 2] | 0; + if (!A) { + o[s >> 2] = r; + o[(t + 24) >> 2] = i; + o[(t + 36) >> 2] = 1; + l = e; + return; + } + if ((A | 0) != (r | 0)) { + A = (t + 36) | 0; + o[A >> 2] = (o[A >> 2] | 0) + 1; + o[(t + 24) >> 2] = 2; + n[(t + 54) >> 0] = 1; + l = e; + return; + } + r = (t + 24) | 0; + if ((o[r >> 2] | 0) != 2) { + l = e; + return; + } + o[r >> 2] = i; + l = e; + return; + } + function Dn(e, t, r, n) { + e = e | 0; + t = t | 0; + r = r | 0; + n = n | 0; + var i = 0; + i = l; + if ((o[(t + 8) >> 2] | 0) != (e | 0)) { + l = i; + return; + } + vn(0, t, r, n); + l = i; + return; + } + function bn(e, t, r, n) { + e = e | 0; + t = t | 0; + r = r | 0; + n = n | 0; + var i = 0; + i = l; + if ((e | 0) == (o[(t + 8) >> 2] | 0)) { + vn(0, t, r, n); + l = i; + return; + } else { + e = o[(e + 8) >> 2] | 0; + zi[o[((o[e >> 2] | 0) + 28) >> 2] & 3](e, t, r, n); + l = i; + return; + } + } + function Sn(e, t, r, s) { + e = e | 0; + t = t | 0; + r = r | 0; + s = s | 0; + var A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0; + A = l; + l = (l + 64) | 0; + a = A; + c = o[e >> 2] | 0; + u = (e + (o[(c + -8) >> 2] | 0)) | 0; + c = o[(c + -4) >> 2] | 0; + o[a >> 2] = r; + o[(a + 4) >> 2] = e; + o[(a + 8) >> 2] = t; + o[(a + 12) >> 2] = s; + g = (a + 16) | 0; + f = (a + 20) | 0; + t = (a + 24) | 0; + h = (a + 28) | 0; + s = (a + 32) | 0; + e = (a + 40) | 0; + p = (c | 0) == (r | 0); + d = (g + 0) | 0; + r = (d + 36) | 0; + do { + o[d >> 2] = 0; + d = (d + 4) | 0; + } while ((d | 0) < (r | 0)); + i[(g + 36) >> 1] = 0; + n[(g + 38) >> 0] = 0; + if (p) { + o[(a + 48) >> 2] = 1; + Hi[o[((o[c >> 2] | 0) + 20) >> 2] & 3](c, a, u, u, 1, 0); + d = (o[t >> 2] | 0) == 1 ? u : 0; + l = A; + return d | 0; + } + Oi[o[((o[c >> 2] | 0) + 24) >> 2] & 3](c, a, u, 1, 0); + a = o[(a + 36) >> 2] | 0; + if (!a) { + d = + ((o[e >> 2] | 0) == 1) & ((o[h >> 2] | 0) == 1) & ((o[s >> 2] | 0) == 1) + ? o[f >> 2] | 0 + : 0; + l = A; + return d | 0; + } else if ((a | 0) == 1) { + if ( + (o[t >> 2] | 0) != 1 + ? !(((o[e >> 2] | 0) == 0) & ((o[h >> 2] | 0) == 1) & ((o[s >> 2] | 0) == 1)) + : 0 + ) { + d = 0; + l = A; + return d | 0; + } + d = o[g >> 2] | 0; + l = A; + return d | 0; + } else { + d = 0; + l = A; + return d | 0; + } + return 0; + } + function kn(e, t, r, i, s) { + e = e | 0; + t = t | 0; + r = r | 0; + i = i | 0; + s = s | 0; + var A = 0; + e = l; + n[(t + 53) >> 0] = 1; + if ((o[(t + 4) >> 2] | 0) != (i | 0)) { + l = e; + return; + } + n[(t + 52) >> 0] = 1; + i = (t + 16) | 0; + A = o[i >> 2] | 0; + if (!A) { + o[i >> 2] = r; + o[(t + 24) >> 2] = s; + o[(t + 36) >> 2] = 1; + if (!((s | 0) == 1 ? (o[(t + 48) >> 2] | 0) == 1 : 0)) { + l = e; + return; + } + n[(t + 54) >> 0] = 1; + l = e; + return; + } + if ((A | 0) != (r | 0)) { + A = (t + 36) | 0; + o[A >> 2] = (o[A >> 2] | 0) + 1; + n[(t + 54) >> 0] = 1; + l = e; + return; + } + r = (t + 24) | 0; + i = o[r >> 2] | 0; + if ((i | 0) == 2) o[r >> 2] = s; + else s = i; + if (!((s | 0) == 1 ? (o[(t + 48) >> 2] | 0) == 1 : 0)) { + l = e; + return; + } + n[(t + 54) >> 0] = 1; + l = e; + return; + } + function xn(e, t, r, i, s) { + e = e | 0; + t = t | 0; + r = r | 0; + i = i | 0; + s = s | 0; + var A = 0, + a = 0, + c = 0, + u = 0, + h = 0; + A = l; + if ((e | 0) == (o[(t + 8) >> 2] | 0)) { + if ((o[(t + 4) >> 2] | 0) != (r | 0)) { + l = A; + return; + } + a = (t + 28) | 0; + if ((o[a >> 2] | 0) == 1) { + l = A; + return; + } + o[a >> 2] = i; + l = A; + return; + } + if ((e | 0) != (o[t >> 2] | 0)) { + u = o[(e + 8) >> 2] | 0; + Oi[o[((o[u >> 2] | 0) + 24) >> 2] & 3](u, t, r, i, s); + l = A; + return; + } + if ( + (o[(t + 16) >> 2] | 0) != (r | 0) + ? ((c = (t + 20) | 0), (o[c >> 2] | 0) != (r | 0)) + : 0 + ) { + o[(t + 32) >> 2] = i; + i = (t + 44) | 0; + if ((o[i >> 2] | 0) == 4) { + l = A; + return; + } + u = (t + 52) | 0; + n[u >> 0] = 0; + h = (t + 53) | 0; + n[h >> 0] = 0; + e = o[(e + 8) >> 2] | 0; + Hi[o[((o[e >> 2] | 0) + 20) >> 2] & 3](e, t, r, r, 1, s); + if (n[h >> 0] | 0) { + if (!(n[u >> 0] | 0)) { + e = 1; + a = 13; + } + } else { + e = 0; + a = 13; + } + do { + if ((a | 0) == 13) { + o[c >> 2] = r; + h = (t + 40) | 0; + o[h >> 2] = (o[h >> 2] | 0) + 1; + if ((o[(t + 36) >> 2] | 0) == 1 ? (o[(t + 24) >> 2] | 0) == 2 : 0) { + n[(t + 54) >> 0] = 1; + if (e) break; + } else a = 16; + if ((a | 0) == 16 ? e : 0) break; + o[i >> 2] = 4; + l = A; + return; + } + } while (0); + o[i >> 2] = 3; + l = A; + return; + } + if ((i | 0) != 1) { + l = A; + return; + } + o[(t + 32) >> 2] = 1; + l = A; + return; + } + function Fn(e, t, r, i, s) { + e = e | 0; + t = t | 0; + r = r | 0; + i = i | 0; + s = s | 0; + var A = 0; + s = l; + if ((o[(t + 8) >> 2] | 0) == (e | 0)) { + if ((o[(t + 4) >> 2] | 0) != (r | 0)) { + l = s; + return; + } + t = (t + 28) | 0; + if ((o[t >> 2] | 0) == 1) { + l = s; + return; + } + o[t >> 2] = i; + l = s; + return; + } + if ((o[t >> 2] | 0) != (e | 0)) { + l = s; + return; + } + if ( + (o[(t + 16) >> 2] | 0) != (r | 0) + ? ((A = (t + 20) | 0), (o[A >> 2] | 0) != (r | 0)) + : 0 + ) { + o[(t + 32) >> 2] = i; + o[A >> 2] = r; + e = (t + 40) | 0; + o[e >> 2] = (o[e >> 2] | 0) + 1; + if ((o[(t + 36) >> 2] | 0) == 1 ? (o[(t + 24) >> 2] | 0) == 2 : 0) + n[(t + 54) >> 0] = 1; + o[(t + 44) >> 2] = 4; + l = s; + return; + } + if ((i | 0) != 1) { + l = s; + return; + } + o[(t + 32) >> 2] = 1; + l = s; + return; + } + function Mn(e, t, r, n, i, s) { + e = e | 0; + t = t | 0; + r = r | 0; + n = n | 0; + i = i | 0; + s = s | 0; + var A = 0; + A = l; + if ((e | 0) == (o[(t + 8) >> 2] | 0)) { + kn(0, t, r, n, i); + l = A; + return; + } else { + e = o[(e + 8) >> 2] | 0; + Hi[o[((o[e >> 2] | 0) + 20) >> 2] & 3](e, t, r, n, i, s); + l = A; + return; + } + } + function Nn(e, t, r, n, i, s) { + e = e | 0; + t = t | 0; + r = r | 0; + n = n | 0; + i = i | 0; + s = s | 0; + s = l; + if ((o[(t + 8) >> 2] | 0) != (e | 0)) { + l = s; + return; + } + kn(0, t, r, n, i); + l = s; + return; + } + function Rn(e, t, r) { + e = e | 0; + t = t | 0; + r = r | 0; + var n = 0, + i = 0; + n = l; + l = (l + 16) | 0; + i = n; + o[i >> 2] = o[r >> 2]; + e = _i[o[((o[e >> 2] | 0) + 16) >> 2] & 1](e, t, i) | 0; + t = e & 1; + if (!e) { + l = n; + return t | 0; + } + o[r >> 2] = o[i >> 2]; + l = n; + return t | 0; + } + function Kn(e) { + e = e | 0; + var t = 0; + t = l; + if (!e) e = 0; + else e = (Sn(e, 4504, 4672, 0) | 0) != 0; + l = t; + return (e & 1) | 0; + } + function Ln() { + var e = 0, + t = 0, + r = 0, + n = 0, + i = 0; + e = l; + l = (l + 16) | 0; + t = e; + e = (e + 12) | 0; + r = an() | 0; + if (!r) An(4040, t); + r = o[r >> 2] | 0; + if (!r) An(4040, t); + i = (r + 48) | 0; + n = o[i >> 2] | 0; + i = o[(i + 4) >> 2] | 0; + if (!((((n & -256) | 0) == 1126902528) & ((i | 0) == 1129074247))) { + o[t >> 2] = o[970]; + An(4e3, t); + } + if (((n | 0) == 1126902529) & ((i | 0) == 1129074247)) n = o[(r + 44) >> 2] | 0; + else n = (r + 80) | 0; + o[e >> 2] = n; + i = o[r >> 2] | 0; + r = o[(i + 4) >> 2] | 0; + if (_i[o[((o[4432 >> 2] | 0) + 16) >> 2] & 1](4432, i, e) | 0) { + i = o[e >> 2] | 0; + n = o[970] | 0; + i = Gi[o[((o[i >> 2] | 0) + 8) >> 2] & 1](i) | 0; + o[t >> 2] = n; + o[(t + 4) >> 2] = r; + o[(t + 8) >> 2] = i; + An(3904, t); + } else { + o[t >> 2] = o[970]; + o[(t + 4) >> 2] = r; + An(3952, t); + } + } + function Tn() { + var e = 0; + e = l; + l = (l + 16) | 0; + if (!(Oe(4056, 20) | 0)) { + l = e; + return; + } else An(4128, e); + } + function Pn(e) { + e = e | 0; + var t = 0; + t = l; + l = (l + 16) | 0; + _n(e); + if (!(Ge(o[1014] | 0, 0) | 0)) { + l = t; + return; + } else An(4184, t); + } + function Un(e) { + e = e | 0; + var t = 0, + r = 0, + n = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0, + C = 0, + E = 0, + I = 0, + m = 0, + y = 0, + w = 0, + B = 0, + Q = 0, + v = 0, + D = 0, + b = 0, + S = 0, + k = 0, + x = 0, + F = 0, + M = 0, + N = 0; + t = l; + do { + if (e >>> 0 < 245) { + if (e >>> 0 < 11) e = 16; + else e = (e + 11) & -8; + B = e >>> 3; + p = o[1206] | 0; + w = p >>> B; + if (w & 3) { + s = (((w & 1) ^ 1) + B) | 0; + i = s << 1; + r = (4864 + (i << 2)) | 0; + i = (4864 + ((i + 2) << 2)) | 0; + A = o[i >> 2] | 0; + a = (A + 8) | 0; + n = o[a >> 2] | 0; + do { + if ((r | 0) != (n | 0)) { + if (n >>> 0 < (o[1210] | 0) >>> 0) Xe(); + c = (n + 12) | 0; + if ((o[c >> 2] | 0) == (A | 0)) { + o[c >> 2] = r; + o[i >> 2] = n; + break; + } else Xe(); + } else o[1206] = p & ~(1 << s); + } while (0); + N = s << 3; + o[(A + 4) >> 2] = N | 3; + N = (A + (N | 4)) | 0; + o[N >> 2] = o[N >> 2] | 1; + N = a; + l = t; + return N | 0; + } + y = o[1208] | 0; + if (e >>> 0 > y >>> 0) { + if (w) { + A = 2 << B; + A = (w << B) & (A | (0 - A)); + A = ((A & (0 - A)) + -1) | 0; + r = (A >>> 12) & 16; + A = A >>> r; + a = (A >>> 5) & 8; + A = A >>> a; + i = (A >>> 2) & 4; + A = A >>> i; + s = (A >>> 1) & 2; + A = A >>> s; + n = (A >>> 1) & 1; + n = ((a | r | i | s | n) + (A >>> n)) | 0; + A = n << 1; + s = (4864 + (A << 2)) | 0; + A = (4864 + ((A + 2) << 2)) | 0; + i = o[A >> 2] | 0; + r = (i + 8) | 0; + a = o[r >> 2] | 0; + do { + if ((s | 0) != (a | 0)) { + if (a >>> 0 < (o[1210] | 0) >>> 0) Xe(); + c = (a + 12) | 0; + if ((o[c >> 2] | 0) == (i | 0)) { + o[c >> 2] = s; + o[A >> 2] = a; + x = o[1208] | 0; + break; + } else Xe(); + } else { + o[1206] = p & ~(1 << n); + x = y; + } + } while (0); + N = n << 3; + n = (N - e) | 0; + o[(i + 4) >> 2] = e | 3; + s = (i + e) | 0; + o[(i + (e | 4)) >> 2] = n | 1; + o[(i + N) >> 2] = n; + if (x) { + i = o[1211] | 0; + u = x >>> 3; + a = u << 1; + A = (4864 + (a << 2)) | 0; + c = o[1206] | 0; + u = 1 << u; + if (c & u) { + a = (4864 + ((a + 2) << 2)) | 0; + c = o[a >> 2] | 0; + if (c >>> 0 < (o[1210] | 0) >>> 0) Xe(); + else { + k = a; + S = c; + } + } else { + o[1206] = c | u; + k = (4864 + ((a + 2) << 2)) | 0; + S = A; + } + o[k >> 2] = i; + o[(S + 12) >> 2] = i; + o[(i + 8) >> 2] = S; + o[(i + 12) >> 2] = A; + } + o[1208] = n; + o[1211] = s; + N = r; + l = t; + return N | 0; + } + p = o[1207] | 0; + if (p) { + r = ((p & (0 - p)) + -1) | 0; + M = (r >>> 12) & 16; + r = r >>> M; + F = (r >>> 5) & 8; + r = r >>> F; + N = (r >>> 2) & 4; + r = r >>> N; + i = (r >>> 1) & 2; + r = r >>> i; + n = (r >>> 1) & 1; + n = o[(5128 + (((F | M | N | i | n) + (r >>> n)) << 2)) >> 2] | 0; + r = ((o[(n + 4) >> 2] & -8) - e) | 0; + i = n; + while (1) { + s = o[(i + 16) >> 2] | 0; + if (!s) { + s = o[(i + 20) >> 2] | 0; + if (!s) break; + } + i = ((o[(s + 4) >> 2] & -8) - e) | 0; + N = i >>> 0 < r >>> 0; + r = N ? i : r; + i = s; + n = N ? s : n; + } + A = o[1210] | 0; + if (n >>> 0 < A >>> 0) Xe(); + i = (n + e) | 0; + if (n >>> 0 >= i >>> 0) Xe(); + s = o[(n + 24) >> 2] | 0; + c = o[(n + 12) >> 2] | 0; + do { + if ((c | 0) == (n | 0)) { + c = (n + 20) | 0; + a = o[c >> 2] | 0; + if (!a) { + c = (n + 16) | 0; + a = o[c >> 2] | 0; + if (!a) { + b = 0; + break; + } + } + while (1) { + u = (a + 20) | 0; + h = o[u >> 2] | 0; + if (h) { + a = h; + c = u; + continue; + } + u = (a + 16) | 0; + h = o[u >> 2] | 0; + if (!h) break; + else { + a = h; + c = u; + } + } + if (c >>> 0 < A >>> 0) Xe(); + else { + o[c >> 2] = 0; + b = a; + break; + } + } else { + a = o[(n + 8) >> 2] | 0; + if (a >>> 0 < A >>> 0) Xe(); + A = (a + 12) | 0; + if ((o[A >> 2] | 0) != (n | 0)) Xe(); + u = (c + 8) | 0; + if ((o[u >> 2] | 0) == (n | 0)) { + o[A >> 2] = c; + o[u >> 2] = a; + b = c; + break; + } else Xe(); + } + } while (0); + do { + if (s) { + a = o[(n + 28) >> 2] | 0; + A = (5128 + (a << 2)) | 0; + if ((n | 0) == (o[A >> 2] | 0)) { + o[A >> 2] = b; + if (!b) { + o[1207] = o[1207] & ~(1 << a); + break; + } + } else { + if (s >>> 0 < (o[1210] | 0) >>> 0) Xe(); + A = (s + 16) | 0; + if ((o[A >> 2] | 0) == (n | 0)) o[A >> 2] = b; + else o[(s + 20) >> 2] = b; + if (!b) break; + } + A = o[1210] | 0; + if (b >>> 0 < A >>> 0) Xe(); + o[(b + 24) >> 2] = s; + s = o[(n + 16) >> 2] | 0; + do { + if (s) + if (s >>> 0 < A >>> 0) Xe(); + else { + o[(b + 16) >> 2] = s; + o[(s + 24) >> 2] = b; + break; + } + } while (0); + s = o[(n + 20) >> 2] | 0; + if (s) + if (s >>> 0 < (o[1210] | 0) >>> 0) Xe(); + else { + o[(b + 20) >> 2] = s; + o[(s + 24) >> 2] = b; + break; + } + } + } while (0); + if (r >>> 0 < 16) { + N = (r + e) | 0; + o[(n + 4) >> 2] = N | 3; + N = (n + (N + 4)) | 0; + o[N >> 2] = o[N >> 2] | 1; + } else { + o[(n + 4) >> 2] = e | 3; + o[(n + (e | 4)) >> 2] = r | 1; + o[(n + (r + e)) >> 2] = r; + A = o[1208] | 0; + if (A) { + s = o[1211] | 0; + c = A >>> 3; + u = c << 1; + A = (4864 + (u << 2)) | 0; + a = o[1206] | 0; + c = 1 << c; + if (a & c) { + a = (4864 + ((u + 2) << 2)) | 0; + c = o[a >> 2] | 0; + if (c >>> 0 < (o[1210] | 0) >>> 0) Xe(); + else { + D = a; + v = c; + } + } else { + o[1206] = a | c; + D = (4864 + ((u + 2) << 2)) | 0; + v = A; + } + o[D >> 2] = s; + o[(v + 12) >> 2] = s; + o[(s + 8) >> 2] = v; + o[(s + 12) >> 2] = A; + } + o[1208] = r; + o[1211] = i; + } + N = (n + 8) | 0; + l = t; + return N | 0; + } + } + } else if (e >>> 0 <= 4294967231) { + v = (e + 11) | 0; + e = v & -8; + b = o[1207] | 0; + if (b) { + D = (0 - e) | 0; + v = v >>> 8; + if (v) + if (e >>> 0 > 16777215) S = 31; + else { + M = (((v + 1048320) | 0) >>> 16) & 8; + N = v << M; + F = (((N + 520192) | 0) >>> 16) & 4; + N = N << F; + S = (((N + 245760) | 0) >>> 16) & 2; + S = (14 - (F | M | S) + ((N << S) >>> 15)) | 0; + S = ((e >>> ((S + 7) | 0)) & 1) | (S << 1); + } + else S = 0; + k = o[(5128 + (S << 2)) >> 2] | 0; + e: do { + if (!k) { + F = 0; + v = 0; + } else { + if ((S | 0) == 31) v = 0; + else v = (25 - (S >>> 1)) | 0; + F = 0; + x = e << v; + v = 0; + while (1) { + M = o[(k + 4) >> 2] & -8; + N = (M - e) | 0; + if (N >>> 0 < D >>> 0) + if ((M | 0) == (e | 0)) { + D = N; + F = k; + v = k; + break e; + } else { + D = N; + v = k; + } + N = o[(k + 20) >> 2] | 0; + k = o[(k + ((x >>> 31) << 2) + 16) >> 2] | 0; + F = ((N | 0) == 0) | ((N | 0) == (k | 0)) ? F : N; + if (!k) break; + else x = x << 1; + } + } + } while (0); + if (((F | 0) == 0) & ((v | 0) == 0)) { + N = 2 << S; + b = b & (N | (0 - N)); + if (!b) break; + N = ((b & (0 - b)) + -1) | 0; + k = (N >>> 12) & 16; + N = N >>> k; + S = (N >>> 5) & 8; + N = N >>> S; + x = (N >>> 2) & 4; + N = N >>> x; + M = (N >>> 1) & 2; + N = N >>> M; + F = (N >>> 1) & 1; + F = o[(5128 + (((S | k | x | M | F) + (N >>> F)) << 2)) >> 2] | 0; + } + if (F) + while (1) { + N = ((o[(F + 4) >> 2] & -8) - e) | 0; + b = N >>> 0 < D >>> 0; + D = b ? N : D; + v = b ? F : v; + b = o[(F + 16) >> 2] | 0; + if (b) { + F = b; + continue; + } + F = o[(F + 20) >> 2] | 0; + if (!F) break; + } + if ((v | 0) != 0 ? D >>> 0 < (((o[1208] | 0) - e) | 0) >>> 0 : 0) { + i = o[1210] | 0; + if (v >>> 0 < i >>> 0) Xe(); + r = (v + e) | 0; + if (v >>> 0 >= r >>> 0) Xe(); + n = o[(v + 24) >> 2] | 0; + s = o[(v + 12) >> 2] | 0; + do { + if ((s | 0) == (v | 0)) { + A = (v + 20) | 0; + s = o[A >> 2] | 0; + if (!s) { + A = (v + 16) | 0; + s = o[A >> 2] | 0; + if (!s) { + B = 0; + break; + } + } + while (1) { + a = (s + 20) | 0; + c = o[a >> 2] | 0; + if (c) { + s = c; + A = a; + continue; + } + a = (s + 16) | 0; + c = o[a >> 2] | 0; + if (!c) break; + else { + s = c; + A = a; + } + } + if (A >>> 0 < i >>> 0) Xe(); + else { + o[A >> 2] = 0; + B = s; + break; + } + } else { + A = o[(v + 8) >> 2] | 0; + if (A >>> 0 < i >>> 0) Xe(); + a = (A + 12) | 0; + if ((o[a >> 2] | 0) != (v | 0)) Xe(); + i = (s + 8) | 0; + if ((o[i >> 2] | 0) == (v | 0)) { + o[a >> 2] = s; + o[i >> 2] = A; + B = s; + break; + } else Xe(); + } + } while (0); + do { + if (n) { + i = o[(v + 28) >> 2] | 0; + s = (5128 + (i << 2)) | 0; + if ((v | 0) == (o[s >> 2] | 0)) { + o[s >> 2] = B; + if (!B) { + o[1207] = o[1207] & ~(1 << i); + break; + } + } else { + if (n >>> 0 < (o[1210] | 0) >>> 0) Xe(); + i = (n + 16) | 0; + if ((o[i >> 2] | 0) == (v | 0)) o[i >> 2] = B; + else o[(n + 20) >> 2] = B; + if (!B) break; + } + i = o[1210] | 0; + if (B >>> 0 < i >>> 0) Xe(); + o[(B + 24) >> 2] = n; + n = o[(v + 16) >> 2] | 0; + do { + if (n) + if (n >>> 0 < i >>> 0) Xe(); + else { + o[(B + 16) >> 2] = n; + o[(n + 24) >> 2] = B; + break; + } + } while (0); + n = o[(v + 20) >> 2] | 0; + if (n) + if (n >>> 0 < (o[1210] | 0) >>> 0) Xe(); + else { + o[(B + 20) >> 2] = n; + o[(n + 24) >> 2] = B; + break; + } + } + } while (0); + e: do { + if (D >>> 0 >= 16) { + o[(v + 4) >> 2] = e | 3; + o[(v + (e | 4)) >> 2] = D | 1; + o[(v + (D + e)) >> 2] = D; + i = D >>> 3; + if (D >>> 0 < 256) { + A = i << 1; + n = (4864 + (A << 2)) | 0; + s = o[1206] | 0; + i = 1 << i; + do { + if (!(s & i)) { + o[1206] = s | i; + w = (4864 + ((A + 2) << 2)) | 0; + y = n; + } else { + i = (4864 + ((A + 2) << 2)) | 0; + s = o[i >> 2] | 0; + if (s >>> 0 >= (o[1210] | 0) >>> 0) { + w = i; + y = s; + break; + } + Xe(); + } + } while (0); + o[w >> 2] = r; + o[(y + 12) >> 2] = r; + o[(v + (e + 8)) >> 2] = y; + o[(v + (e + 12)) >> 2] = n; + break; + } + n = D >>> 8; + if (n) + if (D >>> 0 > 16777215) n = 31; + else { + M = (((n + 1048320) | 0) >>> 16) & 8; + N = n << M; + F = (((N + 520192) | 0) >>> 16) & 4; + N = N << F; + n = (((N + 245760) | 0) >>> 16) & 2; + n = (14 - (F | M | n) + ((N << n) >>> 15)) | 0; + n = ((D >>> ((n + 7) | 0)) & 1) | (n << 1); + } + else n = 0; + i = (5128 + (n << 2)) | 0; + o[(v + (e + 28)) >> 2] = n; + o[(v + (e + 20)) >> 2] = 0; + o[(v + (e + 16)) >> 2] = 0; + s = o[1207] | 0; + A = 1 << n; + if (!(s & A)) { + o[1207] = s | A; + o[i >> 2] = r; + o[(v + (e + 24)) >> 2] = i; + o[(v + (e + 12)) >> 2] = r; + o[(v + (e + 8)) >> 2] = r; + break; + } + A = o[i >> 2] | 0; + if ((n | 0) == 31) n = 0; + else n = (25 - (n >>> 1)) | 0; + t: do { + if (((o[(A + 4) >> 2] & -8) | 0) != (D | 0)) { + n = D << n; + while (1) { + s = (A + ((n >>> 31) << 2) + 16) | 0; + i = o[s >> 2] | 0; + if (!i) break; + if (((o[(i + 4) >> 2] & -8) | 0) == (D | 0)) { + p = i; + break t; + } else { + n = n << 1; + A = i; + } + } + if (s >>> 0 < (o[1210] | 0) >>> 0) Xe(); + else { + o[s >> 2] = r; + o[(v + (e + 24)) >> 2] = A; + o[(v + (e + 12)) >> 2] = r; + o[(v + (e + 8)) >> 2] = r; + break e; + } + } else p = A; + } while (0); + i = (p + 8) | 0; + n = o[i >> 2] | 0; + N = o[1210] | 0; + if ((p >>> 0 >= N >>> 0) & (n >>> 0 >= N >>> 0)) { + o[(n + 12) >> 2] = r; + o[i >> 2] = r; + o[(v + (e + 8)) >> 2] = n; + o[(v + (e + 12)) >> 2] = p; + o[(v + (e + 24)) >> 2] = 0; + break; + } else Xe(); + } else { + N = (D + e) | 0; + o[(v + 4) >> 2] = N | 3; + N = (v + (N + 4)) | 0; + o[N >> 2] = o[N >> 2] | 1; + } + } while (0); + N = (v + 8) | 0; + l = t; + return N | 0; + } + } + } else e = -1; + } while (0); + p = o[1208] | 0; + if (p >>> 0 >= e >>> 0) { + n = (p - e) | 0; + r = o[1211] | 0; + if (n >>> 0 > 15) { + o[1211] = r + e; + o[1208] = n; + o[(r + (e + 4)) >> 2] = n | 1; + o[(r + p) >> 2] = n; + o[(r + 4) >> 2] = e | 3; + } else { + o[1208] = 0; + o[1211] = 0; + o[(r + 4) >> 2] = p | 3; + N = (r + (p + 4)) | 0; + o[N >> 2] = o[N >> 2] | 1; + } + N = (r + 8) | 0; + l = t; + return N | 0; + } + p = o[1209] | 0; + if (p >>> 0 > e >>> 0) { + M = (p - e) | 0; + o[1209] = M; + N = o[1212] | 0; + o[1212] = N + e; + o[(N + (e + 4)) >> 2] = M | 1; + o[(N + 4) >> 2] = e | 3; + N = (N + 8) | 0; + l = t; + return N | 0; + } + do { + if (!(o[1324] | 0)) { + p = Ke(30) | 0; + if (!((p + -1) & p)) { + o[1326] = p; + o[1325] = p; + o[1327] = -1; + o[1328] = -1; + o[1329] = 0; + o[1317] = 0; + o[1324] = (($e(0) | 0) & -16) ^ 1431655768; + break; + } else Xe(); + } + } while (0); + B = (e + 48) | 0; + p = o[1326] | 0; + w = (e + 47) | 0; + D = (p + w) | 0; + p = (0 - p) | 0; + y = D & p; + if (y >>> 0 <= e >>> 0) { + N = 0; + l = t; + return N | 0; + } + v = o[1316] | 0; + if ( + (v | 0) != 0 + ? ((M = o[1314] | 0), + (N = (M + y) | 0), + (N >>> 0 <= M >>> 0) | (N >>> 0 > v >>> 0)) + : 0 + ) { + N = 0; + l = t; + return N | 0; + } + e: do { + if (!(o[1317] & 4)) { + b = o[1212] | 0; + t: do { + if (b) { + v = 5272 | 0; + while (1) { + S = o[v >> 2] | 0; + if ( + S >>> 0 <= b >>> 0 + ? ((Q = (v + 4) | 0), ((S + (o[Q >> 2] | 0)) | 0) >>> 0 > b >>> 0) + : 0 + ) + break; + v = o[(v + 8) >> 2] | 0; + if (!v) { + f = 181; + break t; + } + } + if (v) { + D = (D - (o[1209] | 0)) & p; + if (D >>> 0 < 2147483647) { + p = ke(D | 0) | 0; + if ((p | 0) == (((o[v >> 2] | 0) + (o[Q >> 2] | 0)) | 0)) { + v = D; + f = 190; + } else { + v = D; + f = 191; + } + } else v = 0; + } else f = 181; + } else f = 181; + } while (0); + do { + if ((f | 0) == 181) { + Q = ke(0) | 0; + if ((Q | 0) != (-1 | 0)) { + D = Q; + v = o[1325] | 0; + p = (v + -1) | 0; + if (!(p & D)) v = y; + else v = (y - D + ((p + D) & (0 - v))) | 0; + p = o[1314] | 0; + D = (p + v) | 0; + if ((v >>> 0 > e >>> 0) & (v >>> 0 < 2147483647)) { + N = o[1316] | 0; + if ((N | 0) != 0 ? (D >>> 0 <= p >>> 0) | (D >>> 0 > N >>> 0) : 0) { + v = 0; + break; + } + p = ke(v | 0) | 0; + if ((p | 0) == (Q | 0)) { + p = Q; + f = 190; + } else f = 191; + } else v = 0; + } else v = 0; + } + } while (0); + t: do { + if ((f | 0) == 190) { + if ((p | 0) != (-1 | 0)) { + d = v; + f = 201; + break e; + } + } else if ((f | 0) == 191) { + f = (0 - v) | 0; + do { + if ( + ((p | 0) != (-1 | 0)) & (v >>> 0 < 2147483647) & (B >>> 0 > v >>> 0) + ? ((m = o[1326] | 0), + (m = (w - v + m) & (0 - m)), + m >>> 0 < 2147483647) + : 0 + ) + if ((ke(m | 0) | 0) == (-1 | 0)) { + ke(f | 0) | 0; + v = 0; + break t; + } else { + v = (m + v) | 0; + break; + } + } while (0); + if ((p | 0) == (-1 | 0)) v = 0; + else { + d = v; + f = 201; + break e; + } + } + } while (0); + o[1317] = o[1317] | 4; + f = 198; + } else { + v = 0; + f = 198; + } + } while (0); + if ( + ( + ((f | 0) == 198 ? y >>> 0 < 2147483647 : 0) + ? ((I = ke(y | 0) | 0), + (E = ke(0) | 0), + ((I | 0) != (-1 | 0)) & ((E | 0) != (-1 | 0)) & (I >>> 0 < E >>> 0)) + : 0 + ) + ? ((C = (E - I) | 0), (d = C >>> 0 > ((e + 40) | 0) >>> 0), d) + : 0 + ) { + p = I; + d = d ? C : v; + f = 201; + } + if ((f | 0) == 201) { + C = ((o[1314] | 0) + d) | 0; + o[1314] = C; + if (C >>> 0 > (o[1315] | 0) >>> 0) o[1315] = C; + C = o[1212] | 0; + e: do { + if (C) { + I = 5272 | 0; + while (1) { + E = o[I >> 2] | 0; + y = (I + 4) | 0; + w = o[y >> 2] | 0; + if ((p | 0) == ((E + w) | 0)) { + f = 213; + break; + } + m = o[(I + 8) >> 2] | 0; + if (!m) break; + else I = m; + } + if ( + ((f | 0) == 213 ? ((o[(I + 12) >> 2] & 8) | 0) == 0 : 0) + ? (C >>> 0 >= E >>> 0) & (C >>> 0 < p >>> 0) + : 0 + ) { + o[y >> 2] = w + d; + r = ((o[1209] | 0) + d) | 0; + n = (C + 8) | 0; + if (!(n & 7)) n = 0; + else n = (0 - n) & 7; + N = (r - n) | 0; + o[1212] = C + n; + o[1209] = N; + o[(C + (n + 4)) >> 2] = N | 1; + o[(C + (r + 4)) >> 2] = 40; + o[1213] = o[1328]; + break; + } + E = o[1210] | 0; + if (p >>> 0 < E >>> 0) { + o[1210] = p; + E = p; + } + y = (p + d) | 0; + I = 5272 | 0; + while (1) { + if ((o[I >> 2] | 0) == (y | 0)) { + f = 223; + break; + } + m = o[(I + 8) >> 2] | 0; + if (!m) break; + else I = m; + } + if ((f | 0) == 223 ? ((o[(I + 12) >> 2] & 8) | 0) == 0 : 0) { + o[I >> 2] = p; + A = (I + 4) | 0; + o[A >> 2] = (o[A >> 2] | 0) + d; + A = (p + 8) | 0; + if (!(A & 7)) A = 0; + else A = (0 - A) & 7; + a = (p + (d + 8)) | 0; + if (!(a & 7)) g = 0; + else g = (0 - a) & 7; + f = (p + (g + d)) | 0; + c = (A + e) | 0; + a = (p + c) | 0; + h = (f - (p + A) - e) | 0; + o[(p + (A + 4)) >> 2] = e | 3; + t: do { + if ((f | 0) != (C | 0)) { + if ((f | 0) == (o[1211] | 0)) { + N = ((o[1208] | 0) + h) | 0; + o[1208] = N; + o[1211] = a; + o[(p + (c + 4)) >> 2] = N | 1; + o[(p + (N + c)) >> 2] = N; + break; + } + C = (d + 4) | 0; + m = o[(p + (C + g)) >> 2] | 0; + if (((m & 3) | 0) == 1) { + e = m & -8; + I = m >>> 3; + r: do { + if (m >>> 0 >= 256) { + u = o[(p + ((g | 24) + d)) >> 2] | 0; + I = o[(p + (d + 12 + g)) >> 2] | 0; + do { + if ((I | 0) == (f | 0)) { + y = g | 16; + m = (p + (C + y)) | 0; + I = o[m >> 2] | 0; + if (!I) { + m = (p + (y + d)) | 0; + I = o[m >> 2] | 0; + if (!I) { + s = 0; + break; + } + } + while (1) { + w = (I + 20) | 0; + y = o[w >> 2] | 0; + if (y) { + I = y; + m = w; + continue; + } + w = (I + 16) | 0; + y = o[w >> 2] | 0; + if (!y) break; + else { + I = y; + m = w; + } + } + if (m >>> 0 < E >>> 0) Xe(); + else { + o[m >> 2] = 0; + s = I; + break; + } + } else { + m = o[(p + ((g | 8) + d)) >> 2] | 0; + if (m >>> 0 < E >>> 0) Xe(); + y = (m + 12) | 0; + if ((o[y >> 2] | 0) != (f | 0)) Xe(); + E = (I + 8) | 0; + if ((o[E >> 2] | 0) == (f | 0)) { + o[y >> 2] = I; + o[E >> 2] = m; + s = I; + break; + } else Xe(); + } + } while (0); + if (!u) break; + E = o[(p + (d + 28 + g)) >> 2] | 0; + I = (5128 + (E << 2)) | 0; + do { + if ((f | 0) != (o[I >> 2] | 0)) { + if (u >>> 0 < (o[1210] | 0) >>> 0) Xe(); + E = (u + 16) | 0; + if ((o[E >> 2] | 0) == (f | 0)) o[E >> 2] = s; + else o[(u + 20) >> 2] = s; + if (!s) break r; + } else { + o[I >> 2] = s; + if (s) break; + o[1207] = o[1207] & ~(1 << E); + break r; + } + } while (0); + f = o[1210] | 0; + if (s >>> 0 < f >>> 0) Xe(); + o[(s + 24) >> 2] = u; + E = g | 16; + u = o[(p + (E + d)) >> 2] | 0; + do { + if (u) + if (u >>> 0 < f >>> 0) Xe(); + else { + o[(s + 16) >> 2] = u; + o[(u + 24) >> 2] = s; + break; + } + } while (0); + u = o[(p + (C + E)) >> 2] | 0; + if (!u) break; + if (u >>> 0 < (o[1210] | 0) >>> 0) Xe(); + else { + o[(s + 20) >> 2] = u; + o[(u + 24) >> 2] = s; + break; + } + } else { + s = o[(p + ((g | 8) + d)) >> 2] | 0; + C = o[(p + (d + 12 + g)) >> 2] | 0; + m = (4864 + ((I << 1) << 2)) | 0; + do { + if ((s | 0) != (m | 0)) { + if (s >>> 0 < E >>> 0) Xe(); + if ((o[(s + 12) >> 2] | 0) == (f | 0)) break; + Xe(); + } + } while (0); + if ((C | 0) == (s | 0)) { + o[1206] = o[1206] & ~(1 << I); + break; + } + do { + if ((C | 0) == (m | 0)) u = (C + 8) | 0; + else { + if (C >>> 0 < E >>> 0) Xe(); + E = (C + 8) | 0; + if ((o[E >> 2] | 0) == (f | 0)) { + u = E; + break; + } + Xe(); + } + } while (0); + o[(s + 12) >> 2] = C; + o[u >> 2] = s; + } + } while (0); + f = (p + ((e | g) + d)) | 0; + h = (e + h) | 0; + } + s = (f + 4) | 0; + o[s >> 2] = o[s >> 2] & -2; + o[(p + (c + 4)) >> 2] = h | 1; + o[(p + (h + c)) >> 2] = h; + s = h >>> 3; + if (h >>> 0 < 256) { + u = s << 1; + r = (4864 + (u << 2)) | 0; + h = o[1206] | 0; + s = 1 << s; + do { + if (!(h & s)) { + o[1206] = h | s; + i = (4864 + ((u + 2) << 2)) | 0; + n = r; + } else { + u = (4864 + ((u + 2) << 2)) | 0; + s = o[u >> 2] | 0; + if (s >>> 0 >= (o[1210] | 0) >>> 0) { + i = u; + n = s; + break; + } + Xe(); + } + } while (0); + o[i >> 2] = a; + o[(n + 12) >> 2] = a; + o[(p + (c + 8)) >> 2] = n; + o[(p + (c + 12)) >> 2] = r; + break; + } + n = h >>> 8; + do { + if (!n) n = 0; + else { + if (h >>> 0 > 16777215) { + n = 31; + break; + } + M = (((n + 1048320) | 0) >>> 16) & 8; + N = n << M; + F = (((N + 520192) | 0) >>> 16) & 4; + N = N << F; + n = (((N + 245760) | 0) >>> 16) & 2; + n = (14 - (F | M | n) + ((N << n) >>> 15)) | 0; + n = ((h >>> ((n + 7) | 0)) & 1) | (n << 1); + } + } while (0); + u = (5128 + (n << 2)) | 0; + o[(p + (c + 28)) >> 2] = n; + o[(p + (c + 20)) >> 2] = 0; + o[(p + (c + 16)) >> 2] = 0; + s = o[1207] | 0; + i = 1 << n; + if (!(s & i)) { + o[1207] = s | i; + o[u >> 2] = a; + o[(p + (c + 24)) >> 2] = u; + o[(p + (c + 12)) >> 2] = a; + o[(p + (c + 8)) >> 2] = a; + break; + } + i = o[u >> 2] | 0; + if ((n | 0) == 31) n = 0; + else n = (25 - (n >>> 1)) | 0; + r: do { + if (((o[(i + 4) >> 2] & -8) | 0) != (h | 0)) { + n = h << n; + while (1) { + s = (i + ((n >>> 31) << 2) + 16) | 0; + u = o[s >> 2] | 0; + if (!u) break; + if (((o[(u + 4) >> 2] & -8) | 0) == (h | 0)) { + r = u; + break r; + } else { + n = n << 1; + i = u; + } + } + if (s >>> 0 < (o[1210] | 0) >>> 0) Xe(); + else { + o[s >> 2] = a; + o[(p + (c + 24)) >> 2] = i; + o[(p + (c + 12)) >> 2] = a; + o[(p + (c + 8)) >> 2] = a; + break t; + } + } else r = i; + } while (0); + n = (r + 8) | 0; + i = o[n >> 2] | 0; + N = o[1210] | 0; + if ((r >>> 0 >= N >>> 0) & (i >>> 0 >= N >>> 0)) { + o[(i + 12) >> 2] = a; + o[n >> 2] = a; + o[(p + (c + 8)) >> 2] = i; + o[(p + (c + 12)) >> 2] = r; + o[(p + (c + 24)) >> 2] = 0; + break; + } else Xe(); + } else { + N = ((o[1209] | 0) + h) | 0; + o[1209] = N; + o[1212] = a; + o[(p + (c + 4)) >> 2] = N | 1; + } + } while (0); + N = (p + (A | 8)) | 0; + l = t; + return N | 0; + } + n = 5272 | 0; + while (1) { + r = o[n >> 2] | 0; + if ( + r >>> 0 <= C >>> 0 + ? ((g = o[(n + 4) >> 2] | 0), (h = (r + g) | 0), h >>> 0 > C >>> 0) + : 0 + ) + break; + n = o[(n + 8) >> 2] | 0; + } + n = (r + (g + -39)) | 0; + if (!(n & 7)) n = 0; + else n = (0 - n) & 7; + r = (r + (g + -47 + n)) | 0; + r = r >>> 0 < ((C + 16) | 0) >>> 0 ? C : r; + n = (r + 8) | 0; + i = (p + 8) | 0; + if (!(i & 7)) i = 0; + else i = (0 - i) & 7; + N = (d + -40 - i) | 0; + o[1212] = p + i; + o[1209] = N; + o[(p + (i + 4)) >> 2] = N | 1; + o[(p + (d + -36)) >> 2] = 40; + o[1213] = o[1328]; + o[(r + 4) >> 2] = 27; + o[(n + 0) >> 2] = o[1318]; + o[(n + 4) >> 2] = o[1319]; + o[(n + 8) >> 2] = o[1320]; + o[(n + 12) >> 2] = o[1321]; + o[1318] = p; + o[1319] = d; + o[1321] = 0; + o[1320] = n; + n = (r + 28) | 0; + o[n >> 2] = 7; + if (((r + 32) | 0) >>> 0 < h >>> 0) + do { + N = n; + n = (n + 4) | 0; + o[n >> 2] = 7; + } while (((N + 8) | 0) >>> 0 < h >>> 0); + if ((r | 0) != (C | 0)) { + r = (r - C) | 0; + n = (C + (r + 4)) | 0; + o[n >> 2] = o[n >> 2] & -2; + o[(C + 4) >> 2] = r | 1; + o[(C + r) >> 2] = r; + n = r >>> 3; + if (r >>> 0 < 256) { + i = n << 1; + r = (4864 + (i << 2)) | 0; + s = o[1206] | 0; + n = 1 << n; + do { + if (!(s & n)) { + o[1206] = s | n; + c = (4864 + ((i + 2) << 2)) | 0; + a = r; + } else { + i = (4864 + ((i + 2) << 2)) | 0; + n = o[i >> 2] | 0; + if (n >>> 0 >= (o[1210] | 0) >>> 0) { + c = i; + a = n; + break; + } + Xe(); + } + } while (0); + o[c >> 2] = C; + o[(a + 12) >> 2] = C; + o[(C + 8) >> 2] = a; + o[(C + 12) >> 2] = r; + break; + } + n = r >>> 8; + if (n) + if (r >>> 0 > 16777215) n = 31; + else { + M = (((n + 1048320) | 0) >>> 16) & 8; + N = n << M; + F = (((N + 520192) | 0) >>> 16) & 4; + N = N << F; + n = (((N + 245760) | 0) >>> 16) & 2; + n = (14 - (F | M | n) + ((N << n) >>> 15)) | 0; + n = ((r >>> ((n + 7) | 0)) & 1) | (n << 1); + } + else n = 0; + a = (5128 + (n << 2)) | 0; + o[(C + 28) >> 2] = n; + o[(C + 20) >> 2] = 0; + o[(C + 16) >> 2] = 0; + i = o[1207] | 0; + s = 1 << n; + if (!(i & s)) { + o[1207] = i | s; + o[a >> 2] = C; + o[(C + 24) >> 2] = a; + o[(C + 12) >> 2] = C; + o[(C + 8) >> 2] = C; + break; + } + i = o[a >> 2] | 0; + if ((n | 0) == 31) n = 0; + else n = (25 - (n >>> 1)) | 0; + t: do { + if (((o[(i + 4) >> 2] & -8) | 0) != (r | 0)) { + n = r << n; + a = i; + while (1) { + i = (a + ((n >>> 31) << 2) + 16) | 0; + s = o[i >> 2] | 0; + if (!s) break; + if (((o[(s + 4) >> 2] & -8) | 0) == (r | 0)) { + A = s; + break t; + } else { + n = n << 1; + a = s; + } + } + if (i >>> 0 < (o[1210] | 0) >>> 0) Xe(); + else { + o[i >> 2] = C; + o[(C + 24) >> 2] = a; + o[(C + 12) >> 2] = C; + o[(C + 8) >> 2] = C; + break e; + } + } else A = i; + } while (0); + n = (A + 8) | 0; + r = o[n >> 2] | 0; + N = o[1210] | 0; + if ((A >>> 0 >= N >>> 0) & (r >>> 0 >= N >>> 0)) { + o[(r + 12) >> 2] = C; + o[n >> 2] = C; + o[(C + 8) >> 2] = r; + o[(C + 12) >> 2] = A; + o[(C + 24) >> 2] = 0; + break; + } else Xe(); + } + } else { + N = o[1210] | 0; + if (((N | 0) == 0) | (p >>> 0 < N >>> 0)) o[1210] = p; + o[1318] = p; + o[1319] = d; + o[1321] = 0; + o[1215] = o[1324]; + o[1214] = -1; + r = 0; + do { + N = r << 1; + M = (4864 + (N << 2)) | 0; + o[(4864 + ((N + 3) << 2)) >> 2] = M; + o[(4864 + ((N + 2) << 2)) >> 2] = M; + r = (r + 1) | 0; + } while ((r | 0) != 32); + r = (p + 8) | 0; + if (!(r & 7)) r = 0; + else r = (0 - r) & 7; + N = (d + -40 - r) | 0; + o[1212] = p + r; + o[1209] = N; + o[(p + (r + 4)) >> 2] = N | 1; + o[(p + (d + -36)) >> 2] = 40; + o[1213] = o[1328]; + } + } while (0); + r = o[1209] | 0; + if (r >>> 0 > e >>> 0) { + M = (r - e) | 0; + o[1209] = M; + N = o[1212] | 0; + o[1212] = N + e; + o[(N + (e + 4)) >> 2] = M | 1; + o[(N + 4) >> 2] = e | 3; + N = (N + 8) | 0; + l = t; + return N | 0; + } + } + o[(Ye() | 0) >> 2] = 12; + N = 0; + l = t; + return N | 0; + } + function _n(e) { + e = e | 0; + var t = 0, + r = 0, + n = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0, + C = 0, + E = 0, + I = 0, + m = 0, + y = 0, + w = 0; + t = l; + if (!e) { + l = t; + return; + } + d = (e + -8) | 0; + C = o[1210] | 0; + if (d >>> 0 < C >>> 0) Xe(); + g = o[(e + -4) >> 2] | 0; + h = g & 3; + if ((h | 0) == 1) Xe(); + a = g & -8; + A = (e + (a + -8)) | 0; + do { + if (!(g & 1)) { + m = o[d >> 2] | 0; + if (!h) { + l = t; + return; + } + d = (-8 - m) | 0; + g = (e + d) | 0; + h = (m + a) | 0; + if (g >>> 0 < C >>> 0) Xe(); + if ((g | 0) == (o[1211] | 0)) { + n = (e + (a + -4)) | 0; + f = o[n >> 2] | 0; + if (((f & 3) | 0) != 3) { + n = g; + f = h; + break; + } + o[1208] = h; + o[n >> 2] = f & -2; + o[(e + (d + 4)) >> 2] = h | 1; + o[A >> 2] = h; + l = t; + return; + } + I = m >>> 3; + if (m >>> 0 < 256) { + n = o[(e + (d + 8)) >> 2] | 0; + f = o[(e + (d + 12)) >> 2] | 0; + p = (4864 + ((I << 1) << 2)) | 0; + if ((n | 0) != (p | 0)) { + if (n >>> 0 < C >>> 0) Xe(); + if ((o[(n + 12) >> 2] | 0) != (g | 0)) Xe(); + } + if ((f | 0) == (n | 0)) { + o[1206] = o[1206] & ~(1 << I); + n = g; + f = h; + break; + } + if ((f | 0) != (p | 0)) { + if (f >>> 0 < C >>> 0) Xe(); + p = (f + 8) | 0; + if ((o[p >> 2] | 0) == (g | 0)) E = p; + else Xe(); + } else E = (f + 8) | 0; + o[(n + 12) >> 2] = f; + o[E >> 2] = n; + n = g; + f = h; + break; + } + E = o[(e + (d + 24)) >> 2] | 0; + I = o[(e + (d + 12)) >> 2] | 0; + do { + if ((I | 0) == (g | 0)) { + m = (e + (d + 20)) | 0; + I = o[m >> 2] | 0; + if (!I) { + m = (e + (d + 16)) | 0; + I = o[m >> 2] | 0; + if (!I) { + p = 0; + break; + } + } + while (1) { + y = (I + 20) | 0; + w = o[y >> 2] | 0; + if (w) { + I = w; + m = y; + continue; + } + y = (I + 16) | 0; + w = o[y >> 2] | 0; + if (!w) break; + else { + I = w; + m = y; + } + } + if (m >>> 0 < C >>> 0) Xe(); + else { + o[m >> 2] = 0; + p = I; + break; + } + } else { + m = o[(e + (d + 8)) >> 2] | 0; + if (m >>> 0 < C >>> 0) Xe(); + C = (m + 12) | 0; + if ((o[C >> 2] | 0) != (g | 0)) Xe(); + y = (I + 8) | 0; + if ((o[y >> 2] | 0) == (g | 0)) { + o[C >> 2] = I; + o[y >> 2] = m; + p = I; + break; + } else Xe(); + } + } while (0); + if (E) { + C = o[(e + (d + 28)) >> 2] | 0; + I = (5128 + (C << 2)) | 0; + if ((g | 0) == (o[I >> 2] | 0)) { + o[I >> 2] = p; + if (!p) { + o[1207] = o[1207] & ~(1 << C); + n = g; + f = h; + break; + } + } else { + if (E >>> 0 < (o[1210] | 0) >>> 0) Xe(); + C = (E + 16) | 0; + if ((o[C >> 2] | 0) == (g | 0)) o[C >> 2] = p; + else o[(E + 20) >> 2] = p; + if (!p) { + n = g; + f = h; + break; + } + } + C = o[1210] | 0; + if (p >>> 0 < C >>> 0) Xe(); + o[(p + 24) >> 2] = E; + E = o[(e + (d + 16)) >> 2] | 0; + do { + if (E) + if (E >>> 0 < C >>> 0) Xe(); + else { + o[(p + 16) >> 2] = E; + o[(E + 24) >> 2] = p; + break; + } + } while (0); + d = o[(e + (d + 20)) >> 2] | 0; + if (d) + if (d >>> 0 < (o[1210] | 0) >>> 0) Xe(); + else { + o[(p + 20) >> 2] = d; + o[(d + 24) >> 2] = p; + n = g; + f = h; + break; + } + else { + n = g; + f = h; + } + } else { + n = g; + f = h; + } + } else { + n = d; + f = a; + } + } while (0); + if (n >>> 0 >= A >>> 0) Xe(); + h = (e + (a + -4)) | 0; + g = o[h >> 2] | 0; + if (!(g & 1)) Xe(); + if (!(g & 2)) { + if ((A | 0) == (o[1212] | 0)) { + w = ((o[1209] | 0) + f) | 0; + o[1209] = w; + o[1212] = n; + o[(n + 4) >> 2] = w | 1; + if ((n | 0) != (o[1211] | 0)) { + l = t; + return; + } + o[1211] = 0; + o[1208] = 0; + l = t; + return; + } + if ((A | 0) == (o[1211] | 0)) { + w = ((o[1208] | 0) + f) | 0; + o[1208] = w; + o[1211] = n; + o[(n + 4) >> 2] = w | 1; + o[(n + w) >> 2] = w; + l = t; + return; + } + f = ((g & -8) + f) | 0; + h = g >>> 3; + do { + if (g >>> 0 >= 256) { + u = o[(e + (a + 16)) >> 2] | 0; + h = o[(e + (a | 4)) >> 2] | 0; + do { + if ((h | 0) == (A | 0)) { + g = (e + (a + 12)) | 0; + h = o[g >> 2] | 0; + if (!h) { + g = (e + (a + 8)) | 0; + h = o[g >> 2] | 0; + if (!h) { + c = 0; + break; + } + } + while (1) { + d = (h + 20) | 0; + p = o[d >> 2] | 0; + if (p) { + h = p; + g = d; + continue; + } + p = (h + 16) | 0; + d = o[p >> 2] | 0; + if (!d) break; + else { + h = d; + g = p; + } + } + if (g >>> 0 < (o[1210] | 0) >>> 0) Xe(); + else { + o[g >> 2] = 0; + c = h; + break; + } + } else { + g = o[(e + a) >> 2] | 0; + if (g >>> 0 < (o[1210] | 0) >>> 0) Xe(); + p = (g + 12) | 0; + if ((o[p >> 2] | 0) != (A | 0)) Xe(); + d = (h + 8) | 0; + if ((o[d >> 2] | 0) == (A | 0)) { + o[p >> 2] = h; + o[d >> 2] = g; + c = h; + break; + } else Xe(); + } + } while (0); + if (u) { + h = o[(e + (a + 20)) >> 2] | 0; + g = (5128 + (h << 2)) | 0; + if ((A | 0) == (o[g >> 2] | 0)) { + o[g >> 2] = c; + if (!c) { + o[1207] = o[1207] & ~(1 << h); + break; + } + } else { + if (u >>> 0 < (o[1210] | 0) >>> 0) Xe(); + h = (u + 16) | 0; + if ((o[h >> 2] | 0) == (A | 0)) o[h >> 2] = c; + else o[(u + 20) >> 2] = c; + if (!c) break; + } + A = o[1210] | 0; + if (c >>> 0 < A >>> 0) Xe(); + o[(c + 24) >> 2] = u; + u = o[(e + (a + 8)) >> 2] | 0; + do { + if (u) + if (u >>> 0 < A >>> 0) Xe(); + else { + o[(c + 16) >> 2] = u; + o[(u + 24) >> 2] = c; + break; + } + } while (0); + A = o[(e + (a + 12)) >> 2] | 0; + if (A) + if (A >>> 0 < (o[1210] | 0) >>> 0) Xe(); + else { + o[(c + 20) >> 2] = A; + o[(A + 24) >> 2] = c; + break; + } + } + } else { + c = o[(e + a) >> 2] | 0; + a = o[(e + (a | 4)) >> 2] | 0; + e = (4864 + ((h << 1) << 2)) | 0; + if ((c | 0) != (e | 0)) { + if (c >>> 0 < (o[1210] | 0) >>> 0) Xe(); + if ((o[(c + 12) >> 2] | 0) != (A | 0)) Xe(); + } + if ((a | 0) == (c | 0)) { + o[1206] = o[1206] & ~(1 << h); + break; + } + if ((a | 0) != (e | 0)) { + if (a >>> 0 < (o[1210] | 0) >>> 0) Xe(); + e = (a + 8) | 0; + if ((o[e >> 2] | 0) == (A | 0)) u = e; + else Xe(); + } else u = (a + 8) | 0; + o[(c + 12) >> 2] = a; + o[u >> 2] = c; + } + } while (0); + o[(n + 4) >> 2] = f | 1; + o[(n + f) >> 2] = f; + if ((n | 0) == (o[1211] | 0)) { + o[1208] = f; + l = t; + return; + } + } else { + o[h >> 2] = g & -2; + o[(n + 4) >> 2] = f | 1; + o[(n + f) >> 2] = f; + } + A = f >>> 3; + if (f >>> 0 < 256) { + a = A << 1; + r = (4864 + (a << 2)) | 0; + c = o[1206] | 0; + A = 1 << A; + if (c & A) { + a = (4864 + ((a + 2) << 2)) | 0; + A = o[a >> 2] | 0; + if (A >>> 0 < (o[1210] | 0) >>> 0) Xe(); + else { + i = a; + s = A; + } + } else { + o[1206] = c | A; + i = (4864 + ((a + 2) << 2)) | 0; + s = r; + } + o[i >> 2] = n; + o[(s + 12) >> 2] = n; + o[(n + 8) >> 2] = s; + o[(n + 12) >> 2] = r; + l = t; + return; + } + i = f >>> 8; + if (i) + if (f >>> 0 > 16777215) i = 31; + else { + y = (((i + 1048320) | 0) >>> 16) & 8; + w = i << y; + m = (((w + 520192) | 0) >>> 16) & 4; + w = w << m; + i = (((w + 245760) | 0) >>> 16) & 2; + i = (14 - (m | y | i) + ((w << i) >>> 15)) | 0; + i = ((f >>> ((i + 7) | 0)) & 1) | (i << 1); + } + else i = 0; + s = (5128 + (i << 2)) | 0; + o[(n + 28) >> 2] = i; + o[(n + 20) >> 2] = 0; + o[(n + 16) >> 2] = 0; + a = o[1207] | 0; + A = 1 << i; + e: do { + if (a & A) { + s = o[s >> 2] | 0; + if ((i | 0) == 31) i = 0; + else i = (25 - (i >>> 1)) | 0; + t: do { + if (((o[(s + 4) >> 2] & -8) | 0) != (f | 0)) { + i = f << i; + while (1) { + a = (s + ((i >>> 31) << 2) + 16) | 0; + A = o[a >> 2] | 0; + if (!A) break; + if (((o[(A + 4) >> 2] & -8) | 0) == (f | 0)) { + r = A; + break t; + } else { + i = i << 1; + s = A; + } + } + if (a >>> 0 < (o[1210] | 0) >>> 0) Xe(); + else { + o[a >> 2] = n; + o[(n + 24) >> 2] = s; + o[(n + 12) >> 2] = n; + o[(n + 8) >> 2] = n; + break e; + } + } else r = s; + } while (0); + s = (r + 8) | 0; + i = o[s >> 2] | 0; + w = o[1210] | 0; + if ((r >>> 0 >= w >>> 0) & (i >>> 0 >= w >>> 0)) { + o[(i + 12) >> 2] = n; + o[s >> 2] = n; + o[(n + 8) >> 2] = i; + o[(n + 12) >> 2] = r; + o[(n + 24) >> 2] = 0; + break; + } else Xe(); + } else { + o[1207] = a | A; + o[s >> 2] = n; + o[(n + 24) >> 2] = s; + o[(n + 12) >> 2] = n; + o[(n + 8) >> 2] = n; + } + } while (0); + w = ((o[1214] | 0) + -1) | 0; + o[1214] = w; + if (!w) r = 5280 | 0; + else { + l = t; + return; + } + while (1) { + r = o[r >> 2] | 0; + if (!r) break; + else r = (r + 8) | 0; + } + o[1214] = -1; + l = t; + return; + } + function On(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + n = 0, + i = 0; + r = l; + do { + if (e) { + if (t >>> 0 > 4294967231) { + o[(Ye() | 0) >> 2] = 12; + n = 0; + break; + } + if (t >>> 0 < 11) n = 16; + else n = (t + 11) & -8; + n = ei((e + -8) | 0, n) | 0; + if (n) { + n = (n + 8) | 0; + break; + } + n = Un(t) | 0; + if (!n) n = 0; + else { + i = o[(e + -4) >> 2] | 0; + i = ((i & -8) - (((i & 3) | 0) == 0 ? 8 : 4)) | 0; + ui(n | 0, e | 0, (i >>> 0 < t >>> 0 ? i : t) | 0) | 0; + _n(e); + } + } else n = Un(t) | 0; + } while (0); + l = r; + return n | 0; + } + function jn(e) { + e = e | 0; + if ((e | 0) == 32) e = 1; + else e = ((e + -9) | 0) >>> 0 < 5; + return (e & 1) | 0; + } + function Yn(e, t, r, i, A) { + e = e | 0; + t = t | 0; + r = r | 0; + i = i | 0; + A = A | 0; + var a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0, + C = 0, + E = 0, + I = 0; + a = l; + if (t >>> 0 > 36) { + o[(Ye() | 0) >> 2] = 22; + E = 0; + I = 0; + R = E; + l = a; + return I | 0; + } + c = (e + 4) | 0; + u = (e + 100) | 0; + do { + h = o[c >> 2] | 0; + if (h >>> 0 < (o[u >> 2] | 0) >>> 0) { + o[c >> 2] = h + 1; + f = s[h >> 0] | 0; + } else f = Hn(e) | 0; + } while ((jn(f) | 0) != 0); + do { + if (((f | 0) == 43) | ((f | 0) == 45)) { + h = (((f | 0) == 45) << 31) >> 31; + g = o[c >> 2] | 0; + if (g >>> 0 < (o[u >> 2] | 0) >>> 0) { + o[c >> 2] = g + 1; + f = s[g >> 0] | 0; + break; + } else { + f = Hn(e) | 0; + break; + } + } else h = 0; + } while (0); + g = (t | 0) == 0; + do { + if ((((t & -17) | 0) == 0) & ((f | 0) == 48)) { + f = o[c >> 2] | 0; + if (f >>> 0 < (o[u >> 2] | 0) >>> 0) { + o[c >> 2] = f + 1; + f = s[f >> 0] | 0; + } else f = Hn(e) | 0; + if ((f | 32 | 0) != 120) + if (g) { + t = 8; + r = 46; + break; + } else { + r = 32; + break; + } + t = o[c >> 2] | 0; + if (t >>> 0 < (o[u >> 2] | 0) >>> 0) { + o[c >> 2] = t + 1; + f = s[t >> 0] | 0; + } else f = Hn(e) | 0; + if ((s[(f + 5321) >> 0] | 0) > 15) { + i = (o[u >> 2] | 0) == 0; + if (!i) o[c >> 2] = (o[c >> 2] | 0) + -1; + if (!r) { + Jn(e, 0); + E = 0; + I = 0; + R = E; + l = a; + return I | 0; + } + if (i) { + E = 0; + I = 0; + R = E; + l = a; + return I | 0; + } + o[c >> 2] = (o[c >> 2] | 0) + -1; + E = 0; + I = 0; + R = E; + l = a; + return I | 0; + } else { + t = 16; + r = 46; + } + } else { + t = g ? 10 : t; + if ((s[(f + 5321) >> 0] | 0) >>> 0 < t >>> 0) r = 32; + else { + if (o[u >> 2] | 0) o[c >> 2] = (o[c >> 2] | 0) + -1; + Jn(e, 0); + o[(Ye() | 0) >> 2] = 22; + E = 0; + I = 0; + R = E; + l = a; + return I | 0; + } + } + } while (0); + if ((r | 0) == 32) + if ((t | 0) == 10) { + t = (f + -48) | 0; + if (t >>> 0 < 10) { + g = 0; + do { + g = (((g * 10) | 0) + t) | 0; + t = o[c >> 2] | 0; + if (t >>> 0 < (o[u >> 2] | 0) >>> 0) { + o[c >> 2] = t + 1; + f = s[t >> 0] | 0; + } else f = Hn(e) | 0; + t = (f + -48) | 0; + } while ((t >>> 0 < 10) & (g >>> 0 < 429496729)); + p = 0; + } else { + g = 0; + p = 0; + } + t = (f + -48) | 0; + if (t >>> 0 < 10) { + do { + d = Ci(g | 0, p | 0, 10, 0) | 0; + C = R; + E = (((t | 0) < 0) << 31) >> 31; + I = ~E; + if ((C >>> 0 > I >>> 0) | (((C | 0) == (I | 0)) & (d >>> 0 > ~t >>> 0))) + break; + g = ai(d | 0, C | 0, t | 0, E | 0) | 0; + p = R; + t = o[c >> 2] | 0; + if (t >>> 0 < (o[u >> 2] | 0) >>> 0) { + o[c >> 2] = t + 1; + f = s[t >> 0] | 0; + } else f = Hn(e) | 0; + t = (f + -48) | 0; + } while ( + (t >>> 0 < 10) & + ((p >>> 0 < 429496729) | (((p | 0) == 429496729) & (g >>> 0 < 2576980378))) + ); + if (t >>> 0 <= 9) { + t = 10; + r = 72; + } + } + } else r = 46; + e: do { + if ((r | 0) == 46) { + if (!((t + -1) & t)) { + r = n[(5584 + ((((t * 23) | 0) >>> 5) & 7)) >> 0] | 0; + C = n[(f + 5321) >> 0] | 0; + g = C & 255; + if (g >>> 0 < t >>> 0) { + f = g; + g = 0; + do { + g = f | (g << r); + f = o[c >> 2] | 0; + if (f >>> 0 < (o[u >> 2] | 0) >>> 0) { + o[c >> 2] = f + 1; + E = s[f >> 0] | 0; + } else E = Hn(e) | 0; + C = n[(E + 5321) >> 0] | 0; + f = C & 255; + } while ((f >>> 0 < t >>> 0) & (g >>> 0 < 134217728)); + p = 0; + } else { + p = 0; + g = 0; + E = f; + } + f = ci(-1, -1, r | 0) | 0; + d = R; + if ( + ((C & 255) >>> 0 >= t >>> 0) | + ((p >>> 0 > d >>> 0) | (((p | 0) == (d | 0)) & (g >>> 0 > f >>> 0))) + ) { + f = E; + r = 72; + break; + } + while (1) { + g = si(g | 0, p | 0, r | 0) | 0; + p = R; + g = (C & 255) | g; + C = o[c >> 2] | 0; + if (C >>> 0 < (o[u >> 2] | 0) >>> 0) { + o[c >> 2] = C + 1; + E = s[C >> 0] | 0; + } else E = Hn(e) | 0; + C = n[(E + 5321) >> 0] | 0; + if ( + ((C & 255) >>> 0 >= t >>> 0) | + ((p >>> 0 > d >>> 0) | (((p | 0) == (d | 0)) & (g >>> 0 > f >>> 0))) + ) { + f = E; + r = 72; + break e; + } + } + } + C = n[(f + 5321) >> 0] | 0; + r = C & 255; + if (r >>> 0 < t >>> 0) { + g = 0; + do { + g = (r + (ie(g, t) | 0)) | 0; + r = o[c >> 2] | 0; + if (r >>> 0 < (o[u >> 2] | 0) >>> 0) { + o[c >> 2] = r + 1; + d = s[r >> 0] | 0; + } else d = Hn(e) | 0; + C = n[(d + 5321) >> 0] | 0; + r = C & 255; + } while ((r >>> 0 < t >>> 0) & (g >>> 0 < 119304647)); + p = 0; + } else { + g = 0; + p = 0; + d = f; + } + if ((C & 255) >>> 0 < t >>> 0) { + r = Ei(-1, -1, t | 0, 0) | 0; + f = R; + while (1) { + if ((p >>> 0 > f >>> 0) | (((p | 0) == (f | 0)) & (g >>> 0 > r >>> 0))) { + f = d; + r = 72; + break e; + } + E = Ci(g | 0, p | 0, t | 0, 0) | 0; + I = R; + C = C & 255; + if ((I >>> 0 > 4294967295) | (((I | 0) == -1) & (E >>> 0 > ~C >>> 0))) { + f = d; + r = 72; + break e; + } + g = ai(C | 0, 0, E | 0, I | 0) | 0; + p = R; + d = o[c >> 2] | 0; + if (d >>> 0 < (o[u >> 2] | 0) >>> 0) { + o[c >> 2] = d + 1; + d = s[d >> 0] | 0; + } else d = Hn(e) | 0; + C = n[(d + 5321) >> 0] | 0; + if ((C & 255) >>> 0 >= t >>> 0) { + f = d; + r = 72; + break; + } + } + } else { + f = d; + r = 72; + } + } + } while (0); + if ((r | 0) == 72) + if ((s[(f + 5321) >> 0] | 0) >>> 0 < t >>> 0) { + do { + r = o[c >> 2] | 0; + if (r >>> 0 < (o[u >> 2] | 0) >>> 0) { + o[c >> 2] = r + 1; + r = s[r >> 0] | 0; + } else r = Hn(e) | 0; + } while ((s[(r + 5321) >> 0] | 0) >>> 0 < t >>> 0); + o[(Ye() | 0) >> 2] = 34; + p = A; + g = i; + } + if (o[u >> 2] | 0) o[c >> 2] = (o[c >> 2] | 0) + -1; + if (!((p >>> 0 < A >>> 0) | (((p | 0) == (A | 0)) & (g >>> 0 < i >>> 0)))) { + if (!((((i & 1) | 0) != 0) | (0 != 0) | ((h | 0) != 0))) { + o[(Ye() | 0) >> 2] = 34; + I = ai(i | 0, A | 0, -1, -1) | 0; + E = R; + R = E; + l = a; + return I | 0; + } + if ((p >>> 0 > A >>> 0) | (((p | 0) == (A | 0)) & (g >>> 0 > i >>> 0))) { + o[(Ye() | 0) >> 2] = 34; + E = A; + I = i; + R = E; + l = a; + return I | 0; + } + } + I = (((h | 0) < 0) << 31) >> 31; + I = ii((g ^ h) | 0, (p ^ I) | 0, h | 0, I | 0) | 0; + E = R; + R = E; + l = a; + return I | 0; + } + function Gn(e, t, r) { + e = e | 0; + t = t | 0; + r = r | 0; + var i = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0.0, + C = 0, + E = 0, + I = 0, + m = 0, + y = 0, + w = 0, + v = 0, + D = 0, + b = 0, + S = 0, + k = 0, + x = 0, + F = 0.0, + M = 0, + N = 0.0, + K = 0.0, + L = 0.0, + T = 0.0; + i = l; + l = (l + 512) | 0; + c = i; + if (!t) { + t = 24; + a = -149; + } else if ((t | 0) == 2) { + t = 53; + a = -1074; + } else if ((t | 0) == 1) { + t = 53; + a = -1074; + } else { + K = 0.0; + l = i; + return +K; + } + g = (e + 4) | 0; + f = (e + 100) | 0; + do { + A = o[g >> 2] | 0; + if (A >>> 0 < (o[f >> 2] | 0) >>> 0) { + o[g >> 2] = A + 1; + m = s[A >> 0] | 0; + } else m = Hn(e) | 0; + } while ((jn(m) | 0) != 0); + do { + if (((m | 0) == 43) | ((m | 0) == 45)) { + A = (1 - ((((m | 0) == 45) & 1) << 1)) | 0; + h = o[g >> 2] | 0; + if (h >>> 0 < (o[f >> 2] | 0) >>> 0) { + o[g >> 2] = h + 1; + m = s[h >> 0] | 0; + break; + } else { + m = Hn(e) | 0; + break; + } + } else A = 1; + } while (0); + C = 0; + do { + if ((m | 32 | 0) != (n[(5600 + C) >> 0] | 0)) break; + do { + if (C >>> 0 < 7) { + h = o[g >> 2] | 0; + if (h >>> 0 < (o[f >> 2] | 0) >>> 0) { + o[g >> 2] = h + 1; + m = s[h >> 0] | 0; + break; + } else { + m = Hn(e) | 0; + break; + } + } + } while (0); + C = (C + 1) | 0; + } while (C >>> 0 < 8); + do { + if ((C | 0) == 3) p = 23; + else if ((C | 0) != 8) { + h = (r | 0) != 0; + if ((C >>> 0 > 3) & h) + if ((C | 0) == 8) break; + else { + p = 23; + break; + } + e: do { + if (!C) { + C = 0; + do { + if ((m | 32 | 0) != (n[(5616 + C) >> 0] | 0)) break e; + do { + if (C >>> 0 < 2) { + E = o[g >> 2] | 0; + if (E >>> 0 < (o[f >> 2] | 0) >>> 0) { + o[g >> 2] = E + 1; + m = s[E >> 0] | 0; + break; + } else { + m = Hn(e) | 0; + break; + } + } + } while (0); + C = (C + 1) | 0; + } while (C >>> 0 < 3); + } + } while (0); + if (!C) { + do { + if ((m | 0) == 48) { + h = o[g >> 2] | 0; + if (h >>> 0 < (o[f >> 2] | 0) >>> 0) { + o[g >> 2] = h + 1; + h = s[h >> 0] | 0; + } else h = Hn(e) | 0; + if ((h | 32 | 0) != 120) { + if (!(o[f >> 2] | 0)) { + m = 48; + break; + } + o[g >> 2] = (o[g >> 2] | 0) + -1; + m = 48; + break; + } + c = o[g >> 2] | 0; + if (c >>> 0 < (o[f >> 2] | 0) >>> 0) { + o[g >> 2] = c + 1; + v = s[c >> 0] | 0; + y = 0; + } else { + v = Hn(e) | 0; + y = 0; + } + while (1) { + if ((v | 0) == 46) { + p = 70; + break; + } else if ((v | 0) != 48) { + c = 0; + h = 0; + E = 0; + C = 0; + m = 0; + w = 0; + F = 1.0; + I = 0; + d = 0.0; + break; + } + c = o[g >> 2] | 0; + if (c >>> 0 < (o[f >> 2] | 0) >>> 0) { + o[g >> 2] = c + 1; + v = s[c >> 0] | 0; + y = 1; + continue; + } else { + v = Hn(e) | 0; + y = 1; + continue; + } + } + if ((p | 0) == 70) { + c = o[g >> 2] | 0; + if (c >>> 0 < (o[f >> 2] | 0) >>> 0) { + o[g >> 2] = c + 1; + v = s[c >> 0] | 0; + } else v = Hn(e) | 0; + if ((v | 0) == 48) { + E = 0; + C = 0; + do { + c = o[g >> 2] | 0; + if (c >>> 0 < (o[f >> 2] | 0) >>> 0) { + o[g >> 2] = c + 1; + v = s[c >> 0] | 0; + } else v = Hn(e) | 0; + E = ai(E | 0, C | 0, -1, -1) | 0; + C = R; + } while ((v | 0) == 48); + c = 0; + h = 0; + y = 1; + m = 1; + w = 0; + F = 1.0; + I = 0; + d = 0.0; + } else { + c = 0; + h = 0; + E = 0; + C = 0; + m = 1; + w = 0; + F = 1.0; + I = 0; + d = 0.0; + } + } + e: while (1) { + b = (v + -48) | 0; + do { + if (b >>> 0 >= 10) { + D = v | 32; + S = (v | 0) == 46; + if (!((((D + -97) | 0) >>> 0 < 6) | S)) break e; + if (S) + if (!m) { + E = h; + C = c; + m = 1; + break; + } else { + v = 46; + break e; + } + else { + b = (v | 0) > 57 ? (D + -87) | 0 : b; + p = 83; + break; + } + } else p = 83; + } while (0); + if ((p | 0) == 83) { + p = 0; + do { + if (!(((c | 0) < 0) | (((c | 0) == 0) & (h >>> 0 < 8)))) { + if (((c | 0) < 0) | (((c | 0) == 0) & (h >>> 0 < 14))) { + K = F * 0.0625; + N = K; + d = d + K * +(b | 0); + break; + } + if (((b | 0) == 0) | ((w | 0) != 0)) N = F; + else { + w = 1; + N = F; + d = d + F * 0.5; + } + } else { + N = F; + I = (b + (I << 4)) | 0; + } + } while (0); + h = ai(h | 0, c | 0, 1, 0) | 0; + c = R; + y = 1; + F = N; + } + v = o[g >> 2] | 0; + if (v >>> 0 < (o[f >> 2] | 0) >>> 0) { + o[g >> 2] = v + 1; + v = s[v >> 0] | 0; + continue; + } else { + v = Hn(e) | 0; + continue; + } + } + if (!y) { + t = (o[f >> 2] | 0) == 0; + if (!t) o[g >> 2] = (o[g >> 2] | 0) + -1; + if (r) { + if ( + !t ? ((u = o[g >> 2] | 0), (o[g >> 2] = u + -1), (m | 0) != 0) : 0 + ) + o[g >> 2] = u + -2; + } else Jn(e, 0); + K = +(A | 0) * 0.0; + l = i; + return +K; + } + p = (m | 0) == 0; + u = p ? h : E; + p = p ? c : C; + if (((c | 0) < 0) | (((c | 0) == 0) & (h >>> 0 < 8))) + do { + I = I << 4; + h = ai(h | 0, c | 0, 1, 0) | 0; + c = R; + } while (((c | 0) < 0) | (((c | 0) == 0) & (h >>> 0 < 8))); + do { + if ((v | 32 | 0) == 112) { + h = ri(e, r) | 0; + c = R; + if (((h | 0) == 0) & ((c | 0) == -2147483648)) + if (!r) { + Jn(e, 0); + K = 0.0; + l = i; + return +K; + } else { + if (!(o[f >> 2] | 0)) { + h = 0; + c = 0; + break; + } + o[g >> 2] = (o[g >> 2] | 0) + -1; + h = 0; + c = 0; + break; + } + } else if (!(o[f >> 2] | 0)) { + h = 0; + c = 0; + } else { + o[g >> 2] = (o[g >> 2] | 0) + -1; + h = 0; + c = 0; + } + } while (0); + u = si(u | 0, p | 0, 2) | 0; + u = ai(u | 0, R | 0, -32, -1) | 0; + c = ai(u | 0, R | 0, h | 0, c | 0) | 0; + u = R; + if (!I) { + K = +(A | 0) * 0.0; + l = i; + return +K; + } + if (((u | 0) > 0) | (((u | 0) == 0) & (c >>> 0 > ((0 - a) | 0) >>> 0))) { + o[(Ye() | 0) >> 2] = 34; + K = +(A | 0) * 1.7976931348623157e308 * 1.7976931348623157e308; + l = i; + return +K; + } + M = (a + -106) | 0; + x = (((M | 0) < 0) << 31) >> 31; + if (((u | 0) < (x | 0)) | (((u | 0) == (x | 0)) & (c >>> 0 < M >>> 0))) { + o[(Ye() | 0) >> 2] = 34; + K = +(A | 0) * 2.2250738585072014e-308 * 2.2250738585072014e-308; + l = i; + return +K; + } + if ((I | 0) > -1) + do { + I = I << 1; + if (!(d >= 0.5)) F = d; + else { + F = d + -1.0; + I = I | 1; + } + d = d + F; + c = ai(c | 0, u | 0, -1, -1) | 0; + u = R; + } while ((I | 0) > -1); + a = ii(32, 0, a | 0, ((((a | 0) < 0) << 31) >> 31) | 0) | 0; + a = ai(c | 0, u | 0, a | 0, R | 0) | 0; + M = R; + if ((0 > (M | 0)) | ((0 == (M | 0)) & (t >>> 0 > a >>> 0))) + if ((a | 0) < 0) { + t = 0; + p = 126; + } else { + t = a; + p = 124; + } + else p = 124; + if ((p | 0) == 124) + if ((t | 0) < 53) p = 126; + else { + a = t; + F = +(A | 0); + N = 0.0; + } + if ((p | 0) == 126) { + N = +(A | 0); + a = t; + F = N; + N = +Ve(+(+qn(1.0, (84 - t) | 0)), +N); + } + M = ((a | 0) < 32) & (d != 0.0) & (((I & 1) | 0) == 0); + d = F * (M ? 0.0 : d) + (N + F * +((((M & 1) + I) | 0) >>> 0)) - N; + if (!(d != 0.0)) o[(Ye() | 0) >> 2] = 34; + K = +zn(d, c); + l = i; + return +K; + } + } while (0); + h = (a + t) | 0; + u = (0 - h) | 0; + b = 0; + while (1) { + if ((m | 0) == 46) { + p = 137; + break; + } else if ((m | 0) != 48) { + k = 0; + S = 0; + D = 0; + break; + } + C = o[g >> 2] | 0; + if (C >>> 0 < (o[f >> 2] | 0) >>> 0) { + o[g >> 2] = C + 1; + m = s[C >> 0] | 0; + b = 1; + continue; + } else { + m = Hn(e) | 0; + b = 1; + continue; + } + } + if ((p | 0) == 137) { + p = o[g >> 2] | 0; + if (p >>> 0 < (o[f >> 2] | 0) >>> 0) { + o[g >> 2] = p + 1; + m = s[p >> 0] | 0; + } else m = Hn(e) | 0; + if ((m | 0) == 48) { + k = 0; + S = 0; + do { + k = ai(k | 0, S | 0, -1, -1) | 0; + S = R; + p = o[g >> 2] | 0; + if (p >>> 0 < (o[f >> 2] | 0) >>> 0) { + o[g >> 2] = p + 1; + m = s[p >> 0] | 0; + } else m = Hn(e) | 0; + } while ((m | 0) == 48); + b = 1; + D = 1; + } else { + k = 0; + S = 0; + D = 1; + } + } + o[c >> 2] = 0; + v = (m + -48) | 0; + x = (m | 0) == 46; + e: do { + if ((v >>> 0 < 10) | x) { + p = (c + 496) | 0; + w = 0; + y = 0; + I = 0; + E = 0; + C = 0; + t: while (1) { + do { + if (x) + if (!D) { + k = w; + S = y; + D = 1; + } else break t; + else { + x = ai(w | 0, y | 0, 1, 0) | 0; + y = R; + M = (m | 0) != 48; + if ((E | 0) >= 125) { + if (!M) { + w = x; + break; + } + o[p >> 2] = o[p >> 2] | 1; + w = x; + break; + } + w = (c + (E << 2)) | 0; + if (I) v = (m + -48 + (((o[w >> 2] | 0) * 10) | 0)) | 0; + o[w >> 2] = v; + I = (I + 1) | 0; + v = (I | 0) == 9; + w = x; + b = 1; + I = v ? 0 : I; + E = ((v & 1) + E) | 0; + C = M ? x : C; + } + } while (0); + m = o[g >> 2] | 0; + if (m >>> 0 < (o[f >> 2] | 0) >>> 0) { + o[g >> 2] = m + 1; + m = s[m >> 0] | 0; + } else m = Hn(e) | 0; + v = (m + -48) | 0; + x = (m | 0) == 46; + if (!((v >>> 0 < 10) | x)) { + p = 160; + break e; + } + } + v = (b | 0) != 0; + p = 168; + } else { + w = 0; + y = 0; + I = 0; + E = 0; + C = 0; + p = 160; + } + } while (0); + do { + if ((p | 0) == 160) { + v = (D | 0) == 0; + k = v ? w : k; + S = v ? y : S; + v = (b | 0) != 0; + if (!(v & ((m | 32 | 0) == 101))) + if ((m | 0) > -1) { + p = 168; + break; + } else { + p = 170; + break; + } + v = ri(e, r) | 0; + m = R; + do { + if (((v | 0) == 0) & ((m | 0) == -2147483648)) + if (!r) { + Jn(e, 0); + K = 0.0; + l = i; + return +K; + } else { + if (!(o[f >> 2] | 0)) { + v = 0; + m = 0; + break; + } + o[g >> 2] = (o[g >> 2] | 0) + -1; + v = 0; + m = 0; + break; + } + } while (0); + e = ai(v | 0, m | 0, k | 0, S | 0) | 0; + S = R; + } + } while (0); + if ((p | 0) == 168) + if (o[f >> 2] | 0) { + o[g >> 2] = (o[g >> 2] | 0) + -1; + if (v) e = k; + else p = 171; + } else p = 170; + if ((p | 0) == 170) + if (v) e = k; + else p = 171; + if ((p | 0) == 171) { + o[(Ye() | 0) >> 2] = 22; + Jn(e, 0); + K = 0.0; + l = i; + return +K; + } + g = o[c >> 2] | 0; + if (!g) { + K = +(A | 0) * 0.0; + l = i; + return +K; + } + if ( + ((e | 0) == (w | 0)) & + ((S | 0) == (y | 0)) & + (((y | 0) < 0) | (((y | 0) == 0) & (w >>> 0 < 10))) + ? (t >>> 0 > 30) | (((g >>> t) | 0) == 0) + : 0 + ) { + K = +(A | 0) * +(g >>> 0); + l = i; + return +K; + } + M = ((a | 0) / -2) | 0; + x = (((M | 0) < 0) << 31) >> 31; + if (((S | 0) > (x | 0)) | (((S | 0) == (x | 0)) & (e >>> 0 > M >>> 0))) { + o[(Ye() | 0) >> 2] = 34; + K = +(A | 0) * 1.7976931348623157e308 * 1.7976931348623157e308; + l = i; + return +K; + } + M = (a + -106) | 0; + x = (((M | 0) < 0) << 31) >> 31; + if (((S | 0) < (x | 0)) | (((S | 0) == (x | 0)) & (e >>> 0 < M >>> 0))) { + o[(Ye() | 0) >> 2] = 34; + K = +(A | 0) * 2.2250738585072014e-308 * 2.2250738585072014e-308; + l = i; + return +K; + } + if (I) { + if ((I | 0) < 9) { + g = (c + (E << 2)) | 0; + f = o[g >> 2] | 0; + do { + f = (f * 10) | 0; + I = (I + 1) | 0; + } while ((I | 0) != 9); + o[g >> 2] = f; + } + E = (E + 1) | 0; + } + if ((C | 0) < 9 ? ((C | 0) <= (e | 0)) & ((e | 0) < 18) : 0) { + if ((e | 0) == 9) { + K = +(A | 0) * +((o[c >> 2] | 0) >>> 0); + l = i; + return +K; + } + if ((e | 0) < 9) { + K = + (+(A | 0) * +((o[c >> 2] | 0) >>> 0)) / + +(o[(5632 + ((8 - e) << 2)) >> 2] | 0); + l = i; + return +K; + } + M = (t + 27 + (ie(e, -3) | 0)) | 0; + g = o[c >> 2] | 0; + if (((M | 0) > 30) | (((g >>> M) | 0) == 0)) { + K = +(A | 0) * +(g >>> 0) * +(o[(5632 + ((e + -10) << 2)) >> 2] | 0); + l = i; + return +K; + } + } + g = (e | 0) % 9 | 0; + if (!g) { + g = 0; + f = 0; + } else { + r = (e | 0) > -1 ? g : (g + 9) | 0; + p = o[(5632 + ((8 - r) << 2)) >> 2] | 0; + if (E) { + C = (1e9 / (p | 0)) | 0; + g = 0; + f = 0; + I = 0; + do { + k = (c + (I << 2)) | 0; + x = o[k >> 2] | 0; + M = ((((x >>> 0) / (p >>> 0)) | 0) + f) | 0; + o[k >> 2] = M; + f = ie((x >>> 0) % (p >>> 0) | 0, C) | 0; + x = I; + I = (I + 1) | 0; + if (((x | 0) == (g | 0)) & ((M | 0) == 0)) { + g = I & 127; + e = (e + -9) | 0; + } + } while ((I | 0) != (E | 0)); + if (f) { + o[(c + (E << 2)) >> 2] = f; + E = (E + 1) | 0; + } + } else { + g = 0; + E = 0; + } + f = 0; + e = (9 - r + e) | 0; + } + e: while (1) { + r = (c + (g << 2)) | 0; + if ((e | 0) < 18) { + do { + C = 0; + r = (E + 127) | 0; + while (1) { + r = r & 127; + p = (c + (r << 2)) | 0; + I = si(o[p >> 2] | 0, 0, 29) | 0; + I = ai(I | 0, R | 0, C | 0, 0) | 0; + C = R; + if ((C >>> 0 > 0) | (((C | 0) == 0) & (I >>> 0 > 1e9))) { + M = Ei(I | 0, C | 0, 1e9, 0) | 0; + I = Ii(I | 0, C | 0, 1e9, 0) | 0; + C = M; + } else C = 0; + o[p >> 2] = I; + p = (r | 0) == (g | 0); + if (!(((r | 0) != (((E + 127) & 127) | 0)) | p)) + E = (I | 0) == 0 ? r : E; + if (p) break; + else r = (r + -1) | 0; + } + f = (f + -29) | 0; + } while ((C | 0) == 0); + } else { + if ((e | 0) != 18) break; + do { + if ((o[r >> 2] | 0) >>> 0 >= 9007199) { + e = 18; + break e; + } + C = 0; + p = (E + 127) | 0; + while (1) { + p = p & 127; + I = (c + (p << 2)) | 0; + m = si(o[I >> 2] | 0, 0, 29) | 0; + m = ai(m | 0, R | 0, C | 0, 0) | 0; + C = R; + if ((C >>> 0 > 0) | (((C | 0) == 0) & (m >>> 0 > 1e9))) { + M = Ei(m | 0, C | 0, 1e9, 0) | 0; + m = Ii(m | 0, C | 0, 1e9, 0) | 0; + C = M; + } else C = 0; + o[I >> 2] = m; + I = (p | 0) == (g | 0); + if (!(((p | 0) != (((E + 127) & 127) | 0)) | I)) + E = (m | 0) == 0 ? p : E; + if (I) break; + else p = (p + -1) | 0; + } + f = (f + -29) | 0; + } while ((C | 0) == 0); + } + g = (g + 127) & 127; + if ((g | 0) == (E | 0)) { + M = (E + 127) & 127; + E = (c + (((E + 126) & 127) << 2)) | 0; + o[E >> 2] = o[E >> 2] | o[(c + (M << 2)) >> 2]; + E = M; + } + o[(c + (g << 2)) >> 2] = C; + e = (e + 9) | 0; + } + e: while (1) { + r = (E + 1) & 127; + p = (c + (((E + 127) & 127) << 2)) | 0; + while (1) { + I = (e | 0) == 18; + C = (e | 0) > 27 ? 9 : 1; + while (1) { + m = 0; + while (1) { + y = (m + g) & 127; + if ((y | 0) == (E | 0)) { + m = 2; + break; + } + w = o[(c + (y << 2)) >> 2] | 0; + v = o[(5624 + (m << 2)) >> 2] | 0; + if (w >>> 0 < v >>> 0) { + m = 2; + break; + } + y = (m + 1) | 0; + if (w >>> 0 > v >>> 0) break; + if ((y | 0) < 2) m = y; + else { + m = y; + break; + } + } + if (((m | 0) == 2) & I) break e; + f = (C + f) | 0; + if ((g | 0) == (E | 0)) g = E; + else break; + } + I = ((1 << C) + -1) | 0; + m = 1e9 >>> C; + y = g; + w = 0; + do { + k = (c + (g << 2)) | 0; + x = o[k >> 2] | 0; + M = ((x >>> C) + w) | 0; + o[k >> 2] = M; + w = ie(x & I, m) | 0; + M = ((g | 0) == (y | 0)) & ((M | 0) == 0); + g = (g + 1) & 127; + e = M ? (e + -9) | 0 : e; + y = M ? g : y; + } while ((g | 0) != (E | 0)); + if (!w) { + g = y; + continue; + } + if ((r | 0) != (y | 0)) break; + o[p >> 2] = o[p >> 2] | 1; + g = y; + } + o[(c + (E << 2)) >> 2] = w; + g = y; + E = r; + } + e = g & 127; + if ((e | 0) == (E | 0)) { + o[(c + ((r + -1) << 2)) >> 2] = 0; + E = r; + } + F = +((o[(c + (e << 2)) >> 2] | 0) >>> 0); + e = (g + 1) & 127; + if ((e | 0) == (E | 0)) { + E = (E + 1) & 127; + o[(c + ((E + -1) << 2)) >> 2] = 0; + } + d = +(A | 0); + N = d * (F * 1.0e9 + +((o[(c + (e << 2)) >> 2] | 0) >>> 0)); + A = (f + 53) | 0; + a = (A - a) | 0; + if ((a | 0) < (t | 0)) + if ((a | 0) < 0) { + t = 0; + e = 1; + p = 244; + } else { + t = a; + e = 1; + p = 243; + } + else { + e = 0; + p = 243; + } + if ((p | 0) == 243) + if ((t | 0) < 53) p = 244; + else { + F = 0.0; + K = 0.0; + } + if ((p | 0) == 244) { + T = +Ve(+(+qn(1.0, (105 - t) | 0)), +N); + L = +ot(+N, +(+qn(1.0, (53 - t) | 0))); + F = T; + K = L; + N = T + (N - L); + } + r = (g + 2) & 127; + do { + if ((r | 0) != (E | 0)) { + c = o[(c + (r << 2)) >> 2] | 0; + do { + if (c >>> 0 >= 5e8) { + if (c >>> 0 > 5e8) { + K = d * 0.75 + K; + break; + } + if ((((g + 3) & 127) | 0) == (E | 0)) { + K = d * 0.5 + K; + break; + } else { + K = d * 0.75 + K; + break; + } + } else { + if ((c | 0) == 0 ? (((g + 3) & 127) | 0) == (E | 0) : 0) break; + K = d * 0.25 + K; + } + } while (0); + if (((53 - t) | 0) <= 1) break; + if (+ot(+K, 1.0) != 0.0) break; + K = K + 1.0; + } + } while (0); + d = N + K - F; + do { + if (((A & 2147483647) | 0) > ((-2 - h) | 0)) { + if (+J(+d) >= 9007199254740992.0) { + e = ((e | 0) != 0) & ((t | 0) == (a | 0)) ? 0 : e; + f = (f + 1) | 0; + d = d * 0.5; + } + if (((f + 50) | 0) <= (u | 0) ? !(((e | 0) != 0) & (K != 0.0)) : 0) break; + o[(Ye() | 0) >> 2] = 34; + } + } while (0); + T = +zn(d, f); + l = i; + return +T; + } else if ((C | 0) == 3) { + t = o[g >> 2] | 0; + if (t >>> 0 < (o[f >> 2] | 0) >>> 0) { + o[g >> 2] = t + 1; + t = s[t >> 0] | 0; + } else t = Hn(e) | 0; + if ((t | 0) == 40) t = 1; + else { + if (!(o[f >> 2] | 0)) { + T = B; + l = i; + return +T; + } + o[g >> 2] = (o[g >> 2] | 0) + -1; + T = B; + l = i; + return +T; + } + while (1) { + A = o[g >> 2] | 0; + if (A >>> 0 < (o[f >> 2] | 0) >>> 0) { + o[g >> 2] = A + 1; + A = s[A >> 0] | 0; + } else A = Hn(e) | 0; + if ( + !((((A + -48) | 0) >>> 0 < 10) | (((A + -65) | 0) >>> 0 < 26)) + ? !((((A + -97) | 0) >>> 0 < 26) | ((A | 0) == 95)) + : 0 + ) + break; + t = (t + 1) | 0; + } + if ((A | 0) == 41) { + T = B; + l = i; + return +T; + } + A = (o[f >> 2] | 0) == 0; + if (!A) o[g >> 2] = (o[g >> 2] | 0) + -1; + if (!h) { + o[(Ye() | 0) >> 2] = 22; + Jn(e, 0); + T = 0.0; + l = i; + return +T; + } + if (((t | 0) == 0) | A) { + T = B; + l = i; + return +T; + } + do { + t = (t + -1) | 0; + o[g >> 2] = (o[g >> 2] | 0) + -1; + } while ((t | 0) != 0); + d = B; + l = i; + return +d; + } else { + if (o[f >> 2] | 0) o[g >> 2] = (o[g >> 2] | 0) + -1; + o[(Ye() | 0) >> 2] = 22; + Jn(e, 0); + T = 0.0; + l = i; + return +T; + } + } + } while (0); + if ((p | 0) == 23) { + t = (o[f >> 2] | 0) == 0; + if (!t) o[g >> 2] = (o[g >> 2] | 0) + -1; + if (!((C >>> 0 < 4) | ((r | 0) == 0) | t)) + do { + o[g >> 2] = (o[g >> 2] | 0) + -1; + C = (C + -1) | 0; + } while (C >>> 0 > 3); + } + T = +(A | 0) * Q; + l = i; + return +T; + } + function Jn(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + n = 0, + i = 0, + s = 0; + r = l; + o[(e + 104) >> 2] = t; + i = o[(e + 8) >> 2] | 0; + n = o[(e + 4) >> 2] | 0; + s = (i - n) | 0; + o[(e + 108) >> 2] = s; + if (((t | 0) != 0) & ((s | 0) > (t | 0))) { + o[(e + 100) >> 2] = n + t; + l = r; + return; + } else { + o[(e + 100) >> 2] = i; + l = r; + return; + } + } + function Hn(e) { + e = e | 0; + var t = 0, + r = 0, + i = 0, + A = 0, + a = 0, + c = 0, + u = 0; + r = l; + a = (e + 104) | 0; + u = o[a >> 2] | 0; + if (!((u | 0) != 0 ? (o[(e + 108) >> 2] | 0) >= (u | 0) : 0)) c = 3; + if ((c | 0) == 3 ? ((t = Vn(e) | 0), (t | 0) >= 0) : 0) { + c = o[a >> 2] | 0; + a = o[(e + 8) >> 2] | 0; + if ( + (c | 0) != 0 + ? ((i = o[(e + 4) >> 2] | 0), + (A = (c - (o[(e + 108) >> 2] | 0) + -1) | 0), + ((a - i) | 0) > (A | 0)) + : 0 + ) + o[(e + 100) >> 2] = i + A; + else o[(e + 100) >> 2] = a; + i = o[(e + 4) >> 2] | 0; + if (a) { + u = (e + 108) | 0; + o[u >> 2] = a + 1 - i + (o[u >> 2] | 0); + } + e = (i + -1) | 0; + if ((s[e >> 0] | 0 | 0) == (t | 0)) { + u = t; + l = r; + return u | 0; + } + n[e >> 0] = t; + u = t; + l = r; + return u | 0; + } + o[(e + 100) >> 2] = 0; + u = -1; + l = r; + return u | 0; + } + function qn(e, t) { + e = +e; + t = t | 0; + var r = 0, + n = 0; + r = l; + if ((t | 0) > 1023) { + e = e * 8.98846567431158e307; + n = (t + -1023) | 0; + if ((n | 0) > 1023) { + t = (t + -2046) | 0; + t = (t | 0) > 1023 ? 1023 : t; + e = e * 8.98846567431158e307; + } else t = n; + } else if ((t | 0) < -1022) { + e = e * 2.2250738585072014e-308; + n = (t + 1022) | 0; + if ((n | 0) < -1022) { + t = (t + 2044) | 0; + t = (t | 0) < -1022 ? -1022 : t; + e = e * 2.2250738585072014e-308; + } else t = n; + } + t = si((t + 1023) | 0, 0, 52) | 0; + n = R; + o[g >> 2] = t; + o[(g + 4) >> 2] = n; + e = e * +u[g >> 3]; + l = r; + return +e; + } + function zn(e, t) { + e = +e; + t = t | 0; + var r = 0; + r = l; + e = +qn(e, t); + l = r; + return +e; + } + function Wn(e) { + e = e | 0; + var t = 0, + r = 0, + i = 0; + r = l; + i = (e + 74) | 0; + t = n[i >> 0] | 0; + n[i >> 0] = (t + 255) | t; + i = (e + 20) | 0; + t = (e + 44) | 0; + if ((o[i >> 2] | 0) >>> 0 > (o[t >> 2] | 0) >>> 0) + _i[o[(e + 36) >> 2] & 1](e, 0, 0) | 0; + o[(e + 16) >> 2] = 0; + o[(e + 28) >> 2] = 0; + o[i >> 2] = 0; + i = o[e >> 2] | 0; + if (!(i & 20)) { + i = o[t >> 2] | 0; + o[(e + 8) >> 2] = i; + o[(e + 4) >> 2] = i; + i = 0; + l = r; + return i | 0; + } + if (!(i & 4)) { + i = -1; + l = r; + return i | 0; + } + o[e >> 2] = i | 32; + i = -1; + l = r; + return i | 0; + } + function Vn(e) { + e = e | 0; + var t = 0, + r = 0; + t = l; + l = (l + 16) | 0; + r = t; + if ((o[(e + 8) >> 2] | 0) == 0 ? (Wn(e) | 0) != 0 : 0) e = -1; + else if ((_i[o[(e + 32) >> 2] & 1](e, r, 1) | 0) == 1) e = s[r >> 0] | 0; + else e = -1; + l = t; + return e | 0; + } + function Xn(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + n = 0, + i = 0.0, + s = 0, + A = 0; + r = l; + l = (l + 112) | 0; + n = r; + A = (n + 0) | 0; + s = (A + 112) | 0; + do { + o[A >> 2] = 0; + A = (A + 4) | 0; + } while ((A | 0) < (s | 0)); + s = (n + 4) | 0; + o[s >> 2] = e; + A = (n + 8) | 0; + o[A >> 2] = -1; + o[(n + 44) >> 2] = e; + o[(n + 76) >> 2] = -1; + Jn(n, 0); + i = +Gn(n, 1, 1); + n = ((o[s >> 2] | 0) - (o[A >> 2] | 0) + (o[(n + 108) >> 2] | 0)) | 0; + if (!t) { + l = r; + return +i; + } + if (n) e = (e + n) | 0; + o[t >> 2] = e; + l = r; + return +i; + } + function Zn(e, t, r) { + e = e | 0; + t = t | 0; + r = r | 0; + var n = 0, + i = 0, + s = 0; + n = l; + l = (l + 112) | 0; + s = n; + o[s >> 2] = 0; + i = (s + 4) | 0; + o[i >> 2] = e; + o[(s + 44) >> 2] = e; + if ((e | 0) < 0) o[(s + 8) >> 2] = -1; + else o[(s + 8) >> 2] = e + 2147483647; + o[(s + 76) >> 2] = -1; + Jn(s, 0); + r = Yn(s, r, 1, -2147483648, 0) | 0; + if (!t) { + l = n; + return r | 0; + } + o[t >> 2] = e + ((o[i >> 2] | 0) + (o[(s + 108) >> 2] | 0) - (o[(s + 8) >> 2] | 0)); + l = n; + return r | 0; + } + function $n(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + i = 0, + o = 0; + r = l; + o = n[e >> 0] | 0; + i = n[t >> 0] | 0; + if ((o << 24) >> 24 == 0 ? 1 : (o << 24) >> 24 != (i << 24) >> 24) t = o; + else { + do { + e = (e + 1) | 0; + t = (t + 1) | 0; + o = n[e >> 0] | 0; + i = n[t >> 0] | 0; + } while (!((o << 24) >> 24 == 0 ? 1 : (o << 24) >> 24 != (i << 24) >> 24)); + t = o; + } + l = r; + return ((t & 255) - (i & 255)) | 0; + } + function ei(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + n = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0, + C = 0; + r = l; + i = (e + 4) | 0; + n = o[i >> 2] | 0; + u = n & -8; + a = (e + u) | 0; + h = o[1210] | 0; + A = n & 3; + if (!(((A | 0) != 1) & (e >>> 0 >= h >>> 0) & (e >>> 0 < a >>> 0))) Xe(); + s = (e + (u | 4)) | 0; + p = o[s >> 2] | 0; + if (!(p & 1)) Xe(); + if (!A) { + if (t >>> 0 < 256) { + C = 0; + l = r; + return C | 0; + } + if ( + u >>> 0 >= ((t + 4) | 0) >>> 0 ? ((u - t) | 0) >>> 0 <= (o[1326] << 1) >>> 0 : 0 + ) { + C = e; + l = r; + return C | 0; + } + C = 0; + l = r; + return C | 0; + } + if (u >>> 0 >= t >>> 0) { + A = (u - t) | 0; + if (A >>> 0 <= 15) { + C = e; + l = r; + return C | 0; + } + o[i >> 2] = (n & 1) | t | 2; + o[(e + (t + 4)) >> 2] = A | 3; + o[s >> 2] = o[s >> 2] | 1; + ti((e + t) | 0, A); + C = e; + l = r; + return C | 0; + } + if ((a | 0) == (o[1212] | 0)) { + s = ((o[1209] | 0) + u) | 0; + if (s >>> 0 <= t >>> 0) { + C = 0; + l = r; + return C | 0; + } + C = (s - t) | 0; + o[i >> 2] = (n & 1) | t | 2; + o[(e + (t + 4)) >> 2] = C | 1; + o[1212] = e + t; + o[1209] = C; + C = e; + l = r; + return C | 0; + } + if ((a | 0) == (o[1211] | 0)) { + A = ((o[1208] | 0) + u) | 0; + if (A >>> 0 < t >>> 0) { + C = 0; + l = r; + return C | 0; + } + s = (A - t) | 0; + if (s >>> 0 > 15) { + o[i >> 2] = (n & 1) | t | 2; + o[(e + (t + 4)) >> 2] = s | 1; + o[(e + A) >> 2] = s; + n = (e + (A + 4)) | 0; + o[n >> 2] = o[n >> 2] & -2; + n = (e + t) | 0; + } else { + o[i >> 2] = (n & 1) | A | 2; + n = (e + (A + 4)) | 0; + o[n >> 2] = o[n >> 2] | 1; + n = 0; + s = 0; + } + o[1208] = s; + o[1211] = n; + C = e; + l = r; + return C | 0; + } + if (p & 2) { + C = 0; + l = r; + return C | 0; + } + s = ((p & -8) + u) | 0; + if (s >>> 0 < t >>> 0) { + C = 0; + l = r; + return C | 0; + } + A = (s - t) | 0; + f = p >>> 3; + do { + if (p >>> 0 >= 256) { + g = o[(e + (u + 24)) >> 2] | 0; + f = o[(e + (u + 12)) >> 2] | 0; + do { + if ((f | 0) == (a | 0)) { + p = (e + (u + 20)) | 0; + f = o[p >> 2] | 0; + if (!f) { + p = (e + (u + 16)) | 0; + f = o[p >> 2] | 0; + if (!f) { + c = 0; + break; + } + } + while (1) { + C = (f + 20) | 0; + d = o[C >> 2] | 0; + if (d) { + f = d; + p = C; + continue; + } + d = (f + 16) | 0; + C = o[d >> 2] | 0; + if (!C) break; + else { + f = C; + p = d; + } + } + if (p >>> 0 < h >>> 0) Xe(); + else { + o[p >> 2] = 0; + c = f; + break; + } + } else { + p = o[(e + (u + 8)) >> 2] | 0; + if (p >>> 0 < h >>> 0) Xe(); + h = (p + 12) | 0; + if ((o[h >> 2] | 0) != (a | 0)) Xe(); + d = (f + 8) | 0; + if ((o[d >> 2] | 0) == (a | 0)) { + o[h >> 2] = f; + o[d >> 2] = p; + c = f; + break; + } else Xe(); + } + } while (0); + if (g) { + h = o[(e + (u + 28)) >> 2] | 0; + f = (5128 + (h << 2)) | 0; + if ((a | 0) == (o[f >> 2] | 0)) { + o[f >> 2] = c; + if (!c) { + o[1207] = o[1207] & ~(1 << h); + break; + } + } else { + if (g >>> 0 < (o[1210] | 0) >>> 0) Xe(); + h = (g + 16) | 0; + if ((o[h >> 2] | 0) == (a | 0)) o[h >> 2] = c; + else o[(g + 20) >> 2] = c; + if (!c) break; + } + a = o[1210] | 0; + if (c >>> 0 < a >>> 0) Xe(); + o[(c + 24) >> 2] = g; + h = o[(e + (u + 16)) >> 2] | 0; + do { + if (h) + if (h >>> 0 < a >>> 0) Xe(); + else { + o[(c + 16) >> 2] = h; + o[(h + 24) >> 2] = c; + break; + } + } while (0); + a = o[(e + (u + 20)) >> 2] | 0; + if (a) + if (a >>> 0 < (o[1210] | 0) >>> 0) Xe(); + else { + o[(c + 20) >> 2] = a; + o[(a + 24) >> 2] = c; + break; + } + } + } else { + c = o[(e + (u + 8)) >> 2] | 0; + u = o[(e + (u + 12)) >> 2] | 0; + p = (4864 + ((f << 1) << 2)) | 0; + if ((c | 0) != (p | 0)) { + if (c >>> 0 < h >>> 0) Xe(); + if ((o[(c + 12) >> 2] | 0) != (a | 0)) Xe(); + } + if ((u | 0) == (c | 0)) { + o[1206] = o[1206] & ~(1 << f); + break; + } + if ((u | 0) != (p | 0)) { + if (u >>> 0 < h >>> 0) Xe(); + h = (u + 8) | 0; + if ((o[h >> 2] | 0) == (a | 0)) g = h; + else Xe(); + } else g = (u + 8) | 0; + o[(c + 12) >> 2] = u; + o[g >> 2] = c; + } + } while (0); + if (A >>> 0 < 16) { + o[i >> 2] = s | (n & 1) | 2; + C = (e + (s | 4)) | 0; + o[C >> 2] = o[C >> 2] | 1; + C = e; + l = r; + return C | 0; + } else { + o[i >> 2] = (n & 1) | t | 2; + o[(e + (t + 4)) >> 2] = A | 3; + C = (e + (s | 4)) | 0; + o[C >> 2] = o[C >> 2] | 1; + ti((e + t) | 0, A); + C = e; + l = r; + return C | 0; + } + return 0; + } + function ti(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + n = 0, + i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + h = 0, + g = 0, + f = 0, + p = 0, + d = 0, + C = 0, + E = 0, + I = 0, + m = 0, + y = 0; + r = l; + A = (e + t) | 0; + u = o[(e + 4) >> 2] | 0; + do { + if (!(u & 1)) { + p = o[e >> 2] | 0; + if (!(u & 3)) { + l = r; + return; + } + u = (e + (0 - p)) | 0; + h = (p + t) | 0; + C = o[1210] | 0; + if (u >>> 0 < C >>> 0) Xe(); + if ((u | 0) == (o[1211] | 0)) { + n = (e + (t + 4)) | 0; + g = o[n >> 2] | 0; + if (((g & 3) | 0) != 3) { + n = u; + g = h; + break; + } + o[1208] = h; + o[n >> 2] = g & -2; + o[(e + (4 - p)) >> 2] = h | 1; + o[A >> 2] = h; + l = r; + return; + } + E = p >>> 3; + if (p >>> 0 < 256) { + n = o[(e + (8 - p)) >> 2] | 0; + g = o[(e + (12 - p)) >> 2] | 0; + f = (4864 + ((E << 1) << 2)) | 0; + if ((n | 0) != (f | 0)) { + if (n >>> 0 < C >>> 0) Xe(); + if ((o[(n + 12) >> 2] | 0) != (u | 0)) Xe(); + } + if ((g | 0) == (n | 0)) { + o[1206] = o[1206] & ~(1 << E); + n = u; + g = h; + break; + } + if ((g | 0) != (f | 0)) { + if (g >>> 0 < C >>> 0) Xe(); + f = (g + 8) | 0; + if ((o[f >> 2] | 0) == (u | 0)) d = f; + else Xe(); + } else d = (g + 8) | 0; + o[(n + 12) >> 2] = g; + o[d >> 2] = n; + n = u; + g = h; + break; + } + d = o[(e + (24 - p)) >> 2] | 0; + E = o[(e + (12 - p)) >> 2] | 0; + do { + if ((E | 0) == (u | 0)) { + m = (16 - p) | 0; + I = (e + (m + 4)) | 0; + E = o[I >> 2] | 0; + if (!E) { + I = (e + m) | 0; + E = o[I >> 2] | 0; + if (!E) { + f = 0; + break; + } + } + while (1) { + y = (E + 20) | 0; + m = o[y >> 2] | 0; + if (m) { + E = m; + I = y; + continue; + } + m = (E + 16) | 0; + y = o[m >> 2] | 0; + if (!y) break; + else { + E = y; + I = m; + } + } + if (I >>> 0 < C >>> 0) Xe(); + else { + o[I >> 2] = 0; + f = E; + break; + } + } else { + I = o[(e + (8 - p)) >> 2] | 0; + if (I >>> 0 < C >>> 0) Xe(); + C = (I + 12) | 0; + if ((o[C >> 2] | 0) != (u | 0)) Xe(); + m = (E + 8) | 0; + if ((o[m >> 2] | 0) == (u | 0)) { + o[C >> 2] = E; + o[m >> 2] = I; + f = E; + break; + } else Xe(); + } + } while (0); + if (d) { + E = o[(e + (28 - p)) >> 2] | 0; + C = (5128 + (E << 2)) | 0; + if ((u | 0) == (o[C >> 2] | 0)) { + o[C >> 2] = f; + if (!f) { + o[1207] = o[1207] & ~(1 << E); + n = u; + g = h; + break; + } + } else { + if (d >>> 0 < (o[1210] | 0) >>> 0) Xe(); + C = (d + 16) | 0; + if ((o[C >> 2] | 0) == (u | 0)) o[C >> 2] = f; + else o[(d + 20) >> 2] = f; + if (!f) { + n = u; + g = h; + break; + } + } + C = o[1210] | 0; + if (f >>> 0 < C >>> 0) Xe(); + o[(f + 24) >> 2] = d; + p = (16 - p) | 0; + d = o[(e + p) >> 2] | 0; + do { + if (d) + if (d >>> 0 < C >>> 0) Xe(); + else { + o[(f + 16) >> 2] = d; + o[(d + 24) >> 2] = f; + break; + } + } while (0); + p = o[(e + (p + 4)) >> 2] | 0; + if (p) + if (p >>> 0 < (o[1210] | 0) >>> 0) Xe(); + else { + o[(f + 20) >> 2] = p; + o[(p + 24) >> 2] = f; + n = u; + g = h; + break; + } + else { + n = u; + g = h; + } + } else { + n = u; + g = h; + } + } else { + n = e; + g = t; + } + } while (0); + u = o[1210] | 0; + if (A >>> 0 < u >>> 0) Xe(); + h = (e + (t + 4)) | 0; + f = o[h >> 2] | 0; + if (!(f & 2)) { + if ((A | 0) == (o[1212] | 0)) { + y = ((o[1209] | 0) + g) | 0; + o[1209] = y; + o[1212] = n; + o[(n + 4) >> 2] = y | 1; + if ((n | 0) != (o[1211] | 0)) { + l = r; + return; + } + o[1211] = 0; + o[1208] = 0; + l = r; + return; + } + if ((A | 0) == (o[1211] | 0)) { + y = ((o[1208] | 0) + g) | 0; + o[1208] = y; + o[1211] = n; + o[(n + 4) >> 2] = y | 1; + o[(n + y) >> 2] = y; + l = r; + return; + } + g = ((f & -8) + g) | 0; + h = f >>> 3; + do { + if (f >>> 0 >= 256) { + c = o[(e + (t + 24)) >> 2] | 0; + f = o[(e + (t + 12)) >> 2] | 0; + do { + if ((f | 0) == (A | 0)) { + f = (e + (t + 20)) | 0; + h = o[f >> 2] | 0; + if (!h) { + f = (e + (t + 16)) | 0; + h = o[f >> 2] | 0; + if (!h) { + a = 0; + break; + } + } + while (1) { + p = (h + 20) | 0; + d = o[p >> 2] | 0; + if (d) { + h = d; + f = p; + continue; + } + d = (h + 16) | 0; + p = o[d >> 2] | 0; + if (!p) break; + else { + h = p; + f = d; + } + } + if (f >>> 0 < u >>> 0) Xe(); + else { + o[f >> 2] = 0; + a = h; + break; + } + } else { + h = o[(e + (t + 8)) >> 2] | 0; + if (h >>> 0 < u >>> 0) Xe(); + p = (h + 12) | 0; + if ((o[p >> 2] | 0) != (A | 0)) Xe(); + u = (f + 8) | 0; + if ((o[u >> 2] | 0) == (A | 0)) { + o[p >> 2] = f; + o[u >> 2] = h; + a = f; + break; + } else Xe(); + } + } while (0); + if (c) { + h = o[(e + (t + 28)) >> 2] | 0; + u = (5128 + (h << 2)) | 0; + if ((A | 0) == (o[u >> 2] | 0)) { + o[u >> 2] = a; + if (!a) { + o[1207] = o[1207] & ~(1 << h); + break; + } + } else { + if (c >>> 0 < (o[1210] | 0) >>> 0) Xe(); + u = (c + 16) | 0; + if ((o[u >> 2] | 0) == (A | 0)) o[u >> 2] = a; + else o[(c + 20) >> 2] = a; + if (!a) break; + } + A = o[1210] | 0; + if (a >>> 0 < A >>> 0) Xe(); + o[(a + 24) >> 2] = c; + c = o[(e + (t + 16)) >> 2] | 0; + do { + if (c) + if (c >>> 0 < A >>> 0) Xe(); + else { + o[(a + 16) >> 2] = c; + o[(c + 24) >> 2] = a; + break; + } + } while (0); + A = o[(e + (t + 20)) >> 2] | 0; + if (A) + if (A >>> 0 < (o[1210] | 0) >>> 0) Xe(); + else { + o[(a + 20) >> 2] = A; + o[(A + 24) >> 2] = a; + break; + } + } + } else { + a = o[(e + (t + 8)) >> 2] | 0; + e = o[(e + (t + 12)) >> 2] | 0; + t = (4864 + ((h << 1) << 2)) | 0; + if ((a | 0) != (t | 0)) { + if (a >>> 0 < u >>> 0) Xe(); + if ((o[(a + 12) >> 2] | 0) != (A | 0)) Xe(); + } + if ((e | 0) == (a | 0)) { + o[1206] = o[1206] & ~(1 << h); + break; + } + if ((e | 0) != (t | 0)) { + if (e >>> 0 < u >>> 0) Xe(); + t = (e + 8) | 0; + if ((o[t >> 2] | 0) == (A | 0)) c = t; + else Xe(); + } else c = (e + 8) | 0; + o[(a + 12) >> 2] = e; + o[c >> 2] = a; + } + } while (0); + o[(n + 4) >> 2] = g | 1; + o[(n + g) >> 2] = g; + if ((n | 0) == (o[1211] | 0)) { + o[1208] = g; + l = r; + return; + } + } else { + o[h >> 2] = f & -2; + o[(n + 4) >> 2] = g | 1; + o[(n + g) >> 2] = g; + } + t = g >>> 3; + if (g >>> 0 < 256) { + e = t << 1; + A = (4864 + (e << 2)) | 0; + a = o[1206] | 0; + t = 1 << t; + if (a & t) { + e = (4864 + ((e + 2) << 2)) | 0; + a = o[e >> 2] | 0; + if (a >>> 0 < (o[1210] | 0) >>> 0) Xe(); + else { + s = e; + i = a; + } + } else { + o[1206] = a | t; + s = (4864 + ((e + 2) << 2)) | 0; + i = A; + } + o[s >> 2] = n; + o[(i + 12) >> 2] = n; + o[(n + 8) >> 2] = i; + o[(n + 12) >> 2] = A; + l = r; + return; + } + i = g >>> 8; + if (i) + if (g >>> 0 > 16777215) i = 31; + else { + m = (((i + 1048320) | 0) >>> 16) & 8; + y = i << m; + I = (((y + 520192) | 0) >>> 16) & 4; + y = y << I; + i = (((y + 245760) | 0) >>> 16) & 2; + i = (14 - (I | m | i) + ((y << i) >>> 15)) | 0; + i = ((g >>> ((i + 7) | 0)) & 1) | (i << 1); + } + else i = 0; + s = (5128 + (i << 2)) | 0; + o[(n + 28) >> 2] = i; + o[(n + 20) >> 2] = 0; + o[(n + 16) >> 2] = 0; + e = o[1207] | 0; + A = 1 << i; + if (!(e & A)) { + o[1207] = e | A; + o[s >> 2] = n; + o[(n + 24) >> 2] = s; + o[(n + 12) >> 2] = n; + o[(n + 8) >> 2] = n; + l = r; + return; + } + s = o[s >> 2] | 0; + if ((i | 0) == 31) i = 0; + else i = (25 - (i >>> 1)) | 0; + e: do { + if (((o[(s + 4) >> 2] & -8) | 0) != (g | 0)) { + i = g << i; + e = s; + while (1) { + A = (e + ((i >>> 31) << 2) + 16) | 0; + s = o[A >> 2] | 0; + if (!s) break; + if (((o[(s + 4) >> 2] & -8) | 0) == (g | 0)) break e; + else { + i = i << 1; + e = s; + } + } + if (A >>> 0 < (o[1210] | 0) >>> 0) Xe(); + o[A >> 2] = n; + o[(n + 24) >> 2] = e; + o[(n + 12) >> 2] = n; + o[(n + 8) >> 2] = n; + l = r; + return; + } + } while (0); + i = (s + 8) | 0; + A = o[i >> 2] | 0; + y = o[1210] | 0; + if (!((s >>> 0 >= y >>> 0) & (A >>> 0 >= y >>> 0))) Xe(); + o[(A + 12) >> 2] = n; + o[i >> 2] = n; + o[(n + 8) >> 2] = A; + o[(n + 12) >> 2] = s; + o[(n + 24) >> 2] = 0; + l = r; + return; + } + function ri(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + n = 0, + i = 0, + A = 0, + a = 0, + c = 0; + r = l; + i = (e + 4) | 0; + A = o[i >> 2] | 0; + n = (e + 100) | 0; + if (A >>> 0 < (o[n >> 2] | 0) >>> 0) { + o[i >> 2] = A + 1; + a = s[A >> 0] | 0; + } else a = Hn(e) | 0; + if (((a | 0) == 43) | ((a | 0) == 45)) { + c = o[i >> 2] | 0; + A = ((a | 0) == 45) & 1; + if (c >>> 0 < (o[n >> 2] | 0) >>> 0) { + o[i >> 2] = c + 1; + a = s[c >> 0] | 0; + } else a = Hn(e) | 0; + if ((((a + -48) | 0) >>> 0 > 9) & ((t | 0) != 0) ? (o[n >> 2] | 0) != 0 : 0) + o[i >> 2] = (o[i >> 2] | 0) + -1; + } else A = 0; + if (((a + -48) | 0) >>> 0 > 9) { + if (!(o[n >> 2] | 0)) { + a = -2147483648; + c = 0; + R = a; + l = r; + return c | 0; + } + o[i >> 2] = (o[i >> 2] | 0) + -1; + a = -2147483648; + c = 0; + R = a; + l = r; + return c | 0; + } else t = 0; + do { + t = (a + -48 + ((t * 10) | 0)) | 0; + a = o[i >> 2] | 0; + if (a >>> 0 < (o[n >> 2] | 0) >>> 0) { + o[i >> 2] = a + 1; + a = s[a >> 0] | 0; + } else a = Hn(e) | 0; + } while ((((a + -48) | 0) >>> 0 < 10) & ((t | 0) < 214748364)); + c = (((t | 0) < 0) << 31) >> 31; + if (((a + -48) | 0) >>> 0 < 10) + do { + c = Ci(t | 0, c | 0, 10, 0) | 0; + t = R; + a = ai(a | 0, ((((a | 0) < 0) << 31) >> 31) | 0, -48, -1) | 0; + t = ai(a | 0, R | 0, c | 0, t | 0) | 0; + c = R; + a = o[i >> 2] | 0; + if (a >>> 0 < (o[n >> 2] | 0) >>> 0) { + o[i >> 2] = a + 1; + a = s[a >> 0] | 0; + } else a = Hn(e) | 0; + } while ( + (((a + -48) | 0) >>> 0 < 10) & + (((c | 0) < 21474836) | (((c | 0) == 21474836) & (t >>> 0 < 2061584302))) + ); + if (((a + -48) | 0) >>> 0 < 10) + do { + a = o[i >> 2] | 0; + if (a >>> 0 < (o[n >> 2] | 0) >>> 0) { + o[i >> 2] = a + 1; + a = s[a >> 0] | 0; + } else a = Hn(e) | 0; + } while (((a + -48) | 0) >>> 0 < 10); + if (o[n >> 2] | 0) o[i >> 2] = (o[i >> 2] | 0) + -1; + i = (A | 0) != 0; + A = ii(0, 0, t | 0, c | 0) | 0; + a = i ? R : c; + c = i ? A : t; + R = a; + l = r; + return c | 0; + } + function ni() {} + function ii(e, t, r, n) { + e = e | 0; + t = t | 0; + r = r | 0; + n = n | 0; + t = (t - n - ((r >>> 0 > e >>> 0) | 0)) >>> 0; + return ((R = t), ((e - r) >>> 0) | 0) | 0; + } + function oi(e, t, r) { + e = e | 0; + t = t | 0; + r = r | 0; + var i = 0, + s = 0, + A = 0, + a = 0; + i = (e + r) | 0; + if ((r | 0) >= 20) { + t = t & 255; + a = e & 3; + A = t | (t << 8) | (t << 16) | (t << 24); + s = i & ~3; + if (a) { + a = (e + 4 - a) | 0; + while ((e | 0) < (a | 0)) { + n[e >> 0] = t; + e = (e + 1) | 0; + } + } + while ((e | 0) < (s | 0)) { + o[e >> 2] = A; + e = (e + 4) | 0; + } + } + while ((e | 0) < (i | 0)) { + n[e >> 0] = t; + e = (e + 1) | 0; + } + return (e - r) | 0; + } + function si(e, t, r) { + e = e | 0; + t = t | 0; + r = r | 0; + if ((r | 0) < 32) { + R = (t << r) | ((e & (((1 << r) - 1) << (32 - r))) >>> (32 - r)); + return e << r; + } + R = e << (r - 32); + return 0; + } + function Ai(e) { + e = e | 0; + var t = 0; + t = e; + while (n[t >> 0] | 0) t = (t + 1) | 0; + return (t - e) | 0; + } + function ai(e, t, r, n) { + e = e | 0; + t = t | 0; + r = r | 0; + n = n | 0; + r = (e + r) >>> 0; + return ((R = (t + n + ((r >>> 0 < e >>> 0) | 0)) >>> 0), r | 0) | 0; + } + function ci(e, t, r) { + e = e | 0; + t = t | 0; + r = r | 0; + if ((r | 0) < 32) { + R = t >>> r; + return (e >>> r) | ((t & ((1 << r) - 1)) << (32 - r)); + } + R = 0; + return (t >>> (r - 32)) | 0; + } + function ui(e, t, r) { + e = e | 0; + t = t | 0; + r = r | 0; + var i = 0; + if ((r | 0) >= 4096) return Fe(e | 0, t | 0, r | 0) | 0; + i = e | 0; + if ((e & 3) == (t & 3)) { + while (e & 3) { + if (!r) return i | 0; + n[e >> 0] = n[t >> 0] | 0; + e = (e + 1) | 0; + t = (t + 1) | 0; + r = (r - 1) | 0; + } + while ((r | 0) >= 4) { + o[e >> 2] = o[t >> 2]; + e = (e + 4) | 0; + t = (t + 4) | 0; + r = (r - 4) | 0; + } + } + while ((r | 0) > 0) { + n[e >> 0] = n[t >> 0] | 0; + e = (e + 1) | 0; + t = (t + 1) | 0; + r = (r - 1) | 0; + } + return i | 0; + } + function li(e, t, r) { + e = e | 0; + t = t | 0; + r = r | 0; + if ((r | 0) < 32) { + R = t >> r; + return (e >>> r) | ((t & ((1 << r) - 1)) << (32 - r)); + } + R = (t | 0) < 0 ? -1 : 0; + return (t >> (r - 32)) | 0; + } + function hi(e) { + e = e | 0; + var t = 0; + t = n[(d + (e >>> 24)) >> 0] | 0; + if ((t | 0) < 8) return t | 0; + t = n[(d + ((e >> 16) & 255)) >> 0] | 0; + if ((t | 0) < 8) return (t + 8) | 0; + t = n[(d + ((e >> 8) & 255)) >> 0] | 0; + if ((t | 0) < 8) return (t + 16) | 0; + return ((n[(d + (e & 255)) >> 0] | 0) + 24) | 0; + } + function gi(e) { + e = e | 0; + var t = 0; + t = n[(p + (e & 255)) >> 0] | 0; + if ((t | 0) < 8) return t | 0; + t = n[(p + ((e >> 8) & 255)) >> 0] | 0; + if ((t | 0) < 8) return (t + 8) | 0; + t = n[(p + ((e >> 16) & 255)) >> 0] | 0; + if ((t | 0) < 8) return (t + 16) | 0; + return ((n[(p + (e >>> 24)) >> 0] | 0) + 24) | 0; + } + function fi(e, t) { + e = e | 0; + t = t | 0; + var r = 0, + n = 0, + i = 0, + o = 0; + o = e & 65535; + n = t & 65535; + r = ie(n, o) | 0; + i = e >>> 16; + n = ((r >>> 16) + (ie(n, i) | 0)) | 0; + t = t >>> 16; + e = ie(t, o) | 0; + return ( + ((R = ((n >>> 16) + (ie(t, i) | 0) + ((((n & 65535) + e) | 0) >>> 16)) | 0), + ((n + e) << 16) | (r & 65535) | 0) | 0 + ); + } + function pi(e, t, r, n) { + e = e | 0; + t = t | 0; + r = r | 0; + n = n | 0; + var i = 0, + o = 0, + s = 0, + A = 0, + a = 0, + c = 0; + c = (t >> 31) | (((t | 0) < 0 ? -1 : 0) << 1); + a = (((t | 0) < 0 ? -1 : 0) >> 31) | (((t | 0) < 0 ? -1 : 0) << 1); + o = (n >> 31) | (((n | 0) < 0 ? -1 : 0) << 1); + i = (((n | 0) < 0 ? -1 : 0) >> 31) | (((n | 0) < 0 ? -1 : 0) << 1); + A = ii(c ^ e, a ^ t, c, a) | 0; + s = R; + t = o ^ c; + e = i ^ a; + e = ii((mi(A, s, ii(o ^ r, i ^ n, o, i) | 0, R, 0) | 0) ^ t, R ^ e, t, e) | 0; + return e | 0; + } + function di(e, t, r, n) { + e = e | 0; + t = t | 0; + r = r | 0; + n = n | 0; + var i = 0, + s = 0, + A = 0, + a = 0, + c = 0, + u = 0; + i = l; + l = (l + 8) | 0; + a = i | 0; + A = (t >> 31) | (((t | 0) < 0 ? -1 : 0) << 1); + s = (((t | 0) < 0 ? -1 : 0) >> 31) | (((t | 0) < 0 ? -1 : 0) << 1); + u = (n >> 31) | (((n | 0) < 0 ? -1 : 0) << 1); + c = (((n | 0) < 0 ? -1 : 0) >> 31) | (((n | 0) < 0 ? -1 : 0) << 1); + t = ii(A ^ e, s ^ t, A, s) | 0; + e = R; + mi(t, e, ii(u ^ r, c ^ n, u, c) | 0, R, a) | 0; + e = ii(o[a >> 2] ^ A, o[(a + 4) >> 2] ^ s, A, s) | 0; + t = R; + l = i; + return ((R = t), e) | 0; + } + function Ci(e, t, r, n) { + e = e | 0; + t = t | 0; + r = r | 0; + n = n | 0; + var i = 0, + o = 0; + i = e; + o = r; + e = fi(i, o) | 0; + r = R; + return ((R = ((ie(t, o) | 0) + (ie(n, i) | 0) + r) | (r & 0)), e | 0 | 0) | 0; + } + function Ei(e, t, r, n) { + e = e | 0; + t = t | 0; + r = r | 0; + n = n | 0; + e = mi(e, t, r, n, 0) | 0; + return e | 0; + } + function Ii(e, t, r, n) { + e = e | 0; + t = t | 0; + r = r | 0; + n = n | 0; + var i = 0, + s = 0; + s = l; + l = (l + 8) | 0; + i = s | 0; + mi(e, t, r, n, i) | 0; + l = s; + return ((R = o[(i + 4) >> 2] | 0), o[i >> 2] | 0) | 0; + } + function mi(e, t, r, n, i) { + e = e | 0; + t = t | 0; + r = r | 0; + n = n | 0; + i = i | 0; + var s = 0, + A = 0, + a = 0, + c = 0, + u = 0, + l = 0, + h = 0, + g = 0, + f = 0, + p = 0; + A = e; + c = t; + a = c; + l = r; + s = n; + u = s; + if (!a) { + s = (i | 0) != 0; + if (!u) { + if (s) { + o[i >> 2] = (A >>> 0) % (l >>> 0); + o[(i + 4) >> 2] = 0; + } + u = 0; + h = ((A >>> 0) / (l >>> 0)) >>> 0; + return ((R = u), h) | 0; + } else { + if (!s) { + l = 0; + h = 0; + return ((R = l), h) | 0; + } + o[i >> 2] = e | 0; + o[(i + 4) >> 2] = t & 0; + l = 0; + h = 0; + return ((R = l), h) | 0; + } + } + h = (u | 0) == 0; + do { + if (l) { + if (!h) { + u = ((hi(u | 0) | 0) - (hi(a | 0) | 0)) | 0; + if (u >>> 0 <= 31) { + h = (u + 1) | 0; + l = (31 - u) | 0; + e = (u - 31) >> 31; + c = h; + t = ((A >>> (h >>> 0)) & e) | (a << l); + e = (a >>> (h >>> 0)) & e; + u = 0; + l = A << l; + break; + } + if (!i) { + l = 0; + h = 0; + return ((R = l), h) | 0; + } + o[i >> 2] = e | 0; + o[(i + 4) >> 2] = c | (t & 0); + l = 0; + h = 0; + return ((R = l), h) | 0; + } + u = (l - 1) | 0; + if (u & l) { + l = ((hi(l | 0) | 0) + 33 - (hi(a | 0) | 0)) | 0; + p = (64 - l) | 0; + h = (32 - l) | 0; + g = h >> 31; + f = (l - 32) | 0; + e = f >> 31; + c = l; + t = + (((h - 1) >> 31) & (a >>> (f >>> 0))) | + (((a << h) | (A >>> (l >>> 0))) & e); + e = e & (a >>> (l >>> 0)); + u = (A << p) & g; + l = (((a << p) | (A >>> (f >>> 0))) & g) | ((A << h) & ((l - 33) >> 31)); + break; + } + if (i) { + o[i >> 2] = u & A; + o[(i + 4) >> 2] = 0; + } + if ((l | 0) == 1) { + f = c | (t & 0); + p = e | 0 | 0; + return ((R = f), p) | 0; + } else { + p = gi(l | 0) | 0; + f = (a >>> (p >>> 0)) | 0; + p = (a << (32 - p)) | (A >>> (p >>> 0)) | 0; + return ((R = f), p) | 0; + } + } else { + if (h) { + if (i) { + o[i >> 2] = (a >>> 0) % (l >>> 0); + o[(i + 4) >> 2] = 0; + } + f = 0; + p = ((a >>> 0) / (l >>> 0)) >>> 0; + return ((R = f), p) | 0; + } + if (!A) { + if (i) { + o[i >> 2] = 0; + o[(i + 4) >> 2] = (a >>> 0) % (u >>> 0); + } + f = 0; + p = ((a >>> 0) / (u >>> 0)) >>> 0; + return ((R = f), p) | 0; + } + l = (u - 1) | 0; + if (!(l & u)) { + if (i) { + o[i >> 2] = e | 0; + o[(i + 4) >> 2] = (l & a) | (t & 0); + } + f = 0; + p = a >>> ((gi(u | 0) | 0) >>> 0); + return ((R = f), p) | 0; + } + u = ((hi(u | 0) | 0) - (hi(a | 0) | 0)) | 0; + if (u >>> 0 <= 30) { + e = (u + 1) | 0; + l = (31 - u) | 0; + c = e; + t = (a << l) | (A >>> (e >>> 0)); + e = a >>> (e >>> 0); + u = 0; + l = A << l; + break; + } + if (!i) { + f = 0; + p = 0; + return ((R = f), p) | 0; + } + o[i >> 2] = e | 0; + o[(i + 4) >> 2] = c | (t & 0); + f = 0; + p = 0; + return ((R = f), p) | 0; + } + } while (0); + if (!c) { + s = l; + n = 0; + a = 0; + } else { + A = r | 0 | 0; + s = s | (n & 0); + n = ai(A, s, -1, -1) | 0; + r = R; + a = 0; + do { + h = l; + l = (u >>> 31) | (l << 1); + u = a | (u << 1); + h = (t << 1) | (h >>> 31) | 0; + g = (t >>> 31) | (e << 1) | 0; + ii(n, r, h, g) | 0; + p = R; + f = (p >> 31) | (((p | 0) < 0 ? -1 : 0) << 1); + a = f & 1; + t = + ii( + h, + g, + f & A, + ((((p | 0) < 0 ? -1 : 0) >> 31) | (((p | 0) < 0 ? -1 : 0) << 1)) & s + ) | 0; + e = R; + c = (c - 1) | 0; + } while ((c | 0) != 0); + s = l; + n = 0; + } + A = 0; + if (i) { + o[i >> 2] = t; + o[(i + 4) >> 2] = e; + } + f = ((u | 0) >>> 31) | ((s | A) << 1) | (((A << 1) | (u >>> 31)) & 0) | n; + p = (((u << 1) | (0 >>> 31)) & -2) | a; + return ((R = f), p) | 0; + } + function yi(e, t, r, n) { + e = e | 0; + t = t | 0; + r = r | 0; + n = n | 0; + return _i[e & 1](t | 0, r | 0, n | 0) | 0; + } + function wi(e, t, r, n, i, o) { + e = e | 0; + t = t | 0; + r = r | 0; + n = n | 0; + i = i | 0; + o = o | 0; + Oi[e & 3](t | 0, r | 0, n | 0, i | 0, o | 0); + } + function Bi(e, t) { + e = e | 0; + t = t | 0; + ji[e & 31](t | 0); + } + function Qi(e, t, r) { + e = e | 0; + t = t | 0; + r = r | 0; + Yi[e & 3](t | 0, r | 0); + } + function vi(e, t) { + e = e | 0; + t = t | 0; + return Gi[e & 1](t | 0) | 0; + } + function Di(e) { + e = e | 0; + Ji[e & 3](); + } + function bi(e, t, r, n, i, o, s) { + e = e | 0; + t = t | 0; + r = r | 0; + n = n | 0; + i = i | 0; + o = o | 0; + s = s | 0; + Hi[e & 3](t | 0, r | 0, n | 0, i | 0, o | 0, s | 0); + } + function Si(e, t, r) { + e = e | 0; + t = t | 0; + r = r | 0; + return qi[e & 3](t | 0, r | 0) | 0; + } + function ki(e, t, r, n, i) { + e = e | 0; + t = t | 0; + r = r | 0; + n = n | 0; + i = i | 0; + zi[e & 3](t | 0, r | 0, n | 0, i | 0); + } + function xi(e, t, r) { + e = e | 0; + t = t | 0; + r = r | 0; + oe(0); + return 0; + } + function Fi(e, t, r, n, i) { + e = e | 0; + t = t | 0; + r = r | 0; + n = n | 0; + i = i | 0; + oe(1); + } + function Mi(e) { + e = e | 0; + oe(2); + } + function Ni(e, t) { + e = e | 0; + t = t | 0; + oe(3); + } + function Ri(e) { + e = e | 0; + oe(4); + return 0; + } + function Ki() { + oe(5); + } + function Li() { + it(); + } + function Ti(e, t, r, n, i, o) { + e = e | 0; + t = t | 0; + r = r | 0; + n = n | 0; + i = i | 0; + o = o | 0; + oe(6); + } + function Pi(e, t) { + e = e | 0; + t = t | 0; + oe(7); + return 0; + } + function Ui(e, t, r, n) { + e = e | 0; + t = t | 0; + r = r | 0; + n = n | 0; + oe(8); + } + var _i = [xi, Qn]; + var Oi = [Fi, Fn, xn, Fi]; + var ji = [ + Mi, + dt, + Et, + mt, + Bt, + St, + bt, + Wt, + Xt, + Ir, + Er, + Rr, + hn, + ln, + In, + wn, + mn, + yn, + Bn, + It, + Pn, + Mi, + Mi, + Mi, + Mi, + Mi, + Mi, + Mi, + Mi, + Mi, + Mi, + Mi, + ]; + var Yi = [Ni, wt, vt, $t]; + var Gi = [Ri, gn]; + var Ji = [Ki, Li, Ln, Tn]; + var Hi = [Ti, Nn, Mn, Ti]; + var qi = [Pi, yt, Qt, Zt]; + var zi = [Ui, Dn, bn, Ui]; + return { + _yo: qr, + _strlen: Ai, + _retireVar: rn, + _bitshift64Lshr: ci, + _unyo: zr, + _solve: Zr, + _bitshift64Shl: si, + _getSolution: $r, + ___cxa_is_pointer_type: Kn, + _memset: oi, + _getNumVars: en, + _memcpy: ui, + _getConflictClauseSize: nn, + _addClause: Xr, + _i64Subtract: ii, + _createTheSolver: Wr, + _realloc: On, + _i64Add: ai, + _solveAssuming: tn, + ___cxa_can_catch: Rn, + _ensureVar: Vr, + _getConflictClause: on, + _free: _n, + _malloc: Un, + __GLOBAL__I_a: Vt, + __GLOBAL__I_a127: Kr, + runPostSets: ni, + stackAlloc: At, + stackSave: at, + stackRestore: ct, + setThrew: ut, + setTempRet0: gt, + getTempRet0: ft, + dynCall_iiii: yi, + dynCall_viiiii: wi, + dynCall_vi: Bi, + dynCall_vii: Qi, + dynCall_ii: vi, + dynCall_v: Di, + dynCall_viiiiii: bi, + dynCall_iii: Si, + dynCall_viiii: ki, + }; + })(Module.asmGlobalArg, Module.asmLibraryArg, buffer), + _yo = (Module._yo = asm._yo), + _strlen = (Module._strlen = asm._strlen), + _retireVar = (Module._retireVar = asm._retireVar), + _bitshift64Lshr = (Module._bitshift64Lshr = asm._bitshift64Lshr), + _unyo = (Module._unyo = asm._unyo), + _solve = (Module._solve = asm._solve), + _bitshift64Shl = (Module._bitshift64Shl = asm._bitshift64Shl), + _getSolution = (Module._getSolution = asm._getSolution), + ___cxa_is_pointer_type = (Module.___cxa_is_pointer_type = asm.___cxa_is_pointer_type), + _memset = (Module._memset = asm._memset), + _getNumVars = (Module._getNumVars = asm._getNumVars), + _memcpy = (Module._memcpy = asm._memcpy), + _getConflictClauseSize = (Module._getConflictClauseSize = asm._getConflictClauseSize), + _addClause = (Module._addClause = asm._addClause), + _i64Subtract = (Module._i64Subtract = asm._i64Subtract), + _createTheSolver = (Module._createTheSolver = asm._createTheSolver), + _realloc = (Module._realloc = asm._realloc), + _i64Add = (Module._i64Add = asm._i64Add), + _solveAssuming = (Module._solveAssuming = asm._solveAssuming), + ___cxa_can_catch = (Module.___cxa_can_catch = asm.___cxa_can_catch), + _ensureVar = (Module._ensureVar = asm._ensureVar), + _getConflictClause = (Module._getConflictClause = asm._getConflictClause), + _free = (Module._free = asm._free), + _malloc = (Module._malloc = asm._malloc), + __GLOBAL__I_a = (Module.__GLOBAL__I_a = asm.__GLOBAL__I_a), + __GLOBAL__I_a127 = (Module.__GLOBAL__I_a127 = asm.__GLOBAL__I_a127), + runPostSets = (Module.runPostSets = asm.runPostSets), + dynCall_iiii = (Module.dynCall_iiii = asm.dynCall_iiii), + dynCall_viiiii = (Module.dynCall_viiiii = asm.dynCall_viiiii), + dynCall_vi = (Module.dynCall_vi = asm.dynCall_vi), + dynCall_vii = (Module.dynCall_vii = asm.dynCall_vii), + dynCall_ii = (Module.dynCall_ii = asm.dynCall_ii), + dynCall_v = (Module.dynCall_v = asm.dynCall_v), + dynCall_viiiiii = (Module.dynCall_viiiiii = asm.dynCall_viiiiii), + dynCall_iii = (Module.dynCall_iii = asm.dynCall_iii), + dynCall_viiii = (Module.dynCall_viiii = asm.dynCall_viiii); + (Runtime.stackAlloc = asm.stackAlloc), + (Runtime.stackSave = asm.stackSave), + (Runtime.stackRestore = asm.stackRestore), + (Runtime.setTempRet0 = asm.setTempRet0), + (Runtime.getTempRet0 = asm.getTempRet0); + var i64Math = (function () { + var e = { math: {} }; + (e.math.Long = function (e, t) { + (this.low_ = 0 | e), (this.high_ = 0 | t); + }), + (e.math.Long.IntCache_ = {}), + (e.math.Long.fromInt = function (t) { + if (-128 <= t && t < 128) { + var r = e.math.Long.IntCache_[t]; + if (r) return r; + } + var n = new e.math.Long(0 | t, t < 0 ? -1 : 0); + return -128 <= t && t < 128 && (e.math.Long.IntCache_[t] = n), n; + }), + (e.math.Long.fromNumber = function (t) { + return isNaN(t) || !isFinite(t) + ? e.math.Long.ZERO + : t <= -e.math.Long.TWO_PWR_63_DBL_ + ? e.math.Long.MIN_VALUE + : t + 1 >= e.math.Long.TWO_PWR_63_DBL_ + ? e.math.Long.MAX_VALUE + : t < 0 + ? e.math.Long.fromNumber(-t).negate() + : new e.math.Long( + t % e.math.Long.TWO_PWR_32_DBL_ | 0, + (t / e.math.Long.TWO_PWR_32_DBL_) | 0 + ); + }), + (e.math.Long.fromBits = function (t, r) { + return new e.math.Long(t, r); + }), + (e.math.Long.fromString = function (t, r) { + if (0 == t.length) throw Error('number format error: empty string'); + var n = r || 10; + if (n < 2 || 36 < n) throw Error('radix out of range: ' + n); + if ('-' == t.charAt(0)) return e.math.Long.fromString(t.substring(1), n).negate(); + if (t.indexOf('-') >= 0) + throw Error('number format error: interior "-" character: ' + t); + for ( + var i = e.math.Long.fromNumber(Math.pow(n, 8)), o = e.math.Long.ZERO, s = 0; + s < t.length; + s += 8 + ) { + var A = Math.min(8, t.length - s), + a = parseInt(t.substring(s, s + A), n); + if (A < 8) { + var c = e.math.Long.fromNumber(Math.pow(n, A)); + o = o.multiply(c).add(e.math.Long.fromNumber(a)); + } else o = (o = o.multiply(i)).add(e.math.Long.fromNumber(a)); + } + return o; + }), + (e.math.Long.TWO_PWR_16_DBL_ = 65536), + (e.math.Long.TWO_PWR_24_DBL_ = 1 << 24), + (e.math.Long.TWO_PWR_32_DBL_ = + e.math.Long.TWO_PWR_16_DBL_ * e.math.Long.TWO_PWR_16_DBL_), + (e.math.Long.TWO_PWR_31_DBL_ = e.math.Long.TWO_PWR_32_DBL_ / 2), + (e.math.Long.TWO_PWR_48_DBL_ = + e.math.Long.TWO_PWR_32_DBL_ * e.math.Long.TWO_PWR_16_DBL_), + (e.math.Long.TWO_PWR_64_DBL_ = + e.math.Long.TWO_PWR_32_DBL_ * e.math.Long.TWO_PWR_32_DBL_), + (e.math.Long.TWO_PWR_63_DBL_ = e.math.Long.TWO_PWR_64_DBL_ / 2), + (e.math.Long.ZERO = e.math.Long.fromInt(0)), + (e.math.Long.ONE = e.math.Long.fromInt(1)), + (e.math.Long.NEG_ONE = e.math.Long.fromInt(-1)), + (e.math.Long.MAX_VALUE = e.math.Long.fromBits(-1, 2147483647)), + (e.math.Long.MIN_VALUE = e.math.Long.fromBits(0, -2147483648)), + (e.math.Long.TWO_PWR_24_ = e.math.Long.fromInt(1 << 24)), + (e.math.Long.prototype.toInt = function () { + return this.low_; + }), + (e.math.Long.prototype.toNumber = function () { + return this.high_ * e.math.Long.TWO_PWR_32_DBL_ + this.getLowBitsUnsigned(); + }), + (e.math.Long.prototype.toString = function (t) { + var r = t || 10; + if (r < 2 || 36 < r) throw Error('radix out of range: ' + r); + if (this.isZero()) return '0'; + if (this.isNegative()) { + if (this.equals(e.math.Long.MIN_VALUE)) { + var n = e.math.Long.fromNumber(r), + i = this.div(n), + o = i.multiply(n).subtract(this); + return i.toString(r) + o.toInt().toString(r); + } + return '-' + this.negate().toString(r); + } + for (var s = e.math.Long.fromNumber(Math.pow(r, 6)), A = ((o = this), ''); ; ) { + var a = o.div(s), + c = o.subtract(a.multiply(s)).toInt().toString(r); + if ((o = a).isZero()) return c + A; + for (; c.length < 6; ) c = '0' + c; + A = '' + c + A; + } + }), + (e.math.Long.prototype.getHighBits = function () { + return this.high_; + }), + (e.math.Long.prototype.getLowBits = function () { + return this.low_; + }), + (e.math.Long.prototype.getLowBitsUnsigned = function () { + return this.low_ >= 0 ? this.low_ : e.math.Long.TWO_PWR_32_DBL_ + this.low_; + }), + (e.math.Long.prototype.getNumBitsAbs = function () { + if (this.isNegative()) + return this.equals(e.math.Long.MIN_VALUE) ? 64 : this.negate().getNumBitsAbs(); + for ( + var t = 0 != this.high_ ? this.high_ : this.low_, r = 31; + r > 0 && 0 == (t & (1 << r)); + r-- + ); + return 0 != this.high_ ? r + 33 : r + 1; + }), + (e.math.Long.prototype.isZero = function () { + return 0 == this.high_ && 0 == this.low_; + }), + (e.math.Long.prototype.isNegative = function () { + return this.high_ < 0; + }), + (e.math.Long.prototype.isOdd = function () { + return 1 == (1 & this.low_); + }), + (e.math.Long.prototype.equals = function (e) { + return this.high_ == e.high_ && this.low_ == e.low_; + }), + (e.math.Long.prototype.notEquals = function (e) { + return this.high_ != e.high_ || this.low_ != e.low_; + }), + (e.math.Long.prototype.lessThan = function (e) { + return this.compare(e) < 0; + }), + (e.math.Long.prototype.lessThanOrEqual = function (e) { + return this.compare(e) <= 0; + }), + (e.math.Long.prototype.greaterThan = function (e) { + return this.compare(e) > 0; + }), + (e.math.Long.prototype.greaterThanOrEqual = function (e) { + return this.compare(e) >= 0; + }), + (e.math.Long.prototype.compare = function (e) { + if (this.equals(e)) return 0; + var t = this.isNegative(), + r = e.isNegative(); + return t && !r ? -1 : !t && r ? 1 : this.subtract(e).isNegative() ? -1 : 1; + }), + (e.math.Long.prototype.negate = function () { + return this.equals(e.math.Long.MIN_VALUE) + ? e.math.Long.MIN_VALUE + : this.not().add(e.math.Long.ONE); + }), + (e.math.Long.prototype.add = function (t) { + var r = this.high_ >>> 16, + n = 65535 & this.high_, + i = this.low_ >>> 16, + o = 65535 & this.low_, + s = t.high_ >>> 16, + A = 65535 & t.high_, + a = t.low_ >>> 16, + c = 0, + u = 0, + l = 0, + h = 0; + return ( + (l += (h += o + (65535 & t.low_)) >>> 16), + (h &= 65535), + (u += (l += i + a) >>> 16), + (l &= 65535), + (c += (u += n + A) >>> 16), + (u &= 65535), + (c += r + s), + (c &= 65535), + e.math.Long.fromBits((l << 16) | h, (c << 16) | u) + ); + }), + (e.math.Long.prototype.subtract = function (e) { + return this.add(e.negate()); + }), + (e.math.Long.prototype.multiply = function (t) { + if (this.isZero()) return e.math.Long.ZERO; + if (t.isZero()) return e.math.Long.ZERO; + if (this.equals(e.math.Long.MIN_VALUE)) + return t.isOdd() ? e.math.Long.MIN_VALUE : e.math.Long.ZERO; + if (t.equals(e.math.Long.MIN_VALUE)) + return this.isOdd() ? e.math.Long.MIN_VALUE : e.math.Long.ZERO; + if (this.isNegative()) + return t.isNegative() + ? this.negate().multiply(t.negate()) + : this.negate().multiply(t).negate(); + if (t.isNegative()) return this.multiply(t.negate()).negate(); + if (this.lessThan(e.math.Long.TWO_PWR_24_) && t.lessThan(e.math.Long.TWO_PWR_24_)) + return e.math.Long.fromNumber(this.toNumber() * t.toNumber()); + var r = this.high_ >>> 16, + n = 65535 & this.high_, + i = this.low_ >>> 16, + o = 65535 & this.low_, + s = t.high_ >>> 16, + A = 65535 & t.high_, + a = t.low_ >>> 16, + c = 65535 & t.low_, + u = 0, + l = 0, + h = 0, + g = 0; + return ( + (h += (g += o * c) >>> 16), + (g &= 65535), + (l += (h += i * c) >>> 16), + (h &= 65535), + (l += (h += o * a) >>> 16), + (h &= 65535), + (u += (l += n * c) >>> 16), + (l &= 65535), + (u += (l += i * a) >>> 16), + (l &= 65535), + (u += (l += o * A) >>> 16), + (l &= 65535), + (u += r * c + n * a + i * A + o * s), + (u &= 65535), + e.math.Long.fromBits((h << 16) | g, (u << 16) | l) + ); + }), + (e.math.Long.prototype.div = function (t) { + if (t.isZero()) throw Error('division by zero'); + if (this.isZero()) return e.math.Long.ZERO; + if (this.equals(e.math.Long.MIN_VALUE)) { + if (t.equals(e.math.Long.ONE) || t.equals(e.math.Long.NEG_ONE)) + return e.math.Long.MIN_VALUE; + if (t.equals(e.math.Long.MIN_VALUE)) return e.math.Long.ONE; + if ((i = this.shiftRight(1).div(t).shiftLeft(1)).equals(e.math.Long.ZERO)) + return t.isNegative() ? e.math.Long.ONE : e.math.Long.NEG_ONE; + var r = this.subtract(t.multiply(i)); + return i.add(r.div(t)); + } + if (t.equals(e.math.Long.MIN_VALUE)) return e.math.Long.ZERO; + if (this.isNegative()) + return t.isNegative() + ? this.negate().div(t.negate()) + : this.negate().div(t).negate(); + if (t.isNegative()) return this.div(t.negate()).negate(); + var n = e.math.Long.ZERO; + for (r = this; r.greaterThanOrEqual(t); ) { + for ( + var i = Math.max(1, Math.floor(r.toNumber() / t.toNumber())), + o = Math.ceil(Math.log(i) / Math.LN2), + s = o <= 48 ? 1 : Math.pow(2, o - 48), + A = e.math.Long.fromNumber(i), + a = A.multiply(t); + a.isNegative() || a.greaterThan(r); + + ) + (i -= s), (a = (A = e.math.Long.fromNumber(i)).multiply(t)); + A.isZero() && (A = e.math.Long.ONE), (n = n.add(A)), (r = r.subtract(a)); + } + return n; + }), + (e.math.Long.prototype.modulo = function (e) { + return this.subtract(this.div(e).multiply(e)); + }), + (e.math.Long.prototype.not = function () { + return e.math.Long.fromBits(~this.low_, ~this.high_); + }), + (e.math.Long.prototype.and = function (t) { + return e.math.Long.fromBits(this.low_ & t.low_, this.high_ & t.high_); + }), + (e.math.Long.prototype.or = function (t) { + return e.math.Long.fromBits(this.low_ | t.low_, this.high_ | t.high_); + }), + (e.math.Long.prototype.xor = function (t) { + return e.math.Long.fromBits(this.low_ ^ t.low_, this.high_ ^ t.high_); + }), + (e.math.Long.prototype.shiftLeft = function (t) { + if (0 == (t &= 63)) return this; + var r = this.low_; + if (t < 32) { + var n = this.high_; + return e.math.Long.fromBits(r << t, (n << t) | (r >>> (32 - t))); + } + return e.math.Long.fromBits(0, r << (t - 32)); + }), + (e.math.Long.prototype.shiftRight = function (t) { + if (0 == (t &= 63)) return this; + var r = this.high_; + if (t < 32) { + var n = this.low_; + return e.math.Long.fromBits((n >>> t) | (r << (32 - t)), r >> t); + } + return e.math.Long.fromBits(r >> (t - 32), r >= 0 ? 0 : -1); + }), + (e.math.Long.prototype.shiftRightUnsigned = function (t) { + if (0 == (t &= 63)) return this; + var r = this.high_; + if (t < 32) { + var n = this.low_; + return e.math.Long.fromBits((n >>> t) | (r << (32 - t)), r >>> t); + } + return 32 == t + ? e.math.Long.fromBits(r, 0) + : e.math.Long.fromBits(r >>> (t - 32), 0); + }); + var t, + r = 'Modern Browser'; + function n(e, t, r) { + null != e && + ('number' == typeof e + ? this.fromNumber(e, t, r) + : null == t && 'string' != typeof e + ? this.fromString(e, 256) + : this.fromString(e, t)); + } + function i() { + return new n(null); + } + 'Microsoft Internet Explorer' == r + ? ((n.prototype.am = function (e, t, r, n, i, o) { + for (var s = 32767 & t, A = t >> 15; --o >= 0; ) { + var a = 32767 & this[e], + c = this[e++] >> 15, + u = A * a + c * s; + (i = + ((a = s * a + ((32767 & u) << 15) + r[n] + (1073741823 & i)) >>> 30) + + (u >>> 15) + + A * c + + (i >>> 30)), + (r[n++] = 1073741823 & a); + } + return i; + }), + (t = 30)) + : 'Netscape' != r + ? ((n.prototype.am = function (e, t, r, n, i, o) { + for (; --o >= 0; ) { + var s = t * this[e++] + r[n] + i; + (i = Math.floor(s / 67108864)), (r[n++] = 67108863 & s); + } + return i; + }), + (t = 26)) + : ((n.prototype.am = function (e, t, r, n, i, o) { + for (var s = 16383 & t, A = t >> 14; --o >= 0; ) { + var a = 16383 & this[e], + c = this[e++] >> 14, + u = A * a + c * s; + (i = + ((a = s * a + ((16383 & u) << 14) + r[n] + i) >> 28) + (u >> 14) + A * c), + (r[n++] = 268435455 & a); + } + return i; + }), + (t = 28)), + (n.prototype.DB = t), + (n.prototype.DM = (1 << t) - 1), + (n.prototype.DV = 1 << t); + (n.prototype.FV = Math.pow(2, 52)), + (n.prototype.F1 = 52 - t), + (n.prototype.F2 = 2 * t - 52); + var o, + s, + A = new Array(); + for (o = '0'.charCodeAt(0), s = 0; s <= 9; ++s) A[o++] = s; + for (o = 'a'.charCodeAt(0), s = 10; s < 36; ++s) A[o++] = s; + for (o = 'A'.charCodeAt(0), s = 10; s < 36; ++s) A[o++] = s; + function a(e) { + return '0123456789abcdefghijklmnopqrstuvwxyz'.charAt(e); + } + function c(e, t) { + var r = A[e.charCodeAt(t)]; + return null == r ? -1 : r; + } + function u(e) { + var t = i(); + return t.fromInt(e), t; + } + function l(e) { + var t, + r = 1; + return ( + 0 != (t = e >>> 16) && ((e = t), (r += 16)), + 0 != (t = e >> 8) && ((e = t), (r += 8)), + 0 != (t = e >> 4) && ((e = t), (r += 4)), + 0 != (t = e >> 2) && ((e = t), (r += 2)), + 0 != (t = e >> 1) && ((e = t), (r += 1)), + r + ); + } + function h(e) { + this.m = e; + } + function g(e) { + (this.m = e), + (this.mp = e.invDigit()), + (this.mpl = 32767 & this.mp), + (this.mph = this.mp >> 15), + (this.um = (1 << (e.DB - 15)) - 1), + (this.mt2 = 2 * e.t); + } + (h.prototype.convert = function (e) { + return e.s < 0 || e.compareTo(this.m) >= 0 ? e.mod(this.m) : e; + }), + (h.prototype.revert = function (e) { + return e; + }), + (h.prototype.reduce = function (e) { + e.divRemTo(this.m, null, e); + }), + (h.prototype.mulTo = function (e, t, r) { + e.multiplyTo(t, r), this.reduce(r); + }), + (h.prototype.sqrTo = function (e, t) { + e.squareTo(t), this.reduce(t); + }), + (g.prototype.convert = function (e) { + var t = i(); + return ( + e.abs().dlShiftTo(this.m.t, t), + t.divRemTo(this.m, null, t), + e.s < 0 && t.compareTo(n.ZERO) > 0 && this.m.subTo(t, t), + t + ); + }), + (g.prototype.revert = function (e) { + var t = i(); + return e.copyTo(t), this.reduce(t), t; + }), + (g.prototype.reduce = function (e) { + for (; e.t <= this.mt2; ) e[e.t++] = 0; + for (var t = 0; t < this.m.t; ++t) { + var r = 32767 & e[t], + n = + (r * this.mpl + + (((r * this.mph + (e[t] >> 15) * this.mpl) & this.um) << 15)) & + e.DM; + for ( + e[(r = t + this.m.t)] += this.m.am(0, n, e, t, 0, this.m.t); + e[r] >= e.DV; + + ) + (e[r] -= e.DV), e[++r]++; + } + e.clamp(), + e.drShiftTo(this.m.t, e), + e.compareTo(this.m) >= 0 && e.subTo(this.m, e); + }), + (g.prototype.mulTo = function (e, t, r) { + e.multiplyTo(t, r), this.reduce(r); + }), + (g.prototype.sqrTo = function (e, t) { + e.squareTo(t), this.reduce(t); + }), + (n.prototype.copyTo = function (e) { + for (var t = this.t - 1; t >= 0; --t) e[t] = this[t]; + (e.t = this.t), (e.s = this.s); + }), + (n.prototype.fromInt = function (e) { + (this.t = 1), + (this.s = e < 0 ? -1 : 0), + e > 0 ? (this[0] = e) : e < -1 ? (this[0] = e + DV) : (this.t = 0); + }), + (n.prototype.fromString = function (e, t) { + var r; + if (16 == t) r = 4; + else if (8 == t) r = 3; + else if (256 == t) r = 8; + else if (2 == t) r = 1; + else if (32 == t) r = 5; + else { + if (4 != t) return void this.fromRadix(e, t); + r = 2; + } + (this.t = 0), (this.s = 0); + for (var i = e.length, o = !1, s = 0; --i >= 0; ) { + var A = 8 == r ? 255 & e[i] : c(e, i); + A < 0 + ? '-' == e.charAt(i) && (o = !0) + : ((o = !1), + 0 == s + ? (this[this.t++] = A) + : s + r > this.DB + ? ((this[this.t - 1] |= (A & ((1 << (this.DB - s)) - 1)) << s), + (this[this.t++] = A >> (this.DB - s))) + : (this[this.t - 1] |= A << s), + (s += r) >= this.DB && (s -= this.DB)); + } + 8 == r && + 0 != (128 & e[0]) && + ((this.s = -1), s > 0 && (this[this.t - 1] |= ((1 << (this.DB - s)) - 1) << s)), + this.clamp(), + o && n.ZERO.subTo(this, this); + }), + (n.prototype.clamp = function () { + for (var e = this.s & this.DM; this.t > 0 && this[this.t - 1] == e; ) --this.t; + }), + (n.prototype.dlShiftTo = function (e, t) { + var r; + for (r = this.t - 1; r >= 0; --r) t[r + e] = this[r]; + for (r = e - 1; r >= 0; --r) t[r] = 0; + (t.t = this.t + e), (t.s = this.s); + }), + (n.prototype.drShiftTo = function (e, t) { + for (var r = e; r < this.t; ++r) t[r - e] = this[r]; + (t.t = Math.max(this.t - e, 0)), (t.s = this.s); + }), + (n.prototype.lShiftTo = function (e, t) { + var r, + n = e % this.DB, + i = this.DB - n, + o = (1 << i) - 1, + s = Math.floor(e / this.DB), + A = (this.s << n) & this.DM; + for (r = this.t - 1; r >= 0; --r) + (t[r + s + 1] = (this[r] >> i) | A), (A = (this[r] & o) << n); + for (r = s - 1; r >= 0; --r) t[r] = 0; + (t[s] = A), (t.t = this.t + s + 1), (t.s = this.s), t.clamp(); + }), + (n.prototype.rShiftTo = function (e, t) { + t.s = this.s; + var r = Math.floor(e / this.DB); + if (r >= this.t) t.t = 0; + else { + var n = e % this.DB, + i = this.DB - n, + o = (1 << n) - 1; + t[0] = this[r] >> n; + for (var s = r + 1; s < this.t; ++s) + (t[s - r - 1] |= (this[s] & o) << i), (t[s - r] = this[s] >> n); + n > 0 && (t[this.t - r - 1] |= (this.s & o) << i), + (t.t = this.t - r), + t.clamp(); + } + }), + (n.prototype.subTo = function (e, t) { + for (var r = 0, n = 0, i = Math.min(e.t, this.t); r < i; ) + (n += this[r] - e[r]), (t[r++] = n & this.DM), (n >>= this.DB); + if (e.t < this.t) { + for (n -= e.s; r < this.t; ) + (n += this[r]), (t[r++] = n & this.DM), (n >>= this.DB); + n += this.s; + } else { + for (n += this.s; r < e.t; ) + (n -= e[r]), (t[r++] = n & this.DM), (n >>= this.DB); + n -= e.s; + } + (t.s = n < 0 ? -1 : 0), + n < -1 ? (t[r++] = this.DV + n) : n > 0 && (t[r++] = n), + (t.t = r), + t.clamp(); + }), + (n.prototype.multiplyTo = function (e, t) { + var r = this.abs(), + i = e.abs(), + o = r.t; + for (t.t = o + i.t; --o >= 0; ) t[o] = 0; + for (o = 0; o < i.t; ++o) t[o + r.t] = r.am(0, i[o], t, o, 0, r.t); + (t.s = 0), t.clamp(), this.s != e.s && n.ZERO.subTo(t, t); + }), + (n.prototype.squareTo = function (e) { + for (var t = this.abs(), r = (e.t = 2 * t.t); --r >= 0; ) e[r] = 0; + for (r = 0; r < t.t - 1; ++r) { + var n = t.am(r, t[r], e, 2 * r, 0, 1); + (e[r + t.t] += t.am(r + 1, 2 * t[r], e, 2 * r + 1, n, t.t - r - 1)) >= t.DV && + ((e[r + t.t] -= t.DV), (e[r + t.t + 1] = 1)); + } + e.t > 0 && (e[e.t - 1] += t.am(r, t[r], e, 2 * r, 0, 1)), (e.s = 0), e.clamp(); + }), + (n.prototype.divRemTo = function (e, t, r) { + var o = e.abs(); + if (!(o.t <= 0)) { + var s = this.abs(); + if (s.t < o.t) + return null != t && t.fromInt(0), void (null != r && this.copyTo(r)); + null == r && (r = i()); + var A = i(), + a = this.s, + c = e.s, + u = this.DB - l(o[o.t - 1]); + u > 0 ? (o.lShiftTo(u, A), s.lShiftTo(u, r)) : (o.copyTo(A), s.copyTo(r)); + var h = A.t, + g = A[h - 1]; + if (0 != g) { + var f = g * (1 << this.F1) + (h > 1 ? A[h - 2] >> this.F2 : 0), + p = this.FV / f, + d = (1 << this.F1) / f, + C = 1 << this.F2, + E = r.t, + I = E - h, + m = null == t ? i() : t; + for ( + A.dlShiftTo(I, m), + r.compareTo(m) >= 0 && ((r[r.t++] = 1), r.subTo(m, r)), + n.ONE.dlShiftTo(h, m), + m.subTo(A, A); + A.t < h; + + ) + A[A.t++] = 0; + for (; --I >= 0; ) { + var y = r[--E] == g ? this.DM : Math.floor(r[E] * p + (r[E - 1] + C) * d); + if ((r[E] += A.am(0, y, r, I, 0, h)) < y) + for (A.dlShiftTo(I, m), r.subTo(m, r); r[E] < --y; ) r.subTo(m, r); + } + null != t && (r.drShiftTo(h, t), a != c && n.ZERO.subTo(t, t)), + (r.t = h), + r.clamp(), + u > 0 && r.rShiftTo(u, r), + a < 0 && n.ZERO.subTo(r, r); + } + } + }), + (n.prototype.invDigit = function () { + if (this.t < 1) return 0; + var e = this[0]; + if (0 == (1 & e)) return 0; + var t = 3 & e; + return (t = + ((t = + ((t = ((t = (t * (2 - (15 & e) * t)) & 15) * (2 - (255 & e) * t)) & 255) * + (2 - (((65535 & e) * t) & 65535))) & + 65535) * + (2 - ((e * t) % this.DV))) % + this.DV) > 0 + ? this.DV - t + : -t; + }), + (n.prototype.isEven = function () { + return 0 == (this.t > 0 ? 1 & this[0] : this.s); + }), + (n.prototype.exp = function (e, t) { + if (e > 4294967295 || e < 1) return n.ONE; + var r = i(), + o = i(), + s = t.convert(this), + A = l(e) - 1; + for (s.copyTo(r); --A >= 0; ) + if ((t.sqrTo(r, o), (e & (1 << A)) > 0)) t.mulTo(o, s, r); + else { + var a = r; + (r = o), (o = a); + } + return t.revert(r); + }), + (n.prototype.toString = function (e) { + if (this.s < 0) return '-' + this.negate().toString(e); + var t; + if (16 == e) t = 4; + else if (8 == e) t = 3; + else if (2 == e) t = 1; + else if (32 == e) t = 5; + else { + if (4 != e) return this.toRadix(e); + t = 2; + } + var r, + n = (1 << t) - 1, + i = !1, + o = '', + s = this.t, + A = this.DB - ((s * this.DB) % t); + if (s-- > 0) + for (A < this.DB && (r = this[s] >> A) > 0 && ((i = !0), (o = a(r))); s >= 0; ) + A < t + ? ((r = (this[s] & ((1 << A) - 1)) << (t - A)), + (r |= this[--s] >> (A += this.DB - t))) + : ((r = (this[s] >> (A -= t)) & n), A <= 0 && ((A += this.DB), --s)), + r > 0 && (i = !0), + i && (o += a(r)); + return i ? o : '0'; + }), + (n.prototype.negate = function () { + var e = i(); + return n.ZERO.subTo(this, e), e; + }), + (n.prototype.abs = function () { + return this.s < 0 ? this.negate() : this; + }), + (n.prototype.compareTo = function (e) { + var t = this.s - e.s; + if (0 != t) return t; + var r = this.t; + if (0 != (t = r - e.t)) return this.s < 0 ? -t : t; + for (; --r >= 0; ) if (0 != (t = this[r] - e[r])) return t; + return 0; + }), + (n.prototype.bitLength = function () { + return this.t <= 0 + ? 0 + : this.DB * (this.t - 1) + l(this[this.t - 1] ^ (this.s & this.DM)); + }), + (n.prototype.mod = function (e) { + var t = i(); + return ( + this.abs().divRemTo(e, null, t), + this.s < 0 && t.compareTo(n.ZERO) > 0 && e.subTo(t, t), + t + ); + }), + (n.prototype.modPowInt = function (e, t) { + var r; + return (r = e < 256 || t.isEven() ? new h(t) : new g(t)), this.exp(e, r); + }), + (n.ZERO = u(0)), + (n.ONE = u(1)), + (n.prototype.fromRadix = function (e, t) { + this.fromInt(0), null == t && (t = 10); + for ( + var r = this.chunkSize(t), i = Math.pow(t, r), o = !1, s = 0, A = 0, a = 0; + a < e.length; + ++a + ) { + var u = c(e, a); + u < 0 + ? '-' == e.charAt(a) && 0 == this.signum() && (o = !0) + : ((A = t * A + u), + ++s >= r && (this.dMultiply(i), this.dAddOffset(A, 0), (s = 0), (A = 0))); + } + s > 0 && (this.dMultiply(Math.pow(t, s)), this.dAddOffset(A, 0)), + o && n.ZERO.subTo(this, this); + }), + (n.prototype.chunkSize = function (e) { + return Math.floor((Math.LN2 * this.DB) / Math.log(e)); + }), + (n.prototype.signum = function () { + return this.s < 0 ? -1 : this.t <= 0 || (1 == this.t && this[0] <= 0) ? 0 : 1; + }), + (n.prototype.dMultiply = function (e) { + (this[this.t] = this.am(0, e - 1, this, 0, 0, this.t)), ++this.t, this.clamp(); + }), + (n.prototype.dAddOffset = function (e, t) { + if (0 != e) { + for (; this.t <= t; ) this[this.t++] = 0; + for (this[t] += e; this[t] >= this.DV; ) + (this[t] -= this.DV), ++t >= this.t && (this[this.t++] = 0), ++this[t]; + } + }), + (n.prototype.toRadix = function (e) { + if ((null == e && (e = 10), 0 == this.signum() || e < 2 || e > 36)) return '0'; + var t = this.chunkSize(e), + r = Math.pow(e, t), + n = u(r), + o = i(), + s = i(), + A = ''; + for (this.divRemTo(n, o, s); o.signum() > 0; ) + (A = (r + s.intValue()).toString(e).substr(1) + A), o.divRemTo(n, o, s); + return s.intValue().toString(e) + A; + }), + (n.prototype.intValue = function () { + if (this.s < 0) { + if (1 == this.t) return this[0] - this.DV; + if (0 == this.t) return -1; + } else { + if (1 == this.t) return this[0]; + if (0 == this.t) return 0; + } + return ((this[1] & ((1 << (32 - this.DB)) - 1)) << this.DB) | this[0]; + }), + (n.prototype.addTo = function (e, t) { + for (var r = 0, n = 0, i = Math.min(e.t, this.t); r < i; ) + (n += this[r] + e[r]), (t[r++] = n & this.DM), (n >>= this.DB); + if (e.t < this.t) { + for (n += e.s; r < this.t; ) + (n += this[r]), (t[r++] = n & this.DM), (n >>= this.DB); + n += this.s; + } else { + for (n += this.s; r < e.t; ) + (n += e[r]), (t[r++] = n & this.DM), (n >>= this.DB); + n += e.s; + } + (t.s = n < 0 ? -1 : 0), + n > 0 ? (t[r++] = n) : n < -1 && (t[r++] = this.DV + n), + (t.t = r), + t.clamp(); + }); + var f = { + abs: function (t, r) { + var n, + i = new e.math.Long(t, r); + (n = i.isNegative() ? i.negate() : i), + (HEAP32[tempDoublePtr >> 2] = n.low_), + (HEAP32[(tempDoublePtr + 4) >> 2] = n.high_); + }, + ensureTemps: function () { + f.ensuredTemps || + ((f.ensuredTemps = !0), + (f.two32 = new n()), + f.two32.fromString('4294967296', 10), + (f.two64 = new n()), + f.two64.fromString('18446744073709551616', 10), + (f.temp1 = new n()), + (f.temp2 = new n())); + }, + lh2bignum: function (e, t) { + var r = new n(); + r.fromString(t.toString(), 10); + var i = new n(); + r.multiplyTo(f.two32, i); + var o = new n(); + o.fromString(e.toString(), 10); + var s = new n(); + return o.addTo(i, s), s; + }, + stringify: function (t, r, i) { + var o = new e.math.Long(t, r).toString(); + if (i && '-' == o[0]) { + f.ensureTemps(); + var s = new n(); + s.fromString(o, 10), (o = new n()), f.two64.addTo(s, o), (o = o.toString(10)); + } + return o; + }, + fromString: function (t, r, i, o, s) { + f.ensureTemps(); + var A = new n(); + A.fromString(t, r); + var a = new n(); + a.fromString(i, 10); + var c = new n(); + if ((c.fromString(o, 10), s && A.compareTo(n.ZERO) < 0)) { + var u = new n(); + A.addTo(f.two64, u), (A = u); + } + var l = !1; + A.compareTo(a) < 0 + ? ((A = a), (l = !0)) + : A.compareTo(c) > 0 && ((A = c), (l = !0)); + var h = e.math.Long.fromString(A.toString()); + if ( + ((HEAP32[tempDoublePtr >> 2] = h.low_), + (HEAP32[(tempDoublePtr + 4) >> 2] = h.high_), + l) + ) + throw 'range error'; + }, + }; + return f; + })(), + initialStackTop; + if (memoryInitializer) + if ( + ('function' == typeof Module.locateFile + ? (memoryInitializer = Module.locateFile(memoryInitializer)) + : Module.memoryInitializerPrefixURL && + (memoryInitializer = Module.memoryInitializerPrefixURL + memoryInitializer), + ENVIRONMENT_IS_NODE || ENVIRONMENT_IS_SHELL) + ) { + var data = Module.readBinary(memoryInitializer); + HEAPU8.set(data, STATIC_BASE); + } else + addRunDependency('memory initializer'), + Browser.asyncLoad( + memoryInitializer, + function (e) { + HEAPU8.set(e, STATIC_BASE), removeRunDependency('memory initializer'); + }, + function (e) { + throw 'could not load memory initializer ' + memoryInitializer; + } + ); + function ExitStatus(e) { + (this.name = 'ExitStatus'), + (this.message = 'Program terminated with exit(' + e + ')'), + (this.status = e); + } + (ExitStatus.prototype = new Error()), (ExitStatus.prototype.constructor = ExitStatus); + var preloadStartTime = null, + calledMain = !1; + function run(e) { + function t() { + Module.calledRun || + ((Module.calledRun = !0), + ABORT || + (ensureInitRuntime(), + preMain(), + ENVIRONMENT_IS_WEB && + null !== preloadStartTime && + Module.printErr( + 'pre-main prep time: ' + (Date.now() - preloadStartTime) + ' ms' + ), + Module._main && shouldRunNow && Module.callMain(e), + postRun())); + } + (e = e || Module.arguments), + null === preloadStartTime && (preloadStartTime = Date.now()), + runDependencies > 0 || + (preRun(), + runDependencies > 0 || + Module.calledRun || + (Module.setStatus + ? (Module.setStatus('Running...'), + setTimeout(function () { + setTimeout(function () { + Module.setStatus(''); + }, 1), + t(); + }, 1)) + : t())); + } + function exit(e) { + if (!Module.noExitRuntime) + throw ( + ((ABORT = !0), + (EXITSTATUS = e), + (STACKTOP = initialStackTop), + exitRuntime(), + ENVIRONMENT_IS_NODE + ? (process.stdout.once('drain', function () { + process.exit(e); + }), + console.log(' '), + setTimeout(function () { + process.exit(e); + }, 500)) + : ENVIRONMENT_IS_SHELL && 'function' == typeof quit && quit(e), + new ExitStatus(e)) + ); + } + function abort(e) { + e && (Module.print(e), Module.printErr(e)), (ABORT = !0), (EXITSTATUS = 1); + throw ( + 'abort() at ' + + stackTrace() + + '\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.' + ); + } + if ( + ((dependenciesFulfilled = function e() { + !Module.calledRun && shouldRunNow && run(), + Module.calledRun || (dependenciesFulfilled = e); + }), + (Module.callMain = Module.callMain = function (e) { + assert( + 0 == runDependencies, + 'cannot call main when async dependencies remain! (listen on __ATMAIN__)' + ), + assert( + 0 == __ATPRERUN__.length, + 'cannot call main when preRun functions remain to be called' + ), + (e = e || []), + ensureInitRuntime(); + var t = e.length + 1; + function r() { + for (var e = 0; e < 3; e++) n.push(0); + } + var n = [allocate(intArrayFromString(Module.thisProgram), 'i8', ALLOC_NORMAL)]; + r(); + for (var i = 0; i < t - 1; i += 1) + n.push(allocate(intArrayFromString(e[i]), 'i8', ALLOC_NORMAL)), r(); + n.push(0), (n = allocate(n, 'i32', ALLOC_NORMAL)), (initialStackTop = STACKTOP); + try { + exit(Module._main(t, n, 0)); + } catch (e) { + if (e instanceof ExitStatus) return; + if ('SimulateInfiniteLoop' == e) return void (Module.noExitRuntime = !0); + throw ( + (e && + 'object' == typeof e && + e.stack && + Module.printErr('exception thrown: ' + [e, e.stack]), + e) + ); + } finally { + calledMain = !0; + } + }), + (Module.run = Module.run = run), + (Module.exit = Module.exit = exit), + (Module.abort = Module.abort = abort), + Module.preInit) + ) + for ( + 'function' == typeof Module.preInit && (Module.preInit = [Module.preInit]); + Module.preInit.length > 0; + + ) + Module.preInit.pop()(); + var shouldRunNow = !0; + Module.noInitialRun && (shouldRunNow = !1), run(); + var origMalloc = Module._malloc, + origFree = Module._free, + MEMSTATS = { totalMemory: Module.HEAPU8.length, heapUsed: 0 }, + MEMSTATS_DATA = { + pointerToSizeMap: {}, + getSizeOfPointer: function (e) { + return MEMSTATS_DATA.pointerToSizeMap[e]; + }, + }; + (Module.MEMSTATS = MEMSTATS), (Module.MEMSTATS_DATA = MEMSTATS_DATA); + var hookedMalloc = function (e) { + var t = origMalloc(e); + return t ? ((MEMSTATS.heapUsed += e), (MEMSTATS_DATA.pointerToSizeMap[t] = e), t) : 0; + }, + hookedFree = function (e) { + return ( + e && + ((MEMSTATS.heapUsed -= MEMSTATS_DATA.getSizeOfPointer(e) || 0), + delete MEMSTATS_DATA.pointerToSizeMap[e]), + origFree(e) + ); + }, + setInnerMalloc, + setInnerFree; + return ( + (Module._malloc = hookedMalloc), + (Module._free = hookedFree), + (_malloc = hookedMalloc), + (_free = hookedFree), + setInnerMalloc && (setInnerMalloc(hookedMalloc), setInnerFree(hookedFree)), + module.exports + ); + }), + (module.exports = C_MINISAT); + }, + 73789: (e, t, r) => { + var n, + i = r(98312), + o = r(5817); + ((n = function () { + var e = (this._C = i()); + (this._native = { + getStackPointer: function () { + return e.Runtime.stackSave(); + }, + setStackPointer: function (t) { + e.Runtime.stackRestore(t); + }, + allocateBytes: function (t) { + return e.allocate(t, 'i8', e.ALLOC_STACK); + }, + pushString: function (t) { + return this.allocateBytes(e.intArrayFromString(t)); + }, + savingStack: function (t) { + var r = this.getStackPointer(); + try { + return t(this, e); + } finally { + this.setStackPointer(r); + } + }, + }), + e._createTheSolver(), + (this._clauses = []); + }).prototype.ensureVar = function (e) { + this._C._ensureVar(e); + }), + (n.prototype.addClause = function (e) { + return ( + this._clauses.push(e), + this._native.savingStack(function (t, r) { + var n = r.allocate(4 * (e.length + 1), 'i32', r.ALLOC_STACK); + return ( + o.each(e, function (e, t) { + r.setValue(n + 4 * t, e, 'i32'); + }), + r.setValue(n + 4 * e.length, 0, 'i32'), + !!r._addClause(n) + ); + }) + ); + }), + (n.prototype.solve = function () { + return !!this._C._solve(); + }), + (n.prototype.solveAssuming = function (e) { + return !!this._C._solveAssuming(e); + }), + (n.prototype.getSolution = function () { + for ( + var e = [null], t = this._C, r = t._getNumVars(), n = t._getSolution(), i = 0; + i < r; + i++ + ) + e[i + 1] = 0 === t.getValue(n + i, 'i8'); + return e; + }), + (n.prototype.retireVar = function (e) { + this._C._retireVar(e); + }), + (n.prototype.getConflictClause = function () { + for ( + var e = this._C, + t = e._getConflictClauseSize(), + r = e._getConflictClause(), + n = [], + i = 0; + i < t; + i++ + ) { + var o = e.getValue(r + 4 * i, 'i32'), + s = o >>> 1, + A = 1 & o ? -1 : 1; + n[i] = s * A; + } + return n; + }), + (e.exports = n); + }, + 55737: (e) => { + 'use strict'; + e.exports = (e) => { + const t = {}; + for (const [r, n] of Object.entries(e)) t[r.toLowerCase()] = n; + return t; + }; + }, + 46227: (e, t, r) => { + 'use strict'; + const n = r(35747), + i = r(85622), + { promisify: o } = r(31669), + s = r(95584).satisfies(process.version, '>=10.12.0'), + A = (e) => { + if ('win32' === process.platform) { + if (/[<>:"|?*]/.test(e.replace(i.parse(e).root, ''))) { + const t = new Error('Path contains invalid characters: ' + e); + throw ((t.code = 'EINVAL'), t); + } + } + }, + a = (e) => ({ ...{ mode: 511, fs: n }, ...e }), + c = (e) => { + const t = new Error(`operation not permitted, mkdir '${e}'`); + return (t.code = 'EPERM'), (t.errno = -4048), (t.path = e), (t.syscall = 'mkdir'), t; + }; + (e.exports = async (e, t) => { + A(e), (t = a(t)); + const r = o(t.fs.mkdir), + u = o(t.fs.stat); + if (s && t.fs.mkdir === n.mkdir) { + const n = i.resolve(e); + return await r(n, { mode: t.mode, recursive: !0 }), n; + } + const l = async (e) => { + try { + return await r(e, t.mode), e; + } catch (t) { + if ('EPERM' === t.code) throw t; + if ('ENOENT' === t.code) { + if (i.dirname(e) === e) throw c(e); + if (t.message.includes('null bytes')) throw t; + return await l(i.dirname(e)), l(e); + } + try { + if (!(await u(e)).isDirectory()) throw new Error('The path is not a directory'); + } catch (e) { + throw t; + } + return e; + } + }; + return l(i.resolve(e)); + }), + (e.exports.sync = (e, t) => { + if ((A(e), (t = a(t)), s && t.fs.mkdirSync === n.mkdirSync)) { + const r = i.resolve(e); + return n.mkdirSync(r, { mode: t.mode, recursive: !0 }), r; + } + const r = (e) => { + try { + t.fs.mkdirSync(e, t.mode); + } catch (n) { + if ('EPERM' === n.code) throw n; + if ('ENOENT' === n.code) { + if (i.dirname(e) === e) throw c(e); + if (n.message.includes('null bytes')) throw n; + return r(i.dirname(e)), r(e); + } + try { + if (!t.fs.statSync(e).isDirectory()) + throw new Error('The path is not a directory'); + } catch (e) { + throw n; + } + } + return e; + }; + return r(i.resolve(e)); + }); + }, + 55598: (e, t, r) => { + 'use strict'; + const n = r(92413).PassThrough, + i = Array.prototype.slice; + function o(e, t) { + if (Array.isArray(e)) for (let r = 0, n = e.length; r < n; r++) e[r] = o(e[r], t); + else { + if ( + (!e._readableState && e.pipe && (e = e.pipe(n(t))), + !e._readableState || !e.pause || !e.pipe) + ) + throw new Error('Only readable stream can be merged.'); + e.pause(); + } + return e; + } + e.exports = function () { + const e = []; + let t = !1; + const r = i.call(arguments); + let s = r[r.length - 1]; + s && !Array.isArray(s) && null == s.pipe ? r.pop() : (s = {}); + const A = !1 !== s.end; + null == s.objectMode && (s.objectMode = !0); + null == s.highWaterMark && (s.highWaterMark = 65536); + const a = n(s); + function c() { + for (let t = 0, r = arguments.length; t < r; t++) e.push(o(arguments[t], s)); + return u(), this; + } + function u() { + if (t) return; + t = !0; + let r = e.shift(); + if (!r) return void process.nextTick(l); + Array.isArray(r) || (r = [r]); + let n = r.length + 1; + function i() { + --n > 0 || ((t = !1), u()); + } + function o(e) { + function t() { + e.removeListener('merge2UnpipeEnd', t), e.removeListener('end', t), i(); + } + if (e._readableState.endEmitted) return i(); + e.on('merge2UnpipeEnd', t), e.on('end', t), e.pipe(a, { end: !1 }), e.resume(); + } + for (let e = 0; e < r.length; e++) o(r[e]); + i(); + } + function l() { + return (t = !1), a.emit('queueDrain'), A && a.end(); + } + a.setMaxListeners(0), + (a.add = c), + a.on('unpipe', function (e) { + e.emit('merge2UnpipeEnd'); + }), + r.length && c.apply(null, r); + return a; + }; + }, + 2401: (e, t, r) => { + 'use strict'; + const n = r(31669), + i = r(12235), + o = r(54722), + s = r(3598), + A = (e) => 'string' == typeof e && ('' === e || './' === e), + a = (e, t, r) => { + (t = [].concat(t)), (e = [].concat(e)); + let n = new Set(), + i = new Set(), + s = new Set(), + A = 0, + a = (e) => { + s.add(e.output), r && r.onResult && r.onResult(e); + }; + for (let s = 0; s < t.length; s++) { + let c = o(String(t[s]), { ...r, onResult: a }, !0), + u = c.state.negated || c.state.negatedExtglob; + u && A++; + for (let t of e) { + let e = c(t, !0); + (u ? !e.isMatch : e.isMatch) && + (u ? n.add(e.output) : (n.delete(e.output), i.add(e.output))); + } + } + let c = (A === t.length ? [...s] : [...i]).filter((e) => !n.has(e)); + if (r && 0 === c.length) { + if (!0 === r.failglob) throw new Error(`No matches found for "${t.join(', ')}"`); + if (!0 === r.nonull || !0 === r.nullglob) + return r.unescape ? t.map((e) => e.replace(/\\/g, '')) : t; + } + return c; + }; + (a.match = a), + (a.matcher = (e, t) => o(e, t)), + (a.any = a.isMatch = (e, t, r) => o(t, r)(e)), + (a.not = (e, t, r = {}) => { + t = [].concat(t).map(String); + let n = new Set(), + i = [], + o = a(e, t, { + ...r, + onResult: (e) => { + r.onResult && r.onResult(e), i.push(e.output); + }, + }); + for (let e of i) o.includes(e) || n.add(e); + return [...n]; + }), + (a.contains = (e, t, r) => { + if ('string' != typeof e) throw new TypeError(`Expected a string: "${n.inspect(e)}"`); + if (Array.isArray(t)) return t.some((t) => a.contains(e, t, r)); + if ('string' == typeof t) { + if (A(e) || A(t)) return !1; + if (e.includes(t) || (e.startsWith('./') && e.slice(2).includes(t))) return !0; + } + return a.isMatch(e, t, { ...r, contains: !0 }); + }), + (a.matchKeys = (e, t, r) => { + if (!s.isObject(e)) throw new TypeError('Expected the first argument to be an object'); + let n = a(Object.keys(e), t, r), + i = {}; + for (let t of n) i[t] = e[t]; + return i; + }), + (a.some = (e, t, r) => { + let n = [].concat(e); + for (let e of [].concat(t)) { + let t = o(String(e), r); + if (n.some((e) => t(e))) return !0; + } + return !1; + }), + (a.every = (e, t, r) => { + let n = [].concat(e); + for (let e of [].concat(t)) { + let t = o(String(e), r); + if (!n.every((e) => t(e))) return !1; + } + return !0; + }), + (a.all = (e, t, r) => { + if ('string' != typeof e) throw new TypeError(`Expected a string: "${n.inspect(e)}"`); + return [].concat(t).every((t) => o(t, r)(e)); + }), + (a.capture = (e, t, r) => { + let n = s.isWindows(r), + i = o.makeRe(String(e), { ...r, capture: !0 }).exec(n ? s.toPosixSlashes(t) : t); + if (i) return i.slice(1).map((e) => (void 0 === e ? '' : e)); + }), + (a.makeRe = (...e) => o.makeRe(...e)), + (a.scan = (...e) => o.scan(...e)), + (a.parse = (e, t) => { + let r = []; + for (let n of [].concat(e || [])) for (let e of i(String(n), t)) r.push(o.parse(e, t)); + return r; + }), + (a.braces = (e, t) => { + if ('string' != typeof e) throw new TypeError('Expected a string'); + return (t && !0 === t.nobrace) || !/\{.*\}/.test(e) ? [e] : i(e, t); + }), + (a.braceExpand = (e, t) => { + if ('string' != typeof e) throw new TypeError('Expected a string'); + return a.braces(e, { ...t, expand: !0 }); + }), + (e.exports = a); + }, + 81573: (e) => { + 'use strict'; + const t = (e, t) => { + for (const r of Reflect.ownKeys(t)) + Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); + return e; + }; + (e.exports = t), (e.exports.default = t); + }, + 65007: (e) => { + 'use strict'; + const t = [ + 'destroy', + 'setTimeout', + 'socket', + 'headers', + 'trailers', + 'rawHeaders', + 'statusCode', + 'httpVersion', + 'httpVersionMinor', + 'httpVersionMajor', + 'rawTrailers', + 'statusMessage', + ]; + e.exports = (e, r) => { + const n = new Set(Object.keys(e).concat(t)); + for (const t of n) t in r || (r[t] = 'function' == typeof e[t] ? e[t].bind(e) : e[t]); + }; + }, + 60102: (e) => { + 'use strict'; + const t = [ + 'aborted', + 'complete', + 'destroy', + 'headers', + 'httpVersion', + 'httpVersionMinor', + 'httpVersionMajor', + 'method', + 'rawHeaders', + 'rawTrailers', + 'setTimeout', + 'socket', + 'statusCode', + 'statusMessage', + 'trailers', + 'url', + ]; + e.exports = (e, r) => { + const n = new Set(Object.keys(e).concat(t)); + for (const t of n) t in r || (r[t] = 'function' == typeof e[t] ? e[t].bind(e) : e[t]); + }; + }, + 52670: (e, t, r) => { + (e.exports = u), (u.Minimatch = l); + var n = { sep: '/' }; + try { + n = r(85622); + } catch (e) {} + var i = (u.GLOBSTAR = l.GLOBSTAR = {}), + o = r(1289), + s = { + '!': { open: '(?:(?!(?:', close: '))[^/]*?)' }, + '?': { open: '(?:', close: ')?' }, + '+': { open: '(?:', close: ')+' }, + '*': { open: '(?:', close: ')*' }, + '@': { open: '(?:', close: ')' }, + }, + A = '().*{}+?[]^$\\!'.split('').reduce(function (e, t) { + return (e[t] = !0), e; + }, {}); + var a = /\/+/; + function c(e, t) { + (e = e || {}), (t = t || {}); + var r = {}; + return ( + Object.keys(t).forEach(function (e) { + r[e] = t[e]; + }), + Object.keys(e).forEach(function (t) { + r[t] = e[t]; + }), + r + ); + } + function u(e, t, r) { + if ('string' != typeof t) throw new TypeError('glob pattern string required'); + return ( + r || (r = {}), + !(!r.nocomment && '#' === t.charAt(0)) && + ('' === t.trim() ? '' === e : new l(t, r).match(e)) + ); + } + function l(e, t) { + if (!(this instanceof l)) return new l(e, t); + if ('string' != typeof e) throw new TypeError('glob pattern string required'); + t || (t = {}), + (e = e.trim()), + '/' !== n.sep && (e = e.split(n.sep).join('/')), + (this.options = t), + (this.set = []), + (this.pattern = e), + (this.regexp = null), + (this.negate = !1), + (this.comment = !1), + (this.empty = !1), + this.make(); + } + function h(e, t) { + if ( + (t || (t = this instanceof l ? this.options : {}), + void 0 === (e = void 0 === e ? this.pattern : e)) + ) + throw new TypeError('undefined pattern'); + return t.nobrace || !e.match(/\{.*\}/) ? [e] : o(e); + } + (u.filter = function (e, t) { + return ( + (t = t || {}), + function (r, n, i) { + return u(r, e, t); + } + ); + }), + (u.defaults = function (e) { + if (!e || !Object.keys(e).length) return u; + var t = u, + r = function (r, n, i) { + return t.minimatch(r, n, c(e, i)); + }; + return ( + (r.Minimatch = function (r, n) { + return new t.Minimatch(r, c(e, n)); + }), + r + ); + }), + (l.defaults = function (e) { + return e && Object.keys(e).length ? u.defaults(e).Minimatch : l; + }), + (l.prototype.debug = function () {}), + (l.prototype.make = function () { + if (this._made) return; + var e = this.pattern, + t = this.options; + if (!t.nocomment && '#' === e.charAt(0)) return void (this.comment = !0); + if (!e) return void (this.empty = !0); + this.parseNegate(); + var r = (this.globSet = this.braceExpand()); + t.debug && (this.debug = console.error); + this.debug(this.pattern, r), + (r = this.globParts = r.map(function (e) { + return e.split(a); + })), + this.debug(this.pattern, r), + (r = r.map(function (e, t, r) { + return e.map(this.parse, this); + }, this)), + this.debug(this.pattern, r), + (r = r.filter(function (e) { + return -1 === e.indexOf(!1); + })), + this.debug(this.pattern, r), + (this.set = r); + }), + (l.prototype.parseNegate = function () { + var e = this.pattern, + t = !1, + r = this.options, + n = 0; + if (r.nonegate) return; + for (var i = 0, o = e.length; i < o && '!' === e.charAt(i); i++) (t = !t), n++; + n && (this.pattern = e.substr(n)); + this.negate = t; + }), + (u.braceExpand = function (e, t) { + return h(e, t); + }), + (l.prototype.braceExpand = h), + (l.prototype.parse = function (e, t) { + if (e.length > 65536) throw new TypeError('pattern is too long'); + var r = this.options; + if (!r.noglobstar && '**' === e) return i; + if ('' === e) return ''; + var n, + o = '', + a = !!r.nocase, + c = !1, + u = [], + l = [], + h = !1, + f = -1, + p = -1, + d = '.' === e.charAt(0) ? '' : r.dot ? '(?!(?:^|\\/)\\.{1,2}(?:$|\\/))' : '(?!\\.)', + C = this; + function E() { + if (n) { + switch (n) { + case '*': + (o += '[^/]*?'), (a = !0); + break; + case '?': + (o += '[^/]'), (a = !0); + break; + default: + o += '\\' + n; + } + C.debug('clearStateChar %j %j', n, o), (n = !1); + } + } + for (var I, m = 0, y = e.length; m < y && (I = e.charAt(m)); m++) + if ((this.debug('%s\t%s %s %j', e, m, o, I), c && A[I])) (o += '\\' + I), (c = !1); + else + switch (I) { + case '/': + return !1; + case '\\': + E(), (c = !0); + continue; + case '?': + case '*': + case '+': + case '@': + case '!': + if ((this.debug('%s\t%s %s %j <-- stateChar', e, m, o, I), h)) { + this.debug(' in class'), '!' === I && m === p + 1 && (I = '^'), (o += I); + continue; + } + C.debug('call clearStateChar %j', n), E(), (n = I), r.noext && E(); + continue; + case '(': + if (h) { + o += '('; + continue; + } + if (!n) { + o += '\\('; + continue; + } + u.push({ + type: n, + start: m - 1, + reStart: o.length, + open: s[n].open, + close: s[n].close, + }), + (o += '!' === n ? '(?:(?!(?:' : '(?:'), + this.debug('plType %j %j', n, o), + (n = !1); + continue; + case ')': + if (h || !u.length) { + o += '\\)'; + continue; + } + E(), (a = !0); + var w = u.pop(); + (o += w.close), '!' === w.type && l.push(w), (w.reEnd = o.length); + continue; + case '|': + if (h || !u.length || c) { + (o += '\\|'), (c = !1); + continue; + } + E(), (o += '|'); + continue; + case '[': + if ((E(), h)) { + o += '\\' + I; + continue; + } + (h = !0), (p = m), (f = o.length), (o += I); + continue; + case ']': + if (m === p + 1 || !h) { + (o += '\\' + I), (c = !1); + continue; + } + if (h) { + var B = e.substring(p + 1, m); + try { + RegExp('[' + B + ']'); + } catch (e) { + var Q = this.parse(B, g); + (o = o.substr(0, f) + '\\[' + Q[0] + '\\]'), (a = a || Q[1]), (h = !1); + continue; + } + } + (a = !0), (h = !1), (o += I); + continue; + default: + E(), c ? (c = !1) : !A[I] || ('^' === I && h) || (o += '\\'), (o += I); + } + h && + ((B = e.substr(p + 1)), + (Q = this.parse(B, g)), + (o = o.substr(0, f) + '\\[' + Q[0]), + (a = a || Q[1])); + for (w = u.pop(); w; w = u.pop()) { + var v = o.slice(w.reStart + w.open.length); + this.debug('setting tail', o, w), + (v = v.replace(/((?:\\{2}){0,64})(\\?)\|/g, function (e, t, r) { + return r || (r = '\\'), t + t + r + '|'; + })), + this.debug('tail=%j\n %s', v, v, w, o); + var D = '*' === w.type ? '[^/]*?' : '?' === w.type ? '[^/]' : '\\' + w.type; + (a = !0), (o = o.slice(0, w.reStart) + D + '\\(' + v); + } + E(), c && (o += '\\\\'); + var b = !1; + switch (o.charAt(0)) { + case '.': + case '[': + case '(': + b = !0; + } + for (var S = l.length - 1; S > -1; S--) { + var k = l[S], + x = o.slice(0, k.reStart), + F = o.slice(k.reStart, k.reEnd - 8), + M = o.slice(k.reEnd - 8, k.reEnd), + N = o.slice(k.reEnd); + M += N; + var R = x.split('(').length - 1, + K = N; + for (m = 0; m < R; m++) K = K.replace(/\)[+*?]?/, ''); + var L = ''; + '' === (N = K) && t !== g && (L = '$'), (o = x + F + N + L + M); + } + '' !== o && a && (o = '(?=.)' + o); + b && (o = d + o); + if (t === g) return [o, a]; + if (!a) + return (function (e) { + return e.replace(/\\(.)/g, '$1'); + })(e); + var T = r.nocase ? 'i' : ''; + try { + var P = new RegExp('^' + o + '$', T); + } catch (e) { + return new RegExp('$.'); + } + return (P._glob = e), (P._src = o), P; + }); + var g = {}; + (u.makeRe = function (e, t) { + return new l(e, t || {}).makeRe(); + }), + (l.prototype.makeRe = function () { + if (this.regexp || !1 === this.regexp) return this.regexp; + var e = this.set; + if (!e.length) return (this.regexp = !1), this.regexp; + var t = this.options, + r = t.noglobstar + ? '[^/]*?' + : t.dot + ? '(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?' + : '(?:(?!(?:\\/|^)\\.).)*?', + n = t.nocase ? 'i' : '', + o = e + .map(function (e) { + return e + .map(function (e) { + return e === i + ? r + : 'string' == typeof e + ? (function (e) { + return e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, '\\$&'); + })(e) + : e._src; + }) + .join('\\/'); + }) + .join('|'); + (o = '^(?:' + o + ')$'), this.negate && (o = '^(?!' + o + ').*$'); + try { + this.regexp = new RegExp(o, n); + } catch (e) { + this.regexp = !1; + } + return this.regexp; + }), + (u.match = function (e, t, r) { + var n = new l(t, (r = r || {})); + return ( + (e = e.filter(function (e) { + return n.match(e); + })), + n.options.nonull && !e.length && e.push(t), + e + ); + }), + (l.prototype.match = function (e, t) { + if ((this.debug('match', e, this.pattern), this.comment)) return !1; + if (this.empty) return '' === e; + if ('/' === e && t) return !0; + var r = this.options; + '/' !== n.sep && (e = e.split(n.sep).join('/')); + (e = e.split(a)), this.debug(this.pattern, 'split', e); + var i, + o, + s = this.set; + for (this.debug(this.pattern, 'set', s), o = e.length - 1; o >= 0 && !(i = e[o]); o--); + for (o = 0; o < s.length; o++) { + var A = s[o], + c = e; + if ((r.matchBase && 1 === A.length && (c = [i]), this.matchOne(c, A, t))) + return !!r.flipNegate || !this.negate; + } + return !r.flipNegate && this.negate; + }), + (l.prototype.matchOne = function (e, t, r) { + var n = this.options; + this.debug('matchOne', { this: this, file: e, pattern: t }), + this.debug('matchOne', e.length, t.length); + for (var o = 0, s = 0, A = e.length, a = t.length; o < A && s < a; o++, s++) { + this.debug('matchOne loop'); + var c, + u = t[s], + l = e[o]; + if ((this.debug(t, u, l), !1 === u)) return !1; + if (u === i) { + this.debug('GLOBSTAR', [t, u, l]); + var h = o, + g = s + 1; + if (g === a) { + for (this.debug('** at the end'); o < A; o++) + if ('.' === e[o] || '..' === e[o] || (!n.dot && '.' === e[o].charAt(0))) + return !1; + return !0; + } + for (; h < A; ) { + var f = e[h]; + if ( + (this.debug('\nglobstar while', e, h, t, g, f), + this.matchOne(e.slice(h), t.slice(g), r)) + ) + return this.debug('globstar found match!', h, A, f), !0; + if ('.' === f || '..' === f || (!n.dot && '.' === f.charAt(0))) { + this.debug('dot detected!', e, h, t, g); + break; + } + this.debug('globstar swallow a segment, and continue'), h++; + } + return !(!r || (this.debug('\n>>> no match, partial?', e, h, t, g), h !== A)); + } + if ( + ('string' == typeof u + ? ((c = n.nocase ? l.toLowerCase() === u.toLowerCase() : l === u), + this.debug('string match', u, l, c)) + : ((c = l.match(u)), this.debug('pattern match', u, l, c)), + !c) + ) + return !1; + } + if (o === A && s === a) return !0; + if (o === A) return r; + if (s === a) return o === A - 1 && '' === e[o]; + throw new Error('wtf?'); + }); + }, + 44380: (e, t, r) => { + 'use strict'; + const n = r(28614), + i = r(80800), + o = r(24304).StringDecoder, + s = Symbol('EOF'), + A = Symbol('maybeEmitEnd'), + a = Symbol('emittedEnd'), + c = Symbol('emittingEnd'), + u = Symbol('closed'), + l = Symbol('read'), + h = Symbol('flush'), + g = Symbol('flushChunk'), + f = Symbol('encoding'), + p = Symbol('decoder'), + d = Symbol('flowing'), + C = Symbol('paused'), + E = Symbol('resume'), + I = Symbol('bufferLength'), + m = Symbol('bufferPush'), + y = Symbol('bufferShift'), + w = Symbol('objectMode'), + B = Symbol('destroyed'), + Q = '1' !== global._MP_NO_ITERATOR_SYMBOLS_, + v = (Q && Symbol.asyncIterator) || Symbol('asyncIterator not implemented'), + D = (Q && Symbol.iterator) || Symbol('iterator not implemented'), + b = Buffer.alloc ? Buffer : r(13499).Buffer, + S = (e) => 'end' === e || 'finish' === e || 'prefinish' === e; + e.exports = class e extends n { + constructor(e) { + super(), + (this[d] = !1), + (this[C] = !1), + (this.pipes = new i()), + (this.buffer = new i()), + (this[w] = (e && e.objectMode) || !1), + this[w] ? (this[f] = null) : (this[f] = (e && e.encoding) || null), + 'buffer' === this[f] && (this[f] = null), + (this[p] = this[f] ? new o(this[f]) : null), + (this[s] = !1), + (this[a] = !1), + (this[c] = !1), + (this[u] = !1), + (this.writable = !0), + (this.readable = !0), + (this[I] = 0), + (this[B] = !1); + } + get bufferLength() { + return this[I]; + } + get encoding() { + return this[f]; + } + set encoding(e) { + if (this[w]) throw new Error('cannot set encoding in objectMode'); + if (this[f] && e !== this[f] && ((this[p] && this[p].lastNeed) || this[I])) + throw new Error('cannot change encoding'); + this[f] !== e && + ((this[p] = e ? new o(e) : null), + this.buffer.length && (this.buffer = this.buffer.map((e) => this[p].write(e)))), + (this[f] = e); + } + setEncoding(e) { + this.encoding = e; + } + get objectMode() { + return this[w]; + } + set objectMode(e) { + this[w] = this[w] || !!e; + } + write(e, t, r) { + if (this[s]) throw new Error('write after end'); + if (this[B]) + return ( + this.emit( + 'error', + Object.assign(new Error('Cannot call write after a stream was destroyed'), { + code: 'ERR_STREAM_DESTROYED', + }) + ), + !0 + ); + var n; + if ( + ('function' == typeof t && ((r = t), (t = 'utf8')), + t || (t = 'utf8'), + this[w] || + b.isBuffer(e) || + ((n = e), + !b.isBuffer(n) && ArrayBuffer.isView(n) + ? (e = b.from(e.buffer, e.byteOffset, e.byteLength)) + : ((e) => + e instanceof ArrayBuffer || + ('object' == typeof e && + e.constructor && + 'ArrayBuffer' === e.constructor.name && + e.byteLength >= 0))(e) + ? (e = b.from(e)) + : 'string' != typeof e && (this.objectMode = !0)), + !this.objectMode && !e.length) + ) { + const e = this.flowing; + return 0 !== this[I] && this.emit('readable'), r && r(), e; + } + 'string' != typeof e || + this[w] || + (t === this[f] && !this[p].lastNeed) || + (e = b.from(e, t)), + b.isBuffer(e) && this[f] && (e = this[p].write(e)); + try { + return this.flowing ? (this.emit('data', e), this.flowing) : (this[m](e), !1); + } finally { + 0 !== this[I] && this.emit('readable'), r && r(); + } + } + read(e) { + if (this[B]) return null; + try { + return 0 === this[I] || 0 === e || e > this[I] + ? null + : (this[w] && (e = null), + this.buffer.length > 1 && + !this[w] && + (this.encoding + ? (this.buffer = new i([Array.from(this.buffer).join('')])) + : (this.buffer = new i([b.concat(Array.from(this.buffer), this[I])]))), + this[l](e || null, this.buffer.head.value)); + } finally { + this[A](); + } + } + [l](e, t) { + return ( + e === t.length || null === e + ? this[y]() + : ((this.buffer.head.value = t.slice(e)), (t = t.slice(0, e)), (this[I] -= e)), + this.emit('data', t), + this.buffer.length || this[s] || this.emit('drain'), + t + ); + } + end(e, t, r) { + return ( + 'function' == typeof e && ((r = e), (e = null)), + 'function' == typeof t && ((r = t), (t = 'utf8')), + e && this.write(e, t), + r && this.once('end', r), + (this[s] = !0), + (this.writable = !1), + (!this.flowing && this[C]) || this[A](), + this + ); + } + [E]() { + this[B] || + ((this[C] = !1), + (this[d] = !0), + this.emit('resume'), + this.buffer.length ? this[h]() : this[s] ? this[A]() : this.emit('drain')); + } + resume() { + return this[E](); + } + pause() { + (this[d] = !1), (this[C] = !0); + } + get destroyed() { + return this[B]; + } + get flowing() { + return this[d]; + } + get paused() { + return this[C]; + } + [m](e) { + return this[w] ? (this[I] += 1) : (this[I] += e.length), this.buffer.push(e); + } + [y]() { + return ( + this.buffer.length && + (this[w] ? (this[I] -= 1) : (this[I] -= this.buffer.head.value.length)), + this.buffer.shift() + ); + } + [h]() { + do {} while (this[g](this[y]())); + this.buffer.length || this[s] || this.emit('drain'); + } + [g](e) { + return !!e && (this.emit('data', e), this.flowing); + } + pipe(e, t) { + if (this[B]) return; + const r = this[a]; + (t = t || {}), + e === process.stdout || e === process.stderr ? (t.end = !1) : (t.end = !1 !== t.end); + const n = { dest: e, opts: t, ondrain: (e) => this[E]() }; + return ( + this.pipes.push(n), + e.on('drain', n.ondrain), + this[E](), + r && n.opts.end && n.dest.end(), + e + ); + } + addListener(e, t) { + return this.on(e, t); + } + on(e, t) { + try { + return super.on(e, t); + } finally { + 'data' !== e || this.pipes.length || this.flowing + ? S(e) && this[a] && (super.emit(e), this.removeAllListeners(e)) + : this[E](); + } + } + get emittedEnd() { + return this[a]; + } + [A]() { + this[c] || + this[a] || + this[B] || + 0 !== this.buffer.length || + !this[s] || + ((this[c] = !0), + this.emit('end'), + this.emit('prefinish'), + this.emit('finish'), + this[u] && this.emit('close'), + (this[c] = !1)); + } + emit(e, t) { + if ('error' !== e && 'close' !== e && e !== B && this[B]) return; + if ('data' === e) { + if (!t) return; + this.pipes.length && + this.pipes.forEach((e) => !1 === e.dest.write(t) && this.pause()); + } else if ('end' === e) { + if (!0 === this[a]) return; + (this[a] = !0), + (this.readable = !1), + this[p] && + (t = this[p].end()) && + (this.pipes.forEach((e) => e.dest.write(t)), super.emit('data', t)), + this.pipes.forEach((e) => { + e.dest.removeListener('drain', e.ondrain), e.opts.end && e.dest.end(); + }); + } else if ('close' === e && ((this[u] = !0), !this[a] && !this[B])) return; + const r = new Array(arguments.length); + if (((r[0] = e), (r[1] = t), arguments.length > 2)) + for (let e = 2; e < arguments.length; e++) r[e] = arguments[e]; + try { + return super.emit.apply(this, r); + } finally { + S(e) ? this.removeAllListeners(e) : this[A](); + } + } + collect() { + const e = []; + return ( + (e.dataLength = 0), + this.on('data', (t) => { + e.push(t), (e.dataLength += t.length); + }), + this.promise().then(() => e) + ); + } + concat() { + return this[w] + ? Promise.reject(new Error('cannot concat in objectMode')) + : this.collect().then((e) => + this[w] + ? Promise.reject(new Error('cannot concat in objectMode')) + : this[f] + ? e.join('') + : b.concat(e, e.dataLength) + ); + } + promise() { + return new Promise((e, t) => { + this.on(B, () => t(new Error('stream destroyed'))), + this.on('end', () => e()), + this.on('error', (e) => t(e)); + }); + } + [v]() { + return { + next: () => { + const e = this.read(); + if (null !== e) return Promise.resolve({ done: !1, value: e }); + if (this[s]) return Promise.resolve({ done: !0 }); + let t = null, + r = null; + const n = (e) => { + this.removeListener('data', i), this.removeListener('end', o), r(e); + }, + i = (e) => { + this.removeListener('error', n), + this.removeListener('end', o), + this.pause(), + t({ value: e, done: !!this[s] }); + }, + o = () => { + this.removeListener('error', n), + this.removeListener('data', i), + t({ done: !0 }); + }, + A = () => n(new Error('stream destroyed')); + return new Promise((e, s) => { + (r = s), + (t = e), + this.once(B, A), + this.once('error', n), + this.once('end', o), + this.once('data', i); + }); + }, + }; + } + [D]() { + return { + next: () => { + const e = this.read(); + return { value: e, done: null === e }; + }, + }; + } + destroy(e) { + return this[B] + ? (e ? this.emit('error', e) : this.emit(B), this) + : ((this[B] = !0), + (this.buffer = new i()), + (this[I] = 0), + 'function' != typeof this.close || this[u] || this.close(), + e ? this.emit('error', e) : this.emit(B), + this); + } + static isStream(t) { + return ( + !!t && + (t instanceof e || + (t instanceof n && + ('function' == typeof t.pipe || + ('function' == typeof t.write && 'function' == typeof t.end)))) + ); + } + }; + }, + 90051: (e) => { + e.exports = Object.freeze({ + Z_NO_FLUSH: 0, + Z_PARTIAL_FLUSH: 1, + Z_SYNC_FLUSH: 2, + Z_FULL_FLUSH: 3, + Z_FINISH: 4, + Z_BLOCK: 5, + Z_OK: 0, + Z_STREAM_END: 1, + Z_NEED_DICT: 2, + Z_ERRNO: -1, + Z_STREAM_ERROR: -2, + Z_DATA_ERROR: -3, + Z_MEM_ERROR: -4, + Z_BUF_ERROR: -5, + Z_VERSION_ERROR: -6, + Z_NO_COMPRESSION: 0, + Z_BEST_SPEED: 1, + Z_BEST_COMPRESSION: 9, + Z_DEFAULT_COMPRESSION: -1, + Z_FILTERED: 1, + Z_HUFFMAN_ONLY: 2, + Z_RLE: 3, + Z_FIXED: 4, + Z_DEFAULT_STRATEGY: 0, + ZLIB_VERNUM: 4736, + DEFLATE: 1, + INFLATE: 2, + GZIP: 3, + GUNZIP: 4, + DEFLATERAW: 5, + INFLATERAW: 6, + UNZIP: 7, + Z_MIN_WINDOWBITS: 8, + Z_MAX_WINDOWBITS: 15, + Z_DEFAULT_WINDOWBITS: 15, + Z_MIN_CHUNK: 64, + Z_MAX_CHUNK: 1 / 0, + Z_DEFAULT_CHUNK: 16384, + Z_MIN_MEMLEVEL: 1, + Z_MAX_MEMLEVEL: 9, + Z_DEFAULT_MEMLEVEL: 8, + Z_MIN_LEVEL: -1, + Z_MAX_LEVEL: 9, + Z_DEFAULT_LEVEL: -1, + }); + }, + 20671: (e, t, r) => { + 'use strict'; + const n = r(42357), + i = r(64293).Buffer, + o = r(78761), + s = (t.constants = r(90051)), + A = r(44380), + a = i.concat; + class c extends Error { + constructor(e, t) { + super('zlib: ' + e), (this.errno = t), (this.code = u.get(t)); + } + get name() { + return 'ZlibError'; + } + } + const u = new Map([ + [s.Z_OK, 'Z_OK'], + [s.Z_STREAM_END, 'Z_STREAM_END'], + [s.Z_NEED_DICT, 'Z_NEED_DICT'], + [s.Z_ERRNO, 'Z_ERRNO'], + [s.Z_STREAM_ERROR, 'Z_STREAM_ERROR'], + [s.Z_DATA_ERROR, 'Z_DATA_ERROR'], + [s.Z_MEM_ERROR, 'Z_MEM_ERROR'], + [s.Z_BUF_ERROR, 'Z_BUF_ERROR'], + [s.Z_VERSION_ERROR, 'Z_VERSION_ERROR'], + ]), + l = new Set([ + s.Z_NO_FLUSH, + s.Z_PARTIAL_FLUSH, + s.Z_SYNC_FLUSH, + s.Z_FULL_FLUSH, + s.Z_FINISH, + s.Z_BLOCK, + ]), + h = new Set([s.Z_FILTERED, s.Z_HUFFMAN_ONLY, s.Z_RLE, s.Z_FIXED, s.Z_DEFAULT_STRATEGY]), + g = Symbol('opts'), + f = Symbol('flushFlag'), + p = Symbol('finishFlush'), + d = Symbol('handle'), + C = Symbol('onError'), + E = Symbol('level'), + I = Symbol('strategy'), + m = Symbol('ended'); + class y extends A { + constructor(e, t) { + if ((super(e), (this[m] = !1), (this[g] = e = e || {}), e.flush && !l.has(e.flush))) + throw new TypeError('Invalid flush flag: ' + e.flush); + if (e.finishFlush && !l.has(e.finishFlush)) + throw new TypeError('Invalid flush flag: ' + e.finishFlush); + if ( + ((this[f] = e.flush || s.Z_NO_FLUSH), + (this[p] = void 0 !== e.finishFlush ? e.finishFlush : s.Z_FINISH), + e.chunkSize && e.chunkSize < s.Z_MIN_CHUNK) + ) + throw new RangeError('Invalid chunk size: ' + e.chunkSize); + if ( + e.windowBits && + (e.windowBits < s.Z_MIN_WINDOWBITS || e.windowBits > s.Z_MAX_WINDOWBITS) + ) + throw new RangeError('Invalid windowBits: ' + e.windowBits); + if (e.level && (e.level < s.Z_MIN_LEVEL || e.level > s.Z_MAX_LEVEL)) + throw new RangeError('Invalid compression level: ' + e.level); + if (e.memLevel && (e.memLevel < s.Z_MIN_MEMLEVEL || e.memLevel > s.Z_MAX_MEMLEVEL)) + throw new RangeError('Invalid memLevel: ' + e.memLevel); + if (e.strategy && !h.has(e.strategy)) + throw new TypeError('Invalid strategy: ' + e.strategy); + if (e.dictionary && !(e.dictionary instanceof i)) + throw new TypeError('Invalid dictionary: it should be a Buffer instance'); + (this[d] = new o[t](e)), + (this[C] = (e) => { + this.close(); + const t = new c(e.message, e.errno); + this.emit('error', t); + }), + this[d].on('error', this[C]); + const r = 'number' == typeof e.level ? e.level : s.Z_DEFAULT_COMPRESSION; + var n = 'number' == typeof e.strategy ? e.strategy : s.Z_DEFAULT_STRATEGY; + (this[E] = r), (this[I] = n), this.once('end', this.close); + } + close() { + this[d] && (this[d].close(), (this[d] = null), this.emit('close')); + } + params(e, t) { + if (!this[d]) throw new Error('cannot switch params when binding is closed'); + if (!this[d].params) throw new Error('not supported in this implementation'); + if (e < s.Z_MIN_LEVEL || e > s.Z_MAX_LEVEL) + throw new RangeError('Invalid compression level: ' + e); + if (!h.has(t)) throw new TypeError('Invalid strategy: ' + t); + if (this[E] !== e || this[I] !== t) { + this.flush(s.Z_SYNC_FLUSH), n(this[d], 'zlib binding closed'); + const r = this[d].flush; + (this[d].flush = (e, t) => { + (this[d].flush = r), this.flush(e), t(); + }), + this[d].params(e, t), + this[d] && ((this[E] = e), (this[I] = t)); + } + } + reset() { + return n(this[d], 'zlib binding closed'), this[d].reset(); + } + flush(e) { + if ((void 0 === e && (e = s.Z_FULL_FLUSH), this.ended)) return; + const t = this[f]; + (this[f] = e), this.write(i.alloc(0)), (this[f] = t); + } + end(e, t, r) { + return ( + e && this.write(e, t), this.flush(this[p]), (this[m] = !0), super.end(null, null, r) + ); + } + get ended() { + return this[m]; + } + write(e, t, r) { + 'function' == typeof t && ((r = t), (t = 'utf8')), + 'string' == typeof e && (e = i.from(e, t)), + n(this[d], 'zlib binding closed'); + const o = this[d]._handle, + s = o.close; + o.close = () => {}; + const A = this[d].close; + let c, u; + (this[d].close = () => {}), (i.concat = (e) => e); + try { + c = this[d]._processChunk(e, this[f]); + } catch (e) { + this[C](e); + } finally { + (i.concat = a), + this[d] && + ((this[d]._handle = o), + (o.close = s), + (this[d].close = A), + this[d].removeAllListeners('error')); + } + if (c) + if (Array.isArray(c) && c.length > 0) { + u = super.write(i.from(c[0])); + for (let e = 1; e < c.length; e++) u = super.write(c[e]); + } else u = super.write(i.from(c)); + return r && r(), u; + } + } + (t.Deflate = class extends y { + constructor(e) { + super(e, 'Deflate'); + } + }), + (t.Inflate = class extends y { + constructor(e) { + super(e, 'Inflate'); + } + }), + (t.Gzip = class extends y { + constructor(e) { + super(e, 'Gzip'); + } + }), + (t.Gunzip = class extends y { + constructor(e) { + super(e, 'Gunzip'); + } + }), + (t.DeflateRaw = class extends y { + constructor(e) { + super(e, 'DeflateRaw'); + } + }), + (t.InflateRaw = class extends y { + constructor(e) { + super(e, 'InflateRaw'); + } + }), + (t.Unzip = class extends y { + constructor(e) { + super(e, 'Unzip'); + } + }); + }, + 11436: (e, t, r) => { + var n = r(85622), + i = r(35747), + o = parseInt('0777', 8); + function s(e, t, r, A) { + 'function' == typeof t + ? ((r = t), (t = {})) + : (t && 'object' == typeof t) || (t = { mode: t }); + var a = t.mode, + c = t.fs || i; + void 0 === a && (a = o & ~process.umask()), A || (A = null); + var u = r || function () {}; + (e = n.resolve(e)), + c.mkdir(e, a, function (r) { + if (!r) return u(null, (A = A || e)); + switch (r.code) { + case 'ENOENT': + s(n.dirname(e), t, function (r, n) { + r ? u(r, n) : s(e, t, u, n); + }); + break; + default: + c.stat(e, function (e, t) { + e || !t.isDirectory() ? u(r, A) : u(null, A); + }); + } + }); + } + (e.exports = s.mkdirp = s.mkdirP = s), + (s.sync = function e(t, r, s) { + (r && 'object' == typeof r) || (r = { mode: r }); + var A = r.mode, + a = r.fs || i; + void 0 === A && (A = o & ~process.umask()), s || (s = null), (t = n.resolve(t)); + try { + a.mkdirSync(t, A), (s = s || t); + } catch (i) { + switch (i.code) { + case 'ENOENT': + (s = e(n.dirname(t), r, s)), e(t, r, s); + break; + default: + var c; + try { + c = a.statSync(t); + } catch (e) { + throw i; + } + if (!c.isDirectory()) throw i; + } + } + return s; + }); + }, + 75319: (e, t, r) => { + var n = r(92413); + function i(e) { + n.apply(this), + (e = e || {}), + (this.writable = this.readable = !0), + (this.muted = !1), + this.on('pipe', this._onpipe), + (this.replace = e.replace), + (this._prompt = e.prompt || null), + (this._hadControl = !1); + } + function o(e) { + return function () { + var t = this._dest, + r = this._src; + t && t[e] && t[e].apply(t, arguments), r && r[e] && r[e].apply(r, arguments); + }; + } + (e.exports = i), + (i.prototype = Object.create(n.prototype)), + Object.defineProperty(i.prototype, 'constructor', { value: i, enumerable: !1 }), + (i.prototype.mute = function () { + this.muted = !0; + }), + (i.prototype.unmute = function () { + this.muted = !1; + }), + Object.defineProperty(i.prototype, '_onpipe', { + value: function (e) { + this._src = e; + }, + enumerable: !1, + writable: !0, + configurable: !0, + }), + Object.defineProperty(i.prototype, 'isTTY', { + get: function () { + return this._dest ? this._dest.isTTY : !!this._src && this._src.isTTY; + }, + set: function (e) { + Object.defineProperty(this, 'isTTY', { + value: e, + enumerable: !0, + writable: !0, + configurable: !0, + }); + }, + enumerable: !0, + configurable: !0, + }), + Object.defineProperty(i.prototype, 'rows', { + get: function () { + return this._dest ? this._dest.rows : this._src ? this._src.rows : void 0; + }, + enumerable: !0, + configurable: !0, + }), + Object.defineProperty(i.prototype, 'columns', { + get: function () { + return this._dest ? this._dest.columns : this._src ? this._src.columns : void 0; + }, + enumerable: !0, + configurable: !0, + }), + (i.prototype.pipe = function (e, t) { + return (this._dest = e), n.prototype.pipe.call(this, e, t); + }), + (i.prototype.pause = function () { + if (this._src) return this._src.pause(); + }), + (i.prototype.resume = function () { + if (this._src) return this._src.resume(); + }), + (i.prototype.write = function (e) { + if (this.muted) { + if (!this.replace) return !0; + if (e.match(/^\u001b/)) + return ( + 0 === e.indexOf(this._prompt) && + ((e = (e = e.substr(this._prompt.length)).replace(/./g, this.replace)), + (e = this._prompt + e)), + (this._hadControl = !0), + this.emit('data', e) + ); + this._prompt && + this._hadControl && + 0 === e.indexOf(this._prompt) && + ((this._hadControl = !1), + this.emit('data', this._prompt), + (e = e.substr(this._prompt.length))), + (e = e.toString().replace(/./g, this.replace)); + } + this.emit('data', e); + }), + (i.prototype.end = function (e) { + this.muted && (e = e && this.replace ? e.toString().replace(/./g, this.replace) : null), + e && this.emit('data', e), + this.emit('end'); + }), + (i.prototype.destroy = o('destroy')), + (i.prototype.destroySoon = o('destroySoon')), + (i.prototype.close = o('close')); + }, + 19793: (e, t, r) => { + 'use strict'; + const n = 'undefined' == typeof URL ? r(78835).URL : URL, + i = (e, t) => t.some((t) => (t instanceof RegExp ? t.test(e) : t === e)), + o = (e, t) => { + if ( + ((t = { + defaultProtocol: 'http:', + normalizeProtocol: !0, + forceHttp: !1, + forceHttps: !1, + stripAuthentication: !0, + stripHash: !1, + stripWWW: !0, + removeQueryParameters: [/^utm_\w+/i], + removeTrailingSlash: !0, + removeDirectoryIndex: !1, + sortQueryParameters: !0, + ...t, + }), + Reflect.has(t, 'normalizeHttps')) + ) + throw new Error('options.normalizeHttps is renamed to options.forceHttp'); + if (Reflect.has(t, 'normalizeHttp')) + throw new Error('options.normalizeHttp is renamed to options.forceHttps'); + if (Reflect.has(t, 'stripFragment')) + throw new Error('options.stripFragment is renamed to options.stripHash'); + if (((e = e.trim()), /^data:/i.test(e))) + return ((e, { stripHash: t }) => { + const r = e.match(/^data:(.*?),(.*?)(?:#(.*))?$/); + if (!r) throw new Error('Invalid URL: ' + e); + const n = r[1].split(';'), + i = r[2], + o = t ? '' : r[3]; + let s = !1; + 'base64' === n[n.length - 1] && (n.pop(), (s = !0)); + const A = (n.shift() || '').toLowerCase(), + a = [ + ...n + .map((e) => { + let [t, r = ''] = e.split('=').map((e) => e.trim()); + return 'charset' === t && ((r = r.toLowerCase()), 'us-ascii' === r) + ? '' + : `${t}${r ? '=' + r : ''}`; + }) + .filter(Boolean), + ]; + return ( + s && a.push('base64'), + (0 !== a.length || (A && 'text/plain' !== A)) && a.unshift(A), + `data:${a.join(';')},${s ? i.trim() : i}${o ? '#' + o : ''}` + ); + })(e, t); + const r = e.startsWith('//'); + (!r && /^\.*\//.test(e)) || + (e = e.replace(/^(?!(?:\w+:)?\/\/)|^\/\//, t.defaultProtocol)); + const o = new n(e); + if (t.forceHttp && t.forceHttps) + throw new Error('The `forceHttp` and `forceHttps` options cannot be used together'); + if ( + (t.forceHttp && 'https:' === o.protocol && (o.protocol = 'http:'), + t.forceHttps && 'http:' === o.protocol && (o.protocol = 'https:'), + t.stripAuthentication && ((o.username = ''), (o.password = '')), + t.stripHash && (o.hash = ''), + o.pathname && + (o.pathname = o.pathname.replace(/((?!:).|^)\/{2,}/g, (e, t) => + /^(?!\/)/g.test(t) ? t + '/' : '/' + )), + o.pathname && (o.pathname = decodeURI(o.pathname)), + !0 === t.removeDirectoryIndex && (t.removeDirectoryIndex = [/^index\.[a-z]+$/]), + Array.isArray(t.removeDirectoryIndex) && t.removeDirectoryIndex.length > 0) + ) { + let e = o.pathname.split('/'); + const r = e[e.length - 1]; + i(r, t.removeDirectoryIndex) && + ((e = e.slice(0, e.length - 1)), (o.pathname = e.slice(1).join('/') + '/')); + } + if ( + (o.hostname && + ((o.hostname = o.hostname.replace(/\.$/, '')), + t.stripWWW && + /^www\.([a-z\-\d]{2,63})\.([a-z.]{2,5})$/.test(o.hostname) && + (o.hostname = o.hostname.replace(/^www\./, ''))), + Array.isArray(t.removeQueryParameters)) + ) + for (const e of [...o.searchParams.keys()]) + i(e, t.removeQueryParameters) && o.searchParams.delete(e); + return ( + t.sortQueryParameters && o.searchParams.sort(), + t.removeTrailingSlash && (o.pathname = o.pathname.replace(/\/$/, '')), + (e = o.toString()), + (!t.removeTrailingSlash && '/' !== o.pathname) || + '' !== o.hash || + (e = e.replace(/\/$/, '')), + r && !t.normalizeProtocol && (e = e.replace(/^http:\/\//, '//')), + t.stripProtocol && (e = e.replace(/^(?:https?:)?\/\//, '')), + e + ); + }; + (e.exports = o), (e.exports.default = o); + }, + 91162: (e, t, r) => { + var n = r(98984); + function i(e) { + var t = function () { + return t.called ? t.value : ((t.called = !0), (t.value = e.apply(this, arguments))); + }; + return (t.called = !1), t; + } + (e.exports = n(i)), + (i.proto = i(function () { + Object.defineProperty(Function.prototype, 'once', { + value: function () { + return i(this); + }, + configurable: !0, + }); + })); + }, + 27180: (e, t, r) => { + var n = r(98984); + function i(e) { + var t = function () { + return t.called ? t.value : ((t.called = !0), (t.value = e.apply(this, arguments))); + }; + return (t.called = !1), t; + } + function o(e) { + var t = function () { + if (t.called) throw new Error(t.onceError); + return (t.called = !0), (t.value = e.apply(this, arguments)); + }, + r = e.name || 'Function wrapped with `once`'; + return (t.onceError = r + " shouldn't be called more than once"), (t.called = !1), t; + } + (e.exports = n(i)), + (e.exports.strict = n(o)), + (i.proto = i(function () { + Object.defineProperty(Function.prototype, 'once', { + value: function () { + return i(this); + }, + configurable: !0, + }), + Object.defineProperty(Function.prototype, 'onceStrict', { + value: function () { + return o(this); + }, + configurable: !0, + }); + })); + }, + 90834: (e, t, r) => { + 'use strict'; + const n = r(81573), + i = new WeakMap(), + o = (e, t = {}) => { + if ('function' != typeof e) throw new TypeError('Expected a function'); + let r, + o = !1, + s = 0; + const A = e.displayName || e.name || '', + a = function (...n) { + if ((i.set(a, ++s), o)) { + if (!0 === t.throw) throw new Error(`Function \`${A}\` can only be called once`); + return r; + } + return (o = !0), (r = e.apply(this, n)), (e = null), r; + }; + return n(a, e), i.set(a, s), a; + }; + (e.exports = o), + (e.exports.default = o), + (e.exports.callCount = (e) => { + if (!i.has(e)) + throw new Error( + `The given function \`${e.name}\` is not wrapped by the \`onetime\` package` + ); + return i.get(e); + }); + }, + 82941: (e) => { + 'use strict'; + var t = 'win32' === process.platform, + r = t ? /[^:]\\$/ : /.\/$/; + e.exports = function () { + var e; + return ( + (e = t + ? process.env.TEMP || + process.env.TMP || + (process.env.SystemRoot || process.env.windir) + '\\temp' + : process.env.TMPDIR || process.env.TMP || process.env.TEMP || '/tmp'), + r.test(e) && (e = e.slice(0, -1)), + e + ); + }; + }, + 59351: (e) => { + 'use strict'; + class t extends Error { + constructor(e) { + super(e || 'Promise was canceled'), (this.name = 'CancelError'); + } + get isCanceled() { + return !0; + } + } + class r { + static fn(e) { + return (...t) => + new r((r, n, i) => { + t.push(i), e(...t).then(r, n); + }); + } + constructor(e) { + (this._cancelHandlers = []), + (this._isPending = !0), + (this._isCanceled = !1), + (this._rejectOnCancel = !0), + (this._promise = new Promise((t, r) => { + this._reject = r; + const n = (e) => { + if (!this._isPending) + throw new Error( + 'The `onCancel` handler was attached after the promise settled.' + ); + this._cancelHandlers.push(e); + }; + return ( + Object.defineProperties(n, { + shouldReject: { + get: () => this._rejectOnCancel, + set: (e) => { + this._rejectOnCancel = e; + }, + }, + }), + e( + (e) => { + (this._isPending = !1), t(e); + }, + (e) => { + (this._isPending = !1), r(e); + }, + n + ) + ); + })); + } + then(e, t) { + return this._promise.then(e, t); + } + catch(e) { + return this._promise.catch(e); + } + finally(e) { + return this._promise.finally(e); + } + cancel(e) { + if (this._isPending && !this._isCanceled) { + if (this._cancelHandlers.length > 0) + try { + for (const e of this._cancelHandlers) e(); + } catch (e) { + this._reject(e); + } + (this._isCanceled = !0), this._rejectOnCancel && this._reject(new t(e)); + } + } + get isCanceled() { + return this._isCanceled; + } + } + Object.setPrototypeOf(r.prototype, Promise.prototype), + (e.exports = r), + (e.exports.CancelError = t); + }, + 61578: (e, t, r) => { + 'use strict'; + const n = r(60550), + i = (e) => { + if (e < 1) throw new TypeError('Expected `concurrency` to be a number from 1 and up'); + const t = []; + let r = 0; + const i = () => { + r--, t.length > 0 && t.shift()(); + }, + o = (e, t, ...o) => { + r++; + const s = n(e, ...o); + t(s), s.then(i, i); + }, + s = (n, ...i) => + new Promise((s) => + ((n, i, ...s) => { + r < e ? o(n, i, ...s) : t.push(o.bind(null, n, i, ...s)); + })(n, s, ...i) + ); + return ( + Object.defineProperties(s, { + activeCount: { get: () => r }, + pendingCount: { get: () => t.length }, + }), + s + ); + }; + (e.exports = i), (e.exports.default = i); + }, + 60550: (e) => { + 'use strict'; + e.exports = (e, ...t) => + new Promise((r) => { + r(e(...t)); + }); + }, + 71471: (e) => { + 'use strict'; + function t(e) { + return '/' === e.charAt(0); + } + function r(e) { + var t = /^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/.exec(e), + r = t[1] || '', + n = Boolean(r && ':' !== r.charAt(1)); + return Boolean(t[2] || n); + } + (e.exports = 'win32' === process.platform ? r : t), + (e.exports.posix = t), + (e.exports.win32 = r); + }, + 37127: (e) => { + 'use strict'; + const t = (e = {}) => { + const t = e.env || process.env; + return 'win32' !== (e.platform || process.platform) + ? 'PATH' + : Object.keys(t) + .reverse() + .find((e) => 'PATH' === e.toUpperCase()) || 'Path'; + }; + (e.exports = t), (e.exports.default = t); + }, + 5763: (e, t, r) => { + 'use strict'; + const { promisify: n } = r(31669), + i = r(35747); + async function o(e, t, r) { + if ('string' != typeof r) throw new TypeError('Expected a string, got ' + typeof r); + try { + return (await n(i[e])(r))[t](); + } catch (e) { + if ('ENOENT' === e.code) return !1; + throw e; + } + } + function s(e, t, r) { + if ('string' != typeof r) throw new TypeError('Expected a string, got ' + typeof r); + try { + return i[e](r)[t](); + } catch (e) { + if ('ENOENT' === e.code) return !1; + throw e; + } + } + (t.isFile = o.bind(null, 'stat', 'isFile')), + (t.isDirectory = o.bind(null, 'stat', 'isDirectory')), + (t.isSymlink = o.bind(null, 'lstat', 'isSymbolicLink')), + (t.isFileSync = s.bind(null, 'statSync', 'isFile')), + (t.isDirectorySync = s.bind(null, 'statSync', 'isDirectory')), + (t.isSymlinkSync = s.bind(null, 'lstatSync', 'isSymbolicLink')); + }, + 54722: (e, t, r) => { + 'use strict'; + e.exports = r(18828); + }, + 71086: (e, t, r) => { + 'use strict'; + const n = r(85622), + i = { + DOT_LITERAL: '\\.', + PLUS_LITERAL: '\\+', + QMARK_LITERAL: '\\?', + SLASH_LITERAL: '\\/', + ONE_CHAR: '(?=.)', + QMARK: '[^/]', + END_ANCHOR: '(?:\\/|$)', + DOTS_SLASH: '\\.{1,2}(?:\\/|$)', + NO_DOT: '(?!\\.)', + NO_DOTS: '(?!(?:^|\\/)\\.{1,2}(?:\\/|$))', + NO_DOT_SLASH: '(?!\\.{0,1}(?:\\/|$))', + NO_DOTS_SLASH: '(?!\\.{1,2}(?:\\/|$))', + QMARK_NO_DOT: '[^.\\/]', + STAR: '[^/]*?', + START_ANCHOR: '(?:^|\\/)', + }, + o = { + ...i, + SLASH_LITERAL: '[\\\\/]', + QMARK: '[^\\\\/]', + STAR: '[^\\\\/]*?', + DOTS_SLASH: '\\.{1,2}(?:[\\\\/]|$)', + NO_DOT: '(?!\\.)', + NO_DOTS: '(?!(?:^|[\\\\/])\\.{1,2}(?:[\\\\/]|$))', + NO_DOT_SLASH: '(?!\\.{0,1}(?:[\\\\/]|$))', + NO_DOTS_SLASH: '(?!\\.{1,2}(?:[\\\\/]|$))', + QMARK_NO_DOT: '[^.\\\\/]', + START_ANCHOR: '(?:^|[\\\\/])', + END_ANCHOR: '(?:[\\\\/]|$)', + }; + e.exports = { + MAX_LENGTH: 65536, + POSIX_REGEX_SOURCE: { + alnum: 'a-zA-Z0-9', + alpha: 'a-zA-Z', + ascii: '\\x00-\\x7F', + blank: ' \\t', + cntrl: '\\x00-\\x1F\\x7F', + digit: '0-9', + graph: '\\x21-\\x7E', + lower: 'a-z', + print: '\\x20-\\x7E ', + punct: '\\-!"#$%&\'()\\*+,./:;<=>?@[\\]^_`{|}~', + space: ' \\t\\r\\n\\v\\f', + upper: 'A-Z', + word: 'A-Za-z0-9_', + xdigit: 'A-Fa-f0-9', + }, + REGEX_BACKSLASH: /\\(?![*+?^${}(|)[\]])/g, + REGEX_NON_SPECIAL_CHARS: /^[^@![\].,$*+?^{}()|\\/]+/, + REGEX_SPECIAL_CHARS: /[-*+?.^${}(|)[\]]/, + REGEX_SPECIAL_CHARS_BACKREF: /(\\?)((\W)(\3*))/g, + REGEX_SPECIAL_CHARS_GLOBAL: /([-*+?.^${}(|)[\]])/g, + REGEX_REMOVE_BACKSLASH: /(?:\[.*?[^\\]\]|\\(?=.))/g, + REPLACEMENTS: { '***': '*', '**/**': '**', '**/**/**': '**' }, + CHAR_0: 48, + CHAR_9: 57, + CHAR_UPPERCASE_A: 65, + CHAR_LOWERCASE_A: 97, + CHAR_UPPERCASE_Z: 90, + CHAR_LOWERCASE_Z: 122, + CHAR_LEFT_PARENTHESES: 40, + CHAR_RIGHT_PARENTHESES: 41, + CHAR_ASTERISK: 42, + CHAR_AMPERSAND: 38, + CHAR_AT: 64, + CHAR_BACKWARD_SLASH: 92, + CHAR_CARRIAGE_RETURN: 13, + CHAR_CIRCUMFLEX_ACCENT: 94, + CHAR_COLON: 58, + CHAR_COMMA: 44, + CHAR_DOT: 46, + CHAR_DOUBLE_QUOTE: 34, + CHAR_EQUAL: 61, + CHAR_EXCLAMATION_MARK: 33, + CHAR_FORM_FEED: 12, + CHAR_FORWARD_SLASH: 47, + CHAR_GRAVE_ACCENT: 96, + CHAR_HASH: 35, + CHAR_HYPHEN_MINUS: 45, + CHAR_LEFT_ANGLE_BRACKET: 60, + CHAR_LEFT_CURLY_BRACE: 123, + CHAR_LEFT_SQUARE_BRACKET: 91, + CHAR_LINE_FEED: 10, + CHAR_NO_BREAK_SPACE: 160, + CHAR_PERCENT: 37, + CHAR_PLUS: 43, + CHAR_QUESTION_MARK: 63, + CHAR_RIGHT_ANGLE_BRACKET: 62, + CHAR_RIGHT_CURLY_BRACE: 125, + CHAR_RIGHT_SQUARE_BRACKET: 93, + CHAR_SEMICOLON: 59, + CHAR_SINGLE_QUOTE: 39, + CHAR_SPACE: 32, + CHAR_TAB: 9, + CHAR_UNDERSCORE: 95, + CHAR_VERTICAL_LINE: 124, + CHAR_ZERO_WIDTH_NOBREAK_SPACE: 65279, + SEP: n.sep, + extglobChars: (e) => ({ + '!': { type: 'negate', open: '(?:(?!(?:', close: `))${e.STAR})` }, + '?': { type: 'qmark', open: '(?:', close: ')?' }, + '+': { type: 'plus', open: '(?:', close: ')+' }, + '*': { type: 'star', open: '(?:', close: ')*' }, + '@': { type: 'at', open: '(?:', close: ')' }, + }), + globChars: (e) => (!0 === e ? o : i), + }; + }, + 47974: (e, t, r) => { + 'use strict'; + const n = r(71086), + i = r(3598), + { + MAX_LENGTH: o, + POSIX_REGEX_SOURCE: s, + REGEX_NON_SPECIAL_CHARS: A, + REGEX_SPECIAL_CHARS_BACKREF: a, + REPLACEMENTS: c, + } = n, + u = (e, t) => { + if ('function' == typeof t.expandRange) return t.expandRange(...e, t); + e.sort(); + const r = `[${e.join('-')}]`; + try { + new RegExp(r); + } catch (t) { + return e.map((e) => i.escapeRegex(e)).join('..'); + } + return r; + }, + l = (e, t) => `Missing ${e}: "${t}" - use "\\\\${t}" to match literal characters`, + h = (e, t) => { + if ('string' != typeof e) throw new TypeError('Expected a string'); + e = c[e] || e; + const r = { ...t }, + h = 'number' == typeof r.maxLength ? Math.min(o, r.maxLength) : o; + let g = e.length; + if (g > h) + throw new SyntaxError(`Input length: ${g}, exceeds maximum allowed length: ${h}`); + const f = { type: 'bos', value: '', output: r.prepend || '' }, + p = [f], + d = r.capture ? '' : '?:', + C = i.isWindows(t), + E = n.globChars(C), + I = n.extglobChars(E), + { + DOT_LITERAL: m, + PLUS_LITERAL: y, + SLASH_LITERAL: w, + ONE_CHAR: B, + DOTS_SLASH: Q, + NO_DOT: v, + NO_DOT_SLASH: D, + NO_DOTS_SLASH: b, + QMARK: S, + QMARK_NO_DOT: k, + STAR: x, + START_ANCHOR: F, + } = E, + M = (e) => `(${d}(?:(?!${F}${e.dot ? Q : m}).)*?)`, + N = r.dot ? '' : v, + R = r.dot ? S : k; + let K = !0 === r.bash ? M(r) : x; + r.capture && (K = `(${K})`), 'boolean' == typeof r.noext && (r.noextglob = r.noext); + const L = { + input: e, + index: -1, + start: 0, + dot: !0 === r.dot, + consumed: '', + output: '', + prefix: '', + backtrack: !1, + negated: !1, + brackets: 0, + braces: 0, + parens: 0, + quotes: 0, + globstar: !1, + tokens: p, + }; + (e = i.removePrefix(e, L)), (g = e.length); + const T = [], + P = [], + U = []; + let _, + O = f; + const j = () => L.index === g - 1, + Y = (L.peek = (t = 1) => e[L.index + t]), + G = (L.advance = () => e[++L.index]), + J = () => e.slice(L.index + 1), + H = (e = '', t = 0) => { + (L.consumed += e), (L.index += t); + }, + q = (e) => { + (L.output += null != e.output ? e.output : e.value), H(e.value); + }, + z = () => { + let e = 1; + for (; '!' === Y() && ('(' !== Y(2) || '?' === Y(3)); ) G(), L.start++, e++; + return e % 2 != 0 && ((L.negated = !0), L.start++, !0); + }, + W = (e) => { + L[e]++, U.push(e); + }, + V = (e) => { + L[e]--, U.pop(); + }, + X = (e) => { + if ('globstar' === O.type) { + const t = L.braces > 0 && ('comma' === e.type || 'brace' === e.type), + r = !0 === e.extglob || (T.length && ('pipe' === e.type || 'paren' === e.type)); + 'slash' === e.type || + 'paren' === e.type || + t || + r || + ((L.output = L.output.slice(0, -O.output.length)), + (O.type = 'star'), + (O.value = '*'), + (O.output = K), + (L.output += O.output)); + } + if ( + (T.length && + 'paren' !== e.type && + !I[e.value] && + (T[T.length - 1].inner += e.value), + (e.value || e.output) && q(e), + O && 'text' === O.type && 'text' === e.type) + ) + return (O.value += e.value), void (O.output = (O.output || '') + e.value); + (e.prev = O), p.push(e), (O = e); + }, + Z = (e, t) => { + const n = { ...I[t], conditions: 1, inner: '' }; + (n.prev = O), (n.parens = L.parens), (n.output = L.output); + const i = (r.capture ? '(' : '') + n.open; + W('parens'), + X({ type: e, value: t, output: L.output ? '' : B }), + X({ type: 'paren', extglob: !0, value: G(), output: i }), + T.push(n); + }, + $ = (e) => { + let t = e.close + (r.capture ? ')' : ''); + if ('negate' === e.type) { + let n = K; + e.inner && e.inner.length > 1 && e.inner.includes('/') && (n = M(r)), + (n !== K || j() || /^\)+$/.test(J())) && (t = e.close = ')$))' + n), + 'bos' === e.prev.type && j() && (L.negatedExtglob = !0); + } + X({ type: 'paren', extglob: !0, value: _, output: t }), V('parens'); + }; + if (!1 !== r.fastpaths && !/(^[*!]|[/()[\]{}"])/.test(e)) { + let n = !1, + o = e.replace(a, (e, t, r, i, o, s) => + '\\' === i + ? ((n = !0), e) + : '?' === i + ? t + ? t + i + (o ? S.repeat(o.length) : '') + : 0 === s + ? R + (o ? S.repeat(o.length) : '') + : S.repeat(r.length) + : '.' === i + ? m.repeat(r.length) + : '*' === i + ? t + ? t + i + (o ? K : '') + : K + : t + ? e + : '\\' + e + ); + return ( + !0 === n && + (o = + !0 === r.unescape + ? o.replace(/\\/g, '') + : o.replace(/\\+/g, (e) => (e.length % 2 == 0 ? '\\\\' : e ? '\\' : ''))), + o === e && !0 === r.contains + ? ((L.output = e), L) + : ((L.output = i.wrapOutput(o, L, t)), L) + ); + } + for (; !j(); ) { + if (((_ = G()), '\0' === _)) continue; + if ('\\' === _) { + const e = Y(); + if ('/' === e && !0 !== r.bash) continue; + if ('.' === e || ';' === e) continue; + if (!e) { + (_ += '\\'), X({ type: 'text', value: _ }); + continue; + } + const t = /^\\+/.exec(J()); + let n = 0; + if ( + (t && + t[0].length > 2 && + ((n = t[0].length), (L.index += n), n % 2 != 0 && (_ += '\\')), + !0 === r.unescape ? (_ = G() || '') : (_ += G() || ''), + 0 === L.brackets) + ) { + X({ type: 'text', value: _ }); + continue; + } + } + if (L.brackets > 0 && (']' !== _ || '[' === O.value || '[^' === O.value)) { + if (!1 !== r.posix && ':' === _) { + const e = O.value.slice(1); + if (e.includes('[') && ((O.posix = !0), e.includes(':'))) { + const e = O.value.lastIndexOf('['), + t = O.value.slice(0, e), + r = O.value.slice(e + 2), + n = s[r]; + if (n) { + (O.value = t + n), + (L.backtrack = !0), + G(), + f.output || 1 !== p.indexOf(O) || (f.output = B); + continue; + } + } + } + (('[' === _ && ':' !== Y()) || ('-' === _ && ']' === Y())) && (_ = '\\' + _), + ']' !== _ || ('[' !== O.value && '[^' !== O.value) || (_ = '\\' + _), + !0 === r.posix && '!' === _ && '[' === O.value && (_ = '^'), + (O.value += _), + q({ value: _ }); + continue; + } + if (1 === L.quotes && '"' !== _) { + (_ = i.escapeRegex(_)), (O.value += _), q({ value: _ }); + continue; + } + if ('"' === _) { + (L.quotes = 1 === L.quotes ? 0 : 1), + !0 === r.keepQuotes && X({ type: 'text', value: _ }); + continue; + } + if ('(' === _) { + W('parens'), X({ type: 'paren', value: _ }); + continue; + } + if (')' === _) { + if (0 === L.parens && !0 === r.strictBrackets) + throw new SyntaxError(l('opening', '(')); + const e = T[T.length - 1]; + if (e && L.parens === e.parens + 1) { + $(T.pop()); + continue; + } + X({ type: 'paren', value: _, output: L.parens ? ')' : '\\)' }), V('parens'); + continue; + } + if ('[' === _) { + if (!0 !== r.nobracket && J().includes(']')) W('brackets'); + else { + if (!0 !== r.nobracket && !0 === r.strictBrackets) + throw new SyntaxError(l('closing', ']')); + _ = '\\' + _; + } + X({ type: 'bracket', value: _ }); + continue; + } + if (']' === _) { + if (!0 === r.nobracket || (O && 'bracket' === O.type && 1 === O.value.length)) { + X({ type: 'text', value: _, output: '\\' + _ }); + continue; + } + if (0 === L.brackets) { + if (!0 === r.strictBrackets) throw new SyntaxError(l('opening', '[')); + X({ type: 'text', value: _, output: '\\' + _ }); + continue; + } + V('brackets'); + const e = O.value.slice(1); + if ( + (!0 === O.posix || '^' !== e[0] || e.includes('/') || (_ = '/' + _), + (O.value += _), + q({ value: _ }), + !1 === r.literalBrackets || i.hasRegexChars(e)) + ) + continue; + const t = i.escapeRegex(O.value); + if (((L.output = L.output.slice(0, -O.value.length)), !0 === r.literalBrackets)) { + (L.output += t), (O.value = t); + continue; + } + (O.value = `(${d}${t}|${O.value})`), (L.output += O.value); + continue; + } + if ('{' === _ && !0 !== r.nobrace) { + W('braces'); + const e = { + type: 'brace', + value: _, + output: '(', + outputIndex: L.output.length, + tokensIndex: L.tokens.length, + }; + P.push(e), X(e); + continue; + } + if ('}' === _) { + const e = P[P.length - 1]; + if (!0 === r.nobrace || !e) { + X({ type: 'text', value: _, output: _ }); + continue; + } + let t = ')'; + if (!0 === e.dots) { + const e = p.slice(), + n = []; + for (let t = e.length - 1; t >= 0 && (p.pop(), 'brace' !== e[t].type); t--) + 'dots' !== e[t].type && n.unshift(e[t].value); + (t = u(n, r)), (L.backtrack = !0); + } + if (!0 !== e.comma && !0 !== e.dots) { + const r = L.output.slice(0, e.outputIndex), + n = L.tokens.slice(e.tokensIndex); + (e.value = e.output = '\\{'), (_ = t = '\\}'), (L.output = r); + for (const e of n) L.output += e.output || e.value; + } + X({ type: 'brace', value: _, output: t }), V('braces'), P.pop(); + continue; + } + if ('|' === _) { + T.length > 0 && T[T.length - 1].conditions++, X({ type: 'text', value: _ }); + continue; + } + if (',' === _) { + let e = _; + const t = P[P.length - 1]; + t && 'braces' === U[U.length - 1] && ((t.comma = !0), (e = '|')), + X({ type: 'comma', value: _, output: e }); + continue; + } + if ('/' === _) { + if ('dot' === O.type && L.index === L.start + 1) { + (L.start = L.index + 1), (L.consumed = ''), (L.output = ''), p.pop(), (O = f); + continue; + } + X({ type: 'slash', value: _, output: w }); + continue; + } + if ('.' === _) { + if (L.braces > 0 && 'dot' === O.type) { + '.' === O.value && (O.output = m); + const e = P[P.length - 1]; + (O.type = 'dots'), (O.output += _), (O.value += _), (e.dots = !0); + continue; + } + if (L.braces + L.parens === 0 && 'bos' !== O.type && 'slash' !== O.type) { + X({ type: 'text', value: _, output: m }); + continue; + } + X({ type: 'dot', value: _, output: m }); + continue; + } + if ('?' === _) { + if (!(O && '(' === O.value) && !0 !== r.noextglob && '(' === Y() && '?' !== Y(2)) { + Z('qmark', _); + continue; + } + if (O && 'paren' === O.type) { + const e = Y(); + let t = _; + if ('<' === e && !i.supportsLookbehinds()) + throw new Error('Node.js v10 or higher is required for regex lookbehinds'); + (('(' === O.value && !/[!=<:]/.test(e)) || + ('<' === e && !/<([!=]|\w+>)/.test(J()))) && + (t = '\\' + _), + X({ type: 'text', value: _, output: t }); + continue; + } + if (!0 !== r.dot && ('slash' === O.type || 'bos' === O.type)) { + X({ type: 'qmark', value: _, output: k }); + continue; + } + X({ type: 'qmark', value: _, output: S }); + continue; + } + if ('!' === _) { + if (!0 !== r.noextglob && '(' === Y() && ('?' !== Y(2) || !/[!=<:]/.test(Y(3)))) { + Z('negate', _); + continue; + } + if (!0 !== r.nonegate && 0 === L.index) { + z(); + continue; + } + } + if ('+' === _) { + if (!0 !== r.noextglob && '(' === Y() && '?' !== Y(2)) { + Z('plus', _); + continue; + } + if ((O && '(' === O.value) || !1 === r.regex) { + X({ type: 'plus', value: _, output: y }); + continue; + } + if ( + (O && ('bracket' === O.type || 'paren' === O.type || 'brace' === O.type)) || + L.parens > 0 + ) { + X({ type: 'plus', value: _ }); + continue; + } + X({ type: 'plus', value: y }); + continue; + } + if ('@' === _) { + if (!0 !== r.noextglob && '(' === Y() && '?' !== Y(2)) { + X({ type: 'at', extglob: !0, value: _, output: '' }); + continue; + } + X({ type: 'text', value: _ }); + continue; + } + if ('*' !== _) { + ('$' !== _ && '^' !== _) || (_ = '\\' + _); + const e = A.exec(J()); + e && ((_ += e[0]), (L.index += e[0].length)), X({ type: 'text', value: _ }); + continue; + } + if (O && ('globstar' === O.type || !0 === O.star)) { + (O.type = 'star'), + (O.star = !0), + (O.value += _), + (O.output = K), + (L.backtrack = !0), + (L.globstar = !0), + H(_); + continue; + } + let t = J(); + if (!0 !== r.noextglob && /^\([^?]/.test(t)) { + Z('star', _); + continue; + } + if ('star' === O.type) { + if (!0 === r.noglobstar) { + H(_); + continue; + } + const n = O.prev, + i = n.prev, + o = 'slash' === n.type || 'bos' === n.type, + s = i && ('star' === i.type || 'globstar' === i.type); + if (!0 === r.bash && (!o || (t[0] && '/' !== t[0]))) { + X({ type: 'star', value: _, output: '' }); + continue; + } + const A = L.braces > 0 && ('comma' === n.type || 'brace' === n.type), + a = T.length && ('pipe' === n.type || 'paren' === n.type); + if (!o && 'paren' !== n.type && !A && !a) { + X({ type: 'star', value: _, output: '' }); + continue; + } + for (; '/**' === t.slice(0, 3); ) { + const r = e[L.index + 4]; + if (r && '/' !== r) break; + (t = t.slice(3)), H('/**', 3); + } + if ('bos' === n.type && j()) { + (O.type = 'globstar'), + (O.value += _), + (O.output = M(r)), + (L.output = O.output), + (L.globstar = !0), + H(_); + continue; + } + if ('slash' === n.type && 'bos' !== n.prev.type && !s && j()) { + (L.output = L.output.slice(0, -(n.output + O.output).length)), + (n.output = '(?:' + n.output), + (O.type = 'globstar'), + (O.output = M(r) + (r.strictSlashes ? ')' : '|$)')), + (O.value += _), + (L.globstar = !0), + (L.output += n.output + O.output), + H(_); + continue; + } + if ('slash' === n.type && 'bos' !== n.prev.type && '/' === t[0]) { + const e = void 0 !== t[1] ? '|$' : ''; + (L.output = L.output.slice(0, -(n.output + O.output).length)), + (n.output = '(?:' + n.output), + (O.type = 'globstar'), + (O.output = `${M(r)}${w}|${w}${e})`), + (O.value += _), + (L.output += n.output + O.output), + (L.globstar = !0), + H(_ + G()), + X({ type: 'slash', value: '/', output: '' }); + continue; + } + if ('bos' === n.type && '/' === t[0]) { + (O.type = 'globstar'), + (O.value += _), + (O.output = `(?:^|${w}|${M(r)}${w})`), + (L.output = O.output), + (L.globstar = !0), + H(_ + G()), + X({ type: 'slash', value: '/', output: '' }); + continue; + } + (L.output = L.output.slice(0, -O.output.length)), + (O.type = 'globstar'), + (O.output = M(r)), + (O.value += _), + (L.output += O.output), + (L.globstar = !0), + H(_); + continue; + } + const n = { type: 'star', value: _, output: K }; + !0 !== r.bash + ? !O || ('bracket' !== O.type && 'paren' !== O.type) || !0 !== r.regex + ? ((L.index !== L.start && 'slash' !== O.type && 'dot' !== O.type) || + ('dot' === O.type + ? ((L.output += D), (O.output += D)) + : !0 === r.dot + ? ((L.output += b), (O.output += b)) + : ((L.output += N), (O.output += N)), + '*' !== Y() && ((L.output += B), (O.output += B))), + X(n)) + : ((n.output = _), X(n)) + : ((n.output = '.*?'), + ('bos' !== O.type && 'slash' !== O.type) || (n.output = N + n.output), + X(n)); + } + for (; L.brackets > 0; ) { + if (!0 === r.strictBrackets) throw new SyntaxError(l('closing', ']')); + (L.output = i.escapeLast(L.output, '[')), V('brackets'); + } + for (; L.parens > 0; ) { + if (!0 === r.strictBrackets) throw new SyntaxError(l('closing', ')')); + (L.output = i.escapeLast(L.output, '(')), V('parens'); + } + for (; L.braces > 0; ) { + if (!0 === r.strictBrackets) throw new SyntaxError(l('closing', '}')); + (L.output = i.escapeLast(L.output, '{')), V('braces'); + } + if ( + (!0 === r.strictSlashes || + ('star' !== O.type && 'bracket' !== O.type) || + X({ type: 'maybe_slash', value: '', output: w + '?' }), + !0 === L.backtrack) + ) { + L.output = ''; + for (const e of L.tokens) + (L.output += null != e.output ? e.output : e.value), + e.suffix && (L.output += e.suffix); + } + return L; + }; + (h.fastpaths = (e, t) => { + const r = { ...t }, + s = 'number' == typeof r.maxLength ? Math.min(o, r.maxLength) : o, + A = e.length; + if (A > s) + throw new SyntaxError(`Input length: ${A}, exceeds maximum allowed length: ${s}`); + e = c[e] || e; + const a = i.isWindows(t), + { + DOT_LITERAL: u, + SLASH_LITERAL: l, + ONE_CHAR: h, + DOTS_SLASH: g, + NO_DOT: f, + NO_DOTS: p, + NO_DOTS_SLASH: d, + STAR: C, + START_ANCHOR: E, + } = n.globChars(a), + I = r.dot ? p : f, + m = r.dot ? d : f, + y = r.capture ? '' : '?:'; + let w = !0 === r.bash ? '.*?' : C; + r.capture && (w = `(${w})`); + const B = (e) => (!0 === e.noglobstar ? w : `(${y}(?:(?!${E}${e.dot ? g : u}).)*?)`), + Q = (e) => { + switch (e) { + case '*': + return `${I}${h}${w}`; + case '.*': + return `${u}${h}${w}`; + case '*.*': + return `${I}${w}${u}${h}${w}`; + case '*/*': + return `${I}${w}${l}${h}${m}${w}`; + case '**': + return I + B(r); + case '**/*': + return `(?:${I}${B(r)}${l})?${m}${h}${w}`; + case '**/*.*': + return `(?:${I}${B(r)}${l})?${m}${w}${u}${h}${w}`; + case '**/.*': + return `(?:${I}${B(r)}${l})?${u}${h}${w}`; + default: { + const t = /^(.*?)\.(\w+)$/.exec(e); + if (!t) return; + const r = Q(t[1]); + if (!r) return; + return r + u + t[2]; + } + } + }, + v = i.removePrefix(e, { negated: !1, prefix: '' }); + let D = Q(v); + return D && !0 !== r.strictSlashes && (D += l + '?'), D; + }), + (e.exports = h); + }, + 18828: (e, t, r) => { + 'use strict'; + const n = r(85622), + i = r(95321), + o = r(47974), + s = r(3598), + A = r(71086), + a = (e, t, r = !1) => { + if (Array.isArray(e)) { + const n = e.map((e) => a(e, t, r)); + return (e) => { + for (const t of n) { + const r = t(e); + if (r) return r; + } + return !1; + }; + } + const n = (i = e) && 'object' == typeof i && !Array.isArray(i) && e.tokens && e.input; + var i; + if ('' === e || ('string' != typeof e && !n)) + throw new TypeError('Expected pattern to be a non-empty string'); + const o = t || {}, + A = s.isWindows(t), + c = n ? a.compileRe(e, t) : a.makeRe(e, t, !1, !0), + u = c.state; + delete c.state; + let l = () => !1; + if (o.ignore) { + const e = { ...t, ignore: null, onMatch: null, onResult: null }; + l = a(o.ignore, e, r); + } + const h = (r, n = !1) => { + const { isMatch: i, match: s, output: h } = a.test(r, c, t, { glob: e, posix: A }), + g = { + glob: e, + state: u, + regex: c, + posix: A, + input: r, + output: h, + match: s, + isMatch: i, + }; + return ( + 'function' == typeof o.onResult && o.onResult(g), + !1 === i + ? ((g.isMatch = !1), !!n && g) + : l(r) + ? ('function' == typeof o.onIgnore && o.onIgnore(g), (g.isMatch = !1), !!n && g) + : ('function' == typeof o.onMatch && o.onMatch(g), !n || g) + ); + }; + return r && (h.state = u), h; + }; + (a.test = (e, t, r, { glob: n, posix: i } = {}) => { + if ('string' != typeof e) throw new TypeError('Expected input to be a string'); + if ('' === e) return { isMatch: !1, output: '' }; + const o = r || {}, + A = o.format || (i ? s.toPosixSlashes : null); + let c = e === n, + u = c && A ? A(e) : e; + return ( + !1 === c && ((u = A ? A(e) : e), (c = u === n)), + (!1 !== c && !0 !== o.capture) || + (c = !0 === o.matchBase || !0 === o.basename ? a.matchBase(e, t, r, i) : t.exec(u)), + { isMatch: Boolean(c), match: c, output: u } + ); + }), + (a.matchBase = (e, t, r, i = s.isWindows(r)) => + (t instanceof RegExp ? t : a.makeRe(t, r)).test(n.basename(e))), + (a.isMatch = (e, t, r) => a(t, r)(e)), + (a.parse = (e, t) => + Array.isArray(e) ? e.map((e) => a.parse(e, t)) : o(e, { ...t, fastpaths: !1 })), + (a.scan = (e, t) => i(e, t)), + (a.compileRe = (e, t, r = !1, n = !1) => { + if (!0 === r) return e.output; + const i = t || {}, + o = i.contains ? '' : '^', + s = i.contains ? '' : '$'; + let A = `${o}(?:${e.output})${s}`; + e && !0 === e.negated && (A = `^(?!${A}).*$`); + const c = a.toRegex(A, t); + return !0 === n && (c.state = e), c; + }), + (a.makeRe = (e, t, r = !1, n = !1) => { + if (!e || 'string' != typeof e) throw new TypeError('Expected a non-empty string'); + const i = t || {}; + let s, + A = { negated: !1, fastpaths: !0 }, + c = ''; + return ( + e.startsWith('./') && ((e = e.slice(2)), (c = A.prefix = './')), + !1 === i.fastpaths || ('.' !== e[0] && '*' !== e[0]) || (s = o.fastpaths(e, t)), + void 0 === s ? ((A = o(e, t)), (A.prefix = c + (A.prefix || ''))) : (A.output = s), + a.compileRe(A, t, r, n) + ); + }), + (a.toRegex = (e, t) => { + try { + const r = t || {}; + return new RegExp(e, r.flags || (r.nocase ? 'i' : '')); + } catch (e) { + if (t && !0 === t.debug) throw e; + return /$^/; + } + }), + (a.constants = A), + (e.exports = a); + }, + 95321: (e, t, r) => { + 'use strict'; + const n = r(3598), + { + CHAR_ASTERISK: i, + CHAR_AT: o, + CHAR_BACKWARD_SLASH: s, + CHAR_COMMA: A, + CHAR_DOT: a, + CHAR_EXCLAMATION_MARK: c, + CHAR_FORWARD_SLASH: u, + CHAR_LEFT_CURLY_BRACE: l, + CHAR_LEFT_PARENTHESES: h, + CHAR_LEFT_SQUARE_BRACKET: g, + CHAR_PLUS: f, + CHAR_QUESTION_MARK: p, + CHAR_RIGHT_CURLY_BRACE: d, + CHAR_RIGHT_PARENTHESES: C, + CHAR_RIGHT_SQUARE_BRACKET: E, + } = r(71086), + I = (e) => e === u || e === s, + m = (e) => { + !0 !== e.isPrefix && (e.depth = e.isGlobstar ? 1 / 0 : 1); + }; + e.exports = (e, t) => { + const r = t || {}, + y = e.length - 1, + w = !0 === r.parts || !0 === r.scanToEnd, + B = [], + Q = [], + v = []; + let D, + b, + S = e, + k = -1, + x = 0, + F = 0, + M = !1, + N = !1, + R = !1, + K = !1, + L = !1, + T = !1, + P = !1, + U = !1, + _ = !1, + O = 0, + j = { value: '', depth: 0, isGlob: !1 }; + const Y = () => k >= y, + G = () => ((D = b), S.charCodeAt(++k)); + for (; k < y; ) { + let e; + if (((b = G()), b !== s)) { + if (!0 === T || b === l) { + for (O++; !0 !== Y() && (b = G()); ) + if (b !== s) + if (b !== l) { + if (!0 !== T && b === a && (b = G()) === a) { + if (((M = j.isBrace = !0), (R = j.isGlob = !0), (_ = !0), !0 === w)) + continue; + break; + } + if (!0 !== T && b === A) { + if (((M = j.isBrace = !0), (R = j.isGlob = !0), (_ = !0), !0 === w)) + continue; + break; + } + if (b === d && (O--, 0 === O)) { + (T = !1), (M = j.isBrace = !0), (_ = !0); + break; + } + } else O++; + else (P = j.backslashes = !0), G(); + if (!0 === w) continue; + break; + } + if (b !== u) { + if (!0 !== r.noext) { + if ( + !0 === (b === f || b === o || b === i || b === p || b === c) && + S.charCodeAt(k + 1) === h + ) { + if (((R = j.isGlob = !0), (K = j.isExtglob = !0), (_ = !0), !0 === w)) { + for (; !0 !== Y() && (b = G()); ) + if (b !== s) { + if (b === C) { + (R = j.isGlob = !0), (_ = !0); + break; + } + } else (P = j.backslashes = !0), (b = G()); + continue; + } + break; + } + } + if (b === i) { + if ((D === i && (L = j.isGlobstar = !0), (R = j.isGlob = !0), (_ = !0), !0 === w)) + continue; + break; + } + if (b === p) { + if (((R = j.isGlob = !0), (_ = !0), !0 === w)) continue; + break; + } + if (b === g) + for (; !0 !== Y() && (e = G()); ) + if (e !== s) { + if (e === E) { + if (((N = j.isBracket = !0), (R = j.isGlob = !0), (_ = !0), !0 === w)) + continue; + break; + } + } else (P = j.backslashes = !0), G(); + if (!0 === r.nonegate || b !== c || k !== x) { + if (!0 !== r.noparen && b === h) { + if (((R = j.isGlob = !0), !0 === w)) { + for (; !0 !== Y() && (b = G()); ) + if (b !== h) { + if (b === C) { + _ = !0; + break; + } + } else (P = j.backslashes = !0), (b = G()); + continue; + } + break; + } + if (!0 === R) { + if (((_ = !0), !0 === w)) continue; + break; + } + } else (U = j.negated = !0), x++; + } else { + if ((B.push(k), Q.push(j), (j = { value: '', depth: 0, isGlob: !1 }), !0 === _)) + continue; + if (D === a && k === x + 1) { + x += 2; + continue; + } + F = k + 1; + } + } else (P = j.backslashes = !0), (b = G()), b === l && (T = !0); + } + !0 === r.noext && ((K = !1), (R = !1)); + let J = S, + H = '', + q = ''; + x > 0 && ((H = S.slice(0, x)), (S = S.slice(x)), (F -= x)), + J && !0 === R && F > 0 + ? ((J = S.slice(0, F)), (q = S.slice(F))) + : !0 === R + ? ((J = ''), (q = S)) + : (J = S), + J && + '' !== J && + '/' !== J && + J !== S && + I(J.charCodeAt(J.length - 1)) && + (J = J.slice(0, -1)), + !0 === r.unescape && + (q && (q = n.removeBackslashes(q)), J && !0 === P && (J = n.removeBackslashes(J))); + const z = { + prefix: H, + input: e, + start: x, + base: J, + glob: q, + isBrace: M, + isBracket: N, + isGlob: R, + isExtglob: K, + isGlobstar: L, + negated: U, + }; + if ( + (!0 === r.tokens && ((z.maxDepth = 0), I(b) || Q.push(j), (z.tokens = Q)), + !0 === r.parts || !0 === r.tokens) + ) { + let t; + for (let n = 0; n < B.length; n++) { + const i = t ? t + 1 : x, + o = B[n], + s = e.slice(i, o); + r.tokens && + (0 === n && 0 !== x ? ((Q[n].isPrefix = !0), (Q[n].value = H)) : (Q[n].value = s), + m(Q[n]), + (z.maxDepth += Q[n].depth)), + (0 === n && '' === s) || v.push(s), + (t = o); + } + if (t && t + 1 < e.length) { + const n = e.slice(t + 1); + v.push(n), + r.tokens && + ((Q[Q.length - 1].value = n), + m(Q[Q.length - 1]), + (z.maxDepth += Q[Q.length - 1].depth)); + } + (z.slashes = B), (z.parts = v); + } + return z; + }; + }, + 3598: (e, t, r) => { + 'use strict'; + const n = r(85622), + i = 'win32' === process.platform, + { + REGEX_BACKSLASH: o, + REGEX_REMOVE_BACKSLASH: s, + REGEX_SPECIAL_CHARS: A, + REGEX_SPECIAL_CHARS_GLOBAL: a, + } = r(71086); + (t.isObject = (e) => null !== e && 'object' == typeof e && !Array.isArray(e)), + (t.hasRegexChars = (e) => A.test(e)), + (t.isRegexChar = (e) => 1 === e.length && t.hasRegexChars(e)), + (t.escapeRegex = (e) => e.replace(a, '\\$1')), + (t.toPosixSlashes = (e) => e.replace(o, '/')), + (t.removeBackslashes = (e) => e.replace(s, (e) => ('\\' === e ? '' : e))), + (t.supportsLookbehinds = () => { + const e = process.version.slice(1).split('.').map(Number); + return (3 === e.length && e[0] >= 9) || (8 === e[0] && e[1] >= 10); + }), + (t.isWindows = (e) => + e && 'boolean' == typeof e.windows ? e.windows : !0 === i || '\\' === n.sep), + (t.escapeLast = (e, r, n) => { + const i = e.lastIndexOf(r, n); + return -1 === i + ? e + : '\\' === e[i - 1] + ? t.escapeLast(e, r, i - 1) + : `${e.slice(0, i)}\\${e.slice(i)}`; + }), + (t.removePrefix = (e, t = {}) => { + let r = e; + return r.startsWith('./') && ((r = r.slice(2)), (t.prefix = './')), r; + }), + (t.wrapOutput = (e, t = {}, r = {}) => { + let n = `${r.contains ? '' : '^'}(?:${e})${r.contains ? '' : '$'}`; + return !0 === t.negated && (n = `(?:^(?!${n}).*$)`), n; + }); + }, + 79588: (e) => { + 'use strict'; + function t(e) { + (this._maxSize = e), this.clear(); + } + (t.prototype.clear = function () { + (this._size = 0), (this._values = {}); + }), + (t.prototype.get = function (e) { + return this._values[e]; + }), + (t.prototype.set = function (e, t) { + return ( + this._size >= this._maxSize && this.clear(), + this._values.hasOwnProperty(e) || this._size++, + (this._values[e] = t) + ); + }); + var r = /[^.^\]^[]+|(?=\[\]|\.\.)/g, + n = /^\d+$/, + i = /^\d/, + o = /[~`!#$%\^&*+=\-\[\]\\';,/{}|\\":<>\?]/g, + s = /^\s*(['"]?)(.*?)(\1)\s*$/, + A = !1, + a = new t(512), + c = new t(512), + u = new t(512); + try { + new Function(''); + } catch (e) { + A = !0; + } + function l(e) { + return ( + a.get(e) || + a.set( + e, + h(e).map(function (e) { + return e.replace(s, '$2'); + }) + ) + ); + } + function h(e) { + return e.match(r); + } + function g(e, t, r) { + return ( + 'string' == typeof t && ((r = t), (t = !1)), + (r = r || 'data'), + (e = e || '') && '[' !== e.charAt(0) && (e = '.' + e), + t + ? (function (e, t) { + var r, + n = t, + i = h(e); + return ( + f(i, function (e, t, i, o, s) { + (r = o === s.length - 1), + (n += (e = t || i ? '[' + e + ']' : '.' + e) + (r ? ')' : ' || {})')); + }), + new Array(i.length + 1).join('(') + n + ); + })(e, r) + : r + e + ); + } + function f(e, t, r) { + var n, + i, + o, + s, + A = e.length; + for (i = 0; i < A; i++) + (n = e[i]) && + (d(n) && (n = '"' + n + '"'), + (o = !(s = p(n)) && /^\d+$/.test(n)), + t.call(r, n, s, o, i, e)); + } + function p(e) { + return 'string' == typeof e && e && -1 !== ["'", '"'].indexOf(e.charAt(0)); + } + function d(e) { + return ( + !p(e) && + ((function (e) { + return e.match(i) && !e.match(n); + })(e) || + (function (e) { + return o.test(e); + })(e)) + ); + } + e.exports = { + Cache: t, + expr: g, + split: h, + normalizePath: l, + setter: A + ? function (e) { + var t = l(e); + return function (e, r) { + return (function (e, t, r) { + var n = 0, + i = e.length; + for (; n < i - 1; ) t = t[e[n++]]; + t[e[n]] = r; + })(t, e, r); + }; + } + : function (e) { + return c.get(e) || c.set(e, new Function('data, value', g(e, 'data') + ' = value')); + }, + getter: A + ? function (e, t) { + var r = l(e); + return function (e) { + return (function (e, t, r) { + var n = 0, + i = e.length; + for (; n < i; ) { + if (null == r && t) return; + r = r[e[n++]]; + } + return r; + })(r, t, e); + }; + } + : function (e, t) { + var r = e + '_' + t; + return u.get(r) || u.set(r, new Function('data', 'return ' + g(e, t, 'data'))); + }, + join: function (e) { + return e.reduce(function (e, t) { + return e + (p(t) || n.test(t) ? '[' + t + ']' : (e ? '.' : '') + t); + }, ''); + }, + forEach: function (e, t, r) { + f(h(e), t, r); + }, + }; + }, + 50372: (e, t, r) => { + var n = r(91162), + i = r(97681), + o = r(35747), + s = function () {}, + A = /^v?\.0/.test(process.version), + a = function (e) { + return 'function' == typeof e; + }, + c = function (e, t, r, c) { + c = n(c); + var u = !1; + e.on('close', function () { + u = !0; + }), + i(e, { readable: t, writable: r }, function (e) { + if (e) return c(e); + (u = !0), c(); + }); + var l = !1; + return function (t) { + if (!u && !l) + return ( + (l = !0), + (function (e) { + return ( + !!A && + !!o && + (e instanceof (o.ReadStream || s) || e instanceof (o.WriteStream || s)) && + a(e.close) + ); + })(e) + ? e.close(s) + : (function (e) { + return e.setHeader && a(e.abort); + })(e) + ? e.abort() + : a(e.destroy) + ? e.destroy() + : void c(t || new Error('stream was destroyed')) + ); + }; + }, + u = function (e) { + e(); + }, + l = function (e, t) { + return e.pipe(t); + }; + e.exports = function () { + var e, + t = Array.prototype.slice.call(arguments), + r = (a(t[t.length - 1] || s) && t.pop()) || s; + if ((Array.isArray(t[0]) && (t = t[0]), t.length < 2)) + throw new Error('pump requires two streams per minimum'); + var n = t.map(function (i, o) { + var s = o < t.length - 1; + return c(i, s, o > 0, function (t) { + e || (e = t), t && n.forEach(u), s || (n.forEach(u), r(e)); + }); + }); + return t.reduce(l); + }; + }, + 82905: (e) => { + 'use strict'; + class t { + constructor(e = {}) { + if (!(e.maxSize && e.maxSize > 0)) + throw new TypeError('`maxSize` must be a number greater than 0'); + (this.maxSize = e.maxSize), + (this.onEviction = e.onEviction), + (this.cache = new Map()), + (this.oldCache = new Map()), + (this._size = 0); + } + _set(e, t) { + if ((this.cache.set(e, t), this._size++, this._size >= this.maxSize)) { + if (((this._size = 0), 'function' == typeof this.onEviction)) + for (const [e, t] of this.oldCache.entries()) this.onEviction(e, t); + (this.oldCache = this.cache), (this.cache = new Map()); + } + } + get(e) { + if (this.cache.has(e)) return this.cache.get(e); + if (this.oldCache.has(e)) { + const t = this.oldCache.get(e); + return this.oldCache.delete(e), this._set(e, t), t; + } + } + set(e, t) { + return this.cache.has(e) ? this.cache.set(e, t) : this._set(e, t), this; + } + has(e) { + return this.cache.has(e) || this.oldCache.has(e); + } + peek(e) { + return this.cache.has(e) + ? this.cache.get(e) + : this.oldCache.has(e) + ? this.oldCache.get(e) + : void 0; + } + delete(e) { + const t = this.cache.delete(e); + return t && this._size--, this.oldCache.delete(e) || t; + } + clear() { + this.cache.clear(), this.oldCache.clear(), (this._size = 0); + } + *keys() { + for (const [e] of this) yield e; + } + *values() { + for (const [, e] of this) yield e; + } + *[Symbol.iterator]() { + for (const e of this.cache) yield e; + for (const e of this.oldCache) { + const [t] = e; + this.cache.has(t) || (yield e); + } + } + get size() { + let e = 0; + for (const t of this.oldCache.keys()) this.cache.has(t) || e++; + return Math.min(this._size + e, this.maxSize); + } + } + e.exports = t; + }, + 20663: (e) => { + 'use strict'; + const t = {}; + function r(e, r, n) { + n || (n = Error); + class i extends n { + constructor(e, t, n) { + super( + (function (e, t, n) { + return 'string' == typeof r ? r : r(e, t, n); + })(e, t, n) + ); + } + } + (i.prototype.name = n.name), (i.prototype.code = e), (t[e] = i); + } + function n(e, t) { + if (Array.isArray(e)) { + const r = e.length; + return ( + (e = e.map((e) => String(e))), + r > 2 + ? `one of ${t} ${e.slice(0, r - 1).join(', ')}, or ` + e[r - 1] + : 2 === r + ? `one of ${t} ${e[0]} or ${e[1]}` + : `of ${t} ${e[0]}` + ); + } + return `of ${t} ${String(e)}`; + } + r( + 'ERR_INVALID_OPT_VALUE', + function (e, t) { + return 'The value "' + t + '" is invalid for option "' + e + '"'; + }, + TypeError + ), + r( + 'ERR_INVALID_ARG_TYPE', + function (e, t, r) { + let i; + var o, s; + let A; + if ( + ('string' == typeof t && + ((o = 'not '), t.substr(!s || s < 0 ? 0 : +s, o.length) === o) + ? ((i = 'must not be'), (t = t.replace(/^not /, ''))) + : (i = 'must be'), + (function (e, t, r) { + return ( + (void 0 === r || r > e.length) && (r = e.length), + e.substring(r - t.length, r) === t + ); + })(e, ' argument')) + ) + A = `The ${e} ${i} ${n(t, 'type')}`; + else { + A = `The "${e}" ${ + (function (e, t, r) { + return ( + 'number' != typeof r && (r = 0), + !(r + t.length > e.length) && -1 !== e.indexOf(t, r) + ); + })(e, '.') + ? 'property' + : 'argument' + } ${i} ${n(t, 'type')}`; + } + return (A += '. Received type ' + typeof r), A; + }, + TypeError + ), + r('ERR_STREAM_PUSH_AFTER_EOF', 'stream.push() after EOF'), + r('ERR_METHOD_NOT_IMPLEMENTED', function (e) { + return 'The ' + e + ' method is not implemented'; + }), + r('ERR_STREAM_PREMATURE_CLOSE', 'Premature close'), + r('ERR_STREAM_DESTROYED', function (e) { + return 'Cannot call ' + e + ' after a stream was destroyed'; + }), + r('ERR_MULTIPLE_CALLBACK', 'Callback called multiple times'), + r('ERR_STREAM_CANNOT_PIPE', 'Cannot pipe, not readable'), + r('ERR_STREAM_WRITE_AFTER_END', 'write after end'), + r('ERR_STREAM_NULL_VALUES', 'May not write null values to stream', TypeError), + r( + 'ERR_UNKNOWN_ENCODING', + function (e) { + return 'Unknown encoding: ' + e; + }, + TypeError + ), + r('ERR_STREAM_UNSHIFT_AFTER_END_EVENT', 'stream.unshift() after end event'), + (e.exports.q = t); + }, + 39138: (e) => { + 'use strict'; + var t = new Set(); + e.exports.emitExperimentalWarning = process.emitWarning + ? function (e) { + if (!t.has(e)) { + var r = e + ' is an experimental feature. This feature could change at any time'; + t.add(e), process.emitWarning(r, 'ExperimentalWarning'); + } + } + : function () {}; + }, + 72434: (e, t, r) => { + 'use strict'; + var n = + Object.keys || + function (e) { + var t = []; + for (var r in e) t.push(r); + return t; + }; + e.exports = c; + var i = r(58020), + o = r(6729); + r(85870)(c, i); + for (var s = n(o.prototype), A = 0; A < s.length; A++) { + var a = s[A]; + c.prototype[a] || (c.prototype[a] = o.prototype[a]); + } + function c(e) { + if (!(this instanceof c)) return new c(e); + i.call(this, e), + o.call(this, e), + (this.allowHalfOpen = !0), + e && + (!1 === e.readable && (this.readable = !1), + !1 === e.writable && (this.writable = !1), + !1 === e.allowHalfOpen && ((this.allowHalfOpen = !1), this.once('end', u))); + } + function u() { + this._writableState.ended || process.nextTick(l, this); + } + function l(e) { + e.end(); + } + Object.defineProperty(c.prototype, 'writableHighWaterMark', { + enumerable: !1, + get: function () { + return this._writableState.highWaterMark; + }, + }), + Object.defineProperty(c.prototype, 'writableBuffer', { + enumerable: !1, + get: function () { + return this._writableState && this._writableState.getBuffer(); + }, + }), + Object.defineProperty(c.prototype, 'writableLength', { + enumerable: !1, + get: function () { + return this._writableState.length; + }, + }), + Object.defineProperty(c.prototype, 'destroyed', { + enumerable: !1, + get: function () { + return ( + void 0 !== this._readableState && + void 0 !== this._writableState && + this._readableState.destroyed && + this._writableState.destroyed + ); + }, + set: function (e) { + void 0 !== this._readableState && + void 0 !== this._writableState && + ((this._readableState.destroyed = e), (this._writableState.destroyed = e)); + }, + }); + }, + 52444: (e, t, r) => { + 'use strict'; + e.exports = i; + var n = r(54801); + function i(e) { + if (!(this instanceof i)) return new i(e); + n.call(this, e); + } + r(85870)(i, n), + (i.prototype._transform = function (e, t, r) { + r(null, e); + }); + }, + 58020: (e, t, r) => { + 'use strict'; + var n; + (e.exports = B), (B.ReadableState = w); + r(28614).EventEmitter; + var i = function (e, t) { + return e.listeners(t).length; + }, + o = r(49298), + s = r(64293).Buffer, + A = global.Uint8Array || function () {}; + var a, + c = r(31669); + a = c && c.debuglog ? c.debuglog('stream') : function () {}; + var u, + l, + h = r(43117), + g = r(32340), + f = r(77433).getHighWaterMark, + p = r(20663).q, + d = p.ERR_INVALID_ARG_TYPE, + C = p.ERR_STREAM_PUSH_AFTER_EOF, + E = p.ERR_METHOD_NOT_IMPLEMENTED, + I = p.ERR_STREAM_UNSHIFT_AFTER_END_EVENT, + m = r(39138).emitExperimentalWarning; + r(85870)(B, o); + var y = ['error', 'close', 'destroy', 'pause', 'resume']; + function w(e, t, i) { + (n = n || r(72434)), + (e = e || {}), + 'boolean' != typeof i && (i = t instanceof n), + (this.objectMode = !!e.objectMode), + i && (this.objectMode = this.objectMode || !!e.readableObjectMode), + (this.highWaterMark = f(this, e, 'readableHighWaterMark', i)), + (this.buffer = new h()), + (this.length = 0), + (this.pipes = null), + (this.pipesCount = 0), + (this.flowing = null), + (this.ended = !1), + (this.endEmitted = !1), + (this.reading = !1), + (this.sync = !0), + (this.needReadable = !1), + (this.emittedReadable = !1), + (this.readableListening = !1), + (this.resumeScheduled = !1), + (this.paused = !0), + (this.emitClose = !1 !== e.emitClose), + (this.destroyed = !1), + (this.defaultEncoding = e.defaultEncoding || 'utf8'), + (this.awaitDrain = 0), + (this.readingMore = !1), + (this.decoder = null), + (this.encoding = null), + e.encoding && + (u || (u = r(69538).s), + (this.decoder = new u(e.encoding)), + (this.encoding = e.encoding)); + } + function B(e) { + if (((n = n || r(72434)), !(this instanceof B))) return new B(e); + var t = this instanceof n; + (this._readableState = new w(e, this, t)), + (this.readable = !0), + e && + ('function' == typeof e.read && (this._read = e.read), + 'function' == typeof e.destroy && (this._destroy = e.destroy)), + o.call(this); + } + function Q(e, t, r, n, i) { + a('readableAddChunk', t); + var o, + c = e._readableState; + if (null === t) + (c.reading = !1), + (function (e, t) { + if (t.ended) return; + if (t.decoder) { + var r = t.decoder.end(); + r && r.length && (t.buffer.push(r), (t.length += t.objectMode ? 1 : r.length)); + } + (t.ended = !0), + t.sync + ? b(e) + : ((t.needReadable = !1), + t.emittedReadable || ((t.emittedReadable = !0), S(e))); + })(e, c); + else if ( + (i || + (o = (function (e, t) { + var r; + (n = t), + s.isBuffer(n) || + n instanceof A || + 'string' == typeof t || + void 0 === t || + e.objectMode || + (r = new d('chunk', ['string', 'Buffer', 'Uint8Array'], t)); + var n; + return r; + })(c, t)), + o) + ) + e.emit('error', o); + else if (c.objectMode || (t && t.length > 0)) + if ( + ('string' == typeof t || + c.objectMode || + Object.getPrototypeOf(t) === s.prototype || + (t = (function (e) { + return s.from(e); + })(t)), + n) + ) + c.endEmitted ? e.emit('error', new I()) : v(e, c, t, !0); + else if (c.ended) e.emit('error', new C()); + else { + if (c.destroyed) return !1; + (c.reading = !1), + c.decoder && !r + ? ((t = c.decoder.write(t)), + c.objectMode || 0 !== t.length ? v(e, c, t, !1) : k(e, c)) + : v(e, c, t, !1); + } + else n || ((c.reading = !1), k(e, c)); + return !c.ended && (c.length < c.highWaterMark || 0 === c.length); + } + function v(e, t, r, n) { + t.flowing && 0 === t.length && !t.sync + ? ((t.awaitDrain = 0), e.emit('data', r)) + : ((t.length += t.objectMode ? 1 : r.length), + n ? t.buffer.unshift(r) : t.buffer.push(r), + t.needReadable && b(e)), + k(e, t); + } + Object.defineProperty(B.prototype, 'destroyed', { + enumerable: !1, + get: function () { + return void 0 !== this._readableState && this._readableState.destroyed; + }, + set: function (e) { + this._readableState && (this._readableState.destroyed = e); + }, + }), + (B.prototype.destroy = g.destroy), + (B.prototype._undestroy = g.undestroy), + (B.prototype._destroy = function (e, t) { + t(e); + }), + (B.prototype.push = function (e, t) { + var r, + n = this._readableState; + return ( + n.objectMode + ? (r = !0) + : 'string' == typeof e && + ((t = t || n.defaultEncoding) !== n.encoding && ((e = s.from(e, t)), (t = '')), + (r = !0)), + Q(this, e, t, !1, r) + ); + }), + (B.prototype.unshift = function (e) { + return Q(this, e, null, !0, !1); + }), + (B.prototype.isPaused = function () { + return !1 === this._readableState.flowing; + }), + (B.prototype.setEncoding = function (e) { + return ( + u || (u = r(69538).s), + (this._readableState.decoder = new u(e)), + (this._readableState.encoding = this._readableState.decoder.encoding), + this + ); + }); + function D(e, t) { + return e <= 0 || (0 === t.length && t.ended) + ? 0 + : t.objectMode + ? 1 + : e != e + ? t.flowing && t.length + ? t.buffer.head.data.length + : t.length + : (e > t.highWaterMark && + (t.highWaterMark = (function (e) { + return ( + e >= 8388608 + ? (e = 8388608) + : (e--, + (e |= e >>> 1), + (e |= e >>> 2), + (e |= e >>> 4), + (e |= e >>> 8), + (e |= e >>> 16), + e++), + e + ); + })(e)), + e <= t.length ? e : t.ended ? t.length : ((t.needReadable = !0), 0)); + } + function b(e) { + var t = e._readableState; + (t.needReadable = !1), + t.emittedReadable || + (a('emitReadable', t.flowing), (t.emittedReadable = !0), process.nextTick(S, e)); + } + function S(e) { + var t = e._readableState; + a('emitReadable_', t.destroyed, t.length, t.ended), + t.destroyed || (!t.length && !t.ended) || e.emit('readable'), + (t.needReadable = !t.flowing && !t.ended && t.length <= t.highWaterMark), + R(e); + } + function k(e, t) { + t.readingMore || ((t.readingMore = !0), process.nextTick(x, e, t)); + } + function x(e, t) { + for ( + var r = t.length; + !t.reading && + !t.ended && + t.length < t.highWaterMark && + (a('maybeReadMore read 0'), e.read(0), r !== t.length); + + ) + r = t.length; + t.readingMore = !1; + } + function F(e) { + var t = e._readableState; + (t.readableListening = e.listenerCount('readable') > 0), + t.resumeScheduled && !t.paused + ? (t.flowing = !0) + : e.listenerCount('data') > 0 && e.resume(); + } + function M(e) { + a('readable nexttick read 0'), e.read(0); + } + function N(e, t) { + a('resume', t.reading), + t.reading || e.read(0), + (t.resumeScheduled = !1), + e.emit('resume'), + R(e), + t.flowing && !t.reading && e.read(0); + } + function R(e) { + var t = e._readableState; + for (a('flow', t.flowing); t.flowing && null !== e.read(); ); + } + function K(e, t) { + return 0 === t.length + ? null + : (t.objectMode + ? (r = t.buffer.shift()) + : !e || e >= t.length + ? ((r = t.decoder + ? t.buffer.join('') + : 1 === t.buffer.length + ? t.buffer.first() + : t.buffer.concat(t.length)), + t.buffer.clear()) + : (r = t.buffer.consume(e, t.decoder)), + r); + var r; + } + function L(e) { + var t = e._readableState; + a('endReadable', t.endEmitted), + t.endEmitted || ((t.ended = !0), process.nextTick(T, t, e)); + } + function T(e, t) { + a('endReadableNT', e.endEmitted, e.length), + e.endEmitted || + 0 !== e.length || + ((e.endEmitted = !0), (t.readable = !1), t.emit('end')); + } + function P(e, t) { + for (var r = 0, n = e.length; r < n; r++) if (e[r] === t) return r; + return -1; + } + (B.prototype.read = function (e) { + a('read', e), (e = parseInt(e, 10)); + var t = this._readableState, + r = e; + if ( + (0 !== e && (t.emittedReadable = !1), + 0 === e && + t.needReadable && + ((0 !== t.highWaterMark ? t.length >= t.highWaterMark : t.length > 0) || t.ended)) + ) + return ( + a('read: emitReadable', t.length, t.ended), + 0 === t.length && t.ended ? L(this) : b(this), + null + ); + if (0 === (e = D(e, t)) && t.ended) return 0 === t.length && L(this), null; + var n, + i = t.needReadable; + return ( + a('need readable', i), + (0 === t.length || t.length - e < t.highWaterMark) && + a('length less than watermark', (i = !0)), + t.ended || t.reading + ? a('reading or ended', (i = !1)) + : i && + (a('do read'), + (t.reading = !0), + (t.sync = !0), + 0 === t.length && (t.needReadable = !0), + this._read(t.highWaterMark), + (t.sync = !1), + t.reading || (e = D(r, t))), + null === (n = e > 0 ? K(e, t) : null) + ? ((t.needReadable = !0), (e = 0)) + : ((t.length -= e), (t.awaitDrain = 0)), + 0 === t.length && (t.ended || (t.needReadable = !0), r !== e && t.ended && L(this)), + null !== n && this.emit('data', n), + n + ); + }), + (B.prototype._read = function (e) { + this.emit('error', new E('_read()')); + }), + (B.prototype.pipe = function (e, t) { + var r = this, + n = this._readableState; + switch (n.pipesCount) { + case 0: + n.pipes = e; + break; + case 1: + n.pipes = [n.pipes, e]; + break; + default: + n.pipes.push(e); + } + (n.pipesCount += 1), a('pipe count=%d opts=%j', n.pipesCount, t); + var o = (!t || !1 !== t.end) && e !== process.stdout && e !== process.stderr ? A : p; + function s(t, i) { + a('onunpipe'), + t === r && + i && + !1 === i.hasUnpiped && + ((i.hasUnpiped = !0), + a('cleanup'), + e.removeListener('close', g), + e.removeListener('finish', f), + e.removeListener('drain', c), + e.removeListener('error', h), + e.removeListener('unpipe', s), + r.removeListener('end', A), + r.removeListener('end', p), + r.removeListener('data', l), + (u = !0), + !n.awaitDrain || (e._writableState && !e._writableState.needDrain) || c()); + } + function A() { + a('onend'), e.end(); + } + n.endEmitted ? process.nextTick(o) : r.once('end', o), e.on('unpipe', s); + var c = (function (e) { + return function () { + var t = e._readableState; + a('pipeOnDrain', t.awaitDrain), + t.awaitDrain && t.awaitDrain--, + 0 === t.awaitDrain && i(e, 'data') && ((t.flowing = !0), R(e)); + }; + })(r); + e.on('drain', c); + var u = !1; + function l(t) { + a('ondata'); + var i = e.write(t); + a('dest.write', i), + !1 === i && + (((1 === n.pipesCount && n.pipes === e) || + (n.pipesCount > 1 && -1 !== P(n.pipes, e))) && + !u && + (a('false write response, pause', n.awaitDrain), n.awaitDrain++), + r.pause()); + } + function h(t) { + a('onerror', t), + p(), + e.removeListener('error', h), + 0 === i(e, 'error') && e.emit('error', t); + } + function g() { + e.removeListener('finish', f), p(); + } + function f() { + a('onfinish'), e.removeListener('close', g), p(); + } + function p() { + a('unpipe'), r.unpipe(e); + } + return ( + r.on('data', l), + (function (e, t, r) { + if ('function' == typeof e.prependListener) return e.prependListener(t, r); + e._events && e._events[t] + ? Array.isArray(e._events[t]) + ? e._events[t].unshift(r) + : (e._events[t] = [r, e._events[t]]) + : e.on(t, r); + })(e, 'error', h), + e.once('close', g), + e.once('finish', f), + e.emit('pipe', r), + n.flowing || (a('pipe resume'), r.resume()), + e + ); + }), + (B.prototype.unpipe = function (e) { + var t = this._readableState, + r = { hasUnpiped: !1 }; + if (0 === t.pipesCount) return this; + if (1 === t.pipesCount) + return ( + (e && e !== t.pipes) || + (e || (e = t.pipes), + (t.pipes = null), + (t.pipesCount = 0), + (t.flowing = !1), + e && e.emit('unpipe', this, r)), + this + ); + if (!e) { + var n = t.pipes, + i = t.pipesCount; + (t.pipes = null), (t.pipesCount = 0), (t.flowing = !1); + for (var o = 0; o < i; o++) n[o].emit('unpipe', this, { hasUnpiped: !1 }); + return this; + } + var s = P(t.pipes, e); + return ( + -1 === s || + (t.pipes.splice(s, 1), + (t.pipesCount -= 1), + 1 === t.pipesCount && (t.pipes = t.pipes[0]), + e.emit('unpipe', this, r)), + this + ); + }), + (B.prototype.on = function (e, t) { + var r = o.prototype.on.call(this, e, t), + n = this._readableState; + return ( + 'data' === e + ? ((n.readableListening = this.listenerCount('readable') > 0), + !1 !== n.flowing && this.resume()) + : 'readable' === e && + (n.endEmitted || + n.readableListening || + ((n.readableListening = n.needReadable = !0), + (n.flowing = !1), + (n.emittedReadable = !1), + a('on readable', n.length, n.reading), + n.length ? b(this) : n.reading || process.nextTick(M, this))), + r + ); + }), + (B.prototype.addListener = B.prototype.on), + (B.prototype.removeListener = function (e, t) { + var r = o.prototype.removeListener.call(this, e, t); + return 'readable' === e && process.nextTick(F, this), r; + }), + (B.prototype.removeAllListeners = function (e) { + var t = o.prototype.removeAllListeners.apply(this, arguments); + return ('readable' !== e && void 0 !== e) || process.nextTick(F, this), t; + }), + (B.prototype.resume = function () { + var e = this._readableState; + return ( + e.flowing || + (a('resume'), + (e.flowing = !e.readableListening), + (function (e, t) { + t.resumeScheduled || ((t.resumeScheduled = !0), process.nextTick(N, e, t)); + })(this, e)), + (e.paused = !1), + this + ); + }), + (B.prototype.pause = function () { + return ( + a('call pause flowing=%j', this._readableState.flowing), + !1 !== this._readableState.flowing && + (a('pause'), (this._readableState.flowing = !1), this.emit('pause')), + (this._readableState.paused = !0), + this + ); + }), + (B.prototype.wrap = function (e) { + var t = this, + r = this._readableState, + n = !1; + for (var i in (e.on('end', function () { + if ((a('wrapped end'), r.decoder && !r.ended)) { + var e = r.decoder.end(); + e && e.length && t.push(e); + } + t.push(null); + }), + e.on('data', function (i) { + (a('wrapped data'), + r.decoder && (i = r.decoder.write(i)), + r.objectMode && null == i) || + ((r.objectMode || (i && i.length)) && (t.push(i) || ((n = !0), e.pause()))); + }), + e)) + void 0 === this[i] && + 'function' == typeof e[i] && + (this[i] = (function (t) { + return function () { + return e[t].apply(e, arguments); + }; + })(i)); + for (var o = 0; o < y.length; o++) e.on(y[o], this.emit.bind(this, y[o])); + return ( + (this._read = function (t) { + a('wrapped _read', t), n && ((n = !1), e.resume()); + }), + this + ); + }), + 'function' == typeof Symbol && + (B.prototype[Symbol.asyncIterator] = function () { + return m('Readable[Symbol.asyncIterator]'), void 0 === l && (l = r(4245)), l(this); + }), + Object.defineProperty(B.prototype, 'readableHighWaterMark', { + enumerable: !1, + get: function () { + return this._readableState.highWaterMark; + }, + }), + Object.defineProperty(B.prototype, 'readableBuffer', { + enumerable: !1, + get: function () { + return this._readableState && this._readableState.buffer; + }, + }), + Object.defineProperty(B.prototype, 'readableFlowing', { + enumerable: !1, + get: function () { + return this._readableState.flowing; + }, + set: function (e) { + this._readableState && (this._readableState.flowing = e); + }, + }), + (B._fromList = K), + Object.defineProperty(B.prototype, 'readableLength', { + enumerable: !1, + get: function () { + return this._readableState.length; + }, + }); + }, + 54801: (e, t, r) => { + 'use strict'; + e.exports = u; + var n = r(20663).q, + i = n.ERR_METHOD_NOT_IMPLEMENTED, + o = n.ERR_MULTIPLE_CALLBACK, + s = n.ERR_TRANSFORM_ALREADY_TRANSFORMING, + A = n.ERR_TRANSFORM_WITH_LENGTH_0, + a = r(72434); + function c(e, t) { + var r = this._transformState; + r.transforming = !1; + var n = r.writecb; + if (null === n) return this.emit('error', new o()); + (r.writechunk = null), (r.writecb = null), null != t && this.push(t), n(e); + var i = this._readableState; + (i.reading = !1), + (i.needReadable || i.length < i.highWaterMark) && this._read(i.highWaterMark); + } + function u(e) { + if (!(this instanceof u)) return new u(e); + a.call(this, e), + (this._transformState = { + afterTransform: c.bind(this), + needTransform: !1, + transforming: !1, + writecb: null, + writechunk: null, + writeencoding: null, + }), + (this._readableState.needReadable = !0), + (this._readableState.sync = !1), + e && + ('function' == typeof e.transform && (this._transform = e.transform), + 'function' == typeof e.flush && (this._flush = e.flush)), + this.on('prefinish', l); + } + function l() { + var e = this; + 'function' != typeof this._flush || this._readableState.destroyed + ? h(this, null, null) + : this._flush(function (t, r) { + h(e, t, r); + }); + } + function h(e, t, r) { + if (t) return e.emit('error', t); + if ((null != r && e.push(r), e._writableState.length)) throw new A(); + if (e._transformState.transforming) throw new s(); + return e.push(null); + } + r(85870)(u, a), + (u.prototype.push = function (e, t) { + return (this._transformState.needTransform = !1), a.prototype.push.call(this, e, t); + }), + (u.prototype._transform = function (e, t, r) { + r(new i('_transform()')); + }), + (u.prototype._write = function (e, t, r) { + var n = this._transformState; + if (((n.writecb = r), (n.writechunk = e), (n.writeencoding = t), !n.transforming)) { + var i = this._readableState; + (n.needTransform || i.needReadable || i.length < i.highWaterMark) && + this._read(i.highWaterMark); + } + }), + (u.prototype._read = function (e) { + var t = this._transformState; + null === t.writechunk || t.transforming + ? (t.needTransform = !0) + : ((t.transforming = !0), + this._transform(t.writechunk, t.writeencoding, t.afterTransform)); + }), + (u.prototype._destroy = function (e, t) { + a.prototype._destroy.call(this, e, function (e) { + t(e); + }); + }); + }, + 6729: (e, t, r) => { + 'use strict'; + function n(e) { + var t = this; + (this.next = null), + (this.entry = null), + (this.finish = function () { + !(function (e, t, r) { + var n = e.entry; + e.entry = null; + for (; n; ) { + var i = n.callback; + t.pendingcb--, i(r), (n = n.next); + } + t.corkedRequestsFree.next = e; + })(t, e); + }); + } + var i; + (e.exports = B), (B.WritableState = w); + var o = { deprecate: r(73212) }, + s = r(49298), + A = r(64293).Buffer, + a = global.Uint8Array || function () {}; + var c, + u = r(32340), + l = r(77433).getHighWaterMark, + h = r(20663).q, + g = h.ERR_INVALID_ARG_TYPE, + f = h.ERR_METHOD_NOT_IMPLEMENTED, + p = h.ERR_MULTIPLE_CALLBACK, + d = h.ERR_STREAM_CANNOT_PIPE, + C = h.ERR_STREAM_DESTROYED, + E = h.ERR_STREAM_NULL_VALUES, + I = h.ERR_STREAM_WRITE_AFTER_END, + m = h.ERR_UNKNOWN_ENCODING; + function y() {} + function w(e, t, o) { + (i = i || r(72434)), + (e = e || {}), + 'boolean' != typeof o && (o = t instanceof i), + (this.objectMode = !!e.objectMode), + o && (this.objectMode = this.objectMode || !!e.writableObjectMode), + (this.highWaterMark = l(this, e, 'writableHighWaterMark', o)), + (this.finalCalled = !1), + (this.needDrain = !1), + (this.ending = !1), + (this.ended = !1), + (this.finished = !1), + (this.destroyed = !1); + var s = !1 === e.decodeStrings; + (this.decodeStrings = !s), + (this.defaultEncoding = e.defaultEncoding || 'utf8'), + (this.length = 0), + (this.writing = !1), + (this.corked = 0), + (this.sync = !0), + (this.bufferProcessing = !1), + (this.onwrite = function (e) { + !(function (e, t) { + var r = e._writableState, + n = r.sync, + i = r.writecb; + if ('function' != typeof i) throw new p(); + if ( + ((function (e) { + (e.writing = !1), + (e.writecb = null), + (e.length -= e.writelen), + (e.writelen = 0); + })(r), + t) + ) + !(function (e, t, r, n, i) { + --t.pendingcb, + r + ? (process.nextTick(i, n), + process.nextTick(k, e, t), + (e._writableState.errorEmitted = !0), + e.emit('error', n)) + : (i(n), (e._writableState.errorEmitted = !0), e.emit('error', n), k(e, t)); + })(e, r, n, t, i); + else { + var o = b(r) || e.destroyed; + o || r.corked || r.bufferProcessing || !r.bufferedRequest || D(e, r), + n ? process.nextTick(v, e, r, o, i) : v(e, r, o, i); + } + })(t, e); + }), + (this.writecb = null), + (this.writelen = 0), + (this.bufferedRequest = null), + (this.lastBufferedRequest = null), + (this.pendingcb = 0), + (this.prefinished = !1), + (this.errorEmitted = !1), + (this.emitClose = !1 !== e.emitClose), + (this.bufferedRequestCount = 0), + (this.corkedRequestsFree = new n(this)); + } + function B(e) { + var t = this instanceof (i = i || r(72434)); + if (!t && !c.call(B, this)) return new B(e); + (this._writableState = new w(e, this, t)), + (this.writable = !0), + e && + ('function' == typeof e.write && (this._write = e.write), + 'function' == typeof e.writev && (this._writev = e.writev), + 'function' == typeof e.destroy && (this._destroy = e.destroy), + 'function' == typeof e.final && (this._final = e.final)), + s.call(this); + } + function Q(e, t, r, n, i, o, s) { + (t.writelen = n), + (t.writecb = s), + (t.writing = !0), + (t.sync = !0), + t.destroyed + ? t.onwrite(new C('write')) + : r + ? e._writev(i, t.onwrite) + : e._write(i, o, t.onwrite), + (t.sync = !1); + } + function v(e, t, r, n) { + r || + (function (e, t) { + 0 === t.length && t.needDrain && ((t.needDrain = !1), e.emit('drain')); + })(e, t), + t.pendingcb--, + n(), + k(e, t); + } + function D(e, t) { + t.bufferProcessing = !0; + var r = t.bufferedRequest; + if (e._writev && r && r.next) { + var i = t.bufferedRequestCount, + o = new Array(i), + s = t.corkedRequestsFree; + s.entry = r; + for (var A = 0, a = !0; r; ) (o[A] = r), r.isBuf || (a = !1), (r = r.next), (A += 1); + (o.allBuffers = a), + Q(e, t, !0, t.length, o, '', s.finish), + t.pendingcb++, + (t.lastBufferedRequest = null), + s.next + ? ((t.corkedRequestsFree = s.next), (s.next = null)) + : (t.corkedRequestsFree = new n(t)), + (t.bufferedRequestCount = 0); + } else { + for (; r; ) { + var c = r.chunk, + u = r.encoding, + l = r.callback; + if ( + (Q(e, t, !1, t.objectMode ? 1 : c.length, c, u, l), + (r = r.next), + t.bufferedRequestCount--, + t.writing) + ) + break; + } + null === r && (t.lastBufferedRequest = null); + } + (t.bufferedRequest = r), (t.bufferProcessing = !1); + } + function b(e) { + return ( + e.ending && 0 === e.length && null === e.bufferedRequest && !e.finished && !e.writing + ); + } + function S(e, t) { + e._final(function (r) { + t.pendingcb--, + r && e.emit('error', r), + (t.prefinished = !0), + e.emit('prefinish'), + k(e, t); + }); + } + function k(e, t) { + var r = b(t); + return ( + r && + (!(function (e, t) { + t.prefinished || + t.finalCalled || + ('function' != typeof e._final || t.destroyed + ? ((t.prefinished = !0), e.emit('prefinish')) + : (t.pendingcb++, (t.finalCalled = !0), process.nextTick(S, e, t))); + })(e, t), + 0 === t.pendingcb && ((t.finished = !0), e.emit('finish'))), + r + ); + } + r(85870)(B, s), + (w.prototype.getBuffer = function () { + for (var e = this.bufferedRequest, t = []; e; ) t.push(e), (e = e.next); + return t; + }), + (function () { + try { + Object.defineProperty(w.prototype, 'buffer', { + get: o.deprecate( + function () { + return this.getBuffer(); + }, + '_writableState.buffer is deprecated. Use _writableState.getBuffer instead.', + 'DEP0003' + ), + }); + } catch (e) {} + })(), + 'function' == typeof Symbol && + Symbol.hasInstance && + 'function' == typeof Function.prototype[Symbol.hasInstance] + ? ((c = Function.prototype[Symbol.hasInstance]), + Object.defineProperty(B, Symbol.hasInstance, { + value: function (e) { + return !!c.call(this, e) || (this === B && e && e._writableState instanceof w); + }, + })) + : (c = function (e) { + return e instanceof this; + }), + (B.prototype.pipe = function () { + this.emit('error', new d()); + }), + (B.prototype.write = function (e, t, r) { + var n, + i = this._writableState, + o = !1, + s = !i.objectMode && ((n = e), A.isBuffer(n) || n instanceof a); + return ( + s && + !A.isBuffer(e) && + (e = (function (e) { + return A.from(e); + })(e)), + 'function' == typeof t && ((r = t), (t = null)), + s ? (t = 'buffer') : t || (t = i.defaultEncoding), + 'function' != typeof r && (r = y), + i.ending + ? (function (e, t) { + var r = new I(); + e.emit('error', r), process.nextTick(t, r); + })(this, r) + : (s || + (function (e, t, r, n) { + var i; + return ( + null === r + ? (i = new E()) + : 'string' == typeof r || + t.objectMode || + (i = new g('chunk', ['string', 'Buffer'], r)), + !i || (e.emit('error', i), process.nextTick(n, i), !1) + ); + })(this, i, e, r)) && + (i.pendingcb++, + (o = (function (e, t, r, n, i, o) { + if (!r) { + var s = (function (e, t, r) { + e.objectMode || + !1 === e.decodeStrings || + 'string' != typeof t || + (t = A.from(t, r)); + return t; + })(t, n, i); + n !== s && ((r = !0), (i = 'buffer'), (n = s)); + } + var a = t.objectMode ? 1 : n.length; + t.length += a; + var c = t.length < t.highWaterMark; + c || (t.needDrain = !0); + if (t.writing || t.corked) { + var u = t.lastBufferedRequest; + (t.lastBufferedRequest = { + chunk: n, + encoding: i, + isBuf: r, + callback: o, + next: null, + }), + u + ? (u.next = t.lastBufferedRequest) + : (t.bufferedRequest = t.lastBufferedRequest), + (t.bufferedRequestCount += 1); + } else Q(e, t, !1, a, n, i, o); + return c; + })(this, i, s, e, t, r))), + o + ); + }), + (B.prototype.cork = function () { + this._writableState.corked++; + }), + (B.prototype.uncork = function () { + var e = this._writableState; + e.corked && + (e.corked--, + e.writing || e.corked || e.bufferProcessing || !e.bufferedRequest || D(this, e)); + }), + (B.prototype.setDefaultEncoding = function (e) { + if ( + ('string' == typeof e && (e = e.toLowerCase()), + !( + [ + 'hex', + 'utf8', + 'utf-8', + 'ascii', + 'binary', + 'base64', + 'ucs2', + 'ucs-2', + 'utf16le', + 'utf-16le', + 'raw', + ].indexOf((e + '').toLowerCase()) > -1 + )) + ) + throw new m(e); + return (this._writableState.defaultEncoding = e), this; + }), + Object.defineProperty(B.prototype, 'writableBuffer', { + enumerable: !1, + get: function () { + return this._writableState && this._writableState.getBuffer(); + }, + }), + Object.defineProperty(B.prototype, 'writableHighWaterMark', { + enumerable: !1, + get: function () { + return this._writableState.highWaterMark; + }, + }), + (B.prototype._write = function (e, t, r) { + r(new f('_write()')); + }), + (B.prototype._writev = null), + (B.prototype.end = function (e, t, r) { + var n = this._writableState; + return ( + 'function' == typeof e + ? ((r = e), (e = null), (t = null)) + : 'function' == typeof t && ((r = t), (t = null)), + null != e && this.write(e, t), + n.corked && ((n.corked = 1), this.uncork()), + n.ending || + (function (e, t, r) { + (t.ending = !0), + k(e, t), + r && (t.finished ? process.nextTick(r) : e.once('finish', r)); + (t.ended = !0), (e.writable = !1); + })(this, n, r), + this + ); + }), + Object.defineProperty(B.prototype, 'writableLength', { + enumerable: !1, + get: function () { + return this._writableState.length; + }, + }), + Object.defineProperty(B.prototype, 'destroyed', { + enumerable: !1, + get: function () { + return void 0 !== this._writableState && this._writableState.destroyed; + }, + set: function (e) { + this._writableState && (this._writableState.destroyed = e); + }, + }), + (B.prototype.destroy = u.destroy), + (B.prototype._undestroy = u.undestroy), + (B.prototype._destroy = function (e, t) { + t(e); + }); + }, + 4245: (e, t, r) => { + 'use strict'; + var n; + function i(e, t, r) { + return ( + t in e + ? Object.defineProperty(e, t, { + value: r, + enumerable: !0, + configurable: !0, + writable: !0, + }) + : (e[t] = r), + e + ); + } + var o = r(91327), + s = Symbol('lastResolve'), + A = Symbol('lastReject'), + a = Symbol('error'), + c = Symbol('ended'), + u = Symbol('lastPromise'), + l = Symbol('handlePromise'), + h = Symbol('stream'); + function g(e, t) { + return { value: e, done: t }; + } + function f(e) { + var t = e[s]; + if (null !== t) { + var r = e[h].read(); + null !== r && ((e[u] = null), (e[s] = null), (e[A] = null), t(g(r, !1))); + } + } + function p(e) { + process.nextTick(f, e); + } + var d = Object.getPrototypeOf(function () {}), + C = Object.setPrototypeOf( + (i( + (n = { + get stream() { + return this[h]; + }, + next: function () { + var e = this, + t = this[a]; + if (null !== t) return Promise.reject(t); + if (this[c]) return Promise.resolve(g(null, !0)); + if (this[h].destroyed) + return new Promise(function (t, r) { + process.nextTick(function () { + e[a] ? r(e[a]) : t(g(null, !0)); + }); + }); + var r, + n = this[u]; + if (n) + r = new Promise( + (function (e, t) { + return function (r, n) { + e.then(function () { + t[l](r, n); + }, n); + }; + })(n, this) + ); + else { + var i = this[h].read(); + if (null !== i) return Promise.resolve(g(i, !1)); + r = new Promise(this[l]); + } + return (this[u] = r), r; + }, + }), + Symbol.asyncIterator, + function () { + return this; + } + ), + i(n, 'return', function () { + var e = this; + return new Promise(function (t, r) { + e[h].destroy(null, function (e) { + e ? r(e) : t(g(null, !0)); + }); + }); + }), + n), + d + ); + e.exports = function (e) { + var t, + r = Object.create( + C, + (i((t = {}), h, { value: e, writable: !0 }), + i(t, s, { value: null, writable: !0 }), + i(t, A, { value: null, writable: !0 }), + i(t, a, { value: null, writable: !0 }), + i(t, c, { value: e._readableState.endEmitted, writable: !0 }), + i(t, u, { value: null, writable: !0 }), + i(t, l, { + value: function (e, t) { + var n = r[h].read(); + n + ? ((r[u] = null), (r[s] = null), (r[A] = null), e(g(n, !1))) + : ((r[s] = e), (r[A] = t)); + }, + writable: !0, + }), + t) + ); + return ( + o(e, function (e) { + if (e && 'ERR_STREAM_PREMATURE_CLOSE' !== e.code) { + var t = r[A]; + return ( + null !== t && ((r[u] = null), (r[s] = null), (r[A] = null), t(e)), void (r[a] = e) + ); + } + var n = r[s]; + null !== n && ((r[u] = null), (r[s] = null), (r[A] = null), n(g(null, !0))), + (r[c] = !0); + }), + e.on('readable', p.bind(null, r)), + r + ); + }; + }, + 43117: (e, t, r) => { + 'use strict'; + function n(e, t, r) { + return ( + t in e + ? Object.defineProperty(e, t, { + value: r, + enumerable: !0, + configurable: !0, + writable: !0, + }) + : (e[t] = r), + e + ); + } + var i = r(64293).Buffer, + o = r(31669).inspect, + s = (o && o.custom) || 'inspect'; + e.exports = (function () { + function e() { + (this.head = null), (this.tail = null), (this.length = 0); + } + var t = e.prototype; + return ( + (t.push = function (e) { + var t = { data: e, next: null }; + this.length > 0 ? (this.tail.next = t) : (this.head = t), + (this.tail = t), + ++this.length; + }), + (t.unshift = function (e) { + var t = { data: e, next: this.head }; + 0 === this.length && (this.tail = t), (this.head = t), ++this.length; + }), + (t.shift = function () { + if (0 !== this.length) { + var e = this.head.data; + return ( + 1 === this.length ? (this.head = this.tail = null) : (this.head = this.head.next), + --this.length, + e + ); + } + }), + (t.clear = function () { + (this.head = this.tail = null), (this.length = 0); + }), + (t.join = function (e) { + if (0 === this.length) return ''; + for (var t = this.head, r = '' + t.data; (t = t.next); ) r += e + t.data; + return r; + }), + (t.concat = function (e) { + if (0 === this.length) return i.alloc(0); + for (var t, r, n, o = i.allocUnsafe(e >>> 0), s = this.head, A = 0; s; ) + (t = s.data), + (r = o), + (n = A), + i.prototype.copy.call(t, r, n), + (A += s.data.length), + (s = s.next); + return o; + }), + (t.consume = function (e, t) { + var r; + return ( + e < this.head.data.length + ? ((r = this.head.data.slice(0, e)), (this.head.data = this.head.data.slice(e))) + : (r = + e === this.head.data.length + ? this.shift() + : t + ? this._getString(e) + : this._getBuffer(e)), + r + ); + }), + (t.first = function () { + return this.head.data; + }), + (t._getString = function (e) { + var t = this.head, + r = 1, + n = t.data; + for (e -= n.length; (t = t.next); ) { + var i = t.data, + o = e > i.length ? i.length : e; + if ((o === i.length ? (n += i) : (n += i.slice(0, e)), 0 === (e -= o))) { + o === i.length + ? (++r, t.next ? (this.head = t.next) : (this.head = this.tail = null)) + : ((this.head = t), (t.data = i.slice(o))); + break; + } + ++r; + } + return (this.length -= r), n; + }), + (t._getBuffer = function (e) { + var t = i.allocUnsafe(e), + r = this.head, + n = 1; + for (r.data.copy(t), e -= r.data.length; (r = r.next); ) { + var o = r.data, + s = e > o.length ? o.length : e; + if ((o.copy(t, t.length - e, 0, s), 0 === (e -= s))) { + s === o.length + ? (++n, r.next ? (this.head = r.next) : (this.head = this.tail = null)) + : ((this.head = r), (r.data = o.slice(s))); + break; + } + ++n; + } + return (this.length -= n), t; + }), + (t[s] = function (e, t) { + return o( + this, + (function (e) { + for (var t = 1; t < arguments.length; t++) { + var r = null != arguments[t] ? arguments[t] : {}, + i = Object.keys(r); + 'function' == typeof Object.getOwnPropertySymbols && + (i = i.concat( + Object.getOwnPropertySymbols(r).filter(function (e) { + return Object.getOwnPropertyDescriptor(r, e).enumerable; + }) + )), + i.forEach(function (t) { + n(e, t, r[t]); + }); + } + return e; + })({}, t, { depth: 0, customInspect: !1 }) + ); + }), + e + ); + })(); + }, + 32340: (e) => { + 'use strict'; + function t(e, t) { + n(e, t), r(e); + } + function r(e) { + (e._writableState && !e._writableState.emitClose) || + (e._readableState && !e._readableState.emitClose) || + e.emit('close'); + } + function n(e, t) { + e.emit('error', t); + } + e.exports = { + destroy: function (e, i) { + var o = this, + s = this._readableState && this._readableState.destroyed, + A = this._writableState && this._writableState.destroyed; + return s || A + ? (i + ? i(e) + : !e || + (this._writableState && this._writableState.errorEmitted) || + process.nextTick(n, this, e), + this) + : (this._readableState && (this._readableState.destroyed = !0), + this._writableState && (this._writableState.destroyed = !0), + this._destroy(e || null, function (e) { + !i && e + ? (process.nextTick(t, o, e), + o._writableState && (o._writableState.errorEmitted = !0)) + : i + ? (process.nextTick(r, o), i(e)) + : process.nextTick(r, o); + }), + this); + }, + undestroy: function () { + this._readableState && + ((this._readableState.destroyed = !1), + (this._readableState.reading = !1), + (this._readableState.ended = !1), + (this._readableState.endEmitted = !1)), + this._writableState && + ((this._writableState.destroyed = !1), + (this._writableState.ended = !1), + (this._writableState.ending = !1), + (this._writableState.finalCalled = !1), + (this._writableState.prefinished = !1), + (this._writableState.finished = !1), + (this._writableState.errorEmitted = !1)); + }, + }; + }, + 91327: (e, t, r) => { + 'use strict'; + var n = r(20663).q.ERR_STREAM_PREMATURE_CLOSE; + function i() {} + e.exports = function e(t, r, o) { + if ('function' == typeof r) return e(t, null, r); + r || (r = {}), + (o = (function (e) { + var t = !1; + return function (r) { + t || ((t = !0), e.call(this, r)); + }; + })(o || i)); + var s = t._writableState, + A = t._readableState, + a = r.readable || (!1 !== r.readable && t.readable), + c = r.writable || (!1 !== r.writable && t.writable), + u = function () { + t.writable || l(); + }, + l = function () { + (c = !1), a || o.call(t); + }, + h = function () { + (a = !1), c || o.call(t); + }, + g = function (e) { + o.call(t, e); + }, + f = function () { + return (!a || (A && A.ended)) && (!c || (s && s.ended)) ? void 0 : o.call(t, new n()); + }, + p = function () { + t.req.on('finish', l); + }; + return ( + !(function (e) { + return e.setHeader && 'function' == typeof e.abort; + })(t) + ? c && !s && (t.on('end', u), t.on('close', u)) + : (t.on('complete', l), t.on('abort', f), t.req ? p() : t.on('request', p)), + t.on('end', h), + t.on('finish', l), + !1 !== r.error && t.on('error', g), + t.on('close', f), + function () { + t.removeListener('complete', l), + t.removeListener('abort', f), + t.removeListener('request', p), + t.req && t.req.removeListener('finish', l), + t.removeListener('end', u), + t.removeListener('close', u), + t.removeListener('finish', l), + t.removeListener('end', h), + t.removeListener('error', g), + t.removeListener('close', f); + } + ); + }; + }, + 4939: (e, t, r) => { + 'use strict'; + var n; + var i = r(20663).q, + o = i.ERR_MISSING_ARGS, + s = i.ERR_STREAM_DESTROYED; + function A(e) { + if (e) throw e; + } + function a(e, t, i, o) { + o = (function (e) { + var t = !1; + return function () { + t || ((t = !0), e.apply(void 0, arguments)); + }; + })(o); + var A = !1; + e.on('close', function () { + A = !0; + }), + void 0 === n && (n = r(91327)), + n(e, { readable: t, writable: i }, function (e) { + if (e) return o(e); + (A = !0), o(); + }); + var a = !1; + return function (t) { + if (!A && !a) + return ( + (a = !0), + (function (e) { + return e.setHeader && 'function' == typeof e.abort; + })(e) + ? e.abort() + : 'function' == typeof e.destroy + ? e.destroy() + : void o(t || new s('pipe')) + ); + }; + } + function c(e) { + e(); + } + function u(e, t) { + return e.pipe(t); + } + function l(e) { + return e.length ? ('function' != typeof e[e.length - 1] ? A : e.pop()) : A; + } + e.exports = function () { + for (var e = arguments.length, t = new Array(e), r = 0; r < e; r++) t[r] = arguments[r]; + var n, + i = l(t); + if ((Array.isArray(t[0]) && (t = t[0]), t.length < 2)) throw new o('streams'); + var s = t.map(function (e, r) { + var o = r < t.length - 1; + return a(e, o, r > 0, function (e) { + n || (n = e), e && s.forEach(c), o || (s.forEach(c), i(n)); + }); + }); + return t.reduce(u); + }; + }, + 77433: (e, t, r) => { + 'use strict'; + var n = r(20663).q.ERR_INVALID_OPT_VALUE; + e.exports = { + getHighWaterMark: function (e, t, r, i) { + var o = (function (e, t, r) { + return null != e.highWaterMark ? e.highWaterMark : t ? e[r] : null; + })(t, i, r); + if (null != o) { + if (!isFinite(o) || Math.floor(o) !== o || o < 0) + throw new n(i ? r : 'highWaterMark', o); + return Math.floor(o); + } + return e.objectMode ? 16 : 16384; + }, + }; + }, + 49298: (e, t, r) => { + e.exports = r(92413); + }, + 86897: (e, t, r) => { + var n = r(92413); + 'disable' === process.env.READABLE_STREAM && n + ? ((e.exports = n.Readable), Object.assign(e.exports, n), (e.exports.Stream = n)) + : (((t = e.exports = r(58020)).Stream = n || t), + (t.Readable = t), + (t.Writable = r(6729)), + (t.Duplex = r(72434)), + (t.Transform = r(54801)), + (t.PassThrough = r(52444)), + (t.finished = r(91327)), + (t.pipeline = r(4939))); + }, + 19476: (e, t, r) => { + 'use strict'; + const n = r(4016); + e.exports = (e = {}) => + new Promise((t, r) => { + const i = n.connect(e, () => { + e.resolveSocket + ? (i.off('error', r), t({ alpnProtocol: i.alpnProtocol, socket: i })) + : (i.destroy(), t({ alpnProtocol: i.alpnProtocol })); + }); + i.on('error', r); + }); + }, + 48491: (e, t, r) => { + 'use strict'; + const n = r(92413).Readable, + i = r(55737); + e.exports = class extends n { + constructor(e, t, r, n) { + if ('number' != typeof e) + throw new TypeError('Argument `statusCode` should be a number'); + if ('object' != typeof t) throw new TypeError('Argument `headers` should be an object'); + if (!(r instanceof Buffer)) throw new TypeError('Argument `body` should be a buffer'); + if ('string' != typeof n) throw new TypeError('Argument `url` should be a string'); + super(), (this.statusCode = e), (this.headers = i(t)), (this.body = r), (this.url = n); + } + _read() { + this.push(this.body), this.push(null); + } + }; + }, + 3390: (e, t, r) => { + 'use strict'; + const n = r(90834), + i = r(76458); + e.exports = n(() => { + i( + () => { + process.stderr.write('[?25h'); + }, + { alwaysLast: !0 } + ); + }); + }, + 2383: (e) => { + 'use strict'; + e.exports = function (e) { + var t = new e(), + r = t; + return { + get: function () { + var n = t; + return n.next ? (t = n.next) : ((t = new e()), (r = t)), (n.next = null), n; + }, + release: function (e) { + (r.next = e), (r = e); + }, + }; + }; + }, + 28855: (e, t, r) => { + 'use strict'; + var n = r(61047), + i = (e.exports = function (e, t) { + return ( + (t = t || function () {}), + function () { + var r = arguments, + i = new Promise(function (t, i) { + var o = !1; + const s = function (e) { + o && console.warn('Run-async promise already resolved.'), (o = !0), t(e); + }; + var A = !1; + const a = function (e) { + A && console.warn('Run-async promise already rejected.'), (A = !0), i(e); + }; + var c = !1, + u = !1, + l = !1, + h = e.apply( + { + async: function () { + return l + ? (console.warn( + 'Run-async async() called outside a valid run-async context, callback will be ignored.' + ), + function () {}) + : (u && + console.warn( + 'Run-async wrapped function (async) returned a promise.\nCalls to async() callback can have unexpected results.' + ), + (c = !0), + function (e, t) { + e ? a(e) : s(t); + }); + }, + }, + Array.prototype.slice.call(r) + ); + c + ? n(h) && + console.warn( + 'Run-async wrapped function (sync) returned a promise but async() callback must be executed to resolve.' + ) + : n(h) + ? ((u = !0), h.then(s, a)) + : s(h), + (l = !0); + }); + return i.then(t.bind(null, null), t), i; + } + ); + }); + i.cb = function (e, t) { + return i(function () { + var t = Array.prototype.slice.call(arguments); + return t.length === e.length - 1 && t.push(this.async()), e.apply(this, t); + }, t); + }; + }, + 69078: (e) => { + e.exports = function (e, t) { + var r, + n, + i, + o = !0; + Array.isArray(e) + ? ((r = []), (n = e.length)) + : ((i = Object.keys(e)), (r = {}), (n = i.length)); + function s(e) { + function n() { + t && t(e, r), (t = null); + } + o ? process.nextTick(n) : n(); + } + function A(e, t, i) { + (r[e] = i), (0 == --n || t) && s(t); + } + n + ? i + ? i.forEach(function (t) { + e[t](function (e, r) { + A(t, e, r); + }); + }) + : e.forEach(function (e, t) { + e(function (e, r) { + A(t, e, r); + }); + }) + : s(null); + o = !1; + }; + }, + 86596: (e, t, r) => { + 'use strict'; + r.r(t), + r.d(t, { + Observable: () => n.y, + ConnectableObservable: () => i.c, + GroupedObservable: () => o.T, + observable: () => s.L, + Subject: () => A.xQ, + BehaviorSubject: () => a.X, + ReplaySubject: () => c.t, + AsyncSubject: () => u.c, + asapScheduler: () => l.e, + asyncScheduler: () => h.P, + queueScheduler: () => g.c, + animationFrameScheduler: () => E, + VirtualTimeScheduler: () => I, + VirtualAction: () => m, + Scheduler: () => y.b, + Subscription: () => w.w, + Subscriber: () => B.L, + Notification: () => Q.P, + NotificationKind: () => Q.W, + pipe: () => v.z, + noop: () => D.Z, + identity: () => b.y, + isObservable: () => S, + ArgumentOutOfRangeError: () => k.W, + EmptyError: () => x.K, + ObjectUnsubscribedError: () => F.N, + UnsubscriptionError: () => M.B, + TimeoutError: () => N.W, + bindCallback: () => P, + bindNodeCallback: () => O, + combineLatest: () => J.aj, + concat: () => H.z, + defer: () => q.P, + empty: () => z.c, + forkJoin: () => X, + from: () => V.D, + fromEvent: () => ee, + fromEventPattern: () => te, + generate: () => re, + iif: () => ie, + interval: () => se, + merge: () => ae.T, + never: () => ue, + of: () => le.of, + onErrorResumeNext: () => he, + pairs: () => ge, + partition: () => Ee, + race: () => Ie.S3, + range: () => me, + throwError: () => we._, + timer: () => Be.H, + using: () => Qe, + zip: () => ve.$R, + scheduled: () => De.x, + EMPTY: () => z.E, + NEVER: () => ce, + config: () => be.v, + }); + var n = r(98789), + i = r(24311), + o = r(92564), + s = r(68511), + A = r(92915), + a = r(14753), + c = r(52493), + u = r(73582), + l = r(94097), + h = r(59873), + g = r(55031), + f = r(36370), + p = r(99944), + d = (function (e) { + function t(t, r) { + var n = e.call(this, t, r) || this; + return (n.scheduler = t), (n.work = r), n; + } + return ( + f.ZT(t, e), + (t.prototype.requestAsyncId = function (t, r, n) { + return ( + void 0 === n && (n = 0), + null !== n && n > 0 + ? e.prototype.requestAsyncId.call(this, t, r, n) + : (t.actions.push(this), + t.scheduled || + (t.scheduled = requestAnimationFrame(function () { + return t.flush(null); + }))) + ); + }), + (t.prototype.recycleAsyncId = function (t, r, n) { + if ( + (void 0 === n && (n = 0), (null !== n && n > 0) || (null === n && this.delay > 0)) + ) + return e.prototype.recycleAsyncId.call(this, t, r, n); + 0 === t.actions.length && (cancelAnimationFrame(r), (t.scheduled = void 0)); + }), + t + ); + })(p.o), + C = r(43548), + E = new ((function (e) { + function t() { + return (null !== e && e.apply(this, arguments)) || this; + } + return ( + f.ZT(t, e), + (t.prototype.flush = function (e) { + (this.active = !0), (this.scheduled = void 0); + var t, + r = this.actions, + n = -1, + i = r.length; + e = e || r.shift(); + do { + if ((t = e.execute(e.state, e.delay))) break; + } while (++n < i && (e = r.shift())); + if (((this.active = !1), t)) { + for (; ++n < i && (e = r.shift()); ) e.unsubscribe(); + throw t; + } + }), + t + ); + })(C.v))(d), + I = (function (e) { + function t(t, r) { + void 0 === t && (t = m), void 0 === r && (r = Number.POSITIVE_INFINITY); + var n = + e.call(this, t, function () { + return n.frame; + }) || this; + return (n.maxFrames = r), (n.frame = 0), (n.index = -1), n; + } + return ( + f.ZT(t, e), + (t.prototype.flush = function () { + for ( + var e, t, r = this.actions, n = this.maxFrames; + (t = r[0]) && + t.delay <= n && + (r.shift(), (this.frame = t.delay), !(e = t.execute(t.state, t.delay))); + + ); + if (e) { + for (; (t = r.shift()); ) t.unsubscribe(); + throw e; + } + }), + (t.frameTimeFactor = 10), + t + ); + })(C.v), + m = (function (e) { + function t(t, r, n) { + void 0 === n && (n = t.index += 1); + var i = e.call(this, t, r) || this; + return ( + (i.scheduler = t), + (i.work = r), + (i.index = n), + (i.active = !0), + (i.index = t.index = n), + i + ); + } + return ( + f.ZT(t, e), + (t.prototype.schedule = function (r, n) { + if ((void 0 === n && (n = 0), !this.id)) + return e.prototype.schedule.call(this, r, n); + this.active = !1; + var i = new t(this.scheduler, this.work); + return this.add(i), i.schedule(r, n); + }), + (t.prototype.requestAsyncId = function (e, r, n) { + void 0 === n && (n = 0), (this.delay = e.frame + n); + var i = e.actions; + return i.push(this), i.sort(t.sortActions), !0; + }), + (t.prototype.recycleAsyncId = function (e, t, r) { + void 0 === r && (r = 0); + }), + (t.prototype._execute = function (t, r) { + if (!0 === this.active) return e.prototype._execute.call(this, t, r); + }), + (t.sortActions = function (e, t) { + return e.delay === t.delay + ? e.index === t.index + ? 0 + : e.index > t.index + ? 1 + : -1 + : e.delay > t.delay + ? 1 + : -1; + }), + t + ); + })(p.o), + y = r(42476), + w = r(73504), + B = r(28732), + Q = r(4094), + v = r(97836), + D = r(57781), + b = r(80433); + function S(e) { + return ( + !!e && + (e instanceof n.y || ('function' == typeof e.lift && 'function' == typeof e.subscribe)) + ); + } + var k = r(3551), + x = r(30943), + F = r(90265), + M = r(43347), + N = r(87299), + R = r(98082), + K = r(58880), + L = r(47182), + T = r(64986); + function P(e, t, r) { + if (t) { + if (!(0, T.K)(t)) + return function () { + for (var n = [], i = 0; i < arguments.length; i++) n[i] = arguments[i]; + return P(e, r) + .apply(void 0, n) + .pipe( + (0, R.U)(function (e) { + return (0, L.k)(e) ? t.apply(void 0, e) : t(e); + }) + ); + }; + r = t; + } + return function () { + for (var t = [], i = 0; i < arguments.length; i++) t[i] = arguments[i]; + var o, + s = this, + A = { context: s, subject: o, callbackFunc: e, scheduler: r }; + return new n.y(function (n) { + if (r) { + var i = { args: t, subscriber: n, params: A }; + return r.schedule(U, 0, i); + } + if (!o) { + o = new u.c(); + try { + e.apply( + s, + t.concat([ + function () { + for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; + o.next(e.length <= 1 ? e[0] : e), o.complete(); + }, + ]) + ); + } catch (e) { + (0, K._)(o) ? o.error(e) : console.warn(e); + } + } + return o.subscribe(n); + }); + }; + } + function U(e) { + var t = this, + r = e.args, + n = e.subscriber, + i = e.params, + o = i.callbackFunc, + s = i.context, + A = i.scheduler, + a = i.subject; + if (!a) { + a = i.subject = new u.c(); + try { + o.apply( + s, + r.concat([ + function () { + for (var e = [], r = 0; r < arguments.length; r++) e[r] = arguments[r]; + var n = e.length <= 1 ? e[0] : e; + t.add(A.schedule(_, 0, { value: n, subject: a })); + }, + ]) + ); + } catch (e) { + a.error(e); + } + } + this.add(a.subscribe(n)); + } + function _(e) { + var t = e.value, + r = e.subject; + r.next(t), r.complete(); + } + function O(e, t, r) { + if (t) { + if (!(0, T.K)(t)) + return function () { + for (var n = [], i = 0; i < arguments.length; i++) n[i] = arguments[i]; + return O(e, r) + .apply(void 0, n) + .pipe( + (0, R.U)(function (e) { + return (0, L.k)(e) ? t.apply(void 0, e) : t(e); + }) + ); + }; + r = t; + } + return function () { + for (var t = [], i = 0; i < arguments.length; i++) t[i] = arguments[i]; + var o = { subject: void 0, args: t, callbackFunc: e, scheduler: r, context: this }; + return new n.y(function (n) { + var i = o.context, + s = o.subject; + if (r) return r.schedule(j, 0, { params: o, subscriber: n, context: i }); + if (!s) { + s = o.subject = new u.c(); + try { + e.apply( + i, + t.concat([ + function () { + for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; + var r = e.shift(); + r ? s.error(r) : (s.next(e.length <= 1 ? e[0] : e), s.complete()); + }, + ]) + ); + } catch (e) { + (0, K._)(s) ? s.error(e) : console.warn(e); + } + } + return s.subscribe(n); + }); + }; + } + function j(e) { + var t = this, + r = e.params, + n = e.subscriber, + i = e.context, + o = r.callbackFunc, + s = r.args, + A = r.scheduler, + a = r.subject; + if (!a) { + a = r.subject = new u.c(); + try { + o.apply( + i, + s.concat([ + function () { + for (var e = [], r = 0; r < arguments.length; r++) e[r] = arguments[r]; + var n = e.shift(); + if (n) t.add(A.schedule(G, 0, { err: n, subject: a })); + else { + var i = e.length <= 1 ? e[0] : e; + t.add(A.schedule(Y, 0, { value: i, subject: a })); + } + }, + ]) + ); + } catch (e) { + this.add(A.schedule(G, 0, { err: e, subject: a })); + } + } + this.add(a.subscribe(n)); + } + function Y(e) { + var t = e.value, + r = e.subject; + r.next(t), r.complete(); + } + function G(e) { + var t = e.err; + e.subject.error(t); + } + var J = r(20995), + H = r(14023), + q = r(58721), + z = r(61775), + W = r(29929), + V = r(85861); + function X() { + for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; + if (1 === e.length) { + var r = e[0]; + if ((0, L.k)(r)) return Z(r, null); + if ((0, W.K)(r) && Object.getPrototypeOf(r) === Object.prototype) { + var n = Object.keys(r); + return Z( + n.map(function (e) { + return r[e]; + }), + n + ); + } + } + if ('function' == typeof e[e.length - 1]) { + var i = e.pop(); + return Z((e = 1 === e.length && (0, L.k)(e[0]) ? e[0] : e), null).pipe( + (0, R.U)(function (e) { + return i.apply(void 0, e); + }) + ); + } + return Z(e, null); + } + function Z(e, t) { + return new n.y(function (r) { + var n = e.length; + if (0 !== n) + for ( + var i = new Array(n), + o = 0, + s = 0, + A = function (A) { + var a = (0, V.D)(e[A]), + c = !1; + r.add( + a.subscribe({ + next: function (e) { + c || ((c = !0), s++), (i[A] = e); + }, + error: function (e) { + return r.error(e); + }, + complete: function () { + (++o !== n && c) || + (s === n && + r.next( + t + ? t.reduce(function (e, t, r) { + return (e[t] = i[r]), e; + }, {}) + : i + ), + r.complete()); + }, + }) + ); + }, + a = 0; + a < n; + a++ + ) + A(a); + else r.complete(); + }); + } + var $ = r(38394); + function ee(e, t, r, i) { + return ( + (0, $.m)(r) && ((i = r), (r = void 0)), + i + ? ee(e, t, r).pipe( + (0, R.U)(function (e) { + return (0, L.k)(e) ? i.apply(void 0, e) : i(e); + }) + ) + : new n.y(function (n) { + !(function e(t, r, n, i, o) { + var s; + if ( + (function (e) { + return ( + e && + 'function' == typeof e.addEventListener && + 'function' == typeof e.removeEventListener + ); + })(t) + ) { + var A = t; + t.addEventListener(r, n, o), + (s = function () { + return A.removeEventListener(r, n, o); + }); + } else if ( + (function (e) { + return e && 'function' == typeof e.on && 'function' == typeof e.off; + })(t) + ) { + var a = t; + t.on(r, n), + (s = function () { + return a.off(r, n); + }); + } else if ( + (function (e) { + return ( + e && + 'function' == typeof e.addListener && + 'function' == typeof e.removeListener + ); + })(t) + ) { + var c = t; + t.addListener(r, n), + (s = function () { + return c.removeListener(r, n); + }); + } else { + if (!t || !t.length) throw new TypeError('Invalid event target'); + for (var u = 0, l = t.length; u < l; u++) e(t[u], r, n, i, o); + } + i.add(s); + })( + e, + t, + function (e) { + arguments.length > 1 + ? n.next(Array.prototype.slice.call(arguments)) + : n.next(e); + }, + n, + r + ); + }) + ); + } + function te(e, t, r) { + return r + ? te(e, t).pipe( + (0, R.U)(function (e) { + return (0, L.k)(e) ? r.apply(void 0, e) : r(e); + }) + ) + : new n.y(function (r) { + var n, + i = function () { + for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; + return r.next(1 === e.length ? e[0] : e); + }; + try { + n = e(i); + } catch (e) { + return void r.error(e); + } + if ((0, $.m)(t)) + return function () { + return t(i, n); + }; + }); + } + function re(e, t, r, i, o) { + var s, A; + if (1 == arguments.length) { + var a = e; + (A = a.initialState), + (t = a.condition), + (r = a.iterate), + (s = a.resultSelector || b.y), + (o = a.scheduler); + } else void 0 === i || (0, T.K)(i) ? ((A = e), (s = b.y), (o = i)) : ((A = e), (s = i)); + return new n.y(function (e) { + var n = A; + if (o) + return o.schedule(ne, 0, { + subscriber: e, + iterate: r, + condition: t, + resultSelector: s, + state: n, + }); + for (;;) { + if (t) { + var i = void 0; + try { + i = t(n); + } catch (t) { + return void e.error(t); + } + if (!i) { + e.complete(); + break; + } + } + var a = void 0; + try { + a = s(n); + } catch (t) { + return void e.error(t); + } + if ((e.next(a), e.closed)) break; + try { + n = r(n); + } catch (t) { + return void e.error(t); + } + } + }); + } + function ne(e) { + var t = e.subscriber, + r = e.condition; + if (!t.closed) { + if (e.needIterate) + try { + e.state = e.iterate(e.state); + } catch (e) { + return void t.error(e); + } + else e.needIterate = !0; + if (r) { + var n = void 0; + try { + n = r(e.state); + } catch (e) { + return void t.error(e); + } + if (!n) return void t.complete(); + if (t.closed) return; + } + var i; + try { + i = e.resultSelector(e.state); + } catch (e) { + return void t.error(e); + } + if (!t.closed && (t.next(i), !t.closed)) return this.schedule(e); + } + } + function ie(e, t, r) { + return ( + void 0 === t && (t = z.E), + void 0 === r && (r = z.E), + (0, q.P)(function () { + return e() ? t : r; + }) + ); + } + var oe = r(23820); + function se(e, t) { + return ( + void 0 === e && (e = 0), + void 0 === t && (t = h.P), + (!(0, oe.k)(e) || e < 0) && (e = 0), + (t && 'function' == typeof t.schedule) || (t = h.P), + new n.y(function (r) { + return r.add(t.schedule(Ae, e, { subscriber: r, counter: 0, period: e })), r; + }) + ); + } + function Ae(e) { + var t = e.subscriber, + r = e.counter, + n = e.period; + t.next(r), this.schedule({ subscriber: t, counter: r + 1, period: n }, n); + } + var ae = r(80810), + ce = new n.y(D.Z); + function ue() { + return ce; + } + var le = r(29686); + function he() { + for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; + if (0 === e.length) return z.E; + var r = e[0], + i = e.slice(1); + return 1 === e.length && (0, L.k)(r) + ? he.apply(void 0, r) + : new n.y(function (e) { + var t = function () { + return e.add(he.apply(void 0, i).subscribe(e)); + }; + return (0, V.D)(r).subscribe({ + next: function (t) { + e.next(t); + }, + error: t, + complete: t, + }); + }); + } + function ge(e, t) { + return t + ? new n.y(function (r) { + var n = Object.keys(e), + i = new w.w(); + return ( + i.add( + t.schedule(fe, 0, { keys: n, index: 0, subscriber: r, subscription: i, obj: e }) + ), + i + ); + }) + : new n.y(function (t) { + for (var r = Object.keys(e), n = 0; n < r.length && !t.closed; n++) { + var i = r[n]; + e.hasOwnProperty(i) && t.next([i, e[i]]); + } + t.complete(); + }); + } + function fe(e) { + var t = e.keys, + r = e.index, + n = e.subscriber, + i = e.subscription, + o = e.obj; + if (!n.closed) + if (r < t.length) { + var s = t[r]; + n.next([s, o[s]]), + i.add( + this.schedule({ keys: t, index: r + 1, subscriber: n, subscription: i, obj: o }) + ); + } else n.complete(); + } + var pe = r(65868), + de = r(92402), + Ce = r(39063); + function Ee(e, t, r) { + return [ + (0, Ce.h)(t, r)(new n.y((0, de.s)(e))), + (0, Ce.h)((0, pe.f)(t, r))(new n.y((0, de.s)(e))), + ]; + } + var Ie = r(2332); + function me(e, t, r) { + return ( + void 0 === e && (e = 0), + new n.y(function (n) { + void 0 === t && ((t = e), (e = 0)); + var i = 0, + o = e; + if (r) return r.schedule(ye, 0, { index: i, count: t, start: e, subscriber: n }); + for (;;) { + if (i++ >= t) { + n.complete(); + break; + } + if ((n.next(o++), n.closed)) break; + } + }) + ); + } + function ye(e) { + var t = e.start, + r = e.index, + n = e.count, + i = e.subscriber; + r >= n + ? i.complete() + : (i.next(t), i.closed || ((e.index = r + 1), (e.start = t + 1), this.schedule(e))); + } + var we = r(9491), + Be = r(13028); + function Qe(e, t) { + return new n.y(function (r) { + var n, i; + try { + n = e(); + } catch (e) { + return void r.error(e); + } + try { + i = t(n); + } catch (e) { + return void r.error(e); + } + var o = (i ? (0, V.D)(i) : z.E).subscribe(r); + return function () { + o.unsubscribe(), n && n.unsubscribe(); + }; + }); + } + var ve = r(21336), + De = r(14109), + be = r(21894); + }, + 73582: (e, t, r) => { + 'use strict'; + r.d(t, { c: () => s }); + var n = r(36370), + i = r(92915), + o = r(73504), + s = (function (e) { + function t() { + var t = (null !== e && e.apply(this, arguments)) || this; + return (t.value = null), (t.hasNext = !1), (t.hasCompleted = !1), t; + } + return ( + n.ZT(t, e), + (t.prototype._subscribe = function (t) { + return this.hasError + ? (t.error(this.thrownError), o.w.EMPTY) + : this.hasCompleted && this.hasNext + ? (t.next(this.value), t.complete(), o.w.EMPTY) + : e.prototype._subscribe.call(this, t); + }), + (t.prototype.next = function (e) { + this.hasCompleted || ((this.value = e), (this.hasNext = !0)); + }), + (t.prototype.error = function (t) { + this.hasCompleted || e.prototype.error.call(this, t); + }), + (t.prototype.complete = function () { + (this.hasCompleted = !0), + this.hasNext && e.prototype.next.call(this, this.value), + e.prototype.complete.call(this); + }), + t + ); + })(i.xQ); + }, + 14753: (e, t, r) => { + 'use strict'; + r.d(t, { X: () => s }); + var n = r(36370), + i = r(92915), + o = r(90265), + s = (function (e) { + function t(t) { + var r = e.call(this) || this; + return (r._value = t), r; + } + return ( + n.ZT(t, e), + Object.defineProperty(t.prototype, 'value', { + get: function () { + return this.getValue(); + }, + enumerable: !0, + configurable: !0, + }), + (t.prototype._subscribe = function (t) { + var r = e.prototype._subscribe.call(this, t); + return r && !r.closed && t.next(this._value), r; + }), + (t.prototype.getValue = function () { + if (this.hasError) throw this.thrownError; + if (this.closed) throw new o.N(); + return this._value; + }), + (t.prototype.next = function (t) { + e.prototype.next.call(this, (this._value = t)); + }), + t + ); + })(i.xQ); + }, + 28907: (e, t, r) => { + 'use strict'; + r.d(t, { d: () => i }); + var n = r(36370), + i = (function (e) { + function t(t, r, n) { + var i = e.call(this) || this; + return (i.parent = t), (i.outerValue = r), (i.outerIndex = n), (i.index = 0), i; + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + this.parent.notifyNext(this.outerValue, e, this.outerIndex, this.index++, this); + }), + (t.prototype._error = function (e) { + this.parent.notifyError(e, this), this.unsubscribe(); + }), + (t.prototype._complete = function () { + this.parent.notifyComplete(this), this.unsubscribe(); + }), + t + ); + })(r(28732).L); + }, + 4094: (e, t, r) => { + 'use strict'; + r.d(t, { W: () => n, P: () => A }); + var n, + i = r(61775), + o = r(29686), + s = r(9491); + n || (n = {}); + var A = (function () { + function e(e, t, r) { + (this.kind = e), (this.value = t), (this.error = r), (this.hasValue = 'N' === e); + } + return ( + (e.prototype.observe = function (e) { + switch (this.kind) { + case 'N': + return e.next && e.next(this.value); + case 'E': + return e.error && e.error(this.error); + case 'C': + return e.complete && e.complete(); + } + }), + (e.prototype.do = function (e, t, r) { + switch (this.kind) { + case 'N': + return e && e(this.value); + case 'E': + return t && t(this.error); + case 'C': + return r && r(); + } + }), + (e.prototype.accept = function (e, t, r) { + return e && 'function' == typeof e.next ? this.observe(e) : this.do(e, t, r); + }), + (e.prototype.toObservable = function () { + switch (this.kind) { + case 'N': + return (0, o.of)(this.value); + case 'E': + return (0, s._)(this.error); + case 'C': + return (0, i.c)(); + } + throw new Error('unexpected notification kind value'); + }), + (e.createNext = function (t) { + return void 0 !== t ? new e('N', t) : e.undefinedValueNotification; + }), + (e.createError = function (t) { + return new e('E', void 0, t); + }), + (e.createComplete = function () { + return e.completeNotification; + }), + (e.completeNotification = new e('C')), + (e.undefinedValueNotification = new e('N', void 0)), + e + ); + })(); + }, + 98789: (e, t, r) => { + 'use strict'; + r.d(t, { y: () => u }); + var n = r(58880), + i = r(28732), + o = r(92515), + s = r(32103); + var A = r(68511), + a = r(97836), + c = r(21894), + u = (function () { + function e(e) { + (this._isScalar = !1), e && (this._subscribe = e); + } + return ( + (e.prototype.lift = function (t) { + var r = new e(); + return (r.source = this), (r.operator = t), r; + }), + (e.prototype.subscribe = function (e, t, r) { + var n = this.operator, + A = (function (e, t, r) { + if (e) { + if (e instanceof i.L) return e; + if (e[o.b]) return e[o.b](); + } + return e || t || r ? new i.L(e, t, r) : new i.L(s.c); + })(e, t, r); + if ( + (n + ? A.add(n.call(A, this.source)) + : A.add( + this.source || + (c.v.useDeprecatedSynchronousErrorHandling && !A.syncErrorThrowable) + ? this._subscribe(A) + : this._trySubscribe(A) + ), + c.v.useDeprecatedSynchronousErrorHandling && + A.syncErrorThrowable && + ((A.syncErrorThrowable = !1), A.syncErrorThrown)) + ) + throw A.syncErrorValue; + return A; + }), + (e.prototype._trySubscribe = function (e) { + try { + return this._subscribe(e); + } catch (t) { + c.v.useDeprecatedSynchronousErrorHandling && + ((e.syncErrorThrown = !0), (e.syncErrorValue = t)), + (0, n._)(e) ? e.error(t) : console.warn(t); + } + }), + (e.prototype.forEach = function (e, t) { + var r = this; + return new (t = l(t))(function (t, n) { + var i; + i = r.subscribe( + function (t) { + try { + e(t); + } catch (e) { + n(e), i && i.unsubscribe(); + } + }, + n, + t + ); + }); + }), + (e.prototype._subscribe = function (e) { + var t = this.source; + return t && t.subscribe(e); + }), + (e.prototype[A.L] = function () { + return this; + }), + (e.prototype.pipe = function () { + for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; + return 0 === e.length ? this : (0, a.U)(e)(this); + }), + (e.prototype.toPromise = function (e) { + var t = this; + return new (e = l(e))(function (e, r) { + var n; + t.subscribe( + function (e) { + return (n = e); + }, + function (e) { + return r(e); + }, + function () { + return e(n); + } + ); + }); + }), + (e.create = function (t) { + return new e(t); + }), + e + ); + })(); + function l(e) { + if ((e || (e = c.v.Promise || Promise), !e)) throw new Error('no Promise impl found'); + return e; + } + }, + 32103: (e, t, r) => { + 'use strict'; + r.d(t, { c: () => o }); + var n = r(21894), + i = r(13109), + o = { + closed: !0, + next: function (e) {}, + error: function (e) { + if (n.v.useDeprecatedSynchronousErrorHandling) throw e; + (0, i.z)(e); + }, + complete: function () {}, + }; + }, + 20242: (e, t, r) => { + 'use strict'; + r.d(t, { L: () => i }); + var n = r(36370), + i = (function (e) { + function t() { + return (null !== e && e.apply(this, arguments)) || this; + } + return ( + n.ZT(t, e), + (t.prototype.notifyNext = function (e, t, r, n, i) { + this.destination.next(t); + }), + (t.prototype.notifyError = function (e, t) { + this.destination.error(e); + }), + (t.prototype.notifyComplete = function (e) { + this.destination.complete(); + }), + t + ); + })(r(28732).L); + }, + 52493: (e, t, r) => { + 'use strict'; + r.d(t, { t: () => u }); + var n = r(36370), + i = r(92915), + o = r(55031), + s = r(73504), + A = r(32746), + a = r(90265), + c = r(73066), + u = (function (e) { + function t(t, r, n) { + void 0 === t && (t = Number.POSITIVE_INFINITY), + void 0 === r && (r = Number.POSITIVE_INFINITY); + var i = e.call(this) || this; + return ( + (i.scheduler = n), + (i._events = []), + (i._infiniteTimeWindow = !1), + (i._bufferSize = t < 1 ? 1 : t), + (i._windowTime = r < 1 ? 1 : r), + r === Number.POSITIVE_INFINITY + ? ((i._infiniteTimeWindow = !0), (i.next = i.nextInfiniteTimeWindow)) + : (i.next = i.nextTimeWindow), + i + ); + } + return ( + n.ZT(t, e), + (t.prototype.nextInfiniteTimeWindow = function (t) { + var r = this._events; + r.push(t), r.length > this._bufferSize && r.shift(), e.prototype.next.call(this, t); + }), + (t.prototype.nextTimeWindow = function (t) { + this._events.push(new l(this._getNow(), t)), + this._trimBufferThenGetEvents(), + e.prototype.next.call(this, t); + }), + (t.prototype._subscribe = function (e) { + var t, + r = this._infiniteTimeWindow, + n = r ? this._events : this._trimBufferThenGetEvents(), + i = this.scheduler, + o = n.length; + if (this.closed) throw new a.N(); + if ( + (this.isStopped || this.hasError + ? (t = s.w.EMPTY) + : (this.observers.push(e), (t = new c.W(this, e))), + i && e.add((e = new A.ht(e, i))), + r) + ) + for (var u = 0; u < o && !e.closed; u++) e.next(n[u]); + else for (u = 0; u < o && !e.closed; u++) e.next(n[u].value); + return ( + this.hasError ? e.error(this.thrownError) : this.isStopped && e.complete(), t + ); + }), + (t.prototype._getNow = function () { + return (this.scheduler || o.c).now(); + }), + (t.prototype._trimBufferThenGetEvents = function () { + for ( + var e = this._getNow(), + t = this._bufferSize, + r = this._windowTime, + n = this._events, + i = n.length, + o = 0; + o < i && !(e - n[o].time < r); + + ) + o++; + return i > t && (o = Math.max(o, i - t)), o > 0 && n.splice(0, o), n; + }), + t + ); + })(i.xQ), + l = (function () { + return function (e, t) { + (this.time = e), (this.value = t); + }; + })(); + }, + 42476: (e, t, r) => { + 'use strict'; + r.d(t, { b: () => n }); + var n = (function () { + function e(t, r) { + void 0 === r && (r = e.now), (this.SchedulerAction = t), (this.now = r); + } + return ( + (e.prototype.schedule = function (e, t, r) { + return void 0 === t && (t = 0), new this.SchedulerAction(this, e).schedule(r, t); + }), + (e.now = function () { + return Date.now(); + }), + e + ); + })(); + }, + 92915: (e, t, r) => { + 'use strict'; + r.d(t, { Yc: () => u, xQ: () => l }); + var n = r(36370), + i = r(98789), + o = r(28732), + s = r(73504), + A = r(90265), + a = r(73066), + c = r(92515), + u = (function (e) { + function t(t) { + var r = e.call(this, t) || this; + return (r.destination = t), r; + } + return n.ZT(t, e), t; + })(o.L), + l = (function (e) { + function t() { + var t = e.call(this) || this; + return ( + (t.observers = []), + (t.closed = !1), + (t.isStopped = !1), + (t.hasError = !1), + (t.thrownError = null), + t + ); + } + return ( + n.ZT(t, e), + (t.prototype[c.b] = function () { + return new u(this); + }), + (t.prototype.lift = function (e) { + var t = new h(this, this); + return (t.operator = e), t; + }), + (t.prototype.next = function (e) { + if (this.closed) throw new A.N(); + if (!this.isStopped) + for (var t = this.observers, r = t.length, n = t.slice(), i = 0; i < r; i++) + n[i].next(e); + }), + (t.prototype.error = function (e) { + if (this.closed) throw new A.N(); + (this.hasError = !0), (this.thrownError = e), (this.isStopped = !0); + for (var t = this.observers, r = t.length, n = t.slice(), i = 0; i < r; i++) + n[i].error(e); + this.observers.length = 0; + }), + (t.prototype.complete = function () { + if (this.closed) throw new A.N(); + this.isStopped = !0; + for (var e = this.observers, t = e.length, r = e.slice(), n = 0; n < t; n++) + r[n].complete(); + this.observers.length = 0; + }), + (t.prototype.unsubscribe = function () { + (this.isStopped = !0), (this.closed = !0), (this.observers = null); + }), + (t.prototype._trySubscribe = function (t) { + if (this.closed) throw new A.N(); + return e.prototype._trySubscribe.call(this, t); + }), + (t.prototype._subscribe = function (e) { + if (this.closed) throw new A.N(); + return this.hasError + ? (e.error(this.thrownError), s.w.EMPTY) + : this.isStopped + ? (e.complete(), s.w.EMPTY) + : (this.observers.push(e), new a.W(this, e)); + }), + (t.prototype.asObservable = function () { + var e = new i.y(); + return (e.source = this), e; + }), + (t.create = function (e, t) { + return new h(e, t); + }), + t + ); + })(i.y), + h = (function (e) { + function t(t, r) { + var n = e.call(this) || this; + return (n.destination = t), (n.source = r), n; + } + return ( + n.ZT(t, e), + (t.prototype.next = function (e) { + var t = this.destination; + t && t.next && t.next(e); + }), + (t.prototype.error = function (e) { + var t = this.destination; + t && t.error && this.destination.error(e); + }), + (t.prototype.complete = function () { + var e = this.destination; + e && e.complete && this.destination.complete(); + }), + (t.prototype._subscribe = function (e) { + return this.source ? this.source.subscribe(e) : s.w.EMPTY; + }), + t + ); + })(l); + }, + 73066: (e, t, r) => { + 'use strict'; + r.d(t, { W: () => i }); + var n = r(36370), + i = (function (e) { + function t(t, r) { + var n = e.call(this) || this; + return (n.subject = t), (n.subscriber = r), (n.closed = !1), n; + } + return ( + n.ZT(t, e), + (t.prototype.unsubscribe = function () { + if (!this.closed) { + this.closed = !0; + var e = this.subject, + t = e.observers; + if (((this.subject = null), t && 0 !== t.length && !e.isStopped && !e.closed)) { + var r = t.indexOf(this.subscriber); + -1 !== r && t.splice(r, 1); + } + } + }), + t + ); + })(r(73504).w); + }, + 28732: (e, t, r) => { + 'use strict'; + r.d(t, { L: () => u }); + var n = r(36370), + i = r(38394), + o = r(32103), + s = r(73504), + A = r(92515), + a = r(21894), + c = r(13109), + u = (function (e) { + function t(r, n, i) { + var s = e.call(this) || this; + switch ( + ((s.syncErrorValue = null), + (s.syncErrorThrown = !1), + (s.syncErrorThrowable = !1), + (s.isStopped = !1), + arguments.length) + ) { + case 0: + s.destination = o.c; + break; + case 1: + if (!r) { + s.destination = o.c; + break; + } + if ('object' == typeof r) { + r instanceof t + ? ((s.syncErrorThrowable = r.syncErrorThrowable), + (s.destination = r), + r.add(s)) + : ((s.syncErrorThrowable = !0), (s.destination = new l(s, r))); + break; + } + default: + (s.syncErrorThrowable = !0), (s.destination = new l(s, r, n, i)); + } + return s; + } + return ( + n.ZT(t, e), + (t.prototype[A.b] = function () { + return this; + }), + (t.create = function (e, r, n) { + var i = new t(e, r, n); + return (i.syncErrorThrowable = !1), i; + }), + (t.prototype.next = function (e) { + this.isStopped || this._next(e); + }), + (t.prototype.error = function (e) { + this.isStopped || ((this.isStopped = !0), this._error(e)); + }), + (t.prototype.complete = function () { + this.isStopped || ((this.isStopped = !0), this._complete()); + }), + (t.prototype.unsubscribe = function () { + this.closed || ((this.isStopped = !0), e.prototype.unsubscribe.call(this)); + }), + (t.prototype._next = function (e) { + this.destination.next(e); + }), + (t.prototype._error = function (e) { + this.destination.error(e), this.unsubscribe(); + }), + (t.prototype._complete = function () { + this.destination.complete(), this.unsubscribe(); + }), + (t.prototype._unsubscribeAndRecycle = function () { + var e = this._parentOrParents; + return ( + (this._parentOrParents = null), + this.unsubscribe(), + (this.closed = !1), + (this.isStopped = !1), + (this._parentOrParents = e), + this + ); + }), + t + ); + })(s.w), + l = (function (e) { + function t(t, r, n, s) { + var A, + a = e.call(this) || this; + a._parentSubscriber = t; + var c = a; + return ( + (0, i.m)(r) + ? (A = r) + : r && + ((A = r.next), + (n = r.error), + (s = r.complete), + r !== o.c && + ((c = Object.create(r)), + (0, i.m)(c.unsubscribe) && a.add(c.unsubscribe.bind(c)), + (c.unsubscribe = a.unsubscribe.bind(a)))), + (a._context = c), + (a._next = A), + (a._error = n), + (a._complete = s), + a + ); + } + return ( + n.ZT(t, e), + (t.prototype.next = function (e) { + if (!this.isStopped && this._next) { + var t = this._parentSubscriber; + a.v.useDeprecatedSynchronousErrorHandling && t.syncErrorThrowable + ? this.__tryOrSetError(t, this._next, e) && this.unsubscribe() + : this.__tryOrUnsub(this._next, e); + } + }), + (t.prototype.error = function (e) { + if (!this.isStopped) { + var t = this._parentSubscriber, + r = a.v.useDeprecatedSynchronousErrorHandling; + if (this._error) + r && t.syncErrorThrowable + ? (this.__tryOrSetError(t, this._error, e), this.unsubscribe()) + : (this.__tryOrUnsub(this._error, e), this.unsubscribe()); + else if (t.syncErrorThrowable) + r ? ((t.syncErrorValue = e), (t.syncErrorThrown = !0)) : (0, c.z)(e), + this.unsubscribe(); + else { + if ((this.unsubscribe(), r)) throw e; + (0, c.z)(e); + } + } + }), + (t.prototype.complete = function () { + var e = this; + if (!this.isStopped) { + var t = this._parentSubscriber; + if (this._complete) { + var r = function () { + return e._complete.call(e._context); + }; + a.v.useDeprecatedSynchronousErrorHandling && t.syncErrorThrowable + ? (this.__tryOrSetError(t, r), this.unsubscribe()) + : (this.__tryOrUnsub(r), this.unsubscribe()); + } else this.unsubscribe(); + } + }), + (t.prototype.__tryOrUnsub = function (e, t) { + try { + e.call(this._context, t); + } catch (e) { + if ((this.unsubscribe(), a.v.useDeprecatedSynchronousErrorHandling)) throw e; + (0, c.z)(e); + } + }), + (t.prototype.__tryOrSetError = function (e, t, r) { + if (!a.v.useDeprecatedSynchronousErrorHandling) throw new Error('bad call'); + try { + t.call(this._context, r); + } catch (t) { + return a.v.useDeprecatedSynchronousErrorHandling + ? ((e.syncErrorValue = t), (e.syncErrorThrown = !0), !0) + : ((0, c.z)(t), !0); + } + return !1; + }), + (t.prototype._unsubscribe = function () { + var e = this._parentSubscriber; + (this._context = null), (this._parentSubscriber = null), e.unsubscribe(); + }), + t + ); + })(u); + }, + 73504: (e, t, r) => { + 'use strict'; + r.d(t, { w: () => A }); + var n = r(47182), + i = r(29929), + o = r(38394), + s = r(43347), + A = (function () { + function e(e) { + (this.closed = !1), + (this._parentOrParents = null), + (this._subscriptions = null), + e && (this._unsubscribe = e); + } + var t; + return ( + (e.prototype.unsubscribe = function () { + var t; + if (!this.closed) { + var r = this._parentOrParents, + A = this._unsubscribe, + c = this._subscriptions; + if ( + ((this.closed = !0), + (this._parentOrParents = null), + (this._subscriptions = null), + r instanceof e) + ) + r.remove(this); + else if (null !== r) + for (var u = 0; u < r.length; ++u) { + r[u].remove(this); + } + if ((0, o.m)(A)) + try { + A.call(this); + } catch (e) { + t = e instanceof s.B ? a(e.errors) : [e]; + } + if ((0, n.k)(c)) { + u = -1; + for (var l = c.length; ++u < l; ) { + var h = c[u]; + if ((0, i.K)(h)) + try { + h.unsubscribe(); + } catch (e) { + (t = t || []), e instanceof s.B ? (t = t.concat(a(e.errors))) : t.push(e); + } + } + } + if (t) throw new s.B(t); + } + }), + (e.prototype.add = function (t) { + var r = t; + if (!t) return e.EMPTY; + switch (typeof t) { + case 'function': + r = new e(t); + case 'object': + if (r === this || r.closed || 'function' != typeof r.unsubscribe) return r; + if (this.closed) return r.unsubscribe(), r; + if (!(r instanceof e)) { + var n = r; + (r = new e())._subscriptions = [n]; + } + break; + default: + throw new Error('unrecognized teardown ' + t + ' added to Subscription.'); + } + var i = r._parentOrParents; + if (null === i) r._parentOrParents = this; + else if (i instanceof e) { + if (i === this) return r; + r._parentOrParents = [i, this]; + } else { + if (-1 !== i.indexOf(this)) return r; + i.push(this); + } + var o = this._subscriptions; + return null === o ? (this._subscriptions = [r]) : o.push(r), r; + }), + (e.prototype.remove = function (e) { + var t = this._subscriptions; + if (t) { + var r = t.indexOf(e); + -1 !== r && t.splice(r, 1); + } + }), + (e.EMPTY = (((t = new e()).closed = !0), t)), + e + ); + })(); + function a(e) { + return e.reduce(function (e, t) { + return e.concat(t instanceof s.B ? t.errors : t); + }, []); + } + }, + 21894: (e, t, r) => { + 'use strict'; + r.d(t, { v: () => i }); + var n = !1, + i = { + Promise: void 0, + set useDeprecatedSynchronousErrorHandling(e) { + e && new Error().stack; + n = e; + }, + get useDeprecatedSynchronousErrorHandling() { + return n; + }, + }; + }, + 24311: (e, t, r) => { + 'use strict'; + r.d(t, { c: () => c, N: () => u }); + var n = r(36370), + i = r(92915), + o = r(98789), + s = r(28732), + A = r(73504), + a = r(97566), + c = (function (e) { + function t(t, r) { + var n = e.call(this) || this; + return ( + (n.source = t), (n.subjectFactory = r), (n._refCount = 0), (n._isComplete = !1), n + ); + } + return ( + n.ZT(t, e), + (t.prototype._subscribe = function (e) { + return this.getSubject().subscribe(e); + }), + (t.prototype.getSubject = function () { + var e = this._subject; + return ( + (e && !e.isStopped) || (this._subject = this.subjectFactory()), this._subject + ); + }), + (t.prototype.connect = function () { + var e = this._connection; + return ( + e || + ((this._isComplete = !1), + (e = this._connection = new A.w()).add( + this.source.subscribe(new l(this.getSubject(), this)) + ), + e.closed && ((this._connection = null), (e = A.w.EMPTY))), + e + ); + }), + (t.prototype.refCount = function () { + return (0, a.x)()(this); + }), + t + ); + })(o.y), + u = (function () { + var e = c.prototype; + return { + operator: { value: null }, + _refCount: { value: 0, writable: !0 }, + _subject: { value: null, writable: !0 }, + _connection: { value: null, writable: !0 }, + _subscribe: { value: e._subscribe }, + _isComplete: { value: e._isComplete, writable: !0 }, + getSubject: { value: e.getSubject }, + connect: { value: e.connect }, + refCount: { value: e.refCount }, + }; + })(), + l = (function (e) { + function t(t, r) { + var n = e.call(this, t) || this; + return (n.connectable = r), n; + } + return ( + n.ZT(t, e), + (t.prototype._error = function (t) { + this._unsubscribe(), e.prototype._error.call(this, t); + }), + (t.prototype._complete = function () { + (this.connectable._isComplete = !0), + this._unsubscribe(), + e.prototype._complete.call(this); + }), + (t.prototype._unsubscribe = function () { + var e = this.connectable; + if (e) { + this.connectable = null; + var t = e._connection; + (e._refCount = 0), + (e._subject = null), + (e._connection = null), + t && t.unsubscribe(); + } + }), + t + ); + })(i.Yc); + s.L; + }, + 20995: (e, t, r) => { + 'use strict'; + r.d(t, { aj: () => u, Ms: () => l }); + var n = r(36370), + i = r(64986), + o = r(47182), + s = r(20242), + A = r(93590), + a = r(56329), + c = {}; + function u() { + for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; + var r = null, + n = null; + return ( + (0, i.K)(e[e.length - 1]) && (n = e.pop()), + 'function' == typeof e[e.length - 1] && (r = e.pop()), + 1 === e.length && (0, o.k)(e[0]) && (e = e[0]), + (0, a.n)(e, n).lift(new l(r)) + ); + } + var l = (function () { + function e(e) { + this.resultSelector = e; + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new h(e, this.resultSelector)); + }), + e + ); + })(), + h = (function (e) { + function t(t, r) { + var n = e.call(this, t) || this; + return ( + (n.resultSelector = r), (n.active = 0), (n.values = []), (n.observables = []), n + ); + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + this.values.push(c), this.observables.push(e); + }), + (t.prototype._complete = function () { + var e = this.observables, + t = e.length; + if (0 === t) this.destination.complete(); + else { + (this.active = t), (this.toRespond = t); + for (var r = 0; r < t; r++) { + var n = e[r]; + this.add((0, A.D)(this, n, n, r)); + } + } + }), + (t.prototype.notifyComplete = function (e) { + 0 == (this.active -= 1) && this.destination.complete(); + }), + (t.prototype.notifyNext = function (e, t, r, n, i) { + var o = this.values, + s = o[r], + A = this.toRespond ? (s === c ? --this.toRespond : this.toRespond) : 0; + (o[r] = t), + 0 === A && + (this.resultSelector + ? this._tryResultSelector(o) + : this.destination.next(o.slice())); + }), + (t.prototype._tryResultSelector = function (e) { + var t; + try { + t = this.resultSelector.apply(this, e); + } catch (e) { + return void this.destination.error(e); + } + this.destination.next(t); + }), + t + ); + })(s.L); + }, + 14023: (e, t, r) => { + 'use strict'; + r.d(t, { z: () => o }); + var n = r(29686), + i = r(37339); + function o() { + for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; + return (0, i.u)()(n.of.apply(void 0, e)); + } + }, + 58721: (e, t, r) => { + 'use strict'; + r.d(t, { P: () => s }); + var n = r(98789), + i = r(85861), + o = r(61775); + function s(e) { + return new n.y(function (t) { + var r; + try { + r = e(); + } catch (e) { + return void t.error(e); + } + return (r ? (0, i.D)(r) : (0, o.c)()).subscribe(t); + }); + } + }, + 61775: (e, t, r) => { + 'use strict'; + r.d(t, { E: () => i, c: () => o }); + var n = r(98789), + i = new n.y(function (e) { + return e.complete(); + }); + function o(e) { + return e + ? (function (e) { + return new n.y(function (t) { + return e.schedule(function () { + return t.complete(); + }); + }); + })(e) + : i; + } + }, + 85861: (e, t, r) => { + 'use strict'; + r.d(t, { D: () => s }); + var n = r(98789), + i = r(92402), + o = r(14109); + function s(e, t) { + return t ? (0, o.x)(e, t) : e instanceof n.y ? e : new n.y((0, i.s)(e)); + } + }, + 56329: (e, t, r) => { + 'use strict'; + r.d(t, { n: () => s }); + var n = r(98789), + i = r(22335), + o = r(59430); + function s(e, t) { + return t ? (0, o.r)(e, t) : new n.y((0, i.V)(e)); + } + }, + 80810: (e, t, r) => { + 'use strict'; + r.d(t, { T: () => A }); + var n = r(98789), + i = r(64986), + o = r(66852), + s = r(56329); + function A() { + for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; + var r = Number.POSITIVE_INFINITY, + A = null, + a = e[e.length - 1]; + return ( + (0, i.K)(a) + ? ((A = e.pop()), e.length > 1 && 'number' == typeof e[e.length - 1] && (r = e.pop())) + : 'number' == typeof a && (r = e.pop()), + null === A && 1 === e.length && e[0] instanceof n.y ? e[0] : (0, o.J)(r)((0, s.n)(e, A)) + ); + } + }, + 29686: (e, t, r) => { + 'use strict'; + r.d(t, { of: () => s }); + var n = r(64986), + i = r(56329), + o = r(59430); + function s() { + for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; + var r = e[e.length - 1]; + return (0, n.K)(r) ? (e.pop(), (0, o.r)(e, r)) : (0, i.n)(e); + } + }, + 2332: (e, t, r) => { + 'use strict'; + r.d(t, { S3: () => a }); + var n = r(36370), + i = r(47182), + o = r(56329), + s = r(20242), + A = r(93590); + function a() { + for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; + if (1 === e.length) { + if (!(0, i.k)(e[0])) return e[0]; + e = e[0]; + } + return (0, o.n)(e, void 0).lift(new c()); + } + var c = (function () { + function e() {} + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new u(e)); + }), + e + ); + })(), + u = (function (e) { + function t(t) { + var r = e.call(this, t) || this; + return (r.hasFirst = !1), (r.observables = []), (r.subscriptions = []), r; + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + this.observables.push(e); + }), + (t.prototype._complete = function () { + var e = this.observables, + t = e.length; + if (0 === t) this.destination.complete(); + else { + for (var r = 0; r < t && !this.hasFirst; r++) { + var n = e[r], + i = (0, A.D)(this, n, n, r); + this.subscriptions && this.subscriptions.push(i), this.add(i); + } + this.observables = null; + } + }), + (t.prototype.notifyNext = function (e, t, r, n, i) { + if (!this.hasFirst) { + this.hasFirst = !0; + for (var o = 0; o < this.subscriptions.length; o++) + if (o !== r) { + var s = this.subscriptions[o]; + s.unsubscribe(), this.remove(s); + } + this.subscriptions = null; + } + this.destination.next(t); + }), + t + ); + })(s.L); + }, + 9491: (e, t, r) => { + 'use strict'; + r.d(t, { _: () => i }); + var n = r(98789); + function i(e, t) { + return t + ? new n.y(function (r) { + return t.schedule(o, 0, { error: e, subscriber: r }); + }) + : new n.y(function (t) { + return t.error(e); + }); + } + function o(e) { + var t = e.error; + e.subscriber.error(t); + } + }, + 13028: (e, t, r) => { + 'use strict'; + r.d(t, { H: () => A }); + var n = r(98789), + i = r(59873), + o = r(23820), + s = r(64986); + function A(e, t, r) { + void 0 === e && (e = 0); + var A = -1; + return ( + (0, o.k)(t) ? (A = Number(t) < 1 ? 1 : Number(t)) : (0, s.K)(t) && (r = t), + (0, s.K)(r) || (r = i.P), + new n.y(function (t) { + var n = (0, o.k)(e) ? e : +e - r.now(); + return r.schedule(a, n, { index: 0, period: A, subscriber: t }); + }) + ); + } + function a(e) { + var t = e.index, + r = e.period, + n = e.subscriber; + if ((n.next(t), !n.closed)) { + if (-1 === r) return n.complete(); + (e.index = t + 1), this.schedule(e, r); + } + } + }, + 21336: (e, t, r) => { + 'use strict'; + r.d(t, { $R: () => u, mx: () => l }); + var n = r(36370), + i = r(56329), + o = r(47182), + s = r(28732), + A = r(20242), + a = r(93590), + c = r(8094); + function u() { + for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; + var r = e[e.length - 1]; + return 'function' == typeof r && e.pop(), (0, i.n)(e, void 0).lift(new l(r)); + } + var l = (function () { + function e(e) { + this.resultSelector = e; + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new h(e, this.resultSelector)); + }), + e + ); + })(), + h = (function (e) { + function t(t, r, n) { + void 0 === n && (n = Object.create(null)); + var i = e.call(this, t) || this; + return ( + (i.iterators = []), + (i.active = 0), + (i.resultSelector = 'function' == typeof r ? r : null), + (i.values = n), + i + ); + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + var t = this.iterators; + (0, o.k)(e) + ? t.push(new f(e)) + : 'function' == typeof e[c.hZ] + ? t.push(new g(e[c.hZ]())) + : t.push(new p(this.destination, this, e)); + }), + (t.prototype._complete = function () { + var e = this.iterators, + t = e.length; + if ((this.unsubscribe(), 0 !== t)) { + this.active = t; + for (var r = 0; r < t; r++) { + var n = e[r]; + if (n.stillUnsubscribed) this.destination.add(n.subscribe(n, r)); + else this.active--; + } + } else this.destination.complete(); + }), + (t.prototype.notifyInactive = function () { + this.active--, 0 === this.active && this.destination.complete(); + }), + (t.prototype.checkIterators = function () { + for ( + var e = this.iterators, t = e.length, r = this.destination, n = 0; + n < t; + n++ + ) { + if ('function' == typeof (s = e[n]).hasValue && !s.hasValue()) return; + } + var i = !1, + o = []; + for (n = 0; n < t; n++) { + var s, + A = (s = e[n]).next(); + if ((s.hasCompleted() && (i = !0), A.done)) return void r.complete(); + o.push(A.value); + } + this.resultSelector ? this._tryresultSelector(o) : r.next(o), i && r.complete(); + }), + (t.prototype._tryresultSelector = function (e) { + var t; + try { + t = this.resultSelector.apply(this, e); + } catch (e) { + return void this.destination.error(e); + } + this.destination.next(t); + }), + t + ); + })(s.L), + g = (function () { + function e(e) { + (this.iterator = e), (this.nextResult = e.next()); + } + return ( + (e.prototype.hasValue = function () { + return !0; + }), + (e.prototype.next = function () { + var e = this.nextResult; + return (this.nextResult = this.iterator.next()), e; + }), + (e.prototype.hasCompleted = function () { + var e = this.nextResult; + return e && e.done; + }), + e + ); + })(), + f = (function () { + function e(e) { + (this.array = e), (this.index = 0), (this.length = 0), (this.length = e.length); + } + return ( + (e.prototype[c.hZ] = function () { + return this; + }), + (e.prototype.next = function (e) { + var t = this.index++, + r = this.array; + return t < this.length ? { value: r[t], done: !1 } : { value: null, done: !0 }; + }), + (e.prototype.hasValue = function () { + return this.array.length > this.index; + }), + (e.prototype.hasCompleted = function () { + return this.array.length === this.index; + }), + e + ); + })(), + p = (function (e) { + function t(t, r, n) { + var i = e.call(this, t) || this; + return ( + (i.parent = r), + (i.observable = n), + (i.stillUnsubscribed = !0), + (i.buffer = []), + (i.isComplete = !1), + i + ); + } + return ( + n.ZT(t, e), + (t.prototype[c.hZ] = function () { + return this; + }), + (t.prototype.next = function () { + var e = this.buffer; + return 0 === e.length && this.isComplete + ? { value: null, done: !0 } + : { value: e.shift(), done: !1 }; + }), + (t.prototype.hasValue = function () { + return this.buffer.length > 0; + }), + (t.prototype.hasCompleted = function () { + return 0 === this.buffer.length && this.isComplete; + }), + (t.prototype.notifyComplete = function () { + this.buffer.length > 0 + ? ((this.isComplete = !0), this.parent.notifyInactive()) + : this.destination.complete(); + }), + (t.prototype.notifyNext = function (e, t, r, n, i) { + this.buffer.push(t), this.parent.checkIterators(); + }), + (t.prototype.subscribe = function (e, t) { + return (0, a.D)(this, this.observable, this, t); + }), + t + ); + })(A.L); + }, + 37339: (e, t, r) => { + 'use strict'; + r.d(t, { u: () => i }); + var n = r(66852); + function i() { + return (0, n.J)(1); + } + }, + 39063: (e, t, r) => { + 'use strict'; + r.d(t, { h: () => o }); + var n = r(36370), + i = r(28732); + function o(e, t) { + return function (r) { + return r.lift(new s(e, t)); + }; + } + var s = (function () { + function e(e, t) { + (this.predicate = e), (this.thisArg = t); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new A(e, this.predicate, this.thisArg)); + }), + e + ); + })(), + A = (function (e) { + function t(t, r, n) { + var i = e.call(this, t) || this; + return (i.predicate = r), (i.thisArg = n), (i.count = 0), i; + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + var t; + try { + t = this.predicate.call(this.thisArg, e, this.count++); + } catch (e) { + return void this.destination.error(e); + } + t && this.destination.next(e); + }), + t + ); + })(i.L); + }, + 92564: (e, t, r) => { + 'use strict'; + r.d(t, { v: () => a, T: () => h }); + var n = r(36370), + i = r(28732), + o = r(73504), + s = r(98789), + A = r(92915); + function a(e, t, r, n) { + return function (i) { + return i.lift(new c(e, t, r, n)); + }; + } + var c = (function () { + function e(e, t, r, n) { + (this.keySelector = e), + (this.elementSelector = t), + (this.durationSelector = r), + (this.subjectSelector = n); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe( + new u( + e, + this.keySelector, + this.elementSelector, + this.durationSelector, + this.subjectSelector + ) + ); + }), + e + ); + })(), + u = (function (e) { + function t(t, r, n, i, o) { + var s = e.call(this, t) || this; + return ( + (s.keySelector = r), + (s.elementSelector = n), + (s.durationSelector = i), + (s.subjectSelector = o), + (s.groups = null), + (s.attemptedToUnsubscribe = !1), + (s.count = 0), + s + ); + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + var t; + try { + t = this.keySelector(e); + } catch (e) { + return void this.error(e); + } + this._group(e, t); + }), + (t.prototype._group = function (e, t) { + var r = this.groups; + r || (r = this.groups = new Map()); + var n, + i = r.get(t); + if (this.elementSelector) + try { + n = this.elementSelector(e); + } catch (e) { + this.error(e); + } + else n = e; + if (!i) { + (i = this.subjectSelector ? this.subjectSelector() : new A.xQ()), r.set(t, i); + var o = new h(t, i, this); + if ((this.destination.next(o), this.durationSelector)) { + var s = void 0; + try { + s = this.durationSelector(new h(t, i)); + } catch (e) { + return void this.error(e); + } + this.add(s.subscribe(new l(t, i, this))); + } + } + i.closed || i.next(n); + }), + (t.prototype._error = function (e) { + var t = this.groups; + t && + (t.forEach(function (t, r) { + t.error(e); + }), + t.clear()), + this.destination.error(e); + }), + (t.prototype._complete = function () { + var e = this.groups; + e && + (e.forEach(function (e, t) { + e.complete(); + }), + e.clear()), + this.destination.complete(); + }), + (t.prototype.removeGroup = function (e) { + this.groups.delete(e); + }), + (t.prototype.unsubscribe = function () { + this.closed || + ((this.attemptedToUnsubscribe = !0), + 0 === this.count && e.prototype.unsubscribe.call(this)); + }), + t + ); + })(i.L), + l = (function (e) { + function t(t, r, n) { + var i = e.call(this, r) || this; + return (i.key = t), (i.group = r), (i.parent = n), i; + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + this.complete(); + }), + (t.prototype._unsubscribe = function () { + var e = this.parent, + t = this.key; + (this.key = this.parent = null), e && e.removeGroup(t); + }), + t + ); + })(i.L), + h = (function (e) { + function t(t, r, n) { + var i = e.call(this) || this; + return (i.key = t), (i.groupSubject = r), (i.refCountSubscription = n), i; + } + return ( + n.ZT(t, e), + (t.prototype._subscribe = function (e) { + var t = new o.w(), + r = this.refCountSubscription, + n = this.groupSubject; + return r && !r.closed && t.add(new g(r)), t.add(n.subscribe(e)), t; + }), + t + ); + })(s.y), + g = (function (e) { + function t(t) { + var r = e.call(this) || this; + return (r.parent = t), t.count++, r; + } + return ( + n.ZT(t, e), + (t.prototype.unsubscribe = function () { + var t = this.parent; + t.closed || + this.closed || + (e.prototype.unsubscribe.call(this), + (t.count -= 1), + 0 === t.count && t.attemptedToUnsubscribe && t.unsubscribe()); + }), + t + ); + })(o.w); + }, + 98082: (e, t, r) => { + 'use strict'; + r.d(t, { U: () => o }); + var n = r(36370), + i = r(28732); + function o(e, t) { + return function (r) { + if ('function' != typeof e) + throw new TypeError('argument is not a function. Are you looking for `mapTo()`?'); + return r.lift(new s(e, t)); + }; + } + var s = (function () { + function e(e, t) { + (this.project = e), (this.thisArg = t); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new A(e, this.project, this.thisArg)); + }), + e + ); + })(), + A = (function (e) { + function t(t, r, n) { + var i = e.call(this, t) || this; + return (i.project = r), (i.count = 0), (i.thisArg = n || i), i; + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + var t; + try { + t = this.project.call(this.thisArg, e, this.count++); + } catch (e) { + return void this.destination.error(e); + } + this.destination.next(t); + }), + t + ); + })(i.L); + }, + 66852: (e, t, r) => { + 'use strict'; + r.d(t, { J: () => o }); + var n = r(20259), + i = r(80433); + function o(e) { + return void 0 === e && (e = Number.POSITIVE_INFINITY), (0, n.zg)(i.y, e); + } + }, + 20259: (e, t, r) => { + 'use strict'; + r.d(t, { zg: () => c }); + var n = r(36370), + i = r(93590), + o = r(20242), + s = r(28907), + A = r(98082), + a = r(85861); + function c(e, t, r) { + return ( + void 0 === r && (r = Number.POSITIVE_INFINITY), + 'function' == typeof t + ? function (n) { + return n.pipe( + c(function (r, n) { + return (0, a.D)(e(r, n)).pipe( + (0, A.U)(function (e, i) { + return t(r, e, n, i); + }) + ); + }, r) + ); + } + : ('number' == typeof t && (r = t), + function (t) { + return t.lift(new u(e, r)); + }) + ); + } + var u = (function () { + function e(e, t) { + void 0 === t && (t = Number.POSITIVE_INFINITY), + (this.project = e), + (this.concurrent = t); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new l(e, this.project, this.concurrent)); + }), + e + ); + })(), + l = (function (e) { + function t(t, r, n) { + void 0 === n && (n = Number.POSITIVE_INFINITY); + var i = e.call(this, t) || this; + return ( + (i.project = r), + (i.concurrent = n), + (i.hasCompleted = !1), + (i.buffer = []), + (i.active = 0), + (i.index = 0), + i + ); + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + this.active < this.concurrent ? this._tryNext(e) : this.buffer.push(e); + }), + (t.prototype._tryNext = function (e) { + var t, + r = this.index++; + try { + t = this.project(e, r); + } catch (e) { + return void this.destination.error(e); + } + this.active++, this._innerSub(t, e, r); + }), + (t.prototype._innerSub = function (e, t, r) { + var n = new s.d(this, t, r), + o = this.destination; + o.add(n); + var A = (0, i.D)(this, e, void 0, void 0, n); + A !== n && o.add(A); + }), + (t.prototype._complete = function () { + (this.hasCompleted = !0), + 0 === this.active && 0 === this.buffer.length && this.destination.complete(), + this.unsubscribe(); + }), + (t.prototype.notifyNext = function (e, t, r, n, i) { + this.destination.next(t); + }), + (t.prototype.notifyComplete = function (e) { + var t = this.buffer; + this.remove(e), + this.active--, + t.length > 0 + ? this._next(t.shift()) + : 0 === this.active && this.hasCompleted && this.destination.complete(); + }), + t + ); + })(o.L); + }, + 32746: (e, t, r) => { + 'use strict'; + r.d(t, { QV: () => s, ht: () => a }); + var n = r(36370), + i = r(28732), + o = r(4094); + function s(e, t) { + return ( + void 0 === t && (t = 0), + function (r) { + return r.lift(new A(e, t)); + } + ); + } + var A = (function () { + function e(e, t) { + void 0 === t && (t = 0), (this.scheduler = e), (this.delay = t); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new a(e, this.scheduler, this.delay)); + }), + e + ); + })(), + a = (function (e) { + function t(t, r, n) { + void 0 === n && (n = 0); + var i = e.call(this, t) || this; + return (i.scheduler = r), (i.delay = n), i; + } + return ( + n.ZT(t, e), + (t.dispatch = function (e) { + var t = e.notification, + r = e.destination; + t.observe(r), this.unsubscribe(); + }), + (t.prototype.scheduleMessage = function (e) { + this.destination.add( + this.scheduler.schedule(t.dispatch, this.delay, new c(e, this.destination)) + ); + }), + (t.prototype._next = function (e) { + this.scheduleMessage(o.P.createNext(e)); + }), + (t.prototype._error = function (e) { + this.scheduleMessage(o.P.createError(e)), this.unsubscribe(); + }), + (t.prototype._complete = function () { + this.scheduleMessage(o.P.createComplete()), this.unsubscribe(); + }), + t + ); + })(i.L), + c = (function () { + return function (e, t) { + (this.notification = e), (this.destination = t); + }; + })(); + }, + 97566: (e, t, r) => { + 'use strict'; + r.d(t, { x: () => o }); + var n = r(36370), + i = r(28732); + function o() { + return function (e) { + return e.lift(new s(e)); + }; + } + var s = (function () { + function e(e) { + this.connectable = e; + } + return ( + (e.prototype.call = function (e, t) { + var r = this.connectable; + r._refCount++; + var n = new A(e, r), + i = t.subscribe(n); + return n.closed || (n.connection = r.connect()), i; + }), + e + ); + })(), + A = (function (e) { + function t(t, r) { + var n = e.call(this, t) || this; + return (n.connectable = r), n; + } + return ( + n.ZT(t, e), + (t.prototype._unsubscribe = function () { + var e = this.connectable; + if (e) { + this.connectable = null; + var t = e._refCount; + if (t <= 0) this.connection = null; + else if (((e._refCount = t - 1), t > 1)) this.connection = null; + else { + var r = this.connection, + n = e._connection; + (this.connection = null), !n || (r && n !== r) || n.unsubscribe(); + } + } else this.connection = null; + }), + t + ); + })(i.L); + }, + 59430: (e, t, r) => { + 'use strict'; + r.d(t, { r: () => o }); + var n = r(98789), + i = r(73504); + function o(e, t) { + return new n.y(function (r) { + var n = new i.w(), + o = 0; + return ( + n.add( + t.schedule(function () { + o !== e.length + ? (r.next(e[o++]), r.closed || n.add(this.schedule())) + : r.complete(); + }) + ), + n + ); + }); + } + }, + 14109: (e, t, r) => { + 'use strict'; + r.d(t, { x: () => u }); + var n = r(98789), + i = r(73504), + o = r(68511); + var s = r(59430), + A = r(8094); + var a = r(79886), + c = r(61997); + function u(e, t) { + if (null != e) { + if ( + (function (e) { + return e && 'function' == typeof e[o.L]; + })(e) + ) + return (function (e, t) { + return new n.y(function (r) { + var n = new i.w(); + return ( + n.add( + t.schedule(function () { + var i = e[o.L](); + n.add( + i.subscribe({ + next: function (e) { + n.add( + t.schedule(function () { + return r.next(e); + }) + ); + }, + error: function (e) { + n.add( + t.schedule(function () { + return r.error(e); + }) + ); + }, + complete: function () { + n.add( + t.schedule(function () { + return r.complete(); + }) + ); + }, + }) + ); + }) + ), + n + ); + }); + })(e, t); + if ((0, a.t)(e)) + return (function (e, t) { + return new n.y(function (r) { + var n = new i.w(); + return ( + n.add( + t.schedule(function () { + return e.then( + function (e) { + n.add( + t.schedule(function () { + r.next(e), + n.add( + t.schedule(function () { + return r.complete(); + }) + ); + }) + ); + }, + function (e) { + n.add( + t.schedule(function () { + return r.error(e); + }) + ); + } + ); + }) + ), + n + ); + }); + })(e, t); + if ((0, c.z)(e)) return (0, s.r)(e, t); + if ( + (function (e) { + return e && 'function' == typeof e[A.hZ]; + })(e) || + 'string' == typeof e + ) + return (function (e, t) { + if (!e) throw new Error('Iterable cannot be null'); + return new n.y(function (r) { + var n, + o = new i.w(); + return ( + o.add(function () { + n && 'function' == typeof n.return && n.return(); + }), + o.add( + t.schedule(function () { + (n = e[A.hZ]()), + o.add( + t.schedule(function () { + if (!r.closed) { + var e, t; + try { + var i = n.next(); + (e = i.value), (t = i.done); + } catch (e) { + return void r.error(e); + } + t ? r.complete() : (r.next(e), this.schedule()); + } + }) + ); + }) + ), + o + ); + }); + })(e, t); + } + throw new TypeError(((null !== e && typeof e) || e) + ' is not observable'); + } + }, + 99944: (e, t, r) => { + 'use strict'; + r.d(t, { o: () => i }); + var n = r(36370), + i = (function (e) { + function t(t, r) { + var n = e.call(this, t, r) || this; + return (n.scheduler = t), (n.work = r), (n.pending = !1), n; + } + return ( + n.ZT(t, e), + (t.prototype.schedule = function (e, t) { + if ((void 0 === t && (t = 0), this.closed)) return this; + this.state = e; + var r = this.id, + n = this.scheduler; + return ( + null != r && (this.id = this.recycleAsyncId(n, r, t)), + (this.pending = !0), + (this.delay = t), + (this.id = this.id || this.requestAsyncId(n, this.id, t)), + this + ); + }), + (t.prototype.requestAsyncId = function (e, t, r) { + return void 0 === r && (r = 0), setInterval(e.flush.bind(e, this), r); + }), + (t.prototype.recycleAsyncId = function (e, t, r) { + if ( + (void 0 === r && (r = 0), null !== r && this.delay === r && !1 === this.pending) + ) + return t; + clearInterval(t); + }), + (t.prototype.execute = function (e, t) { + if (this.closed) return new Error('executing a cancelled action'); + this.pending = !1; + var r = this._execute(e, t); + if (r) return r; + !1 === this.pending && + null != this.id && + (this.id = this.recycleAsyncId(this.scheduler, this.id, null)); + }), + (t.prototype._execute = function (e, t) { + var r = !1, + n = void 0; + try { + this.work(e); + } catch (e) { + (r = !0), (n = (!!e && e) || new Error(e)); + } + if (r) return this.unsubscribe(), n; + }), + (t.prototype._unsubscribe = function () { + var e = this.id, + t = this.scheduler, + r = t.actions, + n = r.indexOf(this); + (this.work = null), + (this.state = null), + (this.pending = !1), + (this.scheduler = null), + -1 !== n && r.splice(n, 1), + null != e && (this.id = this.recycleAsyncId(t, e, null)), + (this.delay = null); + }), + t + ); + })( + (function (e) { + function t(t, r) { + return e.call(this) || this; + } + return ( + n.ZT(t, e), + (t.prototype.schedule = function (e, t) { + return void 0 === t && (t = 0), this; + }), + t + ); + })(r(73504).w) + ); + }, + 43548: (e, t, r) => { + 'use strict'; + r.d(t, { v: () => o }); + var n = r(36370), + i = r(42476), + o = (function (e) { + function t(r, n) { + void 0 === n && (n = i.b.now); + var o = + e.call(this, r, function () { + return t.delegate && t.delegate !== o ? t.delegate.now() : n(); + }) || this; + return (o.actions = []), (o.active = !1), (o.scheduled = void 0), o; + } + return ( + n.ZT(t, e), + (t.prototype.schedule = function (r, n, i) { + return ( + void 0 === n && (n = 0), + t.delegate && t.delegate !== this + ? t.delegate.schedule(r, n, i) + : e.prototype.schedule.call(this, r, n, i) + ); + }), + (t.prototype.flush = function (e) { + var t = this.actions; + if (this.active) t.push(e); + else { + var r; + this.active = !0; + do { + if ((r = e.execute(e.state, e.delay))) break; + } while ((e = t.shift())); + if (((this.active = !1), r)) { + for (; (e = t.shift()); ) e.unsubscribe(); + throw r; + } + } + }), + t + ); + })(i.b); + }, + 94097: (e, t, r) => { + 'use strict'; + r.d(t, { e: () => l }); + var n = r(36370), + i = 1, + o = (function () { + return Promise.resolve(); + })(), + s = {}; + function A(e) { + return e in s && (delete s[e], !0); + } + var a = function (e) { + var t = i++; + return ( + (s[t] = !0), + o.then(function () { + return A(t) && e(); + }), + t + ); + }, + c = function (e) { + A(e); + }, + u = (function (e) { + function t(t, r) { + var n = e.call(this, t, r) || this; + return (n.scheduler = t), (n.work = r), n; + } + return ( + n.ZT(t, e), + (t.prototype.requestAsyncId = function (t, r, n) { + return ( + void 0 === n && (n = 0), + null !== n && n > 0 + ? e.prototype.requestAsyncId.call(this, t, r, n) + : (t.actions.push(this), + t.scheduled || (t.scheduled = a(t.flush.bind(t, null)))) + ); + }), + (t.prototype.recycleAsyncId = function (t, r, n) { + if ( + (void 0 === n && (n = 0), (null !== n && n > 0) || (null === n && this.delay > 0)) + ) + return e.prototype.recycleAsyncId.call(this, t, r, n); + 0 === t.actions.length && (c(r), (t.scheduled = void 0)); + }), + t + ); + })(r(99944).o), + l = new ((function (e) { + function t() { + return (null !== e && e.apply(this, arguments)) || this; + } + return ( + n.ZT(t, e), + (t.prototype.flush = function (e) { + (this.active = !0), (this.scheduled = void 0); + var t, + r = this.actions, + n = -1, + i = r.length; + e = e || r.shift(); + do { + if ((t = e.execute(e.state, e.delay))) break; + } while (++n < i && (e = r.shift())); + if (((this.active = !1), t)) { + for (; ++n < i && (e = r.shift()); ) e.unsubscribe(); + throw t; + } + }), + t + ); + })(r(43548).v))(u); + }, + 59873: (e, t, r) => { + 'use strict'; + r.d(t, { P: () => i }); + var n = r(99944), + i = new (r(43548).v)(n.o); + }, + 55031: (e, t, r) => { + 'use strict'; + r.d(t, { c: () => o }); + var n = r(36370), + i = (function (e) { + function t(t, r) { + var n = e.call(this, t, r) || this; + return (n.scheduler = t), (n.work = r), n; + } + return ( + n.ZT(t, e), + (t.prototype.schedule = function (t, r) { + return ( + void 0 === r && (r = 0), + r > 0 + ? e.prototype.schedule.call(this, t, r) + : ((this.delay = r), (this.state = t), this.scheduler.flush(this), this) + ); + }), + (t.prototype.execute = function (t, r) { + return r > 0 || this.closed + ? e.prototype.execute.call(this, t, r) + : this._execute(t, r); + }), + (t.prototype.requestAsyncId = function (t, r, n) { + return ( + void 0 === n && (n = 0), + (null !== n && n > 0) || (null === n && this.delay > 0) + ? e.prototype.requestAsyncId.call(this, t, r, n) + : t.flush(this) + ); + }), + t + ); + })(r(99944).o), + o = new ((function (e) { + function t() { + return (null !== e && e.apply(this, arguments)) || this; + } + return n.ZT(t, e), t; + })(r(43548).v))(i); + }, + 8094: (e, t, r) => { + 'use strict'; + function n() { + return 'function' == typeof Symbol && Symbol.iterator ? Symbol.iterator : '@@iterator'; + } + r.d(t, { hZ: () => i }); + var i = n(); + }, + 68511: (e, t, r) => { + 'use strict'; + r.d(t, { L: () => n }); + var n = (function () { + return ('function' == typeof Symbol && Symbol.observable) || '@@observable'; + })(); + }, + 92515: (e, t, r) => { + 'use strict'; + r.d(t, { b: () => n }); + var n = (function () { + return 'function' == typeof Symbol + ? Symbol('rxSubscriber') + : '@@rxSubscriber_' + Math.random(); + })(); + }, + 3551: (e, t, r) => { + 'use strict'; + r.d(t, { W: () => n }); + var n = (function () { + function e() { + return ( + Error.call(this), + (this.message = 'argument out of range'), + (this.name = 'ArgumentOutOfRangeError'), + this + ); + } + return (e.prototype = Object.create(Error.prototype)), e; + })(); + }, + 30943: (e, t, r) => { + 'use strict'; + r.d(t, { K: () => n }); + var n = (function () { + function e() { + return ( + Error.call(this), + (this.message = 'no elements in sequence'), + (this.name = 'EmptyError'), + this + ); + } + return (e.prototype = Object.create(Error.prototype)), e; + })(); + }, + 90265: (e, t, r) => { + 'use strict'; + r.d(t, { N: () => n }); + var n = (function () { + function e() { + return ( + Error.call(this), + (this.message = 'object unsubscribed'), + (this.name = 'ObjectUnsubscribedError'), + this + ); + } + return (e.prototype = Object.create(Error.prototype)), e; + })(); + }, + 87299: (e, t, r) => { + 'use strict'; + r.d(t, { W: () => n }); + var n = (function () { + function e() { + return ( + Error.call(this), + (this.message = 'Timeout has occurred'), + (this.name = 'TimeoutError'), + this + ); + } + return (e.prototype = Object.create(Error.prototype)), e; + })(); + }, + 43347: (e, t, r) => { + 'use strict'; + r.d(t, { B: () => n }); + var n = (function () { + function e(e) { + return ( + Error.call(this), + (this.message = e + ? e.length + + ' errors occurred during unsubscription:\n' + + e + .map(function (e, t) { + return t + 1 + ') ' + e.toString(); + }) + .join('\n ') + : ''), + (this.name = 'UnsubscriptionError'), + (this.errors = e), + this + ); + } + return (e.prototype = Object.create(Error.prototype)), e; + })(); + }, + 58880: (e, t, r) => { + 'use strict'; + r.d(t, { _: () => i }); + var n = r(28732); + function i(e) { + for (; e; ) { + var t = e, + r = t.closed, + i = t.destination, + o = t.isStopped; + if (r || o) return !1; + e = i && i instanceof n.L ? i : null; + } + return !0; + } + }, + 13109: (e, t, r) => { + 'use strict'; + function n(e) { + setTimeout(function () { + throw e; + }, 0); + } + r.d(t, { z: () => n }); + }, + 80433: (e, t, r) => { + 'use strict'; + function n(e) { + return e; + } + r.d(t, { y: () => n }); + }, + 47182: (e, t, r) => { + 'use strict'; + r.d(t, { k: () => n }); + var n = (function () { + return ( + Array.isArray || + function (e) { + return e && 'number' == typeof e.length; + } + ); + })(); + }, + 61997: (e, t, r) => { + 'use strict'; + r.d(t, { z: () => n }); + var n = function (e) { + return e && 'number' == typeof e.length && 'function' != typeof e; + }; + }, + 38394: (e, t, r) => { + 'use strict'; + function n(e) { + return 'function' == typeof e; + } + r.d(t, { m: () => n }); + }, + 23820: (e, t, r) => { + 'use strict'; + r.d(t, { k: () => i }); + var n = r(47182); + function i(e) { + return !(0, n.k)(e) && e - parseFloat(e) + 1 >= 0; + } + }, + 29929: (e, t, r) => { + 'use strict'; + function n(e) { + return null !== e && 'object' == typeof e; + } + r.d(t, { K: () => n }); + }, + 79886: (e, t, r) => { + 'use strict'; + function n(e) { + return !!e && 'function' != typeof e.subscribe && 'function' == typeof e.then; + } + r.d(t, { t: () => n }); + }, + 64986: (e, t, r) => { + 'use strict'; + function n(e) { + return e && 'function' == typeof e.schedule; + } + r.d(t, { K: () => n }); + }, + 57781: (e, t, r) => { + 'use strict'; + function n() {} + r.d(t, { Z: () => n }); + }, + 65868: (e, t, r) => { + 'use strict'; + function n(e, t) { + function r() { + return !r.pred.apply(r.thisArg, arguments); + } + return (r.pred = e), (r.thisArg = t), r; + } + r.d(t, { f: () => n }); + }, + 97836: (e, t, r) => { + 'use strict'; + r.d(t, { z: () => i, U: () => o }); + var n = r(57781); + function i() { + for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; + return o(e); + } + function o(e) { + return e + ? 1 === e.length + ? e[0] + : function (t) { + return e.reduce(function (e, t) { + return t(e); + }, t); + } + : n.Z; + } + }, + 92402: (e, t, r) => { + 'use strict'; + r.d(t, { s: () => u }); + var n = r(22335), + i = r(13109), + o = r(8094), + s = r(68511), + A = r(61997), + a = r(79886), + c = r(29929), + u = function (e) { + if (e && 'function' == typeof e[s.L]) + return ( + (u = e), + function (e) { + var t = u[s.L](); + if ('function' != typeof t.subscribe) + throw new TypeError( + 'Provided object does not correctly implement Symbol.observable' + ); + return t.subscribe(e); + } + ); + if ((0, A.z)(e)) return (0, n.V)(e); + if ((0, a.t)(e)) + return ( + (r = e), + function (e) { + return ( + r + .then( + function (t) { + e.closed || (e.next(t), e.complete()); + }, + function (t) { + return e.error(t); + } + ) + .then(null, i.z), + e + ); + } + ); + if (e && 'function' == typeof e[o.hZ]) + return ( + (t = e), + function (e) { + for (var r = t[o.hZ](); ; ) { + var n = r.next(); + if (n.done) { + e.complete(); + break; + } + if ((e.next(n.value), e.closed)) break; + } + return ( + 'function' == typeof r.return && + e.add(function () { + r.return && r.return(); + }), + e + ); + } + ); + var t, + r, + u, + l = (0, c.K)(e) ? 'an invalid object' : "'" + e + "'"; + throw new TypeError( + 'You provided ' + + l + + ' where a stream was expected. You can provide an Observable, Promise, Array, or Iterable.' + ); + }; + }, + 22335: (e, t, r) => { + 'use strict'; + r.d(t, { V: () => n }); + var n = function (e) { + return function (t) { + for (var r = 0, n = e.length; r < n && !t.closed; r++) t.next(e[r]); + t.complete(); + }; + }; + }, + 93590: (e, t, r) => { + 'use strict'; + r.d(t, { D: () => s }); + var n = r(28907), + i = r(92402), + o = r(98789); + function s(e, t, r, s, A) { + if ((void 0 === A && (A = new n.d(e, r, s)), !A.closed)) + return t instanceof o.y ? t.subscribe(A) : (0, i.s)(t)(A); + } + }, + 20683: (e, t, r) => { + 'use strict'; + r.r(t), + r.d(t, { + audit: () => s, + auditTime: () => l, + buffer: () => h, + bufferCount: () => d, + bufferTime: () => y, + bufferToggle: () => k, + bufferWhen: () => M, + catchError: () => L, + combineAll: () => _, + combineLatest: () => Y, + concat: () => J, + concatAll: () => H.u, + concatMap: () => z, + concatMapTo: () => W, + count: () => V, + debounce: () => $, + debounceTime: () => re, + defaultIfEmpty: () => se, + delay: () => le, + delayWhen: () => de, + dematerialize: () => ye, + distinct: () => Qe, + distinctUntilChanged: () => be, + distinctUntilKeyChanged: () => xe, + elementAt: () => je, + endWith: () => Ge, + every: () => Je, + exhaust: () => ze, + exhaustMap: () => Ze, + expand: () => tt, + filter: () => Me.h, + finalize: () => it, + find: () => At, + findIndex: () => ut, + first: () => ht, + groupBy: () => gt.v, + ignoreElements: () => ft, + isEmpty: () => Ct, + last: () => Bt, + map: () => Xe.U, + mapTo: () => Qt, + materialize: () => bt, + max: () => Kt, + merge: () => Tt, + mergeAll: () => Pt.J, + mergeMap: () => q.zg, + flatMap: () => q.zg, + mergeMapTo: () => Ut, + mergeScan: () => _t, + min: () => Yt, + multicast: () => Jt, + observeOn: () => qt.QV, + onErrorResumeNext: () => zt, + pairwise: () => Xt, + partition: () => tr, + pluck: () => rr, + publish: () => or, + publishBehavior: () => Ar, + publishLast: () => cr, + publishReplay: () => lr, + race: () => gr, + reduce: () => Rt, + repeat: () => fr, + repeatWhen: () => Cr, + retry: () => mr, + retryWhen: () => Br, + refCount: () => Dr.x, + sample: () => br, + sampleTime: () => xr, + scan: () => xt, + sequenceEqual: () => Rr, + share: () => Ur, + shareReplay: () => _r, + single: () => Or, + skip: () => Gr, + skipLast: () => qr, + skipUntil: () => Vr, + skipWhile: () => $r, + startWith: () => rn, + subscribeOn: () => An, + switchAll: () => hn, + switchMap: () => cn, + switchMapTo: () => gn, + take: () => Ue, + takeLast: () => mt, + takeUntil: () => fn, + takeWhile: () => Cn, + tap: () => wn, + throttle: () => Dn, + throttleTime: () => kn, + throwIfEmpty: () => Re, + timeInterval: () => Rn, + timeout: () => On, + timeoutWith: () => Tn, + timestamp: () => jn, + toArray: () => Jn, + window: () => Hn, + windowCount: () => Wn, + windowTime: () => Zn, + windowToggle: () => oi, + windowWhen: () => ai, + withLatestFrom: () => li, + zip: () => pi, + zipAll: () => di, + }); + var n = r(36370), + i = r(20242), + o = r(93590); + function s(e) { + return function (t) { + return t.lift(new A(e)); + }; + } + var A = (function () { + function e(e) { + this.durationSelector = e; + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new a(e, this.durationSelector)); + }), + e + ); + })(), + a = (function (e) { + function t(t, r) { + var n = e.call(this, t) || this; + return (n.durationSelector = r), (n.hasValue = !1), n; + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + if (((this.value = e), (this.hasValue = !0), !this.throttled)) { + var t = void 0; + try { + t = (0, this.durationSelector)(e); + } catch (e) { + return this.destination.error(e); + } + var r = (0, o.D)(this, t); + !r || r.closed ? this.clearThrottle() : this.add((this.throttled = r)); + } + }), + (t.prototype.clearThrottle = function () { + var e = this.value, + t = this.hasValue, + r = this.throttled; + r && (this.remove(r), (this.throttled = null), r.unsubscribe()), + t && ((this.value = null), (this.hasValue = !1), this.destination.next(e)); + }), + (t.prototype.notifyNext = function (e, t, r, n) { + this.clearThrottle(); + }), + (t.prototype.notifyComplete = function () { + this.clearThrottle(); + }), + t + ); + })(i.L), + c = r(59873), + u = r(13028); + function l(e, t) { + return ( + void 0 === t && (t = c.P), + s(function () { + return (0, u.H)(e, t); + }) + ); + } + function h(e) { + return function (t) { + return t.lift(new g(e)); + }; + } + var g = (function () { + function e(e) { + this.closingNotifier = e; + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new f(e, this.closingNotifier)); + }), + e + ); + })(), + f = (function (e) { + function t(t, r) { + var n = e.call(this, t) || this; + return (n.buffer = []), n.add((0, o.D)(n, r)), n; + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + this.buffer.push(e); + }), + (t.prototype.notifyNext = function (e, t, r, n, i) { + var o = this.buffer; + (this.buffer = []), this.destination.next(o); + }), + t + ); + })(i.L), + p = r(28732); + function d(e, t) { + return ( + void 0 === t && (t = null), + function (r) { + return r.lift(new C(e, t)); + } + ); + } + var C = (function () { + function e(e, t) { + (this.bufferSize = e), + (this.startBufferEvery = t), + (this.subscriberClass = t && e !== t ? I : E); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe( + new this.subscriberClass(e, this.bufferSize, this.startBufferEvery) + ); + }), + e + ); + })(), + E = (function (e) { + function t(t, r) { + var n = e.call(this, t) || this; + return (n.bufferSize = r), (n.buffer = []), n; + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + var t = this.buffer; + t.push(e), + t.length == this.bufferSize && (this.destination.next(t), (this.buffer = [])); + }), + (t.prototype._complete = function () { + var t = this.buffer; + t.length > 0 && this.destination.next(t), e.prototype._complete.call(this); + }), + t + ); + })(p.L), + I = (function (e) { + function t(t, r, n) { + var i = e.call(this, t) || this; + return ( + (i.bufferSize = r), (i.startBufferEvery = n), (i.buffers = []), (i.count = 0), i + ); + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + var t = this.bufferSize, + r = this.startBufferEvery, + n = this.buffers, + i = this.count; + this.count++, i % r == 0 && n.push([]); + for (var o = n.length; o--; ) { + var s = n[o]; + s.push(e), s.length === t && (n.splice(o, 1), this.destination.next(s)); + } + }), + (t.prototype._complete = function () { + for (var t = this.buffers, r = this.destination; t.length > 0; ) { + var n = t.shift(); + n.length > 0 && r.next(n); + } + e.prototype._complete.call(this); + }), + t + ); + })(p.L), + m = r(64986); + function y(e) { + var t = arguments.length, + r = c.P; + (0, m.K)(arguments[arguments.length - 1]) && ((r = arguments[arguments.length - 1]), t--); + var n = null; + t >= 2 && (n = arguments[1]); + var i = Number.POSITIVE_INFINITY; + return ( + t >= 3 && (i = arguments[2]), + function (t) { + return t.lift(new w(e, n, i, r)); + } + ); + } + var w = (function () { + function e(e, t, r, n) { + (this.bufferTimeSpan = e), + (this.bufferCreationInterval = t), + (this.maxBufferSize = r), + (this.scheduler = n); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe( + new Q( + e, + this.bufferTimeSpan, + this.bufferCreationInterval, + this.maxBufferSize, + this.scheduler + ) + ); + }), + e + ); + })(), + B = (function () { + return function () { + this.buffer = []; + }; + })(), + Q = (function (e) { + function t(t, r, n, i, o) { + var s = e.call(this, t) || this; + (s.bufferTimeSpan = r), + (s.bufferCreationInterval = n), + (s.maxBufferSize = i), + (s.scheduler = o), + (s.contexts = []); + var A = s.openContext(); + if (((s.timespanOnly = null == n || n < 0), s.timespanOnly)) { + var a = { subscriber: s, context: A, bufferTimeSpan: r }; + s.add((A.closeAction = o.schedule(v, r, a))); + } else { + var c = { subscriber: s, context: A }, + u = { bufferTimeSpan: r, bufferCreationInterval: n, subscriber: s, scheduler: o }; + s.add((A.closeAction = o.schedule(b, r, c))), s.add(o.schedule(D, n, u)); + } + return s; + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + for (var t, r = this.contexts, n = r.length, i = 0; i < n; i++) { + var o = r[i], + s = o.buffer; + s.push(e), s.length == this.maxBufferSize && (t = o); + } + t && this.onBufferFull(t); + }), + (t.prototype._error = function (t) { + (this.contexts.length = 0), e.prototype._error.call(this, t); + }), + (t.prototype._complete = function () { + for (var t = this.contexts, r = this.destination; t.length > 0; ) { + var n = t.shift(); + r.next(n.buffer); + } + e.prototype._complete.call(this); + }), + (t.prototype._unsubscribe = function () { + this.contexts = null; + }), + (t.prototype.onBufferFull = function (e) { + this.closeContext(e); + var t = e.closeAction; + if ((t.unsubscribe(), this.remove(t), !this.closed && this.timespanOnly)) { + e = this.openContext(); + var r = this.bufferTimeSpan, + n = { subscriber: this, context: e, bufferTimeSpan: r }; + this.add((e.closeAction = this.scheduler.schedule(v, r, n))); + } + }), + (t.prototype.openContext = function () { + var e = new B(); + return this.contexts.push(e), e; + }), + (t.prototype.closeContext = function (e) { + this.destination.next(e.buffer); + var t = this.contexts; + (t ? t.indexOf(e) : -1) >= 0 && t.splice(t.indexOf(e), 1); + }), + t + ); + })(p.L); + function v(e) { + var t = e.subscriber, + r = e.context; + r && t.closeContext(r), + t.closed || + ((e.context = t.openContext()), + (e.context.closeAction = this.schedule(e, e.bufferTimeSpan))); + } + function D(e) { + var t = e.bufferCreationInterval, + r = e.bufferTimeSpan, + n = e.subscriber, + i = e.scheduler, + o = n.openContext(); + n.closed || + (n.add((o.closeAction = i.schedule(b, r, { subscriber: n, context: o }))), + this.schedule(e, t)); + } + function b(e) { + var t = e.subscriber, + r = e.context; + t.closeContext(r); + } + var S = r(73504); + function k(e, t) { + return function (r) { + return r.lift(new x(e, t)); + }; + } + var x = (function () { + function e(e, t) { + (this.openings = e), (this.closingSelector = t); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new F(e, this.openings, this.closingSelector)); + }), + e + ); + })(), + F = (function (e) { + function t(t, r, n) { + var i = e.call(this, t) || this; + return ( + (i.openings = r), + (i.closingSelector = n), + (i.contexts = []), + i.add((0, o.D)(i, r)), + i + ); + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + for (var t = this.contexts, r = t.length, n = 0; n < r; n++) t[n].buffer.push(e); + }), + (t.prototype._error = function (t) { + for (var r = this.contexts; r.length > 0; ) { + var n = r.shift(); + n.subscription.unsubscribe(), (n.buffer = null), (n.subscription = null); + } + (this.contexts = null), e.prototype._error.call(this, t); + }), + (t.prototype._complete = function () { + for (var t = this.contexts; t.length > 0; ) { + var r = t.shift(); + this.destination.next(r.buffer), + r.subscription.unsubscribe(), + (r.buffer = null), + (r.subscription = null); + } + (this.contexts = null), e.prototype._complete.call(this); + }), + (t.prototype.notifyNext = function (e, t, r, n, i) { + e ? this.closeBuffer(e) : this.openBuffer(t); + }), + (t.prototype.notifyComplete = function (e) { + this.closeBuffer(e.context); + }), + (t.prototype.openBuffer = function (e) { + try { + var t = this.closingSelector.call(this, e); + t && this.trySubscribe(t); + } catch (e) { + this._error(e); + } + }), + (t.prototype.closeBuffer = function (e) { + var t = this.contexts; + if (t && e) { + var r = e.buffer, + n = e.subscription; + this.destination.next(r), + t.splice(t.indexOf(e), 1), + this.remove(n), + n.unsubscribe(); + } + }), + (t.prototype.trySubscribe = function (e) { + var t = this.contexts, + r = new S.w(), + n = { buffer: [], subscription: r }; + t.push(n); + var i = (0, o.D)(this, e, n); + !i || i.closed ? this.closeBuffer(n) : ((i.context = n), this.add(i), r.add(i)); + }), + t + ); + })(i.L); + function M(e) { + return function (t) { + return t.lift(new N(e)); + }; + } + var N = (function () { + function e(e) { + this.closingSelector = e; + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new R(e, this.closingSelector)); + }), + e + ); + })(), + R = (function (e) { + function t(t, r) { + var n = e.call(this, t) || this; + return (n.closingSelector = r), (n.subscribing = !1), n.openBuffer(), n; + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + this.buffer.push(e); + }), + (t.prototype._complete = function () { + var t = this.buffer; + t && this.destination.next(t), e.prototype._complete.call(this); + }), + (t.prototype._unsubscribe = function () { + (this.buffer = null), (this.subscribing = !1); + }), + (t.prototype.notifyNext = function (e, t, r, n, i) { + this.openBuffer(); + }), + (t.prototype.notifyComplete = function () { + this.subscribing ? this.complete() : this.openBuffer(); + }), + (t.prototype.openBuffer = function () { + var e = this.closingSubscription; + e && (this.remove(e), e.unsubscribe()); + var t, + r = this.buffer; + this.buffer && this.destination.next(r), (this.buffer = []); + try { + t = (0, this.closingSelector)(); + } catch (e) { + return this.error(e); + } + (e = new S.w()), + (this.closingSubscription = e), + this.add(e), + (this.subscribing = !0), + e.add((0, o.D)(this, t)), + (this.subscribing = !1); + }), + t + ); + })(i.L), + K = r(28907); + function L(e) { + return function (t) { + var r = new T(e), + n = t.lift(r); + return (r.caught = n); + }; + } + var T = (function () { + function e(e) { + this.selector = e; + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new P(e, this.selector, this.caught)); + }), + e + ); + })(), + P = (function (e) { + function t(t, r, n) { + var i = e.call(this, t) || this; + return (i.selector = r), (i.caught = n), i; + } + return ( + n.ZT(t, e), + (t.prototype.error = function (t) { + if (!this.isStopped) { + var r = void 0; + try { + r = this.selector(t, this.caught); + } catch (t) { + return void e.prototype.error.call(this, t); + } + this._unsubscribeAndRecycle(); + var n = new K.d(this, void 0, void 0); + this.add(n); + var i = (0, o.D)(this, r, void 0, void 0, n); + i !== n && this.add(i); + } + }), + t + ); + })(i.L), + U = r(20995); + function _(e) { + return function (t) { + return t.lift(new U.Ms(e)); + }; + } + var O = r(47182), + j = r(85861); + function Y() { + for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; + var r = null; + return ( + 'function' == typeof e[e.length - 1] && (r = e.pop()), + 1 === e.length && (0, O.k)(e[0]) && (e = e[0].slice()), + function (t) { + return t.lift.call((0, j.D)([t].concat(e)), new U.Ms(r)); + } + ); + } + var G = r(14023); + function J() { + for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; + return function (t) { + return t.lift.call(G.z.apply(void 0, [t].concat(e))); + }; + } + var H = r(37339), + q = r(20259); + function z(e, t) { + return (0, q.zg)(e, t, 1); + } + function W(e, t) { + return z(function () { + return e; + }, t); + } + function V(e) { + return function (t) { + return t.lift(new X(e, t)); + }; + } + var X = (function () { + function e(e, t) { + (this.predicate = e), (this.source = t); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new Z(e, this.predicate, this.source)); + }), + e + ); + })(), + Z = (function (e) { + function t(t, r, n) { + var i = e.call(this, t) || this; + return (i.predicate = r), (i.source = n), (i.count = 0), (i.index = 0), i; + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + this.predicate ? this._tryPredicate(e) : this.count++; + }), + (t.prototype._tryPredicate = function (e) { + var t; + try { + t = this.predicate(e, this.index++, this.source); + } catch (e) { + return void this.destination.error(e); + } + t && this.count++; + }), + (t.prototype._complete = function () { + this.destination.next(this.count), this.destination.complete(); + }), + t + ); + })(p.L); + function $(e) { + return function (t) { + return t.lift(new ee(e)); + }; + } + var ee = (function () { + function e(e) { + this.durationSelector = e; + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new te(e, this.durationSelector)); + }), + e + ); + })(), + te = (function (e) { + function t(t, r) { + var n = e.call(this, t) || this; + return ( + (n.durationSelector = r), (n.hasValue = !1), (n.durationSubscription = null), n + ); + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + try { + var t = this.durationSelector.call(this, e); + t && this._tryNext(e, t); + } catch (e) { + this.destination.error(e); + } + }), + (t.prototype._complete = function () { + this.emitValue(), this.destination.complete(); + }), + (t.prototype._tryNext = function (e, t) { + var r = this.durationSubscription; + (this.value = e), + (this.hasValue = !0), + r && (r.unsubscribe(), this.remove(r)), + (r = (0, o.D)(this, t)) && !r.closed && this.add((this.durationSubscription = r)); + }), + (t.prototype.notifyNext = function (e, t, r, n, i) { + this.emitValue(); + }), + (t.prototype.notifyComplete = function () { + this.emitValue(); + }), + (t.prototype.emitValue = function () { + if (this.hasValue) { + var t = this.value, + r = this.durationSubscription; + r && ((this.durationSubscription = null), r.unsubscribe(), this.remove(r)), + (this.value = null), + (this.hasValue = !1), + e.prototype._next.call(this, t); + } + }), + t + ); + })(i.L); + function re(e, t) { + return ( + void 0 === t && (t = c.P), + function (r) { + return r.lift(new ne(e, t)); + } + ); + } + var ne = (function () { + function e(e, t) { + (this.dueTime = e), (this.scheduler = t); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new ie(e, this.dueTime, this.scheduler)); + }), + e + ); + })(), + ie = (function (e) { + function t(t, r, n) { + var i = e.call(this, t) || this; + return ( + (i.dueTime = r), + (i.scheduler = n), + (i.debouncedSubscription = null), + (i.lastValue = null), + (i.hasValue = !1), + i + ); + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + this.clearDebounce(), + (this.lastValue = e), + (this.hasValue = !0), + this.add( + (this.debouncedSubscription = this.scheduler.schedule(oe, this.dueTime, this)) + ); + }), + (t.prototype._complete = function () { + this.debouncedNext(), this.destination.complete(); + }), + (t.prototype.debouncedNext = function () { + if ((this.clearDebounce(), this.hasValue)) { + var e = this.lastValue; + (this.lastValue = null), (this.hasValue = !1), this.destination.next(e); + } + }), + (t.prototype.clearDebounce = function () { + var e = this.debouncedSubscription; + null !== e && + (this.remove(e), e.unsubscribe(), (this.debouncedSubscription = null)); + }), + t + ); + })(p.L); + function oe(e) { + e.debouncedNext(); + } + function se(e) { + return ( + void 0 === e && (e = null), + function (t) { + return t.lift(new Ae(e)); + } + ); + } + var Ae = (function () { + function e(e) { + this.defaultValue = e; + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new ae(e, this.defaultValue)); + }), + e + ); + })(), + ae = (function (e) { + function t(t, r) { + var n = e.call(this, t) || this; + return (n.defaultValue = r), (n.isEmpty = !0), n; + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + (this.isEmpty = !1), this.destination.next(e); + }), + (t.prototype._complete = function () { + this.isEmpty && this.destination.next(this.defaultValue), + this.destination.complete(); + }), + t + ); + })(p.L); + function ce(e) { + return e instanceof Date && !isNaN(+e); + } + var ue = r(4094); + function le(e, t) { + void 0 === t && (t = c.P); + var r = ce(e) ? +e - t.now() : Math.abs(e); + return function (e) { + return e.lift(new he(r, t)); + }; + } + var he = (function () { + function e(e, t) { + (this.delay = e), (this.scheduler = t); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new ge(e, this.delay, this.scheduler)); + }), + e + ); + })(), + ge = (function (e) { + function t(t, r, n) { + var i = e.call(this, t) || this; + return ( + (i.delay = r), + (i.scheduler = n), + (i.queue = []), + (i.active = !1), + (i.errored = !1), + i + ); + } + return ( + n.ZT(t, e), + (t.dispatch = function (e) { + for ( + var t = e.source, r = t.queue, n = e.scheduler, i = e.destination; + r.length > 0 && r[0].time - n.now() <= 0; + + ) + r.shift().notification.observe(i); + if (r.length > 0) { + var o = Math.max(0, r[0].time - n.now()); + this.schedule(e, o); + } else this.unsubscribe(), (t.active = !1); + }), + (t.prototype._schedule = function (e) { + (this.active = !0), + this.destination.add( + e.schedule(t.dispatch, this.delay, { + source: this, + destination: this.destination, + scheduler: e, + }) + ); + }), + (t.prototype.scheduleNotification = function (e) { + if (!0 !== this.errored) { + var t = this.scheduler, + r = new fe(t.now() + this.delay, e); + this.queue.push(r), !1 === this.active && this._schedule(t); + } + }), + (t.prototype._next = function (e) { + this.scheduleNotification(ue.P.createNext(e)); + }), + (t.prototype._error = function (e) { + (this.errored = !0), + (this.queue = []), + this.destination.error(e), + this.unsubscribe(); + }), + (t.prototype._complete = function () { + this.scheduleNotification(ue.P.createComplete()), this.unsubscribe(); + }), + t + ); + })(p.L), + fe = (function () { + return function (e, t) { + (this.time = e), (this.notification = t); + }; + })(), + pe = r(98789); + function de(e, t) { + return t + ? function (r) { + return new Ie(r, t).lift(new Ce(e)); + } + : function (t) { + return t.lift(new Ce(e)); + }; + } + var Ce = (function () { + function e(e) { + this.delayDurationSelector = e; + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new Ee(e, this.delayDurationSelector)); + }), + e + ); + })(), + Ee = (function (e) { + function t(t, r) { + var n = e.call(this, t) || this; + return ( + (n.delayDurationSelector = r), + (n.completed = !1), + (n.delayNotifierSubscriptions = []), + (n.index = 0), + n + ); + } + return ( + n.ZT(t, e), + (t.prototype.notifyNext = function (e, t, r, n, i) { + this.destination.next(e), this.removeSubscription(i), this.tryComplete(); + }), + (t.prototype.notifyError = function (e, t) { + this._error(e); + }), + (t.prototype.notifyComplete = function (e) { + var t = this.removeSubscription(e); + t && this.destination.next(t), this.tryComplete(); + }), + (t.prototype._next = function (e) { + var t = this.index++; + try { + var r = this.delayDurationSelector(e, t); + r && this.tryDelay(r, e); + } catch (e) { + this.destination.error(e); + } + }), + (t.prototype._complete = function () { + (this.completed = !0), this.tryComplete(), this.unsubscribe(); + }), + (t.prototype.removeSubscription = function (e) { + e.unsubscribe(); + var t = this.delayNotifierSubscriptions.indexOf(e); + return -1 !== t && this.delayNotifierSubscriptions.splice(t, 1), e.outerValue; + }), + (t.prototype.tryDelay = function (e, t) { + var r = (0, o.D)(this, e, t); + r && + !r.closed && + (this.destination.add(r), this.delayNotifierSubscriptions.push(r)); + }), + (t.prototype.tryComplete = function () { + this.completed && + 0 === this.delayNotifierSubscriptions.length && + this.destination.complete(); + }), + t + ); + })(i.L), + Ie = (function (e) { + function t(t, r) { + var n = e.call(this) || this; + return (n.source = t), (n.subscriptionDelay = r), n; + } + return ( + n.ZT(t, e), + (t.prototype._subscribe = function (e) { + this.subscriptionDelay.subscribe(new me(e, this.source)); + }), + t + ); + })(pe.y), + me = (function (e) { + function t(t, r) { + var n = e.call(this) || this; + return (n.parent = t), (n.source = r), (n.sourceSubscribed = !1), n; + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + this.subscribeToSource(); + }), + (t.prototype._error = function (e) { + this.unsubscribe(), this.parent.error(e); + }), + (t.prototype._complete = function () { + this.unsubscribe(), this.subscribeToSource(); + }), + (t.prototype.subscribeToSource = function () { + this.sourceSubscribed || + ((this.sourceSubscribed = !0), + this.unsubscribe(), + this.source.subscribe(this.parent)); + }), + t + ); + })(p.L); + function ye() { + return function (e) { + return e.lift(new we()); + }; + } + var we = (function () { + function e() {} + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new Be(e)); + }), + e + ); + })(), + Be = (function (e) { + function t(t) { + return e.call(this, t) || this; + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + e.observe(this.destination); + }), + t + ); + })(p.L); + function Qe(e, t) { + return function (r) { + return r.lift(new ve(e, t)); + }; + } + var ve = (function () { + function e(e, t) { + (this.keySelector = e), (this.flushes = t); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new De(e, this.keySelector, this.flushes)); + }), + e + ); + })(), + De = (function (e) { + function t(t, r, n) { + var i = e.call(this, t) || this; + return (i.keySelector = r), (i.values = new Set()), n && i.add((0, o.D)(i, n)), i; + } + return ( + n.ZT(t, e), + (t.prototype.notifyNext = function (e, t, r, n, i) { + this.values.clear(); + }), + (t.prototype.notifyError = function (e, t) { + this._error(e); + }), + (t.prototype._next = function (e) { + this.keySelector ? this._useKeySelector(e) : this._finalizeNext(e, e); + }), + (t.prototype._useKeySelector = function (e) { + var t, + r = this.destination; + try { + t = this.keySelector(e); + } catch (e) { + return void r.error(e); + } + this._finalizeNext(t, e); + }), + (t.prototype._finalizeNext = function (e, t) { + var r = this.values; + r.has(e) || (r.add(e), this.destination.next(t)); + }), + t + ); + })(i.L); + function be(e, t) { + return function (r) { + return r.lift(new Se(e, t)); + }; + } + var Se = (function () { + function e(e, t) { + (this.compare = e), (this.keySelector = t); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new ke(e, this.compare, this.keySelector)); + }), + e + ); + })(), + ke = (function (e) { + function t(t, r, n) { + var i = e.call(this, t) || this; + return ( + (i.keySelector = n), (i.hasKey = !1), 'function' == typeof r && (i.compare = r), i + ); + } + return ( + n.ZT(t, e), + (t.prototype.compare = function (e, t) { + return e === t; + }), + (t.prototype._next = function (e) { + var t; + try { + var r = this.keySelector; + t = r ? r(e) : e; + } catch (e) { + return this.destination.error(e); + } + var n = !1; + if (this.hasKey) + try { + n = (0, this.compare)(this.key, t); + } catch (e) { + return this.destination.error(e); + } + else this.hasKey = !0; + n || ((this.key = t), this.destination.next(e)); + }), + t + ); + })(p.L); + function xe(e, t) { + return be(function (r, n) { + return t ? t(r[e], n[e]) : r[e] === n[e]; + }); + } + var Fe = r(3551), + Me = r(39063), + Ne = r(30943); + function Re(e) { + return ( + void 0 === e && (e = Te), + function (t) { + return t.lift(new Ke(e)); + } + ); + } + var Ke = (function () { + function e(e) { + this.errorFactory = e; + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new Le(e, this.errorFactory)); + }), + e + ); + })(), + Le = (function (e) { + function t(t, r) { + var n = e.call(this, t) || this; + return (n.errorFactory = r), (n.hasValue = !1), n; + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + (this.hasValue = !0), this.destination.next(e); + }), + (t.prototype._complete = function () { + if (this.hasValue) return this.destination.complete(); + var e = void 0; + try { + e = this.errorFactory(); + } catch (t) { + e = t; + } + this.destination.error(e); + }), + t + ); + })(p.L); + function Te() { + return new Ne.K(); + } + var Pe = r(61775); + function Ue(e) { + return function (t) { + return 0 === e ? (0, Pe.c)() : t.lift(new _e(e)); + }; + } + var _e = (function () { + function e(e) { + if (((this.total = e), this.total < 0)) throw new Fe.W(); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new Oe(e, this.total)); + }), + e + ); + })(), + Oe = (function (e) { + function t(t, r) { + var n = e.call(this, t) || this; + return (n.total = r), (n.count = 0), n; + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + var t = this.total, + r = ++this.count; + r <= t && + (this.destination.next(e), + r === t && (this.destination.complete(), this.unsubscribe())); + }), + t + ); + })(p.L); + function je(e, t) { + if (e < 0) throw new Fe.W(); + var r = arguments.length >= 2; + return function (n) { + return n.pipe( + (0, Me.h)(function (t, r) { + return r === e; + }), + Ue(1), + r + ? se(t) + : Re(function () { + return new Fe.W(); + }) + ); + }; + } + var Ye = r(29686); + function Ge() { + for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; + return function (t) { + return (0, G.z)(t, Ye.of.apply(void 0, e)); + }; + } + function Je(e, t) { + return function (r) { + return r.lift(new He(e, t, r)); + }; + } + var He = (function () { + function e(e, t, r) { + (this.predicate = e), (this.thisArg = t), (this.source = r); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new qe(e, this.predicate, this.thisArg, this.source)); + }), + e + ); + })(), + qe = (function (e) { + function t(t, r, n, i) { + var o = e.call(this, t) || this; + return ( + (o.predicate = r), + (o.thisArg = n), + (o.source = i), + (o.index = 0), + (o.thisArg = n || o), + o + ); + } + return ( + n.ZT(t, e), + (t.prototype.notifyComplete = function (e) { + this.destination.next(e), this.destination.complete(); + }), + (t.prototype._next = function (e) { + var t = !1; + try { + t = this.predicate.call(this.thisArg, e, this.index++, this.source); + } catch (e) { + return void this.destination.error(e); + } + t || this.notifyComplete(!1); + }), + (t.prototype._complete = function () { + this.notifyComplete(!0); + }), + t + ); + })(p.L); + function ze() { + return function (e) { + return e.lift(new We()); + }; + } + var We = (function () { + function e() {} + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new Ve(e)); + }), + e + ); + })(), + Ve = (function (e) { + function t(t) { + var r = e.call(this, t) || this; + return (r.hasCompleted = !1), (r.hasSubscription = !1), r; + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + this.hasSubscription || ((this.hasSubscription = !0), this.add((0, o.D)(this, e))); + }), + (t.prototype._complete = function () { + (this.hasCompleted = !0), this.hasSubscription || this.destination.complete(); + }), + (t.prototype.notifyComplete = function (e) { + this.remove(e), + (this.hasSubscription = !1), + this.hasCompleted && this.destination.complete(); + }), + t + ); + })(i.L), + Xe = r(98082); + function Ze(e, t) { + return t + ? function (r) { + return r.pipe( + Ze(function (r, n) { + return (0, j.D)(e(r, n)).pipe( + (0, Xe.U)(function (e, i) { + return t(r, e, n, i); + }) + ); + }) + ); + } + : function (t) { + return t.lift(new $e(e)); + }; + } + var $e = (function () { + function e(e) { + this.project = e; + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new et(e, this.project)); + }), + e + ); + })(), + et = (function (e) { + function t(t, r) { + var n = e.call(this, t) || this; + return ( + (n.project = r), (n.hasSubscription = !1), (n.hasCompleted = !1), (n.index = 0), n + ); + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + this.hasSubscription || this.tryNext(e); + }), + (t.prototype.tryNext = function (e) { + var t, + r = this.index++; + try { + t = this.project(e, r); + } catch (e) { + return void this.destination.error(e); + } + (this.hasSubscription = !0), this._innerSub(t, e, r); + }), + (t.prototype._innerSub = function (e, t, r) { + var n = new K.d(this, t, r), + i = this.destination; + i.add(n); + var s = (0, o.D)(this, e, void 0, void 0, n); + s !== n && i.add(s); + }), + (t.prototype._complete = function () { + (this.hasCompleted = !0), + this.hasSubscription || this.destination.complete(), + this.unsubscribe(); + }), + (t.prototype.notifyNext = function (e, t, r, n, i) { + this.destination.next(t); + }), + (t.prototype.notifyError = function (e) { + this.destination.error(e); + }), + (t.prototype.notifyComplete = function (e) { + this.destination.remove(e), + (this.hasSubscription = !1), + this.hasCompleted && this.destination.complete(); + }), + t + ); + })(i.L); + function tt(e, t, r) { + return ( + void 0 === t && (t = Number.POSITIVE_INFINITY), + void 0 === r && (r = void 0), + (t = (t || 0) < 1 ? Number.POSITIVE_INFINITY : t), + function (n) { + return n.lift(new rt(e, t, r)); + } + ); + } + var rt = (function () { + function e(e, t, r) { + (this.project = e), (this.concurrent = t), (this.scheduler = r); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new nt(e, this.project, this.concurrent, this.scheduler)); + }), + e + ); + })(), + nt = (function (e) { + function t(t, r, n, i) { + var o = e.call(this, t) || this; + return ( + (o.project = r), + (o.concurrent = n), + (o.scheduler = i), + (o.index = 0), + (o.active = 0), + (o.hasCompleted = !1), + n < Number.POSITIVE_INFINITY && (o.buffer = []), + o + ); + } + return ( + n.ZT(t, e), + (t.dispatch = function (e) { + var t = e.subscriber, + r = e.result, + n = e.value, + i = e.index; + t.subscribeToProjection(r, n, i); + }), + (t.prototype._next = function (e) { + var r = this.destination; + if (r.closed) this._complete(); + else { + var n = this.index++; + if (this.active < this.concurrent) { + r.next(e); + try { + var i = (0, this.project)(e, n); + if (this.scheduler) { + var o = { subscriber: this, result: i, value: e, index: n }; + this.destination.add(this.scheduler.schedule(t.dispatch, 0, o)); + } else this.subscribeToProjection(i, e, n); + } catch (e) { + r.error(e); + } + } else this.buffer.push(e); + } + }), + (t.prototype.subscribeToProjection = function (e, t, r) { + this.active++, this.destination.add((0, o.D)(this, e, t, r)); + }), + (t.prototype._complete = function () { + (this.hasCompleted = !0), + this.hasCompleted && 0 === this.active && this.destination.complete(), + this.unsubscribe(); + }), + (t.prototype.notifyNext = function (e, t, r, n, i) { + this._next(t); + }), + (t.prototype.notifyComplete = function (e) { + var t = this.buffer; + this.destination.remove(e), + this.active--, + t && t.length > 0 && this._next(t.shift()), + this.hasCompleted && 0 === this.active && this.destination.complete(); + }), + t + ); + })(i.L); + function it(e) { + return function (t) { + return t.lift(new ot(e)); + }; + } + var ot = (function () { + function e(e) { + this.callback = e; + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new st(e, this.callback)); + }), + e + ); + })(), + st = (function (e) { + function t(t, r) { + var n = e.call(this, t) || this; + return n.add(new S.w(r)), n; + } + return n.ZT(t, e), t; + })(p.L); + function At(e, t) { + if ('function' != typeof e) throw new TypeError('predicate is not a function'); + return function (r) { + return r.lift(new at(e, r, !1, t)); + }; + } + var at = (function () { + function e(e, t, r, n) { + (this.predicate = e), (this.source = t), (this.yieldIndex = r), (this.thisArg = n); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe( + new ct(e, this.predicate, this.source, this.yieldIndex, this.thisArg) + ); + }), + e + ); + })(), + ct = (function (e) { + function t(t, r, n, i, o) { + var s = e.call(this, t) || this; + return ( + (s.predicate = r), + (s.source = n), + (s.yieldIndex = i), + (s.thisArg = o), + (s.index = 0), + s + ); + } + return ( + n.ZT(t, e), + (t.prototype.notifyComplete = function (e) { + var t = this.destination; + t.next(e), t.complete(), this.unsubscribe(); + }), + (t.prototype._next = function (e) { + var t = this.predicate, + r = this.thisArg, + n = this.index++; + try { + t.call(r || this, e, n, this.source) && + this.notifyComplete(this.yieldIndex ? n : e); + } catch (e) { + this.destination.error(e); + } + }), + (t.prototype._complete = function () { + this.notifyComplete(this.yieldIndex ? -1 : void 0); + }), + t + ); + })(p.L); + function ut(e, t) { + return function (r) { + return r.lift(new at(e, r, !0, t)); + }; + } + var lt = r(80433); + function ht(e, t) { + var r = arguments.length >= 2; + return function (n) { + return n.pipe( + e + ? (0, Me.h)(function (t, r) { + return e(t, r, n); + }) + : lt.y, + Ue(1), + r + ? se(t) + : Re(function () { + return new Ne.K(); + }) + ); + }; + } + var gt = r(92564); + function ft() { + return function (e) { + return e.lift(new pt()); + }; + } + var pt = (function () { + function e() {} + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new dt(e)); + }), + e + ); + })(), + dt = (function (e) { + function t() { + return (null !== e && e.apply(this, arguments)) || this; + } + return n.ZT(t, e), (t.prototype._next = function (e) {}), t; + })(p.L); + function Ct() { + return function (e) { + return e.lift(new Et()); + }; + } + var Et = (function () { + function e() {} + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new It(e)); + }), + e + ); + })(), + It = (function (e) { + function t(t) { + return e.call(this, t) || this; + } + return ( + n.ZT(t, e), + (t.prototype.notifyComplete = function (e) { + var t = this.destination; + t.next(e), t.complete(); + }), + (t.prototype._next = function (e) { + this.notifyComplete(!1); + }), + (t.prototype._complete = function () { + this.notifyComplete(!0); + }), + t + ); + })(p.L); + function mt(e) { + return function (t) { + return 0 === e ? (0, Pe.c)() : t.lift(new yt(e)); + }; + } + var yt = (function () { + function e(e) { + if (((this.total = e), this.total < 0)) throw new Fe.W(); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new wt(e, this.total)); + }), + e + ); + })(), + wt = (function (e) { + function t(t, r) { + var n = e.call(this, t) || this; + return (n.total = r), (n.ring = new Array()), (n.count = 0), n; + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + var t = this.ring, + r = this.total, + n = this.count++; + t.length < r ? t.push(e) : (t[n % r] = e); + }), + (t.prototype._complete = function () { + var e = this.destination, + t = this.count; + if (t > 0) + for ( + var r = this.count >= this.total ? this.total : this.count, + n = this.ring, + i = 0; + i < r; + i++ + ) { + var o = t++ % r; + e.next(n[o]); + } + e.complete(); + }), + t + ); + })(p.L); + function Bt(e, t) { + var r = arguments.length >= 2; + return function (n) { + return n.pipe( + e + ? (0, Me.h)(function (t, r) { + return e(t, r, n); + }) + : lt.y, + mt(1), + r + ? se(t) + : Re(function () { + return new Ne.K(); + }) + ); + }; + } + function Qt(e) { + return function (t) { + return t.lift(new vt(e)); + }; + } + var vt = (function () { + function e(e) { + this.value = e; + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new Dt(e, this.value)); + }), + e + ); + })(), + Dt = (function (e) { + function t(t, r) { + var n = e.call(this, t) || this; + return (n.value = r), n; + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + this.destination.next(this.value); + }), + t + ); + })(p.L); + function bt() { + return function (e) { + return e.lift(new St()); + }; + } + var St = (function () { + function e() {} + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new kt(e)); + }), + e + ); + })(), + kt = (function (e) { + function t(t) { + return e.call(this, t) || this; + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + this.destination.next(ue.P.createNext(e)); + }), + (t.prototype._error = function (e) { + var t = this.destination; + t.next(ue.P.createError(e)), t.complete(); + }), + (t.prototype._complete = function () { + var e = this.destination; + e.next(ue.P.createComplete()), e.complete(); + }), + t + ); + })(p.L); + function xt(e, t) { + var r = !1; + return ( + arguments.length >= 2 && (r = !0), + function (n) { + return n.lift(new Ft(e, t, r)); + } + ); + } + var Ft = (function () { + function e(e, t, r) { + void 0 === r && (r = !1), (this.accumulator = e), (this.seed = t), (this.hasSeed = r); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new Mt(e, this.accumulator, this.seed, this.hasSeed)); + }), + e + ); + })(), + Mt = (function (e) { + function t(t, r, n, i) { + var o = e.call(this, t) || this; + return (o.accumulator = r), (o._seed = n), (o.hasSeed = i), (o.index = 0), o; + } + return ( + n.ZT(t, e), + Object.defineProperty(t.prototype, 'seed', { + get: function () { + return this._seed; + }, + set: function (e) { + (this.hasSeed = !0), (this._seed = e); + }, + enumerable: !0, + configurable: !0, + }), + (t.prototype._next = function (e) { + if (this.hasSeed) return this._tryNext(e); + (this.seed = e), this.destination.next(e); + }), + (t.prototype._tryNext = function (e) { + var t, + r = this.index++; + try { + t = this.accumulator(this.seed, e, r); + } catch (e) { + this.destination.error(e); + } + (this.seed = t), this.destination.next(t); + }), + t + ); + })(p.L), + Nt = r(97836); + function Rt(e, t) { + return arguments.length >= 2 + ? function (r) { + return (0, Nt.z)(xt(e, t), mt(1), se(t))(r); + } + : function (t) { + return (0, Nt.z)( + xt(function (t, r, n) { + return e(t, r, n + 1); + }), + mt(1) + )(t); + }; + } + function Kt(e) { + return Rt( + 'function' == typeof e + ? function (t, r) { + return e(t, r) > 0 ? t : r; + } + : function (e, t) { + return e > t ? e : t; + } + ); + } + var Lt = r(80810); + function Tt() { + for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; + return function (t) { + return t.lift.call(Lt.T.apply(void 0, [t].concat(e))); + }; + } + var Pt = r(66852); + function Ut(e, t, r) { + return ( + void 0 === r && (r = Number.POSITIVE_INFINITY), + 'function' == typeof t + ? (0, q.zg)( + function () { + return e; + }, + t, + r + ) + : ('number' == typeof t && (r = t), + (0, q.zg)(function () { + return e; + }, r)) + ); + } + function _t(e, t, r) { + return ( + void 0 === r && (r = Number.POSITIVE_INFINITY), + function (n) { + return n.lift(new Ot(e, t, r)); + } + ); + } + var Ot = (function () { + function e(e, t, r) { + (this.accumulator = e), (this.seed = t), (this.concurrent = r); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new jt(e, this.accumulator, this.seed, this.concurrent)); + }), + e + ); + })(), + jt = (function (e) { + function t(t, r, n, i) { + var o = e.call(this, t) || this; + return ( + (o.accumulator = r), + (o.acc = n), + (o.concurrent = i), + (o.hasValue = !1), + (o.hasCompleted = !1), + (o.buffer = []), + (o.active = 0), + (o.index = 0), + o + ); + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + if (this.active < this.concurrent) { + var t = this.index++, + r = this.destination, + n = void 0; + try { + n = (0, this.accumulator)(this.acc, e, t); + } catch (e) { + return r.error(e); + } + this.active++, this._innerSub(n, e, t); + } else this.buffer.push(e); + }), + (t.prototype._innerSub = function (e, t, r) { + var n = new K.d(this, t, r), + i = this.destination; + i.add(n); + var s = (0, o.D)(this, e, void 0, void 0, n); + s !== n && i.add(s); + }), + (t.prototype._complete = function () { + (this.hasCompleted = !0), + 0 === this.active && + 0 === this.buffer.length && + (!1 === this.hasValue && this.destination.next(this.acc), + this.destination.complete()), + this.unsubscribe(); + }), + (t.prototype.notifyNext = function (e, t, r, n, i) { + var o = this.destination; + (this.acc = t), (this.hasValue = !0), o.next(t); + }), + (t.prototype.notifyComplete = function (e) { + var t = this.buffer; + this.destination.remove(e), + this.active--, + t.length > 0 + ? this._next(t.shift()) + : 0 === this.active && + this.hasCompleted && + (!1 === this.hasValue && this.destination.next(this.acc), + this.destination.complete()); + }), + t + ); + })(i.L); + function Yt(e) { + return Rt( + 'function' == typeof e + ? function (t, r) { + return e(t, r) < 0 ? t : r; + } + : function (e, t) { + return e < t ? e : t; + } + ); + } + var Gt = r(24311); + function Jt(e, t) { + return function (r) { + var n; + if ( + ((n = + 'function' == typeof e + ? e + : function () { + return e; + }), + 'function' == typeof t) + ) + return r.lift(new Ht(n, t)); + var i = Object.create(r, Gt.N); + return (i.source = r), (i.subjectFactory = n), i; + }; + } + var Ht = (function () { + function e(e, t) { + (this.subjectFactory = e), (this.selector = t); + } + return ( + (e.prototype.call = function (e, t) { + var r = this.selector, + n = this.subjectFactory(), + i = r(n).subscribe(e); + return i.add(t.subscribe(n)), i; + }), + e + ); + })(), + qt = r(32746); + function zt() { + for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; + return ( + 1 === e.length && (0, O.k)(e[0]) && (e = e[0]), + function (t) { + return t.lift(new Wt(e)); + } + ); + } + var Wt = (function () { + function e(e) { + this.nextSources = e; + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new Vt(e, this.nextSources)); + }), + e + ); + })(), + Vt = (function (e) { + function t(t, r) { + var n = e.call(this, t) || this; + return (n.destination = t), (n.nextSources = r), n; + } + return ( + n.ZT(t, e), + (t.prototype.notifyError = function (e, t) { + this.subscribeToNextSource(); + }), + (t.prototype.notifyComplete = function (e) { + this.subscribeToNextSource(); + }), + (t.prototype._error = function (e) { + this.subscribeToNextSource(), this.unsubscribe(); + }), + (t.prototype._complete = function () { + this.subscribeToNextSource(), this.unsubscribe(); + }), + (t.prototype.subscribeToNextSource = function () { + var e = this.nextSources.shift(); + if (e) { + var t = new K.d(this, void 0, void 0), + r = this.destination; + r.add(t); + var n = (0, o.D)(this, e, void 0, void 0, t); + n !== t && r.add(n); + } else this.destination.complete(); + }), + t + ); + })(i.L); + function Xt() { + return function (e) { + return e.lift(new Zt()); + }; + } + var Zt = (function () { + function e() {} + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new $t(e)); + }), + e + ); + })(), + $t = (function (e) { + function t(t) { + var r = e.call(this, t) || this; + return (r.hasPrev = !1), r; + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + var t; + this.hasPrev ? (t = [this.prev, e]) : (this.hasPrev = !0), + (this.prev = e), + t && this.destination.next(t); + }), + t + ); + })(p.L), + er = r(65868); + function tr(e, t) { + return function (r) { + return [(0, Me.h)(e, t)(r), (0, Me.h)((0, er.f)(e, t))(r)]; + }; + } + function rr() { + for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; + var r = e.length; + if (0 === r) throw new Error('list of properties cannot be empty.'); + return function (t) { + return (0, Xe.U)(nr(e, r))(t); + }; + } + function nr(e, t) { + return function (r) { + for (var n = r, i = 0; i < t; i++) { + var o = n[e[i]]; + if (void 0 === o) return; + n = o; + } + return n; + }; + } + var ir = r(92915); + function or(e) { + return e + ? Jt(function () { + return new ir.xQ(); + }, e) + : Jt(new ir.xQ()); + } + var sr = r(14753); + function Ar(e) { + return function (t) { + return Jt(new sr.X(e))(t); + }; + } + var ar = r(73582); + function cr() { + return function (e) { + return Jt(new ar.c())(e); + }; + } + var ur = r(52493); + function lr(e, t, r, n) { + r && 'function' != typeof r && (n = r); + var i = 'function' == typeof r ? r : void 0, + o = new ur.t(e, t, n); + return function (e) { + return Jt(function () { + return o; + }, i)(e); + }; + } + var hr = r(2332); + function gr() { + for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; + return function (t) { + return ( + 1 === e.length && (0, O.k)(e[0]) && (e = e[0]), + t.lift.call(hr.S3.apply(void 0, [t].concat(e))) + ); + }; + } + function fr(e) { + return ( + void 0 === e && (e = -1), + function (t) { + return 0 === e + ? (0, Pe.c)() + : e < 0 + ? t.lift(new pr(-1, t)) + : t.lift(new pr(e - 1, t)); + } + ); + } + var pr = (function () { + function e(e, t) { + (this.count = e), (this.source = t); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new dr(e, this.count, this.source)); + }), + e + ); + })(), + dr = (function (e) { + function t(t, r, n) { + var i = e.call(this, t) || this; + return (i.count = r), (i.source = n), i; + } + return ( + n.ZT(t, e), + (t.prototype.complete = function () { + if (!this.isStopped) { + var t = this.source, + r = this.count; + if (0 === r) return e.prototype.complete.call(this); + r > -1 && (this.count = r - 1), t.subscribe(this._unsubscribeAndRecycle()); + } + }), + t + ); + })(p.L); + function Cr(e) { + return function (t) { + return t.lift(new Er(e)); + }; + } + var Er = (function () { + function e(e) { + this.notifier = e; + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new Ir(e, this.notifier, t)); + }), + e + ); + })(), + Ir = (function (e) { + function t(t, r, n) { + var i = e.call(this, t) || this; + return (i.notifier = r), (i.source = n), (i.sourceIsBeingSubscribedTo = !0), i; + } + return ( + n.ZT(t, e), + (t.prototype.notifyNext = function (e, t, r, n, i) { + (this.sourceIsBeingSubscribedTo = !0), this.source.subscribe(this); + }), + (t.prototype.notifyComplete = function (t) { + if (!1 === this.sourceIsBeingSubscribedTo) return e.prototype.complete.call(this); + }), + (t.prototype.complete = function () { + if (((this.sourceIsBeingSubscribedTo = !1), !this.isStopped)) { + if ( + (this.retries || this.subscribeToRetries(), + !this.retriesSubscription || this.retriesSubscription.closed) + ) + return e.prototype.complete.call(this); + this._unsubscribeAndRecycle(), this.notifications.next(); + } + }), + (t.prototype._unsubscribe = function () { + var e = this.notifications, + t = this.retriesSubscription; + e && (e.unsubscribe(), (this.notifications = null)), + t && (t.unsubscribe(), (this.retriesSubscription = null)), + (this.retries = null); + }), + (t.prototype._unsubscribeAndRecycle = function () { + var t = this._unsubscribe; + return ( + (this._unsubscribe = null), + e.prototype._unsubscribeAndRecycle.call(this), + (this._unsubscribe = t), + this + ); + }), + (t.prototype.subscribeToRetries = function () { + var t; + this.notifications = new ir.xQ(); + try { + t = (0, this.notifier)(this.notifications); + } catch (t) { + return e.prototype.complete.call(this); + } + (this.retries = t), (this.retriesSubscription = (0, o.D)(this, t)); + }), + t + ); + })(i.L); + function mr(e) { + return ( + void 0 === e && (e = -1), + function (t) { + return t.lift(new yr(e, t)); + } + ); + } + var yr = (function () { + function e(e, t) { + (this.count = e), (this.source = t); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new wr(e, this.count, this.source)); + }), + e + ); + })(), + wr = (function (e) { + function t(t, r, n) { + var i = e.call(this, t) || this; + return (i.count = r), (i.source = n), i; + } + return ( + n.ZT(t, e), + (t.prototype.error = function (t) { + if (!this.isStopped) { + var r = this.source, + n = this.count; + if (0 === n) return e.prototype.error.call(this, t); + n > -1 && (this.count = n - 1), r.subscribe(this._unsubscribeAndRecycle()); + } + }), + t + ); + })(p.L); + function Br(e) { + return function (t) { + return t.lift(new Qr(e, t)); + }; + } + var Qr = (function () { + function e(e, t) { + (this.notifier = e), (this.source = t); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new vr(e, this.notifier, this.source)); + }), + e + ); + })(), + vr = (function (e) { + function t(t, r, n) { + var i = e.call(this, t) || this; + return (i.notifier = r), (i.source = n), i; + } + return ( + n.ZT(t, e), + (t.prototype.error = function (t) { + if (!this.isStopped) { + var r = this.errors, + n = this.retries, + i = this.retriesSubscription; + if (n) (this.errors = null), (this.retriesSubscription = null); + else { + r = new ir.xQ(); + try { + n = (0, this.notifier)(r); + } catch (t) { + return e.prototype.error.call(this, t); + } + i = (0, o.D)(this, n); + } + this._unsubscribeAndRecycle(), + (this.errors = r), + (this.retries = n), + (this.retriesSubscription = i), + r.next(t); + } + }), + (t.prototype._unsubscribe = function () { + var e = this.errors, + t = this.retriesSubscription; + e && (e.unsubscribe(), (this.errors = null)), + t && (t.unsubscribe(), (this.retriesSubscription = null)), + (this.retries = null); + }), + (t.prototype.notifyNext = function (e, t, r, n, i) { + var o = this._unsubscribe; + (this._unsubscribe = null), + this._unsubscribeAndRecycle(), + (this._unsubscribe = o), + this.source.subscribe(this); + }), + t + ); + })(i.L), + Dr = r(97566); + function br(e) { + return function (t) { + return t.lift(new Sr(e)); + }; + } + var Sr = (function () { + function e(e) { + this.notifier = e; + } + return ( + (e.prototype.call = function (e, t) { + var r = new kr(e), + n = t.subscribe(r); + return n.add((0, o.D)(r, this.notifier)), n; + }), + e + ); + })(), + kr = (function (e) { + function t() { + var t = (null !== e && e.apply(this, arguments)) || this; + return (t.hasValue = !1), t; + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + (this.value = e), (this.hasValue = !0); + }), + (t.prototype.notifyNext = function (e, t, r, n, i) { + this.emitValue(); + }), + (t.prototype.notifyComplete = function () { + this.emitValue(); + }), + (t.prototype.emitValue = function () { + this.hasValue && ((this.hasValue = !1), this.destination.next(this.value)); + }), + t + ); + })(i.L); + function xr(e, t) { + return ( + void 0 === t && (t = c.P), + function (r) { + return r.lift(new Fr(e, t)); + } + ); + } + var Fr = (function () { + function e(e, t) { + (this.period = e), (this.scheduler = t); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new Mr(e, this.period, this.scheduler)); + }), + e + ); + })(), + Mr = (function (e) { + function t(t, r, n) { + var i = e.call(this, t) || this; + return ( + (i.period = r), + (i.scheduler = n), + (i.hasValue = !1), + i.add(n.schedule(Nr, r, { subscriber: i, period: r })), + i + ); + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + (this.lastValue = e), (this.hasValue = !0); + }), + (t.prototype.notifyNext = function () { + this.hasValue && ((this.hasValue = !1), this.destination.next(this.lastValue)); + }), + t + ); + })(p.L); + function Nr(e) { + var t = e.subscriber, + r = e.period; + t.notifyNext(), this.schedule(e, r); + } + function Rr(e, t) { + return function (r) { + return r.lift(new Kr(e, t)); + }; + } + var Kr = (function () { + function e(e, t) { + (this.compareTo = e), (this.comparator = t); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new Lr(e, this.compareTo, this.comparator)); + }), + e + ); + })(), + Lr = (function (e) { + function t(t, r, n) { + var i = e.call(this, t) || this; + return ( + (i.compareTo = r), + (i.comparator = n), + (i._a = []), + (i._b = []), + (i._oneComplete = !1), + i.destination.add(r.subscribe(new Tr(t, i))), + i + ); + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + this._oneComplete && 0 === this._b.length + ? this.emit(!1) + : (this._a.push(e), this.checkValues()); + }), + (t.prototype._complete = function () { + this._oneComplete + ? this.emit(0 === this._a.length && 0 === this._b.length) + : (this._oneComplete = !0), + this.unsubscribe(); + }), + (t.prototype.checkValues = function () { + for ( + var e = this._a, t = this._b, r = this.comparator; + e.length > 0 && t.length > 0; + + ) { + var n = e.shift(), + i = t.shift(), + o = !1; + try { + o = r ? r(n, i) : n === i; + } catch (e) { + this.destination.error(e); + } + o || this.emit(!1); + } + }), + (t.prototype.emit = function (e) { + var t = this.destination; + t.next(e), t.complete(); + }), + (t.prototype.nextB = function (e) { + this._oneComplete && 0 === this._a.length + ? this.emit(!1) + : (this._b.push(e), this.checkValues()); + }), + (t.prototype.completeB = function () { + this._oneComplete + ? this.emit(0 === this._a.length && 0 === this._b.length) + : (this._oneComplete = !0); + }), + t + ); + })(p.L), + Tr = (function (e) { + function t(t, r) { + var n = e.call(this, t) || this; + return (n.parent = r), n; + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + this.parent.nextB(e); + }), + (t.prototype._error = function (e) { + this.parent.error(e), this.unsubscribe(); + }), + (t.prototype._complete = function () { + this.parent.completeB(), this.unsubscribe(); + }), + t + ); + })(p.L); + function Pr() { + return new ir.xQ(); + } + function Ur() { + return function (e) { + return (0, Dr.x)()(Jt(Pr)(e)); + }; + } + function _r(e, t, r) { + var n; + return ( + (n = + e && 'object' == typeof e + ? e + : { bufferSize: e, windowTime: t, refCount: !1, scheduler: r }), + function (e) { + return e.lift( + (function (e) { + var t, + r, + n = e.bufferSize, + i = void 0 === n ? Number.POSITIVE_INFINITY : n, + o = e.windowTime, + s = void 0 === o ? Number.POSITIVE_INFINITY : o, + A = e.refCount, + a = e.scheduler, + c = 0, + u = !1, + l = !1; + return function (e) { + c++, + (t && !u) || + ((u = !1), + (t = new ur.t(i, s, a)), + (r = e.subscribe({ + next: function (e) { + t.next(e); + }, + error: function (e) { + (u = !0), t.error(e); + }, + complete: function () { + (l = !0), (r = void 0), t.complete(); + }, + }))); + var n = t.subscribe(this); + this.add(function () { + c--, + n.unsubscribe(), + r && !l && A && 0 === c && (r.unsubscribe(), (r = void 0), (t = void 0)); + }); + }; + })(n) + ); + } + ); + } + function Or(e) { + return function (t) { + return t.lift(new jr(e, t)); + }; + } + var jr = (function () { + function e(e, t) { + (this.predicate = e), (this.source = t); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new Yr(e, this.predicate, this.source)); + }), + e + ); + })(), + Yr = (function (e) { + function t(t, r, n) { + var i = e.call(this, t) || this; + return (i.predicate = r), (i.source = n), (i.seenValue = !1), (i.index = 0), i; + } + return ( + n.ZT(t, e), + (t.prototype.applySingleValue = function (e) { + this.seenValue + ? this.destination.error('Sequence contains more than one element') + : ((this.seenValue = !0), (this.singleValue = e)); + }), + (t.prototype._next = function (e) { + var t = this.index++; + this.predicate ? this.tryNext(e, t) : this.applySingleValue(e); + }), + (t.prototype.tryNext = function (e, t) { + try { + this.predicate(e, t, this.source) && this.applySingleValue(e); + } catch (e) { + this.destination.error(e); + } + }), + (t.prototype._complete = function () { + var e = this.destination; + this.index > 0 + ? (e.next(this.seenValue ? this.singleValue : void 0), e.complete()) + : e.error(new Ne.K()); + }), + t + ); + })(p.L); + function Gr(e) { + return function (t) { + return t.lift(new Jr(e)); + }; + } + var Jr = (function () { + function e(e) { + this.total = e; + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new Hr(e, this.total)); + }), + e + ); + })(), + Hr = (function (e) { + function t(t, r) { + var n = e.call(this, t) || this; + return (n.total = r), (n.count = 0), n; + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + ++this.count > this.total && this.destination.next(e); + }), + t + ); + })(p.L); + function qr(e) { + return function (t) { + return t.lift(new zr(e)); + }; + } + var zr = (function () { + function e(e) { + if (((this._skipCount = e), this._skipCount < 0)) throw new Fe.W(); + } + return ( + (e.prototype.call = function (e, t) { + return 0 === this._skipCount + ? t.subscribe(new p.L(e)) + : t.subscribe(new Wr(e, this._skipCount)); + }), + e + ); + })(), + Wr = (function (e) { + function t(t, r) { + var n = e.call(this, t) || this; + return (n._skipCount = r), (n._count = 0), (n._ring = new Array(r)), n; + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + var t = this._skipCount, + r = this._count++; + if (r < t) this._ring[r] = e; + else { + var n = r % t, + i = this._ring, + o = i[n]; + (i[n] = e), this.destination.next(o); + } + }), + t + ); + })(p.L); + function Vr(e) { + return function (t) { + return t.lift(new Xr(e)); + }; + } + var Xr = (function () { + function e(e) { + this.notifier = e; + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new Zr(e, this.notifier)); + }), + e + ); + })(), + Zr = (function (e) { + function t(t, r) { + var n = e.call(this, t) || this; + n.hasValue = !1; + var i = new K.d(n, void 0, void 0); + n.add(i), (n.innerSubscription = i); + var s = (0, o.D)(n, r, void 0, void 0, i); + return s !== i && (n.add(s), (n.innerSubscription = s)), n; + } + return ( + n.ZT(t, e), + (t.prototype._next = function (t) { + this.hasValue && e.prototype._next.call(this, t); + }), + (t.prototype.notifyNext = function (e, t, r, n, i) { + (this.hasValue = !0), + this.innerSubscription && this.innerSubscription.unsubscribe(); + }), + (t.prototype.notifyComplete = function () {}), + t + ); + })(i.L); + function $r(e) { + return function (t) { + return t.lift(new en(e)); + }; + } + var en = (function () { + function e(e) { + this.predicate = e; + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new tn(e, this.predicate)); + }), + e + ); + })(), + tn = (function (e) { + function t(t, r) { + var n = e.call(this, t) || this; + return (n.predicate = r), (n.skipping = !0), (n.index = 0), n; + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + var t = this.destination; + this.skipping && this.tryCallPredicate(e), this.skipping || t.next(e); + }), + (t.prototype.tryCallPredicate = function (e) { + try { + var t = this.predicate(e, this.index++); + this.skipping = Boolean(t); + } catch (e) { + this.destination.error(e); + } + }), + t + ); + })(p.L); + function rn() { + for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; + var r = e[e.length - 1]; + return (0, m.K)(r) + ? (e.pop(), + function (t) { + return (0, G.z)(e, t, r); + }) + : function (t) { + return (0, G.z)(e, t); + }; + } + var nn = r(94097), + on = r(23820), + sn = (function (e) { + function t(t, r, n) { + void 0 === r && (r = 0), void 0 === n && (n = nn.e); + var i = e.call(this) || this; + return ( + (i.source = t), + (i.delayTime = r), + (i.scheduler = n), + (!(0, on.k)(r) || r < 0) && (i.delayTime = 0), + (n && 'function' == typeof n.schedule) || (i.scheduler = nn.e), + i + ); + } + return ( + n.ZT(t, e), + (t.create = function (e, r, n) { + return void 0 === r && (r = 0), void 0 === n && (n = nn.e), new t(e, r, n); + }), + (t.dispatch = function (e) { + var t = e.source, + r = e.subscriber; + return this.add(t.subscribe(r)); + }), + (t.prototype._subscribe = function (e) { + var r = this.delayTime, + n = this.source; + return this.scheduler.schedule(t.dispatch, r, { source: n, subscriber: e }); + }), + t + ); + })(pe.y); + function An(e, t) { + return ( + void 0 === t && (t = 0), + function (r) { + return r.lift(new an(e, t)); + } + ); + } + var an = (function () { + function e(e, t) { + (this.scheduler = e), (this.delay = t); + } + return ( + (e.prototype.call = function (e, t) { + return new sn(t, this.delay, this.scheduler).subscribe(e); + }), + e + ); + })(); + function cn(e, t) { + return 'function' == typeof t + ? function (r) { + return r.pipe( + cn(function (r, n) { + return (0, j.D)(e(r, n)).pipe( + (0, Xe.U)(function (e, i) { + return t(r, e, n, i); + }) + ); + }) + ); + } + : function (t) { + return t.lift(new un(e)); + }; + } + var un = (function () { + function e(e) { + this.project = e; + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new ln(e, this.project)); + }), + e + ); + })(), + ln = (function (e) { + function t(t, r) { + var n = e.call(this, t) || this; + return (n.project = r), (n.index = 0), n; + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + var t, + r = this.index++; + try { + t = this.project(e, r); + } catch (e) { + return void this.destination.error(e); + } + this._innerSub(t, e, r); + }), + (t.prototype._innerSub = function (e, t, r) { + var n = this.innerSubscription; + n && n.unsubscribe(); + var i = new K.d(this, t, r), + s = this.destination; + s.add(i), + (this.innerSubscription = (0, o.D)(this, e, void 0, void 0, i)), + this.innerSubscription !== i && s.add(this.innerSubscription); + }), + (t.prototype._complete = function () { + var t = this.innerSubscription; + (t && !t.closed) || e.prototype._complete.call(this), this.unsubscribe(); + }), + (t.prototype._unsubscribe = function () { + this.innerSubscription = null; + }), + (t.prototype.notifyComplete = function (t) { + this.destination.remove(t), + (this.innerSubscription = null), + this.isStopped && e.prototype._complete.call(this); + }), + (t.prototype.notifyNext = function (e, t, r, n, i) { + this.destination.next(t); + }), + t + ); + })(i.L); + function hn() { + return cn(lt.y); + } + function gn(e, t) { + return t + ? cn(function () { + return e; + }, t) + : cn(function () { + return e; + }); + } + function fn(e) { + return function (t) { + return t.lift(new pn(e)); + }; + } + var pn = (function () { + function e(e) { + this.notifier = e; + } + return ( + (e.prototype.call = function (e, t) { + var r = new dn(e), + n = (0, o.D)(r, this.notifier); + return n && !r.seenValue ? (r.add(n), t.subscribe(r)) : r; + }), + e + ); + })(), + dn = (function (e) { + function t(t) { + var r = e.call(this, t) || this; + return (r.seenValue = !1), r; + } + return ( + n.ZT(t, e), + (t.prototype.notifyNext = function (e, t, r, n, i) { + (this.seenValue = !0), this.complete(); + }), + (t.prototype.notifyComplete = function () {}), + t + ); + })(i.L); + function Cn(e, t) { + return ( + void 0 === t && (t = !1), + function (r) { + return r.lift(new En(e, t)); + } + ); + } + var En = (function () { + function e(e, t) { + (this.predicate = e), (this.inclusive = t); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new In(e, this.predicate, this.inclusive)); + }), + e + ); + })(), + In = (function (e) { + function t(t, r, n) { + var i = e.call(this, t) || this; + return (i.predicate = r), (i.inclusive = n), (i.index = 0), i; + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + var t, + r = this.destination; + try { + t = this.predicate(e, this.index++); + } catch (e) { + return void r.error(e); + } + this.nextOrComplete(e, t); + }), + (t.prototype.nextOrComplete = function (e, t) { + var r = this.destination; + Boolean(t) ? r.next(e) : (this.inclusive && r.next(e), r.complete()); + }), + t + ); + })(p.L), + mn = r(57781), + yn = r(38394); + function wn(e, t, r) { + return function (n) { + return n.lift(new Bn(e, t, r)); + }; + } + var Bn = (function () { + function e(e, t, r) { + (this.nextOrObserver = e), (this.error = t), (this.complete = r); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new Qn(e, this.nextOrObserver, this.error, this.complete)); + }), + e + ); + })(), + Qn = (function (e) { + function t(t, r, n, i) { + var o = e.call(this, t) || this; + return ( + (o._tapNext = mn.Z), + (o._tapError = mn.Z), + (o._tapComplete = mn.Z), + (o._tapError = n || mn.Z), + (o._tapComplete = i || mn.Z), + (0, yn.m)(r) + ? ((o._context = o), (o._tapNext = r)) + : r && + ((o._context = r), + (o._tapNext = r.next || mn.Z), + (o._tapError = r.error || mn.Z), + (o._tapComplete = r.complete || mn.Z)), + o + ); + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + try { + this._tapNext.call(this._context, e); + } catch (e) { + return void this.destination.error(e); + } + this.destination.next(e); + }), + (t.prototype._error = function (e) { + try { + this._tapError.call(this._context, e); + } catch (e) { + return void this.destination.error(e); + } + this.destination.error(e); + }), + (t.prototype._complete = function () { + try { + this._tapComplete.call(this._context); + } catch (e) { + return void this.destination.error(e); + } + return this.destination.complete(); + }), + t + ); + })(p.L), + vn = { leading: !0, trailing: !1 }; + function Dn(e, t) { + return ( + void 0 === t && (t = vn), + function (r) { + return r.lift(new bn(e, t.leading, t.trailing)); + } + ); + } + var bn = (function () { + function e(e, t, r) { + (this.durationSelector = e), (this.leading = t), (this.trailing = r); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new Sn(e, this.durationSelector, this.leading, this.trailing)); + }), + e + ); + })(), + Sn = (function (e) { + function t(t, r, n, i) { + var o = e.call(this, t) || this; + return ( + (o.destination = t), + (o.durationSelector = r), + (o._leading = n), + (o._trailing = i), + (o._hasValue = !1), + o + ); + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + (this._hasValue = !0), + (this._sendValue = e), + this._throttled || (this._leading ? this.send() : this.throttle(e)); + }), + (t.prototype.send = function () { + var e = this._hasValue, + t = this._sendValue; + e && (this.destination.next(t), this.throttle(t)), + (this._hasValue = !1), + (this._sendValue = null); + }), + (t.prototype.throttle = function (e) { + var t = this.tryDurationSelector(e); + t && this.add((this._throttled = (0, o.D)(this, t))); + }), + (t.prototype.tryDurationSelector = function (e) { + try { + return this.durationSelector(e); + } catch (e) { + return this.destination.error(e), null; + } + }), + (t.prototype.throttlingDone = function () { + var e = this._throttled, + t = this._trailing; + e && e.unsubscribe(), (this._throttled = null), t && this.send(); + }), + (t.prototype.notifyNext = function (e, t, r, n, i) { + this.throttlingDone(); + }), + (t.prototype.notifyComplete = function () { + this.throttlingDone(); + }), + t + ); + })(i.L); + function kn(e, t, r) { + return ( + void 0 === t && (t = c.P), + void 0 === r && (r = vn), + function (n) { + return n.lift(new xn(e, t, r.leading, r.trailing)); + } + ); + } + var xn = (function () { + function e(e, t, r, n) { + (this.duration = e), (this.scheduler = t), (this.leading = r), (this.trailing = n); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe( + new Fn(e, this.duration, this.scheduler, this.leading, this.trailing) + ); + }), + e + ); + })(), + Fn = (function (e) { + function t(t, r, n, i, o) { + var s = e.call(this, t) || this; + return ( + (s.duration = r), + (s.scheduler = n), + (s.leading = i), + (s.trailing = o), + (s._hasTrailingValue = !1), + (s._trailingValue = null), + s + ); + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + this.throttled + ? this.trailing && ((this._trailingValue = e), (this._hasTrailingValue = !0)) + : (this.add( + (this.throttled = this.scheduler.schedule(Mn, this.duration, { + subscriber: this, + })) + ), + this.leading + ? this.destination.next(e) + : this.trailing && + ((this._trailingValue = e), (this._hasTrailingValue = !0))); + }), + (t.prototype._complete = function () { + this._hasTrailingValue + ? (this.destination.next(this._trailingValue), this.destination.complete()) + : this.destination.complete(); + }), + (t.prototype.clearThrottle = function () { + var e = this.throttled; + e && + (this.trailing && + this._hasTrailingValue && + (this.destination.next(this._trailingValue), + (this._trailingValue = null), + (this._hasTrailingValue = !1)), + e.unsubscribe(), + this.remove(e), + (this.throttled = null)); + }), + t + ); + })(p.L); + function Mn(e) { + e.subscriber.clearThrottle(); + } + var Nn = r(58721); + function Rn(e) { + return ( + void 0 === e && (e = c.P), + function (t) { + return (0, Nn.P)(function () { + return t.pipe( + xt( + function (t, r) { + var n = t.current; + return { value: r, current: e.now(), last: n }; + }, + { current: e.now(), value: void 0, last: void 0 } + ), + (0, Xe.U)(function (e) { + var t = e.current, + r = e.last, + n = e.value; + return new Kn(n, t - r); + }) + ); + }); + } + ); + } + var Kn = (function () { + return function (e, t) { + (this.value = e), (this.interval = t); + }; + })(), + Ln = r(87299); + function Tn(e, t, r) { + return ( + void 0 === r && (r = c.P), + function (n) { + var i = ce(e), + o = i ? +e - r.now() : Math.abs(e); + return n.lift(new Pn(o, i, t, r)); + } + ); + } + var Pn = (function () { + function e(e, t, r, n) { + (this.waitFor = e), + (this.absoluteTimeout = t), + (this.withObservable = r), + (this.scheduler = n); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe( + new Un(e, this.absoluteTimeout, this.waitFor, this.withObservable, this.scheduler) + ); + }), + e + ); + })(), + Un = (function (e) { + function t(t, r, n, i, o) { + var s = e.call(this, t) || this; + return ( + (s.absoluteTimeout = r), + (s.waitFor = n), + (s.withObservable = i), + (s.scheduler = o), + (s.action = null), + s.scheduleTimeout(), + s + ); + } + return ( + n.ZT(t, e), + (t.dispatchTimeout = function (e) { + var t = e.withObservable; + e._unsubscribeAndRecycle(), e.add((0, o.D)(e, t)); + }), + (t.prototype.scheduleTimeout = function () { + var e = this.action; + e + ? (this.action = e.schedule(this, this.waitFor)) + : this.add( + (this.action = this.scheduler.schedule(t.dispatchTimeout, this.waitFor, this)) + ); + }), + (t.prototype._next = function (t) { + this.absoluteTimeout || this.scheduleTimeout(), e.prototype._next.call(this, t); + }), + (t.prototype._unsubscribe = function () { + (this.action = null), (this.scheduler = null), (this.withObservable = null); + }), + t + ); + })(i.L), + _n = r(9491); + function On(e, t) { + return void 0 === t && (t = c.P), Tn(e, (0, _n._)(new Ln.W()), t); + } + function jn(e) { + return ( + void 0 === e && (e = c.P), + (0, Xe.U)(function (t) { + return new Yn(t, e.now()); + }) + ); + } + var Yn = (function () { + return function (e, t) { + (this.value = e), (this.timestamp = t); + }; + })(); + function Gn(e, t, r) { + return 0 === r ? [t] : (e.push(t), e); + } + function Jn() { + return Rt(Gn, []); + } + function Hn(e) { + return function (t) { + return t.lift(new qn(e)); + }; + } + var qn = (function () { + function e(e) { + this.windowBoundaries = e; + } + return ( + (e.prototype.call = function (e, t) { + var r = new zn(e), + n = t.subscribe(r); + return n.closed || r.add((0, o.D)(r, this.windowBoundaries)), n; + }), + e + ); + })(), + zn = (function (e) { + function t(t) { + var r = e.call(this, t) || this; + return (r.window = new ir.xQ()), t.next(r.window), r; + } + return ( + n.ZT(t, e), + (t.prototype.notifyNext = function (e, t, r, n, i) { + this.openWindow(); + }), + (t.prototype.notifyError = function (e, t) { + this._error(e); + }), + (t.prototype.notifyComplete = function (e) { + this._complete(); + }), + (t.prototype._next = function (e) { + this.window.next(e); + }), + (t.prototype._error = function (e) { + this.window.error(e), this.destination.error(e); + }), + (t.prototype._complete = function () { + this.window.complete(), this.destination.complete(); + }), + (t.prototype._unsubscribe = function () { + this.window = null; + }), + (t.prototype.openWindow = function () { + var e = this.window; + e && e.complete(); + var t = this.destination, + r = (this.window = new ir.xQ()); + t.next(r); + }), + t + ); + })(i.L); + function Wn(e, t) { + return ( + void 0 === t && (t = 0), + function (r) { + return r.lift(new Vn(e, t)); + } + ); + } + var Vn = (function () { + function e(e, t) { + (this.windowSize = e), (this.startWindowEvery = t); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new Xn(e, this.windowSize, this.startWindowEvery)); + }), + e + ); + })(), + Xn = (function (e) { + function t(t, r, n) { + var i = e.call(this, t) || this; + return ( + (i.destination = t), + (i.windowSize = r), + (i.startWindowEvery = n), + (i.windows = [new ir.xQ()]), + (i.count = 0), + t.next(i.windows[0]), + i + ); + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + for ( + var t = this.startWindowEvery > 0 ? this.startWindowEvery : this.windowSize, + r = this.destination, + n = this.windowSize, + i = this.windows, + o = i.length, + s = 0; + s < o && !this.closed; + s++ + ) + i[s].next(e); + var A = this.count - n + 1; + if ( + (A >= 0 && A % t == 0 && !this.closed && i.shift().complete(), + ++this.count % t == 0 && !this.closed) + ) { + var a = new ir.xQ(); + i.push(a), r.next(a); + } + }), + (t.prototype._error = function (e) { + var t = this.windows; + if (t) for (; t.length > 0 && !this.closed; ) t.shift().error(e); + this.destination.error(e); + }), + (t.prototype._complete = function () { + var e = this.windows; + if (e) for (; e.length > 0 && !this.closed; ) e.shift().complete(); + this.destination.complete(); + }), + (t.prototype._unsubscribe = function () { + (this.count = 0), (this.windows = null); + }), + t + ); + })(p.L); + function Zn(e) { + var t = c.P, + r = null, + n = Number.POSITIVE_INFINITY; + return ( + (0, m.K)(arguments[3]) && (t = arguments[3]), + (0, m.K)(arguments[2]) + ? (t = arguments[2]) + : (0, on.k)(arguments[2]) && (n = arguments[2]), + (0, m.K)(arguments[1]) + ? (t = arguments[1]) + : (0, on.k)(arguments[1]) && (r = arguments[1]), + function (i) { + return i.lift(new $n(e, r, n, t)); + } + ); + } + var $n = (function () { + function e(e, t, r, n) { + (this.windowTimeSpan = e), + (this.windowCreationInterval = t), + (this.maxWindowSize = r), + (this.scheduler = n); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe( + new ti( + e, + this.windowTimeSpan, + this.windowCreationInterval, + this.maxWindowSize, + this.scheduler + ) + ); + }), + e + ); + })(), + ei = (function (e) { + function t() { + var t = (null !== e && e.apply(this, arguments)) || this; + return (t._numberOfNextedValues = 0), t; + } + return ( + n.ZT(t, e), + (t.prototype.next = function (t) { + this._numberOfNextedValues++, e.prototype.next.call(this, t); + }), + Object.defineProperty(t.prototype, 'numberOfNextedValues', { + get: function () { + return this._numberOfNextedValues; + }, + enumerable: !0, + configurable: !0, + }), + t + ); + })(ir.xQ), + ti = (function (e) { + function t(t, r, n, i, o) { + var s = e.call(this, t) || this; + (s.destination = t), + (s.windowTimeSpan = r), + (s.windowCreationInterval = n), + (s.maxWindowSize = i), + (s.scheduler = o), + (s.windows = []); + var A = s.openWindow(); + if (null !== n && n >= 0) { + var a = { subscriber: s, window: A, context: null }, + c = { windowTimeSpan: r, windowCreationInterval: n, subscriber: s, scheduler: o }; + s.add(o.schedule(ii, r, a)), s.add(o.schedule(ni, n, c)); + } else { + var u = { subscriber: s, window: A, windowTimeSpan: r }; + s.add(o.schedule(ri, r, u)); + } + return s; + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + for (var t = this.windows, r = t.length, n = 0; n < r; n++) { + var i = t[n]; + i.closed || + (i.next(e), + i.numberOfNextedValues >= this.maxWindowSize && this.closeWindow(i)); + } + }), + (t.prototype._error = function (e) { + for (var t = this.windows; t.length > 0; ) t.shift().error(e); + this.destination.error(e); + }), + (t.prototype._complete = function () { + for (var e = this.windows; e.length > 0; ) { + var t = e.shift(); + t.closed || t.complete(); + } + this.destination.complete(); + }), + (t.prototype.openWindow = function () { + var e = new ei(); + return this.windows.push(e), this.destination.next(e), e; + }), + (t.prototype.closeWindow = function (e) { + e.complete(); + var t = this.windows; + t.splice(t.indexOf(e), 1); + }), + t + ); + })(p.L); + function ri(e) { + var t = e.subscriber, + r = e.windowTimeSpan, + n = e.window; + n && t.closeWindow(n), (e.window = t.openWindow()), this.schedule(e, r); + } + function ni(e) { + var t = e.windowTimeSpan, + r = e.subscriber, + n = e.scheduler, + i = e.windowCreationInterval, + o = r.openWindow(), + s = { action: this, subscription: null }, + A = { subscriber: r, window: o, context: s }; + (s.subscription = n.schedule(ii, t, A)), this.add(s.subscription), this.schedule(e, i); + } + function ii(e) { + var t = e.subscriber, + r = e.window, + n = e.context; + n && n.action && n.subscription && n.action.remove(n.subscription), t.closeWindow(r); + } + function oi(e, t) { + return function (r) { + return r.lift(new si(e, t)); + }; + } + var si = (function () { + function e(e, t) { + (this.openings = e), (this.closingSelector = t); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new Ai(e, this.openings, this.closingSelector)); + }), + e + ); + })(), + Ai = (function (e) { + function t(t, r, n) { + var i = e.call(this, t) || this; + return ( + (i.openings = r), + (i.closingSelector = n), + (i.contexts = []), + i.add((i.openSubscription = (0, o.D)(i, r, r))), + i + ); + } + return ( + n.ZT(t, e), + (t.prototype._next = function (e) { + var t = this.contexts; + if (t) for (var r = t.length, n = 0; n < r; n++) t[n].window.next(e); + }), + (t.prototype._error = function (t) { + var r = this.contexts; + if (((this.contexts = null), r)) + for (var n = r.length, i = -1; ++i < n; ) { + var o = r[i]; + o.window.error(t), o.subscription.unsubscribe(); + } + e.prototype._error.call(this, t); + }), + (t.prototype._complete = function () { + var t = this.contexts; + if (((this.contexts = null), t)) + for (var r = t.length, n = -1; ++n < r; ) { + var i = t[n]; + i.window.complete(), i.subscription.unsubscribe(); + } + e.prototype._complete.call(this); + }), + (t.prototype._unsubscribe = function () { + var e = this.contexts; + if (((this.contexts = null), e)) + for (var t = e.length, r = -1; ++r < t; ) { + var n = e[r]; + n.window.unsubscribe(), n.subscription.unsubscribe(); + } + }), + (t.prototype.notifyNext = function (e, t, r, n, i) { + if (e === this.openings) { + var s = void 0; + try { + s = (0, this.closingSelector)(t); + } catch (e) { + return this.error(e); + } + var A = new ir.xQ(), + a = new S.w(), + c = { window: A, subscription: a }; + this.contexts.push(c); + var u = (0, o.D)(this, s, c); + u.closed + ? this.closeWindow(this.contexts.length - 1) + : ((u.context = c), a.add(u)), + this.destination.next(A); + } else this.closeWindow(this.contexts.indexOf(e)); + }), + (t.prototype.notifyError = function (e) { + this.error(e); + }), + (t.prototype.notifyComplete = function (e) { + e !== this.openSubscription && this.closeWindow(this.contexts.indexOf(e.context)); + }), + (t.prototype.closeWindow = function (e) { + if (-1 !== e) { + var t = this.contexts, + r = t[e], + n = r.window, + i = r.subscription; + t.splice(e, 1), n.complete(), i.unsubscribe(); + } + }), + t + ); + })(i.L); + function ai(e) { + return function (t) { + return t.lift(new ci(e)); + }; + } + var ci = (function () { + function e(e) { + this.closingSelector = e; + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new ui(e, this.closingSelector)); + }), + e + ); + })(), + ui = (function (e) { + function t(t, r) { + var n = e.call(this, t) || this; + return (n.destination = t), (n.closingSelector = r), n.openWindow(), n; + } + return ( + n.ZT(t, e), + (t.prototype.notifyNext = function (e, t, r, n, i) { + this.openWindow(i); + }), + (t.prototype.notifyError = function (e, t) { + this._error(e); + }), + (t.prototype.notifyComplete = function (e) { + this.openWindow(e); + }), + (t.prototype._next = function (e) { + this.window.next(e); + }), + (t.prototype._error = function (e) { + this.window.error(e), + this.destination.error(e), + this.unsubscribeClosingNotification(); + }), + (t.prototype._complete = function () { + this.window.complete(), + this.destination.complete(), + this.unsubscribeClosingNotification(); + }), + (t.prototype.unsubscribeClosingNotification = function () { + this.closingNotification && this.closingNotification.unsubscribe(); + }), + (t.prototype.openWindow = function (e) { + void 0 === e && (e = null), e && (this.remove(e), e.unsubscribe()); + var t = this.window; + t && t.complete(); + var r, + n = (this.window = new ir.xQ()); + this.destination.next(n); + try { + r = (0, this.closingSelector)(); + } catch (e) { + return this.destination.error(e), void this.window.error(e); + } + this.add((this.closingNotification = (0, o.D)(this, r))); + }), + t + ); + })(i.L); + function li() { + for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; + return function (t) { + var r; + 'function' == typeof e[e.length - 1] && (r = e.pop()); + var n = e; + return t.lift(new hi(n, r)); + }; + } + var hi = (function () { + function e(e, t) { + (this.observables = e), (this.project = t); + } + return ( + (e.prototype.call = function (e, t) { + return t.subscribe(new gi(e, this.observables, this.project)); + }), + e + ); + })(), + gi = (function (e) { + function t(t, r, n) { + var i = e.call(this, t) || this; + (i.observables = r), (i.project = n), (i.toRespond = []); + var s = r.length; + i.values = new Array(s); + for (var A = 0; A < s; A++) i.toRespond.push(A); + for (A = 0; A < s; A++) { + var a = r[A]; + i.add((0, o.D)(i, a, a, A)); + } + return i; + } + return ( + n.ZT(t, e), + (t.prototype.notifyNext = function (e, t, r, n, i) { + this.values[r] = t; + var o = this.toRespond; + if (o.length > 0) { + var s = o.indexOf(r); + -1 !== s && o.splice(s, 1); + } + }), + (t.prototype.notifyComplete = function () {}), + (t.prototype._next = function (e) { + if (0 === this.toRespond.length) { + var t = [e].concat(this.values); + this.project ? this._tryProject(t) : this.destination.next(t); + } + }), + (t.prototype._tryProject = function (e) { + var t; + try { + t = this.project.apply(this, e); + } catch (e) { + return void this.destination.error(e); + } + this.destination.next(t); + }), + t + ); + })(i.L), + fi = r(21336); + function pi() { + for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t]; + return function (t) { + return t.lift.call(fi.$R.apply(void 0, [t].concat(e))); + }; + } + function di(e) { + return function (t) { + return t.lift(new fi.mx(e)); + }; + } + }, + 13499: (e, t, r) => { + var n = r(64293), + i = n.Buffer; + function o(e, t) { + for (var r in e) t[r] = e[r]; + } + function s(e, t, r) { + return i(e, t, r); + } + i.from && i.alloc && i.allocUnsafe && i.allocUnsafeSlow + ? (e.exports = n) + : (o(n, t), (t.Buffer = s)), + o(i, s), + (s.from = function (e, t, r) { + if ('number' == typeof e) throw new TypeError('Argument must not be a number'); + return i(e, t, r); + }), + (s.alloc = function (e, t, r) { + if ('number' != typeof e) throw new TypeError('Argument must be a number'); + var n = i(e); + return void 0 !== t ? ('string' == typeof r ? n.fill(t, r) : n.fill(t)) : n.fill(0), n; + }), + (s.allocUnsafe = function (e) { + if ('number' != typeof e) throw new TypeError('Argument must be a number'); + return i(e); + }), + (s.allocUnsafeSlow = function (e) { + if ('number' != typeof e) throw new TypeError('Argument must be a number'); + return n.SlowBuffer(e); + }); + }, + 44765: (e, t, r) => { + 'use strict'; + var n, + i = r(64293), + o = i.Buffer, + s = {}; + for (n in i) i.hasOwnProperty(n) && 'SlowBuffer' !== n && 'Buffer' !== n && (s[n] = i[n]); + var A = (s.Buffer = {}); + for (n in o) + o.hasOwnProperty(n) && 'allocUnsafe' !== n && 'allocUnsafeSlow' !== n && (A[n] = o[n]); + if ( + ((s.Buffer.prototype = o.prototype), + (A.from && A.from !== Uint8Array.from) || + (A.from = function (e, t, r) { + if ('number' == typeof e) + throw new TypeError( + 'The "value" argument must not be of type number. Received type ' + typeof e + ); + if (e && void 0 === e.length) + throw new TypeError( + 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type ' + + typeof e + ); + return o(e, t, r); + }), + A.alloc || + (A.alloc = function (e, t, r) { + if ('number' != typeof e) + throw new TypeError( + 'The "size" argument must be of type number. Received type ' + typeof e + ); + if (e < 0 || e >= 2 * (1 << 30)) + throw new RangeError('The value "' + e + '" is invalid for option "size"'); + var n = o(e); + return ( + t && 0 !== t.length ? ('string' == typeof r ? n.fill(t, r) : n.fill(t)) : n.fill(0), + n + ); + }), + !s.kStringMaxLength) + ) + try { + s.kStringMaxLength = process.binding('buffer').kStringMaxLength; + } catch (e) {} + s.constants || + ((s.constants = { MAX_LENGTH: s.kMaxLength }), + s.kStringMaxLength && (s.constants.MAX_STRING_LENGTH = s.kStringMaxLength)), + (e.exports = s); + }, + 95584: (e, t) => { + var r; + (t = e.exports = l), + (r = + 'object' == typeof process && + process.env && + process.env.NODE_DEBUG && + /\bsemver\b/i.test(process.env.NODE_DEBUG) + ? function () { + var e = Array.prototype.slice.call(arguments, 0); + e.unshift('SEMVER'), console.log.apply(console, e); + } + : function () {}), + (t.SEMVER_SPEC_VERSION = '2.0.0'); + var n = Number.MAX_SAFE_INTEGER || 9007199254740991, + i = (t.re = []), + o = (t.src = []), + s = (t.tokens = {}), + A = 0; + function a(e) { + s[e] = A++; + } + a('NUMERICIDENTIFIER'), + (o[s.NUMERICIDENTIFIER] = '0|[1-9]\\d*'), + a('NUMERICIDENTIFIERLOOSE'), + (o[s.NUMERICIDENTIFIERLOOSE] = '[0-9]+'), + a('NONNUMERICIDENTIFIER'), + (o[s.NONNUMERICIDENTIFIER] = '\\d*[a-zA-Z-][a-zA-Z0-9-]*'), + a('MAINVERSION'), + (o[s.MAINVERSION] = + '(' + + o[s.NUMERICIDENTIFIER] + + ')\\.(' + + o[s.NUMERICIDENTIFIER] + + ')\\.(' + + o[s.NUMERICIDENTIFIER] + + ')'), + a('MAINVERSIONLOOSE'), + (o[s.MAINVERSIONLOOSE] = + '(' + + o[s.NUMERICIDENTIFIERLOOSE] + + ')\\.(' + + o[s.NUMERICIDENTIFIERLOOSE] + + ')\\.(' + + o[s.NUMERICIDENTIFIERLOOSE] + + ')'), + a('PRERELEASEIDENTIFIER'), + (o[s.PRERELEASEIDENTIFIER] = + '(?:' + o[s.NUMERICIDENTIFIER] + '|' + o[s.NONNUMERICIDENTIFIER] + ')'), + a('PRERELEASEIDENTIFIERLOOSE'), + (o[s.PRERELEASEIDENTIFIERLOOSE] = + '(?:' + o[s.NUMERICIDENTIFIERLOOSE] + '|' + o[s.NONNUMERICIDENTIFIER] + ')'), + a('PRERELEASE'), + (o[s.PRERELEASE] = + '(?:-(' + o[s.PRERELEASEIDENTIFIER] + '(?:\\.' + o[s.PRERELEASEIDENTIFIER] + ')*))'), + a('PRERELEASELOOSE'), + (o[s.PRERELEASELOOSE] = + '(?:-?(' + + o[s.PRERELEASEIDENTIFIERLOOSE] + + '(?:\\.' + + o[s.PRERELEASEIDENTIFIERLOOSE] + + ')*))'), + a('BUILDIDENTIFIER'), + (o[s.BUILDIDENTIFIER] = '[0-9A-Za-z-]+'), + a('BUILD'), + (o[s.BUILD] = + '(?:\\+(' + o[s.BUILDIDENTIFIER] + '(?:\\.' + o[s.BUILDIDENTIFIER] + ')*))'), + a('FULL'), + a('FULLPLAIN'), + (o[s.FULLPLAIN] = 'v?' + o[s.MAINVERSION] + o[s.PRERELEASE] + '?' + o[s.BUILD] + '?'), + (o[s.FULL] = '^' + o[s.FULLPLAIN] + '$'), + a('LOOSEPLAIN'), + (o[s.LOOSEPLAIN] = + '[v=\\s]*' + o[s.MAINVERSIONLOOSE] + o[s.PRERELEASELOOSE] + '?' + o[s.BUILD] + '?'), + a('LOOSE'), + (o[s.LOOSE] = '^' + o[s.LOOSEPLAIN] + '$'), + a('GTLT'), + (o[s.GTLT] = '((?:<|>)?=?)'), + a('XRANGEIDENTIFIERLOOSE'), + (o[s.XRANGEIDENTIFIERLOOSE] = o[s.NUMERICIDENTIFIERLOOSE] + '|x|X|\\*'), + a('XRANGEIDENTIFIER'), + (o[s.XRANGEIDENTIFIER] = o[s.NUMERICIDENTIFIER] + '|x|X|\\*'), + a('XRANGEPLAIN'), + (o[s.XRANGEPLAIN] = + '[v=\\s]*(' + + o[s.XRANGEIDENTIFIER] + + ')(?:\\.(' + + o[s.XRANGEIDENTIFIER] + + ')(?:\\.(' + + o[s.XRANGEIDENTIFIER] + + ')(?:' + + o[s.PRERELEASE] + + ')?' + + o[s.BUILD] + + '?)?)?'), + a('XRANGEPLAINLOOSE'), + (o[s.XRANGEPLAINLOOSE] = + '[v=\\s]*(' + + o[s.XRANGEIDENTIFIERLOOSE] + + ')(?:\\.(' + + o[s.XRANGEIDENTIFIERLOOSE] + + ')(?:\\.(' + + o[s.XRANGEIDENTIFIERLOOSE] + + ')(?:' + + o[s.PRERELEASELOOSE] + + ')?' + + o[s.BUILD] + + '?)?)?'), + a('XRANGE'), + (o[s.XRANGE] = '^' + o[s.GTLT] + '\\s*' + o[s.XRANGEPLAIN] + '$'), + a('XRANGELOOSE'), + (o[s.XRANGELOOSE] = '^' + o[s.GTLT] + '\\s*' + o[s.XRANGEPLAINLOOSE] + '$'), + a('COERCE'), + (o[s.COERCE] = '(^|[^\\d])(\\d{1,16})(?:\\.(\\d{1,16}))?(?:\\.(\\d{1,16}))?(?:$|[^\\d])'), + a('COERCERTL'), + (i[s.COERCERTL] = new RegExp(o[s.COERCE], 'g')), + a('LONETILDE'), + (o[s.LONETILDE] = '(?:~>?)'), + a('TILDETRIM'), + (o[s.TILDETRIM] = '(\\s*)' + o[s.LONETILDE] + '\\s+'), + (i[s.TILDETRIM] = new RegExp(o[s.TILDETRIM], 'g')); + a('TILDE'), + (o[s.TILDE] = '^' + o[s.LONETILDE] + o[s.XRANGEPLAIN] + '$'), + a('TILDELOOSE'), + (o[s.TILDELOOSE] = '^' + o[s.LONETILDE] + o[s.XRANGEPLAINLOOSE] + '$'), + a('LONECARET'), + (o[s.LONECARET] = '(?:\\^)'), + a('CARETTRIM'), + (o[s.CARETTRIM] = '(\\s*)' + o[s.LONECARET] + '\\s+'), + (i[s.CARETTRIM] = new RegExp(o[s.CARETTRIM], 'g')); + a('CARET'), + (o[s.CARET] = '^' + o[s.LONECARET] + o[s.XRANGEPLAIN] + '$'), + a('CARETLOOSE'), + (o[s.CARETLOOSE] = '^' + o[s.LONECARET] + o[s.XRANGEPLAINLOOSE] + '$'), + a('COMPARATORLOOSE'), + (o[s.COMPARATORLOOSE] = '^' + o[s.GTLT] + '\\s*(' + o[s.LOOSEPLAIN] + ')$|^$'), + a('COMPARATOR'), + (o[s.COMPARATOR] = '^' + o[s.GTLT] + '\\s*(' + o[s.FULLPLAIN] + ')$|^$'), + a('COMPARATORTRIM'), + (o[s.COMPARATORTRIM] = + '(\\s*)' + o[s.GTLT] + '\\s*(' + o[s.LOOSEPLAIN] + '|' + o[s.XRANGEPLAIN] + ')'), + (i[s.COMPARATORTRIM] = new RegExp(o[s.COMPARATORTRIM], 'g')); + a('HYPHENRANGE'), + (o[s.HYPHENRANGE] = + '^\\s*(' + o[s.XRANGEPLAIN] + ')\\s+-\\s+(' + o[s.XRANGEPLAIN] + ')\\s*$'), + a('HYPHENRANGELOOSE'), + (o[s.HYPHENRANGELOOSE] = + '^\\s*(' + o[s.XRANGEPLAINLOOSE] + ')\\s+-\\s+(' + o[s.XRANGEPLAINLOOSE] + ')\\s*$'), + a('STAR'), + (o[s.STAR] = '(<|>)?=?\\s*\\*'); + for (var c = 0; c < A; c++) r(c, o[c]), i[c] || (i[c] = new RegExp(o[c])); + function u(e, t) { + if ( + ((t && 'object' == typeof t) || (t = { loose: !!t, includePrerelease: !1 }), + e instanceof l) + ) + return e; + if ('string' != typeof e) return null; + if (e.length > 256) return null; + if (!(t.loose ? i[s.LOOSE] : i[s.FULL]).test(e)) return null; + try { + return new l(e, t); + } catch (e) { + return null; + } + } + function l(e, t) { + if ( + ((t && 'object' == typeof t) || (t = { loose: !!t, includePrerelease: !1 }), + e instanceof l) + ) { + if (e.loose === t.loose) return e; + e = e.version; + } else if ('string' != typeof e) throw new TypeError('Invalid Version: ' + e); + if (e.length > 256) throw new TypeError('version is longer than 256 characters'); + if (!(this instanceof l)) return new l(e, t); + r('SemVer', e, t), (this.options = t), (this.loose = !!t.loose); + var o = e.trim().match(t.loose ? i[s.LOOSE] : i[s.FULL]); + if (!o) throw new TypeError('Invalid Version: ' + e); + if ( + ((this.raw = e), + (this.major = +o[1]), + (this.minor = +o[2]), + (this.patch = +o[3]), + this.major > n || this.major < 0) + ) + throw new TypeError('Invalid major version'); + if (this.minor > n || this.minor < 0) throw new TypeError('Invalid minor version'); + if (this.patch > n || this.patch < 0) throw new TypeError('Invalid patch version'); + o[4] + ? (this.prerelease = o[4].split('.').map(function (e) { + if (/^[0-9]+$/.test(e)) { + var t = +e; + if (t >= 0 && t < n) return t; + } + return e; + })) + : (this.prerelease = []), + (this.build = o[5] ? o[5].split('.') : []), + this.format(); + } + (t.parse = u), + (t.valid = function (e, t) { + var r = u(e, t); + return r ? r.version : null; + }), + (t.clean = function (e, t) { + var r = u(e.trim().replace(/^[=v]+/, ''), t); + return r ? r.version : null; + }), + (t.SemVer = l), + (l.prototype.format = function () { + return ( + (this.version = this.major + '.' + this.minor + '.' + this.patch), + this.prerelease.length && (this.version += '-' + this.prerelease.join('.')), + this.version + ); + }), + (l.prototype.toString = function () { + return this.version; + }), + (l.prototype.compare = function (e) { + return ( + r('SemVer.compare', this.version, this.options, e), + e instanceof l || (e = new l(e, this.options)), + this.compareMain(e) || this.comparePre(e) + ); + }), + (l.prototype.compareMain = function (e) { + return ( + e instanceof l || (e = new l(e, this.options)), + g(this.major, e.major) || g(this.minor, e.minor) || g(this.patch, e.patch) + ); + }), + (l.prototype.comparePre = function (e) { + if ( + (e instanceof l || (e = new l(e, this.options)), + this.prerelease.length && !e.prerelease.length) + ) + return -1; + if (!this.prerelease.length && e.prerelease.length) return 1; + if (!this.prerelease.length && !e.prerelease.length) return 0; + var t = 0; + do { + var n = this.prerelease[t], + i = e.prerelease[t]; + if ((r('prerelease compare', t, n, i), void 0 === n && void 0 === i)) return 0; + if (void 0 === i) return 1; + if (void 0 === n) return -1; + if (n !== i) return g(n, i); + } while (++t); + }), + (l.prototype.compareBuild = function (e) { + e instanceof l || (e = new l(e, this.options)); + var t = 0; + do { + var n = this.build[t], + i = e.build[t]; + if ((r('prerelease compare', t, n, i), void 0 === n && void 0 === i)) return 0; + if (void 0 === i) return 1; + if (void 0 === n) return -1; + if (n !== i) return g(n, i); + } while (++t); + }), + (l.prototype.inc = function (e, t) { + switch (e) { + case 'premajor': + (this.prerelease.length = 0), + (this.patch = 0), + (this.minor = 0), + this.major++, + this.inc('pre', t); + break; + case 'preminor': + (this.prerelease.length = 0), (this.patch = 0), this.minor++, this.inc('pre', t); + break; + case 'prepatch': + (this.prerelease.length = 0), this.inc('patch', t), this.inc('pre', t); + break; + case 'prerelease': + 0 === this.prerelease.length && this.inc('patch', t), this.inc('pre', t); + break; + case 'major': + (0 === this.minor && 0 === this.patch && 0 !== this.prerelease.length) || + this.major++, + (this.minor = 0), + (this.patch = 0), + (this.prerelease = []); + break; + case 'minor': + (0 === this.patch && 0 !== this.prerelease.length) || this.minor++, + (this.patch = 0), + (this.prerelease = []); + break; + case 'patch': + 0 === this.prerelease.length && this.patch++, (this.prerelease = []); + break; + case 'pre': + if (0 === this.prerelease.length) this.prerelease = [0]; + else { + for (var r = this.prerelease.length; --r >= 0; ) + 'number' == typeof this.prerelease[r] && (this.prerelease[r]++, (r = -2)); + -1 === r && this.prerelease.push(0); + } + t && + (this.prerelease[0] === t + ? isNaN(this.prerelease[1]) && (this.prerelease = [t, 0]) + : (this.prerelease = [t, 0])); + break; + default: + throw new Error('invalid increment argument: ' + e); + } + return this.format(), (this.raw = this.version), this; + }), + (t.inc = function (e, t, r, n) { + 'string' == typeof r && ((n = r), (r = void 0)); + try { + return new l(e, r).inc(t, n).version; + } catch (e) { + return null; + } + }), + (t.diff = function (e, t) { + if (C(e, t)) return null; + var r = u(e), + n = u(t), + i = ''; + if (r.prerelease.length || n.prerelease.length) { + i = 'pre'; + var o = 'prerelease'; + } + for (var s in r) + if (('major' === s || 'minor' === s || 'patch' === s) && r[s] !== n[s]) return i + s; + return o; + }), + (t.compareIdentifiers = g); + var h = /^[0-9]+$/; + function g(e, t) { + var r = h.test(e), + n = h.test(t); + return ( + r && n && ((e = +e), (t = +t)), + e === t ? 0 : r && !n ? -1 : n && !r ? 1 : e < t ? -1 : 1 + ); + } + function f(e, t, r) { + return new l(e, r).compare(new l(t, r)); + } + function p(e, t, r) { + return f(e, t, r) > 0; + } + function d(e, t, r) { + return f(e, t, r) < 0; + } + function C(e, t, r) { + return 0 === f(e, t, r); + } + function E(e, t, r) { + return 0 !== f(e, t, r); + } + function I(e, t, r) { + return f(e, t, r) >= 0; + } + function m(e, t, r) { + return f(e, t, r) <= 0; + } + function y(e, t, r, n) { + switch (t) { + case '===': + return ( + 'object' == typeof e && (e = e.version), + 'object' == typeof r && (r = r.version), + e === r + ); + case '!==': + return ( + 'object' == typeof e && (e = e.version), + 'object' == typeof r && (r = r.version), + e !== r + ); + case '': + case '=': + case '==': + return C(e, r, n); + case '!=': + return E(e, r, n); + case '>': + return p(e, r, n); + case '>=': + return I(e, r, n); + case '<': + return d(e, r, n); + case '<=': + return m(e, r, n); + default: + throw new TypeError('Invalid operator: ' + t); + } + } + function w(e, t) { + if ( + ((t && 'object' == typeof t) || (t = { loose: !!t, includePrerelease: !1 }), + e instanceof w) + ) { + if (e.loose === !!t.loose) return e; + e = e.value; + } + if (!(this instanceof w)) return new w(e, t); + r('comparator', e, t), + (this.options = t), + (this.loose = !!t.loose), + this.parse(e), + this.semver === B + ? (this.value = '') + : (this.value = this.operator + this.semver.version), + r('comp', this); + } + (t.rcompareIdentifiers = function (e, t) { + return g(t, e); + }), + (t.major = function (e, t) { + return new l(e, t).major; + }), + (t.minor = function (e, t) { + return new l(e, t).minor; + }), + (t.patch = function (e, t) { + return new l(e, t).patch; + }), + (t.compare = f), + (t.compareLoose = function (e, t) { + return f(e, t, !0); + }), + (t.compareBuild = function (e, t, r) { + var n = new l(e, r), + i = new l(t, r); + return n.compare(i) || n.compareBuild(i); + }), + (t.rcompare = function (e, t, r) { + return f(t, e, r); + }), + (t.sort = function (e, r) { + return e.sort(function (e, n) { + return t.compareBuild(e, n, r); + }); + }), + (t.rsort = function (e, r) { + return e.sort(function (e, n) { + return t.compareBuild(n, e, r); + }); + }), + (t.gt = p), + (t.lt = d), + (t.eq = C), + (t.neq = E), + (t.gte = I), + (t.lte = m), + (t.cmp = y), + (t.Comparator = w); + var B = {}; + function Q(e, t) { + if ( + ((t && 'object' == typeof t) || (t = { loose: !!t, includePrerelease: !1 }), + e instanceof Q) + ) + return e.loose === !!t.loose && e.includePrerelease === !!t.includePrerelease + ? e + : new Q(e.raw, t); + if (e instanceof w) return new Q(e.value, t); + if (!(this instanceof Q)) return new Q(e, t); + if ( + ((this.options = t), + (this.loose = !!t.loose), + (this.includePrerelease = !!t.includePrerelease), + (this.raw = e), + (this.set = e + .split(/\s*\|\|\s*/) + .map(function (e) { + return this.parseRange(e.trim()); + }, this) + .filter(function (e) { + return e.length; + })), + !this.set.length) + ) + throw new TypeError('Invalid SemVer Range: ' + e); + this.format(); + } + function v(e, t) { + for (var r = !0, n = e.slice(), i = n.pop(); r && n.length; ) + (r = n.every(function (e) { + return i.intersects(e, t); + })), + (i = n.pop()); + return r; + } + function D(e) { + return !e || 'x' === e.toLowerCase() || '*' === e; + } + function b(e, t, r, n, i, o, s, A, a, c, u, l, h) { + return ( + (t = D(r) + ? '' + : D(n) + ? '>=' + r + '.0.0' + : D(i) + ? '>=' + r + '.' + n + '.0' + : '>=' + t) + + ' ' + + (A = D(a) + ? '' + : D(c) + ? '<' + (+a + 1) + '.0.0' + : D(u) + ? '<' + a + '.' + (+c + 1) + '.0' + : l + ? '<=' + a + '.' + c + '.' + u + '-' + l + : '<=' + A) + ).trim(); + } + function S(e, t, n) { + for (var i = 0; i < e.length; i++) if (!e[i].test(t)) return !1; + if (t.prerelease.length && !n.includePrerelease) { + for (i = 0; i < e.length; i++) + if ((r(e[i].semver), e[i].semver !== B && e[i].semver.prerelease.length > 0)) { + var o = e[i].semver; + if (o.major === t.major && o.minor === t.minor && o.patch === t.patch) return !0; + } + return !1; + } + return !0; + } + function k(e, t, r) { + try { + t = new Q(t, r); + } catch (e) { + return !1; + } + return t.test(e); + } + function x(e, t, r, n) { + var i, o, s, A, a; + switch (((e = new l(e, n)), (t = new Q(t, n)), r)) { + case '>': + (i = p), (o = m), (s = d), (A = '>'), (a = '>='); + break; + case '<': + (i = d), (o = I), (s = p), (A = '<'), (a = '<='); + break; + default: + throw new TypeError('Must provide a hilo val of "<" or ">"'); + } + if (k(e, t, n)) return !1; + for (var c = 0; c < t.set.length; ++c) { + var u = t.set[c], + h = null, + g = null; + if ( + (u.forEach(function (e) { + e.semver === B && (e = new w('>=0.0.0')), + (h = h || e), + (g = g || e), + i(e.semver, h.semver, n) ? (h = e) : s(e.semver, g.semver, n) && (g = e); + }), + h.operator === A || h.operator === a) + ) + return !1; + if ((!g.operator || g.operator === A) && o(e, g.semver)) return !1; + if (g.operator === a && s(e, g.semver)) return !1; + } + return !0; + } + (w.prototype.parse = function (e) { + var t = this.options.loose ? i[s.COMPARATORLOOSE] : i[s.COMPARATOR], + r = e.match(t); + if (!r) throw new TypeError('Invalid comparator: ' + e); + (this.operator = void 0 !== r[1] ? r[1] : ''), + '=' === this.operator && (this.operator = ''), + r[2] ? (this.semver = new l(r[2], this.options.loose)) : (this.semver = B); + }), + (w.prototype.toString = function () { + return this.value; + }), + (w.prototype.test = function (e) { + if ((r('Comparator.test', e, this.options.loose), this.semver === B || e === B)) + return !0; + if ('string' == typeof e) + try { + e = new l(e, this.options); + } catch (e) { + return !1; + } + return y(e, this.operator, this.semver, this.options); + }), + (w.prototype.intersects = function (e, t) { + if (!(e instanceof w)) throw new TypeError('a Comparator is required'); + var r; + if ( + ((t && 'object' == typeof t) || (t = { loose: !!t, includePrerelease: !1 }), + '' === this.operator) + ) + return '' === this.value || ((r = new Q(e.value, t)), k(this.value, r, t)); + if ('' === e.operator) + return '' === e.value || ((r = new Q(this.value, t)), k(e.semver, r, t)); + var n = !( + ('>=' !== this.operator && '>' !== this.operator) || + ('>=' !== e.operator && '>' !== e.operator) + ), + i = !( + ('<=' !== this.operator && '<' !== this.operator) || + ('<=' !== e.operator && '<' !== e.operator) + ), + o = this.semver.version === e.semver.version, + s = !( + ('>=' !== this.operator && '<=' !== this.operator) || + ('>=' !== e.operator && '<=' !== e.operator) + ), + A = + y(this.semver, '<', e.semver, t) && + ('>=' === this.operator || '>' === this.operator) && + ('<=' === e.operator || '<' === e.operator), + a = + y(this.semver, '>', e.semver, t) && + ('<=' === this.operator || '<' === this.operator) && + ('>=' === e.operator || '>' === e.operator); + return n || i || (o && s) || A || a; + }), + (t.Range = Q), + (Q.prototype.format = function () { + return ( + (this.range = this.set + .map(function (e) { + return e.join(' ').trim(); + }) + .join('||') + .trim()), + this.range + ); + }), + (Q.prototype.toString = function () { + return this.range; + }), + (Q.prototype.parseRange = function (e) { + var t = this.options.loose; + e = e.trim(); + var n = t ? i[s.HYPHENRANGELOOSE] : i[s.HYPHENRANGE]; + (e = e.replace(n, b)), + r('hyphen replace', e), + (e = e.replace(i[s.COMPARATORTRIM], '$1$2$3')), + r('comparator trim', e, i[s.COMPARATORTRIM]), + (e = (e = (e = e.replace(i[s.TILDETRIM], '$1~')).replace(i[s.CARETTRIM], '$1^')) + .split(/\s+/) + .join(' ')); + var o = t ? i[s.COMPARATORLOOSE] : i[s.COMPARATOR], + A = e + .split(' ') + .map(function (e) { + return (function (e, t) { + return ( + r('comp', e, t), + (e = (function (e, t) { + return e + .trim() + .split(/\s+/) + .map(function (e) { + return (function (e, t) { + r('caret', e, t); + var n = t.loose ? i[s.CARETLOOSE] : i[s.CARET]; + return e.replace(n, function (t, n, i, o, s) { + var A; + return ( + r('caret', e, t, n, i, o, s), + D(n) + ? (A = '') + : D(i) + ? (A = '>=' + n + '.0.0 <' + (+n + 1) + '.0.0') + : D(o) + ? (A = + '0' === n + ? '>=' + n + '.' + i + '.0 <' + n + '.' + (+i + 1) + '.0' + : '>=' + n + '.' + i + '.0 <' + (+n + 1) + '.0.0') + : s + ? (r('replaceCaret pr', s), + (A = + '0' === n + ? '0' === i + ? '>=' + + n + + '.' + + i + + '.' + + o + + '-' + + s + + ' <' + + n + + '.' + + i + + '.' + + (+o + 1) + : '>=' + + n + + '.' + + i + + '.' + + o + + '-' + + s + + ' <' + + n + + '.' + + (+i + 1) + + '.0' + : '>=' + + n + + '.' + + i + + '.' + + o + + '-' + + s + + ' <' + + (+n + 1) + + '.0.0')) + : (r('no pr'), + (A = + '0' === n + ? '0' === i + ? '>=' + + n + + '.' + + i + + '.' + + o + + ' <' + + n + + '.' + + i + + '.' + + (+o + 1) + : '>=' + + n + + '.' + + i + + '.' + + o + + ' <' + + n + + '.' + + (+i + 1) + + '.0' + : '>=' + + n + + '.' + + i + + '.' + + o + + ' <' + + (+n + 1) + + '.0.0')), + r('caret return', A), + A + ); + }); + })(e, t); + }) + .join(' '); + })(e, t)), + r('caret', e), + (e = (function (e, t) { + return e + .trim() + .split(/\s+/) + .map(function (e) { + return (function (e, t) { + var n = t.loose ? i[s.TILDELOOSE] : i[s.TILDE]; + return e.replace(n, function (t, n, i, o, s) { + var A; + return ( + r('tilde', e, t, n, i, o, s), + D(n) + ? (A = '') + : D(i) + ? (A = '>=' + n + '.0.0 <' + (+n + 1) + '.0.0') + : D(o) + ? (A = '>=' + n + '.' + i + '.0 <' + n + '.' + (+i + 1) + '.0') + : s + ? (r('replaceTilde pr', s), + (A = + '>=' + + n + + '.' + + i + + '.' + + o + + '-' + + s + + ' <' + + n + + '.' + + (+i + 1) + + '.0')) + : (A = + '>=' + + n + + '.' + + i + + '.' + + o + + ' <' + + n + + '.' + + (+i + 1) + + '.0'), + r('tilde return', A), + A + ); + }); + })(e, t); + }) + .join(' '); + })(e, t)), + r('tildes', e), + (e = (function (e, t) { + return ( + r('replaceXRanges', e, t), + e + .split(/\s+/) + .map(function (e) { + return (function (e, t) { + e = e.trim(); + var n = t.loose ? i[s.XRANGELOOSE] : i[s.XRANGE]; + return e.replace(n, function (n, i, o, s, A, a) { + r('xRange', e, n, i, o, s, A, a); + var c = D(o), + u = c || D(s), + l = u || D(A), + h = l; + return ( + '=' === i && h && (i = ''), + (a = t.includePrerelease ? '-0' : ''), + c + ? (n = '>' === i || '<' === i ? '<0.0.0-0' : '*') + : i && h + ? (u && (s = 0), + (A = 0), + '>' === i + ? ((i = '>='), + u + ? ((o = +o + 1), (s = 0), (A = 0)) + : ((s = +s + 1), (A = 0))) + : '<=' === i && + ((i = '<'), u ? (o = +o + 1) : (s = +s + 1)), + (n = i + o + '.' + s + '.' + A + a)) + : u + ? (n = '>=' + o + '.0.0' + a + ' <' + (+o + 1) + '.0.0' + a) + : l && + (n = + '>=' + + o + + '.' + + s + + '.0' + + a + + ' <' + + o + + '.' + + (+s + 1) + + '.0' + + a), + r('xRange return', n), + n + ); + }); + })(e, t); + }) + .join(' ') + ); + })(e, t)), + r('xrange', e), + (e = (function (e, t) { + return r('replaceStars', e, t), e.trim().replace(i[s.STAR], ''); + })(e, t)), + r('stars', e), + e + ); + })(e, this.options); + }, this) + .join(' ') + .split(/\s+/); + return ( + this.options.loose && + (A = A.filter(function (e) { + return !!e.match(o); + })), + (A = A.map(function (e) { + return new w(e, this.options); + }, this)) + ); + }), + (Q.prototype.intersects = function (e, t) { + if (!(e instanceof Q)) throw new TypeError('a Range is required'); + return this.set.some(function (r) { + return ( + v(r, t) && + e.set.some(function (e) { + return ( + v(e, t) && + r.every(function (r) { + return e.every(function (e) { + return r.intersects(e, t); + }); + }) + ); + }) + ); + }); + }), + (t.toComparators = function (e, t) { + return new Q(e, t).set.map(function (e) { + return e + .map(function (e) { + return e.value; + }) + .join(' ') + .trim() + .split(' '); + }); + }), + (Q.prototype.test = function (e) { + if (!e) return !1; + if ('string' == typeof e) + try { + e = new l(e, this.options); + } catch (e) { + return !1; + } + for (var t = 0; t < this.set.length; t++) + if (S(this.set[t], e, this.options)) return !0; + return !1; + }), + (t.satisfies = k), + (t.maxSatisfying = function (e, t, r) { + var n = null, + i = null; + try { + var o = new Q(t, r); + } catch (e) { + return null; + } + return ( + e.forEach(function (e) { + o.test(e) && ((n && -1 !== i.compare(e)) || (i = new l((n = e), r))); + }), + n + ); + }), + (t.minSatisfying = function (e, t, r) { + var n = null, + i = null; + try { + var o = new Q(t, r); + } catch (e) { + return null; + } + return ( + e.forEach(function (e) { + o.test(e) && ((n && 1 !== i.compare(e)) || (i = new l((n = e), r))); + }), + n + ); + }), + (t.minVersion = function (e, t) { + e = new Q(e, t); + var r = new l('0.0.0'); + if (e.test(r)) return r; + if (((r = new l('0.0.0-0')), e.test(r))) return r; + r = null; + for (var n = 0; n < e.set.length; ++n) { + e.set[n].forEach(function (e) { + var t = new l(e.semver.version); + switch (e.operator) { + case '>': + 0 === t.prerelease.length ? t.patch++ : t.prerelease.push(0), + (t.raw = t.format()); + case '': + case '>=': + (r && !p(r, t)) || (r = t); + break; + case '<': + case '<=': + break; + default: + throw new Error('Unexpected operation: ' + e.operator); + } + }); + } + if (r && e.test(r)) return r; + return null; + }), + (t.validRange = function (e, t) { + try { + return new Q(e, t).range || '*'; + } catch (e) { + return null; + } + }), + (t.ltr = function (e, t, r) { + return x(e, t, '<', r); + }), + (t.gtr = function (e, t, r) { + return x(e, t, '>', r); + }), + (t.outside = x), + (t.prerelease = function (e, t) { + var r = u(e, t); + return r && r.prerelease.length ? r.prerelease : null; + }), + (t.intersects = function (e, t, r) { + return (e = new Q(e, r)), (t = new Q(t, r)), e.intersects(t); + }), + (t.coerce = function (e, t) { + if (e instanceof l) return e; + 'number' == typeof e && (e = String(e)); + if ('string' != typeof e) return null; + var r = null; + if ((t = t || {}).rtl) { + for ( + var n; + (n = i[s.COERCERTL].exec(e)) && (!r || r.index + r[0].length !== e.length); + + ) + (r && n.index + n[0].length === r.index + r[0].length) || (r = n), + (i[s.COERCERTL].lastIndex = n.index + n[1].length + n[2].length); + i[s.COERCERTL].lastIndex = -1; + } else r = e.match(i[s.COERCE]); + if (null === r) return null; + return u(r[2] + '.' + (r[3] || '0') + '.' + (r[4] || '0'), t); + }); + }, + 29069: (e, t, r) => { + const n = Symbol('SemVer ANY'); + class i { + static get ANY() { + return n; + } + constructor(e, t) { + if ( + ((t && 'object' == typeof t) || (t = { loose: !!t, includePrerelease: !1 }), + e instanceof i) + ) { + if (e.loose === !!t.loose) return e; + e = e.value; + } + a('comparator', e, t), + (this.options = t), + (this.loose = !!t.loose), + this.parse(e), + this.semver === n + ? (this.value = '') + : (this.value = this.operator + this.semver.version), + a('comp', this); + } + parse(e) { + const t = this.options.loose ? o[s.COMPARATORLOOSE] : o[s.COMPARATOR], + r = e.match(t); + if (!r) throw new TypeError('Invalid comparator: ' + e); + (this.operator = void 0 !== r[1] ? r[1] : ''), + '=' === this.operator && (this.operator = ''), + r[2] ? (this.semver = new c(r[2], this.options.loose)) : (this.semver = n); + } + toString() { + return this.value; + } + test(e) { + if ((a('Comparator.test', e, this.options.loose), this.semver === n || e === n)) + return !0; + if ('string' == typeof e) + try { + e = new c(e, this.options); + } catch (e) { + return !1; + } + return A(e, this.operator, this.semver, this.options); + } + intersects(e, t) { + if (!(e instanceof i)) throw new TypeError('a Comparator is required'); + if ( + ((t && 'object' == typeof t) || (t = { loose: !!t, includePrerelease: !1 }), + '' === this.operator) + ) + return '' === this.value || new u(e.value, t).test(this.value); + if ('' === e.operator) return '' === e.value || new u(this.value, t).test(e.semver); + const r = !( + ('>=' !== this.operator && '>' !== this.operator) || + ('>=' !== e.operator && '>' !== e.operator) + ), + n = !( + ('<=' !== this.operator && '<' !== this.operator) || + ('<=' !== e.operator && '<' !== e.operator) + ), + o = this.semver.version === e.semver.version, + s = !( + ('>=' !== this.operator && '<=' !== this.operator) || + ('>=' !== e.operator && '<=' !== e.operator) + ), + a = + A(this.semver, '<', e.semver, t) && + ('>=' === this.operator || '>' === this.operator) && + ('<=' === e.operator || '<' === e.operator), + c = + A(this.semver, '>', e.semver, t) && + ('<=' === this.operator || '<' === this.operator) && + ('>=' === e.operator || '>' === e.operator); + return r || n || (o && s) || a || c; + } + } + e.exports = i; + const { re: o, t: s } = r(49439), + A = r(38754), + a = r(6029), + c = r(14772), + u = r(73004); + }, + 73004: (e, t, r) => { + class n { + constructor(e, t) { + if ( + ((t && 'object' == typeof t) || (t = { loose: !!t, includePrerelease: !1 }), + e instanceof n) + ) + return e.loose === !!t.loose && e.includePrerelease === !!t.includePrerelease + ? e + : new n(e.raw, t); + if (e instanceof i) + return (this.raw = e.value), (this.set = [[e]]), this.format(), this; + if ( + ((this.options = t), + (this.loose = !!t.loose), + (this.includePrerelease = !!t.includePrerelease), + (this.raw = e), + (this.set = e + .split(/\s*\|\|\s*/) + .map((e) => this.parseRange(e.trim())) + .filter((e) => e.length)), + !this.set.length) + ) + throw new TypeError('Invalid SemVer Range: ' + e); + this.format(); + } + format() { + return ( + (this.range = this.set + .map((e) => e.join(' ').trim()) + .join('||') + .trim()), + this.range + ); + } + toString() { + return this.range; + } + parseRange(e) { + const t = this.options.loose; + e = e.trim(); + const r = t ? A[a.HYPHENRANGELOOSE] : A[a.HYPHENRANGE]; + (e = e.replace(r, B(this.options.includePrerelease))), + o('hyphen replace', e), + (e = e.replace(A[a.COMPARATORTRIM], c)), + o('comparator trim', e, A[a.COMPARATORTRIM]), + (e = (e = (e = e.replace(A[a.TILDETRIM], u)).replace(A[a.CARETTRIM], l)) + .split(/\s+/) + .join(' ')); + const n = t ? A[a.COMPARATORLOOSE] : A[a.COMPARATOR]; + return e + .split(' ') + .map((e) => g(e, this.options)) + .join(' ') + .split(/\s+/) + .map((e) => w(e, this.options)) + .filter(this.options.loose ? (e) => !!e.match(n) : () => !0) + .map((e) => new i(e, this.options)); + } + intersects(e, t) { + if (!(e instanceof n)) throw new TypeError('a Range is required'); + return this.set.some( + (r) => + h(r, t) && + e.set.some((e) => h(e, t) && r.every((r) => e.every((e) => r.intersects(e, t)))) + ); + } + test(e) { + if (!e) return !1; + if ('string' == typeof e) + try { + e = new s(e, this.options); + } catch (e) { + return !1; + } + for (let t = 0; t < this.set.length; t++) + if (Q(this.set[t], e, this.options)) return !0; + return !1; + } + } + e.exports = n; + const i = r(29069), + o = r(6029), + s = r(14772), + { re: A, t: a, comparatorTrimReplace: c, tildeTrimReplace: u, caretTrimReplace: l } = r( + 49439 + ), + h = (e, t) => { + let r = !0; + const n = e.slice(); + let i = n.pop(); + for (; r && n.length; ) (r = n.every((e) => i.intersects(e, t))), (i = n.pop()); + return r; + }, + g = (e, t) => ( + o('comp', e, t), + (e = C(e, t)), + o('caret', e), + (e = p(e, t)), + o('tildes', e), + (e = I(e, t)), + o('xrange', e), + (e = y(e, t)), + o('stars', e), + e + ), + f = (e) => !e || 'x' === e.toLowerCase() || '*' === e, + p = (e, t) => + e + .trim() + .split(/\s+/) + .map((e) => d(e, t)) + .join(' '), + d = (e, t) => { + const r = t.loose ? A[a.TILDELOOSE] : A[a.TILDE]; + return e.replace(r, (t, r, n, i, s) => { + let A; + return ( + o('tilde', e, t, r, n, i, s), + f(r) + ? (A = '') + : f(n) + ? (A = `>=${r}.0.0 <${+r + 1}.0.0-0`) + : f(i) + ? (A = `>=${r}.${n}.0 <${r}.${+n + 1}.0-0`) + : s + ? (o('replaceTilde pr', s), (A = `>=${r}.${n}.${i}-${s} <${r}.${+n + 1}.0-0`)) + : (A = `>=${r}.${n}.${i} <${r}.${+n + 1}.0-0`), + o('tilde return', A), + A + ); + }); + }, + C = (e, t) => + e + .trim() + .split(/\s+/) + .map((e) => E(e, t)) + .join(' '), + E = (e, t) => { + o('caret', e, t); + const r = t.loose ? A[a.CARETLOOSE] : A[a.CARET], + n = t.includePrerelease ? '-0' : ''; + return e.replace(r, (t, r, i, s, A) => { + let a; + return ( + o('caret', e, t, r, i, s, A), + f(r) + ? (a = '') + : f(i) + ? (a = `>=${r}.0.0${n} <${+r + 1}.0.0-0`) + : f(s) + ? (a = + '0' === r + ? `>=${r}.${i}.0${n} <${r}.${+i + 1}.0-0` + : `>=${r}.${i}.0${n} <${+r + 1}.0.0-0`) + : A + ? (o('replaceCaret pr', A), + (a = + '0' === r + ? '0' === i + ? `>=${r}.${i}.${s}-${A} <${r}.${i}.${+s + 1}-0` + : `>=${r}.${i}.${s}-${A} <${r}.${+i + 1}.0-0` + : `>=${r}.${i}.${s}-${A} <${+r + 1}.0.0-0`)) + : (o('no pr'), + (a = + '0' === r + ? '0' === i + ? `>=${r}.${i}.${s}${n} <${r}.${i}.${+s + 1}-0` + : `>=${r}.${i}.${s}${n} <${r}.${+i + 1}.0-0` + : `>=${r}.${i}.${s} <${+r + 1}.0.0-0`)), + o('caret return', a), + a + ); + }); + }, + I = (e, t) => ( + o('replaceXRanges', e, t), + e + .split(/\s+/) + .map((e) => m(e, t)) + .join(' ') + ), + m = (e, t) => { + e = e.trim(); + const r = t.loose ? A[a.XRANGELOOSE] : A[a.XRANGE]; + return e.replace(r, (r, n, i, s, A, a) => { + o('xRange', e, r, n, i, s, A, a); + const c = f(i), + u = c || f(s), + l = u || f(A), + h = l; + return ( + '=' === n && h && (n = ''), + (a = t.includePrerelease ? '-0' : ''), + c + ? (r = '>' === n || '<' === n ? '<0.0.0-0' : '*') + : n && h + ? (u && (s = 0), + (A = 0), + '>' === n + ? ((n = '>='), u ? ((i = +i + 1), (s = 0), (A = 0)) : ((s = +s + 1), (A = 0))) + : '<=' === n && ((n = '<'), u ? (i = +i + 1) : (s = +s + 1)), + '<' === n && (a = '-0'), + (r = `${n + i}.${s}.${A}${a}`)) + : u + ? (r = `>=${i}.0.0${a} <${+i + 1}.0.0-0`) + : l && (r = `>=${i}.${s}.0${a} <${i}.${+s + 1}.0-0`), + o('xRange return', r), + r + ); + }); + }, + y = (e, t) => (o('replaceStars', e, t), e.trim().replace(A[a.STAR], '')), + w = (e, t) => ( + o('replaceGTE0', e, t), + e.trim().replace(A[t.includePrerelease ? a.GTE0PRE : a.GTE0], '') + ), + B = (e) => (t, r, n, i, o, s, A, a, c, u, l, h, g) => + `${(r = f(n) + ? '' + : f(i) + ? `>=${n}.0.0${e ? '-0' : ''}` + : f(o) + ? `>=${n}.${i}.0${e ? '-0' : ''}` + : s + ? '>=' + r + : `>=${r}${e ? '-0' : ''}`)} ${(a = f(c) + ? '' + : f(u) + ? `<${+c + 1}.0.0-0` + : f(l) + ? `<${c}.${+u + 1}.0-0` + : h + ? `<=${c}.${u}.${l}-${h}` + : e + ? `<${c}.${u}.${+l + 1}-0` + : '<=' + a)}`.trim(), + Q = (e, t, r) => { + for (let r = 0; r < e.length; r++) if (!e[r].test(t)) return !1; + if (t.prerelease.length && !r.includePrerelease) { + for (let r = 0; r < e.length; r++) + if ((o(e[r].semver), e[r].semver !== i.ANY && e[r].semver.prerelease.length > 0)) { + const n = e[r].semver; + if (n.major === t.major && n.minor === t.minor && n.patch === t.patch) return !0; + } + return !1; + } + return !0; + }; + }, + 14772: (e, t, r) => { + const n = r(6029), + { MAX_LENGTH: i, MAX_SAFE_INTEGER: o } = r(76483), + { re: s, t: A } = r(49439), + { compareIdentifiers: a } = r(99297); + class c { + constructor(e, t) { + if ( + ((t && 'object' == typeof t) || (t = { loose: !!t, includePrerelease: !1 }), + e instanceof c) + ) { + if (e.loose === !!t.loose && e.includePrerelease === !!t.includePrerelease) return e; + e = e.version; + } else if ('string' != typeof e) throw new TypeError('Invalid Version: ' + e); + if (e.length > i) throw new TypeError(`version is longer than ${i} characters`); + n('SemVer', e, t), + (this.options = t), + (this.loose = !!t.loose), + (this.includePrerelease = !!t.includePrerelease); + const r = e.trim().match(t.loose ? s[A.LOOSE] : s[A.FULL]); + if (!r) throw new TypeError('Invalid Version: ' + e); + if ( + ((this.raw = e), + (this.major = +r[1]), + (this.minor = +r[2]), + (this.patch = +r[3]), + this.major > o || this.major < 0) + ) + throw new TypeError('Invalid major version'); + if (this.minor > o || this.minor < 0) throw new TypeError('Invalid minor version'); + if (this.patch > o || this.patch < 0) throw new TypeError('Invalid patch version'); + r[4] + ? (this.prerelease = r[4].split('.').map((e) => { + if (/^[0-9]+$/.test(e)) { + const t = +e; + if (t >= 0 && t < o) return t; + } + return e; + })) + : (this.prerelease = []), + (this.build = r[5] ? r[5].split('.') : []), + this.format(); + } + format() { + return ( + (this.version = `${this.major}.${this.minor}.${this.patch}`), + this.prerelease.length && (this.version += '-' + this.prerelease.join('.')), + this.version + ); + } + toString() { + return this.version; + } + compare(e) { + if ((n('SemVer.compare', this.version, this.options, e), !(e instanceof c))) { + if ('string' == typeof e && e === this.version) return 0; + e = new c(e, this.options); + } + return e.version === this.version ? 0 : this.compareMain(e) || this.comparePre(e); + } + compareMain(e) { + return ( + e instanceof c || (e = new c(e, this.options)), + a(this.major, e.major) || a(this.minor, e.minor) || a(this.patch, e.patch) + ); + } + comparePre(e) { + if ( + (e instanceof c || (e = new c(e, this.options)), + this.prerelease.length && !e.prerelease.length) + ) + return -1; + if (!this.prerelease.length && e.prerelease.length) return 1; + if (!this.prerelease.length && !e.prerelease.length) return 0; + let t = 0; + do { + const r = this.prerelease[t], + i = e.prerelease[t]; + if ((n('prerelease compare', t, r, i), void 0 === r && void 0 === i)) return 0; + if (void 0 === i) return 1; + if (void 0 === r) return -1; + if (r !== i) return a(r, i); + } while (++t); + } + compareBuild(e) { + e instanceof c || (e = new c(e, this.options)); + let t = 0; + do { + const r = this.build[t], + i = e.build[t]; + if ((n('prerelease compare', t, r, i), void 0 === r && void 0 === i)) return 0; + if (void 0 === i) return 1; + if (void 0 === r) return -1; + if (r !== i) return a(r, i); + } while (++t); + } + inc(e, t) { + switch (e) { + case 'premajor': + (this.prerelease.length = 0), + (this.patch = 0), + (this.minor = 0), + this.major++, + this.inc('pre', t); + break; + case 'preminor': + (this.prerelease.length = 0), (this.patch = 0), this.minor++, this.inc('pre', t); + break; + case 'prepatch': + (this.prerelease.length = 0), this.inc('patch', t), this.inc('pre', t); + break; + case 'prerelease': + 0 === this.prerelease.length && this.inc('patch', t), this.inc('pre', t); + break; + case 'major': + (0 === this.minor && 0 === this.patch && 0 !== this.prerelease.length) || + this.major++, + (this.minor = 0), + (this.patch = 0), + (this.prerelease = []); + break; + case 'minor': + (0 === this.patch && 0 !== this.prerelease.length) || this.minor++, + (this.patch = 0), + (this.prerelease = []); + break; + case 'patch': + 0 === this.prerelease.length && this.patch++, (this.prerelease = []); + break; + case 'pre': + if (0 === this.prerelease.length) this.prerelease = [0]; + else { + let e = this.prerelease.length; + for (; --e >= 0; ) + 'number' == typeof this.prerelease[e] && (this.prerelease[e]++, (e = -2)); + -1 === e && this.prerelease.push(0); + } + t && + (this.prerelease[0] === t + ? isNaN(this.prerelease[1]) && (this.prerelease = [t, 0]) + : (this.prerelease = [t, 0])); + break; + default: + throw new Error('invalid increment argument: ' + e); + } + return this.format(), (this.raw = this.version), this; + } + } + e.exports = c; + }, + 31192: (e, t, r) => { + const n = r(21883); + e.exports = (e, t) => { + const r = n(e.trim().replace(/^[=v]+/, ''), t); + return r ? r.version : null; + }; + }, + 38754: (e, t, r) => { + const n = r(78760), + i = r(83286), + o = r(26544), + s = r(44984), + A = r(65069), + a = r(93845); + e.exports = (e, t, r, c) => { + switch (t) { + case '===': + return ( + 'object' == typeof e && (e = e.version), + 'object' == typeof r && (r = r.version), + e === r + ); + case '!==': + return ( + 'object' == typeof e && (e = e.version), + 'object' == typeof r && (r = r.version), + e !== r + ); + case '': + case '=': + case '==': + return n(e, r, c); + case '!=': + return i(e, r, c); + case '>': + return o(e, r, c); + case '>=': + return s(e, r, c); + case '<': + return A(e, r, c); + case '<=': + return a(e, r, c); + default: + throw new TypeError('Invalid operator: ' + t); + } + }; + }, + 38113: (e, t, r) => { + const n = r(14772), + i = r(21883), + { re: o, t: s } = r(49439); + e.exports = (e, t) => { + if (e instanceof n) return e; + if (('number' == typeof e && (e = String(e)), 'string' != typeof e)) return null; + let r = null; + if ((t = t || {}).rtl) { + let t; + for (; (t = o[s.COERCERTL].exec(e)) && (!r || r.index + r[0].length !== e.length); ) + (r && t.index + t[0].length === r.index + r[0].length) || (r = t), + (o[s.COERCERTL].lastIndex = t.index + t[1].length + t[2].length); + o[s.COERCERTL].lastIndex = -1; + } else r = e.match(o[s.COERCE]); + return null === r ? null : i(`${r[2]}.${r[3] || '0'}.${r[4] || '0'}`, t); + }; + }, + 63353: (e, t, r) => { + const n = r(14772); + e.exports = (e, t, r) => { + const i = new n(e, r), + o = new n(t, r); + return i.compare(o) || i.compareBuild(o); + }; + }, + 58566: (e, t, r) => { + const n = r(17340); + e.exports = (e, t) => n(e, t, !0); + }, + 17340: (e, t, r) => { + const n = r(14772); + e.exports = (e, t, r) => new n(e, r).compare(new n(t, r)); + }, + 29301: (e, t, r) => { + const n = r(21883), + i = r(78760); + e.exports = (e, t) => { + if (i(e, t)) return null; + { + const r = n(e), + i = n(t), + o = r.prerelease.length || i.prerelease.length, + s = o ? 'pre' : '', + A = o ? 'prerelease' : ''; + for (const e in r) + if (('major' === e || 'minor' === e || 'patch' === e) && r[e] !== i[e]) return s + e; + return A; + } + }; + }, + 78760: (e, t, r) => { + const n = r(17340); + e.exports = (e, t, r) => 0 === n(e, t, r); + }, + 26544: (e, t, r) => { + const n = r(17340); + e.exports = (e, t, r) => n(e, t, r) > 0; + }, + 44984: (e, t, r) => { + const n = r(17340); + e.exports = (e, t, r) => n(e, t, r) >= 0; + }, + 24063: (e, t, r) => { + const n = r(14772); + e.exports = (e, t, r, i) => { + 'string' == typeof r && ((i = r), (r = void 0)); + try { + return new n(e, r).inc(t, i).version; + } catch (e) { + return null; + } + }; + }, + 65069: (e, t, r) => { + const n = r(17340); + e.exports = (e, t, r) => n(e, t, r) < 0; + }, + 93845: (e, t, r) => { + const n = r(17340); + e.exports = (e, t, r) => n(e, t, r) <= 0; + }, + 75157: (e, t, r) => { + const n = r(14772); + e.exports = (e, t) => new n(e, t).major; + }, + 5195: (e, t, r) => { + const n = r(14772); + e.exports = (e, t) => new n(e, t).minor; + }, + 83286: (e, t, r) => { + const n = r(17340); + e.exports = (e, t, r) => 0 !== n(e, t, r); + }, + 21883: (e, t, r) => { + const { MAX_LENGTH: n } = r(76483), + { re: i, t: o } = r(49439), + s = r(14772); + e.exports = (e, t) => { + if ( + ((t && 'object' == typeof t) || (t = { loose: !!t, includePrerelease: !1 }), + e instanceof s) + ) + return e; + if ('string' != typeof e) return null; + if (e.length > n) return null; + if (!(t.loose ? i[o.LOOSE] : i[o.FULL]).test(e)) return null; + try { + return new s(e, t); + } catch (e) { + return null; + } + }; + }, + 39592: (e, t, r) => { + const n = r(14772); + e.exports = (e, t) => new n(e, t).patch; + }, + 27050: (e, t, r) => { + const n = r(21883); + e.exports = (e, t) => { + const r = n(e, t); + return r && r.prerelease.length ? r.prerelease : null; + }; + }, + 93788: (e, t, r) => { + const n = r(17340); + e.exports = (e, t, r) => n(t, e, r); + }, + 15213: (e, t, r) => { + const n = r(63353); + e.exports = (e, t) => e.sort((e, r) => n(r, e, t)); + }, + 73011: (e, t, r) => { + const n = r(73004); + e.exports = (e, t, r) => { + try { + t = new n(t, r); + } catch (e) { + return !1; + } + return t.test(e); + }; + }, + 71102: (e, t, r) => { + const n = r(63353); + e.exports = (e, t) => e.sort((e, r) => n(e, r, t)); + }, + 99589: (e, t, r) => { + const n = r(21883); + e.exports = (e, t) => { + const r = n(e, t); + return r ? r.version : null; + }; + }, + 53887: (e, t, r) => { + const n = r(49439); + e.exports = { + re: n.re, + src: n.src, + tokens: n.t, + SEMVER_SPEC_VERSION: r(76483).SEMVER_SPEC_VERSION, + SemVer: r(14772), + compareIdentifiers: r(99297).compareIdentifiers, + rcompareIdentifiers: r(99297).rcompareIdentifiers, + parse: r(21883), + valid: r(99589), + clean: r(31192), + inc: r(24063), + diff: r(29301), + major: r(75157), + minor: r(5195), + patch: r(39592), + prerelease: r(27050), + compare: r(17340), + rcompare: r(93788), + compareLoose: r(58566), + compareBuild: r(63353), + sort: r(71102), + rsort: r(15213), + gt: r(26544), + lt: r(65069), + eq: r(78760), + neq: r(83286), + gte: r(44984), + lte: r(93845), + cmp: r(38754), + coerce: r(38113), + Comparator: r(29069), + Range: r(73004), + satisfies: r(73011), + toComparators: r(47753), + maxSatisfying: r(1895), + minSatisfying: r(33252), + minVersion: r(4224), + validRange: r(44315), + outside: r(842), + gtr: r(69258), + ltr: r(36928), + intersects: r(87395), + simplifyRange: r(3530), + subset: r(74264), + }; + }, + 76483: (e) => { + const t = Number.MAX_SAFE_INTEGER || 9007199254740991; + e.exports = { + SEMVER_SPEC_VERSION: '2.0.0', + MAX_LENGTH: 256, + MAX_SAFE_INTEGER: t, + MAX_SAFE_COMPONENT_LENGTH: 16, + }; + }, + 6029: (e) => { + const t = + 'object' == typeof process && + process.env && + process.env.NODE_DEBUG && + /\bsemver\b/i.test(process.env.NODE_DEBUG) + ? (...e) => console.error('SEMVER', ...e) + : () => {}; + e.exports = t; + }, + 99297: (e) => { + const t = /^[0-9]+$/, + r = (e, r) => { + const n = t.test(e), + i = t.test(r); + return ( + n && i && ((e = +e), (r = +r)), + e === r ? 0 : n && !i ? -1 : i && !n ? 1 : e < r ? -1 : 1 + ); + }; + e.exports = { compareIdentifiers: r, rcompareIdentifiers: (e, t) => r(t, e) }; + }, + 49439: (e, t, r) => { + const { MAX_SAFE_COMPONENT_LENGTH: n } = r(76483), + i = r(6029), + o = ((t = e.exports = {}).re = []), + s = (t.src = []), + A = (t.t = {}); + let a = 0; + const c = (e, t, r) => { + const n = a++; + i(n, t), (A[e] = n), (s[n] = t), (o[n] = new RegExp(t, r ? 'g' : void 0)); + }; + c('NUMERICIDENTIFIER', '0|[1-9]\\d*'), + c('NUMERICIDENTIFIERLOOSE', '[0-9]+'), + c('NONNUMERICIDENTIFIER', '\\d*[a-zA-Z-][a-zA-Z0-9-]*'), + c( + 'MAINVERSION', + `(${s[A.NUMERICIDENTIFIER]})\\.(${s[A.NUMERICIDENTIFIER]})\\.(${ + s[A.NUMERICIDENTIFIER] + })` + ), + c( + 'MAINVERSIONLOOSE', + `(${s[A.NUMERICIDENTIFIERLOOSE]})\\.(${s[A.NUMERICIDENTIFIERLOOSE]})\\.(${ + s[A.NUMERICIDENTIFIERLOOSE] + })` + ), + c('PRERELEASEIDENTIFIER', `(?:${s[A.NUMERICIDENTIFIER]}|${s[A.NONNUMERICIDENTIFIER]})`), + c( + 'PRERELEASEIDENTIFIERLOOSE', + `(?:${s[A.NUMERICIDENTIFIERLOOSE]}|${s[A.NONNUMERICIDENTIFIER]})` + ), + c( + 'PRERELEASE', + `(?:-(${s[A.PRERELEASEIDENTIFIER]}(?:\\.${s[A.PRERELEASEIDENTIFIER]})*))` + ), + c( + 'PRERELEASELOOSE', + `(?:-?(${s[A.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${s[A.PRERELEASEIDENTIFIERLOOSE]})*))` + ), + c('BUILDIDENTIFIER', '[0-9A-Za-z-]+'), + c('BUILD', `(?:\\+(${s[A.BUILDIDENTIFIER]}(?:\\.${s[A.BUILDIDENTIFIER]})*))`), + c('FULLPLAIN', `v?${s[A.MAINVERSION]}${s[A.PRERELEASE]}?${s[A.BUILD]}?`), + c('FULL', `^${s[A.FULLPLAIN]}$`), + c('LOOSEPLAIN', `[v=\\s]*${s[A.MAINVERSIONLOOSE]}${s[A.PRERELEASELOOSE]}?${s[A.BUILD]}?`), + c('LOOSE', `^${s[A.LOOSEPLAIN]}$`), + c('GTLT', '((?:<|>)?=?)'), + c('XRANGEIDENTIFIERLOOSE', s[A.NUMERICIDENTIFIERLOOSE] + '|x|X|\\*'), + c('XRANGEIDENTIFIER', s[A.NUMERICIDENTIFIER] + '|x|X|\\*'), + c( + 'XRANGEPLAIN', + `[v=\\s]*(${s[A.XRANGEIDENTIFIER]})(?:\\.(${s[A.XRANGEIDENTIFIER]})(?:\\.(${ + s[A.XRANGEIDENTIFIER] + })(?:${s[A.PRERELEASE]})?${s[A.BUILD]}?)?)?` + ), + c( + 'XRANGEPLAINLOOSE', + `[v=\\s]*(${s[A.XRANGEIDENTIFIERLOOSE]})(?:\\.(${s[A.XRANGEIDENTIFIERLOOSE]})(?:\\.(${ + s[A.XRANGEIDENTIFIERLOOSE] + })(?:${s[A.PRERELEASELOOSE]})?${s[A.BUILD]}?)?)?` + ), + c('XRANGE', `^${s[A.GTLT]}\\s*${s[A.XRANGEPLAIN]}$`), + c('XRANGELOOSE', `^${s[A.GTLT]}\\s*${s[A.XRANGEPLAINLOOSE]}$`), + c( + 'COERCE', + `(^|[^\\d])(\\d{1,${n}})(?:\\.(\\d{1,${n}}))?(?:\\.(\\d{1,${n}}))?(?:$|[^\\d])` + ), + c('COERCERTL', s[A.COERCE], !0), + c('LONETILDE', '(?:~>?)'), + c('TILDETRIM', `(\\s*)${s[A.LONETILDE]}\\s+`, !0), + (t.tildeTrimReplace = '$1~'), + c('TILDE', `^${s[A.LONETILDE]}${s[A.XRANGEPLAIN]}$`), + c('TILDELOOSE', `^${s[A.LONETILDE]}${s[A.XRANGEPLAINLOOSE]}$`), + c('LONECARET', '(?:\\^)'), + c('CARETTRIM', `(\\s*)${s[A.LONECARET]}\\s+`, !0), + (t.caretTrimReplace = '$1^'), + c('CARET', `^${s[A.LONECARET]}${s[A.XRANGEPLAIN]}$`), + c('CARETLOOSE', `^${s[A.LONECARET]}${s[A.XRANGEPLAINLOOSE]}$`), + c('COMPARATORLOOSE', `^${s[A.GTLT]}\\s*(${s[A.LOOSEPLAIN]})$|^$`), + c('COMPARATOR', `^${s[A.GTLT]}\\s*(${s[A.FULLPLAIN]})$|^$`), + c('COMPARATORTRIM', `(\\s*)${s[A.GTLT]}\\s*(${s[A.LOOSEPLAIN]}|${s[A.XRANGEPLAIN]})`, !0), + (t.comparatorTrimReplace = '$1$2$3'), + c('HYPHENRANGE', `^\\s*(${s[A.XRANGEPLAIN]})\\s+-\\s+(${s[A.XRANGEPLAIN]})\\s*$`), + c( + 'HYPHENRANGELOOSE', + `^\\s*(${s[A.XRANGEPLAINLOOSE]})\\s+-\\s+(${s[A.XRANGEPLAINLOOSE]})\\s*$` + ), + c('STAR', '(<|>)?=?\\s*\\*'), + c('GTE0', '^\\s*>=\\s*0.0.0\\s*$'), + c('GTE0PRE', '^\\s*>=\\s*0.0.0-0\\s*$'); + }, + 89153: (e) => { + 'use strict'; + e.exports = { u2: 'semver' }; + }, + 69258: (e, t, r) => { + const n = r(842); + e.exports = (e, t, r) => n(e, t, '>', r); + }, + 87395: (e, t, r) => { + const n = r(73004); + e.exports = (e, t, r) => ((e = new n(e, r)), (t = new n(t, r)), e.intersects(t)); + }, + 36928: (e, t, r) => { + const n = r(842); + e.exports = (e, t, r) => n(e, t, '<', r); + }, + 1895: (e, t, r) => { + const n = r(14772), + i = r(73004); + e.exports = (e, t, r) => { + let o = null, + s = null, + A = null; + try { + A = new i(t, r); + } catch (e) { + return null; + } + return ( + e.forEach((e) => { + A.test(e) && ((o && -1 !== s.compare(e)) || ((o = e), (s = new n(o, r)))); + }), + o + ); + }; + }, + 33252: (e, t, r) => { + const n = r(14772), + i = r(73004); + e.exports = (e, t, r) => { + let o = null, + s = null, + A = null; + try { + A = new i(t, r); + } catch (e) { + return null; + } + return ( + e.forEach((e) => { + A.test(e) && ((o && 1 !== s.compare(e)) || ((o = e), (s = new n(o, r)))); + }), + o + ); + }; + }, + 4224: (e, t, r) => { + const n = r(14772), + i = r(73004), + o = r(26544); + e.exports = (e, t) => { + e = new i(e, t); + let r = new n('0.0.0'); + if (e.test(r)) return r; + if (((r = new n('0.0.0-0')), e.test(r))) return r; + r = null; + for (let t = 0; t < e.set.length; ++t) { + e.set[t].forEach((e) => { + const t = new n(e.semver.version); + switch (e.operator) { + case '>': + 0 === t.prerelease.length ? t.patch++ : t.prerelease.push(0), + (t.raw = t.format()); + case '': + case '>=': + (r && !o(r, t)) || (r = t); + break; + case '<': + case '<=': + break; + default: + throw new Error('Unexpected operation: ' + e.operator); + } + }); + } + return r && e.test(r) ? r : null; + }; + }, + 842: (e, t, r) => { + const n = r(14772), + i = r(29069), + { ANY: o } = i, + s = r(73004), + A = r(73011), + a = r(26544), + c = r(65069), + u = r(93845), + l = r(44984); + e.exports = (e, t, r, h) => { + let g, f, p, d, C; + switch (((e = new n(e, h)), (t = new s(t, h)), r)) { + case '>': + (g = a), (f = u), (p = c), (d = '>'), (C = '>='); + break; + case '<': + (g = c), (f = l), (p = a), (d = '<'), (C = '<='); + break; + default: + throw new TypeError('Must provide a hilo val of "<" or ">"'); + } + if (A(e, t, h)) return !1; + for (let r = 0; r < t.set.length; ++r) { + const n = t.set[r]; + let s = null, + A = null; + if ( + (n.forEach((e) => { + e.semver === o && (e = new i('>=0.0.0')), + (s = s || e), + (A = A || e), + g(e.semver, s.semver, h) ? (s = e) : p(e.semver, A.semver, h) && (A = e); + }), + s.operator === d || s.operator === C) + ) + return !1; + if ((!A.operator || A.operator === d) && f(e, A.semver)) return !1; + if (A.operator === C && p(e, A.semver)) return !1; + } + return !0; + }; + }, + 3530: (e, t, r) => { + const n = r(73011), + i = r(17340); + e.exports = (e, t, r) => { + const o = []; + let s = null, + A = null; + const a = e.sort((e, t) => i(e, t, r)); + for (const e of a) { + n(e, t, r) ? ((A = e), s || (s = e)) : (A && o.push([s, A]), (A = null), (s = null)); + } + s && o.push([s, null]); + const c = []; + for (const [e, t] of o) + e === t + ? c.push(e) + : t || e !== a[0] + ? t + ? e === a[0] + ? c.push('<=' + t) + : c.push(`${e} - ${t}`) + : c.push('>=' + e) + : c.push('*'); + const u = c.join(' || '), + l = 'string' == typeof t.raw ? t.raw : String(t); + return u.length < l.length ? u : t; + }; + }, + 74264: (e, t, r) => { + const n = r(73004), + { ANY: i } = r(29069), + o = r(73011), + s = r(17340), + A = (e, t, r) => { + if (1 === e.length && e[0].semver === i) return 1 === t.length && t[0].semver === i; + const n = new Set(); + let A, u, l, h, g, f, p; + for (const t of e) + '>' === t.operator || '>=' === t.operator + ? (A = a(A, t, r)) + : '<' === t.operator || '<=' === t.operator + ? (u = c(u, t, r)) + : n.add(t.semver); + if (n.size > 1) return null; + if (A && u) { + if (((l = s(A.semver, u.semver, r)), l > 0)) return null; + if (0 === l && ('>=' !== A.operator || '<=' !== u.operator)) return null; + } + for (const e of n) { + if (A && !o(e, String(A), r)) return null; + if (u && !o(e, String(u), r)) return null; + for (const n of t) if (!o(e, String(n), r)) return !1; + return !0; + } + for (const e of t) { + if ( + ((p = p || '>' === e.operator || '>=' === e.operator), + (f = f || '<' === e.operator || '<=' === e.operator), + A) + ) + if ('>' === e.operator || '>=' === e.operator) { + if (((h = a(A, e, r)), h === e)) return !1; + } else if ('>=' === A.operator && !o(A.semver, String(e), r)) return !1; + if (u) + if ('<' === e.operator || '<=' === e.operator) { + if (((g = c(u, e, r)), g === e)) return !1; + } else if ('<=' === u.operator && !o(u.semver, String(e), r)) return !1; + if (!e.operator && (u || A) && 0 !== l) return !1; + } + return !(A && f && !u && 0 !== l) && !(u && p && !A && 0 !== l); + }, + a = (e, t, r) => { + if (!e) return t; + const n = s(e.semver, t.semver, r); + return n > 0 ? e : n < 0 || ('>' === t.operator && '>=' === e.operator) ? t : e; + }, + c = (e, t, r) => { + if (!e) return t; + const n = s(e.semver, t.semver, r); + return n < 0 ? e : n > 0 || ('<' === t.operator && '<=' === e.operator) ? t : e; + }; + e.exports = (e, t, r) => { + (e = new n(e, r)), (t = new n(t, r)); + let i = !1; + e: for (const n of e.set) { + for (const e of t.set) { + const t = A(n, e, r); + if (((i = i || null !== t), t)) continue e; + } + if (i) return !1; + } + return !0; + }; + }, + 47753: (e, t, r) => { + const n = r(73004); + e.exports = (e, t) => + new n(e, t).set.map((e) => + e + .map((e) => e.value) + .join(' ') + .trim() + .split(' ') + ); + }, + 44315: (e, t, r) => { + const n = r(73004); + e.exports = (e, t) => { + try { + return new n(e, t).range || '*'; + } catch (e) { + return null; + } + }; + }, + 91470: (e, t, r) => { + 'use strict'; + const n = r(67719); + e.exports = (e = '') => { + const t = e.match(n); + if (!t) return null; + const [r, i] = t[0].replace(/#! ?/, '').split(' '), + o = r.split('/').pop(); + return 'env' === o ? i : i ? `${o} ${i}` : o; + }; + }, + 67719: (e) => { + 'use strict'; + e.exports = /^#!(.*)/; + }, + 76458: (e, t, r) => { + var n, + i = r(42357), + o = r(48082), + s = r(28614); + function A() { + u && + ((u = !1), + o.forEach(function (e) { + try { + process.removeListener(e, c[e]); + } catch (e) {} + }), + (process.emit = f), + (process.reallyExit = h), + (n.count -= 1)); + } + function a(e, t, r) { + n.emitted[e] || ((n.emitted[e] = !0), n.emit(e, t, r)); + } + 'function' != typeof s && (s = s.EventEmitter), + process.__signal_exit_emitter__ + ? (n = process.__signal_exit_emitter__) + : (((n = process.__signal_exit_emitter__ = new s()).count = 0), (n.emitted = {})), + n.infinite || (n.setMaxListeners(1 / 0), (n.infinite = !0)), + (e.exports = function (e, t) { + i.equal(typeof e, 'function', 'a callback must be provided for exit handler'), + !1 === u && l(); + var r = 'exit'; + t && t.alwaysLast && (r = 'afterexit'); + return ( + n.on(r, e), + function () { + n.removeListener(r, e), + 0 === n.listeners('exit').length && 0 === n.listeners('afterexit').length && A(); + } + ); + }), + (e.exports.unload = A); + var c = {}; + o.forEach(function (e) { + c[e] = function () { + process.listeners(e).length === n.count && + (A(), a('exit', null, e), a('afterexit', null, e), process.kill(process.pid, e)); + }; + }), + (e.exports.signals = function () { + return o; + }), + (e.exports.load = l); + var u = !1; + function l() { + u || + ((u = !0), + (n.count += 1), + (o = o.filter(function (e) { + try { + return process.on(e, c[e]), !0; + } catch (e) { + return !1; + } + })), + (process.emit = p), + (process.reallyExit = g)); + } + var h = process.reallyExit; + function g(e) { + (process.exitCode = e || 0), + a('exit', process.exitCode, null), + a('afterexit', process.exitCode, null), + h.call(process, process.exitCode); + } + var f = process.emit; + function p(e, t) { + if ('exit' === e) { + void 0 !== t && (process.exitCode = t); + var r = f.apply(this, arguments); + return a('exit', process.exitCode, null), a('afterexit', process.exitCode, null), r; + } + return f.apply(this, arguments); + } + }, + 48082: (e) => { + (e.exports = ['SIGABRT', 'SIGALRM', 'SIGHUP', 'SIGINT', 'SIGTERM']), + 'win32' !== process.platform && + e.exports.push( + 'SIGVTALRM', + 'SIGXCPU', + 'SIGXFSZ', + 'SIGUSR2', + 'SIGTRAP', + 'SIGSYS', + 'SIGQUIT', + 'SIGIOT' + ), + 'linux' === process.platform && + e.exports.push('SIGIO', 'SIGPOLL', 'SIGPWR', 'SIGSTKFLT', 'SIGUNUSED'); + }, + 17234: (e) => { + 'use strict'; + e.exports = (e) => { + const t = /^\\\\\?\\/.test(e), + r = /[^\u0000-\u0080]+/.test(e); + return t || r ? e : e.replace(/\\/g, '/'); + }; + }, + 10129: (e, t, r) => { + 'use strict'; + const n = r(76417), + i = r(19184), + o = r(92413).Transform, + s = ['sha256', 'sha384', 'sha512'], + A = /^[a-z0-9+/]+(?:=?=?)$/i, + a = /^([^-]+)-([^?]+)([?\S*]*)$/, + c = /^([^-]+)-([A-Za-z0-9+/=]{44,88})(\?[\x21-\x7E]*)*$/, + u = /^[\x21-\x7E]+$/, + l = i({ + algorithms: { default: ['sha512'] }, + error: { default: !1 }, + integrity: {}, + options: { default: [] }, + pickAlgorithm: { default: () => m }, + Promise: { default: () => Promise }, + sep: { default: ' ' }, + single: { default: !1 }, + size: {}, + strict: { default: !1 }, + }); + class h { + get isHash() { + return !0; + } + constructor(e, t) { + const r = !!(t = l(t)).strict; + this.source = e.trim(); + const n = this.source.match(r ? c : a); + if (!n) return; + if (r && !s.some((e) => e === n[1])) return; + (this.algorithm = n[1]), (this.digest = n[2]); + const i = n[3]; + this.options = i ? i.slice(1).split('?') : []; + } + hexDigest() { + return this.digest && Buffer.from(this.digest, 'base64').toString('hex'); + } + toJSON() { + return this.toString(); + } + toString(e) { + if ( + (e = l(e)).strict && + !( + s.some((e) => e === this.algorithm) && + this.digest.match(A) && + (this.options || []).every((e) => e.match(u)) + ) + ) + return ''; + const t = this.options && this.options.length ? '?' + this.options.join('?') : ''; + return `${this.algorithm}-${this.digest}${t}`; + } + } + class g { + get isIntegrity() { + return !0; + } + toJSON() { + return this.toString(); + } + toString(e) { + let t = (e = l(e)).sep || ' '; + return ( + e.strict && (t = t.replace(/\S+/g, ' ')), + Object.keys(this) + .map((r) => + this[r] + .map((t) => h.prototype.toString.call(t, e)) + .filter((e) => e.length) + .join(t) + ) + .filter((e) => e.length) + .join(t) + ); + } + concat(e, t) { + t = l(t); + const r = 'string' == typeof e ? e : d(e, t); + return f(`${this.toString(t)} ${r}`, t); + } + hexDigest() { + return f(this, { single: !0 }).hexDigest(); + } + match(e, t) { + const r = f(e, (t = l(t))), + n = r.pickAlgorithm(t); + return ( + (this[n] && r[n] && this[n].find((e) => r[n].find((t) => e.digest === t.digest))) || + !1 + ); + } + pickAlgorithm(e) { + const t = (e = l(e)).pickAlgorithm, + r = Object.keys(this); + if (!r.length) + throw new Error('No algorithms available for ' + JSON.stringify(this.toString())); + return r.reduce((e, r) => t(e, r) || e); + } + } + function f(e, t) { + if (((t = l(t)), 'string' == typeof e)) return p(e, t); + if (e.algorithm && e.digest) { + const r = new g(); + return (r[e.algorithm] = [e]), p(d(r, t), t); + } + return p(d(e, t), t); + } + function p(e, t) { + return t.single + ? new h(e, t) + : e + .trim() + .split(/\s+/) + .reduce((e, r) => { + const n = new h(r, t); + if (n.algorithm && n.digest) { + const t = n.algorithm; + e[t] || (e[t] = []), e[t].push(n); + } + return e; + }, new g()); + } + function d(e, t) { + return ( + (t = l(t)), + e.algorithm && e.digest + ? h.prototype.toString.call(e, t) + : 'string' == typeof e + ? d(f(e, t), t) + : g.prototype.toString.call(e, t) + ); + } + function C(e) { + const t = (e = l(e)).integrity && f(e.integrity, e), + r = t && Object.keys(t).length, + i = r && t.pickAlgorithm(e), + s = r && t[i], + A = Array.from(new Set(e.algorithms.concat(i ? [i] : []))), + a = A.map(n.createHash); + let c = 0; + const u = new o({ + transform(e, t, r) { + (c += e.length), a.forEach((r) => r.update(e, t)), r(null, e, t); + }, + }).on('end', () => { + const n = e.options && e.options.length ? '?' + e.options.join('?') : '', + o = f(a.map((e, t) => `${A[t]}-${e.digest('base64')}${n}`).join(' '), e), + l = r && o.match(t, e); + if ('number' == typeof e.size && c !== e.size) { + const r = new Error( + `stream size mismatch when checking ${t}.\n Wanted: ${e.size}\n Found: ${c}` + ); + (r.code = 'EBADSIZE'), + (r.found = c), + (r.expected = e.size), + (r.sri = t), + u.emit('error', r); + } else if (e.integrity && !l) { + const e = new Error( + `${t} integrity checksum failed when using ${i}: wanted ${s} but got ${o}. (${c} bytes)` + ); + (e.code = 'EINTEGRITY'), + (e.found = o), + (e.expected = s), + (e.algorithm = i), + (e.sri = t), + u.emit('error', e); + } else u.emit('size', c), u.emit('integrity', o), l && u.emit('verified', l); + }); + return u; + } + e.exports.Sd = function (e, t) { + const r = (t = l(t)).algorithms, + i = t.options && t.options.length ? '?' + t.options.join('?') : ''; + return r.reduce((r, o) => { + const s = n.createHash(o).update(e).digest('base64'), + A = new h(`${o}-${s}${i}`, t); + if (A.algorithm && A.digest) { + const e = A.algorithm; + r[e] || (r[e] = []), r[e].push(A); + } + return r; + }, new g()); + }; + const E = new Set(n.getHashes()), + I = [ + 'md5', + 'whirlpool', + 'sha1', + 'sha224', + 'sha256', + 'sha384', + 'sha512', + 'sha3', + 'sha3-256', + 'sha3-384', + 'sha3-512', + 'sha3_256', + 'sha3_384', + 'sha3_512', + ].filter((e) => E.has(e)); + function m(e, t) { + return I.indexOf(e.toLowerCase()) >= I.indexOf(t.toLowerCase()) ? e : t; + } + }, + 55043: (e, t, r) => { + 'use strict'; + const n = r(7915), + i = r(7347), + o = r(1013), + s = (e) => { + if ('string' != typeof (e = e.replace(o(), ' ')) || 0 === e.length) return 0; + e = n(e); + let t = 0; + for (let r = 0; r < e.length; r++) { + const n = e.codePointAt(r); + n <= 31 || + (n >= 127 && n <= 159) || + (n >= 768 && n <= 879) || + (n > 65535 && r++, (t += i(n) ? 2 : 1)); + } + return t; + }; + (e.exports = s), (e.exports.default = s); + }, + 69538: (e, t, r) => { + 'use strict'; + var n = r(13499).Buffer, + i = + n.isEncoding || + function (e) { + switch ((e = '' + e) && e.toLowerCase()) { + case 'hex': + case 'utf8': + case 'utf-8': + case 'ascii': + case 'binary': + case 'base64': + case 'ucs2': + case 'ucs-2': + case 'utf16le': + case 'utf-16le': + case 'raw': + return !0; + default: + return !1; + } + }; + function o(e) { + var t; + switch ( + ((this.encoding = (function (e) { + var t = (function (e) { + if (!e) return 'utf8'; + for (var t; ; ) + switch (e) { + case 'utf8': + case 'utf-8': + return 'utf8'; + case 'ucs2': + case 'ucs-2': + case 'utf16le': + case 'utf-16le': + return 'utf16le'; + case 'latin1': + case 'binary': + return 'latin1'; + case 'base64': + case 'ascii': + case 'hex': + return e; + default: + if (t) return; + (e = ('' + e).toLowerCase()), (t = !0); + } + })(e); + if ('string' != typeof t && (n.isEncoding === i || !i(e))) + throw new Error('Unknown encoding: ' + e); + return t || e; + })(e)), + this.encoding) + ) { + case 'utf16le': + (this.text = a), (this.end = c), (t = 4); + break; + case 'utf8': + (this.fillLast = A), (t = 4); + break; + case 'base64': + (this.text = u), (this.end = l), (t = 3); + break; + default: + return (this.write = h), void (this.end = g); + } + (this.lastNeed = 0), (this.lastTotal = 0), (this.lastChar = n.allocUnsafe(t)); + } + function s(e) { + return e <= 127 + ? 0 + : e >> 5 == 6 + ? 2 + : e >> 4 == 14 + ? 3 + : e >> 3 == 30 + ? 4 + : e >> 6 == 2 + ? -1 + : -2; + } + function A(e) { + var t = this.lastTotal - this.lastNeed, + r = (function (e, t, r) { + if (128 != (192 & t[0])) return (e.lastNeed = 0), '�'; + if (e.lastNeed > 1 && t.length > 1) { + if (128 != (192 & t[1])) return (e.lastNeed = 1), '�'; + if (e.lastNeed > 2 && t.length > 2 && 128 != (192 & t[2])) + return (e.lastNeed = 2), '�'; + } + })(this, e); + return void 0 !== r + ? r + : this.lastNeed <= e.length + ? (e.copy(this.lastChar, t, 0, this.lastNeed), + this.lastChar.toString(this.encoding, 0, this.lastTotal)) + : (e.copy(this.lastChar, t, 0, e.length), void (this.lastNeed -= e.length)); + } + function a(e, t) { + if ((e.length - t) % 2 == 0) { + var r = e.toString('utf16le', t); + if (r) { + var n = r.charCodeAt(r.length - 1); + if (n >= 55296 && n <= 56319) + return ( + (this.lastNeed = 2), + (this.lastTotal = 4), + (this.lastChar[0] = e[e.length - 2]), + (this.lastChar[1] = e[e.length - 1]), + r.slice(0, -1) + ); + } + return r; + } + return ( + (this.lastNeed = 1), + (this.lastTotal = 2), + (this.lastChar[0] = e[e.length - 1]), + e.toString('utf16le', t, e.length - 1) + ); + } + function c(e) { + var t = e && e.length ? this.write(e) : ''; + if (this.lastNeed) { + var r = this.lastTotal - this.lastNeed; + return t + this.lastChar.toString('utf16le', 0, r); + } + return t; + } + function u(e, t) { + var r = (e.length - t) % 3; + return 0 === r + ? e.toString('base64', t) + : ((this.lastNeed = 3 - r), + (this.lastTotal = 3), + 1 === r + ? (this.lastChar[0] = e[e.length - 1]) + : ((this.lastChar[0] = e[e.length - 2]), (this.lastChar[1] = e[e.length - 1])), + e.toString('base64', t, e.length - r)); + } + function l(e) { + var t = e && e.length ? this.write(e) : ''; + return this.lastNeed ? t + this.lastChar.toString('base64', 0, 3 - this.lastNeed) : t; + } + function h(e) { + return e.toString(this.encoding); + } + function g(e) { + return e && e.length ? this.write(e) : ''; + } + (t.s = o), + (o.prototype.write = function (e) { + if (0 === e.length) return ''; + var t, r; + if (this.lastNeed) { + if (void 0 === (t = this.fillLast(e))) return ''; + (r = this.lastNeed), (this.lastNeed = 0); + } else r = 0; + return r < e.length ? (t ? t + this.text(e, r) : this.text(e, r)) : t || ''; + }), + (o.prototype.end = function (e) { + var t = e && e.length ? this.write(e) : ''; + return this.lastNeed ? t + '�' : t; + }), + (o.prototype.text = function (e, t) { + var r = (function (e, t, r) { + var n = t.length - 1; + if (n < r) return 0; + var i = s(t[n]); + if (i >= 0) return i > 0 && (e.lastNeed = i - 1), i; + if (--n < r || -2 === i) return 0; + if ((i = s(t[n])) >= 0) return i > 0 && (e.lastNeed = i - 2), i; + if (--n < r || -2 === i) return 0; + if ((i = s(t[n])) >= 0) return i > 0 && (2 === i ? (i = 0) : (e.lastNeed = i - 3)), i; + return 0; + })(this, e, t); + if (!this.lastNeed) return e.toString('utf8', t); + this.lastTotal = r; + var n = e.length - (r - this.lastNeed); + return e.copy(this.lastChar, 0, n), e.toString('utf8', t, n); + }), + (o.prototype.fillLast = function (e) { + if (this.lastNeed <= e.length) + return ( + e.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, this.lastNeed), + this.lastChar.toString(this.encoding, 0, this.lastTotal) + ); + e.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, e.length), + (this.lastNeed -= e.length); + }); + }, + 7915: (e, t, r) => { + 'use strict'; + const n = r(81337); + e.exports = (e) => ('string' == typeof e ? e.replace(n(), '') : e); + }, + 59428: (e, t, r) => { + 'use strict'; + const n = r(12087), + i = r(33867), + o = r(72918), + { env: s } = process; + let A; + function a(e) { + return 0 !== e && { level: e, hasBasic: !0, has256: e >= 2, has16m: e >= 3 }; + } + function c(e, t) { + if (0 === A) return 0; + if (o('color=16m') || o('color=full') || o('color=truecolor')) return 3; + if (o('color=256')) return 2; + if (e && !t && void 0 === A) return 0; + const r = A || 0; + if ('dumb' === s.TERM) return r; + if ('win32' === process.platform) { + const e = n.release().split('.'); + return Number(e[0]) >= 10 && Number(e[2]) >= 10586 + ? Number(e[2]) >= 14931 + ? 3 + : 2 + : 1; + } + if ('CI' in s) + return ['TRAVIS', 'CIRCLECI', 'APPVEYOR', 'GITLAB_CI'].some((e) => e in s) || + 'codeship' === s.CI_NAME + ? 1 + : r; + if ('TEAMCITY_VERSION' in s) + return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(s.TEAMCITY_VERSION) ? 1 : 0; + if ('GITHUB_ACTIONS' in s) return 1; + if ('truecolor' === s.COLORTERM) return 3; + if ('TERM_PROGRAM' in s) { + const e = parseInt((s.TERM_PROGRAM_VERSION || '').split('.')[0], 10); + switch (s.TERM_PROGRAM) { + case 'iTerm.app': + return e >= 3 ? 3 : 2; + case 'Apple_Terminal': + return 2; + } + } + return /-256(color)?$/i.test(s.TERM) + ? 2 + : /^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(s.TERM) || + 'COLORTERM' in s + ? 1 + : r; + } + o('no-color') || o('no-colors') || o('color=false') || o('color=never') + ? (A = 0) + : (o('color') || o('colors') || o('color=true') || o('color=always')) && (A = 1), + 'FORCE_COLOR' in s && + (A = + 'true' === s.FORCE_COLOR + ? 1 + : 'false' === s.FORCE_COLOR + ? 0 + : 0 === s.FORCE_COLOR.length + ? 1 + : Math.min(parseInt(s.FORCE_COLOR, 10), 3)), + (e.exports = { + supportsColor: function (e) { + return a(c(e, e && e.isTTY)); + }, + stdout: a(c(!0, i.isatty(1))), + stderr: a(c(!0, i.isatty(2))), + }); + }, + 93255: (e) => { + 'use strict'; + function t(e) { + return Array.prototype.slice.apply(e); + } + function r(e) { + (this.status = 'pending'), + (this._continuations = []), + (this._parent = null), + (this._paused = !1), + e && e.call(this, this._continueWith.bind(this), this._failWith.bind(this)); + } + function n(e) { + return e && 'function' == typeof e.then; + } + function i(e) { + return e; + } + if ( + ((r.prototype = { + then: function (e, t) { + var i = r.unresolved()._setParent(this); + if (this._isRejected()) { + if (this._paused) + return this._continuations.push({ promise: i, nextFn: e, catchFn: t }), i; + if (t) + try { + var o = t(this._error); + return n(o) ? (this._chainPromiseData(o, i), i) : r.resolve(o)._setParent(this); + } catch (e) { + return r.reject(e)._setParent(this); + } + return r.reject(this._error)._setParent(this); + } + return ( + this._continuations.push({ promise: i, nextFn: e, catchFn: t }), + this._runResolutions(), + i + ); + }, + catch: function (e) { + if (this._isResolved()) return r.resolve(this._data)._setParent(this); + var t = r.unresolved()._setParent(this); + return this._continuations.push({ promise: t, catchFn: e }), this._runRejections(), t; + }, + finally: function (e) { + var t = !1; + function r(r, o) { + if (!t) { + (t = !0), e || (e = i); + var s = e(r); + return n(s) + ? s.then(function () { + if (o) throw o; + return r; + }) + : r; + } + } + return this.then(function (e) { + return r(e); + }).catch(function (e) { + return r(null, e); + }); + }, + pause: function () { + return (this._paused = !0), this; + }, + resume: function () { + var e = this._findFirstPaused(); + return e && ((e._paused = !1), e._runResolutions(), e._runRejections()), this; + }, + _findAncestry: function () { + return this._continuations.reduce(function (e, t) { + if (t.promise) { + var r = { promise: t.promise, children: t.promise._findAncestry() }; + e.push(r); + } + return e; + }, []); + }, + _setParent: function (e) { + if (this._parent) throw new Error('parent already set'); + return (this._parent = e), this; + }, + _continueWith: function (e) { + var t = this._findFirstPending(); + t && ((t._data = e), t._setResolved()); + }, + _findFirstPending: function () { + return this._findFirstAncestor(function (e) { + return e._isPending && e._isPending(); + }); + }, + _findFirstPaused: function () { + return this._findFirstAncestor(function (e) { + return e._paused; + }); + }, + _findFirstAncestor: function (e) { + for (var t, r = this; r; ) e(r) && (t = r), (r = r._parent); + return t; + }, + _failWith: function (e) { + var t = this._findFirstPending(); + t && ((t._error = e), t._setRejected()); + }, + _takeContinuations: function () { + return this._continuations.splice(0, this._continuations.length); + }, + _runRejections: function () { + if (!this._paused && this._isRejected()) { + var e = this._error, + t = this._takeContinuations(), + r = this; + t.forEach(function (t) { + if (t.catchFn) + try { + var n = t.catchFn(e); + r._handleUserFunctionResult(n, t.promise); + } catch (e) { + t.promise.reject(e); + } + else t.promise.reject(e); + }); + } + }, + _runResolutions: function () { + if (!this._paused && this._isResolved() && !this._isPending()) { + var e = this._takeContinuations(); + if (n(this._data)) return this._handleWhenResolvedDataIsPromise(this._data); + var t = this._data, + r = this; + e.forEach(function (e) { + if (e.nextFn) + try { + var n = e.nextFn(t); + r._handleUserFunctionResult(n, e.promise); + } catch (t) { + r._handleResolutionError(t, e); + } + else e.promise && e.promise.resolve(t); + }); + } + }, + _handleResolutionError: function (e, t) { + if ((this._setRejected(), t.catchFn)) + try { + return void t.catchFn(e); + } catch (t) { + e = t; + } + t.promise && t.promise.reject(e); + }, + _handleWhenResolvedDataIsPromise: function (e) { + var t = this; + return e + .then(function (e) { + (t._data = e), t._runResolutions(); + }) + .catch(function (e) { + (t._error = e), t._setRejected(), t._runRejections(); + }); + }, + _handleUserFunctionResult: function (e, t) { + n(e) ? this._chainPromiseData(e, t) : t.resolve(e); + }, + _chainPromiseData: function (e, t) { + e.then(function (e) { + t.resolve(e); + }).catch(function (e) { + t.reject(e); + }); + }, + _setResolved: function () { + (this.status = 'resolved'), this._paused || this._runResolutions(); + }, + _setRejected: function () { + (this.status = 'rejected'), this._paused || this._runRejections(); + }, + _isPending: function () { + return 'pending' === this.status; + }, + _isResolved: function () { + return 'resolved' === this.status; + }, + _isRejected: function () { + return 'rejected' === this.status; + }, + }), + (r.resolve = function (e) { + return new r(function (t, r) { + n(e) + ? e + .then(function (e) { + t(e); + }) + .catch(function (e) { + r(e); + }) + : t(e); + }); + }), + (r.reject = function (e) { + return new r(function (t, r) { + r(e); + }); + }), + (r.unresolved = function () { + return new r(function (e, t) { + (this.resolve = e), (this.reject = t); + }); + }), + (r.all = function () { + var e = t(arguments); + return ( + Array.isArray(e[0]) && (e = e[0]), + e.length + ? new r(function (t, n) { + var i = [], + o = 0, + s = !1; + e.forEach(function (A, a) { + r.resolve(A) + .then(function (r) { + (i[a] = r), (o += 1) === e.length && t(i); + }) + .catch(function (e) { + !(function (e) { + s || ((s = !0), n(e)); + })(e); + }); + }); + }) + : r.resolve([]) + ); + }), + Promise === r) + ) + throw new Error('Please use SynchronousPromise.installGlobally() to install globally'); + var o = Promise; + (r.installGlobally = function (e) { + if (Promise === r) return e; + var n = (function (e) { + if (void 0 === e || e.__patched) return e; + var r = e; + return ( + ((e = function () { + r.apply(this, t(arguments)); + }).__patched = !0), + e + ); + })(e); + return (Promise = r), n; + }), + (r.uninstallGlobally = function () { + Promise === r && (Promise = o); + }), + (e.exports = { SynchronousPromise: r }); + }, + 27700: (e, t, r) => { + 'use strict'; + r(78886), + r(84208), + r(54768), + r(68965), + r(26842), + r(29231), + r(43915), + (t.Ze = r(67501)), + r(88658), + r(27052), + r(46464), + r(76516), + r(6464); + }, + 15135: (e, t, r) => { + 'use strict'; + let n = Buffer; + n.alloc || (n = r(13499).Buffer), (e.exports = n); + }, + 78886: (e, t, r) => { + 'use strict'; + const n = r(59087), + i = r(29231), + o = (r(35747), r(28123)), + s = r(54768), + A = r(85622), + a = + ((e.exports = (e, t, r) => { + if ( + ('function' == typeof t && (r = t), + Array.isArray(e) && ((t = e), (e = {})), + !t || !Array.isArray(t) || !t.length) + ) + throw new TypeError('no files or directories specified'); + t = Array.from(t); + const i = n(e); + if (i.sync && 'function' == typeof r) + throw new TypeError('callback not supported for sync tar functions'); + if (!i.file && 'function' == typeof r) + throw new TypeError('callback only supported with file option'); + return i.file && i.sync ? a(i, t) : i.file ? c(i, t, r) : i.sync ? h(i, t) : g(i, t); + }), + (e, t) => { + const r = new i.Sync(e), + n = new o.WriteStreamSync(e.file, { mode: e.mode || 438 }); + r.pipe(n), u(r, t); + }), + c = (e, t, r) => { + const n = new i(e), + s = new o.WriteStream(e.file, { mode: e.mode || 438 }); + n.pipe(s); + const A = new Promise((e, t) => { + s.on('error', t), s.on('close', e), n.on('error', t); + }); + return l(n, t), r ? A.then(r, r) : A; + }, + u = (e, t) => { + t.forEach((t) => { + '@' === t.charAt(0) + ? s({ + file: A.resolve(e.cwd, t.substr(1)), + sync: !0, + noResume: !0, + onentry: (t) => e.add(t), + }) + : e.add(t); + }), + e.end(); + }, + l = (e, t) => { + for (; t.length; ) { + const r = t.shift(); + if ('@' === r.charAt(0)) + return s({ + file: A.resolve(e.cwd, r.substr(1)), + noResume: !0, + onentry: (t) => e.add(t), + }).then((r) => l(e, t)); + e.add(r); + } + e.end(); + }, + h = (e, t) => { + const r = new i.Sync(e); + return u(r, t), r; + }, + g = (e, t) => { + const r = new i(e); + return l(r, t), r; + }; + }, + 26842: (e, t, r) => { + 'use strict'; + const n = r(59087), + i = r(43915), + o = r(35747), + s = r(28123), + A = r(85622), + a = + ((e.exports = (e, t, r) => { + 'function' == typeof e + ? ((r = e), (t = null), (e = {})) + : Array.isArray(e) && ((t = e), (e = {})), + 'function' == typeof t && ((r = t), (t = null)), + (t = t ? Array.from(t) : []); + const i = n(e); + if (i.sync && 'function' == typeof r) + throw new TypeError('callback not supported for sync tar functions'); + if (!i.file && 'function' == typeof r) + throw new TypeError('callback only supported with file option'); + return ( + t.length && a(i, t), + i.file && i.sync ? c(i) : i.file ? u(i, r) : i.sync ? l(i) : h(i) + ); + }), + (e, t) => { + const r = new Map(t.map((e) => [e.replace(/\/+$/, ''), !0])), + n = e.filter, + i = (e, t) => { + const n = t || A.parse(e).root || '.', + o = e !== n && (r.has(e) ? r.get(e) : i(A.dirname(e), n)); + return r.set(e, o), o; + }; + e.filter = n + ? (e, t) => n(e, t) && i(e.replace(/\/+$/, '')) + : (e) => i(e.replace(/\/+$/, '')); + }), + c = (e) => { + const t = new i.Sync(e), + r = e.file; + const n = o.statSync(r), + A = e.maxReadSize || 16777216; + new s.ReadStreamSync(r, { readSize: A, size: n.size }).pipe(t); + }, + u = (e, t) => { + const r = new i(e), + n = e.maxReadSize || 16777216, + A = e.file, + a = new Promise((e, t) => { + r.on('error', t), + r.on('close', e), + o.stat(A, (e, i) => { + if (e) t(e); + else { + const e = new s.ReadStream(A, { readSize: n, size: i.size }); + e.on('error', t), e.pipe(r); + } + }); + }); + return t ? a.then(t, t) : a; + }, + l = (e) => new i.Sync(e), + h = (e) => new i(e); + }, + 46464: (e, t, r) => { + 'use strict'; + const n = r(15135), + i = r(6464), + o = r(85622).posix, + s = r(62488), + A = Symbol('slurp'), + a = Symbol('type'); + const c = (e, t) => { + let r, + i = e, + s = ''; + const A = o.parse(e).root || '.'; + if (n.byteLength(i) < 100) r = [i, s, !1]; + else { + (s = o.dirname(i)), (i = o.basename(i)); + do { + n.byteLength(i) <= 100 && n.byteLength(s) <= t + ? (r = [i, s, !1]) + : n.byteLength(i) > 100 && n.byteLength(s) <= t + ? (r = [i.substr(0, 99), s, !0]) + : ((i = o.join(o.basename(s), i)), (s = o.dirname(s))); + } while (s !== A && !r); + r || (r = [e.substr(0, 99), '', !0]); + } + return r; + }, + u = (e, t, r) => + e + .slice(t, t + r) + .toString('utf8') + .replace(/\0.*/, ''), + l = (e, t, r) => h(g(e, t, r)), + h = (e) => (null === e ? null : new Date(1e3 * e)), + g = (e, t, r) => (128 & e[t] ? s.parse(e.slice(t, t + r)) : f(e, t, r)), + f = (e, t, r) => { + return ( + (n = parseInt( + e + .slice(t, t + r) + .toString('utf8') + .replace(/\0.*$/, '') + .trim(), + 8 + )), + isNaN(n) ? null : n + ); + var n; + }, + p = { 12: 8589934591, 8: 2097151 }, + d = (e, t, r, n) => + null !== n && + (n > p[r] || n < 0 ? (s.encode(n, e.slice(t, t + r)), !0) : (C(e, t, r, n), !1)), + C = (e, t, r, n) => e.write(E(n, r), t, r, 'ascii'), + E = (e, t) => I(Math.floor(e).toString(8), t), + I = (e, t) => + (e.length === t - 1 ? e : new Array(t - e.length - 1).join('0') + e + ' ') + '\0', + m = (e, t, r, n) => null !== n && d(e, t, r, n.getTime() / 1e3), + y = new Array(156).join('\0'), + w = (e, t, r, i) => + null !== i && + (e.write(i + y, t, r, 'utf8'), i.length !== n.byteLength(i) || i.length > r); + e.exports = class { + constructor(e, t, r, i) { + (this.cksumValid = !1), + (this.needPax = !1), + (this.nullBlock = !1), + (this.block = null), + (this.path = null), + (this.mode = null), + (this.uid = null), + (this.gid = null), + (this.size = null), + (this.mtime = null), + (this.cksum = null), + (this[a] = '0'), + (this.linkpath = null), + (this.uname = null), + (this.gname = null), + (this.devmaj = 0), + (this.devmin = 0), + (this.atime = null), + (this.ctime = null), + n.isBuffer(e) ? this.decode(e, t || 0, r, i) : e && this.set(e); + } + decode(e, t, r, n) { + if ((t || (t = 0), !(e && e.length >= t + 512))) + throw new Error('need 512 bytes for header'); + if ( + ((this.path = u(e, t, 100)), + (this.mode = g(e, t + 100, 8)), + (this.uid = g(e, t + 108, 8)), + (this.gid = g(e, t + 116, 8)), + (this.size = g(e, t + 124, 12)), + (this.mtime = l(e, t + 136, 12)), + (this.cksum = g(e, t + 148, 12)), + this[A](r), + this[A](n, !0), + (this[a] = u(e, t + 156, 1)), + '' === this[a] && (this[a] = '0'), + '0' === this[a] && '/' === this.path.substr(-1) && (this[a] = '5'), + '5' === this[a] && (this.size = 0), + (this.linkpath = u(e, t + 157, 100)), + 'ustar\x0000' === e.slice(t + 257, t + 265).toString()) + ) + if ( + ((this.uname = u(e, t + 265, 32)), + (this.gname = u(e, t + 297, 32)), + (this.devmaj = g(e, t + 329, 8)), + (this.devmin = g(e, t + 337, 8)), + 0 !== e[t + 475]) + ) { + const r = u(e, t + 345, 155); + this.path = r + '/' + this.path; + } else { + const r = u(e, t + 345, 130); + r && (this.path = r + '/' + this.path), + (this.atime = l(e, t + 476, 12)), + (this.ctime = l(e, t + 488, 12)); + } + let i = 256; + for (let r = t; r < t + 148; r++) i += e[r]; + for (let r = t + 156; r < t + 512; r++) i += e[r]; + (this.cksumValid = i === this.cksum), + null === this.cksum && 256 === i && (this.nullBlock = !0); + } + [A](e, t) { + for (let r in e) + null === e[r] || void 0 === e[r] || (t && 'path' === r) || (this[r] = e[r]); + } + encode(e, t) { + if ( + (e || ((e = this.block = n.alloc(512)), (t = 0)), + t || (t = 0), + !(e.length >= t + 512)) + ) + throw new Error('need 512 bytes for header'); + const r = this.ctime || this.atime ? 130 : 155, + i = c(this.path || '', r), + o = i[0], + s = i[1]; + (this.needPax = i[2]), + (this.needPax = w(e, t, 100, o) || this.needPax), + (this.needPax = d(e, t + 100, 8, this.mode) || this.needPax), + (this.needPax = d(e, t + 108, 8, this.uid) || this.needPax), + (this.needPax = d(e, t + 116, 8, this.gid) || this.needPax), + (this.needPax = d(e, t + 124, 12, this.size) || this.needPax), + (this.needPax = m(e, t + 136, 12, this.mtime) || this.needPax), + (e[t + 156] = this[a].charCodeAt(0)), + (this.needPax = w(e, t + 157, 100, this.linkpath) || this.needPax), + e.write('ustar\x0000', t + 257, 8), + (this.needPax = w(e, t + 265, 32, this.uname) || this.needPax), + (this.needPax = w(e, t + 297, 32, this.gname) || this.needPax), + (this.needPax = d(e, t + 329, 8, this.devmaj) || this.needPax), + (this.needPax = d(e, t + 337, 8, this.devmin) || this.needPax), + (this.needPax = w(e, t + 345, r, s) || this.needPax), + 0 !== e[t + 475] + ? (this.needPax = w(e, t + 345, 155, s) || this.needPax) + : ((this.needPax = w(e, t + 345, 130, s) || this.needPax), + (this.needPax = m(e, t + 476, 12, this.atime) || this.needPax), + (this.needPax = m(e, t + 488, 12, this.ctime) || this.needPax)); + let A = 256; + for (let r = t; r < t + 148; r++) A += e[r]; + for (let r = t + 156; r < t + 512; r++) A += e[r]; + return ( + (this.cksum = A), d(e, t + 148, 8, this.cksum), (this.cksumValid = !0), this.needPax + ); + } + set(e) { + for (let t in e) null !== e[t] && void 0 !== e[t] && (this[t] = e[t]); + } + get type() { + return i.name.get(this[a]) || this[a]; + } + get typeKey() { + return this[a]; + } + set type(e) { + i.code.has(e) ? (this[a] = i.code.get(e)) : (this[a] = e); + } + }; + }, + 59087: (e) => { + 'use strict'; + const t = new Map([ + ['C', 'cwd'], + ['f', 'file'], + ['z', 'gzip'], + ['P', 'preservePaths'], + ['U', 'unlink'], + ['strip-components', 'strip'], + ['stripComponents', 'strip'], + ['keep-newer', 'newer'], + ['keepNewer', 'newer'], + ['keep-newer-files', 'newer'], + ['keepNewerFiles', 'newer'], + ['k', 'keep'], + ['keep-existing', 'keep'], + ['keepExisting', 'keep'], + ['m', 'noMtime'], + ['no-mtime', 'noMtime'], + ['p', 'preserveOwner'], + ['L', 'follow'], + ['h', 'follow'], + ]); + e.exports = (e) => + e + ? Object.keys(e) + .map((r) => [t.has(r) ? t.get(r) : r, e[r]]) + .reduce((e, t) => ((e[t[0]] = t[1]), e), Object.create(null)) + : {}; + }, + 62488: (e, t) => { + 'use strict'; + t.encode = (e, t) => { + if (!Number.isSafeInteger(e)) + throw TypeError('cannot encode number outside of javascript safe integer range'); + return e < 0 ? n(e, t) : r(e, t), t; + }; + const r = (e, t) => { + t[0] = 128; + for (var r = t.length; r > 1; r--) (t[r - 1] = 255 & e), (e = Math.floor(e / 256)); + }, + n = (e, t) => { + t[0] = 255; + var r = !1; + e *= -1; + for (var n = t.length; n > 1; n--) { + var i = 255 & e; + (e = Math.floor(e / 256)), + r ? (t[n - 1] = s(i)) : 0 === i ? (t[n - 1] = 0) : ((r = !0), (t[n - 1] = A(i))); + } + }, + i = + ((t.parse = (e) => { + e[e.length - 1]; + var t, + r = e[0]; + if (128 === r) t = o(e.slice(1, e.length)); + else { + if (255 !== r) throw TypeError('invalid base256 encoding'); + t = i(e); + } + if (!Number.isSafeInteger(t)) + throw TypeError('parsed number outside of javascript safe integer range'); + return t; + }), + (e) => { + for (var t = e.length, r = 0, n = !1, i = t - 1; i > -1; i--) { + var o, + a = e[i]; + n ? (o = s(a)) : 0 === a ? (o = a) : ((n = !0), (o = A(a))), + 0 !== o && (r -= o * Math.pow(256, t - i - 1)); + } + return r; + }), + o = (e) => { + for (var t = e.length, r = 0, n = t - 1; n > -1; n--) { + var i = e[n]; + 0 !== i && (r += i * Math.pow(256, t - n - 1)); + } + return r; + }, + s = (e) => 255 & (255 ^ e), + A = (e) => (1 + (255 ^ e)) & 255; + }, + 54768: (e, t, r) => { + 'use strict'; + const n = r(15135), + i = r(59087), + o = r(67501), + s = r(35747), + A = r(28123), + a = r(85622), + c = + ((e.exports = (e, t, r) => { + 'function' == typeof e + ? ((r = e), (t = null), (e = {})) + : Array.isArray(e) && ((t = e), (e = {})), + 'function' == typeof t && ((r = t), (t = null)), + (t = t ? Array.from(t) : []); + const n = i(e); + if (n.sync && 'function' == typeof r) + throw new TypeError('callback not supported for sync tar functions'); + if (!n.file && 'function' == typeof r) + throw new TypeError('callback only supported with file option'); + return ( + t.length && u(n, t), + n.noResume || c(n), + n.file && n.sync ? l(n) : n.file ? h(n, r) : g(n) + ); + }), + (e) => { + const t = e.onentry; + e.onentry = t + ? (e) => { + t(e), e.resume(); + } + : (e) => e.resume(); + }), + u = (e, t) => { + const r = new Map(t.map((e) => [e.replace(/\/+$/, ''), !0])), + n = e.filter, + i = (e, t) => { + const n = t || a.parse(e).root || '.', + o = e !== n && (r.has(e) ? r.get(e) : i(a.dirname(e), n)); + return r.set(e, o), o; + }; + e.filter = n + ? (e, t) => n(e, t) && i(e.replace(/\/+$/, '')) + : (e) => i(e.replace(/\/+$/, '')); + }, + l = (e) => { + const t = g(e), + r = e.file; + let i, + o = !0; + try { + const A = s.statSync(r), + a = e.maxReadSize || 16777216; + if (A.size < a) t.end(s.readFileSync(r)); + else { + let e = 0; + const o = n.allocUnsafe(a); + for (i = s.openSync(r, 'r'); e < A.size; ) { + let r = s.readSync(i, o, 0, a, e); + (e += r), t.write(o.slice(0, r)); + } + t.end(); + } + o = !1; + } finally { + if (o && i) + try { + s.closeSync(i); + } catch (e) {} + } + }, + h = (e, t) => { + const r = new o(e), + n = e.maxReadSize || 16777216, + i = e.file, + a = new Promise((e, t) => { + r.on('error', t), + r.on('end', e), + s.stat(i, (e, o) => { + if (e) t(e); + else { + const e = new A.ReadStream(i, { readSize: n, size: o.size }); + e.on('error', t), e.pipe(r); + } + }); + }); + return t ? a.then(t, t) : a; + }, + g = (e) => new o(e); + }, + 65865: (e, t, r) => { + 'use strict'; + const n = r(11436), + i = r(35747), + o = r(85622), + s = r(82758); + class A extends Error { + constructor(e, t) { + super('Cannot extract through symbolic link'), (this.path = t), (this.symlink = e); + } + get name() { + return 'SylinkError'; + } + } + class a extends Error { + constructor(e, t) { + super(t + ": Cannot cd into '" + e + "'"), (this.path = e), (this.code = t); + } + get name() { + return 'CwdError'; + } + } + e.exports = (e, t, r) => { + const A = t.umask, + u = 448 | t.mode, + l = 0 != (u & A), + h = t.uid, + g = t.gid, + f = + 'number' == typeof h && + 'number' == typeof g && + (h !== t.processUid || g !== t.processGid), + p = t.preserve, + d = t.unlink, + C = t.cache, + E = t.cwd, + I = (t, n) => { + t + ? r(t) + : (C.set(e, !0), n && f ? s(n, h, g, (e) => I(e)) : l ? i.chmod(e, u, r) : r()); + }; + if (C && !0 === C.get(e)) return I(); + if (e === E) + return i.stat(e, (t, r) => { + (!t && r.isDirectory()) || (t = new a(e, (t && t.code) || 'ENOTDIR')), I(t); + }); + if (p) return n(e, u, I); + const m = o.relative(E, e).split(/\/|\\/); + c(E, m, u, C, d, E, null, I); + }; + const c = (e, t, r, n, o, s, A, a) => { + if (!t.length) return a(null, A); + const l = e + '/' + t.shift(); + if (n.get(l)) return c(l, t, r, n, o, s, A, a); + i.mkdir(l, r, u(l, t, r, n, o, s, A, a)); + }, + u = (e, t, r, n, s, l, h, g) => (f) => { + if (f) { + if ( + f.path && + o.dirname(f.path) === l && + ('ENOTDIR' === f.code || 'ENOENT' === f.code) + ) + return g(new a(l, f.code)); + i.lstat(e, (o, a) => { + if (o) g(o); + else if (a.isDirectory()) c(e, t, r, n, s, l, h, g); + else if (s) + i.unlink(e, (o) => { + if (o) return g(o); + i.mkdir(e, r, u(e, t, r, n, s, l, h, g)); + }); + else { + if (a.isSymbolicLink()) return g(new A(e, e + '/' + t.join('/'))); + g(f); + } + }); + } else c(e, t, r, n, s, l, (h = h || e), g); + }; + e.exports.sync = (e, t) => { + const r = t.umask, + c = 448 | t.mode, + u = 0 != (c & r), + l = t.uid, + h = t.gid, + g = + 'number' == typeof l && + 'number' == typeof h && + (l !== t.processUid || h !== t.processGid), + f = t.preserve, + p = t.unlink, + d = t.cache, + C = t.cwd, + E = (t) => { + d.set(e, !0), t && g && s.sync(t, l, h), u && i.chmodSync(e, c); + }; + if (d && !0 === d.get(e)) return E(); + if (e === C) { + let t = !1, + r = 'ENOTDIR'; + try { + t = i.statSync(e).isDirectory(); + } catch (e) { + r = e.code; + } finally { + if (!t) throw new a(e, r); + } + return void E(); + } + if (f) return E(n.sync(e, c)); + const I = o.relative(C, e).split(/\/|\\/); + let m = null; + for (let e = I.shift(), t = C; e && (t += '/' + e); e = I.shift()) + if (!d.get(t)) + try { + i.mkdirSync(t, c), (m = m || t), d.set(t, !0); + } catch (e) { + if ( + e.path && + o.dirname(e.path) === C && + ('ENOTDIR' === e.code || 'ENOENT' === e.code) + ) + return new a(C, e.code); + const r = i.lstatSync(t); + if (r.isDirectory()) { + d.set(t, !0); + continue; + } + if (p) { + i.unlinkSync(t), i.mkdirSync(t, c), (m = m || t), d.set(t, !0); + continue; + } + if (r.isSymbolicLink()) return new A(t, t + '/' + I.join('/')); + } + return E(m); + }; + }, + 11754: (e) => { + 'use strict'; + e.exports = (e, t) => ( + (e &= 4095), t && (256 & e && (e |= 64), 32 & e && (e |= 8), 4 & e && (e |= 1)), e + ); + }, + 29231: (e, t, r) => { + 'use strict'; + const n = r(15135); + class i { + constructor(e, t) { + (this.path = e || './'), + (this.absolute = t), + (this.entry = null), + (this.stat = null), + (this.readdir = null), + (this.pending = !1), + (this.ignore = !1), + (this.piped = !1); + } + } + const o = r(44380), + s = r(20671), + A = r(88658), + a = r(27052), + c = a.Sync, + u = a.Tar, + l = r(80800), + h = n.alloc(1024), + g = Symbol('onStat'), + f = Symbol('ended'), + p = Symbol('queue'), + d = Symbol('current'), + C = Symbol('process'), + E = Symbol('processing'), + I = Symbol('processJob'), + m = Symbol('jobs'), + y = Symbol('jobDone'), + w = Symbol('addFSEntry'), + B = Symbol('addTarEntry'), + Q = Symbol('stat'), + v = Symbol('readdir'), + D = Symbol('onreaddir'), + b = Symbol('pipe'), + S = Symbol('entry'), + k = Symbol('entryOpt'), + x = Symbol('writeEntryClass'), + F = Symbol('write'), + M = Symbol('ondrain'), + N = r(35747), + R = r(85622), + K = r(7994)( + class extends o { + constructor(e) { + super(e), + (e = e || Object.create(null)), + (this.opt = e), + (this.cwd = e.cwd || process.cwd()), + (this.maxReadSize = e.maxReadSize), + (this.preservePaths = !!e.preservePaths), + (this.strict = !!e.strict), + (this.noPax = !!e.noPax), + (this.prefix = (e.prefix || '').replace(/(\\|\/)+$/, '')), + (this.linkCache = e.linkCache || new Map()), + (this.statCache = e.statCache || new Map()), + (this.readdirCache = e.readdirCache || new Map()), + (this[x] = a), + 'function' == typeof e.onwarn && this.on('warn', e.onwarn), + (this.zip = null), + e.gzip + ? ('object' != typeof e.gzip && (e.gzip = {}), + (this.zip = new s.Gzip(e.gzip)), + this.zip.on('data', (e) => super.write(e)), + this.zip.on('end', (e) => super.end()), + this.zip.on('drain', (e) => this[M]()), + this.on('resume', (e) => this.zip.resume())) + : this.on('drain', this[M]), + (this.portable = !!e.portable), + (this.noDirRecurse = !!e.noDirRecurse), + (this.follow = !!e.follow), + (this.noMtime = !!e.noMtime), + (this.mtime = e.mtime || null), + (this.filter = 'function' == typeof e.filter ? e.filter : (e) => !0), + (this[p] = new l()), + (this[m] = 0), + (this.jobs = +e.jobs || 4), + (this[E] = !1), + (this[f] = !1); + } + [F](e) { + return super.write(e); + } + add(e) { + return this.write(e), this; + } + end(e) { + return e && this.write(e), (this[f] = !0), this[C](), this; + } + write(e) { + if (this[f]) throw new Error('write after end'); + return e instanceof A ? this[B](e) : this[w](e), this.flowing; + } + [B](e) { + const t = R.resolve(this.cwd, e.path); + if ( + (this.prefix && (e.path = this.prefix + '/' + e.path.replace(/^\.(\/+|$)/, '')), + this.filter(e.path, e)) + ) { + const r = new i(e.path, t, !1); + (r.entry = new u(e, this[k](r))), + r.entry.on('end', (e) => this[y](r)), + (this[m] += 1), + this[p].push(r); + } else e.resume(); + this[C](); + } + [w](e) { + const t = R.resolve(this.cwd, e); + this.prefix && (e = this.prefix + '/' + e.replace(/^\.(\/+|$)/, '')), + this[p].push(new i(e, t)), + this[C](); + } + [Q](e) { + (e.pending = !0), (this[m] += 1); + const t = this.follow ? 'stat' : 'lstat'; + N[t](e.absolute, (t, r) => { + (e.pending = !1), (this[m] -= 1), t ? this.emit('error', t) : this[g](e, r); + }); + } + [g](e, t) { + this.statCache.set(e.absolute, t), + (e.stat = t), + this.filter(e.path, t) || (e.ignore = !0), + this[C](); + } + [v](e) { + (e.pending = !0), + (this[m] += 1), + N.readdir(e.absolute, (t, r) => { + if (((e.pending = !1), (this[m] -= 1), t)) return this.emit('error', t); + this[D](e, r); + }); + } + [D](e, t) { + this.readdirCache.set(e.absolute, t), (e.readdir = t), this[C](); + } + [C]() { + if (!this[E]) { + this[E] = !0; + for (let e = this[p].head; null !== e && this[m] < this.jobs; e = e.next) + if ((this[I](e.value), e.value.ignore)) { + const t = e.next; + this[p].removeNode(e), (e.next = t); + } + (this[E] = !1), + this[f] && + !this[p].length && + 0 === this[m] && + (this.zip ? this.zip.end(h) : (super.write(h), super.end())); + } + } + get [d]() { + return this[p] && this[p].head && this[p].head.value; + } + [y](e) { + this[p].shift(), (this[m] -= 1), this[C](); + } + [I](e) { + e.pending || + (e.entry + ? e !== this[d] || e.piped || this[b](e) + : (e.stat || + (this.statCache.has(e.absolute) + ? this[g](e, this.statCache.get(e.absolute)) + : this[Q](e)), + e.stat && + (e.ignore || + ((this.noDirRecurse || + !e.stat.isDirectory() || + e.readdir || + (this.readdirCache.has(e.absolute) + ? this[D](e, this.readdirCache.get(e.absolute)) + : this[v](e), + e.readdir)) && + ((e.entry = this[S](e)), + e.entry ? e !== this[d] || e.piped || this[b](e) : (e.ignore = !0)))))); + } + [k](e) { + return { + onwarn: (e, t) => { + this.warn(e, t); + }, + noPax: this.noPax, + cwd: this.cwd, + absolute: e.absolute, + preservePaths: this.preservePaths, + maxReadSize: this.maxReadSize, + strict: this.strict, + portable: this.portable, + linkCache: this.linkCache, + statCache: this.statCache, + noMtime: this.noMtime, + mtime: this.mtime, + }; + } + [S](e) { + this[m] += 1; + try { + return new this[x](e.path, this[k](e)) + .on('end', () => this[y](e)) + .on('error', (e) => this.emit('error', e)); + } catch (e) { + this.emit('error', e); + } + } + [M]() { + this[d] && this[d].entry && this[d].entry.resume(); + } + [b](e) { + (e.piped = !0), + e.readdir && + e.readdir.forEach((t) => { + const r = this.prefix ? e.path.slice(this.prefix.length + 1) || './' : e.path, + n = './' === r ? '' : r.replace(/\/*$/, '/'); + this[w](n + t); + }); + const t = e.entry, + r = this.zip; + r + ? t.on('data', (e) => { + r.write(e) || t.pause(); + }) + : t.on('data', (e) => { + super.write(e) || t.pause(); + }); + } + pause() { + return this.zip && this.zip.pause(), super.pause(); + } + } + ); + (K.Sync = class extends K { + constructor(e) { + super(e), (this[x] = c); + } + pause() {} + resume() {} + [Q](e) { + const t = this.follow ? 'statSync' : 'lstatSync'; + this[g](e, N[t](e.absolute)); + } + [v](e, t) { + this[D](e, N.readdirSync(e.absolute)); + } + [b](e) { + const t = e.entry, + r = this.zip; + e.readdir && + e.readdir.forEach((t) => { + const r = this.prefix ? e.path.slice(this.prefix.length + 1) || './' : e.path, + n = './' === r ? '' : r.replace(/\/*$/, '/'); + this[w](n + t); + }), + r + ? t.on('data', (e) => { + r.write(e); + }) + : t.on('data', (e) => { + super[F](e); + }); + } + }), + (e.exports = K); + }, + 67501: (e, t, r) => { + 'use strict'; + const n = r(7994), + i = (r(85622), r(46464)), + o = r(28614), + s = r(80800), + A = r(88658), + a = r(76516), + c = r(20671), + u = r(15135), + l = u.from([31, 139]), + h = Symbol('state'), + g = Symbol('writeEntry'), + f = Symbol('readEntry'), + p = Symbol('nextEntry'), + d = Symbol('processEntry'), + C = Symbol('extendedHeader'), + E = Symbol('globalExtendedHeader'), + I = Symbol('meta'), + m = Symbol('emitMeta'), + y = Symbol('buffer'), + w = Symbol('queue'), + B = Symbol('ended'), + Q = Symbol('emittedEnd'), + v = Symbol('emit'), + D = Symbol('unzip'), + b = Symbol('consumeChunk'), + S = Symbol('consumeChunkSub'), + k = Symbol('consumeBody'), + x = Symbol('consumeMeta'), + F = Symbol('consumeHeader'), + M = Symbol('consuming'), + N = Symbol('bufferConcat'), + R = Symbol('maybeEnd'), + K = Symbol('writing'), + L = Symbol('aborted'), + T = Symbol('onDone'), + P = (e) => !0; + e.exports = n( + class extends o { + constructor(e) { + super((e = e || {})), + e.ondone + ? this.on(T, e.ondone) + : this.on(T, (e) => { + this.emit('prefinish'), + this.emit('finish'), + this.emit('end'), + this.emit('close'); + }), + (this.strict = !!e.strict), + (this.maxMetaEntrySize = e.maxMetaEntrySize || 1048576), + (this.filter = 'function' == typeof e.filter ? e.filter : P), + (this.writable = !0), + (this.readable = !1), + (this[w] = new s()), + (this[y] = null), + (this[f] = null), + (this[g] = null), + (this[h] = 'begin'), + (this[I] = ''), + (this[C] = null), + (this[E] = null), + (this[B] = !1), + (this[D] = null), + (this[L] = !1), + 'function' == typeof e.onwarn && this.on('warn', e.onwarn), + 'function' == typeof e.onentry && this.on('entry', e.onentry); + } + [F](e, t) { + let r; + try { + r = new i(e, t, this[C], this[E]); + } catch (e) { + return this.warn('invalid entry', e); + } + if (r.nullBlock) this[v]('nullBlock'); + else if (r.cksumValid) + if (r.path) { + const e = r.type; + if (/^(Symbolic)?Link$/.test(e) && !r.linkpath) + this.warn('invalid: linkpath required', r); + else if (!/^(Symbolic)?Link$/.test(e) && r.linkpath) + this.warn('invalid: linkpath forbidden', r); + else { + const e = (this[g] = new A(r, this[C], this[E])); + e.meta + ? e.size > this.maxMetaEntrySize + ? ((e.ignore = !0), this[v]('ignoredEntry', e), (this[h] = 'ignore')) + : e.size > 0 && + ((this[I] = ''), e.on('data', (e) => (this[I] += e)), (this[h] = 'meta')) + : ((this[C] = null), + (e.ignore = e.ignore || !this.filter(e.path, e)), + e.ignore + ? (this[v]('ignoredEntry', e), (this[h] = e.remain ? 'ignore' : 'begin')) + : (e.remain ? (this[h] = 'body') : ((this[h] = 'begin'), e.end()), + this[f] ? this[w].push(e) : (this[w].push(e), this[p]()))); + } + } else this.warn('invalid: path is required', r); + else this.warn('invalid entry', r); + } + [d](e) { + let t = !0; + return ( + e + ? Array.isArray(e) + ? this.emit.apply(this, e) + : ((this[f] = e), + this.emit('entry', e), + e.emittedEnd || (e.on('end', (e) => this[p]()), (t = !1))) + : ((this[f] = null), (t = !1)), + t + ); + } + [p]() { + do {} while (this[d](this[w].shift())); + if (!this[w].length) { + const e = this[f]; + !e || e.flowing || e.size === e.remain + ? this[K] || this.emit('drain') + : e.once('drain', (e) => this.emit('drain')); + } + } + [k](e, t) { + const r = this[g], + n = r.blockRemain, + i = n >= e.length && 0 === t ? e : e.slice(t, t + n); + return ( + r.write(i), + r.blockRemain || ((this[h] = 'begin'), (this[g] = null), r.end()), + i.length + ); + } + [x](e, t) { + const r = this[g], + n = this[k](e, t); + return this[g] || this[m](r), n; + } + [v](e, t, r) { + this[w].length || this[f] ? this[w].push([e, t, r]) : this.emit(e, t, r); + } + [m](e) { + switch ((this[v]('meta', this[I]), e.type)) { + case 'ExtendedHeader': + case 'OldExtendedHeader': + this[C] = a.parse(this[I], this[C], !1); + break; + case 'GlobalExtendedHeader': + this[E] = a.parse(this[I], this[E], !0); + break; + case 'NextFileHasLongPath': + case 'OldGnuLongPath': + (this[C] = this[C] || Object.create(null)), + (this[C].path = this[I].replace(/\0.*/, '')); + break; + case 'NextFileHasLongLinkpath': + (this[C] = this[C] || Object.create(null)), + (this[C].linkpath = this[I].replace(/\0.*/, '')); + break; + default: + throw new Error('unknown meta: ' + e.type); + } + } + abort(e, t) { + (this[L] = !0), this.warn(e, t), this.emit('abort', t), this.emit('error', t); + } + write(e) { + if (this[L]) return; + if (null === this[D] && e) { + if ( + (this[y] && ((e = u.concat([this[y], e])), (this[y] = null)), e.length < l.length) + ) + return (this[y] = e), !0; + for (let t = 0; null === this[D] && t < l.length; t++) + e[t] !== l[t] && (this[D] = !1); + if (null === this[D]) { + const t = this[B]; + (this[B] = !1), + (this[D] = new c.Unzip()), + this[D].on('data', (e) => this[b](e)), + this[D].on('error', (e) => this.abort(e.message, e)), + this[D].on('end', (e) => { + (this[B] = !0), this[b](); + }), + (this[K] = !0); + const r = this[D][t ? 'end' : 'write'](e); + return (this[K] = !1), r; + } + } + (this[K] = !0), this[D] ? this[D].write(e) : this[b](e), (this[K] = !1); + const t = !this[w].length && (!this[f] || this[f].flowing); + return t || this[w].length || this[f].once('drain', (e) => this.emit('drain')), t; + } + [N](e) { + e && !this[L] && (this[y] = this[y] ? u.concat([this[y], e]) : e); + } + [R]() { + if (this[B] && !this[Q] && !this[L] && !this[M]) { + this[Q] = !0; + const e = this[g]; + if (e && e.blockRemain) { + const t = this[y] ? this[y].length : 0; + this.warn( + 'Truncated input (needed ' + + e.blockRemain + + ' more bytes, only ' + + t + + ' available)', + e + ), + this[y] && e.write(this[y]), + e.end(); + } + this[v](T); + } + } + [b](e) { + if (this[M]) this[N](e); + else if (e || this[y]) { + if (((this[M] = !0), this[y])) { + this[N](e); + const t = this[y]; + (this[y] = null), this[S](t); + } else this[S](e); + for (; this[y] && this[y].length >= 512 && !this[L]; ) { + const e = this[y]; + (this[y] = null), this[S](e); + } + this[M] = !1; + } else this[R](); + (this[y] && !this[B]) || this[R](); + } + [S](e) { + let t = 0, + r = e.length; + for (; t + 512 <= r && !this[L]; ) + switch (this[h]) { + case 'begin': + this[F](e, t), (t += 512); + break; + case 'ignore': + case 'body': + t += this[k](e, t); + break; + case 'meta': + t += this[x](e, t); + break; + default: + throw new Error('invalid state: ' + this[h]); + } + t < r && + (this[y] ? (this[y] = u.concat([e.slice(t), this[y]])) : (this[y] = e.slice(t))); + } + end(e) { + this[L] || (this[D] ? this[D].end(e) : ((this[B] = !0), this.write(e))); + } + } + ); + }, + 76516: (e, t, r) => { + 'use strict'; + const n = r(15135), + i = r(46464), + o = r(85622); + class s { + constructor(e, t) { + (this.atime = e.atime || null), + (this.charset = e.charset || null), + (this.comment = e.comment || null), + (this.ctime = e.ctime || null), + (this.gid = e.gid || null), + (this.gname = e.gname || null), + (this.linkpath = e.linkpath || null), + (this.mtime = e.mtime || null), + (this.path = e.path || null), + (this.size = e.size || null), + (this.uid = e.uid || null), + (this.uname = e.uname || null), + (this.dev = e.dev || null), + (this.ino = e.ino || null), + (this.nlink = e.nlink || null), + (this.global = t || !1); + } + encode() { + const e = this.encodeBody(); + if ('' === e) return null; + const t = n.byteLength(e), + r = 512 * Math.ceil(1 + t / 512), + s = n.allocUnsafe(r); + for (let e = 0; e < 512; e++) s[e] = 0; + new i({ + path: ('PaxHeader/' + o.basename(this.path)).slice(0, 99), + mode: this.mode || 420, + uid: this.uid || null, + gid: this.gid || null, + size: t, + mtime: this.mtime || null, + type: this.global ? 'GlobalExtendedHeader' : 'ExtendedHeader', + linkpath: '', + uname: this.uname || '', + gname: this.gname || '', + devmaj: 0, + devmin: 0, + atime: this.atime || null, + ctime: this.ctime || null, + }).encode(s), + s.write(e, 512, t, 'utf8'); + for (let e = t + 512; e < s.length; e++) s[e] = 0; + return s; + } + encodeBody() { + return ( + this.encodeField('path') + + this.encodeField('ctime') + + this.encodeField('atime') + + this.encodeField('dev') + + this.encodeField('ino') + + this.encodeField('nlink') + + this.encodeField('charset') + + this.encodeField('comment') + + this.encodeField('gid') + + this.encodeField('gname') + + this.encodeField('linkpath') + + this.encodeField('mtime') + + this.encodeField('size') + + this.encodeField('uid') + + this.encodeField('uname') + ); + } + encodeField(e) { + if (null === this[e] || void 0 === this[e]) return ''; + const t = + ' ' + + ('dev' === e || 'ino' === e || 'nlink' === e ? 'SCHILY.' : '') + + e + + '=' + + (this[e] instanceof Date ? this[e].getTime() / 1e3 : this[e]) + + '\n', + r = n.byteLength(t); + let i = Math.floor(Math.log(r) / Math.log(10)) + 1; + r + i >= Math.pow(10, i) && (i += 1); + return i + r + t; + } + } + s.parse = (e, t, r) => new s(A(a(e), t), r); + const A = (e, t) => (t ? Object.keys(e).reduce((t, r) => ((t[r] = e[r]), t), t) : e), + a = (e) => e.replace(/\n$/, '').split('\n').reduce(c, Object.create(null)), + c = (e, t) => { + const r = parseInt(t, 10); + if (r !== n.byteLength(t) + 1) return e; + const i = (t = t.substr((r + ' ').length)).split('='), + o = i.shift().replace(/^SCHILY\.(dev|ino|nlink)/, '$1'); + if (!o) return e; + const s = i.join('='); + return ( + (e[o] = /^([A-Z]+\.)?([mac]|birth|creation)time$/.test(o) + ? new Date(1e3 * s) + : /^[0-9]+$/.test(s) + ? +s + : s), + e + ); + }; + e.exports = s; + }, + 88658: (e, t, r) => { + 'use strict'; + r(6464); + const n = r(44380), + i = Symbol('slurp'); + e.exports = class extends n { + constructor(e, t, r) { + switch ( + (super(), + this.pause(), + (this.extended = t), + (this.globalExtended = r), + (this.header = e), + (this.startBlockSize = 512 * Math.ceil(e.size / 512)), + (this.blockRemain = this.startBlockSize), + (this.remain = e.size), + (this.type = e.type), + (this.meta = !1), + (this.ignore = !1), + this.type) + ) { + case 'File': + case 'OldFile': + case 'Link': + case 'SymbolicLink': + case 'CharacterDevice': + case 'BlockDevice': + case 'Directory': + case 'FIFO': + case 'ContiguousFile': + case 'GNUDumpDir': + break; + case 'NextFileHasLongLinkpath': + case 'NextFileHasLongPath': + case 'OldGnuLongPath': + case 'GlobalExtendedHeader': + case 'ExtendedHeader': + case 'OldExtendedHeader': + this.meta = !0; + break; + default: + this.ignore = !0; + } + (this.path = e.path), + (this.mode = e.mode), + this.mode && (this.mode = 4095 & this.mode), + (this.uid = e.uid), + (this.gid = e.gid), + (this.uname = e.uname), + (this.gname = e.gname), + (this.size = e.size), + (this.mtime = e.mtime), + (this.atime = e.atime), + (this.ctime = e.ctime), + (this.linkpath = e.linkpath), + (this.uname = e.uname), + (this.gname = e.gname), + t && this[i](t), + r && this[i](r, !0); + } + write(e) { + const t = e.length; + if (t > this.blockRemain) throw new Error('writing more to entry than is appropriate'); + const r = this.remain, + n = this.blockRemain; + return ( + (this.remain = Math.max(0, r - t)), + (this.blockRemain = Math.max(0, n - t)), + !!this.ignore || (r >= t ? super.write(e) : super.write(e.slice(0, r))) + ); + } + [i](e, t) { + for (let r in e) + null === e[r] || void 0 === e[r] || (t && 'path' === r) || (this[r] = e[r]); + } + }; + }, + 84208: (e, t, r) => { + 'use strict'; + const n = r(15135), + i = r(59087), + o = r(29231), + s = (r(67501), r(35747)), + A = r(28123), + a = r(54768), + c = r(85622), + u = r(46464), + l = + ((e.exports = (e, t, r) => { + const n = i(e); + if (!n.file) throw new TypeError('file is required'); + if (n.gzip) throw new TypeError('cannot append to compressed archives'); + if (!t || !Array.isArray(t) || !t.length) + throw new TypeError('no files or directories specified'); + return (t = Array.from(t)), n.sync ? l(n, t) : g(n, t, r); + }), + (e, t) => { + const r = new o.Sync(e); + let i, + A, + a = !0; + try { + try { + i = s.openSync(e.file, 'r+'); + } catch (t) { + if ('ENOENT' !== t.code) throw t; + i = s.openSync(e.file, 'w+'); + } + const o = s.fstatSync(i), + c = n.alloc(512); + e: for (A = 0; A < o.size; A += 512) { + for (let e = 0, t = 0; e < 512; e += t) { + if ( + ((t = s.readSync(i, c, e, c.length - e, A + e)), + 0 === A && 31 === c[0] && 139 === c[1]) + ) + throw new Error('cannot append to compressed archives'); + if (!t) break e; + } + let t = new u(c); + if (!t.cksumValid) break; + let r = 512 * Math.ceil(t.size / 512); + if (A + r + 512 > o.size) break; + (A += r), e.mtimeCache && e.mtimeCache.set(t.path, t.mtime); + } + (a = !1), h(e, r, A, i, t); + } finally { + if (a) + try { + s.closeSync(i); + } catch (e) {} + } + }), + h = (e, t, r, n, i) => { + const o = new A.WriteStreamSync(e.file, { fd: n, start: r }); + t.pipe(o), f(t, i); + }, + g = (e, t, r) => { + t = Array.from(t); + const i = new o(e), + a = new Promise((r, o) => { + i.on('error', o); + let a = 'r+'; + const c = (l, h) => + l && 'ENOENT' === l.code && 'r+' === a + ? ((a = 'w+'), s.open(e.file, a, c)) + : l + ? o(l) + : void s.fstat(h, (a, c) => { + if (a) return o(a); + ((t, r, i) => { + const o = (e, r) => { + e ? s.close(t, (t) => i(e)) : i(null, r); + }; + let A = 0; + if (0 === r) return o(null, 0); + let a = 0; + const c = n.alloc(512), + l = (n, i) => { + if (n) return o(n); + if (((a += i), a < 512 && i)) + return s.read(t, c, a, c.length - a, A + a, l); + if (0 === A && 31 === c[0] && 139 === c[1]) + return o(new Error('cannot append to compressed archives')); + if (a < 512) return o(null, A); + const h = new u(c); + if (!h.cksumValid) return o(null, A); + const g = 512 * Math.ceil(h.size / 512); + return A + g + 512 > r + ? o(null, A) + : ((A += g + 512), + A >= r + ? o(null, A) + : (e.mtimeCache && e.mtimeCache.set(h.path, h.mtime), + (a = 0), + void s.read(t, c, 0, 512, A, l))); + }; + s.read(t, c, 0, 512, A, l); + })(h, c.size, (n, s) => { + if (n) return o(n); + const a = new A.WriteStream(e.file, { fd: h, start: s }); + i.pipe(a), a.on('error', o), a.on('close', r), p(i, t); + }); + }); + s.open(e.file, a, c); + }); + return r ? a.then(r, r) : a; + }, + f = (e, t) => { + t.forEach((t) => { + '@' === t.charAt(0) + ? a({ + file: c.resolve(e.cwd, t.substr(1)), + sync: !0, + noResume: !0, + onentry: (t) => e.add(t), + }) + : e.add(t); + }), + e.end(); + }, + p = (e, t) => { + for (; t.length; ) { + const r = t.shift(); + if ('@' === r.charAt(0)) + return a({ + file: c.resolve(e.cwd, r.substr(1)), + noResume: !0, + onentry: (t) => e.add(t), + }).then((r) => p(e, t)); + e.add(r); + } + e.end(); + }; + }, + 6464: (e, t) => { + 'use strict'; + (t.name = new Map([ + ['0', 'File'], + ['', 'OldFile'], + ['1', 'Link'], + ['2', 'SymbolicLink'], + ['3', 'CharacterDevice'], + ['4', 'BlockDevice'], + ['5', 'Directory'], + ['6', 'FIFO'], + ['7', 'ContiguousFile'], + ['g', 'GlobalExtendedHeader'], + ['x', 'ExtendedHeader'], + ['A', 'SolarisACL'], + ['D', 'GNUDumpDir'], + ['I', 'Inode'], + ['K', 'NextFileHasLongLinkpath'], + ['L', 'NextFileHasLongPath'], + ['M', 'ContinuationFile'], + ['N', 'OldGnuLongPath'], + ['S', 'SparseFile'], + ['V', 'TapeVolumeHeader'], + ['X', 'OldExtendedHeader'], + ])), + (t.code = new Map(Array.from(t.name).map((e) => [e[1], e[0]]))); + }, + 43915: (e, t, r) => { + 'use strict'; + const n = r(42357), + i = (r(28614).EventEmitter, r(67501)), + o = r(35747), + s = r(28123), + A = r(85622), + a = r(65865), + c = (a.sync, r(86895)), + u = Symbol('onEntry'), + l = Symbol('checkFs'), + h = Symbol('isReusable'), + g = Symbol('makeFs'), + f = Symbol('file'), + p = Symbol('directory'), + d = Symbol('link'), + C = Symbol('symlink'), + E = Symbol('hardlink'), + I = Symbol('unsupported'), + m = (Symbol('unknown'), Symbol('checkPath')), + y = Symbol('mkdir'), + w = Symbol('onError'), + B = Symbol('pending'), + Q = Symbol('pend'), + v = Symbol('unpend'), + D = Symbol('ended'), + b = Symbol('maybeClose'), + S = Symbol('skip'), + k = Symbol('doChown'), + x = Symbol('uid'), + F = Symbol('gid'), + M = r(76417), + N = (e, t, r) => (e === e >>> 0 ? e : t === t >>> 0 ? t : r); + class R extends i { + constructor(e) { + if ( + (e || (e = {}), + (e.ondone = (e) => { + (this[D] = !0), this[b](); + }), + super(e), + (this.transform = 'function' == typeof e.transform ? e.transform : null), + (this.writable = !0), + (this.readable = !1), + (this[B] = 0), + (this[D] = !1), + (this.dirCache = e.dirCache || new Map()), + 'number' == typeof e.uid || 'number' == typeof e.gid) + ) { + if ('number' != typeof e.uid || 'number' != typeof e.gid) + throw new TypeError('cannot set owner without number uid and gid'); + if (e.preserveOwner) + throw new TypeError( + 'cannot preserve owner in archive and also set owner explicitly' + ); + (this.uid = e.uid), (this.gid = e.gid), (this.setOwner = !0); + } else (this.uid = null), (this.gid = null), (this.setOwner = !1); + void 0 === e.preserveOwner && 'number' != typeof e.uid + ? (this.preserveOwner = process.getuid && 0 === process.getuid()) + : (this.preserveOwner = !!e.preserveOwner), + (this.processUid = + (this.preserveOwner || this.setOwner) && process.getuid ? process.getuid() : null), + (this.processGid = + (this.preserveOwner || this.setOwner) && process.getgid ? process.getgid() : null), + (this.forceChown = !0 === e.forceChown), + (this.win32 = !!e.win32 || 'win32' === process.platform), + (this.newer = !!e.newer), + (this.keep = !!e.keep), + (this.noMtime = !!e.noMtime), + (this.preservePaths = !!e.preservePaths), + (this.unlink = !!e.unlink), + (this.cwd = A.resolve(e.cwd || process.cwd())), + (this.strip = +e.strip || 0), + (this.processUmask = process.umask()), + (this.umask = 'number' == typeof e.umask ? e.umask : this.processUmask), + (this.dmode = e.dmode || 511 & ~this.umask), + (this.fmode = e.fmode || 438 & ~this.umask), + this.on('entry', (e) => this[u](e)); + } + [b]() { + this[D] && + 0 === this[B] && + (this.emit('prefinish'), this.emit('finish'), this.emit('end'), this.emit('close')); + } + [m](e) { + if (this.strip) { + const t = e.path.split(/\/|\\/); + if (t.length < this.strip) return !1; + if (((e.path = t.slice(this.strip).join('/')), 'Link' === e.type)) { + const t = e.linkpath.split(/\/|\\/); + t.length >= this.strip && (e.linkpath = t.slice(this.strip).join('/')); + } + } + if (!this.preservePaths) { + const t = e.path; + if (t.match(/(^|\/|\\)\.\.(\\|\/|$)/)) return this.warn("path contains '..'", t), !1; + if (A.win32.isAbsolute(t)) { + const r = A.win32.parse(t); + this.warn('stripping ' + r.root + ' from absolute path', t), + (e.path = t.substr(r.root.length)); + } + } + if (this.win32) { + const t = A.win32.parse(e.path); + e.path = + '' === t.root ? c.encode(e.path) : t.root + c.encode(e.path.substr(t.root.length)); + } + return ( + A.isAbsolute(e.path) + ? (e.absolute = e.path) + : (e.absolute = A.resolve(this.cwd, e.path)), + !0 + ); + } + [u](e) { + if (!this[m](e)) return e.resume(); + switch ((n.equal(typeof e.absolute, 'string'), e.type)) { + case 'Directory': + case 'GNUDumpDir': + e.mode && (e.mode = 448 | e.mode); + case 'File': + case 'OldFile': + case 'ContiguousFile': + case 'Link': + case 'SymbolicLink': + return this[l](e); + case 'CharacterDevice': + case 'BlockDevice': + case 'FIFO': + return this[I](e); + } + } + [w](e, t) { + 'CwdError' === e.name + ? this.emit('error', e) + : (this.warn(e.message, e), this[v](), t.resume()); + } + [y](e, t, r) { + a( + e, + { + uid: this.uid, + gid: this.gid, + processUid: this.processUid, + processGid: this.processGid, + umask: this.processUmask, + preserve: this.preservePaths, + unlink: this.unlink, + cache: this.dirCache, + cwd: this.cwd, + mode: t, + }, + r + ); + } + [k](e) { + return ( + this.forceChown || + (this.preserveOwner && + (('number' == typeof e.uid && e.uid !== this.processUid) || + ('number' == typeof e.gid && e.gid !== this.processGid))) || + ('number' == typeof this.uid && this.uid !== this.processUid) || + ('number' == typeof this.gid && this.gid !== this.processGid) + ); + } + [x](e) { + return N(this.uid, e.uid, this.processUid); + } + [F](e) { + return N(this.gid, e.gid, this.processGid); + } + [f](e) { + const t = 4095 & e.mode || this.fmode, + r = new s.WriteStream(e.absolute, { mode: t, autoClose: !1 }); + r.on('error', (t) => this[w](t, e)); + let n = 1; + const i = (t) => { + if (t) return this[w](t, e); + 0 == --n && o.close(r.fd, (e) => this[v]()); + }; + r.on('finish', (t) => { + const s = e.absolute, + A = r.fd; + if (e.mtime && !this.noMtime) { + n++; + const t = e.atime || new Date(), + r = e.mtime; + o.futimes(A, t, r, (e) => (e ? o.utimes(s, t, r, (t) => i(t && e)) : i())); + } + if (this[k](e)) { + n++; + const t = this[x](e), + r = this[F](e); + o.fchown(A, t, r, (e) => (e ? o.chown(s, t, r, (t) => i(t && e)) : i())); + } + i(); + }); + const A = (this.transform && this.transform(e)) || e; + A !== e && (A.on('error', (t) => this[w](t, e)), e.pipe(A)), A.pipe(r); + } + [p](e) { + const t = 4095 & e.mode || this.dmode; + this[y](e.absolute, t, (t) => { + if (t) return this[w](t, e); + let r = 1; + const n = (t) => { + 0 == --r && (this[v](), e.resume()); + }; + e.mtime && + !this.noMtime && + (r++, o.utimes(e.absolute, e.atime || new Date(), e.mtime, n)), + this[k](e) && (r++, o.chown(e.absolute, this[x](e), this[F](e), n)), + n(); + }); + } + [I](e) { + this.warn('unsupported entry type: ' + e.type, e), e.resume(); + } + [C](e) { + this[d](e, e.linkpath, 'symlink'); + } + [E](e) { + this[d](e, A.resolve(this.cwd, e.linkpath), 'link'); + } + [Q]() { + this[B]++; + } + [v]() { + this[B]--, this[b](); + } + [S](e) { + this[v](), e.resume(); + } + [h](e, t) { + return ( + 'File' === e.type && + !this.unlink && + t.isFile() && + t.nlink <= 1 && + 'win32' !== process.platform + ); + } + [l](e) { + this[Q](), + this[y](A.dirname(e.absolute), this.dmode, (t) => { + if (t) return this[w](t, e); + o.lstat(e.absolute, (t, r) => { + r && (this.keep || (this.newer && r.mtime > e.mtime)) + ? this[S](e) + : t || this[h](e, r) + ? this[g](null, e) + : r.isDirectory() + ? 'Directory' === e.type + ? e.mode && (4095 & r.mode) !== e.mode + ? o.chmod(e.absolute, e.mode, (t) => this[g](t, e)) + : this[g](null, e) + : o.rmdir(e.absolute, (t) => this[g](t, e)) + : ((e, t) => { + if ('win32' !== process.platform) return o.unlink(e, t); + const r = e + '.DELETE.' + M.randomBytes(16).toString('hex'); + o.rename(e, r, (e) => { + if (e) return t(e); + o.unlink(r, t); + }); + })(e.absolute, (t) => this[g](t, e)); + }); + }); + } + [g](e, t) { + if (e) return this[w](e, t); + switch (t.type) { + case 'File': + case 'OldFile': + case 'ContiguousFile': + return this[f](t); + case 'Link': + return this[E](t); + case 'SymbolicLink': + return this[C](t); + case 'Directory': + case 'GNUDumpDir': + return this[p](t); + } + } + [d](e, t, r) { + o[r](t, e.absolute, (t) => { + if (t) return this[w](t, e); + this[v](), e.resume(); + }); + } + } + (R.Sync = class extends R { + constructor(e) { + super(e); + } + [l](e) { + const t = this[y](A.dirname(e.absolute), this.dmode); + if (t) return this[w](t, e); + try { + const r = o.lstatSync(e.absolute); + if (this.keep || (this.newer && r.mtime > e.mtime)) return this[S](e); + if (this[h](e, r)) return this[g](null, e); + try { + return ( + r.isDirectory() + ? 'Directory' === e.type + ? e.mode && (4095 & r.mode) !== e.mode && o.chmodSync(e.absolute, e.mode) + : o.rmdirSync(e.absolute) + : ((e) => { + if ('win32' !== process.platform) return o.unlinkSync(e); + const t = e + '.DELETE.' + M.randomBytes(16).toString('hex'); + o.renameSync(e, t), o.unlinkSync(t); + })(e.absolute), + this[g](null, e) + ); + } catch (t) { + return this[w](t, e); + } + } catch (t) { + return this[g](null, e); + } + } + [f](e) { + const t = 4095 & e.mode || this.fmode, + r = (t) => { + try { + o.closeSync(n); + } catch (e) {} + t && this[w](t, e); + }; + let n; + try { + n = o.openSync(e.absolute, 'w', t); + } catch (e) { + return r(e); + } + const i = (this.transform && this.transform(e)) || e; + i !== e && (i.on('error', (t) => this[w](t, e)), e.pipe(i)), + i.on('data', (e) => { + try { + o.writeSync(n, e, 0, e.length); + } catch (e) { + r(e); + } + }), + i.on('end', (t) => { + let i = null; + if (e.mtime && !this.noMtime) { + const t = e.atime || new Date(), + r = e.mtime; + try { + o.futimesSync(n, t, r); + } catch (n) { + try { + o.utimesSync(e.absolute, t, r); + } catch (e) { + i = n; + } + } + } + if (this[k](e)) { + const t = this[x](e), + r = this[F](e); + try { + o.fchownSync(n, t, r); + } catch (n) { + try { + o.chownSync(e.absolute, t, r); + } catch (e) { + i = i || n; + } + } + } + r(i); + }); + } + [p](e) { + const t = 4095 & e.mode || this.dmode, + r = this[y](e.absolute, t); + if (r) return this[w](r, e); + if (e.mtime && !this.noMtime) + try { + o.utimesSync(e.absolute, e.atime || new Date(), e.mtime); + } catch (r) {} + if (this[k](e)) + try { + o.chownSync(e.absolute, this[x](e), this[F](e)); + } catch (r) {} + e.resume(); + } + [y](e, t) { + try { + return a.sync(e, { + uid: this.uid, + gid: this.gid, + processUid: this.processUid, + processGid: this.processGid, + umask: this.processUmask, + preserve: this.preservePaths, + unlink: this.unlink, + cache: this.dirCache, + cwd: this.cwd, + mode: t, + }); + } catch (e) { + return e; + } + } + [d](e, t, r) { + try { + o[r + 'Sync'](t, e.absolute), e.resume(); + } catch (t) { + return this[w](t, e); + } + } + }), + (e.exports = R); + }, + 68965: (e, t, r) => { + 'use strict'; + const n = r(59087), + i = r(84208), + o = + ((e.exports = (e, t, r) => { + const s = n(e); + if (!s.file) throw new TypeError('file is required'); + if (s.gzip) throw new TypeError('cannot append to compressed archives'); + if (!t || !Array.isArray(t) || !t.length) + throw new TypeError('no files or directories specified'); + return (t = Array.from(t)), o(s), i(s, t, r); + }), + (e) => { + const t = e.filter; + e.mtimeCache || (e.mtimeCache = new Map()), + (e.filter = t + ? (r, n) => t(r, n) && !(e.mtimeCache.get(r) > n.mtime) + : (t, r) => !(e.mtimeCache.get(t) > r.mtime)); + }); + }, + 7994: (e) => { + 'use strict'; + e.exports = (e) => + class extends e { + warn(e, t) { + if (this.strict) + if (t instanceof Error) this.emit('error', t); + else { + const r = new Error(e); + (r.data = t), this.emit('error', r); + } + else this.emit('warn', e, t); + } + }; + }, + 86895: (e) => { + 'use strict'; + const t = ['|', '<', '>', '?', ':'], + r = t.map((e) => String.fromCharCode(61440 + e.charCodeAt(0))), + n = new Map(t.map((e, t) => [e, r[t]])), + i = new Map(r.map((e, r) => [e, t[r]])); + e.exports = { + encode: (e) => t.reduce((e, t) => e.split(t).join(n.get(t)), e), + decode: (e) => r.reduce((e, t) => e.split(t).join(i.get(t)), e), + }; + }, + 27052: (e, t, r) => { + 'use strict'; + const n = r(15135), + i = r(44380), + o = r(76516), + s = r(46464), + A = (r(88658), r(35747)), + a = r(85622), + c = (r(6464), Symbol('process')), + u = Symbol('file'), + l = Symbol('directory'), + h = Symbol('symlink'), + g = Symbol('hardlink'), + f = Symbol('header'), + p = Symbol('read'), + d = Symbol('lstat'), + C = Symbol('onlstat'), + E = Symbol('onread'), + I = Symbol('onreadlink'), + m = Symbol('openfile'), + y = Symbol('onopenfile'), + w = Symbol('close'), + B = Symbol('mode'), + Q = r(7994), + v = r(86895), + D = r(11754), + b = Q( + class extends i { + constructor(e, t) { + if ((super((t = t || {})), 'string' != typeof e)) + throw new TypeError('path is required'); + if ( + ((this.path = e), + (this.portable = !!t.portable), + (this.myuid = process.getuid && process.getuid()), + (this.myuser = process.env.USER || ''), + (this.maxReadSize = t.maxReadSize || 16777216), + (this.linkCache = t.linkCache || new Map()), + (this.statCache = t.statCache || new Map()), + (this.preservePaths = !!t.preservePaths), + (this.cwd = t.cwd || process.cwd()), + (this.strict = !!t.strict), + (this.noPax = !!t.noPax), + (this.noMtime = !!t.noMtime), + (this.mtime = t.mtime || null), + 'function' == typeof t.onwarn && this.on('warn', t.onwarn), + !this.preservePaths && a.win32.isAbsolute(e)) + ) { + const t = a.win32.parse(e); + this.warn('stripping ' + t.root + ' from absolute path', e), + (this.path = e.substr(t.root.length)); + } + (this.win32 = !!t.win32 || 'win32' === process.platform), + this.win32 && + ((this.path = v.decode(this.path.replace(/\\/g, '/'))), + (e = e.replace(/\\/g, '/'))), + (this.absolute = t.absolute || a.resolve(this.cwd, e)), + '' === this.path && (this.path = './'), + this.statCache.has(this.absolute) + ? this[C](this.statCache.get(this.absolute)) + : this[d](); + } + [d]() { + A.lstat(this.absolute, (e, t) => { + if (e) return this.emit('error', e); + this[C](t); + }); + } + [C](e) { + this.statCache.set(this.absolute, e), + (this.stat = e), + e.isFile() || (e.size = 0), + (this.type = k(e)), + this.emit('stat', e), + this[c](); + } + [c]() { + switch (this.type) { + case 'File': + return this[u](); + case 'Directory': + return this[l](); + case 'SymbolicLink': + return this[h](); + default: + return this.end(); + } + } + [B](e) { + return D(e, 'Directory' === this.type); + } + [f]() { + 'Directory' === this.type && this.portable && (this.noMtime = !0), + (this.header = new s({ + path: this.path, + linkpath: this.linkpath, + mode: this[B](this.stat.mode), + uid: this.portable ? null : this.stat.uid, + gid: this.portable ? null : this.stat.gid, + size: this.stat.size, + mtime: this.noMtime ? null : this.mtime || this.stat.mtime, + type: this.type, + uname: this.portable ? null : this.stat.uid === this.myuid ? this.myuser : '', + atime: this.portable ? null : this.stat.atime, + ctime: this.portable ? null : this.stat.ctime, + })), + this.header.encode() && + !this.noPax && + this.write( + new o({ + atime: this.portable ? null : this.header.atime, + ctime: this.portable ? null : this.header.ctime, + gid: this.portable ? null : this.header.gid, + mtime: this.noMtime ? null : this.mtime || this.header.mtime, + path: this.path, + linkpath: this.linkpath, + size: this.header.size, + uid: this.portable ? null : this.header.uid, + uname: this.portable ? null : this.header.uname, + dev: this.portable ? null : this.stat.dev, + ino: this.portable ? null : this.stat.ino, + nlink: this.portable ? null : this.stat.nlink, + }).encode() + ), + this.write(this.header.block); + } + [l]() { + '/' !== this.path.substr(-1) && (this.path += '/'), + (this.stat.size = 0), + this[f](), + this.end(); + } + [h]() { + A.readlink(this.absolute, (e, t) => { + if (e) return this.emit('error', e); + this[I](t); + }); + } + [I](e) { + (this.linkpath = e), this[f](), this.end(); + } + [g](e) { + (this.type = 'Link'), + (this.linkpath = a.relative(this.cwd, e)), + (this.stat.size = 0), + this[f](), + this.end(); + } + [u]() { + if (this.stat.nlink > 1) { + const e = this.stat.dev + ':' + this.stat.ino; + if (this.linkCache.has(e)) { + const t = this.linkCache.get(e); + if (0 === t.indexOf(this.cwd)) return this[g](t); + } + this.linkCache.set(e, this.absolute); + } + if ((this[f](), 0 === this.stat.size)) return this.end(); + this[m](); + } + [m]() { + A.open(this.absolute, 'r', (e, t) => { + if (e) return this.emit('error', e); + this[y](t); + }); + } + [y](e) { + const t = 512 * Math.ceil(this.stat.size / 512), + r = Math.min(t, this.maxReadSize), + i = n.allocUnsafe(r); + this[p](e, i, 0, i.length, 0, this.stat.size, t); + } + [p](e, t, r, n, i, o, s) { + A.read(e, t, r, n, i, (A, a) => { + if (A) return this[w](e, (e) => this.emit('error', A)); + this[E](e, t, r, n, i, o, s, a); + }); + } + [w](e, t) { + A.close(e, t); + } + [E](e, t, r, i, o, s, A, a) { + if (a <= 0 && s > 0) { + const t = new Error('encountered unexpected EOF'); + return ( + (t.path = this.absolute), + (t.syscall = 'read'), + (t.code = 'EOF'), + this[w](e, (e) => e), + this.emit('error', t) + ); + } + if (a > s) { + const t = new Error('did not encounter expected EOF'); + return ( + (t.path = this.absolute), + (t.syscall = 'read'), + (t.code = 'EOF'), + this[w](e, (e) => e), + this.emit('error', t) + ); + } + if (a === s) for (let e = a; e < i && a < A; e++) (t[e + r] = 0), a++, s++; + const c = 0 === r && a === t.length ? t : t.slice(r, r + a); + if (((s -= a), (A -= a), (o += a), (r += a), this.write(c), !s)) + return A && this.write(n.alloc(A)), this.end(), void this[w](e, (e) => e); + r >= i && ((t = n.allocUnsafe(i)), (r = 0)), + (i = t.length - r), + this[p](e, t, r, i, o, s, A); + } + } + ); + const S = Q( + class extends i { + constructor(e, t) { + if ( + (super((t = t || {})), + (this.preservePaths = !!t.preservePaths), + (this.portable = !!t.portable), + (this.strict = !!t.strict), + (this.noPax = !!t.noPax), + (this.noMtime = !!t.noMtime), + (this.readEntry = e), + (this.type = e.type), + 'Directory' === this.type && this.portable && (this.noMtime = !0), + (this.path = e.path), + (this.mode = this[B](e.mode)), + (this.uid = this.portable ? null : e.uid), + (this.gid = this.portable ? null : e.gid), + (this.uname = this.portable ? null : e.uname), + (this.gname = this.portable ? null : e.gname), + (this.size = e.size), + (this.mtime = this.noMtime ? null : t.mtime || e.mtime), + (this.atime = this.portable ? null : e.atime), + (this.ctime = this.portable ? null : e.ctime), + (this.linkpath = e.linkpath), + 'function' == typeof t.onwarn && this.on('warn', t.onwarn), + a.isAbsolute(this.path) && !this.preservePaths) + ) { + const e = a.parse(this.path); + this.warn('stripping ' + e.root + ' from absolute path', this.path), + (this.path = this.path.substr(e.root.length)); + } + (this.remain = e.size), + (this.blockRemain = e.startBlockSize), + (this.header = new s({ + path: this.path, + linkpath: this.linkpath, + mode: this.mode, + uid: this.portable ? null : this.uid, + gid: this.portable ? null : this.gid, + size: this.size, + mtime: this.noMtime ? null : this.mtime, + type: this.type, + uname: this.portable ? null : this.uname, + atime: this.portable ? null : this.atime, + ctime: this.portable ? null : this.ctime, + })), + this.header.encode() && + !this.noPax && + super.write( + new o({ + atime: this.portable ? null : this.atime, + ctime: this.portable ? null : this.ctime, + gid: this.portable ? null : this.gid, + mtime: this.noMtime ? null : this.mtime, + path: this.path, + linkpath: this.linkpath, + size: this.size, + uid: this.portable ? null : this.uid, + uname: this.portable ? null : this.uname, + dev: this.portable ? null : this.readEntry.dev, + ino: this.portable ? null : this.readEntry.ino, + nlink: this.portable ? null : this.readEntry.nlink, + }).encode() + ), + super.write(this.header.block), + e.pipe(this); + } + [B](e) { + return D(e, 'Directory' === this.type); + } + write(e) { + const t = e.length; + if (t > this.blockRemain) + throw new Error('writing more to entry than is appropriate'); + return (this.blockRemain -= t), super.write(e); + } + end() { + return this.blockRemain && this.write(n.alloc(this.blockRemain)), super.end(); + } + } + ); + (b.Sync = class extends b { + constructor(e, t) { + super(e, t); + } + [d]() { + this[C](A.lstatSync(this.absolute)); + } + [h]() { + this[I](A.readlinkSync(this.absolute)); + } + [m]() { + this[y](A.openSync(this.absolute, 'r')); + } + [p](e, t, r, n, i, o, s) { + let a = !0; + try { + const c = A.readSync(e, t, r, n, i); + this[E](e, t, r, n, i, o, s, c), (a = !1); + } finally { + if (a) + try { + this[w](e); + } catch (e) {} + } + } + [w](e) { + A.closeSync(e); + } + }), + (b.Tar = S); + const k = (e) => + e.isFile() + ? 'File' + : e.isDirectory() + ? 'Directory' + : e.isSymbolicLink() + ? 'SymbolicLink' + : 'Unsupported'; + e.exports = b; + }, + 75799: (e, t, r) => { + var n = r(31669), + i = r(73975), + o = r(77686), + s = r(86897).Writable, + A = r(86897).PassThrough, + a = function () {}, + c = function (e) { + return (e &= 511) && 512 - e; + }, + u = function (e, t) { + (this._parent = e), (this.offset = t), A.call(this); + }; + n.inherits(u, A), + (u.prototype.destroy = function (e) { + this._parent.destroy(e); + }); + var l = function (e) { + if (!(this instanceof l)) return new l(e); + s.call(this, e), + (e = e || {}), + (this._offset = 0), + (this._buffer = i()), + (this._missing = 0), + (this._partial = !1), + (this._onparse = a), + (this._header = null), + (this._stream = null), + (this._overflow = null), + (this._cb = null), + (this._locked = !1), + (this._destroyed = !1), + (this._pax = null), + (this._paxGlobal = null), + (this._gnuLongPath = null), + (this._gnuLongLinkPath = null); + var t = this, + r = t._buffer, + n = function () { + t._continue(); + }, + A = function (e) { + if (((t._locked = !1), e)) return t.destroy(e); + t._stream || n(); + }, + h = function () { + t._stream = null; + var e = c(t._header.size); + e ? t._parse(e, g) : t._parse(512, E), t._locked || n(); + }, + g = function () { + t._buffer.consume(c(t._header.size)), t._parse(512, E), n(); + }, + f = function () { + var e = t._header.size; + (t._paxGlobal = o.decodePax(r.slice(0, e))), r.consume(e), h(); + }, + p = function () { + var e = t._header.size; + (t._pax = o.decodePax(r.slice(0, e))), + t._paxGlobal && (t._pax = Object.assign({}, t._paxGlobal, t._pax)), + r.consume(e), + h(); + }, + d = function () { + var n = t._header.size; + (this._gnuLongPath = o.decodeLongPath(r.slice(0, n), e.filenameEncoding)), + r.consume(n), + h(); + }, + C = function () { + var n = t._header.size; + (this._gnuLongLinkPath = o.decodeLongPath(r.slice(0, n), e.filenameEncoding)), + r.consume(n), + h(); + }, + E = function () { + var i, + s = t._offset; + try { + i = t._header = o.decode(r.slice(0, 512), e.filenameEncoding); + } catch (e) { + t.emit('error', e); + } + return ( + r.consume(512), + i + ? 'gnu-long-path' === i.type + ? (t._parse(i.size, d), void n()) + : 'gnu-long-link-path' === i.type + ? (t._parse(i.size, C), void n()) + : 'pax-global-header' === i.type + ? (t._parse(i.size, f), void n()) + : 'pax-header' === i.type + ? (t._parse(i.size, p), void n()) + : (t._gnuLongPath && ((i.name = t._gnuLongPath), (t._gnuLongPath = null)), + t._gnuLongLinkPath && + ((i.linkname = t._gnuLongLinkPath), (t._gnuLongLinkPath = null)), + t._pax && + ((t._header = i = (function (e, t) { + return ( + t.path && (e.name = t.path), + t.linkpath && (e.linkname = t.linkpath), + t.size && (e.size = parseInt(t.size, 10)), + (e.pax = t), + e + ); + })(i, t._pax)), + (t._pax = null)), + (t._locked = !0), + i.size && 'directory' !== i.type + ? ((t._stream = new u(t, s)), + t.emit('entry', i, t._stream, A), + t._parse(i.size, h), + void n()) + : (t._parse(512, E), + void t.emit( + 'entry', + i, + (function (e, t) { + var r = new u(e, t); + return r.end(), r; + })(t, s), + A + ))) + : (t._parse(512, E), void n()) + ); + }; + (this._onheader = E), this._parse(512, E); + }; + n.inherits(l, s), + (l.prototype.destroy = function (e) { + this._destroyed || + ((this._destroyed = !0), + e && this.emit('error', e), + this.emit('close'), + this._stream && this._stream.emit('close')); + }), + (l.prototype._parse = function (e, t) { + this._destroyed || + ((this._offset += e), + (this._missing = e), + t === this._onheader && (this._partial = !1), + (this._onparse = t)); + }), + (l.prototype._continue = function () { + if (!this._destroyed) { + var e = this._cb; + (this._cb = a), this._overflow ? this._write(this._overflow, void 0, e) : e(); + } + }), + (l.prototype._write = function (e, t, r) { + if (!this._destroyed) { + var n = this._stream, + i = this._buffer, + o = this._missing; + if ((e.length && (this._partial = !0), e.length < o)) + return ( + (this._missing -= e.length), + (this._overflow = null), + n ? n.write(e, r) : (i.append(e), r()) + ); + (this._cb = r), (this._missing = 0); + var s = null; + e.length > o && ((s = e.slice(o)), (e = e.slice(0, o))), + n ? n.end(e) : i.append(e), + (this._overflow = s), + this._onparse(); + } + }), + (l.prototype._final = function (e) { + if (this._partial) return this.destroy(new Error('Unexpected end of data')); + e(); + }), + (e.exports = l); + }, + 77686: (e, t) => { + var r = Buffer.alloc, + n = '0'.charCodeAt(0), + i = parseInt('7777', 8), + o = function (e, t, r, n) { + for (; r < n; r++) if (e[r] === t) return r; + return n; + }, + s = function (e) { + for (var t = 256, r = 0; r < 148; r++) t += e[r]; + for (var n = 156; n < 512; n++) t += e[n]; + return t; + }, + A = function (e, t) { + return (e = e.toString(8)).length > t + ? '7777777777777777777'.slice(0, t) + ' ' + : '0000000000000000000'.slice(0, t - e.length) + e + ' '; + }; + var a = function (e, t, r) { + if (128 & (e = e.slice(t, t + r))[(t = 0)]) + return (function (e) { + var t; + if (128 === e[0]) t = !0; + else { + if (255 !== e[0]) return null; + t = !1; + } + for (var r = !1, n = [], i = e.length - 1; i > 0; i--) { + var o = e[i]; + t + ? n.push(o) + : r && 0 === o + ? n.push(0) + : r + ? ((r = !1), n.push(256 - o)) + : n.push(255 - o); + } + var s = 0, + A = n.length; + for (i = 0; i < A; i++) s += n[i] * Math.pow(256, i); + return t ? s : -1 * s; + })(e); + for (; t < e.length && 32 === e[t]; ) t++; + for ( + var n = + ((i = o(e, 32, t, e.length)), + (s = e.length), + (A = e.length), + 'number' != typeof i ? A : (i = ~~i) >= s ? s : i >= 0 || (i += s) >= 0 ? i : 0); + t < n && 0 === e[t]; + + ) + t++; + return n === t ? 0 : parseInt(e.slice(t, n).toString(), 8); + var i, s, A; + }, + c = function (e, t, r, n) { + return e.slice(t, o(e, 0, t, t + r)).toString(n); + }, + u = function (e) { + var t = Buffer.byteLength(e), + r = Math.floor(Math.log(t) / Math.log(10)) + 1; + return t + r >= Math.pow(10, r) && r++, t + r + e; + }; + (t.decodeLongPath = function (e, t) { + return c(e, 0, e.length, t); + }), + (t.encodePax = function (e) { + var t = ''; + e.name && (t += u(' path=' + e.name + '\n')), + e.linkname && (t += u(' linkpath=' + e.linkname + '\n')); + var r = e.pax; + if (r) for (var n in r) t += u(' ' + n + '=' + r[n] + '\n'); + return Buffer.from(t); + }), + (t.decodePax = function (e) { + for (var t = {}; e.length; ) { + for (var r = 0; r < e.length && 32 !== e[r]; ) r++; + var n = parseInt(e.slice(0, r).toString(), 10); + if (!n) return t; + var i = e.slice(r + 1, n - 1).toString(), + o = i.indexOf('='); + if (-1 === o) return t; + (t[i.slice(0, o)] = i.slice(o + 1)), (e = e.slice(n)); + } + return t; + }), + (t.encode = function (e) { + var t = r(512), + o = e.name, + a = ''; + if ( + (5 === e.typeflag && '/' !== o[o.length - 1] && (o += '/'), + Buffer.byteLength(o) !== o.length) + ) + return null; + for (; Buffer.byteLength(o) > 100; ) { + var c = o.indexOf('/'); + if (-1 === c) return null; + (a += a ? '/' + o.slice(0, c) : o.slice(0, c)), (o = o.slice(c + 1)); + } + return Buffer.byteLength(o) > 100 || + Buffer.byteLength(a) > 155 || + (e.linkname && Buffer.byteLength(e.linkname) > 100) + ? null + : (t.write(o), + t.write(A(e.mode & i, 6), 100), + t.write(A(e.uid, 6), 108), + t.write(A(e.gid, 6), 116), + t.write(A(e.size, 11), 124), + t.write(A((e.mtime.getTime() / 1e3) | 0, 11), 136), + (t[156] = + n + + (function (e) { + switch (e) { + case 'file': + return 0; + case 'link': + return 1; + case 'symlink': + return 2; + case 'character-device': + return 3; + case 'block-device': + return 4; + case 'directory': + return 5; + case 'fifo': + return 6; + case 'contiguous-file': + return 7; + case 'pax-header': + return 72; + } + return 0; + })(e.type)), + e.linkname && t.write(e.linkname, 157), + t.write('ustar\x0000', 257), + e.uname && t.write(e.uname, 265), + e.gname && t.write(e.gname, 297), + t.write(A(e.devmajor || 0, 6), 329), + t.write(A(e.devminor || 0, 6), 337), + a && t.write(a, 345), + t.write(A(s(t), 6), 148), + t); + }), + (t.decode = function (e, t) { + var r = 0 === e[156] ? 0 : e[156] - n, + i = c(e, 0, 100, t), + o = a(e, 100, 8), + A = a(e, 108, 8), + u = a(e, 116, 8), + l = a(e, 124, 12), + h = a(e, 136, 12), + g = (function (e) { + switch (e) { + case 0: + return 'file'; + case 1: + return 'link'; + case 2: + return 'symlink'; + case 3: + return 'character-device'; + case 4: + return 'block-device'; + case 5: + return 'directory'; + case 6: + return 'fifo'; + case 7: + return 'contiguous-file'; + case 72: + return 'pax-header'; + case 55: + return 'pax-global-header'; + case 27: + return 'gnu-long-link-path'; + case 28: + case 30: + return 'gnu-long-path'; + } + return null; + })(r), + f = 0 === e[157] ? null : c(e, 157, 100, t), + p = c(e, 265, 32), + d = c(e, 297, 32), + C = a(e, 329, 8), + E = a(e, 337, 8); + e[345] && (i = c(e, 345, 155, t) + '/' + i), + 0 === r && i && '/' === i[i.length - 1] && (r = 5); + var I = s(e); + if (256 === I) return null; + if (I !== a(e, 148, 8)) + throw new Error( + 'Invalid tar header. Maybe the tar is corrupted or it needs to be gunzipped?' + ); + return { + name: i, + mode: o, + uid: A, + gid: u, + size: l, + mtime: new Date(1e3 * h), + type: g, + linkname: f, + uname: p, + gname: d, + devmajor: C, + devminor: E, + }; + }); + }, + 59938: (e, t, r) => { + r(75799), (t.P = r(72203)); + }, + 72203: (e, t, r) => { + var n = r(13302), + i = r(17067), + o = r(85870), + s = Buffer.alloc, + A = r(86897).Readable, + a = r(86897).Writable, + c = r(24304).StringDecoder, + u = r(77686), + l = parseInt('755', 8), + h = parseInt('644', 8), + g = s(1024), + f = function () {}, + p = function (e, t) { + (t &= 511) && e.push(g.slice(0, 512 - t)); + }; + var d = function (e) { + a.call(this), (this.written = 0), (this._to = e), (this._destroyed = !1); + }; + o(d, a), + (d.prototype._write = function (e, t, r) { + if (((this.written += e.length), this._to.push(e))) return r(); + this._to._drain = r; + }), + (d.prototype.destroy = function () { + this._destroyed || ((this._destroyed = !0), this.emit('close')); + }); + var C = function () { + a.call(this), + (this.linkname = ''), + (this._decoder = new c('utf-8')), + (this._destroyed = !1); + }; + o(C, a), + (C.prototype._write = function (e, t, r) { + (this.linkname += this._decoder.write(e)), r(); + }), + (C.prototype.destroy = function () { + this._destroyed || ((this._destroyed = !0), this.emit('close')); + }); + var E = function () { + a.call(this), (this._destroyed = !1); + }; + o(E, a), + (E.prototype._write = function (e, t, r) { + r(new Error('No body allowed for this entry')); + }), + (E.prototype.destroy = function () { + this._destroyed || ((this._destroyed = !0), this.emit('close')); + }); + var I = function (e) { + if (!(this instanceof I)) return new I(e); + A.call(this, e), + (this._drain = f), + (this._finalized = !1), + (this._finalizing = !1), + (this._destroyed = !1), + (this._stream = null); + }; + o(I, A), + (I.prototype.entry = function (e, t, r) { + if (this._stream) throw new Error('already piping an entry'); + if (!this._finalized && !this._destroyed) { + 'function' == typeof t && ((r = t), (t = null)), r || (r = f); + var o = this; + if ( + ((e.size && 'symlink' !== e.type) || (e.size = 0), + e.type || + (e.type = (function (e) { + switch (e & n.S_IFMT) { + case n.S_IFBLK: + return 'block-device'; + case n.S_IFCHR: + return 'character-device'; + case n.S_IFDIR: + return 'directory'; + case n.S_IFIFO: + return 'fifo'; + case n.S_IFLNK: + return 'symlink'; + } + return 'file'; + })(e.mode)), + e.mode || (e.mode = 'directory' === e.type ? l : h), + e.uid || (e.uid = 0), + e.gid || (e.gid = 0), + e.mtime || (e.mtime = new Date()), + 'string' == typeof t && (t = Buffer.from(t)), + Buffer.isBuffer(t)) + ) + return ( + (e.size = t.length), + this._encode(e), + this.push(t), + p(o, e.size), + process.nextTick(r), + new E() + ); + if ('symlink' === e.type && !e.linkname) { + var s = new C(); + return ( + i(s, function (t) { + if (t) return o.destroy(), r(t); + (e.linkname = s.linkname), o._encode(e), r(); + }), + s + ); + } + if ((this._encode(e), 'file' !== e.type && 'contiguous-file' !== e.type)) + return process.nextTick(r), new E(); + var A = new d(this); + return ( + (this._stream = A), + i(A, function (t) { + return ( + (o._stream = null), + t + ? (o.destroy(), r(t)) + : A.written !== e.size + ? (o.destroy(), r(new Error('size mismatch'))) + : (p(o, e.size), o._finalizing && o.finalize(), void r()) + ); + }), + A + ); + } + }), + (I.prototype.finalize = function () { + this._stream + ? (this._finalizing = !0) + : this._finalized || ((this._finalized = !0), this.push(g), this.push(null)); + }), + (I.prototype.destroy = function (e) { + this._destroyed || + ((this._destroyed = !0), + e && this.emit('error', e), + this.emit('close'), + this._stream && this._stream.destroy && this._stream.destroy()); + }), + (I.prototype._encode = function (e) { + if (!e.pax) { + var t = u.encode(e); + if (t) return void this.push(t); + } + this._encodePax(e); + }), + (I.prototype._encodePax = function (e) { + var t = u.encodePax({ name: e.name, linkname: e.linkname, pax: e.pax }), + r = { + name: 'PaxHeader', + mode: e.mode, + uid: e.uid, + gid: e.gid, + size: t.length, + mtime: e.mtime, + type: 'pax-header', + linkname: e.linkname && 'PaxHeader', + uname: e.uname, + gname: e.gname, + devmajor: e.devmajor, + devminor: e.devminor, + }; + this.push(u.encode(r)), + this.push(t), + p(this, t.length), + (r.size = e.size), + (r.type = e.type), + this.push(u.encode(r)); + }), + (I.prototype._read = function (e) { + var t = this._drain; + (this._drain = f), t(); + }), + (e.exports = I); + }, + 94864: (e, t, r) => { + var n = r(92413); + function i(e, t, r) { + (e = + e || + function (e) { + this.queue(e); + }), + (t = + t || + function () { + this.queue(null); + }); + var i = !1, + o = !1, + s = [], + A = !1, + a = new n(); + function c() { + for (; s.length && !a.paused; ) { + var e = s.shift(); + if (null === e) return a.emit('end'); + a.emit('data', e); + } + } + function u() { + (a.writable = !1), t.call(a), !a.readable && a.autoDestroy && a.destroy(); + } + return ( + (a.readable = a.writable = !0), + (a.paused = !1), + (a.autoDestroy = !(r && !1 === r.autoDestroy)), + (a.write = function (t) { + return e.call(this, t), !a.paused; + }), + (a.queue = a.push = function (e) { + return A || (null === e && (A = !0), s.push(e), c()), a; + }), + a.on('end', function () { + (a.readable = !1), + !a.writable && + a.autoDestroy && + process.nextTick(function () { + a.destroy(); + }); + }), + (a.end = function (e) { + if (!i) return (i = !0), arguments.length && a.write(e), u(), a; + }), + (a.destroy = function () { + if (!o) + return ( + (o = !0), + (i = !0), + (s.length = 0), + (a.writable = a.readable = !1), + a.emit('close'), + a + ); + }), + (a.pause = function () { + if (!a.paused) return (a.paused = !0), a; + }), + (a.resume = function () { + return ( + a.paused && ((a.paused = !1), a.emit('resume')), c(), a.paused || a.emit('drain'), a + ); + }), + a + ); + } + (e.exports = i), (i.through = i); + }, + 67783: (e, t, r) => { + /*! + * Tmp + * + * Copyright (c) 2011-2017 KARASZI Istvan + * + * MIT Licensed + */ + const n = r(35747), + i = r(85622), + o = r(76417), + s = r(82941), + A = process.binding('constants'), + a = s(), + c = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz', + u = /XXXXXX/, + l = (A.O_CREAT || A.fs.O_CREAT) | (A.O_EXCL || A.fs.O_EXCL) | (A.O_RDWR || A.fs.O_RDWR), + h = A.EBADF || A.os.errno.EBADF, + g = A.ENOENT || A.os.errno.ENOENT, + f = []; + var p = !1, + d = !1; + function C(e) { + var t = [], + r = null; + try { + r = o.randomBytes(e); + } catch (t) { + r = o.pseudoRandomBytes(e); + } + for (var n = 0; n < e; n++) t.push(c[r[n] % c.length]); + return t.join(''); + } + function E(e) { + return void 0 === e; + } + function I(e, t) { + return 'function' == typeof e ? [t || {}, e] : E(e) ? [{}, t] : [e, t]; + } + function m(e) { + if (e.name) return i.join(e.dir || a, e.name); + if (e.template) return e.template.replace(u, C(6)); + const t = [e.prefix || 'tmp-', process.pid, C(12), e.postfix || ''].join(''); + return i.join(e.dir || a, t); + } + function y(e, t) { + var r = I(e, t), + i = r[0], + o = r[1], + s = i.name ? 1 : i.tries || 3; + return isNaN(s) || s < 0 + ? o(new Error('Invalid tries')) + : i.template && !i.template.match(u) + ? o(new Error('Invalid template provided')) + : void (function e() { + const t = m(i); + n.stat(t, function (r) { + if (!r) + return s-- > 0 + ? e() + : o(new Error('Could not get a unique tmp filename, max tries reached ' + t)); + o(null, t); + }); + })(); + } + function w(e) { + var t = I(e)[0], + r = t.name ? 1 : t.tries || 3; + if (isNaN(r) || r < 0) throw new Error('Invalid tries'); + if (t.template && !t.template.match(u)) throw new Error('Invalid template provided'); + do { + const e = m(t); + try { + n.statSync(e); + } catch (t) { + return e; + } + } while (r-- > 0); + throw new Error('Could not get a unique tmp filename, max tries reached'); + } + function B(e) { + const t = [e]; + do { + for (var r = t.pop(), o = !1, s = n.readdirSync(r), A = 0, a = s.length; A < a; A++) { + var c = i.join(r, s[A]); + n.lstatSync(c).isDirectory() + ? (o || ((o = !0), t.push(r)), t.push(c)) + : n.unlinkSync(c); + } + o || n.rmdirSync(r); + } while (0 !== t.length); + } + function Q(e, t, r) { + const i = D( + function (e) { + try { + 0 <= e[0] && n.closeSync(e[0]); + } catch (e) { + if (!((t = e), k(t, -h, 'EBADF') || S(e))) throw e; + } + var t; + try { + n.unlinkSync(e[1]); + } catch (e) { + if (!S(e)) throw e; + } + }, + [t, e] + ); + return r.keep || f.unshift(i), i; + } + function v(e, t) { + const r = D(t.unsafeCleanup ? B : n.rmdirSync.bind(n), e); + return t.keep || f.unshift(r), r; + } + function D(e, t) { + var r = !1; + return function n(i) { + if (!r) { + const i = f.indexOf(n); + i >= 0 && f.splice(i, 1), (r = !0), e(t); + } + i && i(null); + }; + } + function b() { + if (!d || p) + for (; f.length; ) + try { + f[0].call(null); + } catch (e) {} + } + function S(e) { + return k(e, -g, 'ENOENT'); + } + function k(e, t, r) { + return e.code == t || e.code == r; + } + const x = process.versions.node.split('.').map(function (e) { + return parseInt(e, 10); + }); + 0 === x[0] && + (x[1] < 9 || (9 === x[1] && x[2] < 5)) && + process.addListener('uncaughtException', function (e) { + throw ((d = !0), b(), e); + }), + process.addListener('exit', function (e) { + e && (d = !0), b(); + }), + (e.exports.tmpdir = a), + (e.exports.dir = function (e, t) { + var r = I(e, t), + i = r[0], + o = r[1]; + y(i, function (e, t) { + if (e) return o(e); + n.mkdir(t, i.mode || 448, function (e) { + if (e) return o(e); + o(null, t, v(t, i)); + }); + }); + }), + (e.exports.dirSync = function (e) { + var t = I(e)[0]; + const r = w(t); + return n.mkdirSync(r, t.mode || 448), { name: r, removeCallback: v(r, t) }; + }), + (e.exports.file = function (e, t) { + var r = I(e, t), + i = r[0], + o = r[1]; + (i.postfix = E(i.postfix) ? '.tmp' : i.postfix), + y(i, function (e, t) { + if (e) return o(e); + n.open(t, l, i.mode || 384, function (e, r) { + return e + ? o(e) + : i.discardDescriptor + ? n.close(r, function (e) { + if (e) { + try { + n.unlinkSync(t); + } catch (t) { + S(t) || (e = t); + } + return o(e); + } + o(null, t, void 0, Q(t, -1, i)); + }) + : i.detachDescriptor + ? o(null, t, r, Q(t, -1, i)) + : void o(null, t, r, Q(t, r, i)); + }); + }); + }), + (e.exports.fileSync = function (e) { + var t = I(e)[0]; + t.postfix = t.postfix || '.tmp'; + const r = t.discardDescriptor || t.detachDescriptor, + i = w(t); + var o = n.openSync(i, l, t.mode || 384); + return ( + t.discardDescriptor && (n.closeSync(o), (o = void 0)), + { name: i, fd: o, removeCallback: Q(i, r ? -1 : o, t) } + ); + }), + (e.exports.tmpName = y), + (e.exports.tmpNameSync = w), + (e.exports.setGracefulCleanup = function () { + p = !0; + }); + }, + 84615: (e, t, r) => { + 'use strict'; + /*! + * to-regex-range + * + * Copyright (c) 2015-present, Jon Schlinkert. + * Released under the MIT License. + */ const n = r(59235), + i = (e, t, r) => { + if (!1 === n(e)) + throw new TypeError('toRegexRange: expected the first argument to be a number'); + if (void 0 === t || e === t) return String(e); + if (!1 === n(t)) + throw new TypeError('toRegexRange: expected the second argument to be a number.'); + let o = { relaxZeros: !0, ...r }; + 'boolean' == typeof o.strictZeros && (o.relaxZeros = !1 === o.strictZeros); + let a = + e + + ':' + + t + + '=' + + String(o.relaxZeros) + + String(o.shorthand) + + String(o.capture) + + String(o.wrap); + if (i.cache.hasOwnProperty(a)) return i.cache[a].result; + let c = Math.min(e, t), + u = Math.max(e, t); + if (1 === Math.abs(c - u)) { + let r = e + '|' + t; + return o.capture ? `(${r})` : !1 === o.wrap ? r : `(?:${r})`; + } + let l = f(e) || f(t), + h = { min: e, max: t, a: c, b: u }, + g = [], + p = []; + if ((l && ((h.isPadded = l), (h.maxLen = String(h.max).length)), c < 0)) { + (p = s(u < 0 ? Math.abs(u) : 1, Math.abs(c), h, o)), (c = h.a = 0); + } + return ( + u >= 0 && (g = s(c, u, h, o)), + (h.negatives = p), + (h.positives = g), + (h.result = (function (e, t, r) { + let n = A(e, t, '-', !1, r) || [], + i = A(t, e, '', !1, r) || [], + o = A(e, t, '-?', !0, r) || []; + return n.concat(o).concat(i).join('|'); + })(p, g, o)), + !0 === o.capture + ? (h.result = `(${h.result})`) + : !1 !== o.wrap && g.length + p.length > 1 && (h.result = `(?:${h.result})`), + (i.cache[a] = h), + h.result + ); + }; + function o(e, t, r) { + if (e === t) return { pattern: e, count: [], digits: 0 }; + let n = (function (e, t) { + let r = []; + for (let n = 0; n < e.length; n++) r.push([e[n], t[n]]); + return r; + })(e, t), + i = n.length, + o = '', + s = 0; + for (let e = 0; e < i; e++) { + let [t, i] = n[e]; + t === i ? (o += t) : '0' !== t || '9' !== i ? (o += g(t, i, r)) : s++; + } + return ( + s && (o += !0 === r.shorthand ? '\\d' : '[0-9]'), { pattern: o, count: [s], digits: i } + ); + } + function s(e, t, r, n) { + let i, + s = (function (e, t) { + let r = 1, + n = 1, + i = u(e, r), + o = new Set([t]); + for (; e <= i && i <= t; ) o.add(i), (r += 1), (i = u(e, r)); + for (i = l(t + 1, n) - 1; e < i && i <= t; ) + o.add(i), (n += 1), (i = l(t + 1, n) - 1); + return (o = [...o]), o.sort(a), o; + })(e, t), + A = [], + c = e; + for (let e = 0; e < s.length; e++) { + let t = s[e], + a = o(String(c), String(t), n), + u = ''; + r.isPadded || !i || i.pattern !== a.pattern + ? (r.isPadded && (u = p(t, r, n)), + (a.string = u + a.pattern + h(a.count)), + A.push(a), + (c = t + 1), + (i = a)) + : (i.count.length > 1 && i.count.pop(), + i.count.push(a.count[0]), + (i.string = i.pattern + h(i.count)), + (c = t + 1)); + } + return A; + } + function A(e, t, r, n, i) { + let o = []; + for (let i of e) { + let { string: e } = i; + n || c(t, 'string', e) || o.push(r + e), n && c(t, 'string', e) && o.push(r + e); + } + return o; + } + function a(e, t) { + return e > t ? 1 : t > e ? -1 : 0; + } + function c(e, t, r) { + return e.some((e) => e[t] === r); + } + function u(e, t) { + return Number(String(e).slice(0, -t) + '9'.repeat(t)); + } + function l(e, t) { + return e - (e % Math.pow(10, t)); + } + function h(e) { + let [t = 0, r = ''] = e; + return r || t > 1 ? `{${t + (r ? ',' + r : '')}}` : ''; + } + function g(e, t, r) { + return `[${e}${t - e == 1 ? '' : '-'}${t}]`; + } + function f(e) { + return /^-?(0+)\d/.test(e); + } + function p(e, t, r) { + if (!t.isPadded) return e; + let n = Math.abs(t.maxLen - String(e).length), + i = !1 !== r.relaxZeros; + switch (n) { + case 0: + return ''; + case 1: + return i ? '0?' : '0'; + case 2: + return i ? '0{0,2}' : '00'; + default: + return i ? `0{0,${n}}` : `0{${n}}`; + } + } + (i.cache = {}), (i.clearCache = () => (i.cache = {})), (e.exports = i); + }, + 75158: (e) => { + function t(e, t) { + var r = e.length, + n = new Array(r), + i = {}, + o = r, + s = (function (e) { + for (var t = new Map(), r = 0, n = e.length; r < n; r++) { + var i = e[r]; + t.has(i[0]) || t.set(i[0], new Set()), + t.has(i[1]) || t.set(i[1], new Set()), + t.get(i[0]).add(i[1]); + } + return t; + })(t), + A = (function (e) { + for (var t = new Map(), r = 0, n = e.length; r < n; r++) t.set(e[r], r); + return t; + })(e); + for ( + t.forEach(function (e) { + if (!A.has(e[0]) || !A.has(e[1])) + throw new Error('Unknown node. There is an unknown node in the supplied edges.'); + }); + o--; + + ) + i[o] || a(e[o], o, new Set()); + return n; + function a(e, t, o) { + if (o.has(e)) { + var c; + try { + c = ', node was:' + JSON.stringify(e); + } catch (e) { + c = ''; + } + throw new Error('Cyclic dependency' + c); + } + if (!A.has(e)) + throw new Error( + 'Found unknown node. Make sure to provided all involved nodes. Unknown node: ' + + JSON.stringify(e) + ); + if (!i[t]) { + i[t] = !0; + var u = s.get(e) || new Set(); + if ((t = (u = Array.from(u)).length)) { + o.add(e); + do { + var l = u[--t]; + a(l, A.get(l), o); + } while (t); + o.delete(e); + } + n[--r] = e; + } + } + } + (e.exports = function (e) { + return t( + (function (e) { + for (var t = new Set(), r = 0, n = e.length; r < n; r++) { + var i = e[r]; + t.add(i[0]), t.add(i[1]); + } + return Array.from(t); + })(e), + e + ); + }), + (e.exports.array = t); + }, + 94682: function (e) { + e.exports = (function () { + function e(t, r, n, i, o, s, A) { + var a, + c, + u = '', + l = 0, + h = i.slice(0); + if ( + (h.push([r, n]) && + i.length > 0 && + (i.forEach(function (e, t) { + t > 0 && (u += (e[1] ? ' ' : '│') + ' '), c || e[0] !== r || (c = !0); + }), + (u += + (function (e, t) { + var r = t ? '└' : '├'; + return (r += e ? '─ ' : '──┐'); + })(t, n) + t), + o && ('object' != typeof r || r instanceof Date) && (u += ': ' + r), + c && (u += ' (circular ref.)'), + A(u)), + !c && 'object' == typeof r) + ) { + var g = (function (e, t) { + var r = []; + for (var n in e) + e.hasOwnProperty(n) && ((t && 'function' == typeof e[n]) || r.push(n)); + return r; + })(r, s); + g.forEach(function (t) { + (a = ++l === g.length), e(t, r[t], a, h, o, s, A); + }); + } + } + var t = { + asLines: function (t, r, n, i) { + e('.', t, !1, [], r, 'function' != typeof n && n, i || n); + }, + asTree: function (t, r, n) { + var i = ''; + return ( + e('.', t, !1, [], r, n, function (e) { + i += e + '\n'; + }), + i + ); + }, + }; + return t; + })(); + }, + 36370: (e, t, r) => { + 'use strict'; + r.d(t, { ZT: () => i, gn: () => o }); + /*! ***************************************************************************** +Copyright (c) Microsoft Corporation. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH +REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY +AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, +INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM +LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR +OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THIS SOFTWARE. +***************************************************************************** */ + var n = function (e, t) { + return (n = + Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && + function (e, t) { + e.__proto__ = t; + }) || + function (e, t) { + for (var r in t) t.hasOwnProperty(r) && (e[r] = t[r]); + })(e, t); + }; + function i(e, t) { + function r() { + this.constructor = e; + } + n(e, t), + (e.prototype = null === t ? Object.create(t) : ((r.prototype = t.prototype), new r())); + } + function o(e, t, r, n) { + var i, + o = arguments.length, + s = o < 3 ? t : null === n ? (n = Object.getOwnPropertyDescriptor(t, r)) : n; + if ('object' == typeof Reflect && 'function' == typeof Reflect.decorate) + s = Reflect.decorate(e, t, r, n); + else + for (var A = e.length - 1; A >= 0; A--) + (i = e[A]) && (s = (o < 3 ? i(s) : o > 3 ? i(t, r, s) : i(t, r)) || s); + return o > 3 && s && Object.defineProperty(t, r, s), s; + } + }, + 98161: (e, t, r) => { + e.exports = r(69876); + }, + 69876: (e, t, r) => { + 'use strict'; + r(11631); + var n, + i = r(4016), + o = r(98605), + s = r(57211), + A = r(28614), + a = (r(42357), r(31669)); + function c(e) { + var t = this; + (t.options = e || {}), + (t.proxyOptions = t.options.proxy || {}), + (t.maxSockets = t.options.maxSockets || o.Agent.defaultMaxSockets), + (t.requests = []), + (t.sockets = []), + t.on('free', function (e, r, n, i) { + for (var o = l(r, n, i), s = 0, A = t.requests.length; s < A; ++s) { + var a = t.requests[s]; + if (a.host === o.host && a.port === o.port) + return t.requests.splice(s, 1), void a.request.onSocket(e); + } + e.destroy(), t.removeSocket(e); + }); + } + function u(e, t) { + var r = this; + c.prototype.createSocket.call(r, e, function (n) { + var o = e.request.getHeader('host'), + s = h({}, r.options, { socket: n, servername: o ? o.replace(/:.*$/, '') : e.host }), + A = i.connect(0, s); + (r.sockets[r.sockets.indexOf(n)] = A), t(A); + }); + } + function l(e, t, r) { + return 'string' == typeof e ? { host: e, port: t, localAddress: r } : e; + } + function h(e) { + for (var t = 1, r = arguments.length; t < r; ++t) { + var n = arguments[t]; + if ('object' == typeof n) + for (var i = Object.keys(n), o = 0, s = i.length; o < s; ++o) { + var A = i[o]; + void 0 !== n[A] && (e[A] = n[A]); + } + } + return e; + } + (t.httpOverHttp = function (e) { + var t = new c(e); + return (t.request = o.request), t; + }), + (t.httpsOverHttp = function (e) { + var t = new c(e); + return (t.request = o.request), (t.createSocket = u), (t.defaultPort = 443), t; + }), + (t.httpOverHttps = function (e) { + var t = new c(e); + return (t.request = s.request), t; + }), + (t.httpsOverHttps = function (e) { + var t = new c(e); + return (t.request = s.request), (t.createSocket = u), (t.defaultPort = 443), t; + }), + a.inherits(c, A.EventEmitter), + (c.prototype.addRequest = function (e, t, r, n) { + var i = this, + o = h({ request: e }, i.options, l(t, r, n)); + i.sockets.length >= this.maxSockets + ? i.requests.push(o) + : i.createSocket(o, function (t) { + function r() { + i.emit('free', t, o); + } + function n(e) { + i.removeSocket(t), + t.removeListener('free', r), + t.removeListener('close', n), + t.removeListener('agentRemove', n); + } + t.on('free', r), t.on('close', n), t.on('agentRemove', n), e.onSocket(t); + }); + }), + (c.prototype.createSocket = function (e, t) { + var r = this, + i = {}; + r.sockets.push(i); + var o = h({}, r.proxyOptions, { + method: 'CONNECT', + path: e.host + ':' + e.port, + agent: !1, + headers: { host: e.host + ':' + e.port }, + }); + e.localAddress && (o.localAddress = e.localAddress), + o.proxyAuth && + ((o.headers = o.headers || {}), + (o.headers['Proxy-Authorization'] = + 'Basic ' + new Buffer(o.proxyAuth).toString('base64'))), + n('making CONNECT request'); + var s = r.request(o); + function A(o, A, a) { + var c; + return ( + s.removeAllListeners(), + A.removeAllListeners(), + 200 !== o.statusCode + ? (n('tunneling socket could not be established, statusCode=%d', o.statusCode), + A.destroy(), + ((c = new Error( + 'tunneling socket could not be established, statusCode=' + o.statusCode + )).code = 'ECONNRESET'), + e.request.emit('error', c), + void r.removeSocket(i)) + : a.length > 0 + ? (n('got illegal response body from proxy'), + A.destroy(), + ((c = new Error('got illegal response body from proxy')).code = 'ECONNRESET'), + e.request.emit('error', c), + void r.removeSocket(i)) + : (n('tunneling connection has established'), + (r.sockets[r.sockets.indexOf(i)] = A), + t(A)) + ); + } + (s.useChunkedEncodingByDefault = !1), + s.once('response', function (e) { + e.upgrade = !0; + }), + s.once('upgrade', function (e, t, r) { + process.nextTick(function () { + A(e, t, r); + }); + }), + s.once('connect', A), + s.once('error', function (t) { + s.removeAllListeners(), + n('tunneling socket could not be established, cause=%s\n', t.message, t.stack); + var o = new Error('tunneling socket could not be established, cause=' + t.message); + (o.code = 'ECONNRESET'), e.request.emit('error', o), r.removeSocket(i); + }), + s.end(); + }), + (c.prototype.removeSocket = function (e) { + var t = this.sockets.indexOf(e); + if (-1 !== t) { + this.sockets.splice(t, 1); + var r = this.requests.shift(); + r && + this.createSocket(r, function (e) { + r.request.onSocket(e); + }); + } + }), + (n = + process.env.NODE_DEBUG && /\btunnel\b/.test(process.env.NODE_DEBUG) + ? function () { + var e = Array.prototype.slice.call(arguments); + 'string' == typeof e[0] ? (e[0] = 'TUNNEL: ' + e[0]) : e.unshift('TUNNEL:'), + console.error.apply(console, e); + } + : function () {}), + (t.debug = n); + }, + 5817: (e, t, r) => { + var n; + (e = r.nmd(e)), + (function () { + var r = + ('object' == typeof self && self.self === self && self) || + ('object' == typeof global && global.global === global && global) || + this || + {}, + i = r._, + o = Array.prototype, + s = Object.prototype, + A = 'undefined' != typeof Symbol ? Symbol.prototype : null, + a = o.push, + c = o.slice, + u = s.toString, + l = s.hasOwnProperty, + h = Array.isArray, + g = Object.keys, + f = Object.create, + p = function () {}, + d = function (e) { + return e instanceof d ? e : this instanceof d ? void (this._wrapped = e) : new d(e); + }; + t.nodeType ? (r._ = d) : (!e.nodeType && e.exports && (t = e.exports = d), (t._ = d)), + (d.VERSION = '1.9.1'); + var C, + E = function (e, t, r) { + if (void 0 === t) return e; + switch (null == r ? 3 : r) { + case 1: + return function (r) { + return e.call(t, r); + }; + case 3: + return function (r, n, i) { + return e.call(t, r, n, i); + }; + case 4: + return function (r, n, i, o) { + return e.call(t, r, n, i, o); + }; + } + return function () { + return e.apply(t, arguments); + }; + }, + I = function (e, t, r) { + return d.iteratee !== C + ? d.iteratee(e, t) + : null == e + ? d.identity + : d.isFunction(e) + ? E(e, t, r) + : d.isObject(e) && !d.isArray(e) + ? d.matcher(e) + : d.property(e); + }; + d.iteratee = C = function (e, t) { + return I(e, t, 1 / 0); + }; + var m = function (e, t) { + return ( + (t = null == t ? e.length - 1 : +t), + function () { + for (var r = Math.max(arguments.length - t, 0), n = Array(r), i = 0; i < r; i++) + n[i] = arguments[i + t]; + switch (t) { + case 0: + return e.call(this, n); + case 1: + return e.call(this, arguments[0], n); + case 2: + return e.call(this, arguments[0], arguments[1], n); + } + var o = Array(t + 1); + for (i = 0; i < t; i++) o[i] = arguments[i]; + return (o[t] = n), e.apply(this, o); + } + ); + }, + y = function (e) { + if (!d.isObject(e)) return {}; + if (f) return f(e); + p.prototype = e; + var t = new p(); + return (p.prototype = null), t; + }, + w = function (e) { + return function (t) { + return null == t ? void 0 : t[e]; + }; + }, + B = function (e, t) { + return null != e && l.call(e, t); + }, + Q = function (e, t) { + for (var r = t.length, n = 0; n < r; n++) { + if (null == e) return; + e = e[t[n]]; + } + return r ? e : void 0; + }, + v = Math.pow(2, 53) - 1, + D = w('length'), + b = function (e) { + var t = D(e); + return 'number' == typeof t && t >= 0 && t <= v; + }; + (d.each = d.forEach = function (e, t, r) { + var n, i; + if (((t = E(t, r)), b(e))) for (n = 0, i = e.length; n < i; n++) t(e[n], n, e); + else { + var o = d.keys(e); + for (n = 0, i = o.length; n < i; n++) t(e[o[n]], o[n], e); + } + return e; + }), + (d.map = d.collect = function (e, t, r) { + t = I(t, r); + for ( + var n = !b(e) && d.keys(e), i = (n || e).length, o = Array(i), s = 0; + s < i; + s++ + ) { + var A = n ? n[s] : s; + o[s] = t(e[A], A, e); + } + return o; + }); + var S = function (e) { + var t = function (t, r, n, i) { + var o = !b(t) && d.keys(t), + s = (o || t).length, + A = e > 0 ? 0 : s - 1; + for (i || ((n = t[o ? o[A] : A]), (A += e)); A >= 0 && A < s; A += e) { + var a = o ? o[A] : A; + n = r(n, t[a], a, t); + } + return n; + }; + return function (e, r, n, i) { + var o = arguments.length >= 3; + return t(e, E(r, i, 4), n, o); + }; + }; + (d.reduce = d.foldl = d.inject = S(1)), + (d.reduceRight = d.foldr = S(-1)), + (d.find = d.detect = function (e, t, r) { + var n = (b(e) ? d.findIndex : d.findKey)(e, t, r); + if (void 0 !== n && -1 !== n) return e[n]; + }), + (d.filter = d.select = function (e, t, r) { + var n = []; + return ( + (t = I(t, r)), + d.each(e, function (e, r, i) { + t(e, r, i) && n.push(e); + }), + n + ); + }), + (d.reject = function (e, t, r) { + return d.filter(e, d.negate(I(t)), r); + }), + (d.every = d.all = function (e, t, r) { + t = I(t, r); + for (var n = !b(e) && d.keys(e), i = (n || e).length, o = 0; o < i; o++) { + var s = n ? n[o] : o; + if (!t(e[s], s, e)) return !1; + } + return !0; + }), + (d.some = d.any = function (e, t, r) { + t = I(t, r); + for (var n = !b(e) && d.keys(e), i = (n || e).length, o = 0; o < i; o++) { + var s = n ? n[o] : o; + if (t(e[s], s, e)) return !0; + } + return !1; + }), + (d.contains = d.includes = d.include = function (e, t, r, n) { + return ( + b(e) || (e = d.values(e)), + ('number' != typeof r || n) && (r = 0), + d.indexOf(e, t, r) >= 0 + ); + }), + (d.invoke = m(function (e, t, r) { + var n, i; + return ( + d.isFunction(t) + ? (i = t) + : d.isArray(t) && ((n = t.slice(0, -1)), (t = t[t.length - 1])), + d.map(e, function (e) { + var o = i; + if (!o) { + if ((n && n.length && (e = Q(e, n)), null == e)) return; + o = e[t]; + } + return null == o ? o : o.apply(e, r); + }) + ); + })), + (d.pluck = function (e, t) { + return d.map(e, d.property(t)); + }), + (d.where = function (e, t) { + return d.filter(e, d.matcher(t)); + }), + (d.findWhere = function (e, t) { + return d.find(e, d.matcher(t)); + }), + (d.max = function (e, t, r) { + var n, + i, + o = -1 / 0, + s = -1 / 0; + if (null == t || ('number' == typeof t && 'object' != typeof e[0] && null != e)) + for (var A = 0, a = (e = b(e) ? e : d.values(e)).length; A < a; A++) + null != (n = e[A]) && n > o && (o = n); + else + (t = I(t, r)), + d.each(e, function (e, r, n) { + ((i = t(e, r, n)) > s || (i === -1 / 0 && o === -1 / 0)) && + ((o = e), (s = i)); + }); + return o; + }), + (d.min = function (e, t, r) { + var n, + i, + o = 1 / 0, + s = 1 / 0; + if (null == t || ('number' == typeof t && 'object' != typeof e[0] && null != e)) + for (var A = 0, a = (e = b(e) ? e : d.values(e)).length; A < a; A++) + null != (n = e[A]) && n < o && (o = n); + else + (t = I(t, r)), + d.each(e, function (e, r, n) { + ((i = t(e, r, n)) < s || (i === 1 / 0 && o === 1 / 0)) && ((o = e), (s = i)); + }); + return o; + }), + (d.shuffle = function (e) { + return d.sample(e, 1 / 0); + }), + (d.sample = function (e, t, r) { + if (null == t || r) return b(e) || (e = d.values(e)), e[d.random(e.length - 1)]; + var n = b(e) ? d.clone(e) : d.values(e), + i = D(n); + t = Math.max(Math.min(t, i), 0); + for (var o = i - 1, s = 0; s < t; s++) { + var A = d.random(s, o), + a = n[s]; + (n[s] = n[A]), (n[A] = a); + } + return n.slice(0, t); + }), + (d.sortBy = function (e, t, r) { + var n = 0; + return ( + (t = I(t, r)), + d.pluck( + d + .map(e, function (e, r, i) { + return { value: e, index: n++, criteria: t(e, r, i) }; + }) + .sort(function (e, t) { + var r = e.criteria, + n = t.criteria; + if (r !== n) { + if (r > n || void 0 === r) return 1; + if (r < n || void 0 === n) return -1; + } + return e.index - t.index; + }), + 'value' + ) + ); + }); + var k = function (e, t) { + return function (r, n, i) { + var o = t ? [[], []] : {}; + return ( + (n = I(n, i)), + d.each(r, function (t, i) { + var s = n(t, i, r); + e(o, t, s); + }), + o + ); + }; + }; + (d.groupBy = k(function (e, t, r) { + B(e, r) ? e[r].push(t) : (e[r] = [t]); + })), + (d.indexBy = k(function (e, t, r) { + e[r] = t; + })), + (d.countBy = k(function (e, t, r) { + B(e, r) ? e[r]++ : (e[r] = 1); + })); + var x = /[^\ud800-\udfff]|[\ud800-\udbff][\udc00-\udfff]|[\ud800-\udfff]/g; + (d.toArray = function (e) { + return e + ? d.isArray(e) + ? c.call(e) + : d.isString(e) + ? e.match(x) + : b(e) + ? d.map(e, d.identity) + : d.values(e) + : []; + }), + (d.size = function (e) { + return null == e ? 0 : b(e) ? e.length : d.keys(e).length; + }), + (d.partition = k(function (e, t, r) { + e[r ? 0 : 1].push(t); + }, !0)), + (d.first = d.head = d.take = function (e, t, r) { + return null == e || e.length < 1 + ? null == t + ? void 0 + : [] + : null == t || r + ? e[0] + : d.initial(e, e.length - t); + }), + (d.initial = function (e, t, r) { + return c.call(e, 0, Math.max(0, e.length - (null == t || r ? 1 : t))); + }), + (d.last = function (e, t, r) { + return null == e || e.length < 1 + ? null == t + ? void 0 + : [] + : null == t || r + ? e[e.length - 1] + : d.rest(e, Math.max(0, e.length - t)); + }), + (d.rest = d.tail = d.drop = function (e, t, r) { + return c.call(e, null == t || r ? 1 : t); + }), + (d.compact = function (e) { + return d.filter(e, Boolean); + }); + var F = function (e, t, r, n) { + for (var i = (n = n || []).length, o = 0, s = D(e); o < s; o++) { + var A = e[o]; + if (b(A) && (d.isArray(A) || d.isArguments(A))) + if (t) for (var a = 0, c = A.length; a < c; ) n[i++] = A[a++]; + else F(A, t, r, n), (i = n.length); + else r || (n[i++] = A); + } + return n; + }; + (d.flatten = function (e, t) { + return F(e, t, !1); + }), + (d.without = m(function (e, t) { + return d.difference(e, t); + })), + (d.uniq = d.unique = function (e, t, r, n) { + d.isBoolean(t) || ((n = r), (r = t), (t = !1)), null != r && (r = I(r, n)); + for (var i = [], o = [], s = 0, A = D(e); s < A; s++) { + var a = e[s], + c = r ? r(a, s, e) : a; + t && !r + ? ((s && o === c) || i.push(a), (o = c)) + : r + ? d.contains(o, c) || (o.push(c), i.push(a)) + : d.contains(i, a) || i.push(a); + } + return i; + }), + (d.union = m(function (e) { + return d.uniq(F(e, !0, !0)); + })), + (d.intersection = function (e) { + for (var t = [], r = arguments.length, n = 0, i = D(e); n < i; n++) { + var o = e[n]; + if (!d.contains(t, o)) { + var s; + for (s = 1; s < r && d.contains(arguments[s], o); s++); + s === r && t.push(o); + } + } + return t; + }), + (d.difference = m(function (e, t) { + return ( + (t = F(t, !0, !0)), + d.filter(e, function (e) { + return !d.contains(t, e); + }) + ); + })), + (d.unzip = function (e) { + for (var t = (e && d.max(e, D).length) || 0, r = Array(t), n = 0; n < t; n++) + r[n] = d.pluck(e, n); + return r; + }), + (d.zip = m(d.unzip)), + (d.object = function (e, t) { + for (var r = {}, n = 0, i = D(e); n < i; n++) + t ? (r[e[n]] = t[n]) : (r[e[n][0]] = e[n][1]); + return r; + }); + var M = function (e) { + return function (t, r, n) { + r = I(r, n); + for (var i = D(t), o = e > 0 ? 0 : i - 1; o >= 0 && o < i; o += e) + if (r(t[o], o, t)) return o; + return -1; + }; + }; + (d.findIndex = M(1)), + (d.findLastIndex = M(-1)), + (d.sortedIndex = function (e, t, r, n) { + for (var i = (r = I(r, n, 1))(t), o = 0, s = D(e); o < s; ) { + var A = Math.floor((o + s) / 2); + r(e[A]) < i ? (o = A + 1) : (s = A); + } + return o; + }); + var N = function (e, t, r) { + return function (n, i, o) { + var s = 0, + A = D(n); + if ('number' == typeof o) + e > 0 + ? (s = o >= 0 ? o : Math.max(o + A, s)) + : (A = o >= 0 ? Math.min(o + 1, A) : o + A + 1); + else if (r && o && A) return n[(o = r(n, i))] === i ? o : -1; + if (i != i) return (o = t(c.call(n, s, A), d.isNaN)) >= 0 ? o + s : -1; + for (o = e > 0 ? s : A - 1; o >= 0 && o < A; o += e) if (n[o] === i) return o; + return -1; + }; + }; + (d.indexOf = N(1, d.findIndex, d.sortedIndex)), + (d.lastIndexOf = N(-1, d.findLastIndex)), + (d.range = function (e, t, r) { + null == t && ((t = e || 0), (e = 0)), r || (r = t < e ? -1 : 1); + for ( + var n = Math.max(Math.ceil((t - e) / r), 0), i = Array(n), o = 0; + o < n; + o++, e += r + ) + i[o] = e; + return i; + }), + (d.chunk = function (e, t) { + if (null == t || t < 1) return []; + for (var r = [], n = 0, i = e.length; n < i; ) r.push(c.call(e, n, (n += t))); + return r; + }); + var R = function (e, t, r, n, i) { + if (!(n instanceof t)) return e.apply(r, i); + var o = y(e.prototype), + s = e.apply(o, i); + return d.isObject(s) ? s : o; + }; + (d.bind = m(function (e, t, r) { + if (!d.isFunction(e)) throw new TypeError('Bind must be called on a function'); + var n = m(function (i) { + return R(e, n, t, this, r.concat(i)); + }); + return n; + })), + (d.partial = m(function (e, t) { + var r = d.partial.placeholder, + n = function () { + for (var i = 0, o = t.length, s = Array(o), A = 0; A < o; A++) + s[A] = t[A] === r ? arguments[i++] : t[A]; + for (; i < arguments.length; ) s.push(arguments[i++]); + return R(e, n, this, this, s); + }; + return n; + })), + (d.partial.placeholder = d), + (d.bindAll = m(function (e, t) { + var r = (t = F(t, !1, !1)).length; + if (r < 1) throw new Error('bindAll must be passed function names'); + for (; r--; ) { + var n = t[r]; + e[n] = d.bind(e[n], e); + } + })), + (d.memoize = function (e, t) { + var r = function (n) { + var i = r.cache, + o = '' + (t ? t.apply(this, arguments) : n); + return B(i, o) || (i[o] = e.apply(this, arguments)), i[o]; + }; + return (r.cache = {}), r; + }), + (d.delay = m(function (e, t, r) { + return setTimeout(function () { + return e.apply(null, r); + }, t); + })), + (d.defer = d.partial(d.delay, d, 1)), + (d.throttle = function (e, t, r) { + var n, + i, + o, + s, + A = 0; + r || (r = {}); + var a = function () { + (A = !1 === r.leading ? 0 : d.now()), + (n = null), + (s = e.apply(i, o)), + n || (i = o = null); + }, + c = function () { + var c = d.now(); + A || !1 !== r.leading || (A = c); + var u = t - (c - A); + return ( + (i = this), + (o = arguments), + u <= 0 || u > t + ? (n && (clearTimeout(n), (n = null)), + (A = c), + (s = e.apply(i, o)), + n || (i = o = null)) + : n || !1 === r.trailing || (n = setTimeout(a, u)), + s + ); + }; + return ( + (c.cancel = function () { + clearTimeout(n), (A = 0), (n = i = o = null); + }), + c + ); + }), + (d.debounce = function (e, t, r) { + var n, + i, + o = function (t, r) { + (n = null), r && (i = e.apply(t, r)); + }, + s = m(function (s) { + if ((n && clearTimeout(n), r)) { + var A = !n; + (n = setTimeout(o, t)), A && (i = e.apply(this, s)); + } else n = d.delay(o, t, this, s); + return i; + }); + return ( + (s.cancel = function () { + clearTimeout(n), (n = null); + }), + s + ); + }), + (d.wrap = function (e, t) { + return d.partial(t, e); + }), + (d.negate = function (e) { + return function () { + return !e.apply(this, arguments); + }; + }), + (d.compose = function () { + var e = arguments, + t = e.length - 1; + return function () { + for (var r = t, n = e[t].apply(this, arguments); r--; ) n = e[r].call(this, n); + return n; + }; + }), + (d.after = function (e, t) { + return function () { + if (--e < 1) return t.apply(this, arguments); + }; + }), + (d.before = function (e, t) { + var r; + return function () { + return --e > 0 && (r = t.apply(this, arguments)), e <= 1 && (t = null), r; + }; + }), + (d.once = d.partial(d.before, 2)), + (d.restArguments = m); + var K = !{ toString: null }.propertyIsEnumerable('toString'), + L = [ + 'valueOf', + 'isPrototypeOf', + 'toString', + 'propertyIsEnumerable', + 'hasOwnProperty', + 'toLocaleString', + ], + T = function (e, t) { + var r = L.length, + n = e.constructor, + i = (d.isFunction(n) && n.prototype) || s, + o = 'constructor'; + for (B(e, o) && !d.contains(t, o) && t.push(o); r--; ) + (o = L[r]) in e && e[o] !== i[o] && !d.contains(t, o) && t.push(o); + }; + (d.keys = function (e) { + if (!d.isObject(e)) return []; + if (g) return g(e); + var t = []; + for (var r in e) B(e, r) && t.push(r); + return K && T(e, t), t; + }), + (d.allKeys = function (e) { + if (!d.isObject(e)) return []; + var t = []; + for (var r in e) t.push(r); + return K && T(e, t), t; + }), + (d.values = function (e) { + for (var t = d.keys(e), r = t.length, n = Array(r), i = 0; i < r; i++) + n[i] = e[t[i]]; + return n; + }), + (d.mapObject = function (e, t, r) { + t = I(t, r); + for (var n = d.keys(e), i = n.length, o = {}, s = 0; s < i; s++) { + var A = n[s]; + o[A] = t(e[A], A, e); + } + return o; + }), + (d.pairs = function (e) { + for (var t = d.keys(e), r = t.length, n = Array(r), i = 0; i < r; i++) + n[i] = [t[i], e[t[i]]]; + return n; + }), + (d.invert = function (e) { + for (var t = {}, r = d.keys(e), n = 0, i = r.length; n < i; n++) t[e[r[n]]] = r[n]; + return t; + }), + (d.functions = d.methods = function (e) { + var t = []; + for (var r in e) d.isFunction(e[r]) && t.push(r); + return t.sort(); + }); + var P = function (e, t) { + return function (r) { + var n = arguments.length; + if ((t && (r = Object(r)), n < 2 || null == r)) return r; + for (var i = 1; i < n; i++) + for (var o = arguments[i], s = e(o), A = s.length, a = 0; a < A; a++) { + var c = s[a]; + (t && void 0 !== r[c]) || (r[c] = o[c]); + } + return r; + }; + }; + (d.extend = P(d.allKeys)), + (d.extendOwn = d.assign = P(d.keys)), + (d.findKey = function (e, t, r) { + t = I(t, r); + for (var n, i = d.keys(e), o = 0, s = i.length; o < s; o++) + if (t(e[(n = i[o])], n, e)) return n; + }); + var U, + _, + O = function (e, t, r) { + return t in r; + }; + (d.pick = m(function (e, t) { + var r = {}, + n = t[0]; + if (null == e) return r; + d.isFunction(n) + ? (t.length > 1 && (n = E(n, t[1])), (t = d.allKeys(e))) + : ((n = O), (t = F(t, !1, !1)), (e = Object(e))); + for (var i = 0, o = t.length; i < o; i++) { + var s = t[i], + A = e[s]; + n(A, s, e) && (r[s] = A); + } + return r; + })), + (d.omit = m(function (e, t) { + var r, + n = t[0]; + return ( + d.isFunction(n) + ? ((n = d.negate(n)), t.length > 1 && (r = t[1])) + : ((t = d.map(F(t, !1, !1), String)), + (n = function (e, r) { + return !d.contains(t, r); + })), + d.pick(e, n, r) + ); + })), + (d.defaults = P(d.allKeys, !0)), + (d.create = function (e, t) { + var r = y(e); + return t && d.extendOwn(r, t), r; + }), + (d.clone = function (e) { + return d.isObject(e) ? (d.isArray(e) ? e.slice() : d.extend({}, e)) : e; + }), + (d.tap = function (e, t) { + return t(e), e; + }), + (d.isMatch = function (e, t) { + var r = d.keys(t), + n = r.length; + if (null == e) return !n; + for (var i = Object(e), o = 0; o < n; o++) { + var s = r[o]; + if (t[s] !== i[s] || !(s in i)) return !1; + } + return !0; + }), + (U = function (e, t, r, n) { + if (e === t) return 0 !== e || 1 / e == 1 / t; + if (null == e || null == t) return !1; + if (e != e) return t != t; + var i = typeof e; + return ( + ('function' === i || 'object' === i || 'object' == typeof t) && _(e, t, r, n) + ); + }), + (_ = function (e, t, r, n) { + e instanceof d && (e = e._wrapped), t instanceof d && (t = t._wrapped); + var i = u.call(e); + if (i !== u.call(t)) return !1; + switch (i) { + case '[object RegExp]': + case '[object String]': + return '' + e == '' + t; + case '[object Number]': + return +e != +e ? +t != +t : 0 == +e ? 1 / +e == 1 / t : +e == +t; + case '[object Date]': + case '[object Boolean]': + return +e == +t; + case '[object Symbol]': + return A.valueOf.call(e) === A.valueOf.call(t); + } + var o = '[object Array]' === i; + if (!o) { + if ('object' != typeof e || 'object' != typeof t) return !1; + var s = e.constructor, + a = t.constructor; + if ( + s !== a && + !(d.isFunction(s) && s instanceof s && d.isFunction(a) && a instanceof a) && + 'constructor' in e && + 'constructor' in t + ) + return !1; + } + n = n || []; + for (var c = (r = r || []).length; c--; ) if (r[c] === e) return n[c] === t; + if ((r.push(e), n.push(t), o)) { + if ((c = e.length) !== t.length) return !1; + for (; c--; ) if (!U(e[c], t[c], r, n)) return !1; + } else { + var l, + h = d.keys(e); + if (((c = h.length), d.keys(t).length !== c)) return !1; + for (; c--; ) if (((l = h[c]), !B(t, l) || !U(e[l], t[l], r, n))) return !1; + } + return r.pop(), n.pop(), !0; + }), + (d.isEqual = function (e, t) { + return U(e, t); + }), + (d.isEmpty = function (e) { + return ( + null == e || + (b(e) && (d.isArray(e) || d.isString(e) || d.isArguments(e)) + ? 0 === e.length + : 0 === d.keys(e).length) + ); + }), + (d.isElement = function (e) { + return !(!e || 1 !== e.nodeType); + }), + (d.isArray = + h || + function (e) { + return '[object Array]' === u.call(e); + }), + (d.isObject = function (e) { + var t = typeof e; + return 'function' === t || ('object' === t && !!e); + }), + d.each( + [ + 'Arguments', + 'Function', + 'String', + 'Number', + 'Date', + 'RegExp', + 'Error', + 'Symbol', + 'Map', + 'WeakMap', + 'Set', + 'WeakSet', + ], + function (e) { + d['is' + e] = function (t) { + return u.call(t) === '[object ' + e + ']'; + }; + } + ), + d.isArguments(arguments) || + (d.isArguments = function (e) { + return B(e, 'callee'); + }); + var j = r.document && r.document.childNodes; + 'object' != typeof Int8Array && + 'function' != typeof j && + (d.isFunction = function (e) { + return 'function' == typeof e || !1; + }), + (d.isFinite = function (e) { + return !d.isSymbol(e) && isFinite(e) && !isNaN(parseFloat(e)); + }), + (d.isNaN = function (e) { + return d.isNumber(e) && isNaN(e); + }), + (d.isBoolean = function (e) { + return !0 === e || !1 === e || '[object Boolean]' === u.call(e); + }), + (d.isNull = function (e) { + return null === e; + }), + (d.isUndefined = function (e) { + return void 0 === e; + }), + (d.has = function (e, t) { + if (!d.isArray(t)) return B(e, t); + for (var r = t.length, n = 0; n < r; n++) { + var i = t[n]; + if (null == e || !l.call(e, i)) return !1; + e = e[i]; + } + return !!r; + }), + (d.noConflict = function () { + return (r._ = i), this; + }), + (d.identity = function (e) { + return e; + }), + (d.constant = function (e) { + return function () { + return e; + }; + }), + (d.noop = function () {}), + (d.property = function (e) { + return d.isArray(e) + ? function (t) { + return Q(t, e); + } + : w(e); + }), + (d.propertyOf = function (e) { + return null == e + ? function () {} + : function (t) { + return d.isArray(t) ? Q(e, t) : e[t]; + }; + }), + (d.matcher = d.matches = function (e) { + return ( + (e = d.extendOwn({}, e)), + function (t) { + return d.isMatch(t, e); + } + ); + }), + (d.times = function (e, t, r) { + var n = Array(Math.max(0, e)); + t = E(t, r, 1); + for (var i = 0; i < e; i++) n[i] = t(i); + return n; + }), + (d.random = function (e, t) { + return null == t && ((t = e), (e = 0)), e + Math.floor(Math.random() * (t - e + 1)); + }), + (d.now = + Date.now || + function () { + return new Date().getTime(); + }); + var Y = { + '&': '&', + '<': '<', + '>': '>', + '"': '"', + "'": ''', + '`': '`', + }, + G = d.invert(Y), + J = function (e) { + var t = function (t) { + return e[t]; + }, + r = '(?:' + d.keys(e).join('|') + ')', + n = RegExp(r), + i = RegExp(r, 'g'); + return function (e) { + return (e = null == e ? '' : '' + e), n.test(e) ? e.replace(i, t) : e; + }; + }; + (d.escape = J(Y)), + (d.unescape = J(G)), + (d.result = function (e, t, r) { + d.isArray(t) || (t = [t]); + var n = t.length; + if (!n) return d.isFunction(r) ? r.call(e) : r; + for (var i = 0; i < n; i++) { + var o = null == e ? void 0 : e[t[i]]; + void 0 === o && ((o = r), (i = n)), (e = d.isFunction(o) ? o.call(e) : o); + } + return e; + }); + var H = 0; + (d.uniqueId = function (e) { + var t = ++H + ''; + return e ? e + t : t; + }), + (d.templateSettings = { + evaluate: /<%([\s\S]+?)%>/g, + interpolate: /<%=([\s\S]+?)%>/g, + escape: /<%-([\s\S]+?)%>/g, + }); + var q = /(.)^/, + z = { + "'": "'", + '\\': '\\', + '\r': 'r', + '\n': 'n', + '\u2028': 'u2028', + '\u2029': 'u2029', + }, + W = /\\|'|\r|\n|\u2028|\u2029/g, + V = function (e) { + return '\\' + z[e]; + }; + (d.template = function (e, t, r) { + !t && r && (t = r), (t = d.defaults({}, t, d.templateSettings)); + var n, + i = RegExp( + [ + (t.escape || q).source, + (t.interpolate || q).source, + (t.evaluate || q).source, + ].join('|') + '|$', + 'g' + ), + o = 0, + s = "__p+='"; + e.replace(i, function (t, r, n, i, A) { + return ( + (s += e.slice(o, A).replace(W, V)), + (o = A + t.length), + r + ? (s += "'+\n((__t=(" + r + "))==null?'':_.escape(__t))+\n'") + : n + ? (s += "'+\n((__t=(" + n + "))==null?'':__t)+\n'") + : i && (s += "';\n" + i + "\n__p+='"), + t + ); + }), + (s += "';\n"), + t.variable || (s = 'with(obj||{}){\n' + s + '}\n'), + (s = + "var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\n" + + s + + 'return __p;\n'); + try { + n = new Function(t.variable || 'obj', '_', s); + } catch (e) { + throw ((e.source = s), e); + } + var A = function (e) { + return n.call(this, e, d); + }, + a = t.variable || 'obj'; + return (A.source = 'function(' + a + '){\n' + s + '}'), A; + }), + (d.chain = function (e) { + var t = d(e); + return (t._chain = !0), t; + }); + var X = function (e, t) { + return e._chain ? d(t).chain() : t; + }; + (d.mixin = function (e) { + return ( + d.each(d.functions(e), function (t) { + var r = (d[t] = e[t]); + d.prototype[t] = function () { + var e = [this._wrapped]; + return a.apply(e, arguments), X(this, r.apply(d, e)); + }; + }), + d + ); + }), + d.mixin(d), + d.each(['pop', 'push', 'reverse', 'shift', 'sort', 'splice', 'unshift'], function ( + e + ) { + var t = o[e]; + d.prototype[e] = function () { + var r = this._wrapped; + return ( + t.apply(r, arguments), + ('shift' !== e && 'splice' !== e) || 0 !== r.length || delete r[0], + X(this, r) + ); + }; + }), + d.each(['concat', 'join', 'slice'], function (e) { + var t = o[e]; + d.prototype[e] = function () { + return X(this, t.apply(this._wrapped, arguments)); + }; + }), + (d.prototype.value = function () { + return this._wrapped; + }), + (d.prototype.valueOf = d.prototype.toJSON = d.prototype.value), + (d.prototype.toString = function () { + return String(this._wrapped); + }), + void 0 === + (n = function () { + return d; + }.apply(t, [])) || (e.exports = n); + })(); + }, + 73212: (e, t, r) => { + e.exports = r(31669).deprecate; + }, + 87945: (e, t, r) => { + const n = + 'win32' === process.platform || + 'cygwin' === process.env.OSTYPE || + 'msys' === process.env.OSTYPE, + i = r(85622), + o = n ? ';' : ':', + s = r(64151), + A = (e) => Object.assign(new Error('not found: ' + e), { code: 'ENOENT' }), + a = (e, t) => { + const r = t.colon || o, + i = + e.match(/\//) || (n && e.match(/\\/)) + ? [''] + : [...(n ? [process.cwd()] : []), ...(t.path || process.env.PATH || '').split(r)], + s = n ? t.pathExt || process.env.PATHEXT || '.EXE;.CMD;.BAT;.COM' : '', + A = n ? s.split(r) : ['']; + return ( + n && -1 !== e.indexOf('.') && '' !== A[0] && A.unshift(''), + { pathEnv: i, pathExt: A, pathExtExe: s } + ); + }, + c = (e, t, r) => { + 'function' == typeof t && ((r = t), (t = {})), t || (t = {}); + const { pathEnv: n, pathExt: o, pathExtExe: c } = a(e, t), + u = [], + l = (r) => + new Promise((o, s) => { + if (r === n.length) return t.all && u.length ? o(u) : s(A(e)); + const a = n[r], + c = /^".*"$/.test(a) ? a.slice(1, -1) : a, + l = i.join(c, e), + g = !c && /^\.[\\\/]/.test(e) ? e.slice(0, 2) + l : l; + o(h(g, r, 0)); + }), + h = (e, r, n) => + new Promise((i, A) => { + if (n === o.length) return i(l(r + 1)); + const a = o[n]; + s(e + a, { pathExt: c }, (o, s) => { + if (!o && s) { + if (!t.all) return i(e + a); + u.push(e + a); + } + return i(h(e, r, n + 1)); + }); + }); + return r ? l(0).then((e) => r(null, e), r) : l(0); + }; + (e.exports = c), + (c.sync = (e, t) => { + t = t || {}; + const { pathEnv: r, pathExt: n, pathExtExe: o } = a(e, t), + c = []; + for (let A = 0; A < r.length; A++) { + const a = r[A], + u = /^".*"$/.test(a) ? a.slice(1, -1) : a, + l = i.join(u, e), + h = !u && /^\.[\\\/]/.test(e) ? e.slice(0, 2) + l : l; + for (let e = 0; e < n.length; e++) { + const r = h + n[e]; + try { + if (s.sync(r, { pathExt: o })) { + if (!t.all) return r; + c.push(r); + } + } catch (e) {} + } + } + if (t.all && c.length) return c; + if (t.nothrow) return null; + throw A(e); + }); + }, + 98984: (e) => { + e.exports = function e(t, r) { + if (t && r) return e(t)(r); + if ('function' != typeof t) throw new TypeError('need wrapper function'); + return ( + Object.keys(t).forEach(function (e) { + n[e] = t[e]; + }), + n + ); + function n() { + for (var e = new Array(arguments.length), r = 0; r < e.length; r++) e[r] = arguments[r]; + var n = t.apply(this, e), + i = e[e.length - 1]; + return ( + 'function' == typeof n && + n !== i && + Object.keys(i).forEach(function (e) { + n[e] = i[e]; + }), + n + ); + } + }; + }, + 99770: (e) => { + 'use strict'; + e.exports = function (e) { + e.prototype[Symbol.iterator] = function* () { + for (let e = this.head; e; e = e.next) yield e.value; + }; + }; + }, + 80800: (e, t, r) => { + 'use strict'; + function n(e) { + var t = this; + if ( + (t instanceof n || (t = new n()), + (t.tail = null), + (t.head = null), + (t.length = 0), + e && 'function' == typeof e.forEach) + ) + e.forEach(function (e) { + t.push(e); + }); + else if (arguments.length > 0) + for (var r = 0, i = arguments.length; r < i; r++) t.push(arguments[r]); + return t; + } + function i(e, t) { + (e.tail = new s(t, e.tail, null, e)), e.head || (e.head = e.tail), e.length++; + } + function o(e, t) { + (e.head = new s(t, null, e.head, e)), e.tail || (e.tail = e.head), e.length++; + } + function s(e, t, r, n) { + if (!(this instanceof s)) return new s(e, t, r, n); + (this.list = n), + (this.value = e), + t ? ((t.next = this), (this.prev = t)) : (this.prev = null), + r ? ((r.prev = this), (this.next = r)) : (this.next = null); + } + (e.exports = n), + (n.Node = s), + (n.create = n), + (n.prototype.removeNode = function (e) { + if (e.list !== this) + throw new Error('removing node which does not belong to this list'); + var t = e.next, + r = e.prev; + t && (t.prev = r), + r && (r.next = t), + e === this.head && (this.head = t), + e === this.tail && (this.tail = r), + e.list.length--, + (e.next = null), + (e.prev = null), + (e.list = null); + }), + (n.prototype.unshiftNode = function (e) { + if (e !== this.head) { + e.list && e.list.removeNode(e); + var t = this.head; + (e.list = this), + (e.next = t), + t && (t.prev = e), + (this.head = e), + this.tail || (this.tail = e), + this.length++; + } + }), + (n.prototype.pushNode = function (e) { + if (e !== this.tail) { + e.list && e.list.removeNode(e); + var t = this.tail; + (e.list = this), + (e.prev = t), + t && (t.next = e), + (this.tail = e), + this.head || (this.head = e), + this.length++; + } + }), + (n.prototype.push = function () { + for (var e = 0, t = arguments.length; e < t; e++) i(this, arguments[e]); + return this.length; + }), + (n.prototype.unshift = function () { + for (var e = 0, t = arguments.length; e < t; e++) o(this, arguments[e]); + return this.length; + }), + (n.prototype.pop = function () { + if (this.tail) { + var e = this.tail.value; + return ( + (this.tail = this.tail.prev), + this.tail ? (this.tail.next = null) : (this.head = null), + this.length--, + e + ); + } + }), + (n.prototype.shift = function () { + if (this.head) { + var e = this.head.value; + return ( + (this.head = this.head.next), + this.head ? (this.head.prev = null) : (this.tail = null), + this.length--, + e + ); + } + }), + (n.prototype.forEach = function (e, t) { + t = t || this; + for (var r = this.head, n = 0; null !== r; n++) + e.call(t, r.value, n, this), (r = r.next); + }), + (n.prototype.forEachReverse = function (e, t) { + t = t || this; + for (var r = this.tail, n = this.length - 1; null !== r; n--) + e.call(t, r.value, n, this), (r = r.prev); + }), + (n.prototype.get = function (e) { + for (var t = 0, r = this.head; null !== r && t < e; t++) r = r.next; + if (t === e && null !== r) return r.value; + }), + (n.prototype.getReverse = function (e) { + for (var t = 0, r = this.tail; null !== r && t < e; t++) r = r.prev; + if (t === e && null !== r) return r.value; + }), + (n.prototype.map = function (e, t) { + t = t || this; + for (var r = new n(), i = this.head; null !== i; ) + r.push(e.call(t, i.value, this)), (i = i.next); + return r; + }), + (n.prototype.mapReverse = function (e, t) { + t = t || this; + for (var r = new n(), i = this.tail; null !== i; ) + r.push(e.call(t, i.value, this)), (i = i.prev); + return r; + }), + (n.prototype.reduce = function (e, t) { + var r, + n = this.head; + if (arguments.length > 1) r = t; + else { + if (!this.head) throw new TypeError('Reduce of empty list with no initial value'); + (n = this.head.next), (r = this.head.value); + } + for (var i = 0; null !== n; i++) (r = e(r, n.value, i)), (n = n.next); + return r; + }), + (n.prototype.reduceReverse = function (e, t) { + var r, + n = this.tail; + if (arguments.length > 1) r = t; + else { + if (!this.tail) throw new TypeError('Reduce of empty list with no initial value'); + (n = this.tail.prev), (r = this.tail.value); + } + for (var i = this.length - 1; null !== n; i--) (r = e(r, n.value, i)), (n = n.prev); + return r; + }), + (n.prototype.toArray = function () { + for (var e = new Array(this.length), t = 0, r = this.head; null !== r; t++) + (e[t] = r.value), (r = r.next); + return e; + }), + (n.prototype.toArrayReverse = function () { + for (var e = new Array(this.length), t = 0, r = this.tail; null !== r; t++) + (e[t] = r.value), (r = r.prev); + return e; + }), + (n.prototype.slice = function (e, t) { + (t = t || this.length) < 0 && (t += this.length), + (e = e || 0) < 0 && (e += this.length); + var r = new n(); + if (t < e || t < 0) return r; + e < 0 && (e = 0), t > this.length && (t = this.length); + for (var i = 0, o = this.head; null !== o && i < e; i++) o = o.next; + for (; null !== o && i < t; i++, o = o.next) r.push(o.value); + return r; + }), + (n.prototype.sliceReverse = function (e, t) { + (t = t || this.length) < 0 && (t += this.length), + (e = e || 0) < 0 && (e += this.length); + var r = new n(); + if (t < e || t < 0) return r; + e < 0 && (e = 0), t > this.length && (t = this.length); + for (var i = this.length, o = this.tail; null !== o && i > t; i--) o = o.prev; + for (; null !== o && i > e; i--, o = o.prev) r.push(o.value); + return r; + }), + (n.prototype.reverse = function () { + for (var e = this.head, t = this.tail, r = e; null !== r; r = r.prev) { + var n = r.prev; + (r.prev = r.next), (r.next = n); + } + return (this.head = t), (this.tail = e), this; + }); + try { + r(99770)(n); + } catch (e) {} + }, + 94916: (e, t, r) => { + 'use strict'; + var n = r(60087); + (t.__esModule = !0), (t.default = void 0); + var i = n(r(15215)), + o = n(r(11050)), + s = (function () { + function e(e, t) { + if (((this.refs = e), 'function' != typeof t)) { + if (!(0, i.default)(t, 'is')) + throw new TypeError('`is:` is required for `when()` conditions'); + if (!t.then && !t.otherwise) + throw new TypeError( + 'either `then:` or `otherwise:` is required for `when()` conditions' + ); + var r = t.is, + n = t.then, + o = t.otherwise, + s = + 'function' == typeof r + ? r + : function () { + for (var e = arguments.length, t = new Array(e), n = 0; n < e; n++) + t[n] = arguments[n]; + return t.every(function (e) { + return e === r; + }); + }; + this.fn = function () { + for (var e = arguments.length, t = new Array(e), r = 0; r < e; r++) + t[r] = arguments[r]; + var i = t.pop(), + A = t.pop(), + a = s.apply(void 0, t) ? n : o; + if (a) return 'function' == typeof a ? a(A) : A.concat(a.resolve(i)); + }; + } else this.fn = t; + } + return ( + (e.prototype.resolve = function (e, t) { + var r = this.refs.map(function (e) { + return e.getValue(t); + }), + n = this.fn.apply(e, r.concat(e, t)); + if (void 0 === n || n === e) return e; + if (!(0, o.default)(n)) + throw new TypeError('conditions must return a schema object'); + return n.resolve(t); + }), + e + ); + })(); + (t.default = s), (e.exports = t.default); + }, + 6856: (e, t, r) => { + 'use strict'; + var n = r(60087); + (t.__esModule = !0), (t.default = void 0); + var i = n(r(11050)), + o = (function () { + function e(e) { + this._resolve = function (t, r) { + var n = e(t, r); + if (!(0, i.default)(n)) + throw new TypeError('lazy() functions must return a valid schema'); + return n.resolve(r); + }; + } + var t = e.prototype; + return ( + (t.resolve = function (e) { + return this._resolve(e.value, e); + }), + (t.cast = function (e, t) { + return this._resolve(e, t).cast(e, t); + }), + (t.validate = function (e, t) { + return this._resolve(e, t).validate(e, t); + }), + (t.validateSync = function (e, t) { + return this._resolve(e, t).validateSync(e, t); + }), + (t.validateAt = function (e, t, r) { + return this._resolve(t, r).validateAt(e, t, r); + }), + (t.validateSyncAt = function (e, t, r) { + return this._resolve(t, r).validateSyncAt(e, t, r); + }), + e + ); + })(); + o.prototype.__isYupSchema__ = !0; + var s = o; + (t.default = s), (e.exports = t.default); + }, + 95814: (e, t, r) => { + 'use strict'; + var n = r(60087); + (t.__esModule = !0), (t.default = void 0); + var i = n(r(72912)), + o = r(79588), + s = '$', + A = '.', + a = (function () { + function e(e, t) { + if ((void 0 === t && (t = {}), 'string' != typeof e)) + throw new TypeError('ref must be a string, got: ' + e); + if (((this.key = e.trim()), '' === e)) + throw new TypeError('ref must be a non-empty string'); + (this.isContext = this.key[0] === s), + (this.isValue = this.key[0] === A), + (this.isSibling = !this.isContext && !this.isValue); + var r = this.isContext ? s : this.isValue ? A : ''; + (this.path = this.key.slice(r.length)), + (this.getter = this.path && (0, o.getter)(this.path, !0)), + (this.map = t.map); + } + var t = e.prototype; + return ( + (t.getValue = function (e) { + var t = this.isContext ? e.context : this.isValue ? e.value : e.parent; + return this.getter && (t = this.getter(t || {})), this.map && (t = this.map(t)), t; + }), + (t.cast = function (e, t) { + return this.getValue((0, i.default)({}, t, { value: e })); + }), + (t.resolve = function () { + return this; + }), + (t.describe = function () { + return { type: 'ref', key: this.key }; + }), + (t.toString = function () { + return 'Ref(' + this.key + ')'; + }), + (e.isRef = function (e) { + return e && e.__isYupRef; + }), + e + ); + })(); + (t.default = a), (a.prototype.__isYupRef = !0), (e.exports = t.default); + }, + 40828: (e, t, r) => { + 'use strict'; + var n = r(60087); + (t.__esModule = !0), (t.default = A); + var i = n(r(21043)), + o = /\$\{\s*(\w+)\s*\}/g, + s = function (e) { + return function (t) { + return e.replace(o, function (e, r) { + return (0, i.default)(t[r]); + }); + }; + }; + function A(e, t, r, n) { + var i = this; + (this.name = 'ValidationError'), + (this.value = t), + (this.path = r), + (this.type = n), + (this.errors = []), + (this.inner = []), + e && + [].concat(e).forEach(function (e) { + (i.errors = i.errors.concat(e.errors || e)), + e.inner && (i.inner = i.inner.concat(e.inner.length ? e.inner : e)); + }), + (this.message = + this.errors.length > 1 ? this.errors.length + ' errors occurred' : this.errors[0]), + Error.captureStackTrace && Error.captureStackTrace(this, A); + } + (A.prototype = Object.create(Error.prototype)), + (A.prototype.constructor = A), + (A.isError = function (e) { + return e && 'ValidationError' === e.name; + }), + (A.formatError = function (e, t) { + 'string' == typeof e && (e = s(e)); + var r = function (t) { + return (t.path = t.label || t.path || 'this'), 'function' == typeof e ? e(t) : e; + }; + return 1 === arguments.length ? r : r(t); + }), + (e.exports = t.default); + }, + 18830: (e, t, r) => { + 'use strict'; + var n = r(19228), + i = r(60087); + (t.__esModule = !0), (t.default = void 0); + var o = i(r(72912)), + s = i(r(62407)), + A = i(r(31490)), + a = i(r(71665)), + c = i(r(11050)), + u = i(r(7045)), + l = i(r(21043)), + h = i(r(16434)), + g = r(63802), + f = n(r(80180)); + function p() { + var e = (0, s.default)(['', '[', ']']); + return ( + (p = function () { + return e; + }), + e + ); + } + var d = C; + function C(e) { + var t = this; + if (!(this instanceof C)) return new C(e); + h.default.call(this, { type: 'array' }), + (this._subType = void 0), + this.withMutation(function () { + t.transform(function (e) { + if ('string' == typeof e) + try { + e = JSON.parse(e); + } catch (t) { + e = null; + } + return this.isType(e) ? e : null; + }), + e && t.of(e); + }); + } + (t.default = d), + (0, A.default)(C, h.default, { + _typeCheck: function (e) { + return Array.isArray(e); + }, + _cast: function (e, t) { + var r = this, + n = h.default.prototype._cast.call(this, e, t); + if (!this._typeCheck(n) || !this._subType) return n; + var i = !1, + o = n.map(function (e) { + var n = r._subType.cast(e, t); + return n !== e && (i = !0), n; + }); + return i ? o : n; + }, + _validate: function (e, t) { + var r = this; + void 0 === t && (t = {}); + var n = [], + i = t.sync, + s = t.path, + A = this._subType, + a = this._option('abortEarly', t), + c = this._option('recursive', t), + l = null != t.originalValue ? t.originalValue : e; + return h.default.prototype._validate + .call(this, e, t) + .catch((0, f.propagateErrors)(a, n)) + .then(function (e) { + if (!c || !A || !r._typeCheck(e)) { + if (n.length) throw n[0]; + return e; + } + l = l || e; + var h = e.map(function (r, n) { + var i = (0, u.default)(p(), t.path, n), + s = (0, o.default)({}, t, { + path: i, + strict: !0, + parent: e, + originalValue: l[n], + }); + return !A.validate || A.validate(r, s); + }); + return (0, + f.default)({ sync: i, path: s, value: e, errors: n, endEarly: a, validations: h }); + }); + }, + _isPresent: function (e) { + return h.default.prototype._cast.call(this, e) && e.length > 0; + }, + of: function (e) { + var t = this.clone(); + if (!1 !== e && !(0, c.default)(e)) + throw new TypeError( + '`array.of()` sub-schema must be a valid yup schema, or `false` to negate a current sub-schema. not: ' + + (0, l.default)(e) + ); + return (t._subType = e), t; + }, + min: function (e, t) { + return ( + (t = t || g.array.min), + this.test({ + message: t, + name: 'min', + exclusive: !0, + params: { min: e }, + test: function (t) { + return (0, a.default)(t) || t.length >= this.resolve(e); + }, + }) + ); + }, + max: function (e, t) { + return ( + (t = t || g.array.max), + this.test({ + message: t, + name: 'max', + exclusive: !0, + params: { max: e }, + test: function (t) { + return (0, a.default)(t) || t.length <= this.resolve(e); + }, + }) + ); + }, + ensure: function () { + var e = this; + return this.default(function () { + return []; + }).transform(function (t) { + return e.isType(t) ? t : null === t ? [] : [].concat(t); + }); + }, + compact: function (e) { + var t = e + ? function (t, r, n) { + return !e(t, r, n); + } + : function (e) { + return !!e; + }; + return this.transform(function (e) { + return null != e ? e.filter(t) : e; + }); + }, + describe: function () { + var e = h.default.prototype.describe.call(this); + return this._subType && (e.innerType = this._subType.describe()), e; + }, + }), + (e.exports = t.default); + }, + 76595: (e, t, r) => { + 'use strict'; + var n = r(60087); + (t.__esModule = !0), (t.default = void 0); + var i = n(r(31490)), + o = n(r(16434)), + s = A; + function A() { + var e = this; + if (!(this instanceof A)) return new A(); + o.default.call(this, { type: 'boolean' }), + this.withMutation(function () { + e.transform(function (e) { + if (!this.isType(e)) { + if (/^(true|1)$/i.test(e)) return !0; + if (/^(false|0)$/i.test(e)) return !1; + } + return e; + }); + }); + } + (t.default = s), + (0, i.default)(A, o.default, { + _typeCheck: function (e) { + return e instanceof Boolean && (e = e.valueOf()), 'boolean' == typeof e; + }, + }), + (e.exports = t.default); + }, + 41755: (e, t, r) => { + 'use strict'; + var n = r(60087); + (t.__esModule = !0), (t.default = void 0); + var i = n(r(16434)), + o = n(r(31490)), + s = n(r(76813)), + A = r(63802), + a = n(r(71665)), + c = n(r(95814)), + u = new Date(''), + l = h; + function h() { + var e = this; + if (!(this instanceof h)) return new h(); + i.default.call(this, { type: 'date' }), + this.withMutation(function () { + e.transform(function (e) { + return this.isType(e) ? e : (e = (0, s.default)(e)) ? new Date(e) : u; + }); + }); + } + (t.default = l), + (0, o.default)(h, i.default, { + _typeCheck: function (e) { + return ( + (t = e), + '[object Date]' === Object.prototype.toString.call(t) && !isNaN(e.getTime()) + ); + var t; + }, + min: function (e, t) { + void 0 === t && (t = A.date.min); + var r = e; + if (!c.default.isRef(r) && ((r = this.cast(e)), !this._typeCheck(r))) + throw new TypeError( + '`min` must be a Date or a value that can be `cast()` to a Date' + ); + return this.test({ + message: t, + name: 'min', + exclusive: !0, + params: { min: e }, + test: function (e) { + return (0, a.default)(e) || e >= this.resolve(r); + }, + }); + }, + max: function (e, t) { + void 0 === t && (t = A.date.max); + var r = e; + if (!c.default.isRef(r) && ((r = this.cast(e)), !this._typeCheck(r))) + throw new TypeError( + '`max` must be a Date or a value that can be `cast()` to a Date' + ); + return this.test({ + message: t, + name: 'max', + exclusive: !0, + params: { max: e }, + test: function (e) { + return (0, a.default)(e) || e <= this.resolve(r); + }, + }); + }, + }), + (e.exports = t.default); + }, + 15966: (e, t, r) => { + 'use strict'; + var n = r(60087); + (t.__esModule = !0), + (t.addMethod = function (e, t, r) { + if (!e || !(0, p.default)(e.prototype)) + throw new TypeError('You must provide a yup schema constructor function'); + if ('string' != typeof t) throw new TypeError('A Method name must be provided'); + if ('function' != typeof r) throw new TypeError('Method function must be provided'); + e.prototype[t] = r; + }), + (t.lazy = t.ref = t.boolean = void 0); + var i = n(r(16434)); + t.mixed = i.default; + var o = n(r(76595)); + t.bool = o.default; + var s = n(r(45167)); + t.string = s.default; + var A = n(r(72068)); + t.number = A.default; + var a = n(r(41755)); + t.date = a.default; + var c = n(r(51727)); + t.object = c.default; + var u = n(r(18830)); + t.array = u.default; + var l = n(r(95814)), + h = n(r(6856)), + g = n(r(40828)); + t.ValidationError = g.default; + var f = n(r(43910)); + t.reach = f.default; + var p = n(r(11050)); + t.isSchema = p.default; + var d = n(r(24280)); + t.setLocale = d.default; + var C = o.default; + t.boolean = C; + t.ref = function (e, t) { + return new l.default(e, t); + }; + t.lazy = function (e) { + return new h.default(e); + }; + }, + 63802: (e, t, r) => { + 'use strict'; + var n = r(60087); + (t.__esModule = !0), + (t.default = t.array = t.object = t.boolean = t.date = t.number = t.string = t.mixed = void 0); + var i = n(r(21043)), + o = { + default: '${path} is invalid', + required: '${path} is a required field', + oneOf: '${path} must be one of the following values: ${values}', + notOneOf: '${path} must not be one of the following values: ${values}', + notType: function (e) { + var t = e.path, + r = e.type, + n = e.value, + o = e.originalValue, + s = null != o && o !== n, + A = + t + + ' must be a `' + + r + + '` type, but the final value was: `' + + (0, i.default)(n, !0) + + '`' + + (s ? ' (cast from the value `' + (0, i.default)(o, !0) + '`).' : '.'); + return ( + null === n && + (A += + '\n If "null" is intended as an empty value be sure to mark the schema as `.nullable()`'), + A + ); + }, + }; + t.mixed = o; + var s = { + length: '${path} must be exactly ${length} characters', + min: '${path} must be at least ${min} characters', + max: '${path} must be at most ${max} characters', + matches: '${path} must match the following: "${regex}"', + email: '${path} must be a valid email', + url: '${path} must be a valid URL', + trim: '${path} must be a trimmed string', + lowercase: '${path} must be a lowercase string', + uppercase: '${path} must be a upper case string', + }; + t.string = s; + var A = { + min: '${path} must be greater than or equal to ${min}', + max: '${path} must be less than or equal to ${max}', + lessThan: '${path} must be less than ${less}', + moreThan: '${path} must be greater than ${more}', + notEqual: '${path} must be not equal to ${notEqual}', + positive: '${path} must be a positive number', + negative: '${path} must be a negative number', + integer: '${path} must be an integer', + }; + t.number = A; + var a = { + min: '${path} field must be later than ${min}', + max: '${path} field must be at earlier than ${max}', + }; + t.date = a; + var c = {}; + t.boolean = c; + var u = { noUnknown: '${path} field cannot have keys not specified in the object shape' }; + t.object = u; + var l = { + min: '${path} field must have at least ${min} items', + max: '${path} field must have less than or equal to ${max} items', + }; + t.array = l; + var h = { mixed: o, string: s, number: A, date: a, object: u, array: l, boolean: c }; + t.default = h; + }, + 16434: (e, t, r) => { + 'use strict'; + var n = r(60087); + (t.__esModule = !0), (t.default = E); + var i = n(r(72912)), + o = n(r(15215)), + s = n(r(26052)), + A = n(r(78700)), + a = r(63802), + c = n(r(94916)), + u = n(r(80180)), + l = n(r(22808)), + h = n(r(11050)), + g = n(r(54107)), + f = n(r(21043)), + p = n(r(95814)), + d = r(43910), + C = (function () { + function e() { + (this.list = new Set()), (this.refs = new Map()); + } + var t = e.prototype; + return ( + (t.toArray = function () { + return (0, A.default)(this.list).concat((0, A.default)(this.refs.values())); + }), + (t.add = function (e) { + p.default.isRef(e) ? this.refs.set(e.key, e) : this.list.add(e); + }), + (t.delete = function (e) { + p.default.isRef(e) ? this.refs.delete(e.key, e) : this.list.delete(e); + }), + (t.has = function (e, t) { + if (this.list.has(e)) return !0; + for (var r, n = this.refs.values(); !(r = n.next()).done; ) + if (t(r.value) === e) return !0; + return !1; + }), + e + ); + })(); + function E(e) { + var t = this; + if ((void 0 === e && (e = {}), !(this instanceof E))) return new E(); + (this._deps = []), + (this._conditions = []), + (this._options = { abortEarly: !0, recursive: !0 }), + (this._exclusive = Object.create(null)), + (this._whitelist = new C()), + (this._blacklist = new C()), + (this.tests = []), + (this.transforms = []), + this.withMutation(function () { + t.typeError(a.mixed.notType); + }), + (0, o.default)(e, 'default') && (this._defaultDefault = e.default), + (this._type = e.type || 'mixed'); + } + for ( + var I = (E.prototype = { + __isYupSchema__: !0, + constructor: E, + clone: function () { + var e = this; + return this._mutate + ? this + : (0, s.default)(this, function (t) { + if ((0, h.default)(t) && t !== e) return t; + }); + }, + label: function (e) { + var t = this.clone(); + return (t._label = e), t; + }, + meta: function (e) { + if (0 === arguments.length) return this._meta; + var t = this.clone(); + return (t._meta = (0, i.default)(t._meta || {}, e)), t; + }, + withMutation: function (e) { + var t = this._mutate; + this._mutate = !0; + var r = e(this); + return (this._mutate = t), r; + }, + concat: function (e) { + if (!e || e === this) return this; + if (e._type !== this._type && 'mixed' !== this._type) + throw new TypeError( + "You cannot `concat()` schema's of different types: " + + this._type + + ' and ' + + e._type + ); + var t = (0, l.default)(e.clone(), this); + return ( + (0, o.default)(e, '_default') && (t._default = e._default), + (t.tests = this.tests), + (t._exclusive = this._exclusive), + t.withMutation(function (t) { + e.tests.forEach(function (e) { + t.test(e.OPTIONS); + }); + }), + t + ); + }, + isType: function (e) { + return !(!this._nullable || null !== e) || !this._typeCheck || this._typeCheck(e); + }, + resolve: function (e) { + var t = this; + if (t._conditions.length) { + var r = t._conditions; + ((t = t.clone())._conditions = []), + (t = (t = r.reduce(function (t, r) { + return r.resolve(t, e); + }, t)).resolve(e)); + } + return t; + }, + cast: function (e, t) { + void 0 === t && (t = {}); + var r = this.resolve((0, i.default)({}, t, { value: e })), + n = r._cast(e, t); + if (void 0 !== e && !1 !== t.assert && !0 !== r.isType(n)) { + var o = (0, f.default)(e), + s = (0, f.default)(n); + throw new TypeError( + 'The value of ' + + (t.path || 'field') + + ' could not be cast to a value that satisfies the schema type: "' + + r._type + + '". \n\nattempted value: ' + + o + + ' \n' + + (s !== o ? 'result of cast: ' + s : '') + ); + } + return n; + }, + _cast: function (e) { + var t = this, + r = + void 0 === e + ? e + : this.transforms.reduce(function (r, n) { + return n.call(t, r, e); + }, e); + return void 0 === r && (0, o.default)(this, '_default') && (r = this.default()), r; + }, + _validate: function (e, t) { + var r = this; + void 0 === t && (t = {}); + var n = e, + o = null != t.originalValue ? t.originalValue : e, + s = this._option('strict', t), + A = this._option('abortEarly', t), + a = t.sync, + c = t.path, + l = this._label; + s || (n = this._cast(n, (0, i.default)({ assert: !1 }, t))); + var h = { + value: n, + path: c, + schema: this, + options: t, + label: l, + originalValue: o, + sync: a, + }, + g = []; + return ( + this._typeError && g.push(this._typeError(h)), + this._whitelistError && g.push(this._whitelistError(h)), + this._blacklistError && g.push(this._blacklistError(h)), + (0, u.default)({ validations: g, endEarly: A, value: n, path: c, sync: a }).then( + function (e) { + return (0, u.default)({ + path: c, + sync: a, + value: e, + endEarly: A, + validations: r.tests.map(function (e) { + return e(h); + }), + }); + } + ) + ); + }, + validate: function (e, t) { + return ( + void 0 === t && (t = {}), + this.resolve((0, i.default)({}, t, { value: e }))._validate(e, t) + ); + }, + validateSync: function (e, t) { + var r, n; + if ( + (void 0 === t && (t = {}), + this.resolve((0, i.default)({}, t, { value: e })) + ._validate(e, (0, i.default)({}, t, { sync: !0 })) + .then(function (e) { + return (r = e); + }) + .catch(function (e) { + return (n = e); + }), + n) + ) + throw n; + return r; + }, + isValid: function (e, t) { + return this.validate(e, t) + .then(function () { + return !0; + }) + .catch(function (e) { + if ('ValidationError' === e.name) return !1; + throw e; + }); + }, + isValidSync: function (e, t) { + try { + return this.validateSync(e, t), !0; + } catch (e) { + if ('ValidationError' === e.name) return !1; + throw e; + } + }, + getDefault: function (e) { + return void 0 === e && (e = {}), this.resolve(e).default(); + }, + default: function (e) { + if (0 === arguments.length) { + var t = (0, o.default)(this, '_default') ? this._default : this._defaultDefault; + return 'function' == typeof t ? t.call(this) : (0, s.default)(t); + } + var r = this.clone(); + return (r._default = e), r; + }, + strict: function (e) { + void 0 === e && (e = !0); + var t = this.clone(); + return (t._options.strict = e), t; + }, + _isPresent: function (e) { + return null != e; + }, + required: function (e) { + return ( + void 0 === e && (e = a.mixed.required), + this.test({ + message: e, + name: 'required', + exclusive: !0, + test: function (e) { + return this.schema._isPresent(e); + }, + }) + ); + }, + notRequired: function () { + var e = this.clone(); + return ( + (e.tests = e.tests.filter(function (e) { + return 'required' !== e.OPTIONS.name; + })), + e + ); + }, + nullable: function (e) { + void 0 === e && (e = !0); + var t = this.clone(); + return (t._nullable = e), t; + }, + transform: function (e) { + var t = this.clone(); + return t.transforms.push(e), t; + }, + test: function () { + var e; + if ( + (void 0 === + (e = + 1 === arguments.length + ? 'function' == typeof (arguments.length <= 0 ? void 0 : arguments[0]) + ? { test: arguments.length <= 0 ? void 0 : arguments[0] } + : arguments.length <= 0 + ? void 0 + : arguments[0] + : 2 === arguments.length + ? { + name: arguments.length <= 0 ? void 0 : arguments[0], + test: arguments.length <= 1 ? void 0 : arguments[1], + } + : { + name: arguments.length <= 0 ? void 0 : arguments[0], + message: arguments.length <= 1 ? void 0 : arguments[1], + test: arguments.length <= 2 ? void 0 : arguments[2], + }).message && (e.message = a.mixed.default), + 'function' != typeof e.test) + ) + throw new TypeError('`test` is a required parameters'); + var t = this.clone(), + r = (0, g.default)(e), + n = e.exclusive || (e.name && !0 === t._exclusive[e.name]); + if (e.exclusive && !e.name) + throw new TypeError( + 'Exclusive tests must provide a unique `name` identifying the test' + ); + return ( + (t._exclusive[e.name] = !!e.exclusive), + (t.tests = t.tests.filter(function (t) { + if (t.OPTIONS.name === e.name) { + if (n) return !1; + if (t.OPTIONS.test === r.OPTIONS.test) return !1; + } + return !0; + })), + t.tests.push(r), + t + ); + }, + when: function (e, t) { + 1 === arguments.length && ((t = e), (e = '.')); + var r = this.clone(), + n = [].concat(e).map(function (e) { + return new p.default(e); + }); + return ( + n.forEach(function (e) { + e.isSibling && r._deps.push(e.key); + }), + r._conditions.push(new c.default(n, t)), + r + ); + }, + typeError: function (e) { + var t = this.clone(); + return ( + (t._typeError = (0, g.default)({ + message: e, + name: 'typeError', + test: function (e) { + return ( + !(void 0 !== e && !this.schema.isType(e)) || + this.createError({ params: { type: this.schema._type } }) + ); + }, + })), + t + ); + }, + oneOf: function (e, t) { + void 0 === t && (t = a.mixed.oneOf); + var r = this.clone(); + return ( + e.forEach(function (e) { + r._whitelist.add(e), r._blacklist.delete(e); + }), + (r._whitelistError = (0, g.default)({ + message: t, + name: 'oneOf', + test: function (e) { + if (void 0 === e) return !0; + var t = this.schema._whitelist; + return ( + !!t.has(e, this.resolve) || + this.createError({ params: { values: t.toArray().join(', ') } }) + ); + }, + })), + r + ); + }, + notOneOf: function (e, t) { + void 0 === t && (t = a.mixed.notOneOf); + var r = this.clone(); + return ( + e.forEach(function (e) { + r._blacklist.add(e), r._whitelist.delete(e); + }), + (r._blacklistError = (0, g.default)({ + message: t, + name: 'notOneOf', + test: function (e) { + var t = this.schema._blacklist; + return ( + !t.has(e, this.resolve) || + this.createError({ params: { values: t.toArray().join(', ') } }) + ); + }, + })), + r + ); + }, + strip: function (e) { + void 0 === e && (e = !0); + var t = this.clone(); + return (t._strip = e), t; + }, + _option: function (e, t) { + return (0, o.default)(t, e) ? t[e] : this._options[e]; + }, + describe: function () { + var e = this.clone(); + return { + type: e._type, + meta: e._meta, + label: e._label, + tests: e.tests + .map(function (e) { + return { name: e.OPTIONS.name, params: e.OPTIONS.params }; + }) + .filter(function (e, t, r) { + return ( + r.findIndex(function (t) { + return t.name === e.name; + }) === t + ); + }), + }; + }, + }), + m = ['validate', 'validateSync'], + y = function () { + var e = m[w]; + I[e + 'At'] = function (t, r, n) { + void 0 === n && (n = {}); + var o = (0, d.getIn)(this, t, r, n.context), + s = o.parent, + A = o.parentPath; + return o.schema[e](s && s[A], (0, i.default)({}, n, { parent: s, path: t })); + }; + }, + w = 0; + w < m.length; + w++ + ) + y(); + for (var B = ['equals', 'is'], Q = 0; Q < B.length; Q++) { + I[B[Q]] = I.oneOf; + } + for (var v = ['not', 'nope'], D = 0; D < v.length; D++) { + I[v[D]] = I.notOneOf; + } + (I.optional = I.notRequired), (e.exports = t.default); + }, + 72068: (e, t, r) => { + 'use strict'; + var n = r(60087); + (t.__esModule = !0), (t.default = c); + var i = n(r(31490)), + o = n(r(16434)), + s = r(63802), + A = n(r(71665)), + a = function (e) { + return (0, A.default)(e) || e === (0 | e); + }; + function c() { + var e = this; + if (!(this instanceof c)) return new c(); + o.default.call(this, { type: 'number' }), + this.withMutation(function () { + e.transform(function (e) { + var t = e; + if ('string' == typeof t) { + if ('' === (t = t.replace(/\s/g, ''))) return NaN; + t = +t; + } + return this.isType(t) ? t : parseFloat(t); + }); + }); + } + (0, i.default)(c, o.default, { + _typeCheck: function (e) { + return ( + e instanceof Number && (e = e.valueOf()), + 'number' == typeof e && + !(function (e) { + return e != +e; + })(e) + ); + }, + min: function (e, t) { + return ( + void 0 === t && (t = s.number.min), + this.test({ + message: t, + name: 'min', + exclusive: !0, + params: { min: e }, + test: function (t) { + return (0, A.default)(t) || t >= this.resolve(e); + }, + }) + ); + }, + max: function (e, t) { + return ( + void 0 === t && (t = s.number.max), + this.test({ + message: t, + name: 'max', + exclusive: !0, + params: { max: e }, + test: function (t) { + return (0, A.default)(t) || t <= this.resolve(e); + }, + }) + ); + }, + lessThan: function (e, t) { + return ( + void 0 === t && (t = s.number.lessThan), + this.test({ + message: t, + name: 'max', + exclusive: !0, + params: { less: e }, + test: function (t) { + return (0, A.default)(t) || t < this.resolve(e); + }, + }) + ); + }, + moreThan: function (e, t) { + return ( + void 0 === t && (t = s.number.moreThan), + this.test({ + message: t, + name: 'min', + exclusive: !0, + params: { more: e }, + test: function (t) { + return (0, A.default)(t) || t > this.resolve(e); + }, + }) + ); + }, + positive: function (e) { + return void 0 === e && (e = s.number.positive), this.moreThan(0, e); + }, + negative: function (e) { + return void 0 === e && (e = s.number.negative), this.lessThan(0, e); + }, + integer: function (e) { + return ( + void 0 === e && (e = s.number.integer), + this.test({ name: 'integer', message: e, test: a }) + ); + }, + truncate: function () { + return this.transform(function (e) { + return (0, A.default)(e) ? e : 0 | e; + }); + }, + round: function (e) { + var t = ['ceil', 'floor', 'round', 'trunc']; + if ('trunc' === (e = (e && e.toLowerCase()) || 'round')) return this.truncate(); + if (-1 === t.indexOf(e.toLowerCase())) + throw new TypeError('Only valid options for round() are: ' + t.join(', ')); + return this.transform(function (t) { + return (0, A.default)(t) ? t : Math[e](t); + }); + }, + }), + (e.exports = t.default); + }, + 51727: (e, t, r) => { + 'use strict'; + var n = r(19228), + i = r(60087); + (t.__esModule = !0), (t.default = B); + var o = i(r(62407)), + s = i(r(72912)), + A = i(r(15215)), + a = i(r(36494)), + c = i(r(89170)), + u = i(r(5253)), + l = i(r(89612)), + h = r(79588), + g = i(r(16434)), + f = r(63802), + p = i(r(18417)), + d = i(r(23316)), + C = i(r(31490)), + E = i(r(7045)), + I = n(r(80180)); + function m() { + var e = (0, o.default)(['', '.', '']); + return ( + (m = function () { + return e; + }), + e + ); + } + function y() { + var e = (0, o.default)(['', '.', '']); + return ( + (y = function () { + return e; + }), + e + ); + } + var w = function (e) { + return '[object Object]' === Object.prototype.toString.call(e); + }; + function B(e) { + var t = this; + if (!(this instanceof B)) return new B(e); + g.default.call(this, { + type: 'object', + default: function () { + var e = this; + if (this._nodes.length) { + var t = {}; + return ( + this._nodes.forEach(function (r) { + t[r] = e.fields[r].default ? e.fields[r].default() : void 0; + }), + t + ); + } + }, + }), + (this.fields = Object.create(null)), + (this._nodes = []), + (this._excludedEdges = []), + this.withMutation(function () { + t.transform(function (e) { + if ('string' == typeof e) + try { + e = JSON.parse(e); + } catch (t) { + e = null; + } + return this.isType(e) ? e : null; + }), + e && t.shape(e); + }); + } + (0, C.default)(B, g.default, { + _typeCheck: function (e) { + return w(e) || 'function' == typeof e; + }, + _cast: function (e, t) { + var r = this; + void 0 === t && (t = {}); + var n = g.default.prototype._cast.call(this, e, t); + if (void 0 === n) return this.default(); + if (!this._typeCheck(n)) return n; + var i = this.fields, + o = !0 === this._option('stripUnknown', t), + a = this._nodes.concat( + Object.keys(n).filter(function (e) { + return -1 === r._nodes.indexOf(e); + }) + ), + c = {}, + u = (0, s.default)({}, t, { parent: c, __validating: !1 }), + l = !1; + return ( + a.forEach(function (e) { + var r = i[e], + s = (0, A.default)(n, e); + if (r) { + var a, + h = r._options && r._options.strict; + if ( + ((u.path = (0, E.default)(y(), t.path, e)), + (u.value = n[e]), + !0 === (r = r.resolve(u))._strip) + ) + return void (l = l || e in n); + void 0 !== (a = t.__validating && h ? n[e] : r.cast(n[e], u)) && (c[e] = a); + } else s && !o && (c[e] = n[e]); + c[e] !== n[e] && (l = !0); + }), + l ? c : n + ); + }, + _validate: function (e, t) { + var r, + n, + i = this; + void 0 === t && (t = {}); + var o = t.sync, + A = [], + a = null != t.originalValue ? t.originalValue : e; + return ( + (r = this._option('abortEarly', t)), + (n = this._option('recursive', t)), + (t = (0, s.default)({}, t, { __validating: !0, originalValue: a })), + g.default.prototype._validate + .call(this, e, t) + .catch((0, I.propagateErrors)(r, A)) + .then(function (e) { + if (!n || !w(e)) { + if (A.length) throw A[0]; + return e; + } + a = a || e; + var c = i._nodes.map(function (r) { + var n = (0, E.default)(m(), t.path, r), + o = i.fields[r], + A = (0, s.default)({}, t, { path: n, parent: e, originalValue: a[r] }); + return o && o.validate + ? ((A.strict = !0), o.validate(e[r], A)) + : Promise.resolve(!0); + }); + return (0, + I.default)({ sync: o, validations: c, value: e, errors: A, endEarly: r, path: t.path, sort: (0, d.default)(i.fields) }); + }) + ); + }, + concat: function (e) { + var t = g.default.prototype.concat.call(this, e); + return (t._nodes = (0, p.default)(t.fields, t._excludedEdges)), t; + }, + shape: function (e, t) { + void 0 === t && (t = []); + var r = this.clone(), + n = (0, s.default)(r.fields, e); + if (((r.fields = n), t.length)) { + Array.isArray(t[0]) || (t = [t]); + var i = t.map(function (e) { + return e[0] + '-' + e[1]; + }); + r._excludedEdges = r._excludedEdges.concat(i); + } + return (r._nodes = (0, p.default)(n, r._excludedEdges)), r; + }, + from: function (e, t, r) { + var n = (0, h.getter)(e, !0); + return this.transform(function (i) { + if (null == i) return i; + var o = i; + return ( + (0, A.default)(i, e) && + ((o = (0, s.default)({}, i)), r || delete o[e], (o[t] = n(i))), + o + ); + }); + }, + noUnknown: function (e, t) { + void 0 === e && (e = !0), + void 0 === t && (t = f.object.noUnknown), + 'string' == typeof e && ((t = e), (e = !0)); + var r = this.test({ + name: 'noUnknown', + exclusive: !0, + message: t, + test: function (t) { + return ( + null == t || + !e || + 0 === + (function (e, t) { + var r = Object.keys(e.fields); + return Object.keys(t).filter(function (e) { + return -1 === r.indexOf(e); + }); + })(this.schema, t).length + ); + }, + }); + return (r._options.stripUnknown = e), r; + }, + unknown: function (e, t) { + return ( + void 0 === e && (e = !0), + void 0 === t && (t = f.object.noUnknown), + this.noUnknown(!e, t) + ); + }, + transformKeys: function (e) { + return this.transform(function (t) { + return ( + t && + (0, u.default)(t, function (t, r) { + return e(r); + }) + ); + }); + }, + camelCase: function () { + return this.transformKeys(c.default); + }, + snakeCase: function () { + return this.transformKeys(a.default); + }, + constantCase: function () { + return this.transformKeys(function (e) { + return (0, a.default)(e).toUpperCase(); + }); + }, + describe: function () { + var e = g.default.prototype.describe.call(this); + return ( + (e.fields = (0, l.default)(this.fields, function (e) { + return e.describe(); + })), + e + ); + }, + }), + (e.exports = t.default); + }, + 24280: (e, t, r) => { + 'use strict'; + var n = r(60087); + (t.__esModule = !0), + (t.default = function (e) { + Object.keys(e).forEach(function (t) { + Object.keys(e[t]).forEach(function (r) { + i.default[t][r] = e[t][r]; + }); + }); + }); + var i = n(r(63802)); + e.exports = t.default; + }, + 45167: (e, t, r) => { + 'use strict'; + var n = r(60087); + (t.__esModule = !0), (t.default = l); + var i = n(r(31490)), + o = n(r(16434)), + s = r(63802), + A = n(r(71665)), + a = /^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))$/i, + c = /^((https?|ftp):)?\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i, + u = function (e) { + return (0, A.default)(e) || e === e.trim(); + }; + function l() { + var e = this; + if (!(this instanceof l)) return new l(); + o.default.call(this, { type: 'string' }), + this.withMutation(function () { + e.transform(function (e) { + return this.isType(e) ? e : null != e && e.toString ? e.toString() : e; + }); + }); + } + (0, i.default)(l, o.default, { + _typeCheck: function (e) { + return e instanceof String && (e = e.valueOf()), 'string' == typeof e; + }, + _isPresent: function (e) { + return o.default.prototype._cast.call(this, e) && e.length > 0; + }, + length: function (e, t) { + return ( + void 0 === t && (t = s.string.length), + this.test({ + message: t, + name: 'length', + exclusive: !0, + params: { length: e }, + test: function (t) { + return (0, A.default)(t) || t.length === this.resolve(e); + }, + }) + ); + }, + min: function (e, t) { + return ( + void 0 === t && (t = s.string.min), + this.test({ + message: t, + name: 'min', + exclusive: !0, + params: { min: e }, + test: function (t) { + return (0, A.default)(t) || t.length >= this.resolve(e); + }, + }) + ); + }, + max: function (e, t) { + return ( + void 0 === t && (t = s.string.max), + this.test({ + name: 'max', + exclusive: !0, + message: t, + params: { max: e }, + test: function (t) { + return (0, A.default)(t) || t.length <= this.resolve(e); + }, + }) + ); + }, + matches: function (e, t) { + var r, + n = !1; + return ( + t && + (t.message || t.hasOwnProperty('excludeEmptyString') + ? ((n = t.excludeEmptyString), (r = t.message)) + : (r = t)), + this.test({ + message: r || s.string.matches, + params: { regex: e }, + test: function (t) { + return (0, A.default)(t) || ('' === t && n) || e.test(t); + }, + }) + ); + }, + email: function (e) { + return ( + void 0 === e && (e = s.string.email), + this.matches(a, { message: e, excludeEmptyString: !0 }) + ); + }, + url: function (e) { + return ( + void 0 === e && (e = s.string.url), + this.matches(c, { message: e, excludeEmptyString: !0 }) + ); + }, + ensure: function () { + return this.default('').transform(function (e) { + return null === e ? '' : e; + }); + }, + trim: function (e) { + return ( + void 0 === e && (e = s.string.trim), + this.transform(function (e) { + return null != e ? e.trim() : e; + }).test({ message: e, name: 'trim', test: u }) + ); + }, + lowercase: function (e) { + return ( + void 0 === e && (e = s.string.lowercase), + this.transform(function (e) { + return (0, A.default)(e) ? e : e.toLowerCase(); + }).test({ + message: e, + name: 'string_case', + exclusive: !0, + test: function (e) { + return (0, A.default)(e) || e === e.toLowerCase(); + }, + }) + ); + }, + uppercase: function (e) { + return ( + void 0 === e && (e = s.string.uppercase), + this.transform(function (e) { + return (0, A.default)(e) ? e : e.toUpperCase(); + }).test({ + message: e, + name: 'string_case', + exclusive: !0, + test: function (e) { + return (0, A.default)(e) || e === e.toUpperCase(); + }, + }) + ); + }, + }), + (e.exports = t.default); + }, + 54107: (e, t, r) => { + 'use strict'; + var n = r(60087); + (t.__esModule = !0), + (t.createErrorFactory = l), + (t.default = function (e) { + var t = e.name, + r = e.message, + n = e.test, + s = e.params; + function u(e) { + var u = e.value, + h = e.path, + g = e.label, + f = e.options, + p = e.originalValue, + d = e.sync, + C = (0, i.default)(e, [ + 'value', + 'path', + 'label', + 'options', + 'originalValue', + 'sync', + ]), + E = f.parent, + I = function (e) { + return a.default.isRef(e) + ? e.getValue({ value: u, parent: E, context: f.context }) + : e; + }, + m = l({ + message: r, + path: h, + value: u, + originalValue: p, + params: s, + label: g, + resolve: I, + name: t, + }), + y = (0, o.default)( + { path: h, parent: E, type: t, createError: m, resolve: I, options: f }, + C + ); + return (function (e, t, r, n) { + var i = e.call(t, r); + if (!n) return Promise.resolve(i); + if (((o = i), o && 'function' == typeof o.then && 'function' == typeof o.catch)) + throw new Error( + 'Validation test of type: "' + + t.type + + '" returned a Promise during a synchronous validate. This test will finish after the validate call has returned' + ); + var o; + return c.SynchronousPromise.resolve(i); + })(n, y, u, d).then(function (e) { + if (A.default.isError(e)) throw e; + if (!e) throw m(); + }); + } + return (u.OPTIONS = e), u; + }); + var i = n(r(74943)), + o = n(r(72912)), + s = n(r(89612)), + A = n(r(40828)), + a = n(r(95814)), + c = r(93255), + u = A.default.formatError; + function l(e) { + var t = e.value, + r = e.label, + n = e.resolve, + a = e.originalValue, + c = (0, i.default)(e, ['value', 'label', 'resolve', 'originalValue']); + return function (e) { + var i = void 0 === e ? {} : e, + l = i.path, + h = void 0 === l ? c.path : l, + g = i.message, + f = void 0 === g ? c.message : g, + p = i.type, + d = void 0 === p ? c.name : p, + C = i.params; + return ( + (C = (0, o.default)( + { path: h, value: t, originalValue: a, label: r }, + (function (e, t, r) { + return (0, s.default)((0, o.default)({}, e, t), r); + })(c.params, C, n) + )), + (0, o.default)(new A.default(u(f, C), t, h, d), { params: C }) + ); + }; + } + }, + 31490: (e, t, r) => { + 'use strict'; + var n = r(60087); + (t.__esModule = !0), + (t.default = function (e, t, r) { + (e.prototype = Object.create(t.prototype, { + constructor: { value: e, enumerable: !1, writable: !0, configurable: !0 }, + })), + (0, i.default)(e.prototype, r); + }); + var i = n(r(72912)); + e.exports = t.default; + }, + 71665: (e, t) => { + 'use strict'; + (t.__esModule = !0), (t.default = void 0); + (t.default = function (e) { + return null == e; + }), + (e.exports = t.default); + }, + 11050: (e, t) => { + 'use strict'; + (t.__esModule = !0), (t.default = void 0); + (t.default = function (e) { + return e && e.__isYupSchema__; + }), + (e.exports = t.default); + }, + 76813: (e, t) => { + 'use strict'; + (t.__esModule = !0), + (t.default = function (e) { + var t, + n, + i = [1, 4, 5, 6, 7, 10, 11], + o = 0; + if ((n = r.exec(e))) { + for (var s, A = 0; (s = i[A]); ++A) n[s] = +n[s] || 0; + (n[2] = (+n[2] || 1) - 1), + (n[3] = +n[3] || 1), + (n[7] = n[7] ? String(n[7]).substr(0, 3) : 0), + (void 0 !== n[8] && '' !== n[8]) || (void 0 !== n[9] && '' !== n[9]) + ? ('Z' !== n[8] && + void 0 !== n[9] && + ((o = 60 * n[10] + n[11]), '+' === n[9] && (o = 0 - o)), + (t = Date.UTC(n[1], n[2], n[3], n[4], n[5] + o, n[6], n[7]))) + : (t = +new Date(n[1], n[2], n[3], n[4], n[5], n[6], n[7])); + } else t = Date.parse ? Date.parse(e) : NaN; + return t; + }); + var r = /^(\d{4}|[+\-]\d{6})(?:-?(\d{2})(?:-?(\d{2}))?)?(?:[ T]?(\d{2}):?(\d{2})(?::?(\d{2})(?:[,\.](\d{1,}))?)?(?:(Z)|([+\-])(\d{2})(?::?(\d{2}))?)?)?$/; + e.exports = t.default; + }, + 7045: (e, t) => { + 'use strict'; + (t.__esModule = !0), + (t.default = function (e) { + for (var t = arguments.length, r = new Array(t > 1 ? t - 1 : 0), n = 1; n < t; n++) + r[n - 1] = arguments[n]; + var i = e.reduce(function (e, t) { + var n = r.shift(); + return e + (null == n ? '' : n) + t; + }); + return i.replace(/^\./, ''); + }), + (e.exports = t.default); + }, + 22808: (e, t, r) => { + 'use strict'; + var n = r(60087); + (t.__esModule = !0), + (t.default = function e(t, r) { + for (var n in r) + if ((0, i.default)(r, n)) { + var A = r[n], + a = t[n]; + if (void 0 === a) t[n] = A; + else { + if (a === A) continue; + (0, o.default)(a) + ? (0, o.default)(A) && (t[n] = A.concat(a)) + : s(a) + ? s(A) && (t[n] = e(a, A)) + : Array.isArray(a) && Array.isArray(A) && (t[n] = A.concat(a)); + } + } + return t; + }); + var i = n(r(15215)), + o = n(r(11050)), + s = function (e) { + return '[object Object]' === Object.prototype.toString.call(e); + }; + e.exports = t.default; + }, + 21043: (e, t) => { + 'use strict'; + (t.__esModule = !0), + (t.default = function (e, t) { + var r = A(e, t); + return null !== r + ? r + : JSON.stringify( + e, + function (e, r) { + var n = A(this[e], t); + return null !== n ? n : r; + }, + 2 + ); + }); + var r = Object.prototype.toString, + n = Error.prototype.toString, + i = RegExp.prototype.toString, + o = + 'undefined' != typeof Symbol + ? Symbol.prototype.toString + : function () { + return ''; + }, + s = /^Symbol\((.*)\)(.*)$/; + function A(e, t) { + if ((void 0 === t && (t = !1), null == e || !0 === e || !1 === e)) return '' + e; + var A = typeof e; + if ('number' === A) + return (function (e) { + return e != +e ? 'NaN' : 0 === e && 1 / e < 0 ? '-0' : '' + e; + })(e); + if ('string' === A) return t ? '"' + e + '"' : e; + if ('function' === A) return '[Function ' + (e.name || 'anonymous') + ']'; + if ('symbol' === A) return o.call(e).replace(s, 'Symbol($1)'); + var a = r.call(e).slice(8, -1); + return 'Date' === a + ? isNaN(e.getTime()) + ? '' + e + : e.toISOString(e) + : 'Error' === a || e instanceof Error + ? '[' + n.call(e) + ']' + : 'RegExp' === a + ? i.call(e) + : null; + } + e.exports = t.default; + }, + 43910: (e, t, r) => { + 'use strict'; + var n = r(60087); + (t.__esModule = !0), (t.getIn = s), (t.default = void 0); + var i = r(79588), + o = n(r(15215)); + function s(e, t, r, n) { + var s, A, a; + return ( + (n = n || r), + t + ? ((0, i.forEach)(t, function (i, c, u) { + var l = c + ? (function (e) { + return e.substr(0, e.length - 1).substr(1); + })(i) + : i; + if (u || (0, o.default)(e, '_subType')) { + var h = u ? parseInt(l, 10) : 0; + if (((e = e.resolve({ context: n, parent: s, value: r })._subType), r)) { + if (u && h >= r.length) + throw new Error( + 'Yup.reach cannot resolve an array item at index: ' + + i + + ', in the path: ' + + t + + '. because there is no value at that index. ' + ); + r = r[h]; + } + } + if (!u) { + if ( + ((e = e.resolve({ context: n, parent: s, value: r })), + !(0, o.default)(e, 'fields') || !(0, o.default)(e.fields, l)) + ) + throw new Error( + 'The schema does not contain the path: ' + + t + + '. (failed at: ' + + a + + ' which is a type: "' + + e._type + + '") ' + ); + (e = e.fields[l]), + (s = r), + (r = r && r[l]), + (A = l), + (a = c ? '[' + i + ']' : '.' + i); + } + }), + { schema: e, parent: s, parentPath: A }) + : { parent: s, parentPath: t, schema: e } + ); + } + var A = function (e, t, r, n) { + return s(e, t, r, n).schema; + }; + t.default = A; + }, + 80180: (e, t, r) => { + 'use strict'; + var n = r(60087); + (t.__esModule = !0), + (t.propagateErrors = function (e, t) { + return e + ? null + : function (e) { + return t.push(e), e.value; + }; + }), + (t.settled = a), + (t.collectErrors = c), + (t.default = function (e) { + var t = e.endEarly, + r = (0, i.default)(e, ['endEarly']); + return t + ? (function (e, t, r) { + return A(r) + .all(e) + .catch(function (e) { + throw ('ValidationError' === e.name && (e.value = t), e); + }) + .then(function () { + return t; + }); + })(r.validations, r.value, r.sync) + : c(r); + }); + var i = n(r(74943)), + o = r(93255), + s = n(r(40828)), + A = function (e) { + return e ? o.SynchronousPromise : Promise; + }; + function a(e, t) { + var r = A(t); + return r.all( + e.map(function (e) { + return r.resolve(e).then( + function (e) { + return { fulfilled: !0, value: e }; + }, + function (e) { + return { fulfilled: !1, value: e }; + } + ); + }) + ); + } + function c(e) { + var t = e.validations, + r = e.value, + n = e.path, + i = e.sync, + o = e.errors, + A = e.sort; + return ( + (o = (function (e) { + return void 0 === e && (e = []), e.inner && e.inner.length ? e.inner : [].concat(e); + })(o)), + a(t, i).then(function (e) { + var t = e + .filter(function (e) { + return !e.fulfilled; + }) + .reduce(function (e, t) { + var r = t.value; + if (!s.default.isError(r)) throw r; + return e.concat(r); + }, []); + if ((A && t.sort(A), (o = t.concat(o)).length)) throw new s.default(o, r, n); + return r; + }) + ); + } + }, + 23316: (e, t) => { + 'use strict'; + function r(e, t) { + var r = 1 / 0; + return ( + e.some(function (e, n) { + if (-1 !== t.path.indexOf(e)) return (r = n), !0; + }), + r + ); + } + (t.__esModule = !0), + (t.default = function (e) { + var t = Object.keys(e); + return function (e, n) { + return r(t, e) - r(t, n); + }; + }), + (e.exports = t.default); + }, + 18417: (e, t, r) => { + 'use strict'; + var n = r(60087); + (t.__esModule = !0), + (t.default = function (e, t) { + void 0 === t && (t = []); + var r = [], + n = []; + function c(e, i) { + var o = (0, s.split)(e)[0]; + ~n.indexOf(o) || n.push(o), ~t.indexOf(i + '-' + o) || r.push([i, o]); + } + for (var u in e) + if ((0, i.default)(e, u)) { + var l = e[u]; + ~n.indexOf(u) || n.push(u), + A.default.isRef(l) && l.isSibling + ? c(l.path, u) + : (0, a.default)(l) && + l._deps && + l._deps.forEach(function (e) { + return c(e, u); + }); + } + return o.default.array(n, r).reverse(); + }); + var i = n(r(15215)), + o = n(r(75158)), + s = r(79588), + A = n(r(95814)), + a = n(r(11050)); + e.exports = t.default; + }, + 38422: (e) => { + 'use strict'; + e.exports = { u2: 'yup' }; + }, + 60306: (e) => { + 'use strict'; + e.exports = JSON.parse( + '{"name":"@yarnpkg/cli","version":"2.1.1","license":"BSD-2-Clause","main":"./sources/index.ts","dependencies":{"@yarnpkg/core":"workspace:^2.1.1","@yarnpkg/fslib":"workspace:^2.1.0","@yarnpkg/libzip":"workspace:^2.1.0","@yarnpkg/parsers":"workspace:^2.1.0","@yarnpkg/plugin-compat":"workspace:^2.1.0","@yarnpkg/plugin-dlx":"workspace:^2.1.0","@yarnpkg/plugin-essentials":"workspace:^2.1.0","@yarnpkg/plugin-file":"workspace:^2.1.0","@yarnpkg/plugin-git":"workspace:^2.1.0","@yarnpkg/plugin-github":"workspace:^2.1.0","@yarnpkg/plugin-http":"workspace:^2.1.0","@yarnpkg/plugin-init":"workspace:^2.1.0","@yarnpkg/plugin-link":"workspace:^2.1.0","@yarnpkg/plugin-node-modules":"workspace:^2.1.0","@yarnpkg/plugin-npm":"workspace:^2.1.0","@yarnpkg/plugin-npm-cli":"workspace:^2.1.0","@yarnpkg/plugin-pack":"workspace:^2.1.0","@yarnpkg/plugin-patch":"workspace:^2.1.0","@yarnpkg/plugin-pnp":"workspace:^2.1.0","@yarnpkg/shell":"workspace:^2.1.0","chalk":"^3.0.0","clipanion":"^2.4.2","fromentries":"^1.2.0","semver":"^7.1.2","tslib":"^1.13.0","yup":"^0.27.0"},"devDependencies":{"@types/yup":"0.26.12","@yarnpkg/builder":"workspace:^2.1.0","@yarnpkg/monorepo":"workspace:0.0.0","@yarnpkg/pnpify":"workspace:^2.1.0","micromatch":"^4.0.2","typescript":"^3.9.5"},"peerDependencies":{"@yarnpkg/core":"^2.1.1"},"scripts":{"postpack":"rm -rf lib","prepack":"run build:compile \\"$(pwd)\\"","build:cli+hook":"run build:pnp:hook && builder build bundle","build:cli":"builder build bundle","run:cli":"builder run","update-local":"run build:cli --no-git-hash && rsync -a --delete bundles/ bin/"},"publishConfig":{"main":"./lib/index.js","types":"./lib/index.d.ts","bin":null},"files":["/lib/**/*","!/lib/pluginConfiguration.*","!/lib/cli.*"],"@yarnpkg/builder":{"bundles":{"standard":["@yarnpkg/plugin-essentials","@yarnpkg/plugin-compat","@yarnpkg/plugin-dlx","@yarnpkg/plugin-file","@yarnpkg/plugin-git","@yarnpkg/plugin-github","@yarnpkg/plugin-http","@yarnpkg/plugin-init","@yarnpkg/plugin-link","@yarnpkg/plugin-node-modules","@yarnpkg/plugin-npm","@yarnpkg/plugin-npm-cli","@yarnpkg/plugin-pack","@yarnpkg/plugin-patch","@yarnpkg/plugin-pnp"]}},"repository":{"type":"git","url":"ssh://git@github.com/yarnpkg/berry.git"},"engines":{"node":">=10.19.0"}}' + ); + }, + 98497: (e) => { + function t(e) { + var t = new Error("Cannot find module '" + e + "'"); + throw ((t.code = 'MODULE_NOT_FOUND'), t); + } + (t.keys = () => []), (t.resolve = t), (t.id = 98497), (e.exports = t); + }, + 73841: (e) => { + 'use strict'; + e.exports = JSON.parse('{"u2":"@yarnpkg/core"}'); + }, + 32178: (e) => { + function t(e) { + var t = new Error("Cannot find module '" + e + "'"); + throw ((t.code = 'MODULE_NOT_FOUND'), t); + } + (t.keys = () => []), (t.resolve = t), (t.id = 32178), (e.exports = t); + }, + 4670: (e) => { + 'use strict'; + e.exports = JSON.parse('{"u2":"@yarnpkg/fslib"}'); + }, + 81386: (e) => { + 'use strict'; + e.exports = JSON.parse('{"u2":"@yarnpkg/libzip"}'); + }, + 3368: (e, t, r) => { + var n, + i = Object.assign({}, r(35747)), + o = void 0 !== o ? o : {}, + s = {}; + for (n in o) o.hasOwnProperty(n) && (s[n] = o[n]); + var A, + a, + c, + u, + l = [], + h = ''; + (h = __dirname + '/'), + (A = function (e, t) { + var n = Be(e); + return n + ? t + ? n + : n.toString() + : (c || (c = i), + u || (u = r(85622)), + (e = u.normalize(e)), + c.readFileSync(e, t ? null : 'utf8')); + }), + (a = function (e) { + var t = A(e, !0); + return t.buffer || (t = new Uint8Array(t)), I(t.buffer), t; + }), + process.argv.length > 1 && process.argv[1].replace(/\\/g, '/'), + (l = process.argv.slice(2)), + (e.exports = o), + (o.inspect = function () { + return '[Emscripten Module object]'; + }); + var g = o.print || console.log.bind(console), + f = o.printErr || console.warn.bind(console); + for (n in s) s.hasOwnProperty(n) && (o[n] = s[n]); + (s = null), + o.arguments && (l = o.arguments), + o.thisProgram && o.thisProgram, + o.quit && o.quit; + var p, d; + o.wasmBinary && (p = o.wasmBinary), + o.noExitRuntime && o.noExitRuntime, + 'object' != typeof WebAssembly && f('no native wasm support detected'); + var C = new WebAssembly.Table({ initial: 31, maximum: 31, element: 'anyfunc' }), + E = !1; + function I(e, t) { + e || Z('Assertion failed: ' + t); + } + function m(e) { + var t = o['_' + e]; + return I(t, 'Cannot call unknown function ' + e + ', make sure it is exported'), t; + } + function y(e, t, r, n, i) { + var o = { + string: function (e) { + var t = 0; + if (null != e && 0 !== e) { + var r = 1 + (e.length << 2); + D(e, (t = Re(r)), r); + } + return t; + }, + array: function (e) { + var t = Re(e.length); + return ( + (function (e, t) { + x.set(e, t); + })(e, t), + t + ); + }, + }; + var s = m(e), + A = [], + a = 0; + if (n) + for (var c = 0; c < n.length; c++) { + var u = o[r[c]]; + u ? (0 === a && (a = Me()), (A[c] = u(n[c]))) : (A[c] = n[c]); + } + var l = s.apply(null, A); + return ( + (l = (function (e) { + return 'string' === t ? Q(e) : 'boolean' === t ? Boolean(e) : e; + })(l)), + 0 !== a && Ne(a), + l + ); + } + var w = 'undefined' != typeof TextDecoder ? new TextDecoder('utf8') : void 0; + function B(e, t, r) { + for (var n = t + r, i = t; e[i] && !(i >= n); ) ++i; + if (i - t > 16 && e.subarray && w) return w.decode(e.subarray(t, i)); + for (var o = ''; t < i; ) { + var s = e[t++]; + if (128 & s) { + var A = 63 & e[t++]; + if (192 != (224 & s)) { + var a = 63 & e[t++]; + if ( + (s = + 224 == (240 & s) + ? ((15 & s) << 12) | (A << 6) | a + : ((7 & s) << 18) | (A << 12) | (a << 6) | (63 & e[t++])) < 65536 + ) + o += String.fromCharCode(s); + else { + var c = s - 65536; + o += String.fromCharCode(55296 | (c >> 10), 56320 | (1023 & c)); + } + } else o += String.fromCharCode(((31 & s) << 6) | A); + } else o += String.fromCharCode(s); + } + return o; + } + function Q(e, t) { + return e ? B(F, e, t) : ''; + } + function v(e, t, r, n) { + if (!(n > 0)) return 0; + for (var i = r, o = r + n - 1, s = 0; s < e.length; ++s) { + var A = e.charCodeAt(s); + if (A >= 55296 && A <= 57343) + A = (65536 + ((1023 & A) << 10)) | (1023 & e.charCodeAt(++s)); + if (A <= 127) { + if (r >= o) break; + t[r++] = A; + } else if (A <= 2047) { + if (r + 1 >= o) break; + (t[r++] = 192 | (A >> 6)), (t[r++] = 128 | (63 & A)); + } else if (A <= 65535) { + if (r + 2 >= o) break; + (t[r++] = 224 | (A >> 12)), + (t[r++] = 128 | ((A >> 6) & 63)), + (t[r++] = 128 | (63 & A)); + } else { + if (r + 3 >= o) break; + (t[r++] = 240 | (A >> 18)), + (t[r++] = 128 | ((A >> 12) & 63)), + (t[r++] = 128 | ((A >> 6) & 63)), + (t[r++] = 128 | (63 & A)); + } + } + return (t[r] = 0), r - i; + } + function D(e, t, r) { + return v(e, F, t, r); + } + function b(e) { + for (var t = 0, r = 0; r < e.length; ++r) { + var n = e.charCodeAt(r); + n >= 55296 && + n <= 57343 && + (n = (65536 + ((1023 & n) << 10)) | (1023 & e.charCodeAt(++r))), + n <= 127 ? ++t : (t += n <= 2047 ? 2 : n <= 65535 ? 3 : 4); + } + return t; + } + function S(e) { + var t = b(e) + 1, + r = Ke(t); + return r && v(e, x, r, t), r; + } + var k, x, F, M, N, R, K; + function L(e) { + (k = e), + (o.HEAP8 = x = new Int8Array(e)), + (o.HEAP16 = M = new Int16Array(e)), + (o.HEAP32 = N = new Int32Array(e)), + (o.HEAPU8 = F = new Uint8Array(e)), + (o.HEAPU16 = new Uint16Array(e)), + (o.HEAPU32 = new Uint32Array(e)), + (o.HEAPF32 = R = new Float32Array(e)), + (o.HEAPF64 = K = new Float64Array(e)); + } + var T = o.INITIAL_MEMORY || 16777216; + function P(e) { + for (; e.length > 0; ) { + var t = e.shift(); + if ('function' != typeof t) { + var r = t.func; + 'number' == typeof r + ? void 0 === t.arg + ? o.dynCall_v(r) + : o.dynCall_vi(r, t.arg) + : r(void 0 === t.arg ? null : t.arg); + } else t(o); + } + } + (d = o.wasmMemory + ? o.wasmMemory + : new WebAssembly.Memory({ initial: T / 65536, maximum: 32768 })) && (k = d.buffer), + (T = k.byteLength), + L(k), + (N[5160] = 5263680); + var U = [], + _ = [], + O = [], + j = []; + var Y = Math.abs, + G = Math.ceil, + J = Math.floor, + H = Math.min, + q = 0, + z = null, + W = null; + function V(e) { + q++, o.monitorRunDependencies && o.monitorRunDependencies(q); + } + function X(e) { + if ( + (q--, + o.monitorRunDependencies && o.monitorRunDependencies(q), + 0 == q && (null !== z && (clearInterval(z), (z = null)), W)) + ) { + var t = W; + (W = null), t(); + } + } + function Z(e) { + throw ( + (o.onAbort && o.onAbort(e), + g((e += '')), + f(e), + (E = !0), + 1, + (e = 'abort(' + e + '). Build with -s ASSERTIONS=1 for more info.'), + new WebAssembly.RuntimeError(e)) + ); + } + (o.preloadedImages = {}), (o.preloadedAudios = {}); + function $(e) { + return ( + (t = e), + (r = 'data:application/octet-stream;base64,'), + String.prototype.startsWith ? t.startsWith(r) : 0 === t.indexOf(r) + ); + var t, r; + } + var ee, + te, + re = + 'data:application/octet-stream;base64,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BRAiGiABKAIMKAIABEAgASgCDCgCABAcCyABKAIMEBYLIAFBEGokAAuBAgEBfyMAQRBrIgEkACABIAA2AgwgASABKAIMKAIcNgIEIAEoAgQQ6gIgASABKAIEKAIUNgIIIAEoAgggASgCDCgCEEsEQCABIAEoAgwoAhA2AggLAkAgASgCCEUNACABKAIMKAIMIAEoAgQoAhAgASgCCBAaGiABKAIMIgAgASgCCCAAKAIMajYCDCABKAIEIgAgASgCCCAAKAIQajYCECABKAIMIgAgASgCCCAAKAIUajYCFCABKAIMIgAgACgCECABKAIIazYCECABKAIEIgAgACgCFCABKAIIazYCFCABKAIEKAIUDQAgASgCBCABKAIEKAIINgIQCyABQRBqJAALYAEBfyMAQRBrIgEkACABIAA2AgggASABKAIIQgIQHzYCBAJAIAEoAgRFBEAgAUEAOwEODAELIAEgASgCBC0AACABKAIELQABQQh0ajsBDgsgAS8BDiEAIAFBEGokACAAC1oBAX8jAEEgayICJAAgAiAANgIcIAIgATcDECACIAIoAhwgAikDEBDPATYCDCACKAIMBEAgAigCHCIAIAIpAxAgACkDEHw3AxALIAIoAgwhACACQSBqJAAgAAtvAQF/IwBBEGsiAiQAIAIgADYCCCACIAE7AQYgAiACKAIIQgIQHzYCAAJAIAIoAgBFBEAgAkF/NgIMDAELIAIoAgAgAi8BBjoAACACKAIAIAIvAQZBCHU6AAEgAkEANgIMCyACKAIMGiACQRBqJAALjwEBAX8jAEEQayICJAAgAiAANgIIIAIgATYCBCACIAIoAghCBBAfNgIAAkAgAigCAEUEQCACQX82AgwMAQsgAigCACACKAIEOgAAIAIoAgAgAigCBEEIdjoAASACKAIAIAIoAgRBEHY6AAIgAigCACACKAIEQRh2OgADIAJBADYCDAsgAigCDBogAkEQaiQAC7YCAQF/IwBBMGsiBCQAIAQgADYCJCAEIAE2AiAgBCACNwMYIAQgAzYCFAJAIAQoAiQpAxhCASAEKAIUrYaDUARAIAQoAiRBDGpBHEEAEBUgBEJ/NwMoDAELAkAgBCgCJCgCAEUEQCAEIAQoAiQoAgggBCgCICAEKQMYIAQoAhQgBCgCJCgCBBEPADcDCAwBCyAEIAQoAiQoAgAg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BCgCLEGUAWogBCgCLEGIE2oQtgELCyAEKAIsELkBIAQoAiAEQCAEKAIsELgBCyAEQTBqJAAL1AEBAX8jAEEgayICJAAgAiAANgIYIAIgATcDECACIAIoAhhFOgAPAkAgAigCGEUEQCACIAIpAxCnEBkiADYCGCAARQRAIAJBADYCHAwCCwsgAkEYEBkiADYCCCAARQRAIAItAA9BAXEEQCACKAIYEBYLIAJBADYCHAwBCyACKAIIQQE6AAAgAigCCCACKAIYNgIEIAIoAgggAikDEDcDCCACKAIIQgA3AxAgAigCCCACLQAPQQFxOgABIAIgAigCCDYCHAsgAigCHCEAIAJBIGokACAAC3gBAX8jAEEQayIBJAAgASAANgIIIAEgASgCCEIEEB82AgQCQCABKAIERQRAIAFBADYCDAwBCyABIAEoAgQtAAAgASgCBC0AASABKAIELQACIAEoAgQtAANBCHRqQQh0akEIdGo2AgwLIAEoAgwhACABQRBqJAAgAAuQAQEDfyAAIQECQAJAIABBA3FFDQAgAC0AAEUEQEEADwsDQCABQQFqIgFBA3FFDQEgAS0AAA0ACwwBCwNAIAEiAkEEaiEBIAIoAgAiA0F/cyADQf/9+3dqcUGAgYKEeHFFDQALIANB/wFxRQRAIAIgAGsPCwNAIAItAAEhAyACQQFqIgEhAiADDQALCyABIABrC2EBAX8jAEEQayICIAA2AgggAiABNwMAAkAgAikDACACKAIIKQMIVgRAIAIoAghBADoAACACQX82AgwMAQsgAigCCEEBOgAAIAIoAgggAikDADcDECACQQA2AgwLIAIoAgwL7wEBAX8jAEEgayICJAAgAiAANgIYIAIgATcDECACIAIoAhhCCBAfNgIMAkAgAigCDEUEQCACQX82AhwMAQsgAigCDCACKQMQQv8BgzwAACACKAIMIAIpAxBCCIhC/wGDPAABIAIoAgwgAikDEEIQiEL/AYM8AAIgAigCDCACKQMQQhiIQv8BgzwAAyACKAIMIAIpAxBCIIhC/wGDPAAEIAIoAgwgAikDEEIoiEL/AYM8AAUgAigCDCACKQMQQjCIQv8BgzwABiACKAIMIAIpAxBCOIhC/wGDPAAHIAJBADYCHAsgAigCHBogAkEgaiQAC4sDAQF/IwBBMGsiAyQAIAMgADYCJCADIAE2AiAgAyACNwMYAkAgAygCJC0AKEEBcQRAIANCfzcDKAwBCwJAAkAgAygCJCgCIEEATQ0AIAMpAxhC////////////AFYNACADKQMYQgBYDQEgAygCIA0BCyADKAIkQQxqQRJBABAVIANCfzcDKAwBCyADKAIkLQA1QQFxBEAgA0J/NwMoDAELAn8jAEEQayIAIAMoAiQ2AgwgACgCDC0ANEEBcQsEQCADQgA3AygMAQsgAykDGFAEQCADQgA3AygMAQsgA0IANwMQA0AgAykDECADKQMYVARAIAMgAygCJCADKAIgIAMpAxCnaiADKQMYIAMpAxB9QQEQIiICNwMIIAJCAFMEQCADKAIkQQE6ADUgAykDEFAEQCADQn83AygMBAsgAyADKQMQNwMoDAMLIAMpAwhQBEAgAygCJEEBOgA0BSADIAMpAwggAykDEHw3AxAMAgsLCyADIAMpAxA3AygLIAMpAyghAiADQTBqJAAgAgs2AQF/IwBBEGsiASAANgIMAn4gASgCDC0AAEEBcQRAIAEoAgwpAwggASgCDCkDEH0MAQtCAAsLsgECAX8BfiMAQRBrIgEkACABIAA2AgQgASABKAIEQggQHzYCAAJAIAEoAgBFBEAgAUIANwMIDAELIAEgASgCAC0AAK0gASgCAC0AB61COIYgASgCAC0ABq1CMIZ8IAEoAgAtAAWtQiiGfCABKAIALQAErUIghnwgASgCAC0AA61CGIZ8IAEoAgAtAAKtQhCGfCABKAIALQABrUIIhnx8NwMICyABKQMIIQIgAUEQaiQAIAILqAEBAX8jAEEQayIBJAAgASAANgIIAkAgASgCCCgCIEEATQRAIAEoAghBDGpBEkEAEBUgAUF/NgIMDAELIAEoAggiACAAKAIgQX9qNgIgIAEoAggoAiBFBEAgASgCCEEAQgBBAhAiGiABKAIIKAIABEAgASgCCCgCABAyQQBIBEAgASgCCEEMakEUQQAQFQsLCyABQQA2AgwLIAEoAgwhACABQRBqJAAgAAvxAgICfwF+AkAgAkUNACAAIAJqIgNBf2ogAToAACAAIAE6AAAgAkEDSQ0AIANBfmogAToAACAAIAE6AAEgA0F9aiABOgAAIAAgAToAAiACQQdJDQAgA0F8aiABOgAAIAAgAToAAyACQQlJDQAgAEEAIABrQQNxIgRqIgMg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KAIUIANBngFqIANBnAFqEMQBIAMoAkwgAy8BngEQICADKAJMIAMvAZwBECACQAJAIAMtAIUBQQFxRQ0AIAMoAqQBKQMoQhRaDQAgAygCTEEAECEMAQsgAygCTCADKAKkASgCGBAhCwJAAkAgAygCoAFBgAJxQYACRw0AIAMoAqQBKQMgQv////8PVARAIAMoAqQBKQMoQv////8PVA0BCyADKAJMQX8QISADKAJMQX8QIQwBCwJAIAMoAqQBKQMgQv////8PVARAIAMoAkwgAygCpAEpAyCnECEMAQsgAygCTEF/ECELAkAgAygCpAEpAyhC/////w9UBEAgAygCTCADKAKkASkDKKcQIQwBCyADKAJMQX8QIQsLIAMoAkwgAygCpAEoAjAQUkH//wNxECAgAyADKAKkASgCNCADKAKgARCEAUH//wNxIAMoApABQYAGEIQBQf//A3FqNgKIASADKAJMIAMoAogBQf//A3EQICADKAKgAUGAAnFFBEAgAygCTCADKAKkASgCOBBSQf//A3EQICADKAJMIAMoAqQBKAI8Qf//A3EQICADKAJMIAMoAqQBLwFAECAgAygCTCADKAKkASgCRBAhAkAgAygCpAEpA0hC/////w9UBEAgAygCTCADKAKkASkDSKcQIQwBCyADKAJMQX8QIQsLAn8jAEEQayIAIAMoAkw2AgwgACgCDC0AAEEBcUULBEAgAygCqAFBCGpBFEEAEBUgAygCTBAXIAMoApABECQgA0F/NgKsAQwBCyADKAKoASADQdAAagJ+IwBBEGsiACADKAJMNgIMAn4gACgCDC0AAEEBcQRAIAAoAgwpAxAMAQtCAAsLEDZBAEgEQCADKAJMEBcgAygCkAEQJCADQX82AqwBDAELIAMoAkwQFyADKAKkASgCMARAIAMoAqgBIAMoAqQBKAIwEIgBQQBIBEAgAygCkAEQJCADQX82AqwBDAILCyADKAKQAQRAIAMoAqgBIAMoApABQYAGEIMBQQBIBEAgAygCkAEQJCADQX82AqwBDAILCyADKAKQARAkIAMoAqQBKAI0BEAgAygCqAEgAygCpAEoAjQgAygCoAEQgwFBAEgEQCADQX82AqwBDAILCyADKAKgAUGAAnFFBEAgAygCpAEoAjgEQCADKAKoASADKAKkASgCOBCIAUEASARAIANBfzYC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AygCgAEoAgAgAykDcKdBBHRqKAIAKAI0IAMoAjQQhwEhACADKAKAASgCACADKQNwp0EEdGooAgAgADYCNCADKAKAASgCACADKQNwp0EEdGooAgBBAToABCADQQA2AjQgAxBcIAMgAykDcEIBfDcDcAwCCwALCyADAn4gAykDYCADKQNofUL///////////8AVARAIAMpA2AgAykDaH0MAQtC////////////AAs3A4gBCyADKQOIASEEIANBkAFqJAAgBAumAQEBfyMAQSBrIgMkACADIAA2AhggAyABNgIUIAMgAjYCECADIAMoAhAQ+gEiADYCDAJAIABFBEAgA0EANgIcDAELIAMoAgwgAygCGDYCACADKAIMIAMoAhQ2AgQgAygCFEEQcQRAIAMoAgwiACAAKAIUQQJyNgIUIAMoAgwiACAAKAIYQQJyNgIYCyADIAMoAgw2AhwLIAMoAhwhACADQSBqJAAgAAvVAQEBfyMAQSBrIgQkACAEIAA2AhggBCABNwMQIAQgAjYCDCAEIAM2AggCQAJAIAQpAxBC////////////AFcEQCAEKQMQQoCAgICAgICAgH9ZDQELIAQoAghBBEE9EBUgBEF/NgIcDAELAn8gBCkDECEBIAQoAgwhACAEKAIYIgIoAkxBf0wEQCACIAEgABCXAQwBCyACIAEgABCXAQtBAEgEQCAEKAIIQQRBtJwBKAIAEBUgBEF/NgIcDAELIARBADYCHAsgBCgCHCEAIARBIGokACAACycAAn9BAEEAIAAQBSIAIABBG0YbIgBFDQAaQbScASAANgIAQQALGgteAQF/IwBBEGsiAyQAIAMgAUHAgIACcQR/IAMgAkEEajYCDCACKAIABUEACzYCACAAIAFBgIACciADEBEiAEGBYE8EQEG0nAFBACAAazYCAEF/IQALIANBEGokACAACzMBAX8CfyAAEAYiAUFhRgRAIAAQEiEBCyABQYFgTwsEf0G0nAFBACABazYCAEF/BSABCwtpAQJ/AkAgACgCFCAAKAIcTQ0AIABBAEEAIAAoAiQRAQAaIAAoAhQNAEF/DwsgACgCBCIBIAAoAggiAkkEQCAAIAEgAmusQQEgACgCKBEQABoLIABBADYCHCAAQgA3AxAgAEIANwIEQQALpgEBAX8jAEEQayICJAAgAiAANgIIIAIgATYC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AX8jAEEQayICIAA2AgggAiABNgIEAkACQAJAIAIoAggpAyhC/////w9aDQAgAigCCCkDIEL/////D1oNACACKAIEQYAEcUUNASACKAIIKQNIQv////8PVA0BCyACQQE6AA8MAQsgAkEAOgAPCyACLQAPQQFxC7QCAQF/IwBBMGsiAyQAIAMgADYCKCADIAE3AyAgAyACNgIcAkAgAykDIFAEQCADQQE6AC8MAQsgAyADKAIoKQMQIAMpAyB8NwMIAkAgAykDCCADKQMgWgRAIAMpAwhC/////wBYDQELIAMoAhxBDkEAEBUgA0EAOgAvDAELIAMgAygCKCgCACADKQMIp0EEdBBPIgA2AgQgAEUEQCADKAIcQQ5BABAVIANBADoALwwBCyADKAIoIAMoAgQ2AgAgAyADKAIoKQMINwMQA0AgAykDECADKQMIWkUEQCADKAIoKAIAIAMpAxCnQQR0ahCOASADIAMpAxBCAXw3AxAMAQsLIAMoAiggAykDCCIBNwMQIAMoAiggATcDCCADQQE6AC8LIAMtAC9BAXEhACADQTBqJAAgAAvMAQEBfyMAQSBrIgIkACACIAA3AxAgAiABNgIMIAJBMBAZIgE2AggCQCABRQRAIAIoAgxBDkEAEBUgAkEANgIcDAELIAIoAghBADYCACACKAIIQgA3AxAgAigCCEIANwMIIAIoAghCADcDICACKAIIQgA3AxggAigCCEEANgIoIAIoAghBADoALCACKAIIIAIpAxAgAigCDBCBAUEBcUUEQCACKAIIECUgAkEANgIcDAELIAIgAigCCDYCHAsgAigCHCEBIAJBIGokACABC9kCAQF/IwBBIGsiAyQAIAMgADYCGCADIAE2AhQgAyACNgIQIAMgA0EMakIEECo2AggCQCADKAIIRQRAIANBfzYCHAwBCwNAIAMoAhQEQCADKAIUKAIEIAMoAhBxQYAGcQRAIAMoAghCABAtGiADKAIIIAMoAhQvAQgQICADKAIIIAMoAhQvAQoQIAJ/IwBBEGsiACADKAIINgIMIAAoAgwtAABBAXFFCwRAIAMoAhhBCGpBFEEAEBUgAygCCBAXIANBfzYCHAwECyADKAIYIANBDGpCBBA2QQBIBEAgAygCCBAXIANBfzYCHAwECyADKAIULwEKQQBKBEAgAygCGCADKAIUKAIMIAMo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AgggASgCBEEANgIgIAEoAgRBADYCJCABKAIEQQA6ACggASgCBEEANgIsIAEoAgRBATYCMCMAQRBrIgAgASgCBEEMajYCDCAAKAIMQQA2AgAgACgCDEEANgIEIAAoAgxBADYCCCABKAIEQQA6ADQgASgCBEEAOgA1IAEgASgCBDYCDAsgASgCDCEAIAFBEGokACAAC4IFAQF/IwBB4ABrIgMkACADIAA2AlggAyABNgJUIAMgAjYCUAJAAkAgAygCVEEATgRAIAMoAlgNAQsgAygCUEESQQAQFSADQQA2AlwMAQsgAyADKAJUNgJMIwBBEGsiACADKAJYNgIMIAMgACgCDCkDGDcDQEHgmwEpAwBCf1EEQCADQX82AhQgA0EDNgIQIANBBzYCDCADQQY2AgggA0ECNgIEIANBATYCAEHgmwFBACADEDc3AwAgA0F/NgI0IANBDzYCMCADQQ02AiwgA0EMNgIoIANBCjYCJCADQQk2AiBB6JsBQQggA0EgahA3NwMAC0HgmwEpAwAgAykDQEHgmwEpAwCDUgRAIAMoAlBBHEEAEBUgA0EANgJcDAELQeibASkDACADKQNAQeibASkDAINSBEAgAyADKAJMQRByNgJMCyADKAJMQRhxQRhGBEAgAygCUEEZQQAQFSADQQA2AlwMAQsgAyADKAJYIAMoAlAQ+AE2AjwCQAJAAkAgAygCPEEBag4CAAECCyADQQA2AlwMAgsgAygCTEEBcUUEQCADKAJQQQlBABAVIANBADYCXAwCCyADIAMoAlggAygCTCADKAJQEGY2AlwMAQsgAygCTEECcQRAIAMoAlBBCkEAEBUgA0EANgJcDAELIAMoAlgQSUEASARAIAMoAlAgAygCWBAYIANBADYCXAwBCwJAIAMoAkxBCHEEQCADIAMoAlggAygCTCADKAJQEGY2AjgMAQsgAyADKAJYIAMoAkwgAygCUBD3ATYCOAsgAygCOEUEQCADKAJYEDIaIANBADYCXAwBCyADIAMoAjg2AlwLIAMoAlwhACADQeAAaiQAIAALjgEBAX8jAEEQayICJAAgAiAANgIMIAIgATYCCCACQQA2AgQgAigCCARAIwBBEGsiACACKAIINgIMIAIgACgCDCgCADYCBCACKAIIELABQQFGBEAjAEEQayIAIAIoAgg2AgxBtJwBIAAoAgwoAgQ2AgALCyACKAIMBEAgAigCDCACKAIENgIACyACQRBqJAALlQEBAX8jAEEQayIBJAAgASAANgIIAkACfyMAQRBrIgAgASgCCDYCDCAAKAIMKQMYQoCAEINQCwRAIAEoAggoAgAEQCABIAEoAggoAgAQlAFBAXE6AA8MAgsgAUEBOgAPDAELIAEgASgCCEEAQgBBEhAiPgIEIAEgASgCBEEARzoADwsgAS0AD0EBcSEAIAFBEGokACAAC7ABAgF/AX4jAEEgayIDJAAgAyAANgIYIAMgATYCFCADIAI2AhAgAyADKAIQEJEBIgA2AgwCQCAARQRAIANBADYCHAwBCyADKAIMIAMoAhg2AgQgAygCDCADKAIUNgIIIAMoAhRBAEIAQQ4gAygCGBEPACEEIAMoAgwgBDcDGCADKAIMKQMYQgBTBEAgAygCDEI/NwMYCyADIAMoAgw2AhwLIAMoAhwhACADQSBqJAAgAAt/AQF/IwBBIGsiAyQAIAMgADYCGCADIAE3AxAgA0EANgIMIAMgAjYCCAJAIAMpAxBC////////////AFYEQCADKAIIQQRBPRAVIANBfzYCHAwBCyADIAMoAhggAykDECADKAIMIAMoAggQZzYCHAsgAygCHCEAIANBIGokACAAC30AIAJBAUYEQCABIAAoAgggACgCBGusfSEBCwJAIAAoAhQgACgCHEsEQCAAQQBBACAAKAIkEQEAGiAAKAIURQ0BCyAAQQA2AhwgAEIANwMQIAAgASACIAAoAigREABCAFMNACAAQgA3AgQgACAAKAIAQW9xNgIAQQAPC0F/C+ICAQJ/IwBBIGsiAyQAAn8CQAJAQfSXASABLAAAEJkBRQRAQbScAUEcNgIADAELQZgJEBkiAg0BC0EADAELIAJBAEGQARAzIAFBKxCZAUUEQCACQQhBBCABLQAAQfIARhs2AgALAkAgAS0AAEHhAEcEQCACKAIAIQEMAQsgAEEDQQAQBCIBQYAIcUUEQCADIAFBgAhyNgIQIABBBCADQRBqEAQaCyACIAIoAgBBgAFyIgE2AgALIAJB/wE6AEsgAkGACDYCMCACIAA2AjwgAiACQZgBajYCLAJAIAFBCHENACADIANBGGo2AgAgAEGTqAEgAxAODQAgAkEKOgBLCyACQRo2AiggAkEbNgIkIAJBHDYCICACQR02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GCACKAIoKAIAKAIEaksEQCACIAIoAhggAigCKCgCACgCBGo2AhwLIAIoAhwgAigCFEsEQCACIAIoAhQ2AhwLAkAgAigCHCACKAIgTw0AAkAgAigCHEUEQCACKAIkQQRHDQELIAIoAiRFDQAgAigCHCACKAIYIAIoAigoAgAoAgRqRg0BCwwBC0EAIQAgAkEBQQAgAigCJEEERgR/IAIoAhwgAigCGCACKAIoKAIAKAIEakYFQQALQQFxGzYCECACKAIoQQBBACACKAIQEFcgAigCKCgCCCACKAIoKAIUQQRraiACKAIcOgAAIAIoAigoAgggAigCKCgCFEEDa2ogAigCHEEIdjoAACACKAIoKAIIIAIoAigoAhRBAmtqIAIoAhxBf3M6AAAgAigCKCgCCCACKAIoKAIUQQFraiACKAIcQX9zQQh2OgAAIAIoAigoAgAQHSACKAIYBEAgAigCGCACKAIcSwRAIAIgAigCHDYCGAsgAigCKCgCACgCDCACKAIoKAI4IAIoAigoAlxqIAIoAhgQGhogAigCKCgCACIAIAIoAhggACgCDGo2AgwgAigCKCgCACIAIAAoAhAgAigCGGs2AhAgAigCKCgCACIAIAIoAhggACgCFGo2AhQgAigCKCIAIAIoAhggACgCXGo2AlwgAiACKAIcIAIoAhhrNgIcCyACKAIcBEAgAigCKCgCACACKAIoKAIAKAIMIAIoAhwQcxogAigCKCgCACIAIAIoAhwgACgCDGo2AgwgAigCKCgCACIAIAAoAhAgAigCHGs2AhAgAigCKCgCACIAIAIoAhwgACgCFGo2AhQLIAIoAhBFDQELCyACIAIoAgwgAigCKCgCACgCBGs2AgwgAigCDARAAkAgAigCDCACKAIoKAIsTwRAIAIoAihBAjYCsC0gAigCKCgCOCACKAIoKAIAKAIAIAIoAigoAixrIAIoAigoAiwQGhogAigCKCACKAIoKAIsNgJsDAELIAIoAigoAjwgAigCKCgCbGsgAigCDE0EQCACKAIoIgAgACgCbCACKAIoKAIsazYCbCACKAIoKAI4IAIoAigoAjggAigCKCgCLGogAigCKCgCbBAaGiACKAIoKAKwLUECSQRAIAIoAigiACAAKAKwLUEBajYCsC0LCyACKAIoKAI4IAIoAigoAmxqIAIoAigoAgAoAgAg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akECdGovAQI2AhQgAyADKAIQQQFqIgA2AhACQAJAIAAgAygCDE4NACADKAIYIAMoAhRHDQAMAQsCQCADKAIQIAMoAghIBEAgAygCLEH8FGogAygCGEECdGoiACADKAIQIAAvAQBqOwEADAELAkAgAygCGARAIAMoAhggAygCHEcEQCADKAIsIAMoAhhBAnRqQfwUaiIAIAAvAQBBAWo7AQALIAMoAiwiACAAQbwVai8BAEEBajsBvBUMAQsCQCADKAIQQQpMBEAgAygCLCIAIABBwBVqLwEAQQFqOwHAFQwBCyADKAIsIgAgAEHEFWovAQBBAWo7AcQVCwsLIANBADYCECADIAMoAhg2AhwCQCADKAIURQRAIANBigE2AgwgA0EDNgIIDAELAkAgAygCGCADKAIURgRAIANBBjYCDCADQQM2AggMAQsgA0EHNgIMIANBBDYCCAsLCyADIAMoAiBBAWo2AiAMAQsLC6cSAQJ/IwBB0ABrIgMgADYCTCADIAE2AkggAyACNgJEIANBADYCOCADKAJMKAKgLQRAA0AgAyADKAJMKAKkLSADKAI4QQF0ai8BADYCQCADKAJMKAKYLSEAIAMgAygCOCIBQQFqNgI4IAMgACABai0AADYCPAJAIAMoAkBFBEAgAyADKAJIIAMoAjxBAnRqLwECNgIsAkAgAygCTCgCvC1BECADKAIsa0oEQCADIAMoAkggAygCPEECdGovAQA2AiggAygCTCIAIAAvAbgtIAMoAihB//8DcSADKAJMKAK8LXRyOwG4LSADKAJMLwG4LUH/AXEhASADKAJMKAIIIQIgAygCTCIEKAIUIQAgBCAAQQFqNgIUIAAgAmogAToAACADKAJMLwG4LUEIdSEBIAMoAkwoAgghAiADKAJMIgQoAhQhACAEIABBAWo2AhQgACACaiABOgAAIAMoAkwgAygCKEH//wNxQRAgAygCTCgCvC1rdTsBuC0gAygCTCIAIAAoArwtIAMoAixBEGtqNgK8LQwBCyADKAJMIgAgAC8BuC0gAygCSCADKAI8QQJ0ai8BACADKAJMKAK8LXRyOwG4LSADKAJMIgAgAygCLCAAKAK8LWo2ArwtCwwBCyADIAMoAjwtAIBZNgI0IAMgAygCSCADKAI0QYECakECdGovAQI2AiQCQCADKAJMKAK8LUEQIAMoAiRr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AixBLRAgIAMoAixBABAhIAMoAixBABAhIAMoAiwgAykDqAEQLiADKAIsIAMpA6gBEC4gAygCLCADKQOYARAuIAMoAiwgAykDoAEQLiADKAIsQbvTAEEEEEAgAygCLEEAECEgAygCLCADKQOgASADKQOYAXwQLiADKAIsQQEQIQsgAygCLEHA0wBBBBBAIAMoAixBABAhIAMoAiwCfkL//wMgAykDqAFC//8DWg0AGiADKQOoAQunQf//A3EQICADKAIsAn5C//8DIAMpA6gBQv//A1oNABogAykDqAELp0H//wNxECAgAygCLAJ/QX8gAykDmAFC/////w9aDQAaIAMpA5gBpwsQISADKAIsAn9BfyADKQOgAUL/////D1oNABogAykDoAGnCxAhIAMCfyADKAK0AS0AKEEBcQRAIAMoArQBKAIkDAELIAMoArQBKAIgCzYClAEgAygCLAJ/IAMoApQBBEAgAygClAEvAQQMAQtBAAtB//8DcRAgAn8jAEEQayIAIAMoAiw2AgwgACgCDC0AAEEBcUULBEAgAygCtAFBCGpBFEEAEBUgAygCLBAXIANCfzcDuAEMAQsgAygCtAECfyMAQRBrIgAgAygCLDYCDCAAKAIMKAIECwJ+IwBBEGsiACADKAIsNgIMAn4gACgCDC0AAEEBcQRAIAAoAgwpAxAMAQtCAAsLEDZBAEgEQCADKAIsEBcgA0J/NwO4AQwBCyADKAIsEBcgAygClAEEQCADKAK0ASADKAKUASgCACADKAKUAS8BBK0QNkEASARAIANCfzcDuAEMAgsLIAMgAykDmAE3A7gBCyADKQO4ASECIANBwAFqJAAgAgu2BQEBfyMAQTBrIgIkACACIAA2AiggAiABNwMgAkAgAikDICACKAIoKQMwWgRAIAIoAihBCGpBEkEAEBUgAkF/NgIsDAELIAIgAigCKCgCQCACKQMgp0EEdGo2AhwCQCACKAIcKAIABEAgAigCHCgCAC0ABEEBcUUNAQsgAkEANgIsDAELIAIoAhwoAgApA0hCGnxC////////////AFYEQCACKAIoQQhqQQRBFhAVIAJBfzYCLAwBCyACKAIoKAIAIAIoAhwoAgApA0hCGnxBABAoQQBIBEAgAigCKEEIaiACKAIoKAIAEBggAkF/NgIsDAELIAIgAigCKCgCAEIEIAJBGGogAigCKEEIahBBIgA2AhQgAEUEQCACQX82AiwMAQsgAiACKAIUEB47ARIgAiACKAIUEB47ARAgAigCFBBIQQFxRQRAIAIoAhQQFyACKAIoQQhqQRRBABAVIAJBfzYCLAwBCyACKAIUEBcgAi8BEEEASgRAIAIoAigoAgAgAi8BEq1BARAoQQBIBEAgAigCKEEIakEEQbScASgCABAVIAJBfzYCLAwCCyACQQAgAigCKCgCACACLwEQQQAgAigCKEEIahBgNgIIIAIoAghFBEAgAkF/NgIsDAILIAIoAgggAi8BEEGAAiACQQxqIAIoAihBCGoQhgFBAXFFBEAgAigCCBAWIAJBfzYCLAwCCyACKAIIEBYgAigCDARAIAIgAigCDBCFATYCDCACKAIcKAIAKAI0IAIoAgwQhwEhACACKAIcKAIAIAA2AjQLCyACKAIcKAIAQQE6AAQCQCACKAIcKAIERQ0AIAIoAhwoAgQtAARBAXENACACKAIcKAIEIAIoAhwoAgAoAjQ2AjQgAigCHCgCBEEBOgAECyACQQA2AiwLIAIoAiwhACACQTBqJAAgAAsGAEG0nAELjAEBAX8jAEEgayICJAAgAiAANgIYIAIgATYCFCACQQA2AhACQCACKAIURQRAIAJBADYCHAwBCyACIAIoAhQQGTYCDCACKAIMRQRAIAIoAhBBDkEAEBUgAkEANgIcDAELIAIoAgwgAigCGCACKAIUEBoaIAIgAigCDDYCHAsgAigCHCEAIAJBIGokACAACxgAQaicAUIANwIAQbCcAUEANgIAQaicAQuIAQEBfyMAQSBrIgMkACADIAA2AhQgAyABNgIQIAMgAjcDCAJAAkAgAygCFCgCJEEBRgRAIAMpAwhC////////////AFgNAQsgAygCFEEMakESQQAQFSADQn83AxgMAQsgAyADKAIUIAMoAhAgAykDCEELECI3AxgLIAMpAxghAiADQSBqJAAgAgtzAQF/IwBBIGsiASQAIAEgADYCGCABQgg3AxAgASABKAIYKQMQIAEpAxB8NwMIAkAgASkDCCABKAIYKQMQVARAIAEoAhhBADoAACABQX82AhwMAQsgASABKAIYIAEpAwgQLTYCHAsgASgCHBogAUEgaiQACwgAQQFBDBB9CwcAIAAoAigLlgEBAX8jAEEgayICIAA2Ahgg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QRBrIgAgAigCBDYCDAJAIAAoAgwoAgBBBUcNACMAQRBrIgAgAigCBDYCDCAAKAIMKAIEQSxHDQAgAkEANgJMDAILIAIoAkQgAigCBBBEIAJBfzYCTAwBCyACQQE2AkwLIAIoAkwhACACQdAAaiQAIAAL6gEBAX8jAEEwayIDJAAgAyAANgIoIAMgATYCJCADIAI2AiAjAEEQayIAIANBCGoiATYCDCAAKAIMQQA2AgAgACgCDEEANgIEIAAoAgxBADYCCCADIAMoAiggARD7ASIANgIYAkAgAEUEQCADKAIgIANBCGoiABCTASAAEDggA0EANgIsDAELIAMgAygCGCADKAIkIANBCGoQkgEiADYCHCAARQRAIAMoAhgQHCADKAIgIANBCGoiABCTASAAEDggA0EANgIsDAELIANBCGoQOCADIAMoAhw2AiwLIAMoAiwhACADQTBqJAAgAAvIAgEBfyMAQRBrIgEkACABIAA2AgggAUHYABAZNgIEAkAgASgCBEUEQCABKAIIQQ5BABAVIAFBADYCDAwBCyABKAIIEIIDIQAgASgCBCAANgJQIABFBEAgASgCBBAWIAFBADYCDAwBCyABKAIEQQA2AgAgASgCBEEANgIEIwBBEGsiACABKAIEQQhqNgIMIAAoAgxBADYCACAAKAIMQQA2AgQgACgCDEEANgIIIAEoAgRBADYCGCABKAIEQQA2AhQgASgCBEEANgIcIAEoAgRBADYCJCABKAIEQQA2AiAgASgCBEEAOgAoIAEoAgRCADcDOCABKAIEQgA3AzAgASgCBEEANgJAIAEoAgRBADYCSCABKAIEQQA2AkQgASgCBEEANgJMIAEoAgRBADYCVCABIAEoAgQ2AgwLIAEoAgwhACABQRBqJAAgAAuBAQEBfyMAQSBrIgIkACACIAA2AhggAkIANwMQIAJCfzcDCCACIAE2AgQCQAJAIAIoAhgEQCACKQMIQn9ZDQELIAIoAgRBEkEAEBUgAkEANgIcDAELIAIgAigCGCACKQMQIAIpAwggAigCBBD/ATYCHAsgAigCHCEAIAJBIGokACAAC80BAQJ/IwBBIGsiASQAIAEgADYCGCABQQA6ABcgAUGAgCA2AgwCQCABLQAXQQFxBEAgASABKAIMQQJyNgIMDAELIAEgASgCDDYCDAsgASgCGCEAIAEoAgwh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AUEJSyEEIAMhASAEDQALDwsgA0EwOgAAIABBADoADws3AQF/IwBBIGsiASQAAn9BASAAIAFBCGoQCCIARQ0AGkG0nAEgADYCAEEACyEAIAFBIGokACAACyABAn8gABAsQQFqIgEQGSICRQRAQQAPCyACIAAgARAaC6UBAQF/IwBBIGsiAiAANgIUIAIgATYCEAJAIAIoAhRFBEAgAkJ/NwMYDAELIAIoAhBBCHEEQCACIAIoAhQpAzA3AwgDQEEAIQAgAikDCEIAVgR/IAIoAhQoAkAgAikDCEIBfadBBHRqKAIARQVBAAtBAXEEQCACIAIpAwhCf3w3AwgMAQsLIAIgAikDCDcDGAwBCyACIAIoAhQpAzA3AxgLIAIpAxgL8gEBAX8jAEEgayIDJAAgAyAANgIUIAMgATYCECADIAI3AwgCQCADKAIURQRAIANCfzcDGAwBCyADKAIUKAIEBEAgA0J/NwMYDAELIAMpAwhC////////////AFYEQCADKAIUQQRqQRJBABAVIANCfzcDGAwBCwJAIAMoAhQtABBBAXFFBEAgAykDCFBFDQELIANCADcDGAwBCyADIAMoAhQoAhQgAygCECADKQMIEC8iAjcDACACQgBTBEAgAygCFEEEaiADKAIUKAIUEBggA0J/NwMYDAELIAMgAykDADcDGAsgAykDGCECIANBIGokACACC0cBAX8jAEEgayIDJAAgAyAANgIcIAMgATcDECADIAI2AgwgAygCHCADKQMQIAMoAgwgAygCHCgCHBCfASEAIANBIGokACAAC38CAX8BfiMAQSBrIgMkACADIAA2AhggAyABNgIUIAMgAjYCECADIAMoAhggAygCFCADKAIQEG4iBDcDCAJAIARCAFMEQCADQQA2AhwMAQsgAyADKAIYIAMpAwggAygCECADKAIYKAIcEJ8BNgIcCyADKAIcIQAgA0EgaiQAIAALqgEBAX8jAEEQayIBJAAgASAANgIIIAFBGBAZIgA2AgQCQCAARQRAIAEoAghBCGpBDkEAEBUgAUEANgIMDAELIAEoAgQgASgCCDYCACMAQRBrIgAgASgCBEEEajYCDCAAKAIMQQA2AgAgACgCDEEANgIEIAAoAgxBADYCCCABKAIEQQA6ABAgASgCBEEANgIUIAEgASgCBDYCDAsgASgCDCEAIAFBEGok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QdAAaiADQaABahBwIARFDQAaIABBAEEAIAAoAiQRAQAaIABBADYCMCAAIAQ2AiwgAEEANgIcIABBADYCECAAKAIUGiAAQQA2AhRBAAsaIAAgACgCACAFcjYCACACRQ0ACyADQdABaiQACy8AIAECfyACKAJMQX9MBEAgACABIAIQcQwBCyAAIAEgAhBxCyIARgRAIAEPCyAAC1kBAX8gACAALQBKIgFBf2ogAXI6AEogACgCACIBQQhxBEAgACABQSByNgIAQX8PCyAAQgA3AgQgACAAKAIsIgE2AhwgACABNgIUIAAgASAAKAIwajYCEEEACwYAQfSgAQsGAEHwoAELBgBB6KABC9kDAgJ/An4jAEEgayICJAACQCABQv///////////wCDIgVCgICAgICAwP9DfCAFQoCAgICAgMCAvH98VARAIAFCBIYgAEI8iIQhBCAAQv//////////D4MiAEKBgICAgICAgAhaBEAgBEKBgICAgICAgMAAfCEEDAILIARCgICAgICAgIBAfSEEIABCgICAgICAgIAIhUIAUg0BIARCAYMgBHwhBAwBCyAAUCAFQoCAgICAgMD//wBUIAVCgICAgICAwP//AFEbRQRAIAFCBIYgAEI8iIRC/////////wODQoCAgICAgID8/wCEIQQMAQtCgICAgICAgPj/ACEEIAVC////////v//DAFYNAEIAIQQgBUIwiKciA0GR9wBJDQAgAkEQaiAAIAFC////////P4NCgICAgICAwACEIgQgA0H/iH9qELQCIAIgACAEQYH4ACADaxCzAiACKQMIQgSGIAIpAwAiAEI8iIQhBCACKQMQIAIpAxiEQgBSrSAAQv//////////D4OEIgBCgYCAgICAgIAIWgRAIARCAXwhBAwBCyAAQoCAgICAgICACIVCAFINACAEQgGDIAR8IQQLIAJBIGokACAEIAFCgICAgICAgICAf4OEvwtQAQF+AkAgA0HAAHEEQCACIANBQGqtiCEBQgAhAgwBCyADRQ0AIAJBwAAgA2uthiABIAOtIgSIhCEBIAIgBIghAgsgACABNwMAIAAgAjcDCAtQAQF+AkAgA0HAAHEEQCABIANBQGqthiECQgAhAQwBCyADRQ0AIAIgA60iBIYgAUHAACADa62IhCECIAEgBIYhAQsgACABNwMAIAAgAjcDCAuLAgACQCAABH8gAUH/AE0NAQJAQZCaASgCACgCAEUEQCABQYB/cUGAvwNGDQMMAQsgAUH/D00EQCAAIAFBP3FBgAFyOgABIAAgAUEGdkHAAXI6AABBAg8LIAFBgLADT0EAIAFBgEBxQYDAA0cbRQRAIAAgAUE/cUGAAXI6AAIgACABQQx2QeABcjoAACAAIAFBBnZBP3FBgAFyOgABQQMPCyABQYCAfGpB//8/TQRAIAAgAUE/cUGAAXI6AAMgACABQRJ2QfABcjoAACAAIAFBBnZBP3FBgAFyOgACIAAgAUEMdkE/cUGAAXI6AAFBBA8LC0G0nAFBGTYCAEF/BUEBCw8LIAAgAToAAEEBC74CAQF/IwBBwMAAayIDJAAgAyAANgK4QCADIAE2ArRAIAMgAjcDqEACQCADKAK0QBBJQQBIBEAgAygCuEBBCGogAygCtEAQGCADQX82ArxADAELIANBADYCDCADQgA3AxADQAJAIAMgAygCtEAgA0EgakKAwAAQLyICNwMYIAJCAFcNACADKAK4QCADQSBqIAMpAxgQNkEASARAIANBfzYCDAUgAykDGEKAwABSDQIgAygCuEAoAlRFDQIgAykDqEBCAFcNAiADIAMpAxggAykDEHw3AxAgAygCuEAoAlQgAykDELkgAykDqEC5oxBYDAILCwsgAykDGEIAUwRAIAMoArhAQQhqIAMoArRAEBggA0F/NgIMCyADKAK0QBAyGiADIAMoAgw2ArxACyADKAK8QCEAIANBwMAAaiQAIAALqgEBAX8jAEEwayIDJAAgAyAANgIoIAMgATYCJCADIAI3AxggAyADKAIoKAIAEDUiAjcDEAJAIAJCAFMEQCADQX82AiwMAQsgAyADKAIoIAMoAiQgAykDGBDGASICNwMAIAJCAFMEQCADQX82AiwMAQsgAyADKAIoKAIAEDUiAjcDCCACQgBTBEAgA0F/NgIsDAELIANBADYCLAsgAygCLCEAIANBMGokACAAC/4BAQF/IwBBoMAAayICJAAgAiAANgKYQCACIAE3A5BAIAIgAikDkEC6OQMAAkADQCACKQOQQEIAVgRAIAICfkKAwAAgAikDkEBCgMAAVg0AGiACKQOQQAs+AgwgAigCmEAoAgAgAkEQaiACKAIMrSACKAKYQEEIahBhQQBIBEAgAkF/NgKcQAwDCyACKAKYQCACQRBqIAIoAgytEDZBAEgEQCACQX82ApxADAMFIAIgAikDkEAgAjUCDH03A5BAIAIoAphAKAJUIAIrAwAgAikDkEC6oSACKwMAoxBYDAILAAsLIAJBADYCnEALIAIoApxAIQAgAkGgwABqJAAgAAvnEQIBfwF+IwBBoAFrIgMkACADIAA2ApgBIAMgATYClAEgAyACNgKQAQJAIAMoApQBIANBOGoQOUEASARAIAMoApgBQQhqIAMoApQBEBggA0F/NgKcAQwBCyADKQM4QsAAg1AEQCADIAMpAzhCwACENwM4IANBADsBaAsCQAJAIAMoApABKAIQQX9HBEAgAygCkAEoAhBBfkcNAQsgAy8BaEUNACADKAKQASADLwFoNgIQDAELAkACQCADKAKQASgCEA0AIAMpAzhCBINQDQAgAyADKQM4QgiENwM4IAMgAykDUDcDWAwBCyADIAMpAzhC9////w+DNwM4CwsgAykDOEKAAYNQBEAgAyADKQM4QoABhDcDOCADQQA7AWoLIANBgAI2AiQCQCADKQM4QgSDUARAIAMgAygCJEGACHI2AiQgA0J/NwNwDAELIAMoApABIAMpA1A3AyggAyADKQNQNwNwAkAgAykDOEIIg1AEQAJAAkACQAJAAkACfwJAIAMoApABKAIQQX9HBEAgAygCkAEoAhBBfkcNAQtBCAwBCyADKAKQASgCEAtB//8DcQ4NAgMDAwMDAwMBAwMDAAMLIANClMLk8w83AxAMAwsgA0KDg7D/DzcDEAwCCyADQv////8PNwMQDAELIANCADcDEAsgAykDUCADKQMQVgRAIAMgAygCJEGACHI2AiQLDAELIAMoApABIAMpA1g3AyALCyADIAMoApgBKAIAEDUiBDcDiAEgBEIAUwRAIAMoApgBQQhqIAMoApgBKAIAEBggA0F/NgKcAQwBCyADKAKQASIAIAAvAQxB9/8DcTsBDCADIAMoApgBIAMoApABIAMoAiQQXiIANgIoIABBAEgEQCADQX82ApwBDAELIAMgAy8BaAJ/AkAgAygCkAEoAhBBf0cEQCADKAKQASgCEEF+Rw0BC0EIDAELIAMoApABKAIQC0H//wNxRzoAIiADIAMtACJBAXEEfyADLwFoQQBHBUEAC0EBcToAISADIAMvAWgEfyADLQAhBUEBC0EBcToAICADIAMtACJBAXEEfyADKAKQASgCEEEARwVBAAtBAXE6AB8gAwJ/QQEgAy0AIkEBcQ0AGkEBIAMoApABKAIAQYABcQ0AGiADKAKQAS8BUiADLwFqRwtBAXE6AB4gAyADLQAeQQFxBH8gAy8BakEARwVBAAtBAXE6AB0gAyADLQAeQQFxBH8gAygCkAEvAVJBAEcFQQALQQFxOgAcIAMgAygClAE2AjQjAEEQayIAIAMoAjQ2AgwgACgCDCIAIAAoAjBBAWo2AjAgAy0AHUEBcQRAIAMgAy8BakEAEHciADYCDCAARQRAIAMoApgBQQhqQRhBABAVIAMoAjQQHCADQX82ApwBDAILIAMgAygCmAEgAygCNCADLwFqQQAgAygCmAEoAhwgAygCDBEGACIANgIwIABFBEAgAygCNBAcIANBfzYCnAEMAgsgAygCNBAcIAMgAygCMDYCNAsgAy0AIUEBcQRAIAMgAygCmAEgAygCNCADLwFoEKsBIgA2AjAgAEUEQCADKAI0EBwgA0F/NgKcAQwCCyADKAI0EBwgAyADKAIwNgI0CyADLQAgQQFxBEAgAyADKAKYASADKAI0QQAQqgEiADYCMCAARQRAIAMoAjQQHCADQX82ApwBDAILIAMoAjQQHCADIAMoAjA2AjQLIAMtAB9BAXEEQCADIAMoApgBIAMoAjQgAygCkAEoAhAgAygCkAEvAVAQwgIiADYCMCAARQRAIAMoAjQQHCADQX82ApwBDAILIAMoAjQQHCADIAMoAjA2AjQLIAMtABxBAXEEQCADQQA2AgQCQCADKAKQASgCVARAIAMgAygCkAEoAlQ2AgQMAQsgAygCmAEoAhwEQCADIAMoApgBKAIcNgIECwsgAyADKAKQAS8BUkEBEHciADYCCCAARQRAIAMoApgBQQhqQRhBABAVIAMoAjQQHCADQX82ApwBDAILIAMgAygCmAEgAygCNCADKAKQAS8BUkEBIAMoAgQgAygCCBEGACIANgIwIABFBEAgAygCNBAcIANBfzYCnAEMAgsgAygCNBAcIAMgAygCMDYCNAsgAyADKAKYASgCABA1IgQ3A4ABIARCAFMEQCADKAKYAUEIaiADKAKYASgCABAYIANBfzYCnAEMAQsgAyADKAKYASADKAI0IAMpA3AQtgI2AiwgAygCNCADQThqEDlBAEgEQCADKAKYAUEIaiADKAI0EBggA0F/NgIsCyADIAMoAjQQvAIiADoAIyAAQRh0QRh1QQBIBEAgAygCmAFBCGogAygCNBAYIANBfzYCLAsgAygCNBAcIAMoAixBAEgEQCADQX82ApwBDAELIAMgAygCmAEoAgAQNSIENwN4IARCAFMEQCADKAKYAUEIaiADKAKYASgCABAYIANBfzYCnAEMAQsgAygCmAEoAgAgAykDiAEQqAFBAEgEQCADKAKYAUEIaiADKAKYASgCABAYIANBfzYCnAEMAQsgAykDOELkAINC5ABSBEAgAygCmAFBCGpBFEEAEBUgA0F/NgKcAQwBCyADKAKQASgCAEEgcUUEQAJAIAMpAzhCEINCAFIEQCADKAKQASADKAJgNgIUDAELIAMoApABQRRqEAEaCwsgAygCkAEgAy8BaDYCECADKAKQASADKAJkNgIYIAMoApABIAMpA1A3AyggAygCkAEgAykDeCADKQOAAX03AyAgAygCkAEgAygCkAEvAQxB+f8DcSADLQAjQQF0cjsBDCADKAKQASADKAIkQYAIcUEARxCKAyADIAMoApgBIAMoApABIAMoAiQQXiIANgIsIABBAEgEQCADQX82ApwBDAELIAMoAiggAygCLEcEQCADKAKYAUEIakEUQQAQFSADQX82ApwBDAELIAMoApgBKAIAIAMpA3gQqAFBAEgEQCADKAKYAUEIaiADKAKYASgCABAYIANBfzYCnAEMAQsgA0EANgKcAQsgAygCnAEhACADQaABaiQAIAALrwIBAX8jAEEgayICIAA2AhwgAiABNgIYIAJBADYCFCACQgA3AwACQCACKAIcLQAoQQFxRQRAIAIoAhwoAhggAigCHCgCFEYNAQsgAkEBNgIUCyACQgA3AwgDQCACKQMIIAIoAhwpAzBUBEACQAJAIAIoAhwoAkAgAikDCKdBBHRqKAIIDQAgAigCHCgCQCACKQMIp0EEdGotAAxBAXENACACKAIcKAJAIAIpAwinQQR0aigCBEUNASACKAIcKAJAIAIpAwinQQR0aigCBCgCAEUNAQsgAkEBNgIUCyACKAIcKAJAIAIpAwinQQR0ai0ADEEBcUUEQCACIAIpAwBCAXw3AwALIAIgAikDCEIBfDcDCAwBCwsgAigCGARAIAIoAhggAikDADcDAAsgAigCFAuMEAMCfwF+AXwjAEHgAGsiASQAIAEgADYCWAJAIAEoAlhFBEAgAUF/NgJcDAELIAEgASgCWCABQUBrELoCNgIkIAEpA0BQBEACQCABKAJYKAIEQQhxRQRAIAEoAiRFDQELIAEoAlgoAgAQlQJBAEgEQAJAAn8jAEEQayICIAEoAlgoAgA2AgwjAEEQayIAIAIoAgxBDGo2AgwgACgCDCgCAEEWRgsEQCMAQRBrIgIgASgCWCgCADYCDCMAQRBrIgAgAigCDEEMajYCDCAAKAIMKAIEQSxGDQELIAEoAlhBCGogASgCWCgCABAYIAFBfzYCXAwECwsLIAEoAlgQPyABQQA2AlwMAQsgASgCJEUEQCABKAJYED8gAUEANgJcDAELIAEpA0AgASgCWCkDMFYEQCABKAJYQQhqQRRBABAVIAFBfzYCXAwBCyABIAEpA0CnQQN0EBkiADYCKCAARQRAIAFBfzYCXAwBCyABQn83AzggAUIANwNIIAFCADcDUANAIAEpA1AgASgCWCkDMFQEQAJAIAEoAlgoAkAgASkDUKdBBHRqKAIARQ0AAkAgASgCWCgCQCABKQNQp0EEdGooAggNACABKAJYKAJAIAEpA1CnQQR0ai0ADEEBcQ0AIAEoAlgoAkAgASkDUKdBBHRqKAIERQ0BIAEoAlgoAkAgASkDUKdBBHRqKAIEKAIARQ0BCyABAn4gASkDOCABKAJYKAJAIAEpA1CnQQR0aigCACkDSFQEQCABKQM4DAELIAEoAlgoAkAgASkDUKdBBHRqKAIAKQNICzcDOAsgASgCWCgCQCABKQNQp0EEdGotAAxBAXFFBEAgASkDSCABKQNAWgRAIAEoAigQFiABKAJYQQhqQRRBABAVIAFBfzYCXAwECyABKAIoIAEpA0inQQN0aiABKQNQNwMAIAEgASkDSEIBfDcDSAsgASABKQNQQgF8NwNQDAELCyABKQNIIAEpA0BUBEAgASgCKBAWIAEoAlhBCGpBFEEAEBUgAUF/NgJcDAELAkACfyMAQRBrIgAgASgCWCgCADYCDCAAKAIMKQMYQoCACINQCwRAIAFCADcDOAwBCyABKQM4Qn9RBEAgAUJ/NwMYIAFCADcDOCABQgA3A1ADQCABKQNQIAEoAlgpAzBUBEAgASgCWCgCQCABKQNQp0EEdGooAgAEQCABKAJYKAJAIAEpA1CnQQR0aigCACkDSCABKQM4WgRAIAEgASgCWCgCQCABKQNQp0EEdGooAgApA0g3AzggASABKQNQNwMYCwsgASABKQNQQgF8NwNQDAELCyABKQMYQn9SBEAgASABKAJYIAEpAxggASgCWEEIahCJAyIDNwM4IANQBEAgASgCKBAWIAFBfzYCXAwECwsLIAEpAzhCAFYEQCABKAJYKAIAIAEpAzgQ9wJBAEgEQCABQgA3AzgLCwsgASkDOFAEQCABKAJYKAIAEPYCQQBIBEAgASgCWEEIaiABKAJYKAIAEBggASgCKBAWIAFBfzYCXAwCCwsgASgCWCgCVBD5AiABQQA2AiwgAUIANwNIA0ACQCABKQNIIAEpA0BaDQAgASgCWCgCVCABKQNIIgO6IAEpA0C6IgSjIANCAXy6IASjEPgCIAEgASgCKCABKQNIp0EDdGopAwA3A1AgASABKAJYKAJAIAEpA1CnQQR0ajYCEAJAAkAgASgCECgCAEUNACABKAIQKAIAKQNIIAEpAzhaDQAMAQsgAQJ/QQEgASgCECgCCA0AGiABKAIQKAIEBEBBASABKAIQKAIEKAIAQQFxDQEaCyABKAIQKAIEBH8gASgCECgCBCgCAEHAAHFBAEcFQQALC0EBcTYCFCABKAIQKAIERQRAIAEoAhAoAgAQRiEAIAEoAhAgADYCBCAARQRAIAEoAlhBCGpBDkEAEBUgAUEBNgIsDAMLCyABIAEoAhAoAgQ2AgwgASgCWCABKQNQEMcBQQBIBEAgAUEBNgIsDAILIAEgASgCWCgCABA1IgM3AzAgA0IAUwRAIAFBATYCLAwCCyABKAIMIAEpAzA3A0gCQCABKAIUBEAgAUEANgIIIAEoAhAoAghFBEAgASABKAJYIAEoAlggASkDUEEIQQAQqQEiADYCCCAARQRAIAFBATYCLAwFCwsgASgCWAJ/IAEoAggEQCABKAIIDAELIAEoAhAoAggLIAEoAgwQuQJBAEgEQCABQQE2AiwgASgCCARAIAEoAggQHAsMBAsgASgCCARAIAEoAggQHAsMAQsgASgCDCIAIAAvAQxB9/8DcTsBDCABKAJYIAEoAgxBgAIQXkEASARAIAFBATYCLAwDCyABIAEoAlggASkDUCABKAJYQQhqEH8iAzcDACADUARAIAFBATYCLAwDCyABKAJYKAIAIAEpAwBBABAoQQBIBEAgASgCWEEIaiABKAJYKAIAEBggAUEBNgIsDAMLIAEoAlggASgCDCkDIBC4AkEASARAIAFBATYCLAwDCwsLIAEgASkDSEIBfDcDSAwBCwsgASgCLEUEQCABKAJYIAEoAiggASkDQBC3AkEASARAIAFBATYCLAsLIAEoAigQFiABKAIsRQRAIAEoAlgoAgAQvQIEQCABKAJYQQhqIAEoAlgoAgAQGCABQQE2AiwLCyABKAJYKAJUEPwCIAEoAiwEQCABKAJYKAIAEG0gAUF/NgJcDAELIAEoAlgQPyABQQA2AlwLIAEoAlwhACABQeAAaiQAIAALswEBAX8jAEEQayIBJAAgASAANgIIAkADQCABKAIIBEAgASgCCCkDGEKAgASDQgBSBEAgASABKAIIQQBCAEEQECI3AwAgASkDAEIAUwRAIAFB/wE6AA8MBAsgASkDAEIDVQRAIAEoAghBDGpBFEEAEBUgAUH/AToADwwECyABIAEpAwA8AA8MAwUgASABKAIIKAIANgIIDAILAAsLIAFBADoADwsgASwADyEAIAFBEGokACAAC8wBAQF/IwBBEGsiASQAIAEgADYCCAJAIAEoAggoAiRBAUcEQCABKAIIQQxqQRJBABAVIAFBfzYCDAwBCyABKAIIKAIgQQFLBEAgASgCCEEMakEdQQAQFSABQX82AgwMAQsgASgCCCgCIEEASwRAIAEoAggQMkEASARAIAFBfzYCDAwCCwsgASgCCEEAQgBBCRAiQgBTBEAgASgCCEECNgIkIAFBfzYCDAwBCyABKAIIQQA2AiQgAUEANgIMCyABKAIMIQAgAUEQaiQAIAAL2gkBAX8jAEGwAWsiBSQAIAUgADYCpAEgBSABNgKgASAFIAI2ApwBIAUgAzcDkAEgBSAENgKMASAFIAUoAqABNgKIAQJAAkACQAJAAkACQAJAAkACQAJAAkAgBSgCjAEODwABAgMEBQcICQkJCQkJBgkLIAUoAogBQgA3AyAgBUIANwOoAQwJCyAFIAUoAqQBIAUoApwBIAUpA5ABEC8iAzcDgAEgA0IAUwRAIAUoAogBQQhqIAUoAqQBEBggBUJ/NwOoAQwJCwJAIAUpA4ABUARAIAUoAogBKQMoIAUoAogBKQMgUQRAIAUoAogBQQE2AgQgBSgCiAEgBSgCiAEpAyA3AxggBSgCiAEoAgAEQCAFKAKkASAFQcgAahA5QQBIBEAgBSgCiAFBCGogBSgCpAEQGCAFQn83A6gBDA0LAkAgBSkDSEIgg1ANACAFKAJ0IAUoAogBKAIwRg0AIAUoAogBQQhqQQdBABAVIAVCfzcDqAEMDQsCQCAFKQNIQgSDUA0AIAUpA2AgBSgCiAEpAxhRDQAgBSgCiAFBCGpBFUEAEBUgBUJ/NwOoAQwNCwsLDAELAkAgBSgCiAEoAgQNACAFKAKIASkDICAFKAKIASkDKFYNACAFIAUoAogBKQMoIAUoAogBKQMgfTcDQANAIAUpA0AgBSkDgAFUBEAgBQJ+Qv////8PQv////8PIAUpA4ABIAUpA0B9VA0AGiAFKQOAASAFKQNAfQs3AzggBSgCiAEoAjAgBSgCnAEgBSkDQKdqIAUpAzinEBshACAFKAKIASAANgIwIAUoAogBIgAgBSkDOCAAKQMofDcDKCAFIAUpAzggBSkDQHw3A0AMAQsLCwsgBSgCiAEiACAFKQOAASAAKQMgfDcDICAFIAUpA4ABNwOoAQwICyAFQgA3A6gBDAcLIAUgBSgCnAE2AjQgBSgCiAEoAgQEQCAFKAI0IAUoAogBKQMYNwMYIAUoAjQgBSgCiAEoAjA2AiwgBSgCNCAFKAKIASkDGDcDICAFKAI0QQA7ATAgBSgCNEEAOwEyIAUoAjQiACAAKQMAQuwBhDcDAAsgBUIANwOoAQwGCyAFIAUoAogBQQhqIAUoApwBIAUpA5ABEEM3A6gBDAULIAUoAogBEBYgBUIANwOoAQwECyMAQRBrIgAgBSgCpAE2AgwgBSAAKAIMKQMYNwMoIAUpAyhCAFMEQCAFKAKIAUEIaiAFKAKkARAYIAVCfzcDqAEMBAsgBSkDKCEDIAVBfzYCGCAFQRA2AhQgBUEPNgIQIAVBDTYCDCAFQQw2AgggBUEKNgIEIAVBCTYCACAFQQggBRA3Qn+FIAODNwOoAQwDCyAFAn8gBSkDkAFCEFQEQCAFKAKIAUEIakESQQAQFUEADAELIAUoApwBCzYCHCAFKAIcRQRAIAVCfzcDqAEMAwsCQCAFKAKkASAFKAIcKQMAIAUoAhwoAggQKEEATgRAIAUgBSgCpAEQSiIDNwMgIANCAFkNAQsgBSgCiAFBCGogBSgCpAEQGCAFQn83A6gBDAMLIAUoAogBIAUpAyA3AyAgBUIANwOoAQwCCyAFIAUoAogBKQMgNwOoAQwBCyAFKAKIAUEIakEcQQAQFSAFQn83A6gBCyAFKQOoASEDIAVBsAFqJAAgAwvDBgEBfyMAQUBqIgQkACAEIAA2AjQgBCABNgIwIAQgAjYCLCAEIAM3AyACQAJ/IwBBEGsiACAEKAIwNgIMIAAoAgwoAgALBEAgBEJ/NwM4DAELAkAgBCkDIFBFBEAgBCgCMC0ADUEBcUUNAQsgBEIANwM4DAELIARCADcDCCAEQQA6ABsDQCAELQAbQQFxBH9BAAUgBCkDCCAEKQMgVAtBAXEEQCAEIAQpAyAgBCkDCH03AwAgBCAEKAIwKAKsQCAEKAIsIAQpAwinaiAEIAQoAjAoAqhAKAIcEQEANgIcIAQoAhxBAkcEQCAEIAQpAwAgBCkDCHw3AwgLAkACQAJAAkAgBCgCHEEBaw4DAAIBAwsgBCgCMEEBOgANAkAgBCgCMC0ADEEBcQ0ACyAEKAIwKQMgQgBTBEAgBCgCMEEUQQAQFSAEQQE6ABsMAwsCQCAEKAIwLQAOQQFxRQ0AIAQoAjApAyAgBCkDCFYNACAEKAIwQQE6AA8gBCgCMCAEKAIwKQMgNwMYIAQoAiwgBCgCMEEoaiAEKAIwKQMYpxAaGiAEIAQoAjApAxg3AzgMBgsgBEEBOgAbDAILIAQoAjAtAAxBAXEEQCAEQQE6ABsMAgsgBCAEKAI0IAQoAjBBKGpCgMAAEC8iAzcDECADQgBTBEAgBCgCMCAEKAI0EBggBEEBOgAbDAILAkAgBCkDEFAEQCAEKAIwQQE6AAwgBCgCMCgCrEAgBCgCMCgCqEAoAhgRAwAgBCgCMCkDIEIAUwRAIAQoAjBCADcDIAsMAQsCQCAEKAIwKQMgQgBZBEAgBCgCMEEAOgAODAELIAQoAjAgBCkDEDcDIAsgBCgCMCgCrEAgBCgCMEEoaiAEKQMQIAQoAjAoAqhAKAIUEREAGgsMAQsCfyMAQRBrIgAgBCgCMDYCDCAAKAIMKAIARQsEQCAEKAIwQRRBABAVCyAEQQE6ABsLDAELCyAEKQMIQgBWBEAgBCgCMEEAOgAOIAQoAjAiACAEKQMIIAApAxh8NwMYIAQgBCkDCDcDOAwBCyAEQX9BAAJ/IwBBEGsiACAEKAIwNgIMIAAoAgwoAgALG6w3AzgLIAQpAzghAyAEQUBrJAAgAwvcBQEBfyMAQTBrIgUkACAFIAA2AiQgBSABNgIgIAUgAjYCHCAFIAM3AxAgBSAENgIMIAUgBSgCIDYCCAJAAkACQAJAAkACQAJAAkACQAJAIAUoAgwOEQABAgMFBggICAgICAgIBwgECAsgBSgCCEIANwMYIAUoAghBADoADCAFKAIIQQA6AA0gBSgCCEEAOgAPIAUoAghCfzcDICAFKAIIKAKsQCAFKAIIKAKoQCgCDBEAAEEBcUUEQCAFQn83AygMCQsgBUIANwMoDAgLIAUgBSgCJCAFKAIIIAUoAhwgBSkDEBC/AjcDKAwHCyAFKAIIKAKsQCAFKAIIKAKoQCgCEBEAAEEBcUUEQCAFQn83AygMBwsgBUIANwMoDAYLIAUgBSgCHDYCBAJAIAUoAggtABBBAXEEQCAFKAIILQANQQFxBEAgBSgCBAJ/QQAgBSgCCC0AD0EBcQ0AGgJ/AkAgBSgCCCgCFEF/RwRAIAUoAggoAhRBfkcNAQtBCAwBCyAFKAIIKAIUC0H//wNxCzsBMCAFKAIEIAUoAggpAxg3AyAgBSgCBCIAIAApAwBCyACENwMADAILIAUoAgQiACAAKQMAQrf///8PgzcDAAwBCyAFKAIEQQA7ATAgBSgCBCIAIAApAwBCwACENwMAAkAgBSgCCC0ADUEBcQRAIAUoAgQgBSgCCCkDGDcDGCAFKAIEIgAgACkDAEIEhDcDAAwBCyAFKAIEIgAgACkDAEL7////D4M3AwALCyAFQgA3AygMBQsgBQJ/QQAgBSgCCC0AD0EBcQ0AGiAFKAIIKAKsQCAFKAIIKAKoQCgCCBEAAAusNwMoDAQLIAUgBSgCCCAFKAIcIAUpAxAQQzcDKAwDCyAFKAIIEKwBIAVCADcDKAwCCyAFQX82AgAgBUEQIAUQN0I/hDcDKAwBCyAFKAIIQRRBABAVIAVCfzcDKAsgBSkDKCEDIAVBMGokACADC/4CAQF/IwBBIGsiBCQAIAQgADYCGCAEIAE6ABcgBCACNgIQIAQgAzYCDCAEQbDAABAZIgA2AggCQCAARQRAIARBADYCHAwBCyMAQRBrIgAgBCgCCDYCDCAAKAIMQQA2AgAgACgCDEEANgIEIAAoAgxBADYCCCAEKAIIAn8gBC0AF0EBcQRAIAQoAhhBf0cEfyAEKAIYQX5GBUEBC0EBcQwBC0EAC0EARzoADiAEKAIIIAQoAgw2AqhAIAQoAgggBCgCGDYCFCAEKAIIIAQtABdBAXE6ABAgBCgCCEEAOgAMIAQoAghBADoADSAEKAIIQQA6AA8gBCgCCCgCqEAoAgAhAAJ/AkAgBCgCGEF/RwRAIAQoAhhBfkcNAQtBCAwBCyAEKAIYC0H//wNxIAQoAhAgBCgCCCAAEQEAIQAgBCgCCCAANgKsQCAARQRAIAQoAggQOCAEKAIIEBYgBEEANgIcDAELIAQgBCgCCDYCHAsgBCgCHCEAIARBIGokACAAC00BAX8jAEEQayIEJAAgBCAANgIMIAQgATYCCCAEIAI2AgQgBCADNgIAIAQoAgwgBCgCCCAEKAIEQQEgBCgCABCtASEAIARBEGokACAAC1sBAX8jAEEQayIBJAAgASAANgIIIAFBAToABwJAIAEoAghFBEAgAUEBOgAPDAELIAEgASgCCCABLQAHQQFxEK4BQQBHOgAPCyABLQAPQQFxIQAgAUEQaiQAIAALPAEBfyMAQRBrIgMkACADIAA7AQ4gAyABNgIIIAMgAjYCBEEAIAMoAgggAygCBBCvASEAIANBEGokACAAC68CAQF/IwBBIGsiAyQAIAMgADYCGCADIAE2AhQgAyACNgIQIAMgAygCGDYCDCADKAIMAn5C/////w9C/////w8gAygCECkDAFQNABogAygCECkDAAs+AiAgAygCDCADKAIUNgIcAkAgAygCDC0ABEEBcQRAIAMgAygCDEEQakEEQQAgAygCDC0ADEEBcRsQ3AI2AggMAQsgAyADKAIMQRBqENACNgIICyADKAIQIgAgACkDACADKAIMNQIgfTcDAAJAAkACQAJAAkAgAygCCEEFag4HAgMDAwMAAQMLIANBADYCHAwDCyADQQE2AhwMAgsgAygCDCgCFEUEQCADQQM2AhwMAgsLIAMoAgwoAgBBDSADKAIIEBUgA0ECNgIcCyADKAIcIQAgA0EgaiQAIAALJAEBfyMAQRBrIgEgADYCDCABIAEoAgw2AgggASgCCEEBOgAMC5kBAQF/IwBBIGsiAyQAIAMgADYCGCADIAE2AhQgAyACNwMIIAMgAygCGDYCBAJAAkAgAykDCEL/////D1gEQCADKAIEKAIUQQBNDQELIAMoAgQoAgBBEkEAEBUgA0EAOgAfDAELIAMoAgQgAykDCD4CFCADKAIEIAMoAhQ2AhAgA0EBOgAfCyADLQAfQQFxIQAgA0EgaiQAIAALkAEBAX8jAEEQayIBJAAgASAANgIIIAEgASgCCDYCBAJAIAEoAgQtAARBAXEEQCABIAEoAgRBEGoQswE2AgAMAQsgASABKAIEQRBqEM0CNgIACwJAIAEoAgAEQCABKAIEKAIAQQ0gASgCABAVIAFBADoADwwBCyABQQE6AA8LIAEtAA9BAXEhACABQRBqJAAgAAvAAQEBfyMAQRBrIgEkACABIAA2AgggASABKAIINgIEIAEoAgRBADYCFCABKAIEQQA2AhAgASgCBEEANgIgIAEoAgRBADYCHAJAIAEoAgQtAARBAXEEQCABIAEoAgRBEGogASgCBCgCCBDhAjYCAAwBCyABIAEoAgRBEGoQ0QI2AgALAkAgASgCAARAIAEoAgQoAgBBDSABKAIAEBUgAUEAOgAPDAELIAFBAToADwsgAS0AD0EBcSEAIAFBEGokACAAC28BAX8jAEEQayIBIAA2AgggASABKAIINgIEAkAgASgCBC0ABEEBcUUEQCABQQA2AgwMAQsgASgCBCgCCEEDSARAIAFBAjYCDAwBCyABKAIEKAIIQQdKBEAgAUEBNgIMDAELIAFBADYCDAsgASgCDAssAQF/IwBBEGsiASQAIAEgADYCDCABIAEoAgw2AgggASgCCBAWIAFBEGokAAs8AQF/IwBBEGsiAyQAIAMgADsBDiADIAE2AgggAyACNgIEQQEgAygCCCADKAIEEK8BIQAgA0EQaiQAIAALmQEBAX8jAEEQayIBJAAgASAANgIIAkAgASgCCBBLBEAgAUF+NgIMDAELIAEgASgCCCgCHDYCBCABKAIEKAI4BEAgASgCCCgCKCABKAIEKAI4IAEoAggoAiQRBAALIAEoAggoAiggASgCCCgCHCABKAIIKAIkEQQAIAEoAghBADYCHCABQQA2AgwLIAEoAgwhACABQRBqJAAgAAudBAEBfyMAQSBrIgMkACADIAA2AhggAyABNgIUIAMgAjYCECADIAMoAhgoAhw2AgwCQCADKAIMKAI4RQRAIAMoAhgoAihBASADKAIMKAIodEEBIAMoAhgoAiARAQAhACADKAIMIAA2AjggAygCDCgCOEUEQCADQQE2AhwMAgsLIAMoAgwoAixFBEAgAygCDEEBIAMoAgwoAih0NgIsIAMoAgxBADYCNCADKAIMQQA2AjALAkAgAygCECADKAIMKAIsTwRAIAMoAgwoAjggAygCFCADKAIMKAIsayADKAIMKAIsEBoaIAMoAgxBADYCNCADKAIMIAMoAgwoAiw2AjAMAQsgAyADKAIMKAIsIAMoAgwoAjRrNgIIIAMoAgggAygCEEsEQCADIAMoAhA2AggLIAMoAgwoAjggAygCDCgCNGogAygCFCADKAIQayADKAIIEBoaIAMgAygCECADKAIIazYCEAJAIAMoAhAEQCADKAIMKAI4IAMoAhQgAygCEGsgAygCEBAaGiADKAIMIAMoAhA2AjQgAygCDCADKAIMKAIsNgIwDAELIAMoAgwiACADKAIIIAAoAjRqNgI0IAMoAgwoAjQgAygCDCgCLEYEQCADKAIMQQA2AjQLIAMoAgwoAjAgAygCDCgCLEkEQCADKAIMIgAgAygCCCAAKAIwajYCMAsLCyADQQA2AhwLIAMoAhwhACADQSBqJAAgAAs8AQF/IwBBEGsiASAANgIMIAEoAgxBkPIANgJQIAEoAgxBCTYCWCABKAIMQZCCATYCVCABKAIMQQU2AlwLlk8BBH8jAEHgAGsiASQAIAEgADYCWCABQQI2AlQCQAJAAkAgASgCWBBLDQAgASgCWCgCDEUNACABKAJYKAIADQEgASgCWCgCBEUNAQsgAUF+NgJcDAELIAEgASgCWCgCHDYCUCABKAJQKAIEQb/+AEYEQCABKAJQQcD+ADYCBAsgASABKAJYKAIMNgJIIAEgASgCWCgCEDYCQCABIAEoAlgoAgA2AkwgASABKAJYKAIENgJEIAEgASgCUCgCPDYCPCABIAEoAlAoAkA2AjggASABKAJENgI0IAEgASgCQDYCMCABQQA2AhADQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCABKAJQKAIEQcyBf2oOHwABAgMEBQYHCAkKCwwNDg8QERITFBUWFxgZGhscHR4fCyABKAJQKAIMRQRAIAEoAlBBwP4ANgIEDCELA0AgASgCOEEQSQRAIAEoAkRFDSEgASABKAJEQX9qNgJEIAEgASgCTCIAQQFqNgJMIAEgASgCPCAALQAAIAEoAjh0ajYCPCABIAEoAjhBCGo2AjgMAQsLAkAgASgCUCgCDEECcUUNACABKAI8QZ+WAkcNACABKAJQKAIoRQRAIAEoAlBBDzYCKAtBAEEAQQAQGyEAIAEoAlAgADYCHCABIAEoAjw6AAwgASABKAI8QQh2OgANIAEoAlAoAhwgAUEMakECEBshACABKAJQIAA2AhwgAUEANgI8IAFBADYCOCABKAJQQbX+ADYCBAwhCyABKAJQQQA2AhQgASgCUCgCJARAIAEoAlAoAiRBfzYCMAsCQCABKAJQKAIMQQFxBEAgASgCPEH/AXFBCHQgASgCPEEIdmpBH3BFDQELIAEoAlhBtu4ANgIYIAEoAlBB0f4ANgIEDCELIAEoAjxBD3FBCEcEQCABKAJYQc3uADYCGCABKAJQQdH+ADYCBAwhCyABIAEoAjxBBHY2AjwgASABKAI4QQRrNgI4IAEgASgCPEEPcUEIajYCFCABKAJQKAIoRQRAIAEoAlAgASgCFDYCKAsCQCABKAIUQQ9NBEAgASgCFCABKAJQKAIoTQ0BCyABKAJYQejuADYCGCABKAJQQdH+ADYCBAwhCyABKAJQQQEgASgCFHQ2AhhBAEEAQQAQPSEAIAEoAlAgADYCHCABKAJYIAA2AjAgASgCUEG9/gBBv/4AIAEoAjxBgARxGzYCBCABQQA2AjwgAUEANgI4DCALA0AgASgCOEEQSQRAIAEoAkRFDSAgASABKAJEQX9qNgJEIAEgASgCTCIAQQFqNgJMIAEgASgCPCAALQAAIAEoAjh0ajYCPCABIAEoAjhBCGo2AjgMAQsLIAEoAlAgASgCPDYCFCABKAJQKAIUQf8BcUEIRwRAIAEoAlhBze4ANgIYIAEoAlBB0f4ANgIEDCALIAEoAlAoAhRBgMADcQRAIAEoAlhB/O4ANgIYIAEoAlBB0f4ANgIEDCALIAEoAlAoAiQEQCABKAJQKAIkIAEoAjxBCHZBAXE2AgALAkAgASgCUCgCFEGABHFFDQAgASgCUCgCDEEEcUUNACABIAEoAjw6AAwgASABKAI8QQh2OgANIAEoAlAoAhwgAUEMakECEBshACABKAJQIAA2AhwLIAFBADYCPCABQQA2AjggASgCUEG2/gA2AgQLA0AgASgCOEEgSQRAIAEoAkRFDR8gASABKAJEQX9qNgJEIAEgASgCTCIAQQFqNgJMIAEgASgCPCAALQAAIAEoAjh0ajYCPCABIAEoAjhBCGo2AjgMAQsLIAEoAlAoAiQEQCABKAJQKAIkIAEoAjw2AgQLAkAgASgCUCgCFEGABHFFDQAgASgCUCgCDEEEcUUNACABIAEoAjw6AAwgASABKAI8QQh2OgANIAEgASgCPEEQdjoADiABIAEoAjxBGHY6AA8gASgCUCgCHCABQQxqQQQQGyEAIAEoAlAgADYCHAsgAUEANgI8IAFBADYCOCABKAJQQbf+ADYCBAsDQCABKAI4QRBJBEAgASgCREUNHiABIAEoAkRBf2o2AkQgASABKAJMIgBBAWo2AkwgASABKAI8IAAtAAAgASgCOHRqNgI8IAEgASgCOEEIajYCOAwBCwsgASgCUCgCJARAIAEoAlAoAiQgASgCPEH/AXE2AgggASgCUCgCJCABKAI8QQh2NgIMCwJAIAEoAlAoAhRBgARxRQ0AIAEoAlAoAgxBBHFFDQAgASABKAI8OgAMIAEgASgCPEEIdjoADSABKAJQKAIcIAFBDGpBAhAbIQAgASgCUCAANgIcCyABQQA2AjwgAUEANgI4IAEoAlBBuP4ANgIECwJAIAEoAlAoAhRBgAhxBEADQCABKAI4QRBJBEAgASgCREUNHyABIAEoAkRBf2o2AkQgASABKAJMIgBBAWo2AkwgASABKAI8IAAtAAAgASgCOHRqNgI8IAEgASgCOEEIajYCOAwBCwsgASgCUCABKAI8NgJEIAEoAlAoAiQEQCABKAJQKAIkIAEoAjw2AhQLAkAgASgCUCgCFEGABHFFDQAgASgCUCgCDEEEcUUNACABIAEoAjw6AAwgASABKAI8QQh2OgANIAEoAlAoAhwgAUEMakECEBshACABKAJQIAA2AhwLIAFBADYCPCABQQA2AjgMAQsgASgCUCgCJARAIAEoAlAoAiRBADYCEAsLIAEoAlBBuf4ANgIECyABKAJQKAIUQYAIcQRAIAEgASgCUCgCRDYCLCABKAIsIAEoAkRLBEAgASABKAJENgIsCyABKAIsBEACQCABKAJQKAIkRQ0AIAEoAlAoAiQoAhBFDQAgASABKAJQKAIkKAIUIAEoAlAoAkRrNgIUIAEoAlAoAiQoAhAgASgCFGogASgCTAJ/IAEoAhQgASgCLGogASgCUCgCJCgCGEsEQCABKAJQKAIkKAIYIAEoAhRrDAELIAEoAiwLEBoaCwJAIAEoAlAoAhRBgARxRQ0AIAEoAlAoAgxBBHFFDQAgASgCUCgCHCABKAJMIAEoAiwQGyEAIAEoAlAgADYCHAsgASABKAJEIAEoAixrNgJEIAEgASgCLCABKAJMajYCTCABKAJQIgAgACgCRCABKAIsazYCRAsgASgCUCgCRA0bCyABKAJQQQA2AkQgASgCUEG6/gA2AgQLAkAgASgCUCgCFEGAEHEEQCABKAJERQ0bIAFBADYCLANAIAEoAkwhACABIAEoAiwiAkEBajYCLCABIAAgAmotAAA2AhQCQCABKAJQKAIkRQ0AIAEoAlAoAiQoAhxFDQAgASgCUCgCRCABKAJQKAIkKAIgTw0AIAEoAhQhAiABKAJQKAIkKAIcIQMgASgCUCIEKAJEIQAgBCAAQQFqNgJEIAAgA2ogAjoAAAsgASgCFAR/IAEoAiwgASgCREkFQQALQQFxDQALAkAgASgCUCgCFEGABHFFDQAgASgCUCgCDEEEcUUNACABKAJQKAIcIAEoAkwgASgCLBAbIQAgASgCUCAANgIcCyABIAEoAkQgASgCLGs2AkQgASABKAIsIAEoAkxqNgJMIAEoAhQNGwwBCyABKAJQKAIkBEAgASgCUCgCJEEANgIcCwsgASgCUEEANgJEIAEoAlBBu/4ANgIECwJAIAEoAlAoAhRBgCBxBEAgASgCREUNGiABQQA2AiwDQCABKAJMIQAgASABKAIsIgJBAWo2AiwgASAAIAJqLQAANgIUAkAgASgCUCgCJEUNACABKAJQKAIkKAIkRQ0AIAEoAlAoAkQgASgCUCgCJCgCKE8NACABKAIUIQIgASgCUCgCJCgCJCEDIAEoAlAiBCgCRCEAIAQgAEEBajYCRCAAIANqIAI6AAALIAEoAhQEfyABKAIsIAEoAkRJBUEAC0EBcQ0ACwJAIAEoAlAoAhRBgARxRQ0AIAEoAlAoAgxBBHFFDQAgASgCUCgCHCABKAJMIAEoAiwQGyEAIAEoAlAgADYCHAsgASABKAJEIAEoAixrNgJEIAEgASgCLCABKAJMajYCTCABKAIUDRoMAQsgASgCUCgCJARAIAEoAlAoAiRBADYCJAsLIAEoAlBBvP4ANgIECyABKAJQKAIUQYAEcQRAA0AgASgCOEEQSQRAIAEoAkRFDRogASABKAJEQX9qNgJEIAEgASgCTCIAQQFqNgJMIAEgASgCPCAALQAAIAEoAjh0ajYCPCABIAEoAjhBCGo2AjgMAQsLAkAgASgCUCgCDEEEcUUNACABKAI8IAEoAlAoAhxB//8DcUYNACABKAJYQZXvADYCGCABKAJQQdH+ADYCBAwaCyABQQA2AjwgAUEANgI4CyABKAJQKAIkBEAgASgCUCgCJCABKAJQKAIUQQl1QQFxNgIsIAEoAlAoAiRBATYCMAtBAEEAQQAQGyEAIAEoAlAgADYCHCABKAJYIAA2AjAgASgCUEG//gA2AgQMGAsDQCABKAI4QSBJBEAgASgCREUNGCABIAEoAkRBf2o2AkQgASABKAJMIgBBAWo2AkwgASABKAI8IAAtAAAgASgCOHRqNgI8IAEgASgCOEEIajYCOAwBCwsgASgCUCABKAI8QQh2QYD+A3EgASgCPEEYdmogASgCPEGA/gNxQQh0aiABKAI8Qf8BcUEYdGoiADYCHCABKAJYIAA2AjAgAUEANgI8IAFBADYCOCABKAJQQb7+ADYCBAsgASgCUCgCEEUEQCABKAJYIAEoAkg2AgwgASgCWCABKAJANgIQIAEoAlggASgCTDYCACABKAJYIAEoAkQ2AgQgASgCUCABKAI8NgI8IAEoAlAgASgCODYCQCABQQI2AlwMGAtBAEEAQQAQPSEAIAEoAlAgADYCHCABKAJYIAA2AjAgASgCUEG//gA2AgQLIAEoAlRBBUYNFCABKAJUQQZGDRQLIAEoAlAoAggEQCABIAEoAjwgASgCOEEHcXY2AjwgASABKAI4IAEoAjhBB3FrNgI4IAEoAlBBzv4ANgIEDBULA0AgASgCOEEDSQRAIAEoAkRFDRUgASABKAJEQX9qNgJEIAEgASgCTCIAQQFqNgJMIAEgASgCPCAALQAAIAEoAjh0ajYCPCABIAEoAjhBCGo2AjgMAQsLIAEoAlAgASgCPEEBcTYCCCABIAEoAjxBAXY2AjwgASABKAI4QQFrNgI4AkACQAJAAkACQCABKAI8QQNxDgQAAQIDBAsgASgCUEHB/gA2AgQMAwsgASgCUBDPAiABKAJQQcf+ADYCBCABKAJUQQZGBEAgASABKAI8QQJ2NgI8IAEgASgCOEECazYCOAwXCwwCCyABKAJQQcT+ADYCBAwBCyABKAJYQanvADYCGCABKAJQQdH+ADYCBAsgASABKAI8QQJ2NgI8IAEgASgCOEECazYCOAwUCyABIAEoAjwgASgCOEEHcXY2AjwgASABKAI4IAEoAjhBB3FrNgI4A0AgASgCOEEgSQRAIAEoAkRFDRQgASABKAJEQX9qNgJEIAEgASgCTCIAQQFqNgJMIAEgASgCPCAALQAAIAEoAjh0ajYCPCABIAEoAjhBCGo2AjgMAQsLIAEoAjxB//8DcSABKAI8QRB2Qf//A3NHBEAgASgCWEG87wA2AhggASgCUEHR/gA2AgQMFAsgASgCUCABKAI8Qf//A3E2AkQgAUEANgI8IAFBADYCOCABKAJQQcL+ADYCBCABKAJUQQZGDRILIAEoAlBBw/4ANgIECyABIAEoAlAoAkQ2AiwgASgCLARAIAEoAiwgASgCREsEQCABIAEoAkQ2AiwLIAEoAiwgASgCQEsEQCABIAEoAkA2AiwLIAEoAixFDREgASgCSCABKAJMIAEoAiwQGhogASABKAJEIAEoAixrNgJEIAEgASgCLCABKAJMajYCTCABIAEoAkAgASgCLGs2AkAgASABKAIsIAEoAkhqNgJIIAEoAlAiACAAKAJEIAEoAixrNgJEDBILIAEoAlBBv/4ANgIEDBELA0AgASgCOEEOSQRAIAEoAkRFDREgASABKAJEQX9qNgJEIAEgASgCTCIAQQFqNgJMIAEgASgCPCAALQAAIAEoAjh0ajYCPCABIAEoAjhBCGo2AjgMAQsLIAEoAlAgASgCPEEfcUGBAmo2AmQgASABKAI8QQV2NgI8IAEgASgCOEEFazYCOCABKAJQIAEoAjxBH3FBAWo2AmggASABKAI8QQV2NgI8IAEgASgCOEEFazYCOCABKAJQIAEoAjxBD3FBBGo2AmAgASABKAI8QQR2NgI8IAEgASgCOEEEazYCOAJAIAEoAlAoAmRBngJNBEAgASgCUCgCaEEeTQ0BCyABKAJYQdnvADYCGCABKAJQQdH+ADYCBAwRCyABKAJQQQA2AmwgASgCUEHF/gA2AgQLA0AgASgCUCgCbCABKAJQKAJgSQRAA0AgASgCOEEDSQRAIAEoAkRFDRIgASABKAJEQX9qNgJEIAEgASgCTCIAQQFqNgJMIAEgASgCPCAALQAAIAEoAjh0ajYCPCABIAEoAjhBCGo2AjgMAQsLIAEoAjxBB3EhAiABKAJQQfQAaiEDIAEoAlAiBCgCbCEAIAQgAEEBajYCbCAAQQF0QZDuAGovAQBBAXQgA2ogAjsBACABIAEoAjxBA3Y2AjwgASABKAI4QQNrNgI4DAELCwNAIAEoAlAoAmxBE0kEQCABKAJQQfQAaiECIAEoAlAiAygCbCEAIAMgAEEBajYCbCAAQQF0QZDuAGovAQBBAXQgAmpBADsBAAwBCwsgASgCUCABKAJQQbQKajYCcCABKAJQIAEoAlAoAnA2AlAgASgCUEEHNgJYIAFBACABKAJQQfQAakETIAEoAlBB8ABqIAEoAlBB2ABqIAEoAlBB9AVqEHI2AhAgASgCEARAIAEoAlhB/e8ANgIYIAEoAlBB0f4ANgIEDBALIAEoAlBBADYCbCABKAJQQcb+ADYCBAsDQAJAIAEoAlAoAmwgASgCUCgCZCABKAJQKAJoak8NAANAAkAgASABKAJQKAJQIAEoAjxBASABKAJQKAJYdEEBa3FBAnRqKAEANgEgIAEtACEgASgCOE0NACABKAJERQ0RIAEgASgCREF/ajYCRCABIAEoAkwiAEEBajYCTCABIAEoAjwgAC0AACABKAI4dGo2AjwgASABKAI4QQhqNgI4DAELCwJAIAEvASJBEEgEQCABIAEoAjwgAS0AIXY2AjwgASABKAI4IAEtACFrNgI4IAEvASIhAiABKAJQQfQAaiEDIAEoAlAiBCgCbCEAIAQgAEEBajYCbCAAQQF0IANqIAI7AQAMAQsCQCABLwEiQRBGBEADQCABKAI4IAEtACFBAmpJBEAgASgCREUNFCABIAEoAkRBf2o2AkQgASABKAJMIgBBAWo2AkwgASABKAI8IAAtAAAgASgCOHRqNgI8IAEgASgCOEEIajYCOAwBCwsgASABKAI8IAEtACF2NgI8IAEgASgCOCABLQAhazYCOCABKAJQKAJsRQRAIAEoAlhBlvAANgIYIAEoAlBB0f4ANgIEDAQLIAEgASgCUCABKAJQKAJsQQF0ai8BcjYCFCABIAEoAjxBA3FBA2o2AiwgASABKAI8QQJ2NgI8IAEgASgCOEECazYCOAwBCwJAIAEvASJBEUYEQANAIAEoAjggAS0AIUEDakkEQCABKAJERQ0VIAEgASgCREF/ajYCRCABIAEoAkwiAEEBajYCTCABIAEoAjwgAC0AACABKAI4dGo2AjwgASABKAI4QQhqNgI4DAELCyABIAEoAjwgAS0AIXY2AjwgASABKAI4IAEtACFrNgI4IAFBADYCFCABIAEoAjxBB3FBA2o2AiwgASABKAI8QQN2NgI8IAEgASgCOEEDazYCOAwBCwNAIAEoAjggAS0AIUEHakkEQCABKAJERQ0UIAEgASgCREF/ajYCRCABIAEoAkwiAEEBajYCTCABIAEoAjwgAC0AACABKAI4dGo2AjwgASABKAI4QQhqNgI4DAELCyABIAEoAjwgAS0AIXY2AjwgASABKAI4IAEtACFrNgI4IAFBADYCFCABIAEoAjxB/wBxQQtqNgIsIAEgASgCPEEHdjYCPCABIAEoAjhBB2s2AjgLCyABKAJQKAJsIAEoAixqIAEoAlAoAmQgASgCUCgCaGpLBEAgASgCWEGW8AA2AhggASgCUEHR/gA2AgQMAgsDQCABIAEoAiwiAEF/ajYCLCAABEAgASgCFCECIAEoAlBB9ABqIQMgASgCUCIEKAJsIQAgBCAAQQFqNgJsIABBAXQgA2ogAjsBAAwBCwsLDAELCyABKAJQKAIEQdH+AEYNDiABKAJQLwH0BEUEQCABKAJYQbDwADYCGCABKAJQQdH+ADYCBAwPCyABKAJQIAEoAlBBtApqNgJwIAEoAlAgASgCUCgCcDYCUCABKAJQQQk2AlggAUEBIAEoAlBB9ABqIAEoAlAoAmQgASgCUEHwAGogASgCUEHYAGogASgCUEH0BWoQcjYCECABKAIQBEAgASgCWEHV8AA2AhggASgCUEHR/gA2AgQMDwsgASgCUCABKAJQKAJwNgJUIAEoAlBBBjYCXCABQQIgASgCUEH0AGogASgCUCgCZEEBdGogASgCUCgCaCABKAJQQfAAaiABKAJQQdwAaiABKAJQQfQFahByNgIQIAEoAhAEQCABKAJYQfHwADYCGCABKAJQQdH+ADYCBAwPCyABKAJQQcf+ADYCBCABKAJUQQZGDQ0LIAEoAlBByP4ANgIECwJAIAEoAkRBBkkNACABKAJAQYICSQ0AIAEoAlggASgCSDYCDCABKAJYIAEoAkA2AhAgASgCWCABKAJMNgIAIAEoAlggASgCRDYCBCABKAJQIAEoAjw2AjwgASgCUCABKAI4NgJAIAEoAlggASgCMBDWAiABIAEoAlgoAgw2AkggASABKAJYKAIQNgJAIAEgASgCWCgCADYCTCABIAEoAlgoAgQ2AkQgASABKAJQKAI8NgI8IAEgASgCUCgCQDYCOCABKAJQKAIEQb/+AEYEQCABKAJQQX82Asg3CwwNCyABKAJQQQA2Asg3A0ACQCABIAEoAlAoAlAgASgCPEEBIAEoAlAoAlh0QQFrcUECdGooAQA2ASAgAS0AISABKAI4TQ0AIAEoAkRFDQ0gASABKAJEQX9qNgJEIAEgASgCTCIAQQFqNgJMIAEgASgCPCAALQAAIAEoAjh0ajYCPCABIAEoAjhBCGo2AjgMAQsLAkAgAS0AIEUNACABLQAgQfABcQ0AIAEgASgBIDYBGANAAkAgASABKAJQKAJQIAEvARogASgCPEEBIAEtABkgAS0AGGp0QQFrcSABLQAZdmpBAnRqKAEANgEgIAEtABkgAS0AIWogASgCOE0NACABKAJERQ0OIAEgASgCREF/ajYCRCABIAEoAkwiAEEBajYCTCABIAEoAjwgAC0AACABKAI4dGo2AjwgASABKAI4QQhqNgI4DAELCyABIAEoAjwgAS0AGXY2AjwgASABKAI4IAEtABlrNgI4IAEoAlAiACABLQAZIAAoAsg3ajYCyDcLIAEgASgCPCABLQAhdjYCPCABIAEoAjggAS0AIWs2AjggASgCUCIAIAEtACEgACgCyDdqNgLINyABKAJQIAEvASI2AkQgAS0AIEUEQCABKAJQQc3+ADYCBAwNCyABLQAgQSBxBEAgASgCUEF/NgLINyABKAJQQb/+ADYCBAwNCyABLQAgQcAAcQRAIAEoAlhBh/EANgIYIAEoAlBB0f4ANgIEDA0LIAEoAlAgAS0AIEEPcTYCTCABKAJQQcn+ADYCBAsgASgCUCgCTARAA0AgASgCOCABKAJQKAJMSQRAIAEoAkRFDQ0gASABKAJEQX9qNgJEIAEgASgCTCIAQQFqNgJMIAEgASgCPCAALQAAIAEoAjh0ajYCPCABIAEoAjhBCGo2AjgMAQsLIAEoAlAiACAAKAJEIAEoAjxBASABKAJQKAJMdEEBa3FqNgJEIAEgASgCPCABKAJQKAJMdjYCPCABIAEoAjggASgCUCgCTGs2AjggASgCUCIAIAEoAlAoAkwgACgCyDdqNgLINwsgASgCUCABKAJQKAJENgLMNyABKAJQQcr+ADYCBAsDQAJAIAEgASgCUCgCVCABKAI8QQEgASgCUCgCXHRBAWtxQQJ0aigBADYBICABLQAhIAEoAjhNDQAgASgCREUNCyABIAEoAkRBf2o2AkQgASABKAJMIgBBAWo2AkwgASABKAI8IAAtAAAgASgCOHRqNgI8IAEgASgCOEEIajYCOAwBCwsgAS0AIEHwAXFFBEAgASABKAEgNgEYA0ACQCABIAEoAlAoAlQgAS8BGiABKAI8QQEgAS0AGSABLQAYanRBAWtxIAEtABl2akECdGooAQA2ASAgAS0AGSABLQAhaiABKAI4TQ0AIAEoAkRFDQwgASABKAJEQX9qNgJEIAEgASgCTCIAQQFqNgJMIAEgASgCPCAALQAAIAEoAjh0ajYCPCABIAEoAjhBCGo2AjgMAQsLIAEgASgCPCABLQAZdjYCPCABIAEoAjggAS0AGWs2AjggASgCUCIAIAEtABkgACgCyDdqNgLINwsgASABKAI8IAEtACF2NgI8IAEgASgCOCABLQAhazYCOCABKAJQIgAgAS0AISAAKALIN2o2Asg3IAEtACBBwABxBEAgASgCWEGj8QA2AhggASgCUEHR/gA2AgQMCwsgASgCUCABLwEiNgJIIAEoAlAgAS0AIEEPcTYCTCABKAJQQcv+ADYCBAsgASgCUCgCTARAA0AgASgCOCABKAJQKAJMSQRAIAEoAkRFDQsgASABKAJEQX9qNgJEIAEgASgCTCIAQQFqNgJMIAEgASgCPCAALQAAIAEoAjh0ajYCPCABIAEoAjhBCGo2AjgMAQsLIAEoAlAiACAAKAJIIAEoAjxBASABKAJQKAJMdEEBa3FqNgJIIAEgASgCPCABKAJQKAJMdjYCPCABIAEoAjggASgCUCgCTGs2AjggASgCUCIAIAEoAlAoAkwgACgCyDdqNgLINwsgASgCUEHM/gA2AgQLIAEoAkBFDQcgASABKAIwIAEoAkBrNgIsAkAgASgCUCgCSCABKAIsSwRAIAEgASgCUCgCSCABKAIsazYCLCABKAIsIAEoAlAoAjBLBEAgASgCUCgCxDcEQCABKAJYQbnxADYCGCABKAJQQdH+ADYCBAwMCwsCQCABKAIsIAEoAlAoAjRLBEAgASABKAIsIAEoAlAoAjRrNgIsIAEgASgCUCgCOCABKAJQKAIsIAEoAixrajYCKAwBCyABIAEoAlAoAjggASgCUCgCNCABKAIsa2o2AigLIAEoAiwgASgCUCgCREsEQCABIAEoAlAoAkQ2AiwLDAELIAEgASgCSCABKAJQKAJIazYCKCABIAEoAlAoAkQ2AiwLIAEoAiwgASgCQEsEQCABIAEoAkA2AiwLIAEgASgCQCABKAIsazYCQCABKAJQIgAgACgCRCABKAIsazYCRANAIAEgASgCKCIAQQFqNgIoIAAtAAAhACABIAEoAkgiAkEBajYCSCACIAA6AAAgASABKAIsQX9qIgA2AiwgAA0ACyABKAJQKAJERQRAIAEoAlBByP4ANgIECwwICyABKAJARQ0GIAEoAlAoAkQhACABIAEoAkgiAkEBajYCSCACIAA6AAAgASABKAJAQX9qNgJAIAEoAlBByP4ANgIEDAcLIAEoAlAoAgwEQANAIAEoAjhBIEkEQCABKAJERQ0IIAEgASgCREF/ajYCRCABIAEoAkwiAEEBajYCTCABIAEoAjwgAC0AACABKAI4dGo2AjwgASABKAI4QQhqNgI4DAELCyABIAEoAjAgASgCQGs2AjAgASgCWCIAIAEoAjAgACgCFGo2AhQgASgCUCIAIAEoAjAgACgCIGo2AiACQCABKAJQKAIMQQRxRQ0AIAEoAjBFDQACfyABKAJQKAIUBEAgASgCUCgCHCABKAJIIAEoAjBrIAEoAjAQGwwBCyABKAJQKAIcIAEoAkggASgCMGsgASgCMBA9CyEAIAEoAlAgADYCHCABKAJYIAA2AjALIAEgASgCQDYCMAJAIAEoAlAoAgxBBHFFDQACfyABKAJQKAIUBEAgASgCPAwBCyABKAI8QQh2QYD+A3EgASgCPEEYdmogASgCPEGA/gNxQQh0aiABKAI8Qf8BcUEYdGoLIAEoAlAoAhxGDQAgASgCWEHX8QA2AhggASgCUEHR/gA2AgQMCAsgAUEANgI8IAFBADYCOAsgASgCUEHP/gA2AgQLAkAgASgCUCgCDEUNACABKAJQKAIURQ0AA0AgASgCOEEgSQRAIAEoAkRFDQcgASABKAJEQX9qNgJEIAEgASgCTCIAQQFqNgJMIAEgASgCPCAALQAAIAEoAjh0ajYCPCABIAEoAjhBCGo2AjgMAQsLIAEoAjwgASgCUCgCIEcEQCABKAJYQezxADYCGCABKAJQQdH+ADYCBAwHCyABQQA2AjwgAUEANgI4CyABKAJQQdD+ADYCBAsgAUEBNgIQDAMLIAFBfTYCEAwCCyABQXw2AlwMAwsgAUF+NgJcDAILCyABKAJYIAEoAkg2AgwgASgCWCABKAJANgIQIAEoAlggASgCTDYCACABKAJYIAEoAkQ2AgQgASgCUCABKAI8NgI8IAEoAlAgASgCODYCQAJAAkAgASgCUCgCLA0AIAEoAjAgASgCWCgCEEYNASABKAJQKAIEQdH+AE8NASABKAJQKAIEQc7+AEkNACABKAJUQQRGDQELIAEoAlggASgCWCgCDCABKAIwIAEoAlgoAhBrEM4CBEAgASgCUEHS/gA2AgQgAUF8NgJcDAILCyABIAEoAjQgASgCWCgCBGs2AjQgASABKAIwIAEoAlgoAhBrNgIwIAEoAlgiACABKAI0IAAoAghqNgIIIAEoAlgiACABKAIwIAAoAhRqNgIUIAEoAlAiACABKAIwIAAoAiBqNgIgAkAgASgCUCgCDEEEcUUNACABKAIwRQ0AAn8gASgCUCgCFARAIAEoAlAoAhwgASgCWCgCDCABKAIwayABKAIwEBsMAQsgASgCUCgCHCABKAJYKAIMIAEoAjBrIAEoAjAQPQshACABKAJQIAA2AhwgASgCWCAANgIwCyABKAJYIAEoAlAoAkBBwABBACABKAJQKAIIG2pBgAFBACABKAJQKAIEQb/+AEYbakGAAkEAIAEoAlAoAgRBx/4ARwR/IAEoAlAoAgRBwv4ARgVBAQtBAXEbajYCLAJAAkAgASgCNEUEQCABKAIwRQ0BCyABKAJUQQRHDQELIAEoAhANACABQXs2AhALIAEgASgCEDYCXAsgASgCXCEAIAFB4ABqJAAgAAvoAgEBfyMAQSBrIgEkACABIAA2AhggAUFxNgIUIAFBkIMBNgIQIAFBODYCDAJAAkACQCABKAIQRQ0AIAEoAhAsAABBgO4ALAAARw0AIAEoAgxBOEYNAQsgAUF6NgIcDAELIAEoAhhFBEAgAUF+NgIcDAELIAEoAhhBADYCGCABKAIYKAIgRQRAIAEoAhhBBTYCICABKAIYQQA2AigLIAEoAhgoAiRFBEAgASgCGEEGNgIkCyABIAEoAhgoAihBAUHQNyABKAIYKAIgEQEANgIEIAEoAgRFBEAgAUF8NgIcDAELIAEoAhggASgCBDYCHCABKAIEIAEoAhg2AgAgASgCBEEANgI4IAEoAgRBtP4ANgIEIAEgASgCGCABKAIUENICNgIIIAEoAggEQCABKAIYKAIoIAEoAgQgASgCGCgCJBEEACABKAIYQQA2AhwLIAEgASgCCDYCHAsgASgCHCEAIAFBIGokACAAC60CAQF/IwBBIGsiAiQAIAIgADYCGCACIAE2AhQCQCACKAIYEEsEQCACQX42AhwMAQsgAiACKAIYKAIcNgIMAkAgAigCFEEASARAIAJBADYCECACQQAgAigCFGs2AhQMAQsgAiACKAIUQQR1QQVqNgIQIAIoAhRBMEgEQCACIAIoAhRBD3E2AhQLCwJAIAIoAhRFDQAgAigCFEEITgRAIAIoAhRBD0wNAQsgAkF+NgIcDAELAkAgAigCDCgCOEUNACACKAIMKAIoIAIoAhRGDQAgAigCGCgCKCACKAIMKAI4IAIoAhgoAiQRBAAgAigCDEEANgI4CyACKAIMIAIoAhA2AgwgAigCDCACKAIUNgIoIAIgAigCGBDTAjYCHAsgAigCHCEAIAJBIGokACAAC3IBAX8jAEEQayIBJAAgASAANgIIAkAgASgCCBBLBEAgAUF+NgIMDAELIAEgASgCCCgCHDYCBCABKAIEQQA2AiwgASgCBEEANgIwIAEoAgRBADYCNCABIAEoAggQ1AI2AgwLIAEoAgwhACABQRBqJAAgAAubAgEBfyMAQRBrIgEkACABIAA2AggCQCABKAIIEEsEQCABQX42AgwMAQsgASABKAIIKAIcNgIEIAEoAgRBADYCICABKAIIQQA2AhQgASgCCEEANgIIIAEoAghBADYCGCABKAIEKAIMBEAgASgCCCABKAIEKAIMQQFxNgIwCyABKAIEQbT+ADYCBCABKAIEQQA2AgggASgCBEEANgIQIAEoAgRBgIACNgIYIAEoAgRBADYCJCABKAIEQQA2AjwgASgCBEEANgJAIAEoAgQgASgCBEG0CmoiADYCcCABKAIEIAA2AlQgASgCBCAANgJQIAEoAgRBATYCxDcgASgCBEF/NgLINyABQQA2AgwLIAEoAgwhACABQRBqJAAgAAuIAQEBfyMAQRBrIgIkACACIAA2AgwgAiABNgIIIwBBEGsiACACKAIMNgIMIAAoAgxBADYCACAAKAIMQQA2AgQgACgCDEEANgIIIAIoAgwgAigCCDYCAAJAIAIoAgwQsAFBAUYEQCACKAIMQbScASgCADYCBAwBCyACKAIMQQA2AgQLIAJBEGokAAuSFQEBfyMAQeAAayICIAA2AlwgAiABNgJYIAIgAigCXCgCHDYCVCACIAIoAlwoAgA2AlAgAiACKAJQIAIoAlwoAgRBBWtqNgJMIAIgAigCXCgCDDYCSCACIAIoAkggAigCWCACKAJcKAIQa2s2AkQgAiACKAJIIAIoAlwoAhBBgQJrajYCQCACIAIoAlQoAiw2AjwgAiACKAJUKAIwNgI4IAIgAigCVCgCNDYCNCACIAIoAlQoAjg2AjAgAiACKAJUKAI8NgIsIAIgAigCVCgCQDYCKCACIAIoAlQoAlA2AiQgAiACKAJUKAJUNgIgIAJBASACKAJUKAJYdEEBazYCHCACQQEgAigCVCgCXHRBAWs2AhgDQCACKAIoQQ9JBEAgAiACKAJQIgBBAWo2AlAgAiACKAIsIAAtAAAgAigCKHRqNgIsIAIgAigCKEEIajYCKCACIAIoAlAiAEEBajYCUCACIAIoAiwgAC0AACACKAIodGo2AiwgAiACKAIoQQhqNgIoCyACQRBqIAIoAiQgAigCLCACKAIccUECdGooAQA2AQACQAJAA0AgAiACLQARNgIMIAIgAigCLCACKAIMdjYCLCACIAIoAiggAigCDGs2AiggAiACLQAQNgIMIAIoAgxFBEAgAi8BEiEAIAIgAigCSCIBQQFqNgJIIAEgADoAAAwCCyACKAIMQRBxBEAgAiACLwESNgIIIAIgAigCDEEPcTYCDCACKAIMBEAgAigCKCACKAIMSQRAIAIgAigCUCIAQQFqNgJQIAIgAigCLCAALQAAIAIoAih0ajYCLCACIAIoAihBCGo2AigLIAIgAigCCCACKAIsQQEgAigCDHRBAWtxajYCCCACIAIoAiwgAigCDHY2AiwgAiACKAIoIAIoAgxrNgIoCyACKAIoQQ9JBEAgAiACKAJQIgBBAWo2AlAgAiACKAIsIAAtAAAgAigCKHRqNgIsIAIgAigCKEEIajYCKCACIAIoAlAiAEEBajYCUCACIAIoAiwgAC0AACACKAIodGo2AiwgAiACKAIoQQhqNgIoCyACQRBqIAIoAiAgAigCLCACKAIYcUECdGooAQA2AQACQANAIAIgAi0AETYCDCACIAIoAiwgAigCDHY2AiwgAiACKAIoIAIoAgxrNgIoIAIgAi0AEDYCDCACKAIMQRBxBEAgAiACLwESNgIEIAIgAigCDEEPcTYCDCACKAIoIAIoAgxJBEAgAiACKAJQIgBBAWo2AlAgAiACKAIsIAAtAAAgAigCKHRqNgIsIAIgAigCKEEIajYCKCACKAIoIAIoAgxJBEAgAiACKAJQIgBBAWo2AlAgAiACKAIsIAAtAAAgAigCKHRqNgIsIAIgAigCKEEIajYCKAsLIAIgAigCBCACKAIsQQEgAigCDHRBAWtxajYCBCACIAIoAiwgAigCDHY2AiwgAiACKAIoIAIoAgxrNgIoIAIgAigCSCACKAJEazYCDAJAIAIoAgQgAigCDEsEQCACIAIoAgQgAigCDGs2AgwgAigCDCACKAI4SwRAIAIoAlQoAsQ3BEAgAigCXEGw7QA2AhggAigCVEHR/gA2AgQMCgsLIAIgAigCMDYCAAJAIAIoAjRFBEAgAiACKAIAIAIoAjwgAigCDGtqNgIAIAIoAgwgAigCCEkEQCACIAIoAgggAigCDGs2AggDQCACIAIoAgAiAEEBajYCACAALQAAIQAgAiACKAJIIgFBAWo2AkggASAAOgAAIAIgAigCDEF/aiIANgIMIAANAAsgAiACKAJIIAIoAgRrNgIACwwBCwJAIAIoAjQgAigCDEkEQCACIAIoAgAgAigCPCACKAI0aiACKAIMa2o2AgAgAiACKAIMIAIoAjRrNgIMIAIoAgwgAigCCEkEQCACIAIoAgggAigCDGs2AggDQCACIAIoAgAiAEEBajYCACAALQAAIQAgAiACKAJIIgFBAWo2AkggASAAOgAAIAIgAigCDEF/aiIANgIMIAANAAsgAiACKAIwNgIAIAIoAjQgAigCCEkEQCACIAIoAjQ2AgwgAiACKAIIIAIoAgxrNgIIA0AgAiACKAIAIgBBAWo2AgAgAC0AACEAIAIgAigCSCIBQQFqNgJIIAEgADoAACACIAIoAgxBf2oiADYCDCAADQALIAIgAigCSCACKAIEazYCAAsLDAELIAIgAigCACACKAI0IAIoAgxrajYCACACKAIMIAIoAghJBEAgAiACKAIIIAIoAgxrNgIIA0AgAiACKAIAIgBBAWo2AgAgAC0AACEAIAIgAigCSCIBQQFqNgJIIAEgADoAACACIAIoAgxBf2oiADYCDCAADQALIAIgAigCSCACKAIEazYCAAsLCwNAIAIoAghBAk1FBEAgAiACKAIAIgBBAWo2AgAgAC0AACEAIAIgAigCSCIBQQFqNgJIIAEgADoAACACIAIoAgAiAEEBajYCACAALQAAIQAgAiACKAJIIgFBAWo2AkggASAAOgAAIAIgAigCACIAQQFqNgIAIAAtAAAhACACIAIoAkgiAUEBajYCSCABIAA6AAAgAiACKAIIQQNrNgIIDAELCwwBCyACIAIoAkggAigCBGs2AgADQCACIAIoAgAiAEEBajYCACAALQAAIQAgAiACKAJIIgFBAWo2AkggASAAOgAAIAIgAigCACIAQQFqNgIAIAAtAAAhACACIAIoAkgiAUEBajYCSCABIAA6AAAgAiACKAIAIgBBAWo2AgAgAC0AACEAIAIgAigCSCIBQQFqNgJIIAEgADoAACACIAIoAghBA2s2AgggAigCCEECSw0ACwsgAigCCARAIAIgAigCACIAQQFqNgIAIAAtAAAhACACIAIoAkgiAUEBajYCSCABIAA6AAAgAigCCEEBSwRAIAIgAigCACIAQQFqNgIAIAAtAAAhACACIAIoAkgiAUEBajYCSCABIAA6AAALCwwCCyACKAIMQcAAcUUEQCACQRBqIAIoAiAgAi8BEiACKAIsQQEgAigCDHRBAWtxakECdGooAQA2AQAMAQsLIAIoAlxBzu0ANgIYIAIoAlRB0f4ANgIEDAQLDAILIAIoAgxBwABxRQRAIAJBEGogAigCJCACLwESIAIoAixBASACKAIMdEEBa3FqQQJ0aigBADYBAAwBCwsgAigCDEEgcQRAIAIoAlRBv/4ANgIEDAILIAIoAlxB5O0ANgIYIAIoAlRB0f4ANgIEDAELQQAhACACKAJQIAIoAkxJBH8gAigCSCACKAJASQVBAAtBAXENAQsLIAIgAigCKEEDdjYCCCACIAIoAlAgAigCCGs2AlAgAiACKAIoIAIoAghBA3RrNgIoIAIgAigCLEEBIAIoAih0QQFrcTYCLCACKAJcIAIoAlA2AgAgAigCXCAC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AghBASACKAIIKAIwdDYCLCACKAIIIAIoAggoAixBAWs2AjQgAigCCCACKAIYQQdqNgJQIAIoAghBASACKAIIKAJQdDYCTCACKAIIIAIoAggoAkxBAWs2AlQgAigCCCACKAIIKAJQQQJqQQNuNgJYIAIoAigoAiggAigCCCgCLEECIAIoAigoAiARAQAhACACKAIIIAA2AjggAigCKCgCKCACKAIIKAIsQQIgAigCKCgCIBEBACEAIAIoAgggADYCQCACKAIoKAIoIAIoAggoAkxBAiACKAIoKAIgEQEAIQAgAigCCCAANgJEIAIoAghBADYCwC0gAigCCEEBIAIoAhhBBmp0NgKcLSACIAIoAigoAiggAigCCCgCnC1BBCACKAIoKAIgEQEANgIAIAIoAgggAigCADYCCCACKAIIIAIoAggoApwtQQJ0NgIMAkACQCACKAIIKAI4RQ0AIAIoAggoAkBFDQAgAigCCCgCREUNACACKAIIKAIIDQELIAIoAghBmgU2AgQgAigCKEHo1AAoAgA2AhggAigCKBCzARogAkF8NgIsDAELIAIoAgggAigCACACKAIIKAKcLUEBdkEBdGo2AqQtIAIoAgggAigCCCgCCCACKAIIKAKcLUEDbGo2ApgtIAIoAgggAigCJDYChAEgAigCCCACKAIUNgKIASACKAIIIAIoAiA6ACQgAiACKAIoEOACNgIsCyACKAIsIQAgAkEwaiQAIAALGAEBfyMAQRBrIgEgADYCDCABKAIMQQxqC2wBAX8jAEEQayICIAA2AgwgAiABNgIIIAJBADYCBANAIAIgAigCBCACKAIMQQFxcjYCBCACIAIoAgxBAXY2AgwgAiACKAIEQQF0NgIEIAIgAigCCEF/aiIANgIIIABBAEoNAAsgAigCBEEBdguVAgEBfyMAQUBqIgMkACADIAA2AjwgAyABNgI4IAMgAjYCNCADQQA2AgwgA0EBNgIIA0AgAygCCEEPSkUEQCADIAMoAgwgAygCNCADKAIIQQFrQQF0ai8BAGpBAXQ2AgwgA0EQaiADKAIIQQF0aiADKAIMOwEAIAMgAygCCEEBajYCCAwBCwsgA0EANgIEA0AgAygCBCADKAI4TARAIAMgAygCPCADKAIEQQJ0ai8BAjYCACADKAIABEAgA0EQaiADKAIAQQF0aiIBLwEAIQAg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ACAALwG4LUHA4wAvAQAgASgCHCgCvC10cjsBuC0gASgCHCIAIAEoAhAgACgCvC1qNgK8LQsgASgCHBC3ASABQSBqJAALIwEBfyMAQRBrIgEkACABIAA2AgwgASgCDBC3ASABQRBqJAALlgEBAX8jAEEQayIBJAAgASAANgIMIAEoAgwgASgCDEGUAWo2ApgWIAEoAgxBgNsANgKgFiABKAIMIAEoAgxBiBNqNgKkFiABKAIMQZTbADYCrBYgASgCDCABKAIMQfwUajYCsBYgASgCDEGo2wA2ArgWIAEoAgxBADsBuC0gASgCDEEANgK8LSABKAIMELkBIAFBEGokAAvXDQEBfyMAQSBrIgMgADYCGCADIAE2AhQgAyACNgIQIAMgAygCGEEQdjYCDCADIAMoAhhB//8DcTYCGAJAIAMoAhBBAUYEQCADIAMoAhQtAAAgAygCGGo2AhggAygCGEHx/wNPBEAgAyADKAIYQfH/A2s2AhgLIAMgAygCGCADKAIMajYCDCADKAIMQfH/A08EQCADIAMoAgxB8f8DazYCDAsgAyADKAIYIAMoAgxBEHRyNgIcDAELIAMoAhRFBEAgA0EBNgIcDAELIAMoAhBBEEkEQANAIAMgAygCECIAQX9qNgIQIAAEQCADIAMoAhQiAEEBajYCFCADIAAtAAAgAygCGGo2AhggAyADKAIYIAMoAgxqNgIMDAELCyADKAIYQfH/A08EQCADIAMoAhhB8f8DazYCGAsgAyADKAIMQfH/A3A2AgwgAyADKAIYIAMoAgxBEHRyNgIcDAELA0AgAygCEEGwK0lFBEAgAyADKAIQQbArazYCECADQdsCNgIIA0AgAyADKAIULQAAIAMoAhhqNgIYIAMgAygCGCADKAIMajYCDCADIAMoAhQtAAEgAygCGGo2AhggAyADKAIYIAMoAgxqNgIMIAMgAygCFC0AAiADKAIYajYCGCADIAMoAhggAygCDGo2AgwgAyADKAIULQADIAMoAhhqNgIYIAMgAygCGCADKAIMajYCDCADIAMoAhQtAAQgAygCGGo2AhggAyADKAIYIAMoAgxqNgIMIAMgAygCFC0ABSADKAIYajYCGCADIAMoAhggAygCDGo2AgwgAyADKAIULQAGIAMoAhhqNgIYIAMgAygCGCADKAIMajYCDCADIAMoAhQtAAcgAygCGGo2AhggAyADKAIYIAMoAgxqNgIMIAMgAygCFC0ACCADKAIYajYCGCADIAMoAhggAygCDGo2AgwgAyADKAIULQAJIAMoAhhqNgIYIAMgAygCGCADKAIMajYCDCADIAMoAhQtAAogAygCGGo2AhggAyADKAIYIAMoAgxqNgIMIAMgAygCFC0ACyADKAIYajYCGCADIAMoAhggAygCDGo2AgwgAyADKAIULQAMIAMoAhhqNgIYIAMgAygCGCADKAIMajYCDCADIAMoAhQtAA0gAygCGGo2AhggAyADKAIYIAMoAgxqNgIMIAMgAygCFC0ADiADKAIYajYCGCADIAMoAhggAygCDGo2AgwgAyADKAIULQAPIAMoAhhqNgIYIAMgAygCGCADKAIMajYCDCADIAMoAhRBEGo2AhQgAyADKAIIQX9qIgA2AgggAA0ACyADIAMoAhhB8f8DcDYCGCADIAMoAgxB8f8DcDYCDAwBCwsgAygCEARAA0AgAygCEEEQSUUEQCADIAMoAhBBEGs2AhAgAyADKAIULQAAIAMoAhhqNgIYIAMgAygCGCADKAIMajYCDCADIAMoAhQtAAEgAygCGGo2AhggAyADKAIYIAMoAgxqNgIMIAMgAygCFC0AAiADKAIYajYCGCADIAMoAhggAygCDGo2AgwgAyADKAIULQADIAMoAhhqNgIYIAMgAygCGCADKAIMajYCDCADIAMoAhQtAAQgAygCGGo2AhggAyADKAIYIAMoAgxqNgIMIAMgAygCFC0ABSADKAIYajYCGCADIAMoAhggAygCDGo2AgwgAyADKAIULQAGIAMoAhhqNgIYIAMgAygCGCADKAIMajYCDCADIAMoAhQtAAcgAygCGGo2AhggAyADKAIYIAMoAgxqNgIMIAMgAygCFC0ACCADKAIYajYCGCADIAMoAhggAygCDGo2AgwgAyADKAIULQAJIAMoAhhqNgIYIAMgAygCGCADKAIMajYCDCADIAMoAhQtAAogAygCGGo2AhggAyADKAIYIAMoAgxqNgIMIAMgAygCFC0ACyADKAIYajYCGCADIAMoAhggAygCDGo2AgwgAyADKAIULQAMIAMoAhhqNgIYIAMgAygCGCADKAIMajYCDCADIAMoAhQtAA0gAygCGGo2AhggAyADKAIYIAMoAgxqNgIMIAMgAygC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JCADIAE3AxggAyACNgIUIAMgAygCJCADKQMYIAMoAhQQfyIBNwMIAkAgAVAEQCADQgA3AygMAQsgAyADKAIkKAJAIAMpAxinQQR0aigCADYCBAJAIAMpAwggAygCBCkDIHwgAykDCFoEQCADKQMIIAMoAgQpAyB8Qv///////////wBYDQELIAMoAhRBBEEWEBUgA0IANwMoDAELIAMgAygCBCkDICADKQMIfDcDCCADKAIELwEMQQhxBEAgAygCJCgCACADKQMIQQAQKEEASARAIAMoAhQgAygCJCgCABAYIANCADcDKAwCCyADKAIkKAIAIANCBBAvQgRSBEAgAygCFCADKAIkKAIAEBggA0IANwMoDAILIAMoAABB0JadwABGBEAgAyADKQMIQgR8NwMICyADIAMpAwhCDHw3AwggAygCBEEAEIABQQFxBEAgAyADKQMIQgh8NwMICyADKQMIQv///////////wBWBEAgAygCFEEEQRYQFSADQgA3AygMAgsLIAMgAykDCDcDKAsgAykDKCEBIANBMGokACABC/8BAQF/IwBBEGsiAiQAIAIgADYCDCACIAE6AAsCQCACKAIMKAIQQQ5GBEAgAigCDEE/OwEKDAELIAIoAgwoAhBBDEYEQCACKAIMQS47AQoMAQsCQCACLQALQQFxRQRAIAIoAgxBABCAAUEBcUUNAQsgAigCDEEtOwEKDAELAkAgAigCDCgCEEEIRwRAIAIoAgwvAVJBAUcNAQsgAigCDEEUOwEKDAELIAIgAigCDCgCMBBSIgA7AQggAEH//wNxQQBKBEAgAigCDCgCMCgCACACLwEIQQFrai0AAEEvRgRAIAIoAgxBFDsBCgwCCwsgAigCDEEKOwEKCyACQRBqJAALwAIBAX8jAEEwayICJAAgAiAANgIoIAJBgAI7ASYgAiABNgIgIAIgAi8BJkGAAnFBAEc6ABsgAkEeQS4gAi0AG0EBcRs2AhwCQCACKAIoQRpBHCACLQAbQQFxG6xBARAoQQBIBEAgAigCICACKAIoEBggAkF/NgIsDAELIAIgAigCKEEEQQYgAi0AG0EBcRusIAJBDmogAigCIBBBIgA2AgggAEUEQCACQX82AiwMAQsgAkEANgIUA0AgAigCFEECQQMgAi0AG0EBcRtIBEAgAiACKAIIEB5B//8DcSACKAIcajYCHCACIAIoAhRBAWo2AhQMAQsLIAIoAggQSEEBcUUEQCACKAIgQRRBABAVIAIoAggQFyACQX82AiwMAQsgAigCCBAXIAIgAigCHDYCLAsgAigCLCEAIAJBMGokACAAC/8DAQF/IwBBIGsiAiQAIAIgADYCGCACIAE2AhQCQCACKAIYKAIQQeMARwRAIAJBAToAHwwBCyACIAIoAhgoAjQgAkESakGBsgJBgAZBABBfNgIIAkAgAigCCARAIAIvARJBB04NAQsgAigCFEEVQQAQFSACQQA6AB8MAQsgAiACKAIIIAIvARKtECoiADYCDCAARQRAIAIoAhRBFEEAEBUgAkEAOgAfDAELIAJBAToABwJAAkACQCACKAIMEB5Bf2oOAgIAAQsgAigCGCkDKEIUVARAIAJBADoABwsMAQsgAigCFEEYQQAQFSACKAIMEBcgAkEAOgAfDAELIAIoAgxCAhAfLwAAQcGKAUcEQCACKAIUQRhBABAVIAIoAgwQFyACQQA6AB8MAQsCQAJAAkACQAJAIAIoAgwQjQFBf2oOAwABAgMLIAJBgQI7AQQMAwsgAkGCAjsBBAwCCyACQYMCOwEEDAELIAIoAhRBGEEAEBUgAigCDBAXIAJBADoAHwwBCyACLwESQQdHBEAgAigCFEEVQQAQFSACKAIMEBcgAkEAOgAfDAELIAIoAhggAi0AB0EBcToABiACKAIYIAIvAQQ7AVIgAigCDBAeQf//A3EhACACKAIYIAA2AhAgAigCDBAXIAJBAToAHwsgAi0AH0EBcSEAIAJBIGokACAAC7kBAQF/IwBBMGsiAiQAIAIgADsBLiACIAE7ASwgAkIANwIAIAJBADYCKCACQgA3AiAgAkIANwIYIAJCADcCECACQgA3AgggAkEANgIgIAIgAi8BLEEJdUHQAGo2AhQgAiACLwEsQQV1QQ9xQQFrNgIQIAIgAi8BLEEfcTYCDCACIAIvAS5BC3U2AgggAiACLwEuQQV1QT9xNgIEIAIgAi8BLkEBdEE+cTYCACACEAwhACACQTBqJAAgAAtMAQJ/IwBBEGsiACQAIABB2AAQGSIBNgIIAkAgAUUEQCAAQQA2AgwMAQsgACgCCBBdIAAgACgCCDYCDAsgACgCDCEBIABBEGokACABCwgAQQFBOBB9CwMAAQsL8o0BJwBBgAgLlAVObyBlcnJvcgBNdWx0aS1kaXNrIHppcCBhcmNoaXZlcyBub3Qgc3VwcG9ydGVkAFJlbmFtaW5nIHRlbXBvcmFyeSBmaWxlIGZhaWxlZABDbG9zaW5nIHppcCBhcmNoaXZlIGZhaWxlZABTZWVrIGVycm9yAFJlYWQgZXJyb3IAV3JpdGUgZXJyb3IAQ1JDIGVycm9yAENvbnRhaW5pbmcgemlwIGFyY2hpdmUgd2FzIGNsb3NlZABObyBzdWNoIGZpbGUARmlsZSBhbHJlYWR5IGV4aXN0cwBDYW4ndCBvcGVuIGZpbGUARmFpbHVyZSB0byBjcmVhdGUgdGVtcG9yYXJ5IGZpbGUAWmxpYiBlcnJvcgBNYWxsb2MgZmFpbHVyZQBFbnRyeSBoYXMgYmVlbiBjaGFuZ2VkAENvbXByZXNzaW9uIG1ldGhvZCBub3Qgc3VwcG9ydGVkAFByZW1hdHVyZSBlbmQgb2YgZmlsZQBJbnZhbGlkIGFyZ3VtZW50AE5vdCBhIHppcCBhcmNoaXZlAEludGVybmFsIGVycm9yAFppcCBhcmNoaXZlIGluY29uc2lzdGVudABDYW4ndCByZW1vdmUgZmlsZQBFbnRyeSBoYXMgYmVlbiBkZWxldGVkAEVuY3J5cHRpb24gbWV0aG9kIG5vdCBzdXBwb3J0ZWQAUmVhZC1vbmx5IGFyY2hpdmUATm8gcGFzc3dvcmQgcHJvdmlkZWQAV3JvbmcgcGFzc3dvcmQgcHJvdmlkZWQAT3BlcmF0aW9uIG5vdCBzdXBwb3J0ZWQAUmVzb3VyY2Ugc3RpbGwgaW4gdXNlAFRlbGwgZXJyb3IAQ29tcHJlc3NlZCBkYXRhIGludmFsaWQAQaENC4ABBAAACQQAAC8EAABOBAAAaQQAAHQEAAB/BAAAiwQAAJUEAAC3BAAAxAQAANgEAADoBAAACQUAABQFAAAjBQAAOgUAAFsFAABxBQAAggUAAJQFAACjBQAAvAUAAM4FAADlBQAABQYAABcGAAAsBgAARAYAAFwGAAByBgAAfQYAACAAQbgOCxEBAAAAAQAAAAEAAAABAAAAAQBB3A4LCQEAAAABAAAAAgBBiA8LAQEAQagPCwEBAEG0DwuSRZYwB3csYQ7uulEJmRnEbQeP9GpwNaVj6aOVZJ4yiNsOpLjceR7p1eCI2dKXK0y2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AAgAZgAIAOYACAAWAAgAlgAIAFYACADWAAgANgAIALYACAB2AAgA9gAIAA4ACACOAAgATgAIAM4ACAAuAAgArgAIAG4ACADuAAgAHgAIAJ4ACABeAAgA3gAIAD4ACAC+AAgAfgAIAP4ACAABAAgAgQAIAEEACADBAAgAIQAIAKEACABhAAgA4QAIABEACACRAAgAUQAIANEACAAxAAgAsQAIAHEACADxAAgACQAIAIkACABJAAgAyQAIACkACACpAAgAaQAIAOkACAAZAAgAmQAIAFkACADZAAgAOQAIALkACAB5AAgA+QAIAAUACACFAAgARQAIAMUACAAlAAgApQAIAGUACADlAAgAFQAIAJUACABVAAgA1QAIADUACAC1AAgAdQAIAPUACAANAAgAjQAIAE0ACADNAAgALQAIAK0ACABtAAgA7QAIAB0ACACdAAgAXQAIAN0ACAA9AAgAvQAIAH0ACAD9AAgAEwAJABMBCQCTAAkAkwEJAFMACQBTAQkA0wAJANMBCQAzAAkAMwEJALMACQCzAQkAcwAJAHMBCQDzAAkA8wEJAAsACQALAQkAiwAJAIsBCQBLAAkASwEJAMsACQDLAQkAKwAJACsBCQCrAAkAqwEJAGsACQBrAQkA6wAJAOsBCQAbAAkAGwEJAJsACQCbAQkAWwAJAFsBCQDbAAkA2wEJADsACQA7AQkAuwAJALsBCQB7AAkAewEJAPsACQD7AQkABwAJAAcBCQCHAAkAhwEJAEcACQBHAQkAxwAJAMcBCQAnAAkAJwEJAKcACQCnAQkAZwAJAGcBCQDnAAkA5wEJABcACQAXAQkAlwAJAJcBCQBXAAkAVwEJANcACQDXAQkANwAJADcBCQC3AAkAtwEJAHcACQB3AQkA9wAJAPcBCQAPAAkADwEJAI8ACQCPAQkATwAJAE8BCQDPAAkAzwEJAC8ACQAvAQkArwAJAK8BCQBvAAkAbwEJAO8ACQDvAQkAHwAJAB8BCQCfAAkAnwEJAF8ACQBfAQkA3wAJAN8BCQA/AAkAPwEJAL8ACQC/AQkAfwAJAH8BCQD/AAkA/wEJAAAABwBAAAcAIAAHAGAABwAQAAcAUAAHADAABwBwAAcACAAHAEgABwAoAAcAaAAHABgABwBYAAcAOAAHAHgABwAEAAcARAAHACQABwBkAAcAFAAHAFQABwA0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AAAJ6AAQBwgAAAhcAAAIHAAACZgAFAdTAAAIfAAACDwAAAnYABIHFwAACGwAAAgsAAAJuAAACAwAAAiMAAAITAAACfgAEAcDAAAIUgAACBIAFQijABMHIwAACHIAAAgyAAAJxAARBwsAAAhiAAAIIgAACaQAAAgCAAAIggAACEIAAAnkABAHBwAACFoAAAgaAAAJlAAUB0MAAAh6AAAIOgAACdQAEgcTAAAIagAACCoAAAm0AAAICgAACIoAAAhKAAAJ9AAQBwUAAAhWAAAIFgBACAAAEwczAAAIdgAACDYAAAnMABEHDwAACGYAAAgmAAAJrAAACAYAAAiGAAAIRgAACewAEAcJAAAIXgAACB4AAAmcABQHYwAACH4AAAg+AAAJ3AASBxsAAAhuAAAILgAACbwAAAgOAAAIjgAACE4AAAn8AGAHAAAACFEAAAgRABUIgwASBx8AAAhxAAAIMQAACcIAEAcKAAAIYQAACCEAAAmiAAAIAQAACIEAAAhBAAAJ4gAQBwYAAAhZAAAIGQAACZIAEwc7AAAIeQAACDkAAAnSABEHEQAACGkAAAgpAAAJsgAACAkAAAiJAAAISQAACfIAEAcEAAAIVQAACBUAEAgCARMHKwAACHUAAAg1AAAJygARBw0AAAhlAAAIJQAACaoAAAgFAAAIhQAACEUAAAnqABAHCAAACF0AAAgdAAAJmgAUB1MAAAh9AAAIPQAACdoAEgcXAAAIbQAACC0AAAm6AAAIDQAACI0AAAhNAAAJ+gAQBwMAAAhTAAAIEwAVCMMAEwcjAAAIcwAACDMAAAnGABEHCwAACGMAAAgjAAAJpgAACAMAAAiDAAAIQwAACeYAEAcHAAAIWwAACBsAAAmWABQHQwAACHsAAAg7AAAJ1gASBxMAAAhrAAAIKwAACbYAAAgLAAAIiwAACEsAAAn2ABAHBQAACFcAAAgXAEAIAAATBzMAAAh3AAAINwAACc4AEQcPAAAIZwAACCcAAAmuAAAIBwAACIcAAAhHAAAJ7gAQBwkAAAhfAAAIHwAACZ4AFAdjAAAIfwAACD8AAAneABIHGwAACG8AAAgvAAAJvgAACA8AAAiPAAAITwAACf4AYAcAAAAIUAAACBAAFAhzABIHHwAACHAAAAgwAAAJwQAQBwoAAAhgAAAIIAAACaEAAAgAAAAIgAAACEAAAAnhABAHBgAACFgAAAgYAAAJkQATBzsAAAh4AAAIOAAACdEAEQcRAAAIaAAACCgAAAmxAAAICAAACIgAAAhIAAAJ8QAQBwQAAAhUAAAIFAAVCOMAEwcrAAAIdAAACDQAAAnJABEHDQAACGQAAAgkAAAJqQAACAQAAAiEAAAIRAAACekAEAcIAAAIXAAACBwAAAmZABQHUwAACHwAAAg8AAAJ2QASBxcAAAhsAAAILAAACbkAAAgMAAAIjAAACEwAAAn5ABAHAwAACFIAAAgSABUIowATByMAAAhyAAAIMgAACcUAEQcLAAAIYgAACCIAAAmlAAAIAgAACIIAAAhCAAAJ5QAQBwcAAAhaAAAIGgAACZUAFAdDAAAIegAACDoAAAnVABIHEwAACGoAAAgqAAAJtQAACAoAAAiKAAAISgAACfUAEAcFAAAIVgAACBYAQAgAABMHMwAACHYAAAg2AAAJzQARBw8AAAhmAAAIJgAACa0AAAgGAAAIhgAACEYAAAntABAHCQAACF4AAAgeAAAJnQAUB2MAAAh+AAAIPgAACd0AEgcbAAAIbgAACC4AAAm9AAAIDgAACI4AAAhOAAAJ/QBgBwAAAAhRAAAIEQAVCIMAEgcfAAAIcQAACDEAAAnDABAHCgAACGEAAAghAAAJowAACAEAAAiBAAAIQQAACeMAEAcGAAAIWQAACBkAAAmTABMHOwAACHkAAAg5AAAJ0wARBxEAAAhpAAAIKQAACbMAAAgJAAAIiQAACEkAAAnzABAHBAAACFUAAAgVABAIAgETBysAAAh1AAAINQAACcsAEQcNAAAIZQAACCUAAAmrAAAIBQAACIUAAAhFAAAJ6wAQBwgAAAhdAAAIHQAACZsAFAdTAAAIfQAACD0AAAnbABIHFwAACG0AAAgtAAAJuwAACA0AAAiNAAAITQAACfsAEAcDAAAIUwAACBMAFQjDABMHIwAACHMAAAgzAAAJxwARBwsAAAhjAAAIIwAACacAAAgDAAAIgwAACEMAAAnnABAHBwAACFsAAAgbAAAJlwAUB0MAAAh7AAAIOwAACdcAEgcTAAAIawAACCsAAAm3AAAICwAACIsAAAhLAAAJ9wAQBwUAAAhXAAAIFwBACAAAEwczAAAIdwAACDcAAAnPABEHDwAACGcAAAgnAAAJrwAACAcAAAiHAAAIRwAACe8AEAcJAAAIXwAACB8AAAmfABQHYwAACH8AAAg/AAAJ3wASBxsAAAhvAAAILwAACb8AAAgPAAAIjwAACE8AAAn/ABAFAQAXBQEBEwURABsFARARBQUAGQUBBBUFQQAdBQFAEAUDABgFAQIUBSEAHAUBIBIFCQAaBQEIFgWBAEAFAAAQBQIAFwWBARMFGQAbBQEYEQUHABkFAQYVBWEAHQUBYBAFBAAYBQEDFAUxABwFATASBQ0AGgUBDBYFwQBABQAAMS4yLjExAC0rICAgMFgweAAobnVsbCkAQbCDAQtBEQAKABEREQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAARAA8KERERAwoHAAEACQsLAAAJBgsAAAsABhEAAAAREREAQYGEAQshCwAAAAAAAAAAEQAKChEREQAKAAACAAkLAAAACQALAAALAEG7hAELAQwAQceEAQsVDAAAAAAMAAAAAAkMAAAAAAAMAAAMAEH1hAELAQ4AQYGFAQsVDQAAAAQNAAAAAAkOAAAAAAAOAAAOAEGvhQELARAAQbuFAQseDwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhISAEHyhQELDhIAAAASEhIAAAAAAAAJAEGjhgELAQsAQa+GAQsVCgAAAAAKAAAAAAkLAAAAAAALAAALAEHdhgELAQwAQemGAQtLDAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAwMTIzNDU2Nzg5QUJDREVGLTBYKzBYIDBYLTB4KzB4IDB4AGluZgBJTkYAbmFuAE5BTgAuAEHchwELARcAQYOIAQsF//////8AQdCIAQtXGRJEOwI/LEcUPTMwChsGRktFNw9JDo4XA0AdPGkrNh9KLRwBICUpIQgMFRYiLhA4Pgs0MRhkdHV2L0EJfzkRI0MyQomKiwUEJignDSoeNYwHGkiTE5SVAEGwiQEL3Q5JbGxlZ2FsIGJ5dGUgc2VxdWVuY2UARG9tYWluIGVycm9yAFJlc3VsdCBub3QgcmVwcmVzZW50YWJsZQBOb3QgYSB0dHkAUGVybWlzc2lvbiBkZW5pZWQAT3BlcmF0aW9uIG5vdCBwZXJtaXR0ZWQATm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQBObyBzdWNoIHByb2Nlc3MARmlsZSBleGlzdHMAVmFsdWUgdG9vIGxhcmdlIGZvciBkYXRhIHR5cGUATm8gc3BhY2UgbGVmdCBvbiBkZXZpY2UAT3V0IG9mIG1lbW9yeQBSZXNvdXJjZSBidXN5AEludGVycnVwdGVkIHN5c3RlbSBjYWxsAFJlc291cmNlIHRlbXBvcmFyaWx5IHVuYXZhaWxhYmxlAEludmFsaWQgc2VlawBDcm9zcy1kZXZpY2UgbGluawBSZWFkLW9ubHkgZmlsZSBzeXN0ZW0ARGlyZWN0b3J5IG5vdCBlbXB0eQBDb25uZWN0aW9uIHJlc2V0IGJ5IHBlZXIAT3BlcmF0aW9uIHRpbWVkIG91dABDb25uZWN0aW9uIHJlZnVzZWQASG9zdCBpcyBkb3duAEhvc3QgaXMgdW5yZWFjaGFibGUAQWRkcmVzcyBpbiB1c2UAQnJva2VuIHBpcGUASS9PIGVycm9yAE5vIHN1Y2ggZGV2aWNlIG9yIGFkZHJlc3MAQmxvY2sgZGV2aWNlIHJlcXVpcmVkAE5vIHN1Y2ggZGV2aWNlAE5vdCBhIGRpcmVjdG9yeQBJcyBhIGRpcmVjdG9yeQBUZXh0IGZpbGUgYnVzeQBFeGVjIGZvcm1hdCBlcnJvcgBJbnZhbGlkIGFyZ3VtZW50AEFyZ3VtZW50IGxpc3QgdG9vIGxvbmcAU3ltYm9saWMgbGluayBsb29wAEZpbGVuYW1lIHRvbyBsb25nAFRvbyBtYW55IG9wZW4gZmlsZXMgaW4gc3lzdGVtAE5vIGZpbGUgZGVzY3JpcHRvcnMgYXZhaWxhYmxlAEJhZCBmaWxlIGRlc2NyaXB0b3IATm8gY2hpbGQgcHJvY2VzcwBCYWQgYWRkcmVzcwBGaWxlIHRvbyBsYXJnZQBUb28gbWFueSBsaW5rcwBObyBsb2NrcyBhdmFpbGFibGUAUmVzb3VyY2UgZGVhZGxvY2sgd291bGQgb2NjdXIAU3RhdGUgbm90IHJlY292ZXJhYmxlAFByZXZpb3VzIG93bmVyIGRpZWQAT3BlcmF0aW9uIGNhbmNlbGVkAEZ1bmN0aW9uIG5vdCBpbXBsZW1lbnRlZABObyBtZXNzYWdlIG9mIGRlc2lyZWQgdHlwZQBJZGVudGlmaWVyIHJlbW92ZWQARGV2aWNlIG5vdCBhIHN0cmVhbQBObyBkYXRhIGF2YWlsYWJsZQBEZXZpY2UgdGltZW91dABPdXQgb2Ygc3RyZWFtcyByZXNvdXJjZXMATGluayBoYXMgYmVlbiBzZXZlcmVkAFByb3RvY29sIGVycm9yAEJhZCBtZXNzYWdlAEZpbGUgZGVzY3JpcHRvciBpbiBiYWQgc3RhdGUATm90IGEgc29ja2V0AERlc3RpbmF0aW9uIGFkZHJlc3MgcmVxdWlyZWQATWVzc2FnZSB0b28gbGFyZ2UAUHJvdG9jb2wgd3JvbmcgdHlwZSBmb3Igc29ja2V0AFByb3RvY29sIG5vdCBhdmFpbGFibGUAUHJvdG9jb2wgbm90IHN1cHBvcnRlZABTb2NrZXQgdHlwZSBub3Qgc3VwcG9ydGVkAE5vdCBzdXBwb3J0ZWQAUHJvdG9jb2wgZmFtaWx5IG5vdCBzdXBwb3J0ZWQAQWRkcmVzcyBmYW1pbHkgbm90IHN1cHBvcnRlZCBieSBwcm90b2NvbABBZGRyZXNzIG5vdCBhdmFpbGFibGUATmV0d29yayBpcyBkb3duAE5ldHdvcmsgdW5yZWFjaGFibGUAQ29ubmVjdGlvbiByZXNldCBieSBuZXR3b3JrAENvbm5lY3Rpb24gYWJvcnRlZABObyBidWZmZXIgc3BhY2UgYXZhaWxhYmxlAFNvY2tldCBpcyBjb25uZWN0ZWQAU29ja2V0IG5vdCBjb25uZWN0ZWQAQ2Fubm90IHNlbmQgYWZ0ZXIgc29ja2V0IHNodXRkb3duAE9wZXJhdGlvbiBhbHJlYWR5IGluIHByb2dyZXNzAE9wZXJhdGlvbiBpbiBwcm9ncmVzcwBTdGFsZSBmaWxlIGhhbmRsZQBSZW1vdGUgSS9PIGVycm9yAFF1b3RhIGV4Y2VlZGVkAE5vIG1lZGl1bSBmb3VuZABXcm9uZyBtZWRpdW0gdHlwZQBObyBlcnJvciBpbmZvcm1hdGlvbgAAVW5rbm93biBlcnJvciAlZAAlcyVzJXMAADogAC9wcm9jL3NlbGYvZmQvAC9kZXYvdXJhbmRvbQByd2EAJXMuWFhYWFhYAHIrYgByYgBQSwUGAEGQmAELTgoAAAALAAAADAAAAA0AAAAOAAAADwAAABAAAAARAAAAEgAAAAsAAAAMAAAADQAAAA4AAAAPAAAAEAAAABEAAAABAAAACAAAABBMAAAwTABBkJoBCwJQUABByJoBCwkfAAAAZE0AAAMAQeSaAQuMAS30UVjPjLHARva1yykxA8cEW3AwtF39IHh/i5rYWSlQaEiJq6dWA2z/t82IP9R3tCulo3DxuuSo/EGD/dlv4Yp6Ly10lgcfDQleA3YscPdApSynb1dBqKp036BYZANKx8Q8U66vXxgEFbHjbSiGqwykv0Pw6VCBOVcWUjf/////////////////////'; + function ne() { + var e = (function () { + var e = new Error(); + if (!e.stack) { + try { + throw new Error(); + } catch (t) { + e = t; + } + if (!e.stack) return '(no stack trace available)'; + } + return e.stack.toString(); + })(); + return ( + o.extraStackTrace && (e += '\n' + o.extraStackTrace()), + e.replace(/\b_Z[\w\d_]+/g, function (e) { + return e == e ? e : e + ' [' + e + ']'; + }) + ); + } + $(re) || + (re = (function (e) { + return o.locateFile ? o.locateFile(e, h) : h + e; + })(re)), + _.push({ + func: function () { + be(); + }, + }); + var ie = { + splitPath: function (e) { + return /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(e).slice(1); + }, + normalizeArray: function (e, t) { + for (var r = 0, n = e.length - 1; n >= 0; n--) { + var i = e[n]; + '.' === i + ? e.splice(n, 1) + : '..' === i + ? (e.splice(n, 1), r++) + : r && (e.splice(n, 1), r--); + } + if (t) for (; r; r--) e.unshift('..'); + return e; + }, + normalize: function (e) { + var t = '/' === e.charAt(0), + r = '/' === e.substr(-1); + return ( + (e = ie + .normalizeArray( + e.split('/').filter(function (e) { + return !!e; + }), + !t + ) + .join('/')) || + t || + (e = '.'), + e && r && (e += '/'), + (t ? '/' : '') + e + ); + }, + dirname: function (e) { + var t = ie.splitPath(e), + r = t[0], + n = t[1]; + return r || n ? (n && (n = n.substr(0, n.length - 1)), r + n) : '.'; + }, + basename: function (e) { + if ('/' === e) return '/'; + var t = e.lastIndexOf('/'); + return -1 === t ? e : e.substr(t + 1); + }, + extname: function (e) { + return ie.splitPath(e)[3]; + }, + join: function () { + var e = Array.prototype.slice.call(arguments, 0); + return ie.normalize(e.join('/')); + }, + join2: function (e, t) { + return ie.normalize(e + '/' + t); + }, + }; + function oe(e) { + return (N[Se() >> 2] = e), e; + } + var se = { + resolve: function () { + for (var e = '', t = !1, r = arguments.length - 1; r >= -1 && !t; r--) { + var n = r >= 0 ? arguments[r] : he.cwd(); + if ('string' != typeof n) + throw new TypeError('Arguments to path.resolve must be strings'); + if (!n) return ''; + (e = n + '/' + e), (t = '/' === n.charAt(0)); + } + return ( + (t ? '/' : '') + + (e = ie + .normalizeArray( + e.split('/').filter(function (e) { + return !!e; + }), + !t + ) + .join('/')) || '.' + ); + }, + relative: function (e, t) { + function r(e) { + for (var t = 0; t < e.length && '' === e[t]; t++); + for (var r = e.length - 1; r >= 0 && '' === e[r]; r--); + return t > r ? [] : e.slice(t, r - t + 1); + } + (e = se.resolve(e).substr(1)), (t = se.resolve(t).substr(1)); + for ( + var n = r(e.split('/')), + i = r(t.split('/')), + o = Math.min(n.length, i.length), + s = o, + A = 0; + A < o; + A++ + ) + if (n[A] !== i[A]) { + s = A; + break; + } + var a = []; + for (A = s; A < n.length; A++) a.push('..'); + return (a = a.concat(i.slice(s))).join('/'); + }, + }, + Ae = { + ttys: [], + init: function () {}, + shutdown: function () {}, + register: function (e, t) { + (Ae.ttys[e] = { input: [], output: [], ops: t }), he.registerDevice(e, Ae.stream_ops); + }, + stream_ops: { + open: function (e) { + var t = Ae.ttys[e.node.rdev]; + if (!t) throw new he.ErrnoError(43); + (e.tty = t), (e.seekable = !1); + }, + close: function (e) { + e.tty.ops.flush(e.tty); + }, + flush: function (e) { + e.tty.ops.flush(e.tty); + }, + read: function (e, t, r, n, i) { + if (!e.tty || !e.tty.ops.get_char) throw new he.ErrnoError(60); + for (var o = 0, s = 0; s < n; s++) { + var A; + try { + A = e.tty.ops.get_char(e.tty); + } catch (e) { + throw new he.ErrnoError(29); + } + if (void 0 === A && 0 === o) throw new he.ErrnoError(6); + if (null == A) break; + o++, (t[r + s] = A); + } + return o && (e.node.timestamp = Date.now()), o; + }, + write: function (e, t, r, n, i) { + if (!e.tty || !e.tty.ops.put_char) throw new he.ErrnoError(60); + try { + for (var o = 0; o < n; o++) e.tty.ops.put_char(e.tty, t[r + o]); + } catch (e) { + throw new he.ErrnoError(29); + } + return n && (e.node.timestamp = Date.now()), o; + }, + }, + default_tty_ops: { + get_char: function (e) { + if (!e.input.length) { + var t = null, + r = Buffer.alloc ? Buffer.alloc(256) : new Buffer(256), + n = 0; + try { + n = c.readSync(process.stdin.fd, r, 0, 256, null); + } catch (e) { + if (-1 == e.toString().indexOf('EOF')) throw e; + n = 0; + } + if (!(t = n > 0 ? r.slice(0, n).toString('utf-8') : null)) return null; + e.input = we(t, !0); + } + return e.input.shift(); + }, + put_char: function (e, t) { + null === t || 10 === t + ? (g(B(e.output, 0)), (e.output = [])) + : 0 != t && e.output.push(t); + }, + flush: function (e) { + e.output && e.output.length > 0 && (g(B(e.output, 0)), (e.output = [])); + }, + }, + default_tty1_ops: { + put_char: function (e, t) { + null === t || 10 === t + ? (f(B(e.output, 0)), (e.output = [])) + : 0 != t && e.output.push(t); + }, + flush: function (e) { + e.output && e.output.length > 0 && (f(B(e.output, 0)), (e.output = [])); + }, + }, + }, + ae = { + ops_table: null, + mount: function (e) { + return ae.createNode(null, '/', 16895, 0); + }, + createNode: function (e, t, r, n) { + if (he.isBlkdev(r) || he.isFIFO(r)) throw new he.ErrnoError(63); + ae.ops_table || + (ae.ops_table = { + dir: { + node: { + getattr: ae.node_ops.getattr, + setattr: ae.node_ops.setattr, + lookup: ae.node_ops.lookup, + mknod: ae.node_ops.mknod, + rename: ae.node_ops.rename, + unlink: ae.node_ops.unlink, + rmdir: ae.node_ops.rmdir, + readdir: ae.node_ops.readdir, + symlink: ae.node_ops.symlink, + }, + stream: { llseek: ae.stream_ops.llseek }, + }, + file: { + node: { getattr: ae.node_ops.getattr, setattr: ae.node_ops.setattr }, + stream: { + llseek: ae.stream_ops.llseek, + read: ae.stream_ops.read, + write: ae.stream_ops.write, + allocate: ae.stream_ops.allocate, + mmap: ae.stream_ops.mmap, + msync: ae.stream_ops.msync, + }, + }, + link: { + node: { + getattr: ae.node_ops.getattr, + setattr: ae.node_ops.setattr, + readlink: ae.node_ops.readlink, + }, + stream: {}, + }, + chrdev: { + node: { getattr: ae.node_ops.getattr, setattr: ae.node_ops.setattr }, + stream: he.chrdev_stream_ops, + }, + }); + var i = he.createNode(e, t, r, n); + return ( + he.isDir(i.mode) + ? ((i.node_ops = ae.ops_table.dir.node), + (i.stream_ops = ae.ops_table.dir.stream), + (i.contents = {})) + : he.isFile(i.mode) + ? ((i.node_ops = ae.ops_table.file.node), + (i.stream_ops = ae.ops_table.file.stream), + (i.usedBytes = 0), + (i.contents = null)) + : he.isLink(i.mode) + ? ((i.node_ops = ae.ops_table.link.node), + (i.stream_ops = ae.ops_table.link.stream)) + : he.isChrdev(i.mode) && + ((i.node_ops = ae.ops_table.chrdev.node), + (i.stream_ops = ae.ops_table.chrdev.stream)), + (i.timestamp = Date.now()), + e && (e.contents[t] = i), + i + ); + }, + getFileDataAsRegularArray: function (e) { + if (e.contents && e.contents.subarray) { + for (var t = [], r = 0; r < e.usedBytes; ++r) t.push(e.contents[r]); + return t; + } + return e.contents; + }, + getFileDataAsTypedArray: function (e) { + return e.contents + ? e.contents.subarray + ? e.contents.subarray(0, e.usedBytes) + : new Uint8Array(e.contents) + : new Uint8Array(0); + }, + expandFileStorage: function (e, t) { + var r = e.contents ? e.contents.length : 0; + if (!(r >= t)) { + (t = Math.max(t, (r * (r < 1048576 ? 2 : 1.125)) >>> 0)), + 0 != r && (t = Math.max(t, 256)); + var n = e.contents; + (e.contents = new Uint8Array(t)), + e.usedBytes > 0 && e.contents.set(n.subarray(0, e.usedBytes), 0); + } + }, + resizeFileStorage: function (e, t) { + if (e.usedBytes != t) { + if (0 == t) return (e.contents = null), void (e.usedBytes = 0); + if (!e.contents || e.contents.subarray) { + var r = e.contents; + return ( + (e.contents = new Uint8Array(t)), + r && e.contents.set(r.subarray(0, Math.min(t, e.usedBytes))), + void (e.usedBytes = t) + ); + } + if ((e.contents || (e.contents = []), e.contents.length > t)) e.contents.length = t; + else for (; e.contents.length < t; ) e.contents.push(0); + e.usedBytes = t; + } + }, + node_ops: { + getattr: function (e) { + var t = {}; + return ( + (t.dev = he.isChrdev(e.mode) ? e.id : 1), + (t.ino = e.id), + (t.mode = e.mode), + (t.nlink = 1), + (t.uid = 0), + (t.gid = 0), + (t.rdev = e.rdev), + he.isDir(e.mode) + ? (t.size = 4096) + : he.isFile(e.mode) + ? (t.size = e.usedBytes) + : he.isLink(e.mode) + ? (t.size = e.link.length) + : (t.size = 0), + (t.atime = new Date(e.timestamp)), + (t.mtime = new Date(e.timestamp)), + (t.ctime = new Date(e.timestamp)), + (t.blksize = 4096), + (t.blocks = Math.ceil(t.size / t.blksize)), + t + ); + }, + setattr: function (e, t) { + void 0 !== t.mode && (e.mode = t.mode), + void 0 !== t.timestamp && (e.timestamp = t.timestamp), + void 0 !== t.size && ae.resizeFileStorage(e, t.size); + }, + lookup: function (e, t) { + throw he.genericErrors[44]; + }, + mknod: function (e, t, r, n) { + return ae.createNode(e, t, r, n); + }, + rename: function (e, t, r) { + if (he.isDir(e.mode)) { + var n; + try { + n = he.lookupNode(t, r); + } catch (e) {} + if (n) for (var i in n.contents) throw new he.ErrnoError(55); + } + delete e.parent.contents[e.name], (e.name = r), (t.contents[r] = e), (e.parent = t); + }, + unlink: function (e, t) { + delete e.contents[t]; + }, + rmdir: function (e, t) { + var r = he.lookupNode(e, t); + for (var n in r.contents) throw new he.ErrnoError(55); + delete e.contents[t]; + }, + readdir: function (e) { + var t = ['.', '..']; + for (var r in e.contents) e.contents.hasOwnProperty(r) && t.push(r); + return t; + }, + symlink: function (e, t, r) { + var n = ae.createNode(e, t, 41471, 0); + return (n.link = r), n; + }, + readlink: function (e) { + if (!he.isLink(e.mode)) throw new he.ErrnoError(28); + return e.link; + }, + }, + stream_ops: { + read: function (e, t, r, n, i) { + var o = e.node.contents; + if (i >= e.node.usedBytes) return 0; + var s = Math.min(e.node.usedBytes - i, n); + if (s > 8 && o.subarray) t.set(o.subarray(i, i + s), r); + else for (var A = 0; A < s; A++) t[r + A] = o[i + A]; + return s; + }, + write: function (e, t, r, n, i, o) { + if ((t.buffer === x.buffer && (o = !1), !n)) return 0; + var s = e.node; + if ( + ((s.timestamp = Date.now()), t.subarray && (!s.contents || s.contents.subarray)) + ) { + if (o) return (s.contents = t.subarray(r, r + n)), (s.usedBytes = n), n; + if (0 === s.usedBytes && 0 === i) + return (s.contents = t.slice(r, r + n)), (s.usedBytes = n), n; + if (i + n <= s.usedBytes) return s.contents.set(t.subarray(r, r + n), i), n; + } + if ((ae.expandFileStorage(s, i + n), s.contents.subarray && t.subarray)) + s.contents.set(t.subarray(r, r + n), i); + else for (var A = 0; A < n; A++) s.contents[i + A] = t[r + A]; + return (s.usedBytes = Math.max(s.usedBytes, i + n)), n; + }, + llseek: function (e, t, r) { + var n = t; + if ( + (1 === r + ? (n += e.position) + : 2 === r && he.isFile(e.node.mode) && (n += e.node.usedBytes), + n < 0) + ) + throw new he.ErrnoError(28); + return n; + }, + allocate: function (e, t, r) { + ae.expandFileStorage(e.node, t + r), + (e.node.usedBytes = Math.max(e.node.usedBytes, t + r)); + }, + mmap: function (e, t, r, n, i, o) { + if ((I(0 === t), !he.isFile(e.node.mode))) throw new he.ErrnoError(43); + var s, + A, + a = e.node.contents; + if (2 & o || a.buffer !== k) { + if ( + ((n > 0 || n + r < a.length) && + (a = a.subarray + ? a.subarray(n, n + r) + : Array.prototype.slice.call(a, n, n + r)), + (A = !0), + !(s = Ke(r))) + ) + throw new he.ErrnoError(48); + x.set(a, s); + } else (A = !1), (s = a.byteOffset); + return { ptr: s, allocated: A }; + }, + msync: function (e, t, r, n, i) { + if (!he.isFile(e.node.mode)) throw new he.ErrnoError(43); + if (2 & i) return 0; + ae.stream_ops.write(e, t, 0, n, r, !1); + return 0; + }, + }, + }, + ce = { + EPERM: 63, + ENOENT: 44, + ESRCH: 71, + EINTR: 27, + EIO: 29, + ENXIO: 60, + E2BIG: 1, + ENOEXEC: 45, + EBADF: 8, + ECHILD: 12, + EAGAIN: 6, + EWOULDBLOCK: 6, + ENOMEM: 48, + EACCES: 2, + EFAULT: 21, + ENOTBLK: 105, + EBUSY: 10, + EEXIST: 20, + EXDEV: 75, + ENODEV: 43, + ENOTDIR: 54, + EISDIR: 31, + EINVAL: 28, + ENFILE: 41, + EMFILE: 33, + ENOTTY: 59, + ETXTBSY: 74, + EFBIG: 22, + ENOSPC: 51, + ESPIPE: 70, + EROFS: 69, + EMLINK: 34, + EPIPE: 64, + EDOM: 18, + ERANGE: 68, + ENOMSG: 49, + EIDRM: 24, + ECHRNG: 106, + EL2NSYNC: 156, + EL3HLT: 107, + EL3RST: 108, + ELNRNG: 109, + EUNATCH: 110, + ENOCSI: 111, + EL2HLT: 112, + EDEADLK: 16, + ENOLCK: 46, + EBADE: 113, + EBADR: 114, + EXFULL: 115, + ENOANO: 104, + EBADRQC: 103, + EBADSLT: 102, + EDEADLOCK: 16, + EBFONT: 101, + ENOSTR: 100, + ENODATA: 116, + ETIME: 117, + ENOSR: 118, + ENONET: 119, + ENOPKG: 120, + EREMOTE: 121, + ENOLINK: 47, + EADV: 122, + ESRMNT: 123, + ECOMM: 124, + EPROTO: 65, + EMULTIHOP: 36, + EDOTDOT: 125, + EBADMSG: 9, + ENOTUNIQ: 126, + EBADFD: 127, + EREMCHG: 128, + ELIBACC: 129, + ELIBBAD: 130, + ELIBSCN: 131, + ELIBMAX: 132, + ELIBEXEC: 133, + ENOSYS: 52, + ENOTEMPTY: 55, + ENAMETOOLONG: 37, + ELOOP: 32, + EOPNOTSUPP: 138, + EPFNOSUPPORT: 139, + ECONNRESET: 15, + ENOBUFS: 42, + EAFNOSUPPORT: 5, + EPROTOTYPE: 67, + ENOTSOCK: 57, + ENOPROTOOPT: 50, + ESHUTDOWN: 140, + ECONNREFUSED: 14, + EADDRINUSE: 3, + ECONNABORTED: 13, + ENETUNREACH: 40, + ENETDOWN: 38, + ETIMEDOUT: 73, + EHOSTDOWN: 142, + EHOSTUNREACH: 23, + EINPROGRESS: 26, + EALREADY: 7, + EDESTADDRREQ: 17, + EMSGSIZE: 35, + EPROTONOSUPPORT: 66, + ESOCKTNOSUPPORT: 137, + EADDRNOTAVAIL: 4, + ENETRESET: 39, + EISCONN: 30, + ENOTCONN: 53, + ETOOMANYREFS: 141, + EUSERS: 136, + EDQUOT: 19, + ESTALE: 72, + ENOTSUP: 138, + ENOMEDIUM: 148, + EILSEQ: 25, + EOVERFLOW: 61, + ECANCELED: 11, + ENOTRECOVERABLE: 56, + EOWNERDEAD: 62, + ESTRPIPE: 135, + }, + ue = { + isWindows: !1, + staticInit: function () { + ue.isWindows = !!process.platform.match(/^win/); + var e = { fs: Ce.constants }; + e.fs && (e = e.fs), + (ue.flagsForNodeMap = { + 1024: e.O_APPEND, + 64: e.O_CREAT, + 128: e.O_EXCL, + 0: e.O_RDONLY, + 2: e.O_RDWR, + 4096: e.O_SYNC, + 512: e.O_TRUNC, + 1: e.O_WRONLY, + }); + }, + bufferFrom: function (e) { + return Buffer.alloc ? Buffer.from(e) : new Buffer(e); + }, + convertNodeCode: function (e) { + var t = e.code; + return ce[t]; + }, + mount: function (e) { + return ue.createNode(null, '/', ue.getMode(e.opts.root), 0); + }, + createNode: function (e, t, r, n) { + if (!he.isDir(r) && !he.isFile(r) && !he.isLink(r)) throw new he.ErrnoError(28); + var i = he.createNode(e, t, r); + return (i.node_ops = ue.node_ops), (i.stream_ops = ue.stream_ops), i; + }, + getMode: function (e) { + var t; + try { + (t = Ce.lstatSync(e)), ue.isWindows && (t.mode = t.mode | ((292 & t.mode) >> 2)); + } catch (e) { + if (!e.code) throw e; + throw new he.ErrnoError(ue.convertNodeCode(e)); + } + return t.mode; + }, + realPath: function (e) { + for (var t = []; e.parent !== e; ) t.push(e.name), (e = e.parent); + return t.push(e.mount.opts.root), t.reverse(), ie.join.apply(null, t); + }, + flagsForNode: function (e) { + (e &= -2097153), (e &= -2049), (e &= -32769), (e &= -524289); + var t = 0; + for (var r in ue.flagsForNodeMap) e & r && ((t |= ue.flagsForNodeMap[r]), (e ^= r)); + if (e) throw new he.ErrnoError(28); + return t; + }, + node_ops: { + getattr: function (e) { + var t, + r = ue.realPath(e); + try { + t = Ce.lstatSync(r); + } catch (e) { + if (!e.code) throw e; + throw new he.ErrnoError(ue.convertNodeCode(e)); + } + return ( + ue.isWindows && !t.blksize && (t.blksize = 4096), + ue.isWindows && + !t.blocks && + (t.blocks = ((t.size + t.blksize - 1) / t.blksize) | 0), + { + dev: t.dev, + ino: t.ino, + mode: t.mode, + nlink: t.nlink, + uid: t.uid, + gid: t.gid, + rdev: t.rdev, + size: t.size, + atime: t.atime, + mtime: t.mtime, + ctime: t.ctime, + blksize: t.blksize, + blocks: t.blocks, + } + ); + }, + setattr: function (e, t) { + var r = ue.realPath(e); + try { + if ( + (void 0 !== t.mode && (Ce.chmodSync(r, t.mode), (e.mode = t.mode)), + void 0 !== t.timestamp) + ) { + var n = new Date(t.timestamp); + Ce.utimesSync(r, n, n); + } + void 0 !== t.size && Ce.truncateSync(r, t.size); + } catch (e) { + if (!e.code) throw e; + throw new he.ErrnoError(ue.convertNodeCode(e)); + } + }, + lookup: function (e, t) { + var r = ie.join2(ue.realPath(e), t), + n = ue.getMode(r); + return ue.createNode(e, t, n); + }, + mknod: function (e, t, r, n) { + var i = ue.createNode(e, t, r, n), + o = ue.realPath(i); + try { + he.isDir(i.mode) + ? Ce.mkdirSync(o, i.mode) + : Ce.writeFileSync(o, '', { mode: i.mode }); + } catch (e) { + if (!e.code) throw e; + throw new he.ErrnoError(ue.convertNodeCode(e)); + } + return i; + }, + rename: function (e, t, r) { + var n = ue.realPath(e), + i = ie.join2(ue.realPath(t), r); + try { + Ce.renameSync(n, i); + } catch (e) { + if (!e.code) throw e; + throw new he.ErrnoError(ue.convertNodeCode(e)); + } + e.name = r; + }, + unlink: function (e, t) { + var r = ie.join2(ue.realPath(e), t); + try { + Ce.unlinkSync(r); + } catch (e) { + if (!e.code) throw e; + throw new he.ErrnoError(ue.convertNodeCode(e)); + } + }, + rmdir: function (e, t) { + var r = ie.join2(ue.realPath(e), t); + try { + Ce.rmdirSync(r); + } catch (e) { + if (!e.code) throw e; + throw new he.ErrnoError(ue.convertNodeCode(e)); + } + }, + readdir: function (e) { + var t = ue.realPath(e); + try { + return Ce.readdirSync(t); + } catch (e) { + if (!e.code) throw e; + throw new he.ErrnoError(ue.convertNodeCode(e)); + } + }, + symlink: function (e, t, r) { + var n = ie.join2(ue.realPath(e), t); + try { + Ce.symlinkSync(r, n); + } catch (e) { + if (!e.code) throw e; + throw new he.ErrnoError(ue.convertNodeCode(e)); + } + }, + readlink: function (e) { + var t = ue.realPath(e); + try { + return ( + (t = Ce.readlinkSync(t)), (t = Ee.relative(Ee.resolve(e.mount.opts.root), t)) + ); + } catch (e) { + if (!e.code) throw e; + throw new he.ErrnoError(ue.convertNodeCode(e)); + } + }, + }, + stream_ops: { + open: function (e) { + var t = ue.realPath(e.node); + try { + he.isFile(e.node.mode) && (e.nfd = Ce.openSync(t, ue.flagsForNode(e.flags))); + } catch (e) { + if (!e.code) throw e; + throw new he.ErrnoError(ue.convertNodeCode(e)); + } + }, + close: function (e) { + try { + he.isFile(e.node.mode) && e.nfd && Ce.closeSync(e.nfd); + } catch (e) { + if (!e.code) throw e; + throw new he.ErrnoError(ue.convertNodeCode(e)); + } + }, + read: function (e, t, r, n, i) { + if (0 === n) return 0; + try { + return Ce.readSync(e.nfd, ue.bufferFrom(t.buffer), r, n, i); + } catch (e) { + throw new he.ErrnoError(ue.convertNodeCode(e)); + } + }, + write: function (e, t, r, n, i) { + try { + return Ce.writeSync(e.nfd, ue.bufferFrom(t.buffer), r, n, i); + } catch (e) { + throw new he.ErrnoError(ue.convertNodeCode(e)); + } + }, + llseek: function (e, t, r) { + var n = t; + if (1 === r) n += e.position; + else if (2 === r && he.isFile(e.node.mode)) + try { + n += Ce.fstatSync(e.nfd).size; + } catch (e) { + throw new he.ErrnoError(ue.convertNodeCode(e)); + } + if (n < 0) throw new he.ErrnoError(28); + return n; + }, + mmap: function (e, t, r, n, i, o) { + if ((I(0 === t), !he.isFile(e.node.mode))) throw new he.ErrnoError(43); + var s = Ke(r); + return ue.stream_ops.read(e, x, s, r, n), { ptr: s, allocated: !0 }; + }, + msync: function (e, t, r, n, i) { + if (!he.isFile(e.node.mode)) throw new he.ErrnoError(43); + if (2 & i) return 0; + ue.stream_ops.write(e, t, 0, n, r, !1); + return 0; + }, + }, + }, + le = { + lookupPath: function (e) { + return { path: e, node: { mode: ue.getMode(e) } }; + }, + createStandardStreams: function () { + he.streams[0] = { + fd: 0, + nfd: 0, + position: 0, + path: '', + flags: 0, + tty: !0, + seekable: !1, + }; + for (var e = 1; e < 3; e++) + he.streams[e] = { + fd: e, + nfd: e, + position: 0, + path: '', + flags: 577, + tty: !0, + seekable: !1, + }; + }, + cwd: function () { + return process.cwd(); + }, + chdir: function () { + process.chdir.apply(void 0, arguments); + }, + mknod: function (e, t) { + he.isDir(e) ? Ce.mkdirSync(e, t) : Ce.writeFileSync(e, '', { mode: t }); + }, + mkdir: function () { + Ce.mkdirSync.apply(void 0, arguments); + }, + symlink: function () { + Ce.symlinkSync.apply(void 0, arguments); + }, + rename: function () { + Ce.renameSync.apply(void 0, arguments); + }, + rmdir: function () { + Ce.rmdirSync.apply(void 0, arguments); + }, + readdir: function () { + Ce.readdirSync.apply(void 0, arguments); + }, + unlink: function () { + Ce.unlinkSync.apply(void 0, arguments); + }, + readlink: function () { + return Ce.readlinkSync.apply(void 0, arguments); + }, + stat: function () { + return Ce.statSync.apply(void 0, arguments); + }, + lstat: function () { + return Ce.lstatSync.apply(void 0, arguments); + }, + chmod: function () { + Ce.chmodSync.apply(void 0, arguments); + }, + fchmod: function () { + Ce.fchmodSync.apply(void 0, arguments); + }, + chown: function () { + Ce.chownSync.apply(void 0, arguments); + }, + fchown: function () { + Ce.fchownSync.apply(void 0, arguments); + }, + truncate: function () { + Ce.truncateSync.apply(void 0, arguments); + }, + ftruncate: function () { + Ce.ftruncateSync.apply(void 0, arguments); + }, + utime: function () { + Ce.utimesSync.apply(void 0, arguments); + }, + open: function (e, t, r, n) { + 'string' == typeof t && (t = me.modeStringToFlags(t)); + var i = Ce.openSync(e, ue.flagsForNode(t), r), + o = null != n ? n : he.nextfd(i), + s = { fd: o, nfd: i, position: 0, path: e, flags: t, seekable: !0 }; + return (he.streams[o] = s), s; + }, + close: function (e) { + e.stream_ops || Ce.closeSync(e.nfd), he.closeStream(e.fd); + }, + llseek: function (e, t, r) { + if (e.stream_ops) return me.llseek(e, t, r); + var n = t; + if (1 === r) n += e.position; + else if (2 === r) n += Ce.fstatSync(e.nfd).size; + else if (0 !== r) throw new he.ErrnoError(ce.EINVAL); + if (n < 0) throw new he.ErrnoError(ce.EINVAL); + return (e.position = n), n; + }, + read: function (e, t, r, n, i) { + if (e.stream_ops) return me.read(e, t, r, n, i); + var o = void 0 !== i; + !o && e.seekable && (i = e.position); + var s = Ce.readSync(e.nfd, ue.bufferFrom(t.buffer), r, n, i); + return o || (e.position += s), s; + }, + write: function (e, t, r, n, i) { + if (e.stream_ops) return me.write(e, t, r, n, i); + 1024 & e.flags && he.llseek(e, 0, 2); + var o = void 0 !== i; + !o && e.seekable && (i = e.position); + var s = Ce.writeSync(e.nfd, ue.bufferFrom(t.buffer), r, n, i); + return o || (e.position += s), s; + }, + allocate: function () { + throw new he.ErrnoError(ce.EOPNOTSUPP); + }, + mmap: function () { + throw new he.ErrnoError(ce.ENODEV); + }, + msync: function () { + return 0; + }, + munmap: function () { + return 0; + }, + ioctl: function () { + throw new he.ErrnoError(ce.ENOTTY); + }, + }, + he = { + root: null, + mounts: [], + devices: {}, + streams: [], + nextInode: 1, + nameTable: null, + currentPath: '/', + initialized: !1, + ignorePermissions: !0, + trackingDelegate: {}, + tracking: { openFlags: { READ: 1, WRITE: 2 } }, + ErrnoError: null, + genericErrors: {}, + filesystems: null, + syncFSRequests: 0, + handleFSError: function (e) { + if (!(e instanceof he.ErrnoError)) throw e + ' : ' + ne(); + return oe(e.errno); + }, + lookupPath: function (e, t) { + if (((t = t || {}), !(e = se.resolve(he.cwd(), e)))) return { path: '', node: null }; + var r = { follow_mount: !0, recurse_count: 0 }; + for (var n in r) void 0 === t[n] && (t[n] = r[n]); + if (t.recurse_count > 8) throw new he.ErrnoError(32); + for ( + var i = ie.normalizeArray( + e.split('/').filter(function (e) { + return !!e; + }), + !1 + ), + o = he.root, + s = '/', + A = 0; + A < i.length; + A++ + ) { + var a = A === i.length - 1; + if (a && t.parent) break; + if ( + ((o = he.lookupNode(o, i[A])), + (s = ie.join2(s, i[A])), + he.isMountpoint(o) && (!a || (a && t.follow_mount)) && (o = o.mounted.root), + !a || t.follow) + ) + for (var c = 0; he.isLink(o.mode); ) { + var u = he.readlink(s); + if ( + ((s = se.resolve(ie.dirname(s), u)), + (o = he.lookupPath(s, { recurse_count: t.recurse_count }).node), + c++ > 40) + ) + throw new he.ErrnoError(32); + } + } + return { path: s, node: o }; + }, + getPath: function (e) { + for (var t; ; ) { + if (he.isRoot(e)) { + var r = e.mount.mountpoint; + return t ? ('/' !== r[r.length - 1] ? r + '/' + t : r + t) : r; + } + (t = t ? e.name + '/' + t : e.name), (e = e.parent); + } + }, + hashName: function (e, t) { + for (var r = 0, n = 0; n < t.length; n++) r = ((r << 5) - r + t.charCodeAt(n)) | 0; + return ((e + r) >>> 0) % he.nameTable.length; + }, + hashAddNode: function (e) { + var t = he.hashName(e.parent.id, e.name); + (e.name_next = he.nameTable[t]), (he.nameTable[t] = e); + }, + hashRemoveNode: function (e) { + var t = he.hashName(e.parent.id, e.name); + if (he.nameTable[t] === e) he.nameTable[t] = e.name_next; + else + for (var r = he.nameTable[t]; r; ) { + if (r.name_next === e) { + r.name_next = e.name_next; + break; + } + r = r.name_next; + } + }, + lookupNode: function (e, t) { + var r = he.mayLookup(e); + if (r) throw new he.ErrnoError(r, e); + for (var n = he.hashName(e.id, t), i = he.nameTable[n]; i; i = i.name_next) { + var o = i.name; + if (i.parent.id === e.id && o === t) return i; + } + return he.lookup(e, t); + }, + createNode: function (e, t, r, n) { + var i = new he.FSNode(e, t, r, n); + return he.hashAddNode(i), i; + }, + destroyNode: function (e) { + he.hashRemoveNode(e); + }, + isRoot: function (e) { + return e === e.parent; + }, + isMountpoint: function (e) { + return !!e.mounted; + }, + isFile: function (e) { + return 32768 == (61440 & e); + }, + isDir: function (e) { + return 16384 == (61440 & e); + }, + isLink: function (e) { + return 40960 == (61440 & e); + }, + isChrdev: function (e) { + return 8192 == (61440 & e); + }, + isBlkdev: function (e) { + return 24576 == (61440 & e); + }, + isFIFO: function (e) { + return 4096 == (61440 & e); + }, + isSocket: function (e) { + return 49152 == (49152 & e); + }, + flagModes: { + r: 0, + rs: 1052672, + 'r+': 2, + w: 577, + wx: 705, + xw: 705, + 'w+': 578, + 'wx+': 706, + 'xw+': 706, + a: 1089, + ax: 1217, + xa: 1217, + 'a+': 1090, + 'ax+': 1218, + 'xa+': 1218, + }, + modeStringToFlags: function (e) { + var t = he.flagModes[e]; + if (void 0 === t) throw new Error('Unknown file open mode: ' + e); + return t; + }, + flagsToPermissionString: function (e) { + var t = ['r', 'w', 'rw'][3 & e]; + return 512 & e && (t += 'w'), t; + }, + nodePermissions: function (e, t) { + return he.ignorePermissions || + ((-1 === t.indexOf('r') || 292 & e.mode) && + (-1 === t.indexOf('w') || 146 & e.mode) && + (-1 === t.indexOf('x') || 73 & e.mode)) + ? 0 + : 2; + }, + mayLookup: function (e) { + var t = he.nodePermissions(e, 'x'); + return t || (e.node_ops.lookup ? 0 : 2); + }, + mayCreate: function (e, t) { + try { + he.lookupNode(e, t); + return 20; + } catch (e) {} + return he.nodePermissions(e, 'wx'); + }, + mayDelete: function (e, t, r) { + var n; + try { + n = he.lookupNode(e, t); + } catch (e) { + return e.errno; + } + var i = he.nodePermissions(e, 'wx'); + if (i) return i; + if (r) { + if (!he.isDir(n.mode)) return 54; + if (he.isRoot(n) || he.getPath(n) === he.cwd()) return 10; + } else if (he.isDir(n.mode)) return 31; + return 0; + }, + mayOpen: function (e, t) { + return e + ? he.isLink(e.mode) + ? 32 + : he.isDir(e.mode) && ('r' !== he.flagsToPermissionString(t) || 512 & t) + ? 31 + : he.nodePermissions(e, he.flagsToPermissionString(t)) + : 44; + }, + MAX_OPEN_FDS: 4096, + nextfd: function (e, t) { + (e = e || 0), (t = t || he.MAX_OPEN_FDS); + for (var r = e; r <= t; r++) if (!he.streams[r]) return r; + throw new he.ErrnoError(33); + }, + getStream: function (e) { + return he.streams[e]; + }, + createStream: function (e, t, r) { + he.FSStream || + ((he.FSStream = function () {}), + (he.FSStream.prototype = { + object: { + get: function () { + return this.node; + }, + set: function (e) { + this.node = e; + }, + }, + isRead: { + get: function () { + return 1 != (2097155 & this.flags); + }, + }, + isWrite: { + get: function () { + return 0 != (2097155 & this.flags); + }, + }, + isAppend: { + get: function () { + return 1024 & this.flags; + }, + }, + })); + var n = new he.FSStream(); + for (var i in e) n[i] = e[i]; + e = n; + var o = he.nextfd(t, r); + return (e.fd = o), (he.streams[o] = e), e; + }, + closeStream: function (e) { + he.streams[e] = null; + }, + chrdev_stream_ops: { + open: function (e) { + var t = he.getDevice(e.node.rdev); + (e.stream_ops = t.stream_ops), e.stream_ops.open && e.stream_ops.open(e); + }, + llseek: function () { + throw new he.ErrnoError(70); + }, + }, + major: function (e) { + return e >> 8; + }, + minor: function (e) { + return 255 & e; + }, + makedev: function (e, t) { + return (e << 8) | t; + }, + registerDevice: function (e, t) { + he.devices[e] = { stream_ops: t }; + }, + getDevice: function (e) { + return he.devices[e]; + }, + getMounts: function (e) { + for (var t = [], r = [e]; r.length; ) { + var n = r.pop(); + t.push(n), r.push.apply(r, n.mounts); + } + return t; + }, + syncfs: function (e, t) { + 'function' == typeof e && ((t = e), (e = !1)), + he.syncFSRequests++, + he.syncFSRequests > 1 && + f( + 'warning: ' + + he.syncFSRequests + + ' FS.syncfs operations in flight at once, probably just doing extra work' + ); + var r = he.getMounts(he.root.mount), + n = 0; + function i(e) { + return he.syncFSRequests--, t(e); + } + function o(e) { + if (e) return o.errored ? void 0 : ((o.errored = !0), i(e)); + ++n >= r.length && i(null); + } + r.forEach(function (t) { + if (!t.type.syncfs) return o(null); + t.type.syncfs(t, e, o); + }); + }, + mount: function (e, t, r) { + var n, + i = '/' === r, + o = !r; + if (i && he.root) throw new he.ErrnoError(10); + if (!i && !o) { + var s = he.lookupPath(r, { follow_mount: !1 }); + if (((r = s.path), (n = s.node), he.isMountpoint(n))) throw new he.ErrnoError(10); + if (!he.isDir(n.mode)) throw new he.ErrnoError(54); + } + var A = { type: e, opts: t, mountpoint: r, mounts: [] }, + a = e.mount(A); + return ( + (a.mount = A), + (A.root = a), + i ? (he.root = a) : n && ((n.mounted = A), n.mount && n.mount.mounts.push(A)), + a + ); + }, + unmount: function (e) { + var t = he.lookupPath(e, { follow_mount: !1 }); + if (!he.isMountpoint(t.node)) throw new he.ErrnoError(28); + var r = t.node, + n = r.mounted, + i = he.getMounts(n); + Object.keys(he.nameTable).forEach(function (e) { + for (var t = he.nameTable[e]; t; ) { + var r = t.name_next; + -1 !== i.indexOf(t.mount) && he.destroyNode(t), (t = r); + } + }), + (r.mounted = null); + var o = r.mount.mounts.indexOf(n); + r.mount.mounts.splice(o, 1); + }, + lookup: function (e, t) { + return e.node_ops.lookup(e, t); + }, + mknod: function (e, t, r) { + var n = he.lookupPath(e, { parent: !0 }).node, + i = ie.basename(e); + if (!i || '.' === i || '..' === i) throw new he.ErrnoError(28); + var o = he.mayCreate(n, i); + if (o) throw new he.ErrnoError(o); + if (!n.node_ops.mknod) throw new he.ErrnoError(63); + return n.node_ops.mknod(n, i, t, r); + }, + create: function (e, t) { + return (t = void 0 !== t ? t : 438), (t &= 4095), (t |= 32768), he.mknod(e, t, 0); + }, + mkdir: function (e, t) { + return (t = void 0 !== t ? t : 511), (t &= 1023), (t |= 16384), he.mknod(e, t, 0); + }, + mkdirTree: function (e, t) { + for (var r = e.split('/'), n = '', i = 0; i < r.length; ++i) + if (r[i]) { + n += '/' + r[i]; + try { + he.mkdir(n, t); + } catch (e) { + if (20 != e.errno) throw e; + } + } + }, + mkdev: function (e, t, r) { + return void 0 === r && ((r = t), (t = 438)), (t |= 8192), he.mknod(e, t, r); + }, + symlink: function (e, t) { + if (!se.resolve(e)) throw new he.ErrnoError(44); + var r = he.lookupPath(t, { parent: !0 }).node; + if (!r) throw new he.ErrnoError(44); + var n = ie.basename(t), + i = he.mayCreate(r, n); + if (i) throw new he.ErrnoError(i); + if (!r.node_ops.symlink) throw new he.ErrnoError(63); + return r.node_ops.symlink(r, n, e); + }, + rename: function (e, t) { + var r, + n, + i = ie.dirname(e), + o = ie.dirname(t), + s = ie.basename(e), + A = ie.basename(t); + try { + (r = he.lookupPath(e, { parent: !0 }).node), + (n = he.lookupPath(t, { parent: !0 }).node); + } catch (e) { + throw new he.ErrnoError(10); + } + if (!r || !n) throw new he.ErrnoError(44); + if (r.mount !== n.mount) throw new he.ErrnoError(75); + var a, + c = he.lookupNode(r, s), + u = se.relative(e, o); + if ('.' !== u.charAt(0)) throw new he.ErrnoError(28); + if ('.' !== (u = se.relative(t, i)).charAt(0)) throw new he.ErrnoError(55); + try { + a = he.lookupNode(n, A); + } catch (e) {} + if (c !== a) { + var l = he.isDir(c.mode), + h = he.mayDelete(r, s, l); + if (h) throw new he.ErrnoError(h); + if ((h = a ? he.mayDelete(n, A, l) : he.mayCreate(n, A))) + throw new he.ErrnoError(h); + if (!r.node_ops.rename) throw new he.ErrnoError(63); + if (he.isMountpoint(c) || (a && he.isMountpoint(a))) throw new he.ErrnoError(10); + if (n !== r && (h = he.nodePermissions(r, 'w'))) throw new he.ErrnoError(h); + try { + he.trackingDelegate.willMovePath && he.trackingDelegate.willMovePath(e, t); + } catch (r) { + f( + "FS.trackingDelegate['willMovePath']('" + + e + + "', '" + + t + + "') threw an exception: " + + r.message + ); + } + he.hashRemoveNode(c); + try { + r.node_ops.rename(c, n, A); + } catch (e) { + throw e; + } finally { + he.hashAddNode(c); + } + try { + he.trackingDelegate.onMovePath && he.trackingDelegate.onMovePath(e, t); + } catch (r) { + f( + "FS.trackingDelegate['onMovePath']('" + + e + + "', '" + + t + + "') threw an exception: " + + r.message + ); + } + } + }, + rmdir: function (e) { + var t = he.lookupPath(e, { parent: !0 }).node, + r = ie.basename(e), + n = he.lookupNode(t, r), + i = he.mayDelete(t, r, !0); + if (i) throw new he.ErrnoError(i); + if (!t.node_ops.rmdir) throw new he.ErrnoError(63); + if (he.isMountpoint(n)) throw new he.ErrnoError(10); + try { + he.trackingDelegate.willDeletePath && he.trackingDelegate.willDeletePath(e); + } catch (t) { + f( + "FS.trackingDelegate['willDeletePath']('" + + e + + "') threw an exception: " + + t.message + ); + } + t.node_ops.rmdir(t, r), he.destroyNode(n); + try { + he.trackingDelegate.onDeletePath && he.trackingDelegate.onDeletePath(e); + } catch (t) { + f( + "FS.trackingDelegate['onDeletePath']('" + + e + + "') threw an exception: " + + t.message + ); + } + }, + readdir: function (e) { + var t = he.lookupPath(e, { follow: !0 }).node; + if (!t.node_ops.readdir) throw new he.ErrnoError(54); + return t.node_ops.readdir(t); + }, + unlink: function (e) { + var t = he.lookupPath(e, { parent: !0 }).node, + r = ie.basename(e), + n = he.lookupNode(t, r), + i = he.mayDelete(t, r, !1); + if (i) throw new he.ErrnoError(i); + if (!t.node_ops.unlink) throw new he.ErrnoError(63); + if (he.isMountpoint(n)) throw new he.ErrnoError(10); + try { + he.trackingDelegate.willDeletePath && he.trackingDelegate.willDeletePath(e); + } catch (t) { + f( + "FS.trackingDelegate['willDeletePath']('" + + e + + "') threw an exception: " + + t.message + ); + } + t.node_ops.unlink(t, r), he.destroyNode(n); + try { + he.trackingDelegate.onDeletePath && he.trackingDelegate.onDeletePath(e); + } catch (t) { + f( + "FS.trackingDelegate['onDeletePath']('" + + e + + "') threw an exception: " + + t.message + ); + } + }, + readlink: function (e) { + var t = he.lookupPath(e).node; + if (!t) throw new he.ErrnoError(44); + if (!t.node_ops.readlink) throw new he.ErrnoError(28); + return se.resolve(he.getPath(t.parent), t.node_ops.readlink(t)); + }, + stat: function (e, t) { + var r = he.lookupPath(e, { follow: !t }).node; + if (!r) throw new he.ErrnoError(44); + if (!r.node_ops.getattr) throw new he.ErrnoError(63); + return r.node_ops.getattr(r); + }, + lstat: function (e) { + return he.stat(e, !0); + }, + chmod: function (e, t, r) { + var n; + 'string' == typeof e ? (n = he.lookupPath(e, { follow: !r }).node) : (n = e); + if (!n.node_ops.setattr) throw new he.ErrnoError(63); + n.node_ops.setattr(n, { mode: (4095 & t) | (-4096 & n.mode), timestamp: Date.now() }); + }, + lchmod: function (e, t) { + he.chmod(e, t, !0); + }, + fchmod: function (e, t) { + var r = he.getStream(e); + if (!r) throw new he.ErrnoError(8); + he.chmod(r.node, t); + }, + chown: function (e, t, r, n) { + var i; + 'string' == typeof e ? (i = he.lookupPath(e, { follow: !n }).node) : (i = e); + if (!i.node_ops.setattr) throw new he.ErrnoError(63); + i.node_ops.setattr(i, { timestamp: Date.now() }); + }, + lchown: function (e, t, r) { + he.chown(e, t, r, !0); + }, + fchown: function (e, t, r) { + var n = he.getStream(e); + if (!n) throw new he.ErrnoError(8); + he.chown(n.node, t, r); + }, + truncate: function (e, t) { + if (t < 0) throw new he.ErrnoError(28); + var r; + 'string' == typeof e ? (r = he.lookupPath(e, { follow: !0 }).node) : (r = e); + if (!r.node_ops.setattr) throw new he.ErrnoError(63); + if (he.isDir(r.mode)) throw new he.ErrnoError(31); + if (!he.isFile(r.mode)) throw new he.ErrnoError(28); + var n = he.nodePermissions(r, 'w'); + if (n) throw new he.ErrnoError(n); + r.node_ops.setattr(r, { size: t, timestamp: Date.now() }); + }, + ftruncate: function (e, t) { + var r = he.getStream(e); + if (!r) throw new he.ErrnoError(8); + if (0 == (2097155 & r.flags)) throw new he.ErrnoError(28); + he.truncate(r.node, t); + }, + utime: function (e, t, r) { + var n = he.lookupPath(e, { follow: !0 }).node; + n.node_ops.setattr(n, { timestamp: Math.max(t, r) }); + }, + open: function (e, t, r, n, i) { + if ('' === e) throw new he.ErrnoError(44); + var s; + if ( + ((r = void 0 === r ? 438 : r), + (r = + 64 & (t = 'string' == typeof t ? he.modeStringToFlags(t) : t) + ? (4095 & r) | 32768 + : 0), + 'object' == typeof e) + ) + s = e; + else { + e = ie.normalize(e); + try { + s = he.lookupPath(e, { follow: !(131072 & t) }).node; + } catch (e) {} + } + var A = !1; + if (64 & t) + if (s) { + if (128 & t) throw new he.ErrnoError(20); + } else (s = he.mknod(e, r, 0)), (A = !0); + if (!s) throw new he.ErrnoError(44); + if ((he.isChrdev(s.mode) && (t &= -513), 65536 & t && !he.isDir(s.mode))) + throw new he.ErrnoError(54); + if (!A) { + var a = he.mayOpen(s, t); + if (a) throw new he.ErrnoError(a); + } + 512 & t && he.truncate(s, 0), (t &= -131713); + var c = he.createStream( + { + node: s, + path: he.getPath(s), + flags: t, + seekable: !0, + position: 0, + stream_ops: s.stream_ops, + ungotten: [], + error: !1, + }, + n, + i + ); + c.stream_ops.open && c.stream_ops.open(c), + !o.logReadFiles || + 1 & t || + (he.readFiles || (he.readFiles = {}), + e in he.readFiles || + ((he.readFiles[e] = 1), f('FS.trackingDelegate error on read file: ' + e))); + try { + if (he.trackingDelegate.onOpenFile) { + var u = 0; + 1 != (2097155 & t) && (u |= he.tracking.openFlags.READ), + 0 != (2097155 & t) && (u |= he.tracking.openFlags.WRITE), + he.trackingDelegate.onOpenFile(e, u); + } + } catch (t) { + f( + "FS.trackingDelegate['onOpenFile']('" + + e + + "', flags) threw an exception: " + + t.message + ); + } + return c; + }, + close: function (e) { + if (he.isClosed(e)) throw new he.ErrnoError(8); + e.getdents && (e.getdents = null); + try { + e.stream_ops.close && e.stream_ops.close(e); + } catch (e) { + throw e; + } finally { + he.closeStream(e.fd); + } + e.fd = null; + }, + isClosed: function (e) { + return null === e.fd; + }, + llseek: function (e, t, r) { + if (he.isClosed(e)) throw new he.ErrnoError(8); + if (!e.seekable || !e.stream_ops.llseek) throw new he.ErrnoError(70); + if (0 != r && 1 != r && 2 != r) throw new he.ErrnoError(28); + return (e.position = e.stream_ops.llseek(e, t, r)), (e.ungotten = []), e.position; + }, + read: function (e, t, r, n, i) { + if (n < 0 || i < 0) throw new he.ErrnoError(28); + if (he.isClosed(e)) throw new he.ErrnoError(8); + if (1 == (2097155 & e.flags)) throw new he.ErrnoError(8); + if (he.isDir(e.node.mode)) throw new he.ErrnoError(31); + if (!e.stream_ops.read) throw new he.ErrnoError(28); + var o = void 0 !== i; + if (o) { + if (!e.seekable) throw new he.ErrnoError(70); + } else i = e.position; + var s = e.stream_ops.read(e, t, r, n, i); + return o || (e.position += s), s; + }, + write: function (e, t, r, n, i, o) { + if (n < 0 || i < 0) throw new he.ErrnoError(28); + if (he.isClosed(e)) throw new he.ErrnoError(8); + if (0 == (2097155 & e.flags)) throw new he.ErrnoError(8); + if (he.isDir(e.node.mode)) throw new he.ErrnoError(31); + if (!e.stream_ops.write) throw new he.ErrnoError(28); + e.seekable && 1024 & e.flags && he.llseek(e, 0, 2); + var s = void 0 !== i; + if (s) { + if (!e.seekable) throw new he.ErrnoError(70); + } else i = e.position; + var A = e.stream_ops.write(e, t, r, n, i, o); + s || (e.position += A); + try { + e.path && + he.trackingDelegate.onWriteToFile && + he.trackingDelegate.onWriteToFile(e.path); + } catch (t) { + f( + "FS.trackingDelegate['onWriteToFile']('" + + e.path + + "') threw an exception: " + + t.message + ); + } + return A; + }, + allocate: function (e, t, r) { + if (he.isClosed(e)) throw new he.ErrnoError(8); + if (t < 0 || r <= 0) throw new he.ErrnoError(28); + if (0 == (2097155 & e.flags)) throw new he.ErrnoError(8); + if (!he.isFile(e.node.mode) && !he.isDir(e.node.mode)) throw new he.ErrnoError(43); + if (!e.stream_ops.allocate) throw new he.ErrnoError(138); + e.stream_ops.allocate(e, t, r); + }, + mmap: function (e, t, r, n, i, o) { + if (0 != (2 & i) && 0 == (2 & o) && 2 != (2097155 & e.flags)) + throw new he.ErrnoError(2); + if (1 == (2097155 & e.flags)) throw new he.ErrnoError(2); + if (!e.stream_ops.mmap) throw new he.ErrnoError(43); + return e.stream_ops.mmap(e, t, r, n, i, o); + }, + msync: function (e, t, r, n, i) { + return e && e.stream_ops.msync ? e.stream_ops.msync(e, t, r, n, i) : 0; + }, + munmap: function (e) { + return 0; + }, + ioctl: function (e, t, r) { + if (!e.stream_ops.ioctl) throw new he.ErrnoError(59); + return e.stream_ops.ioctl(e, t, r); + }, + readFile: function (e, t) { + if ( + (((t = t || {}).flags = t.flags || 'r'), + (t.encoding = t.encoding || 'binary'), + 'utf8' !== t.encoding && 'binary' !== t.encoding) + ) + throw new Error('Invalid encoding type "' + t.encoding + '"'); + var r, + n = he.open(e, t.flags), + i = he.stat(e).size, + o = new Uint8Array(i); + return ( + he.read(n, o, 0, i, 0), + 'utf8' === t.encoding ? (r = B(o, 0)) : 'binary' === t.encoding && (r = o), + he.close(n), + r + ); + }, + writeFile: function (e, t, r) { + (r = r || {}).flags = r.flags || 'w'; + var n = he.open(e, r.flags, r.mode); + if ('string' == typeof t) { + var i = new Uint8Array(b(t) + 1), + o = v(t, i, 0, i.length); + he.write(n, i, 0, o, void 0, r.canOwn); + } else { + if (!ArrayBuffer.isView(t)) throw new Error('Unsupported data type'); + he.write(n, t, 0, t.byteLength, void 0, r.canOwn); + } + he.close(n); + }, + cwd: function () { + return he.currentPath; + }, + chdir: function (e) { + var t = he.lookupPath(e, { follow: !0 }); + if (null === t.node) throw new he.ErrnoError(44); + if (!he.isDir(t.node.mode)) throw new he.ErrnoError(54); + var r = he.nodePermissions(t.node, 'x'); + if (r) throw new he.ErrnoError(r); + he.currentPath = t.path; + }, + createDefaultDirectories: function () { + he.mkdir('/tmp'), he.mkdir('/home'), he.mkdir('/home/web_user'); + }, + createDefaultDevices: function () { + var e; + if ( + (he.mkdir('/dev'), + he.registerDevice(he.makedev(1, 3), { + read: function () { + return 0; + }, + write: function (e, t, r, n, i) { + return n; + }, + }), + he.mkdev('/dev/null', he.makedev(1, 3)), + Ae.register(he.makedev(5, 0), Ae.default_tty_ops), + Ae.register(he.makedev(6, 0), Ae.default_tty1_ops), + he.mkdev('/dev/tty', he.makedev(5, 0)), + he.mkdev('/dev/tty1', he.makedev(6, 0)), + 'object' == typeof crypto && 'function' == typeof crypto.getRandomValues) + ) { + var t = new Uint8Array(1); + e = function () { + return crypto.getRandomValues(t), t[0]; + }; + } else { + try { + var n = r(76417); + e = function () { + return n.randomBytes(1)[0]; + }; + } catch (e) {} + } + e || + (e = function () { + Z('random_device'); + }), + he.createDevice('/dev', 'random', e), + he.createDevice('/dev', 'urandom', e), + he.mkdir('/dev/shm'), + he.mkdir('/dev/shm/tmp'); + }, + createSpecialDirectories: function () { + he.mkdir('/proc'), + he.mkdir('/proc/self'), + he.mkdir('/proc/self/fd'), + he.mount( + { + mount: function () { + var e = he.createNode('/proc/self', 'fd', 16895, 73); + return ( + (e.node_ops = { + lookup: function (e, t) { + var r = +t, + n = he.getStream(r); + if (!n) throw new he.ErrnoError(8); + var i = { + parent: null, + mount: { mountpoint: 'fake' }, + node_ops: { + readlink: function () { + return n.path; + }, + }, + }; + return (i.parent = i), i; + }, + }), + e + ); + }, + }, + {}, + '/proc/self/fd' + ); + }, + createStandardStreams: function () { + o.stdin + ? he.createDevice('/dev', 'stdin', o.stdin) + : he.symlink('/dev/tty', '/dev/stdin'), + o.stdout + ? he.createDevice('/dev', 'stdout', null, o.stdout) + : he.symlink('/dev/tty', '/dev/stdout'), + o.stderr + ? he.createDevice('/dev', 'stderr', null, o.stderr) + : he.symlink('/dev/tty1', '/dev/stderr'); + he.open('/dev/stdin', 'r'), he.open('/dev/stdout', 'w'), he.open('/dev/stderr', 'w'); + }, + ensureErrnoError: function () { + he.ErrnoError || + ((he.ErrnoError = function (e, t) { + (this.node = t), + (this.setErrno = function (e) { + this.errno = e; + }), + this.setErrno(e), + (this.message = 'FS error'); + }), + (he.ErrnoError.prototype = new Error()), + (he.ErrnoError.prototype.constructor = he.ErrnoError), + [44].forEach(function (e) { + (he.genericErrors[e] = new he.ErrnoError(e)), + (he.genericErrors[e].stack = ''); + })); + }, + staticInit: function () { + he.ensureErrnoError(), + (he.nameTable = new Array(4096)), + he.mount(ae, {}, '/'), + he.createDefaultDirectories(), + he.createDefaultDevices(), + he.createSpecialDirectories(), + (he.filesystems = { MEMFS: ae, NODEFS: ue }); + }, + init: function (e, t, r) { + (he.init.initialized = !0), + he.ensureErrnoError(), + (o.stdin = e || o.stdin), + (o.stdout = t || o.stdout), + (o.stderr = r || o.stderr), + he.createStandardStreams(); + }, + quit: function () { + he.init.initialized = !1; + var e = o._fflush; + e && e(0); + for (var t = 0; t < he.streams.length; t++) { + var r = he.streams[t]; + r && he.close(r); + } + }, + getMode: function (e, t) { + var r = 0; + return e && (r |= 365), t && (r |= 146), r; + }, + joinPath: function (e, t) { + var r = ie.join.apply(null, e); + return t && '/' == r[0] && (r = r.substr(1)), r; + }, + absolutePath: function (e, t) { + return se.resolve(t, e); + }, + standardizePath: function (e) { + return ie.normalize(e); + }, + findObject: function (e, t) { + var r = he.analyzePath(e, t); + return r.exists ? r.object : (oe(r.error), null); + }, + analyzePath: function (e, t) { + try { + e = (n = he.lookupPath(e, { follow: !t })).path; + } catch (e) {} + var r = { + isRoot: !1, + exists: !1, + error: 0, + name: null, + path: null, + object: null, + parentExists: !1, + parentPath: null, + parentObject: null, + }; + try { + var n = he.lookupPath(e, { parent: !0 }); + (r.parentExists = !0), + (r.parentPath = n.path), + (r.parentObject = n.node), + (r.name = ie.basename(e)), + (n = he.lookupPath(e, { follow: !t })), + (r.exists = !0), + (r.path = n.path), + (r.object = n.node), + (r.name = n.node.name), + (r.isRoot = '/' === n.path); + } catch (e) { + r.error = e.errno; + } + return r; + }, + createFolder: function (e, t, r, n) { + var i = ie.join2('string' == typeof e ? e : he.getPath(e), t), + o = he.getMode(r, n); + return he.mkdir(i, o); + }, + createPath: function (e, t, r, n) { + e = 'string' == typeof e ? e : he.getPath(e); + for (var i = t.split('/').reverse(); i.length; ) { + var o = i.pop(); + if (o) { + var s = ie.join2(e, o); + try { + he.mkdir(s); + } catch (e) {} + e = s; + } + } + return s; + }, + createFile: function (e, t, r, n, i) { + var o = ie.join2('string' == typeof e ? e : he.getPath(e), t), + s = he.getMode(n, i); + return he.create(o, s); + }, + createDataFile: function (e, t, r, n, i, o) { + var s = t ? ie.join2('string' == typeof e ? e : he.getPath(e), t) : e, + A = he.getMode(n, i), + a = he.create(s, A); + if (r) { + if ('string' == typeof r) { + for (var c = new Array(r.length), u = 0, l = r.length; u < l; ++u) + c[u] = r.charCodeAt(u); + r = c; + } + he.chmod(a, 146 | A); + var h = he.open(a, 'w'); + he.write(h, r, 0, r.length, 0, o), he.close(h), he.chmod(a, A); + } + return a; + }, + createDevice: function (e, t, r, n) { + var i = ie.join2('string' == typeof e ? e : he.getPath(e), t), + o = he.getMode(!!r, !!n); + he.createDevice.major || (he.createDevice.major = 64); + var s = he.makedev(he.createDevice.major++, 0); + return ( + he.registerDevice(s, { + open: function (e) { + e.seekable = !1; + }, + close: function (e) { + n && n.buffer && n.buffer.length && n(10); + }, + read: function (e, t, n, i, o) { + for (var s = 0, A = 0; A < i; A++) { + var a; + try { + a = r(); + } catch (e) { + throw new he.ErrnoError(29); + } + if (void 0 === a && 0 === s) throw new he.ErrnoError(6); + if (null == a) break; + s++, (t[n + A] = a); + } + return s && (e.node.timestamp = Date.now()), s; + }, + write: function (e, t, r, i, o) { + for (var s = 0; s < i; s++) + try { + n(t[r + s]); + } catch (e) { + throw new he.ErrnoError(29); + } + return i && (e.node.timestamp = Date.now()), s; + }, + }), + he.mkdev(i, o, s) + ); + }, + createLink: function (e, t, r, n, i) { + var o = ie.join2('string' == typeof e ? e : he.getPath(e), t); + return he.symlink(r, o); + }, + forceLoadFile: function (e) { + if (e.isDevice || e.isFolder || e.link || e.contents) return !0; + var t = !0; + if ('undefined' != typeof XMLHttpRequest) + throw new Error( + 'Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.' + ); + if (!A) throw new Error('Cannot load without read() or XMLHttpRequest.'); + try { + (e.contents = we(A(e.url), !0)), (e.usedBytes = e.contents.length); + } catch (e) { + t = !1; + } + return t || oe(29), t; + }, + createLazyFile: function (e, t, r, n, i) { + function o() { + (this.lengthKnown = !1), (this.chunks = []); + } + if ( + ((o.prototype.get = function (e) { + if (!(e > this.length - 1 || e < 0)) { + var t = e % this.chunkSize, + r = (e / this.chunkSize) | 0; + return this.getter(r)[t]; + } + }), + (o.prototype.setDataGetter = function (e) { + this.getter = e; + }), + (o.prototype.cacheLength = function () { + var e = new XMLHttpRequest(); + if ( + (e.open('HEAD', r, !1), + e.send(null), + !((e.status >= 200 && e.status < 300) || 304 === e.status)) + ) + throw new Error("Couldn't load " + r + '. Status: ' + e.status); + var t, + n = Number(e.getResponseHeader('Content-length')), + i = (t = e.getResponseHeader('Accept-Ranges')) && 'bytes' === t, + o = (t = e.getResponseHeader('Content-Encoding')) && 'gzip' === t, + s = 1048576; + i || (s = n); + var A = this; + A.setDataGetter(function (e) { + var t = e * s, + i = (e + 1) * s - 1; + if ( + ((i = Math.min(i, n - 1)), + void 0 === A.chunks[e] && + (A.chunks[e] = (function (e, t) { + if (e > t) + throw new Error( + 'invalid range (' + e + ', ' + t + ') or no bytes requested!' + ); + if (t > n - 1) + throw new Error('only ' + n + ' bytes available! programmer error!'); + var i = new XMLHttpRequest(); + if ( + (i.open('GET', r, !1), + n !== s && i.setRequestHeader('Range', 'bytes=' + e + '-' + t), + 'undefined' != typeof Uint8Array && (i.responseType = 'arraybuffer'), + i.overrideMimeType && + i.overrideMimeType('text/plain; charset=x-user-defined'), + i.send(null), + !((i.status >= 200 && i.status < 300) || 304 === i.status)) + ) + throw new Error("Couldn't load " + r + '. Status: ' + i.status); + return void 0 !== i.response + ? new Uint8Array(i.response || []) + : we(i.responseText || '', !0); + })(t, i)), + void 0 === A.chunks[e]) + ) + throw new Error('doXHR failed!'); + return A.chunks[e]; + }), + (!o && n) || + ((s = n = 1), + (n = this.getter(0).length), + (s = n), + g( + 'LazyFiles on gzip forces download of the whole file when length is accessed' + )), + (this._length = n), + (this._chunkSize = s), + (this.lengthKnown = !0); + }), + 'undefined' != typeof XMLHttpRequest) + ) + throw 'Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc'; + var s = { isDevice: !1, url: r }, + A = he.createFile(e, t, s, n, i); + s.contents + ? (A.contents = s.contents) + : s.url && ((A.contents = null), (A.url = s.url)), + Object.defineProperties(A, { + usedBytes: { + get: function () { + return this.contents.length; + }, + }, + }); + var a = {}; + return ( + Object.keys(A.stream_ops).forEach(function (e) { + var t = A.stream_ops[e]; + a[e] = function () { + if (!he.forceLoadFile(A)) throw new he.ErrnoError(29); + return t.apply(null, arguments); + }; + }), + (a.read = function (e, t, r, n, i) { + if (!he.forceLoadFile(A)) throw new he.ErrnoError(29); + var o = e.node.contents; + if (i >= o.length) return 0; + var s = Math.min(o.length - i, n); + if (o.slice) for (var a = 0; a < s; a++) t[r + a] = o[i + a]; + else for (a = 0; a < s; a++) t[r + a] = o.get(i + a); + return s; + }), + (A.stream_ops = a), + A + ); + }, + createPreloadedFile: function (e, t, r, n, i, s, A, a, c, u) { + Browser.init(); + var l = t ? se.resolve(ie.join2(e, t)) : e; + function h(r) { + function h(r) { + u && u(), a || he.createDataFile(e, t, r, n, i, c), s && s(), X(); + } + var g = !1; + o.preloadPlugins.forEach(function (e) { + g || + (e.canHandle(l) && + (e.handle(r, l, h, function () { + A && A(), X(); + }), + (g = !0))); + }), + g || h(r); + } + V(), + 'string' == typeof r + ? Browser.asyncLoad( + r, + function (e) { + h(e); + }, + A + ) + : h(r); + }, + indexedDB: function () { + return ( + window.indexedDB || + window.mozIndexedDB || + window.webkitIndexedDB || + window.msIndexedDB + ); + }, + DB_NAME: function () { + return 'EM_FS_' + window.location.pathname; + }, + DB_VERSION: 20, + DB_STORE_NAME: 'FILE_DATA', + saveFilesToDB: function (e, t, r) { + (t = t || function () {}), (r = r || function () {}); + var n = he.indexedDB(); + try { + var i = n.open(he.DB_NAME(), he.DB_VERSION); + } catch (e) { + return r(e); + } + (i.onupgradeneeded = function () { + g('creating db'), i.result.createObjectStore(he.DB_STORE_NAME); + }), + (i.onsuccess = function () { + var n = i.result.transaction([he.DB_STORE_NAME], 'readwrite'), + o = n.objectStore(he.DB_STORE_NAME), + s = 0, + A = 0, + a = e.length; + function c() { + 0 == A ? t() : r(); + } + e.forEach(function (e) { + var t = o.put(he.analyzePath(e).object.contents, e); + (t.onsuccess = function () { + ++s + A == a && c(); + }), + (t.onerror = function () { + A++, s + A == a && c(); + }); + }), + (n.onerror = r); + }), + (i.onerror = r); + }, + loadFilesFromDB: function (e, t, r) { + (t = t || function () {}), (r = r || function () {}); + var n = he.indexedDB(); + try { + var i = n.open(he.DB_NAME(), he.DB_VERSION); + } catch (e) { + return r(e); + } + (i.onupgradeneeded = r), + (i.onsuccess = function () { + var n = i.result; + try { + var o = n.transaction([he.DB_STORE_NAME], 'readonly'); + } catch (e) { + return void r(e); + } + var s = o.objectStore(he.DB_STORE_NAME), + A = 0, + a = 0, + c = e.length; + function u() { + 0 == a ? t() : r(); + } + e.forEach(function (e) { + var t = s.get(e); + (t.onsuccess = function () { + he.analyzePath(e).exists && he.unlink(e), + he.createDataFile(ie.dirname(e), ie.basename(e), t.result, !0, !0, !0), + ++A + a == c && u(); + }), + (t.onerror = function () { + a++, A + a == c && u(); + }); + }), + (o.onerror = r); + }), + (i.onerror = r); + }, + }, + ge = { + mappings: {}, + DEFAULT_POLLMASK: 5, + umask: 511, + calculateAt: function (e, t) { + if ('/' !== t[0]) { + var r; + if (-100 === e) r = he.cwd(); + else { + var n = he.getStream(e); + if (!n) throw new he.ErrnoError(8); + r = n.path; + } + t = ie.join2(r, t); + } + return t; + }, + doStat: function (e, t, r) { + try { + var n = e(t); + } catch (e) { + if (e && e.node && ie.normalize(t) !== ie.normalize(he.getPath(e.node))) return -54; + throw e; + } + return ( + (N[r >> 2] = n.dev), + (N[(r + 4) >> 2] = 0), + (N[(r + 8) >> 2] = n.ino), + (N[(r + 12) >> 2] = n.mode), + (N[(r + 16) >> 2] = n.nlink), + (N[(r + 20) >> 2] = n.uid), + (N[(r + 24) >> 2] = n.gid), + (N[(r + 28) >> 2] = n.rdev), + (N[(r + 32) >> 2] = 0), + (te = [ + n.size >>> 0, + ((ee = n.size), + +Y(ee) >= 1 + ? ee > 0 + ? (0 | H(+J(ee / 4294967296), 4294967295)) >>> 0 + : ~~+G((ee - +(~~ee >>> 0)) / 4294967296) >>> 0 + : 0), + ]), + (N[(r + 40) >> 2] = te[0]), + (N[(r + 44) >> 2] = te[1]), + (N[(r + 48) >> 2] = 4096), + (N[(r + 52) >> 2] = n.blocks), + (N[(r + 56) >> 2] = (n.atime.getTime() / 1e3) | 0), + (N[(r + 60) >> 2] = 0), + (N[(r + 64) >> 2] = (n.mtime.getTime() / 1e3) | 0), + (N[(r + 68) >> 2] = 0), + (N[(r + 72) >> 2] = (n.ctime.getTime() / 1e3) | 0), + (N[(r + 76) >> 2] = 0), + (te = [ + n.ino >>> 0, + ((ee = n.ino), + +Y(ee) >= 1 + ? ee > 0 + ? (0 | H(+J(ee / 4294967296), 4294967295)) >>> 0 + : ~~+G((ee - +(~~ee >>> 0)) / 4294967296) >>> 0 + : 0), + ]), + (N[(r + 80) >> 2] = te[0]), + (N[(r + 84) >> 2] = te[1]), + 0 + ); + }, + doMsync: function (e, t, r, n, i) { + var o = F.slice(e, e + r); + he.msync(t, o, i, r, n); + }, + doMkdir: function (e, t) { + return ( + '/' === (e = ie.normalize(e))[e.length - 1] && (e = e.substr(0, e.length - 1)), + he.mkdir(e, t, 0), + 0 + ); + }, + doMknod: function (e, t, r) { + switch (61440 & t) { + case 32768: + case 8192: + case 24576: + case 4096: + case 49152: + break; + default: + return -28; + } + return he.mknod(e, t, r), 0; + }, + doReadlink: function (e, t, r) { + if (r <= 0) return -28; + var n = he.readlink(e), + i = Math.min(r, b(n)), + o = x[t + i]; + return D(n, t, r + 1), (x[t + i] = o), i; + }, + doAccess: function (e, t) { + if (-8 & t) return -28; + var r; + if (!(r = he.lookupPath(e, { follow: !0 }).node)) return -44; + var n = ''; + return ( + 4 & t && (n += 'r'), + 2 & t && (n += 'w'), + 1 & t && (n += 'x'), + n && he.nodePermissions(r, n) ? -2 : 0 + ); + }, + doDup: function (e, t, r) { + var n = he.getStream(r); + return n && he.close(n), he.open(e, t, 0, r, r).fd; + }, + doReadv: function (e, t, r, n) { + for (var i = 0, o = 0; o < r; o++) { + var s = N[(t + 8 * o) >> 2], + A = N[(t + (8 * o + 4)) >> 2], + a = he.read(e, x, s, A, n); + if (a < 0) return -1; + if (((i += a), a < A)) break; + } + return i; + }, + doWritev: function (e, t, r, n) { + for (var i = 0, o = 0; o < r; o++) { + var s = N[(t + 8 * o) >> 2], + A = N[(t + (8 * o + 4)) >> 2], + a = he.write(e, x, s, A, n); + if (a < 0) return -1; + i += a; + } + return i; + }, + varargs: void 0, + get: function () { + return (ge.varargs += 4), N[(ge.varargs - 4) >> 2]; + }, + getStr: function (e) { + return Q(e); + }, + getStreamFromFD: function (e) { + var t = he.getStream(e); + if (!t) throw new he.ErrnoError(8); + return t; + }, + get64: function (e, t) { + return e; + }, + }; + function fe(e) { + try { + return d.grow((e - k.byteLength + 65535) >>> 16), L(d.buffer), 1; + } catch (e) {} + } + var pe = (D('GMT', 20704, 4), 20704); + var de = function (e, t, r, n) { + e || (e = this), + (this.parent = e), + (this.mount = e.mount), + (this.mounted = null), + (this.id = he.nextInode++), + (this.name = t), + (this.mode = r), + (this.node_ops = {}), + (this.stream_ops = {}), + (this.rdev = n); + }; + Object.defineProperties(de.prototype, { + read: { + get: function () { + return 365 == (365 & this.mode); + }, + set: function (e) { + e ? (this.mode |= 365) : (this.mode &= -366); + }, + }, + write: { + get: function () { + return 146 == (146 & this.mode); + }, + set: function (e) { + e ? (this.mode |= 146) : (this.mode &= -147); + }, + }, + isFolder: { + get: function () { + return he.isDir(this.mode); + }, + }, + isDevice: { + get: function () { + return he.isChrdev(this.mode); + }, + }, + }), + (he.FSNode = de), + he.staticInit(); + var Ce = i, + Ee = r(85622); + ue.staticInit(); + var Ie = function (e) { + return function () { + try { + return e.apply(this, arguments); + } catch (e) { + if (!e.code) throw e; + throw new he.ErrnoError(ce[e.code]); + } + }; + }, + me = Object.assign({}, he); + for (var ye in le) he[ye] = Ie(le[ye]); + function we(e, t, r) { + var n = r > 0 ? r : b(e) + 1, + i = new Array(n), + o = v(e, i, 0, i.length); + return t && (i.length = o), i; + } + 'function' == typeof atob && atob; + function Be(e) { + if ($(e)) + return (function (e) { + var t; + try { + t = Buffer.from(e, 'base64'); + } catch (r) { + t = new Buffer(e, 'base64'); + } + return new Uint8Array(t.buffer, t.byteOffset, t.byteLength); + })(e.slice('data:application/octet-stream;base64,'.length)); + } + var Qe, + ve = { + p: function (e, t) { + try { + return (e = ge.getStr(e)), he.chmod(e, t), 0; + } catch (e) { + return (void 0 !== he && e instanceof he.ErrnoError) || Z(e), -e.errno; + } + }, + e: function (e, t, r) { + ge.varargs = r; + try { + var n = ge.getStreamFromFD(e); + switch (t) { + case 0: + return (i = ge.get()) < 0 ? -28 : he.open(n.path, n.flags, 0, i).fd; + case 1: + case 2: + return 0; + case 3: + return n.flags; + case 4: + var i = ge.get(); + return (n.flags |= i), 0; + case 12: + i = ge.get(); + return (M[(i + 0) >> 1] = 2), 0; + case 13: + case 14: + return 0; + case 16: + case 8: + return -28; + case 9: + return oe(28), -1; + default: + return -28; + } + } catch (e) { + return (void 0 !== he && e instanceof he.ErrnoError) || Z(e), -e.errno; + } + }, + j: function (e, t) { + try { + var r = ge.getStreamFromFD(e); + return ge.doStat(he.stat, r.path, t); + } catch (e) { + return (void 0 !== he && e instanceof he.ErrnoError) || Z(e), -e.errno; + } + }, + o: function (e, t, r) { + ge.varargs = r; + try { + var n = ge.getStreamFromFD(e); + switch (t) { + case 21509: + case 21505: + return n.tty ? 0 : -59; + case 21510: + case 21511: + case 21512: + case 21506: + case 21507: + case 21508: + return n.tty ? 0 : -59; + case 21519: + if (!n.tty) return -59; + var i = ge.get(); + return (N[i >> 2] = 0), 0; + case 21520: + return n.tty ? -28 : -59; + case 21531: + i = ge.get(); + return he.ioctl(n, t, i); + case 21523: + case 21524: + return n.tty ? 0 : -59; + default: + Z('bad ioctl syscall ' + t); + } + } catch (e) { + return (void 0 !== he && e instanceof he.ErrnoError) || Z(e), -e.errno; + } + }, + r: function (e, t, r) { + ge.varargs = r; + try { + var n = ge.getStr(e), + i = ge.get(); + return he.open(n, t, i).fd; + } catch (e) { + return (void 0 !== he && e instanceof he.ErrnoError) || Z(e), -e.errno; + } + }, + q: function (e, t, r) { + try { + var n = ge.getStreamFromFD(e); + return he.read(n, x, t, r); + } catch (e) { + return (void 0 !== he && e instanceof he.ErrnoError) || Z(e), -e.errno; + } + }, + h: function (e, t) { + try { + return (e = ge.getStr(e)), (t = ge.getStr(t)), he.rename(e, t), 0; + } catch (e) { + return (void 0 !== he && e instanceof he.ErrnoError) || Z(e), -e.errno; + } + }, + s: function (e) { + try { + return (e = ge.getStr(e)), he.rmdir(e), 0; + } catch (e) { + return (void 0 !== he && e instanceof he.ErrnoError) || Z(e), -e.errno; + } + }, + c: function (e, t) { + try { + return (e = ge.getStr(e)), ge.doStat(he.stat, e, t); + } catch (e) { + return (void 0 !== he && e instanceof he.ErrnoError) || Z(e), -e.errno; + } + }, + g: function (e) { + try { + return (e = ge.getStr(e)), he.unlink(e), 0; + } catch (e) { + return (void 0 !== he && e instanceof he.ErrnoError) || Z(e), -e.errno; + } + }, + t: function (e, t, r) { + F.copyWithin(e, t, t + r); + }, + u: function (e) { + e >>>= 0; + var t = F.length; + if (e > 2147483648) return !1; + for (var r, n, i = 1; i <= 4; i *= 2) { + var o = t * (1 + 0.2 / i); + if ( + ((o = Math.min(o, e + 100663296)), + fe( + Math.min( + 2147483648, + ((r = Math.max(16777216, e, o)) % (n = 65536) > 0 && (r += n - (r % n)), r) + ) + )) + ) + return !0; + } + return !1; + }, + f: function (e) { + try { + var t = ge.getStreamFromFD(e); + return he.close(t), 0; + } catch (e) { + return (void 0 !== he && e instanceof he.ErrnoError) || Z(e), e.errno; + } + }, + i: function (e, t) { + try { + var r = ge.getStreamFromFD(e), + n = r.tty ? 2 : he.isDir(r.mode) ? 3 : he.isLink(r.mode) ? 7 : 4; + return (x[t >> 0] = n), 0; + } catch (e) { + return (void 0 !== he && e instanceof he.ErrnoError) || Z(e), e.errno; + } + }, + n: function (e, t, r, n) { + try { + var i = ge.getStreamFromFD(e), + o = ge.doReadv(i, t, r); + return (N[n >> 2] = o), 0; + } catch (e) { + return (void 0 !== he && e instanceof he.ErrnoError) || Z(e), e.errno; + } + }, + l: function (e, t, r, n, i) { + try { + var o = ge.getStreamFromFD(e), + s = 4294967296 * r + (t >>> 0); + return s <= -9007199254740992 || s >= 9007199254740992 + ? -61 + : (he.llseek(o, s, n), + (te = [ + o.position >>> 0, + ((ee = o.position), + +Y(ee) >= 1 + ? ee > 0 + ? (0 | H(+J(ee / 4294967296), 4294967295)) >>> 0 + : ~~+G((ee - +(~~ee >>> 0)) / 4294967296) >>> 0 + : 0), + ]), + (N[i >> 2] = te[0]), + (N[(i + 4) >> 2] = te[1]), + o.getdents && 0 === s && 0 === n && (o.getdents = null), + 0); + } catch (e) { + return (void 0 !== he && e instanceof he.ErrnoError) || Z(e), e.errno; + } + }, + d: function (e, t, r, n) { + try { + var i = ge.getStreamFromFD(e), + o = ge.doWritev(i, t, r); + return (N[n >> 2] = o), 0; + } catch (e) { + return (void 0 !== he && e instanceof he.ErrnoError) || Z(e), e.errno; + } + }, + k: function (e) { + return (function (e, t) { + var r = new Date(1e3 * N[e >> 2]); + (N[t >> 2] = r.getUTCSeconds()), + (N[(t + 4) >> 2] = r.getUTCMinutes()), + (N[(t + 8) >> 2] = r.getUTCHours()), + (N[(t + 12) >> 2] = r.getUTCDate()), + (N[(t + 16) >> 2] = r.getUTCMonth()), + (N[(t + 20) >> 2] = r.getUTCFullYear() - 1900), + (N[(t + 24) >> 2] = r.getUTCDay()), + (N[(t + 36) >> 2] = 0), + (N[(t + 32) >> 2] = 0); + var n = Date.UTC(r.getUTCFullYear(), 0, 1, 0, 0, 0, 0), + i = ((r.getTime() - n) / 864e5) | 0; + return (N[(t + 28) >> 2] = i), (N[(t + 40) >> 2] = pe), t; + })(e, 20656); + }, + memory: d, + a: function (e) { + 0 | e; + }, + table: C, + b: function (e) { + var t = (Date.now() / 1e3) | 0; + return e && (N[e >> 2] = t), t; + }, + m: function (e) { + !(function e() { + if (!e.called) { + (e.called = !0), (N[Fe() >> 2] = 60 * new Date().getTimezoneOffset()); + var t = new Date().getFullYear(), + r = new Date(t, 0, 1), + n = new Date(t, 6, 1); + N[xe() >> 2] = Number(r.getTimezoneOffset() != n.getTimezoneOffset()); + var i = a(r), + o = a(n), + s = S(i), + A = S(o); + n.getTimezoneOffset() < r.getTimezoneOffset() + ? ((N[ke() >> 2] = s), (N[(ke() + 4) >> 2] = A)) + : ((N[ke() >> 2] = A), (N[(ke() + 4) >> 2] = s)); + } + function a(e) { + var t = e.toTimeString().match(/\(([A-Za-z ]+)\)$/); + return t ? t[1] : 'GMT'; + } + })(); + var t = Date.UTC( + N[(e + 20) >> 2] + 1900, + N[(e + 16) >> 2], + N[(e + 12) >> 2], + N[(e + 8) >> 2], + N[(e + 4) >> 2], + N[e >> 2], + 0 + ), + r = new Date(t); + N[(e + 24) >> 2] = r.getUTCDay(); + var n = Date.UTC(r.getUTCFullYear(), 0, 1, 0, 0, 0, 0), + i = ((r.getTime() - n) / 864e5) | 0; + return (N[(e + 28) >> 2] = i), (r.getTime() / 1e3) | 0; + }, + }, + De = (function () { + var e = { a: ve }; + function t(e, t) { + var r = e.exports; + (o.asm = r), X(); + } + if ((V(), o.instantiateWasm)) + try { + return o.instantiateWasm(e, t); + } catch (e) { + return f('Module.instantiateWasm callback failed with error: ' + e), !1; + } + return ( + (function () { + var r, n, i; + try { + (i = (function () { + try { + if (p) return new Uint8Array(p); + var e = Be(re); + if (e) return e; + if (a) return a(re); + throw "sync fetching of the wasm failed: you can preload it to Module['wasmBinary'] manually, or emcc.py will do that for you when generating HTML (but not JS)"; + } catch (e) { + Z(e); + } + })()), + (n = new WebAssembly.Module(i)), + (r = new WebAssembly.Instance(n, e)); + } catch (e) { + var o = e.toString(); + throw ( + (f('failed to compile wasm module: ' + o), + (o.indexOf('imported Memory') >= 0 || o.indexOf('memory import') >= 0) && + f( + 'Memory size incompatibility issues may be due to changing INITIAL_MEMORY at runtime to something too large. Use ALLOW_MEMORY_GROWTH to allow any size memory (and also make sure not to set INITIAL_MEMORY at runtime to something smaller than it was at compile time).' + ), + e) + ); + } + t(r); + })(), + o.asm + ); + })(), + be = (o.___wasm_call_ctors = De.v), + Se = + ((o._zipstruct_stat = De.w), + (o._zipstruct_statS = De.x), + (o._zipstruct_stat_name = De.y), + (o._zipstruct_stat_index = De.z), + (o._zipstruct_stat_size = De.A), + (o._zipstruct_stat_mtime = De.B), + (o._zipstruct_error = De.C), + (o._zipstruct_errorS = De.D), + (o._zip_close = De.E), + (o._zip_dir_add = De.F), + (o._zip_discard = De.G), + (o._zip_error_init_with_code = De.H), + (o._zip_get_error = De.I), + (o._zip_file_get_error = De.J), + (o._zip_error_strerror = De.K), + (o._zip_fclose = De.L), + (o._zip_file_add = De.M), + (o._zip_file_get_external_attributes = De.N), + (o._zip_file_set_external_attributes = De.O), + (o._zip_file_set_mtime = De.P), + (o._zip_fopen = De.Q), + (o._zip_fopen_index = De.R), + (o._zip_fread = De.S), + (o._zip_get_name = De.T), + (o._zip_get_num_entries = De.U), + (o._zip_name_locate = De.V), + (o._zip_open = De.W), + (o._zip_open_from_source = De.X), + (o._zip_set_file_compression = De.Y), + (o._zip_source_buffer = De.Z), + (o._zip_source_buffer_create = De._), + (o._zip_source_close = De.$), + (o._zip_source_error = De.aa), + (o._zip_source_free = De.ba), + (o._zip_source_keep = De.ca), + (o._zip_source_open = De.da), + (o._zip_source_read = De.ea), + (o._zip_source_seek = De.fa), + (o._zip_source_set_mtime = De.ga), + (o._zip_source_tell = De.ha), + (o._zip_stat = De.ia), + (o._zip_stat_index = De.ja), + (o._zip_ext_count_symlinks = De.ka), + (o.___errno_location = De.la)), + ke = (o.__get_tzname = De.ma), + xe = (o.__get_daylight = De.na), + Fe = (o.__get_timezone = De.oa), + Me = (o.stackSave = De.pa), + Ne = (o.stackRestore = De.qa), + Re = (o.stackAlloc = De.ra), + Ke = (o._malloc = De.sa); + (o._free = De.ta), (o.dynCall_vi = De.ua); + function Le(e) { + function t() { + Qe || + ((Qe = !0), + (o.calledRun = !0), + E || + (!0, + o.noFSInit || he.init.initialized || he.init(), + Ae.init(), + P(_), + (he.ignorePermissions = !1), + P(O), + o.onRuntimeInitialized && o.onRuntimeInitialized(), + (function () { + if (o.postRun) + for ( + 'function' == typeof o.postRun && (o.postRun = [o.postRun]); + o.postRun.length; + + ) + (e = o.postRun.shift()), j.unshift(e); + var e; + P(j); + })())); + } + (e = e || l), + q > 0 || + (!(function () { + if (o.preRun) + for ('function' == typeof o.preRun && (o.preRun = [o.preRun]); o.preRun.length; ) + (e = o.preRun.shift()), U.unshift(e); + var e; + P(U); + })(), + q > 0 || + (o.setStatus + ? (o.setStatus('Running...'), + setTimeout(function () { + setTimeout(function () { + o.setStatus(''); + }, 1), + t(); + }, 1)) + : t())); + } + if ( + ((o.cwrap = function (e, t, r, n) { + var i = (r = r || []).every(function (e) { + return 'number' === e; + }); + return 'string' !== t && i && !n + ? m(e) + : function () { + return y(e, t, r, arguments); + }; + }), + (o.getValue = function (e, t, r) { + switch (('*' === (t = t || 'i8').charAt(t.length - 1) && (t = 'i32'), t)) { + case 'i1': + case 'i8': + return x[e >> 0]; + case 'i16': + return M[e >> 1]; + case 'i32': + case 'i64': + return N[e >> 2]; + case 'float': + return R[e >> 2]; + case 'double': + return K[e >> 3]; + default: + Z('invalid type for getValue: ' + t); + } + return null; + }), + (W = function e() { + Qe || Le(), Qe || (W = e); + }), + (o.run = Le), + o.preInit) + ) + for ('function' == typeof o.preInit && (o.preInit = [o.preInit]); o.preInit.length > 0; ) + o.preInit.pop()(); + Le(); + }, + 54920: (e) => { + 'use strict'; + e.exports = JSON.parse('{"u2":"@yarnpkg/parsers"}'); + }, + 98261: (e) => { + 'use strict'; + function t(e, r, n, i) { + (this.message = e), + (this.expected = r), + (this.found = n), + (this.location = i), + (this.name = 'SyntaxError'), + 'function' == typeof Error.captureStackTrace && Error.captureStackTrace(this, t); + } + !(function (e, t) { + function r() { + this.constructor = e; + } + (r.prototype = t.prototype), (e.prototype = new r()); + })(t, Error), + (t.buildMessage = function (e, t) { + var r = { + literal: function (e) { + return `"${i(e.text)}"`; + }, + class: function (e) { + var t, + r = ''; + for (t = 0; t < e.parts.length; t++) + r += + e.parts[t] instanceof Array + ? `${o(e.parts[t][0])}-${o(e.parts[t][1])}` + : o(e.parts[t]); + return `[${e.inverted ? '^' : ''}${r}]`; + }, + any: function (e) { + return 'any character'; + }, + end: function (e) { + return 'end of input'; + }, + other: function (e) { + return e.description; + }, + }; + function n(e) { + return e.charCodeAt(0).toString(16).toUpperCase(); + } + function i(e) { + return e + .replace(/\\/g, '\\\\') + .replace(/"/g, '\\"') + .replace(/\0/g, '\\0') + .replace(/\t/g, '\\t') + .replace(/\n/g, '\\n') + .replace(/\r/g, '\\r') + .replace(/[\x00-\x0F]/g, function (e) { + return '\\x0' + n(e); + }) + .replace(/[\x10-\x1F\x7F-\x9F]/g, function (e) { + return '\\x' + n(e); + }); + } + function o(e) { + return e + .replace(/\\/g, '\\\\') + .replace(/\]/g, '\\]') + .replace(/\^/g, '\\^') + .replace(/-/g, '\\-') + .replace(/\0/g, '\\0') + .replace(/\t/g, '\\t') + .replace(/\n/g, '\\n') + .replace(/\r/g, '\\r') + .replace(/[\x00-\x0F]/g, function (e) { + return '\\x0' + n(e); + }) + .replace(/[\x10-\x1F\x7F-\x9F]/g, function (e) { + return '\\x' + n(e); + }); + } + return `Expected ${(function (e) { + var t, + n, + i, + o = new Array(e.length); + for (t = 0; t < e.length; t++) o[t] = ((i = e[t]), r[i.type](i)); + if ((o.sort(), o.length > 0)) { + for (t = 1, n = 1; t < o.length; t++) o[t - 1] !== o[t] && ((o[n] = o[t]), n++); + o.length = n; + } + switch (o.length) { + case 1: + return o[0]; + case 2: + return `${o[0]} or ${o[1]}`; + default: + return `${o.slice(0, -1).join(', ')}, or ${o[o.length - 1]}`; + } + })(e)} but ${(function (e) { + return e ? `"${i(e)}"` : 'end of input'; + })(t)} found.`; + }), + (e.exports = { + SyntaxError: t, + parse: function (e, r) { + r = void 0 !== r ? r : {}; + var n, + i = {}, + o = { resolution: v }, + s = v, + A = I('/', !1), + a = I('@', !1), + c = function () { + return e.substring(p, f); + }, + u = /^[^\/@]/, + l = m(['/', '@'], !0, !1), + h = /^[^\/]/, + g = m(['/'], !0, !1), + f = 0, + p = 0, + d = [{ line: 1, column: 1 }], + C = 0, + E = []; + if ('startRule' in r) { + if (!(r.startRule in o)) + throw new Error(`Can't start parsing from rule "${r.startRule}".`); + s = o[r.startRule]; + } + function I(e, t) { + return { type: 'literal', text: e, ignoreCase: t }; + } + function m(e, t, r) { + return { type: 'class', parts: e, inverted: t, ignoreCase: r }; + } + function y(t) { + var r, + n = d[t]; + if (n) return n; + for (r = t - 1; !d[r]; ) r--; + for (n = { line: (n = d[r]).line, column: n.column }; r < t; ) + 10 === e.charCodeAt(r) ? (n.line++, (n.column = 1)) : n.column++, r++; + return (d[t] = n), n; + } + function w(e, t) { + var r = y(e), + n = y(t); + return { + start: { offset: e, line: r.line, column: r.column }, + end: { offset: t, line: n.line, column: n.column }, + }; + } + function B(e) { + f < C || (f > C && ((C = f), (E = [])), E.push(e)); + } + function Q(e, r, n) { + return new t(t.buildMessage(e, r), e, r, n); + } + function v() { + var t, r, n, o; + return ( + (t = f), + (r = D()) !== i + ? (47 === e.charCodeAt(f) ? ((n = '/'), f++) : ((n = i), B(A)), + n !== i && (o = D()) !== i + ? ((p = t), (t = r = { from: r, descriptor: o })) + : ((f = t), (t = i))) + : ((f = t), (t = i)), + t === i && + ((t = f), + (r = D()) !== i && + ((p = t), + (r = (function (e) { + return { descriptor: e }; + })(r))), + (t = r)), + t + ); + } + function D() { + var t, r, n, o; + return ( + (t = f), + (r = b()) !== i + ? (64 === e.charCodeAt(f) ? ((n = '@'), f++) : ((n = i), B(a)), + n !== i && + (o = (function () { + var t, r, n; + (t = f), + (r = []), + h.test(e.charAt(f)) ? ((n = e.charAt(f)), f++) : ((n = i), B(g)); + if (n !== i) + for (; n !== i; ) + r.push(n), + h.test(e.charAt(f)) ? ((n = e.charAt(f)), f++) : ((n = i), B(g)); + else r = i; + r !== i && ((p = t), (r = c())); + return (t = r); + })()) !== i + ? ((p = t), (t = r = { fullName: r, description: o })) + : ((f = t), (t = i))) + : ((f = t), (t = i)), + t === i && + ((t = f), + (r = b()) !== i && + ((p = t), + (r = (function (e) { + return { fullName: e }; + })(r))), + (t = r)), + t + ); + } + function b() { + var t, r, n; + return ( + (t = f), + 64 === e.charCodeAt(f) ? ((r = '@'), f++) : ((r = i), B(a)), + r !== i && S() !== i + ? (47 === e.charCodeAt(f) ? ((n = '/'), f++) : ((n = i), B(A)), + n !== i && S() !== i ? ((p = t), (t = r = c())) : ((f = t), (t = i))) + : ((f = t), (t = i)), + t === i && ((t = f), (r = S()) !== i && ((p = t), (r = c())), (t = r)), + t + ); + } + function S() { + var t, r, n; + if ( + ((t = f), + (r = []), + u.test(e.charAt(f)) ? ((n = e.charAt(f)), f++) : ((n = i), B(l)), + n !== i) + ) + for (; n !== i; ) + r.push(n), u.test(e.charAt(f)) ? ((n = e.charAt(f)), f++) : ((n = i), B(l)); + else r = i; + return r !== i && ((p = t), (r = c())), (t = r); + } + if ((n = s()) !== i && f === e.length) return n; + throw ( + (n !== i && f < e.length && B({ type: 'end' }), + Q(E, C < e.length ? e.charAt(C) : null, C < e.length ? w(C, C + 1) : w(C, C))) + ); + }, + }); + }, + 92962: (e) => { + 'use strict'; + function t(e, r, n, i) { + (this.message = e), + (this.expected = r), + (this.found = n), + (this.location = i), + (this.name = 'SyntaxError'), + 'function' == typeof Error.captureStackTrace && Error.captureStackTrace(this, t); + } + !(function (e, t) { + function r() { + this.constructor = e; + } + (r.prototype = t.prototype), (e.prototype = new r()); + })(t, Error), + (t.buildMessage = function (e, t) { + var r = { + literal: function (e) { + return '"' + i(e.text) + '"'; + }, + class: function (e) { + var t, + r = ''; + for (t = 0; t < e.parts.length; t++) + r += + e.parts[t] instanceof Array + ? o(e.parts[t][0]) + '-' + o(e.parts[t][1]) + : o(e.parts[t]); + return '[' + (e.inverted ? '^' : '') + r + ']'; + }, + any: function (e) { + return 'any character'; + }, + end: function (e) { + return 'end of input'; + }, + other: function (e) { + return e.description; + }, + }; + function n(e) { + return e.charCodeAt(0).toString(16).toUpperCase(); + } + function i(e) { + return e + .replace(/\\/g, '\\\\') + .replace(/"/g, '\\"') + .replace(/\0/g, '\\0') + .replace(/\t/g, '\\t') + .replace(/\n/g, '\\n') + .replace(/\r/g, '\\r') + .replace(/[\x00-\x0F]/g, function (e) { + return '\\x0' + n(e); + }) + .replace(/[\x10-\x1F\x7F-\x9F]/g, function (e) { + return '\\x' + n(e); + }); + } + function o(e) { + return e + .replace(/\\/g, '\\\\') + .replace(/\]/g, '\\]') + .replace(/\^/g, '\\^') + .replace(/-/g, '\\-') + .replace(/\0/g, '\\0') + .replace(/\t/g, '\\t') + .replace(/\n/g, '\\n') + .replace(/\r/g, '\\r') + .replace(/[\x00-\x0F]/g, function (e) { + return '\\x0' + n(e); + }) + .replace(/[\x10-\x1F\x7F-\x9F]/g, function (e) { + return '\\x' + n(e); + }); + } + return ( + 'Expected ' + + (function (e) { + var t, + n, + i, + o = new Array(e.length); + for (t = 0; t < e.length; t++) o[t] = ((i = e[t]), r[i.type](i)); + if ((o.sort(), o.length > 0)) { + for (t = 1, n = 1; t < o.length; t++) o[t - 1] !== o[t] && ((o[n] = o[t]), n++); + o.length = n; + } + switch (o.length) { + case 1: + return o[0]; + case 2: + return o[0] + ' or ' + o[1]; + default: + return o.slice(0, -1).join(', ') + ', or ' + o[o.length - 1]; + } + })(e) + + ' but ' + + (function (e) { + return e ? '"' + i(e) + '"' : 'end of input'; + })(t) + + ' found.' + ); + }), + (e.exports = { + SyntaxError: t, + parse: function (e, r) { + r = void 0 !== r ? r : {}; + var n, + i = {}, + o = { Start: oe }, + s = oe, + A = $(';', !1), + a = $('&&', !1), + c = $('||', !1), + u = $('|&', !1), + l = $('|', !1), + h = $('=', !1), + g = $('(', !1), + f = $(')', !1), + p = $('>>', !1), + d = $('>', !1), + C = $('<<<', !1), + E = $('<', !1), + I = $("'", !1), + m = $('"', !1), + y = function (e) { + return { type: 'text', text: e }; + }, + w = $('\\', !1), + B = { type: 'any' }, + Q = /^[^']/, + v = ee(["'"], !0, !1), + D = function (e) { + return e.join(''); + }, + b = /^[^$"]/, + S = ee(['$', '"'], !0, !1), + k = $('$(', !1), + x = $('${', !1), + F = $(':-', !1), + M = $('}', !1), + N = $(':-}', !1), + R = function (e) { + return { name: e }; + }, + K = $('$', !1), + L = /^[a-zA-Z0-9_]/, + T = ee([['a', 'z'], ['A', 'Z'], ['0', '9'], '_'], !1, !1), + P = function () { + return e.substring(z, q); + }, + U = /^[@*?#a-zA-Z0-9_\-]/, + _ = ee(['@', '*', '?', '#', ['a', 'z'], ['A', 'Z'], ['0', '9'], '_', '-'], !1, !1), + O = /^[(){}<>$|&; \t"']/, + j = ee( + ['(', ')', '{', '}', '<', '>', '$', '|', '&', ';', ' ', '\t', '"', "'"], + !1, + !1 + ), + Y = /^[<>&; \t"']/, + G = ee(['<', '>', '&', ';', ' ', '\t', '"', "'"], !1, !1), + J = /^[ \t]/, + H = ee([' ', '\t'], !1, !1), + q = 0, + z = 0, + W = [{ line: 1, column: 1 }], + V = 0, + X = [], + Z = 0; + if ('startRule' in r) { + if (!(r.startRule in o)) + throw new Error('Can\'t start parsing from rule "' + r.startRule + '".'); + s = o[r.startRule]; + } + function $(e, t) { + return { type: 'literal', text: e, ignoreCase: t }; + } + function ee(e, t, r) { + return { type: 'class', parts: e, inverted: t, ignoreCase: r }; + } + function te(t) { + var r, + n = W[t]; + if (n) return n; + for (r = t - 1; !W[r]; ) r--; + for (n = { line: (n = W[r]).line, column: n.column }; r < t; ) + 10 === e.charCodeAt(r) ? (n.line++, (n.column = 1)) : n.column++, r++; + return (W[t] = n), n; + } + function re(e, t) { + var r = te(e), + n = te(t); + return { + start: { offset: e, line: r.line, column: r.column }, + end: { offset: t, line: n.line, column: n.column }, + }; + } + function ne(e) { + q < V || (q > V && ((V = q), (X = [])), X.push(e)); + } + function ie(e, r, n) { + return new t(t.buildMessage(e, r), e, r, n); + } + function oe() { + var e, t; + return ( + (e = q), + (t = se()) === i && (t = null), + t !== i && ((z = e), (t = t || [])), + (e = t) + ); + } + function se() { + var t, r, n; + return ( + (t = q), + (r = Ae()) !== i + ? ((n = (function () { + var t, r, n, o, s, a, c; + (t = q), (r = []), (n = Be()); + for (; n !== i; ) r.push(n), (n = Be()); + if (r !== i) + if ( + (59 === e.charCodeAt(q) + ? ((n = ';'), q++) + : ((n = i), 0 === Z && ne(A)), + n !== i) + ) { + for (o = [], s = Be(); s !== i; ) o.push(s), (s = Be()); + if (o !== i) + if ((s = se()) !== i) { + for (a = [], c = Be(); c !== i; ) a.push(c), (c = Be()); + a !== i ? ((z = t), (t = r = s)) : ((q = t), (t = i)); + } else (q = t), (t = i); + else (q = t), (t = i); + } else (q = t), (t = i); + else (q = t), (t = i); + return t; + })()) === i && (n = null), + n !== i ? ((z = t), (t = r = [r].concat(n || []))) : ((q = t), (t = i))) + : ((q = t), (t = i)), + t + ); + } + function Ae() { + var t, r, n, o, s; + return ( + (t = q), + (r = ae()) !== i + ? ((n = (function () { + var t, r, n, o, s, A, u; + (t = q), (r = []), (n = Be()); + for (; n !== i; ) r.push(n), (n = Be()); + if (r !== i) + if ( + (n = (function () { + var t; + '&&' === e.substr(q, 2) + ? ((t = '&&'), (q += 2)) + : ((t = i), 0 === Z && ne(a)); + t === i && + ('||' === e.substr(q, 2) + ? ((t = '||'), (q += 2)) + : ((t = i), 0 === Z && ne(c))); + return t; + })()) !== i + ) { + for (o = [], s = Be(); s !== i; ) o.push(s), (s = Be()); + if (o !== i) + if ((s = Ae()) !== i) { + for (A = [], u = Be(); u !== i; ) A.push(u), (u = Be()); + A !== i + ? ((z = t), (t = r = { type: n, line: s })) + : ((q = t), (t = i)); + } else (q = t), (t = i); + else (q = t), (t = i); + } else (q = t), (t = i); + else (q = t), (t = i); + return t; + })()) === i && (n = null), + n !== i + ? ((z = t), + (o = r), + (t = r = (s = n) ? { chain: o, then: s } : { chain: o })) + : ((q = t), (t = i))) + : ((q = t), (t = i)), + t + ); + } + function ae() { + var t, r, n, o, s; + return ( + (t = q), + (r = (function () { + var t, r, n, o, s, A, a, c, u, l, h; + (t = q), (r = []), (n = Be()); + for (; n !== i; ) r.push(n), (n = Be()); + if (r !== i) + if ( + (40 === e.charCodeAt(q) ? ((n = '('), q++) : ((n = i), 0 === Z && ne(g)), + n !== i) + ) { + for (o = [], s = Be(); s !== i; ) o.push(s), (s = Be()); + if (o !== i) + if ((s = se()) !== i) { + for (A = [], a = Be(); a !== i; ) A.push(a), (a = Be()); + if (A !== i) + if ( + (41 === e.charCodeAt(q) + ? ((a = ')'), q++) + : ((a = i), 0 === Z && ne(f)), + a !== i) + ) { + for (c = [], u = Be(); u !== i; ) c.push(u), (u = Be()); + if (c !== i) { + for (u = [], l = le(); l !== i; ) u.push(l), (l = le()); + if (u !== i) { + for (l = [], h = Be(); h !== i; ) l.push(h), (h = Be()); + l !== i + ? ((z = t), + (t = r = { type: 'subshell', subshell: s, args: u })) + : ((q = t), (t = i)); + } else (q = t), (t = i); + } else (q = t), (t = i); + } else (q = t), (t = i); + else (q = t), (t = i); + } else (q = t), (t = i); + else (q = t), (t = i); + } else (q = t), (t = i); + else (q = t), (t = i); + if (t === i) { + for (t = q, r = [], n = Be(); n !== i; ) r.push(n), (n = Be()); + if (r !== i) { + for (n = [], o = ce(); o !== i; ) n.push(o), (o = ce()); + if (n !== i) { + for (o = [], s = Be(); s !== i; ) o.push(s), (s = Be()); + if (o !== i) { + if (((s = []), (A = ue()) !== i)) + for (; A !== i; ) s.push(A), (A = ue()); + else s = i; + if (s !== i) { + for (A = [], a = Be(); a !== i; ) A.push(a), (a = Be()); + A !== i + ? ((z = t), + (r = (function (e, t) { + return { type: 'command', args: t, envs: e }; + })(n, s)), + (t = r)) + : ((q = t), (t = i)); + } else (q = t), (t = i); + } else (q = t), (t = i); + } else (q = t), (t = i); + } else (q = t), (t = i); + if (t === i) { + for (t = q, r = [], n = Be(); n !== i; ) r.push(n), (n = Be()); + if (r !== i) { + if (((n = []), (o = ce()) !== i)) for (; o !== i; ) n.push(o), (o = ce()); + else n = i; + if (n !== i) { + for (o = [], s = Be(); s !== i; ) o.push(s), (s = Be()); + o !== i + ? ((z = t), (t = r = { type: 'envs', envs: n })) + : ((q = t), (t = i)); + } else (q = t), (t = i); + } else (q = t), (t = i); + } + } + return t; + })()) !== i + ? ((n = (function () { + var t, r, n, o, s, A, a; + (t = q), (r = []), (n = Be()); + for (; n !== i; ) r.push(n), (n = Be()); + if (r !== i) + if ( + (n = (function () { + var t; + '|&' === e.substr(q, 2) + ? ((t = '|&'), (q += 2)) + : ((t = i), 0 === Z && ne(u)); + t === i && + (124 === e.charCodeAt(q) + ? ((t = '|'), q++) + : ((t = i), 0 === Z && ne(l))); + return t; + })()) !== i + ) { + for (o = [], s = Be(); s !== i; ) o.push(s), (s = Be()); + if (o !== i) + if ((s = ae()) !== i) { + for (A = [], a = Be(); a !== i; ) A.push(a), (a = Be()); + A !== i + ? ((z = t), (t = r = { type: n, chain: s })) + : ((q = t), (t = i)); + } else (q = t), (t = i); + else (q = t), (t = i); + } else (q = t), (t = i); + else (q = t), (t = i); + return t; + })()) === i && (n = null), + n !== i + ? ((z = t), (o = r), (t = r = (s = n) ? { ...o, then: s } : o)) + : ((q = t), (t = i))) + : ((q = t), (t = i)), + t + ); + } + function ce() { + var t, r, n, o, s, A; + if (((t = q), (r = Ie()) !== i)) + if ( + (61 === e.charCodeAt(q) ? ((n = '='), q++) : ((n = i), 0 === Z && ne(h)), + n !== i) + ) + if ((o = ge()) !== i) { + for (s = [], A = Be(); A !== i; ) s.push(A), (A = Be()); + s !== i ? ((z = t), (t = r = { name: r, args: [o] })) : ((q = t), (t = i)); + } else (q = t), (t = i); + else (q = t), (t = i); + else (q = t), (t = i); + if (t === i) + if (((t = q), (r = Ie()) !== i)) + if ( + (61 === e.charCodeAt(q) ? ((n = '='), q++) : ((n = i), 0 === Z && ne(h)), + n !== i) + ) { + for (o = [], s = Be(); s !== i; ) o.push(s), (s = Be()); + o !== i + ? ((z = t), + (t = r = (function (e) { + return { name: e, args: [] }; + })(r))) + : ((q = t), (t = i)); + } else (q = t), (t = i); + else (q = t), (t = i); + return t; + } + function ue() { + var e, t, r; + for (e = q, t = [], r = Be(); r !== i; ) t.push(r), (r = Be()); + if ( + (t !== i && (r = le()) !== i ? ((z = e), (e = t = r)) : ((q = e), (e = i)), + e === i) + ) { + for (e = q, t = [], r = Be(); r !== i; ) t.push(r), (r = Be()); + t !== i && (r = he()) !== i ? ((z = e), (e = t = r)) : ((q = e), (e = i)); + } + return e; + } + function le() { + var t, r, n, o; + for (t = q, r = [], n = Be(); n !== i; ) r.push(n), (n = Be()); + return ( + r !== i + ? ('>>' === e.substr(q, 2) + ? ((n = '>>'), (q += 2)) + : ((n = i), 0 === Z && ne(p)), + n === i && + (62 === e.charCodeAt(q) ? ((n = '>'), q++) : ((n = i), 0 === Z && ne(d)), + n === i && + ('<<<' === e.substr(q, 3) + ? ((n = '<<<'), (q += 3)) + : ((n = i), 0 === Z && ne(C)), + n === i && + (60 === e.charCodeAt(q) + ? ((n = '<'), q++) + : ((n = i), 0 === Z && ne(E))))), + n !== i && (o = he()) !== i + ? ((z = t), (t = r = { type: 'redirection', subtype: n, args: [o] })) + : ((q = t), (t = i))) + : ((q = t), (t = i)), + t + ); + } + function he() { + var e, t, r; + for (e = q, t = [], r = Be(); r !== i; ) t.push(r), (r = Be()); + return t !== i && (r = ge()) !== i ? ((z = e), (e = t = r)) : ((q = e), (e = i)), e; + } + function ge() { + var e, t, r, n; + if (((e = q), (t = []), (r = fe()) !== i)) for (; r !== i; ) t.push(r), (r = fe()); + else t = i; + return ( + t !== i && + ((z = e), (n = t), (t = { type: 'argument', segments: [].concat(...n) })), + (e = t) + ); + } + function fe() { + var t, r; + return ( + (t = q), + (r = (function () { + var t, r, n, o; + (t = q), + 39 === e.charCodeAt(q) ? ((r = "'"), q++) : ((r = i), 0 === Z && ne(I)); + r !== i && + (n = (function () { + var t, r, n, o, s; + (t = q), + (r = []), + (n = q), + 92 === e.charCodeAt(q) ? ((o = '\\'), q++) : ((o = i), 0 === Z && ne(w)); + o !== i + ? (e.length > q ? ((s = e.charAt(q)), q++) : ((s = i), 0 === Z && ne(B)), + s !== i ? ((z = n), (n = o = s)) : ((q = n), (n = i))) + : ((q = n), (n = i)); + n === i && + (Q.test(e.charAt(q)) + ? ((n = e.charAt(q)), q++) + : ((n = i), 0 === Z && ne(v))); + for (; n !== i; ) + r.push(n), + (n = q), + 92 === e.charCodeAt(q) ? ((o = '\\'), q++) : ((o = i), 0 === Z && ne(w)), + o !== i + ? (e.length > q + ? ((s = e.charAt(q)), q++) + : ((s = i), 0 === Z && ne(B)), + s !== i ? ((z = n), (n = o = s)) : ((q = n), (n = i))) + : ((q = n), (n = i)), + n === i && + (Q.test(e.charAt(q)) + ? ((n = e.charAt(q)), q++) + : ((n = i), 0 === Z && ne(v))); + r !== i && ((z = t), (r = D(r))); + return (t = r); + })()) !== i + ? (39 === e.charCodeAt(q) ? ((o = "'"), q++) : ((o = i), 0 === Z && ne(I)), + o !== i + ? ((z = t), + (r = (function (e) { + return [{ type: 'text', text: e }]; + })(n)), + (t = r)) + : ((q = t), (t = i))) + : ((q = t), (t = i)); + return t; + })()) !== i && ((z = t), (r = r)), + (t = r) === i && + ((t = q), + (r = (function () { + var t, r, n, o; + (t = q), + 34 === e.charCodeAt(q) ? ((r = '"'), q++) : ((r = i), 0 === Z && ne(m)); + if (r !== i) { + for (n = [], o = pe(); o !== i; ) n.push(o), (o = pe()); + n !== i + ? (34 === e.charCodeAt(q) + ? ((o = '"'), q++) + : ((o = i), 0 === Z && ne(m)), + o !== i ? ((z = t), (t = r = n)) : ((q = t), (t = i))) + : ((q = t), (t = i)); + } else (q = t), (t = i); + return t; + })()) !== i && ((z = t), (r = r)), + (t = r) === i && + ((t = q), + (r = (function () { + var e, t, r; + if (((e = q), (t = []), (r = de()) !== i)) + for (; r !== i; ) t.push(r), (r = de()); + else t = i; + t !== i && ((z = e), (t = t)); + return (e = t); + })()) !== i && ((z = t), (r = r)), + (t = r))), + t + ); + } + function pe() { + var t, r, n; + return ( + (t = q), + (r = Ce()) !== i && ((z = t), (r = { type: 'shell', shell: r, quoted: !0 })), + (t = r) === i && + ((t = q), + (r = Ee()) !== i && + ((z = t), (n = r), (r = { type: 'variable', ...n, quoted: !0 })), + (t = r) === i && + ((t = q), + (r = (function () { + var t, r, n, o, s; + (t = q), + (r = []), + (n = q), + 92 === e.charCodeAt(q) ? ((o = '\\'), q++) : ((o = i), 0 === Z && ne(w)); + o !== i + ? (e.length > q ? ((s = e.charAt(q)), q++) : ((s = i), 0 === Z && ne(B)), + s !== i ? ((z = n), (n = o = s)) : ((q = n), (n = i))) + : ((q = n), (n = i)); + n === i && + (b.test(e.charAt(q)) + ? ((n = e.charAt(q)), q++) + : ((n = i), 0 === Z && ne(S))); + if (n !== i) + for (; n !== i; ) + r.push(n), + (n = q), + 92 === e.charCodeAt(q) + ? ((o = '\\'), q++) + : ((o = i), 0 === Z && ne(w)), + o !== i + ? (e.length > q + ? ((s = e.charAt(q)), q++) + : ((s = i), 0 === Z && ne(B)), + s !== i ? ((z = n), (n = o = s)) : ((q = n), (n = i))) + : ((q = n), (n = i)), + n === i && + (b.test(e.charAt(q)) + ? ((n = e.charAt(q)), q++) + : ((n = i), 0 === Z && ne(S))); + else r = i; + r !== i && ((z = t), (r = D(r))); + return (t = r); + })()) !== i && ((z = t), (r = y(r))), + (t = r))), + t + ); + } + function de() { + var t, n, o; + return ( + (t = q), + (n = Ce()) !== i && ((z = t), (n = { type: 'shell', shell: n, quoted: !1 })), + (t = n) === i && + ((t = q), + (n = Ee()) !== i && + ((z = t), (o = n), (n = { type: 'variable', ...o, quoted: !1 })), + (t = n) === i && + ((t = q), + (n = (function () { + var t, n; + (t = q), + (n = (function () { + var t, r, n, o, s; + (t = q), + (r = []), + (n = q), + (o = q), + Z++, + (s = we()), + Z--, + s === i ? (o = void 0) : ((q = o), (o = i)); + o !== i + ? (e.length > q + ? ((s = e.charAt(q)), q++) + : ((s = i), 0 === Z && ne(B)), + s !== i ? ((z = n), (n = o = s)) : ((q = n), (n = i))) + : ((q = n), (n = i)); + if (n !== i) + for (; n !== i; ) + r.push(n), + (n = q), + (o = q), + Z++, + (s = we()), + Z--, + s === i ? (o = void 0) : ((q = o), (o = i)), + o !== i + ? (e.length > q + ? ((s = e.charAt(q)), q++) + : ((s = i), 0 === Z && ne(B)), + s !== i ? ((z = n), (n = o = s)) : ((q = n), (n = i))) + : ((q = n), (n = i)); + else r = i; + r !== i && ((z = t), (r = D(r))); + return (t = r); + })()) !== i + ? ((z = q), + (o = n), + (r.isGlobPattern(o) ? void 0 : i) !== i + ? ((z = t), (t = n = n)) + : ((q = t), (t = i))) + : ((q = t), (t = i)); + var o; + return t; + })()) !== i && ((z = t), (n = { type: 'glob', pattern: n })), + (t = n) === i && + ((t = q), + (n = (function () { + var t, r, n, o, s; + (t = q), + (r = []), + (n = q), + 92 === e.charCodeAt(q) + ? ((o = '\\'), q++) + : ((o = i), 0 === Z && ne(w)); + o !== i + ? (e.length > q + ? ((s = e.charAt(q)), q++) + : ((s = i), 0 === Z && ne(B)), + s !== i ? ((z = n), (n = o = s)) : ((q = n), (n = i))) + : ((q = n), (n = i)); + n === i && + ((n = q), + (o = q), + Z++, + (s = ye()), + Z--, + s === i ? (o = void 0) : ((q = o), (o = i)), + o !== i + ? (e.length > q + ? ((s = e.charAt(q)), q++) + : ((s = i), 0 === Z && ne(B)), + s !== i ? ((z = n), (n = o = s)) : ((q = n), (n = i))) + : ((q = n), (n = i))); + if (n !== i) + for (; n !== i; ) + r.push(n), + (n = q), + 92 === e.charCodeAt(q) + ? ((o = '\\'), q++) + : ((o = i), 0 === Z && ne(w)), + o !== i + ? (e.length > q + ? ((s = e.charAt(q)), q++) + : ((s = i), 0 === Z && ne(B)), + s !== i ? ((z = n), (n = o = s)) : ((q = n), (n = i))) + : ((q = n), (n = i)), + n === i && + ((n = q), + (o = q), + Z++, + (s = ye()), + Z--, + s === i ? (o = void 0) : ((q = o), (o = i)), + o !== i + ? (e.length > q + ? ((s = e.charAt(q)), q++) + : ((s = i), 0 === Z && ne(B)), + s !== i ? ((z = n), (n = o = s)) : ((q = n), (n = i))) + : ((q = n), (n = i))); + else r = i; + r !== i && ((z = t), (r = D(r))); + return (t = r); + })()) !== i && ((z = t), (n = y(n))), + (t = n)))), + t + ); + } + function Ce() { + var t, r, n, o; + return ( + (t = q), + '$(' === e.substr(q, 2) ? ((r = '$('), (q += 2)) : ((r = i), 0 === Z && ne(k)), + r !== i && (n = se()) !== i + ? (41 === e.charCodeAt(q) ? ((o = ')'), q++) : ((o = i), 0 === Z && ne(f)), + o !== i ? ((z = t), (t = r = n)) : ((q = t), (t = i))) + : ((q = t), (t = i)), + t + ); + } + function Ee() { + var t, r, n, o, s, A; + return ( + (t = q), + '${' === e.substr(q, 2) ? ((r = '${'), (q += 2)) : ((r = i), 0 === Z && ne(x)), + r !== i && (n = me()) !== i + ? (':-' === e.substr(q, 2) + ? ((o = ':-'), (q += 2)) + : ((o = i), 0 === Z && ne(F)), + o !== i && + (s = (function () { + var e, t, r, n, o; + for (e = q, t = [], r = Be(); r !== i; ) t.push(r), (r = Be()); + if (t !== i) { + if (((r = []), (n = he()) !== i)) for (; n !== i; ) r.push(n), (n = he()); + else r = i; + if (r !== i) { + for (n = [], o = Be(); o !== i; ) n.push(o), (o = Be()); + n !== i ? ((z = e), (e = t = r)) : ((q = e), (e = i)); + } else (q = e), (e = i); + } else (q = e), (e = i); + return e; + })()) !== i + ? (125 === e.charCodeAt(q) ? ((A = '}'), q++) : ((A = i), 0 === Z && ne(M)), + A !== i + ? ((z = t), (t = r = { name: n, defaultValue: s })) + : ((q = t), (t = i))) + : ((q = t), (t = i))) + : ((q = t), (t = i)), + t === i && + ((t = q), + '${' === e.substr(q, 2) ? ((r = '${'), (q += 2)) : ((r = i), 0 === Z && ne(x)), + r !== i && (n = me()) !== i + ? (':-}' === e.substr(q, 3) + ? ((o = ':-}'), (q += 3)) + : ((o = i), 0 === Z && ne(N)), + o !== i + ? ((z = t), + (t = r = (function (e) { + return { name: e, defaultValue: [] }; + })(n))) + : ((q = t), (t = i))) + : ((q = t), (t = i)), + t === i && + ((t = q), + '${' === e.substr(q, 2) + ? ((r = '${'), (q += 2)) + : ((r = i), 0 === Z && ne(x)), + r !== i && (n = me()) !== i + ? (125 === e.charCodeAt(q) ? ((o = '}'), q++) : ((o = i), 0 === Z && ne(M)), + o !== i ? ((z = t), (t = r = R(n))) : ((q = t), (t = i))) + : ((q = t), (t = i)), + t === i && + ((t = q), + 36 === e.charCodeAt(q) ? ((r = '$'), q++) : ((r = i), 0 === Z && ne(K)), + r !== i && (n = me()) !== i + ? ((z = t), (t = r = R(n))) + : ((q = t), (t = i))))), + t + ); + } + function Ie() { + var t, r, n; + if ( + ((t = q), + (r = []), + L.test(e.charAt(q)) ? ((n = e.charAt(q)), q++) : ((n = i), 0 === Z && ne(T)), + n !== i) + ) + for (; n !== i; ) + r.push(n), + L.test(e.charAt(q)) ? ((n = e.charAt(q)), q++) : ((n = i), 0 === Z && ne(T)); + else r = i; + return r !== i && ((z = t), (r = P())), (t = r); + } + function me() { + var t, r, n; + if ( + ((t = q), + (r = []), + U.test(e.charAt(q)) ? ((n = e.charAt(q)), q++) : ((n = i), 0 === Z && ne(_)), + n !== i) + ) + for (; n !== i; ) + r.push(n), + U.test(e.charAt(q)) ? ((n = e.charAt(q)), q++) : ((n = i), 0 === Z && ne(_)); + else r = i; + return r !== i && ((z = t), (r = P())), (t = r); + } + function ye() { + var t; + return ( + O.test(e.charAt(q)) ? ((t = e.charAt(q)), q++) : ((t = i), 0 === Z && ne(j)), t + ); + } + function we() { + var t; + return ( + Y.test(e.charAt(q)) ? ((t = e.charAt(q)), q++) : ((t = i), 0 === Z && ne(G)), t + ); + } + function Be() { + var t, r; + if ( + ((t = []), + J.test(e.charAt(q)) ? ((r = e.charAt(q)), q++) : ((r = i), 0 === Z && ne(H)), + r !== i) + ) + for (; r !== i; ) + t.push(r), + J.test(e.charAt(q)) ? ((r = e.charAt(q)), q++) : ((r = i), 0 === Z && ne(H)); + else t = i; + return t; + } + if ((n = s()) !== i && q === e.length) return n; + throw ( + (n !== i && q < e.length && ne({ type: 'end' }), + ie(X, V < e.length ? e.charAt(V) : null, V < e.length ? re(V, V + 1) : re(V, V))) + ); + }, + }); + }, + 85443: (e) => { + 'use strict'; + function t(e, r, n, i) { + (this.message = e), + (this.expected = r), + (this.found = n), + (this.location = i), + (this.name = 'SyntaxError'), + 'function' == typeof Error.captureStackTrace && Error.captureStackTrace(this, t); + } + !(function (e, t) { + function r() { + this.constructor = e; + } + (r.prototype = t.prototype), (e.prototype = new r()); + })(t, Error), + (t.buildMessage = function (e, t) { + var r = { + literal: function (e) { + return `"${i(e.text)}"`; + }, + class: function (e) { + var t, + r = ''; + for (t = 0; t < e.parts.length; t++) + r += + e.parts[t] instanceof Array + ? `${o(e.parts[t][0])}-${o(e.parts[t][1])}` + : o(e.parts[t]); + return `[${e.inverted ? '^' : ''}${r}]`; + }, + any: function (e) { + return 'any character'; + }, + end: function (e) { + return 'end of input'; + }, + other: function (e) { + return e.description; + }, + }; + function n(e) { + return e.charCodeAt(0).toString(16).toUpperCase(); + } + function i(e) { + return e + .replace(/\\/g, '\\\\') + .replace(/"/g, '\\"') + .replace(/\0/g, '\\0') + .replace(/\t/g, '\\t') + .replace(/\n/g, '\\n') + .replace(/\r/g, '\\r') + .replace(/[\x00-\x0F]/g, function (e) { + return '\\x0' + n(e); + }) + .replace(/[\x10-\x1F\x7F-\x9F]/g, function (e) { + return '\\x' + n(e); + }); + } + function o(e) { + return e + .replace(/\\/g, '\\\\') + .replace(/\]/g, '\\]') + .replace(/\^/g, '\\^') + .replace(/-/g, '\\-') + .replace(/\0/g, '\\0') + .replace(/\t/g, '\\t') + .replace(/\n/g, '\\n') + .replace(/\r/g, '\\r') + .replace(/[\x00-\x0F]/g, function (e) { + return '\\x0' + n(e); + }) + .replace(/[\x10-\x1F\x7F-\x9F]/g, function (e) { + return '\\x' + n(e); + }); + } + return `Expected ${(function (e) { + var t, + n, + i, + o = new Array(e.length); + for (t = 0; t < e.length; t++) o[t] = ((i = e[t]), r[i.type](i)); + if ((o.sort(), o.length > 0)) { + for (t = 1, n = 1; t < o.length; t++) o[t - 1] !== o[t] && ((o[n] = o[t]), n++); + o.length = n; + } + switch (o.length) { + case 1: + return o[0]; + case 2: + return `${o[0]} or ${o[1]}`; + default: + return `${o.slice(0, -1).join(', ')}, or ${o[o.length - 1]}`; + } + })(e)} but ${(function (e) { + return e ? `"${i(e)}"` : 'end of input'; + })(t)} found.`; + }), + (e.exports = { + SyntaxError: t, + parse: function (e, r) { + r = void 0 !== r ? r : {}; + var n, + i = {}, + o = { Start: le }, + s = le, + A = ie('-', !1), + a = ie('#', !1), + c = { type: 'any' }, + u = ie(':', !1), + l = function (e, t) { + return { [e]: t }; + }, + h = ie(',', !1), + g = function (e, t) { + return t; + }, + f = se('correct indentation'), + p = ie(' ', !1), + d = se('pseudostring'), + C = /^[^\r\n\t ?:,\][{}#&*!|>'"%@`\-]/, + E = oe( + [ + '\r', + '\n', + '\t', + ' ', + '?', + ':', + ',', + ']', + '[', + '{', + '}', + '#', + '&', + '*', + '!', + '|', + '>', + "'", + '"', + '%', + '@', + '`', + '-', + ], + !0, + !1 + ), + I = /^[^\r\n\t ,\][{}:#"']/, + m = oe( + ['\r', '\n', '\t', ' ', ',', ']', '[', '{', '}', ':', '#', '"', "'"], + !0, + !1 + ), + y = function () { + return ne().replace(/^ *| *$/g, ''); + }, + w = ie('--', !1), + B = /^[a-zA-Z\/0-9]/, + Q = oe([['a', 'z'], ['A', 'Z'], '/', ['0', '9']], !1, !1), + v = /^[^\r\n\t :,]/, + D = oe(['\r', '\n', '\t', ' ', ':', ','], !0, !1), + b = ie('null', !1), + S = ie('true', !1), + k = ie('false', !1), + x = se('string'), + F = ie('"', !1), + M = /^[^"\\\0-\x1F\x7F]/, + N = oe(['"', '\\', ['\0', ''], ''], !0, !1), + R = ie('\\"', !1), + K = ie('\\\\', !1), + L = ie('\\/', !1), + T = ie('\\b', !1), + P = ie('\\f', !1), + U = ie('\\n', !1), + _ = ie('\\r', !1), + O = ie('\\t', !1), + j = ie('\\u', !1), + Y = /^[0-9a-fA-F]/, + G = oe( + [ + ['0', '9'], + ['a', 'f'], + ['A', 'F'], + ], + !1, + !1 + ), + J = se('blank space'), + H = /^[ \t]/, + q = oe([' ', '\t'], !1, !1), + z = (se('white space'), oe([' ', '\t', '\n', '\r'], !1, !1), ie('\r\n', !1)), + W = ie('\n', !1), + V = ie('\r', !1), + X = 0, + Z = 0, + $ = [{ line: 1, column: 1 }], + ee = 0, + te = [], + re = 0; + if ('startRule' in r) { + if (!(r.startRule in o)) + throw new Error(`Can't start parsing from rule "${r.startRule}".`); + s = o[r.startRule]; + } + function ne() { + return e.substring(Z, X); + } + function ie(e, t) { + return { type: 'literal', text: e, ignoreCase: t }; + } + function oe(e, t, r) { + return { type: 'class', parts: e, inverted: t, ignoreCase: r }; + } + function se(e) { + return { type: 'other', description: e }; + } + function Ae(t) { + var r, + n = $[t]; + if (n) return n; + for (r = t - 1; !$[r]; ) r--; + for (n = { line: (n = $[r]).line, column: n.column }; r < t; ) + 10 === e.charCodeAt(r) ? (n.line++, (n.column = 1)) : n.column++, r++; + return ($[t] = n), n; + } + function ae(e, t) { + var r = Ae(e), + n = Ae(t); + return { + start: { offset: e, line: r.line, column: r.column }, + end: { offset: t, line: n.line, column: n.column }, + }; + } + function ce(e) { + X < ee || (X > ee && ((ee = X), (te = [])), te.push(e)); + } + function ue(e, r, n) { + return new t(t.buildMessage(e, r), e, r, n); + } + function le() { + return ge(); + } + function he() { + var t, r, n; + return ( + (t = X), + de() !== i + ? (45 === e.charCodeAt(X) ? ((r = '-'), X++) : ((r = i), 0 === re && ce(A)), + r !== i && De() !== i && (n = pe()) !== i + ? ((Z = t), (t = n)) + : ((X = t), (t = i))) + : ((X = t), (t = i)), + t + ); + } + function ge() { + var e, t, r, n; + for (e = X, t = [], r = fe(); r !== i; ) t.push(r), (r = fe()); + return t !== i && ((Z = e), (n = t), (t = Object.assign({}, ...n))), (e = t); + } + function fe() { + var t, r, n, o, s, A, f, p, d, C, E, I; + if (((t = X), (r = De()) === i && (r = null), r !== i)) { + if ( + ((n = X), + 35 === e.charCodeAt(X) ? ((o = '#'), X++) : ((o = i), 0 === re && ce(a)), + o !== i) + ) { + if ( + ((s = []), + (A = X), + (f = X), + re++, + (p = Se()), + re--, + p === i ? (f = void 0) : ((X = f), (f = i)), + f !== i + ? (e.length > X ? ((p = e.charAt(X)), X++) : ((p = i), 0 === re && ce(c)), + p !== i ? (A = f = [f, p]) : ((X = A), (A = i))) + : ((X = A), (A = i)), + A !== i) + ) + for (; A !== i; ) + s.push(A), + (A = X), + (f = X), + re++, + (p = Se()), + re--, + p === i ? (f = void 0) : ((X = f), (f = i)), + f !== i + ? (e.length > X + ? ((p = e.charAt(X)), X++) + : ((p = i), 0 === re && ce(c)), + p !== i ? (A = f = [f, p]) : ((X = A), (A = i))) + : ((X = A), (A = i)); + else s = i; + s !== i ? (n = o = [o, s]) : ((X = n), (n = i)); + } else (X = n), (n = i); + if ((n === i && (n = null), n !== i)) { + if (((o = []), (s = be()) !== i)) for (; s !== i; ) o.push(s), (s = be()); + else o = i; + o !== i ? ((Z = t), (t = r = {})) : ((X = t), (t = i)); + } else (X = t), (t = i); + } else (X = t), (t = i); + if ( + t === i && + ((t = X), + (r = de()) !== i && + (n = (function () { + var e; + (e = Be()) === i && (e = me()); + return e; + })()) !== i + ? ((o = De()) === i && (o = null), + o !== i + ? (58 === e.charCodeAt(X) ? ((s = ':'), X++) : ((s = i), 0 === re && ce(u)), + s !== i + ? ((A = De()) === i && (A = null), + A !== i && (f = pe()) !== i + ? ((Z = t), (t = r = l(n, f))) + : ((X = t), (t = i))) + : ((X = t), (t = i))) + : ((X = t), (t = i))) + : ((X = t), (t = i)), + t === i && + ((t = X), + (r = de()) !== i && (n = Ie()) !== i + ? ((o = De()) === i && (o = null), + o !== i + ? (58 === e.charCodeAt(X) + ? ((s = ':'), X++) + : ((s = i), 0 === re && ce(u)), + s !== i + ? ((A = De()) === i && (A = null), + A !== i && (f = pe()) !== i + ? ((Z = t), (t = r = l(n, f))) + : ((X = t), (t = i))) + : ((X = t), (t = i))) + : ((X = t), (t = i))) + : ((X = t), (t = i)), + t === i)) + ) { + if (((t = X), (r = de()) !== i)) + if ((n = Ie()) !== i) + if ((o = De()) !== i) + if ( + (s = (function () { + var e; + (e = we()) === i && (e = Be()) === i && (e = ye()); + return e; + })()) !== i + ) { + if (((A = []), (f = be()) !== i)) for (; f !== i; ) A.push(f), (f = be()); + else A = i; + A !== i ? ((Z = t), (t = r = l(n, s))) : ((X = t), (t = i)); + } else (X = t), (t = i); + else (X = t), (t = i); + else (X = t), (t = i); + else (X = t), (t = i); + if (t === i) + if (((t = X), (r = de()) !== i)) + if ((n = Ie()) !== i) { + if ( + ((o = []), + (s = X), + (A = De()) === i && (A = null), + A !== i + ? (44 === e.charCodeAt(X) + ? ((f = ','), X++) + : ((f = i), 0 === re && ce(h)), + f !== i + ? ((p = De()) === i && (p = null), + p !== i && (d = Ie()) !== i + ? ((Z = s), (s = A = g(0, d))) + : ((X = s), (s = i))) + : ((X = s), (s = i))) + : ((X = s), (s = i)), + s !== i) + ) + for (; s !== i; ) + o.push(s), + (s = X), + (A = De()) === i && (A = null), + A !== i + ? (44 === e.charCodeAt(X) + ? ((f = ','), X++) + : ((f = i), 0 === re && ce(h)), + f !== i + ? ((p = De()) === i && (p = null), + p !== i && (d = Ie()) !== i + ? ((Z = s), (s = A = g(0, d))) + : ((X = s), (s = i))) + : ((X = s), (s = i))) + : ((X = s), (s = i)); + else o = i; + o !== i + ? ((s = De()) === i && (s = null), + s !== i + ? (58 === e.charCodeAt(X) + ? ((A = ':'), X++) + : ((A = i), 0 === re && ce(u)), + A !== i + ? ((f = De()) === i && (f = null), + f !== i && (p = pe()) !== i + ? ((Z = t), + (C = n), + (E = o), + (I = p), + (t = r = Object.assign( + {}, + ...[C].concat(E).map((e) => ({ [e]: I })) + ))) + : ((X = t), (t = i))) + : ((X = t), (t = i))) + : ((X = t), (t = i))) + : ((X = t), (t = i)); + } else (X = t), (t = i); + else (X = t), (t = i); + } + return t; + } + function pe() { + var t, r, n, o, s, a, c; + if ( + ((t = X), + (r = X), + re++, + (n = X), + (o = Se()) !== i && + (s = (function () { + var t, r, n; + (t = X), + (r = []), + 32 === e.charCodeAt(X) ? ((n = ' '), X++) : ((n = i), 0 === re && ce(p)); + for (; n !== i; ) + r.push(n), + 32 === e.charCodeAt(X) ? ((n = ' '), X++) : ((n = i), 0 === re && ce(p)); + r !== i + ? ((Z = X), + (n = (n = r.length === (xe + 1) * ke) ? void 0 : i) !== i + ? (t = r = [r, n]) + : ((X = t), (t = i))) + : ((X = t), (t = i)); + return t; + })()) !== i + ? (45 === e.charCodeAt(X) ? ((a = '-'), X++) : ((a = i), 0 === re && ce(A)), + a !== i && (c = De()) !== i ? (n = o = [o, s, a, c]) : ((X = n), (n = i))) + : ((X = n), (n = i)), + re--, + n !== i ? ((X = r), (r = void 0)) : (r = i), + r !== i && + (n = be()) !== i && + (o = Ce()) !== i && + (s = (function () { + var e, t, r, n; + for (e = X, t = [], r = he(); r !== i; ) t.push(r), (r = he()); + return t !== i && ((Z = e), (n = t), (t = [].concat(...n))), (e = t); + })()) !== i && + (a = Ee()) !== i + ? ((Z = t), (t = r = s)) + : ((X = t), (t = i)), + t === i && + ((t = X), + (r = Se()) !== i && (n = Ce()) !== i && (o = ge()) !== i && (s = Ee()) !== i + ? ((Z = t), (t = r = o)) + : ((X = t), (t = i)), + t === i)) + ) + if ( + ((t = X), + (r = (function () { + var t; + (t = we()) === i && + (t = (function () { + var t, r; + (t = X), + 'true' === e.substr(X, 4) + ? ((r = 'true'), (X += 4)) + : ((r = i), 0 === re && ce(S)); + r !== i && ((Z = t), (r = !0)); + (t = r) === i && + ((t = X), + 'false' === e.substr(X, 5) + ? ((r = 'false'), (X += 5)) + : ((r = i), 0 === re && ce(k)), + r !== i && ((Z = t), (r = !1)), + (t = r)); + return t; + })()) === i && + (t = Be()) === i && + (t = me()); + return t; + })()) !== i) + ) { + if (((n = []), (o = be()) !== i)) for (; o !== i; ) n.push(o), (o = be()); + else n = i; + n !== i ? ((Z = t), (t = r = r)) : ((X = t), (t = i)); + } else (X = t), (t = i); + return t; + } + function de() { + var t, r, n; + for ( + re++, + t = X, + r = [], + 32 === e.charCodeAt(X) ? ((n = ' '), X++) : ((n = i), 0 === re && ce(p)); + n !== i; + + ) + r.push(n), + 32 === e.charCodeAt(X) ? ((n = ' '), X++) : ((n = i), 0 === re && ce(p)); + return ( + r !== i + ? ((Z = X), + (n = (n = r.length === xe * ke) ? void 0 : i) !== i + ? (t = r = [r, n]) + : ((X = t), (t = i))) + : ((X = t), (t = i)), + re--, + t === i && ((r = i), 0 === re && ce(f)), + t + ); + } + function Ce() { + return (Z = X), xe++, !0 ? void 0 : i; + } + function Ee() { + return (Z = X), xe--, !0 ? void 0 : i; + } + function Ie() { + var e, t, r; + if ((e = Be()) === i) { + if (((e = X), (t = []), (r = ye()) !== i)) + for (; r !== i; ) t.push(r), (r = ye()); + else t = i; + t !== i && ((Z = e), (t = ne())), (e = t); + } + return e; + } + function me() { + var t, r, n, o, s, A; + if ( + (re++, + (t = X), + C.test(e.charAt(X)) ? ((r = e.charAt(X)), X++) : ((r = i), 0 === re && ce(E)), + r !== i) + ) { + for ( + n = [], + o = X, + (s = De()) === i && (s = null), + s !== i + ? (I.test(e.charAt(X)) + ? ((A = e.charAt(X)), X++) + : ((A = i), 0 === re && ce(m)), + A !== i ? (o = s = [s, A]) : ((X = o), (o = i))) + : ((X = o), (o = i)); + o !== i; + + ) + n.push(o), + (o = X), + (s = De()) === i && (s = null), + s !== i + ? (I.test(e.charAt(X)) + ? ((A = e.charAt(X)), X++) + : ((A = i), 0 === re && ce(m)), + A !== i ? (o = s = [s, A]) : ((X = o), (o = i))) + : ((X = o), (o = i)); + n !== i ? ((Z = t), (t = r = y())) : ((X = t), (t = i)); + } else (X = t), (t = i); + return re--, t === i && ((r = i), 0 === re && ce(d)), t; + } + function ye() { + var t, r, n, o, s; + if ( + ((t = X), + '--' === e.substr(X, 2) ? ((r = '--'), (X += 2)) : ((r = i), 0 === re && ce(w)), + r === i && (r = null), + r !== i) + ) + if ( + (B.test(e.charAt(X)) ? ((n = e.charAt(X)), X++) : ((n = i), 0 === re && ce(Q)), + n !== i) + ) { + for ( + o = [], + v.test(e.charAt(X)) + ? ((s = e.charAt(X)), X++) + : ((s = i), 0 === re && ce(D)); + s !== i; + + ) + o.push(s), + v.test(e.charAt(X)) + ? ((s = e.charAt(X)), X++) + : ((s = i), 0 === re && ce(D)); + o !== i ? ((Z = t), (t = r = y())) : ((X = t), (t = i)); + } else (X = t), (t = i); + else (X = t), (t = i); + return t; + } + function we() { + var t, r; + return ( + (t = X), + 'null' === e.substr(X, 4) + ? ((r = 'null'), (X += 4)) + : ((r = i), 0 === re && ce(b)), + r !== i && ((Z = t), (r = null)), + (t = r) + ); + } + function Be() { + var t, r, n, o; + return ( + re++, + (t = X), + 34 === e.charCodeAt(X) ? ((r = '"'), X++) : ((r = i), 0 === re && ce(F)), + r !== i + ? (34 === e.charCodeAt(X) ? ((n = '"'), X++) : ((n = i), 0 === re && ce(F)), + n !== i ? ((Z = t), (t = r = '')) : ((X = t), (t = i))) + : ((X = t), (t = i)), + t === i && + ((t = X), + 34 === e.charCodeAt(X) ? ((r = '"'), X++) : ((r = i), 0 === re && ce(F)), + r !== i && + (n = (function () { + var e, t, r; + if (((e = X), (t = []), (r = Qe()) !== i)) + for (; r !== i; ) t.push(r), (r = Qe()); + else t = i; + t !== i && ((Z = e), (t = t.join(''))); + return (e = t); + })()) !== i + ? (34 === e.charCodeAt(X) ? ((o = '"'), X++) : ((o = i), 0 === re && ce(F)), + o !== i ? ((Z = t), (t = r = n)) : ((X = t), (t = i))) + : ((X = t), (t = i))), + re--, + t === i && ((r = i), 0 === re && ce(x)), + t + ); + } + function Qe() { + var t, r, n, o, s, A, a, c, u, l; + return ( + M.test(e.charAt(X)) ? ((t = e.charAt(X)), X++) : ((t = i), 0 === re && ce(N)), + t === i && + ((t = X), + '\\"' === e.substr(X, 2) + ? ((r = '\\"'), (X += 2)) + : ((r = i), 0 === re && ce(R)), + r !== i && ((Z = t), (r = '"')), + (t = r) === i && + ((t = X), + '\\\\' === e.substr(X, 2) + ? ((r = '\\\\'), (X += 2)) + : ((r = i), 0 === re && ce(K)), + r !== i && ((Z = t), (r = '\\')), + (t = r) === i && + ((t = X), + '\\/' === e.substr(X, 2) + ? ((r = '\\/'), (X += 2)) + : ((r = i), 0 === re && ce(L)), + r !== i && ((Z = t), (r = '/')), + (t = r) === i && + ((t = X), + '\\b' === e.substr(X, 2) + ? ((r = '\\b'), (X += 2)) + : ((r = i), 0 === re && ce(T)), + r !== i && ((Z = t), (r = '\b')), + (t = r) === i && + ((t = X), + '\\f' === e.substr(X, 2) + ? ((r = '\\f'), (X += 2)) + : ((r = i), 0 === re && ce(P)), + r !== i && ((Z = t), (r = '\f')), + (t = r) === i && + ((t = X), + '\\n' === e.substr(X, 2) + ? ((r = '\\n'), (X += 2)) + : ((r = i), 0 === re && ce(U)), + r !== i && ((Z = t), (r = '\n')), + (t = r) === i && + ((t = X), + '\\r' === e.substr(X, 2) + ? ((r = '\\r'), (X += 2)) + : ((r = i), 0 === re && ce(_)), + r !== i && ((Z = t), (r = '\r')), + (t = r) === i && + ((t = X), + '\\t' === e.substr(X, 2) + ? ((r = '\\t'), (X += 2)) + : ((r = i), 0 === re && ce(O)), + r !== i && ((Z = t), (r = '\t')), + (t = r) === i && + ((t = X), + '\\u' === e.substr(X, 2) + ? ((r = '\\u'), (X += 2)) + : ((r = i), 0 === re && ce(j)), + r !== i && + (n = ve()) !== i && + (o = ve()) !== i && + (s = ve()) !== i && + (A = ve()) !== i + ? ((Z = t), + (a = n), + (c = o), + (u = s), + (l = A), + (t = r = String.fromCharCode( + parseInt(`0x${a}${c}${u}${l}`) + ))) + : ((X = t), (t = i))))))))))), + t + ); + } + function ve() { + var t; + return ( + Y.test(e.charAt(X)) ? ((t = e.charAt(X)), X++) : ((t = i), 0 === re && ce(G)), t + ); + } + function De() { + var t, r; + if ( + (re++, + (t = []), + H.test(e.charAt(X)) ? ((r = e.charAt(X)), X++) : ((r = i), 0 === re && ce(q)), + r !== i) + ) + for (; r !== i; ) + t.push(r), + H.test(e.charAt(X)) ? ((r = e.charAt(X)), X++) : ((r = i), 0 === re && ce(q)); + else t = i; + return re--, t === i && ((r = i), 0 === re && ce(J)), t; + } + function be() { + var e, t, r, n, o, s; + if (((e = X), (t = Se()) !== i)) { + for ( + r = [], + n = X, + (o = De()) === i && (o = null), + o !== i && (s = Se()) !== i ? (n = o = [o, s]) : ((X = n), (n = i)); + n !== i; + + ) + r.push(n), + (n = X), + (o = De()) === i && (o = null), + o !== i && (s = Se()) !== i ? (n = o = [o, s]) : ((X = n), (n = i)); + r !== i ? (e = t = [t, r]) : ((X = e), (e = i)); + } else (X = e), (e = i); + return e; + } + function Se() { + var t; + return ( + '\r\n' === e.substr(X, 2) + ? ((t = '\r\n'), (X += 2)) + : ((t = i), 0 === re && ce(z)), + t === i && + (10 === e.charCodeAt(X) ? ((t = '\n'), X++) : ((t = i), 0 === re && ce(W)), + t === i && + (13 === e.charCodeAt(X) ? ((t = '\r'), X++) : ((t = i), 0 === re && ce(V)))), + t + ); + } + const ke = 2; + let xe = 0; + if ((n = s()) !== i && X === e.length) return n; + throw ( + (n !== i && X < e.length && ce({ type: 'end' }), + ue( + te, + ee < e.length ? e.charAt(ee) : null, + ee < e.length ? ae(ee, ee + 1) : ae(ee, ee) + )) + ); + }, + }); + }, + 20103: (e, t, r) => { + e.exports = r(78761) + .brotliDecompressSync( + Buffer.from( + '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', + 'base64' + ) + ) + .toString(); + }, + 75418: (e) => { + 'use strict'; + e.exports = JSON.parse('{"u2":"@yarnpkg/shell"}'); + }, + 42357: (e) => { + 'use strict'; + e.exports = require('assert'); + }, + 64293: (e) => { + 'use strict'; + e.exports = require('buffer'); + }, + 63129: (e) => { + 'use strict'; + e.exports = require('child_process'); + }, + 27619: (e) => { + 'use strict'; + e.exports = require('constants'); + }, + 76417: (e) => { + 'use strict'; + e.exports = require('crypto'); + }, + 40881: (e) => { + 'use strict'; + e.exports = require('dns'); + }, + 28614: (e) => { + 'use strict'; + e.exports = require('events'); + }, + 35747: (e) => { + 'use strict'; + e.exports = require('fs'); + }, + 98605: (e) => { + 'use strict'; + e.exports = require('http'); + }, + 97565: (e) => { + 'use strict'; + e.exports = require('http2'); + }, + 57211: (e) => { + 'use strict'; + e.exports = require('https'); + }, + 32282: (e) => { + 'use strict'; + e.exports = require('module'); + }, + 11631: (e) => { + 'use strict'; + e.exports = require('net'); + }, + 12087: (e) => { + 'use strict'; + e.exports = require('os'); + }, + 85622: (e) => { + 'use strict'; + e.exports = require('path'); + }, + 71191: (e) => { + 'use strict'; + e.exports = require('querystring'); + }, + 51058: (e) => { + 'use strict'; + e.exports = require('readline'); + }, + 92413: (e) => { + 'use strict'; + e.exports = require('stream'); + }, + 24304: (e) => { + 'use strict'; + e.exports = require('string_decoder'); + }, + 4016: (e) => { + 'use strict'; + e.exports = require('tls'); + }, + 33867: (e) => { + 'use strict'; + e.exports = require('tty'); + }, + 78835: (e) => { + 'use strict'; + e.exports = require('url'); + }, + 31669: (e) => { + 'use strict'; + e.exports = require('util'); + }, + 68987: (e) => { + 'use strict'; + e.exports = require('v8'); + }, + 92184: (e) => { + 'use strict'; + e.exports = require('vm'); + }, + 78761: (e) => { + 'use strict'; + e.exports = require('zlib'); + }, + }, + __webpack_module_cache__ = {}; + function __webpack_require__(e) { + if (__webpack_module_cache__[e]) return __webpack_module_cache__[e].exports; + var t = (__webpack_module_cache__[e] = { id: e, loaded: !1, exports: {} }); + return ( + __webpack_modules__[e].call(t.exports, t, t.exports, __webpack_require__), + (t.loaded = !0), + t.exports + ); + } + return ( + (__webpack_require__.c = __webpack_module_cache__), + (__webpack_require__.n = (e) => { + var t = e && e.__esModule ? () => e.default : () => e; + return __webpack_require__.d(t, { a: t }), t; + }), + (__webpack_require__.d = (e, t) => { + for (var r in t) + __webpack_require__.o(t, r) && + !__webpack_require__.o(e, r) && + Object.defineProperty(e, r, { enumerable: !0, get: t[r] }); + }), + (__webpack_require__.hmd = (e) => ( + (e = Object.create(e)).children || (e.children = []), + Object.defineProperty(e, 'exports', { + enumerable: !0, + set: () => { + throw new Error( + 'ES Modules may not assign module.exports or exports.*, Use ESM export syntax, instead: ' + + e.id + ); + }, + }), + e + )), + (__webpack_require__.o = (e, t) => Object.prototype.hasOwnProperty.call(e, t)), + (__webpack_require__.r = (e) => { + 'undefined' != typeof Symbol && + Symbol.toStringTag && + Object.defineProperty(e, Symbol.toStringTag, { value: 'Module' }), + Object.defineProperty(e, '__esModule', { value: !0 }); + }), + (__webpack_require__.nmd = (e) => ((e.paths = []), e.children || (e.children = []), e)), + __webpack_require__(28638) + ); +})(); diff --git a/.yarnrc.yml b/.yarnrc.yml new file mode 100644 index 000000000..1cd7346b1 --- /dev/null +++ b/.yarnrc.yml @@ -0,0 +1,10 @@ +plugins: + - path: .yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs + spec: "@yarnpkg/plugin-interactive-tools" + - path: .yarn/plugins/@yarnpkg/plugin-workspace-tools.cjs + spec: "@yarnpkg/plugin-workspace-tools" + +yarnPath: .yarn/releases/yarn-berry.js +# We use the node linker because some modules are not compatible with Plug'n'Play +# - graphql-codegen is failing +nodeLinker: node-modules diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index a55c15338..e544028bc 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -64,7 +64,7 @@ Anyone can file an expense. If the expense makes sense for the development of th ### Contributors Thank you to all the people who have already contributed to accounts-js! - + ### Backers diff --git a/examples/react-graphql-typescript/package.json b/examples/react-graphql-typescript/package.json index 4b3f0215e..6ddfe8551 100644 --- a/examples/react-graphql-typescript/package.json +++ b/examples/react-graphql-typescript/package.json @@ -28,7 +28,7 @@ "@accounts/client": "^0.29.0", "@accounts/client-password": "^0.29.0", "@accounts/graphql-client": "^0.29.0", - "@apollo/client": "3.0.2", + "@apollo/client": "3.1.3", "@material-ui/core": "4.11.0", "@material-ui/styles": "4.10.0", "graphql": "14.6.0", diff --git a/netlify.toml b/netlify.toml index 4bee6b40a..bc78a2b30 100644 --- a/netlify.toml +++ b/netlify.toml @@ -1,9 +1,9 @@ [build] base = "." publish = "website/build" - command = "yarn setup && yarn compile && cd website && yarn && yarn generate-api-docs && yarn build" + command = "yarn setup && yarn compile && cd website && yarn generate-api-docs && yarn build" [build.environment] NODE_VERSION = "12" YARN_VERSION = "1.22.4" - YARN_FLAGS = "--pure-lockfile" + YARN_FLAGS = "--immutable" diff --git a/package.json b/package.json index 690c50a6f..2af230151 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "private": true, "version": "0.22.0", "scripts": { - "setup": "lerna bootstrap; yarn run link", + "setup": "yarn run link", "start": "lerna exec -- yarn start", "link": "lerna exec -- yarn link", "unlink": "lerna exec -- yarn unlink", @@ -25,7 +25,8 @@ "workspaces": { "packages": [ "packages/*", - "examples/*" + "examples/*", + "website" ] }, "husky": { diff --git a/packages/apollo-link-accounts/package.json b/packages/apollo-link-accounts/package.json index 9e8454a95..34e610998 100644 --- a/packages/apollo-link-accounts/package.json +++ b/packages/apollo-link-accounts/package.json @@ -31,7 +31,9 @@ }, "devDependencies": { "@accounts/client": "^0.29.0", - "@apollo/client": "3.0.2", + "@apollo/client": "3.1.3", + "@types/node": "14.0.14", + "graphql": "14.6.0", "rimraf": "3.0.2" } } diff --git a/packages/database-typeorm/package.json b/packages/database-typeorm/package.json index c6c3deb4c..de2bfeca4 100644 --- a/packages/database-typeorm/package.json +++ b/packages/database-typeorm/package.json @@ -28,6 +28,7 @@ "devDependencies": { "@accounts/database-tests": "^0.29.0", "@types/jest": "26.0.9", + "@types/lodash": "4.14.157", "@types/node": "14.0.14", "jest": "26.2.2", "pg": "8.1.0" diff --git a/packages/e2e/package.json b/packages/e2e/package.json index 50caf12d1..cf67662e9 100644 --- a/packages/e2e/package.json +++ b/packages/e2e/package.json @@ -47,7 +47,7 @@ "@accounts/server": "^0.29.0", "@accounts/typeorm": "^0.29.0", "@accounts/types": "^0.29.0", - "@apollo/client": "3.0.2", + "@apollo/client": "3.1.3", "@graphql-modules/core": "0.7.17", "apollo-server": "2.14.4", "body-parser": "1.19.0", diff --git a/packages/graphql-api/package.json b/packages/graphql-api/package.json index 2f242fab1..566b80182 100644 --- a/packages/graphql-api/package.json +++ b/packages/graphql-api/package.json @@ -49,13 +49,13 @@ "@accounts/password": "^0.29.0", "@accounts/server": "^0.29.0", "@accounts/types": "^0.29.0", - "@graphql-codegen/add": "1.17.4", - "@graphql-codegen/cli": "1.17.4", - "@graphql-codegen/introspection": "1.17.4", - "@graphql-codegen/typescript": "1.17.4", - "@graphql-codegen/typescript-operations": "1.17.4", - "@graphql-codegen/typescript-resolvers": "1.17.4", - "@graphql-codegen/typescript-type-graphql": "1.17.4", + "@graphql-codegen/add": "1.17.7", + "@graphql-codegen/cli": "1.17.7", + "@graphql-codegen/introspection": "1.17.7", + "@graphql-codegen/typescript": "1.17.7", + "@graphql-codegen/typescript-operations": "1.17.7", + "@graphql-codegen/typescript-resolvers": "1.17.7", + "@graphql-codegen/typescript-type-graphql": "1.17.7", "@graphql-modules/core": "0.7.17", "@types/jest": "26.0.9", "@types/request-ip": "0.0.35", diff --git a/packages/graphql-client/package.json b/packages/graphql-client/package.json index 402b81721..10b829aff 100644 --- a/packages/graphql-client/package.json +++ b/packages/graphql-client/package.json @@ -39,11 +39,11 @@ "tslib": "2.0.0" }, "devDependencies": { - "@graphql-codegen/add": "1.17.4", - "@graphql-codegen/cli": "1.17.4", - "@graphql-codegen/typed-document-node": "1.17.4", - "@graphql-codegen/typescript": "1.17.4", - "@graphql-codegen/typescript-operations": "1.17.4", + "@graphql-codegen/add": "1.17.7", + "@graphql-codegen/cli": "1.17.7", + "@graphql-codegen/typed-document-node": "1.17.8", + "@graphql-codegen/typescript": "1.17.7", + "@graphql-codegen/typescript-operations": "1.17.7", "@types/jest": "26.0.9", "graphql": "14.6.0", "jest": "26.2.2", diff --git a/packages/server/package.json b/packages/server/package.json index d86111820..0a7dccb3f 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -55,6 +55,7 @@ "devDependencies": { "@types/jest": "26.0.9", "@types/jwt-decode": "2.2.1", + "@types/lodash": "4.14.157", "@types/node": "14.0.14", "jest": "26.2.2", "rimraf": "3.0.2" diff --git a/website/docs/contributing.md b/website/docs/contributing.md index 36cec2c13..85a6a6ee0 100644 --- a/website/docs/contributing.md +++ b/website/docs/contributing.md @@ -65,7 +65,7 @@ Anyone can file an expense. If the expense makes sense for the development of th ### Contributors Thank you to all the people who have already contributed to accounts-js! - + ### Backers diff --git a/website/docs/strategies/password.md b/website/docs/strategies/password.md index 89394a0d7..b68e317e5 100644 --- a/website/docs/strategies/password.md +++ b/website/docs/strategies/password.md @@ -85,7 +85,7 @@ Due to some databases limitations, we have to do some internal logic to ensure t ## Two factor The password module come with two factor out of the box. You can customize it using the `twoFactor` option. -Check all the options available [here](/docs/api/two-factor/api-interfaces-accountstwofactoroptions). +Check all the options available [here](/docs/api/two-factor/interfaces/accountstwofactoroptions). ```javascript export const accountsPassword = new AccountsPassword({ diff --git a/website/docusaurus.config.js b/website/docusaurus.config.js index 27aabe151..793c5d402 100755 --- a/website/docusaurus.config.js +++ b/website/docusaurus.config.js @@ -23,7 +23,7 @@ module.exports = { alt: 'My Site Logo', src: 'img/logo.png', }, - links: [ + items: [ { to: 'docs/introduction', label: 'Documentation', position: 'right' }, { to: 'docs/api/server/index', diff --git a/website/package.json b/website/package.json index 8ea47e564..e450e580b 100755 --- a/website/package.json +++ b/website/package.json @@ -10,8 +10,8 @@ "generate-api-docs": "rm -rf docs/api && ts-node scripts/generate-api-docs.ts" }, "dependencies": { - "@docusaurus/core": "2.0.0-alpha.58", - "@docusaurus/preset-classic": "2.0.0-alpha.58", + "@docusaurus/core": "2.0.0-alpha.61", + "@docusaurus/preset-classic": "2.0.0-alpha.61", "clsx": "1.1.1", "docusaurus-plugin-fathom": "1.1.0", "react": "16.13.1", diff --git a/website/yarn.lock b/website/yarn.lock deleted file mode 100644 index 3328ca7b7..000000000 --- a/website/yarn.lock +++ /dev/null @@ -1,9796 +0,0 @@ -# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. -# yarn lockfile v1 - - -"@babel/code-frame@7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.8.3.tgz#33e25903d7481181534e12ec0a25f16b6fcf419e" - integrity sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g== - dependencies: - "@babel/highlight" "^7.8.3" - -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.8.3": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.10.4.tgz#168da1a36e90da68ae8d49c0f1b48c7c6249213a" - integrity sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg== - dependencies: - "@babel/highlight" "^7.10.4" - -"@babel/compat-data@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.10.4.tgz#706a6484ee6f910b719b696a9194f8da7d7ac241" - integrity sha512-t+rjExOrSVvjQQXNp5zAIYDp00KjdvGl/TpDX5REPr0S9IAIPQMTilcfG6q8c0QFmj9lSTVySV2VTsyggvtNIw== - dependencies: - browserslist "^4.12.0" - invariant "^2.2.4" - semver "^5.5.0" - -"@babel/core@7.9.6": - version "7.9.6" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.9.6.tgz#d9aa1f580abf3b2286ef40b6904d390904c63376" - integrity sha512-nD3deLvbsApbHAHttzIssYqgb883yU/d9roe4RZymBCDaZryMJDbptVpEpeQuRh4BJ+SYI8le9YGxKvFEvl1Wg== - dependencies: - "@babel/code-frame" "^7.8.3" - "@babel/generator" "^7.9.6" - "@babel/helper-module-transforms" "^7.9.0" - "@babel/helpers" "^7.9.6" - "@babel/parser" "^7.9.6" - "@babel/template" "^7.8.6" - "@babel/traverse" "^7.9.6" - "@babel/types" "^7.9.6" - convert-source-map "^1.7.0" - debug "^4.1.0" - gensync "^1.0.0-beta.1" - json5 "^2.1.2" - lodash "^4.17.13" - resolve "^1.3.2" - semver "^5.4.1" - source-map "^0.5.0" - -"@babel/core@^7.7.5", "@babel/core@^7.9.0": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.10.4.tgz#780e8b83e496152f8dd7df63892b2e052bf1d51d" - integrity sha512-3A0tS0HWpy4XujGc7QtOIHTeNwUgWaZc/WuS5YQrfhU67jnVmsD6OGPc1AKHH0LJHQICGncy3+YUjIhVlfDdcA== - dependencies: - "@babel/code-frame" "^7.10.4" - "@babel/generator" "^7.10.4" - "@babel/helper-module-transforms" "^7.10.4" - "@babel/helpers" "^7.10.4" - "@babel/parser" "^7.10.4" - "@babel/template" "^7.10.4" - "@babel/traverse" "^7.10.4" - "@babel/types" "^7.10.4" - convert-source-map "^1.7.0" - debug "^4.1.0" - gensync "^1.0.0-beta.1" - json5 "^2.1.2" - lodash "^4.17.13" - resolve "^1.3.2" - semver "^5.4.1" - source-map "^0.5.0" - -"@babel/generator@^7.10.4", "@babel/generator@^7.9.6": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.10.4.tgz#e49eeed9fe114b62fa5b181856a43a5e32f5f243" - integrity sha512-toLIHUIAgcQygFZRAQcsLQV3CBuX6yOIru1kJk/qqqvcRmZrYe6WavZTSG+bB8MxhnL9YPf+pKQfuiP161q7ng== - dependencies: - "@babel/types" "^7.10.4" - jsesc "^2.5.1" - lodash "^4.17.13" - source-map "^0.5.0" - -"@babel/helper-annotate-as-pure@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.10.4.tgz#5bf0d495a3f757ac3bda48b5bf3b3ba309c72ba3" - integrity sha512-XQlqKQP4vXFB7BN8fEEerrmYvHp3fK/rBkRFz9jaJbzK0B1DSfej9Kc7ZzE8Z/OnId1jpJdNAZ3BFQjWG68rcA== - dependencies: - "@babel/types" "^7.10.4" - -"@babel/helper-builder-binary-assignment-operator-visitor@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.10.4.tgz#bb0b75f31bf98cbf9ff143c1ae578b87274ae1a3" - integrity sha512-L0zGlFrGWZK4PbT8AszSfLTM5sDU1+Az/En9VrdT8/LmEiJt4zXt+Jve9DCAnQcbqDhCI+29y/L93mrDzddCcg== - dependencies: - "@babel/helper-explode-assignable-expression" "^7.10.4" - "@babel/types" "^7.10.4" - -"@babel/helper-builder-react-jsx-experimental@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx-experimental/-/helper-builder-react-jsx-experimental-7.10.4.tgz#d0ffb875184d749c63ffe1f4f65be15143ec322d" - integrity sha512-LyacH/kgQPgLAuaWrvvq1+E7f5bLyT8jXCh7nM67sRsy2cpIGfgWJ+FCnAKQXfY+F0tXUaN6FqLkp4JiCzdK8Q== - dependencies: - "@babel/helper-annotate-as-pure" "^7.10.4" - "@babel/helper-module-imports" "^7.10.4" - "@babel/types" "^7.10.4" - -"@babel/helper-builder-react-jsx@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.10.4.tgz#8095cddbff858e6fa9c326daee54a2f2732c1d5d" - integrity sha512-5nPcIZ7+KKDxT1427oBivl9V9YTal7qk0diccnh7RrcgrT/pGFOjgGw1dgryyx1GvHEpXVfoDF6Ak3rTiWh8Rg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.10.4" - "@babel/types" "^7.10.4" - -"@babel/helper-compilation-targets@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.10.4.tgz#804ae8e3f04376607cc791b9d47d540276332bd2" - integrity sha512-a3rYhlsGV0UHNDvrtOXBg8/OpfV0OKTkxKPzIplS1zpx7CygDcWWxckxZeDd3gzPzC4kUT0A4nVFDK0wGMh4MQ== - dependencies: - "@babel/compat-data" "^7.10.4" - browserslist "^4.12.0" - invariant "^2.2.4" - levenary "^1.1.1" - semver "^5.5.0" - -"@babel/helper-create-class-features-plugin@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.10.4.tgz#2d4015d0136bd314103a70d84a7183e4b344a355" - integrity sha512-9raUiOsXPxzzLjCXeosApJItoMnX3uyT4QdM2UldffuGApNrF8e938MwNpDCK9CPoyxrEoCgT+hObJc3mZa6lQ== - dependencies: - "@babel/helper-function-name" "^7.10.4" - "@babel/helper-member-expression-to-functions" "^7.10.4" - "@babel/helper-optimise-call-expression" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/helper-replace-supers" "^7.10.4" - "@babel/helper-split-export-declaration" "^7.10.4" - -"@babel/helper-create-regexp-features-plugin@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.10.4.tgz#fdd60d88524659a0b6959c0579925e425714f3b8" - integrity sha512-2/hu58IEPKeoLF45DBwx3XFqsbCXmkdAay4spVr2x0jYgRxrSNp+ePwvSsy9g6YSaNDcKIQVPXk1Ov8S2edk2g== - dependencies: - "@babel/helper-annotate-as-pure" "^7.10.4" - "@babel/helper-regex" "^7.10.4" - regexpu-core "^4.7.0" - -"@babel/helper-define-map@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.10.4.tgz#f037ad794264f729eda1889f4ee210b870999092" - integrity sha512-nIij0oKErfCnLUCWaCaHW0Bmtl2RO9cN7+u2QT8yqTywgALKlyUVOvHDElh+b5DwVC6YB1FOYFOTWcN/+41EDA== - dependencies: - "@babel/helper-function-name" "^7.10.4" - "@babel/types" "^7.10.4" - lodash "^4.17.13" - -"@babel/helper-explode-assignable-expression@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.10.4.tgz#40a1cd917bff1288f699a94a75b37a1a2dbd8c7c" - integrity sha512-4K71RyRQNPRrR85sr5QY4X3VwG4wtVoXZB9+L3r1Gp38DhELyHCtovqydRi7c1Ovb17eRGiQ/FD5s8JdU0Uy5A== - dependencies: - "@babel/traverse" "^7.10.4" - "@babel/types" "^7.10.4" - -"@babel/helper-function-name@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.10.4.tgz#d2d3b20c59ad8c47112fa7d2a94bc09d5ef82f1a" - integrity sha512-YdaSyz1n8gY44EmN7x44zBn9zQ1Ry2Y+3GTA+3vH6Mizke1Vw0aWDM66FOYEPw8//qKkmqOckrGgTYa+6sceqQ== - dependencies: - "@babel/helper-get-function-arity" "^7.10.4" - "@babel/template" "^7.10.4" - "@babel/types" "^7.10.4" - -"@babel/helper-get-function-arity@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.10.4.tgz#98c1cbea0e2332f33f9a4661b8ce1505b2c19ba2" - integrity sha512-EkN3YDB+SRDgiIUnNgcmiD361ti+AVbL3f3Henf6dqqUyr5dMsorno0lJWJuLhDhkI5sYEpgj6y9kB8AOU1I2A== - dependencies: - "@babel/types" "^7.10.4" - -"@babel/helper-hoist-variables@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.10.4.tgz#d49b001d1d5a68ca5e6604dda01a6297f7c9381e" - integrity sha512-wljroF5PgCk2juF69kanHVs6vrLwIPNp6DLD+Lrl3hoQ3PpPPikaDRNFA+0t81NOoMt2DL6WW/mdU8k4k6ZzuA== - dependencies: - "@babel/types" "^7.10.4" - -"@babel/helper-member-expression-to-functions@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.10.4.tgz#7cd04b57dfcf82fce9aeae7d4e4452fa31b8c7c4" - integrity sha512-m5j85pK/KZhuSdM/8cHUABQTAslV47OjfIB9Cc7P+PvlAoBzdb79BGNfw8RhT5Mq3p+xGd0ZfAKixbrUZx0C7A== - dependencies: - "@babel/types" "^7.10.4" - -"@babel/helper-module-imports@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.10.4.tgz#4c5c54be04bd31670a7382797d75b9fa2e5b5620" - integrity sha512-nEQJHqYavI217oD9+s5MUBzk6x1IlvoS9WTPfgG43CbMEeStE0v+r+TucWdx8KFGowPGvyOkDT9+7DHedIDnVw== - dependencies: - "@babel/types" "^7.10.4" - -"@babel/helper-module-transforms@^7.10.4", "@babel/helper-module-transforms@^7.9.0": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.10.4.tgz#ca1f01fdb84e48c24d7506bb818c961f1da8805d" - integrity sha512-Er2FQX0oa3nV7eM1o0tNCTx7izmQtwAQsIiaLRWtavAAEcskb0XJ5OjJbVrYXWOTr8om921Scabn4/tzlx7j1Q== - dependencies: - "@babel/helper-module-imports" "^7.10.4" - "@babel/helper-replace-supers" "^7.10.4" - "@babel/helper-simple-access" "^7.10.4" - "@babel/helper-split-export-declaration" "^7.10.4" - "@babel/template" "^7.10.4" - "@babel/types" "^7.10.4" - lodash "^4.17.13" - -"@babel/helper-optimise-call-expression@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.10.4.tgz#50dc96413d594f995a77905905b05893cd779673" - integrity sha512-n3UGKY4VXwXThEiKrgRAoVPBMqeoPgHVqiHZOanAJCG9nQUL2pLRQirUzl0ioKclHGpGqRgIOkgcIJaIWLpygg== - dependencies: - "@babel/types" "^7.10.4" - -"@babel/helper-plugin-utils@7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz#9ea293be19babc0f52ff8ca88b34c3611b208670" - integrity sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ== - -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz#2f75a831269d4f677de49986dff59927533cf375" - integrity sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg== - -"@babel/helper-regex@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-regex/-/helper-regex-7.10.4.tgz#59b373daaf3458e5747dece71bbaf45f9676af6d" - integrity sha512-inWpnHGgtg5NOF0eyHlC0/74/VkdRITY9dtTpB2PrxKKn+AkVMRiZz/Adrx+Ssg+MLDesi2zohBW6MVq6b4pOQ== - dependencies: - lodash "^4.17.13" - -"@babel/helper-remap-async-to-generator@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.10.4.tgz#fce8bea4e9690bbe923056ded21e54b4e8b68ed5" - integrity sha512-86Lsr6NNw3qTNl+TBcF1oRZMaVzJtbWTyTko+CQL/tvNvcGYEFKbLXDPxtW0HKk3McNOk4KzY55itGWCAGK5tg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.10.4" - "@babel/helper-wrap-function" "^7.10.4" - "@babel/template" "^7.10.4" - "@babel/traverse" "^7.10.4" - "@babel/types" "^7.10.4" - -"@babel/helper-replace-supers@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.10.4.tgz#d585cd9388ea06e6031e4cd44b6713cbead9e6cf" - integrity sha512-sPxZfFXocEymYTdVK1UNmFPBN+Hv5mJkLPsYWwGBxZAxaWfFu+xqp7b6qWD0yjNuNL2VKc6L5M18tOXUP7NU0A== - dependencies: - "@babel/helper-member-expression-to-functions" "^7.10.4" - "@babel/helper-optimise-call-expression" "^7.10.4" - "@babel/traverse" "^7.10.4" - "@babel/types" "^7.10.4" - -"@babel/helper-simple-access@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.10.4.tgz#0f5ccda2945277a2a7a2d3a821e15395edcf3461" - integrity sha512-0fMy72ej/VEvF8ULmX6yb5MtHG4uH4Dbd6I/aHDb/JVg0bbivwt9Wg+h3uMvX+QSFtwr5MeItvazbrc4jtRAXw== - dependencies: - "@babel/template" "^7.10.4" - "@babel/types" "^7.10.4" - -"@babel/helper-split-export-declaration@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.10.4.tgz#2c70576eaa3b5609b24cb99db2888cc3fc4251d1" - integrity sha512-pySBTeoUff56fL5CBU2hWm9TesA4r/rOkI9DyJLvvgz09MB9YtfIYe3iBriVaYNaPe+Alua0vBIOVOLs2buWhg== - dependencies: - "@babel/types" "^7.10.4" - -"@babel/helper-validator-identifier@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz#a78c7a7251e01f616512d31b10adcf52ada5e0d2" - integrity sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw== - -"@babel/helper-wrap-function@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.10.4.tgz#8a6f701eab0ff39f765b5a1cfef409990e624b87" - integrity sha512-6py45WvEF0MhiLrdxtRjKjufwLL1/ob2qDJgg5JgNdojBAZSAKnAjkyOCNug6n+OBl4VW76XjvgSFTdaMcW0Ug== - dependencies: - "@babel/helper-function-name" "^7.10.4" - "@babel/template" "^7.10.4" - "@babel/traverse" "^7.10.4" - "@babel/types" "^7.10.4" - -"@babel/helpers@^7.10.4", "@babel/helpers@^7.9.6": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.10.4.tgz#2abeb0d721aff7c0a97376b9e1f6f65d7a475044" - integrity sha512-L2gX/XeUONeEbI78dXSrJzGdz4GQ+ZTA/aazfUsFaWjSe95kiCuOZ5HsXvkiw3iwF+mFHSRUfJU8t6YavocdXA== - dependencies: - "@babel/template" "^7.10.4" - "@babel/traverse" "^7.10.4" - "@babel/types" "^7.10.4" - -"@babel/highlight@^7.10.4", "@babel/highlight@^7.8.3": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.10.4.tgz#7d1bdfd65753538fabe6c38596cdb76d9ac60143" - integrity sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA== - dependencies: - "@babel/helper-validator-identifier" "^7.10.4" - chalk "^2.0.0" - js-tokens "^4.0.0" - -"@babel/parser@^7.10.4", "@babel/parser@^7.9.4", "@babel/parser@^7.9.6": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.10.4.tgz#9eedf27e1998d87739fb5028a5120557c06a1a64" - integrity sha512-8jHII4hf+YVDsskTF6WuMB3X4Eh+PsUkC2ljq22so5rHvH+T8BzyL94VOdyFLNR8tBSVXOTbNHOKpR4TfRxVtA== - -"@babel/plugin-proposal-async-generator-functions@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.10.4.tgz#4b65abb3d9bacc6c657aaa413e56696f9f170fc6" - integrity sha512-MJbxGSmejEFVOANAezdO39SObkURO5o/8b6fSH6D1pi9RZQt+ldppKPXfqgUWpSQ9asM6xaSaSJIaeWMDRP0Zg== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/helper-remap-async-to-generator" "^7.10.4" - "@babel/plugin-syntax-async-generators" "^7.8.0" - -"@babel/plugin-proposal-class-properties@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.10.4.tgz#a33bf632da390a59c7a8c570045d1115cd778807" - integrity sha512-vhwkEROxzcHGNu2mzUC0OFFNXdZ4M23ib8aRRcJSsW8BZK9pQMD7QB7csl97NBbgGZO7ZyHUyKDnxzOaP4IrCg== - dependencies: - "@babel/helper-create-class-features-plugin" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-proposal-dynamic-import@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.10.4.tgz#ba57a26cb98b37741e9d5bca1b8b0ddf8291f17e" - integrity sha512-up6oID1LeidOOASNXgv/CFbgBqTuKJ0cJjz6An5tWD+NVBNlp3VNSBxv2ZdU7SYl3NxJC7agAQDApZusV6uFwQ== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/plugin-syntax-dynamic-import" "^7.8.0" - -"@babel/plugin-proposal-json-strings@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.10.4.tgz#593e59c63528160233bd321b1aebe0820c2341db" - integrity sha512-fCL7QF0Jo83uy1K0P2YXrfX11tj3lkpN7l4dMv9Y9VkowkhkQDwFHFd8IiwyK5MZjE8UpbgokkgtcReH88Abaw== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/plugin-syntax-json-strings" "^7.8.0" - -"@babel/plugin-proposal-nullish-coalescing-operator@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.10.4.tgz#02a7e961fc32e6d5b2db0649e01bf80ddee7e04a" - integrity sha512-wq5n1M3ZUlHl9sqT2ok1T2/MTt6AXE0e1Lz4WzWBr95LsAZ5qDXe4KnFuauYyEyLiohvXFMdbsOTMyLZs91Zlw== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.0" - -"@babel/plugin-proposal-numeric-separator@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.10.4.tgz#ce1590ff0a65ad12970a609d78855e9a4c1aef06" - integrity sha512-73/G7QoRoeNkLZFxsoCCvlg4ezE4eM+57PnOqgaPOozd5myfj7p0muD1mRVJvbUWbOzD+q3No2bWbaKy+DJ8DA== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/plugin-syntax-numeric-separator" "^7.10.4" - -"@babel/plugin-proposal-object-rest-spread@7.9.6": - version "7.9.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.9.6.tgz#7a093586fcb18b08266eb1a7177da671ac575b63" - integrity sha512-Ga6/fhGqA9Hj+y6whNpPv8psyaK5xzrQwSPsGPloVkvmH+PqW1ixdnfJ9uIO06OjQNYol3PMnfmJ8vfZtkzF+A== - dependencies: - "@babel/helper-plugin-utils" "^7.8.3" - "@babel/plugin-syntax-object-rest-spread" "^7.8.0" - "@babel/plugin-transform-parameters" "^7.9.5" - -"@babel/plugin-proposal-object-rest-spread@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.10.4.tgz#50129ac216b9a6a55b3853fdd923e74bf553a4c0" - integrity sha512-6vh4SqRuLLarjgeOf4EaROJAHjvu9Gl+/346PbDH9yWbJyfnJ/ah3jmYKYtswEyCoWZiidvVHjHshd4WgjB9BA== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/plugin-syntax-object-rest-spread" "^7.8.0" - "@babel/plugin-transform-parameters" "^7.10.4" - -"@babel/plugin-proposal-optional-catch-binding@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.10.4.tgz#31c938309d24a78a49d68fdabffaa863758554dd" - integrity sha512-LflT6nPh+GK2MnFiKDyLiqSqVHkQnVf7hdoAvyTnnKj9xB3docGRsdPuxp6qqqW19ifK3xgc9U5/FwrSaCNX5g== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/plugin-syntax-optional-catch-binding" "^7.8.0" - -"@babel/plugin-proposal-optional-chaining@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.10.4.tgz#750f1255e930a1f82d8cdde45031f81a0d0adff7" - integrity sha512-ZIhQIEeavTgouyMSdZRap4VPPHqJJ3NEs2cuHs5p0erH+iz6khB0qfgU8g7UuJkG88+fBMy23ZiU+nuHvekJeQ== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/plugin-syntax-optional-chaining" "^7.8.0" - -"@babel/plugin-proposal-private-methods@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.10.4.tgz#b160d972b8fdba5c7d111a145fc8c421fc2a6909" - integrity sha512-wh5GJleuI8k3emgTg5KkJK6kHNsGEr0uBTDBuQUBJwckk9xs1ez79ioheEVVxMLyPscB0LfkbVHslQqIzWV6Bw== - dependencies: - "@babel/helper-create-class-features-plugin" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-proposal-unicode-property-regex@^7.10.4", "@babel/plugin-proposal-unicode-property-regex@^7.4.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.10.4.tgz#4483cda53041ce3413b7fe2f00022665ddfaa75d" - integrity sha512-H+3fOgPnEXFL9zGYtKQe4IDOPKYlZdF1kqFDQRRb8PK4B8af1vAGK04tF5iQAAsui+mHNBQSAtd2/ndEDe9wuA== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-syntax-async-generators@^7.8.0": - version "7.8.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d" - integrity sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-class-properties@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.10.4.tgz#6644e6a0baa55a61f9e3231f6c9eeb6ee46c124c" - integrity sha512-GCSBF7iUle6rNugfURwNmCGG3Z/2+opxAMLs1nND4bhEG5PuxTIggDBoeYYSujAlLtsupzOHYJQgPS3pivwXIA== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-syntax-dynamic-import@^7.8.0", "@babel/plugin-syntax-dynamic-import@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz#62bf98b2da3cd21d626154fc96ee5b3cb68eacb3" - integrity sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-json-strings@^7.8.0": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a" - integrity sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-jsx@7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.8.3.tgz#521b06c83c40480f1e58b4fd33b92eceb1d6ea94" - integrity sha512-WxdW9xyLgBdefoo0Ynn3MRSkhe5tFVxxKNVdnZSh318WrG2e2jH+E9wd/++JsqcLJZPfz87njQJ8j2Upjm0M0A== - dependencies: - "@babel/helper-plugin-utils" "^7.8.3" - -"@babel/plugin-syntax-jsx@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.10.4.tgz#39abaae3cbf710c4373d8429484e6ba21340166c" - integrity sha512-KCg9mio9jwiARCB7WAcQ7Y1q+qicILjoK8LP/VkPkEKaf5dkaZZK1EcTe91a3JJlZ3qy6L5s9X52boEYi8DM9g== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-syntax-nullish-coalescing-operator@^7.8.0": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz#167ed70368886081f74b5c36c65a88c03b66d1a9" - integrity sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-numeric-separator@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz#b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97" - integrity sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-syntax-object-rest-spread@7.8.3", "@babel/plugin-syntax-object-rest-spread@^7.8.0": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871" - integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-optional-catch-binding@^7.8.0": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz#6111a265bcfb020eb9efd0fdfd7d26402b9ed6c1" - integrity sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-optional-chaining@^7.8.0": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz#4f69c2ab95167e0180cd5336613f8c5788f7d48a" - integrity sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-top-level-await@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.10.4.tgz#4bbeb8917b54fcf768364e0a81f560e33a3ef57d" - integrity sha512-ni1brg4lXEmWyafKr0ccFWkJG0CeMt4WV1oyeBW6EFObF4oOHclbkj5cARxAPQyAQ2UTuplJyK4nfkXIMMFvsQ== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-syntax-typescript@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.10.4.tgz#2f55e770d3501e83af217d782cb7517d7bb34d25" - integrity sha512-oSAEz1YkBCAKr5Yiq8/BNtvSAPwkp/IyUnwZogd8p+F0RuYQQrLeRUzIQhueQTTBy/F+a40uS7OFKxnkRvmvFQ== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-transform-arrow-functions@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.10.4.tgz#e22960d77e697c74f41c501d44d73dbf8a6a64cd" - integrity sha512-9J/oD1jV0ZCBcgnoFWFq1vJd4msoKb/TCpGNFyyLt0zABdcvgK3aYikZ8HjzB14c26bc7E3Q1yugpwGy2aTPNA== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-transform-async-to-generator@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.10.4.tgz#41a5017e49eb6f3cda9392a51eef29405b245a37" - integrity sha512-F6nREOan7J5UXTLsDsZG3DXmZSVofr2tGNwfdrVwkDWHfQckbQXnXSPfD7iO+c/2HGqycwyLST3DnZ16n+cBJQ== - dependencies: - "@babel/helper-module-imports" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/helper-remap-async-to-generator" "^7.10.4" - -"@babel/plugin-transform-block-scoped-functions@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.10.4.tgz#1afa595744f75e43a91af73b0d998ecfe4ebc2e8" - integrity sha512-WzXDarQXYYfjaV1szJvN3AD7rZgZzC1JtjJZ8dMHUyiK8mxPRahynp14zzNjU3VkPqPsO38CzxiWO1c9ARZ8JA== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-transform-block-scoping@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.10.4.tgz#a670d1364bb5019a621b9ea2001482876d734787" - integrity sha512-J3b5CluMg3hPUii2onJDRiaVbPtKFPLEaV5dOPY5OeAbDi1iU/UbbFFTgwb7WnanaDy7bjU35kc26W3eM5Qa0A== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - lodash "^4.17.13" - -"@babel/plugin-transform-classes@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.10.4.tgz#405136af2b3e218bc4a1926228bc917ab1a0adc7" - integrity sha512-2oZ9qLjt161dn1ZE0Ms66xBncQH4In8Sqw1YWgBUZuGVJJS5c0OFZXL6dP2MRHrkU/eKhWg8CzFJhRQl50rQxA== - dependencies: - "@babel/helper-annotate-as-pure" "^7.10.4" - "@babel/helper-define-map" "^7.10.4" - "@babel/helper-function-name" "^7.10.4" - "@babel/helper-optimise-call-expression" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/helper-replace-supers" "^7.10.4" - "@babel/helper-split-export-declaration" "^7.10.4" - globals "^11.1.0" - -"@babel/plugin-transform-computed-properties@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.10.4.tgz#9ded83a816e82ded28d52d4b4ecbdd810cdfc0eb" - integrity sha512-JFwVDXcP/hM/TbyzGq3l/XWGut7p46Z3QvqFMXTfk6/09m7xZHJUN9xHfsv7vqqD4YnfI5ueYdSJtXqqBLyjBw== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-transform-destructuring@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.10.4.tgz#70ddd2b3d1bea83d01509e9bb25ddb3a74fc85e5" - integrity sha512-+WmfvyfsyF603iPa6825mq6Qrb7uLjTOsa3XOFzlYcYDHSS4QmpOWOL0NNBY5qMbvrcf3tq0Cw+v4lxswOBpgA== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-transform-dotall-regex@^7.10.4", "@babel/plugin-transform-dotall-regex@^7.4.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.10.4.tgz#469c2062105c1eb6a040eaf4fac4b488078395ee" - integrity sha512-ZEAVvUTCMlMFAbASYSVQoxIbHm2OkG2MseW6bV2JjIygOjdVv8tuxrCTzj1+Rynh7ODb8GivUy7dzEXzEhuPaA== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-transform-duplicate-keys@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.10.4.tgz#697e50c9fee14380fe843d1f306b295617431e47" - integrity sha512-GL0/fJnmgMclHiBTTWXNlYjYsA7rDrtsazHG6mglaGSTh0KsrW04qml+Bbz9FL0LcJIRwBWL5ZqlNHKTkU3xAA== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-transform-exponentiation-operator@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.10.4.tgz#5ae338c57f8cf4001bdb35607ae66b92d665af2e" - integrity sha512-S5HgLVgkBcRdyQAHbKj+7KyuWx8C6t5oETmUuwz1pt3WTWJhsUV0WIIXuVvfXMxl/QQyHKlSCNNtaIamG8fysw== - dependencies: - "@babel/helper-builder-binary-assignment-operator-visitor" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-transform-for-of@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.10.4.tgz#c08892e8819d3a5db29031b115af511dbbfebae9" - integrity sha512-ItdQfAzu9AlEqmusA/65TqJ79eRcgGmpPPFvBnGILXZH975G0LNjP1yjHvGgfuCxqrPPueXOPe+FsvxmxKiHHQ== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-transform-function-name@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.10.4.tgz#6a467880e0fc9638514ba369111811ddbe2644b7" - integrity sha512-OcDCq2y5+E0dVD5MagT5X+yTRbcvFjDI2ZVAottGH6tzqjx/LKpgkUepu3hp/u4tZBzxxpNGwLsAvGBvQ2mJzg== - dependencies: - "@babel/helper-function-name" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-transform-literals@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.10.4.tgz#9f42ba0841100a135f22712d0e391c462f571f3c" - integrity sha512-Xd/dFSTEVuUWnyZiMu76/InZxLTYilOSr1UlHV+p115Z/Le2Fi1KXkJUYz0b42DfndostYlPub3m8ZTQlMaiqQ== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-transform-member-expression-literals@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.10.4.tgz#b1ec44fcf195afcb8db2c62cd8e551c881baf8b7" - integrity sha512-0bFOvPyAoTBhtcJLr9VcwZqKmSjFml1iVxvPL0ReomGU53CX53HsM4h2SzckNdkQcHox1bpAqzxBI1Y09LlBSw== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-transform-modules-amd@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.10.4.tgz#cb407c68b862e4c1d13a2fc738c7ec5ed75fc520" - integrity sha512-3Fw+H3WLUrTlzi3zMiZWp3AR4xadAEMv6XRCYnd5jAlLM61Rn+CRJaZMaNvIpcJpQ3vs1kyifYvEVPFfoSkKOA== - dependencies: - "@babel/helper-module-transforms" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - babel-plugin-dynamic-import-node "^2.3.3" - -"@babel/plugin-transform-modules-commonjs@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.10.4.tgz#66667c3eeda1ebf7896d41f1f16b17105a2fbca0" - integrity sha512-Xj7Uq5o80HDLlW64rVfDBhao6OX89HKUmb+9vWYaLXBZOma4gA6tw4Ni1O5qVDoZWUV0fxMYA0aYzOawz0l+1w== - dependencies: - "@babel/helper-module-transforms" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/helper-simple-access" "^7.10.4" - babel-plugin-dynamic-import-node "^2.3.3" - -"@babel/plugin-transform-modules-systemjs@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.10.4.tgz#8f576afd943ac2f789b35ded0a6312f929c633f9" - integrity sha512-Tb28LlfxrTiOTGtZFsvkjpyjCl9IoaRI52AEU/VIwOwvDQWtbNJsAqTXzh+5R7i74e/OZHH2c2w2fsOqAfnQYQ== - dependencies: - "@babel/helper-hoist-variables" "^7.10.4" - "@babel/helper-module-transforms" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - babel-plugin-dynamic-import-node "^2.3.3" - -"@babel/plugin-transform-modules-umd@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.10.4.tgz#9a8481fe81b824654b3a0b65da3df89f3d21839e" - integrity sha512-mohW5q3uAEt8T45YT7Qc5ws6mWgJAaL/8BfWD9Dodo1A3RKWli8wTS+WiQ/knF+tXlPirW/1/MqzzGfCExKECA== - dependencies: - "@babel/helper-module-transforms" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-transform-named-capturing-groups-regex@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.10.4.tgz#78b4d978810b6f3bcf03f9e318f2fc0ed41aecb6" - integrity sha512-V6LuOnD31kTkxQPhKiVYzYC/Jgdq53irJC/xBSmqcNcqFGV+PER4l6rU5SH2Vl7bH9mLDHcc0+l9HUOe4RNGKA== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.10.4" - -"@babel/plugin-transform-new-target@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.10.4.tgz#9097d753cb7b024cb7381a3b2e52e9513a9c6888" - integrity sha512-YXwWUDAH/J6dlfwqlWsztI2Puz1NtUAubXhOPLQ5gjR/qmQ5U96DY4FQO8At33JN4XPBhrjB8I4eMmLROjjLjw== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-transform-object-super@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.10.4.tgz#d7146c4d139433e7a6526f888c667e314a093894" - integrity sha512-5iTw0JkdRdJvr7sY0vHqTpnruUpTea32JHmq/atIWqsnNussbRzjEDyWep8UNztt1B5IusBYg8Irb0bLbiEBCQ== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/helper-replace-supers" "^7.10.4" - -"@babel/plugin-transform-parameters@^7.10.4", "@babel/plugin-transform-parameters@^7.9.5": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.10.4.tgz#7b4d137c87ea7adc2a0f3ebf53266871daa6fced" - integrity sha512-RurVtZ/D5nYfEg0iVERXYKEgDFeesHrHfx8RT05Sq57ucj2eOYAP6eu5fynL4Adju4I/mP/I6SO0DqNWAXjfLQ== - dependencies: - "@babel/helper-get-function-arity" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-transform-property-literals@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.10.4.tgz#f6fe54b6590352298785b83edd815d214c42e3c0" - integrity sha512-ofsAcKiUxQ8TY4sScgsGeR2vJIsfrzqvFb9GvJ5UdXDzl+MyYCaBj/FGzXuv7qE0aJcjWMILny1epqelnFlz8g== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-transform-react-constant-elements@^7.9.0": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.10.4.tgz#0f485260bf1c29012bb973e7e404749eaac12c9e" - integrity sha512-cYmQBW1pXrqBte1raMkAulXmi7rjg3VI6ZLg9QIic8Hq7BtYXaWuZSxsr2siOMI6SWwpxjWfnwhTUrd7JlAV7g== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-transform-react-display-name@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.10.4.tgz#b5795f4e3e3140419c3611b7a2a3832b9aef328d" - integrity sha512-Zd4X54Mu9SBfPGnEcaGcOrVAYOtjT2on8QZkLKEq1S/tHexG39d9XXGZv19VfRrDjPJzFmPfTAqOQS1pfFOujw== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-transform-react-jsx-development@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.10.4.tgz#6ec90f244394604623880e15ebc3c34c356258ba" - integrity sha512-RM3ZAd1sU1iQ7rI2dhrZRZGv0aqzNQMbkIUCS1txYpi9wHQ2ZHNjo5TwX+UD6pvFW4AbWqLVYvKy5qJSAyRGjQ== - dependencies: - "@babel/helper-builder-react-jsx-experimental" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/plugin-syntax-jsx" "^7.10.4" - -"@babel/plugin-transform-react-jsx-self@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.10.4.tgz#cd301a5fed8988c182ed0b9d55e9bd6db0bd9369" - integrity sha512-yOvxY2pDiVJi0axdTWHSMi5T0DILN+H+SaeJeACHKjQLezEzhLx9nEF9xgpBLPtkZsks9cnb5P9iBEi21En3gg== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/plugin-syntax-jsx" "^7.10.4" - -"@babel/plugin-transform-react-jsx-source@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.10.4.tgz#86baf0fcccfe58084e06446a80858e1deae8f291" - integrity sha512-FTK3eQFrPv2aveerUSazFmGygqIdTtvskG50SnGnbEUnRPcGx2ylBhdFIzoVS1ty44hEgcPoCAyw5r3VDEq+Ug== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/plugin-syntax-jsx" "^7.10.4" - -"@babel/plugin-transform-react-jsx@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.10.4.tgz#673c9f913948764a4421683b2bef2936968fddf2" - integrity sha512-L+MfRhWjX0eI7Js093MM6MacKU4M6dnCRa/QPDwYMxjljzSCzzlzKzj9Pk4P3OtrPcxr2N3znR419nr3Xw+65A== - dependencies: - "@babel/helper-builder-react-jsx" "^7.10.4" - "@babel/helper-builder-react-jsx-experimental" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/plugin-syntax-jsx" "^7.10.4" - -"@babel/plugin-transform-react-pure-annotations@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.10.4.tgz#3eefbb73db94afbc075f097523e445354a1c6501" - integrity sha512-+njZkqcOuS8RaPakrnR9KvxjoG1ASJWpoIv/doyWngId88JoFlPlISenGXjrVacZUIALGUr6eodRs1vmPnF23A== - dependencies: - "@babel/helper-annotate-as-pure" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-transform-regenerator@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.10.4.tgz#2015e59d839074e76838de2159db421966fd8b63" - integrity sha512-3thAHwtor39A7C04XucbMg17RcZ3Qppfxr22wYzZNcVIkPHfpM9J0SO8zuCV6SZa265kxBJSrfKTvDCYqBFXGw== - dependencies: - regenerator-transform "^0.14.2" - -"@babel/plugin-transform-reserved-words@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.10.4.tgz#8f2682bcdcef9ed327e1b0861585d7013f8a54dd" - integrity sha512-hGsw1O6Rew1fkFbDImZIEqA8GoidwTAilwCyWqLBM9f+e/u/sQMQu7uX6dyokfOayRuuVfKOW4O7HvaBWM+JlQ== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-transform-runtime@^7.9.0": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.10.4.tgz#594fb53453ea1b6f0779cceb48ce0718a447feb7" - integrity sha512-8ULlGv8p+Vuxu+kz2Y1dk6MYS2b/Dki+NO6/0ZlfSj5tMalfDL7jI/o/2a+rrWLqSXvnadEqc2WguB4gdQIxZw== - dependencies: - "@babel/helper-module-imports" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - resolve "^1.8.1" - semver "^5.5.1" - -"@babel/plugin-transform-shorthand-properties@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.10.4.tgz#9fd25ec5cdd555bb7f473e5e6ee1c971eede4dd6" - integrity sha512-AC2K/t7o07KeTIxMoHneyX90v3zkm5cjHJEokrPEAGEy3UCp8sLKfnfOIGdZ194fyN4wfX/zZUWT9trJZ0qc+Q== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-transform-spread@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.10.4.tgz#4e2c85ea0d6abaee1b24dcfbbae426fe8d674cff" - integrity sha512-1e/51G/Ni+7uH5gktbWv+eCED9pP8ZpRhZB3jOaI3mmzfvJTWHkuyYTv0Z5PYtyM+Tr2Ccr9kUdQxn60fI5WuQ== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-transform-sticky-regex@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.10.4.tgz#8f3889ee8657581130a29d9cc91d7c73b7c4a28d" - integrity sha512-Ddy3QZfIbEV0VYcVtFDCjeE4xwVTJWTmUtorAJkn6u/92Z/nWJNV+mILyqHKrUxXYKA2EoCilgoPePymKL4DvQ== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/helper-regex" "^7.10.4" - -"@babel/plugin-transform-template-literals@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.10.4.tgz#e6375407b30fcb7fcfdbba3bb98ef3e9d36df7bc" - integrity sha512-4NErciJkAYe+xI5cqfS8pV/0ntlY5N5Ske/4ImxAVX7mk9Rxt2bwDTGv1Msc2BRJvWQcmYEC+yoMLdX22aE4VQ== - dependencies: - "@babel/helper-annotate-as-pure" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-transform-typeof-symbol@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.10.4.tgz#9509f1a7eec31c4edbffe137c16cc33ff0bc5bfc" - integrity sha512-QqNgYwuuW0y0H+kUE/GWSR45t/ccRhe14Fs/4ZRouNNQsyd4o3PG4OtHiIrepbM2WKUBDAXKCAK/Lk4VhzTaGA== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-transform-typescript@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.10.4.tgz#8b01cb8d77f795422277cc3fcf45af72bc68ba78" - integrity sha512-3WpXIKDJl/MHoAN0fNkSr7iHdUMHZoppXjf2HJ9/ed5Xht5wNIsXllJXdityKOxeA3Z8heYRb1D3p2H5rfCdPw== - dependencies: - "@babel/helper-create-class-features-plugin" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/plugin-syntax-typescript" "^7.10.4" - -"@babel/plugin-transform-unicode-escapes@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.10.4.tgz#feae523391c7651ddac115dae0a9d06857892007" - integrity sha512-y5XJ9waMti2J+e7ij20e+aH+fho7Wb7W8rNuu72aKRwCHFqQdhkdU2lo3uZ9tQuboEJcUFayXdARhcxLQ3+6Fg== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-transform-unicode-regex@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.10.4.tgz#e56d71f9282fac6db09c82742055576d5e6d80a8" - integrity sha512-wNfsc4s8N2qnIwpO/WP2ZiSyjfpTamT2C9V9FDH/Ljub9zw6P3SjkXcFmc0RQUt96k2fmIvtla2MMjgTwIAC+A== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/preset-env@^7.9.0", "@babel/preset-env@^7.9.5": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.10.4.tgz#fbf57f9a803afd97f4f32e4f798bb62e4b2bef5f" - integrity sha512-tcmuQ6vupfMZPrLrc38d0sF2OjLT3/bZ0dry5HchNCQbrokoQi4reXqclvkkAT5b+gWc23meVWpve5P/7+w/zw== - dependencies: - "@babel/compat-data" "^7.10.4" - "@babel/helper-compilation-targets" "^7.10.4" - "@babel/helper-module-imports" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/plugin-proposal-async-generator-functions" "^7.10.4" - "@babel/plugin-proposal-class-properties" "^7.10.4" - "@babel/plugin-proposal-dynamic-import" "^7.10.4" - "@babel/plugin-proposal-json-strings" "^7.10.4" - "@babel/plugin-proposal-nullish-coalescing-operator" "^7.10.4" - "@babel/plugin-proposal-numeric-separator" "^7.10.4" - "@babel/plugin-proposal-object-rest-spread" "^7.10.4" - "@babel/plugin-proposal-optional-catch-binding" "^7.10.4" - "@babel/plugin-proposal-optional-chaining" "^7.10.4" - "@babel/plugin-proposal-private-methods" "^7.10.4" - "@babel/plugin-proposal-unicode-property-regex" "^7.10.4" - "@babel/plugin-syntax-async-generators" "^7.8.0" - "@babel/plugin-syntax-class-properties" "^7.10.4" - "@babel/plugin-syntax-dynamic-import" "^7.8.0" - "@babel/plugin-syntax-json-strings" "^7.8.0" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.0" - "@babel/plugin-syntax-numeric-separator" "^7.10.4" - "@babel/plugin-syntax-object-rest-spread" "^7.8.0" - "@babel/plugin-syntax-optional-catch-binding" "^7.8.0" - "@babel/plugin-syntax-optional-chaining" "^7.8.0" - "@babel/plugin-syntax-top-level-await" "^7.10.4" - "@babel/plugin-transform-arrow-functions" "^7.10.4" - "@babel/plugin-transform-async-to-generator" "^7.10.4" - "@babel/plugin-transform-block-scoped-functions" "^7.10.4" - "@babel/plugin-transform-block-scoping" "^7.10.4" - "@babel/plugin-transform-classes" "^7.10.4" - "@babel/plugin-transform-computed-properties" "^7.10.4" - "@babel/plugin-transform-destructuring" "^7.10.4" - "@babel/plugin-transform-dotall-regex" "^7.10.4" - "@babel/plugin-transform-duplicate-keys" "^7.10.4" - "@babel/plugin-transform-exponentiation-operator" "^7.10.4" - "@babel/plugin-transform-for-of" "^7.10.4" - "@babel/plugin-transform-function-name" "^7.10.4" - "@babel/plugin-transform-literals" "^7.10.4" - "@babel/plugin-transform-member-expression-literals" "^7.10.4" - "@babel/plugin-transform-modules-amd" "^7.10.4" - "@babel/plugin-transform-modules-commonjs" "^7.10.4" - "@babel/plugin-transform-modules-systemjs" "^7.10.4" - "@babel/plugin-transform-modules-umd" "^7.10.4" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.10.4" - "@babel/plugin-transform-new-target" "^7.10.4" - "@babel/plugin-transform-object-super" "^7.10.4" - "@babel/plugin-transform-parameters" "^7.10.4" - "@babel/plugin-transform-property-literals" "^7.10.4" - "@babel/plugin-transform-regenerator" "^7.10.4" - "@babel/plugin-transform-reserved-words" "^7.10.4" - "@babel/plugin-transform-shorthand-properties" "^7.10.4" - "@babel/plugin-transform-spread" "^7.10.4" - "@babel/plugin-transform-sticky-regex" "^7.10.4" - "@babel/plugin-transform-template-literals" "^7.10.4" - "@babel/plugin-transform-typeof-symbol" "^7.10.4" - "@babel/plugin-transform-unicode-escapes" "^7.10.4" - "@babel/plugin-transform-unicode-regex" "^7.10.4" - "@babel/preset-modules" "^0.1.3" - "@babel/types" "^7.10.4" - browserslist "^4.12.0" - core-js-compat "^3.6.2" - invariant "^2.2.2" - levenary "^1.1.1" - semver "^5.5.0" - -"@babel/preset-modules@^0.1.3": - version "0.1.3" - resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.3.tgz#13242b53b5ef8c883c3cf7dddd55b36ce80fbc72" - integrity sha512-Ra3JXOHBq2xd56xSF7lMKXdjBn3T772Y1Wet3yWnkDly9zHvJki029tAFzvAAK5cf4YV3yoxuP61crYRol6SVg== - 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" - -"@babel/preset-react@^7.9.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.10.4.tgz#92e8a66d816f9911d11d4cc935be67adfc82dbcf" - integrity sha512-BrHp4TgOIy4M19JAfO1LhycVXOPWdDbTRep7eVyatf174Hff+6Uk53sDyajqZPu8W1qXRBiYOfIamek6jA7YVw== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/plugin-transform-react-display-name" "^7.10.4" - "@babel/plugin-transform-react-jsx" "^7.10.4" - "@babel/plugin-transform-react-jsx-development" "^7.10.4" - "@babel/plugin-transform-react-jsx-self" "^7.10.4" - "@babel/plugin-transform-react-jsx-source" "^7.10.4" - "@babel/plugin-transform-react-pure-annotations" "^7.10.4" - -"@babel/preset-typescript@^7.9.0": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.10.4.tgz#7d5d052e52a682480d6e2cc5aa31be61c8c25e36" - integrity sha512-SdYnvGPv+bLlwkF2VkJnaX/ni1sMNetcGI1+nThF1gyv6Ph8Qucc4ZZAjM5yZcE/AKRXIOTZz7eSRDWOEjPyRQ== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/plugin-transform-typescript" "^7.10.4" - -"@babel/runtime@^7.1.2", "@babel/runtime@^7.5.5", "@babel/runtime@^7.8.4", "@babel/runtime@^7.9.2": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.10.4.tgz#a6724f1a6b8d2f6ea5236dbfe58c7d7ea9c5eb99" - integrity sha512-UpTN5yUJr9b4EX2CnGNWIvER7Ab83ibv0pcvvHc4UOdrBI5jb8bj+32cCwPX6xu0mt2daFNjYhoi+X7beH0RSw== - dependencies: - regenerator-runtime "^0.13.4" - -"@babel/template@^7.10.4", "@babel/template@^7.8.6": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.10.4.tgz#3251996c4200ebc71d1a8fc405fba940f36ba278" - integrity sha512-ZCjD27cGJFUB6nmCB1Enki3r+L5kJveX9pq1SvAUKoICy6CZ9yD8xO086YXdYhvNjBdnekm4ZnaP5yC8Cs/1tA== - dependencies: - "@babel/code-frame" "^7.10.4" - "@babel/parser" "^7.10.4" - "@babel/types" "^7.10.4" - -"@babel/traverse@^7.10.4", "@babel/traverse@^7.9.0", "@babel/traverse@^7.9.6": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.10.4.tgz#e642e5395a3b09cc95c8e74a27432b484b697818" - integrity sha512-aSy7p5THgSYm4YyxNGz6jZpXf+Ok40QF3aA2LyIONkDHpAcJzDUqlCKXv6peqYUs2gmic849C/t2HKw2a2K20Q== - dependencies: - "@babel/code-frame" "^7.10.4" - "@babel/generator" "^7.10.4" - "@babel/helper-function-name" "^7.10.4" - "@babel/helper-split-export-declaration" "^7.10.4" - "@babel/parser" "^7.10.4" - "@babel/types" "^7.10.4" - debug "^4.1.0" - globals "^11.1.0" - lodash "^4.17.13" - -"@babel/types@^7.10.4", "@babel/types@^7.4.4", "@babel/types@^7.9.5", "@babel/types@^7.9.6": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.10.4.tgz#369517188352e18219981efd156bfdb199fff1ee" - integrity sha512-UTCFOxC3FsFHb7lkRMVvgLzaRVamXuAs2Tz4wajva4WxtVY82eZeaUBtC2Zt95FU9TiznuC0Zk35tsim8jeVpg== - dependencies: - "@babel/helper-validator-identifier" "^7.10.4" - lodash "^4.17.13" - to-fast-properties "^2.0.0" - -"@csstools/convert-colors@^1.4.0": - version "1.4.0" - resolved "https://registry.yarnpkg.com/@csstools/convert-colors/-/convert-colors-1.4.0.tgz#ad495dc41b12e75d588c6db8b9834f08fa131eb7" - integrity sha512-5a6wqoJV/xEdbRNKVo6I4hO3VjyDq//8q2f9I6PBAvMesJHFauXDorcNCsr9RzvsZnaWi5NYCcfyqP1QeFHFbw== - -"@docusaurus/core@2.0.0-alpha.58": - version "2.0.0-alpha.58" - resolved "https://registry.yarnpkg.com/@docusaurus/core/-/core-2.0.0-alpha.58.tgz#3d9c5540c14c31ac55fc8fa4778e4c4e82fbe993" - integrity sha512-7VW7IQKTxTIeCXxzraLdTqRtYSmEG2ZJDt07z26NjK+17XyNQc0IoJs7M3xhjzaeP0s/CpYe5Yl+pgp6TIXqoA== - dependencies: - "@babel/core" "^7.9.0" - "@babel/plugin-syntax-dynamic-import" "^7.8.3" - "@babel/plugin-transform-runtime" "^7.9.0" - "@babel/preset-env" "^7.9.0" - "@babel/preset-react" "^7.9.4" - "@babel/preset-typescript" "^7.9.0" - "@babel/runtime" "^7.9.2" - "@docusaurus/utils" "^2.0.0-alpha.58" - "@endiliey/static-site-generator-webpack-plugin" "^4.0.0" - "@svgr/webpack" "^5.4.0" - babel-loader "^8.1.0" - babel-plugin-dynamic-import-node "^2.3.0" - cache-loader "^4.1.0" - chalk "^3.0.0" - chokidar "^3.3.0" - commander "^4.0.1" - copy-webpack-plugin "^5.0.5" - core-js "^2.6.5" - css-loader "^3.4.2" - del "^5.1.0" - eta "^1.1.1" - express "^4.17.1" - fs-extra "^8.1.0" - globby "^10.0.1" - html-minifier-terser "^5.0.5" - html-tags "^3.1.0" - html-webpack-plugin "^4.0.4" - import-fresh "^3.2.1" - lodash.has "^4.5.2" - lodash.isplainobject "^4.0.6" - lodash.isstring "^4.0.1" - mini-css-extract-plugin "^0.8.0" - nprogress "^0.2.0" - null-loader "^3.0.0" - optimize-css-assets-webpack-plugin "^5.0.3" - pnp-webpack-plugin "^1.6.4" - portfinder "^1.0.25" - postcss-loader "^3.0.0" - postcss-preset-env "^6.7.0" - react-dev-utils "^10.2.1" - react-helmet "^6.0.0-beta" - react-loadable "^5.5.0" - react-loadable-ssr-addon "^0.2.3" - react-router "^5.1.2" - react-router-config "^5.1.1" - react-router-dom "^5.1.2" - semver "^6.3.0" - shelljs "^0.8.4" - std-env "^2.2.1" - terser-webpack-plugin "^2.3.5" - wait-file "^1.0.5" - webpack "^4.41.2" - webpack-bundle-analyzer "^3.6.1" - webpack-dev-server "^3.11.0" - webpack-merge "^4.2.2" - webpackbar "^4.0.0" - -"@docusaurus/mdx-loader@^2.0.0-alpha.58": - version "2.0.0-alpha.58" - resolved "https://registry.yarnpkg.com/@docusaurus/mdx-loader/-/mdx-loader-2.0.0-alpha.58.tgz#ff38d401261cc6ee1ba8d845a7b636c80a54c8ac" - integrity sha512-g/uqzaoaRkwuPmjOB7/p58vNFLev9yE3FdkVfD19mSHyaMaKAzWGUiJxkaxPFtxCs4mwFWk7tJKSLY+B8MjS2Q== - dependencies: - "@babel/parser" "^7.9.4" - "@babel/traverse" "^7.9.0" - "@mdx-js/mdx" "^1.5.8" - "@mdx-js/react" "^1.5.8" - escape-html "^1.0.3" - fs-extra "^8.1.0" - github-slugger "^1.3.0" - gray-matter "^4.0.2" - loader-utils "^1.2.3" - mdast-util-to-string "^1.1.0" - remark-emoji "^2.1.0" - stringify-object "^3.3.0" - unist-util-visit "^2.0.2" - -"@docusaurus/plugin-content-blog@^2.0.0-alpha.58": - version "2.0.0-alpha.58" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-blog/-/plugin-content-blog-2.0.0-alpha.58.tgz#a3cc381b5080eecc76bc2f1248b1ddd64c049807" - integrity sha512-2Pn15pwPdnmKLAvNd4bk2XclnGtGYCpfAECypm9tBql6W6MShy0qOHH3JGLY8dQIMySsCkuC3jCl26EwXNgARw== - dependencies: - "@docusaurus/mdx-loader" "^2.0.0-alpha.58" - "@docusaurus/utils" "^2.0.0-alpha.58" - feed "^4.1.0" - fs-extra "^8.1.0" - globby "^10.0.1" - loader-utils "^1.2.3" - lodash.kebabcase "^4.1.1" - reading-time "^1.2.0" - remark-admonitions "^1.2.1" - -"@docusaurus/plugin-content-docs@^2.0.0-alpha.58": - version "2.0.0-alpha.58" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-docs/-/plugin-content-docs-2.0.0-alpha.58.tgz#8c73472c81abe18c3a3b4534bf1e88ec7367cf20" - integrity sha512-+PHqften1daJXBxUZTN5pMIRP7NwGU7reO4QX0iy7Qp1Wqs63KPY/nSeM7dtxKCYtU+yWkLogvFlicARVqRU9A== - dependencies: - "@docusaurus/mdx-loader" "^2.0.0-alpha.58" - "@docusaurus/utils" "^2.0.0-alpha.58" - execa "^3.4.0" - fs-extra "^8.1.0" - globby "^10.0.1" - import-fresh "^3.2.1" - loader-utils "^1.2.3" - lodash.flatmap "^4.5.0" - lodash.groupby "^4.6.0" - lodash.pick "^4.4.0" - lodash.pickby "^4.6.0" - remark-admonitions "^1.2.1" - shelljs "^0.8.4" - -"@docusaurus/plugin-content-pages@^2.0.0-alpha.58": - version "2.0.0-alpha.58" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-pages/-/plugin-content-pages-2.0.0-alpha.58.tgz#772cc8a628a602e92388d718bc30599edefe847f" - integrity sha512-4LJn2CB83ZCkM4+0qNQWdm4gA2Og3QzmUfSqYOifTmsVsHuLSAqa5zRkkSSsZ244r+ya4e7nmS7nMd7kfK+v4w== - dependencies: - "@docusaurus/types" "^2.0.0-alpha.58" - "@docusaurus/utils" "^2.0.0-alpha.58" - globby "^10.0.1" - -"@docusaurus/plugin-debug@^2.0.0-alpha.58": - version "2.0.0-alpha.58" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-debug/-/plugin-debug-2.0.0-alpha.58.tgz#f9e799caaff305587b69871eb63a1a2734c54faa" - integrity sha512-w7sEUzuavp5N4TxgJus1TLFwRkypvg9+mRYZN+mgV05WF3ft+aDTToWeYNZq/8FoC1IEwkezOpPpaWtG4UWM7Q== - dependencies: - "@docusaurus/types" "^2.0.0-alpha.58" - "@docusaurus/utils" "^2.0.0-alpha.58" - -"@docusaurus/plugin-google-analytics@^2.0.0-alpha.58": - version "2.0.0-alpha.58" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-2.0.0-alpha.58.tgz#5586f843a518250f9f8ca1178fa77533971bef42" - integrity sha512-R4I8j+XJkOl7fz8+lRnQKr8YP4zrG6dWBNZ66JquUwL6jmaavq1VRVavm7/s5Wr/vYLcpEWjynHViwDdVLegoQ== - -"@docusaurus/plugin-google-gtag@^2.0.0-alpha.58": - version "2.0.0-alpha.58" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-2.0.0-alpha.58.tgz#6c43bd7d23ffb68cf4616041fe2c660d9c9b74ce" - integrity sha512-t+B6K2/EvRofygDK5edeQAg2l069aU7H3sViG/3USpJSaY9bWNWRKjZk6BEOypC+mCW6g5HQgewQZ/bTkV+aDA== - -"@docusaurus/plugin-sitemap@^2.0.0-alpha.58": - version "2.0.0-alpha.58" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-sitemap/-/plugin-sitemap-2.0.0-alpha.58.tgz#5a4134167f8003b0351f80271e49e0fe1daa44ba" - integrity sha512-OS3XZG1S/USyZxSZ4e2pputW3sOl/hxvK+EAs51eOi/fYyVgO4BmFpcsoP17a5d1Cnxf8gumOkS6bLRDaG8KyQ== - dependencies: - "@docusaurus/types" "^2.0.0-alpha.58" - sitemap "^3.2.2" - -"@docusaurus/preset-classic@2.0.0-alpha.58": - version "2.0.0-alpha.58" - resolved "https://registry.yarnpkg.com/@docusaurus/preset-classic/-/preset-classic-2.0.0-alpha.58.tgz#d7a48793aeca5a91bc10a04f9e99f861fea65171" - integrity sha512-XGXC5NcAkRUKpm4aho6moThPtLarGSouWW1xfYMQlT4dY6RG/FFt8n5viMXzGwOfA/H9B/s0sZpqHDw8U4FUCg== - dependencies: - "@docusaurus/plugin-content-blog" "^2.0.0-alpha.58" - "@docusaurus/plugin-content-docs" "^2.0.0-alpha.58" - "@docusaurus/plugin-content-pages" "^2.0.0-alpha.58" - "@docusaurus/plugin-debug" "^2.0.0-alpha.58" - "@docusaurus/plugin-google-analytics" "^2.0.0-alpha.58" - "@docusaurus/plugin-google-gtag" "^2.0.0-alpha.58" - "@docusaurus/plugin-sitemap" "^2.0.0-alpha.58" - "@docusaurus/theme-classic" "^2.0.0-alpha.58" - "@docusaurus/theme-search-algolia" "^2.0.0-alpha.58" - -"@docusaurus/theme-classic@^2.0.0-alpha.58": - version "2.0.0-alpha.58" - resolved "https://registry.yarnpkg.com/@docusaurus/theme-classic/-/theme-classic-2.0.0-alpha.58.tgz#698447fb6a634cdfc8a01f1a71ba4f24005265e4" - integrity sha512-GvpzpsL3jTxm/3sPna7wOJaAauCha+uLZ33x/XOMKrfN02E2BLkaRphRyCliw1vvLXB3rJPlHyvBdKCTOVXaNw== - dependencies: - "@mdx-js/mdx" "^1.5.8" - "@mdx-js/react" "^1.5.8" - clsx "^1.1.1" - copy-text-to-clipboard "^2.2.0" - infima "0.2.0-alpha.12" - parse-numeric-range "^0.0.2" - prism-react-renderer "^1.1.0" - prismjs "^1.20.0" - prop-types "^15.7.2" - react-router-dom "^5.1.2" - react-toggle "^4.1.1" - -"@docusaurus/theme-search-algolia@^2.0.0-alpha.58": - version "2.0.0-alpha.58" - resolved "https://registry.yarnpkg.com/@docusaurus/theme-search-algolia/-/theme-search-algolia-2.0.0-alpha.58.tgz#1686922a208003ca248635f74fe84158084fb4ed" - integrity sha512-Iug5mET733Yx46E04BfJjz4+AvxzalRo8G4ZmOjePTMiKQpE1ee39Ypbwj77c8XxEadOcZC4mJtfxB3L1RqlBA== - dependencies: - algoliasearch "^3.24.5" - algoliasearch-helper "^3.1.1" - clsx "^1.1.1" - docsearch.js "^2.6.3" - eta "^1.1.1" - -"@docusaurus/types@^2.0.0-alpha.58": - version "2.0.0-alpha.58" - resolved "https://registry.yarnpkg.com/@docusaurus/types/-/types-2.0.0-alpha.58.tgz#d7b0264e79549790c42d2781998b437bb573a294" - integrity sha512-OSkxoLwWJMhEHa4s6SXVCjfGwYm21yF6ZggoUo6kz+qqslTgF/JcPCVF9Y1Hf6bJJxUisi+ZHrHKEC6k4pphPA== - dependencies: - "@types/webpack" "^4.41.0" - commander "^4.0.1" - querystring "0.2.0" - -"@docusaurus/utils@^2.0.0-alpha.58": - version "2.0.0-alpha.58" - resolved "https://registry.yarnpkg.com/@docusaurus/utils/-/utils-2.0.0-alpha.58.tgz#9a7a43dcc6b7cb47228e0ca83c777402b5ee8c4a" - integrity sha512-hBhdQCyVT15mH7RE5yuDBuhwbUnM4beKq2JLvRuZS4FoNu7T2S4OGusUAtTnNZEruoUv2QTkt+GrsRDKYi2fCA== - dependencies: - escape-string-regexp "^2.0.0" - fs-extra "^8.1.0" - gray-matter "^4.0.2" - lodash.camelcase "^4.3.0" - lodash.kebabcase "^4.1.1" - -"@endiliey/static-site-generator-webpack-plugin@^4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@endiliey/static-site-generator-webpack-plugin/-/static-site-generator-webpack-plugin-4.0.0.tgz#94bfe58fd83aeda355de797fcb5112adaca3a6b1" - integrity sha512-3MBqYCs30qk1OBRC697NqhGouYbs71D1B8hrk/AFJC6GwF2QaJOQZtA1JYAaGSe650sZ8r5ppRTtCRXepDWlng== - dependencies: - bluebird "^3.7.1" - cheerio "^0.22.0" - eval "^0.1.4" - url "^0.11.0" - webpack-sources "^1.4.3" - -"@hapi/address@2.x.x": - version "2.1.4" - resolved "https://registry.yarnpkg.com/@hapi/address/-/address-2.1.4.tgz#5d67ed43f3fd41a69d4b9ff7b56e7c0d1d0a81e5" - integrity sha512-QD1PhQk+s31P1ixsX0H0Suoupp3VMXzIVMSwobR3F3MSUO2YCV0B7xqLcUw/Bh8yuvd3LhpyqLQWTNcRmp6IdQ== - -"@hapi/bourne@1.x.x": - version "1.3.2" - resolved "https://registry.yarnpkg.com/@hapi/bourne/-/bourne-1.3.2.tgz#0a7095adea067243ce3283e1b56b8a8f453b242a" - integrity sha512-1dVNHT76Uu5N3eJNTYcvxee+jzX4Z9lfciqRRHCU27ihbUcYi+iSc2iml5Ke1LXe1SyJCLA0+14Jh4tXJgOppA== - -"@hapi/hoek@8.x.x", "@hapi/hoek@^8.3.0": - version "8.5.1" - resolved "https://registry.yarnpkg.com/@hapi/hoek/-/hoek-8.5.1.tgz#fde96064ca446dec8c55a8c2f130957b070c6e06" - integrity sha512-yN7kbciD87WzLGc5539Tn0sApjyiGHAJgKvG9W8C7O+6c7qmoQMfVs0W4bX17eqz6C78QJqqFrtgdK5EWf6Qow== - -"@hapi/joi@^15.1.0": - version "15.1.1" - resolved "https://registry.yarnpkg.com/@hapi/joi/-/joi-15.1.1.tgz#c675b8a71296f02833f8d6d243b34c57b8ce19d7" - integrity sha512-entf8ZMOK8sc+8YfeOlM8pCfg3b5+WZIKBfUaaJT8UsjAAPjartzxIYm3TIbjvA4u+u++KbcXD38k682nVHDAQ== - dependencies: - "@hapi/address" "2.x.x" - "@hapi/bourne" "1.x.x" - "@hapi/hoek" "8.x.x" - "@hapi/topo" "3.x.x" - -"@hapi/topo@3.x.x": - version "3.1.6" - resolved "https://registry.yarnpkg.com/@hapi/topo/-/topo-3.1.6.tgz#68d935fa3eae7fdd5ab0d7f953f3205d8b2bfc29" - integrity sha512-tAag0jEcjwH+P2quUfipd7liWCNX2F8NvYjQp2wtInsZxnMlypdw0FtAOLxtvvkO+GSRRbmNi8m/5y42PQJYCQ== - dependencies: - "@hapi/hoek" "^8.3.0" - -"@mdx-js/mdx@^1.5.8": - version "1.6.6" - resolved "https://registry.yarnpkg.com/@mdx-js/mdx/-/mdx-1.6.6.tgz#6e235f0ca47c8652f4c744cf7bc46a1015bcaeaa" - integrity sha512-Q1j/RtjNbRZRC/ciaOqQLplsJ9lb0jJhDSvkusmzCsCX+NZH7YTUvccWf7l6zKW1CAiofJfqZdZtXkeJUDZiMw== - dependencies: - "@babel/core" "7.9.6" - "@babel/plugin-syntax-jsx" "7.8.3" - "@babel/plugin-syntax-object-rest-spread" "7.8.3" - "@mdx-js/util" "^1.6.6" - babel-plugin-apply-mdx-type-prop "^1.6.6" - babel-plugin-extract-import-names "^1.6.6" - camelcase-css "2.0.1" - detab "2.0.3" - hast-util-raw "5.0.2" - lodash.uniq "4.5.0" - mdast-util-to-hast "9.1.0" - remark-footnotes "1.0.0" - remark-mdx "^1.6.6" - remark-parse "8.0.2" - remark-squeeze-paragraphs "4.0.0" - style-to-object "0.3.0" - unified "9.0.0" - unist-builder "2.0.3" - unist-util-visit "2.0.2" - -"@mdx-js/react@^1.5.8": - version "1.6.6" - resolved "https://registry.yarnpkg.com/@mdx-js/react/-/react-1.6.6.tgz#71ece2a24261eed0e184c0ef9814fcb77b1a4aee" - integrity sha512-zOOdNreHUNSFQ0dg3wYYg9sOGg2csf7Sk8JGBigeBq+4Xk4LO0QdycGAmgKNfeme+SyBV5LBIPjt1NNsScyWEQ== - -"@mdx-js/util@^1.6.6": - version "1.6.6" - resolved "https://registry.yarnpkg.com/@mdx-js/util/-/util-1.6.6.tgz#9c70eb7e7e4abc1083c8edf7151d35a19e442c00" - integrity sha512-PKTHVgMHnK5p+kcMWWNnZuoR7O19VmHiOujmVcyN50hya7qIdDb5vvsYC+dwLxApEXiABhLozq0dlIwFeS3yjg== - -"@mrmlnc/readdir-enhanced@^2.2.1": - version "2.2.1" - resolved "https://registry.yarnpkg.com/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz#524af240d1a360527b730475ecfa1344aa540dde" - integrity sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g== - dependencies: - call-me-maybe "^1.0.1" - glob-to-regexp "^0.3.0" - -"@nodelib/fs.scandir@2.1.3": - version "2.1.3" - resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz#3a582bdb53804c6ba6d146579c46e52130cf4a3b" - integrity sha512-eGmwYQn3gxo4r7jdQnkrrN6bY478C3P+a/y72IJukF8LjB6ZHeB3c+Ehacj3sYeSmUXGlnA67/PmbM9CVwL7Dw== - dependencies: - "@nodelib/fs.stat" "2.0.3" - run-parallel "^1.1.9" - -"@nodelib/fs.stat@2.0.3", "@nodelib/fs.stat@^2.0.2": - version "2.0.3" - resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.3.tgz#34dc5f4cabbc720f4e60f75a747e7ecd6c175bd3" - integrity sha512-bQBFruR2TAwoevBEd/NWMoAAtNGzTRgdrqnYCc7dhzfoNvqPzLyqlEQnzZ3kVnNrSp25iyxE00/3h2fqGAGArA== - -"@nodelib/fs.stat@^1.1.2": - version "1.1.3" - resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz#2b5a3ab3f918cca48a8c754c08168e3f03eba61b" - integrity sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw== - -"@nodelib/fs.walk@^1.2.3": - version "1.2.4" - resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.4.tgz#011b9202a70a6366e436ca5c065844528ab04976" - integrity sha512-1V9XOY4rDW0rehzbrcqAmHnz8e7SKvX27gh8Gt2WgB0+pdzdiLV83p72kZPU+jvMbS1qU5mauP2iOvO8rhmurQ== - dependencies: - "@nodelib/fs.scandir" "2.1.3" - fastq "^1.6.0" - -"@svgr/babel-plugin-add-jsx-attribute@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-5.4.0.tgz#81ef61947bb268eb9d50523446f9c638fb355906" - integrity sha512-ZFf2gs/8/6B8PnSofI0inYXr2SDNTDScPXhN7k5EqD4aZ3gi6u+rbmZHVB8IM3wDyx8ntKACZbtXSm7oZGRqVg== - -"@svgr/babel-plugin-remove-jsx-attribute@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-5.4.0.tgz#6b2c770c95c874654fd5e1d5ef475b78a0a962ef" - integrity sha512-yaS4o2PgUtwLFGTKbsiAy6D0o3ugcUhWK0Z45umJ66EPWunAz9fuFw2gJuje6wqQvQWOTJvIahUwndOXb7QCPg== - -"@svgr/babel-plugin-remove-jsx-empty-expression@^5.0.1": - version "5.0.1" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-5.0.1.tgz#25621a8915ed7ad70da6cea3d0a6dbc2ea933efd" - integrity sha512-LA72+88A11ND/yFIMzyuLRSMJ+tRKeYKeQ+mR3DcAZ5I4h5CPWN9AHyUzJbWSYp/u2u0xhmgOe0+E41+GjEueA== - -"@svgr/babel-plugin-replace-jsx-attribute-value@^5.0.1": - version "5.0.1" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-5.0.1.tgz#0b221fc57f9fcd10e91fe219e2cd0dd03145a897" - integrity sha512-PoiE6ZD2Eiy5mK+fjHqwGOS+IXX0wq/YDtNyIgOrc6ejFnxN4b13pRpiIPbtPwHEc+NT2KCjteAcq33/F1Y9KQ== - -"@svgr/babel-plugin-svg-dynamic-title@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-5.4.0.tgz#139b546dd0c3186b6e5db4fefc26cb0baea729d7" - integrity sha512-zSOZH8PdZOpuG1ZVx/cLVePB2ibo3WPpqo7gFIjLV9a0QsuQAzJiwwqmuEdTaW2pegyBE17Uu15mOgOcgabQZg== - -"@svgr/babel-plugin-svg-em-dimensions@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-5.4.0.tgz#6543f69526632a133ce5cabab965deeaea2234a0" - integrity sha512-cPzDbDA5oT/sPXDCUYoVXEmm3VIoAWAPT6mSPTJNbQaBNUuEKVKyGH93oDY4e42PYHRW67N5alJx/eEol20abw== - -"@svgr/babel-plugin-transform-react-native-svg@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-5.4.0.tgz#00bf9a7a73f1cad3948cdab1f8dfb774750f8c80" - integrity sha512-3eYP/SaopZ41GHwXma7Rmxcv9uRslRDTY1estspeB1w1ueZWd/tPlMfEOoccYpEMZU3jD4OU7YitnXcF5hLW2Q== - -"@svgr/babel-plugin-transform-svg-component@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-5.4.0.tgz#a2212b4d018e6075a058bb7e220a66959ef7a03c" - integrity sha512-zLl4Fl3NvKxxjWNkqEcpdSOpQ3LGVH2BNFQ6vjaK6sFo2IrSznrhURIPI0HAphKiiIwNYjAfE0TNoQDSZv0U9A== - -"@svgr/babel-preset@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-preset/-/babel-preset-5.4.0.tgz#da21854643e1c4ad2279239baa7d5a8b128c1f15" - integrity sha512-Gyx7cCxua04DBtyILTYdQxeO/pwfTBev6+eXTbVbxe4HTGhOUW6yo7PSbG2p6eJMl44j6XSequ0ZDP7bl0nu9A== - dependencies: - "@svgr/babel-plugin-add-jsx-attribute" "^5.4.0" - "@svgr/babel-plugin-remove-jsx-attribute" "^5.4.0" - "@svgr/babel-plugin-remove-jsx-empty-expression" "^5.0.1" - "@svgr/babel-plugin-replace-jsx-attribute-value" "^5.0.1" - "@svgr/babel-plugin-svg-dynamic-title" "^5.4.0" - "@svgr/babel-plugin-svg-em-dimensions" "^5.4.0" - "@svgr/babel-plugin-transform-react-native-svg" "^5.4.0" - "@svgr/babel-plugin-transform-svg-component" "^5.4.0" - -"@svgr/core@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@svgr/core/-/core-5.4.0.tgz#655378ee43679eb94fee3d4e1976e38252dff8e7" - integrity sha512-hWGm1DCCvd4IEn7VgDUHYiC597lUYhFau2lwJBYpQWDirYLkX4OsXu9IslPgJ9UpP7wsw3n2Ffv9sW7SXJVfqQ== - dependencies: - "@svgr/plugin-jsx" "^5.4.0" - camelcase "^6.0.0" - cosmiconfig "^6.0.0" - -"@svgr/hast-util-to-babel-ast@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-5.4.0.tgz#bb5d002e428f510aa5b53ec0a02377a95b367715" - integrity sha512-+U0TZZpPsP2V1WvVhqAOSTk+N+CjYHdZx+x9UBa1eeeZDXwH8pt0CrQf2+SvRl/h2CAPRFkm+Ey96+jKP8Bsgg== - dependencies: - "@babel/types" "^7.9.5" - -"@svgr/plugin-jsx@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@svgr/plugin-jsx/-/plugin-jsx-5.4.0.tgz#ab47504c55615833c6db70fca2d7e489f509787c" - integrity sha512-SGzO4JZQ2HvGRKDzRga9YFSqOqaNrgLlQVaGvpZ2Iht2gwRp/tq+18Pvv9kS9ZqOMYgyix2LLxZMY1LOe9NPqw== - dependencies: - "@babel/core" "^7.7.5" - "@svgr/babel-preset" "^5.4.0" - "@svgr/hast-util-to-babel-ast" "^5.4.0" - svg-parser "^2.0.2" - -"@svgr/plugin-svgo@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@svgr/plugin-svgo/-/plugin-svgo-5.4.0.tgz#45d9800b7099a6f7b4d85ebac89ab9abe8592f64" - integrity sha512-3Cgv3aYi1l6SHyzArV9C36yo4kgwVdF3zPQUC6/aCDUeXAofDYwE5kk3e3oT5ZO2a0N3lB+lLGvipBG6lnG8EA== - dependencies: - cosmiconfig "^6.0.0" - merge-deep "^3.0.2" - svgo "^1.2.2" - -"@svgr/webpack@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@svgr/webpack/-/webpack-5.4.0.tgz#b68bc86e29cf007292b96ced65f80971175632e0" - integrity sha512-LjepnS/BSAvelnOnnzr6Gg0GcpLmnZ9ThGFK5WJtm1xOqdBE/1IACZU7MMdVzjyUkfFqGz87eRE4hFaSLiUwYg== - dependencies: - "@babel/core" "^7.9.0" - "@babel/plugin-transform-react-constant-elements" "^7.9.0" - "@babel/preset-env" "^7.9.5" - "@babel/preset-react" "^7.9.4" - "@svgr/core" "^5.4.0" - "@svgr/plugin-jsx" "^5.4.0" - "@svgr/plugin-svgo" "^5.4.0" - loader-utils "^2.0.0" - -"@types/anymatch@*": - version "1.3.1" - resolved "https://registry.yarnpkg.com/@types/anymatch/-/anymatch-1.3.1.tgz#336badc1beecb9dacc38bea2cf32adf627a8421a" - integrity sha512-/+CRPXpBDpo2RK9C68N3b2cOvO0Cf5B9aPijHsoDQTHivnGSObdOF2BRQOYjojWTDy6nQvMjmqRXIxH55VjxxA== - -"@types/color-name@^1.1.1": - version "1.1.1" - resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0" - integrity sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ== - -"@types/glob@^7.1.1": - version "7.1.3" - resolved "https://registry.yarnpkg.com/@types/glob/-/glob-7.1.3.tgz#e6ba80f36b7daad2c685acd9266382e68985c183" - integrity sha512-SEYeGAIQIQX8NN6LDKprLjbrd5dARM5EXsd8GI/A5l0apYI1fGMWgPHSe4ZKL4eozlAyI+doUE9XbYS4xCkQ1w== - dependencies: - "@types/minimatch" "*" - "@types/node" "*" - -"@types/html-minifier-terser@^5.0.0": - version "5.1.0" - resolved "https://registry.yarnpkg.com/@types/html-minifier-terser/-/html-minifier-terser-5.1.0.tgz#551a4589b6ee2cc9c1dff08056128aec29b94880" - integrity sha512-iYCgjm1dGPRuo12+BStjd1HiVQqhlRhWDOQigNxn023HcjnhsiFz9pc6CzJj4HwDCSQca9bxTL4PxJDbkdm3PA== - -"@types/json-schema@^7.0.4": - version "7.0.5" - resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.5.tgz#dcce4430e64b443ba8945f0290fb564ad5bac6dd" - integrity sha512-7+2BITlgjgDhH0vvwZU/HZJVyk+2XUlvxXe8dFMedNX/aMkaOq++rMAFXc0tM7ij15QaWlbdQASBR9dihi+bDQ== - -"@types/mdast@^3.0.0": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-3.0.3.tgz#2d7d671b1cd1ea3deb306ea75036c2a0407d2deb" - integrity sha512-SXPBMnFVQg1s00dlMCc/jCdvPqdE4mXaMMCeRlxLDmTAEoegHT53xKtkDnzDTOcmMHUfcjyf36/YYZ6SxRdnsw== - dependencies: - "@types/unist" "*" - -"@types/minimatch@*": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.3.tgz#3dca0e3f33b200fc7d1139c0cd96c1268cadfd9d" - integrity sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA== - -"@types/node@*": - version "14.0.22" - resolved "https://registry.yarnpkg.com/@types/node/-/node-14.0.22.tgz#23ea4d88189cec7d58f9e6b66f786b215eb61bdc" - integrity sha512-emeGcJvdiZ4Z3ohbmw93E/64jRzUHAItSHt8nF7M4TGgQTiWqFVGB8KNpLGFmUHmHLvjvBgFwVlqNcq+VuGv9g== - -"@types/parse-json@^4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" - integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== - -"@types/q@^1.5.1": - version "1.5.4" - resolved "https://registry.yarnpkg.com/@types/q/-/q-1.5.4.tgz#15925414e0ad2cd765bfef58842f7e26a7accb24" - integrity sha512-1HcDas8SEj4z1Wc696tH56G8OlRaH/sqZOynNNB+HF0WOeXPaxTtbYzJY2oEfiUxjSKjhCKr+MvR7dCHcEelug== - -"@types/source-list-map@*": - version "0.1.2" - resolved "https://registry.yarnpkg.com/@types/source-list-map/-/source-list-map-0.1.2.tgz#0078836063ffaf17412349bba364087e0ac02ec9" - integrity sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA== - -"@types/tapable@*", "@types/tapable@^1.0.5": - version "1.0.6" - resolved "https://registry.yarnpkg.com/@types/tapable/-/tapable-1.0.6.tgz#a9ca4b70a18b270ccb2bc0aaafefd1d486b7ea74" - integrity sha512-W+bw9ds02rAQaMvaLYxAbJ6cvguW/iJXNT6lTssS1ps6QdrMKttqEAMEG/b5CR8TZl3/L7/lH0ZV5nNR1LXikA== - -"@types/uglify-js@*": - version "3.9.3" - resolved "https://registry.yarnpkg.com/@types/uglify-js/-/uglify-js-3.9.3.tgz#d94ed608e295bc5424c9600e6b8565407b6b4b6b" - integrity sha512-KswB5C7Kwduwjj04Ykz+AjvPcfgv/37Za24O2EDzYNbwyzOo8+ydtvzUfZ5UMguiVu29Gx44l1A6VsPPcmYu9w== - dependencies: - source-map "^0.6.1" - -"@types/unist@*", "@types/unist@^2.0.0", "@types/unist@^2.0.2", "@types/unist@^2.0.3": - version "2.0.3" - resolved "https://registry.yarnpkg.com/@types/unist/-/unist-2.0.3.tgz#9c088679876f374eb5983f150d4787aa6fb32d7e" - integrity sha512-FvUupuM3rlRsRtCN+fDudtmytGO6iHJuuRKS1Ss0pG5z8oX0diNEw94UEL7hgDbpN94rgaK5R7sWm6RrSkZuAQ== - -"@types/webpack-sources@*": - version "1.4.0" - resolved "https://registry.yarnpkg.com/@types/webpack-sources/-/webpack-sources-1.4.0.tgz#e58f1f05f87d39a5c64cf85705bdbdbb94d4d57e" - integrity sha512-c88dKrpSle9BtTqR6ifdaxu1Lvjsl3C5OsfvuUbUwdXymshv1TkufUAXBajCCUM/f/TmnkZC/Esb03MinzSiXQ== - dependencies: - "@types/node" "*" - "@types/source-list-map" "*" - source-map "^0.7.3" - -"@types/webpack@^4.41.0", "@types/webpack@^4.41.8": - version "4.41.21" - resolved "https://registry.yarnpkg.com/@types/webpack/-/webpack-4.41.21.tgz#cc685b332c33f153bb2f5fc1fa3ac8adeb592dee" - integrity sha512-2j9WVnNrr/8PLAB5csW44xzQSJwS26aOnICsP3pSGCEdsu6KYtfQ6QJsVUKHWRnm1bL7HziJsfh5fHqth87yKA== - dependencies: - "@types/anymatch" "*" - "@types/node" "*" - "@types/tapable" "*" - "@types/uglify-js" "*" - "@types/webpack-sources" "*" - source-map "^0.6.0" - -"@webassemblyjs/ast@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.9.0.tgz#bd850604b4042459a5a41cd7d338cbed695ed964" - integrity sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA== - dependencies: - "@webassemblyjs/helper-module-context" "1.9.0" - "@webassemblyjs/helper-wasm-bytecode" "1.9.0" - "@webassemblyjs/wast-parser" "1.9.0" - -"@webassemblyjs/floating-point-hex-parser@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz#3c3d3b271bddfc84deb00f71344438311d52ffb4" - integrity sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA== - -"@webassemblyjs/helper-api-error@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz#203f676e333b96c9da2eeab3ccef33c45928b6a2" - integrity sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw== - -"@webassemblyjs/helper-buffer@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz#a1442d269c5feb23fcbc9ef759dac3547f29de00" - integrity sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA== - -"@webassemblyjs/helper-code-frame@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz#647f8892cd2043a82ac0c8c5e75c36f1d9159f27" - integrity sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA== - dependencies: - "@webassemblyjs/wast-printer" "1.9.0" - -"@webassemblyjs/helper-fsm@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz#c05256b71244214671f4b08ec108ad63b70eddb8" - integrity sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw== - -"@webassemblyjs/helper-module-context@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz#25d8884b76839871a08a6c6f806c3979ef712f07" - integrity sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g== - dependencies: - "@webassemblyjs/ast" "1.9.0" - -"@webassemblyjs/helper-wasm-bytecode@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz#4fed8beac9b8c14f8c58b70d124d549dd1fe5790" - integrity sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw== - -"@webassemblyjs/helper-wasm-section@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz#5a4138d5a6292ba18b04c5ae49717e4167965346" - integrity sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/helper-buffer" "1.9.0" - "@webassemblyjs/helper-wasm-bytecode" "1.9.0" - "@webassemblyjs/wasm-gen" "1.9.0" - -"@webassemblyjs/ieee754@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz#15c7a0fbaae83fb26143bbacf6d6df1702ad39e4" - integrity sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg== - dependencies: - "@xtuc/ieee754" "^1.2.0" - -"@webassemblyjs/leb128@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.9.0.tgz#f19ca0b76a6dc55623a09cffa769e838fa1e1c95" - integrity sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw== - dependencies: - "@xtuc/long" "4.2.2" - -"@webassemblyjs/utf8@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.9.0.tgz#04d33b636f78e6a6813227e82402f7637b6229ab" - integrity sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w== - -"@webassemblyjs/wasm-edit@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz#3fe6d79d3f0f922183aa86002c42dd256cfee9cf" - integrity sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/helper-buffer" "1.9.0" - "@webassemblyjs/helper-wasm-bytecode" "1.9.0" - "@webassemblyjs/helper-wasm-section" "1.9.0" - "@webassemblyjs/wasm-gen" "1.9.0" - "@webassemblyjs/wasm-opt" "1.9.0" - "@webassemblyjs/wasm-parser" "1.9.0" - "@webassemblyjs/wast-printer" "1.9.0" - -"@webassemblyjs/wasm-gen@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz#50bc70ec68ded8e2763b01a1418bf43491a7a49c" - integrity sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/helper-wasm-bytecode" "1.9.0" - "@webassemblyjs/ieee754" "1.9.0" - "@webassemblyjs/leb128" "1.9.0" - "@webassemblyjs/utf8" "1.9.0" - -"@webassemblyjs/wasm-opt@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz#2211181e5b31326443cc8112eb9f0b9028721a61" - integrity sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/helper-buffer" "1.9.0" - "@webassemblyjs/wasm-gen" "1.9.0" - "@webassemblyjs/wasm-parser" "1.9.0" - -"@webassemblyjs/wasm-parser@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz#9d48e44826df4a6598294aa6c87469d642fff65e" - integrity sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/helper-api-error" "1.9.0" - "@webassemblyjs/helper-wasm-bytecode" "1.9.0" - "@webassemblyjs/ieee754" "1.9.0" - "@webassemblyjs/leb128" "1.9.0" - "@webassemblyjs/utf8" "1.9.0" - -"@webassemblyjs/wast-parser@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz#3031115d79ac5bd261556cecc3fa90a3ef451914" - integrity sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/floating-point-hex-parser" "1.9.0" - "@webassemblyjs/helper-api-error" "1.9.0" - "@webassemblyjs/helper-code-frame" "1.9.0" - "@webassemblyjs/helper-fsm" "1.9.0" - "@xtuc/long" "4.2.2" - -"@webassemblyjs/wast-printer@1.9.0": - version "1.9.0" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz#4935d54c85fef637b00ce9f52377451d00d47899" - integrity sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/wast-parser" "1.9.0" - "@xtuc/long" "4.2.2" - -"@xtuc/ieee754@^1.2.0": - version "1.2.0" - resolved "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790" - integrity sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA== - -"@xtuc/long@4.2.2": - version "4.2.2" - resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d" - integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ== - -abbrev@1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" - integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== - -accepts@~1.3.4, accepts@~1.3.5, accepts@~1.3.7: - version "1.3.7" - resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.7.tgz#531bc726517a3b2b41f850021c6cc15eaab507cd" - integrity sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA== - dependencies: - mime-types "~2.1.24" - negotiator "0.6.2" - -acorn-walk@^7.1.1: - version "7.2.0" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" - integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== - -acorn@^6.4.1: - version "6.4.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.1.tgz#531e58ba3f51b9dacb9a6646ca4debf5b14ca474" - integrity sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA== - -acorn@^7.1.1: - version "7.3.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.3.1.tgz#85010754db53c3fbaf3b9ea3e083aa5c5d147ffd" - integrity sha512-tLc0wSnatxAQHVHUapaHdz72pi9KUyHjq5KyHjGg9Y8Ifdc79pTh2XvI6I1/chZbnM7QtNKzh66ooDogPZSleA== - -address@1.1.2, address@^1.0.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/address/-/address-1.1.2.tgz#bf1116c9c758c51b7a933d296b72c221ed9428b6" - integrity sha512-aT6camzM4xEA54YVJYSqxz1kv4IHnQZRtThJJHhUMRExaU5spC7jX5ugSwTaTgJliIgs4VhZOk7htClvQ/LmRA== - -agentkeepalive@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/agentkeepalive/-/agentkeepalive-2.2.0.tgz#c5d1bd4b129008f1163f236f86e5faea2026e2ef" - integrity sha1-xdG9SxKQCPEWPyNvhuX66iAm4u8= - -aggregate-error@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.0.1.tgz#db2fe7246e536f40d9b5442a39e117d7dd6a24e0" - integrity sha512-quoaXsZ9/BLNae5yiNoUz+Nhkwz83GhWwtYFglcjEQB2NDHCIpApbqXxIFnm4Pq/Nvhrsq5sYJFyohrrxnTGAA== - dependencies: - clean-stack "^2.0.0" - indent-string "^4.0.0" - -ajv-errors@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d" - integrity sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ== - -ajv-keywords@^3.1.0, ajv-keywords@^3.4.1: - version "3.5.1" - resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.1.tgz#b83ca89c5d42d69031f424cad49aada0236c6957" - integrity sha512-KWcq3xN8fDjSB+IMoh2VaXVhRI0BBGxoYp3rx7Pkb6z0cFjYR9Q9l4yZqqals0/zsioCmocC5H6UvsGD4MoIBA== - -ajv@^6.1.0, ajv@^6.10.2, ajv@^6.12.2, ajv@^6.5.5: - version "6.12.3" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.3.tgz#18c5af38a111ddeb4f2697bd78d68abc1cabd706" - integrity sha512-4K0cK3L1hsqk9xIb2z9vs/XU+PGJZ9PNpJRDS9YLzmNdX6jmVPfamLvTJr0aDAusnHyCHO6MjzlkAsgtqp9teA== - 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" - -algoliasearch-helper@^3.1.1: - version "3.1.2" - resolved "https://registry.yarnpkg.com/algoliasearch-helper/-/algoliasearch-helper-3.1.2.tgz#f01cfed1ff3e4848ae9dc1ece31a4e7cbf65eeea" - integrity sha512-HfCVvmKH6+5OU9/SaHLdhvr39DBObA02z62RsfPhFDftzgQM6pJB2JoPyGpIteHW4RAYh8bPLiB8l4hajuy6fA== - dependencies: - events "^1.1.1" - -algoliasearch@^3.24.5: - version "3.35.1" - resolved "https://registry.yarnpkg.com/algoliasearch/-/algoliasearch-3.35.1.tgz#297d15f534a3507cab2f5dfb996019cac7568f0c" - integrity sha512-K4yKVhaHkXfJ/xcUnil04xiSrB8B8yHZoFEhWNpXg23eiCnqvTZw1tn/SqvdsANlYHLJlKl0qi3I/Q2Sqo7LwQ== - dependencies: - agentkeepalive "^2.2.0" - debug "^2.6.9" - envify "^4.0.0" - es6-promise "^4.1.0" - events "^1.1.0" - foreach "^2.0.5" - global "^4.3.2" - inherits "^2.0.1" - isarray "^2.0.1" - load-script "^1.0.0" - object-keys "^1.0.11" - querystring-es3 "^0.2.1" - reduce "^1.0.1" - semver "^5.1.0" - tunnel-agent "^0.6.0" - -alphanum-sort@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" - integrity sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM= - -ansi-colors@^3.0.0: - version "3.2.4" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.4.tgz#e3a3da4bfbae6c86a9c285625de124a234026fbf" - integrity sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA== - -ansi-escapes@^4.2.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.1.tgz#a5c47cc43181f1f38ffd7076837700d395522a61" - integrity sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA== - dependencies: - type-fest "^0.11.0" - -ansi-html@0.0.7: - version "0.0.7" - resolved "https://registry.yarnpkg.com/ansi-html/-/ansi-html-0.0.7.tgz#813584021962a9e9e6fd039f940d12f56ca7859e" - integrity sha1-gTWEAhliqenm/QOflA0S9WynhZ4= - -ansi-regex@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" - integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= - -ansi-regex@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" - integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== - -ansi-regex@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75" - integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg== - -ansi-styles@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" - integrity sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4= - -ansi-styles@^3.2.0, ansi-styles@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" - integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== - dependencies: - color-convert "^1.9.0" - -ansi-styles@^4.0.0, ansi-styles@^4.1.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.2.1.tgz#90ae75c424d008d2624c5bf29ead3177ebfcf359" - integrity sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA== - dependencies: - "@types/color-name" "^1.1.1" - color-convert "^2.0.1" - -anymatch@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" - integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw== - dependencies: - micromatch "^3.1.4" - normalize-path "^2.1.1" - -anymatch@~3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.1.tgz#c55ecf02185e2469259399310c173ce31233b142" - integrity sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg== - dependencies: - normalize-path "^3.0.0" - picomatch "^2.0.4" - -aproba@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" - integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== - -arg@^4.1.0: - version "4.1.3" - resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089" - integrity sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA== - -argparse@^1.0.7: - version "1.0.10" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" - integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== - dependencies: - sprintf-js "~1.0.2" - -arr-diff@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" - integrity sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA= - -arr-flatten@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" - integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== - -arr-union@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" - integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ= - -array-flatten@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" - integrity sha1-ml9pkFGx5wczKPKgCJaLZOopVdI= - -array-flatten@^2.1.0: - version "2.1.2" - resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-2.1.2.tgz#24ef80a28c1a893617e2149b0c6d0d788293b099" - integrity sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ== - -array-union@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" - integrity sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk= - dependencies: - array-uniq "^1.0.1" - -array-union@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" - integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== - -array-uniq@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" - integrity sha1-r2rId6Jcx/dOBYiUdThY39sk/bY= - -array-unique@^0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" - integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= - -arrify@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" - integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= - -asn1.js@^4.0.0: - version "4.10.1" - resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.10.1.tgz#b9c2bf5805f1e64aadeed6df3a2bfafb5a73f5a0" - integrity sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw== - dependencies: - bn.js "^4.0.0" - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - -asn1@~0.2.3: - version "0.2.4" - resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.4.tgz#8d2475dfab553bb33e77b54e59e880bb8ce23136" - integrity sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg== - dependencies: - safer-buffer "~2.1.0" - -assert-plus@1.0.0, assert-plus@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" - integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= - -assert@^1.1.1: - version "1.5.0" - resolved "https://registry.yarnpkg.com/assert/-/assert-1.5.0.tgz#55c109aaf6e0aefdb3dc4b71240c70bf574b18eb" - integrity sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA== - dependencies: - object-assign "^4.1.1" - util "0.10.3" - -assign-symbols@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" - integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c= - -async-each@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.3.tgz#b727dbf87d7651602f06f4d4ac387f47d91b0cbf" - integrity sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ== - -async-limiter@~1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.1.tgz#dd379e94f0db8310b08291f9d64c3209766617fd" - integrity sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ== - -async@^2.6.2: - version "2.6.3" - resolved "https://registry.yarnpkg.com/async/-/async-2.6.3.tgz#d72625e2344a3656e3a3ad4fa749fa83299d82ff" - integrity sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg== - dependencies: - lodash "^4.17.14" - -asynckit@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" - integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= - -at-least-node@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2" - integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg== - -atob@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" - integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== - -autocomplete.js@0.36.0: - version "0.36.0" - resolved "https://registry.yarnpkg.com/autocomplete.js/-/autocomplete.js-0.36.0.tgz#94fe775fe64b6cd42e622d076dc7fd26bedd837b" - integrity sha512-jEwUXnVMeCHHutUt10i/8ZiRaCb0Wo+ZyKxeGsYwBDtw6EJHqEeDrq4UwZRD8YBSvp3g6klP678il2eeiVXN2Q== - dependencies: - immediate "^3.2.3" - -autoprefixer@^9.6.1: - version "9.8.5" - resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.8.5.tgz#2c225de229ddafe1d1424c02791d0c3e10ccccaa" - integrity sha512-C2p5KkumJlsTHoNv9w31NrBRgXhf6eCMteJuHZi2xhkgC+5Vm40MEtCKPhc0qdgAOhox0YPy1SQHTAky05UoKg== - dependencies: - browserslist "^4.12.0" - caniuse-lite "^1.0.30001097" - colorette "^1.2.0" - normalize-range "^0.1.2" - num2fraction "^1.2.2" - postcss "^7.0.32" - postcss-value-parser "^4.1.0" - -aws-sign2@~0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" - integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= - -aws4@^1.8.0: - version "1.10.0" - resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.10.0.tgz#a17b3a8ea811060e74d47d306122400ad4497ae2" - integrity sha512-3YDiu347mtVtjpyV3u5kVqQLP242c06zwDOgpeRnybmXlYYsLbtTrUBUm8i8srONt+FWobl5aibnU1030PeeuA== - -babel-code-frame@^6.22.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" - integrity sha1-Y/1D99weO7fONZR9uP42mj9Yx0s= - dependencies: - chalk "^1.1.3" - esutils "^2.0.2" - js-tokens "^3.0.2" - -babel-loader@^8.1.0: - version "8.1.0" - resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.1.0.tgz#c611d5112bd5209abe8b9fa84c3e4da25275f1c3" - integrity sha512-7q7nC1tYOrqvUrN3LQK4GwSk/TQorZSOlO9C+RZDZpODgyN4ZlCqE5q9cDsyWOliN+aU9B4JX01xK9eJXowJLw== - dependencies: - find-cache-dir "^2.1.0" - loader-utils "^1.4.0" - mkdirp "^0.5.3" - pify "^4.0.1" - schema-utils "^2.6.5" - -babel-plugin-apply-mdx-type-prop@^1.6.6: - version "1.6.6" - resolved "https://registry.yarnpkg.com/babel-plugin-apply-mdx-type-prop/-/babel-plugin-apply-mdx-type-prop-1.6.6.tgz#f72d7ff9f40620c51280a1acb4964c55bc07ba02" - integrity sha512-rUzVvkQa8/9M63OZT6qQQ1bS8P0ozhXp9e5uJ3RwRJF5Me7s4nZK5SYhyNHYc0BkAflWnCOGMP3oPQUfuyB8tg== - dependencies: - "@babel/helper-plugin-utils" "7.8.3" - "@mdx-js/util" "^1.6.6" - -babel-plugin-dynamic-import-node@^2.3.0, babel-plugin-dynamic-import-node@^2.3.3: - version "2.3.3" - resolved "https://registry.yarnpkg.com/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz#84fda19c976ec5c6defef57f9427b3def66e17a3" - integrity sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ== - dependencies: - object.assign "^4.1.0" - -babel-plugin-extract-import-names@^1.6.6: - version "1.6.6" - resolved "https://registry.yarnpkg.com/babel-plugin-extract-import-names/-/babel-plugin-extract-import-names-1.6.6.tgz#70e39a46f1b2a08fbd061336a322d1ddd81a2f44" - integrity sha512-UtMuiQJnhVPAGE2+pDe7Nc9NVEmDdqGTN74BtRALgH+7oag88RpxFLOSiA+u5mFkFg741wW9Ut5KiyJpksEj/g== - dependencies: - "@babel/helper-plugin-utils" "7.8.3" - -bail@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/bail/-/bail-1.0.5.tgz#b6fa133404a392cbc1f8c4bf63f5953351e7a776" - integrity sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ== - -balanced-match@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" - integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= - -base64-js@^1.0.2: - version "1.3.1" - resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.1.tgz#58ece8cb75dd07e71ed08c736abc5fac4dbf8df1" - integrity sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g== - -base@^0.11.1: - version "0.11.2" - resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" - integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== - dependencies: - cache-base "^1.0.1" - class-utils "^0.3.5" - component-emitter "^1.2.1" - define-property "^1.0.0" - isobject "^3.0.1" - mixin-deep "^1.2.0" - pascalcase "^0.1.1" - -batch@0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/batch/-/batch-0.6.1.tgz#dc34314f4e679318093fc760272525f94bf25c16" - integrity sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY= - -bcrypt-pbkdf@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" - integrity sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4= - dependencies: - tweetnacl "^0.14.3" - -bfj@^6.1.1: - version "6.1.2" - resolved "https://registry.yarnpkg.com/bfj/-/bfj-6.1.2.tgz#325c861a822bcb358a41c78a33b8e6e2086dde7f" - integrity sha512-BmBJa4Lip6BPRINSZ0BPEIfB1wUY/9rwbwvIHQA1KjX9om29B6id0wnWXq7m3bn5JrUVjeOTnVuhPT1FiHwPGw== - dependencies: - bluebird "^3.5.5" - check-types "^8.0.3" - hoopy "^0.1.4" - tryer "^1.0.1" - -big.js@^5.2.2: - version "5.2.2" - resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" - integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ== - -binary-extensions@^1.0.0: - version "1.13.1" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.13.1.tgz#598afe54755b2868a5330d2aff9d4ebb53209b65" - integrity sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw== - -binary-extensions@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.1.0.tgz#30fa40c9e7fe07dbc895678cd287024dea241dd9" - integrity sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ== - -bindings@^1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df" - integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ== - dependencies: - file-uri-to-path "1.0.0" - -bluebird@^3.5.5, bluebird@^3.7.1: - version "3.7.2" - resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" - integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== - -bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.4.0: - version "4.11.9" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.9.tgz#26d556829458f9d1e81fc48952493d0ba3507828" - integrity sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw== - -bn.js@^5.1.1: - version "5.1.2" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.1.2.tgz#c9686902d3c9a27729f43ab10f9d79c2004da7b0" - integrity sha512-40rZaf3bUNKTVYu9sIeeEGOg7g14Yvnj9kH7b50EiwX0Q7A6umbvfI5tvHaOERH0XigqKkfLkFQxzb4e6CIXnA== - -body-parser@1.19.0: - version "1.19.0" - resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.19.0.tgz#96b2709e57c9c4e09a6fd66a8fd979844f69f08a" - integrity sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw== - 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" - -bonjour@^3.5.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/bonjour/-/bonjour-3.5.0.tgz#8e890a183d8ee9a2393b3844c691a42bcf7bc9f5" - integrity sha1-jokKGD2O6aI5OzhExpGkK897yfU= - 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" - -boolbase@^1.0.0, boolbase@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" - integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24= - -brace-expansion@^1.1.7: - version "1.1.11" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" - integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== - dependencies: - balanced-match "^1.0.0" - concat-map "0.0.1" - -braces@^2.3.1, braces@^2.3.2: - version "2.3.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" - integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== - dependencies: - arr-flatten "^1.1.0" - array-unique "^0.3.2" - extend-shallow "^2.0.1" - fill-range "^4.0.0" - isobject "^3.0.1" - repeat-element "^1.1.2" - snapdragon "^0.8.1" - snapdragon-node "^2.0.1" - split-string "^3.0.2" - to-regex "^3.0.1" - -braces@^3.0.1, braces@~3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" - integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== - dependencies: - fill-range "^7.0.1" - -brorand@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" - integrity sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8= - -browserify-aes@^1.0.0, browserify-aes@^1.0.4: - version "1.2.0" - resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" - integrity sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA== - dependencies: - buffer-xor "^1.0.3" - cipher-base "^1.0.0" - create-hash "^1.1.0" - evp_bytestokey "^1.0.3" - inherits "^2.0.1" - safe-buffer "^5.0.1" - -browserify-cipher@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.1.tgz#8d6474c1b870bfdabcd3bcfcc1934a10e94f15f0" - integrity sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w== - dependencies: - browserify-aes "^1.0.4" - browserify-des "^1.0.0" - evp_bytestokey "^1.0.0" - -browserify-des@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.2.tgz#3af4f1f59839403572f1c66204375f7a7f703e9c" - integrity sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A== - dependencies: - cipher-base "^1.0.1" - des.js "^1.0.0" - inherits "^2.0.1" - safe-buffer "^5.1.2" - -browserify-rsa@^4.0.0, browserify-rsa@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.0.1.tgz#21e0abfaf6f2029cf2fafb133567a701d4135524" - integrity sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ= - dependencies: - bn.js "^4.1.0" - randombytes "^2.0.1" - -browserify-sign@^4.0.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.2.0.tgz#545d0b1b07e6b2c99211082bf1b12cce7a0b0e11" - integrity sha512-hEZC1KEeYuoHRqhGhTy6gWrpJA3ZDjFWv0DE61643ZnOXAKJb3u7yWcrU0mMc9SwAqK1n7myPGndkp0dFG7NFA== - dependencies: - bn.js "^5.1.1" - browserify-rsa "^4.0.1" - create-hash "^1.2.0" - create-hmac "^1.1.7" - elliptic "^6.5.2" - inherits "^2.0.4" - parse-asn1 "^5.1.5" - readable-stream "^3.6.0" - safe-buffer "^5.2.0" - -browserify-zlib@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.2.0.tgz#2869459d9aa3be245fe8fe2ca1f46e2e7f54d73f" - integrity sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA== - dependencies: - pako "~1.0.5" - -browserslist@4.10.0: - version "4.10.0" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.10.0.tgz#f179737913eaf0d2b98e4926ac1ca6a15cbcc6a9" - integrity sha512-TpfK0TDgv71dzuTsEAlQiHeWQ/tiPqgNZVdv046fvNtBZrjbv2O3TsWCDU0AWGJJKCF/KsjNdLzR9hXOsh/CfA== - dependencies: - caniuse-lite "^1.0.30001035" - electron-to-chromium "^1.3.378" - node-releases "^1.1.52" - pkg-up "^3.1.0" - -browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.6.4, browserslist@^4.8.5: - version "4.13.0" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.13.0.tgz#42556cba011e1b0a2775b611cba6a8eca18e940d" - integrity sha512-MINatJ5ZNrLnQ6blGvePd/QOz9Xtu+Ne+x29iQSCHfkU5BugKVJwZKn/iiL8UbpIpa3JhviKjz+XxMo0m2caFQ== - dependencies: - caniuse-lite "^1.0.30001093" - electron-to-chromium "^1.3.488" - escalade "^3.0.1" - node-releases "^1.1.58" - -buffer-from@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" - integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== - -buffer-indexof@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/buffer-indexof/-/buffer-indexof-1.1.1.tgz#52fabcc6a606d1a00302802648ef68f639da268c" - integrity sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g== - -buffer-json@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/buffer-json/-/buffer-json-2.0.0.tgz#f73e13b1e42f196fe2fd67d001c7d7107edd7c23" - integrity sha512-+jjPFVqyfF1esi9fvfUs3NqM0pH1ziZ36VP4hmA/y/Ssfo/5w5xHKfTw9BwQjoJ1w/oVtpLomqwUHKdefGyuHw== - -buffer-xor@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" - integrity sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk= - -buffer@^4.3.0: - version "4.9.2" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.2.tgz#230ead344002988644841ab0244af8c44bbe3ef8" - integrity sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg== - dependencies: - base64-js "^1.0.2" - ieee754 "^1.1.4" - isarray "^1.0.0" - -builtin-status-codes@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8" - integrity sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug= - -bytes@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" - integrity sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg= - -bytes@3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.0.tgz#f6cf7933a360e0588fa9fde85651cdc7f805d1f6" - integrity sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg== - -cacache@^12.0.2, cacache@^12.0.3: - version "12.0.4" - resolved "https://registry.yarnpkg.com/cacache/-/cacache-12.0.4.tgz#668bcbd105aeb5f1d92fe25570ec9525c8faa40c" - integrity sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ== - dependencies: - bluebird "^3.5.5" - chownr "^1.1.1" - figgy-pudding "^3.5.1" - glob "^7.1.4" - graceful-fs "^4.1.15" - infer-owner "^1.0.3" - lru-cache "^5.1.1" - mississippi "^3.0.0" - mkdirp "^0.5.1" - move-concurrently "^1.0.1" - promise-inflight "^1.0.1" - rimraf "^2.6.3" - ssri "^6.0.1" - unique-filename "^1.1.1" - y18n "^4.0.0" - -cacache@^13.0.1: - version "13.0.1" - resolved "https://registry.yarnpkg.com/cacache/-/cacache-13.0.1.tgz#a8000c21697089082f85287a1aec6e382024a71c" - integrity sha512-5ZvAxd05HDDU+y9BVvcqYu2LLXmPnQ0hW62h32g4xBTgL/MppR4/04NHfj/ycM2y6lmTnbw6HVi+1eN0Psba6w== - dependencies: - chownr "^1.1.2" - figgy-pudding "^3.5.1" - fs-minipass "^2.0.0" - glob "^7.1.4" - graceful-fs "^4.2.2" - infer-owner "^1.0.4" - lru-cache "^5.1.1" - minipass "^3.0.0" - minipass-collect "^1.0.2" - minipass-flush "^1.0.5" - minipass-pipeline "^1.2.2" - mkdirp "^0.5.1" - move-concurrently "^1.0.1" - p-map "^3.0.0" - promise-inflight "^1.0.1" - rimraf "^2.7.1" - ssri "^7.0.0" - unique-filename "^1.1.1" - -cache-base@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" - integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== - dependencies: - collection-visit "^1.0.0" - component-emitter "^1.2.1" - get-value "^2.0.6" - has-value "^1.0.0" - isobject "^3.0.1" - set-value "^2.0.0" - to-object-path "^0.3.0" - union-value "^1.0.0" - unset-value "^1.0.0" - -cache-loader@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/cache-loader/-/cache-loader-4.1.0.tgz#9948cae353aec0a1fcb1eafda2300816ec85387e" - integrity sha512-ftOayxve0PwKzBF/GLsZNC9fJBXl8lkZE3TOsjkboHfVHVkL39iUEs1FO07A33mizmci5Dudt38UZrrYXDtbhw== - dependencies: - buffer-json "^2.0.0" - find-cache-dir "^3.0.0" - loader-utils "^1.2.3" - mkdirp "^0.5.1" - neo-async "^2.6.1" - schema-utils "^2.0.0" - -call-me-maybe@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.1.tgz#26d208ea89e37b5cbde60250a15f031c16a4d66b" - integrity sha1-JtII6onje1y95gJQoV8DHBak1ms= - -caller-callsite@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/caller-callsite/-/caller-callsite-2.0.0.tgz#847e0fce0a223750a9a027c54b33731ad3154134" - integrity sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ= - dependencies: - callsites "^2.0.0" - -caller-path@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-2.0.0.tgz#468f83044e369ab2010fac5f06ceee15bb2cb1f4" - integrity sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ= - dependencies: - caller-callsite "^2.0.0" - -callsites@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/callsites/-/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50" - integrity sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA= - -callsites@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" - integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== - -camel-case@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-4.1.1.tgz#1fc41c854f00e2f7d0139dfeba1542d6896fe547" - integrity sha512-7fa2WcG4fYFkclIvEmxBbTvmibwF2/agfEBc6q3lOpVu0A13ltLsA+Hr/8Hp6kp5f+G7hKi6t8lys6XxP+1K6Q== - dependencies: - pascal-case "^3.1.1" - tslib "^1.10.0" - -camelcase-css@2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/camelcase-css/-/camelcase-css-2.0.1.tgz#ee978f6947914cc30c6b44741b6ed1df7f043fd5" - integrity sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA== - -camelcase@^5.0.0, camelcase@^5.3.1: - version "5.3.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" - integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== - -camelcase@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.0.0.tgz#5259f7c30e35e278f1bdc2a4d91230b37cad981e" - integrity sha512-8KMDF1Vz2gzOq54ONPJS65IvTUaB1cHJ2DMM7MbPmLZljDH1qpzzLsWdiN9pHh6qvkRVDTi/07+eNGch/oLU4w== - -caniuse-api@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-3.0.0.tgz#5e4d90e2274961d46291997df599e3ed008ee4c0" - integrity sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw== - dependencies: - browserslist "^4.0.0" - caniuse-lite "^1.0.0" - lodash.memoize "^4.1.2" - lodash.uniq "^4.5.0" - -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000981, caniuse-lite@^1.0.30001035, caniuse-lite@^1.0.30001093, caniuse-lite@^1.0.30001097: - version "1.0.30001099" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001099.tgz#540118fcc6842d1fde62f4ee5521d1ec6afdb40e" - integrity sha512-sdS9A+sQTk7wKoeuZBN/YMAHVztUfVnjDi4/UV3sDE8xoh7YR12hKW+pIdB3oqKGwr9XaFL2ovfzt9w8eUI5CA== - -caseless@~0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" - integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= - -ccount@^1.0.0, ccount@^1.0.3: - version "1.0.5" - resolved "https://registry.yarnpkg.com/ccount/-/ccount-1.0.5.tgz#ac82a944905a65ce204eb03023157edf29425c17" - integrity sha512-MOli1W+nfbPLlKEhInaxhRdp7KVLFxLN5ykwzHgLsLI3H3gs5jjFAK4Eoj3OzzcxCtumDaI8onoVDeQyWaNTkw== - -chalk@2.4.2, chalk@^2.0.0, chalk@^2.4.1, chalk@^2.4.2: - version "2.4.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" - integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== - dependencies: - ansi-styles "^3.2.1" - escape-string-regexp "^1.0.5" - supports-color "^5.3.0" - -chalk@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" - integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg= - dependencies: - ansi-styles "^2.2.1" - escape-string-regexp "^1.0.2" - has-ansi "^2.0.0" - strip-ansi "^3.0.0" - supports-color "^2.0.0" - -chalk@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-3.0.0.tgz#3f73c2bf526591f574cc492c51e2456349f844e4" - integrity sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg== - dependencies: - ansi-styles "^4.1.0" - supports-color "^7.1.0" - -character-entities-legacy@^1.0.0: - version "1.1.4" - resolved "https://registry.yarnpkg.com/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz#94bc1845dce70a5bb9d2ecc748725661293d8fc1" - integrity sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA== - -character-entities@^1.0.0: - version "1.2.4" - resolved "https://registry.yarnpkg.com/character-entities/-/character-entities-1.2.4.tgz#e12c3939b7eaf4e5b15e7ad4c5e28e1d48c5b16b" - integrity sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw== - -character-reference-invalid@^1.0.0: - version "1.1.4" - resolved "https://registry.yarnpkg.com/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz#083329cda0eae272ab3dbbf37e9a382c13af1560" - integrity sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg== - -chardet@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" - integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== - -check-types@^8.0.3: - version "8.0.3" - resolved "https://registry.yarnpkg.com/check-types/-/check-types-8.0.3.tgz#3356cca19c889544f2d7a95ed49ce508a0ecf552" - integrity sha512-YpeKZngUmG65rLudJ4taU7VLkOCTMhNl/u4ctNC56LQS/zJTyNH0Lrtwm1tfTsbLlwvlfsA2d1c8vCf/Kh2KwQ== - -cheerio@^0.22.0: - version "0.22.0" - resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-0.22.0.tgz#a9baa860a3f9b595a6b81b1a86873121ed3a269e" - integrity sha1-qbqoYKP5tZWmuBsahocxIe06Jp4= - dependencies: - css-select "~1.2.0" - dom-serializer "~0.1.0" - entities "~1.1.1" - htmlparser2 "^3.9.1" - lodash.assignin "^4.0.9" - lodash.bind "^4.1.4" - lodash.defaults "^4.0.1" - lodash.filter "^4.4.0" - lodash.flatten "^4.2.0" - lodash.foreach "^4.3.0" - lodash.map "^4.4.0" - lodash.merge "^4.4.0" - lodash.pick "^4.2.1" - lodash.reduce "^4.4.0" - lodash.reject "^4.4.0" - lodash.some "^4.4.0" - -chokidar@^2.1.8: - version "2.1.8" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.8.tgz#804b3a7b6a99358c3c5c61e71d8728f041cff917" - integrity sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg== - dependencies: - anymatch "^2.0.0" - async-each "^1.0.1" - braces "^2.3.2" - glob-parent "^3.1.0" - inherits "^2.0.3" - is-binary-path "^1.0.0" - is-glob "^4.0.0" - normalize-path "^3.0.0" - path-is-absolute "^1.0.0" - readdirp "^2.2.1" - upath "^1.1.1" - optionalDependencies: - fsevents "^1.2.7" - -chokidar@^3.3.0, chokidar@^3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.4.0.tgz#b30611423ce376357c765b9b8f904b9fba3c0be8" - integrity sha512-aXAaho2VJtisB/1fg1+3nlLJqGOuewTzQpd/Tz0yTg2R0e4IGtshYvtjowyEumcBv2z+y4+kc75Mz7j5xJskcQ== - dependencies: - anymatch "~3.1.1" - braces "~3.0.2" - glob-parent "~5.1.0" - is-binary-path "~2.1.0" - is-glob "~4.0.1" - normalize-path "~3.0.0" - readdirp "~3.4.0" - optionalDependencies: - fsevents "~2.1.2" - -chownr@^1.1.1, chownr@^1.1.2: - version "1.1.4" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" - integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== - -chrome-trace-event@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz#234090ee97c7d4ad1a2c4beae27505deffc608a4" - integrity sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ== - dependencies: - tslib "^1.9.0" - -ci-info@^1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-1.6.0.tgz#2ca20dbb9ceb32d4524a683303313f0304b1e497" - integrity sha512-vsGdkwSCDpWmP80ncATX7iea5DWQemg1UgCW5J8tqjU3lYw4FBYuj89J0CTVomA7BEfvSZd84GmHko+MxFQU2A== - -cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de" - integrity sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q== - dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" - -class-utils@^0.3.5: - version "0.3.6" - resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" - integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== - dependencies: - arr-union "^3.1.0" - define-property "^0.2.5" - isobject "^3.0.0" - static-extend "^0.1.1" - -classnames@^2.2.5: - version "2.2.6" - resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.2.6.tgz#43935bffdd291f326dad0a205309b38d00f650ce" - integrity sha512-JR/iSQOSt+LQIWwrwEzJ9uk0xfN3mTVYMwt1Ir5mUcSN6pU+V4zQFFaJsclJbPuAUQH+yfWef6tm7l1quW3C8Q== - -clean-css@^4.2.3: - version "4.2.3" - resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.2.3.tgz#507b5de7d97b48ee53d84adb0160ff6216380f78" - integrity sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA== - dependencies: - source-map "~0.6.0" - -clean-stack@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" - integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== - -cli-cursor@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" - integrity sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw== - dependencies: - restore-cursor "^3.1.0" - -cli-width@^2.0.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.1.tgz#b0433d0b4e9c847ef18868a4ef16fd5fc8271c48" - integrity sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw== - -clipboard@^2.0.0: - version "2.0.6" - resolved "https://registry.yarnpkg.com/clipboard/-/clipboard-2.0.6.tgz#52921296eec0fdf77ead1749421b21c968647376" - integrity sha512-g5zbiixBRk/wyKakSwCKd7vQXDjFnAMGHoEyBogG/bw9kTD9GvdAvaoRR1ALcEzt3pVKxZR0pViekPMIS0QyGg== - dependencies: - good-listener "^1.2.2" - select "^1.1.2" - tiny-emitter "^2.0.0" - -cliui@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-5.0.0.tgz#deefcfdb2e800784aa34f46fa08e06851c7bbbc5" - integrity sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA== - dependencies: - string-width "^3.1.0" - strip-ansi "^5.2.0" - wrap-ansi "^5.1.0" - -clone-deep@^0.2.4: - version "0.2.4" - resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-0.2.4.tgz#4e73dd09e9fb971cc38670c5dced9c1896481cc6" - integrity sha1-TnPdCen7lxzDhnDF3O2cGJZIHMY= - dependencies: - for-own "^0.1.3" - is-plain-object "^2.0.1" - kind-of "^3.0.2" - lazy-cache "^1.0.3" - shallow-clone "^0.1.2" - -clsx@1.1.1, clsx@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/clsx/-/clsx-1.1.1.tgz#98b3134f9abbdf23b2663491ace13c5c03a73188" - integrity sha512-6/bPho624p3S2pMyvP5kKBPXnI3ufHLObBFCfgx+LkeR5lg2XYy2hqZqUf45ypD8COn2bhgGJSUE+l5dhNBieA== - -coa@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/coa/-/coa-2.0.2.tgz#43f6c21151b4ef2bf57187db0d73de229e3e7ec3" - integrity sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA== - dependencies: - "@types/q" "^1.5.1" - chalk "^2.4.1" - q "^1.1.2" - -collapse-white-space@^1.0.0, collapse-white-space@^1.0.2: - version "1.0.6" - resolved "https://registry.yarnpkg.com/collapse-white-space/-/collapse-white-space-1.0.6.tgz#e63629c0016665792060dbbeb79c42239d2c5287" - integrity sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ== - -collection-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" - integrity sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA= - dependencies: - map-visit "^1.0.0" - object-visit "^1.0.0" - -color-convert@^1.9.0, color-convert@^1.9.1: - version "1.9.3" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" - integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== - dependencies: - color-name "1.1.3" - -color-convert@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" - integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== - dependencies: - color-name "~1.1.4" - -color-name@1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" - integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= - -color-name@^1.0.0, color-name@~1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" - integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== - -color-string@^1.5.2: - version "1.5.3" - resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.5.3.tgz#c9bbc5f01b58b5492f3d6857459cb6590ce204cc" - integrity sha512-dC2C5qeWoYkxki5UAXapdjqO672AM4vZuPGRQfO8b5HKuKGBbKWpITyDYN7TOFKvRW7kOgAn3746clDBMDJyQw== - dependencies: - color-name "^1.0.0" - simple-swizzle "^0.2.2" - -color@^3.0.0: - version "3.1.2" - resolved "https://registry.yarnpkg.com/color/-/color-3.1.2.tgz#68148e7f85d41ad7649c5fa8c8106f098d229e10" - integrity sha512-vXTJhHebByxZn3lDvDJYw4lR5+uB3vuoHsuYA5AKuxRVn5wzzIfQKGLBmgdVRHKTJYeK5rvJcHnrd0Li49CFpg== - dependencies: - color-convert "^1.9.1" - color-string "^1.5.2" - -colorette@^1.2.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.2.1.tgz#4d0b921325c14faf92633086a536db6e89564b1b" - integrity sha512-puCDz0CzydiSYOrnXpz/PKd69zRrribezjtE9yd4zvytoRc8+RY/KJPvtPFKZS3E3wP6neGyMe0vOTlHO5L3Pw== - -combined-stream@^1.0.6, combined-stream@~1.0.6: - version "1.0.8" - resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" - integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== - dependencies: - delayed-stream "~1.0.0" - -comma-separated-tokens@^1.0.0: - version "1.0.8" - resolved "https://registry.yarnpkg.com/comma-separated-tokens/-/comma-separated-tokens-1.0.8.tgz#632b80b6117867a158f1080ad498b2fbe7e3f5ea" - integrity sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw== - -commander@^2.18.0, commander@^2.20.0: - version "2.20.3" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" - integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== - -commander@^4.0.1, commander@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068" - integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA== - -commondir@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" - integrity sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs= - -component-emitter@^1.2.1: - version "1.3.0" - resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" - integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== - -compressible@~2.0.16: - version "2.0.18" - resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.18.tgz#af53cca6b070d4c3c0750fbd77286a6d7cc46fba" - integrity sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg== - dependencies: - mime-db ">= 1.43.0 < 2" - -compression@^1.7.4: - version "1.7.4" - resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.4.tgz#95523eff170ca57c29a0ca41e6fe131f41e5bb8f" - integrity sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ== - 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" - -concat-map@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" - integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= - -concat-stream@^1.5.0: - version "1.6.2" - resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" - integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw== - dependencies: - buffer-from "^1.0.0" - inherits "^2.0.3" - readable-stream "^2.2.2" - typedarray "^0.0.6" - -connect-history-api-fallback@^1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz#8b32089359308d111115d81cad3fceab888f97bc" - integrity sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg== - -consola@^2.10.0: - version "2.14.0" - resolved "https://registry.yarnpkg.com/consola/-/consola-2.14.0.tgz#162ee903b6c9c4de25077d93f34ab902ebcb4dac" - integrity sha512-A2j1x4u8d6SIVikhZROfpFJxQZie+cZOfQMyI/tu2+hWXe8iAv7R6FW6s6x04/7zBCst94lPddztot/d6GJiuQ== - -console-browserify@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.2.0.tgz#67063cef57ceb6cf4993a2ab3a55840ae8c49336" - integrity sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA== - -constants-browserify@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" - integrity sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U= - -content-disposition@0.5.3: - version "0.5.3" - resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.3.tgz#e130caf7e7279087c5616c2007d0485698984fbd" - integrity sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g== - dependencies: - safe-buffer "5.1.2" - -content-type@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" - integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== - -convert-source-map@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.7.0.tgz#17a2cb882d7f77d3490585e2ce6c524424a3a442" - integrity sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA== - dependencies: - safe-buffer "~5.1.1" - -cookie-signature@1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" - integrity sha1-4wOogrNCzD7oylE6eZmXNNqzriw= - -cookie@0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.0.tgz#beb437e7022b3b6d49019d088665303ebe9c14ba" - integrity sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg== - -copy-concurrently@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/copy-concurrently/-/copy-concurrently-1.0.5.tgz#92297398cae34937fcafd6ec8139c18051f0b5e0" - integrity sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A== - dependencies: - aproba "^1.1.1" - fs-write-stream-atomic "^1.0.8" - iferr "^0.1.5" - mkdirp "^0.5.1" - rimraf "^2.5.4" - run-queue "^1.0.0" - -copy-descriptor@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" - integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= - -copy-text-to-clipboard@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/copy-text-to-clipboard/-/copy-text-to-clipboard-2.2.0.tgz#329dd6daf8c42034c763ace567418401764579ae" - integrity sha512-WRvoIdnTs1rgPMkgA2pUOa/M4Enh2uzCwdKsOMYNAJiz/4ZvEJgmbF4OmninPmlFdAWisfeh0tH+Cpf7ni3RqQ== - -copy-webpack-plugin@^5.0.5: - version "5.1.1" - resolved "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-5.1.1.tgz#5481a03dea1123d88a988c6ff8b78247214f0b88" - integrity sha512-P15M5ZC8dyCjQHWwd4Ia/dm0SgVvZJMYeykVIVYXbGyqO4dWB5oyPHp9i7wjwo5LhtlhKbiBCdS2NvM07Wlybg== - dependencies: - cacache "^12.0.3" - find-cache-dir "^2.1.0" - glob-parent "^3.1.0" - globby "^7.1.1" - is-glob "^4.0.1" - loader-utils "^1.2.3" - minimatch "^3.0.4" - normalize-path "^3.0.0" - p-limit "^2.2.1" - schema-utils "^1.0.0" - serialize-javascript "^2.1.2" - webpack-log "^2.0.0" - -core-js-compat@^3.6.2: - version "3.6.5" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.6.5.tgz#2a51d9a4e25dfd6e690251aa81f99e3c05481f1c" - integrity sha512-7ItTKOhOZbznhXAQ2g/slGg1PJV5zDO/WdkTwi7UEOJmkvsE32PWvx6mKtDjiMpjnR2CNf6BAD6sSxIlv7ptng== - dependencies: - browserslist "^4.8.5" - semver "7.0.0" - -core-js@^2.6.5: - version "2.6.11" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.11.tgz#38831469f9922bded8ee21c9dc46985e0399308c" - integrity sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg== - -core-util-is@1.0.2, core-util-is@~1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" - integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= - -cosmiconfig@^5.0.0: - version "5.2.1" - resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.2.1.tgz#040f726809c591e77a17c0a3626ca45b4f168b1a" - integrity sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA== - dependencies: - import-fresh "^2.0.0" - is-directory "^0.3.1" - js-yaml "^3.13.1" - parse-json "^4.0.0" - -cosmiconfig@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-6.0.0.tgz#da4fee853c52f6b1e6935f41c1a2fc50bd4a9982" - integrity sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg== - dependencies: - "@types/parse-json" "^4.0.0" - import-fresh "^3.1.0" - parse-json "^5.0.0" - path-type "^4.0.0" - yaml "^1.7.2" - -create-ecdh@^4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.3.tgz#c9111b6f33045c4697f144787f9254cdc77c45ff" - integrity sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw== - dependencies: - bn.js "^4.1.0" - elliptic "^6.0.0" - -create-hash@^1.1.0, create-hash@^1.1.2, create-hash@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196" - integrity sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg== - dependencies: - cipher-base "^1.0.1" - inherits "^2.0.1" - md5.js "^1.3.4" - ripemd160 "^2.0.1" - sha.js "^2.4.0" - -create-hmac@^1.1.0, create-hmac@^1.1.4, create-hmac@^1.1.7: - version "1.1.7" - resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff" - integrity sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg== - dependencies: - cipher-base "^1.0.3" - create-hash "^1.1.0" - inherits "^2.0.1" - ripemd160 "^2.0.0" - safe-buffer "^5.0.1" - sha.js "^2.4.8" - -cross-spawn@7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.1.tgz#0ab56286e0f7c24e153d04cc2aa027e43a9a5d14" - integrity sha512-u7v4o84SwFpD32Z8IIcPZ6z1/ie24O6RU3RbtL5Y316l3KuHVPx9ItBgWQ6VlfAFnRnTtMUrsQ9MUUTuEZjogg== - dependencies: - path-key "^3.1.0" - shebang-command "^2.0.0" - which "^2.0.1" - -cross-spawn@^6.0.0: - version "6.0.5" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" - integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== - dependencies: - nice-try "^1.0.4" - path-key "^2.0.1" - semver "^5.5.0" - shebang-command "^1.2.0" - which "^1.2.9" - -cross-spawn@^7.0.0: - version "7.0.3" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" - integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== - dependencies: - path-key "^3.1.0" - shebang-command "^2.0.0" - which "^2.0.1" - -crypto-browserify@^3.11.0: - version "3.12.0" - resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec" - integrity sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg== - dependencies: - browserify-cipher "^1.0.0" - browserify-sign "^4.0.0" - create-ecdh "^4.0.0" - create-hash "^1.1.0" - create-hmac "^1.1.0" - diffie-hellman "^5.0.0" - inherits "^2.0.1" - pbkdf2 "^3.0.3" - public-encrypt "^4.0.0" - randombytes "^2.0.0" - randomfill "^1.0.3" - -css-blank-pseudo@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/css-blank-pseudo/-/css-blank-pseudo-0.1.4.tgz#dfdefd3254bf8a82027993674ccf35483bfcb3c5" - integrity sha512-LHz35Hr83dnFeipc7oqFDmsjHdljj3TQtxGGiNWSOsTLIAubSm4TEz8qCaKFpk7idaQ1GfWscF4E6mgpBysA1w== - dependencies: - postcss "^7.0.5" - -css-color-names@0.0.4, css-color-names@^0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/css-color-names/-/css-color-names-0.0.4.tgz#808adc2e79cf84738069b646cb20ec27beb629e0" - integrity sha1-gIrcLnnPhHOAabZGyyDsJ762KeA= - -css-declaration-sorter@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/css-declaration-sorter/-/css-declaration-sorter-4.0.1.tgz#c198940f63a76d7e36c1e71018b001721054cb22" - integrity sha512-BcxQSKTSEEQUftYpBVnsH4SF05NTuBokb19/sBt6asXGKZ/6VP7PLG1CBCkFDYOnhXhPh0jMhO6xZ71oYHXHBA== - dependencies: - postcss "^7.0.1" - timsort "^0.3.0" - -css-has-pseudo@^0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/css-has-pseudo/-/css-has-pseudo-0.10.0.tgz#3c642ab34ca242c59c41a125df9105841f6966ee" - integrity sha512-Z8hnfsZu4o/kt+AuFzeGpLVhFOGO9mluyHBaA2bA8aCGTwah5sT3WV/fTHH8UNZUytOIImuGPrl/prlb4oX4qQ== - dependencies: - postcss "^7.0.6" - postcss-selector-parser "^5.0.0-rc.4" - -css-loader@^3.4.2: - version "3.6.0" - resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-3.6.0.tgz#2e4b2c7e6e2d27f8c8f28f61bffcd2e6c91ef645" - integrity sha512-M5lSukoWi1If8dhQAUCvj4H8vUt3vOnwbQBH9DdTm/s4Ym2B/3dPMtYZeJmq7Q3S3Pa+I94DcZ7pc9bP14cWIQ== - dependencies: - camelcase "^5.3.1" - cssesc "^3.0.0" - icss-utils "^4.1.1" - loader-utils "^1.2.3" - normalize-path "^3.0.0" - postcss "^7.0.32" - postcss-modules-extract-imports "^2.0.0" - postcss-modules-local-by-default "^3.0.2" - postcss-modules-scope "^2.2.0" - postcss-modules-values "^3.0.0" - postcss-value-parser "^4.1.0" - schema-utils "^2.7.0" - semver "^6.3.0" - -css-prefers-color-scheme@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/css-prefers-color-scheme/-/css-prefers-color-scheme-3.1.1.tgz#6f830a2714199d4f0d0d0bb8a27916ed65cff1f4" - integrity sha512-MTu6+tMs9S3EUqzmqLXEcgNRbNkkD/TGFvowpeoWJn5Vfq7FMgsmRQs9X5NXAURiOBmOxm/lLjsDNXDE6k9bhg== - dependencies: - postcss "^7.0.5" - -css-select-base-adapter@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz#3b2ff4972cc362ab88561507a95408a1432135d7" - integrity sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w== - -css-select@^1.1.0, css-select@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/css-select/-/css-select-1.2.0.tgz#2b3a110539c5355f1cd8d314623e870b121ec858" - integrity sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg= - dependencies: - boolbase "~1.0.0" - css-what "2.1" - domutils "1.5.1" - nth-check "~1.0.1" - -css-select@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/css-select/-/css-select-2.1.0.tgz#6a34653356635934a81baca68d0255432105dbef" - integrity sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ== - dependencies: - boolbase "^1.0.0" - css-what "^3.2.1" - domutils "^1.7.0" - nth-check "^1.0.2" - -css-tree@1.0.0-alpha.37: - version "1.0.0-alpha.37" - resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0-alpha.37.tgz#98bebd62c4c1d9f960ec340cf9f7522e30709a22" - integrity sha512-DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg== - dependencies: - mdn-data "2.0.4" - source-map "^0.6.1" - -css-tree@1.0.0-alpha.39: - version "1.0.0-alpha.39" - resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0-alpha.39.tgz#2bff3ffe1bb3f776cf7eefd91ee5cba77a149eeb" - integrity sha512-7UvkEYgBAHRG9Nt980lYxjsTrCyHFN53ky3wVsDkiMdVqylqRt+Zc+jm5qw7/qyOvN2dHSYtX0e4MbCCExSvnA== - dependencies: - mdn-data "2.0.6" - source-map "^0.6.1" - -css-what@2.1: - version "2.1.3" - resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.3.tgz#a6d7604573365fe74686c3f311c56513d88285f2" - integrity sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg== - -css-what@^3.2.1: - version "3.3.0" - resolved "https://registry.yarnpkg.com/css-what/-/css-what-3.3.0.tgz#10fec696a9ece2e591ac772d759aacabac38cd39" - integrity sha512-pv9JPyatiPaQ6pf4OvD/dbfm0o5LviWmwxNWzblYf/1u9QZd0ihV+PMwy5jdQWQ3349kZmKEx9WXuSka2dM4cg== - -cssdb@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/cssdb/-/cssdb-4.4.0.tgz#3bf2f2a68c10f5c6a08abd92378331ee803cddb0" - integrity sha512-LsTAR1JPEM9TpGhl/0p3nQecC2LJ0kD8X5YARu1hk/9I1gril5vDtMZyNxcEpxxDj34YNck/ucjuoUd66K03oQ== - -cssesc@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-2.0.0.tgz#3b13bd1bb1cb36e1bcb5a4dcd27f54c5dcb35703" - integrity sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg== - -cssesc@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" - integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== - -cssnano-preset-default@^4.0.7: - version "4.0.7" - resolved "https://registry.yarnpkg.com/cssnano-preset-default/-/cssnano-preset-default-4.0.7.tgz#51ec662ccfca0f88b396dcd9679cdb931be17f76" - integrity sha512-x0YHHx2h6p0fCl1zY9L9roD7rnlltugGu7zXSKQx6k2rYw0Hi3IqxcoAGF7u9Q5w1nt7vK0ulxV8Lo+EvllGsA== - dependencies: - css-declaration-sorter "^4.0.1" - cssnano-util-raw-cache "^4.0.1" - postcss "^7.0.0" - postcss-calc "^7.0.1" - postcss-colormin "^4.0.3" - postcss-convert-values "^4.0.1" - postcss-discard-comments "^4.0.2" - postcss-discard-duplicates "^4.0.2" - postcss-discard-empty "^4.0.1" - postcss-discard-overridden "^4.0.1" - postcss-merge-longhand "^4.0.11" - postcss-merge-rules "^4.0.3" - postcss-minify-font-values "^4.0.2" - postcss-minify-gradients "^4.0.2" - postcss-minify-params "^4.0.2" - postcss-minify-selectors "^4.0.2" - postcss-normalize-charset "^4.0.1" - postcss-normalize-display-values "^4.0.2" - postcss-normalize-positions "^4.0.2" - postcss-normalize-repeat-style "^4.0.2" - postcss-normalize-string "^4.0.2" - postcss-normalize-timing-functions "^4.0.2" - postcss-normalize-unicode "^4.0.1" - postcss-normalize-url "^4.0.1" - postcss-normalize-whitespace "^4.0.2" - postcss-ordered-values "^4.1.2" - postcss-reduce-initial "^4.0.3" - postcss-reduce-transforms "^4.0.2" - postcss-svgo "^4.0.2" - postcss-unique-selectors "^4.0.1" - -cssnano-util-get-arguments@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/cssnano-util-get-arguments/-/cssnano-util-get-arguments-4.0.0.tgz#ed3a08299f21d75741b20f3b81f194ed49cc150f" - integrity sha1-7ToIKZ8h11dBsg87gfGU7UnMFQ8= - -cssnano-util-get-match@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/cssnano-util-get-match/-/cssnano-util-get-match-4.0.0.tgz#c0e4ca07f5386bb17ec5e52250b4f5961365156d" - integrity sha1-wOTKB/U4a7F+xeUiULT1lhNlFW0= - -cssnano-util-raw-cache@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/cssnano-util-raw-cache/-/cssnano-util-raw-cache-4.0.1.tgz#b26d5fd5f72a11dfe7a7846fb4c67260f96bf282" - integrity sha512-qLuYtWK2b2Dy55I8ZX3ky1Z16WYsx544Q0UWViebptpwn/xDBmog2TLg4f+DBMg1rJ6JDWtn96WHbOKDWt1WQA== - dependencies: - postcss "^7.0.0" - -cssnano-util-same-parent@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/cssnano-util-same-parent/-/cssnano-util-same-parent-4.0.1.tgz#574082fb2859d2db433855835d9a8456ea18bbf3" - integrity sha512-WcKx5OY+KoSIAxBW6UBBRay1U6vkYheCdjyVNDm85zt5K9mHoGOfsOsqIszfAqrQQFIIKgjh2+FDgIj/zsl21Q== - -cssnano@^4.1.10: - version "4.1.10" - resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-4.1.10.tgz#0ac41f0b13d13d465487e111b778d42da631b8b2" - integrity sha512-5wny+F6H4/8RgNlaqab4ktc3e0/blKutmq8yNlBFXA//nSFFAqAngjNVRzUvCgYROULmZZUoosL/KSoZo5aUaQ== - dependencies: - cosmiconfig "^5.0.0" - cssnano-preset-default "^4.0.7" - is-resolvable "^1.0.0" - postcss "^7.0.0" - -csso@^4.0.2: - version "4.0.3" - resolved "https://registry.yarnpkg.com/csso/-/csso-4.0.3.tgz#0d9985dc852c7cc2b2cacfbbe1079014d1a8e903" - integrity sha512-NL3spysxUkcrOgnpsT4Xdl2aiEiBG6bXswAABQVHcMrfjjBisFOKwLDOmf4wf32aPdcJws1zds2B0Rg+jqMyHQ== - dependencies: - css-tree "1.0.0-alpha.39" - -cyclist@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/cyclist/-/cyclist-1.0.1.tgz#596e9698fd0c80e12038c2b82d6eb1b35b6224d9" - integrity sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk= - -dashdash@^1.12.0: - version "1.14.1" - resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" - integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA= - dependencies: - assert-plus "^1.0.0" - -debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.0, debug@^2.6.9: - version "2.6.9" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" - integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== - dependencies: - ms "2.0.0" - -debug@^3.1.1, debug@^3.2.5: - version "3.2.6" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" - integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== - dependencies: - ms "^2.1.1" - -debug@^4.1.0, debug@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" - integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw== - dependencies: - ms "^2.1.1" - -decamelize@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" - integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= - -decode-uri-component@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" - integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU= - -deep-equal@^1.0.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.1.1.tgz#b5c98c942ceffaf7cb051e24e1434a25a2e6076a" - integrity sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g== - 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" - -default-gateway@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/default-gateway/-/default-gateway-4.2.0.tgz#167104c7500c2115f6dd69b0a536bb8ed720552b" - integrity sha512-h6sMrVB1VMWVrW13mSc6ia/DwYYw5MN6+exNu1OaJeFac5aSAvwM7lZ0NVfTABuSkQelr4h5oebg3KB1XPdjgA== - dependencies: - execa "^1.0.0" - ip-regex "^2.1.0" - -define-properties@^1.1.2, define-properties@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" - integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== - dependencies: - object-keys "^1.0.12" - -define-property@^0.2.5: - version "0.2.5" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" - integrity sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY= - dependencies: - is-descriptor "^0.1.0" - -define-property@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" - integrity sha1-dp66rz9KY6rTr56NMEybvnm/sOY= - dependencies: - is-descriptor "^1.0.0" - -define-property@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" - integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== - dependencies: - is-descriptor "^1.0.2" - isobject "^3.0.1" - -del@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/del/-/del-4.1.1.tgz#9e8f117222ea44a31ff3a156c049b99052a9f0b4" - integrity sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ== - dependencies: - "@types/glob" "^7.1.1" - globby "^6.1.0" - is-path-cwd "^2.0.0" - is-path-in-cwd "^2.0.0" - p-map "^2.0.0" - pify "^4.0.1" - rimraf "^2.6.3" - -del@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/del/-/del-5.1.0.tgz#d9487c94e367410e6eff2925ee58c0c84a75b3a7" - integrity sha512-wH9xOVHnczo9jN2IW68BabcecVPxacIA3g/7z6vhSU/4stOKQzeCRK0yD0A24WiAAUJmmVpWqrERcTxnLo3AnA== - dependencies: - globby "^10.0.1" - graceful-fs "^4.2.2" - is-glob "^4.0.1" - is-path-cwd "^2.2.0" - is-path-inside "^3.0.1" - p-map "^3.0.0" - rimraf "^3.0.0" - slash "^3.0.0" - -delayed-stream@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" - integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= - -delegate@^3.1.2: - version "3.2.0" - resolved "https://registry.yarnpkg.com/delegate/-/delegate-3.2.0.tgz#b66b71c3158522e8ab5744f720d8ca0c2af59166" - integrity sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw== - -depd@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" - integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= - -des.js@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.1.tgz#5382142e1bdc53f85d86d53e5f4aa7deb91e0843" - integrity sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA== - dependencies: - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - -destroy@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" - integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA= - -detab@2.0.3, detab@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/detab/-/detab-2.0.3.tgz#33e5dd74d230501bd69985a0d2b9a3382699a130" - integrity sha512-Up8P0clUVwq0FnFjDclzZsy9PadzRn5FFxrr47tQQvMHqyiFYVbpH8oXDzWtF0Q7pYy3l+RPmtBl+BsFF6wH0A== - dependencies: - repeat-string "^1.5.4" - -detect-node@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.4.tgz#014ee8f8f669c5c58023da64b8179c083a28c46c" - integrity sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw== - -detect-port-alt@1.1.6: - version "1.1.6" - resolved "https://registry.yarnpkg.com/detect-port-alt/-/detect-port-alt-1.1.6.tgz#24707deabe932d4a3cf621302027c2b266568275" - integrity sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q== - dependencies: - address "^1.0.1" - debug "^2.6.0" - -diff@^4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d" - integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A== - -diffie-hellman@^5.0.0: - version "5.0.3" - resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875" - integrity sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg== - dependencies: - bn.js "^4.1.0" - miller-rabin "^4.0.0" - randombytes "^2.0.0" - -dir-glob@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-2.0.0.tgz#0b205d2b6aef98238ca286598a8204d29d0a0034" - integrity sha512-37qirFDz8cA5fimp9feo43fSuRo2gHwaIn6dXL8Ber1dGwUosDrGZeCCXq57WnIqE4aQ+u3eQZzsk1yOzhdwag== - dependencies: - arrify "^1.0.1" - path-type "^3.0.0" - -dir-glob@^2.0.0: - version "2.2.2" - resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-2.2.2.tgz#fa09f0694153c8918b18ba0deafae94769fc50c4" - integrity sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw== - dependencies: - path-type "^3.0.0" - -dir-glob@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" - integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== - dependencies: - path-type "^4.0.0" - -dns-equal@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/dns-equal/-/dns-equal-1.0.0.tgz#b39e7f1da6eb0a75ba9c17324b34753c47e0654d" - integrity sha1-s55/HabrCnW6nBcySzR1PEfgZU0= - -dns-packet@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/dns-packet/-/dns-packet-1.3.1.tgz#12aa426981075be500b910eedcd0b47dd7deda5a" - integrity sha512-0UxfQkMhYAUaZI+xrNZOz/as5KgDU0M/fQ9b6SpkyLbk3GEswDi6PADJVaYJradtRVsRIlF1zLyOodbcTCDzUg== - dependencies: - ip "^1.1.0" - safe-buffer "^5.0.1" - -dns-txt@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/dns-txt/-/dns-txt-2.0.2.tgz#b91d806f5d27188e4ab3e7d107d881a1cc4642b6" - integrity sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY= - dependencies: - buffer-indexof "^1.0.0" - -docsearch.js@^2.6.3: - version "2.6.3" - resolved "https://registry.yarnpkg.com/docsearch.js/-/docsearch.js-2.6.3.tgz#57cb4600d3b6553c677e7cbbe6a734593e38625d" - integrity sha512-GN+MBozuyz664ycpZY0ecdQE0ND/LSgJKhTLA0/v3arIS3S1Rpf2OJz6A35ReMsm91V5apcmzr5/kM84cvUg+A== - dependencies: - algoliasearch "^3.24.5" - autocomplete.js "0.36.0" - hogan.js "^3.0.2" - request "^2.87.0" - stack-utils "^1.0.1" - to-factory "^1.0.0" - zepto "^1.2.0" - -docusaurus-plugin-fathom@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/docusaurus-plugin-fathom/-/docusaurus-plugin-fathom-1.1.0.tgz#d338d4f115c8f699c56d8f1e2413d75a2f244dc3" - integrity sha512-MVMYb2daXLho8Foaxl2ipTCH3RWEmV5plQytGa8tMk3LOiWcZ5S9TcOhcAB9W5b9ZeebyotWYXpTnsLyXgKFgA== - -dom-converter@^0.2: - version "0.2.0" - resolved "https://registry.yarnpkg.com/dom-converter/-/dom-converter-0.2.0.tgz#6721a9daee2e293682955b6afe416771627bb768" - integrity sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA== - dependencies: - utila "~0.4" - -dom-serializer@0: - version "0.2.2" - resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.2.2.tgz#1afb81f533717175d478655debc5e332d9f9bb51" - integrity sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g== - dependencies: - domelementtype "^2.0.1" - entities "^2.0.0" - -dom-serializer@~0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.1.tgz#1ec4059e284babed36eec2941d4a970a189ce7c0" - integrity sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA== - dependencies: - domelementtype "^1.3.0" - entities "^1.1.1" - -dom-walk@^0.1.0: - version "0.1.2" - resolved "https://registry.yarnpkg.com/dom-walk/-/dom-walk-0.1.2.tgz#0c548bef048f4d1f2a97249002236060daa3fd84" - integrity sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w== - -domain-browser@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda" - integrity sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA== - -domelementtype@1, domelementtype@^1.3.0, domelementtype@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.1.tgz#d048c44b37b0d10a7f2a3d5fee3f4333d790481f" - integrity sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w== - -domelementtype@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.0.1.tgz#1f8bdfe91f5a78063274e803b4bdcedf6e94f94d" - integrity sha512-5HOHUDsYZWV8FGWN0Njbr/Rn7f/eWSQi1v7+HsUVwXgn8nWWlL64zKDkS0n8ZmQ3mlWOMuXOnR+7Nx/5tMO5AQ== - -domhandler@^2.3.0: - version "2.4.2" - resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.4.2.tgz#8805097e933d65e85546f726d60f5eb88b44f803" - integrity sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA== - dependencies: - domelementtype "1" - -domutils@1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf" - integrity sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8= - dependencies: - dom-serializer "0" - domelementtype "1" - -domutils@^1.5.1, domutils@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.7.0.tgz#56ea341e834e06e6748af7a1cb25da67ea9f8c2a" - integrity sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg== - dependencies: - dom-serializer "0" - domelementtype "1" - -dot-case@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/dot-case/-/dot-case-3.0.3.tgz#21d3b52efaaba2ea5fda875bb1aa8124521cf4aa" - integrity sha512-7hwEmg6RiSQfm/GwPL4AAWXKy3YNNZA3oFv2Pdiey0mwkRCPZ9x6SZbkLcn8Ma5PYeVokzoD4Twv2n7LKp5WeA== - dependencies: - no-case "^3.0.3" - tslib "^1.10.0" - -dot-prop@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.2.0.tgz#c34ecc29556dc45f1f4c22697b6f4904e0cc4fcb" - integrity sha512-uEUyaDKoSQ1M4Oq8l45hSE26SnTxL6snNnqvK/VWx5wJhmff5z0FUVJDKDanor/6w3kzE3i7XZOk+7wC0EXr1A== - dependencies: - is-obj "^2.0.0" - -duplexer@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.1.tgz#ace6ff808c1ce66b57d1ebf97977acb02334cfc1" - integrity sha1-rOb/gIwc5mtX0ev5eXessCM0z8E= - -duplexify@^3.4.2, duplexify@^3.6.0: - version "3.7.1" - resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.7.1.tgz#2a4df5317f6ccfd91f86d6fd25d8d8a103b88309" - integrity sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g== - dependencies: - end-of-stream "^1.0.0" - inherits "^2.0.1" - readable-stream "^2.0.0" - stream-shift "^1.0.0" - -ecc-jsbn@~0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" - integrity sha1-OoOpBOVDUyh4dMVkt1SThoSamMk= - dependencies: - jsbn "~0.1.0" - safer-buffer "^2.1.0" - -ee-first@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" - integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= - -ejs@^2.6.1: - version "2.7.4" - resolved "https://registry.yarnpkg.com/ejs/-/ejs-2.7.4.tgz#48661287573dcc53e366c7a1ae52c3a120eec9ba" - integrity sha512-7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA== - -electron-to-chromium@^1.3.378, electron-to-chromium@^1.3.488: - version "1.3.496" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.496.tgz#3f43d32930481d82ad3663d79658e7c59a58af0b" - integrity sha512-TXY4mwoyowwi4Lsrq9vcTUYBThyc1b2hXaTZI13p8/FRhY2CTaq5lK+DVjhYkKiTLsKt569Xes+0J5JsVXFurQ== - -elliptic@^6.0.0, elliptic@^6.5.2: - version "6.5.3" - resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.3.tgz#cb59eb2efdaf73a0bd78ccd7015a62ad6e0f93d6" - integrity sha512-IMqzv5wNQf+E6aHeIqATs0tOLeOTwj1QKbRcS3jBbYkl5oLAserA8yJTT7/VyHUYG91PRmPyeQDObKLPpeS4dw== - dependencies: - bn.js "^4.4.0" - brorand "^1.0.1" - hash.js "^1.0.0" - hmac-drbg "^1.0.0" - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - minimalistic-crypto-utils "^1.0.0" - -"emoji-regex@>=6.0.0 <=6.1.1": - version "6.1.1" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-6.1.1.tgz#c6cd0ec1b0642e2a3c67a1137efc5e796da4f88e" - integrity sha1-xs0OwbBkLio8Z6ETfvxeeW2k+I4= - -emoji-regex@^7.0.1: - version "7.0.3" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" - integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== - -emoji-regex@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" - integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== - -emojis-list@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389" - integrity sha1-TapNnbAPmBmIDHn6RXrlsJof04k= - -emojis-list@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78" - integrity sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q== - -emoticon@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/emoticon/-/emoticon-3.2.0.tgz#c008ca7d7620fac742fe1bf4af8ff8fed154ae7f" - integrity sha512-SNujglcLTTg+lDAcApPNgEdudaqQFiAbJCqzjNxJkvN9vAwCGi0uu8IUVvx+f16h+V44KCY6Y2yboroc9pilHg== - -encodeurl@~1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" - integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= - -end-of-stream@^1.0.0, end-of-stream@^1.1.0: - version "1.4.4" - resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" - integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== - dependencies: - once "^1.4.0" - -enhanced-resolve@^4.1.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.2.0.tgz#5d43bda4a0fd447cb0ebbe71bef8deff8805ad0d" - integrity sha512-S7eiFb/erugyd1rLb6mQ3Vuq+EXHv5cpCkNqqIkYkBgN2QdFnyCZzFBleqwGEx4lgNGYij81BWnCrFNK7vxvjQ== - dependencies: - graceful-fs "^4.1.2" - memory-fs "^0.5.0" - tapable "^1.0.0" - -entities@^1.1.1, entities@~1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56" - integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w== - -entities@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/entities/-/entities-2.0.3.tgz#5c487e5742ab93c15abb5da22759b8590ec03b7f" - integrity sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ== - -envify@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/envify/-/envify-4.1.0.tgz#f39ad3db9d6801b4e6b478b61028d3f0b6819f7e" - integrity sha512-IKRVVoAYr4pIx4yIWNsz9mOsboxlNXiu7TNBnem/K/uTHdkyzXWDzHCK7UTolqBbgaBz0tQHsD3YNls0uIIjiw== - dependencies: - esprima "^4.0.0" - through "~2.3.4" - -errno@^0.1.3, errno@~0.1.7: - version "0.1.7" - resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.7.tgz#4684d71779ad39af177e3f007996f7c67c852618" - integrity sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg== - dependencies: - prr "~1.0.1" - -error-ex@^1.3.1: - version "1.3.2" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" - integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== - dependencies: - is-arrayish "^0.2.1" - -es-abstract@^1.17.0-next.1, es-abstract@^1.17.2, es-abstract@^1.17.5: - version "1.17.6" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.6.tgz#9142071707857b2cacc7b89ecb670316c3e2d52a" - integrity sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw== - dependencies: - es-to-primitive "^1.2.1" - function-bind "^1.1.1" - has "^1.0.3" - has-symbols "^1.0.1" - is-callable "^1.2.0" - is-regex "^1.1.0" - object-inspect "^1.7.0" - object-keys "^1.1.1" - object.assign "^4.1.0" - string.prototype.trimend "^1.0.1" - string.prototype.trimstart "^1.0.1" - -es-to-primitive@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" - integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA== - dependencies: - is-callable "^1.1.4" - is-date-object "^1.0.1" - is-symbol "^1.0.2" - -es6-promise@^4.1.0: - version "4.2.8" - resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-4.2.8.tgz#4eb21594c972bc40553d276e510539143db53e0a" - integrity sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w== - -escalade@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.0.1.tgz#52568a77443f6927cd0ab9c73129137533c965ed" - integrity sha512-DR6NO3h9niOT+MZs7bjxlj2a1k+POu5RN8CLTPX2+i78bRi9eLe7+0zXgUHMnGXWybYcL61E9hGhPKqedy8tQA== - -escape-html@^1.0.3, escape-html@~1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" - integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg= - -escape-string-regexp@2.0.0, escape-string-regexp@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" - integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== - -escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" - integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= - -eslint-scope@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.3.tgz#ca03833310f6889a3264781aa82e63eb9cfe7848" - integrity sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg== - dependencies: - esrecurse "^4.1.0" - estraverse "^4.1.1" - -esprima@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" - integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== - -esrecurse@^4.1.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.1.tgz#007a3b9fdbc2b3bb87e4879ea19c92fdbd3942cf" - integrity sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ== - dependencies: - estraverse "^4.1.0" - -estraverse@^4.1.0, estraverse@^4.1.1: - version "4.3.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" - integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== - -esutils@^2.0.2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" - integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== - -eta@^1.1.1: - version "1.2.2" - resolved "https://registry.yarnpkg.com/eta/-/eta-1.2.2.tgz#9f182673738589281042641cb22f801dcabdf7bf" - integrity sha512-8H+zm3HfY2ELz5P4zzR3uJ1LQLnhTAe5gb0vR9ziKZGCLhQrRtqwIyzsOkf7pdBnH7gFPLRAaKZdv2nj9vu9cw== - -etag@~1.8.1: - version "1.8.1" - resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" - integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= - -eval@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/eval/-/eval-0.1.4.tgz#e05dbe0dab4b9330215cbb7bf4886eb24bd58700" - integrity sha512-npGsebJejyjMRnLdFu+T/97dnigqIU0Ov3IGrZ8ygd1v7RL1vGkEKtvyWZobqUH1AQgKlg0Yqqe2BtMA9/QZLw== - dependencies: - require-like ">= 0.1.1" - -eventemitter3@^4.0.0: - version "4.0.4" - resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.4.tgz#b5463ace635a083d018bdc7c917b4c5f10a85384" - integrity sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ== - -events@^1.1.0, events@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/events/-/events-1.1.1.tgz#9ebdb7635ad099c70dcc4c2a1f5004288e8bd924" - integrity sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ= - -events@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/events/-/events-3.1.0.tgz#84279af1b34cb75aa88bf5ff291f6d0bd9b31a59" - integrity sha512-Rv+u8MLHNOdMjTAFeT3nCjHn2aGlx435FP/sDHNaRhDEMwyI/aB22Kj2qIN8R0cw3z28psEQLYwxVKLsKrMgWg== - -eventsource@^1.0.7: - version "1.0.7" - resolved "https://registry.yarnpkg.com/eventsource/-/eventsource-1.0.7.tgz#8fbc72c93fcd34088090bc0a4e64f4b5cee6d8d0" - integrity sha512-4Ln17+vVT0k8aWq+t/bF5arcS3EpT9gYtW66EPacdj/mAFevznsnyoHLPy2BA8gbIQeIHoPsvwmfBftfcG//BQ== - dependencies: - original "^1.0.0" - -evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02" - integrity sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA== - dependencies: - md5.js "^1.3.4" - safe-buffer "^5.1.1" - -execa@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" - integrity sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA== - dependencies: - cross-spawn "^6.0.0" - get-stream "^4.0.0" - is-stream "^1.1.0" - npm-run-path "^2.0.0" - p-finally "^1.0.0" - signal-exit "^3.0.0" - strip-eof "^1.0.0" - -execa@^3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-3.4.0.tgz#c08ed4550ef65d858fac269ffc8572446f37eb89" - integrity sha512-r9vdGQk4bmCuK1yKQu1KTwcT2zwfWdbdaXfCtAh+5nU/4fSX+JAb7vZGvI5naJrQlvONrEB20jeruESI69530g== - dependencies: - cross-spawn "^7.0.0" - get-stream "^5.0.0" - human-signals "^1.1.1" - is-stream "^2.0.0" - merge-stream "^2.0.0" - npm-run-path "^4.0.0" - onetime "^5.1.0" - p-finally "^2.0.0" - signal-exit "^3.0.2" - strip-final-newline "^2.0.0" - -expand-brackets@^2.1.4: - version "2.1.4" - resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" - integrity sha1-t3c14xXOMPa27/D4OwQVGiJEliI= - dependencies: - debug "^2.3.3" - define-property "^0.2.5" - extend-shallow "^2.0.1" - posix-character-classes "^0.1.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -express@^4.16.3, express@^4.17.1: - version "4.17.1" - resolved "https://registry.yarnpkg.com/express/-/express-4.17.1.tgz#4491fc38605cf51f8629d39c2b5d026f98a4c134" - integrity sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g== - 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" - -extend-shallow@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" - integrity sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8= - dependencies: - is-extendable "^0.1.0" - -extend-shallow@^3.0.0, extend-shallow@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" - integrity sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg= - dependencies: - assign-symbols "^1.0.0" - is-extendable "^1.0.1" - -extend@^3.0.0, extend@~3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" - integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== - -external-editor@^3.0.3: - version "3.1.0" - resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.1.0.tgz#cb03f740befae03ea4d283caed2741a83f335495" - integrity sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew== - dependencies: - chardet "^0.7.0" - iconv-lite "^0.4.24" - tmp "^0.0.33" - -extglob@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" - integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== - dependencies: - array-unique "^0.3.2" - define-property "^1.0.0" - expand-brackets "^2.1.4" - extend-shallow "^2.0.1" - fragment-cache "^0.2.1" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -extsprintf@1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" - integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU= - -extsprintf@^1.2.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" - integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8= - -fast-deep-equal@^3.1.1: - version "3.1.3" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" - integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== - -fast-glob@^2.0.2: - version "2.2.7" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-2.2.7.tgz#6953857c3afa475fff92ee6015d52da70a4cd39d" - integrity sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw== - dependencies: - "@mrmlnc/readdir-enhanced" "^2.2.1" - "@nodelib/fs.stat" "^1.1.2" - glob-parent "^3.1.0" - is-glob "^4.0.0" - merge2 "^1.2.3" - micromatch "^3.1.10" - -fast-glob@^3.0.3: - version "3.2.4" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.4.tgz#d20aefbf99579383e7f3cc66529158c9b98554d3" - integrity sha512-kr/Oo6PX51265qeuCYsyGypiO5uJFgBS0jksyG7FUeCyQzNwYnzrNIMR1NXfkZXsMYXYLRAHgISHBz8gQcxKHQ== - dependencies: - "@nodelib/fs.stat" "^2.0.2" - "@nodelib/fs.walk" "^1.2.3" - glob-parent "^5.1.0" - merge2 "^1.3.0" - micromatch "^4.0.2" - picomatch "^2.2.1" - -fast-json-stable-stringify@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" - integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== - -fastq@^1.6.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.8.0.tgz#550e1f9f59bbc65fe185cb6a9b4d95357107f481" - integrity sha512-SMIZoZdLh/fgofivvIkmknUXyPnvxRE3DhtZ5Me3Mrsk5gyPL42F0xr51TdRXskBxHfMp+07bcYzfsYEsSQA9Q== - dependencies: - reusify "^1.0.4" - -faye-websocket@^0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.10.0.tgz#4e492f8d04dfb6f89003507f6edbf2d501e7c6f4" - integrity sha1-TkkvjQTftviQA1B/btvy1QHnxvQ= - dependencies: - websocket-driver ">=0.5.1" - -faye-websocket@~0.11.1: - version "0.11.3" - resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.3.tgz#5c0e9a8968e8912c286639fde977a8b209f2508e" - integrity sha512-D2y4bovYpzziGgbHYtGCMjlJM36vAl/y+xUyn1C+FVx8szd1E+86KwVw6XvYSzOP8iMpm1X0I4xJD+QtUb36OA== - dependencies: - websocket-driver ">=0.5.1" - -feed@^4.1.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/feed/-/feed-4.2.1.tgz#b246ef891051c7dbf088ca203341d9fb0444baee" - integrity sha512-l28KKcK1J/u3iq5dRDmmoB2p7dtBfACC2NqJh4dI2kFptxH0asfjmOfcxqh5Sv8suAlVa73gZJ4REY5RrafVvg== - dependencies: - xml-js "^1.6.11" - -figgy-pudding@^3.5.1: - version "3.5.2" - resolved "https://registry.yarnpkg.com/figgy-pudding/-/figgy-pudding-3.5.2.tgz#b4eee8148abb01dcf1d1ac34367d59e12fa61d6e" - integrity sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw== - -figures@^3.0.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" - integrity sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg== - dependencies: - escape-string-regexp "^1.0.5" - -file-uri-to-path@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" - integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw== - -filesize@6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/filesize/-/filesize-6.0.1.tgz#f850b509909c7c86f7e450ea19006c31c2ed3d2f" - integrity sha512-u4AYWPgbI5GBhs6id1KdImZWn5yfyFrrQ8OWZdN7ZMfA8Bf4HcO0BGo9bmUIEV8yrp8I1xVfJ/dn90GtFNNJcg== - -filesize@^3.6.1: - version "3.6.1" - resolved "https://registry.yarnpkg.com/filesize/-/filesize-3.6.1.tgz#090bb3ee01b6f801a8a8be99d31710b3422bb317" - integrity sha512-7KjR1vv6qnicaPMi1iiTcI85CyYwRO/PSFCu6SvqL8jN2Wjt/NIYQTFtFs7fSDCYOstUkEWIQGFUg5YZQfjlcg== - -fill-range@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" - integrity sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc= - dependencies: - extend-shallow "^2.0.1" - is-number "^3.0.0" - repeat-string "^1.6.1" - to-regex-range "^2.1.0" - -fill-range@^7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" - integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== - dependencies: - to-regex-range "^5.0.1" - -finalhandler@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.2.tgz#b7e7d000ffd11938d0fdb053506f6ebabe9f587d" - integrity sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA== - 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" - -find-cache-dir@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-2.1.0.tgz#8d0f94cd13fe43c6c7c261a0d86115ca918c05f7" - integrity sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ== - dependencies: - commondir "^1.0.1" - make-dir "^2.0.0" - pkg-dir "^3.0.0" - -find-cache-dir@^3.0.0, find-cache-dir@^3.3.1: - version "3.3.1" - resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.3.1.tgz#89b33fad4a4670daa94f855f7fbe31d6d84fe880" - integrity sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ== - dependencies: - commondir "^1.0.1" - make-dir "^3.0.2" - pkg-dir "^4.1.0" - -find-up@4.1.0, find-up@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" - integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== - dependencies: - locate-path "^5.0.0" - path-exists "^4.0.0" - -find-up@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" - integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== - dependencies: - locate-path "^3.0.0" - -flatten@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/flatten/-/flatten-1.0.3.tgz#c1283ac9f27b368abc1e36d1ff7b04501a30356b" - integrity sha512-dVsPA/UwQ8+2uoFe5GHtiBMu48dWLTdsuEd7CKGlZlD78r1TTWBvDuFaFGKCo/ZfEr95Uk56vZoX86OsHkUeIg== - -flush-write-stream@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.1.1.tgz#8dd7d873a1babc207d94ead0c2e0e44276ebf2e8" - integrity sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w== - dependencies: - inherits "^2.0.3" - readable-stream "^2.3.6" - -follow-redirects@^1.0.0: - version "1.12.1" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.12.1.tgz#de54a6205311b93d60398ebc01cf7015682312b6" - integrity sha512-tmRv0AVuR7ZyouUHLeNSiO6pqulF7dYa3s19c6t+wz9LD69/uSzdMxJ2S91nTI9U3rt/IldxpzMOFejp6f0hjg== - -for-in@^0.1.3: - version "0.1.8" - resolved "https://registry.yarnpkg.com/for-in/-/for-in-0.1.8.tgz#d8773908e31256109952b1fdb9b3fa867d2775e1" - integrity sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE= - -for-in@^1.0.1, for-in@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" - integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA= - -for-own@^0.1.3: - version "0.1.5" - resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.5.tgz#5265c681a4f294dabbf17c9509b6763aa84510ce" - integrity sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4= - dependencies: - for-in "^1.0.1" - -foreach@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99" - integrity sha1-C+4AUBiusmDQo6865ljdATbsG5k= - -forever-agent@~0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" - integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= - -fork-ts-checker-webpack-plugin@3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-3.1.1.tgz#a1642c0d3e65f50c2cc1742e9c0a80f441f86b19" - integrity sha512-DuVkPNrM12jR41KM2e+N+styka0EgLkTnXmNcXdgOM37vtGeY+oCBK/Jx0hzSeEU6memFCtWb4htrHPMDfwwUQ== - dependencies: - babel-code-frame "^6.22.0" - chalk "^2.4.1" - chokidar "^3.3.0" - micromatch "^3.1.10" - minimatch "^3.0.4" - semver "^5.6.0" - tapable "^1.0.0" - worker-rpc "^0.1.0" - -form-data@~2.3.2: - version "2.3.3" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" - integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ== - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.6" - mime-types "^2.1.12" - -forwarded@~0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.2.tgz#98c23dab1175657b8c0573e8ceccd91b0ff18c84" - integrity sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ= - -fragment-cache@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" - integrity sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk= - dependencies: - map-cache "^0.2.2" - -fresh@0.5.2: - version "0.5.2" - resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" - integrity sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac= - -from2@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" - integrity sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8= - dependencies: - inherits "^2.0.1" - readable-stream "^2.0.0" - -fs-extra@^8.1.0: - version "8.1.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0" - integrity sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g== - dependencies: - graceful-fs "^4.2.0" - jsonfile "^4.0.0" - universalify "^0.1.0" - -fs-extra@^9.0.0: - version "9.0.1" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.0.1.tgz#910da0062437ba4c39fedd863f1675ccfefcb9fc" - integrity sha512-h2iAoN838FqAFJY2/qVpzFXy+EBxfVE220PalAqQLDVsFOHLJrZvut5puAbCdNv6WJk+B8ihI+k0c7JK5erwqQ== - dependencies: - at-least-node "^1.0.0" - graceful-fs "^4.2.0" - jsonfile "^6.0.1" - universalify "^1.0.0" - -fs-minipass@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" - integrity sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg== - dependencies: - minipass "^3.0.0" - -fs-write-stream-atomic@^1.0.8: - version "1.0.10" - resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" - integrity sha1-tH31NJPvkR33VzHnCp3tAYnbQMk= - dependencies: - graceful-fs "^4.1.2" - iferr "^0.1.5" - imurmurhash "^0.1.4" - readable-stream "1 || 2" - -fs.realpath@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" - integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= - -fsevents@^1.2.7: - version "1.2.13" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.13.tgz#f325cb0455592428bcf11b383370ef70e3bfcc38" - integrity sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw== - dependencies: - bindings "^1.5.0" - nan "^2.12.1" - -fsevents@~2.1.2: - version "2.1.3" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.3.tgz#fb738703ae8d2f9fe900c33836ddebee8b97f23e" - integrity sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ== - -function-bind@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" - integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== - -gensync@^1.0.0-beta.1: - version "1.0.0-beta.1" - resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.1.tgz#58f4361ff987e5ff6e1e7a210827aa371eaac269" - integrity sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg== - -get-caller-file@^2.0.1: - version "2.0.5" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" - integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== - -get-own-enumerable-property-symbols@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz#b5fde77f22cbe35f390b4e089922c50bce6ef664" - integrity sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g== - -get-stream@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" - integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== - dependencies: - pump "^3.0.0" - -get-stream@^5.0.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.1.0.tgz#01203cdc92597f9b909067c3e656cc1f4d3c4dc9" - integrity sha512-EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw== - dependencies: - pump "^3.0.0" - -get-value@^2.0.3, get-value@^2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" - integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg= - -getpass@^0.1.1: - version "0.1.7" - resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" - integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo= - dependencies: - assert-plus "^1.0.0" - -github-slugger@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/github-slugger/-/github-slugger-1.3.0.tgz#9bd0a95c5efdfc46005e82a906ef8e2a059124c9" - integrity sha512-gwJScWVNhFYSRDvURk/8yhcFBee6aFjye2a7Lhb2bUyRulpIoek9p0I9Kt7PT67d/nUlZbFu8L9RLiA0woQN8Q== - dependencies: - emoji-regex ">=6.0.0 <=6.1.1" - -glob-parent@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" - integrity sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4= - dependencies: - is-glob "^3.1.0" - path-dirname "^1.0.0" - -glob-parent@^5.1.0, glob-parent@~5.1.0: - version "5.1.1" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.1.tgz#b6c1ef417c4e5663ea498f1c45afac6916bbc229" - integrity sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ== - dependencies: - is-glob "^4.0.1" - -glob-to-regexp@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz#8c5a1494d2066c570cc3bfe4496175acc4d502ab" - integrity sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs= - -glob@^7.0.0, glob@^7.0.3, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4: - version "7.1.6" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" - integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== - 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" - -global-modules@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-2.0.0.tgz#997605ad2345f27f51539bea26574421215c7780" - integrity sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A== - dependencies: - global-prefix "^3.0.0" - -global-prefix@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-3.0.0.tgz#fc85f73064df69f50421f47f883fe5b913ba9b97" - integrity sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg== - dependencies: - ini "^1.3.5" - kind-of "^6.0.2" - which "^1.3.1" - -global@^4.3.2: - version "4.4.0" - resolved "https://registry.yarnpkg.com/global/-/global-4.4.0.tgz#3e7b105179006a323ed71aafca3e9c57a5cc6406" - integrity sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w== - dependencies: - min-document "^2.19.0" - process "^0.11.10" - -globals@^11.1.0: - version "11.12.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" - integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== - -globby@8.0.2: - version "8.0.2" - resolved "https://registry.yarnpkg.com/globby/-/globby-8.0.2.tgz#5697619ccd95c5275dbb2d6faa42087c1a941d8d" - integrity sha512-yTzMmKygLp8RUpG1Ymu2VXPSJQZjNAZPD4ywgYEaG7e4tBJeUQBO8OpXrf1RCNcEs5alsoJYPAMiIHP0cmeC7w== - dependencies: - array-union "^1.0.1" - dir-glob "2.0.0" - fast-glob "^2.0.2" - glob "^7.1.2" - ignore "^3.3.5" - pify "^3.0.0" - slash "^1.0.0" - -globby@^10.0.1: - version "10.0.2" - resolved "https://registry.yarnpkg.com/globby/-/globby-10.0.2.tgz#277593e745acaa4646c3ab411289ec47a0392543" - integrity sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg== - dependencies: - "@types/glob" "^7.1.1" - array-union "^2.1.0" - dir-glob "^3.0.1" - fast-glob "^3.0.3" - glob "^7.1.3" - ignore "^5.1.1" - merge2 "^1.2.3" - slash "^3.0.0" - -globby@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c" - integrity sha1-9abXDoOV4hyFj7BInWTfAkJNUGw= - dependencies: - array-union "^1.0.1" - glob "^7.0.3" - object-assign "^4.0.1" - pify "^2.0.0" - pinkie-promise "^2.0.0" - -globby@^7.1.1: - version "7.1.1" - resolved "https://registry.yarnpkg.com/globby/-/globby-7.1.1.tgz#fb2ccff9401f8600945dfada97440cca972b8680" - integrity sha1-+yzP+UAfhgCUXfral0QMypcrhoA= - dependencies: - array-union "^1.0.1" - dir-glob "^2.0.0" - glob "^7.1.2" - ignore "^3.3.5" - pify "^3.0.0" - slash "^1.0.0" - -good-listener@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/good-listener/-/good-listener-1.2.2.tgz#d53b30cdf9313dffb7dc9a0d477096aa6d145c50" - integrity sha1-1TswzfkxPf+33JoNR3CWqm0UXFA= - dependencies: - delegate "^3.1.2" - -graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.2: - version "4.2.4" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.4.tgz#2256bde14d3632958c465ebc96dc467ca07a29fb" - integrity sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw== - -gray-matter@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/gray-matter/-/gray-matter-4.0.2.tgz#9aa379e3acaf421193fce7d2a28cebd4518ac454" - integrity sha512-7hB/+LxrOjq/dd8APlK0r24uL/67w7SkYnfwhNFwg/VDIGWGmduTDYf3WNstLW2fbbmRwrDGCVSJ2isuf2+4Hw== - dependencies: - js-yaml "^3.11.0" - kind-of "^6.0.2" - section-matter "^1.0.0" - strip-bom-string "^1.0.0" - -gzip-size@5.1.1, gzip-size@^5.0.0: - version "5.1.1" - resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-5.1.1.tgz#cb9bee692f87c0612b232840a873904e4c135274" - integrity sha512-FNHi6mmoHvs1mxZAds4PpdCS6QG8B4C1krxJsMutgxl5t3+GlRTzzI3NEkifXx2pVsOvJdOGSmIgDhQ55FwdPA== - dependencies: - duplexer "^0.1.1" - pify "^4.0.1" - -handle-thing@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-2.0.1.tgz#857f79ce359580c340d43081cc648970d0bb234e" - integrity sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg== - -handlebars@^4.7.6: - version "4.7.6" - resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.6.tgz#d4c05c1baf90e9945f77aa68a7a219aa4a7df74e" - integrity sha512-1f2BACcBfiwAfStCKZNrUCgqNZkGsAT7UM3kkYtXuLo0KnaVfjKOyf7PRzB6++aK9STyT1Pd2ZCPe3EGOXleXA== - dependencies: - minimist "^1.2.5" - neo-async "^2.6.0" - source-map "^0.6.1" - wordwrap "^1.0.0" - optionalDependencies: - uglify-js "^3.1.4" - -har-schema@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" - integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI= - -har-validator@~5.1.3: - version "5.1.3" - resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.3.tgz#1ef89ebd3e4996557675eed9893110dc350fa080" - integrity sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g== - dependencies: - ajv "^6.5.5" - har-schema "^2.0.0" - -has-ansi@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" - integrity sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE= - dependencies: - ansi-regex "^2.0.0" - -has-flag@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" - integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= - -has-flag@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" - integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== - -has-symbols@^1.0.0, has-symbols@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.1.tgz#9f5214758a44196c406d9bd76cebf81ec2dd31e8" - integrity sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg== - -has-value@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" - integrity sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8= - dependencies: - get-value "^2.0.3" - has-values "^0.1.4" - isobject "^2.0.0" - -has-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" - integrity sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc= - dependencies: - get-value "^2.0.6" - has-values "^1.0.0" - isobject "^3.0.0" - -has-values@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" - integrity sha1-bWHeldkd/Km5oCCJrThL/49it3E= - -has-values@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" - integrity sha1-lbC2P+whRmGab+V/51Yo1aOe/k8= - dependencies: - is-number "^3.0.0" - kind-of "^4.0.0" - -has@^1.0.0, has@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" - integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== - dependencies: - function-bind "^1.1.1" - -hash-base@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.1.0.tgz#55c381d9e06e1d2997a883b4a3fddfe7f0d3af33" - integrity sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA== - dependencies: - inherits "^2.0.4" - readable-stream "^3.6.0" - safe-buffer "^5.2.0" - -hash.js@^1.0.0, hash.js@^1.0.3: - version "1.1.7" - resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" - integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== - dependencies: - inherits "^2.0.3" - minimalistic-assert "^1.0.1" - -hast-to-hyperscript@^7.0.0: - version "7.0.4" - resolved "https://registry.yarnpkg.com/hast-to-hyperscript/-/hast-to-hyperscript-7.0.4.tgz#7c4c037d9a8ea19b0a3fdb676a26448ad922353d" - integrity sha512-vmwriQ2H0RPS9ho4Kkbf3n3lY436QKLq6VaGA1pzBh36hBi3tm1DO9bR+kaJIbpT10UqaANDkMjxvjVfr+cnOA== - dependencies: - comma-separated-tokens "^1.0.0" - property-information "^5.3.0" - space-separated-tokens "^1.0.0" - style-to-object "^0.2.1" - unist-util-is "^3.0.0" - web-namespaces "^1.1.2" - -hast-util-from-parse5@^5.0.0: - version "5.0.3" - resolved "https://registry.yarnpkg.com/hast-util-from-parse5/-/hast-util-from-parse5-5.0.3.tgz#3089dc0ee2ccf6ec8bc416919b51a54a589e097c" - integrity sha512-gOc8UB99F6eWVWFtM9jUikjN7QkWxB3nY0df5Z0Zq1/Nkwl5V4hAAsl0tmwlgWl/1shlTF8DnNYLO8X6wRV9pA== - dependencies: - ccount "^1.0.3" - hastscript "^5.0.0" - property-information "^5.0.0" - web-namespaces "^1.1.2" - xtend "^4.0.1" - -hast-util-parse-selector@^2.0.0: - version "2.2.4" - resolved "https://registry.yarnpkg.com/hast-util-parse-selector/-/hast-util-parse-selector-2.2.4.tgz#60c99d0b519e12ab4ed32e58f150ec3f61ed1974" - integrity sha512-gW3sxfynIvZApL4L07wryYF4+C9VvH3AUi7LAnVXV4MneGEgwOByXvFo18BgmTWnm7oHAe874jKbIB1YhHSIzA== - -hast-util-raw@5.0.2: - version "5.0.2" - resolved "https://registry.yarnpkg.com/hast-util-raw/-/hast-util-raw-5.0.2.tgz#62288f311ec2f35e066a30d5e0277f963ad43a67" - integrity sha512-3ReYQcIHmzSgMq8UrDZHFL0oGlbuVGdLKs8s/Fe8BfHFAyZDrdv1fy/AGn+Fim8ZuvAHcJ61NQhVMtyfHviT/g== - dependencies: - hast-util-from-parse5 "^5.0.0" - hast-util-to-parse5 "^5.0.0" - html-void-elements "^1.0.0" - parse5 "^5.0.0" - unist-util-position "^3.0.0" - web-namespaces "^1.0.0" - xtend "^4.0.0" - zwitch "^1.0.0" - -hast-util-to-parse5@^5.0.0: - version "5.1.2" - resolved "https://registry.yarnpkg.com/hast-util-to-parse5/-/hast-util-to-parse5-5.1.2.tgz#09d27bee9ba9348ea05a6cfcc44e02f9083969b6" - integrity sha512-ZgYLJu9lYknMfsBY0rBV4TJn2xiwF1fXFFjbP6EE7S0s5mS8LIKBVWzhA1MeIs1SWW6GnnE4In6c3kPb+CWhog== - dependencies: - hast-to-hyperscript "^7.0.0" - property-information "^5.0.0" - web-namespaces "^1.0.0" - xtend "^4.0.0" - zwitch "^1.0.0" - -hastscript@^5.0.0: - version "5.1.2" - resolved "https://registry.yarnpkg.com/hastscript/-/hastscript-5.1.2.tgz#bde2c2e56d04c62dd24e8c5df288d050a355fb8a" - integrity sha512-WlztFuK+Lrvi3EggsqOkQ52rKbxkXL3RwB6t5lwoa8QLMemoWfBuL43eDrwOamJyR7uKQKdmKYaBH1NZBiIRrQ== - dependencies: - comma-separated-tokens "^1.0.0" - hast-util-parse-selector "^2.0.0" - property-information "^5.0.0" - space-separated-tokens "^1.0.0" - -he@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" - integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== - -hex-color-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/hex-color-regex/-/hex-color-regex-1.1.0.tgz#4c06fccb4602fe2602b3c93df82d7e7dbf1a8a8e" - integrity sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ== - -highlight.js@^10.0.0: - version "10.1.1" - resolved "https://registry.yarnpkg.com/highlight.js/-/highlight.js-10.1.1.tgz#691a2148a8d922bf12e52a294566a0d993b94c57" - integrity sha512-b4L09127uVa+9vkMgPpdUQP78ickGbHEQTWeBrQFTJZ4/n2aihWOGS0ZoUqAwjVmfjhq/C76HRzkqwZhK4sBbg== - -history@^4.9.0: - version "4.10.1" - resolved "https://registry.yarnpkg.com/history/-/history-4.10.1.tgz#33371a65e3a83b267434e2b3f3b1b4c58aad4cf3" - integrity sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew== - dependencies: - "@babel/runtime" "^7.1.2" - loose-envify "^1.2.0" - resolve-pathname "^3.0.0" - tiny-invariant "^1.0.2" - tiny-warning "^1.0.0" - value-equal "^1.0.1" - -hmac-drbg@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" - integrity sha1-0nRXAQJabHdabFRXk+1QL8DGSaE= - dependencies: - hash.js "^1.0.3" - minimalistic-assert "^1.0.0" - minimalistic-crypto-utils "^1.0.1" - -hogan.js@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/hogan.js/-/hogan.js-3.0.2.tgz#4cd9e1abd4294146e7679e41d7898732b02c7bfd" - integrity sha1-TNnhq9QpQUbnZ55B14mHMrAse/0= - dependencies: - mkdirp "0.3.0" - nopt "1.0.10" - -hoist-non-react-statics@^3.1.0: - version "3.3.2" - resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45" - integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw== - dependencies: - react-is "^16.7.0" - -hoopy@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/hoopy/-/hoopy-0.1.4.tgz#609207d661100033a9a9402ad3dea677381c1b1d" - integrity sha512-HRcs+2mr52W0K+x8RzcLzuPPmVIKMSv97RGHy0Ea9y/mpcaK+xTrjICA04KAHi4GRzxliNqNJEFYWHghy3rSfQ== - -hpack.js@^2.1.6: - version "2.1.6" - resolved "https://registry.yarnpkg.com/hpack.js/-/hpack.js-2.1.6.tgz#87774c0949e513f42e84575b3c45681fade2a0b2" - integrity sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI= - dependencies: - inherits "^2.0.1" - obuf "^1.0.0" - readable-stream "^2.0.1" - wbuf "^1.1.0" - -hsl-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/hsl-regex/-/hsl-regex-1.0.0.tgz#d49330c789ed819e276a4c0d272dffa30b18fe6e" - integrity sha1-1JMwx4ntgZ4nakwNJy3/owsY/m4= - -hsla-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/hsla-regex/-/hsla-regex-1.0.0.tgz#c1ce7a3168c8c6614033a4b5f7877f3b225f9c38" - integrity sha1-wc56MWjIxmFAM6S194d/OyJfnDg= - -html-comment-regex@^1.1.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/html-comment-regex/-/html-comment-regex-1.1.2.tgz#97d4688aeb5c81886a364faa0cad1dda14d433a7" - integrity sha512-P+M65QY2JQ5Y0G9KKdlDpo0zK+/OHptU5AaBwUfAIDJZk1MYf32Frm84EcOytfJE0t5JvkAnKlmjsXDnWzCJmQ== - -html-entities@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.3.1.tgz#fb9a1a4b5b14c5daba82d3e34c6ae4fe701a0e44" - integrity sha512-rhE/4Z3hIhzHAUKbW8jVcCyuT5oJCXXqhN/6mXXVCpzTmvJnoH2HL/bt3EZ6p55jbFJBeAe1ZNpL5BugLujxNA== - -html-minifier-terser@^5.0.1, html-minifier-terser@^5.0.5: - version "5.1.1" - resolved "https://registry.yarnpkg.com/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz#922e96f1f3bb60832c2634b79884096389b1f054" - integrity sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg== - dependencies: - camel-case "^4.1.1" - clean-css "^4.2.3" - commander "^4.1.1" - he "^1.2.0" - param-case "^3.0.3" - relateurl "^0.2.7" - terser "^4.6.3" - -html-tags@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/html-tags/-/html-tags-3.1.0.tgz#7b5e6f7e665e9fb41f30007ed9e0d41e97fb2140" - integrity sha512-1qYz89hW3lFDEazhjW0yVAV87lw8lVkrJocr72XmBkMKsoSVJCQx3W8BXsC7hO2qAt8BoVjYjtAcZ9perqGnNg== - -html-void-elements@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/html-void-elements/-/html-void-elements-1.0.5.tgz#ce9159494e86d95e45795b166c2021c2cfca4483" - integrity sha512-uE/TxKuyNIcx44cIWnjr/rfIATDH7ZaOMmstu0CwhFG1Dunhlp4OC6/NMbhiwoq5BpW0ubi303qnEk/PZj614w== - -html-webpack-plugin@^4.0.4: - version "4.3.0" - resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-4.3.0.tgz#53bf8f6d696c4637d5b656d3d9863d89ce8174fd" - integrity sha512-C0fzKN8yQoVLTelcJxZfJCE+aAvQiY2VUf3UuKrR4a9k5UMWYOtpDLsaXwATbcVCnI05hUS7L9ULQHWLZhyi3w== - dependencies: - "@types/html-minifier-terser" "^5.0.0" - "@types/tapable" "^1.0.5" - "@types/webpack" "^4.41.8" - html-minifier-terser "^5.0.1" - loader-utils "^1.2.3" - lodash "^4.17.15" - pretty-error "^2.1.1" - tapable "^1.1.3" - util.promisify "1.0.0" - -htmlparser2@^3.3.0, htmlparser2@^3.9.1: - version "3.10.1" - resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.10.1.tgz#bd679dc3f59897b6a34bb10749c855bb53a9392f" - integrity sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ== - dependencies: - domelementtype "^1.3.1" - domhandler "^2.3.0" - domutils "^1.5.1" - entities "^1.1.1" - inherits "^2.0.1" - readable-stream "^3.1.1" - -http-deceiver@^1.2.7: - version "1.2.7" - resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" - integrity sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc= - -http-errors@1.7.2: - version "1.7.2" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.2.tgz#4f5029cf13239f31036e5b2e55292bcfbcc85c8f" - integrity sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg== - dependencies: - depd "~1.1.2" - inherits "2.0.3" - setprototypeof "1.1.1" - statuses ">= 1.5.0 < 2" - toidentifier "1.0.0" - -http-errors@~1.6.2: - version "1.6.3" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d" - integrity sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0= - dependencies: - depd "~1.1.2" - inherits "2.0.3" - setprototypeof "1.1.0" - statuses ">= 1.4.0 < 2" - -http-errors@~1.7.2: - version "1.7.3" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.3.tgz#6c619e4f9c60308c38519498c14fbb10aacebb06" - integrity sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw== - dependencies: - depd "~1.1.2" - inherits "2.0.4" - setprototypeof "1.1.1" - statuses ">= 1.5.0 < 2" - toidentifier "1.0.0" - -http-parser-js@>=0.5.1: - version "0.5.2" - resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.5.2.tgz#da2e31d237b393aae72ace43882dd7e270a8ff77" - integrity sha512-opCO9ASqg5Wy2FNo7A0sxy71yGbbkJJXLdgMK04Tcypw9jr2MgWbyubb0+WdmDmGnFflO7fRbqbaihh/ENDlRQ== - -http-proxy-middleware@0.19.1: - version "0.19.1" - resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz#183c7dc4aa1479150306498c210cdaf96080a43a" - integrity sha512-yHYTgWMQO8VvwNS22eLLloAkvungsKdKTLO8AJlftYIKNfJr3GK3zK0ZCfzDDGUBttdGc8xFy1mCitvNKQtC3Q== - dependencies: - http-proxy "^1.17.0" - is-glob "^4.0.0" - lodash "^4.17.11" - micromatch "^3.1.10" - -http-proxy@^1.17.0: - version "1.18.1" - resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.18.1.tgz#401541f0534884bbf95260334e72f88ee3976549" - integrity sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ== - dependencies: - eventemitter3 "^4.0.0" - follow-redirects "^1.0.0" - requires-port "^1.0.0" - -http-signature@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" - integrity sha1-muzZJRFHcvPZW2WmCruPfBj7rOE= - dependencies: - assert-plus "^1.0.0" - jsprim "^1.2.2" - sshpk "^1.7.0" - -https-browserify@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" - integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM= - -human-signals@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3" - integrity sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw== - -iconv-lite@0.4.24, iconv-lite@^0.4.24: - version "0.4.24" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" - integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== - dependencies: - safer-buffer ">= 2.1.2 < 3" - -icss-utils@^4.0.0, icss-utils@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-4.1.1.tgz#21170b53789ee27447c2f47dd683081403f9a467" - integrity sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA== - dependencies: - postcss "^7.0.14" - -ieee754@^1.1.4: - version "1.1.13" - resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.13.tgz#ec168558e95aa181fd87d37f55c32bbcb6708b84" - integrity sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg== - -iferr@^0.1.5: - version "0.1.5" - resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501" - integrity sha1-xg7taebY/bazEEofy8ocGS3FtQE= - -ignore@^3.3.5: - version "3.3.10" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.10.tgz#0a97fb876986e8081c631160f8f9f389157f0043" - integrity sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug== - -ignore@^5.1.1: - version "5.1.8" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.8.tgz#f150a8b50a34289b33e22f5889abd4d8016f0e57" - integrity sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw== - -immediate@^3.2.3: - version "3.3.0" - resolved "https://registry.yarnpkg.com/immediate/-/immediate-3.3.0.tgz#1aef225517836bcdf7f2a2de2600c79ff0269266" - integrity sha512-HR7EVodfFUdQCTIeySw+WDRFJlPcLOJbXfwwZ7Oom6tjsvZ3bOkCDJHehQC3nxJrv7+f9XecwazynjU8e4Vw3Q== - -immer@1.10.0: - version "1.10.0" - resolved "https://registry.yarnpkg.com/immer/-/immer-1.10.0.tgz#bad67605ba9c810275d91e1c2a47d4582e98286d" - integrity sha512-O3sR1/opvCDGLEVcvrGTMtLac8GJ5IwZC4puPrLuRj3l7ICKvkmA0vGuU9OW8mV9WIBRnaxp5GJh9IEAaNOoYg== - -import-cwd@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/import-cwd/-/import-cwd-2.1.0.tgz#aa6cf36e722761285cb371ec6519f53e2435b0a9" - integrity sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk= - dependencies: - import-from "^2.1.0" - -import-fresh@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-2.0.0.tgz#d81355c15612d386c61f9ddd3922d4304822a546" - integrity sha1-2BNVwVYS04bGH53dOSLUMEgipUY= - dependencies: - caller-path "^2.0.0" - resolve-from "^3.0.0" - -import-fresh@^3.1.0, import-fresh@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.2.1.tgz#633ff618506e793af5ac91bf48b72677e15cbe66" - integrity sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ== - dependencies: - parent-module "^1.0.0" - resolve-from "^4.0.0" - -import-from@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/import-from/-/import-from-2.1.0.tgz#335db7f2a7affd53aaa471d4b8021dee36b7f3b1" - integrity sha1-M1238qev/VOqpHHUuAId7ja387E= - dependencies: - resolve-from "^3.0.0" - -import-local@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/import-local/-/import-local-2.0.0.tgz#55070be38a5993cf18ef6db7e961f5bee5c5a09d" - integrity sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ== - dependencies: - pkg-dir "^3.0.0" - resolve-cwd "^2.0.0" - -imurmurhash@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" - integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= - -indent-string@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" - integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== - -indexes-of@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607" - integrity sha1-8w9xbI4r00bHtn0985FVZqfAVgc= - -infer-owner@^1.0.3, infer-owner@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467" - integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A== - -infima@0.2.0-alpha.12: - version "0.2.0-alpha.12" - resolved "https://registry.yarnpkg.com/infima/-/infima-0.2.0-alpha.12.tgz#6b4a0ba9756262e4f1af2c60feb4bc0ffd9b9e21" - integrity sha512-in5n36oE2sdiB/1rzuzdmKyuNRMVUO9P+qUidUG8leHeDU+WMQ7oTP7MXSqtAAxduiPb7HHi0/ptQLLUr/ge4w== - -inflight@^1.0.4: - version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" - integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= - dependencies: - once "^1.3.0" - wrappy "1" - -inherits@2, inherits@2.0.4, inherits@^2.0.0, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3: - version "2.0.4" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" - integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== - -inherits@2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" - integrity sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE= - -inherits@2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" - integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= - -ini@^1.3.5: - version "1.3.5" - resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" - integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw== - -inline-style-parser@0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/inline-style-parser/-/inline-style-parser-0.1.1.tgz#ec8a3b429274e9c0a1f1c4ffa9453a7fef72cea1" - integrity sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q== - -inquirer@7.0.4: - version "7.0.4" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.0.4.tgz#99af5bde47153abca23f5c7fc30db247f39da703" - integrity sha512-Bu5Td5+j11sCkqfqmUTiwv+tWisMtP0L7Q8WrqA2C/BbBhy1YTdFrvjjlrKq8oagA/tLQBski2Gcx/Sqyi2qSQ== - dependencies: - ansi-escapes "^4.2.1" - chalk "^2.4.2" - cli-cursor "^3.1.0" - cli-width "^2.0.0" - external-editor "^3.0.3" - figures "^3.0.0" - lodash "^4.17.15" - mute-stream "0.0.8" - run-async "^2.2.0" - rxjs "^6.5.3" - string-width "^4.1.0" - strip-ansi "^5.1.0" - through "^2.3.6" - -internal-ip@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/internal-ip/-/internal-ip-4.3.0.tgz#845452baad9d2ca3b69c635a137acb9a0dad0907" - integrity sha512-S1zBo1D6zcsyuC6PMmY5+55YMILQ9av8lotMx447Bq6SAgo/sDK6y6uUKmuYhW7eacnIhFfsPmCNYdDzsnnDCg== - dependencies: - default-gateway "^4.2.0" - ipaddr.js "^1.9.0" - -interpret@^1.0.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.4.0.tgz#665ab8bc4da27a774a40584e812e3e0fa45b1a1e" - integrity sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA== - -invariant@^2.2.2, invariant@^2.2.4: - version "2.2.4" - resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" - integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA== - dependencies: - loose-envify "^1.0.0" - -ip-regex@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-2.1.0.tgz#fa78bf5d2e6913c911ce9f819ee5146bb6d844e9" - integrity sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk= - -ip@^1.1.0, ip@^1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" - integrity sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo= - -ipaddr.js@1.9.1, ipaddr.js@^1.9.0: - version "1.9.1" - resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" - integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== - -is-absolute-url@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-2.1.0.tgz#50530dfb84fcc9aa7dbe7852e83a37b93b9f2aa6" - integrity sha1-UFMN+4T8yap9vnhS6Do3uTufKqY= - -is-absolute-url@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-3.0.3.tgz#96c6a22b6a23929b11ea0afb1836c36ad4a5d698" - integrity sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q== - -is-accessor-descriptor@^0.1.6: - version "0.1.6" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" - integrity sha1-qeEss66Nh2cn7u84Q/igiXtcmNY= - dependencies: - kind-of "^3.0.2" - -is-accessor-descriptor@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" - integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ== - dependencies: - kind-of "^6.0.0" - -is-alphabetical@1.0.4, is-alphabetical@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-alphabetical/-/is-alphabetical-1.0.4.tgz#9e7d6b94916be22153745d184c298cbf986a686d" - integrity sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg== - -is-alphanumerical@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz#7eb9a2431f855f6b1ef1a78e326df515696c4dbf" - integrity sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A== - dependencies: - is-alphabetical "^1.0.0" - is-decimal "^1.0.0" - -is-arguments@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.0.4.tgz#3faf966c7cba0ff437fb31f6250082fcf0448cf3" - integrity sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA== - -is-arrayish@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" - integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= - -is-arrayish@^0.3.1: - version "0.3.2" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.3.2.tgz#4574a2ae56f7ab206896fb431eaeed066fdf8f03" - integrity sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ== - -is-binary-path@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" - integrity sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg= - dependencies: - binary-extensions "^1.0.0" - -is-binary-path@~2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" - integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== - dependencies: - binary-extensions "^2.0.0" - -is-buffer@^1.0.2, is-buffer@^1.1.5: - version "1.1.6" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" - integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== - -is-buffer@^2.0.0: - version "2.0.4" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.4.tgz#3e572f23c8411a5cfd9557c849e3665e0b290623" - integrity sha512-Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A== - -is-callable@^1.1.4, is-callable@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.0.tgz#83336560b54a38e35e3a2df7afd0454d691468bb" - integrity sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw== - -is-color-stop@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-color-stop/-/is-color-stop-1.1.0.tgz#cfff471aee4dd5c9e158598fbe12967b5cdad345" - integrity sha1-z/9HGu5N1cnhWFmPvhKWe1za00U= - dependencies: - css-color-names "^0.0.4" - hex-color-regex "^1.1.0" - hsl-regex "^1.0.0" - hsla-regex "^1.0.0" - rgb-regex "^1.0.1" - rgba-regex "^1.0.0" - -is-data-descriptor@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" - integrity sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y= - dependencies: - kind-of "^3.0.2" - -is-data-descriptor@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" - integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ== - dependencies: - kind-of "^6.0.0" - -is-date-object@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.2.tgz#bda736f2cd8fd06d32844e7743bfa7494c3bfd7e" - integrity sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g== - -is-decimal@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-decimal/-/is-decimal-1.0.4.tgz#65a3a5958a1c5b63a706e1b333d7cd9f630d3fa5" - integrity sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw== - -is-descriptor@^0.1.0: - version "0.1.6" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" - integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg== - dependencies: - is-accessor-descriptor "^0.1.6" - is-data-descriptor "^0.1.4" - kind-of "^5.0.0" - -is-descriptor@^1.0.0, is-descriptor@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" - integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg== - dependencies: - is-accessor-descriptor "^1.0.0" - is-data-descriptor "^1.0.0" - kind-of "^6.0.2" - -is-directory@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1" - integrity sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE= - -is-docker@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.0.0.tgz#2cb0df0e75e2d064fe1864c37cdeacb7b2dcf25b" - integrity sha512-pJEdRugimx4fBMra5z2/5iRdZ63OhYV0vr0Dwm5+xtW4D1FvRkB8hamMIhnWfyJeDdyr/aa7BDyNbtG38VxgoQ== - -is-extendable@^0.1.0, is-extendable@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" - integrity sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik= - -is-extendable@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" - integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== - dependencies: - is-plain-object "^2.0.4" - -is-extglob@^2.1.0, is-extglob@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" - integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= - -is-fullwidth-code-point@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" - integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= - -is-fullwidth-code-point@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" - integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== - -is-glob@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" - integrity sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo= - dependencies: - is-extglob "^2.1.0" - -is-glob@^4.0.0, is-glob@^4.0.1, is-glob@~4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" - integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== - dependencies: - is-extglob "^2.1.1" - -is-hexadecimal@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz#cc35c97588da4bd49a8eedd6bc4082d44dcb23a7" - integrity sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw== - -is-number@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" - integrity sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU= - dependencies: - kind-of "^3.0.2" - -is-number@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" - integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== - -is-obj@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" - integrity sha1-PkcprB9f3gJc19g6iW2rn09n2w8= - -is-obj@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982" - integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w== - -is-path-cwd@^2.0.0, is-path-cwd@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-2.2.0.tgz#67d43b82664a7b5191fd9119127eb300048a9fdb" - integrity sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ== - -is-path-in-cwd@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz#bfe2dca26c69f397265a4009963602935a053acb" - integrity sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ== - dependencies: - is-path-inside "^2.1.0" - -is-path-inside@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-2.1.0.tgz#7c9810587d659a40d27bcdb4d5616eab059494b2" - integrity sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg== - dependencies: - path-is-inside "^1.0.2" - -is-path-inside@^3.0.1: - version "3.0.2" - resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.2.tgz#f5220fc82a3e233757291dddc9c5877f2a1f3017" - integrity sha512-/2UGPSgmtqwo1ktx8NDHjuPwZWmHhO+gj0f93EkhLB5RgW9RZevWYYlIkS6zePc6U2WpOdQYIwHe9YC4DWEBVg== - -is-plain-obj@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" - integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= - -is-plain-obj@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" - integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA== - -is-plain-object@^2.0.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" - integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== - dependencies: - isobject "^3.0.1" - -is-regex@^1.0.4, is-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.0.tgz#ece38e389e490df0dc21caea2bd596f987f767ff" - integrity sha512-iI97M8KTWID2la5uYXlkbSDQIg4F6o1sYboZKKTDpnDQMLtUL86zxhgDet3Q2SriaYsyGqZ6Mn2SjbRKeLHdqw== - dependencies: - has-symbols "^1.0.1" - -is-regexp@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-regexp/-/is-regexp-1.0.0.tgz#fd2d883545c46bac5a633e7b9a09e87fa2cb5069" - integrity sha1-/S2INUXEa6xaYz57mgnof6LLUGk= - -is-resolvable@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88" - integrity sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg== - -is-root@2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-root/-/is-root-2.1.0.tgz#809e18129cf1129644302a4f8544035d51984a9c" - integrity sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg== - -is-stream@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" - integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ= - -is-stream@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.0.tgz#bde9c32680d6fae04129d6ac9d921ce7815f78e3" - integrity sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw== - -is-svg@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-svg/-/is-svg-3.0.0.tgz#9321dbd29c212e5ca99c4fa9794c714bcafa2f75" - integrity sha512-gi4iHK53LR2ujhLVVj+37Ykh9GLqYHX6JOVXbLAucaG/Cqw9xwdFOjDM2qeifLs1sF1npXXFvDu0r5HNgCMrzQ== - dependencies: - html-comment-regex "^1.1.0" - -is-symbol@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.3.tgz#38e1014b9e6329be0de9d24a414fd7441ec61937" - integrity sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ== - dependencies: - has-symbols "^1.0.1" - -is-typedarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" - integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= - -is-whitespace-character@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz#0858edd94a95594c7c9dd0b5c174ec6e45ee4aa7" - integrity sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w== - -is-windows@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" - integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== - -is-word-character@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-word-character/-/is-word-character-1.0.4.tgz#ce0e73216f98599060592f62ff31354ddbeb0230" - integrity sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA== - -is-wsl@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" - integrity sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0= - -is-wsl@^2.1.1: - version "2.2.0" - resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" - integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww== - dependencies: - is-docker "^2.0.0" - -isarray@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" - integrity sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8= - -isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" - integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= - -isarray@^2.0.1: - version "2.0.5" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723" - integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw== - -isexe@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" - integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= - -isobject@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" - integrity sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk= - dependencies: - isarray "1.0.0" - -isobject@^3.0.0, isobject@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" - integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= - -isstream@~0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" - integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= - -jest-worker@^25.4.0: - version "25.5.0" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-25.5.0.tgz#2611d071b79cea0f43ee57a3d118593ac1547db1" - integrity sha512-/dsSmUkIy5EBGfv/IjjqmFxrNAUpBERfGs1oHROyD7yxjG/w+t0GOJDX8O1k32ySmd7+a5IhnJU2qQFcJ4n1vw== - dependencies: - merge-stream "^2.0.0" - supports-color "^7.0.0" - -"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" - integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== - -js-tokens@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" - integrity sha1-mGbfOVECEw449/mWvOtlRDIJwls= - -js-yaml@^3.11.0, js-yaml@^3.13.1: - version "3.14.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.0.tgz#a7a34170f26a21bb162424d8adacb4113a69e482" - integrity sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A== - dependencies: - argparse "^1.0.7" - esprima "^4.0.0" - -jsbn@~0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" - integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= - -jsesc@^2.5.1: - version "2.5.2" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" - integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== - -jsesc@~0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" - integrity sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0= - -json-parse-better-errors@^1.0.1, json-parse-better-errors@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" - integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== - -json-schema-traverse@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" - integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== - -json-schema@0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" - integrity sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM= - -json-stringify-safe@~5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" - integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= - -json3@^3.3.2: - version "3.3.3" - resolved "https://registry.yarnpkg.com/json3/-/json3-3.3.3.tgz#7fc10e375fc5ae42c4705a5cc0aa6f62be305b81" - integrity sha512-c7/8mbUsKigAbLkD5B010BK4D9LZm7A1pNItkEwiUZRpIN66exu/e7YQWysGun+TRKaJp8MhemM+VkfWv42aCA== - -json5@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" - integrity sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow== - dependencies: - minimist "^1.2.0" - -json5@^2.1.2: - version "2.1.3" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.1.3.tgz#c9b0f7fa9233bfe5807fe66fcf3a5617ed597d43" - integrity sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA== - dependencies: - minimist "^1.2.5" - -jsonfile@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" - integrity sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss= - optionalDependencies: - graceful-fs "^4.1.6" - -jsonfile@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.0.1.tgz#98966cba214378c8c84b82e085907b40bf614179" - integrity sha512-jR2b5v7d2vIOust+w3wtFKZIfpC2pnRmFAhAC/BuweZFQR8qZzxH1OyrQ10HmdVYiXWkYUqPVsz91cG7EL2FBg== - dependencies: - universalify "^1.0.0" - optionalDependencies: - graceful-fs "^4.1.6" - -jsprim@^1.2.2: - version "1.4.1" - resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" - integrity sha1-MT5mvB5cwG5Di8G3SZwuXFastqI= - dependencies: - assert-plus "1.0.0" - extsprintf "1.3.0" - json-schema "0.2.3" - verror "1.10.0" - -killable@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/killable/-/killable-1.0.1.tgz#4c8ce441187a061c7474fb87ca08e2a638194892" - integrity sha512-LzqtLKlUwirEUyl/nicirVmNiPvYs7l5n8wOPP7fyJVpUPkvCnW/vuiXGpylGUlnPDnB7311rARzAt3Mhswpjg== - -kind-of@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-2.0.1.tgz#018ec7a4ce7e3a86cb9141be519d24c8faa981b5" - integrity sha1-AY7HpM5+OobLkUG+UZ0kyPqpgbU= - dependencies: - is-buffer "^1.0.2" - -kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: - version "3.2.2" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" - integrity sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ= - dependencies: - is-buffer "^1.1.5" - -kind-of@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" - integrity sha1-IIE989cSkosgc3hpGkUGb65y3Vc= - dependencies: - is-buffer "^1.1.5" - -kind-of@^5.0.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" - integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== - -kind-of@^6.0.0, kind-of@^6.0.2: - version "6.0.3" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" - integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== - -last-call-webpack-plugin@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/last-call-webpack-plugin/-/last-call-webpack-plugin-3.0.0.tgz#9742df0e10e3cf46e5c0381c2de90d3a7a2d7555" - integrity sha512-7KI2l2GIZa9p2spzPIVZBYyNKkN+e/SQPpnjlTiPhdbDW3F86tdKKELxKpzJ5sgU19wQWsACULZmpTPYHeWO5w== - dependencies: - lodash "^4.17.5" - webpack-sources "^1.1.0" - -lazy-cache@^0.2.3: - version "0.2.7" - resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-0.2.7.tgz#7feddf2dcb6edb77d11ef1d117ab5ffdf0ab1b65" - integrity sha1-f+3fLctu23fRHvHRF6tf/fCrG2U= - -lazy-cache@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e" - integrity sha1-odePw6UEdMuAhF07O24dpJpEbo4= - -leven@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" - integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== - -levenary@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/levenary/-/levenary-1.1.1.tgz#842a9ee98d2075aa7faeedbe32679e9205f46f77" - integrity sha512-mkAdOIt79FD6irqjYSs4rdbnlT5vRonMEvBVPVb3XmevfS8kgRXwfes0dhPdEtzTWD/1eNE/Bm/G1iRt6DcnQQ== - dependencies: - leven "^3.1.0" - -lines-and-columns@^1.1.6: - version "1.1.6" - resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.1.6.tgz#1c00c743b433cd0a4e80758f7b64a57440d9ff00" - integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA= - -load-script@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/load-script/-/load-script-1.0.0.tgz#0491939e0bee5643ee494a7e3da3d2bac70c6ca4" - integrity sha1-BJGTngvuVkPuSUp+PaPSuscMbKQ= - -loader-runner@^2.4.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.4.0.tgz#ed47066bfe534d7e84c4c7b9998c2a75607d9357" - integrity sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw== - -loader-utils@1.2.3: - version "1.2.3" - resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.2.3.tgz#1ff5dc6911c9f0a062531a4c04b609406108c2c7" - integrity sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA== - dependencies: - big.js "^5.2.2" - emojis-list "^2.0.0" - json5 "^1.0.1" - -loader-utils@^1.1.0, loader-utils@^1.2.3, loader-utils@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.4.0.tgz#c579b5e34cb34b1a74edc6c1fb36bfa371d5a613" - integrity sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA== - dependencies: - big.js "^5.2.2" - emojis-list "^3.0.0" - json5 "^1.0.1" - -loader-utils@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-2.0.0.tgz#e4cace5b816d425a166b5f097e10cd12b36064b0" - integrity sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ== - dependencies: - big.js "^5.2.2" - emojis-list "^3.0.0" - json5 "^2.1.2" - -locate-path@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" - integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== - dependencies: - p-locate "^3.0.0" - path-exists "^3.0.0" - -locate-path@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" - integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== - dependencies: - p-locate "^4.1.0" - -lodash._reinterpolate@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" - integrity sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0= - -lodash.assignin@^4.0.9: - version "4.2.0" - resolved "https://registry.yarnpkg.com/lodash.assignin/-/lodash.assignin-4.2.0.tgz#ba8df5fb841eb0a3e8044232b0e263a8dc6a28a2" - integrity sha1-uo31+4QesKPoBEIysOJjqNxqKKI= - -lodash.bind@^4.1.4: - version "4.2.1" - resolved "https://registry.yarnpkg.com/lodash.bind/-/lodash.bind-4.2.1.tgz#7ae3017e939622ac31b7d7d7dcb1b34db1690d35" - integrity sha1-euMBfpOWIqwxt9fX3LGzTbFpDTU= - -lodash.camelcase@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" - integrity sha1-soqmKIorn8ZRA1x3EfZathkDMaY= - -lodash.chunk@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/lodash.chunk/-/lodash.chunk-4.2.0.tgz#66e5ce1f76ed27b4303d8c6512e8d1216e8106bc" - integrity sha1-ZuXOH3btJ7QwPYxlEujRIW6BBrw= - -lodash.defaults@^4.0.1: - version "4.2.0" - resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-4.2.0.tgz#d09178716ffea4dde9e5fb7b37f6f0802274580c" - integrity sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw= - -lodash.filter@^4.4.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.filter/-/lodash.filter-4.6.0.tgz#668b1d4981603ae1cc5a6fa760143e480b4c4ace" - integrity sha1-ZosdSYFgOuHMWm+nYBQ+SAtMSs4= - -lodash.flatmap@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.flatmap/-/lodash.flatmap-4.5.0.tgz#ef8cbf408f6e48268663345305c6acc0b778702e" - integrity sha1-74y/QI9uSCaGYzRTBcaswLd4cC4= - -lodash.flatten@^4.2.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/lodash.flatten/-/lodash.flatten-4.4.0.tgz#f31c22225a9632d2bbf8e4addbef240aa765a61f" - integrity sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8= - -lodash.foreach@^4.3.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.foreach/-/lodash.foreach-4.5.0.tgz#1a6a35eace401280c7f06dddec35165ab27e3e53" - integrity sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM= - -lodash.groupby@^4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.groupby/-/lodash.groupby-4.6.0.tgz#0b08a1dcf68397c397855c3239783832df7403d1" - integrity sha1-Cwih3PaDl8OXhVwyOXg4Mt90A9E= - -lodash.has@^4.5.2: - version "4.5.2" - resolved "https://registry.yarnpkg.com/lodash.has/-/lodash.has-4.5.2.tgz#d19f4dc1095058cccbe2b0cdf4ee0fe4aa37c862" - integrity sha1-0Z9NwQlQWMzL4rDN9O4P5Ko3yGI= - -lodash.isplainobject@^4.0.6: - version "4.0.6" - resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" - integrity sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs= - -lodash.isstring@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/lodash.isstring/-/lodash.isstring-4.0.1.tgz#d527dfb5456eca7cc9bb95d5daeaf88ba54a5451" - integrity sha1-1SfftUVuynzJu5XV2ur4i6VKVFE= - -lodash.kebabcase@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/lodash.kebabcase/-/lodash.kebabcase-4.1.1.tgz#8489b1cb0d29ff88195cceca448ff6d6cc295c36" - integrity sha1-hImxyw0p/4gZXM7KRI/21swpXDY= - -lodash.map@^4.4.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.map/-/lodash.map-4.6.0.tgz#771ec7839e3473d9c4cde28b19394c3562f4f6d3" - integrity sha1-dx7Hg540c9nEzeKLGTlMNWL09tM= - -lodash.memoize@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" - integrity sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4= - -lodash.merge@^4.4.0: - version "4.6.2" - resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" - integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== - -lodash.padstart@^4.6.1: - version "4.6.1" - resolved "https://registry.yarnpkg.com/lodash.padstart/-/lodash.padstart-4.6.1.tgz#d2e3eebff0d9d39ad50f5cbd1b52a7bce6bb611b" - integrity sha1-0uPuv/DZ05rVD1y9G1KnvOa7YRs= - -lodash.pick@^4.2.1, lodash.pick@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/lodash.pick/-/lodash.pick-4.4.0.tgz#52f05610fff9ded422611441ed1fc123a03001b3" - integrity sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM= - -lodash.pickby@^4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.pickby/-/lodash.pickby-4.6.0.tgz#7dea21d8c18d7703a27c704c15d3b84a67e33aff" - integrity sha1-feoh2MGNdwOifHBMFdO4SmfjOv8= - -lodash.reduce@^4.4.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.reduce/-/lodash.reduce-4.6.0.tgz#f1ab6b839299ad48f784abbf476596f03b914d3b" - integrity sha1-8atrg5KZrUj3hKu/R2WW8DuRTTs= - -lodash.reject@^4.4.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.reject/-/lodash.reject-4.6.0.tgz#80d6492dc1470864bbf583533b651f42a9f52415" - integrity sha1-gNZJLcFHCGS79YNTO2UfQqn1JBU= - -lodash.some@^4.4.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.some/-/lodash.some-4.6.0.tgz#1bb9f314ef6b8baded13b549169b2a945eb68e4d" - integrity sha1-G7nzFO9ri63tE7VJFpsqlF62jk0= - -lodash.sortby@^4.7.0: - version "4.7.0" - resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" - integrity sha1-7dFMgk4sycHgsKG0K7UhBRakJDg= - -lodash.template@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-4.5.0.tgz#f976195cf3f347d0d5f52483569fe8031ccce8ab" - integrity sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A== - dependencies: - lodash._reinterpolate "^3.0.0" - lodash.templatesettings "^4.0.0" - -lodash.templatesettings@^4.0.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz#e481310f049d3cf6d47e912ad09313b154f0fb33" - integrity sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ== - dependencies: - lodash._reinterpolate "^3.0.0" - -lodash.toarray@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/lodash.toarray/-/lodash.toarray-4.4.0.tgz#24c4bfcd6b2fba38bfd0594db1179d8e9b656561" - integrity sha1-JMS/zWsvuji/0FlNsRedjptlZWE= - -lodash.uniq@4.5.0, lodash.uniq@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" - integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= - -lodash@^4.17.11, lodash@^4.17.13, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.5: - version "4.17.19" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.19.tgz#e48ddedbe30b3321783c5b4301fbd353bc1e4a4b" - integrity sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ== - -loglevel@^1.6.8: - version "1.6.8" - resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.6.8.tgz#8a25fb75d092230ecd4457270d80b54e28011171" - integrity sha512-bsU7+gc9AJ2SqpzxwU3+1fedl8zAntbtC5XYlt3s2j1hJcn2PsXSmgN8TaLG/J1/2mod4+cE/3vNL70/c1RNCA== - -loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.2.0, loose-envify@^1.3.1, loose-envify@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" - integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== - dependencies: - js-tokens "^3.0.0 || ^4.0.0" - -lower-case@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-2.0.1.tgz#39eeb36e396115cc05e29422eaea9e692c9408c7" - integrity sha512-LiWgfDLLb1dwbFQZsSglpRj+1ctGnayXz3Uv0/WO8n558JycT5fg6zkNcnW0G68Nn0aEldTFeEfmjCfmqry/rQ== - dependencies: - tslib "^1.10.0" - -lru-cache@^5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" - integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== - dependencies: - yallist "^3.0.2" - -lunr@^2.3.8: - version "2.3.8" - resolved "https://registry.yarnpkg.com/lunr/-/lunr-2.3.8.tgz#a8b89c31f30b5a044b97d2d28e2da191b6ba2072" - integrity sha512-oxMeX/Y35PNFuZoHp+jUj5OSEmLCaIH4KTFJh7a93cHBoFmpw2IoPs22VIz7vyO2YUnx2Tn9dzIwO2P/4quIRg== - -make-dir@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" - integrity sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA== - dependencies: - pify "^4.0.1" - semver "^5.6.0" - -make-dir@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" - integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== - dependencies: - semver "^6.0.0" - -make-error@^1.1.1: - version "1.3.6" - resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" - integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== - -map-cache@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" - integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8= - -map-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" - integrity sha1-7Nyo8TFE5mDxtb1B8S80edmN+48= - dependencies: - object-visit "^1.0.0" - -markdown-escapes@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/markdown-escapes/-/markdown-escapes-1.0.4.tgz#c95415ef451499d7602b91095f3c8e8975f78535" - integrity sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg== - -marked@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/marked/-/marked-1.0.0.tgz#d35784245a04871e5988a491e28867362e941693" - integrity sha512-Wo+L1pWTVibfrSr+TTtMuiMfNzmZWiOPeO7rZsQUY5bgsxpHesBEcIWJloWVTFnrMXnf/TL30eTFSGJddmQAng== - -md5.js@^1.3.4: - version "1.3.5" - resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f" - integrity sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg== - dependencies: - hash-base "^3.0.0" - inherits "^2.0.1" - safe-buffer "^5.1.2" - -mdast-squeeze-paragraphs@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/mdast-squeeze-paragraphs/-/mdast-squeeze-paragraphs-4.0.0.tgz#7c4c114679c3bee27ef10b58e2e015be79f1ef97" - integrity sha512-zxdPn69hkQ1rm4J+2Cs2j6wDEv7O17TfXTJ33tl/+JPIoEmtV9t2ZzBM5LPHE8QlHsmVD8t3vPKCyY3oH+H8MQ== - dependencies: - unist-util-remove "^2.0.0" - -mdast-util-definitions@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/mdast-util-definitions/-/mdast-util-definitions-3.0.1.tgz#06af6c49865fc63d6d7d30125569e2f7ae3d0a86" - integrity sha512-BAv2iUm/e6IK/b2/t+Fx69EL/AGcq/IG2S+HxHjDJGfLJtd6i9SZUS76aC9cig+IEucsqxKTR0ot3m933R3iuA== - dependencies: - unist-util-visit "^2.0.0" - -mdast-util-to-hast@9.1.0: - version "9.1.0" - resolved "https://registry.yarnpkg.com/mdast-util-to-hast/-/mdast-util-to-hast-9.1.0.tgz#6ef121dd3cd3b006bf8650b1b9454da0faf79ffe" - integrity sha512-Akl2Vi9y9cSdr19/Dfu58PVwifPXuFt1IrHe7l+Crme1KvgUT+5z+cHLVcQVGCiNTZZcdqjnuv9vPkGsqWytWA== - dependencies: - "@types/mdast" "^3.0.0" - "@types/unist" "^2.0.3" - collapse-white-space "^1.0.0" - detab "^2.0.0" - mdast-util-definitions "^3.0.0" - mdurl "^1.0.0" - trim-lines "^1.0.0" - unist-builder "^2.0.0" - unist-util-generated "^1.0.0" - unist-util-position "^3.0.0" - unist-util-visit "^2.0.0" - -mdast-util-to-string@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/mdast-util-to-string/-/mdast-util-to-string-1.1.0.tgz#27055500103f51637bd07d01da01eb1967a43527" - integrity sha512-jVU0Nr2B9X3MU4tSK7JP1CMkSvOj7X5l/GboG1tKRw52lLF1x2Ju92Ms9tNetCcbfX3hzlM73zYo2NKkWSfF/A== - -mdn-data@2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.4.tgz#699b3c38ac6f1d728091a64650b65d388502fd5b" - integrity sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA== - -mdn-data@2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.6.tgz#852dc60fcaa5daa2e8cf6c9189c440ed3e042978" - integrity sha512-rQvjv71olwNHgiTbfPZFkJtjNMciWgswYeciZhtvWLO8bmX3TnhyA62I6sTWOyZssWHJJjY6/KiWwqQsWWsqOA== - -mdurl@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/mdurl/-/mdurl-1.0.1.tgz#fe85b2ec75a59037f2adfec100fd6c601761152e" - integrity sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4= - -media-typer@0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" - integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g= - -memory-fs@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552" - integrity sha1-OpoguEYlI+RHz7x+i7gO1me/xVI= - dependencies: - errno "^0.1.3" - readable-stream "^2.0.1" - -memory-fs@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.5.0.tgz#324c01288b88652966d161db77838720845a8e3c" - integrity sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA== - dependencies: - errno "^0.1.3" - readable-stream "^2.0.1" - -merge-deep@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/merge-deep/-/merge-deep-3.0.2.tgz#f39fa100a4f1bd34ff29f7d2bf4508fbb8d83ad2" - integrity sha512-T7qC8kg4Zoti1cFd8Cr0M+qaZfOwjlPDEdZIIPPB2JZctjaPM4fX+i7HOId69tAti2fvO6X5ldfYUONDODsrkA== - dependencies: - arr-union "^3.1.0" - clone-deep "^0.2.4" - kind-of "^3.0.2" - -merge-descriptors@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" - integrity sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E= - -merge-stream@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" - integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== - -merge2@^1.2.3, merge2@^1.3.0: - version "1.4.1" - resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" - integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== - -methods@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" - integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= - -microevent.ts@~0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/microevent.ts/-/microevent.ts-0.1.1.tgz#70b09b83f43df5172d0205a63025bce0f7357fa0" - integrity sha512-jo1OfR4TaEwd5HOrt5+tAZ9mqT4jmpNAusXtyfNzqVm9uiSYFZlKM1wYL4oU7azZW/PxQW53wM0S6OR1JHNa2g== - -micromatch@^3.1.10, micromatch@^3.1.4: - version "3.1.10" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" - integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - braces "^2.3.1" - define-property "^2.0.2" - extend-shallow "^3.0.2" - extglob "^2.0.4" - fragment-cache "^0.2.1" - kind-of "^6.0.2" - nanomatch "^1.2.9" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.2" - -micromatch@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.2.tgz#4fcb0999bf9fbc2fcbdd212f6d629b9a56c39259" - integrity sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q== - dependencies: - braces "^3.0.1" - picomatch "^2.0.5" - -miller-rabin@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d" - integrity sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA== - dependencies: - bn.js "^4.0.0" - brorand "^1.0.1" - -mime-db@1.44.0, "mime-db@>= 1.43.0 < 2": - version "1.44.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.44.0.tgz#fa11c5eb0aca1334b4233cb4d52f10c5a6272f92" - integrity sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg== - -mime-types@^2.1.12, mime-types@~2.1.17, mime-types@~2.1.19, mime-types@~2.1.24: - version "2.1.27" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.27.tgz#47949f98e279ea53119f5722e0f34e529bec009f" - integrity sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w== - dependencies: - mime-db "1.44.0" - -mime@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" - integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== - -mime@^2.4.4: - version "2.4.6" - resolved "https://registry.yarnpkg.com/mime/-/mime-2.4.6.tgz#e5b407c90db442f2beb5b162373d07b69affa4d1" - integrity sha512-RZKhC3EmpBchfTGBVb8fb+RL2cWyw/32lshnsETttkBAyAUXSGHxbEJWWRXc751DrIxG1q04b8QwMbAwkRPpUA== - -mimic-fn@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" - integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== - -min-document@^2.19.0: - version "2.19.0" - resolved "https://registry.yarnpkg.com/min-document/-/min-document-2.19.0.tgz#7bd282e3f5842ed295bb748cdd9f1ffa2c824685" - integrity sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU= - dependencies: - dom-walk "^0.1.0" - -mini-create-react-context@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/mini-create-react-context/-/mini-create-react-context-0.4.0.tgz#df60501c83151db69e28eac0ef08b4002efab040" - integrity sha512-b0TytUgFSbgFJGzJqXPKCFCBWigAjpjo+Fl7Vf7ZbKRDptszpppKxXH6DRXEABZ/gcEQczeb0iZ7JvL8e8jjCA== - dependencies: - "@babel/runtime" "^7.5.5" - tiny-warning "^1.0.3" - -mini-css-extract-plugin@^0.8.0: - version "0.8.2" - resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-0.8.2.tgz#a875e169beb27c88af77dd962771c9eedc3da161" - integrity sha512-a3Y4of27Wz+mqK3qrcd3VhYz6cU0iW5x3Sgvqzbj+XmlrSizmvu8QQMl5oMYJjgHOC4iyt+w7l4umP+dQeW3bw== - dependencies: - loader-utils "^1.1.0" - normalize-url "1.9.1" - schema-utils "^1.0.0" - webpack-sources "^1.1.0" - -minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" - integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== - -minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" - integrity sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo= - -minimatch@3.0.4, minimatch@^3.0.0, minimatch@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" - integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== - dependencies: - brace-expansion "^1.1.7" - -minimist@^1.2.0, minimist@^1.2.5: - version "1.2.5" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" - integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== - -minipass-collect@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/minipass-collect/-/minipass-collect-1.0.2.tgz#22b813bf745dc6edba2576b940022ad6edc8c617" - integrity sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA== - dependencies: - minipass "^3.0.0" - -minipass-flush@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373" - integrity sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw== - dependencies: - minipass "^3.0.0" - -minipass-pipeline@^1.2.2: - version "1.2.3" - resolved "https://registry.yarnpkg.com/minipass-pipeline/-/minipass-pipeline-1.2.3.tgz#55f7839307d74859d6e8ada9c3ebe72cec216a34" - integrity sha512-cFOknTvng5vqnwOpDsZTWhNll6Jf8o2x+/diplafmxpuIymAjzoOolZG0VvQf3V2HgqzJNhnuKHYp2BqDgz8IQ== - dependencies: - minipass "^3.0.0" - -minipass@^3.0.0, minipass@^3.1.1: - version "3.1.3" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.1.3.tgz#7d42ff1f39635482e15f9cdb53184deebd5815fd" - integrity sha512-Mgd2GdMVzY+x3IJ+oHnVM+KG3lA5c8tnabyJKmHSaG2kAGpudxuOf8ToDkhumF7UzME7DecbQE9uOZhNm7PuJg== - dependencies: - yallist "^4.0.0" - -mississippi@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-3.0.0.tgz#ea0a3291f97e0b5e8776b363d5f0a12d94c67022" - integrity sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA== - dependencies: - concat-stream "^1.5.0" - duplexify "^3.4.2" - end-of-stream "^1.1.0" - flush-write-stream "^1.0.0" - from2 "^2.1.0" - parallel-transform "^1.1.0" - pump "^3.0.0" - pumpify "^1.3.3" - stream-each "^1.1.0" - through2 "^2.0.0" - -mixin-deep@^1.2.0: - version "1.3.2" - resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" - integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA== - dependencies: - for-in "^1.0.2" - is-extendable "^1.0.1" - -mixin-object@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/mixin-object/-/mixin-object-2.0.1.tgz#4fb949441dab182540f1fe035ba60e1947a5e57e" - integrity sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4= - dependencies: - for-in "^0.1.3" - is-extendable "^0.1.1" - -mkdirp@0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.3.0.tgz#1bbf5ab1ba827af23575143490426455f481fe1e" - integrity sha1-G79asbqCevI1dRQ0kEJkVfSB/h4= - -mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@~0.5.1: - version "0.5.5" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" - integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== - dependencies: - minimist "^1.2.5" - -move-concurrently@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" - integrity sha1-viwAX9oy4LKa8fBdfEszIUxwH5I= - dependencies: - aproba "^1.1.1" - copy-concurrently "^1.0.0" - fs-write-stream-atomic "^1.0.8" - mkdirp "^0.5.1" - rimraf "^2.5.4" - run-queue "^1.0.3" - -ms@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" - integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= - -ms@2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" - integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== - -ms@^2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" - integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== - -multicast-dns-service-types@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz#899f11d9686e5e05cb91b35d5f0e63b773cfc901" - integrity sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE= - -multicast-dns@^6.0.1: - version "6.2.3" - resolved "https://registry.yarnpkg.com/multicast-dns/-/multicast-dns-6.2.3.tgz#a0ec7bd9055c4282f790c3c82f4e28db3b31b229" - integrity sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g== - dependencies: - dns-packet "^1.3.1" - thunky "^1.0.2" - -mute-stream@0.0.8: - version "0.0.8" - resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" - integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== - -nan@^2.12.1: - version "2.14.1" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.1.tgz#d7be34dfa3105b91494c3147089315eff8874b01" - integrity sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw== - -nanomatch@^1.2.9: - version "1.2.13" - resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" - integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - define-property "^2.0.2" - extend-shallow "^3.0.2" - fragment-cache "^0.2.1" - is-windows "^1.0.2" - kind-of "^6.0.2" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -negotiator@0.6.2: - version "0.6.2" - resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" - integrity sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw== - -neo-async@^2.5.0, neo-async@^2.6.0, neo-async@^2.6.1: - version "2.6.2" - resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" - integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== - -nice-try@^1.0.4: - version "1.0.5" - resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" - integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== - -no-case@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/no-case/-/no-case-3.0.3.tgz#c21b434c1ffe48b39087e86cfb4d2582e9df18f8" - integrity sha512-ehY/mVQCf9BL0gKfsJBvFJen+1V//U+0HQMPrWct40ixE4jnv0bfvxDbWtAHL9EcaPEOJHVVYKoQn1TlZUB8Tw== - dependencies: - lower-case "^2.0.1" - tslib "^1.10.0" - -node-emoji@^1.10.0: - version "1.10.0" - resolved "https://registry.yarnpkg.com/node-emoji/-/node-emoji-1.10.0.tgz#8886abd25d9c7bb61802a658523d1f8d2a89b2da" - integrity sha512-Yt3384If5H6BYGVHiHwTL+99OzJKHhgp82S8/dktEK73T26BazdgZ4JZh92xSVtGNJvz9UbXdNAc5hcrXV42vw== - dependencies: - lodash.toarray "^4.4.0" - -node-forge@0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.9.0.tgz#d624050edbb44874adca12bb9a52ec63cb782579" - integrity sha512-7ASaDa3pD+lJ3WvXFsxekJQelBKRpne+GOVbLbtHYdd7pFspyeuJHnWfLplGf3SwKGbfs/aYl5V/JCIaHVUKKQ== - -node-libs-browser@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-2.2.1.tgz#b64f513d18338625f90346d27b0d235e631f6425" - integrity sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q== - dependencies: - assert "^1.1.1" - browserify-zlib "^0.2.0" - buffer "^4.3.0" - console-browserify "^1.1.0" - constants-browserify "^1.0.0" - crypto-browserify "^3.11.0" - domain-browser "^1.1.1" - events "^3.0.0" - https-browserify "^1.0.0" - os-browserify "^0.3.0" - path-browserify "0.0.1" - process "^0.11.10" - punycode "^1.2.4" - querystring-es3 "^0.2.0" - readable-stream "^2.3.3" - stream-browserify "^2.0.1" - stream-http "^2.7.2" - string_decoder "^1.0.0" - timers-browserify "^2.0.4" - tty-browserify "0.0.0" - url "^0.11.0" - util "^0.11.0" - vm-browserify "^1.0.1" - -node-releases@^1.1.52, node-releases@^1.1.58: - version "1.1.59" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.59.tgz#4d648330641cec704bff10f8e4fe28e453ab8e8e" - integrity sha512-H3JrdUczbdiwxN5FuJPyCHnGHIFqQ0wWxo+9j1kAXAzqNMAHlo+4I/sYYxpyK0irQ73HgdiyzD32oqQDcU2Osw== - -nopt@1.0.10: - version "1.0.10" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-1.0.10.tgz#6ddd21bd2a31417b92727dd585f8a6f37608ebee" - integrity sha1-bd0hvSoxQXuScn3Vhfim83YI6+4= - dependencies: - abbrev "1" - -normalize-path@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" - integrity sha1-GrKLVW4Zg2Oowab35vogE3/mrtk= - dependencies: - remove-trailing-separator "^1.0.1" - -normalize-path@^3.0.0, normalize-path@~3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" - integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== - -normalize-range@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" - integrity sha1-LRDAa9/TEuqXd2laTShDlFa3WUI= - -normalize-url@1.9.1: - version "1.9.1" - resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-1.9.1.tgz#2cc0d66b31ea23036458436e3620d85954c66c3c" - integrity sha1-LMDWazHqIwNkWENuNiDYWVTGbDw= - dependencies: - object-assign "^4.0.1" - prepend-http "^1.0.0" - query-string "^4.1.0" - sort-keys "^1.0.0" - -normalize-url@^3.0.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-3.3.0.tgz#b2e1c4dc4f7c6d57743df733a4f5978d18650559" - integrity sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg== - -npm-run-path@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" - integrity sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8= - dependencies: - path-key "^2.0.0" - -npm-run-path@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" - integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== - dependencies: - path-key "^3.0.0" - -nprogress@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/nprogress/-/nprogress-0.2.0.tgz#cb8f34c53213d895723fcbab907e9422adbcafb1" - integrity sha1-y480xTIT2JVyP8urkH6UIq28r7E= - -nth-check@^1.0.2, nth-check@~1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.2.tgz#b2bd295c37e3dd58a3bf0700376663ba4d9cf05c" - integrity sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg== - dependencies: - boolbase "~1.0.0" - -null-loader@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/null-loader/-/null-loader-3.0.0.tgz#3e2b6c663c5bda8c73a54357d8fa0708dc61b245" - integrity sha512-hf5sNLl8xdRho4UPBOOeoIwT3WhjYcMUQm0zj44EhD6UscMAz72o2udpoDFBgykucdEDGIcd6SXbc/G6zssbzw== - dependencies: - loader-utils "^1.2.3" - schema-utils "^1.0.0" - -num2fraction@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" - integrity sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4= - -oauth-sign@~0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" - integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== - -object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" - integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= - -object-copy@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" - integrity sha1-fn2Fi3gb18mRpBupde04EnVOmYw= - dependencies: - copy-descriptor "^0.1.0" - define-property "^0.2.5" - kind-of "^3.0.3" - -object-inspect@^1.7.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.8.0.tgz#df807e5ecf53a609cc6bfe93eac3cc7be5b3a9d0" - integrity sha512-jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA== - -object-is@^1.0.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.2.tgz#c5d2e87ff9e119f78b7a088441519e2eec1573b6" - integrity sha512-5lHCz+0uufF6wZ7CRFWJN3hp8Jqblpgve06U5CMQ3f//6iDjPr2PEo9MWCjEssDsa+UZEL4PkFpr+BMop6aKzQ== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.5" - -object-keys@^1.0.11, object-keys@^1.0.12, object-keys@^1.1.0, object-keys@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" - integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== - -object-visit@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" - integrity sha1-95xEk68MU3e1n+OdOV5BBC3QRbs= - dependencies: - isobject "^3.0.0" - -object.assign@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" - integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w== - dependencies: - define-properties "^1.1.2" - function-bind "^1.1.1" - has-symbols "^1.0.0" - object-keys "^1.0.11" - -object.getownpropertydescriptors@^2.0.3, object.getownpropertydescriptors@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz#369bf1f9592d8ab89d712dced5cb81c7c5352649" - integrity sha512-Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.0-next.1" - -object.pick@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" - integrity sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c= - dependencies: - isobject "^3.0.1" - -object.values@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.1.tgz#68a99ecde356b7e9295a3c5e0ce31dc8c953de5e" - integrity sha512-WTa54g2K8iu0kmS/us18jEmdv1a4Wi//BZ/DTVYEcH0XhLM5NYdpDHja3gt57VrZLcNAO2WGA+KpWsDBaHt6eA== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.0-next.1" - function-bind "^1.1.1" - has "^1.0.3" - -obuf@^1.0.0, obuf@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.2.tgz#09bea3343d41859ebd446292d11c9d4db619084e" - integrity sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg== - -on-finished@~2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" - integrity sha1-IPEzZIGwg811M3mSoWlxqi2QaUc= - dependencies: - ee-first "1.1.1" - -on-headers@~1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.2.tgz#772b0ae6aaa525c399e489adfad90c403eb3c28f" - integrity sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA== - -once@^1.3.0, once@^1.3.1, once@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" - integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= - dependencies: - wrappy "1" - -onetime@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.0.tgz#fff0f3c91617fe62bb50189636e99ac8a6df7be5" - integrity sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q== - dependencies: - mimic-fn "^2.1.0" - -open@^7.0.2: - version "7.0.4" - resolved "https://registry.yarnpkg.com/open/-/open-7.0.4.tgz#c28a9d315e5c98340bf979fdcb2e58664aa10d83" - integrity sha512-brSA+/yq+b08Hsr4c8fsEW2CRzk1BmfN3SAK/5VCHQ9bdoZJ4qa/+AfR0xHjlbbZUyPkUHs1b8x1RqdyZdkVqQ== - dependencies: - is-docker "^2.0.0" - is-wsl "^2.1.1" - -opener@^1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/opener/-/opener-1.5.1.tgz#6d2f0e77f1a0af0032aca716c2c1fbb8e7e8abed" - integrity sha512-goYSy5c2UXE4Ra1xixabeVh1guIX/ZV/YokJksb6q2lubWu6UbvPQ20p542/sFIll1nl8JnCyK9oBaOcCWXwvA== - -opn@^5.5.0: - version "5.5.0" - resolved "https://registry.yarnpkg.com/opn/-/opn-5.5.0.tgz#fc7164fab56d235904c51c3b27da6758ca3b9bfc" - integrity sha512-PqHpggC9bLV0VeWcdKhkpxY+3JTzetLSqTCWL/z/tFIbI6G8JCjondXklT1JinczLz2Xib62sSp0T/gKT4KksA== - dependencies: - is-wsl "^1.1.0" - -optimize-css-assets-webpack-plugin@^5.0.3: - version "5.0.3" - resolved "https://registry.yarnpkg.com/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-5.0.3.tgz#e2f1d4d94ad8c0af8967ebd7cf138dcb1ef14572" - integrity sha512-q9fbvCRS6EYtUKKSwI87qm2IxlyJK5b4dygW1rKUBT6mMDhdG5e5bZT63v6tnJR9F9FB/H5a0HTmtw+laUBxKA== - dependencies: - cssnano "^4.1.10" - last-call-webpack-plugin "^3.0.0" - -original@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/original/-/original-1.0.2.tgz#e442a61cffe1c5fd20a65f3261c26663b303f25f" - integrity sha512-hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg== - dependencies: - url-parse "^1.4.3" - -os-browserify@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27" - integrity sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc= - -os-tmpdir@~1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" - integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= - -p-finally@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" - integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= - -p-finally@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-2.0.1.tgz#bd6fcaa9c559a096b680806f4d657b3f0f240561" - integrity sha512-vpm09aKwq6H9phqRQzecoDpD8TmVyGw70qmWlyq5onxY7tqyTTFVvxMykxQSQKILBSFlbXpypIw2T1Ml7+DDtw== - -p-limit@^2.0.0, p-limit@^2.2.0, p-limit@^2.2.1, p-limit@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" - integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== - dependencies: - p-try "^2.0.0" - -p-locate@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" - integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== - dependencies: - p-limit "^2.0.0" - -p-locate@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" - integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== - dependencies: - p-limit "^2.2.0" - -p-map@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-2.1.0.tgz#310928feef9c9ecc65b68b17693018a665cea175" - integrity sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw== - -p-map@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-3.0.0.tgz#d704d9af8a2ba684e2600d9a215983d4141a979d" - integrity sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ== - dependencies: - aggregate-error "^3.0.0" - -p-retry@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/p-retry/-/p-retry-3.0.1.tgz#316b4c8893e2c8dc1cfa891f406c4b422bebf328" - integrity sha512-XE6G4+YTTkT2a0UWb2kjZe8xNwf8bIbnqpc/IS/idOBVhyves0mK5OJgeocjx7q5pvX/6m23xuzVPYT1uGM73w== - dependencies: - retry "^0.12.0" - -p-try@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" - integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== - -pako@~1.0.5: - version "1.0.11" - resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf" - integrity sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw== - -parallel-transform@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/parallel-transform/-/parallel-transform-1.2.0.tgz#9049ca37d6cb2182c3b1d2c720be94d14a5814fc" - integrity sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg== - dependencies: - cyclist "^1.0.1" - inherits "^2.0.3" - readable-stream "^2.1.5" - -param-case@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/param-case/-/param-case-3.0.3.tgz#4be41f8399eff621c56eebb829a5e451d9801238" - integrity sha512-VWBVyimc1+QrzappRs7waeN2YmoZFCGXWASRYX1/rGHtXqEcrGEIDm+jqIwFa2fRXNgQEwrxaYuIrX0WcAguTA== - dependencies: - dot-case "^3.0.3" - tslib "^1.10.0" - -parent-module@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" - integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== - dependencies: - callsites "^3.0.0" - -parse-asn1@^5.0.0, parse-asn1@^5.1.5: - version "5.1.5" - resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.5.tgz#003271343da58dc94cace494faef3d2147ecea0e" - integrity sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ== - dependencies: - asn1.js "^4.0.0" - browserify-aes "^1.0.0" - create-hash "^1.1.0" - evp_bytestokey "^1.0.0" - pbkdf2 "^3.0.3" - safe-buffer "^5.1.1" - -parse-entities@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/parse-entities/-/parse-entities-2.0.0.tgz#53c6eb5b9314a1f4ec99fa0fdf7ce01ecda0cbe8" - integrity sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ== - dependencies: - character-entities "^1.0.0" - character-entities-legacy "^1.0.0" - character-reference-invalid "^1.0.0" - is-alphanumerical "^1.0.0" - is-decimal "^1.0.0" - is-hexadecimal "^1.0.0" - -parse-json@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" - integrity sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA= - dependencies: - error-ex "^1.3.1" - json-parse-better-errors "^1.0.1" - -parse-json@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.0.0.tgz#73e5114c986d143efa3712d4ea24db9a4266f60f" - integrity sha512-OOY5b7PAEFV0E2Fir1KOkxchnZNCdowAJgQ5NuxjpBKTRP3pQhwkrkxqQjeoKJ+fO7bCpmIZaogI4eZGDMEGOw== - dependencies: - "@babel/code-frame" "^7.0.0" - error-ex "^1.3.1" - json-parse-better-errors "^1.0.1" - lines-and-columns "^1.1.6" - -parse-numeric-range@^0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/parse-numeric-range/-/parse-numeric-range-0.0.2.tgz#b4f09d413c7adbcd987f6e9233c7b4b210c938e4" - integrity sha1-tPCdQTx6282Yf26SM8e0shDJOOQ= - -parse5@^5.0.0: - version "5.1.1" - resolved "https://registry.yarnpkg.com/parse5/-/parse5-5.1.1.tgz#f68e4e5ba1852ac2cadc00f4555fff6c2abb6178" - integrity sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug== - -parseurl@~1.3.2, parseurl@~1.3.3: - version "1.3.3" - resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" - integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== - -pascal-case@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-3.1.1.tgz#5ac1975133ed619281e88920973d2cd1f279de5f" - integrity sha512-XIeHKqIrsquVTQL2crjq3NfJUxmdLasn3TYOU0VBM+UX2a6ztAWBlJQBePLGY7VHW8+2dRadeIPK5+KImwTxQA== - dependencies: - no-case "^3.0.3" - tslib "^1.10.0" - -pascalcase@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" - integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ= - -path-browserify@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.1.tgz#e6c4ddd7ed3aa27c68a20cc4e50e1a4ee83bbc4a" - integrity sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ== - -path-dirname@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" - integrity sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA= - -path-exists@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" - integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= - -path-exists@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" - integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== - -path-is-absolute@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" - integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= - -path-is-inside@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" - integrity sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM= - -path-key@^2.0.0, path-key@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" - integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= - -path-key@^3.0.0, path-key@^3.1.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" - integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== - -path-parse@^1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" - integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw== - -path-to-regexp@0.1.7: - version "0.1.7" - resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" - integrity sha1-32BBeABfUi8V60SQ5yR6G/qmf4w= - -path-to-regexp@^1.7.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-1.8.0.tgz#887b3ba9d84393e87a0a0b9f4cb756198b53548a" - integrity sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA== - dependencies: - isarray "0.0.1" - -path-type@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" - integrity sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg== - dependencies: - pify "^3.0.0" - -path-type@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" - integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== - -pbkdf2@^3.0.3: - version "3.1.1" - resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.1.tgz#cb8724b0fada984596856d1a6ebafd3584654b94" - integrity sha512-4Ejy1OPxi9f2tt1rRV7Go7zmfDQ+ZectEQz3VGUQhgq62HtIRPDyG/JtnwIxs6x3uNMwo2V7q1fMvKjb+Tnpqg== - dependencies: - create-hash "^1.1.2" - create-hmac "^1.1.4" - ripemd160 "^2.0.1" - safe-buffer "^5.0.1" - sha.js "^2.4.8" - -performance-now@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" - integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= - -picomatch@^2.0.4, picomatch@^2.0.5, picomatch@^2.2.1: - version "2.2.2" - resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.2.tgz#21f333e9b6b8eaff02468f5146ea406d345f4dad" - integrity sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg== - -pify@^2.0.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" - integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw= - -pify@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" - integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= - -pify@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" - integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== - -pinkie-promise@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" - integrity sha1-ITXW36ejWMBprJsXh3YogihFD/o= - dependencies: - pinkie "^2.0.0" - -pinkie@^2.0.0: - version "2.0.4" - resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" - integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA= - -pkg-dir@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3" - integrity sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw== - dependencies: - find-up "^3.0.0" - -pkg-dir@^4.1.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" - integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== - dependencies: - find-up "^4.0.0" - -pkg-up@3.1.0, pkg-up@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-3.1.0.tgz#100ec235cc150e4fd42519412596a28512a0def5" - integrity sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA== - dependencies: - find-up "^3.0.0" - -pnp-webpack-plugin@^1.6.4: - version "1.6.4" - resolved "https://registry.yarnpkg.com/pnp-webpack-plugin/-/pnp-webpack-plugin-1.6.4.tgz#c9711ac4dc48a685dabafc86f8b6dd9f8df84149" - integrity sha512-7Wjy+9E3WwLOEL30D+m8TSTF7qJJUJLONBnwQp0518siuMxUQUbgZwssaFX+QKlZkjHZcw/IpZCt/H0srrntSg== - dependencies: - ts-pnp "^1.1.6" - -portfinder@^1.0.25, portfinder@^1.0.26: - version "1.0.26" - resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.26.tgz#475658d56ca30bed72ac7f1378ed350bd1b64e70" - integrity sha512-Xi7mKxJHHMI3rIUrnm/jjUgwhbYMkp/XKEcZX3aG4BrumLpq3nmoQMX+ClYnDZnZ/New7IatC1no5RX0zo1vXQ== - dependencies: - async "^2.6.2" - debug "^3.1.1" - mkdirp "^0.5.1" - -posix-character-classes@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" - integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= - -postcss-attribute-case-insensitive@^4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-4.0.2.tgz#d93e46b504589e94ac7277b0463226c68041a880" - integrity sha512-clkFxk/9pcdb4Vkn0hAHq3YnxBQ2p0CGD1dy24jN+reBck+EWxMbxSUqN4Yj7t0w8csl87K6p0gxBe1utkJsYA== - dependencies: - postcss "^7.0.2" - postcss-selector-parser "^6.0.2" - -postcss-calc@^7.0.1: - version "7.0.2" - resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-7.0.2.tgz#504efcd008ca0273120568b0792b16cdcde8aac1" - integrity sha512-rofZFHUg6ZIrvRwPeFktv06GdbDYLcGqh9EwiMutZg+a0oePCCw1zHOEiji6LCpyRcjTREtPASuUqeAvYlEVvQ== - dependencies: - postcss "^7.0.27" - postcss-selector-parser "^6.0.2" - postcss-value-parser "^4.0.2" - -postcss-color-functional-notation@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/postcss-color-functional-notation/-/postcss-color-functional-notation-2.0.1.tgz#5efd37a88fbabeb00a2966d1e53d98ced93f74e0" - integrity sha512-ZBARCypjEDofW4P6IdPVTLhDNXPRn8T2s1zHbZidW6rPaaZvcnCS2soYFIQJrMZSxiePJ2XIYTlcb2ztr/eT2g== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-color-gray@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/postcss-color-gray/-/postcss-color-gray-5.0.0.tgz#532a31eb909f8da898ceffe296fdc1f864be8547" - integrity sha512-q6BuRnAGKM/ZRpfDascZlIZPjvwsRye7UDNalqVz3s7GDxMtqPY6+Q871liNxsonUw8oC61OG+PSaysYpl1bnw== - dependencies: - "@csstools/convert-colors" "^1.4.0" - postcss "^7.0.5" - postcss-values-parser "^2.0.0" - -postcss-color-hex-alpha@^5.0.3: - version "5.0.3" - resolved "https://registry.yarnpkg.com/postcss-color-hex-alpha/-/postcss-color-hex-alpha-5.0.3.tgz#a8d9ca4c39d497c9661e374b9c51899ef0f87388" - integrity sha512-PF4GDel8q3kkreVXKLAGNpHKilXsZ6xuu+mOQMHWHLPNyjiUBOr75sp5ZKJfmv1MCus5/DWUGcK9hm6qHEnXYw== - dependencies: - postcss "^7.0.14" - postcss-values-parser "^2.0.1" - -postcss-color-mod-function@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/postcss-color-mod-function/-/postcss-color-mod-function-3.0.3.tgz#816ba145ac11cc3cb6baa905a75a49f903e4d31d" - integrity sha512-YP4VG+xufxaVtzV6ZmhEtc+/aTXH3d0JLpnYfxqTvwZPbJhWqp8bSY3nfNzNRFLgB4XSaBA82OE4VjOOKpCdVQ== - dependencies: - "@csstools/convert-colors" "^1.4.0" - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-color-rebeccapurple@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-4.0.1.tgz#c7a89be872bb74e45b1e3022bfe5748823e6de77" - integrity sha512-aAe3OhkS6qJXBbqzvZth2Au4V3KieR5sRQ4ptb2b2O8wgvB3SJBsdG+jsn2BZbbwekDG8nTfcCNKcSfe/lEy8g== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-colormin@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-4.0.3.tgz#ae060bce93ed794ac71264f08132d550956bd381" - integrity sha512-WyQFAdDZpExQh32j0U0feWisZ0dmOtPl44qYmJKkq9xFWY3p+4qnRzCHeNrkeRhwPHz9bQ3mo0/yVkaply0MNw== - dependencies: - browserslist "^4.0.0" - color "^3.0.0" - has "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-convert-values@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-4.0.1.tgz#ca3813ed4da0f812f9d43703584e449ebe189a7f" - integrity sha512-Kisdo1y77KUC0Jmn0OXU/COOJbzM8cImvw1ZFsBgBgMgb1iL23Zs/LXRe3r+EZqM3vGYKdQ2YJVQ5VkJI+zEJQ== - dependencies: - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-custom-media@^7.0.8: - version "7.0.8" - resolved "https://registry.yarnpkg.com/postcss-custom-media/-/postcss-custom-media-7.0.8.tgz#fffd13ffeffad73621be5f387076a28b00294e0c" - integrity sha512-c9s5iX0Ge15o00HKbuRuTqNndsJUbaXdiNsksnVH8H4gdc+zbLzr/UasOwNG6CTDpLFekVY4672eWdiiWu2GUg== - dependencies: - postcss "^7.0.14" - -postcss-custom-properties@^8.0.11: - version "8.0.11" - resolved "https://registry.yarnpkg.com/postcss-custom-properties/-/postcss-custom-properties-8.0.11.tgz#2d61772d6e92f22f5e0d52602df8fae46fa30d97" - integrity sha512-nm+o0eLdYqdnJ5abAJeXp4CEU1c1k+eB2yMCvhgzsds/e0umabFrN6HoTy/8Q4K5ilxERdl/JD1LO5ANoYBeMA== - dependencies: - postcss "^7.0.17" - postcss-values-parser "^2.0.1" - -postcss-custom-selectors@^5.1.2: - version "5.1.2" - resolved "https://registry.yarnpkg.com/postcss-custom-selectors/-/postcss-custom-selectors-5.1.2.tgz#64858c6eb2ecff2fb41d0b28c9dd7b3db4de7fba" - integrity sha512-DSGDhqinCqXqlS4R7KGxL1OSycd1lydugJ1ky4iRXPHdBRiozyMHrdu0H3o7qNOCiZwySZTUI5MV0T8QhCLu+w== - dependencies: - postcss "^7.0.2" - postcss-selector-parser "^5.0.0-rc.3" - -postcss-dir-pseudo-class@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-5.0.0.tgz#6e3a4177d0edb3abcc85fdb6fbb1c26dabaeaba2" - integrity sha512-3pm4oq8HYWMZePJY+5ANriPs3P07q+LW6FAdTlkFH2XqDdP4HeeJYMOzn0HYLhRSjBO3fhiqSwwU9xEULSrPgw== - dependencies: - postcss "^7.0.2" - postcss-selector-parser "^5.0.0-rc.3" - -postcss-discard-comments@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-4.0.2.tgz#1fbabd2c246bff6aaad7997b2b0918f4d7af4033" - integrity sha512-RJutN259iuRf3IW7GZyLM5Sw4GLTOH8FmsXBnv8Ab/Tc2k4SR4qbV4DNbyyY4+Sjo362SyDmW2DQ7lBSChrpkg== - dependencies: - postcss "^7.0.0" - -postcss-discard-duplicates@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-4.0.2.tgz#3fe133cd3c82282e550fc9b239176a9207b784eb" - integrity sha512-ZNQfR1gPNAiXZhgENFfEglF93pciw0WxMkJeVmw8eF+JZBbMD7jp6C67GqJAXVZP2BWbOztKfbsdmMp/k8c6oQ== - dependencies: - postcss "^7.0.0" - -postcss-discard-empty@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-4.0.1.tgz#c8c951e9f73ed9428019458444a02ad90bb9f765" - integrity sha512-B9miTzbznhDjTfjvipfHoqbWKwd0Mj+/fL5s1QOz06wufguil+Xheo4XpOnc4NqKYBCNqqEzgPv2aPBIJLox0w== - dependencies: - postcss "^7.0.0" - -postcss-discard-overridden@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-4.0.1.tgz#652aef8a96726f029f5e3e00146ee7a4e755ff57" - integrity sha512-IYY2bEDD7g1XM1IDEsUT4//iEYCxAmP5oDSFMVU/JVvT7gh+l4fmjciLqGgwjdWpQIdb0Che2VX00QObS5+cTg== - dependencies: - postcss "^7.0.0" - -postcss-double-position-gradients@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/postcss-double-position-gradients/-/postcss-double-position-gradients-1.0.0.tgz#fc927d52fddc896cb3a2812ebc5df147e110522e" - integrity sha512-G+nV8EnQq25fOI8CH/B6krEohGWnF5+3A6H/+JEpOncu5dCnkS1QQ6+ct3Jkaepw1NGVqqOZH6lqrm244mCftA== - dependencies: - postcss "^7.0.5" - postcss-values-parser "^2.0.0" - -postcss-env-function@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/postcss-env-function/-/postcss-env-function-2.0.2.tgz#0f3e3d3c57f094a92c2baf4b6241f0b0da5365d7" - integrity sha512-rwac4BuZlITeUbiBq60h/xbLzXY43qOsIErngWa4l7Mt+RaSkT7QBjXVGTcBHupykkblHMDrBFh30zchYPaOUw== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-focus-visible@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-focus-visible/-/postcss-focus-visible-4.0.0.tgz#477d107113ade6024b14128317ade2bd1e17046e" - integrity sha512-Z5CkWBw0+idJHSV6+Bgf2peDOFf/x4o+vX/pwcNYrWpXFrSfTkQ3JQ1ojrq9yS+upnAlNRHeg8uEwFTgorjI8g== - dependencies: - postcss "^7.0.2" - -postcss-focus-within@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-focus-within/-/postcss-focus-within-3.0.0.tgz#763b8788596cee9b874c999201cdde80659ef680" - integrity sha512-W0APui8jQeBKbCGZudW37EeMCjDeVxKgiYfIIEo8Bdh5SpB9sxds/Iq8SEuzS0Q4YFOlG7EPFulbbxujpkrV2w== - dependencies: - postcss "^7.0.2" - -postcss-font-variant@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-font-variant/-/postcss-font-variant-4.0.0.tgz#71dd3c6c10a0d846c5eda07803439617bbbabacc" - integrity sha512-M8BFYKOvCrI2aITzDad7kWuXXTm0YhGdP9Q8HanmN4EF1Hmcgs1KK5rSHylt/lUJe8yLxiSwWAHdScoEiIxztg== - dependencies: - postcss "^7.0.2" - -postcss-gap-properties@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-gap-properties/-/postcss-gap-properties-2.0.0.tgz#431c192ab3ed96a3c3d09f2ff615960f902c1715" - integrity sha512-QZSqDaMgXCHuHTEzMsS2KfVDOq7ZFiknSpkrPJY6jmxbugUPTuSzs/vuE5I3zv0WAS+3vhrlqhijiprnuQfzmg== - dependencies: - postcss "^7.0.2" - -postcss-image-set-function@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/postcss-image-set-function/-/postcss-image-set-function-3.0.1.tgz#28920a2f29945bed4c3198d7df6496d410d3f288" - integrity sha512-oPTcFFip5LZy8Y/whto91L9xdRHCWEMs3e1MdJxhgt4jy2WYXfhkng59fH5qLXSCPN8k4n94p1Czrfe5IOkKUw== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-initial@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/postcss-initial/-/postcss-initial-3.0.2.tgz#f018563694b3c16ae8eaabe3c585ac6319637b2d" - integrity sha512-ugA2wKonC0xeNHgirR4D3VWHs2JcU08WAi1KFLVcnb7IN89phID6Qtg2RIctWbnvp1TM2BOmDtX8GGLCKdR8YA== - dependencies: - lodash.template "^4.5.0" - postcss "^7.0.2" - -postcss-lab-function@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/postcss-lab-function/-/postcss-lab-function-2.0.1.tgz#bb51a6856cd12289ab4ae20db1e3821ef13d7d2e" - integrity sha512-whLy1IeZKY+3fYdqQFuDBf8Auw+qFuVnChWjmxm/UhHWqNHZx+B99EwxTvGYmUBqe3Fjxs4L1BoZTJmPu6usVg== - dependencies: - "@csstools/convert-colors" "^1.4.0" - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-load-config@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-2.1.0.tgz#c84d692b7bb7b41ddced94ee62e8ab31b417b003" - integrity sha512-4pV3JJVPLd5+RueiVVB+gFOAa7GWc25XQcMp86Zexzke69mKf6Nx9LRcQywdz7yZI9n1udOxmLuAwTBypypF8Q== - dependencies: - cosmiconfig "^5.0.0" - import-cwd "^2.0.0" - -postcss-loader@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-3.0.0.tgz#6b97943e47c72d845fa9e03f273773d4e8dd6c2d" - integrity sha512-cLWoDEY5OwHcAjDnkyRQzAXfs2jrKjXpO/HQFcc5b5u/r7aa471wdmChmwfnv7x2u840iat/wi0lQ5nbRgSkUA== - dependencies: - loader-utils "^1.1.0" - postcss "^7.0.0" - postcss-load-config "^2.0.0" - schema-utils "^1.0.0" - -postcss-logical@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-logical/-/postcss-logical-3.0.0.tgz#2495d0f8b82e9f262725f75f9401b34e7b45d5b5" - integrity sha512-1SUKdJc2vuMOmeItqGuNaC+N8MzBWFWEkAnRnLpFYj1tGGa7NqyVBujfRtgNa2gXR+6RkGUiB2O5Vmh7E2RmiA== - dependencies: - postcss "^7.0.2" - -postcss-media-minmax@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-media-minmax/-/postcss-media-minmax-4.0.0.tgz#b75bb6cbc217c8ac49433e12f22048814a4f5ed5" - integrity sha512-fo9moya6qyxsjbFAYl97qKO9gyre3qvbMnkOZeZwlsW6XYFsvs2DMGDlchVLfAd8LHPZDxivu/+qW2SMQeTHBw== - dependencies: - postcss "^7.0.2" - -postcss-merge-longhand@^4.0.11: - version "4.0.11" - resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-4.0.11.tgz#62f49a13e4a0ee04e7b98f42bb16062ca2549e24" - integrity sha512-alx/zmoeXvJjp7L4mxEMjh8lxVlDFX1gqWHzaaQewwMZiVhLo42TEClKaeHbRf6J7j82ZOdTJ808RtN0ZOZwvw== - dependencies: - css-color-names "0.0.4" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - stylehacks "^4.0.0" - -postcss-merge-rules@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-4.0.3.tgz#362bea4ff5a1f98e4075a713c6cb25aefef9a650" - integrity sha512-U7e3r1SbvYzO0Jr3UT/zKBVgYYyhAz0aitvGIYOYK5CPmkNih+WDSsS5tvPrJ8YMQYlEMvsZIiqmn7HdFUaeEQ== - dependencies: - browserslist "^4.0.0" - caniuse-api "^3.0.0" - cssnano-util-same-parent "^4.0.0" - postcss "^7.0.0" - postcss-selector-parser "^3.0.0" - vendors "^1.0.0" - -postcss-minify-font-values@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-4.0.2.tgz#cd4c344cce474343fac5d82206ab2cbcb8afd5a6" - integrity sha512-j85oO6OnRU9zPf04+PZv1LYIYOprWm6IA6zkXkrJXyRveDEuQggG6tvoy8ir8ZwjLxLuGfNkCZEQG7zan+Hbtg== - dependencies: - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-minify-gradients@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-4.0.2.tgz#93b29c2ff5099c535eecda56c4aa6e665a663471" - integrity sha512-qKPfwlONdcf/AndP1U8SJ/uzIJtowHlMaSioKzebAXSG4iJthlWC9iSWznQcX4f66gIWX44RSA841HTHj3wK+Q== - dependencies: - cssnano-util-get-arguments "^4.0.0" - is-color-stop "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-minify-params@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-4.0.2.tgz#6b9cef030c11e35261f95f618c90036d680db874" - integrity sha512-G7eWyzEx0xL4/wiBBJxJOz48zAKV2WG3iZOqVhPet/9geefm/Px5uo1fzlHu+DOjT+m0Mmiz3jkQzVHe6wxAWg== - dependencies: - alphanum-sort "^1.0.0" - browserslist "^4.0.0" - cssnano-util-get-arguments "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - uniqs "^2.0.0" - -postcss-minify-selectors@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-4.0.2.tgz#e2e5eb40bfee500d0cd9243500f5f8ea4262fbd8" - integrity sha512-D5S1iViljXBj9kflQo4YutWnJmwm8VvIsU1GeXJGiG9j8CIg9zs4voPMdQDUmIxetUOh60VilsNzCiAFTOqu3g== - dependencies: - alphanum-sort "^1.0.0" - has "^1.0.0" - postcss "^7.0.0" - postcss-selector-parser "^3.0.0" - -postcss-modules-extract-imports@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz#818719a1ae1da325f9832446b01136eeb493cd7e" - integrity sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ== - dependencies: - postcss "^7.0.5" - -postcss-modules-local-by-default@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.2.tgz#e8a6561be914aaf3c052876377524ca90dbb7915" - integrity sha512-jM/V8eqM4oJ/22j0gx4jrp63GSvDH6v86OqyTHHUvk4/k1vceipZsaymiZ5PvocqZOl5SFHiFJqjs3la0wnfIQ== - dependencies: - icss-utils "^4.1.1" - postcss "^7.0.16" - postcss-selector-parser "^6.0.2" - postcss-value-parser "^4.0.0" - -postcss-modules-scope@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz#385cae013cc7743f5a7d7602d1073a89eaae62ee" - integrity sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ== - dependencies: - postcss "^7.0.6" - postcss-selector-parser "^6.0.0" - -postcss-modules-values@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz#5b5000d6ebae29b4255301b4a3a54574423e7f10" - integrity sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg== - dependencies: - icss-utils "^4.0.0" - postcss "^7.0.6" - -postcss-nesting@^7.0.0: - version "7.0.1" - resolved "https://registry.yarnpkg.com/postcss-nesting/-/postcss-nesting-7.0.1.tgz#b50ad7b7f0173e5b5e3880c3501344703e04c052" - integrity sha512-FrorPb0H3nuVq0Sff7W2rnc3SmIcruVC6YwpcS+k687VxyxO33iE1amna7wHuRVzM8vfiYofXSBHNAZ3QhLvYg== - dependencies: - postcss "^7.0.2" - -postcss-normalize-charset@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-4.0.1.tgz#8b35add3aee83a136b0471e0d59be58a50285dd4" - integrity sha512-gMXCrrlWh6G27U0hF3vNvR3w8I1s2wOBILvA87iNXaPvSNo5uZAMYsZG7XjCUf1eVxuPfyL4TJ7++SGZLc9A3g== - dependencies: - postcss "^7.0.0" - -postcss-normalize-display-values@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.2.tgz#0dbe04a4ce9063d4667ed2be476bb830c825935a" - integrity sha512-3F2jcsaMW7+VtRMAqf/3m4cPFhPD3EFRgNs18u+k3lTJJlVe7d0YPO+bnwqo2xg8YiRpDXJI2u8A0wqJxMsQuQ== - dependencies: - cssnano-util-get-match "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-positions@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-normalize-positions/-/postcss-normalize-positions-4.0.2.tgz#05f757f84f260437378368a91f8932d4b102917f" - integrity sha512-Dlf3/9AxpxE+NF1fJxYDeggi5WwV35MXGFnnoccP/9qDtFrTArZ0D0R+iKcg5WsUd8nUYMIl8yXDCtcrT8JrdA== - dependencies: - cssnano-util-get-arguments "^4.0.0" - has "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-repeat-style@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-4.0.2.tgz#c4ebbc289f3991a028d44751cbdd11918b17910c" - integrity sha512-qvigdYYMpSuoFs3Is/f5nHdRLJN/ITA7huIoCyqqENJe9PvPmLhNLMu7QTjPdtnVf6OcYYO5SHonx4+fbJE1+Q== - dependencies: - cssnano-util-get-arguments "^4.0.0" - cssnano-util-get-match "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-string@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-normalize-string/-/postcss-normalize-string-4.0.2.tgz#cd44c40ab07a0c7a36dc5e99aace1eca4ec2690c" - integrity sha512-RrERod97Dnwqq49WNz8qo66ps0swYZDSb6rM57kN2J+aoyEAJfZ6bMx0sx/F9TIEX0xthPGCmeyiam/jXif0eA== - dependencies: - has "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-timing-functions@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-4.0.2.tgz#8e009ca2a3949cdaf8ad23e6b6ab99cb5e7d28d9" - integrity sha512-acwJY95edP762e++00Ehq9L4sZCEcOPyaHwoaFOhIwWCDfik6YvqsYNxckee65JHLKzuNSSmAdxwD2Cud1Z54A== - dependencies: - cssnano-util-get-match "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-unicode@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-unicode/-/postcss-normalize-unicode-4.0.1.tgz#841bd48fdcf3019ad4baa7493a3d363b52ae1cfb" - integrity sha512-od18Uq2wCYn+vZ/qCOeutvHjB5jm57ToxRaMeNuf0nWVHaP9Hua56QyMF6fs/4FSUnVIw0CBPsU0K4LnBPwYwg== - dependencies: - browserslist "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-url@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-4.0.1.tgz#10e437f86bc7c7e58f7b9652ed878daaa95faae1" - integrity sha512-p5oVaF4+IHwu7VpMan/SSpmpYxcJMtkGppYf0VbdH5B6hN8YNmVyJLuY9FmLQTzY3fag5ESUUHDqM+heid0UVA== - dependencies: - is-absolute-url "^2.0.0" - normalize-url "^3.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-whitespace@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-4.0.2.tgz#bf1d4070fe4fcea87d1348e825d8cc0c5faa7d82" - integrity sha512-tO8QIgrsI3p95r8fyqKV+ufKlSHh9hMJqACqbv2XknufqEDhDvbguXGBBqxw9nsQoXWf0qOqppziKJKHMD4GtA== - dependencies: - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-ordered-values@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-4.1.2.tgz#0cf75c820ec7d5c4d280189559e0b571ebac0eee" - integrity sha512-2fCObh5UanxvSxeXrtLtlwVThBvHn6MQcu4ksNT2tsaV2Fg76R2CV98W7wNSlX+5/pFwEyaDwKLLoEV7uRybAw== - dependencies: - cssnano-util-get-arguments "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-overflow-shorthand@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-overflow-shorthand/-/postcss-overflow-shorthand-2.0.0.tgz#31ecf350e9c6f6ddc250a78f0c3e111f32dd4c30" - integrity sha512-aK0fHc9CBNx8jbzMYhshZcEv8LtYnBIRYQD5i7w/K/wS9c2+0NSR6B3OVMu5y0hBHYLcMGjfU+dmWYNKH0I85g== - dependencies: - postcss "^7.0.2" - -postcss-page-break@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-page-break/-/postcss-page-break-2.0.0.tgz#add52d0e0a528cabe6afee8b46e2abb277df46bf" - integrity sha512-tkpTSrLpfLfD9HvgOlJuigLuk39wVTbbd8RKcy8/ugV2bNBUW3xU+AIqyxhDrQr1VUj1RmyJrBn1YWrqUm9zAQ== - dependencies: - postcss "^7.0.2" - -postcss-place@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-place/-/postcss-place-4.0.1.tgz#e9f39d33d2dc584e46ee1db45adb77ca9d1dcc62" - integrity sha512-Zb6byCSLkgRKLODj/5mQugyuj9bvAAw9LqJJjgwz5cYryGeXfFZfSXoP1UfveccFmeq0b/2xxwcTEVScnqGxBg== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-preset-env@^6.7.0: - version "6.7.0" - resolved "https://registry.yarnpkg.com/postcss-preset-env/-/postcss-preset-env-6.7.0.tgz#c34ddacf8f902383b35ad1e030f178f4cdf118a5" - integrity sha512-eU4/K5xzSFwUFJ8hTdTQzo2RBLbDVt83QZrAvI07TULOkmyQlnYlpwep+2yIK+K+0KlZO4BvFcleOCCcUtwchg== - 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" - -postcss-pseudo-class-any-link@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-6.0.0.tgz#2ed3eed393b3702879dec4a87032b210daeb04d1" - integrity sha512-lgXW9sYJdLqtmw23otOzrtbDXofUdfYzNm4PIpNE322/swES3VU9XlXHeJS46zT2onFO7V1QFdD4Q9LiZj8mew== - dependencies: - postcss "^7.0.2" - postcss-selector-parser "^5.0.0-rc.3" - -postcss-reduce-initial@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-4.0.3.tgz#7fd42ebea5e9c814609639e2c2e84ae270ba48df" - integrity sha512-gKWmR5aUulSjbzOfD9AlJiHCGH6AEVLaM0AV+aSioxUDd16qXP1PCh8d1/BGVvpdWn8k/HiK7n6TjeoXN1F7DA== - dependencies: - browserslist "^4.0.0" - caniuse-api "^3.0.0" - has "^1.0.0" - postcss "^7.0.0" - -postcss-reduce-transforms@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-4.0.2.tgz#17efa405eacc6e07be3414a5ca2d1074681d4e29" - integrity sha512-EEVig1Q2QJ4ELpJXMZR8Vt5DQx8/mo+dGWSR7vWXqcob2gQLyQGsionYcGKATXvQzMPn6DSN1vTN7yFximdIAg== - dependencies: - cssnano-util-get-match "^4.0.0" - has "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-replace-overflow-wrap@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-3.0.0.tgz#61b360ffdaedca84c7c918d2b0f0d0ea559ab01c" - integrity sha512-2T5hcEHArDT6X9+9dVSPQdo7QHzG4XKclFT8rU5TzJPDN7RIRTbO9c4drUISOVemLj03aezStHCR2AIcr8XLpw== - dependencies: - postcss "^7.0.2" - -postcss-selector-matches@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-selector-matches/-/postcss-selector-matches-4.0.0.tgz#71c8248f917ba2cc93037c9637ee09c64436fcff" - integrity sha512-LgsHwQR/EsRYSqlwdGzeaPKVT0Ml7LAT6E75T8W8xLJY62CE4S/l03BWIt3jT8Taq22kXP08s2SfTSzaraoPww== - dependencies: - balanced-match "^1.0.0" - postcss "^7.0.2" - -postcss-selector-not@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-selector-not/-/postcss-selector-not-4.0.0.tgz#c68ff7ba96527499e832724a2674d65603b645c0" - integrity sha512-W+bkBZRhqJaYN8XAnbbZPLWMvZD1wKTu0UxtFKdhtGjWYmxhkUneoeOhRJKdAE5V7ZTlnbHfCR+6bNwK9e1dTQ== - dependencies: - balanced-match "^1.0.0" - postcss "^7.0.2" - -postcss-selector-parser@^3.0.0: - version "3.1.2" - resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz#b310f5c4c0fdaf76f94902bbaa30db6aa84f5270" - integrity sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA== - dependencies: - dot-prop "^5.2.0" - indexes-of "^1.0.1" - uniq "^1.0.1" - -postcss-selector-parser@^5.0.0-rc.3, postcss-selector-parser@^5.0.0-rc.4: - version "5.0.0" - resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz#249044356697b33b64f1a8f7c80922dddee7195c" - integrity sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ== - dependencies: - cssesc "^2.0.0" - indexes-of "^1.0.1" - uniq "^1.0.1" - -postcss-selector-parser@^6.0.0, postcss-selector-parser@^6.0.2: - version "6.0.2" - resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.2.tgz#934cf799d016c83411859e09dcecade01286ec5c" - integrity sha512-36P2QR59jDTOAiIkqEprfJDsoNrvwFei3eCqKd1Y0tUsBimsq39BLp7RD+JWny3WgB1zGhJX8XVePwm9k4wdBg== - dependencies: - cssesc "^3.0.0" - indexes-of "^1.0.1" - uniq "^1.0.1" - -postcss-svgo@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-4.0.2.tgz#17b997bc711b333bab143aaed3b8d3d6e3d38258" - integrity sha512-C6wyjo3VwFm0QgBy+Fu7gCYOkCmgmClghO+pjcxvrcBKtiKt0uCF+hvbMO1fyv5BMImRK90SMb+dwUnfbGd+jw== - dependencies: - is-svg "^3.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - svgo "^1.0.0" - -postcss-unique-selectors@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-4.0.1.tgz#9446911f3289bfd64c6d680f073c03b1f9ee4bac" - integrity sha512-+JanVaryLo9QwZjKrmJgkI4Fn8SBgRO6WXQBJi7KiAVPlmxikB5Jzc4EvXMT2H0/m0RjrVVm9rGNhZddm/8Spg== - dependencies: - alphanum-sort "^1.0.0" - postcss "^7.0.0" - uniqs "^2.0.0" - -postcss-value-parser@^3.0.0: - version "3.3.1" - resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz#9ff822547e2893213cf1c30efa51ac5fd1ba8281" - integrity sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ== - -postcss-value-parser@^4.0.0, postcss-value-parser@^4.0.2, postcss-value-parser@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz#443f6a20ced6481a2bda4fa8532a6e55d789a2cb" - integrity sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ== - -postcss-values-parser@^2.0.0, postcss-values-parser@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz#da8b472d901da1e205b47bdc98637b9e9e550e5f" - integrity sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg== - dependencies: - flatten "^1.0.2" - indexes-of "^1.0.1" - uniq "^1.0.1" - -postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.16, postcss@^7.0.17, postcss@^7.0.2, postcss@^7.0.27, postcss@^7.0.32, postcss@^7.0.5, postcss@^7.0.6: - version "7.0.32" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.32.tgz#4310d6ee347053da3433db2be492883d62cec59d" - integrity sha512-03eXong5NLnNCD05xscnGKGDZ98CyzoqPSMjOe6SuoQY7Z2hIj0Ld1g/O/UQRuOle2aRtiIRDg9tDcTGAkLfKw== - dependencies: - chalk "^2.4.2" - source-map "^0.6.1" - supports-color "^6.1.0" - -prepend-http@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" - integrity sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw= - -pretty-error@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-2.1.1.tgz#5f4f87c8f91e5ae3f3ba87ab4cf5e03b1a17f1a3" - integrity sha1-X0+HyPkeWuPzuoerTPXgOxoX8aM= - dependencies: - renderkid "^2.0.1" - utila "~0.4" - -pretty-time@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/pretty-time/-/pretty-time-1.1.0.tgz#ffb7429afabb8535c346a34e41873adf3d74dd0e" - integrity sha512-28iF6xPQrP8Oa6uxE6a1biz+lWeTOAPKggvjB8HAs6nVMKZwf5bG++632Dx614hIWgUPkgivRfG+a8uAXGTIbA== - -prism-react-renderer@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/prism-react-renderer/-/prism-react-renderer-1.1.1.tgz#1c1be61b1eb9446a146ca7a50b7bcf36f2a70a44" - integrity sha512-MgMhSdHuHymNRqD6KM3eGS0PNqgK9q4QF5P0yoQQvpB6jNjeSAi3jcSAz0Sua/t9fa4xDOMar9HJbLa08gl9ug== - -prismjs@^1.20.0: - version "1.20.0" - resolved "https://registry.yarnpkg.com/prismjs/-/prismjs-1.20.0.tgz#9b685fc480a3514ee7198eac6a3bf5024319ff03" - integrity sha512-AEDjSrVNkynnw6A+B1DsFkd6AVdTnp+/WoUixFRULlCLZVRZlVQMVWio/16jv7G1FscUxQxOQhWwApgbnxr6kQ== - optionalDependencies: - clipboard "^2.0.0" - -process-nextick-args@~2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" - integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== - -process@^0.11.10: - version "0.11.10" - resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" - integrity sha1-czIwDoQBYb2j5podHZGn1LwW8YI= - -progress@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" - integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== - -promise-inflight@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" - integrity sha1-mEcocL8igTL8vdhoEputEsPAKeM= - -prop-types@^15.5.0, prop-types@^15.6.2, prop-types@^15.7.2: - version "15.7.2" - resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5" - integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ== - dependencies: - loose-envify "^1.4.0" - object-assign "^4.1.1" - react-is "^16.8.1" - -property-information@^5.0.0, property-information@^5.3.0: - version "5.5.0" - resolved "https://registry.yarnpkg.com/property-information/-/property-information-5.5.0.tgz#4dc075d493061a82e2b7d096f406e076ed859943" - integrity sha512-RgEbCx2HLa1chNgvChcx+rrCWD0ctBmGSE0M7lVm1yyv4UbvbrWoXp/BkVLZefzjrRBGW8/Js6uh/BnlHXFyjA== - dependencies: - xtend "^4.0.0" - -proxy-addr@~2.0.5: - version "2.0.6" - resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.6.tgz#fdc2336505447d3f2f2c638ed272caf614bbb2bf" - integrity sha512-dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw== - dependencies: - forwarded "~0.1.2" - ipaddr.js "1.9.1" - -prr@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" - integrity sha1-0/wRS6BplaRexok/SEzrHXj19HY= - -psl@^1.1.28: - version "1.8.0" - resolved "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24" - integrity sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ== - -public-encrypt@^4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.3.tgz#4fcc9d77a07e48ba7527e7cbe0de33d0701331e0" - integrity sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q== - dependencies: - bn.js "^4.1.0" - browserify-rsa "^4.0.0" - create-hash "^1.1.0" - parse-asn1 "^5.0.0" - randombytes "^2.0.1" - safe-buffer "^5.1.2" - -pump@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909" - integrity sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA== - dependencies: - end-of-stream "^1.1.0" - once "^1.3.1" - -pump@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" - integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== - dependencies: - end-of-stream "^1.1.0" - once "^1.3.1" - -pumpify@^1.3.3: - version "1.5.1" - resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.5.1.tgz#36513be246ab27570b1a374a5ce278bfd74370ce" - integrity sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ== - dependencies: - duplexify "^3.6.0" - inherits "^2.0.3" - pump "^2.0.0" - -punycode@1.3.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" - integrity sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0= - -punycode@^1.2.4: - version "1.4.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" - integrity sha1-wNWmOycYgArY4esPpSachN1BhF4= - -punycode@^2.1.0, punycode@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" - integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== - -q@^1.1.2: - version "1.5.1" - resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" - integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= - -qs@6.7.0: - version "6.7.0" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.7.0.tgz#41dc1a015e3d581f1621776be31afb2876a9b1bc" - integrity sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ== - -qs@~6.5.2: - version "6.5.2" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" - integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== - -query-string@^4.1.0: - version "4.3.4" - resolved "https://registry.yarnpkg.com/query-string/-/query-string-4.3.4.tgz#bbb693b9ca915c232515b228b1a02b609043dbeb" - integrity sha1-u7aTucqRXCMlFbIosaArYJBD2+s= - dependencies: - object-assign "^4.1.0" - strict-uri-encode "^1.0.0" - -querystring-es3@^0.2.0, querystring-es3@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73" - integrity sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM= - -querystring@0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" - integrity sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA= - -querystringify@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.1.1.tgz#60e5a5fd64a7f8bfa4d2ab2ed6fdf4c85bad154e" - integrity sha512-w7fLxIRCRT7U8Qu53jQnJyPkYZIaR4n5151KMfcJlO/A9397Wxb1amJvROTK6TOnp7PfoAmg/qXiNHI+08jRfA== - -randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5, randombytes@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" - integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== - dependencies: - safe-buffer "^5.1.0" - -randomfill@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/randomfill/-/randomfill-1.0.4.tgz#c92196fc86ab42be983f1bf31778224931d61458" - integrity sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw== - dependencies: - randombytes "^2.0.5" - safe-buffer "^5.1.0" - -range-parser@^1.2.1, range-parser@~1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" - integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== - -raw-body@2.4.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.4.0.tgz#a1ce6fb9c9bc356ca52e89256ab59059e13d0332" - integrity sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q== - dependencies: - bytes "3.1.0" - http-errors "1.7.2" - iconv-lite "0.4.24" - unpipe "1.0.0" - -react-dev-utils@^10.2.1: - version "10.2.1" - resolved "https://registry.yarnpkg.com/react-dev-utils/-/react-dev-utils-10.2.1.tgz#f6de325ae25fa4d546d09df4bb1befdc6dd19c19" - integrity sha512-XxTbgJnYZmxuPtY3y/UV0D8/65NKkmaia4rXzViknVnZeVlklSh8u6TnaEYPfAi/Gh1TP4mEOXHI6jQOPbeakQ== - dependencies: - "@babel/code-frame" "7.8.3" - address "1.1.2" - browserslist "4.10.0" - chalk "2.4.2" - cross-spawn "7.0.1" - detect-port-alt "1.1.6" - escape-string-regexp "2.0.0" - filesize "6.0.1" - find-up "4.1.0" - fork-ts-checker-webpack-plugin "3.1.1" - global-modules "2.0.0" - globby "8.0.2" - gzip-size "5.1.1" - immer "1.10.0" - inquirer "7.0.4" - is-root "2.1.0" - loader-utils "1.2.3" - open "^7.0.2" - pkg-up "3.1.0" - react-error-overlay "^6.0.7" - recursive-readdir "2.2.2" - shell-quote "1.7.2" - strip-ansi "6.0.0" - text-table "0.2.0" - -react-dom@16.13.1: - version "16.13.1" - resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.13.1.tgz#c1bd37331a0486c078ee54c4740720993b2e0e7f" - integrity sha512-81PIMmVLnCNLO/fFOQxdQkvEq/+Hfpv24XNJfpyZhTRfO0QcmQIF/PgCa1zCOj2w1hrn12MFLyaJ/G0+Mxtfag== - dependencies: - loose-envify "^1.1.0" - object-assign "^4.1.1" - prop-types "^15.6.2" - scheduler "^0.19.1" - -react-error-overlay@^6.0.7: - version "6.0.7" - resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-6.0.7.tgz#1dcfb459ab671d53f660a991513cb2f0a0553108" - integrity sha512-TAv1KJFh3RhqxNvhzxj6LeT5NWklP6rDr2a0jaTfsZ5wSZWHOGeqQyejUp3xxLfPt2UpyJEcVQB/zyPcmonNFA== - -react-fast-compare@^3.1.1: - version "3.2.0" - resolved "https://registry.yarnpkg.com/react-fast-compare/-/react-fast-compare-3.2.0.tgz#641a9da81b6a6320f270e89724fb45a0b39e43bb" - integrity sha512-rtGImPZ0YyLrscKI9xTpV8psd6I8VAtjKCzQDlzyDvqJA8XOW78TXYQwNRNd8g8JZnDu8q9Fu/1v4HPAVwVdHA== - -react-helmet@^6.0.0-beta: - version "6.1.0" - resolved "https://registry.yarnpkg.com/react-helmet/-/react-helmet-6.1.0.tgz#a750d5165cb13cf213e44747502652e794468726" - integrity sha512-4uMzEY9nlDlgxr61NL3XbKRy1hEkXmKNXhjbAIOVw5vcFrsdYbH2FEwcNyWvWinl103nXgzYNlns9ca+8kFiWw== - dependencies: - object-assign "^4.1.1" - prop-types "^15.7.2" - react-fast-compare "^3.1.1" - react-side-effect "^2.1.0" - -react-is@^16.6.0, react-is@^16.7.0, react-is@^16.8.1: - version "16.13.1" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" - integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== - -react-loadable-ssr-addon@^0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/react-loadable-ssr-addon/-/react-loadable-ssr-addon-0.2.3.tgz#55057abf95628d47727c68e966a6b3a53cde34e0" - integrity sha512-vPCqsmiafAMDcS9MLgXw3m4yMI40v1UeI8FTYJJkjf85LugKNnHf6D9yoDTzYwp8wEGF5viekwOD03ZPxSwnQQ== - -react-loadable@^5.5.0: - version "5.5.0" - resolved "https://registry.yarnpkg.com/react-loadable/-/react-loadable-5.5.0.tgz#582251679d3da86c32aae2c8e689c59f1196d8c4" - integrity sha512-C8Aui0ZpMd4KokxRdVAm2bQtI03k2RMRNzOB+IipV3yxFTSVICv7WoUr5L9ALB5BmKO1iHgZtWM8EvYG83otdg== - dependencies: - prop-types "^15.5.0" - -react-router-config@^5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/react-router-config/-/react-router-config-5.1.1.tgz#0f4263d1a80c6b2dc7b9c1902c9526478194a988" - integrity sha512-DuanZjaD8mQp1ppHjgnnUnyOlqYXZVjnov/JzFhjLEwd3Z4dYjMSnqrEzzGThH47vpCOqPPwJM2FtthLeJ8Pbg== - dependencies: - "@babel/runtime" "^7.1.2" - -react-router-dom@^5.1.2: - version "5.2.0" - resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-5.2.0.tgz#9e65a4d0c45e13289e66c7b17c7e175d0ea15662" - integrity sha512-gxAmfylo2QUjcwxI63RhQ5G85Qqt4voZpUXSEqCwykV0baaOTQDR1f0PmY8AELqIyVc0NEZUj0Gov5lNGcXgsA== - dependencies: - "@babel/runtime" "^7.1.2" - history "^4.9.0" - loose-envify "^1.3.1" - prop-types "^15.6.2" - react-router "5.2.0" - tiny-invariant "^1.0.2" - tiny-warning "^1.0.0" - -react-router@5.2.0, react-router@^5.1.2: - version "5.2.0" - resolved "https://registry.yarnpkg.com/react-router/-/react-router-5.2.0.tgz#424e75641ca8747fbf76e5ecca69781aa37ea293" - integrity sha512-smz1DUuFHRKdcJC0jobGo8cVbhO3x50tCL4icacOlcwDOEQPq4TMqwx3sY1TP+DvtTgz4nm3thuo7A+BK2U0Dw== - dependencies: - "@babel/runtime" "^7.1.2" - history "^4.9.0" - hoist-non-react-statics "^3.1.0" - loose-envify "^1.3.1" - mini-create-react-context "^0.4.0" - path-to-regexp "^1.7.0" - prop-types "^15.6.2" - react-is "^16.6.0" - tiny-invariant "^1.0.2" - tiny-warning "^1.0.0" - -react-side-effect@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/react-side-effect/-/react-side-effect-2.1.0.tgz#1ce4a8b4445168c487ed24dab886421f74d380d3" - integrity sha512-IgmcegOSi5SNX+2Snh1vqmF0Vg/CbkycU9XZbOHJlZ6kMzTmi3yc254oB1WCkgA7OQtIAoLmcSFuHTc/tlcqXg== - -react-toggle@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/react-toggle/-/react-toggle-4.1.1.tgz#2317f67bf918ea3508a96b09dd383efd9da572af" - integrity sha512-+wXlMcSpg8SmnIXauMaZiKpR+r2wp2gMUteroejp2UTSqGTVvZLN+m9EhMzFARBKEw7KpQOwzCyfzeHeAndQGw== - dependencies: - classnames "^2.2.5" - -react@16.13.1: - version "16.13.1" - resolved "https://registry.yarnpkg.com/react/-/react-16.13.1.tgz#2e818822f1a9743122c063d6410d85c1e3afe48e" - integrity sha512-YMZQQq32xHLX0bz5Mnibv1/LHb3Sqzngu7xstSM+vrkE5Kzr9xE0yMByK5kMoTK30YVJE61WfbxIFFvfeDKT1w== - dependencies: - loose-envify "^1.1.0" - object-assign "^4.1.1" - prop-types "^15.6.2" - -"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.6, readable-stream@~2.3.6: - version "2.3.7" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" - integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== - 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" - -readable-stream@^3.0.6, readable-stream@^3.1.1, readable-stream@^3.6.0: - version "3.6.0" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" - integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== - dependencies: - inherits "^2.0.3" - string_decoder "^1.1.1" - util-deprecate "^1.0.1" - -readdirp@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525" - integrity sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ== - dependencies: - graceful-fs "^4.1.11" - micromatch "^3.1.10" - readable-stream "^2.0.2" - -readdirp@~3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.4.0.tgz#9fdccdf9e9155805449221ac645e8303ab5b9ada" - integrity sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ== - dependencies: - picomatch "^2.2.1" - -reading-time@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/reading-time/-/reading-time-1.2.0.tgz#ced71c06715762f805506328dcc1fd45d8249ac4" - integrity sha512-5b4XmKK4MEss63y0Lw0vn0Zn6G5kiHP88mUnD8UeEsyORj3sh1ghTH0/u6m1Ax9G2F4wUZrknlp6WlIsCvoXVA== - -rechoir@^0.6.2: - version "0.6.2" - resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384" - integrity sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q= - dependencies: - resolve "^1.1.6" - -recursive-readdir@2.2.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/recursive-readdir/-/recursive-readdir-2.2.2.tgz#9946fb3274e1628de6e36b2f6714953b4845094f" - integrity sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg== - dependencies: - minimatch "3.0.4" - -reduce@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/reduce/-/reduce-1.0.2.tgz#0cd680ad3ffe0b060e57a5c68bdfce37168d361b" - integrity sha512-xX7Fxke/oHO5IfZSk77lvPa/7bjMh9BuCk4OOoX5XTXrM7s0Z+MkPfSDfz0q7r91BhhGSs8gii/VEN/7zhCPpQ== - dependencies: - object-keys "^1.1.0" - -regenerate-unicode-properties@^8.2.0: - version "8.2.0" - resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz#e5de7111d655e7ba60c057dbe9ff37c87e65cdec" - integrity sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA== - dependencies: - regenerate "^1.4.0" - -regenerate@^1.4.0: - version "1.4.1" - resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.1.tgz#cad92ad8e6b591773485fbe05a485caf4f457e6f" - integrity sha512-j2+C8+NtXQgEKWk49MMP5P/u2GhnahTtVkRIHr5R5lVRlbKvmQ+oS+A5aLKWp2ma5VkT8sh6v+v4hbH0YHR66A== - -regenerator-runtime@^0.13.4: - version "0.13.5" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.5.tgz#d878a1d094b4306d10b9096484b33ebd55e26697" - integrity sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA== - -regenerator-transform@^0.14.2: - version "0.14.5" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.14.5.tgz#c98da154683671c9c4dcb16ece736517e1b7feb4" - integrity sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw== - dependencies: - "@babel/runtime" "^7.8.4" - -regex-not@^1.0.0, regex-not@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" - integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== - dependencies: - extend-shallow "^3.0.2" - safe-regex "^1.1.0" - -regexp.prototype.flags@^1.2.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz#7aba89b3c13a64509dabcf3ca8d9fbb9bdf5cb75" - integrity sha512-2+Q0C5g951OlYlJz6yu5/M33IcsESLlLfsyIaLJaG4FA2r4yP8MvVMJUUP/fVBkSpbbbZlS5gynbEWLipiiXiQ== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.0-next.1" - -regexpu-core@^4.7.0: - version "4.7.0" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.7.0.tgz#fcbf458c50431b0bb7b45d6967b8192d91f3d938" - integrity sha512-TQ4KXRnIn6tz6tjnrXEkD/sshygKH/j5KzK86X8MkeHyZ8qst/LZ89j3X4/8HEIfHANTFIP/AbXakeRhWIl5YQ== - dependencies: - regenerate "^1.4.0" - regenerate-unicode-properties "^8.2.0" - regjsgen "^0.5.1" - regjsparser "^0.6.4" - unicode-match-property-ecmascript "^1.0.4" - unicode-match-property-value-ecmascript "^1.2.0" - -regjsgen@^0.5.1: - version "0.5.2" - resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.5.2.tgz#92ff295fb1deecbf6ecdab2543d207e91aa33733" - integrity sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A== - -regjsparser@^0.6.4: - version "0.6.4" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.6.4.tgz#a769f8684308401a66e9b529d2436ff4d0666272" - integrity sha512-64O87/dPDgfk8/RQqC4gkZoGyyWFIEUTTh80CU6CWuK5vkCGyekIx+oKcEIYtP/RAxSQltCZHCNu/mdd7fqlJw== - dependencies: - jsesc "~0.5.0" - -rehype-parse@^6.0.2: - version "6.0.2" - resolved "https://registry.yarnpkg.com/rehype-parse/-/rehype-parse-6.0.2.tgz#aeb3fdd68085f9f796f1d3137ae2b85a98406964" - integrity sha512-0S3CpvpTAgGmnz8kiCyFLGuW5yA4OQhyNTm/nwPopZ7+PI11WnGl1TTWTGv/2hPEe/g2jRLlhVVSsoDH8waRug== - dependencies: - hast-util-from-parse5 "^5.0.0" - parse5 "^5.0.0" - xtend "^4.0.0" - -relateurl@^0.2.7: - version "0.2.7" - resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" - integrity sha1-VNvzd+UUQKypCkzSdGANP/LYiKk= - -remark-admonitions@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/remark-admonitions/-/remark-admonitions-1.2.1.tgz#87caa1a442aa7b4c0cafa04798ed58a342307870" - integrity sha512-Ji6p68VDvD+H1oS95Fdx9Ar5WA2wcDA4kwrrhVU7fGctC6+d3uiMICu7w7/2Xld+lnU7/gi+432+rRbup5S8ow== - dependencies: - rehype-parse "^6.0.2" - unified "^8.4.2" - unist-util-visit "^2.0.1" - -remark-emoji@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/remark-emoji/-/remark-emoji-2.1.0.tgz#69165d1181b98a54ad5d9ef811003d53d7ebc7db" - integrity sha512-lDddGsxXURV01WS9WAiS9rO/cedO1pvr9tahtLhr6qCGFhHG4yZSJW3Ha4Nw9Uk1hLNmUBtPC0+m45Ms+xEitg== - dependencies: - emoticon "^3.2.0" - node-emoji "^1.10.0" - unist-util-visit "^2.0.2" - -remark-footnotes@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/remark-footnotes/-/remark-footnotes-1.0.0.tgz#9c7a97f9a89397858a50033373020b1ea2aad011" - integrity sha512-X9Ncj4cj3/CIvLI2Z9IobHtVi8FVdUrdJkCNaL9kdX8ohfsi18DXHsCVd/A7ssARBdccdDb5ODnt62WuEWaM/g== - -remark-mdx@^1.6.6: - version "1.6.6" - resolved "https://registry.yarnpkg.com/remark-mdx/-/remark-mdx-1.6.6.tgz#6b5e9042ae0821cfa727ea05389d743696ce6996" - integrity sha512-BkR7SjP+3OvrCsWGlYy1tWEsZ8aQ86x+i7XWbW79g73Ws/cCaeVsEn0ZxAzzoTRH+PJWVU7Mbe64GdejEyKr2g== - dependencies: - "@babel/core" "7.9.6" - "@babel/helper-plugin-utils" "7.8.3" - "@babel/plugin-proposal-object-rest-spread" "7.9.6" - "@babel/plugin-syntax-jsx" "7.8.3" - "@mdx-js/util" "^1.6.6" - is-alphabetical "1.0.4" - remark-parse "8.0.2" - unified "9.0.0" - -remark-parse@8.0.2: - version "8.0.2" - resolved "https://registry.yarnpkg.com/remark-parse/-/remark-parse-8.0.2.tgz#5999bc0b9c2e3edc038800a64ff103d0890b318b" - integrity sha512-eMI6kMRjsAGpMXXBAywJwiwAse+KNpmt+BK55Oofy4KvBZEqUDj6mWbGLJZrujoPIPPxDXzn3T9baRlpsm2jnQ== - dependencies: - ccount "^1.0.0" - collapse-white-space "^1.0.2" - is-alphabetical "^1.0.0" - is-decimal "^1.0.0" - is-whitespace-character "^1.0.0" - is-word-character "^1.0.0" - markdown-escapes "^1.0.0" - parse-entities "^2.0.0" - repeat-string "^1.5.4" - state-toggle "^1.0.0" - trim "0.0.1" - trim-trailing-lines "^1.0.0" - unherit "^1.0.4" - unist-util-remove-position "^2.0.0" - vfile-location "^3.0.0" - xtend "^4.0.1" - -remark-squeeze-paragraphs@4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/remark-squeeze-paragraphs/-/remark-squeeze-paragraphs-4.0.0.tgz#76eb0e085295131c84748c8e43810159c5653ead" - integrity sha512-8qRqmL9F4nuLPIgl92XUuxI3pFxize+F1H0e/W3llTk0UsjJaj01+RrirkMw7P21RKe4X6goQhYRSvNWX+70Rw== - dependencies: - mdast-squeeze-paragraphs "^4.0.0" - -remove-trailing-separator@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" - integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8= - -renderkid@^2.0.1: - version "2.0.3" - resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-2.0.3.tgz#380179c2ff5ae1365c522bf2fcfcff01c5b74149" - integrity sha512-z8CLQp7EZBPCwCnncgf9C4XAi3WR0dv+uWu/PjIyhhAb5d6IJ/QZqlHFprHeKT+59//V6BNUsLbvN8+2LarxGA== - dependencies: - css-select "^1.1.0" - dom-converter "^0.2" - htmlparser2 "^3.3.0" - strip-ansi "^3.0.0" - utila "^0.4.0" - -repeat-element@^1.1.2: - version "1.1.3" - resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce" - integrity sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g== - -repeat-string@^1.5.4, repeat-string@^1.6.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" - integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= - -replace-ext@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-1.0.0.tgz#de63128373fcbf7c3ccfa4de5a480c45a67958eb" - integrity sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs= - -request@^2.87.0: - version "2.88.2" - resolved "https://registry.yarnpkg.com/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3" - integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw== - dependencies: - aws-sign2 "~0.7.0" - aws4 "^1.8.0" - caseless "~0.12.0" - combined-stream "~1.0.6" - extend "~3.0.2" - forever-agent "~0.6.1" - form-data "~2.3.2" - har-validator "~5.1.3" - http-signature "~1.2.0" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.19" - oauth-sign "~0.9.0" - performance-now "^2.1.0" - qs "~6.5.2" - safe-buffer "^5.1.2" - tough-cookie "~2.5.0" - tunnel-agent "^0.6.0" - uuid "^3.3.2" - -require-directory@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" - integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= - -"require-like@>= 0.1.1": - version "0.1.2" - resolved "https://registry.yarnpkg.com/require-like/-/require-like-0.1.2.tgz#ad6f30c13becd797010c468afa775c0c0a6b47fa" - integrity sha1-rW8wwTvs15cBDEaK+ndcDAprR/o= - -require-main-filename@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" - integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== - -requires-port@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" - integrity sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8= - -resolve-cwd@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-2.0.0.tgz#00a9f7387556e27038eae232caa372a6a59b665a" - integrity sha1-AKn3OHVW4nA46uIyyqNypqWbZlo= - dependencies: - resolve-from "^3.0.0" - -resolve-from@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" - integrity sha1-six699nWiBvItuZTM17rywoYh0g= - -resolve-from@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" - integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== - -resolve-pathname@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/resolve-pathname/-/resolve-pathname-3.0.0.tgz#99d02224d3cf263689becbb393bc560313025dcd" - integrity sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng== - -resolve-url@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" - integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= - -resolve@^1.1.6, resolve@^1.3.2, resolve@^1.8.1: - version "1.17.0" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.17.0.tgz#b25941b54968231cc2d1bb76a79cb7f2c0bf8444" - integrity sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w== - dependencies: - path-parse "^1.0.6" - -restore-cursor@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e" - integrity sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA== - dependencies: - onetime "^5.1.0" - signal-exit "^3.0.2" - -ret@~0.1.10: - version "0.1.15" - resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" - integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== - -retry@^0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" - integrity sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs= - -reusify@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" - integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== - -rgb-regex@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/rgb-regex/-/rgb-regex-1.0.1.tgz#c0e0d6882df0e23be254a475e8edd41915feaeb1" - integrity sha1-wODWiC3w4jviVKR16O3UGRX+rrE= - -rgba-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/rgba-regex/-/rgba-regex-1.0.0.tgz#43374e2e2ca0968b0ef1523460b7d730ff22eeb3" - integrity sha1-QzdOLiyglosO8VI0YLfXMP8i7rM= - -rimraf@^2.5.4, rimraf@^2.6.3, rimraf@^2.7.1: - version "2.7.1" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" - integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== - dependencies: - glob "^7.1.3" - -rimraf@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" - integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== - dependencies: - glob "^7.1.3" - -ripemd160@^2.0.0, ripemd160@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c" - integrity sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA== - dependencies: - hash-base "^3.0.0" - inherits "^2.0.1" - -run-async@^2.2.0: - version "2.4.1" - resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455" - integrity sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ== - -run-parallel@^1.1.9: - version "1.1.9" - resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.1.9.tgz#c9dd3a7cf9f4b2c4b6244e173a6ed866e61dd679" - integrity sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q== - -run-queue@^1.0.0, run-queue@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47" - integrity sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec= - dependencies: - aproba "^1.1.1" - -rx@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/rx/-/rx-4.1.0.tgz#a5f13ff79ef3b740fe30aa803fb09f98805d4782" - integrity sha1-pfE/957zt0D+MKqAP7CfmIBdR4I= - -rxjs@^6.5.3: - version "6.6.0" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.0.tgz#af2901eedf02e3a83ffa7f886240ff9018bbec84" - integrity sha512-3HMA8z/Oz61DUHe+SdOiQyzIf4tOx5oQHmMir7IZEu6TMqCLHT4LRcmNaUS0NwOz8VLvmmBduMsoaUvMaIiqzg== - dependencies: - tslib "^1.9.0" - -safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: - version "5.1.2" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" - integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== - -safe-buffer@>=5.1.0, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@~5.2.0: - version "5.2.1" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" - integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== - -safe-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" - integrity sha1-QKNmnzsHfR6UPURinhV91IAjvy4= - dependencies: - ret "~0.1.10" - -"safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: - version "2.1.2" - resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" - integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== - -sax@^1.2.4, sax@~1.2.4: - version "1.2.4" - resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" - integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== - -scheduler@^0.19.1: - version "0.19.1" - resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.19.1.tgz#4f3e2ed2c1a7d65681f4c854fa8c5a1ccb40f196" - integrity sha512-n/zwRWRYSUj0/3g/otKDRPMh6qv2SYMWNq85IEa8iZyAv8od9zDYpGSnpBEjNgcMNq6Scbu5KfIPxNF72R/2EA== - dependencies: - loose-envify "^1.1.0" - object-assign "^4.1.1" - -schema-utils@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-1.0.0.tgz#0b79a93204d7b600d4b2850d1f66c2a34951c770" - integrity sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g== - dependencies: - ajv "^6.1.0" - ajv-errors "^1.0.0" - ajv-keywords "^3.1.0" - -schema-utils@^2.0.0, schema-utils@^2.6.5, schema-utils@^2.6.6, schema-utils@^2.7.0: - version "2.7.0" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.7.0.tgz#17151f76d8eae67fbbf77960c33c676ad9f4efc7" - integrity sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A== - dependencies: - "@types/json-schema" "^7.0.4" - ajv "^6.12.2" - ajv-keywords "^3.4.1" - -section-matter@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/section-matter/-/section-matter-1.0.0.tgz#e9041953506780ec01d59f292a19c7b850b84167" - integrity sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA== - dependencies: - extend-shallow "^2.0.1" - kind-of "^6.0.0" - -select-hose@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" - integrity sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo= - -select@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/select/-/select-1.1.2.tgz#0e7350acdec80b1108528786ec1d4418d11b396d" - integrity sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0= - -selfsigned@^1.10.7: - version "1.10.7" - resolved "https://registry.yarnpkg.com/selfsigned/-/selfsigned-1.10.7.tgz#da5819fd049d5574f28e88a9bcc6dbc6e6f3906b" - integrity sha512-8M3wBCzeWIJnQfl43IKwOmC4H/RAp50S8DF60znzjW5GVqTcSe2vWclt7hmYVPkKPlHWOu5EaWOMZ2Y6W8ZXTA== - dependencies: - node-forge "0.9.0" - -semver@7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.0.0.tgz#5f3ca35761e47e05b206c6daff2cf814f0316b8e" - integrity sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A== - -semver@^5.1.0, semver@^5.4.1, semver@^5.5.0, semver@^5.5.1, semver@^5.6.0: - version "5.7.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" - integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== - -semver@^6.0.0, semver@^6.3.0: - version "6.3.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" - integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== - -send@0.17.1: - version "0.17.1" - resolved "https://registry.yarnpkg.com/send/-/send-0.17.1.tgz#c1d8b059f7900f7466dd4938bdc44e11ddb376c8" - integrity sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg== - 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" - -serialize-javascript@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-2.1.2.tgz#ecec53b0e0317bdc95ef76ab7074b7384785fa61" - integrity sha512-rs9OggEUF0V4jUSecXazOYsLfu7OGK2qIn3c7IPBiffz32XniEp/TX9Xmc9LQfK2nQ2QKHvZ2oygKUGU0lG4jQ== - -serialize-javascript@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-3.1.0.tgz#8bf3a9170712664ef2561b44b691eafe399214ea" - integrity sha512-JIJT1DGiWmIKhzRsG91aS6Ze4sFUrYbltlkg2onR5OrnNM02Kl/hnY/T4FN2omvyeBbQmMJv+K4cPOpGzOTFBg== - dependencies: - randombytes "^2.1.0" - -serve-index@^1.9.1: - version "1.9.1" - resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239" - integrity sha1-03aNabHn2C5c4FD/9bRTvqEqkjk= - 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" - -serve-static@1.14.1: - version "1.14.1" - resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.14.1.tgz#666e636dc4f010f7ef29970a88a674320898b2f9" - integrity sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg== - dependencies: - encodeurl "~1.0.2" - escape-html "~1.0.3" - parseurl "~1.3.3" - send "0.17.1" - -set-blocking@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" - integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= - -set-value@^2.0.0, set-value@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b" - integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw== - dependencies: - extend-shallow "^2.0.1" - is-extendable "^0.1.1" - is-plain-object "^2.0.3" - split-string "^3.0.1" - -setimmediate@^1.0.4: - version "1.0.5" - resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" - integrity sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU= - -setprototypeof@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" - integrity sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ== - -setprototypeof@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.1.tgz#7e95acb24aa92f5885e0abef5ba131330d4ae683" - integrity sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw== - -sha.js@^2.4.0, sha.js@^2.4.8: - version "2.4.11" - resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7" - integrity sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ== - dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" - -shallow-clone@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-0.1.2.tgz#5909e874ba77106d73ac414cfec1ffca87d97060" - integrity sha1-WQnodLp3EG1zrEFM/sH/yofZcGA= - dependencies: - is-extendable "^0.1.1" - kind-of "^2.0.1" - lazy-cache "^0.2.3" - mixin-object "^2.0.1" - -shebang-command@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" - integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo= - dependencies: - shebang-regex "^1.0.0" - -shebang-command@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" - integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== - dependencies: - shebang-regex "^3.0.0" - -shebang-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" - integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= - -shebang-regex@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" - integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== - -shell-quote@1.7.2: - version "1.7.2" - resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.7.2.tgz#67a7d02c76c9da24f99d20808fcaded0e0e04be2" - integrity sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg== - -shelljs@^0.8.4: - version "0.8.4" - resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.8.4.tgz#de7684feeb767f8716b326078a8a00875890e3c2" - integrity sha512-7gk3UZ9kOfPLIAbslLzyWeGiEqx9e3rxwZM0KE6EL8GlGwjym9Mrlx5/p33bWTu9YG6vcS4MBxYZDHYr5lr8BQ== - dependencies: - glob "^7.0.0" - interpret "^1.0.0" - rechoir "^0.6.2" - -signal-exit@^3.0.0, signal-exit@^3.0.2: - version "3.0.3" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" - integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== - -simple-swizzle@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/simple-swizzle/-/simple-swizzle-0.2.2.tgz#a4da6b635ffcccca33f70d17cb92592de95e557a" - integrity sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo= - dependencies: - is-arrayish "^0.3.1" - -sitemap@^3.2.2: - version "3.2.2" - resolved "https://registry.yarnpkg.com/sitemap/-/sitemap-3.2.2.tgz#3f77c358fa97b555c879e457098e39910095c62b" - integrity sha512-TModL/WU4m2q/mQcrDgNANn0P4LwprM9MMvG4hu5zP4c6IIKs2YLTu6nXXnNr8ODW/WFtxKggiJ1EGn2W0GNmg== - dependencies: - lodash.chunk "^4.2.0" - lodash.padstart "^4.6.1" - whatwg-url "^7.0.0" - xmlbuilder "^13.0.0" - -slash@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" - integrity sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU= - -slash@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" - integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== - -snapdragon-node@^2.0.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" - integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== - dependencies: - define-property "^1.0.0" - isobject "^3.0.0" - snapdragon-util "^3.0.1" - -snapdragon-util@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" - integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== - dependencies: - kind-of "^3.2.0" - -snapdragon@^0.8.1: - version "0.8.2" - resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" - integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== - dependencies: - base "^0.11.1" - debug "^2.2.0" - define-property "^0.2.5" - extend-shallow "^2.0.1" - map-cache "^0.2.2" - source-map "^0.5.6" - source-map-resolve "^0.5.0" - use "^3.1.0" - -sockjs-client@1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.4.0.tgz#c9f2568e19c8fd8173b4997ea3420e0bb306c7d5" - integrity sha512-5zaLyO8/nri5cua0VtOrFXBPK1jbL4+1cebT/mmKA1E1ZXOvJrII75bPu0l0k843G/+iAbhEqzyKr0w/eCCj7g== - dependencies: - debug "^3.2.5" - eventsource "^1.0.7" - faye-websocket "~0.11.1" - inherits "^2.0.3" - json3 "^3.3.2" - url-parse "^1.4.3" - -sockjs@0.3.20: - version "0.3.20" - resolved "https://registry.yarnpkg.com/sockjs/-/sockjs-0.3.20.tgz#b26a283ec562ef8b2687b44033a4eeceac75d855" - integrity sha512-SpmVOVpdq0DJc0qArhF3E5xsxvaiqGNb73XfgBpK1y3UD5gs8DSo8aCTsuT5pX8rssdc2NDIzANwP9eCAiSdTA== - dependencies: - faye-websocket "^0.10.0" - uuid "^3.4.0" - websocket-driver "0.6.5" - -sort-keys@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-1.1.2.tgz#441b6d4d346798f1b4e49e8920adfba0e543f9ad" - integrity sha1-RBttTTRnmPG05J6JIK37oOVD+a0= - dependencies: - is-plain-obj "^1.0.0" - -source-list-map@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" - integrity sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw== - -source-map-resolve@^0.5.0: - version "0.5.3" - resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a" - integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw== - dependencies: - atob "^2.1.2" - decode-uri-component "^0.2.0" - resolve-url "^0.2.1" - source-map-url "^0.4.0" - urix "^0.1.0" - -source-map-support@^0.5.17, source-map-support@~0.5.12: - version "0.5.19" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.19.tgz#a98b62f86dcaf4f67399648c085291ab9e8fed61" - integrity sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw== - dependencies: - buffer-from "^1.0.0" - source-map "^0.6.0" - -source-map-url@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3" - integrity sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM= - -source-map@^0.5.0, source-map@^0.5.6: - version "0.5.7" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" - integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= - -source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" - integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== - -source-map@^0.7.3: - version "0.7.3" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" - integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== - -space-separated-tokens@^1.0.0: - version "1.1.5" - resolved "https://registry.yarnpkg.com/space-separated-tokens/-/space-separated-tokens-1.1.5.tgz#85f32c3d10d9682007e917414ddc5c26d1aa6899" - integrity sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA== - -spdy-transport@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-3.0.0.tgz#00d4863a6400ad75df93361a1608605e5dcdcf31" - integrity sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw== - 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" - -spdy@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/spdy/-/spdy-4.0.2.tgz#b74f466203a3eda452c02492b91fb9e84a27677b" - integrity sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA== - 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" - -split-string@^3.0.1, split-string@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" - integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== - dependencies: - extend-shallow "^3.0.0" - -sprintf-js@~1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" - integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= - -sshpk@^1.7.0: - version "1.16.1" - resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.16.1.tgz#fb661c0bef29b39db40769ee39fa70093d6f6877" - integrity sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg== - dependencies: - asn1 "~0.2.3" - assert-plus "^1.0.0" - bcrypt-pbkdf "^1.0.0" - dashdash "^1.12.0" - ecc-jsbn "~0.1.1" - getpass "^0.1.1" - jsbn "~0.1.0" - safer-buffer "^2.0.2" - tweetnacl "~0.14.0" - -ssri@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/ssri/-/ssri-6.0.1.tgz#2a3c41b28dd45b62b63676ecb74001265ae9edd8" - integrity sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA== - dependencies: - figgy-pudding "^3.5.1" - -ssri@^7.0.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/ssri/-/ssri-7.1.0.tgz#92c241bf6de82365b5c7fb4bd76e975522e1294d" - integrity sha512-77/WrDZUWocK0mvA5NTRQyveUf+wsrIc6vyrxpS8tVvYBcX215QbafrJR3KtkpskIzoFLqqNuuYQvxaMjXJ/0g== - dependencies: - figgy-pudding "^3.5.1" - minipass "^3.1.1" - -stable@^0.1.8: - version "0.1.8" - resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" - integrity sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w== - -stack-utils@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-1.0.2.tgz#33eba3897788558bebfc2db059dc158ec36cebb8" - integrity sha512-MTX+MeG5U994cazkjd/9KNAapsHnibjMLnfXodlkXw76JEea0UiNzrqidzo1emMwk7w5Qhc9jd4Bn9TBb1MFwA== - -state-toggle@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/state-toggle/-/state-toggle-1.0.3.tgz#e123b16a88e143139b09c6852221bc9815917dfe" - integrity sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ== - -static-extend@^0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" - integrity sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY= - dependencies: - define-property "^0.2.5" - object-copy "^0.1.0" - -"statuses@>= 1.4.0 < 2", "statuses@>= 1.5.0 < 2", statuses@~1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" - integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= - -std-env@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/std-env/-/std-env-2.2.1.tgz#2ffa0fdc9e2263e0004c1211966e960948a40f6b" - integrity sha512-IjYQUinA3lg5re/YMlwlfhqNRTzMZMqE+pezevdcTaHceqx8ngEi1alX9nNCk9Sc81fy1fLDeQoaCzeiW1yBOQ== - dependencies: - ci-info "^1.6.0" - -stream-browserify@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.2.tgz#87521d38a44aa7ee91ce1cd2a47df0cb49dd660b" - integrity sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg== - dependencies: - inherits "~2.0.1" - readable-stream "^2.0.2" - -stream-each@^1.1.0: - version "1.2.3" - resolved "https://registry.yarnpkg.com/stream-each/-/stream-each-1.2.3.tgz#ebe27a0c389b04fbcc233642952e10731afa9bae" - integrity sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw== - dependencies: - end-of-stream "^1.1.0" - stream-shift "^1.0.0" - -stream-http@^2.7.2: - version "2.8.3" - resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.8.3.tgz#b2d242469288a5a27ec4fe8933acf623de6514fc" - integrity sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw== - dependencies: - builtin-status-codes "^3.0.0" - inherits "^2.0.1" - readable-stream "^2.3.6" - to-arraybuffer "^1.0.0" - xtend "^4.0.0" - -stream-shift@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.1.tgz#d7088281559ab2778424279b0877da3c392d5a3d" - integrity sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ== - -strict-uri-encode@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713" - integrity sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM= - -string-width@^3.0.0, string-width@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" - integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== - dependencies: - emoji-regex "^7.0.1" - is-fullwidth-code-point "^2.0.0" - strip-ansi "^5.1.0" - -string-width@^4.1.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.0.tgz#952182c46cc7b2c313d1596e623992bd163b72b5" - integrity sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg== - dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.0" - -string.prototype.trimend@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz#85812a6b847ac002270f5808146064c995fb6913" - integrity sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.5" - -string.prototype.trimstart@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz#14af6d9f34b053f7cfc89b72f8f2ee14b9039a54" - integrity sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.5" - -string_decoder@^1.0.0, string_decoder@^1.1.1: - version "1.3.0" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" - integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== - dependencies: - safe-buffer "~5.2.0" - -string_decoder@~1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" - integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== - dependencies: - safe-buffer "~5.1.0" - -stringify-object@^3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/stringify-object/-/stringify-object-3.3.0.tgz#703065aefca19300d3ce88af4f5b3956d7556629" - integrity sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw== - dependencies: - get-own-enumerable-property-symbols "^3.0.0" - is-obj "^1.0.1" - is-regexp "^1.0.0" - -strip-ansi@6.0.0, strip-ansi@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532" - integrity sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w== - dependencies: - ansi-regex "^5.0.0" - -strip-ansi@^3.0.0, strip-ansi@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" - integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= - dependencies: - ansi-regex "^2.0.0" - -strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" - integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== - dependencies: - ansi-regex "^4.1.0" - -strip-bom-string@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/strip-bom-string/-/strip-bom-string-1.0.0.tgz#e5211e9224369fbb81d633a2f00044dc8cedad92" - integrity sha1-5SEekiQ2n7uB1jOi8ABE3IztrZI= - -strip-eof@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" - integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8= - -strip-final-newline@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" - integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== - -style-to-object@0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/style-to-object/-/style-to-object-0.3.0.tgz#b1b790d205991cc783801967214979ee19a76e46" - integrity sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA== - dependencies: - inline-style-parser "0.1.1" - -style-to-object@^0.2.1: - version "0.2.3" - resolved "https://registry.yarnpkg.com/style-to-object/-/style-to-object-0.2.3.tgz#afcf42bc03846b1e311880c55632a26ad2780bcb" - integrity sha512-1d/k4EY2N7jVLOqf2j04dTc37TPOv/hHxZmvpg8Pdh8UYydxeu/C1W1U4vD8alzf5V2Gt7rLsmkr4dxAlDm9ng== - dependencies: - inline-style-parser "0.1.1" - -stylehacks@^4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-4.0.3.tgz#6718fcaf4d1e07d8a1318690881e8d96726a71d5" - integrity sha512-7GlLk9JwlElY4Y6a/rmbH2MhVlTyVmiJd1PfTCqFaIBEGMYNsrO/v3SeGTdhBThLg4Z+NbOk/qFMwCa+J+3p/g== - dependencies: - browserslist "^4.0.0" - postcss "^7.0.0" - postcss-selector-parser "^3.0.0" - -supports-color@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" - integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= - -supports-color@^5.3.0: - version "5.5.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" - integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== - dependencies: - has-flag "^3.0.0" - -supports-color@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.1.0.tgz#0764abc69c63d5ac842dd4867e8d025e880df8f3" - integrity sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ== - dependencies: - has-flag "^3.0.0" - -supports-color@^7.0.0, supports-color@^7.1.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.1.0.tgz#68e32591df73e25ad1c4b49108a2ec507962bfd1" - integrity sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g== - dependencies: - has-flag "^4.0.0" - -svg-parser@^2.0.2: - version "2.0.4" - resolved "https://registry.yarnpkg.com/svg-parser/-/svg-parser-2.0.4.tgz#fdc2e29e13951736140b76cb122c8ee6630eb6b5" - integrity sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ== - -svgo@^1.0.0, svgo@^1.2.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/svgo/-/svgo-1.3.2.tgz#b6dc511c063346c9e415b81e43401145b96d4167" - integrity sha512-yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw== - dependencies: - chalk "^2.4.1" - coa "^2.0.2" - css-select "^2.0.0" - css-select-base-adapter "^0.1.1" - css-tree "1.0.0-alpha.37" - csso "^4.0.2" - js-yaml "^3.13.1" - mkdirp "~0.5.1" - object.values "^1.1.0" - sax "~1.2.4" - stable "^0.1.8" - unquote "~1.1.1" - util.promisify "~1.0.0" - -tapable@^1.0.0, tapable@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.1.3.tgz#a1fccc06b58db61fd7a45da2da44f5f3a3e67ba2" - integrity sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA== - -terser-webpack-plugin@^1.4.3: - version "1.4.4" - resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.4.4.tgz#2c63544347324baafa9a56baaddf1634c8abfc2f" - integrity sha512-U4mACBHIegmfoEe5fdongHESNJWqsGU+W0S/9+BmYGVQDw1+c2Ow05TpMhxjPK1sRb7cuYq1BPl1e5YHJMTCqA== - dependencies: - cacache "^12.0.2" - find-cache-dir "^2.1.0" - is-wsl "^1.1.0" - schema-utils "^1.0.0" - serialize-javascript "^3.1.0" - source-map "^0.6.1" - terser "^4.1.2" - webpack-sources "^1.4.0" - worker-farm "^1.7.0" - -terser-webpack-plugin@^2.3.5: - version "2.3.7" - resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-2.3.7.tgz#4910ff5d1a872168cc7fa6cd3749e2b0d60a8a0b" - integrity sha512-xzYyaHUNhzgaAdBsXxk2Yvo/x1NJdslUaussK3fdpBbvttm1iIwU+c26dj9UxJcwk2c5UWt5F55MUTIA8BE7Dg== - dependencies: - cacache "^13.0.1" - find-cache-dir "^3.3.1" - jest-worker "^25.4.0" - p-limit "^2.3.0" - schema-utils "^2.6.6" - serialize-javascript "^3.1.0" - source-map "^0.6.1" - terser "^4.6.12" - webpack-sources "^1.4.3" - -terser@^4.1.2, terser@^4.6.12, terser@^4.6.3: - version "4.8.0" - resolved "https://registry.yarnpkg.com/terser/-/terser-4.8.0.tgz#63056343d7c70bb29f3af665865a46fe03a0df17" - integrity sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw== - dependencies: - commander "^2.20.0" - source-map "~0.6.1" - source-map-support "~0.5.12" - -text-table@0.2.0, text-table@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" - integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= - -through2@^2.0.0: - version "2.0.5" - resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" - integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== - dependencies: - readable-stream "~2.3.6" - xtend "~4.0.1" - -through@^2.3.6, through@~2.3.4: - version "2.3.8" - resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" - integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= - -thunky@^1.0.2: - version "1.1.0" - resolved "https://registry.yarnpkg.com/thunky/-/thunky-1.1.0.tgz#5abaf714a9405db0504732bbccd2cedd9ef9537d" - integrity sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA== - -timers-browserify@^2.0.4: - version "2.0.11" - resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.11.tgz#800b1f3eee272e5bc53ee465a04d0e804c31211f" - integrity sha512-60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ== - dependencies: - setimmediate "^1.0.4" - -timsort@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/timsort/-/timsort-0.3.0.tgz#405411a8e7e6339fe64db9a234de11dc31e02bd4" - integrity sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q= - -tiny-emitter@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/tiny-emitter/-/tiny-emitter-2.1.0.tgz#1d1a56edfc51c43e863cbb5382a72330e3555423" - integrity sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q== - -tiny-invariant@^1.0.2: - version "1.1.0" - resolved "https://registry.yarnpkg.com/tiny-invariant/-/tiny-invariant-1.1.0.tgz#634c5f8efdc27714b7f386c35e6760991d230875" - integrity sha512-ytxQvrb1cPc9WBEI/HSeYYoGD0kWnGEOR8RY6KomWLBVhqz0RgTwVO9dLrGz7dC+nN9llyI7OKAgRq8Vq4ZBSw== - -tiny-warning@^1.0.0, tiny-warning@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/tiny-warning/-/tiny-warning-1.0.3.tgz#94a30db453df4c643d0fd566060d60a875d84754" - integrity sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA== - -tmp@^0.0.33: - version "0.0.33" - resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" - integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== - dependencies: - os-tmpdir "~1.0.2" - -to-arraybuffer@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43" - integrity sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M= - -to-factory@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/to-factory/-/to-factory-1.0.0.tgz#8738af8bd97120ad1d4047972ada5563bf9479b1" - integrity sha1-hzivi9lxIK0dQEeXKtpVY7+UebE= - -to-fast-properties@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" - integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= - -to-object-path@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" - integrity sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68= - dependencies: - kind-of "^3.0.2" - -to-regex-range@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" - integrity sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg= - dependencies: - is-number "^3.0.0" - repeat-string "^1.6.1" - -to-regex-range@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" - integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== - dependencies: - is-number "^7.0.0" - -to-regex@^3.0.1, to-regex@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" - integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== - dependencies: - define-property "^2.0.2" - extend-shallow "^3.0.2" - regex-not "^1.0.2" - safe-regex "^1.1.0" - -toidentifier@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.0.tgz#7e1be3470f1e77948bc43d94a3c8f4d7752ba553" - integrity sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw== - -tough-cookie@~2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" - integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g== - dependencies: - psl "^1.1.28" - punycode "^2.1.1" - -tr46@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/tr46/-/tr46-1.0.1.tgz#a8b13fd6bfd2489519674ccde55ba3693b706d09" - integrity sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk= - dependencies: - punycode "^2.1.0" - -trim-lines@^1.0.0: - version "1.1.3" - resolved "https://registry.yarnpkg.com/trim-lines/-/trim-lines-1.1.3.tgz#839514be82428fd9e7ec89e35081afe8f6f93115" - integrity sha512-E0ZosSWYK2mkSu+KEtQ9/KqarVjA9HztOSX+9FDdNacRAq29RRV6ZQNgob3iuW8Htar9vAfEa6yyt5qBAHZDBA== - -trim-trailing-lines@^1.0.0: - version "1.1.3" - resolved "https://registry.yarnpkg.com/trim-trailing-lines/-/trim-trailing-lines-1.1.3.tgz#7f0739881ff76657b7776e10874128004b625a94" - integrity sha512-4ku0mmjXifQcTVfYDfR5lpgV7zVqPg6zV9rdZmwOPqq0+Zq19xDqEgagqVbc4pOOShbncuAOIs59R3+3gcF3ZA== - -trim@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/trim/-/trim-0.0.1.tgz#5858547f6b290757ee95cccc666fb50084c460dd" - integrity sha1-WFhUf2spB1fulczMZm+1AITEYN0= - -trough@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/trough/-/trough-1.0.5.tgz#b8b639cefad7d0bb2abd37d433ff8293efa5f406" - integrity sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA== - -tryer@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/tryer/-/tryer-1.0.1.tgz#f2c85406800b9b0f74c9f7465b81eaad241252f8" - integrity sha512-c3zayb8/kWWpycWYg87P71E1S1ZL6b6IJxfb5fvsUgsf0S2MVGaDhDXXjDMpdCpfWXqptc+4mXwmiy1ypXqRAA== - -ts-node@8.10.1: - version "8.10.1" - resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-8.10.1.tgz#77da0366ff8afbe733596361d2df9a60fc9c9bd3" - integrity sha512-bdNz1L4ekHiJul6SHtZWs1ujEKERJnHs4HxN7rjTyyVOFf3HaJ6sLqe6aPG62XTzAB/63pKRh5jTSWL0D7bsvw== - dependencies: - arg "^4.1.0" - diff "^4.0.1" - make-error "^1.1.1" - source-map-support "^0.5.17" - yn "3.1.1" - -ts-pnp@^1.1.6: - version "1.2.0" - resolved "https://registry.yarnpkg.com/ts-pnp/-/ts-pnp-1.2.0.tgz#a500ad084b0798f1c3071af391e65912c86bca92" - integrity sha512-csd+vJOb/gkzvcCHgTGSChYpy5f1/XKNsmvBGO4JXS+z1v2HobugDz4s1IeFXM3wZB44uczs+eazB5Q/ccdhQw== - -tslib@^1.10.0, tslib@^1.9.0: - version "1.13.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.13.0.tgz#c881e13cc7015894ed914862d276436fa9a47043" - integrity sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q== - -tty-browserify@0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" - integrity sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY= - -tunnel-agent@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" - integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= - dependencies: - safe-buffer "^5.0.1" - -tweetnacl@^0.14.3, tweetnacl@~0.14.0: - version "0.14.5" - resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" - integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= - -type-fest@^0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.11.0.tgz#97abf0872310fed88a5c466b25681576145e33f1" - integrity sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ== - -type-is@~1.6.17, type-is@~1.6.18: - version "1.6.18" - resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" - integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== - dependencies: - media-typer "0.3.0" - mime-types "~2.1.24" - -typedarray@^0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" - integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= - -typedoc-default-themes@^0.10.1: - version "0.10.1" - resolved "https://registry.yarnpkg.com/typedoc-default-themes/-/typedoc-default-themes-0.10.1.tgz#eb27b7d689457c7ec843e47ec0d3e500581296a7" - integrity sha512-SuqAQI0CkwhqSJ2kaVTgl37cWs733uy9UGUqwtcds8pkFK8oRF4rZmCq+FXTGIb9hIUOu40rf5Kojg0Ha6akeg== - dependencies: - lunr "^2.3.8" - -typedoc-plugin-markdown@2.3.1: - version "2.3.1" - resolved "https://registry.yarnpkg.com/typedoc-plugin-markdown/-/typedoc-plugin-markdown-2.3.1.tgz#c4c6c3228f625b24875e87cc1622b9a259b914ce" - integrity sha512-7rlmg1tLjddYy11uznHCAlyoOpxdWnFXqGEZ7j2mJ4KJg2avwWgEpw6SFZVofgPCGn36zklpFS51lHxYSRTLVQ== - dependencies: - fs-extra "^9.0.0" - handlebars "^4.7.6" - -typedoc@0.17.6: - version "0.17.6" - resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.17.6.tgz#cab87a72c10e05429016d659a4c3071a5a3ffb61" - integrity sha512-pQiYnhG3yJk7939cv2n8uFoTsSgy5Hfiw0dgOQYa9nT9Ya1013dMctQdAXMj8JbNu7KhcauQyq9Zql9D/TziLw== - dependencies: - fs-extra "^8.1.0" - handlebars "^4.7.6" - highlight.js "^10.0.0" - lodash "^4.17.15" - lunr "^2.3.8" - marked "1.0.0" - minimatch "^3.0.0" - progress "^2.0.3" - shelljs "^0.8.4" - typedoc-default-themes "^0.10.1" - -uglify-js@^3.1.4: - version "3.10.0" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.10.0.tgz#397a7e6e31ce820bfd1cb55b804ee140c587a9e7" - integrity sha512-Esj5HG5WAyrLIdYU74Z3JdG2PxdIusvj6IWHMtlyESxc7kcDz7zYlYjpnSokn1UbpV0d/QX9fan7gkCNd/9BQA== - -unherit@^1.0.4: - version "1.1.3" - resolved "https://registry.yarnpkg.com/unherit/-/unherit-1.1.3.tgz#6c9b503f2b41b262330c80e91c8614abdaa69c22" - integrity sha512-Ft16BJcnapDKp0+J/rqFC3Rrk6Y/Ng4nzsC028k2jdDII/rdZ7Wd3pPT/6+vIIxRagwRc9K0IUX0Ra4fKvw+WQ== - dependencies: - inherits "^2.0.0" - xtend "^4.0.0" - -unicode-canonical-property-names-ecmascript@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz#2619800c4c825800efdd8343af7dd9933cbe2818" - integrity sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ== - -unicode-match-property-ecmascript@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz#8ed2a32569961bce9227d09cd3ffbb8fed5f020c" - integrity sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg== - dependencies: - unicode-canonical-property-names-ecmascript "^1.0.4" - unicode-property-aliases-ecmascript "^1.0.4" - -unicode-match-property-value-ecmascript@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz#0d91f600eeeb3096aa962b1d6fc88876e64ea531" - integrity sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ== - -unicode-property-aliases-ecmascript@^1.0.4: - version "1.1.0" - resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz#dd57a99f6207bedff4628abefb94c50db941c8f4" - integrity sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg== - -unified@9.0.0: - version "9.0.0" - resolved "https://registry.yarnpkg.com/unified/-/unified-9.0.0.tgz#12b099f97ee8b36792dbad13d278ee2f696eed1d" - integrity sha512-ssFo33gljU3PdlWLjNp15Inqb77d6JnJSfyplGJPT/a+fNRNyCBeveBAYJdO5khKdF6WVHa/yYCC7Xl6BDwZUQ== - dependencies: - bail "^1.0.0" - extend "^3.0.0" - is-buffer "^2.0.0" - is-plain-obj "^2.0.0" - trough "^1.0.0" - vfile "^4.0.0" - -unified@^8.4.2: - version "8.4.2" - resolved "https://registry.yarnpkg.com/unified/-/unified-8.4.2.tgz#13ad58b4a437faa2751a4a4c6a16f680c500fff1" - integrity sha512-JCrmN13jI4+h9UAyKEoGcDZV+i1E7BLFuG7OsaDvTXI5P0qhHX+vZO/kOhz9jn8HGENDKbwSeB0nVOg4gVStGA== - dependencies: - bail "^1.0.0" - extend "^3.0.0" - is-plain-obj "^2.0.0" - trough "^1.0.0" - vfile "^4.0.0" - -union-value@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" - integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg== - dependencies: - arr-union "^3.1.0" - get-value "^2.0.6" - is-extendable "^0.1.1" - set-value "^2.0.1" - -uniq@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff" - integrity sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8= - -uniqs@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/uniqs/-/uniqs-2.0.0.tgz#ffede4b36b25290696e6e165d4a59edb998e6b02" - integrity sha1-/+3ks2slKQaW5uFl1KWe25mOawI= - -unique-filename@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230" - integrity sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ== - dependencies: - unique-slug "^2.0.0" - -unique-slug@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-2.0.2.tgz#baabce91083fc64e945b0f3ad613e264f7cd4e6c" - integrity sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w== - dependencies: - imurmurhash "^0.1.4" - -unist-builder@2.0.3, unist-builder@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/unist-builder/-/unist-builder-2.0.3.tgz#77648711b5d86af0942f334397a33c5e91516436" - integrity sha512-f98yt5pnlMWlzP539tPc4grGMsFaQQlP/vM396b00jngsiINumNmsY8rkXjfoi1c6QaM8nQ3vaGDuoKWbe/1Uw== - -unist-util-generated@^1.0.0: - version "1.1.5" - resolved "https://registry.yarnpkg.com/unist-util-generated/-/unist-util-generated-1.1.5.tgz#1e903e68467931ebfaea386dae9ea253628acd42" - integrity sha512-1TC+NxQa4N9pNdayCYA1EGUOCAO0Le3fVp7Jzns6lnua/mYgwHo0tz5WUAfrdpNch1RZLHc61VZ1SDgrtNXLSw== - -unist-util-is@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-3.0.0.tgz#d9e84381c2468e82629e4a5be9d7d05a2dd324cd" - integrity sha512-sVZZX3+kspVNmLWBPAB6r+7D9ZgAFPNWm66f7YNb420RlQSbn+n8rG8dGZSkrER7ZIXGQYNm5pqC3v3HopH24A== - -unist-util-is@^4.0.0: - version "4.0.2" - resolved "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-4.0.2.tgz#c7d1341188aa9ce5b3cff538958de9895f14a5de" - integrity sha512-Ofx8uf6haexJwI1gxWMGg6I/dLnF2yE+KibhD3/diOqY2TinLcqHXCV6OI5gFVn3xQqDH+u0M625pfKwIwgBKQ== - -unist-util-position@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/unist-util-position/-/unist-util-position-3.1.0.tgz#1c42ee6301f8d52f47d14f62bbdb796571fa2d47" - integrity sha512-w+PkwCbYSFw8vpgWD0v7zRCl1FpY3fjDSQ3/N/wNd9Ffa4gPi8+4keqt99N3XW6F99t/mUzp2xAhNmfKWp95QA== - -unist-util-remove-position@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/unist-util-remove-position/-/unist-util-remove-position-2.0.1.tgz#5d19ca79fdba712301999b2b73553ca8f3b352cc" - integrity sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA== - dependencies: - unist-util-visit "^2.0.0" - -unist-util-remove@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/unist-util-remove/-/unist-util-remove-2.0.0.tgz#32c2ad5578802f2ca62ab808173d505b2c898488" - integrity sha512-HwwWyNHKkeg/eXRnE11IpzY8JT55JNM1YCwwU9YNCnfzk6s8GhPXrVBBZWiwLeATJbI7euvoGSzcy9M29UeW3g== - dependencies: - unist-util-is "^4.0.0" - -unist-util-stringify-position@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz#cce3bfa1cdf85ba7375d1d5b17bdc4cada9bd9da" - integrity sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g== - dependencies: - "@types/unist" "^2.0.2" - -unist-util-visit-parents@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/unist-util-visit-parents/-/unist-util-visit-parents-3.1.0.tgz#4dd262fb9dcfe44f297d53e882fc6ff3421173d5" - integrity sha512-0g4wbluTF93npyPrp/ymd3tCDTMnP0yo2akFD2FIBAYXq/Sga3lwaU1D8OYKbtpioaI6CkDcQ6fsMnmtzt7htw== - dependencies: - "@types/unist" "^2.0.0" - unist-util-is "^4.0.0" - -unist-util-visit@2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/unist-util-visit/-/unist-util-visit-2.0.2.tgz#3843782a517de3d2357b4c193b24af2d9366afb7" - integrity sha512-HoHNhGnKj6y+Sq+7ASo2zpVdfdRifhTgX2KTU3B/sO/TTlZchp7E3S4vjRzDJ7L60KmrCPsQkVK3lEF3cz36XQ== - dependencies: - "@types/unist" "^2.0.0" - unist-util-is "^4.0.0" - unist-util-visit-parents "^3.0.0" - -unist-util-visit@^2.0.0, unist-util-visit@^2.0.1, unist-util-visit@^2.0.2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/unist-util-visit/-/unist-util-visit-2.0.3.tgz#c3703893146df47203bb8a9795af47d7b971208c" - integrity sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q== - dependencies: - "@types/unist" "^2.0.0" - unist-util-is "^4.0.0" - unist-util-visit-parents "^3.0.0" - -universalify@^0.1.0: - version "0.1.2" - resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" - integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== - -universalify@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/universalify/-/universalify-1.0.0.tgz#b61a1da173e8435b2fe3c67d29b9adf8594bd16d" - integrity sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug== - -unpipe@1.0.0, unpipe@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" - integrity sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw= - -unquote@~1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/unquote/-/unquote-1.1.1.tgz#8fded7324ec6e88a0ff8b905e7c098cdc086d544" - integrity sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ= - -unset-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" - integrity sha1-g3aHP30jNRef+x5vw6jtDfyKtVk= - dependencies: - has-value "^0.3.1" - isobject "^3.0.0" - -upath@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894" - integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg== - -uri-js@^4.2.2: - version "4.2.2" - resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0" - integrity sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ== - dependencies: - punycode "^2.1.0" - -urix@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" - integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= - -url-parse@^1.4.3: - version "1.4.7" - resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.4.7.tgz#a8a83535e8c00a316e403a5db4ac1b9b853ae278" - integrity sha512-d3uaVyzDB9tQoSXFvuSUNFibTd9zxd2bkVrDRvF5TmvWWQwqE4lgYJ5m+x1DbecWkw+LK4RNl2CU1hHuOKPVlg== - dependencies: - querystringify "^2.1.1" - requires-port "^1.0.0" - -url@^0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" - integrity sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE= - dependencies: - punycode "1.3.2" - querystring "0.2.0" - -use@^3.1.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" - integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== - -util-deprecate@^1.0.1, util-deprecate@~1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" - integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= - -util.promisify@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.0.tgz#440f7165a459c9a16dc145eb8e72f35687097030" - integrity sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA== - dependencies: - define-properties "^1.1.2" - object.getownpropertydescriptors "^2.0.3" - -util.promisify@~1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.1.tgz#6baf7774b80eeb0f7520d8b81d07982a59abbaee" - integrity sha512-g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.2" - has-symbols "^1.0.1" - object.getownpropertydescriptors "^2.1.0" - -util@0.10.3: - version "0.10.3" - resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9" - integrity sha1-evsa/lCAUkZInj23/g7TeTNqwPk= - dependencies: - inherits "2.0.1" - -util@^0.11.0: - version "0.11.1" - resolved "https://registry.yarnpkg.com/util/-/util-0.11.1.tgz#3236733720ec64bb27f6e26f421aaa2e1b588d61" - integrity sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ== - dependencies: - inherits "2.0.3" - -utila@^0.4.0, utila@~0.4: - version "0.4.0" - resolved "https://registry.yarnpkg.com/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c" - integrity sha1-ihagXURWV6Oupe7MWxKk+lN5dyw= - -utils-merge@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" - integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= - -uuid@^3.3.2, uuid@^3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" - integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== - -value-equal@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/value-equal/-/value-equal-1.0.1.tgz#1e0b794c734c5c0cade179c437d356d931a34d6c" - integrity sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw== - -vary@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" - integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= - -vendors@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/vendors/-/vendors-1.0.4.tgz#e2b800a53e7a29b93506c3cf41100d16c4c4ad8e" - integrity sha512-/juG65kTL4Cy2su4P8HjtkTxk6VmJDiOPBufWniqQ6wknac6jNiXS9vU+hO3wgusiyqWlzTbVHi0dyJqRONg3w== - -verror@1.10.0: - version "1.10.0" - resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" - integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA= - dependencies: - assert-plus "^1.0.0" - core-util-is "1.0.2" - extsprintf "^1.2.0" - -vfile-location@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/vfile-location/-/vfile-location-3.0.1.tgz#d78677c3546de0f7cd977544c367266764d31bb3" - integrity sha512-yYBO06eeN/Ki6Kh1QAkgzYpWT1d3Qln+ZCtSbJqFExPl1S3y2qqotJQXoh6qEvl/jDlgpUJolBn3PItVnnZRqQ== - -vfile-message@^2.0.0: - version "2.0.4" - resolved "https://registry.yarnpkg.com/vfile-message/-/vfile-message-2.0.4.tgz#5b43b88171d409eae58477d13f23dd41d52c371a" - integrity sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ== - dependencies: - "@types/unist" "^2.0.0" - unist-util-stringify-position "^2.0.0" - -vfile@^4.0.0: - version "4.1.1" - resolved "https://registry.yarnpkg.com/vfile/-/vfile-4.1.1.tgz#282d28cebb609183ac51703001bc18b3e3f17de9" - integrity sha512-lRjkpyDGjVlBA7cDQhQ+gNcvB1BGaTHYuSOcY3S7OhDmBtnzX95FhtZZDecSTDm6aajFymyve6S5DN4ZHGezdQ== - dependencies: - "@types/unist" "^2.0.0" - is-buffer "^2.0.0" - replace-ext "1.0.0" - unist-util-stringify-position "^2.0.0" - vfile-message "^2.0.0" - -vm-browserify@^1.0.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-1.1.2.tgz#78641c488b8e6ca91a75f511e7a3b32a86e5dda0" - integrity sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ== - -wait-file@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/wait-file/-/wait-file-1.0.5.tgz#377f48795f1765046a41bb0671c142ef8e509ae6" - integrity sha512-udLpJY/eOxlrMm3+XD1RLuF2oT9B7J7wiyR5/9xrvQymS6YR6trWvVhzOldHrVbLwyiRmLj9fcvsjzpSXeZHkw== - dependencies: - "@hapi/joi" "^15.1.0" - fs-extra "^8.1.0" - rx "^4.1.0" - -watchpack-chokidar2@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/watchpack-chokidar2/-/watchpack-chokidar2-2.0.0.tgz#9948a1866cbbd6cb824dea13a7ed691f6c8ddff0" - integrity sha512-9TyfOyN/zLUbA288wZ8IsMZ+6cbzvsNyEzSBp6e/zkifi6xxbl8SmQ/CxQq32k8NNqrdVEVUVSEf56L4rQ/ZxA== - dependencies: - chokidar "^2.1.8" - -watchpack@^1.6.1: - version "1.7.2" - resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.7.2.tgz#c02e4d4d49913c3e7e122c3325365af9d331e9aa" - integrity sha512-ymVbbQP40MFTp+cNMvpyBpBtygHnPzPkHqoIwRRj/0B8KhqQwV8LaKjtbaxF2lK4vl8zN9wCxS46IFCU5K4W0g== - dependencies: - graceful-fs "^4.1.2" - neo-async "^2.5.0" - optionalDependencies: - chokidar "^3.4.0" - watchpack-chokidar2 "^2.0.0" - -wbuf@^1.1.0, wbuf@^1.7.3: - version "1.7.3" - resolved "https://registry.yarnpkg.com/wbuf/-/wbuf-1.7.3.tgz#c1d8d149316d3ea852848895cb6a0bfe887b87df" - integrity sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA== - dependencies: - minimalistic-assert "^1.0.0" - -web-namespaces@^1.0.0, web-namespaces@^1.1.2: - version "1.1.4" - resolved "https://registry.yarnpkg.com/web-namespaces/-/web-namespaces-1.1.4.tgz#bc98a3de60dadd7faefc403d1076d529f5e030ec" - integrity sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw== - -webidl-conversions@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" - integrity sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg== - -webpack-bundle-analyzer@^3.6.1: - version "3.8.0" - resolved "https://registry.yarnpkg.com/webpack-bundle-analyzer/-/webpack-bundle-analyzer-3.8.0.tgz#ce6b3f908daf069fd1f7266f692cbb3bded9ba16" - integrity sha512-PODQhAYVEourCcOuU+NiYI7WdR8QyELZGgPvB1y2tjbUpbmcQOt5Q7jEK+ttd5se0KSBKD9SXHCEozS++Wllmw== - dependencies: - acorn "^7.1.1" - acorn-walk "^7.1.1" - bfj "^6.1.1" - chalk "^2.4.1" - commander "^2.18.0" - ejs "^2.6.1" - express "^4.16.3" - filesize "^3.6.1" - gzip-size "^5.0.0" - lodash "^4.17.15" - mkdirp "^0.5.1" - opener "^1.5.1" - ws "^6.0.0" - -webpack-dev-middleware@^3.7.2: - version "3.7.2" - resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-3.7.2.tgz#0019c3db716e3fa5cecbf64f2ab88a74bab331f3" - integrity sha512-1xC42LxbYoqLNAhV6YzTYacicgMZQTqRd27Sim9wn5hJrX3I5nxYy1SxSd4+gjUFsz1dQFj+yEe6zEVmSkeJjw== - dependencies: - memory-fs "^0.4.1" - mime "^2.4.4" - mkdirp "^0.5.1" - range-parser "^1.2.1" - webpack-log "^2.0.0" - -webpack-dev-server@^3.11.0: - version "3.11.0" - resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-3.11.0.tgz#8f154a3bce1bcfd1cc618ef4e703278855e7ff8c" - integrity sha512-PUxZ+oSTxogFQgkTtFndEtJIPNmml7ExwufBZ9L2/Xyyd5PnOL5UreWe5ZT7IU25DSdykL9p1MLQzmLh2ljSeg== - dependencies: - ansi-html "0.0.7" - bonjour "^3.5.0" - chokidar "^2.1.8" - compression "^1.7.4" - connect-history-api-fallback "^1.6.0" - debug "^4.1.1" - del "^4.1.1" - express "^4.17.1" - html-entities "^1.3.1" - http-proxy-middleware "0.19.1" - import-local "^2.0.0" - internal-ip "^4.3.0" - ip "^1.1.5" - is-absolute-url "^3.0.3" - killable "^1.0.1" - loglevel "^1.6.8" - opn "^5.5.0" - p-retry "^3.0.1" - portfinder "^1.0.26" - schema-utils "^1.0.0" - selfsigned "^1.10.7" - semver "^6.3.0" - serve-index "^1.9.1" - sockjs "0.3.20" - sockjs-client "1.4.0" - spdy "^4.0.2" - strip-ansi "^3.0.1" - supports-color "^6.1.0" - url "^0.11.0" - webpack-dev-middleware "^3.7.2" - webpack-log "^2.0.0" - ws "^6.2.1" - yargs "^13.3.2" - -webpack-log@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/webpack-log/-/webpack-log-2.0.0.tgz#5b7928e0637593f119d32f6227c1e0ac31e1b47f" - integrity sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg== - dependencies: - ansi-colors "^3.0.0" - uuid "^3.3.2" - -webpack-merge@^4.2.2: - version "4.2.2" - resolved "https://registry.yarnpkg.com/webpack-merge/-/webpack-merge-4.2.2.tgz#a27c52ea783d1398afd2087f547d7b9d2f43634d" - integrity sha512-TUE1UGoTX2Cd42j3krGYqObZbOD+xF7u28WB7tfUordytSjbWTIjK/8V0amkBfTYN4/pB/GIDlJZZ657BGG19g== - dependencies: - lodash "^4.17.15" - -webpack-sources@^1.1.0, webpack-sources@^1.4.0, webpack-sources@^1.4.1, webpack-sources@^1.4.3: - version "1.4.3" - resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933" - integrity sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ== - dependencies: - source-list-map "^2.0.0" - source-map "~0.6.1" - -webpack@^4.41.2: - version "4.43.0" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.43.0.tgz#c48547b11d563224c561dad1172c8aa0b8a678e6" - integrity sha512-GW1LjnPipFW2Y78OOab8NJlCflB7EFskMih2AHdvjbpKMeDJqEgSx24cXXXiPS65+WSwVyxtDsJH6jGX2czy+g== - dependencies: - "@webassemblyjs/ast" "1.9.0" - "@webassemblyjs/helper-module-context" "1.9.0" - "@webassemblyjs/wasm-edit" "1.9.0" - "@webassemblyjs/wasm-parser" "1.9.0" - acorn "^6.4.1" - ajv "^6.10.2" - ajv-keywords "^3.4.1" - chrome-trace-event "^1.0.2" - enhanced-resolve "^4.1.0" - eslint-scope "^4.0.3" - json-parse-better-errors "^1.0.2" - loader-runner "^2.4.0" - loader-utils "^1.2.3" - memory-fs "^0.4.1" - micromatch "^3.1.10" - mkdirp "^0.5.3" - neo-async "^2.6.1" - node-libs-browser "^2.2.1" - schema-utils "^1.0.0" - tapable "^1.1.3" - terser-webpack-plugin "^1.4.3" - watchpack "^1.6.1" - webpack-sources "^1.4.1" - -webpackbar@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/webpackbar/-/webpackbar-4.0.0.tgz#ee7a87f16077505b5720551af413c8ecd5b1f780" - integrity sha512-k1qRoSL/3BVuINzngj09nIwreD8wxV4grcuhHTD8VJgUbGcy8lQSPqv+bM00B7F+PffwIsQ8ISd4mIwRbr23eQ== - dependencies: - ansi-escapes "^4.2.1" - chalk "^2.4.2" - consola "^2.10.0" - figures "^3.0.0" - pretty-time "^1.1.0" - std-env "^2.2.1" - text-table "^0.2.0" - wrap-ansi "^6.0.0" - -websocket-driver@0.6.5: - version "0.6.5" - resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.6.5.tgz#5cb2556ceb85f4373c6d8238aa691c8454e13a36" - integrity sha1-XLJVbOuF9Dc8bYI4qmkchFThOjY= - dependencies: - websocket-extensions ">=0.1.1" - -websocket-driver@>=0.5.1: - version "0.7.4" - resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.7.4.tgz#89ad5295bbf64b480abcba31e4953aca706f5760" - integrity sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg== - dependencies: - http-parser-js ">=0.5.1" - safe-buffer ">=5.1.0" - websocket-extensions ">=0.1.1" - -websocket-extensions@>=0.1.1: - version "0.1.4" - resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.4.tgz#7f8473bc839dfd87608adb95d7eb075211578a42" - integrity sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg== - -whatwg-url@^7.0.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-7.1.0.tgz#c2c492f1eca612988efd3d2266be1b9fc6170d06" - integrity sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg== - dependencies: - lodash.sortby "^4.7.0" - tr46 "^1.0.1" - webidl-conversions "^4.0.2" - -which-module@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" - integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= - -which@^1.2.9, which@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" - integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== - dependencies: - isexe "^2.0.0" - -which@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" - integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== - dependencies: - isexe "^2.0.0" - -wordwrap@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" - integrity sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus= - -worker-farm@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.7.0.tgz#26a94c5391bbca926152002f69b84a4bf772e5a8" - integrity sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw== - dependencies: - errno "~0.1.7" - -worker-rpc@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/worker-rpc/-/worker-rpc-0.1.1.tgz#cb565bd6d7071a8f16660686051e969ad32f54d5" - integrity sha512-P1WjMrUB3qgJNI9jfmpZ/htmBEjFh//6l/5y8SD9hg1Ef5zTTVVoRjTrTEzPrNBQvmhMxkoTsjOXN10GWU7aCg== - dependencies: - microevent.ts "~0.1.1" - -wrap-ansi@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz#1fd1f67235d5b6d0fee781056001bfb694c03b09" - integrity sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q== - dependencies: - ansi-styles "^3.2.0" - string-width "^3.0.0" - strip-ansi "^5.0.0" - -wrap-ansi@^6.0.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53" - integrity sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA== - dependencies: - ansi-styles "^4.0.0" - string-width "^4.1.0" - strip-ansi "^6.0.0" - -wrappy@1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" - integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= - -ws@^6.0.0, ws@^6.2.1: - version "6.2.1" - resolved "https://registry.yarnpkg.com/ws/-/ws-6.2.1.tgz#442fdf0a47ed64f59b6a5d8ff130f4748ed524fb" - integrity sha512-GIyAXC2cB7LjvpgMt9EKS2ldqr0MTrORaleiOno6TweZ6r3TKtoFQWay/2PceJ3RuBasOHzXNn5Lrw1X0bEjqA== - dependencies: - async-limiter "~1.0.0" - -xml-js@^1.6.11: - version "1.6.11" - resolved "https://registry.yarnpkg.com/xml-js/-/xml-js-1.6.11.tgz#927d2f6947f7f1c19a316dd8eea3614e8b18f8e9" - integrity sha512-7rVi2KMfwfWFl+GpPg6m80IVMWXLRjO+PxTq7V2CDhoGak0wzYzFgUY2m4XJ47OGdXd8eLE8EmwfAmdjw7lC1g== - dependencies: - sax "^1.2.4" - -xmlbuilder@^13.0.0: - version "13.0.2" - resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-13.0.2.tgz#02ae33614b6a047d1c32b5389c1fdacb2bce47a7" - integrity sha512-Eux0i2QdDYKbdbA6AM6xE4m6ZTZr4G4xF9kahI2ukSEMCzwce2eX9WlTI5J3s+NU7hpasFsr8hWIONae7LluAQ== - -xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" - integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== - -y18n@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" - integrity sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w== - -yallist@^3.0.2: - version "3.1.1" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" - integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== - -yallist@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" - integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== - -yaml@^1.7.2: - version "1.10.0" - resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.0.tgz#3b593add944876077d4d683fee01081bd9fff31e" - integrity sha512-yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg== - -yargs-parser@^13.1.2: - version "13.1.2" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.2.tgz#130f09702ebaeef2650d54ce6e3e5706f7a4fb38" - integrity sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg== - dependencies: - camelcase "^5.0.0" - decamelize "^1.2.0" - -yargs@^13.3.2: - version "13.3.2" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.2.tgz#ad7ffefec1aa59565ac915f82dccb38a9c31a2dd" - integrity sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw== - dependencies: - cliui "^5.0.0" - find-up "^3.0.0" - get-caller-file "^2.0.1" - require-directory "^2.1.1" - require-main-filename "^2.0.0" - set-blocking "^2.0.0" - string-width "^3.0.0" - which-module "^2.0.0" - y18n "^4.0.0" - yargs-parser "^13.1.2" - -yn@3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50" - integrity sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q== - -zepto@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/zepto/-/zepto-1.2.0.tgz#e127bd9e66fd846be5eab48c1394882f7c0e4f98" - integrity sha1-4Se9nmb9hGvl6rSME5SIL3wOT5g= - -zwitch@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/zwitch/-/zwitch-1.0.5.tgz#d11d7381ffed16b742f6af7b3f223d5cd9fe9920" - integrity sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw== diff --git a/yarn.lock b/yarn.lock index 11dc435a9..77ded08ba 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1,19070 +1,28068 @@ -# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. -# yarn lockfile v1 - - -"@apollo/client@3.0.2": - version "3.0.2" - resolved "https://registry.yarnpkg.com/@apollo/client/-/client-3.0.2.tgz#fadb2b39a0e32950baaef2566442cb3f6de74a52" - integrity sha512-4ighan5Anlj4tK/tdUHs4Mi1njqXZ7AxRCVolz/H702DjPphAJfm+FRkIadPTmwz+OLO+d+tX+6V1VBshf02rg== - dependencies: - "@types/zen-observable" "^0.8.0" - "@wry/context" "^0.5.2" - "@wry/equality" "^0.1.9" - fast-json-stable-stringify "^2.0.0" - graphql-tag "^2.10.4" - hoist-non-react-statics "^3.3.2" - optimism "^0.12.1" - prop-types "^15.7.2" - symbol-observable "^1.2.0" - ts-invariant "^0.4.4" - tslib "^1.10.0" - zen-observable "^0.8.14" - -"@apollo/protobufjs@^1.0.3": - version "1.0.4" - resolved "https://registry.yarnpkg.com/@apollo/protobufjs/-/protobufjs-1.0.4.tgz#cf01747a55359066341f31b5ce8db17df44244e0" - integrity sha512-EE3zx+/D/wur/JiLp6VCiw1iYdyy1lCJMf8CGPkLeDt5QJrN4N8tKFx33Ah4V30AUQzMk7Uz4IXKZ1LOj124gA== - dependencies: - "@protobufjs/aspromise" "^1.1.2" - "@protobufjs/base64" "^1.1.2" - "@protobufjs/codegen" "^2.0.4" - "@protobufjs/eventemitter" "^1.1.0" - "@protobufjs/fetch" "^1.1.0" - "@protobufjs/float" "^1.0.2" - "@protobufjs/inquire" "^1.1.0" - "@protobufjs/path" "^1.1.2" - "@protobufjs/pool" "^1.1.0" - "@protobufjs/utf8" "^1.1.0" - "@types/long" "^4.0.0" - "@types/node" "^10.1.0" - long "^4.0.0" - -"@apollographql/apollo-tools@^0.4.3": - version "0.4.8" - resolved "https://registry.yarnpkg.com/@apollographql/apollo-tools/-/apollo-tools-0.4.8.tgz#d81da89ee880c2345eb86bddb92b35291f6135ed" - integrity sha512-W2+HB8Y7ifowcf3YyPHgDI05izyRtOeZ4MqIr7LbTArtmJ0ZHULWpn84SGMW7NAvTV1tFExpHlveHhnXuJfuGA== - dependencies: - apollo-env "^0.6.5" - -"@apollographql/graphql-playground-html@1.6.26": - version "1.6.26" - resolved "https://registry.yarnpkg.com/@apollographql/graphql-playground-html/-/graphql-playground-html-1.6.26.tgz#2f7b610392e2a872722912fc342b43cf8d641cb3" - integrity sha512-XAwXOIab51QyhBxnxySdK3nuMEUohhDsHQ5Rbco/V1vjlP75zZ0ZLHD9dTpXTN8uxKxopb2lUvJTq+M4g2Q0HQ== - dependencies: - xss "^1.0.6" - -"@ardatan/aggregate-error@0.0.1": - version "0.0.1" - resolved "https://registry.yarnpkg.com/@ardatan/aggregate-error/-/aggregate-error-0.0.1.tgz#1403ac5de10d8ca689fc1f65844c27179ae1d44f" - integrity sha512-UQ9BequOTIavs0pTHLMwQwKQF8tTV1oezY/H2O9chA+JNPFZSua55xpU5dPSjAU9/jLJ1VwU+HJuTVN8u7S6Fg== - -"@babel/code-frame@7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.8.3.tgz#33e25903d7481181534e12ec0a25f16b6fcf419e" - integrity sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g== - dependencies: - "@babel/highlight" "^7.8.3" - -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.1", "@babel/code-frame@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.10.1.tgz#d5481c5095daa1c57e16e54c6f9198443afb49ff" - integrity sha512-IGhtTmpjGbYzcEDOw7DcQtbQSXcG9ftmAXtWTu9V936vDye4xjjekktFAtgZsWpzTj/X01jocB46mTywm/4SZw== - dependencies: - "@babel/highlight" "^7.10.1" - -"@babel/code-frame@^7.10.3", "@babel/code-frame@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.10.4.tgz#168da1a36e90da68ae8d49c0f1b48c7c6249213a" - integrity sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg== - dependencies: - "@babel/highlight" "^7.10.4" - -"@babel/compat-data@^7.10.1", "@babel/compat-data@^7.9.0": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.10.1.tgz#b1085ffe72cd17bf2c0ee790fc09f9626011b2db" - integrity sha512-CHvCj7So7iCkGKPRFUfryXIkU2gSBw7VSZFYLsqVhrS47269VK2Hfi9S/YcublPMW8k1u2bQBlbDruoQEm4fgw== - dependencies: - browserslist "^4.12.0" - invariant "^2.2.4" - semver "^5.5.0" - -"@babel/core@7.9.0": - version "7.9.0" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.9.0.tgz#ac977b538b77e132ff706f3b8a4dbad09c03c56e" - integrity sha512-kWc7L0fw1xwvI0zi8OKVBuxRVefwGOrKSQMvrQ3dW+bIIavBY3/NpXmpjMy7bQnLgwgzWQZ8TlM57YHpHNHz4w== - dependencies: - "@babel/code-frame" "^7.8.3" - "@babel/generator" "^7.9.0" - "@babel/helper-module-transforms" "^7.9.0" - "@babel/helpers" "^7.9.0" - "@babel/parser" "^7.9.0" - "@babel/template" "^7.8.6" - "@babel/traverse" "^7.9.0" - "@babel/types" "^7.9.0" - convert-source-map "^1.7.0" - debug "^4.1.0" - gensync "^1.0.0-beta.1" - json5 "^2.1.2" - lodash "^4.17.13" - resolve "^1.3.2" - semver "^5.4.1" - source-map "^0.5.0" - -"@babel/core@^7.0.0", "@babel/core@^7.1.0", "@babel/core@^7.4.5", "@babel/core@^7.7.5": - version "7.10.2" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.10.2.tgz#bd6786046668a925ac2bd2fd95b579b92a23b36a" - integrity sha512-KQmV9yguEjQsXqyOUGKjS4+3K8/DlOCE2pZcq4augdQmtTy5iv5EHtmMSJ7V4c1BIPjuwtZYqYLCq9Ga+hGBRQ== - dependencies: - "@babel/code-frame" "^7.10.1" - "@babel/generator" "^7.10.2" - "@babel/helper-module-transforms" "^7.10.1" - "@babel/helpers" "^7.10.1" - "@babel/parser" "^7.10.2" - "@babel/template" "^7.10.1" - "@babel/traverse" "^7.10.1" - "@babel/types" "^7.10.2" - convert-source-map "^1.7.0" - debug "^4.1.0" - gensync "^1.0.0-beta.1" - json5 "^2.1.2" - lodash "^4.17.13" - resolve "^1.3.2" - semver "^5.4.1" - source-map "^0.5.0" - -"@babel/generator@^7.10.1", "@babel/generator@^7.10.2", "@babel/generator@^7.4.0", "@babel/generator@^7.5.0", "@babel/generator@^7.9.0": - version "7.10.2" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.10.2.tgz#0fa5b5b2389db8bfdfcc3492b551ee20f5dd69a9" - integrity sha512-AxfBNHNu99DTMvlUPlt1h2+Hn7knPpH5ayJ8OqDWSeLld+Fi2AYBTC/IejWDM9Edcii4UzZRCsbUt0WlSDsDsA== - dependencies: - "@babel/types" "^7.10.2" - jsesc "^2.5.1" - lodash "^4.17.13" - source-map "^0.5.0" - -"@babel/generator@^7.10.3": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.10.4.tgz#e49eeed9fe114b62fa5b181856a43a5e32f5f243" - integrity sha512-toLIHUIAgcQygFZRAQcsLQV3CBuX6yOIru1kJk/qqqvcRmZrYe6WavZTSG+bB8MxhnL9YPf+pKQfuiP161q7ng== - dependencies: - "@babel/types" "^7.10.4" - jsesc "^2.5.1" - lodash "^4.17.13" - source-map "^0.5.0" - -"@babel/helper-annotate-as-pure@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.10.1.tgz#f6d08acc6f70bbd59b436262553fb2e259a1a268" - integrity sha512-ewp3rvJEwLaHgyWGe4wQssC2vjks3E80WiUe2BpMb0KhreTjMROCbxXcEovTrbeGVdQct5VjQfrv9EgC+xMzCw== - dependencies: - "@babel/types" "^7.10.1" - -"@babel/helper-builder-binary-assignment-operator-visitor@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.10.1.tgz#0ec7d9be8174934532661f87783eb18d72290059" - integrity sha512-cQpVq48EkYxUU0xozpGCLla3wlkdRRqLWu1ksFMXA9CM5KQmyyRpSEsYXbao7JUkOw/tAaYKCaYyZq6HOFYtyw== - dependencies: - "@babel/helper-explode-assignable-expression" "^7.10.1" - "@babel/types" "^7.10.1" - -"@babel/helper-builder-react-jsx-experimental@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx-experimental/-/helper-builder-react-jsx-experimental-7.10.1.tgz#9a7d58ad184d3ac3bafb1a452cec2bad7e4a0bc8" - integrity sha512-irQJ8kpQUV3JasXPSFQ+LCCtJSc5ceZrPFVj6TElR6XCHssi3jV8ch3odIrNtjJFRZZVbrOEfJMI79TPU/h1pQ== - dependencies: - "@babel/helper-annotate-as-pure" "^7.10.1" - "@babel/helper-module-imports" "^7.10.1" - "@babel/types" "^7.10.1" - -"@babel/helper-builder-react-jsx@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.10.1.tgz#a327f0cf983af5554701b1215de54a019f09b532" - integrity sha512-KXzzpyWhXgzjXIlJU1ZjIXzUPdej1suE6vzqgImZ/cpAsR/CC8gUcX4EWRmDfWz/cs6HOCPMBIJ3nKoXt3BFuw== - dependencies: - "@babel/helper-annotate-as-pure" "^7.10.1" - "@babel/types" "^7.10.1" - -"@babel/helper-compilation-targets@^7.10.2", "@babel/helper-compilation-targets@^7.8.7": - version "7.10.2" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.10.2.tgz#a17d9723b6e2c750299d2a14d4637c76936d8285" - integrity sha512-hYgOhF4To2UTB4LTaZepN/4Pl9LD4gfbJx8A34mqoluT8TLbof1mhUlYuNWTEebONa8+UlCC4X0TEXu7AOUyGA== - dependencies: - "@babel/compat-data" "^7.10.1" - browserslist "^4.12.0" - invariant "^2.2.4" - levenary "^1.1.1" - semver "^5.5.0" - -"@babel/helper-create-class-features-plugin@^7.10.1", "@babel/helper-create-class-features-plugin@^7.8.3": - version "7.10.2" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.10.2.tgz#7474295770f217dbcf288bf7572eb213db46ee67" - integrity sha512-5C/QhkGFh1vqcziq1vAL6SI9ymzUp8BCYjFpvYVhWP4DlATIb3u5q3iUd35mvlyGs8fO7hckkW7i0tmH+5+bvQ== - dependencies: - "@babel/helper-function-name" "^7.10.1" - "@babel/helper-member-expression-to-functions" "^7.10.1" - "@babel/helper-optimise-call-expression" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" - "@babel/helper-replace-supers" "^7.10.1" - "@babel/helper-split-export-declaration" "^7.10.1" - -"@babel/helper-create-regexp-features-plugin@^7.10.1", "@babel/helper-create-regexp-features-plugin@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.10.1.tgz#1b8feeab1594cbcfbf3ab5a3bbcabac0468efdbd" - integrity sha512-Rx4rHS0pVuJn5pJOqaqcZR4XSgeF9G/pO/79t+4r7380tXFJdzImFnxMU19f83wjSrmKHq6myrM10pFHTGzkUA== - dependencies: - "@babel/helper-annotate-as-pure" "^7.10.1" - "@babel/helper-regex" "^7.10.1" - regexpu-core "^4.7.0" - -"@babel/helper-define-map@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.10.1.tgz#5e69ee8308648470dd7900d159c044c10285221d" - integrity sha512-+5odWpX+OnvkD0Zmq7panrMuAGQBu6aPUgvMzuMGo4R+jUOvealEj2hiqI6WhxgKrTpFoFj0+VdsuA8KDxHBDg== - dependencies: - "@babel/helper-function-name" "^7.10.1" - "@babel/types" "^7.10.1" - lodash "^4.17.13" - -"@babel/helper-explode-assignable-expression@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.10.1.tgz#e9d76305ee1162ca467357ae25df94f179af2b7e" - integrity sha512-vcUJ3cDjLjvkKzt6rHrl767FeE7pMEYfPanq5L16GRtrXIoznc0HykNW2aEYkcnP76P0isoqJ34dDMFZwzEpJg== - dependencies: - "@babel/traverse" "^7.10.1" - "@babel/types" "^7.10.1" - -"@babel/helper-function-name@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.10.1.tgz#92bd63829bfc9215aca9d9defa85f56b539454f4" - integrity sha512-fcpumwhs3YyZ/ttd5Rz0xn0TpIwVkN7X0V38B9TWNfVF42KEkhkAAuPCQ3oXmtTRtiPJrmZ0TrfS0GKF0eMaRQ== - dependencies: - "@babel/helper-get-function-arity" "^7.10.1" - "@babel/template" "^7.10.1" - "@babel/types" "^7.10.1" - -"@babel/helper-function-name@^7.10.3": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.10.4.tgz#d2d3b20c59ad8c47112fa7d2a94bc09d5ef82f1a" - integrity sha512-YdaSyz1n8gY44EmN7x44zBn9zQ1Ry2Y+3GTA+3vH6Mizke1Vw0aWDM66FOYEPw8//qKkmqOckrGgTYa+6sceqQ== - dependencies: - "@babel/helper-get-function-arity" "^7.10.4" - "@babel/template" "^7.10.4" - "@babel/types" "^7.10.4" - -"@babel/helper-get-function-arity@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.10.1.tgz#7303390a81ba7cb59613895a192b93850e373f7d" - integrity sha512-F5qdXkYGOQUb0hpRaPoetF9AnsXknKjWMZ+wmsIRsp5ge5sFh4c3h1eH2pRTTuy9KKAA2+TTYomGXAtEL2fQEw== - dependencies: - "@babel/types" "^7.10.1" - -"@babel/helper-get-function-arity@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.10.4.tgz#98c1cbea0e2332f33f9a4661b8ce1505b2c19ba2" - integrity sha512-EkN3YDB+SRDgiIUnNgcmiD361ti+AVbL3f3Henf6dqqUyr5dMsorno0lJWJuLhDhkI5sYEpgj6y9kB8AOU1I2A== - dependencies: - "@babel/types" "^7.10.4" - -"@babel/helper-hoist-variables@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.10.1.tgz#7e77c82e5dcae1ebf123174c385aaadbf787d077" - integrity sha512-vLm5srkU8rI6X3+aQ1rQJyfjvCBLXP8cAGeuw04zeAM2ItKb1e7pmVmLyHb4sDaAYnLL13RHOZPLEtcGZ5xvjg== - dependencies: - "@babel/types" "^7.10.1" - -"@babel/helper-member-expression-to-functions@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.10.1.tgz#432967fd7e12a4afef66c4687d4ca22bc0456f15" - integrity sha512-u7XLXeM2n50gb6PWJ9hoO5oO7JFPaZtrh35t8RqKLT1jFKj9IWeD1zrcrYp1q1qiZTdEarfDWfTIP8nGsu0h5g== - dependencies: - "@babel/types" "^7.10.1" - -"@babel/helper-module-imports@^7.10.1", "@babel/helper-module-imports@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.10.1.tgz#dd331bd45bccc566ce77004e9d05fe17add13876" - integrity sha512-SFxgwYmZ3HZPyZwJRiVNLRHWuW2OgE5k2nrVs6D9Iv4PPnXVffuEHy83Sfx/l4SqF+5kyJXjAyUmrG7tNm+qVg== - dependencies: - "@babel/types" "^7.10.1" - -"@babel/helper-module-transforms@^7.10.1", "@babel/helper-module-transforms@^7.9.0": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.10.1.tgz#24e2f08ee6832c60b157bb0936c86bef7210c622" - integrity sha512-RLHRCAzyJe7Q7sF4oy2cB+kRnU4wDZY/H2xJFGof+M+SJEGhZsb+GFj5j1AD8NiSaVBJ+Pf0/WObiXu/zxWpFg== - dependencies: - "@babel/helper-module-imports" "^7.10.1" - "@babel/helper-replace-supers" "^7.10.1" - "@babel/helper-simple-access" "^7.10.1" - "@babel/helper-split-export-declaration" "^7.10.1" - "@babel/template" "^7.10.1" - "@babel/types" "^7.10.1" - lodash "^4.17.13" - -"@babel/helper-optimise-call-expression@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.10.1.tgz#b4a1f2561870ce1247ceddb02a3860fa96d72543" - integrity sha512-a0DjNS1prnBsoKx83dP2falChcs7p3i8VMzdrSbfLhuQra/2ENC4sbri34dz/rWmDADsmF1q5GbfaXydh0Jbjg== - dependencies: - "@babel/types" "^7.10.1" - -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.1", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.1.tgz#ec5a5cf0eec925b66c60580328b122c01230a127" - integrity sha512-fvoGeXt0bJc7VMWZGCAEBEMo/HAjW2mP8apF5eXK0wSqwLAVHAISCWRoLMBMUs2kqeaG77jltVqu4Hn8Egl3nA== - -"@babel/helper-regex@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-regex/-/helper-regex-7.10.1.tgz#021cf1a7ba99822f993222a001cc3fec83255b96" - integrity sha512-7isHr19RsIJWWLLFn21ubFt223PjQyg1HY7CZEMRr820HttHPpVvrsIN3bUOo44DEfFV4kBXO7Abbn9KTUZV7g== - dependencies: - lodash "^4.17.13" - -"@babel/helper-remap-async-to-generator@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.10.1.tgz#bad6aaa4ff39ce8d4b82ccaae0bfe0f7dbb5f432" - integrity sha512-RfX1P8HqsfgmJ6CwaXGKMAqbYdlleqglvVtht0HGPMSsy2V6MqLlOJVF/0Qyb/m2ZCi2z3q3+s6Pv7R/dQuZ6A== - dependencies: - "@babel/helper-annotate-as-pure" "^7.10.1" - "@babel/helper-wrap-function" "^7.10.1" - "@babel/template" "^7.10.1" - "@babel/traverse" "^7.10.1" - "@babel/types" "^7.10.1" - -"@babel/helper-replace-supers@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.10.1.tgz#ec6859d20c5d8087f6a2dc4e014db7228975f13d" - integrity sha512-SOwJzEfpuQwInzzQJGjGaiG578UYmyi2Xw668klPWV5n07B73S0a9btjLk/52Mlcxa+5AdIYqws1KyXRfMoB7A== - dependencies: - "@babel/helper-member-expression-to-functions" "^7.10.1" - "@babel/helper-optimise-call-expression" "^7.10.1" - "@babel/traverse" "^7.10.1" - "@babel/types" "^7.10.1" - -"@babel/helper-simple-access@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.10.1.tgz#08fb7e22ace9eb8326f7e3920a1c2052f13d851e" - integrity sha512-VSWpWzRzn9VtgMJBIWTZ+GP107kZdQ4YplJlCmIrjoLVSi/0upixezHCDG8kpPVTBJpKfxTH01wDhh+jS2zKbw== - dependencies: - "@babel/template" "^7.10.1" - "@babel/types" "^7.10.1" - -"@babel/helper-split-export-declaration@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.10.1.tgz#c6f4be1cbc15e3a868e4c64a17d5d31d754da35f" - integrity sha512-UQ1LVBPrYdbchNhLwj6fetj46BcFwfS4NllJo/1aJsT+1dLTEnXJL0qHqtY7gPzF8S2fXBJamf1biAXV3X077g== - dependencies: - "@babel/types" "^7.10.1" - -"@babel/helper-validator-identifier@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.1.tgz#5770b0c1a826c4f53f5ede5e153163e0318e94b5" - integrity sha512-5vW/JXLALhczRCWP0PnFDMCJAchlBvM7f4uk/jXritBnIa6E1KmqmtrS3yn1LAnxFBypQ3eneLuXjsnfQsgILw== - -"@babel/helper-validator-identifier@^7.10.3", "@babel/helper-validator-identifier@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz#a78c7a7251e01f616512d31b10adcf52ada5e0d2" - integrity sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw== - -"@babel/helper-wrap-function@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.10.1.tgz#956d1310d6696257a7afd47e4c42dfda5dfcedc9" - integrity sha512-C0MzRGteVDn+H32/ZgbAv5r56f2o1fZSA/rj/TYo8JEJNHg+9BdSmKBUND0shxWRztWhjlT2cvHYuynpPsVJwQ== - dependencies: - "@babel/helper-function-name" "^7.10.1" - "@babel/template" "^7.10.1" - "@babel/traverse" "^7.10.1" - "@babel/types" "^7.10.1" - -"@babel/helpers@^7.10.1", "@babel/helpers@^7.9.0": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.10.1.tgz#a6827b7cb975c9d9cef5fd61d919f60d8844a973" - integrity sha512-muQNHF+IdU6wGgkaJyhhEmI54MOZBKsFfsXFhboz1ybwJ1Kl7IHlbm2a++4jwrmY5UYsgitt5lfqo1wMFcHmyw== - dependencies: - "@babel/template" "^7.10.1" - "@babel/traverse" "^7.10.1" - "@babel/types" "^7.10.1" - -"@babel/highlight@^7.10.1", "@babel/highlight@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.10.1.tgz#841d098ba613ba1a427a2b383d79e35552c38ae0" - integrity sha512-8rMof+gVP8mxYZApLF/JgNDAkdKa+aJt3ZYxF8z6+j/hpeXL7iMsKCPHa2jNMHu/qqBwzQF4OHNoYi8dMA/rYg== - dependencies: - "@babel/helper-validator-identifier" "^7.10.1" - chalk "^2.0.0" - js-tokens "^4.0.0" - -"@babel/highlight@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.10.4.tgz#7d1bdfd65753538fabe6c38596cdb76d9ac60143" - integrity sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA== - dependencies: - "@babel/helper-validator-identifier" "^7.10.4" - chalk "^2.0.0" - js-tokens "^4.0.0" - -"@babel/parser@7.10.3": - version "7.10.3" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.10.3.tgz#7e71d892b0d6e7d04a1af4c3c79d72c1f10f5315" - integrity sha512-oJtNJCMFdIMwXGmx+KxuaD7i3b8uS7TTFYW/FNG2BT8m+fmGHoiPYoH0Pe3gya07WuFmM5FCDIr1x0irkD/hyA== - -"@babel/parser@^7.0.0", "@babel/parser@^7.1.0", "@babel/parser@^7.10.1", "@babel/parser@^7.10.2", "@babel/parser@^7.4.3", "@babel/parser@^7.7.0", "@babel/parser@^7.9.0": - version "7.10.2" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.10.2.tgz#871807f10442b92ff97e4783b9b54f6a0ca812d0" - integrity sha512-PApSXlNMJyB4JiGVhCOlzKIif+TKFTvu0aQAhnTvfP/z3vVSN6ZypH5bfUNwFXXjRQtUEBNFd2PtmCmG2Py3qQ== - -"@babel/parser@^7.10.3", "@babel/parser@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.10.4.tgz#9eedf27e1998d87739fb5028a5120557c06a1a64" - integrity sha512-8jHII4hf+YVDsskTF6WuMB3X4Eh+PsUkC2ljq22so5rHvH+T8BzyL94VOdyFLNR8tBSVXOTbNHOKpR4TfRxVtA== - -"@babel/plugin-proposal-async-generator-functions@^7.10.1", "@babel/plugin-proposal-async-generator-functions@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.10.1.tgz#6911af5ba2e615c4ff3c497fe2f47b35bf6d7e55" - integrity sha512-vzZE12ZTdB336POZjmpblWfNNRpMSua45EYnRigE2XsZxcXcIyly2ixnTJasJE4Zq3U7t2d8rRF7XRUuzHxbOw== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - "@babel/helper-remap-async-to-generator" "^7.10.1" - "@babel/plugin-syntax-async-generators" "^7.8.0" - -"@babel/plugin-proposal-class-properties@7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.8.3.tgz#5e06654af5cd04b608915aada9b2a6788004464e" - integrity sha512-EqFhbo7IosdgPgZggHaNObkmO1kNUe3slaKu54d5OWvy+p9QIKOzK1GAEpAIsZtWVtPXUHSMcT4smvDrCfY4AA== - dependencies: - "@babel/helper-create-class-features-plugin" "^7.8.3" - "@babel/helper-plugin-utils" "^7.8.3" - -"@babel/plugin-proposal-class-properties@^7.0.0", "@babel/plugin-proposal-class-properties@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.10.1.tgz#046bc7f6550bb08d9bd1d4f060f5f5a4f1087e01" - integrity sha512-sqdGWgoXlnOdgMXU+9MbhzwFRgxVLeiGBqTrnuS7LC2IBU31wSsESbTUreT2O418obpfPdGUR2GbEufZF1bpqw== - dependencies: - "@babel/helper-create-class-features-plugin" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-proposal-decorators@7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.8.3.tgz#2156860ab65c5abf068c3f67042184041066543e" - integrity sha512-e3RvdvS4qPJVTe288DlXjwKflpfy1hr0j5dz5WpIYYeP7vQZg2WfAEIp8k5/Lwis/m5REXEteIz6rrcDtXXG7w== - dependencies: - "@babel/helper-create-class-features-plugin" "^7.8.3" - "@babel/helper-plugin-utils" "^7.8.3" - "@babel/plugin-syntax-decorators" "^7.8.3" - -"@babel/plugin-proposal-dynamic-import@^7.10.1", "@babel/plugin-proposal-dynamic-import@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.10.1.tgz#e36979dc1dc3b73f6d6816fc4951da2363488ef0" - integrity sha512-Cpc2yUVHTEGPlmiQzXj026kqwjEQAD9I4ZC16uzdbgWgitg/UHKHLffKNCQZ5+y8jpIZPJcKcwsr2HwPh+w3XA== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - "@babel/plugin-syntax-dynamic-import" "^7.8.0" - -"@babel/plugin-proposal-json-strings@^7.10.1", "@babel/plugin-proposal-json-strings@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.10.1.tgz#b1e691ee24c651b5a5e32213222b2379734aff09" - integrity sha512-m8r5BmV+ZLpWPtMY2mOKN7wre6HIO4gfIiV+eOmsnZABNenrt/kzYBwrh+KOfgumSWpnlGs5F70J8afYMSJMBg== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - "@babel/plugin-syntax-json-strings" "^7.8.0" - -"@babel/plugin-proposal-nullish-coalescing-operator@7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.8.3.tgz#e4572253fdeed65cddeecfdab3f928afeb2fd5d2" - integrity sha512-TS9MlfzXpXKt6YYomudb/KU7nQI6/xnapG6in1uZxoxDghuSMZsPb6D2fyUwNYSAp4l1iR7QtFOjkqcRYcUsfw== - dependencies: - "@babel/helper-plugin-utils" "^7.8.3" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.0" - -"@babel/plugin-proposal-nullish-coalescing-operator@^7.10.1", "@babel/plugin-proposal-nullish-coalescing-operator@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.10.1.tgz#02dca21673842ff2fe763ac253777f235e9bbf78" - integrity sha512-56cI/uHYgL2C8HVuHOuvVowihhX0sxb3nnfVRzUeVHTWmRHTZrKuAh/OBIMggGU/S1g/1D2CRCXqP+3u7vX7iA== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.0" - -"@babel/plugin-proposal-numeric-separator@7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.8.3.tgz#5d6769409699ec9b3b68684cd8116cedff93bad8" - integrity sha512-jWioO1s6R/R+wEHizfaScNsAx+xKgwTLNXSh7tTC4Usj3ItsPEhYkEpU4h+lpnBwq7NBVOJXfO6cRFYcX69JUQ== - dependencies: - "@babel/helper-plugin-utils" "^7.8.3" - "@babel/plugin-syntax-numeric-separator" "^7.8.3" - -"@babel/plugin-proposal-numeric-separator@^7.10.1", "@babel/plugin-proposal-numeric-separator@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.10.1.tgz#a9a38bc34f78bdfd981e791c27c6fdcec478c123" - integrity sha512-jjfym4N9HtCiNfyyLAVD8WqPYeHUrw4ihxuAynWj6zzp2gf9Ey2f7ImhFm6ikB3CLf5Z/zmcJDri6B4+9j9RsA== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - "@babel/plugin-syntax-numeric-separator" "^7.10.1" - -"@babel/plugin-proposal-object-rest-spread@^7.0.0", "@babel/plugin-proposal-object-rest-spread@^7.10.1", "@babel/plugin-proposal-object-rest-spread@^7.9.0": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.10.1.tgz#cba44908ac9f142650b4a65b8aa06bf3478d5fb6" - integrity sha512-Z+Qri55KiQkHh7Fc4BW6o+QBuTagbOp9txE+4U1i79u9oWlf2npkiDx+Rf3iK3lbcHBuNy9UOkwuR5wOMH3LIQ== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - "@babel/plugin-syntax-object-rest-spread" "^7.8.0" - "@babel/plugin-transform-parameters" "^7.10.1" - -"@babel/plugin-proposal-optional-catch-binding@^7.10.1", "@babel/plugin-proposal-optional-catch-binding@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.10.1.tgz#c9f86d99305f9fa531b568ff5ab8c964b8b223d2" - integrity sha512-VqExgeE62YBqI3ogkGoOJp1R6u12DFZjqwJhqtKc2o5m1YTUuUWnos7bZQFBhwkxIFpWYJ7uB75U7VAPPiKETA== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - "@babel/plugin-syntax-optional-catch-binding" "^7.8.0" - -"@babel/plugin-proposal-optional-chaining@7.9.0": - version "7.9.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.9.0.tgz#31db16b154c39d6b8a645292472b98394c292a58" - integrity sha512-NDn5tu3tcv4W30jNhmc2hyD5c56G6cXx4TesJubhxrJeCvuuMpttxr0OnNCqbZGhFjLrg+NIhxxC+BK5F6yS3w== - dependencies: - "@babel/helper-plugin-utils" "^7.8.3" - "@babel/plugin-syntax-optional-chaining" "^7.8.0" - -"@babel/plugin-proposal-optional-chaining@^7.10.1", "@babel/plugin-proposal-optional-chaining@^7.9.0": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.10.1.tgz#15f5d6d22708629451a91be28f8facc55b0e818c" - integrity sha512-dqQj475q8+/avvok72CF3AOSV/SGEcH29zT5hhohqqvvZ2+boQoOr7iGldBG5YXTO2qgCgc2B3WvVLUdbeMlGA== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - "@babel/plugin-syntax-optional-chaining" "^7.8.0" - -"@babel/plugin-proposal-private-methods@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.10.1.tgz#ed85e8058ab0fe309c3f448e5e1b73ca89cdb598" - integrity sha512-RZecFFJjDiQ2z6maFprLgrdnm0OzoC23Mx89xf1CcEsxmHuzuXOdniEuI+S3v7vjQG4F5sa6YtUp+19sZuSxHg== - dependencies: - "@babel/helper-create-class-features-plugin" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-proposal-unicode-property-regex@^7.10.1", "@babel/plugin-proposal-unicode-property-regex@^7.4.4", "@babel/plugin-proposal-unicode-property-regex@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.10.1.tgz#dc04feb25e2dd70c12b05d680190e138fa2c0c6f" - integrity sha512-JjfngYRvwmPwmnbRZyNiPFI8zxCZb8euzbCG/LxyKdeTb59tVciKo9GK9bi6JYKInk1H11Dq9j/zRqIH4KigfQ== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-syntax-async-generators@^7.8.0", "@babel/plugin-syntax-async-generators@^7.8.4": - version "7.8.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d" - integrity sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-bigint@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz#4c9a6f669f5d0cdf1b90a1671e9a146be5300cea" - integrity sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-class-properties@^7.0.0", "@babel/plugin-syntax-class-properties@^7.10.1", "@babel/plugin-syntax-class-properties@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.10.1.tgz#d5bc0645913df5b17ad7eda0fa2308330bde34c5" - integrity sha512-Gf2Yx/iRs1JREDtVZ56OrjjgFHCaldpTnuy9BHla10qyVT3YkIIGEtoDWhyop0ksu1GvNjHIoYRBqm3zoR1jyQ== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-syntax-decorators@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.10.1.tgz#16b869c4beafc9a442565147bda7ce0967bd4f13" - integrity sha512-a9OAbQhKOwSle1Vr0NJu/ISg1sPfdEkfRKWpgPuzhnWWzForou2gIeUIIwjAMHRekhhpJ7eulZlYs0H14Cbi+g== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-syntax-dynamic-import@^7.8.0": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz#62bf98b2da3cd21d626154fc96ee5b3cb68eacb3" - integrity sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-flow@^7.0.0", "@babel/plugin-syntax-flow@^7.10.1", "@babel/plugin-syntax-flow@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.10.1.tgz#cd4bbca62fb402babacb174f64f8734310d742f0" - integrity sha512-b3pWVncLBYoPP60UOTc7NMlbtsHQ6ITim78KQejNHK6WJ2mzV5kCcg4mIWpasAfJEgwVTibwo2e+FU7UEIKQUg== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-syntax-json-strings@^7.8.0", "@babel/plugin-syntax-json-strings@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a" - integrity sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-jsx@^7.0.0", "@babel/plugin-syntax-jsx@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.10.1.tgz#0ae371134a42b91d5418feb3c8c8d43e1565d2da" - integrity sha512-+OxyOArpVFXQeXKLO9o+r2I4dIoVoy6+Uu0vKELrlweDM3QJADZj+Z+5ERansZqIZBcLj42vHnDI8Rz9BnRIuQ== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-syntax-logical-assignment-operators@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.1.tgz#fffee77b4934ce77f3b427649ecdddbec1958550" - integrity sha512-XyHIFa9kdrgJS91CUH+ccPVTnJShr8nLGc5bG2IhGXv5p1Rd+8BleGE5yzIg2Nc1QZAdHDa0Qp4m6066OL96Iw== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-syntax-nullish-coalescing-operator@^7.8.0", "@babel/plugin-syntax-nullish-coalescing-operator@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz#167ed70368886081f74b5c36c65a88c03b66d1a9" - integrity sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-numeric-separator@^7.10.1", "@babel/plugin-syntax-numeric-separator@^7.8.0", "@babel/plugin-syntax-numeric-separator@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.1.tgz#25761ee7410bc8cf97327ba741ee94e4a61b7d99" - integrity sha512-uTd0OsHrpe3tH5gRPTxG8Voh99/WCU78vIm5NMRYPAqC8lR4vajt6KkCAknCHrx24vkPdd/05yfdGSB4EIY2mg== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-syntax-object-rest-spread@^7.0.0", "@babel/plugin-syntax-object-rest-spread@^7.8.0", "@babel/plugin-syntax-object-rest-spread@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871" - integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-optional-catch-binding@^7.8.0", "@babel/plugin-syntax-optional-catch-binding@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz#6111a265bcfb020eb9efd0fdfd7d26402b9ed6c1" - integrity sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-optional-chaining@^7.8.0", "@babel/plugin-syntax-optional-chaining@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz#4f69c2ab95167e0180cd5336613f8c5788f7d48a" - integrity sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-top-level-await@^7.10.1", "@babel/plugin-syntax-top-level-await@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.10.1.tgz#8b8733f8c57397b3eaa47ddba8841586dcaef362" - integrity sha512-hgA5RYkmZm8FTFT3yu2N9Bx7yVVOKYT6yEdXXo6j2JTm0wNxgqaGeQVaSHRjhfnQbX91DtjFB6McRFSlcJH3xQ== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-syntax-typescript@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.10.1.tgz#5e82bc27bb4202b93b949b029e699db536733810" - integrity sha512-X/d8glkrAtra7CaQGMiGs/OGa6XgUzqPcBXCIGFCpCqnfGlT0Wfbzo/B89xHhnInTaItPK8LALblVXcUOEh95Q== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-transform-arrow-functions@^7.0.0", "@babel/plugin-transform-arrow-functions@^7.10.1", "@babel/plugin-transform-arrow-functions@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.10.1.tgz#cb5ee3a36f0863c06ead0b409b4cc43a889b295b" - integrity sha512-6AZHgFJKP3DJX0eCNJj01RpytUa3SOGawIxweHkNX2L6PYikOZmoh5B0d7hIHaIgveMjX990IAa/xK7jRTN8OA== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-transform-async-to-generator@^7.10.1", "@babel/plugin-transform-async-to-generator@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.10.1.tgz#e5153eb1a3e028f79194ed8a7a4bf55f862b2062" - integrity sha512-XCgYjJ8TY2slj6SReBUyamJn3k2JLUIiiR5b6t1mNCMSvv7yx+jJpaewakikp0uWFQSF7ChPPoe3dHmXLpISkg== - dependencies: - "@babel/helper-module-imports" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" - "@babel/helper-remap-async-to-generator" "^7.10.1" - -"@babel/plugin-transform-block-scoped-functions@^7.0.0", "@babel/plugin-transform-block-scoped-functions@^7.10.1", "@babel/plugin-transform-block-scoped-functions@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.10.1.tgz#146856e756d54b20fff14b819456b3e01820b85d" - integrity sha512-B7K15Xp8lv0sOJrdVAoukKlxP9N59HS48V1J3U/JGj+Ad+MHq+am6xJVs85AgXrQn4LV8vaYFOB+pr/yIuzW8Q== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-transform-block-scoping@^7.0.0", "@babel/plugin-transform-block-scoping@^7.10.1", "@babel/plugin-transform-block-scoping@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.10.1.tgz#47092d89ca345811451cd0dc5d91605982705d5e" - integrity sha512-8bpWG6TtF5akdhIm/uWTyjHqENpy13Fx8chg7pFH875aNLwX8JxIxqm08gmAT+Whe6AOmaTeLPe7dpLbXt+xUw== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - lodash "^4.17.13" - -"@babel/plugin-transform-classes@^7.0.0", "@babel/plugin-transform-classes@^7.10.1", "@babel/plugin-transform-classes@^7.9.0": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.10.1.tgz#6e11dd6c4dfae70f540480a4702477ed766d733f" - integrity sha512-P9V0YIh+ln/B3RStPoXpEQ/CoAxQIhRSUn7aXqQ+FZJ2u8+oCtjIXR3+X0vsSD8zv+mb56K7wZW1XiDTDGiDRQ== - dependencies: - "@babel/helper-annotate-as-pure" "^7.10.1" - "@babel/helper-define-map" "^7.10.1" - "@babel/helper-function-name" "^7.10.1" - "@babel/helper-optimise-call-expression" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" - "@babel/helper-replace-supers" "^7.10.1" - "@babel/helper-split-export-declaration" "^7.10.1" - globals "^11.1.0" - -"@babel/plugin-transform-computed-properties@^7.0.0", "@babel/plugin-transform-computed-properties@^7.10.1", "@babel/plugin-transform-computed-properties@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.10.1.tgz#59aa399064429d64dce5cf76ef9b90b7245ebd07" - integrity sha512-mqSrGjp3IefMsXIenBfGcPXxJxweQe2hEIwMQvjtiDQ9b1IBvDUjkAtV/HMXX47/vXf14qDNedXsIiNd1FmkaQ== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-transform-destructuring@^7.0.0", "@babel/plugin-transform-destructuring@^7.10.1", "@babel/plugin-transform-destructuring@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.10.1.tgz#abd58e51337815ca3a22a336b85f62b998e71907" - integrity sha512-V/nUc4yGWG71OhaTH705pU8ZSdM6c1KmmLP8ys59oOYbT7RpMYAR3MsVOt6OHL0WzG7BlTU076va9fjJyYzJMA== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-transform-dotall-regex@^7.10.1", "@babel/plugin-transform-dotall-regex@^7.4.4", "@babel/plugin-transform-dotall-regex@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.10.1.tgz#920b9fec2d78bb57ebb64a644d5c2ba67cc104ee" - integrity sha512-19VIMsD1dp02RvduFUmfzj8uknaO3uiHHF0s3E1OHnVsNj8oge8EQ5RzHRbJjGSetRnkEuBYO7TG1M5kKjGLOA== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-transform-duplicate-keys@^7.10.1", "@babel/plugin-transform-duplicate-keys@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.10.1.tgz#c900a793beb096bc9d4d0a9d0cde19518ffc83b9" - integrity sha512-wIEpkX4QvX8Mo9W6XF3EdGttrIPZWozHfEaDTU0WJD/TDnXMvdDh30mzUl/9qWhnf7naicYartcEfUghTCSNpA== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-transform-exponentiation-operator@^7.10.1", "@babel/plugin-transform-exponentiation-operator@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.10.1.tgz#279c3116756a60dd6e6f5e488ba7957db9c59eb3" - integrity sha512-lr/przdAbpEA2BUzRvjXdEDLrArGRRPwbaF9rvayuHRvdQ7lUTTkZnhZrJ4LE2jvgMRFF4f0YuPQ20vhiPYxtA== - dependencies: - "@babel/helper-builder-binary-assignment-operator-visitor" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-transform-flow-strip-types@7.9.0": - version "7.9.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.9.0.tgz#8a3538aa40434e000b8f44a3c5c9ac7229bd2392" - integrity sha512-7Qfg0lKQhEHs93FChxVLAvhBshOPQDtJUTVHr/ZwQNRccCm4O9D79r9tVSoV8iNwjP1YgfD+e/fgHcPkN1qEQg== - dependencies: - "@babel/helper-plugin-utils" "^7.8.3" - "@babel/plugin-syntax-flow" "^7.8.3" - -"@babel/plugin-transform-flow-strip-types@^7.0.0": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.10.1.tgz#59eafbff9ae85ec8932d4c16c068654be814ec5e" - integrity sha512-i4o0YwiJBIsIx7/liVCZ3Q2WkWr1/Yu39PksBOnh/khW2SwIFsGa5Ze+MSon5KbDfrEHP9NeyefAgvUSXzaEkw== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - "@babel/plugin-syntax-flow" "^7.10.1" - -"@babel/plugin-transform-for-of@^7.0.0", "@babel/plugin-transform-for-of@^7.10.1", "@babel/plugin-transform-for-of@^7.9.0": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.10.1.tgz#ff01119784eb0ee32258e8646157ba2501fcfda5" - integrity sha512-US8KCuxfQcn0LwSCMWMma8M2R5mAjJGsmoCBVwlMygvmDUMkTCykc84IqN1M7t+agSfOmLYTInLCHJM+RUoz+w== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-transform-function-name@^7.0.0", "@babel/plugin-transform-function-name@^7.10.1", "@babel/plugin-transform-function-name@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.10.1.tgz#4ed46fd6e1d8fde2a2ec7b03c66d853d2c92427d" - integrity sha512-//bsKsKFBJfGd65qSNNh1exBy5Y9gD9ZN+DvrJ8f7HXr4avE5POW6zB7Rj6VnqHV33+0vXWUwJT0wSHubiAQkw== - dependencies: - "@babel/helper-function-name" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-transform-literals@^7.0.0", "@babel/plugin-transform-literals@^7.10.1", "@babel/plugin-transform-literals@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.10.1.tgz#5794f8da82846b22e4e6631ea1658bce708eb46a" - integrity sha512-qi0+5qgevz1NHLZroObRm5A+8JJtibb7vdcPQF1KQE12+Y/xxl8coJ+TpPW9iRq+Mhw/NKLjm+5SHtAHCC7lAw== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-transform-member-expression-literals@^7.0.0", "@babel/plugin-transform-member-expression-literals@^7.10.1", "@babel/plugin-transform-member-expression-literals@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.10.1.tgz#90347cba31bca6f394b3f7bd95d2bbfd9fce2f39" - integrity sha512-UmaWhDokOFT2GcgU6MkHC11i0NQcL63iqeufXWfRy6pUOGYeCGEKhvfFO6Vz70UfYJYHwveg62GS83Rvpxn+NA== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-transform-modules-amd@^7.10.1", "@babel/plugin-transform-modules-amd@^7.9.0": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.10.1.tgz#65950e8e05797ebd2fe532b96e19fc5482a1d52a" - integrity sha512-31+hnWSFRI4/ACFr1qkboBbrTxoBIzj7qA69qlq8HY8p7+YCzkCT6/TvQ1a4B0z27VeWtAeJd6pr5G04dc1iHw== - dependencies: - "@babel/helper-module-transforms" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" - babel-plugin-dynamic-import-node "^2.3.3" - -"@babel/plugin-transform-modules-commonjs@^7.0.0", "@babel/plugin-transform-modules-commonjs@^7.10.1", "@babel/plugin-transform-modules-commonjs@^7.9.0": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.10.1.tgz#d5ff4b4413ed97ffded99961056e1fb980fb9301" - integrity sha512-AQG4fc3KOah0vdITwt7Gi6hD9BtQP/8bhem7OjbaMoRNCH5Djx42O2vYMfau7QnAzQCa+RJnhJBmFFMGpQEzrg== - dependencies: - "@babel/helper-module-transforms" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" - "@babel/helper-simple-access" "^7.10.1" - babel-plugin-dynamic-import-node "^2.3.3" - -"@babel/plugin-transform-modules-systemjs@^7.10.1", "@babel/plugin-transform-modules-systemjs@^7.9.0": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.10.1.tgz#9962e4b0ac6aaf2e20431ada3d8ec72082cbffb6" - integrity sha512-ewNKcj1TQZDL3YnO85qh9zo1YF1CHgmSTlRQgHqe63oTrMI85cthKtZjAiZSsSNjPQ5NCaYo5QkbYqEw1ZBgZA== - dependencies: - "@babel/helper-hoist-variables" "^7.10.1" - "@babel/helper-module-transforms" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" - babel-plugin-dynamic-import-node "^2.3.3" - -"@babel/plugin-transform-modules-umd@^7.10.1", "@babel/plugin-transform-modules-umd@^7.9.0": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.10.1.tgz#ea080911ffc6eb21840a5197a39ede4ee67b1595" - integrity sha512-EIuiRNMd6GB6ulcYlETnYYfgv4AxqrswghmBRQbWLHZxN4s7mupxzglnHqk9ZiUpDI4eRWewedJJNj67PWOXKA== - dependencies: - "@babel/helper-module-transforms" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-transform-named-capturing-groups-regex@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.8.3.tgz#a2a72bffa202ac0e2d0506afd0939c5ecbc48c6c" - integrity sha512-f+tF/8UVPU86TrCb06JoPWIdDpTNSGGcAtaD9mLP0aYGA0OS0j7j7DHJR0GTFrUZPUU6loZhbsVZgTh0N+Qdnw== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.8.3" - -"@babel/plugin-transform-new-target@^7.10.1", "@babel/plugin-transform-new-target@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.10.1.tgz#6ee41a5e648da7632e22b6fb54012e87f612f324" - integrity sha512-MBlzPc1nJvbmO9rPr1fQwXOM2iGut+JC92ku6PbiJMMK7SnQc1rytgpopveE3Evn47gzvGYeCdgfCDbZo0ecUw== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-transform-object-super@^7.0.0", "@babel/plugin-transform-object-super@^7.10.1", "@babel/plugin-transform-object-super@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.10.1.tgz#2e3016b0adbf262983bf0d5121d676a5ed9c4fde" - integrity sha512-WnnStUDN5GL+wGQrJylrnnVlFhFmeArINIR9gjhSeYyvroGhBrSAXYg/RHsnfzmsa+onJrTJrEClPzgNmmQ4Gw== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - "@babel/helper-replace-supers" "^7.10.1" - -"@babel/plugin-transform-parameters@^7.0.0", "@babel/plugin-transform-parameters@^7.10.1", "@babel/plugin-transform-parameters@^7.8.7": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.10.1.tgz#b25938a3c5fae0354144a720b07b32766f683ddd" - integrity sha512-tJ1T0n6g4dXMsL45YsSzzSDZCxiHXAQp/qHrucOq5gEHncTA3xDxnd5+sZcoQp+N1ZbieAaB8r/VUCG0gqseOg== - dependencies: - "@babel/helper-get-function-arity" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-transform-property-literals@^7.0.0", "@babel/plugin-transform-property-literals@^7.10.1", "@babel/plugin-transform-property-literals@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.10.1.tgz#cffc7315219230ed81dc53e4625bf86815b6050d" - integrity sha512-Kr6+mgag8auNrgEpbfIWzdXYOvqDHZOF0+Bx2xh4H2EDNwcbRb9lY6nkZg8oSjsX+DH9Ebxm9hOqtKW+gRDeNA== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-transform-react-constant-elements@^7.0.0": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.10.1.tgz#c7f117a54657cba3f9d32012e050fc89982df9e1" - integrity sha512-V4os6bkWt/jbrzfyVcZn2ZpuHZkvj3vyBU0U/dtS8SZuMS7Rfx5oknTrtfyXJ2/QZk8gX7Yls5Z921ItNpE30Q== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-transform-react-display-name@7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.8.3.tgz#70ded987c91609f78353dd76d2fb2a0bb991e8e5" - integrity sha512-3Jy/PCw8Fe6uBKtEgz3M82ljt+lTg+xJaM4og+eyu83qLT87ZUSckn0wy7r31jflURWLO83TW6Ylf7lyXj3m5A== - dependencies: - "@babel/helper-plugin-utils" "^7.8.3" - -"@babel/plugin-transform-react-display-name@^7.0.0", "@babel/plugin-transform-react-display-name@^7.10.1", "@babel/plugin-transform-react-display-name@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.10.1.tgz#e6a33f6d48dfb213dda5e007d0c7ff82b6a3d8ef" - integrity sha512-rBjKcVwjk26H3VX8pavMxGf33LNlbocMHdSeldIEswtQ/hrjyTG8fKKILW1cSkODyRovckN/uZlGb2+sAV9JUQ== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-transform-react-jsx-development@^7.10.1", "@babel/plugin-transform-react-jsx-development@^7.9.0": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.10.1.tgz#1ac6300d8b28ef381ee48e6fec430cc38047b7f3" - integrity sha512-XwDy/FFoCfw9wGFtdn5Z+dHh6HXKHkC6DwKNWpN74VWinUagZfDcEJc3Y8Dn5B3WMVnAllX8Kviaw7MtC5Epwg== - dependencies: - "@babel/helper-builder-react-jsx-experimental" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" - "@babel/plugin-syntax-jsx" "^7.10.1" - -"@babel/plugin-transform-react-jsx-self@^7.10.1", "@babel/plugin-transform-react-jsx-self@^7.9.0": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.10.1.tgz#22143e14388d72eb88649606bb9e46f421bc3821" - integrity sha512-4p+RBw9d1qV4S749J42ZooeQaBomFPrSxa9JONLHJ1TxCBo3TzJ79vtmG2S2erUT8PDDrPdw4ZbXGr2/1+dILA== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - "@babel/plugin-syntax-jsx" "^7.10.1" - -"@babel/plugin-transform-react-jsx-source@^7.10.1", "@babel/plugin-transform-react-jsx-source@^7.9.0": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.10.1.tgz#30db3d4ee3cdebbb26a82a9703673714777a4273" - integrity sha512-neAbaKkoiL+LXYbGDvh6PjPG+YeA67OsZlE78u50xbWh2L1/C81uHiNP5d1fw+uqUIoiNdCC8ZB+G4Zh3hShJA== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - "@babel/plugin-syntax-jsx" "^7.10.1" - -"@babel/plugin-transform-react-jsx@^7.0.0", "@babel/plugin-transform-react-jsx@^7.10.1", "@babel/plugin-transform-react-jsx@^7.9.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.10.1.tgz#91f544248ba131486decb5d9806da6a6e19a2896" - integrity sha512-MBVworWiSRBap3Vs39eHt+6pJuLUAaK4oxGc8g+wY+vuSJvLiEQjW1LSTqKb8OUPtDvHCkdPhk7d6sjC19xyFw== - dependencies: - "@babel/helper-builder-react-jsx" "^7.10.1" - "@babel/helper-builder-react-jsx-experimental" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" - "@babel/plugin-syntax-jsx" "^7.10.1" - -"@babel/plugin-transform-react-pure-annotations@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.10.1.tgz#f5e7c755d3e7614d4c926e144f501648a5277b70" - integrity sha512-mfhoiai083AkeewsBHUpaS/FM1dmUENHBMpS/tugSJ7VXqXO5dCN1Gkint2YvM1Cdv1uhmAKt1ZOuAjceKmlLA== - dependencies: - "@babel/helper-annotate-as-pure" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-transform-regenerator@^7.10.1", "@babel/plugin-transform-regenerator@^7.8.7": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.10.1.tgz#10e175cbe7bdb63cc9b39f9b3f823c5c7c5c5490" - integrity sha512-B3+Y2prScgJ2Bh/2l9LJxKbb8C8kRfsG4AdPT+n7ixBHIxJaIG8bi8tgjxUMege1+WqSJ+7gu1YeoMVO3gPWzw== - dependencies: - regenerator-transform "^0.14.2" - -"@babel/plugin-transform-reserved-words@^7.10.1", "@babel/plugin-transform-reserved-words@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.10.1.tgz#0fc1027312b4d1c3276a57890c8ae3bcc0b64a86" - integrity sha512-qN1OMoE2nuqSPmpTqEM7OvJ1FkMEV+BjVeZZm9V9mq/x1JLKQ4pcv8riZJMNN3u2AUGl0ouOMjRr2siecvHqUQ== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-transform-runtime@7.9.0": - version "7.9.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.9.0.tgz#45468c0ae74cc13204e1d3b1f4ce6ee83258af0b" - integrity sha512-pUu9VSf3kI1OqbWINQ7MaugnitRss1z533436waNXp+0N3ur3zfut37sXiQMxkuCF4VUjwZucen/quskCh7NHw== - dependencies: - "@babel/helper-module-imports" "^7.8.3" - "@babel/helper-plugin-utils" "^7.8.3" - resolve "^1.8.1" - semver "^5.5.1" - -"@babel/plugin-transform-shorthand-properties@^7.0.0", "@babel/plugin-transform-shorthand-properties@^7.10.1", "@babel/plugin-transform-shorthand-properties@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.10.1.tgz#e8b54f238a1ccbae482c4dce946180ae7b3143f3" - integrity sha512-AR0E/lZMfLstScFwztApGeyTHJ5u3JUKMjneqRItWeEqDdHWZwAOKycvQNCasCK/3r5YXsuNG25funcJDu7Y2g== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-transform-spread@^7.0.0", "@babel/plugin-transform-spread@^7.10.1", "@babel/plugin-transform-spread@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.10.1.tgz#0c6d618a0c4461a274418460a28c9ccf5239a7c8" - integrity sha512-8wTPym6edIrClW8FI2IoaePB91ETOtg36dOkj3bYcNe7aDMN2FXEoUa+WrmPc4xa1u2PQK46fUX2aCb+zo9rfw== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-transform-sticky-regex@^7.10.1", "@babel/plugin-transform-sticky-regex@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.10.1.tgz#90fc89b7526228bed9842cff3588270a7a393b00" - integrity sha512-j17ojftKjrL7ufX8ajKvwRilwqTok4q+BjkknmQw9VNHnItTyMP5anPFzxFJdCQs7clLcWpCV3ma+6qZWLnGMA== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - "@babel/helper-regex" "^7.10.1" - -"@babel/plugin-transform-template-literals@^7.0.0", "@babel/plugin-transform-template-literals@^7.10.1", "@babel/plugin-transform-template-literals@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.10.1.tgz#914c7b7f4752c570ea00553b4284dad8070e8628" - integrity sha512-t7B/3MQf5M1T9hPCRG28DNGZUuxAuDqLYS03rJrIk2prj/UV7Z6FOneijhQhnv/Xa039vidXeVbvjK2SK5f7Gg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-transform-typeof-symbol@^7.10.1", "@babel/plugin-transform-typeof-symbol@^7.8.4": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.10.1.tgz#60c0239b69965d166b80a84de7315c1bc7e0bb0e" - integrity sha512-qX8KZcmbvA23zDi+lk9s6hC1FM7jgLHYIjuLgULgc8QtYnmB3tAVIYkNoKRQ75qWBeyzcoMoK8ZQmogGtC/w0g== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-transform-typescript@^7.9.0": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.10.1.tgz#2c54daea231f602468686d9faa76f182a94507a6" - integrity sha512-v+QWKlmCnsaimLeqq9vyCsVRMViZG1k2SZTlcZvB+TqyH570Zsij8nvVUZzOASCRiQFUxkLrn9Wg/kH0zgy5OQ== - dependencies: - "@babel/helper-create-class-features-plugin" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" - "@babel/plugin-syntax-typescript" "^7.10.1" - -"@babel/plugin-transform-unicode-escapes@^7.10.1": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.10.1.tgz#add0f8483dab60570d9e03cecef6c023aa8c9940" - integrity sha512-zZ0Poh/yy1d4jeDWpx/mNwbKJVwUYJX73q+gyh4bwtG0/iUlzdEu0sLMda8yuDFS6LBQlT/ST1SJAR6zYwXWgw== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/plugin-transform-unicode-regex@^7.10.1", "@babel/plugin-transform-unicode-regex@^7.8.3": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.10.1.tgz#6b58f2aea7b68df37ac5025d9c88752443a6b43f" - integrity sha512-Y/2a2W299k0VIUdbqYm9X2qS6fE0CUBhhiPpimK6byy7OJ/kORLlIX+J6UrjgNu5awvs62k+6RSslxhcvVw2Tw== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" - -"@babel/preset-env@7.9.0": - version "7.9.0" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.9.0.tgz#a5fc42480e950ae8f5d9f8f2bbc03f52722df3a8" - integrity sha512-712DeRXT6dyKAM/FMbQTV/FvRCms2hPCx+3weRjZ8iQVQWZejWWk1wwG6ViWMyqb/ouBbGOl5b6aCk0+j1NmsQ== - dependencies: - "@babel/compat-data" "^7.9.0" - "@babel/helper-compilation-targets" "^7.8.7" - "@babel/helper-module-imports" "^7.8.3" - "@babel/helper-plugin-utils" "^7.8.3" - "@babel/plugin-proposal-async-generator-functions" "^7.8.3" - "@babel/plugin-proposal-dynamic-import" "^7.8.3" - "@babel/plugin-proposal-json-strings" "^7.8.3" - "@babel/plugin-proposal-nullish-coalescing-operator" "^7.8.3" - "@babel/plugin-proposal-numeric-separator" "^7.8.3" - "@babel/plugin-proposal-object-rest-spread" "^7.9.0" - "@babel/plugin-proposal-optional-catch-binding" "^7.8.3" - "@babel/plugin-proposal-optional-chaining" "^7.9.0" - "@babel/plugin-proposal-unicode-property-regex" "^7.8.3" - "@babel/plugin-syntax-async-generators" "^7.8.0" - "@babel/plugin-syntax-dynamic-import" "^7.8.0" - "@babel/plugin-syntax-json-strings" "^7.8.0" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.0" - "@babel/plugin-syntax-numeric-separator" "^7.8.0" - "@babel/plugin-syntax-object-rest-spread" "^7.8.0" - "@babel/plugin-syntax-optional-catch-binding" "^7.8.0" - "@babel/plugin-syntax-optional-chaining" "^7.8.0" - "@babel/plugin-syntax-top-level-await" "^7.8.3" - "@babel/plugin-transform-arrow-functions" "^7.8.3" - "@babel/plugin-transform-async-to-generator" "^7.8.3" - "@babel/plugin-transform-block-scoped-functions" "^7.8.3" - "@babel/plugin-transform-block-scoping" "^7.8.3" - "@babel/plugin-transform-classes" "^7.9.0" - "@babel/plugin-transform-computed-properties" "^7.8.3" - "@babel/plugin-transform-destructuring" "^7.8.3" - "@babel/plugin-transform-dotall-regex" "^7.8.3" - "@babel/plugin-transform-duplicate-keys" "^7.8.3" - "@babel/plugin-transform-exponentiation-operator" "^7.8.3" - "@babel/plugin-transform-for-of" "^7.9.0" - "@babel/plugin-transform-function-name" "^7.8.3" - "@babel/plugin-transform-literals" "^7.8.3" - "@babel/plugin-transform-member-expression-literals" "^7.8.3" - "@babel/plugin-transform-modules-amd" "^7.9.0" - "@babel/plugin-transform-modules-commonjs" "^7.9.0" - "@babel/plugin-transform-modules-systemjs" "^7.9.0" - "@babel/plugin-transform-modules-umd" "^7.9.0" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.8.3" - "@babel/plugin-transform-new-target" "^7.8.3" - "@babel/plugin-transform-object-super" "^7.8.3" - "@babel/plugin-transform-parameters" "^7.8.7" - "@babel/plugin-transform-property-literals" "^7.8.3" - "@babel/plugin-transform-regenerator" "^7.8.7" - "@babel/plugin-transform-reserved-words" "^7.8.3" - "@babel/plugin-transform-shorthand-properties" "^7.8.3" - "@babel/plugin-transform-spread" "^7.8.3" - "@babel/plugin-transform-sticky-regex" "^7.8.3" - "@babel/plugin-transform-template-literals" "^7.8.3" - "@babel/plugin-transform-typeof-symbol" "^7.8.4" - "@babel/plugin-transform-unicode-regex" "^7.8.3" - "@babel/preset-modules" "^0.1.3" - "@babel/types" "^7.9.0" - browserslist "^4.9.1" - core-js-compat "^3.6.2" - invariant "^2.2.2" - levenary "^1.1.1" - semver "^5.5.0" - -"@babel/preset-env@^7.4.5": - version "7.10.2" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.10.2.tgz#715930f2cf8573b0928005ee562bed52fb65fdfb" - integrity sha512-MjqhX0RZaEgK/KueRzh+3yPSk30oqDKJ5HP5tqTSB1e2gzGS3PLy7K0BIpnp78+0anFuSwOeuCf1zZO7RzRvEA== - dependencies: - "@babel/compat-data" "^7.10.1" - "@babel/helper-compilation-targets" "^7.10.2" - "@babel/helper-module-imports" "^7.10.1" - "@babel/helper-plugin-utils" "^7.10.1" - "@babel/plugin-proposal-async-generator-functions" "^7.10.1" - "@babel/plugin-proposal-class-properties" "^7.10.1" - "@babel/plugin-proposal-dynamic-import" "^7.10.1" - "@babel/plugin-proposal-json-strings" "^7.10.1" - "@babel/plugin-proposal-nullish-coalescing-operator" "^7.10.1" - "@babel/plugin-proposal-numeric-separator" "^7.10.1" - "@babel/plugin-proposal-object-rest-spread" "^7.10.1" - "@babel/plugin-proposal-optional-catch-binding" "^7.10.1" - "@babel/plugin-proposal-optional-chaining" "^7.10.1" - "@babel/plugin-proposal-private-methods" "^7.10.1" - "@babel/plugin-proposal-unicode-property-regex" "^7.10.1" - "@babel/plugin-syntax-async-generators" "^7.8.0" - "@babel/plugin-syntax-class-properties" "^7.10.1" - "@babel/plugin-syntax-dynamic-import" "^7.8.0" - "@babel/plugin-syntax-json-strings" "^7.8.0" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.0" - "@babel/plugin-syntax-numeric-separator" "^7.10.1" - "@babel/plugin-syntax-object-rest-spread" "^7.8.0" - "@babel/plugin-syntax-optional-catch-binding" "^7.8.0" - "@babel/plugin-syntax-optional-chaining" "^7.8.0" - "@babel/plugin-syntax-top-level-await" "^7.10.1" - "@babel/plugin-transform-arrow-functions" "^7.10.1" - "@babel/plugin-transform-async-to-generator" "^7.10.1" - "@babel/plugin-transform-block-scoped-functions" "^7.10.1" - "@babel/plugin-transform-block-scoping" "^7.10.1" - "@babel/plugin-transform-classes" "^7.10.1" - "@babel/plugin-transform-computed-properties" "^7.10.1" - "@babel/plugin-transform-destructuring" "^7.10.1" - "@babel/plugin-transform-dotall-regex" "^7.10.1" - "@babel/plugin-transform-duplicate-keys" "^7.10.1" - "@babel/plugin-transform-exponentiation-operator" "^7.10.1" - "@babel/plugin-transform-for-of" "^7.10.1" - "@babel/plugin-transform-function-name" "^7.10.1" - "@babel/plugin-transform-literals" "^7.10.1" - "@babel/plugin-transform-member-expression-literals" "^7.10.1" - "@babel/plugin-transform-modules-amd" "^7.10.1" - "@babel/plugin-transform-modules-commonjs" "^7.10.1" - "@babel/plugin-transform-modules-systemjs" "^7.10.1" - "@babel/plugin-transform-modules-umd" "^7.10.1" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.8.3" - "@babel/plugin-transform-new-target" "^7.10.1" - "@babel/plugin-transform-object-super" "^7.10.1" - "@babel/plugin-transform-parameters" "^7.10.1" - "@babel/plugin-transform-property-literals" "^7.10.1" - "@babel/plugin-transform-regenerator" "^7.10.1" - "@babel/plugin-transform-reserved-words" "^7.10.1" - "@babel/plugin-transform-shorthand-properties" "^7.10.1" - "@babel/plugin-transform-spread" "^7.10.1" - "@babel/plugin-transform-sticky-regex" "^7.10.1" - "@babel/plugin-transform-template-literals" "^7.10.1" - "@babel/plugin-transform-typeof-symbol" "^7.10.1" - "@babel/plugin-transform-unicode-escapes" "^7.10.1" - "@babel/plugin-transform-unicode-regex" "^7.10.1" - "@babel/preset-modules" "^0.1.3" - "@babel/types" "^7.10.2" - browserslist "^4.12.0" - core-js-compat "^3.6.2" - invariant "^2.2.2" - levenary "^1.1.1" - semver "^5.5.0" - -"@babel/preset-modules@^0.1.3": - version "0.1.3" - resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.3.tgz#13242b53b5ef8c883c3cf7dddd55b36ce80fbc72" - integrity sha512-Ra3JXOHBq2xd56xSF7lMKXdjBn3T772Y1Wet3yWnkDly9zHvJki029tAFzvAAK5cf4YV3yoxuP61crYRol6SVg== - 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" - -"@babel/preset-react@7.9.1": - version "7.9.1" - resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.9.1.tgz#b346403c36d58c3bb544148272a0cefd9c28677a" - integrity sha512-aJBYF23MPj0RNdp/4bHnAP0NVqqZRr9kl0NAOP4nJCex6OYVio59+dnQzsAWFuogdLyeaKA1hmfUIVZkY5J+TQ== - dependencies: - "@babel/helper-plugin-utils" "^7.8.3" - "@babel/plugin-transform-react-display-name" "^7.8.3" - "@babel/plugin-transform-react-jsx" "^7.9.1" - "@babel/plugin-transform-react-jsx-development" "^7.9.0" - "@babel/plugin-transform-react-jsx-self" "^7.9.0" - "@babel/plugin-transform-react-jsx-source" "^7.9.0" - -"@babel/preset-react@^7.0.0": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.10.1.tgz#e2ab8ae9a363ec307b936589f07ed753192de041" - integrity sha512-Rw0SxQ7VKhObmFjD/cUcKhPTtzpeviEFX1E6PgP+cYOhQ98icNqtINNFANlsdbQHrmeWnqdxA4Tmnl1jy5tp3Q== - dependencies: - "@babel/helper-plugin-utils" "^7.10.1" - "@babel/plugin-transform-react-display-name" "^7.10.1" - "@babel/plugin-transform-react-jsx" "^7.10.1" - "@babel/plugin-transform-react-jsx-development" "^7.10.1" - "@babel/plugin-transform-react-jsx-self" "^7.10.1" - "@babel/plugin-transform-react-jsx-source" "^7.10.1" - "@babel/plugin-transform-react-pure-annotations" "^7.10.1" - -"@babel/preset-typescript@7.9.0": - version "7.9.0" - resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.9.0.tgz#87705a72b1f0d59df21c179f7c3d2ef4b16ce192" - integrity sha512-S4cueFnGrIbvYJgwsVFKdvOmpiL0XGw9MFW9D0vgRys5g36PBhZRL8NX8Gr2akz8XRtzq6HuDXPD/1nniagNUg== - dependencies: - "@babel/helper-plugin-utils" "^7.8.3" - "@babel/plugin-transform-typescript" "^7.9.0" - -"@babel/runtime-corejs3@^7.8.3": - version "7.10.2" - resolved "https://registry.yarnpkg.com/@babel/runtime-corejs3/-/runtime-corejs3-7.10.2.tgz#3511797ddf9a3d6f3ce46b99cc835184817eaa4e" - integrity sha512-+a2M/u7r15o3dV1NEizr9bRi+KUVnrs/qYxF0Z06DAPx/4VCWaz1WA7EcbE+uqGgt39lp5akWGmHsTseIkHkHg== - dependencies: - core-js-pure "^3.0.0" - regenerator-runtime "^0.13.4" - -"@babel/runtime@7.9.0": - version "7.9.0" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.9.0.tgz#337eda67401f5b066a6f205a3113d4ac18ba495b" - integrity sha512-cTIudHnzuWLS56ik4DnRnqqNf8MkdUzV4iFFI1h7Jo9xvrpQROYaAnaSd2mHLQAzzZAPfATynX5ord6YlNYNMA== - dependencies: - regenerator-runtime "^0.13.4" - -"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.3.1", "@babel/runtime@^7.3.4", "@babel/runtime@^7.4.0", "@babel/runtime@^7.4.4", "@babel/runtime@^7.4.5", "@babel/runtime@^7.5.5", "@babel/runtime@^7.7.2", "@babel/runtime@^7.8.3", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7", "@babel/runtime@^7.9.2": - version "7.10.2" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.10.2.tgz#d103f21f2602497d38348a32e008637d506db839" - integrity sha512-6sF3uQw2ivImfVIl62RZ7MXhO2tap69WeWK57vAaimT6AZbE4FbqjdEJIN1UqoD6wI6B+1n9UiagafH1sxjOtg== - dependencies: - regenerator-runtime "^0.13.4" - -"@babel/template@^7.10.1", "@babel/template@^7.3.3", "@babel/template@^7.4.0", "@babel/template@^7.8.6": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.10.1.tgz#e167154a94cb5f14b28dc58f5356d2162f539811" - integrity sha512-OQDg6SqvFSsc9A0ej6SKINWrpJiNonRIniYondK2ViKhB06i3c0s+76XUft71iqBEe9S1OKsHwPAjfHnuvnCig== - dependencies: - "@babel/code-frame" "^7.10.1" - "@babel/parser" "^7.10.1" - "@babel/types" "^7.10.1" - -"@babel/template@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.10.4.tgz#3251996c4200ebc71d1a8fc405fba940f36ba278" - integrity sha512-ZCjD27cGJFUB6nmCB1Enki3r+L5kJveX9pq1SvAUKoICy6CZ9yD8xO086YXdYhvNjBdnekm4ZnaP5yC8Cs/1tA== - dependencies: - "@babel/code-frame" "^7.10.4" - "@babel/parser" "^7.10.4" - "@babel/types" "^7.10.4" - -"@babel/traverse@7.10.3": - version "7.10.3" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.10.3.tgz#0b01731794aa7b77b214bcd96661f18281155d7e" - integrity sha512-qO6623eBFhuPm0TmmrUFMT1FulCmsSeJuVGhiLodk2raUDFhhTECLd9E9jC4LBIWziqt4wgF6KuXE4d+Jz9yug== - dependencies: - "@babel/code-frame" "^7.10.3" - "@babel/generator" "^7.10.3" - "@babel/helper-function-name" "^7.10.3" - "@babel/helper-split-export-declaration" "^7.10.1" - "@babel/parser" "^7.10.3" - "@babel/types" "^7.10.3" - debug "^4.1.0" - globals "^11.1.0" - lodash "^4.17.13" - -"@babel/traverse@^7.0.0", "@babel/traverse@^7.1.0", "@babel/traverse@^7.10.1", "@babel/traverse@^7.4.3", "@babel/traverse@^7.7.0", "@babel/traverse@^7.9.0": - version "7.10.1" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.10.1.tgz#bbcef3031e4152a6c0b50147f4958df54ca0dd27" - integrity sha512-C/cTuXeKt85K+p08jN6vMDz8vSV0vZcI0wmQ36o6mjbuo++kPMdpOYw23W2XH04dbRt9/nMEfA4W3eR21CD+TQ== - dependencies: - "@babel/code-frame" "^7.10.1" - "@babel/generator" "^7.10.1" - "@babel/helper-function-name" "^7.10.1" - "@babel/helper-split-export-declaration" "^7.10.1" - "@babel/parser" "^7.10.1" - "@babel/types" "^7.10.1" - debug "^4.1.0" - globals "^11.1.0" - lodash "^4.17.13" - -"@babel/types@7.10.3": - version "7.10.3" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.10.3.tgz#6535e3b79fea86a6b09e012ea8528f935099de8e" - integrity sha512-nZxaJhBXBQ8HVoIcGsf9qWep3Oh3jCENK54V4mRF7qaJabVsAYdbTtmSD8WmAp1R6ytPiu5apMwSXyxB1WlaBA== - dependencies: - "@babel/helper-validator-identifier" "^7.10.3" - lodash "^4.17.13" - to-fast-properties "^2.0.0" - -"@babel/types@^7.0.0", "@babel/types@^7.10.1", "@babel/types@^7.10.2", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.0", "@babel/types@^7.4.4", "@babel/types@^7.7.0", "@babel/types@^7.9.0": - version "7.10.2" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.10.2.tgz#30283be31cad0dbf6fb00bd40641ca0ea675172d" - integrity sha512-AD3AwWBSz0AWF0AkCN9VPiWrvldXq+/e3cHa4J89vo4ymjz1XwrBFFVZmkJTsQIPNk+ZVomPSXUJqq8yyjZsng== - dependencies: - "@babel/helper-validator-identifier" "^7.10.1" - lodash "^4.17.13" - to-fast-properties "^2.0.0" - -"@babel/types@^7.10.3", "@babel/types@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.10.4.tgz#369517188352e18219981efd156bfdb199fff1ee" - integrity sha512-UTCFOxC3FsFHb7lkRMVvgLzaRVamXuAs2Tz4wajva4WxtVY82eZeaUBtC2Zt95FU9TiznuC0Zk35tsim8jeVpg== - dependencies: - "@babel/helper-validator-identifier" "^7.10.4" - lodash "^4.17.13" - to-fast-properties "^2.0.0" - -"@bcoe/v8-coverage@^0.2.3": - version "0.2.3" - resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" - integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== - -"@cnakazawa/watch@^1.0.3": - version "1.0.4" - resolved "https://registry.yarnpkg.com/@cnakazawa/watch/-/watch-1.0.4.tgz#f864ae85004d0fcab6f50be9141c4da368d1656a" - integrity sha512-v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ== - dependencies: - exec-sh "^0.3.2" - minimist "^1.2.0" - -"@csstools/convert-colors@^1.4.0": - version "1.4.0" - resolved "https://registry.yarnpkg.com/@csstools/convert-colors/-/convert-colors-1.4.0.tgz#ad495dc41b12e75d588c6db8b9834f08fa131eb7" - integrity sha512-5a6wqoJV/xEdbRNKVo6I4hO3VjyDq//8q2f9I6PBAvMesJHFauXDorcNCsr9RzvsZnaWi5NYCcfyqP1QeFHFbw== - -"@csstools/normalize.css@^10.1.0": - version "10.1.0" - resolved "https://registry.yarnpkg.com/@csstools/normalize.css/-/normalize.css-10.1.0.tgz#f0950bba18819512d42f7197e56c518aa491cf18" - integrity sha512-ij4wRiunFfaJxjB0BdrYHIH8FxBJpOwNPhhAcunlmPdXudL1WQV1qoP9un6JsEBAgQH+7UXyyjh0g7jTxXK6tg== - -"@emotion/hash@^0.8.0": - version "0.8.0" - resolved "https://registry.yarnpkg.com/@emotion/hash/-/hash-0.8.0.tgz#bbbff68978fefdbe68ccb533bc8cbe1d1afb5413" - integrity sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow== - -"@evocateur/libnpmaccess@^3.1.2": - version "3.1.2" - resolved "https://registry.yarnpkg.com/@evocateur/libnpmaccess/-/libnpmaccess-3.1.2.tgz#ecf7f6ce6b004e9f942b098d92200be4a4b1c845" - integrity sha512-KSCAHwNWro0CF2ukxufCitT9K5LjL/KuMmNzSu8wuwN2rjyKHD8+cmOsiybK+W5hdnwc5M1SmRlVCaMHQo+3rg== - dependencies: - "@evocateur/npm-registry-fetch" "^4.0.0" - aproba "^2.0.0" - figgy-pudding "^3.5.1" - get-stream "^4.0.0" - npm-package-arg "^6.1.0" - -"@evocateur/libnpmpublish@^1.2.2": - version "1.2.2" - resolved "https://registry.yarnpkg.com/@evocateur/libnpmpublish/-/libnpmpublish-1.2.2.tgz#55df09d2dca136afba9c88c759ca272198db9f1a" - integrity sha512-MJrrk9ct1FeY9zRlyeoyMieBjGDG9ihyyD9/Ft6MMrTxql9NyoEx2hw9casTIP4CdqEVu+3nQ2nXxoJ8RCXyFg== - dependencies: - "@evocateur/npm-registry-fetch" "^4.0.0" - aproba "^2.0.0" - figgy-pudding "^3.5.1" - get-stream "^4.0.0" - lodash.clonedeep "^4.5.0" - normalize-package-data "^2.4.0" - npm-package-arg "^6.1.0" - semver "^5.5.1" - ssri "^6.0.1" - -"@evocateur/npm-registry-fetch@^4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@evocateur/npm-registry-fetch/-/npm-registry-fetch-4.0.0.tgz#8c4c38766d8d32d3200fcb0a83f064b57365ed66" - integrity sha512-k1WGfKRQyhJpIr+P17O5vLIo2ko1PFLKwoetatdduUSt/aQ4J2sJrJwwatdI5Z3SiYk/mRH9S3JpdmMFd/IK4g== - dependencies: - JSONStream "^1.3.4" - bluebird "^3.5.1" - figgy-pudding "^3.4.1" - lru-cache "^5.1.1" - make-fetch-happen "^5.0.0" - npm-package-arg "^6.1.0" - safe-buffer "^5.1.2" - -"@evocateur/pacote@^9.6.3": - version "9.6.5" - resolved "https://registry.yarnpkg.com/@evocateur/pacote/-/pacote-9.6.5.tgz#33de32ba210b6f17c20ebab4d497efc6755f4ae5" - integrity sha512-EI552lf0aG2nOV8NnZpTxNo2PcXKPmDbF9K8eCBFQdIZwHNGN/mi815fxtmUMa2wTa1yndotICIDt/V0vpEx2w== - dependencies: - "@evocateur/npm-registry-fetch" "^4.0.0" - bluebird "^3.5.3" - cacache "^12.0.3" - chownr "^1.1.2" - figgy-pudding "^3.5.1" - get-stream "^4.1.0" - glob "^7.1.4" - infer-owner "^1.0.4" - lru-cache "^5.1.1" - make-fetch-happen "^5.0.0" - minimatch "^3.0.4" - minipass "^2.3.5" - mississippi "^3.0.0" - mkdirp "^0.5.1" - normalize-package-data "^2.5.0" - npm-package-arg "^6.1.0" - npm-packlist "^1.4.4" - npm-pick-manifest "^3.0.0" - osenv "^0.1.5" - promise-inflight "^1.0.1" - promise-retry "^1.1.1" - protoduck "^5.0.1" - rimraf "^2.6.3" - safe-buffer "^5.2.0" - semver "^5.7.0" - ssri "^6.0.1" - tar "^4.4.10" - unique-filename "^1.1.1" - which "^1.3.1" - -"@graphql-codegen/add@1.17.4": - version "1.17.4" - resolved "https://registry.yarnpkg.com/@graphql-codegen/add/-/add-1.17.4.tgz#e05d89bfa20ced7464007194d823da16ecddcfec" - integrity sha512-chmUIKrcv/yBbdE1jzVIWQ1qpOxMmPNeHX54L3eZWLjDhKsl/5ZKYjmgYqc5ZP4eUXoFbwpt0E/0EcWPwpmyxQ== - dependencies: - "@graphql-codegen/plugin-helpers" "1.17.4" - tslib "~2.0.0" - -"@graphql-codegen/cli@1.17.4": - version "1.17.4" - resolved "https://registry.yarnpkg.com/@graphql-codegen/cli/-/cli-1.17.4.tgz#2b7dbeda2946017b3d760a383b03ebb516dab785" - integrity sha512-NQcyF36TIeCe8L0DtZ27/Jf1fwax7r8m0CRGEllQoZ/65idCiNz3mL3RzKx/CX7VspcewW1XrWUfPIPzCyea9A== - dependencies: - "@graphql-codegen/core" "1.17.4" - "@graphql-codegen/plugin-helpers" "1.17.4" - "@graphql-tools/apollo-engine-loader" "^6.0.0" - "@graphql-tools/code-file-loader" "^6.0.0" - "@graphql-tools/git-loader" "^6.0.0" - "@graphql-tools/github-loader" "^6.0.0" - "@graphql-tools/graphql-file-loader" "^6.0.0" - "@graphql-tools/json-file-loader" "^6.0.0" - "@graphql-tools/load" "^6.0.0" - "@graphql-tools/prisma-loader" "^6.0.0" - "@graphql-tools/url-loader" "^6.0.0" - "@graphql-tools/utils" "^6.0.0" - ansi-escapes "4.3.1" - camel-case "4.1.1" - chalk "4.1.0" - chokidar "3.4.1" - common-tags "1.8.0" - constant-case "3.0.3" - cosmiconfig "6.0.0" - debounce "1.2.0" - dependency-graph "0.9.0" - detect-indent "6.0.0" - glob "7.1.6" - graphql-config "^3.0.2" - indent-string "4.0.0" - inquirer "7.3.3" - is-glob "4.0.1" - json-to-pretty-yaml "1.2.2" - listr "0.14.3" - listr-update-renderer "0.5.0" - log-symbols "4.0.0" - lower-case "2.0.1" - minimatch "3.0.4" - mkdirp "1.0.4" - pascal-case "3.1.1" - request "2.88.2" - string-env-interpolation "1.0.1" - ts-log "2.1.4" - tslib "^2.0.0" - upper-case "2.0.1" - valid-url "1.0.9" - wrap-ansi "7.0.0" - yargs "15.4.1" - -"@graphql-codegen/core@1.17.4": - version "1.17.4" - resolved "https://registry.yarnpkg.com/@graphql-codegen/core/-/core-1.17.4.tgz#318dcbf2e8d59296ee232107281973f683b4830d" - integrity sha512-LNkUub1zbQkkRznpugQBjEhWXbNmctduakBgFfAFgVAATsD2T4Nfpo4d4Tb8+g2O6FsMqvhaf0ZkVr16otlasA== - dependencies: - "@graphql-codegen/plugin-helpers" "1.17.4" - "@graphql-tools/merge" "^6.0.0" - "@graphql-tools/utils" "^6.0.0" - tslib "~2.0.0" - -"@graphql-codegen/introspection@1.17.4": - version "1.17.4" - resolved "https://registry.yarnpkg.com/@graphql-codegen/introspection/-/introspection-1.17.4.tgz#a94f57b49e61bb1c163bf478733252c2b49343a1" - integrity sha512-QjyjpJMlpECz1eP5iJHLGyoQC6xAGVXakBp6QkO6LzJmnpybZATrws9tao60SC5LMmHMCbDtvXxUNCnuMv+h7Q== - dependencies: - "@graphql-codegen/plugin-helpers" "1.17.4" - tslib "~2.0.0" - -"@graphql-codegen/plugin-helpers@1.17.4": - version "1.17.4" - resolved "https://registry.yarnpkg.com/@graphql-codegen/plugin-helpers/-/plugin-helpers-1.17.4.tgz#720fcd31126b0d2af6f820414ec88e4e6c230d79" - integrity sha512-7fycmjHZBhlHgHPzxJdEdB33cBSfmtqe7biS9HW6EtArvcG0rFXtDlA+nwKEdO7O39XfnR83A8FJkMw6x0h/gg== - dependencies: - "@graphql-tools/utils" "^6.0.0" - camel-case "4.1.1" - common-tags "1.8.0" - constant-case "3.0.3" - import-from "3.0.0" - lodash "~4.17.15" - lower-case "2.0.1" - param-case "3.0.3" - pascal-case "3.1.1" - tslib "~2.0.0" - upper-case "2.0.1" - -"@graphql-codegen/typed-document-node@1.17.4": - version "1.17.4" - resolved "https://registry.yarnpkg.com/@graphql-codegen/typed-document-node/-/typed-document-node-1.17.4.tgz#0d894f9ea93bbac0a6b432f0ed84001584d241aa" - integrity sha512-BODKE+Nkj1rT7pUs7FifxjZo+fsYa03N+8OmOk9uisxKiAgAAaCzNW/AsYGbiSCl1SOTSFwBx2XSNpRQ7eHGGA== - dependencies: - "@graphql-codegen/plugin-helpers" "1.17.4" - "@graphql-codegen/visitor-plugin-common" "1.17.4" - auto-bind "~4.0.0" - change-case "4.1.1" - tslib "~2.0.0" - -"@graphql-codegen/typescript-operations@1.17.4": - version "1.17.4" - resolved "https://registry.yarnpkg.com/@graphql-codegen/typescript-operations/-/typescript-operations-1.17.4.tgz#5bf0e52938966eea13cfb9d32a7fe8fe73d88dd3" - integrity sha512-Xl5ne6nIme7M6xCwPKXFLzJRMxOWXK2LHv4WPi/MUQE5xZ6vv016i1wqpOzqLFIpZwr6H9yaFlYIUYFGb86i/g== - dependencies: - "@graphql-codegen/plugin-helpers" "1.17.4" - "@graphql-codegen/typescript" "1.17.4" - "@graphql-codegen/visitor-plugin-common" "1.17.4" - auto-bind "~4.0.0" - tslib "~2.0.0" - -"@graphql-codegen/typescript-resolvers@1.17.4": - version "1.17.4" - resolved "https://registry.yarnpkg.com/@graphql-codegen/typescript-resolvers/-/typescript-resolvers-1.17.4.tgz#48c6dea70f29b8ec43dd001ccea472af1012217b" - integrity sha512-zshx6t2lGOBo/0194ym/YoNJTqtiWXWAu4NyrP+yZv0OAOFfVpDVMOk5B/aLmB7T7OMdBtQhEZrep5nQtVQcdA== - dependencies: - "@graphql-codegen/plugin-helpers" "1.17.4" - "@graphql-codegen/typescript" "1.17.4" - "@graphql-codegen/visitor-plugin-common" "1.17.4" - "@graphql-tools/utils" "^6.0.0" - auto-bind "~4.0.0" - tslib "~2.0.0" - -"@graphql-codegen/typescript-type-graphql@1.17.4": - version "1.17.4" - resolved "https://registry.yarnpkg.com/@graphql-codegen/typescript-type-graphql/-/typescript-type-graphql-1.17.4.tgz#5f3d1f0a44c605894c891cfe239d612822e5fe33" - integrity sha512-CxMS0rLPxeSX8nIr+aEPlAN7knk2ZfEhwxsx6liC1KQT7PLwqhqRoMKxWrkGPrjNPGDkpKrqiXag7Xjqdv3nIg== - dependencies: - "@graphql-codegen/plugin-helpers" "1.17.4" - "@graphql-codegen/typescript" "1.17.4" - "@graphql-codegen/visitor-plugin-common" "1.17.4" - auto-bind "~4.0.0" - tslib "~2.0.0" - -"@graphql-codegen/typescript@1.17.4": - version "1.17.4" - resolved "https://registry.yarnpkg.com/@graphql-codegen/typescript/-/typescript-1.17.4.tgz#48069f69a3c9bd3f09d77a89fdf2b4e8f8d1f495" - integrity sha512-1ja2nCqIQ/5ERJ3msPkLIqFyaYUNBb0PPht8DK2PcEsJv9fZQT6hczZap5vF4pG1eg4b097+4OzjqmMMsclLxg== - dependencies: - "@graphql-codegen/plugin-helpers" "1.17.4" - "@graphql-codegen/visitor-plugin-common" "1.17.4" - auto-bind "~4.0.0" - tslib "~2.0.0" - -"@graphql-codegen/visitor-plugin-common@1.17.4": - version "1.17.4" - resolved "https://registry.yarnpkg.com/@graphql-codegen/visitor-plugin-common/-/visitor-plugin-common-1.17.4.tgz#5dacb5686e54fb8588faa68ee1997fd4576e83a0" - integrity sha512-llrvE8E4AyWGjpt/Uf/FTBG1FSXA2oE1mwPatn9j51KsHJ9YQlJ9wt6/af0TqhcnWkLnB6oDtzr+HHb0isnVzw== - dependencies: - "@graphql-codegen/plugin-helpers" "1.17.4" - "@graphql-tools/relay-operation-optimizer" "6.0.15" - array.prototype.flatmap "1.2.3" - auto-bind "~4.0.0" - dependency-graph "0.9.0" - graphql-tag "2.10.4" - parse-filepath "1.0.2" - pascal-case "3.1.1" - tslib "~2.0.0" - -"@graphql-modules/core@0.7.17": - version "0.7.17" - resolved "https://registry.yarnpkg.com/@graphql-modules/core/-/core-0.7.17.tgz#ae9bbf44894509664bc0b6fcdd9b6cf3d99bcd00" - integrity sha512-hGJa1VIsIHTKJ0Hc5gJfFrdhHAF1Vm+LWYeMNC5mPbVd/IZA1wVSpdLDjjliylLI6GnVRu1YreS2gXvFNXPJFA== - dependencies: - "@graphql-modules/di" "0.7.17" - "@graphql-toolkit/common" "0.10.6" - "@graphql-toolkit/schema-merging" "0.10.6" - apollo-server-caching "0.5.1" - deepmerge "4.2.2" - graphql-tools "5.0.0" - tslib "2.0.0" - -"@graphql-modules/di@0.7.17": - version "0.7.17" - resolved "https://registry.yarnpkg.com/@graphql-modules/di/-/di-0.7.17.tgz#049f93f204a6d90b7ee4e047a0654c6056f28065" - integrity sha512-Lq5sd/3RO+bNb8wVnAg43LWbwrqD57D0AVEqZlqiTwUj1f0mITtQdGMRN7g2sG79U7ngoaQx8VK/IiKh8E1OFQ== - dependencies: - events "3.1.0" - tslib "2.0.0" - -"@graphql-toolkit/common@0.10.6": - version "0.10.6" - resolved "https://registry.yarnpkg.com/@graphql-toolkit/common/-/common-0.10.6.tgz#43591fd3478ab27ec95bf39d5a8afdd17f0ac2fd" - integrity sha512-rrH/KPheh/wCZzqUmNayBHd+aNWl/751C4iTL/327TzONdAVrV7ZQOyEkpGLW6YEFWPIlWxNkaBoEALIjCxTGg== - dependencies: - aggregate-error "3.0.1" - camel-case "4.1.1" - graphql-tools "5.0.0" - lodash "4.17.15" - -"@graphql-toolkit/schema-merging@0.10.6": - version "0.10.6" - resolved "https://registry.yarnpkg.com/@graphql-toolkit/schema-merging/-/schema-merging-0.10.6.tgz#9f57a349621a4377a3431a0320221d9aa6a9d982" - integrity sha512-BNABgYaNCw4Li3EiH/x7oDpkN+ml3M0SWqjnsW1Pf2NcyfGlv033Bda+O/q4XYtseZ0OOOh52GLXtUgwyPFb8A== - dependencies: - "@graphql-toolkit/common" "0.10.6" - deepmerge "4.2.2" - graphql-tools "5.0.0" - tslib "1.11.1" - -"@graphql-tools/apollo-engine-loader@^6.0.0": - version "6.0.11" - resolved "https://registry.yarnpkg.com/@graphql-tools/apollo-engine-loader/-/apollo-engine-loader-6.0.11.tgz#3df54ace40918e7a96f7ac13ea8e570a0319c1a9" - integrity sha512-M2mgq/6DjzxEfkIi32ypIg9xHGBxzJfuCKh8Wi6Qo0Jl16e3IC3WNI9yeHezHNAEq1/OUTxKVcfvGhaNZ4LVLQ== - dependencies: - "@graphql-tools/utils" "6.0.11" - cross-fetch "3.0.5" - tslib "~2.0.0" - -"@graphql-tools/code-file-loader@^6.0.0": - version "6.0.11" - resolved "https://registry.yarnpkg.com/@graphql-tools/code-file-loader/-/code-file-loader-6.0.11.tgz#120cf02224da5eb769e10181a2881a6ed147f873" - integrity sha512-bBO4pnt1kNR7OhcwMxjK39F/TWTr1bLSHRxlpI/SGC7GW/KKgAH5mugQIAGL7atA8aG3FevXadqHrugr/iObJg== - dependencies: - "@graphql-tools/graphql-tag-pluck" "6.0.11" - "@graphql-tools/utils" "6.0.11" - fs-extra "9.0.1" - tslib "~2.0.0" - -"@graphql-tools/delegate@6.0.11": - version "6.0.11" - resolved "https://registry.yarnpkg.com/@graphql-tools/delegate/-/delegate-6.0.11.tgz#669143dec73b6fd67a5b2bad15b9f7b6c377b2f6" - integrity sha512-c5mVcjCPUqWabe3oPpuXs1IxXj58xsJhuG48vJJjDrTRuRXNZCJb5aa2+VLJEQkkW4tq/qmLcU8zeOfo2wdGng== - dependencies: - "@ardatan/aggregate-error" "0.0.1" - "@graphql-tools/schema" "6.0.11" - "@graphql-tools/utils" "6.0.11" - tslib "~2.0.0" - -"@graphql-tools/git-loader@^6.0.0": - version "6.0.11" - resolved "https://registry.yarnpkg.com/@graphql-tools/git-loader/-/git-loader-6.0.11.tgz#80fdf0ba9f12afb07a03a08a0c8e3c35450a769a" - integrity sha512-ndVa2RTtf8qIU5VONdAjI17TFT/tVtZnpAkvtL2aSJXeBcvR0ayov+tqUPXV46IgD59alXT+aVyzN5T0Qr/CiQ== - dependencies: - "@graphql-tools/graphql-tag-pluck" "6.0.11" - "@graphql-tools/utils" "6.0.11" - simple-git "2.10.0" - -"@graphql-tools/github-loader@^6.0.0": - version "6.0.11" - resolved "https://registry.yarnpkg.com/@graphql-tools/github-loader/-/github-loader-6.0.11.tgz#b610b29a8d898671bb68512a7314c86327f0d55b" - integrity sha512-SmfzpPJIZl1gSQ8WEMvbNGhA3LlO2PrmN59oX0plq80xjDz3og+bJSrhuM4uPiTblF/3EaNAhqUqXsAkIDj0BQ== - dependencies: - "@graphql-tools/graphql-tag-pluck" "6.0.11" - "@graphql-tools/utils" "6.0.11" - cross-fetch "3.0.5" - -"@graphql-tools/graphql-file-loader@^6.0.0": - version "6.0.11" - resolved "https://registry.yarnpkg.com/@graphql-tools/graphql-file-loader/-/graphql-file-loader-6.0.11.tgz#dd255124e8b4035f665249369033f368ad01755f" - integrity sha512-mTdNOCSWBefqGghp+EHfZxPUshzuK52pnDva6jHO+ck5UVFjPbG5JtGTciwDBPWWo/IIxoJtnlmOqHiF/F2Raw== - dependencies: - "@graphql-tools/import" "6.0.11" - "@graphql-tools/utils" "6.0.11" - fs-extra "9.0.1" - tslib "~2.0.0" - -"@graphql-tools/graphql-tag-pluck@6.0.11": - version "6.0.11" - resolved "https://registry.yarnpkg.com/@graphql-tools/graphql-tag-pluck/-/graphql-tag-pluck-6.0.11.tgz#1390bdfcce15e46d8c06e7d7dd20dc59a19182bd" - integrity sha512-bBxhjdfjkfsaKGLh4xQoK5sqZMJAfmhyVp26yiPJE0EnRXb/Fpw74uHZol3DBRALjGqMJ62AySzahzdOhsXDkQ== - dependencies: - "@babel/parser" "7.10.3" - "@babel/traverse" "7.10.3" - "@babel/types" "7.10.3" - "@graphql-tools/utils" "6.0.11" - optionalDependencies: - vue-template-compiler "^2.6.11" - -"@graphql-tools/import@6.0.11": - version "6.0.11" - resolved "https://registry.yarnpkg.com/@graphql-tools/import/-/import-6.0.11.tgz#dabe6ab7c73bb3cd208bbed09a8aaadedf282c06" - integrity sha512-j1Tn4XXFxA1XYQF84ACq5LHanSgwvOmGe6JxpIBCuhDEd9dL8W6FhIlPhloXDrcJyFEsIm+ZGmtCIIvwWKcT+Q== - dependencies: - fs-extra "9.0.1" - resolve-from "5.0.0" - -"@graphql-tools/json-file-loader@^6.0.0": - version "6.0.11" - resolved "https://registry.yarnpkg.com/@graphql-tools/json-file-loader/-/json-file-loader-6.0.11.tgz#1ef4095261bda0358032109c84bfded2142d1ec1" - integrity sha512-PExlGMP7R+GIaU2svB/vJS4vRsMFxIJyYLm5G/0iHRKuvn36XOq2mid93darD3zzJqY8JDJ71RHt8+5xv+t5AQ== - dependencies: - "@graphql-tools/utils" "6.0.11" - fs-extra "9.0.1" - tslib "~2.0.0" - -"@graphql-tools/load@^6.0.0": - version "6.0.11" - resolved "https://registry.yarnpkg.com/@graphql-tools/load/-/load-6.0.11.tgz#de80fb74e73a2606630d9fcba2d19c132ecb8842" - integrity sha512-1e7B+dtubEwu9aGZiakOneXnS5y7dyx9ewceZ1MNE7osS6QU8XnDUVm2qtNGHhoyeJJbn66qsRSjwCort2pSeQ== - dependencies: - "@graphql-tools/merge" "6.0.11" - "@graphql-tools/utils" "6.0.11" - globby "11.0.1" - import-from "3.0.0" - is-glob "4.0.1" - p-limit "3.0.1" - tslib "~2.0.0" - unixify "1.0.0" - valid-url "1.0.9" - -"@graphql-tools/merge@6.0.11", "@graphql-tools/merge@^6.0.0": - version "6.0.11" - resolved "https://registry.yarnpkg.com/@graphql-tools/merge/-/merge-6.0.11.tgz#0bf50e31f8dc2ec262809503b82ff54c6041dfd3" - integrity sha512-jNXl5pOdjfTRm+JKMpD47hsafM44Ojt7oi25Cflydw9VaWlQ5twFUSXk2rydP0mx1Twdxozk9ZCj4qiTdzw9ag== - dependencies: - "@graphql-tools/schema" "6.0.11" - "@graphql-tools/utils" "6.0.11" - tslib "~2.0.0" - -"@graphql-tools/prisma-loader@^6.0.0": - version "6.0.11" - resolved "https://registry.yarnpkg.com/@graphql-tools/prisma-loader/-/prisma-loader-6.0.11.tgz#29f2c277979b3be6744d2318c5732b2c53b4ef7c" - integrity sha512-bC0JnEu8ob62wjMasFLLs1dYcPdlqbCy0H0WFMOYCQ19q5WYPkCx9lAvHnrHZP7gumc5V2+YjjbiHdwwh0pmyA== - dependencies: - "@graphql-tools/url-loader" "6.0.11" - "@graphql-tools/utils" "6.0.11" - fs-extra "9.0.1" - prisma-yml "1.34.10" - tslib "~2.0.0" - -"@graphql-tools/relay-operation-optimizer@6.0.15": - version "6.0.15" - resolved "https://registry.yarnpkg.com/@graphql-tools/relay-operation-optimizer/-/relay-operation-optimizer-6.0.15.tgz#f991499c54945cb8fa2396bb5292252fbda0a773" - integrity sha512-Y4h2kclKh5HvyvmoxeZiDhqdhMKfLKamOYx6UVpFsbeKb6Tt9RCNPVhpa+YToXxUXl0PvjhxZWeQ4lZY0GE0ug== - dependencies: - "@graphql-tools/utils" "6.0.15" - relay-compiler "10.0.0" - -"@graphql-tools/schema@6.0.11": - version "6.0.11" - resolved "https://registry.yarnpkg.com/@graphql-tools/schema/-/schema-6.0.11.tgz#4623c3662a8843822e36139855504ef8d7d89088" - integrity sha512-Zl9LTwOnkMaNtgs1+LJEYtklywtn602kRbxkRFeA7nFGaDmFPFHZnfQqcLsfhaPA8S0jNCQnbucHERCz8pRUYA== - dependencies: - "@graphql-tools/utils" "6.0.11" - tslib "~2.0.0" - -"@graphql-tools/url-loader@6.0.11", "@graphql-tools/url-loader@^6.0.0": - version "6.0.11" - resolved "https://registry.yarnpkg.com/@graphql-tools/url-loader/-/url-loader-6.0.11.tgz#43e8605e50f4dd5daabd227f408f043d4f4c4656" - integrity sha512-//PWpo88yV4LPn1AYiNRfOJ/VbS4tqdye/I92RzvNZ60H0Mdxx8KkAh/5PfHK027Vm6a5SPRptrvY94CmtxIQQ== - dependencies: - "@graphql-tools/delegate" "6.0.11" - "@graphql-tools/utils" "6.0.11" - "@graphql-tools/wrap" "6.0.11" - "@types/websocket" "1.0.0" - cross-fetch "3.0.5" - subscriptions-transport-ws "0.9.16" - tslib "~2.0.0" - valid-url "1.0.9" - websocket "1.0.31" - -"@graphql-tools/utils@6.0.11", "@graphql-tools/utils@^6.0.0": - version "6.0.11" - resolved "https://registry.yarnpkg.com/@graphql-tools/utils/-/utils-6.0.11.tgz#c394201c992dbc8f3644b9ad71411fdd55832f2d" - integrity sha512-BK6HO73FbB/Ufac6XX5H0O2q4tEZi//HaQ7DgmHFoda53GZSZ/ZckJ59wh/tUvHykEaSFUSmMBVQxKbXBhGhyg== - dependencies: - "@ardatan/aggregate-error" "0.0.1" - camel-case "4.1.1" - -"@graphql-tools/utils@6.0.15": - version "6.0.15" - resolved "https://registry.yarnpkg.com/@graphql-tools/utils/-/utils-6.0.15.tgz#6d54d383285bea3c22797531933b62a408e78e49" - integrity sha512-VG5cMLPgh9RDLGHamGpXVnBrNw7bZGT46LrxK7IIqDZI9H0GPsRCo8+p+CfDkw0IlDiEECb624WVCpm9IYNecA== - dependencies: - "@ardatan/aggregate-error" "0.0.1" - camel-case "4.1.1" - -"@graphql-tools/wrap@6.0.11": - version "6.0.11" - resolved "https://registry.yarnpkg.com/@graphql-tools/wrap/-/wrap-6.0.11.tgz#5e0d9efd1e205da1953f3ba5cc4f46b2f7c757ec" - integrity sha512-zy6ftDahsgrsaTPXPJgNNCt+0BTtuq37bZ5K9Ayf58wuxxW06fNLUp76wCUJWzb7nsML5aECQF9+STw1iQJ5qg== - dependencies: - "@graphql-tools/delegate" "6.0.11" - "@graphql-tools/schema" "6.0.11" - "@graphql-tools/utils" "6.0.11" - aggregate-error "3.0.1" - tslib "~2.0.0" - -"@graphql-typed-document-node/core@0.0.1": - version "0.0.1" - resolved "https://registry.yarnpkg.com/@graphql-typed-document-node/core/-/core-0.0.1.tgz#f5cd1a0e75abe8a07a855c463a2ba947fe5913ec" - integrity sha512-NqQFW+ZN1wPZjrHGRzLlP2qEisXaDITp21FIuWmsMnP1ed76XI69LT4mv1QF+gWL3SWKgKS3gK8fsTeQUR3Swg== - -"@hapi/address@2.x.x": - version "2.1.4" - resolved "https://registry.yarnpkg.com/@hapi/address/-/address-2.1.4.tgz#5d67ed43f3fd41a69d4b9ff7b56e7c0d1d0a81e5" - integrity sha512-QD1PhQk+s31P1ixsX0H0Suoupp3VMXzIVMSwobR3F3MSUO2YCV0B7xqLcUw/Bh8yuvd3LhpyqLQWTNcRmp6IdQ== - -"@hapi/bourne@1.x.x": - version "1.3.2" - resolved "https://registry.yarnpkg.com/@hapi/bourne/-/bourne-1.3.2.tgz#0a7095adea067243ce3283e1b56b8a8f453b242a" - integrity sha512-1dVNHT76Uu5N3eJNTYcvxee+jzX4Z9lfciqRRHCU27ihbUcYi+iSc2iml5Ke1LXe1SyJCLA0+14Jh4tXJgOppA== - -"@hapi/hoek@8.x.x", "@hapi/hoek@^8.3.0": - version "8.5.1" - resolved "https://registry.yarnpkg.com/@hapi/hoek/-/hoek-8.5.1.tgz#fde96064ca446dec8c55a8c2f130957b070c6e06" - integrity sha512-yN7kbciD87WzLGc5539Tn0sApjyiGHAJgKvG9W8C7O+6c7qmoQMfVs0W4bX17eqz6C78QJqqFrtgdK5EWf6Qow== - -"@hapi/joi@^15.0.0": - version "15.1.1" - resolved "https://registry.yarnpkg.com/@hapi/joi/-/joi-15.1.1.tgz#c675b8a71296f02833f8d6d243b34c57b8ce19d7" - integrity sha512-entf8ZMOK8sc+8YfeOlM8pCfg3b5+WZIKBfUaaJT8UsjAAPjartzxIYm3TIbjvA4u+u++KbcXD38k682nVHDAQ== - dependencies: - "@hapi/address" "2.x.x" - "@hapi/bourne" "1.x.x" - "@hapi/hoek" "8.x.x" - "@hapi/topo" "3.x.x" - -"@hapi/topo@3.x.x": - version "3.1.6" - resolved "https://registry.yarnpkg.com/@hapi/topo/-/topo-3.1.6.tgz#68d935fa3eae7fdd5ab0d7f953f3205d8b2bfc29" - integrity sha512-tAag0jEcjwH+P2quUfipd7liWCNX2F8NvYjQp2wtInsZxnMlypdw0FtAOLxtvvkO+GSRRbmNi8m/5y42PQJYCQ== - dependencies: - "@hapi/hoek" "^8.3.0" - -"@istanbuljs/load-nyc-config@^1.0.0": - version "1.1.0" - resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" - integrity sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ== - 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" - -"@istanbuljs/schema@^0.1.2": - version "0.1.2" - resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.2.tgz#26520bf09abe4a5644cd5414e37125a8954241dd" - integrity sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw== - -"@jest/console@^24.7.1", "@jest/console@^24.9.0": - version "24.9.0" - resolved "https://registry.yarnpkg.com/@jest/console/-/console-24.9.0.tgz#79b1bc06fb74a8cfb01cbdedf945584b1b9707f0" - integrity sha512-Zuj6b8TnKXi3q4ymac8EQfc3ea/uhLeCGThFqXeC8H9/raaH8ARPUTdId+XyGd03Z4In0/VjD2OYFcBF09fNLQ== - dependencies: - "@jest/source-map" "^24.9.0" - chalk "^2.0.1" - slash "^2.0.0" - -"@jest/console@^26.2.0": - version "26.2.0" - resolved "https://registry.yarnpkg.com/@jest/console/-/console-26.2.0.tgz#d18f2659b90930e7ec3925fb7209f1ba2cf463f0" - integrity sha512-mXQfx3nSLwiHm1i7jbu+uvi+vvpVjNGzIQYLCfsat9rapC+MJkS4zBseNrgJE0vU921b3P67bQzhduphjY3Tig== - dependencies: - "@jest/types" "^26.2.0" - "@types/node" "*" - chalk "^4.0.0" - jest-message-util "^26.2.0" - jest-util "^26.2.0" - slash "^3.0.0" - -"@jest/core@^24.9.0": - version "24.9.0" - resolved "https://registry.yarnpkg.com/@jest/core/-/core-24.9.0.tgz#2ceccd0b93181f9c4850e74f2a9ad43d351369c4" - integrity sha512-Fogg3s4wlAr1VX7q+rhV9RVnUv5tD7VuWfYy1+whMiWUrvl7U3QJSJyWcDio9Lq2prqYsZaeTv2Rz24pWGkJ2A== - dependencies: - "@jest/console" "^24.7.1" - "@jest/reporters" "^24.9.0" - "@jest/test-result" "^24.9.0" - "@jest/transform" "^24.9.0" - "@jest/types" "^24.9.0" - ansi-escapes "^3.0.0" - chalk "^2.0.1" - exit "^0.1.2" - graceful-fs "^4.1.15" - jest-changed-files "^24.9.0" - jest-config "^24.9.0" - jest-haste-map "^24.9.0" - jest-message-util "^24.9.0" - jest-regex-util "^24.3.0" - jest-resolve "^24.9.0" - jest-resolve-dependencies "^24.9.0" - jest-runner "^24.9.0" - jest-runtime "^24.9.0" - jest-snapshot "^24.9.0" - jest-util "^24.9.0" - jest-validate "^24.9.0" - jest-watcher "^24.9.0" - micromatch "^3.1.10" - p-each-series "^1.0.0" - realpath-native "^1.1.0" - rimraf "^2.5.4" - slash "^2.0.0" - strip-ansi "^5.0.0" - -"@jest/core@^26.2.2": - version "26.2.2" - resolved "https://registry.yarnpkg.com/@jest/core/-/core-26.2.2.tgz#63de01ffce967618003dd7a0164b05c8041b81a9" - integrity sha512-UwA8gNI8aeV4FHGfGAUfO/DHjrFVvlBravF1Tm9Kt6qFE+6YHR47kFhgdepOFpADEKstyO+MVdPvkV6/dyt9sA== - dependencies: - "@jest/console" "^26.2.0" - "@jest/reporters" "^26.2.2" - "@jest/test-result" "^26.2.0" - "@jest/transform" "^26.2.2" - "@jest/types" "^26.2.0" - "@types/node" "*" - ansi-escapes "^4.2.1" - chalk "^4.0.0" - exit "^0.1.2" - graceful-fs "^4.2.4" - jest-changed-files "^26.2.0" - jest-config "^26.2.2" - jest-haste-map "^26.2.2" - jest-message-util "^26.2.0" - jest-regex-util "^26.0.0" - jest-resolve "^26.2.2" - jest-resolve-dependencies "^26.2.2" - jest-runner "^26.2.2" - jest-runtime "^26.2.2" - jest-snapshot "^26.2.2" - jest-util "^26.2.0" - jest-validate "^26.2.0" - jest-watcher "^26.2.0" - micromatch "^4.0.2" - p-each-series "^2.1.0" - rimraf "^3.0.0" - slash "^3.0.0" - strip-ansi "^6.0.0" - -"@jest/environment@^24.3.0", "@jest/environment@^24.9.0": - version "24.9.0" - resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-24.9.0.tgz#21e3afa2d65c0586cbd6cbefe208bafade44ab18" - integrity sha512-5A1QluTPhvdIPFYnO3sZC3smkNeXPVELz7ikPbhUj0bQjB07EoE9qtLrem14ZUYWdVayYbsjVwIiL4WBIMV4aQ== - dependencies: - "@jest/fake-timers" "^24.9.0" - "@jest/transform" "^24.9.0" - "@jest/types" "^24.9.0" - jest-mock "^24.9.0" - -"@jest/environment@^26.2.0": - version "26.2.0" - resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-26.2.0.tgz#f6faee1630fcc2fad208953164bccb31dbe0e45f" - integrity sha512-oCgp9NmEiJ5rbq9VI/v/yYLDpladAAVvFxZgNsnJxOETuzPZ0ZcKKHYjKYwCtPOP1WCrM5nmyuOhMStXFGHn+g== - dependencies: - "@jest/fake-timers" "^26.2.0" - "@jest/types" "^26.2.0" - "@types/node" "*" - jest-mock "^26.2.0" - -"@jest/fake-timers@^24.3.0", "@jest/fake-timers@^24.9.0": - version "24.9.0" - resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-24.9.0.tgz#ba3e6bf0eecd09a636049896434d306636540c93" - integrity sha512-eWQcNa2YSwzXWIMC5KufBh3oWRIijrQFROsIqt6v/NS9Io/gknw1jsAC9c+ih/RQX4A3O7SeWAhQeN0goKhT9A== - dependencies: - "@jest/types" "^24.9.0" - jest-message-util "^24.9.0" - jest-mock "^24.9.0" - -"@jest/fake-timers@^26.2.0": - version "26.2.0" - resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-26.2.0.tgz#b485c57dc4c74d61406a339807a9af4bac74b75a" - integrity sha512-45Gfe7YzYTKqTayBrEdAF0qYyAsNRBzfkV0IyVUm3cx7AsCWlnjilBM4T40w7IXT5VspOgMPikQlV0M6gHwy/g== - dependencies: - "@jest/types" "^26.2.0" - "@sinonjs/fake-timers" "^6.0.1" - "@types/node" "*" - jest-message-util "^26.2.0" - jest-mock "^26.2.0" - jest-util "^26.2.0" - -"@jest/globals@^26.2.0": - version "26.2.0" - resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-26.2.0.tgz#ad78f1104f250c1a4bf5184a2ba51facc59b23f6" - integrity sha512-Hoc6ScEIPaym7RNytIL2ILSUWIGKlwEv+JNFof9dGYOdvPjb2evEURSslvCMkNuNg1ECEClTE8PH7ULlMJntYA== - dependencies: - "@jest/environment" "^26.2.0" - "@jest/types" "^26.2.0" - expect "^26.2.0" - -"@jest/reporters@^24.9.0": - version "24.9.0" - resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-24.9.0.tgz#86660eff8e2b9661d042a8e98a028b8d631a5b43" - integrity sha512-mu4X0yjaHrffOsWmVLzitKmmmWSQ3GGuefgNscUSWNiUNcEOSEQk9k3pERKEQVBb0Cnn88+UESIsZEMH3o88Gw== - dependencies: - "@jest/environment" "^24.9.0" - "@jest/test-result" "^24.9.0" - "@jest/transform" "^24.9.0" - "@jest/types" "^24.9.0" - chalk "^2.0.1" - exit "^0.1.2" - glob "^7.1.2" - istanbul-lib-coverage "^2.0.2" - istanbul-lib-instrument "^3.0.1" - istanbul-lib-report "^2.0.4" - istanbul-lib-source-maps "^3.0.1" - istanbul-reports "^2.2.6" - jest-haste-map "^24.9.0" - jest-resolve "^24.9.0" - jest-runtime "^24.9.0" - jest-util "^24.9.0" - jest-worker "^24.6.0" - node-notifier "^5.4.2" - slash "^2.0.0" - source-map "^0.6.0" - string-length "^2.0.0" - -"@jest/reporters@^26.2.2": - version "26.2.2" - resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-26.2.2.tgz#5a8632ab410f4fc57782bc05dcf115e91818e869" - integrity sha512-7854GPbdFTAorWVh+RNHyPO9waRIN6TcvCezKVxI1khvFq9YjINTW7J3WU+tbR038Ynn6WjYred6vtT0YmIWVQ== - dependencies: - "@bcoe/v8-coverage" "^0.2.3" - "@jest/console" "^26.2.0" - "@jest/test-result" "^26.2.0" - "@jest/transform" "^26.2.2" - "@jest/types" "^26.2.0" - chalk "^4.0.0" - collect-v8-coverage "^1.0.0" - exit "^0.1.2" - glob "^7.1.2" - graceful-fs "^4.2.4" - istanbul-lib-coverage "^3.0.0" - istanbul-lib-instrument "^4.0.3" - istanbul-lib-report "^3.0.0" - istanbul-lib-source-maps "^4.0.0" - istanbul-reports "^3.0.2" - jest-haste-map "^26.2.2" - jest-resolve "^26.2.2" - jest-util "^26.2.0" - jest-worker "^26.2.1" - slash "^3.0.0" - source-map "^0.6.0" - string-length "^4.0.1" - terminal-link "^2.0.0" - v8-to-istanbul "^4.1.3" - optionalDependencies: - node-notifier "^7.0.0" - -"@jest/source-map@^24.3.0", "@jest/source-map@^24.9.0": - version "24.9.0" - resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-24.9.0.tgz#0e263a94430be4b41da683ccc1e6bffe2a191714" - integrity sha512-/Xw7xGlsZb4MJzNDgB7PW5crou5JqWiBQaz6xyPd3ArOg2nfn/PunV8+olXbbEZzNl591o5rWKE9BRDaFAuIBg== - dependencies: - callsites "^3.0.0" - graceful-fs "^4.1.15" - source-map "^0.6.0" - -"@jest/source-map@^26.1.0": - version "26.1.0" - resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-26.1.0.tgz#a6a020d00e7d9478f4b690167c5e8b77e63adb26" - integrity sha512-XYRPYx4eEVX15cMT9mstnO7hkHP3krNtKfxUYd8L7gbtia8JvZZ6bMzSwa6IQJENbudTwKMw5R1BePRD+bkEmA== - dependencies: - callsites "^3.0.0" - graceful-fs "^4.2.4" - source-map "^0.6.0" - -"@jest/test-result@^24.9.0": - version "24.9.0" - resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-24.9.0.tgz#11796e8aa9dbf88ea025757b3152595ad06ba0ca" - integrity sha512-XEFrHbBonBJ8dGp2JmF8kP/nQI/ImPpygKHwQ/SY+es59Z3L5PI4Qb9TQQMAEeYsThG1xF0k6tmG0tIKATNiiA== - dependencies: - "@jest/console" "^24.9.0" - "@jest/types" "^24.9.0" - "@types/istanbul-lib-coverage" "^2.0.0" - -"@jest/test-result@^26.2.0": - version "26.2.0" - resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-26.2.0.tgz#51c9b165c8851cfcf7a3466019114785e154f76b" - integrity sha512-kgPlmcVafpmfyQEu36HClK+CWI6wIaAWDHNxfQtGuKsgoa2uQAYdlxjMDBEa3CvI40+2U3v36gQF6oZBkoKatw== - dependencies: - "@jest/console" "^26.2.0" - "@jest/types" "^26.2.0" - "@types/istanbul-lib-coverage" "^2.0.0" - collect-v8-coverage "^1.0.0" - -"@jest/test-sequencer@^24.9.0": - version "24.9.0" - resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-24.9.0.tgz#f8f334f35b625a4f2f355f2fe7e6036dad2e6b31" - integrity sha512-6qqsU4o0kW1dvA95qfNog8v8gkRN9ph6Lz7r96IvZpHdNipP2cBcb07J1Z45mz/VIS01OHJ3pY8T5fUY38tg4A== - dependencies: - "@jest/test-result" "^24.9.0" - jest-haste-map "^24.9.0" - jest-runner "^24.9.0" - jest-runtime "^24.9.0" - -"@jest/test-sequencer@^26.2.2": - version "26.2.2" - resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-26.2.2.tgz#5e8091f2e6c61fdf242af566cb820a4eadc6c4af" - integrity sha512-SliZWon5LNqV/lVXkeowSU6L8++FGOu3f43T01L1Gv6wnFDP00ER0utV9jyK9dVNdXqfMNCN66sfcyar/o7BNw== - dependencies: - "@jest/test-result" "^26.2.0" - graceful-fs "^4.2.4" - jest-haste-map "^26.2.2" - jest-runner "^26.2.2" - jest-runtime "^26.2.2" - -"@jest/transform@^24.9.0": - version "24.9.0" - resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-24.9.0.tgz#4ae2768b296553fadab09e9ec119543c90b16c56" - integrity sha512-TcQUmyNRxV94S0QpMOnZl0++6RMiqpbH/ZMccFB/amku6Uwvyb1cjYX7xkp5nGNkbX4QPH/FcB6q1HBTHynLmQ== - dependencies: - "@babel/core" "^7.1.0" - "@jest/types" "^24.9.0" - babel-plugin-istanbul "^5.1.0" - chalk "^2.0.1" - convert-source-map "^1.4.0" - fast-json-stable-stringify "^2.0.0" - graceful-fs "^4.1.15" - jest-haste-map "^24.9.0" - jest-regex-util "^24.9.0" - jest-util "^24.9.0" - micromatch "^3.1.10" - pirates "^4.0.1" - realpath-native "^1.1.0" - slash "^2.0.0" - source-map "^0.6.1" - write-file-atomic "2.4.1" - -"@jest/transform@^26.2.2": - version "26.2.2" - resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-26.2.2.tgz#86c005c8d5d749ac54d8df53ea58675fffe7a97e" - integrity sha512-c1snhvi5wRVre1XyoO3Eef5SEWpuBCH/cEbntBUd9tI5sNYiBDmO0My/lc5IuuGYKp/HFIHV1eZpSx5yjdkhKw== - dependencies: - "@babel/core" "^7.1.0" - "@jest/types" "^26.2.0" - babel-plugin-istanbul "^6.0.0" - chalk "^4.0.0" - convert-source-map "^1.4.0" - fast-json-stable-stringify "^2.0.0" - graceful-fs "^4.2.4" - jest-haste-map "^26.2.2" - jest-regex-util "^26.0.0" - jest-util "^26.2.0" - micromatch "^4.0.2" - pirates "^4.0.1" - slash "^3.0.0" - source-map "^0.6.1" - write-file-atomic "^3.0.0" - -"@jest/types@^24.3.0", "@jest/types@^24.9.0": - version "24.9.0" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-24.9.0.tgz#63cb26cb7500d069e5a389441a7c6ab5e909fc59" - integrity sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw== - dependencies: - "@types/istanbul-lib-coverage" "^2.0.0" - "@types/istanbul-reports" "^1.1.1" - "@types/yargs" "^13.0.0" - -"@jest/types@^25.5.0": - version "25.5.0" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-25.5.0.tgz#4d6a4793f7b9599fc3680877b856a97dbccf2a9d" - integrity sha512-OXD0RgQ86Tu3MazKo8bnrkDRaDXXMGUqd+kTtLtK1Zb7CRzQcaSRPPPV37SvYTdevXEBVxe0HXylEjs8ibkmCw== - dependencies: - "@types/istanbul-lib-coverage" "^2.0.0" - "@types/istanbul-reports" "^1.1.1" - "@types/yargs" "^15.0.0" - chalk "^3.0.0" - -"@jest/types@^26.2.0": - version "26.2.0" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.2.0.tgz#b28ca1fb517a4eb48c0addea7fcd9edc4ab45721" - integrity sha512-lvm3rJvctxd7+wxKSxxbzpDbr4FXDLaC57WEKdUIZ2cjTYuxYSc0zlyD7Z4Uqr5VdKxRUrtwIkiqBuvgf8uKJA== - dependencies: - "@types/istanbul-lib-coverage" "^2.0.0" - "@types/istanbul-reports" "^1.1.1" - "@types/node" "*" - "@types/yargs" "^15.0.0" - chalk "^4.0.0" - -"@kwsites/file-exists@^1.1.1": - version "1.1.1" - resolved "https://registry.yarnpkg.com/@kwsites/file-exists/-/file-exists-1.1.1.tgz#ad1efcac13e1987d8dbaf235ef3be5b0d96faa99" - integrity sha512-m9/5YGR18lIwxSFDwfE3oA7bWuq9kdau6ugN4H2rJeyhFQZcG9AgSHkQtSD15a8WvTgfz9aikZMrKPHvbpqFiw== - dependencies: - debug "^4.1.1" - -"@lerna/add@3.21.0": - version "3.21.0" - resolved "https://registry.yarnpkg.com/@lerna/add/-/add-3.21.0.tgz#27007bde71cc7b0a2969ab3c2f0ae41578b4577b" - integrity sha512-vhUXXF6SpufBE1EkNEXwz1VLW03f177G9uMOFMQkp6OJ30/PWg4Ekifuz9/3YfgB2/GH8Tu4Lk3O51P2Hskg/A== - dependencies: - "@evocateur/pacote" "^9.6.3" - "@lerna/bootstrap" "3.21.0" - "@lerna/command" "3.21.0" - "@lerna/filter-options" "3.20.0" - "@lerna/npm-conf" "3.16.0" - "@lerna/validation-error" "3.13.0" - dedent "^0.7.0" - npm-package-arg "^6.1.0" - p-map "^2.1.0" - semver "^6.2.0" - -"@lerna/bootstrap@3.21.0": - version "3.21.0" - resolved "https://registry.yarnpkg.com/@lerna/bootstrap/-/bootstrap-3.21.0.tgz#bcd1b651be5b0970b20d8fae04c864548123aed6" - integrity sha512-mtNHlXpmvJn6JTu0KcuTTPl2jLsDNud0QacV/h++qsaKbhAaJr/FElNZ5s7MwZFUM3XaDmvWzHKaszeBMHIbBw== - dependencies: - "@lerna/command" "3.21.0" - "@lerna/filter-options" "3.20.0" - "@lerna/has-npm-version" "3.16.5" - "@lerna/npm-install" "3.16.5" - "@lerna/package-graph" "3.18.5" - "@lerna/pulse-till-done" "3.13.0" - "@lerna/rimraf-dir" "3.16.5" - "@lerna/run-lifecycle" "3.16.2" - "@lerna/run-topologically" "3.18.5" - "@lerna/symlink-binary" "3.17.0" - "@lerna/symlink-dependencies" "3.17.0" - "@lerna/validation-error" "3.13.0" - dedent "^0.7.0" - get-port "^4.2.0" - multimatch "^3.0.0" - npm-package-arg "^6.1.0" - npmlog "^4.1.2" - p-finally "^1.0.0" - p-map "^2.1.0" - p-map-series "^1.0.0" - p-waterfall "^1.0.0" - read-package-tree "^5.1.6" - semver "^6.2.0" - -"@lerna/changed@3.21.0": - version "3.21.0" - resolved "https://registry.yarnpkg.com/@lerna/changed/-/changed-3.21.0.tgz#108e15f679bfe077af500f58248c634f1044ea0b" - integrity sha512-hzqoyf8MSHVjZp0gfJ7G8jaz+++mgXYiNs9iViQGA8JlN/dnWLI5sWDptEH3/B30Izo+fdVz0S0s7ydVE3pWIw== - dependencies: - "@lerna/collect-updates" "3.20.0" - "@lerna/command" "3.21.0" - "@lerna/listable" "3.18.5" - "@lerna/output" "3.13.0" - -"@lerna/check-working-tree@3.16.5": - version "3.16.5" - resolved "https://registry.yarnpkg.com/@lerna/check-working-tree/-/check-working-tree-3.16.5.tgz#b4f8ae61bb4523561dfb9f8f8d874dd46bb44baa" - integrity sha512-xWjVBcuhvB8+UmCSb5tKVLB5OuzSpw96WEhS2uz6hkWVa/Euh1A0/HJwn2cemyK47wUrCQXtczBUiqnq9yX5VQ== - dependencies: - "@lerna/collect-uncommitted" "3.16.5" - "@lerna/describe-ref" "3.16.5" - "@lerna/validation-error" "3.13.0" - -"@lerna/child-process@3.16.5": - version "3.16.5" - resolved "https://registry.yarnpkg.com/@lerna/child-process/-/child-process-3.16.5.tgz#38fa3c18064aa4ac0754ad80114776a7b36a69b2" - integrity sha512-vdcI7mzei9ERRV4oO8Y1LHBZ3A5+ampRKg1wq5nutLsUA4mEBN6H7JqjWOMY9xZemv6+kATm2ofjJ3lW5TszQg== - dependencies: - chalk "^2.3.1" - execa "^1.0.0" - strong-log-transformer "^2.0.0" - -"@lerna/clean@3.21.0": - version "3.21.0" - resolved "https://registry.yarnpkg.com/@lerna/clean/-/clean-3.21.0.tgz#c0b46b5300cc3dae2cda3bec14b803082da3856d" - integrity sha512-b/L9l+MDgE/7oGbrav6rG8RTQvRiZLO1zTcG17zgJAAuhlsPxJExMlh2DFwJEVi2les70vMhHfST3Ue1IMMjpg== - dependencies: - "@lerna/command" "3.21.0" - "@lerna/filter-options" "3.20.0" - "@lerna/prompt" "3.18.5" - "@lerna/pulse-till-done" "3.13.0" - "@lerna/rimraf-dir" "3.16.5" - p-map "^2.1.0" - p-map-series "^1.0.0" - p-waterfall "^1.0.0" - -"@lerna/cli@3.18.5": - version "3.18.5" - resolved "https://registry.yarnpkg.com/@lerna/cli/-/cli-3.18.5.tgz#c90c461542fcd35b6d5b015a290fb0dbfb41d242" - integrity sha512-erkbxkj9jfc89vVs/jBLY/fM0I80oLmJkFUV3Q3wk9J3miYhP14zgVEBsPZY68IZlEjT6T3Xlq2xO1AVaatHsA== - dependencies: - "@lerna/global-options" "3.13.0" - dedent "^0.7.0" - npmlog "^4.1.2" - yargs "^14.2.2" - -"@lerna/collect-uncommitted@3.16.5": - version "3.16.5" - resolved "https://registry.yarnpkg.com/@lerna/collect-uncommitted/-/collect-uncommitted-3.16.5.tgz#a494d61aac31cdc7aec4bbe52c96550274132e63" - integrity sha512-ZgqnGwpDZiWyzIQVZtQaj9tRizsL4dUOhuOStWgTAw1EMe47cvAY2kL709DzxFhjr6JpJSjXV5rZEAeU3VE0Hg== - dependencies: - "@lerna/child-process" "3.16.5" - chalk "^2.3.1" - figgy-pudding "^3.5.1" - npmlog "^4.1.2" - -"@lerna/collect-updates@3.20.0": - version "3.20.0" - resolved "https://registry.yarnpkg.com/@lerna/collect-updates/-/collect-updates-3.20.0.tgz#62f9d76ba21a25b7d9fbf31c02de88744a564bd1" - integrity sha512-qBTVT5g4fupVhBFuY4nI/3FSJtQVcDh7/gEPOpRxoXB/yCSnT38MFHXWl+y4einLciCjt/+0x6/4AG80fjay2Q== - dependencies: - "@lerna/child-process" "3.16.5" - "@lerna/describe-ref" "3.16.5" - minimatch "^3.0.4" - npmlog "^4.1.2" - slash "^2.0.0" - -"@lerna/command@3.21.0": - version "3.21.0" - resolved "https://registry.yarnpkg.com/@lerna/command/-/command-3.21.0.tgz#9a2383759dc7b700dacfa8a22b2f3a6e190121f7" - integrity sha512-T2bu6R8R3KkH5YoCKdutKv123iUgUbW8efVjdGCDnCMthAQzoentOJfDeodBwn0P2OqCl3ohsiNVtSn9h78fyQ== - dependencies: - "@lerna/child-process" "3.16.5" - "@lerna/package-graph" "3.18.5" - "@lerna/project" "3.21.0" - "@lerna/validation-error" "3.13.0" - "@lerna/write-log-file" "3.13.0" - clone-deep "^4.0.1" - dedent "^0.7.0" - execa "^1.0.0" - is-ci "^2.0.0" - npmlog "^4.1.2" - -"@lerna/conventional-commits@3.22.0": - version "3.22.0" - resolved "https://registry.yarnpkg.com/@lerna/conventional-commits/-/conventional-commits-3.22.0.tgz#2798f4881ee2ef457bdae027ab7d0bf0af6f1e09" - integrity sha512-z4ZZk1e8Mhz7+IS8NxHr64wyklHctCJyWpJKEZZPJiLFJ8yKto/x38O80R10pIzC0rr8Sy/OsjSH4bl0TbbgqA== - dependencies: - "@lerna/validation-error" "3.13.0" - conventional-changelog-angular "^5.0.3" - conventional-changelog-core "^3.1.6" - conventional-recommended-bump "^5.0.0" - fs-extra "^8.1.0" - get-stream "^4.0.0" - lodash.template "^4.5.0" - npm-package-arg "^6.1.0" - npmlog "^4.1.2" - pify "^4.0.1" - semver "^6.2.0" - -"@lerna/create-symlink@3.16.2": - version "3.16.2" - resolved "https://registry.yarnpkg.com/@lerna/create-symlink/-/create-symlink-3.16.2.tgz#412cb8e59a72f5a7d9463e4e4721ad2070149967" - integrity sha512-pzXIJp6av15P325sgiIRpsPXLFmkisLhMBCy4764d+7yjf2bzrJ4gkWVMhsv4AdF0NN3OyZ5jjzzTtLNqfR+Jw== - dependencies: - "@zkochan/cmd-shim" "^3.1.0" - fs-extra "^8.1.0" - npmlog "^4.1.2" - -"@lerna/create@3.22.0": - version "3.22.0" - resolved "https://registry.yarnpkg.com/@lerna/create/-/create-3.22.0.tgz#d6bbd037c3dc5b425fe5f6d1b817057c278f7619" - integrity sha512-MdiQQzCcB4E9fBF1TyMOaAEz9lUjIHp1Ju9H7f3lXze5JK6Fl5NYkouAvsLgY6YSIhXMY8AHW2zzXeBDY4yWkw== - dependencies: - "@evocateur/pacote" "^9.6.3" - "@lerna/child-process" "3.16.5" - "@lerna/command" "3.21.0" - "@lerna/npm-conf" "3.16.0" - "@lerna/validation-error" "3.13.0" - camelcase "^5.0.0" - dedent "^0.7.0" - fs-extra "^8.1.0" - globby "^9.2.0" - init-package-json "^1.10.3" - npm-package-arg "^6.1.0" - p-reduce "^1.0.0" - pify "^4.0.1" - semver "^6.2.0" - slash "^2.0.0" - validate-npm-package-license "^3.0.3" - validate-npm-package-name "^3.0.0" - whatwg-url "^7.0.0" - -"@lerna/describe-ref@3.16.5": - version "3.16.5" - resolved "https://registry.yarnpkg.com/@lerna/describe-ref/-/describe-ref-3.16.5.tgz#a338c25aaed837d3dc70b8a72c447c5c66346ac0" - integrity sha512-c01+4gUF0saOOtDBzbLMFOTJDHTKbDFNErEY6q6i9QaXuzy9LNN62z+Hw4acAAZuJQhrVWncVathcmkkjvSVGw== - dependencies: - "@lerna/child-process" "3.16.5" - npmlog "^4.1.2" - -"@lerna/diff@3.21.0": - version "3.21.0" - resolved "https://registry.yarnpkg.com/@lerna/diff/-/diff-3.21.0.tgz#e6df0d8b9916167ff5a49fcb02ac06424280a68d" - integrity sha512-5viTR33QV3S7O+bjruo1SaR40m7F2aUHJaDAC7fL9Ca6xji+aw1KFkpCtVlISS0G8vikUREGMJh+c/VMSc8Usw== - dependencies: - "@lerna/child-process" "3.16.5" - "@lerna/command" "3.21.0" - "@lerna/validation-error" "3.13.0" - npmlog "^4.1.2" - -"@lerna/exec@3.21.0": - version "3.21.0" - resolved "https://registry.yarnpkg.com/@lerna/exec/-/exec-3.21.0.tgz#17f07533893cb918a17b41bcc566dc437016db26" - integrity sha512-iLvDBrIE6rpdd4GIKTY9mkXyhwsJ2RvQdB9ZU+/NhR3okXfqKc6py/24tV111jqpXTtZUW6HNydT4dMao2hi1Q== - dependencies: - "@lerna/child-process" "3.16.5" - "@lerna/command" "3.21.0" - "@lerna/filter-options" "3.20.0" - "@lerna/profiler" "3.20.0" - "@lerna/run-topologically" "3.18.5" - "@lerna/validation-error" "3.13.0" - p-map "^2.1.0" - -"@lerna/filter-options@3.20.0": - version "3.20.0" - resolved "https://registry.yarnpkg.com/@lerna/filter-options/-/filter-options-3.20.0.tgz#0f0f5d5a4783856eece4204708cc902cbc8af59b" - integrity sha512-bmcHtvxn7SIl/R9gpiNMVG7yjx7WyT0HSGw34YVZ9B+3xF/83N3r5Rgtjh4hheLZ+Q91Or0Jyu5O3Nr+AwZe2g== - dependencies: - "@lerna/collect-updates" "3.20.0" - "@lerna/filter-packages" "3.18.0" - dedent "^0.7.0" - figgy-pudding "^3.5.1" - npmlog "^4.1.2" - -"@lerna/filter-packages@3.18.0": - version "3.18.0" - resolved "https://registry.yarnpkg.com/@lerna/filter-packages/-/filter-packages-3.18.0.tgz#6a7a376d285208db03a82958cfb8172e179b4e70" - integrity sha512-6/0pMM04bCHNATIOkouuYmPg6KH3VkPCIgTfQmdkPJTullERyEQfNUKikrefjxo1vHOoCACDpy65JYyKiAbdwQ== - dependencies: - "@lerna/validation-error" "3.13.0" - multimatch "^3.0.0" - npmlog "^4.1.2" - -"@lerna/get-npm-exec-opts@3.13.0": - version "3.13.0" - resolved "https://registry.yarnpkg.com/@lerna/get-npm-exec-opts/-/get-npm-exec-opts-3.13.0.tgz#d1b552cb0088199fc3e7e126f914e39a08df9ea5" - integrity sha512-Y0xWL0rg3boVyJk6An/vurKzubyJKtrxYv2sj4bB8Mc5zZ3tqtv0ccbOkmkXKqbzvNNF7VeUt1OJ3DRgtC/QZw== - dependencies: - npmlog "^4.1.2" - -"@lerna/get-packed@3.16.0": - version "3.16.0" - resolved "https://registry.yarnpkg.com/@lerna/get-packed/-/get-packed-3.16.0.tgz#1b316b706dcee86c7baa55e50b087959447852ff" - integrity sha512-AjsFiaJzo1GCPnJUJZiTW6J1EihrPkc2y3nMu6m3uWFxoleklsSCyImumzVZJssxMi3CPpztj8LmADLedl9kXw== - dependencies: - fs-extra "^8.1.0" - ssri "^6.0.1" - tar "^4.4.8" - -"@lerna/github-client@3.22.0": - version "3.22.0" - resolved "https://registry.yarnpkg.com/@lerna/github-client/-/github-client-3.22.0.tgz#5d816aa4f76747ed736ae64ff962b8f15c354d95" - integrity sha512-O/GwPW+Gzr3Eb5bk+nTzTJ3uv+jh5jGho9BOqKlajXaOkMYGBELEAqV5+uARNGWZFvYAiF4PgqHb6aCUu7XdXg== - dependencies: - "@lerna/child-process" "3.16.5" - "@octokit/plugin-enterprise-rest" "^6.0.1" - "@octokit/rest" "^16.28.4" - git-url-parse "^11.1.2" - npmlog "^4.1.2" - -"@lerna/gitlab-client@3.15.0": - version "3.15.0" - resolved "https://registry.yarnpkg.com/@lerna/gitlab-client/-/gitlab-client-3.15.0.tgz#91f4ec8c697b5ac57f7f25bd50fe659d24aa96a6" - integrity sha512-OsBvRSejHXUBMgwWQqNoioB8sgzL/Pf1pOUhHKtkiMl6aAWjklaaq5HPMvTIsZPfS6DJ9L5OK2GGZuooP/5c8Q== - dependencies: - node-fetch "^2.5.0" - npmlog "^4.1.2" - whatwg-url "^7.0.0" - -"@lerna/global-options@3.13.0": - version "3.13.0" - resolved "https://registry.yarnpkg.com/@lerna/global-options/-/global-options-3.13.0.tgz#217662290db06ad9cf2c49d8e3100ee28eaebae1" - integrity sha512-SlZvh1gVRRzYLVluz9fryY1nJpZ0FHDGB66U9tFfvnnxmueckRQxLopn3tXj3NU1kc3QANT2I5BsQkOqZ4TEFQ== - -"@lerna/has-npm-version@3.16.5": - version "3.16.5" - resolved "https://registry.yarnpkg.com/@lerna/has-npm-version/-/has-npm-version-3.16.5.tgz#ab83956f211d8923ea6afe9b979b38cc73b15326" - integrity sha512-WL7LycR9bkftyqbYop5rEGJ9sRFIV55tSGmbN1HLrF9idwOCD7CLrT64t235t3t4O5gehDnwKI5h2U3oxTrF8Q== - dependencies: - "@lerna/child-process" "3.16.5" - semver "^6.2.0" - -"@lerna/import@3.22.0": - version "3.22.0" - resolved "https://registry.yarnpkg.com/@lerna/import/-/import-3.22.0.tgz#1a5f0394f38e23c4f642a123e5e1517e70d068d2" - integrity sha512-uWOlexasM5XR6tXi4YehODtH9Y3OZrFht3mGUFFT3OIl2s+V85xIGFfqFGMTipMPAGb2oF1UBLL48kR43hRsOg== - dependencies: - "@lerna/child-process" "3.16.5" - "@lerna/command" "3.21.0" - "@lerna/prompt" "3.18.5" - "@lerna/pulse-till-done" "3.13.0" - "@lerna/validation-error" "3.13.0" - dedent "^0.7.0" - fs-extra "^8.1.0" - p-map-series "^1.0.0" - -"@lerna/info@3.21.0": - version "3.21.0" - resolved "https://registry.yarnpkg.com/@lerna/info/-/info-3.21.0.tgz#76696b676fdb0f35d48c83c63c1e32bb5e37814f" - integrity sha512-0XDqGYVBgWxUquFaIptW2bYSIu6jOs1BtkvRTWDDhw4zyEdp6q4eaMvqdSap1CG+7wM5jeLCi6z94wS0AuiuwA== - dependencies: - "@lerna/command" "3.21.0" - "@lerna/output" "3.13.0" - envinfo "^7.3.1" - -"@lerna/init@3.21.0": - version "3.21.0" - resolved "https://registry.yarnpkg.com/@lerna/init/-/init-3.21.0.tgz#1e810934dc8bf4e5386c031041881d3b4096aa5c" - integrity sha512-6CM0z+EFUkFfurwdJCR+LQQF6MqHbYDCBPyhu/d086LRf58GtYZYj49J8mKG9ktayp/TOIxL/pKKjgLD8QBPOg== - dependencies: - "@lerna/child-process" "3.16.5" - "@lerna/command" "3.21.0" - fs-extra "^8.1.0" - p-map "^2.1.0" - write-json-file "^3.2.0" - -"@lerna/link@3.21.0": - version "3.21.0" - resolved "https://registry.yarnpkg.com/@lerna/link/-/link-3.21.0.tgz#8be68ff0ccee104b174b5bbd606302c2f06e9d9b" - integrity sha512-tGu9GxrX7Ivs+Wl3w1+jrLi1nQ36kNI32dcOssij6bg0oZ2M2MDEFI9UF2gmoypTaN9uO5TSsjCFS7aR79HbdQ== - dependencies: - "@lerna/command" "3.21.0" - "@lerna/package-graph" "3.18.5" - "@lerna/symlink-dependencies" "3.17.0" - p-map "^2.1.0" - slash "^2.0.0" - -"@lerna/list@3.21.0": - version "3.21.0" - resolved "https://registry.yarnpkg.com/@lerna/list/-/list-3.21.0.tgz#42f76fafa56dea13b691ec8cab13832691d61da2" - integrity sha512-KehRjE83B1VaAbRRkRy6jLX1Cin8ltsrQ7FHf2bhwhRHK0S54YuA6LOoBnY/NtA8bHDX/Z+G5sMY78X30NS9tg== - dependencies: - "@lerna/command" "3.21.0" - "@lerna/filter-options" "3.20.0" - "@lerna/listable" "3.18.5" - "@lerna/output" "3.13.0" - -"@lerna/listable@3.18.5": - version "3.18.5" - resolved "https://registry.yarnpkg.com/@lerna/listable/-/listable-3.18.5.tgz#e82798405b5ed8fc51843c8ef1e7a0e497388a1a" - integrity sha512-Sdr3pVyaEv5A7ZkGGYR7zN+tTl2iDcinryBPvtuv20VJrXBE8wYcOks1edBTcOWsPjCE/rMP4bo1pseyk3UTsg== - dependencies: - "@lerna/query-graph" "3.18.5" - chalk "^2.3.1" - columnify "^1.5.4" - -"@lerna/log-packed@3.16.0": - version "3.16.0" - resolved "https://registry.yarnpkg.com/@lerna/log-packed/-/log-packed-3.16.0.tgz#f83991041ee77b2495634e14470b42259fd2bc16" - integrity sha512-Fp+McSNBV/P2mnLUYTaSlG8GSmpXM7krKWcllqElGxvAqv6chk2K3c2k80MeVB4WvJ9tRjUUf+i7HUTiQ9/ckQ== - dependencies: - byte-size "^5.0.1" - columnify "^1.5.4" - has-unicode "^2.0.1" - npmlog "^4.1.2" - -"@lerna/npm-conf@3.16.0": - version "3.16.0" - resolved "https://registry.yarnpkg.com/@lerna/npm-conf/-/npm-conf-3.16.0.tgz#1c10a89ae2f6c2ee96962557738685300d376827" - integrity sha512-HbO3DUrTkCAn2iQ9+FF/eisDpWY5POQAOF1m7q//CZjdC2HSW3UYbKEGsSisFxSfaF9Z4jtrV+F/wX6qWs3CuA== - dependencies: - config-chain "^1.1.11" - pify "^4.0.1" - -"@lerna/npm-dist-tag@3.18.5": - version "3.18.5" - resolved "https://registry.yarnpkg.com/@lerna/npm-dist-tag/-/npm-dist-tag-3.18.5.tgz#9ef9abb7c104077b31f6fab22cc73b314d54ac55" - integrity sha512-xw0HDoIG6HreVsJND9/dGls1c+lf6vhu7yJoo56Sz5bvncTloYGLUppIfDHQr4ZvmPCK8rsh0euCVh2giPxzKQ== - dependencies: - "@evocateur/npm-registry-fetch" "^4.0.0" - "@lerna/otplease" "3.18.5" - figgy-pudding "^3.5.1" - npm-package-arg "^6.1.0" - npmlog "^4.1.2" - -"@lerna/npm-install@3.16.5": - version "3.16.5" - resolved "https://registry.yarnpkg.com/@lerna/npm-install/-/npm-install-3.16.5.tgz#d6bfdc16f81285da66515ae47924d6e278d637d3" - integrity sha512-hfiKk8Eku6rB9uApqsalHHTHY+mOrrHeWEs+gtg7+meQZMTS3kzv4oVp5cBZigndQr3knTLjwthT/FX4KvseFg== - dependencies: - "@lerna/child-process" "3.16.5" - "@lerna/get-npm-exec-opts" "3.13.0" - fs-extra "^8.1.0" - npm-package-arg "^6.1.0" - npmlog "^4.1.2" - signal-exit "^3.0.2" - write-pkg "^3.1.0" - -"@lerna/npm-publish@3.18.5": - version "3.18.5" - resolved "https://registry.yarnpkg.com/@lerna/npm-publish/-/npm-publish-3.18.5.tgz#240e4039959fd9816b49c5b07421e11b5cb000af" - integrity sha512-3etLT9+2L8JAx5F8uf7qp6iAtOLSMj+ZYWY6oUgozPi/uLqU0/gsMsEXh3F0+YVW33q0M61RpduBoAlOOZnaTg== - dependencies: - "@evocateur/libnpmpublish" "^1.2.2" - "@lerna/otplease" "3.18.5" - "@lerna/run-lifecycle" "3.16.2" - figgy-pudding "^3.5.1" - fs-extra "^8.1.0" - npm-package-arg "^6.1.0" - npmlog "^4.1.2" - pify "^4.0.1" - read-package-json "^2.0.13" - -"@lerna/npm-run-script@3.16.5": - version "3.16.5" - resolved "https://registry.yarnpkg.com/@lerna/npm-run-script/-/npm-run-script-3.16.5.tgz#9c2ec82453a26c0b46edc0bb7c15816c821f5c15" - integrity sha512-1asRi+LjmVn3pMjEdpqKJZFT/3ZNpb+VVeJMwrJaV/3DivdNg7XlPK9LTrORuKU4PSvhdEZvJmSlxCKyDpiXsQ== - dependencies: - "@lerna/child-process" "3.16.5" - "@lerna/get-npm-exec-opts" "3.13.0" - npmlog "^4.1.2" - -"@lerna/otplease@3.18.5": - version "3.18.5" - resolved "https://registry.yarnpkg.com/@lerna/otplease/-/otplease-3.18.5.tgz#b77b8e760b40abad9f7658d988f3ea77d4fd0231" - integrity sha512-S+SldXAbcXTEDhzdxYLU0ZBKuYyURP/ND2/dK6IpKgLxQYh/z4ScljPDMyKymmEvgiEJmBsPZAAPfmNPEzxjog== - dependencies: - "@lerna/prompt" "3.18.5" - figgy-pudding "^3.5.1" - -"@lerna/output@3.13.0": - version "3.13.0" - resolved "https://registry.yarnpkg.com/@lerna/output/-/output-3.13.0.tgz#3ded7cc908b27a9872228a630d950aedae7a4989" - integrity sha512-7ZnQ9nvUDu/WD+bNsypmPG5MwZBwu86iRoiW6C1WBuXXDxM5cnIAC1m2WxHeFnjyMrYlRXM9PzOQ9VDD+C15Rg== - dependencies: - npmlog "^4.1.2" - -"@lerna/pack-directory@3.16.4": - version "3.16.4" - resolved "https://registry.yarnpkg.com/@lerna/pack-directory/-/pack-directory-3.16.4.tgz#3eae5f91bdf5acfe0384510ed53faddc4c074693" - integrity sha512-uxSF0HZeGyKaaVHz5FroDY9A5NDDiCibrbYR6+khmrhZtY0Bgn6hWq8Gswl9iIlymA+VzCbshWIMX4o2O8C8ng== - dependencies: - "@lerna/get-packed" "3.16.0" - "@lerna/package" "3.16.0" - "@lerna/run-lifecycle" "3.16.2" - figgy-pudding "^3.5.1" - npm-packlist "^1.4.4" - npmlog "^4.1.2" - tar "^4.4.10" - temp-write "^3.4.0" - -"@lerna/package-graph@3.18.5": - version "3.18.5" - resolved "https://registry.yarnpkg.com/@lerna/package-graph/-/package-graph-3.18.5.tgz#c740e2ea3578d059e551633e950690831b941f6b" - integrity sha512-8QDrR9T+dBegjeLr+n9WZTVxUYUhIUjUgZ0gvNxUBN8S1WB9r6H5Yk56/MVaB64tA3oGAN9IIxX6w0WvTfFudA== - dependencies: - "@lerna/prerelease-id-from-version" "3.16.0" - "@lerna/validation-error" "3.13.0" - npm-package-arg "^6.1.0" - npmlog "^4.1.2" - semver "^6.2.0" - -"@lerna/package@3.16.0": - version "3.16.0" - resolved "https://registry.yarnpkg.com/@lerna/package/-/package-3.16.0.tgz#7e0a46e4697ed8b8a9c14d59c7f890e0d38ba13c" - integrity sha512-2lHBWpaxcBoiNVbtyLtPUuTYEaB/Z+eEqRS9duxpZs6D+mTTZMNy6/5vpEVSCBmzvdYpyqhqaYjjSLvjjr5Riw== - dependencies: - load-json-file "^5.3.0" - npm-package-arg "^6.1.0" - write-pkg "^3.1.0" - -"@lerna/prerelease-id-from-version@3.16.0": - version "3.16.0" - resolved "https://registry.yarnpkg.com/@lerna/prerelease-id-from-version/-/prerelease-id-from-version-3.16.0.tgz#b24bfa789f5e1baab914d7b08baae9b7bd7d83a1" - integrity sha512-qZyeUyrE59uOK8rKdGn7jQz+9uOpAaF/3hbslJVFL1NqF9ELDTqjCPXivuejMX/lN4OgD6BugTO4cR7UTq/sZA== - dependencies: - semver "^6.2.0" - -"@lerna/profiler@3.20.0": - version "3.20.0" - resolved "https://registry.yarnpkg.com/@lerna/profiler/-/profiler-3.20.0.tgz#0f6dc236f4ea8f9ea5f358c6703305a4f32ad051" - integrity sha512-bh8hKxAlm6yu8WEOvbLENm42i2v9SsR4WbrCWSbsmOElx3foRnMlYk7NkGECa+U5c3K4C6GeBbwgqs54PP7Ljg== - dependencies: - figgy-pudding "^3.5.1" - fs-extra "^8.1.0" - npmlog "^4.1.2" - upath "^1.2.0" - -"@lerna/project@3.21.0": - version "3.21.0" - resolved "https://registry.yarnpkg.com/@lerna/project/-/project-3.21.0.tgz#5d784d2d10c561a00f20320bcdb040997c10502d" - integrity sha512-xT1mrpET2BF11CY32uypV2GPtPVm6Hgtha7D81GQP9iAitk9EccrdNjYGt5UBYASl4CIDXBRxwmTTVGfrCx82A== - dependencies: - "@lerna/package" "3.16.0" - "@lerna/validation-error" "3.13.0" - cosmiconfig "^5.1.0" - dedent "^0.7.0" - dot-prop "^4.2.0" - glob-parent "^5.0.0" - globby "^9.2.0" - load-json-file "^5.3.0" - npmlog "^4.1.2" - p-map "^2.1.0" - resolve-from "^4.0.0" - write-json-file "^3.2.0" - -"@lerna/prompt@3.18.5": - version "3.18.5" - resolved "https://registry.yarnpkg.com/@lerna/prompt/-/prompt-3.18.5.tgz#628cd545f225887d060491ab95df899cfc5218a1" - integrity sha512-rkKj4nm1twSbBEb69+Em/2jAERK8htUuV8/xSjN0NPC+6UjzAwY52/x9n5cfmpa9lyKf/uItp7chCI7eDmNTKQ== - dependencies: - inquirer "^6.2.0" - npmlog "^4.1.2" - -"@lerna/publish@3.22.1": - version "3.22.1" - resolved "https://registry.yarnpkg.com/@lerna/publish/-/publish-3.22.1.tgz#b4f7ce3fba1e9afb28be4a1f3d88222269ba9519" - integrity sha512-PG9CM9HUYDreb1FbJwFg90TCBQooGjj+n/pb3gw/eH5mEDq0p8wKdLFe0qkiqUkm/Ub5C8DbVFertIo0Vd0zcw== - dependencies: - "@evocateur/libnpmaccess" "^3.1.2" - "@evocateur/npm-registry-fetch" "^4.0.0" - "@evocateur/pacote" "^9.6.3" - "@lerna/check-working-tree" "3.16.5" - "@lerna/child-process" "3.16.5" - "@lerna/collect-updates" "3.20.0" - "@lerna/command" "3.21.0" - "@lerna/describe-ref" "3.16.5" - "@lerna/log-packed" "3.16.0" - "@lerna/npm-conf" "3.16.0" - "@lerna/npm-dist-tag" "3.18.5" - "@lerna/npm-publish" "3.18.5" - "@lerna/otplease" "3.18.5" - "@lerna/output" "3.13.0" - "@lerna/pack-directory" "3.16.4" - "@lerna/prerelease-id-from-version" "3.16.0" - "@lerna/prompt" "3.18.5" - "@lerna/pulse-till-done" "3.13.0" - "@lerna/run-lifecycle" "3.16.2" - "@lerna/run-topologically" "3.18.5" - "@lerna/validation-error" "3.13.0" - "@lerna/version" "3.22.1" - figgy-pudding "^3.5.1" - fs-extra "^8.1.0" - npm-package-arg "^6.1.0" - npmlog "^4.1.2" - p-finally "^1.0.0" - p-map "^2.1.0" - p-pipe "^1.2.0" - semver "^6.2.0" - -"@lerna/pulse-till-done@3.13.0": - version "3.13.0" - resolved "https://registry.yarnpkg.com/@lerna/pulse-till-done/-/pulse-till-done-3.13.0.tgz#c8e9ce5bafaf10d930a67d7ed0ccb5d958fe0110" - integrity sha512-1SOHpy7ZNTPulzIbargrgaJX387csN7cF1cLOGZiJQA6VqnS5eWs2CIrG8i8wmaUavj2QlQ5oEbRMVVXSsGrzA== - dependencies: - npmlog "^4.1.2" - -"@lerna/query-graph@3.18.5": - version "3.18.5" - resolved "https://registry.yarnpkg.com/@lerna/query-graph/-/query-graph-3.18.5.tgz#df4830bb5155273003bf35e8dda1c32d0927bd86" - integrity sha512-50Lf4uuMpMWvJ306be3oQDHrWV42nai9gbIVByPBYJuVW8dT8O8pA3EzitNYBUdLL9/qEVbrR0ry1HD7EXwtRA== - dependencies: - "@lerna/package-graph" "3.18.5" - figgy-pudding "^3.5.1" - -"@lerna/resolve-symlink@3.16.0": - version "3.16.0" - resolved "https://registry.yarnpkg.com/@lerna/resolve-symlink/-/resolve-symlink-3.16.0.tgz#37fc7095fabdbcf317c26eb74e0d0bde8efd2386" - integrity sha512-Ibj5e7njVHNJ/NOqT4HlEgPFPtPLWsO7iu59AM5bJDcAJcR96mLZ7KGVIsS2tvaO7akMEJvt2P+ErwCdloG3jQ== - dependencies: - fs-extra "^8.1.0" - npmlog "^4.1.2" - read-cmd-shim "^1.0.1" - -"@lerna/rimraf-dir@3.16.5": - version "3.16.5" - resolved "https://registry.yarnpkg.com/@lerna/rimraf-dir/-/rimraf-dir-3.16.5.tgz#04316ab5ffd2909657aaf388ea502cb8c2f20a09" - integrity sha512-bQlKmO0pXUsXoF8lOLknhyQjOZsCc0bosQDoX4lujBXSWxHVTg1VxURtWf2lUjz/ACsJVDfvHZbDm8kyBk5okA== - dependencies: - "@lerna/child-process" "3.16.5" - npmlog "^4.1.2" - path-exists "^3.0.0" - rimraf "^2.6.2" - -"@lerna/run-lifecycle@3.16.2": - version "3.16.2" - resolved "https://registry.yarnpkg.com/@lerna/run-lifecycle/-/run-lifecycle-3.16.2.tgz#67b288f8ea964db9ea4fb1fbc7715d5bbb0bce00" - integrity sha512-RqFoznE8rDpyyF0rOJy3+KjZCeTkO8y/OB9orPauR7G2xQ7PTdCpgo7EO6ZNdz3Al+k1BydClZz/j78gNCmL2A== - dependencies: - "@lerna/npm-conf" "3.16.0" - figgy-pudding "^3.5.1" - npm-lifecycle "^3.1.2" - npmlog "^4.1.2" - -"@lerna/run-topologically@3.18.5": - version "3.18.5" - resolved "https://registry.yarnpkg.com/@lerna/run-topologically/-/run-topologically-3.18.5.tgz#3cd639da20e967d7672cb88db0f756b92f2fdfc3" - integrity sha512-6N1I+6wf4hLOnPW+XDZqwufyIQ6gqoPfHZFkfWlvTQ+Ue7CuF8qIVQ1Eddw5HKQMkxqN10thKOFfq/9NQZ4NUg== - dependencies: - "@lerna/query-graph" "3.18.5" - figgy-pudding "^3.5.1" - p-queue "^4.0.0" - -"@lerna/run@3.21.0": - version "3.21.0" - resolved "https://registry.yarnpkg.com/@lerna/run/-/run-3.21.0.tgz#2a35ec84979e4d6e42474fe148d32e5de1cac891" - integrity sha512-fJF68rT3veh+hkToFsBmUJ9MHc9yGXA7LSDvhziAojzOb0AI/jBDp6cEcDQyJ7dbnplba2Lj02IH61QUf9oW0Q== - dependencies: - "@lerna/command" "3.21.0" - "@lerna/filter-options" "3.20.0" - "@lerna/npm-run-script" "3.16.5" - "@lerna/output" "3.13.0" - "@lerna/profiler" "3.20.0" - "@lerna/run-topologically" "3.18.5" - "@lerna/timer" "3.13.0" - "@lerna/validation-error" "3.13.0" - p-map "^2.1.0" - -"@lerna/symlink-binary@3.17.0": - version "3.17.0" - resolved "https://registry.yarnpkg.com/@lerna/symlink-binary/-/symlink-binary-3.17.0.tgz#8f8031b309863814883d3f009877f82e38aef45a" - integrity sha512-RLpy9UY6+3nT5J+5jkM5MZyMmjNHxZIZvXLV+Q3MXrf7Eaa1hNqyynyj4RO95fxbS+EZc4XVSk25DGFQbcRNSQ== - dependencies: - "@lerna/create-symlink" "3.16.2" - "@lerna/package" "3.16.0" - fs-extra "^8.1.0" - p-map "^2.1.0" - -"@lerna/symlink-dependencies@3.17.0": - version "3.17.0" - resolved "https://registry.yarnpkg.com/@lerna/symlink-dependencies/-/symlink-dependencies-3.17.0.tgz#48d6360e985865a0e56cd8b51b308a526308784a" - integrity sha512-KmjU5YT1bpt6coOmdFueTJ7DFJL4H1w5eF8yAQ2zsGNTtZ+i5SGFBWpb9AQaw168dydc3s4eu0W0Sirda+F59Q== - dependencies: - "@lerna/create-symlink" "3.16.2" - "@lerna/resolve-symlink" "3.16.0" - "@lerna/symlink-binary" "3.17.0" - fs-extra "^8.1.0" - p-finally "^1.0.0" - p-map "^2.1.0" - p-map-series "^1.0.0" - -"@lerna/timer@3.13.0": - version "3.13.0" - resolved "https://registry.yarnpkg.com/@lerna/timer/-/timer-3.13.0.tgz#bcd0904551db16e08364d6c18e5e2160fc870781" - integrity sha512-RHWrDl8U4XNPqY5MQHkToWS9jHPnkLZEt5VD+uunCKTfzlxGnRCr3/zVr8VGy/uENMYpVP3wJa4RKGY6M0vkRw== - -"@lerna/validation-error@3.13.0": - version "3.13.0" - resolved "https://registry.yarnpkg.com/@lerna/validation-error/-/validation-error-3.13.0.tgz#c86b8f07c5ab9539f775bd8a54976e926f3759c3" - integrity sha512-SiJP75nwB8GhgwLKQfdkSnDufAaCbkZWJqEDlKOUPUvVOplRGnfL+BPQZH5nvq2BYSRXsksXWZ4UHVnQZI/HYA== - dependencies: - npmlog "^4.1.2" - -"@lerna/version@3.22.1": - version "3.22.1" - resolved "https://registry.yarnpkg.com/@lerna/version/-/version-3.22.1.tgz#9805a9247a47ee62d6b81bd9fa5fb728b24b59e2" - integrity sha512-PSGt/K1hVqreAFoi3zjD0VEDupQ2WZVlVIwesrE5GbrL2BjXowjCsTDPqblahDUPy0hp6h7E2kG855yLTp62+g== - dependencies: - "@lerna/check-working-tree" "3.16.5" - "@lerna/child-process" "3.16.5" - "@lerna/collect-updates" "3.20.0" - "@lerna/command" "3.21.0" - "@lerna/conventional-commits" "3.22.0" - "@lerna/github-client" "3.22.0" - "@lerna/gitlab-client" "3.15.0" - "@lerna/output" "3.13.0" - "@lerna/prerelease-id-from-version" "3.16.0" - "@lerna/prompt" "3.18.5" - "@lerna/run-lifecycle" "3.16.2" - "@lerna/run-topologically" "3.18.5" - "@lerna/validation-error" "3.13.0" - chalk "^2.3.1" - dedent "^0.7.0" - load-json-file "^5.3.0" - minimatch "^3.0.4" - npmlog "^4.1.2" - p-map "^2.1.0" - p-pipe "^1.2.0" - p-reduce "^1.0.0" - p-waterfall "^1.0.0" - semver "^6.2.0" - slash "^2.0.0" - temp-write "^3.4.0" - write-json-file "^3.2.0" - -"@lerna/write-log-file@3.13.0": - version "3.13.0" - resolved "https://registry.yarnpkg.com/@lerna/write-log-file/-/write-log-file-3.13.0.tgz#b78d9e4cfc1349a8be64d91324c4c8199e822a26" - integrity sha512-RibeMnDPvlL8bFYW5C8cs4mbI3AHfQef73tnJCQ/SgrXZHehmHnsyWUiE7qDQCAo+B1RfTapvSyFF69iPj326A== - dependencies: - npmlog "^4.1.2" - write-file-atomic "^2.3.0" - -"@material-ui/core@4.11.0": - version "4.11.0" - resolved "https://registry.yarnpkg.com/@material-ui/core/-/core-4.11.0.tgz#b69b26e4553c9e53f2bfaf1053e216a0af9be15a" - integrity sha512-bYo9uIub8wGhZySHqLQ833zi4ZML+XCBE1XwJ8EuUVSpTWWG57Pm+YugQToJNFsEyiKFhPh8DPD0bgupz8n01g== - dependencies: - "@babel/runtime" "^7.4.4" - "@material-ui/styles" "^4.10.0" - "@material-ui/system" "^4.9.14" - "@material-ui/types" "^5.1.0" - "@material-ui/utils" "^4.10.2" - "@types/react-transition-group" "^4.2.0" - clsx "^1.0.4" - hoist-non-react-statics "^3.3.2" - popper.js "1.16.1-lts" - prop-types "^15.7.2" - react-is "^16.8.0" - react-transition-group "^4.4.0" - -"@material-ui/core@4.9.13": - version "4.9.13" - resolved "https://registry.yarnpkg.com/@material-ui/core/-/core-4.9.13.tgz#024962bcdda05139e1bad17a1815bf4088702b15" - integrity sha512-GEXNwUr+laZ0N+F1efmHB64Fyg+uQIRXLqbSejg3ebSXgLYNpIjnMOPRfWdu4rICq0dAIgvvNXGkKDMcf3AMpA== - dependencies: - "@babel/runtime" "^7.4.4" - "@material-ui/react-transition-group" "^4.3.0" - "@material-ui/styles" "^4.9.13" - "@material-ui/system" "^4.9.13" - "@material-ui/types" "^5.0.1" - "@material-ui/utils" "^4.9.12" - "@types/react-transition-group" "^4.2.0" - clsx "^1.0.4" - hoist-non-react-statics "^3.3.2" - popper.js "^1.16.1-lts" - prop-types "^15.7.2" - react-is "^16.8.0" - react-transition-group "^4.3.0" - -"@material-ui/icons@4.9.1": - version "4.9.1" - resolved "https://registry.yarnpkg.com/@material-ui/icons/-/icons-4.9.1.tgz#fdeadf8cb3d89208945b33dbc50c7c616d0bd665" - integrity sha512-GBitL3oBWO0hzBhvA9KxqcowRUsA0qzwKkURyC8nppnC3fw54KPKZ+d4V1Eeg/UnDRSzDaI9nGCdel/eh9AQMg== - dependencies: - "@babel/runtime" "^7.4.4" - -"@material-ui/lab@4.0.0-alpha.50": - version "4.0.0-alpha.50" - resolved "https://registry.yarnpkg.com/@material-ui/lab/-/lab-4.0.0-alpha.50.tgz#a2d6c6c1b6cb53c64b5e4f2ae1e604ce7ecc633a" - integrity sha512-32ICWUeXmbwYfgDoaV7M9t8I7+3VkVdxM1/7+oxQIRQ9KRlXNZ5Qept46ofyMOKRwx6SwXCYKwO7yynLsnoL4Q== - dependencies: - "@babel/runtime" "^7.4.4" - "@material-ui/utils" "^4.9.6" - clsx "^1.0.4" - prop-types "^15.7.2" - react-is "^16.8.0" - -"@material-ui/react-transition-group@^4.3.0": - version "4.3.0" - resolved "https://registry.yarnpkg.com/@material-ui/react-transition-group/-/react-transition-group-4.3.0.tgz#92529142addb5cc179dbf42d246c7e3fe4d6104b" - integrity sha512-CwQ0aXrlUynUTY6sh3UvKuvye1o92en20VGAs6TORnSxUYeRmkX8YeTUN3lAkGiBX1z222FxLFO36WWh6q73rQ== - dependencies: - "@babel/runtime" "^7.5.5" - dom-helpers "^5.0.1" - loose-envify "^1.4.0" - prop-types "^15.6.2" - -"@material-ui/styles@4.10.0", "@material-ui/styles@^4.10.0", "@material-ui/styles@^4.9.13": - version "4.10.0" - resolved "https://registry.yarnpkg.com/@material-ui/styles/-/styles-4.10.0.tgz#2406dc23aa358217aa8cc772e6237bd7f0544071" - integrity sha512-XPwiVTpd3rlnbfrgtEJ1eJJdFCXZkHxy8TrdieaTvwxNYj42VnnCyFzxYeNW9Lhj4V1oD8YtQ6S5Gie7bZDf7Q== - dependencies: - "@babel/runtime" "^7.4.4" - "@emotion/hash" "^0.8.0" - "@material-ui/types" "^5.1.0" - "@material-ui/utils" "^4.9.6" - clsx "^1.0.4" - csstype "^2.5.2" - hoist-non-react-statics "^3.3.2" - jss "^10.0.3" - jss-plugin-camel-case "^10.0.3" - jss-plugin-default-unit "^10.0.3" - jss-plugin-global "^10.0.3" - jss-plugin-nested "^10.0.3" - jss-plugin-props-sort "^10.0.3" - jss-plugin-rule-value-function "^10.0.3" - jss-plugin-vendor-prefixer "^10.0.3" - prop-types "^15.7.2" - -"@material-ui/styles@4.9.13": - version "4.9.13" - resolved "https://registry.yarnpkg.com/@material-ui/styles/-/styles-4.9.13.tgz#08b3976bdd21c38bc076693d95834f97539f3b15" - integrity sha512-lWlXJanBdHQ18jW/yphedRokHcvZD1GdGzUF/wQxKDsHwDDfO45ZkAxuSBI202dG+r1Ph483Z3pFykO2obeSRA== - dependencies: - "@babel/runtime" "^7.4.4" - "@emotion/hash" "^0.8.0" - "@material-ui/types" "^5.0.1" - "@material-ui/utils" "^4.9.6" - clsx "^1.0.4" - csstype "^2.5.2" - hoist-non-react-statics "^3.3.2" - jss "^10.0.3" - jss-plugin-camel-case "^10.0.3" - jss-plugin-default-unit "^10.0.3" - jss-plugin-global "^10.0.3" - jss-plugin-nested "^10.0.3" - jss-plugin-props-sort "^10.0.3" - jss-plugin-rule-value-function "^10.0.3" - jss-plugin-vendor-prefixer "^10.0.3" - prop-types "^15.7.2" - -"@material-ui/system@^4.9.13", "@material-ui/system@^4.9.14": - version "4.9.14" - resolved "https://registry.yarnpkg.com/@material-ui/system/-/system-4.9.14.tgz#4b00c48b569340cefb2036d0596b93ac6c587a5f" - integrity sha512-oQbaqfSnNlEkXEziDcJDDIy8pbvwUmZXWNqlmIwDqr/ZdCK8FuV3f4nxikUh7hvClKV2gnQ9djh5CZFTHkZj3w== - dependencies: - "@babel/runtime" "^7.4.4" - "@material-ui/utils" "^4.9.6" - csstype "^2.5.2" - prop-types "^15.7.2" - -"@material-ui/types@^5.0.1", "@material-ui/types@^5.1.0": - version "5.1.0" - resolved "https://registry.yarnpkg.com/@material-ui/types/-/types-5.1.0.tgz#efa1c7a0b0eaa4c7c87ac0390445f0f88b0d88f2" - integrity sha512-7cqRjrY50b8QzRSYyhSpx4WRw2YuO0KKIGQEVk5J8uoz2BanawykgZGoWEqKm7pVIbzFDN0SpPcVV4IhOFkl8A== - -"@material-ui/utils@^4.10.2", "@material-ui/utils@^4.9.12", "@material-ui/utils@^4.9.6": - version "4.10.2" - resolved "https://registry.yarnpkg.com/@material-ui/utils/-/utils-4.10.2.tgz#3fd5470ca61b7341f1e0468ac8f29a70bf6df321" - integrity sha512-eg29v74P7W5r6a4tWWDAAfZldXIzfyO1am2fIsC39hdUUHm/33k6pGOKPbgDjg/U/4ifmgAePy/1OjkKN6rFRw== - dependencies: - "@babel/runtime" "^7.4.4" - prop-types "^15.7.2" - react-is "^16.8.0" - -"@mrmlnc/readdir-enhanced@^2.2.1": - version "2.2.1" - resolved "https://registry.yarnpkg.com/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz#524af240d1a360527b730475ecfa1344aa540dde" - integrity sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g== - dependencies: - call-me-maybe "^1.0.1" - glob-to-regexp "^0.3.0" - -"@nodelib/fs.scandir@2.1.3": - version "2.1.3" - resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz#3a582bdb53804c6ba6d146579c46e52130cf4a3b" - integrity sha512-eGmwYQn3gxo4r7jdQnkrrN6bY478C3P+a/y72IJukF8LjB6ZHeB3c+Ehacj3sYeSmUXGlnA67/PmbM9CVwL7Dw== - dependencies: - "@nodelib/fs.stat" "2.0.3" - run-parallel "^1.1.9" - -"@nodelib/fs.stat@2.0.3", "@nodelib/fs.stat@^2.0.2": - version "2.0.3" - resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.3.tgz#34dc5f4cabbc720f4e60f75a747e7ecd6c175bd3" - integrity sha512-bQBFruR2TAwoevBEd/NWMoAAtNGzTRgdrqnYCc7dhzfoNvqPzLyqlEQnzZ3kVnNrSp25iyxE00/3h2fqGAGArA== - -"@nodelib/fs.stat@^1.1.2": - version "1.1.3" - resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz#2b5a3ab3f918cca48a8c754c08168e3f03eba61b" - integrity sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw== - -"@nodelib/fs.walk@^1.2.3": - version "1.2.4" - resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.4.tgz#011b9202a70a6366e436ca5c065844528ab04976" - integrity sha512-1V9XOY4rDW0rehzbrcqAmHnz8e7SKvX27gh8Gt2WgB0+pdzdiLV83p72kZPU+jvMbS1qU5mauP2iOvO8rhmurQ== - dependencies: - "@nodelib/fs.scandir" "2.1.3" - fastq "^1.6.0" - -"@octokit/auth-token@^2.4.0": - version "2.4.2" - resolved "https://registry.yarnpkg.com/@octokit/auth-token/-/auth-token-2.4.2.tgz#10d0ae979b100fa6b72fa0e8e63e27e6d0dbff8a" - integrity sha512-jE/lE/IKIz2v1+/P0u4fJqv0kYwXOTujKemJMFr6FeopsxlIK3+wKDCJGnysg81XID5TgZQbIfuJ5J0lnTiuyQ== - dependencies: - "@octokit/types" "^5.0.0" - -"@octokit/endpoint@^6.0.1": - version "6.0.3" - resolved "https://registry.yarnpkg.com/@octokit/endpoint/-/endpoint-6.0.3.tgz#dd09b599662d7e1b66374a177ab620d8cdf73487" - integrity sha512-Y900+r0gIz+cWp6ytnkibbD95ucEzDSKzlEnaWS52hbCDNcCJYO5mRmWW7HRAnDc7am+N/5Lnd8MppSaTYx1Yg== - dependencies: - "@octokit/types" "^5.0.0" - is-plain-object "^3.0.0" - universal-user-agent "^5.0.0" - -"@octokit/plugin-enterprise-rest@^6.0.1": - version "6.0.1" - resolved "https://registry.yarnpkg.com/@octokit/plugin-enterprise-rest/-/plugin-enterprise-rest-6.0.1.tgz#e07896739618dab8da7d4077c658003775f95437" - integrity sha512-93uGjlhUD+iNg1iWhUENAtJata6w5nE+V4urXOAlIXdco6xNZtUSfYY8dzp3Udy74aqO/B5UZL80x/YMa5PKRw== - -"@octokit/plugin-paginate-rest@^1.1.1": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-1.1.2.tgz#004170acf8c2be535aba26727867d692f7b488fc" - integrity sha512-jbsSoi5Q1pj63sC16XIUboklNw+8tL9VOnJsWycWYR78TKss5PVpIPb1TUUcMQ+bBh7cY579cVAWmf5qG+dw+Q== - dependencies: - "@octokit/types" "^2.0.1" - -"@octokit/plugin-request-log@^1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@octokit/plugin-request-log/-/plugin-request-log-1.0.0.tgz#eef87a431300f6148c39a7f75f8cfeb218b2547e" - integrity sha512-ywoxP68aOT3zHCLgWZgwUJatiENeHE7xJzYjfz8WI0goynp96wETBF+d95b8g/uL4QmS6owPVlaxiz3wyMAzcw== - -"@octokit/plugin-rest-endpoint-methods@2.4.0": - version "2.4.0" - resolved "https://registry.yarnpkg.com/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-2.4.0.tgz#3288ecf5481f68c494dd0602fc15407a59faf61e" - integrity sha512-EZi/AWhtkdfAYi01obpX0DF7U6b1VRr30QNQ5xSFPITMdLSfhcBqjamE3F+sKcxPbD7eZuMHu3Qkk2V+JGxBDQ== - dependencies: - "@octokit/types" "^2.0.1" - deprecation "^2.3.1" - -"@octokit/request-error@^1.0.2": - version "1.2.1" - resolved "https://registry.yarnpkg.com/@octokit/request-error/-/request-error-1.2.1.tgz#ede0714c773f32347576c25649dc013ae6b31801" - integrity sha512-+6yDyk1EES6WK+l3viRDElw96MvwfJxCt45GvmjDUKWjYIb3PJZQkq3i46TwGwoPD4h8NmTrENmtyA1FwbmhRA== - dependencies: - "@octokit/types" "^2.0.0" - deprecation "^2.0.0" - once "^1.4.0" - -"@octokit/request-error@^2.0.0": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@octokit/request-error/-/request-error-2.0.1.tgz#49bd71e811daffd5bdd06ef514ca47b5039682d1" - integrity sha512-5lqBDJ9/TOehK82VvomQ6zFiZjPeSom8fLkFVLuYL3sKiIb5RB8iN/lenLkY7oBmyQcGP7FBMGiIZTO8jufaRQ== - dependencies: - "@octokit/types" "^4.0.1" - deprecation "^2.0.0" - once "^1.4.0" - -"@octokit/request@^5.2.0": - version "5.4.5" - resolved "https://registry.yarnpkg.com/@octokit/request/-/request-5.4.5.tgz#8df65bd812047521f7e9db6ff118c06ba84ac10b" - integrity sha512-atAs5GAGbZedvJXXdjtKljin+e2SltEs48B3naJjqWupYl2IUBbB/CJisyjbNHcKpHzb3E+OYEZ46G8eakXgQg== - dependencies: - "@octokit/endpoint" "^6.0.1" - "@octokit/request-error" "^2.0.0" - "@octokit/types" "^5.0.0" - deprecation "^2.0.0" - is-plain-object "^3.0.0" - node-fetch "^2.3.0" - once "^1.4.0" - universal-user-agent "^5.0.0" - -"@octokit/rest@^16.28.4": - version "16.43.1" - resolved "https://registry.yarnpkg.com/@octokit/rest/-/rest-16.43.1.tgz#3b11e7d1b1ac2bbeeb23b08a17df0b20947eda6b" - integrity sha512-gfFKwRT/wFxq5qlNjnW2dh+qh74XgTQ2B179UX5K1HYCluioWj8Ndbgqw2PVqa1NnVJkGHp2ovMpVn/DImlmkw== - dependencies: - "@octokit/auth-token" "^2.4.0" - "@octokit/plugin-paginate-rest" "^1.1.1" - "@octokit/plugin-request-log" "^1.0.0" - "@octokit/plugin-rest-endpoint-methods" "2.4.0" - "@octokit/request" "^5.2.0" - "@octokit/request-error" "^1.0.2" - atob-lite "^2.0.0" - before-after-hook "^2.0.0" - btoa-lite "^1.0.0" - deprecation "^2.0.0" - lodash.get "^4.4.2" - lodash.set "^4.3.2" - lodash.uniq "^4.5.0" - octokit-pagination-methods "^1.1.0" - once "^1.4.0" - universal-user-agent "^4.0.0" - -"@octokit/types@^2.0.0", "@octokit/types@^2.0.1": - version "2.16.2" - resolved "https://registry.yarnpkg.com/@octokit/types/-/types-2.16.2.tgz#4c5f8da3c6fecf3da1811aef678fda03edac35d2" - integrity sha512-O75k56TYvJ8WpAakWwYRN8Bgu60KrmX0z1KqFp1kNiFNkgW+JW+9EBKZ+S33PU6SLvbihqd+3drvPxKK68Ee8Q== - dependencies: - "@types/node" ">= 8" - -"@octokit/types@^4.0.1": - version "4.1.10" - resolved "https://registry.yarnpkg.com/@octokit/types/-/types-4.1.10.tgz#e4029c11e2cc1335051775bc1600e7e740e4aca4" - integrity sha512-/wbFy1cUIE5eICcg0wTKGXMlKSbaAxEr00qaBXzscLXpqhcwgXeS6P8O0pkysBhRfyjkKjJaYrvR1ExMO5eOXQ== - dependencies: - "@types/node" ">= 8" - -"@octokit/types@^5.0.0": - version "5.0.1" - resolved "https://registry.yarnpkg.com/@octokit/types/-/types-5.0.1.tgz#5459e9a5e9df8565dcc62c17a34491904d71971e" - integrity sha512-GorvORVwp244fGKEt3cgt/P+M0MGy4xEDbckw+K5ojEezxyMDgCaYPKVct+/eWQfZXOT7uq0xRpmrl/+hliabA== - dependencies: - "@types/node" ">= 8" - -"@protobufjs/aspromise@^1.1.1", "@protobufjs/aspromise@^1.1.2": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@protobufjs/aspromise/-/aspromise-1.1.2.tgz#9b8b0cc663d669a7d8f6f5d0893a14d348f30fbf" - integrity sha1-m4sMxmPWaafY9vXQiToU00jzD78= - -"@protobufjs/base64@^1.1.2": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@protobufjs/base64/-/base64-1.1.2.tgz#4c85730e59b9a1f1f349047dbf24296034bb2735" - integrity sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg== - -"@protobufjs/codegen@^2.0.4": - version "2.0.4" - resolved "https://registry.yarnpkg.com/@protobufjs/codegen/-/codegen-2.0.4.tgz#7ef37f0d010fb028ad1ad59722e506d9262815cb" - integrity sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg== - -"@protobufjs/eventemitter@^1.1.0": - version "1.1.0" - resolved "https://registry.yarnpkg.com/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz#355cbc98bafad5978f9ed095f397621f1d066b70" - integrity sha1-NVy8mLr61ZePntCV85diHx0Ga3A= - -"@protobufjs/fetch@^1.1.0": - version "1.1.0" - resolved "https://registry.yarnpkg.com/@protobufjs/fetch/-/fetch-1.1.0.tgz#ba99fb598614af65700c1619ff06d454b0d84c45" - integrity sha1-upn7WYYUr2VwDBYZ/wbUVLDYTEU= - dependencies: - "@protobufjs/aspromise" "^1.1.1" - "@protobufjs/inquire" "^1.1.0" - -"@protobufjs/float@^1.0.2": - version "1.0.2" - resolved "https://registry.yarnpkg.com/@protobufjs/float/-/float-1.0.2.tgz#5e9e1abdcb73fc0a7cb8b291df78c8cbd97b87d1" - integrity sha1-Xp4avctz/Ap8uLKR33jIy9l7h9E= - -"@protobufjs/inquire@^1.1.0": - version "1.1.0" - resolved "https://registry.yarnpkg.com/@protobufjs/inquire/-/inquire-1.1.0.tgz#ff200e3e7cf2429e2dcafc1140828e8cc638f089" - integrity sha1-/yAOPnzyQp4tyvwRQIKOjMY48Ik= - -"@protobufjs/path@^1.1.2": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@protobufjs/path/-/path-1.1.2.tgz#6cc2b20c5c9ad6ad0dccfd21ca7673d8d7fbf68d" - integrity sha1-bMKyDFya1q0NzP0hynZz2Nf79o0= - -"@protobufjs/pool@^1.1.0": - version "1.1.0" - resolved "https://registry.yarnpkg.com/@protobufjs/pool/-/pool-1.1.0.tgz#09fd15f2d6d3abfa9b65bc366506d6ad7846ff54" - integrity sha1-Cf0V8tbTq/qbZbw2ZQbWrXhG/1Q= - -"@protobufjs/utf8@^1.1.0": - version "1.1.0" - resolved "https://registry.yarnpkg.com/@protobufjs/utf8/-/utf8-1.1.0.tgz#a777360b5b39a1a2e5106f8e858f2fd2d060c570" - integrity sha1-p3c2C1s5oaLlEG+OhY8v0tBgxXA= - -"@samverschueren/stream-to-observable@^0.3.0": - version "0.3.0" - resolved "https://registry.yarnpkg.com/@samverschueren/stream-to-observable/-/stream-to-observable-0.3.0.tgz#ecdf48d532c58ea477acfcab80348424f8d0662f" - integrity sha512-MI4Xx6LHs4Webyvi6EbspgyAb4D2Q2VtnCQ1blOJcoLS6mVa8lNN2rkIy1CVxfTUpoyIbCTkXES1rLXztFD1lg== - dependencies: - any-observable "^0.3.0" - -"@sindresorhus/is@^0.14.0": - version "0.14.0" - resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.14.0.tgz#9fb3a3cf3132328151f353de4632e01e52102bea" - integrity sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ== - -"@sinonjs/commons@^1.7.0": - version "1.8.0" - resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.0.tgz#c8d68821a854c555bba172f3b06959a0039b236d" - integrity sha512-wEj54PfsZ5jGSwMX68G8ZXFawcSglQSXqCftWX3ec8MDUzQdHgcKvw97awHbY0efQEL5iKUOAmmVtoYgmrSG4Q== - dependencies: - type-detect "4.0.8" - -"@sinonjs/fake-timers@^6.0.1": - version "6.0.1" - resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-6.0.1.tgz#293674fccb3262ac782c7aadfdeca86b10c75c40" - integrity sha512-MZPUxrmFubI36XS1DI3qmI0YdN1gks62JtFZvxR67ljjSNCeK6U08Zx4msEWOXuofgqUt6zPHSi1H9fbjR/NRA== - dependencies: - "@sinonjs/commons" "^1.7.0" - -"@svgr/babel-plugin-add-jsx-attribute@^4.2.0": - version "4.2.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-4.2.0.tgz#dadcb6218503532d6884b210e7f3c502caaa44b1" - integrity sha512-j7KnilGyZzYr/jhcrSYS3FGWMZVaqyCG0vzMCwzvei0coIkczuYMcniK07nI0aHJINciujjH11T72ICW5eL5Ig== - -"@svgr/babel-plugin-remove-jsx-attribute@^4.2.0": - version "4.2.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-4.2.0.tgz#297550b9a8c0c7337bea12bdfc8a80bb66f85abc" - integrity sha512-3XHLtJ+HbRCH4n28S7y/yZoEQnRpl0tvTZQsHqvaeNXPra+6vE5tbRliH3ox1yZYPCxrlqaJT/Mg+75GpDKlvQ== - -"@svgr/babel-plugin-remove-jsx-empty-expression@^4.2.0": - version "4.2.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-4.2.0.tgz#c196302f3e68eab6a05e98af9ca8570bc13131c7" - integrity sha512-yTr2iLdf6oEuUE9MsRdvt0NmdpMBAkgK8Bjhl6epb+eQWk6abBaX3d65UZ3E3FWaOwePyUgNyNCMVG61gGCQ7w== - -"@svgr/babel-plugin-replace-jsx-attribute-value@^4.2.0": - version "4.2.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-4.2.0.tgz#310ec0775de808a6a2e4fd4268c245fd734c1165" - integrity sha512-U9m870Kqm0ko8beHawRXLGLvSi/ZMrl89gJ5BNcT452fAjtF2p4uRzXkdzvGJJJYBgx7BmqlDjBN/eCp5AAX2w== - -"@svgr/babel-plugin-svg-dynamic-title@^4.3.3": - version "4.3.3" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-4.3.3.tgz#2cdedd747e5b1b29ed4c241e46256aac8110dd93" - integrity sha512-w3Be6xUNdwgParsvxkkeZb545VhXEwjGMwExMVBIdPQJeyMQHqm9Msnb2a1teHBqUYL66qtwfhNkbj1iarCG7w== - -"@svgr/babel-plugin-svg-em-dimensions@^4.2.0": - version "4.2.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-4.2.0.tgz#9a94791c9a288108d20a9d2cc64cac820f141391" - integrity sha512-C0Uy+BHolCHGOZ8Dnr1zXy/KgpBOkEUYY9kI/HseHVPeMbluaX3CijJr7D4C5uR8zrc1T64nnq/k63ydQuGt4w== - -"@svgr/babel-plugin-transform-react-native-svg@^4.2.0": - version "4.2.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-4.2.0.tgz#151487322843359a1ca86b21a3815fd21a88b717" - integrity sha512-7YvynOpZDpCOUoIVlaaOUU87J4Z6RdD6spYN4eUb5tfPoKGSF9OG2NuhgYnq4jSkAxcpMaXWPf1cePkzmqTPNw== - -"@svgr/babel-plugin-transform-svg-component@^4.2.0": - version "4.2.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-4.2.0.tgz#5f1e2f886b2c85c67e76da42f0f6be1b1767b697" - integrity sha512-hYfYuZhQPCBVotABsXKSCfel2slf/yvJY8heTVX1PCTaq/IgASq1IyxPPKJ0chWREEKewIU/JMSsIGBtK1KKxw== - -"@svgr/babel-preset@^4.3.3": - version "4.3.3" - resolved "https://registry.yarnpkg.com/@svgr/babel-preset/-/babel-preset-4.3.3.tgz#a75d8c2f202ac0e5774e6bfc165d028b39a1316c" - integrity sha512-6PG80tdz4eAlYUN3g5GZiUjg2FMcp+Wn6rtnz5WJG9ITGEF1pmFdzq02597Hn0OmnQuCVaBYQE1OVFAnwOl+0A== - dependencies: - "@svgr/babel-plugin-add-jsx-attribute" "^4.2.0" - "@svgr/babel-plugin-remove-jsx-attribute" "^4.2.0" - "@svgr/babel-plugin-remove-jsx-empty-expression" "^4.2.0" - "@svgr/babel-plugin-replace-jsx-attribute-value" "^4.2.0" - "@svgr/babel-plugin-svg-dynamic-title" "^4.3.3" - "@svgr/babel-plugin-svg-em-dimensions" "^4.2.0" - "@svgr/babel-plugin-transform-react-native-svg" "^4.2.0" - "@svgr/babel-plugin-transform-svg-component" "^4.2.0" - -"@svgr/core@^4.3.3": - version "4.3.3" - resolved "https://registry.yarnpkg.com/@svgr/core/-/core-4.3.3.tgz#b37b89d5b757dc66e8c74156d00c368338d24293" - integrity sha512-qNuGF1QON1626UCaZamWt5yedpgOytvLj5BQZe2j1k1B8DUG4OyugZyfEwBeXozCUwhLEpsrgPrE+eCu4fY17w== - dependencies: - "@svgr/plugin-jsx" "^4.3.3" - camelcase "^5.3.1" - cosmiconfig "^5.2.1" - -"@svgr/hast-util-to-babel-ast@^4.3.2": - version "4.3.2" - resolved "https://registry.yarnpkg.com/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-4.3.2.tgz#1d5a082f7b929ef8f1f578950238f630e14532b8" - integrity sha512-JioXclZGhFIDL3ddn4Kiq8qEqYM2PyDKV0aYno8+IXTLuYt6TOgHUbUAAFvqtb0Xn37NwP0BTHglejFoYr8RZg== - dependencies: - "@babel/types" "^7.4.4" - -"@svgr/plugin-jsx@^4.3.3": - version "4.3.3" - resolved "https://registry.yarnpkg.com/@svgr/plugin-jsx/-/plugin-jsx-4.3.3.tgz#e2ba913dbdfbe85252a34db101abc7ebd50992fa" - integrity sha512-cLOCSpNWQnDB1/v+SUENHH7a0XY09bfuMKdq9+gYvtuwzC2rU4I0wKGFEp1i24holdQdwodCtDQdFtJiTCWc+w== - dependencies: - "@babel/core" "^7.4.5" - "@svgr/babel-preset" "^4.3.3" - "@svgr/hast-util-to-babel-ast" "^4.3.2" - svg-parser "^2.0.0" - -"@svgr/plugin-svgo@^4.3.1": - version "4.3.1" - resolved "https://registry.yarnpkg.com/@svgr/plugin-svgo/-/plugin-svgo-4.3.1.tgz#daac0a3d872e3f55935c6588dd370336865e9e32" - integrity sha512-PrMtEDUWjX3Ea65JsVCwTIXuSqa3CG9px+DluF1/eo9mlDrgrtFE7NE/DjdhjJgSM9wenlVBzkzneSIUgfUI/w== - dependencies: - cosmiconfig "^5.2.1" - merge-deep "^3.0.2" - svgo "^1.2.2" - -"@svgr/webpack@4.3.3": - version "4.3.3" - resolved "https://registry.yarnpkg.com/@svgr/webpack/-/webpack-4.3.3.tgz#13cc2423bf3dff2d494f16b17eb7eacb86895017" - integrity sha512-bjnWolZ6KVsHhgyCoYRFmbd26p8XVbulCzSG53BDQqAr+JOAderYK7CuYrB3bDjHJuF6LJ7Wrr42+goLRV9qIg== - dependencies: - "@babel/core" "^7.4.5" - "@babel/plugin-transform-react-constant-elements" "^7.0.0" - "@babel/preset-env" "^7.4.5" - "@babel/preset-react" "^7.0.0" - "@svgr/core" "^4.3.3" - "@svgr/plugin-jsx" "^4.3.3" - "@svgr/plugin-svgo" "^4.3.1" - loader-utils "^1.2.3" - -"@szmarczak/http-timer@^1.1.2": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-1.1.2.tgz#b1665e2c461a2cd92f4c1bbf50d5454de0d4b421" - integrity sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA== - dependencies: - defer-to-connect "^1.0.1" - -"@types/accepts@*", "@types/accepts@^1.3.5": - version "1.3.5" - resolved "https://registry.yarnpkg.com/@types/accepts/-/accepts-1.3.5.tgz#c34bec115cfc746e04fe5a059df4ce7e7b391575" - integrity sha512-jOdnI/3qTpHABjM5cx1Hc0sKsPoYCp+DP/GJRGtDlPd7fiV9oXGGIcjW/ZOxLIvjGz8MA+uMZI9metHlgqbgwQ== - dependencies: - "@types/node" "*" - -"@types/babel__core@^7.0.0": - version "7.1.9" - resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.9.tgz#77e59d438522a6fb898fa43dc3455c6e72f3963d" - integrity sha512-sY2RsIJ5rpER1u3/aQ8OFSI7qGIy8o1NEEbgb2UaJcvOtXOMpd39ko723NBpjQFg9SIX7TXtjejZVGeIMLhoOw== - dependencies: - "@babel/parser" "^7.1.0" - "@babel/types" "^7.0.0" - "@types/babel__generator" "*" - "@types/babel__template" "*" - "@types/babel__traverse" "*" - -"@types/babel__core@^7.1.0", "@types/babel__core@^7.1.7": - version "7.1.8" - resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.8.tgz#057f725aca3641f49fc11c7a87a9de5ec588a5d7" - integrity sha512-KXBiQG2OXvaPWFPDS1rD8yV9vO0OuWIqAEqLsbfX0oU2REN5KuoMnZ1gClWcBhO5I3n6oTVAmrMufOvRqdmFTQ== - dependencies: - "@babel/parser" "^7.1.0" - "@babel/types" "^7.0.0" - "@types/babel__generator" "*" - "@types/babel__template" "*" - "@types/babel__traverse" "*" - -"@types/babel__generator@*": - version "7.6.1" - resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.1.tgz#4901767b397e8711aeb99df8d396d7ba7b7f0e04" - integrity sha512-bBKm+2VPJcMRVwNhxKu8W+5/zT7pwNEqeokFOmbvVSqGzFneNxYcEBro9Ac7/N9tlsaPYnZLK8J1LWKkMsLAew== - dependencies: - "@babel/types" "^7.0.0" - -"@types/babel__template@*": - version "7.0.2" - resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.0.2.tgz#4ff63d6b52eddac1de7b975a5223ed32ecea9307" - integrity sha512-/K6zCpeW7Imzgab2bLkLEbz0+1JlFSrUMdw7KoIIu+IUdu51GWaBZpd3y1VXGVXzynvGa4DaIaxNZHiON3GXUg== - dependencies: - "@babel/parser" "^7.1.0" - "@babel/types" "^7.0.0" - -"@types/babel__traverse@*", "@types/babel__traverse@^7.0.6": - version "7.0.12" - resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.0.12.tgz#22f49a028e69465390f87bb103ebd61bd086b8f5" - integrity sha512-t4CoEokHTfcyfb4hUaF9oOHu9RmmNWnm1CP0YmMqOOfClKascOmvlEM736vlqeScuGvBDsHkf8R2INd4DWreQA== - dependencies: - "@babel/types" "^7.3.0" - -"@types/bcryptjs@2.4.2": - version "2.4.2" - resolved "https://registry.yarnpkg.com/@types/bcryptjs/-/bcryptjs-2.4.2.tgz#e3530eac9dd136bfdfb0e43df2c4c5ce1f77dfae" - integrity sha512-LiMQ6EOPob/4yUL66SZzu6Yh77cbzJFYll+ZfaPiPPFswtIlA/Fs1MzdKYA7JApHU49zQTbJGX3PDmCpIdDBRQ== - -"@types/bluebird@*": - version "3.5.32" - resolved "https://registry.yarnpkg.com/@types/bluebird/-/bluebird-3.5.32.tgz#381e7b59e39f010d20bbf7e044e48f5caf1ab620" - integrity sha512-dIOxFfI0C+jz89g6lQ+TqhGgPQ0MxSnh/E4xuC0blhFtyW269+mPG5QeLgbdwst/LvdP8o1y0o/Gz5EHXLec/g== - -"@types/body-parser@*", "@types/body-parser@1.19.0": - version "1.19.0" - resolved "https://registry.yarnpkg.com/@types/body-parser/-/body-parser-1.19.0.tgz#0685b3c47eb3006ffed117cdd55164b61f80538f" - integrity sha512-W98JrE0j2K78swW4ukqMleo8R7h/pFETjM2DQ90MF6XK2i4LO4W3gQ71Lt4w3bfm2EvVSyWHplECvB5sK22yFQ== - dependencies: - "@types/connect" "*" - "@types/node" "*" - -"@types/bson@*": - version "4.0.2" - resolved "https://registry.yarnpkg.com/@types/bson/-/bson-4.0.2.tgz#7accb85942fc39bbdb7515d4de437c04f698115f" - integrity sha512-+uWmsejEHfmSjyyM/LkrP0orfE2m5Mx9Xel4tXNeqi1ldK5XMQcDsFkBmLDtuyKUbxj2jGDo0H240fbCRJZo7Q== - dependencies: - "@types/node" "*" - -"@types/caseless@*": - version "0.12.2" - resolved "https://registry.yarnpkg.com/@types/caseless/-/caseless-0.12.2.tgz#f65d3d6389e01eeb458bd54dc8f52b95a9463bc8" - integrity sha512-6ckxMjBBD8URvjB6J3NcnuAn5Pkl7t3TizAg+xdlzzQGSPSmBcXf8KoIH0ua/i+tio+ZRUHEXp0HEmvaR4kt0w== - -"@types/color-name@^1.1.1": - version "1.1.1" - resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0" - integrity sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ== - -"@types/connect@*": - version "3.4.33" - resolved "https://registry.yarnpkg.com/@types/connect/-/connect-3.4.33.tgz#31610c901eca573b8713c3330abc6e6b9f588546" - integrity sha512-2+FrkXY4zllzTNfJth7jOqEHC+enpLeGslEhpnTAkg21GkRrWV4SsAtqchtT4YS9/nODBU2/ZfsBY2X4J/dX7A== - dependencies: - "@types/node" "*" - -"@types/content-disposition@*": - version "0.5.3" - resolved "https://registry.yarnpkg.com/@types/content-disposition/-/content-disposition-0.5.3.tgz#0aa116701955c2faa0717fc69cd1596095e49d96" - integrity sha512-P1bffQfhD3O4LW0ioENXUhZ9OIa0Zn+P7M+pWgkCKaT53wVLSq0mrKksCID/FGHpFhRSxRGhgrQmfhRuzwtKdg== - -"@types/cookies@*": - version "0.7.4" - resolved "https://registry.yarnpkg.com/@types/cookies/-/cookies-0.7.4.tgz#26dedf791701abc0e36b5b79a5722f40e455f87b" - integrity sha512-oTGtMzZZAVuEjTwCjIh8T8FrC8n/uwy+PG0yTvQcdZ7etoel7C7/3MSd7qrukENTgQtotG7gvBlBojuVs7X5rw== - dependencies: - "@types/connect" "*" - "@types/express" "*" - "@types/keygrip" "*" - "@types/node" "*" - -"@types/cors@^2.8.4": - version "2.8.6" - resolved "https://registry.yarnpkg.com/@types/cors/-/cors-2.8.6.tgz#cfaab33c49c15b1ded32f235111ce9123009bd02" - integrity sha512-invOmosX0DqbpA+cE2yoHGUlF/blyf7nB0OGYBBiH27crcVm5NmFaZkLP4Ta1hGaesckCi5lVLlydNJCxkTOSg== - dependencies: - "@types/express" "*" - -"@types/eslint-visitor-keys@^1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@types/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz#1ee30d79544ca84d68d4b3cdb0af4f205663dd2d" - integrity sha512-OCutwjDZ4aFS6PB1UZ988C4YgwlBHJd6wCeQqaLdmadZ/7e+w79+hbMUFC1QXDNCmdyoRfAFdm0RypzwR+Qpag== - -"@types/express-serve-static-core@*": - version "4.17.7" - resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.7.tgz#dfe61f870eb549dc6d7e12050901847c7d7e915b" - integrity sha512-EMgTj/DF9qpgLXyc+Btimg+XoH7A2liE8uKul8qSmMTHCeNYzydDKFdsJskDvw42UsesCnhO63dO0Grbj8J4Dw== - dependencies: - "@types/node" "*" - "@types/qs" "*" - "@types/range-parser" "*" - -"@types/express-session@1.17.0": - version "1.17.0" - resolved "https://registry.yarnpkg.com/@types/express-session/-/express-session-1.17.0.tgz#770daf81368f6278e3e40dd894e1e52abbdca0cd" - integrity sha512-OQEHeBFE1UhChVIBhRh9qElHUvTp4BzKKHxMDkGHT7WuYk5eL93hPG7D8YAIkoBSbhNEY0RjreF15zn+U0eLjA== - dependencies: - "@types/express" "*" - "@types/node" "*" - -"@types/express@*", "@types/express@4.17.6": - version "4.17.6" - resolved "https://registry.yarnpkg.com/@types/express/-/express-4.17.6.tgz#6bce49e49570507b86ea1b07b806f04697fac45e" - integrity sha512-n/mr9tZI83kd4azlPG5y997C/M4DNABK9yErhFM6hKdym4kkmd9j0vtsJyjFIwfRBxtrxZtAfGZCNRIBMFLK5w== - dependencies: - "@types/body-parser" "*" - "@types/express-serve-static-core" "*" - "@types/qs" "*" - "@types/serve-static" "*" - -"@types/express@4.17.4": - version "4.17.4" - resolved "https://registry.yarnpkg.com/@types/express/-/express-4.17.4.tgz#e78bf09f3f530889575f4da8a94cd45384520aac" - integrity sha512-DO1L53rGqIDUEvOjJKmbMEQ5Z+BM2cIEPy/eV3En+s166Gz+FeuzRerxcab757u/U4v4XF4RYrZPmqKa+aY/2w== - dependencies: - "@types/body-parser" "*" - "@types/express-serve-static-core" "*" - "@types/qs" "*" - "@types/serve-static" "*" - -"@types/fs-capacitor@*": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@types/fs-capacitor/-/fs-capacitor-2.0.0.tgz#17113e25817f584f58100fb7a08eed288b81956e" - integrity sha512-FKVPOCFbhCvZxpVAMhdBdTfVfXUpsh15wFHgqOKxh9N9vzWZVuWCSijZ5T4U34XYNnuj2oduh6xcs1i+LPI+BQ== - dependencies: - "@types/node" "*" - -"@types/glob@^7.1.1": - version "7.1.2" - resolved "https://registry.yarnpkg.com/@types/glob/-/glob-7.1.2.tgz#06ca26521353a545d94a0adc74f38a59d232c987" - integrity sha512-VgNIkxK+j7Nz5P7jvUZlRvhuPSmsEfS03b0alKcq5V/STUKAa3Plemsn5mrQUO7am6OErJ4rhGEGJbACclrtRA== - dependencies: - "@types/minimatch" "*" - "@types/node" "*" - -"@types/graceful-fs@^4.1.2": - version "4.1.3" - resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.3.tgz#039af35fe26bec35003e8d86d2ee9c586354348f" - integrity sha512-AiHRaEB50LQg0pZmm659vNBb9f4SJ0qrAnteuzhSeAUcJKxoYgEnprg/83kppCnc2zvtCKbdZry1a5pVY3lOTQ== - dependencies: - "@types/node" "*" - -"@types/graphql-upload@^8.0.0": - version "8.0.3" - resolved "https://registry.yarnpkg.com/@types/graphql-upload/-/graphql-upload-8.0.3.tgz#b371edb5f305a2a1f7b7843a890a2a7adc55c3ec" - integrity sha512-hmLg9pCU/GmxBscg8GCr1vmSoEmbItNNxdD5YH2TJkXm//8atjwuprB+xJBK714JG1dkxbbhp5RHX+Pz1KsCMA== - dependencies: - "@types/express" "*" - "@types/fs-capacitor" "*" - "@types/koa" "*" - graphql "^14.5.3" - -"@types/history@*": - version "4.7.6" - resolved "https://registry.yarnpkg.com/@types/history/-/history-4.7.6.tgz#ed8fc802c45b8e8f54419c2d054e55c9ea344356" - integrity sha512-GRTZLeLJ8ia00ZH8mxMO8t0aC9M1N9bN461Z2eaRurJo6Fpa+utgCwLzI4jQHcrdzuzp5WPN9jRwpsCQ1VhJ5w== - -"@types/http-assert@*": - version "1.5.1" - resolved "https://registry.yarnpkg.com/@types/http-assert/-/http-assert-1.5.1.tgz#d775e93630c2469c2f980fc27e3143240335db3b" - integrity sha512-PGAK759pxyfXE78NbKxyfRcWYA/KwW17X290cNev/qAsn9eQIxkH4shoNBafH37wewhDG/0p1cHPbK6+SzZjWQ== - -"@types/ioredis@4.14.9": - version "4.14.9" - resolved "https://registry.yarnpkg.com/@types/ioredis/-/ioredis-4.14.9.tgz#774387d44d3ad60e1b849044b2b28b96e5813866" - integrity sha512-yNdzppM6vY4DYqXCnt4A3PXArxsMWeJCYxFlyl4AJKrNSGMEAP9TPcXR+8Q6zh9glcCtxmwMQhi4pwdqqHH3OA== - dependencies: - "@types/node" "*" - -"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": - version "2.0.3" - resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz#4ba8ddb720221f432e443bd5f9117fd22cfd4762" - integrity sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw== - -"@types/istanbul-lib-report@*": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#c14c24f18ea8190c118ee7562b7ff99a36552686" - integrity sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg== - dependencies: - "@types/istanbul-lib-coverage" "*" - -"@types/istanbul-reports@^1.1.1": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-1.1.2.tgz#e875cc689e47bce549ec81f3df5e6f6f11cfaeb2" - integrity sha512-P/W9yOX/3oPZSpaYOCQzGqgCQRXn0FFO/V8bWrCQs+wLmvVVxk6CRBXALEvNs9OHIatlnlFokfhuDo2ug01ciw== - dependencies: - "@types/istanbul-lib-coverage" "*" - "@types/istanbul-lib-report" "*" - -"@types/jest@26.0.9": - version "26.0.9" - resolved "https://registry.yarnpkg.com/@types/jest/-/jest-26.0.9.tgz#0543b57da5f0cd949c5f423a00c56c492289c989" - integrity sha512-k4qFfJ5AUKrWok5KYXp2EPm89b0P/KZpl7Vg4XuOTVVQEhLDBDBU3iBFrjjdgd8fLw96aAtmnwhXHl63bWeBQQ== - dependencies: - jest-diff "^25.2.1" - pretty-format "^25.2.1" - -"@types/json-schema@^7.0.3", "@types/json-schema@^7.0.4": - version "7.0.5" - resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.5.tgz#dcce4430e64b443ba8945f0290fb564ad5bac6dd" - integrity sha512-7+2BITlgjgDhH0vvwZU/HZJVyk+2XUlvxXe8dFMedNX/aMkaOq++rMAFXc0tM7ij15QaWlbdQASBR9dihi+bDQ== - -"@types/jsonwebtoken@8.3.9": - version "8.3.9" - resolved "https://registry.yarnpkg.com/@types/jsonwebtoken/-/jsonwebtoken-8.3.9.tgz#48da9a49997e4eb046733e6878f583d7448f0594" - integrity sha512-00rI8GbOKuRtoYxltFSRTVUXCRLbuYwln2/nUMPtFU9JGS7if+nnmLjeoFGmqsNCmblPLAaeQ/zMLVsHr6T5bg== - dependencies: - "@types/node" "*" - -"@types/jwt-decode@2.2.1": - version "2.2.1" - resolved "https://registry.yarnpkg.com/@types/jwt-decode/-/jwt-decode-2.2.1.tgz#afdf5c527fcfccbd4009b5fd02d1e18241f2d2f2" - integrity sha512-aWw2YTtAdT7CskFyxEX2K21/zSDStuf/ikI3yBqmwpwJF0pS+/IX5DWv+1UFffZIbruP6cnT9/LAJV1gFwAT1A== - -"@types/keygrip@*": - version "1.0.2" - resolved "https://registry.yarnpkg.com/@types/keygrip/-/keygrip-1.0.2.tgz#513abfd256d7ad0bf1ee1873606317b33b1b2a72" - integrity sha512-GJhpTepz2udxGexqos8wgaBx4I/zWIDPh/KOGEwAqtuGDkOUJu5eFvwmdBX4AmB8Odsr+9pHCQqiAqDL/yKMKw== - -"@types/koa-compose@*": - version "3.2.5" - resolved "https://registry.yarnpkg.com/@types/koa-compose/-/koa-compose-3.2.5.tgz#85eb2e80ac50be95f37ccf8c407c09bbe3468e9d" - integrity sha512-B8nG/OoE1ORZqCkBVsup/AKcvjdgoHnfi4pZMn5UwAPCbhk/96xyv284eBYW8JlQbQ7zDmnpFr68I/40mFoIBQ== - dependencies: - "@types/koa" "*" - -"@types/koa@*": - version "2.11.3" - resolved "https://registry.yarnpkg.com/@types/koa/-/koa-2.11.3.tgz#540ece376581b12beadf9a417dd1731bc31c16ce" - integrity sha512-ABxVkrNWa4O/Jp24EYI/hRNqEVRlhB9g09p48neQp4m3xL1TJtdWk2NyNQSMCU45ejeELMQZBYyfstyVvO2H3Q== - dependencies: - "@types/accepts" "*" - "@types/content-disposition" "*" - "@types/cookies" "*" - "@types/http-assert" "*" - "@types/keygrip" "*" - "@types/koa-compose" "*" - "@types/node" "*" - -"@types/lodash@4.14.157": - version "4.14.157" - resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.157.tgz#fdac1c52448861dfde1a2e1515dbc46e54926dc8" - integrity sha512-Ft5BNFmv2pHDgxV5JDsndOWTRJ+56zte0ZpYLowp03tW+K+t8u8YMOzAnpuqPgzX6WO1XpDIUm7u04M8vdDiVQ== - -"@types/lodash@^4.14.138": - version "4.14.155" - resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.155.tgz#e2b4514f46a261fd11542e47519c20ebce7bc23a" - integrity sha512-vEcX7S7aPhsBCivxMwAANQburHBtfN9RdyXFk84IJmu2Z4Hkg1tOFgaslRiEqqvoLtbCBi6ika1EMspE+NZ9Lg== - -"@types/long@^4.0.0": - version "4.0.1" - resolved "https://registry.yarnpkg.com/@types/long/-/long-4.0.1.tgz#459c65fa1867dafe6a8f322c4c51695663cc55e9" - integrity sha512-5tXH6Bx/kNGd3MgffdmP4dy2Z+G4eaXw0SE81Tq3BNadtnMR5/ySMzX4SLEzHJzSmPNn4HIdpQsBvXMUykr58w== - -"@types/mime@*": - version "2.0.2" - resolved "https://registry.yarnpkg.com/@types/mime/-/mime-2.0.2.tgz#857a118d8634c84bba7ae14088e4508490cd5da5" - integrity sha512-4kPlzbljFcsttWEq6aBW0OZe6BDajAmyvr2xknBG92tejQnvdGtT9+kXSZ580DqpxY9qG2xeQVF9Dq0ymUTo5Q== - -"@types/minimatch@*": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.3.tgz#3dca0e3f33b200fc7d1139c0cd96c1268cadfd9d" - integrity sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA== - -"@types/minimist@^1.2.0": - version "1.2.0" - resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.0.tgz#69a23a3ad29caf0097f06eda59b361ee2f0639f6" - integrity sha1-aaI6OtKcrwCX8G7aWbNh7i8GOfY= - -"@types/mongodb@*": - version "3.5.20" - resolved "https://registry.yarnpkg.com/@types/mongodb/-/mongodb-3.5.20.tgz#4065afc55b6275d0dd8e831fa421018475d54d56" - integrity sha512-BN0wJn670DkivxiP7ZW0InX4qBtX01qITaucD+3A+sTgPQo4XUYay0Y+sGM4MJ9OyKDRlb3RQuVAlyeWzl/NoA== - dependencies: - "@types/bson" "*" - "@types/node" "*" - -"@types/mongodb@3.5.25": - version "3.5.25" - resolved "https://registry.yarnpkg.com/@types/mongodb/-/mongodb-3.5.25.tgz#ab187db04d79f8e3f15af236327dc9139d9d4736" - integrity sha512-2H/Owt+pHCl9YmBOYnXc3VdnxejJEjVdH+QCWL5ZAfPehEn3evygKBX3/vKRv7aTwfNbUd0E5vjJdQklH/9a6w== - dependencies: - "@types/bson" "*" - "@types/node" "*" - -"@types/mongoose@5.7.16": - version "5.7.16" - resolved "https://registry.yarnpkg.com/@types/mongoose/-/mongoose-5.7.16.tgz#ea23f027fdb2ee2a79c42114c0a1a1d1fc8bf38a" - integrity sha512-QuWb8Tqjq1r/ZEpBi9MBWpuu8upe+4Co89GExyIFb0Q7TCmeMQsxG1lVfkmjk8GVm/qMIwUMdpuopVLPhmnFUA== - dependencies: - "@types/mongodb" "*" - "@types/node" "*" - -"@types/mongoose@5.7.32": - version "5.7.32" - resolved "https://registry.yarnpkg.com/@types/mongoose/-/mongoose-5.7.32.tgz#66265946d07a3418626843e7e93a00995675adb2" - integrity sha512-o1qijffQipTtYMJEYF8BOd+D8fy6ZGtGKP654udSEp6wysU3r1O2T8wHSP9QIC//QwQgKQGolu2y9vc9KXaq4w== - dependencies: - "@types/mongodb" "*" - "@types/node" "*" - -"@types/node-fetch@2.5.7": - version "2.5.7" - resolved "https://registry.yarnpkg.com/@types/node-fetch/-/node-fetch-2.5.7.tgz#20a2afffa882ab04d44ca786449a276f9f6bbf3c" - integrity sha512-o2WVNf5UhWRkxlf6eq+jMZDu7kjgpgJfl4xVNlvryc95O/6F2ld8ztKX+qu+Rjyet93WAWm5LjeX9H5FGkODvw== - dependencies: - "@types/node" "*" - form-data "^3.0.0" - -"@types/node@*", "@types/node@14.0.13", "@types/node@>= 8": - version "14.0.13" - resolved "https://registry.yarnpkg.com/@types/node/-/node-14.0.13.tgz#ee1128e881b874c371374c1f72201893616417c9" - integrity sha512-rouEWBImiRaSJsVA+ITTFM6ZxibuAlTuNOCyxVbwreu6k6+ujs7DfnU9o+PShFhET78pMBl3eH+AGSI5eOTkPA== - -"@types/node@14.0.14": - version "14.0.14" - resolved "https://registry.yarnpkg.com/@types/node/-/node-14.0.14.tgz#24a0b5959f16ac141aeb0c5b3cd7a15b7c64cbce" - integrity sha512-syUgf67ZQpaJj01/tRTknkMNoBBLWJOBODF0Zm4NrXmiSuxjymFrxnTu1QVYRubhVkRcZLYZG8STTwJRdVm/WQ== - -"@types/node@^10.1.0": - version "10.17.26" - resolved "https://registry.yarnpkg.com/@types/node/-/node-10.17.26.tgz#a8a119960bff16b823be4c617da028570779bcfd" - integrity sha512-myMwkO2Cr82kirHY8uknNRHEVtn0wV3DTQfkrjx17jmkstDRZ24gNUdl8AHXVyVclTYI/bNjgTPTAWvWLqXqkw== - -"@types/normalize-package-data@^2.4.0": - version "2.4.0" - resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz#e486d0d97396d79beedd0a6e33f4534ff6b4973e" - integrity sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA== - -"@types/oauth@0.9.1": - version "0.9.1" - resolved "https://registry.yarnpkg.com/@types/oauth/-/oauth-0.9.1.tgz#e17221e7f7936b0459ae7d006255dff61adca305" - integrity sha512-a1iY62/a3yhZ7qH7cNUsxoI3U/0Fe9+RnuFrpTKr+0WVOzbKlSLojShCKe20aOD1Sppv+i8Zlq0pLDuTJnwS4A== - dependencies: - "@types/node" "*" - -"@types/parse-json@^4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" - integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== - -"@types/prettier@^2.0.0": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.0.1.tgz#b6e98083f13faa1e5231bfa3bdb1b0feff536b6d" - integrity sha512-boy4xPNEtiw6N3abRhBi/e7hNvy3Tt8E9ZRAQrwAGzoCGZS/1wjo9KY7JHhnfnEsG5wSjDbymCozUM9a3ea7OQ== - -"@types/prop-types@*": - version "15.7.3" - resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.3.tgz#2ab0d5da2e5815f94b0b9d4b95d1e5f243ab2ca7" - integrity sha512-KfRL3PuHmqQLOG+2tGpRO26Ctg+Cq1E01D2DMriKEATHgWLfeNDmq9e29Q9WIky0dQ3NPkd1mzYH8Lm936Z9qw== - -"@types/q@^1.5.1": - version "1.5.4" - resolved "https://registry.yarnpkg.com/@types/q/-/q-1.5.4.tgz#15925414e0ad2cd765bfef58842f7e26a7accb24" - integrity sha512-1HcDas8SEj4z1Wc696tH56G8OlRaH/sqZOynNNB+HF0WOeXPaxTtbYzJY2oEfiUxjSKjhCKr+MvR7dCHcEelug== - -"@types/qrcode.react@1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@types/qrcode.react/-/qrcode.react-1.0.0.tgz#9eff4d4a93eb32fcd65e26ea046f2efc52764431" - integrity sha512-CyH8QizAyp/G2RTz+2W0qIp/qbJMNC6a8aossG+zN42Rmx3loQlgBCWFatjKJ3NeJaX99e22SJ75yU2EVHlu3g== - dependencies: - "@types/react" "*" - -"@types/qrcode.react@1.0.1": - version "1.0.1" - resolved "https://registry.yarnpkg.com/@types/qrcode.react/-/qrcode.react-1.0.1.tgz#0904e7a075a6274a5258f19567b4f64013c159d8" - integrity sha512-PcVCjpsiT2KFKfJibOgTQtkt0QQT/6GbQUp1Np/hMPhwUzMJ2DRUkR9j7tXN9Q8X06qukw+RbaJ8lJ22SBod+Q== - dependencies: - "@types/react" "*" - -"@types/qs@*": - version "6.9.3" - resolved "https://registry.yarnpkg.com/@types/qs/-/qs-6.9.3.tgz#b755a0934564a200d3efdf88546ec93c369abd03" - integrity sha512-7s9EQWupR1fTc2pSMtXRQ9w9gLOcrJn+h7HOXw4evxyvVqMi4f+q7d2tnFe3ng3SNHjtK+0EzGMGFUQX4/AQRA== - -"@types/range-parser@*": - version "1.2.3" - resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.3.tgz#7ee330ba7caafb98090bece86a5ee44115904c2c" - integrity sha512-ewFXqrQHlFsgc09MK5jP5iR7vumV/BYayNC6PgJO2LPe8vrnNFyjQjSppfEngITi0qvfKtzFvgKymGheFM9UOA== - -"@types/react-dom@16.9.8": - version "16.9.8" - resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-16.9.8.tgz#fe4c1e11dfc67155733dfa6aa65108b4971cb423" - integrity sha512-ykkPQ+5nFknnlU6lDd947WbQ6TE3NNzbQAkInC2EKY1qeYdTKp7onFusmYZb+ityzx2YviqT6BXSu+LyWWJwcA== - dependencies: - "@types/react" "*" - -"@types/react-router-dom@5.1.5": - version "5.1.5" - resolved "https://registry.yarnpkg.com/@types/react-router-dom/-/react-router-dom-5.1.5.tgz#7c334a2ea785dbad2b2dcdd83d2cf3d9973da090" - integrity sha512-ArBM4B1g3BWLGbaGvwBGO75GNFbLDUthrDojV2vHLih/Tq8M+tgvY1DSwkuNrPSwdp/GUL93WSEpTZs8nVyJLw== - dependencies: - "@types/history" "*" - "@types/react" "*" - "@types/react-router" "*" - -"@types/react-router@*", "@types/react-router@5.1.7": - version "5.1.7" - resolved "https://registry.yarnpkg.com/@types/react-router/-/react-router-5.1.7.tgz#e9d12ed7dcfc79187e4d36667745b69a5aa11556" - integrity sha512-2ouP76VQafKjtuc0ShpwUebhHwJo0G6rhahW9Pb8au3tQTjYXd2jta4wv6U2tGLR/I42yuG00+UXjNYY0dTzbg== - dependencies: - "@types/history" "*" - "@types/react" "*" - -"@types/react-router@5.1.8": - version "5.1.8" - resolved "https://registry.yarnpkg.com/@types/react-router/-/react-router-5.1.8.tgz#4614e5ba7559657438e17766bb95ef6ed6acc3fa" - integrity sha512-HzOyJb+wFmyEhyfp4D4NYrumi+LQgQL/68HvJO+q6XtuHSDvw6Aqov7sCAhjbNq3bUPgPqbdvjXC5HeB2oEAPg== - dependencies: - "@types/history" "*" - "@types/react" "*" - -"@types/react-transition-group@^4.2.0": - version "4.4.0" - resolved "https://registry.yarnpkg.com/@types/react-transition-group/-/react-transition-group-4.4.0.tgz#882839db465df1320e4753e6e9f70ca7e9b4d46d" - integrity sha512-/QfLHGpu+2fQOqQaXh8MG9q03bFENooTb/it4jr5kKaZlDQfWvjqWZg48AwzPVMBHlRuTRAY7hRHCEOXz5kV6w== - dependencies: - "@types/react" "*" - -"@types/react@*", "@types/react@16.9.36": - version "16.9.36" - resolved "https://registry.yarnpkg.com/@types/react/-/react-16.9.36.tgz#ade589ff51e2a903e34ee4669e05dbfa0c1ce849" - integrity sha512-mGgUb/Rk/vGx4NCvquRuSH0GHBQKb1OqpGS9cT9lFxlTLHZgkksgI60TuIxubmn7JuCb+sENHhQciqa0npm0AQ== - dependencies: - "@types/prop-types" "*" - csstype "^2.2.0" - -"@types/react@16.9.43": - version "16.9.43" - resolved "https://registry.yarnpkg.com/@types/react/-/react-16.9.43.tgz#c287f23f6189666ee3bebc2eb8d0f84bcb6cdb6b" - integrity sha512-PxshAFcnJqIWYpJbLPriClH53Z2WlJcVZE+NP2etUtWQs2s7yIMj3/LDKZT/5CHJ/F62iyjVCDu2H3jHEXIxSg== - dependencies: - "@types/prop-types" "*" - csstype "^2.2.0" - -"@types/request-ip@0.0.35": - version "0.0.35" - resolved "https://registry.yarnpkg.com/@types/request-ip/-/request-ip-0.0.35.tgz#c30e832533296151c221532c48c10591b7edd468" - integrity sha512-FtI7lv1EDaZnWmaCU7ZTwfOpW76EioocaWyiSeWdfW1cDPZYzzij781A5O/UeHQUN9yjtjEcD3StTzZjKG0XEA== - dependencies: - "@types/node" "*" - -"@types/request-promise@4.1.46": - version "4.1.46" - resolved "https://registry.yarnpkg.com/@types/request-promise/-/request-promise-4.1.46.tgz#37df6efae984316dfbfbbe8fcda37f3ba52822f2" - integrity sha512-3Thpj2Va5m0ji3spaCk8YKrjkZyZc6RqUVOphA0n/Xet66AW/AiOAs5vfXhQIL5NmkaO7Jnun7Nl9NEjJ2zBaw== - dependencies: - "@types/bluebird" "*" - "@types/request" "*" - -"@types/request@*": - version "2.48.5" - resolved "https://registry.yarnpkg.com/@types/request/-/request-2.48.5.tgz#019b8536b402069f6d11bee1b2c03e7f232937a0" - integrity sha512-/LO7xRVnL3DxJ1WkPGDQrp4VTV1reX9RkC85mJ+Qzykj2Bdw+mG15aAfDahc76HtknjzE16SX/Yddn6MxVbmGQ== - dependencies: - "@types/caseless" "*" - "@types/node" "*" - "@types/tough-cookie" "*" - form-data "^2.5.0" - -"@types/serve-static@*": - version "1.13.4" - resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-1.13.4.tgz#6662a93583e5a6cabca1b23592eb91e12fa80e7c" - integrity sha512-jTDt0o/YbpNwZbQmE/+2e+lfjJEJJR0I3OFaKQKPWkASkCoW3i6fsUnqudSMcNAfbtmADGu8f4MV4q+GqULmug== - dependencies: - "@types/express-serve-static-core" "*" - "@types/mime" "*" - -"@types/shortid@0.0.29": - version "0.0.29" - resolved "https://registry.yarnpkg.com/@types/shortid/-/shortid-0.0.29.tgz#8093ee0416a6e2bf2aa6338109114b3fbffa0e9b" - integrity sha1-gJPuBBam4r8qpjOBCRFLP7/6Dps= - -"@types/speakeasy@2.0.2": - version "2.0.2" - resolved "https://registry.yarnpkg.com/@types/speakeasy/-/speakeasy-2.0.2.tgz#153ec3636eea0562209b0a2f1fdf8b479286919b" - integrity sha512-h8KW3wSd3/l4oKRGYPxExCaos5VmjcnwDG3RK25tfcoWQR9iLmM9UbwvF1Pd+UT5aY1Z3LdQGt4xU0u9Zk/C2Q== - -"@types/stack-utils@^1.0.1": - version "1.0.1" - resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-1.0.1.tgz#0a851d3bd96498fa25c33ab7278ed3bd65f06c3e" - integrity sha512-l42BggppR6zLmpfU6fq9HEa2oGPEI8yrSPL3GITjfRInppYFahObbIQOQK3UGxEnyQpltZLaPe75046NOZQikw== - -"@types/tough-cookie@*": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@types/tough-cookie/-/tough-cookie-4.0.0.tgz#fef1904e4668b6e5ecee60c52cc6a078ffa6697d" - integrity sha512-I99sngh224D0M7XgW1s120zxCt3VYQ3IQsuw3P3jbq5GG4yc79+ZjyKznyOGIQrflfylLgcfekeZW/vk0yng6A== - -"@types/websocket@1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@types/websocket/-/websocket-1.0.0.tgz#828c794b0a50949ad061aa311af1009934197e4b" - integrity sha512-MLr8hDM8y7vvdAdnoDEP5LotRoYJj7wgT6mWzCUQH/gHqzS4qcnOT/K4dhC0WimWIUiA3Arj9QAJGGKNRiRZKA== - dependencies: - "@types/node" "*" - -"@types/ws@^7.0.0": - version "7.2.5" - resolved "https://registry.yarnpkg.com/@types/ws/-/ws-7.2.5.tgz#513f28b04a1ea1aa9dc2cad3f26e8e37c88aae49" - integrity sha512-4UEih9BI1nBKii385G9id1oFrSkLcClbwtDfcYj8HJLQqZVAtb/42vXVrYvRWCcufNF/a+rZD3MxNwghA7UmCg== - dependencies: - "@types/node" "*" - -"@types/yargs-parser@*": - version "15.0.0" - resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-15.0.0.tgz#cb3f9f741869e20cce330ffbeb9271590483882d" - integrity sha512-FA/BWv8t8ZWJ+gEOnLLd8ygxH/2UFbAvgEonyfN6yWGLKc7zVjbpl2Y4CTjid9h2RfgPP6SEt6uHwEOply00yw== - -"@types/yargs@^13.0.0": - version "13.0.9" - resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-13.0.9.tgz#44028e974343c7afcf3960f1a2b1099c39a7b5e1" - integrity sha512-xrvhZ4DZewMDhoH1utLtOAwYQy60eYFoXeje30TzM3VOvQlBwQaEpKFq5m34k1wOw2AKIi2pwtiAjdmhvlBUzg== - dependencies: - "@types/yargs-parser" "*" - -"@types/yargs@^15.0.0": - version "15.0.5" - resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.5.tgz#947e9a6561483bdee9adffc983e91a6902af8b79" - integrity sha512-Dk/IDOPtOgubt/IaevIUbTgV7doaKkoorvOyYM2CMwuDyP89bekI7H4xLIwunNYiK9jhCkmc6pUrJk3cj2AB9w== - dependencies: - "@types/yargs-parser" "*" - -"@types/zen-observable@^0.8.0": - version "0.8.0" - resolved "https://registry.yarnpkg.com/@types/zen-observable/-/zen-observable-0.8.0.tgz#8b63ab7f1aa5321248aad5ac890a485656dcea4d" - integrity sha512-te5lMAWii1uEJ4FwLjzdlbw3+n0FZNOvFXHxQDKeT0dilh7HOzdMzV2TrJVUzq8ep7J4Na8OUYPRLSQkJHAlrg== - -"@typescript-eslint/eslint-plugin@3.7.0": - version "3.7.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-3.7.0.tgz#0f91aa3c83d019591719e597fbdb73a59595a263" - integrity sha512-4OEcPON3QIx0ntsuiuFP/TkldmBGXf0uKxPQlGtS/W2F3ndYm8Vgdpj/woPJkzUc65gd3iR+qi3K8SDQP/obFg== - dependencies: - "@typescript-eslint/experimental-utils" "3.7.0" - debug "^4.1.1" - functional-red-black-tree "^1.0.1" - regexpp "^3.0.0" - semver "^7.3.2" - tsutils "^3.17.1" - -"@typescript-eslint/eslint-plugin@^2.10.0": - version "2.34.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-2.34.0.tgz#6f8ce8a46c7dea4a6f1d171d2bb8fbae6dac2be9" - integrity sha512-4zY3Z88rEE99+CNvTbXSyovv2z9PNOVffTWD2W8QF5s2prBQtwN2zadqERcrHpcR7O/+KMI3fcTAmUUhK/iQcQ== - dependencies: - "@typescript-eslint/experimental-utils" "2.34.0" - functional-red-black-tree "^1.0.1" - regexpp "^3.0.0" - tsutils "^3.17.1" - -"@typescript-eslint/experimental-utils@2.34.0", "@typescript-eslint/experimental-utils@^2.5.0": - version "2.34.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-2.34.0.tgz#d3524b644cdb40eebceca67f8cf3e4cc9c8f980f" - integrity sha512-eS6FTkq+wuMJ+sgtuNTtcqavWXqsflWcfBnlYhg/nS4aZ1leewkXGbvBhaapn1q6qf4M71bsR1tez5JTRMuqwA== - dependencies: - "@types/json-schema" "^7.0.3" - "@typescript-eslint/typescript-estree" "2.34.0" - eslint-scope "^5.0.0" - eslint-utils "^2.0.0" - -"@typescript-eslint/experimental-utils@3.7.0": - version "3.7.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-3.7.0.tgz#0ee21f6c48b2b30c63211da23827725078d5169a" - integrity sha512-xpfXXAfZqhhqs5RPQBfAFrWDHoNxD5+sVB5A46TF58Bq1hRfVROrWHcQHHUM9aCBdy9+cwATcvCbRg8aIRbaHQ== - dependencies: - "@types/json-schema" "^7.0.3" - "@typescript-eslint/types" "3.7.0" - "@typescript-eslint/typescript-estree" "3.7.0" - eslint-scope "^5.0.0" - eslint-utils "^2.0.0" - -"@typescript-eslint/parser@3.7.0": - version "3.7.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-3.7.0.tgz#3e9cd9df9ea644536feb6e5acdb8279ecff96ce9" - integrity sha512-2LZauVUt7jAWkcIW7djUc3kyW+fSarNEuM3RF2JdLHR9BfX/nDEnyA4/uWz0wseoWVZbDXDF7iF9Jc342flNqQ== - dependencies: - "@types/eslint-visitor-keys" "^1.0.0" - "@typescript-eslint/experimental-utils" "3.7.0" - "@typescript-eslint/types" "3.7.0" - "@typescript-eslint/typescript-estree" "3.7.0" - eslint-visitor-keys "^1.1.0" - -"@typescript-eslint/parser@^2.10.0": - version "2.34.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-2.34.0.tgz#50252630ca319685420e9a39ca05fe185a256bc8" - integrity sha512-03ilO0ucSD0EPTw2X4PntSIRFtDPWjrVq7C3/Z3VQHRC7+13YB55rcJI3Jt+YgeHbjUdJPcPa7b23rXCBokuyA== - dependencies: - "@types/eslint-visitor-keys" "^1.0.0" - "@typescript-eslint/experimental-utils" "2.34.0" - "@typescript-eslint/typescript-estree" "2.34.0" - eslint-visitor-keys "^1.1.0" - -"@typescript-eslint/types@3.7.0": - version "3.7.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-3.7.0.tgz#09897fab0cb95479c01166b10b2c03c224821077" - integrity sha512-reCaK+hyKkKF+itoylAnLzFeNYAEktB0XVfSQvf0gcVgpz1l49Lt6Vo9x4MVCCxiDydA0iLAjTF/ODH0pbfnpg== - -"@typescript-eslint/typescript-estree@2.34.0": - version "2.34.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-2.34.0.tgz#14aeb6353b39ef0732cc7f1b8285294937cf37d5" - integrity sha512-OMAr+nJWKdlVM9LOqCqh3pQQPwxHAN7Du8DR6dmwCrAmxtiXQnhHJ6tBNtf+cggqfo51SG/FCwnKhXCIM7hnVg== - dependencies: - debug "^4.1.1" - eslint-visitor-keys "^1.1.0" - glob "^7.1.6" - is-glob "^4.0.1" - lodash "^4.17.15" - semver "^7.3.2" - tsutils "^3.17.1" - -"@typescript-eslint/typescript-estree@3.7.0": - version "3.7.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-3.7.0.tgz#66872e6da120caa4b64e6b4ca5c8702afc74738d" - integrity sha512-xr5oobkYRebejlACGr1TJ0Z/r0a2/HUf0SXqPvlgUMwiMqOCu/J+/Dr9U3T0IxpE5oLFSkqMx1FE/dKaZ8KsOQ== - dependencies: - "@typescript-eslint/types" "3.7.0" - "@typescript-eslint/visitor-keys" "3.7.0" - debug "^4.1.1" - glob "^7.1.6" - is-glob "^4.0.1" - lodash "^4.17.15" - semver "^7.3.2" - tsutils "^3.17.1" - -"@typescript-eslint/visitor-keys@3.7.0": - version "3.7.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-3.7.0.tgz#ac0417d382a136e4571a0b0dcfe52088cb628177" - integrity sha512-k5PiZdB4vklUpUX4NBncn5RBKty8G3ihTY+hqJsCdMuD0v4jofI5xuqwnVcWxfv6iTm2P/dfEa2wMUnsUY8ODw== - dependencies: - eslint-visitor-keys "^1.1.0" - -"@webassemblyjs/ast@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.8.5.tgz#51b1c5fe6576a34953bf4b253df9f0d490d9e359" - integrity sha512-aJMfngIZ65+t71C3y2nBBg5FFG0Okt9m0XEgWZ7Ywgn1oMAT8cNwx00Uv1cQyHtidq0Xn94R4TAywO+LCQ+ZAQ== - dependencies: - "@webassemblyjs/helper-module-context" "1.8.5" - "@webassemblyjs/helper-wasm-bytecode" "1.8.5" - "@webassemblyjs/wast-parser" "1.8.5" - -"@webassemblyjs/floating-point-hex-parser@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.8.5.tgz#1ba926a2923613edce496fd5b02e8ce8a5f49721" - integrity sha512-9p+79WHru1oqBh9ewP9zW95E3XAo+90oth7S5Re3eQnECGq59ly1Ri5tsIipKGpiStHsUYmY3zMLqtk3gTcOtQ== - -"@webassemblyjs/helper-api-error@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.8.5.tgz#c49dad22f645227c5edb610bdb9697f1aab721f7" - integrity sha512-Za/tnzsvnqdaSPOUXHyKJ2XI7PDX64kWtURyGiJJZKVEdFOsdKUCPTNEVFZq3zJ2R0G5wc2PZ5gvdTRFgm81zA== - -"@webassemblyjs/helper-buffer@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.8.5.tgz#fea93e429863dd5e4338555f42292385a653f204" - integrity sha512-Ri2R8nOS0U6G49Q86goFIPNgjyl6+oE1abW1pS84BuhP1Qcr5JqMwRFT3Ah3ADDDYGEgGs1iyb1DGX+kAi/c/Q== - -"@webassemblyjs/helper-code-frame@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.8.5.tgz#9a740ff48e3faa3022b1dff54423df9aa293c25e" - integrity sha512-VQAadSubZIhNpH46IR3yWO4kZZjMxN1opDrzePLdVKAZ+DFjkGD/rf4v1jap744uPVU6yjL/smZbRIIJTOUnKQ== - dependencies: - "@webassemblyjs/wast-printer" "1.8.5" - -"@webassemblyjs/helper-fsm@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-fsm/-/helper-fsm-1.8.5.tgz#ba0b7d3b3f7e4733da6059c9332275d860702452" - integrity sha512-kRuX/saORcg8se/ft6Q2UbRpZwP4y7YrWsLXPbbmtepKr22i8Z4O3V5QE9DbZK908dh5Xya4Un57SDIKwB9eow== - -"@webassemblyjs/helper-module-context@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-module-context/-/helper-module-context-1.8.5.tgz#def4b9927b0101dc8cbbd8d1edb5b7b9c82eb245" - integrity sha512-/O1B236mN7UNEU4t9X7Pj38i4VoU8CcMHyy3l2cV/kIF4U5KoHXDVqcDuOs1ltkac90IM4vZdHc52t1x8Yfs3g== - dependencies: - "@webassemblyjs/ast" "1.8.5" - mamacro "^0.0.3" - -"@webassemblyjs/helper-wasm-bytecode@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.8.5.tgz#537a750eddf5c1e932f3744206551c91c1b93e61" - integrity sha512-Cu4YMYG3Ddl72CbmpjU/wbP6SACcOPVbHN1dI4VJNJVgFwaKf1ppeFJrwydOG3NDHxVGuCfPlLZNyEdIYlQ6QQ== - -"@webassemblyjs/helper-wasm-section@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.8.5.tgz#74ca6a6bcbe19e50a3b6b462847e69503e6bfcbf" - integrity sha512-VV083zwR+VTrIWWtgIUpqfvVdK4ff38loRmrdDBgBT8ADXYsEZ5mPQ4Nde90N3UYatHdYoDIFb7oHzMncI02tA== - dependencies: - "@webassemblyjs/ast" "1.8.5" - "@webassemblyjs/helper-buffer" "1.8.5" - "@webassemblyjs/helper-wasm-bytecode" "1.8.5" - "@webassemblyjs/wasm-gen" "1.8.5" - -"@webassemblyjs/ieee754@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.8.5.tgz#712329dbef240f36bf57bd2f7b8fb9bf4154421e" - integrity sha512-aaCvQYrvKbY/n6wKHb/ylAJr27GglahUO89CcGXMItrOBqRarUMxWLJgxm9PJNuKULwN5n1csT9bYoMeZOGF3g== - dependencies: - "@xtuc/ieee754" "^1.2.0" - -"@webassemblyjs/leb128@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.8.5.tgz#044edeb34ea679f3e04cd4fd9824d5e35767ae10" - integrity sha512-plYUuUwleLIziknvlP8VpTgO4kqNaH57Y3JnNa6DLpu/sGcP6hbVdfdX5aHAV716pQBKrfuU26BJK29qY37J7A== - dependencies: - "@xtuc/long" "4.2.2" - -"@webassemblyjs/utf8@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.8.5.tgz#a8bf3b5d8ffe986c7c1e373ccbdc2a0915f0cedc" - integrity sha512-U7zgftmQriw37tfD934UNInokz6yTmn29inT2cAetAsaU9YeVCveWEwhKL1Mg4yS7q//NGdzy79nlXh3bT8Kjw== - -"@webassemblyjs/wasm-edit@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.8.5.tgz#962da12aa5acc1c131c81c4232991c82ce56e01a" - integrity sha512-A41EMy8MWw5yvqj7MQzkDjU29K7UJq1VrX2vWLzfpRHt3ISftOXqrtojn7nlPsZ9Ijhp5NwuODuycSvfAO/26Q== - dependencies: - "@webassemblyjs/ast" "1.8.5" - "@webassemblyjs/helper-buffer" "1.8.5" - "@webassemblyjs/helper-wasm-bytecode" "1.8.5" - "@webassemblyjs/helper-wasm-section" "1.8.5" - "@webassemblyjs/wasm-gen" "1.8.5" - "@webassemblyjs/wasm-opt" "1.8.5" - "@webassemblyjs/wasm-parser" "1.8.5" - "@webassemblyjs/wast-printer" "1.8.5" - -"@webassemblyjs/wasm-gen@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.8.5.tgz#54840766c2c1002eb64ed1abe720aded714f98bc" - integrity sha512-BCZBT0LURC0CXDzj5FXSc2FPTsxwp3nWcqXQdOZE4U7h7i8FqtFK5Egia6f9raQLpEKT1VL7zr4r3+QX6zArWg== - dependencies: - "@webassemblyjs/ast" "1.8.5" - "@webassemblyjs/helper-wasm-bytecode" "1.8.5" - "@webassemblyjs/ieee754" "1.8.5" - "@webassemblyjs/leb128" "1.8.5" - "@webassemblyjs/utf8" "1.8.5" - -"@webassemblyjs/wasm-opt@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.8.5.tgz#b24d9f6ba50394af1349f510afa8ffcb8a63d264" - integrity sha512-HKo2mO/Uh9A6ojzu7cjslGaHaUU14LdLbGEKqTR7PBKwT6LdPtLLh9fPY33rmr5wcOMrsWDbbdCHq4hQUdd37Q== - dependencies: - "@webassemblyjs/ast" "1.8.5" - "@webassemblyjs/helper-buffer" "1.8.5" - "@webassemblyjs/wasm-gen" "1.8.5" - "@webassemblyjs/wasm-parser" "1.8.5" - -"@webassemblyjs/wasm-parser@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.8.5.tgz#21576f0ec88b91427357b8536383668ef7c66b8d" - integrity sha512-pi0SYE9T6tfcMkthwcgCpL0cM9nRYr6/6fjgDtL6q/ZqKHdMWvxitRi5JcZ7RI4SNJJYnYNaWy5UUrHQy998lw== - dependencies: - "@webassemblyjs/ast" "1.8.5" - "@webassemblyjs/helper-api-error" "1.8.5" - "@webassemblyjs/helper-wasm-bytecode" "1.8.5" - "@webassemblyjs/ieee754" "1.8.5" - "@webassemblyjs/leb128" "1.8.5" - "@webassemblyjs/utf8" "1.8.5" - -"@webassemblyjs/wast-parser@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-parser/-/wast-parser-1.8.5.tgz#e10eecd542d0e7bd394f6827c49f3df6d4eefb8c" - integrity sha512-daXC1FyKWHF1i11obK086QRlsMsY4+tIOKgBqI1lxAnkp9xe9YMcgOxm9kLe+ttjs5aWV2KKE1TWJCN57/Btsg== - dependencies: - "@webassemblyjs/ast" "1.8.5" - "@webassemblyjs/floating-point-hex-parser" "1.8.5" - "@webassemblyjs/helper-api-error" "1.8.5" - "@webassemblyjs/helper-code-frame" "1.8.5" - "@webassemblyjs/helper-fsm" "1.8.5" - "@xtuc/long" "4.2.2" - -"@webassemblyjs/wast-printer@1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.8.5.tgz#114bbc481fd10ca0e23b3560fa812748b0bae5bc" - integrity sha512-w0U0pD4EhlnvRyeJzBqaVSJAo9w/ce7/WPogeXLzGkO6hzhr4GnQIZ4W4uUt5b9ooAaXPtnXlj0gzsXEOUNYMg== - dependencies: - "@webassemblyjs/ast" "1.8.5" - "@webassemblyjs/wast-parser" "1.8.5" - "@xtuc/long" "4.2.2" - -"@wry/context@^0.5.2": - version "0.5.2" - resolved "https://registry.yarnpkg.com/@wry/context/-/context-0.5.2.tgz#f2a5d5ab9227343aa74c81e06533c1ef84598ec7" - integrity sha512-B/JLuRZ/vbEKHRUiGj6xiMojST1kHhu4WcreLfNN7q9DqQFrb97cWgf/kiYsPSUCAMVN0HzfFc8XjJdzgZzfjw== - dependencies: - tslib "^1.9.3" - -"@wry/equality@^0.1.2", "@wry/equality@^0.1.9": - version "0.1.11" - resolved "https://registry.yarnpkg.com/@wry/equality/-/equality-0.1.11.tgz#35cb156e4a96695aa81a9ecc4d03787bc17f1790" - integrity sha512-mwEVBDUVODlsQQ5dfuLUS5/Tf7jqUKyhKYHmVi4fPB6bDMOfWvUPJmKgS1Z7Za/sOI3vzWt4+O7yCiL/70MogA== - dependencies: - tslib "^1.9.3" - -"@xtuc/ieee754@^1.2.0": - version "1.2.0" - resolved "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790" - integrity sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA== - -"@xtuc/long@4.2.2": - version "4.2.2" - resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d" - integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ== - -"@zkochan/cmd-shim@^3.1.0": - version "3.1.0" - resolved "https://registry.yarnpkg.com/@zkochan/cmd-shim/-/cmd-shim-3.1.0.tgz#2ab8ed81f5bb5452a85f25758eb9b8681982fd2e" - integrity sha512-o8l0+x7C7sMZU3v9GuJIAU10qQLtwR1dtRQIOmlNMtyaqhmpXOzx1HWiYoWfmmf9HHZoAkXpc9TM9PQYF9d4Jg== - dependencies: - is-windows "^1.0.0" - mkdirp-promise "^5.0.1" - mz "^2.5.0" - -JSONStream@^1.0.4, JSONStream@^1.3.4: - version "1.3.5" - resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-1.3.5.tgz#3208c1f08d3a4d99261ab64f92302bc15e111ca0" - integrity sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ== - dependencies: - jsonparse "^1.2.0" - through ">=2.2.7 <3" - -abab@^2.0.0, abab@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.3.tgz#623e2075e02eb2d3f2475e49f99c91846467907a" - integrity sha512-tsFzPpcttalNjFBCFMqsKYQcWxxen1pgJR56by//QwvJc4/OUS3kPOOttx2tSIfjsylB0pYu7f5D3K1RCxUnUg== - -abbrev@1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" - integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== - -accepts@^1.3.5, accepts@~1.3.4, accepts@~1.3.5, accepts@~1.3.7: - version "1.3.7" - resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.7.tgz#531bc726517a3b2b41f850021c6cc15eaab507cd" - integrity sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA== - dependencies: - mime-types "~2.1.24" - negotiator "0.6.2" - -acorn-globals@^4.1.0, acorn-globals@^4.3.0: - version "4.3.4" - resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-4.3.4.tgz#9fa1926addc11c97308c4e66d7add0d40c3272e7" - integrity sha512-clfQEh21R+D0leSbUdWf3OcfqyaCSAQ8Ryq00bofSekfr9W8u1jyYZo6ir0xu9Gtcf7BjcHJpnbZH7JOCpP60A== - dependencies: - acorn "^6.0.1" - acorn-walk "^6.0.1" - -acorn-globals@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-6.0.0.tgz#46cdd39f0f8ff08a876619b55f5ac8a6dc770b45" - integrity sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg== - dependencies: - acorn "^7.1.1" - acorn-walk "^7.1.1" - -acorn-jsx@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.2.0.tgz#4c66069173d6fdd68ed85239fc256226182b2ebe" - integrity sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ== - -acorn-walk@^6.0.1: - version "6.2.0" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-6.2.0.tgz#123cb8f3b84c2171f1f7fb252615b1c78a6b1a8c" - integrity sha512-7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA== - -acorn-walk@^7.1.1: - version "7.1.1" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.1.1.tgz#345f0dffad5c735e7373d2fec9a1023e6a44b83e" - integrity sha512-wdlPY2tm/9XBr7QkKlq0WQVgiuGTX6YWPyRyBviSoScBuLfTVQhvwg6wJ369GJ/1nPfTLMfnrFIfjqVg6d+jQQ== - -acorn@^5.5.3: - version "5.7.4" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.7.4.tgz#3e8d8a9947d0599a1796d10225d7432f4a4acf5e" - integrity sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg== - -acorn@^6.0.1, acorn@^6.0.4, acorn@^6.2.1: - version "6.4.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.1.tgz#531e58ba3f51b9dacb9a6646ca4debf5b14ca474" - integrity sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA== - -acorn@^7.1.1, acorn@^7.3.1: - version "7.3.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.3.1.tgz#85010754db53c3fbaf3b9ea3e083aa5c5d147ffd" - integrity sha512-tLc0wSnatxAQHVHUapaHdz72pi9KUyHjq5KyHjGg9Y8Ifdc79pTh2XvI6I1/chZbnM7QtNKzh66ooDogPZSleA== - -add-stream@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/add-stream/-/add-stream-1.0.0.tgz#6a7990437ca736d5e1288db92bd3266d5f5cb2aa" - integrity sha1-anmQQ3ynNtXhKI25K9MmbV9csqo= - -address@1.1.2, address@^1.0.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/address/-/address-1.1.2.tgz#bf1116c9c758c51b7a933d296b72c221ed9428b6" - integrity sha512-aT6camzM4xEA54YVJYSqxz1kv4IHnQZRtThJJHhUMRExaU5spC7jX5ugSwTaTgJliIgs4VhZOk7htClvQ/LmRA== - -adjust-sourcemap-loader@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/adjust-sourcemap-loader/-/adjust-sourcemap-loader-2.0.0.tgz#6471143af75ec02334b219f54bc7970c52fb29a4" - integrity sha512-4hFsTsn58+YjrU9qKzML2JSSDqKvN8mUGQ0nNIrfPi8hmIONT4L3uUaT6MKdMsZ9AjsU6D2xDkZxCkbQPxChrA== - dependencies: - assert "1.4.1" - camelcase "5.0.0" - loader-utils "1.2.3" - object-path "0.11.4" - regex-parser "2.2.10" - -agent-base@4, agent-base@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-4.3.0.tgz#8165f01c436009bccad0b1d122f05ed770efc6ee" - integrity sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg== - dependencies: - es6-promisify "^5.0.0" - -agent-base@~4.2.1: - version "4.2.1" - resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-4.2.1.tgz#d89e5999f797875674c07d87f260fc41e83e8ca9" - integrity sha512-JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg== - dependencies: - es6-promisify "^5.0.0" - -agentkeepalive@^3.4.1: - version "3.5.2" - resolved "https://registry.yarnpkg.com/agentkeepalive/-/agentkeepalive-3.5.2.tgz#a113924dd3fa24a0bc3b78108c450c2abee00f67" - integrity sha512-e0L/HNe6qkQ7H19kTlRRqUibEAwDK5AFk6y3PtMsuut2VAH6+Q4xZml1tNDJD7kSAyqmbG/K08K5WEJYtUrSlQ== - dependencies: - humanize-ms "^1.2.1" - -aggregate-error@3.0.1, aggregate-error@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.0.1.tgz#db2fe7246e536f40d9b5442a39e117d7dd6a24e0" - integrity sha512-quoaXsZ9/BLNae5yiNoUz+Nhkwz83GhWwtYFglcjEQB2NDHCIpApbqXxIFnm4Pq/Nvhrsq5sYJFyohrrxnTGAA== - dependencies: - clean-stack "^2.0.0" - indent-string "^4.0.0" - -ajv-errors@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d" - integrity sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ== - -ajv-keywords@^3.1.0, ajv-keywords@^3.4.1: - version "3.4.1" - resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.4.1.tgz#ef916e271c64ac12171fd8384eaae6b2345854da" - integrity sha512-RO1ibKvd27e6FEShVFfPALuHI3WjSVNeK5FIsmme/LYRNxjKuNj+Dt7bucLa6NdSv3JcVTyMlm9kGR84z1XpaQ== - -ajv@5: - version "5.5.2" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.2.tgz#73b5eeca3fab653e3d3f9422b341ad42205dc965" - integrity sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU= - dependencies: - co "^4.6.0" - fast-deep-equal "^1.0.0" - fast-json-stable-stringify "^2.0.0" - json-schema-traverse "^0.3.0" - -ajv@^6.1.0, ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.2, ajv@^6.5.5: - version "6.12.2" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.2.tgz#c629c5eced17baf314437918d2da88c99d5958cd" - integrity sha512-k+V+hzjm5q/Mr8ef/1Y9goCmlsK4I6Sm74teeyGvFk1XrOsbsKLjEdrvny42CZ+a8sXbk8KWpY/bDwS+FLL2UQ== - 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" - -alphanum-sort@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" - integrity sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM= - -ansi-align@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-3.0.0.tgz#b536b371cf687caaef236c18d3e21fe3797467cb" - integrity sha512-ZpClVKqXN3RGBmKibdfWzqCY4lnjEuoNzU5T0oEFpfd/z5qJHVarukridD4juLO2FXMiwUQxr9WqQtaYa8XRYw== - dependencies: - string-width "^3.0.0" - -ansi-colors@^3.0.0, ansi-colors@^3.2.1: - version "3.2.4" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.4.tgz#e3a3da4bfbae6c86a9c285625de124a234026fbf" - integrity sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA== - -ansi-escapes@4.3.1, ansi-escapes@^4.2.1, ansi-escapes@^4.3.0: - version "4.3.1" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.1.tgz#a5c47cc43181f1f38ffd7076837700d395522a61" - integrity sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA== - dependencies: - type-fest "^0.11.0" - -ansi-escapes@^1.1.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e" - integrity sha1-06ioOzGapneTZisT52HHkRQiMG4= - -ansi-escapes@^3.0.0, ansi-escapes@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz#8780b98ff9dbf5638152d1f1fe5c1d7b4442976b" - integrity sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ== - -ansi-html@0.0.7: - version "0.0.7" - resolved "https://registry.yarnpkg.com/ansi-html/-/ansi-html-0.0.7.tgz#813584021962a9e9e6fd039f940d12f56ca7859e" - integrity sha1-gTWEAhliqenm/QOflA0S9WynhZ4= - -ansi-regex@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" - integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= - -ansi-regex@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" - integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= - -ansi-regex@^4.0.0, ansi-regex@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" - integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== - -ansi-regex@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75" - integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg== - -ansi-styles@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" - integrity sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4= - -ansi-styles@^3.2.0, ansi-styles@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" - integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== - dependencies: - color-convert "^1.9.0" - -ansi-styles@^4.0.0, ansi-styles@^4.1.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.2.1.tgz#90ae75c424d008d2624c5bf29ead3177ebfcf359" - integrity sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA== - dependencies: - "@types/color-name" "^1.1.1" - color-convert "^2.0.1" - -any-observable@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/any-observable/-/any-observable-0.3.0.tgz#af933475e5806a67d0d7df090dd5e8bef65d119b" - integrity sha512-/FQM1EDkTsf63Ub2C6O7GuYFDsSXUwsaZDurV0np41ocwq0jthUAYCmhBX9f+KwlaCgIuWyr/4WlUQUBfKfZog== - -any-promise@^1.0.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f" - integrity sha1-q8av7tzqUugJzcA3au0845Y10X8= - -anymatch@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" - integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw== - dependencies: - micromatch "^3.1.4" - normalize-path "^2.1.1" - -anymatch@^3.0.3, anymatch@~3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.1.tgz#c55ecf02185e2469259399310c173ce31233b142" - integrity sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg== - dependencies: - normalize-path "^3.0.0" - picomatch "^2.0.4" - -apollo-cache-control@^0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/apollo-cache-control/-/apollo-cache-control-0.11.0.tgz#7075492d04c5424e7c6769380b503e8f75b39d61" - integrity sha512-dmRnQ9AXGw2SHahVGLzB/p4UW/taFBAJxifxubp8hqY5p9qdlSu4MPRq8zvV2ULMYf50rBtZyC4C+dZLqmHuHQ== - dependencies: - apollo-server-env "^2.4.4" - apollo-server-plugin-base "^0.9.0" - -apollo-cache-control@^0.11.1: - version "0.11.1" - resolved "https://registry.yarnpkg.com/apollo-cache-control/-/apollo-cache-control-0.11.1.tgz#3bce0924ae7322a8b9f7ca1e2fb036d1fc9f1df5" - integrity sha512-6iHa8TkcKt4rx5SKRzDNjUIpCQX+7/FlZwD7vRh9JDnM4VH8SWhpj8fUR3CiEY8Kuc4ChXnOY8bCcMju5KPnIQ== - dependencies: - apollo-server-env "^2.4.5" - apollo-server-plugin-base "^0.9.1" - -apollo-datasource@^0.7.1: - version "0.7.1" - resolved "https://registry.yarnpkg.com/apollo-datasource/-/apollo-datasource-0.7.1.tgz#0b06da999ace50b7f5fe509f2a03f7de97974334" - integrity sha512-h++/jQAY7GA+4TBM+7ezvctFmmGNLrAPf51KsagZj+NkT9qvxp585rdsuatynVbSl59toPK2EuVmc6ilmQHf+g== - dependencies: - apollo-server-caching "^0.5.1" - apollo-server-env "^2.4.4" - -apollo-datasource@^0.7.2: - version "0.7.2" - resolved "https://registry.yarnpkg.com/apollo-datasource/-/apollo-datasource-0.7.2.tgz#1662ee93453a9b89af6f73ce561bde46b41ebf31" - integrity sha512-ibnW+s4BMp4K2AgzLEtvzkjg7dJgCaw9M5b5N0YKNmeRZRnl/I/qBTQae648FsRKgMwTbRQIvBhQ0URUFAqFOw== - dependencies: - apollo-server-caching "^0.5.2" - apollo-server-env "^2.4.5" - -apollo-engine-reporting-protobuf@^0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/apollo-engine-reporting-protobuf/-/apollo-engine-reporting-protobuf-0.5.1.tgz#b6e66e6e382f9bcdc2ac8ed168b047eb1470c1a8" - integrity sha512-TSfr9iAaInV8dhXkesdcmqsthRkVcJkzznmiM+1Ob/GScK7r6hBYCjVDt2613EHAg9SUzTOltIKlGD+N+GJRUw== - dependencies: - "@apollo/protobufjs" "^1.0.3" - -apollo-engine-reporting-protobuf@^0.5.2: - version "0.5.2" - resolved "https://registry.yarnpkg.com/apollo-engine-reporting-protobuf/-/apollo-engine-reporting-protobuf-0.5.2.tgz#b01812508a1c583328a8dc603769bc63b8895e7e" - integrity sha512-4wm9FR3B7UvJxcK/69rOiS5CAJPEYKufeRWb257ZLfX7NGFTMqvbc1hu4q8Ch7swB26rTpkzfsftLED9DqH9qg== - dependencies: - "@apollo/protobufjs" "^1.0.3" - -apollo-engine-reporting@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/apollo-engine-reporting/-/apollo-engine-reporting-2.0.1.tgz#2192c6cb9aca1d3d40252fa7ed9ba23ef1b464a1" - integrity sha512-3OYYk7DqNuJ5xKYnyLy5O2n506jYSryim8WqzBTn9MRphRamwPFjHYQm+akPA60AubXrWnYa6A8euMAiQU0ttA== - dependencies: - apollo-engine-reporting-protobuf "^0.5.1" - apollo-graphql "^0.4.0" - apollo-server-caching "^0.5.1" - apollo-server-env "^2.4.4" - apollo-server-errors "^2.4.1" - apollo-server-plugin-base "^0.9.0" - apollo-server-types "^0.5.0" - async-retry "^1.2.1" - uuid "^8.0.0" - -apollo-engine-reporting@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/apollo-engine-reporting/-/apollo-engine-reporting-2.3.0.tgz#3bb59f81aaf6b967ed098896a4a60a053b4eed5a" - integrity sha512-SbcPLFuUZcRqDEZ6mSs8uHM9Ftr8yyt2IEu0JA8c3LNBmYXSLM7MHqFe80SVcosYSTBgtMz8mLJO8orhYoSYZw== - dependencies: - apollo-engine-reporting-protobuf "^0.5.2" - apollo-graphql "^0.5.0" - apollo-server-caching "^0.5.2" - apollo-server-env "^2.4.5" - apollo-server-errors "^2.4.2" - apollo-server-plugin-base "^0.9.1" - apollo-server-types "^0.5.1" - async-retry "^1.2.1" - uuid "^8.0.0" - -apollo-env@^0.6.5: - version "0.6.5" - resolved "https://registry.yarnpkg.com/apollo-env/-/apollo-env-0.6.5.tgz#5a36e699d39e2356381f7203493187260fded9f3" - integrity sha512-jeBUVsGymeTHYWp3me0R2CZRZrFeuSZeICZHCeRflHTfnQtlmbSXdy5E0pOyRM9CU4JfQkKDC98S1YglQj7Bzg== - dependencies: - "@types/node-fetch" "2.5.7" - core-js "^3.0.1" - node-fetch "^2.2.0" - sha.js "^2.4.11" - -apollo-graphql@^0.4.0: - version "0.4.5" - resolved "https://registry.yarnpkg.com/apollo-graphql/-/apollo-graphql-0.4.5.tgz#936529335010f9be9e239619b82fb9060c70521d" - integrity sha512-0qa7UOoq7E71kBYE7idi6mNQhHLVdMEDInWk6TNw3KsSWZE2/I68gARP84Mj+paFTO5NYuw1Dht66PVX76Cc2w== - dependencies: - apollo-env "^0.6.5" - lodash.sortby "^4.7.0" - -apollo-graphql@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/apollo-graphql/-/apollo-graphql-0.5.0.tgz#7e9152093211b58352aa6504d8d39ec7241d6872" - integrity sha512-YSdF/BKPbsnQpxWpmCE53pBJX44aaoif31Y22I/qKpB6ZSGzYijV5YBoCL5Q15H2oA/v/02Oazh9lbp4ek3eig== - dependencies: - apollo-env "^0.6.5" - lodash.sortby "^4.7.0" - -apollo-link-context@1.0.20: - version "1.0.20" - resolved "https://registry.yarnpkg.com/apollo-link-context/-/apollo-link-context-1.0.20.tgz#1939ac5dc65d6dff0c855ee53521150053c24676" - integrity sha512-MLLPYvhzNb8AglNsk2NcL9AvhO/Vc9hn2ZZuegbhRHGet3oGr0YH9s30NS9+ieoM0sGT11p7oZ6oAILM/kiRBA== - dependencies: - apollo-link "^1.2.14" - tslib "^1.9.3" - -apollo-link-http-common@^0.2.14, apollo-link-http-common@^0.2.16: - version "0.2.16" - resolved "https://registry.yarnpkg.com/apollo-link-http-common/-/apollo-link-http-common-0.2.16.tgz#756749dafc732792c8ca0923f9a40564b7c59ecc" - integrity sha512-2tIhOIrnaF4UbQHf7kjeQA/EmSorB7+HyJIIrUjJOKBgnXwuexi8aMecRlqTIDWcyVXCeqLhUnztMa6bOH/jTg== - dependencies: - apollo-link "^1.2.14" - ts-invariant "^0.4.0" - tslib "^1.9.3" - -apollo-link-http@1.5.17: - version "1.5.17" - resolved "https://registry.yarnpkg.com/apollo-link-http/-/apollo-link-http-1.5.17.tgz#499e9f1711bf694497f02c51af12d82de5d8d8ba" - integrity sha512-uWcqAotbwDEU/9+Dm9e1/clO7hTB2kQ/94JYcGouBVLjoKmTeJTUPQKcJGpPwUjZcSqgYicbFqQSoJIW0yrFvg== - dependencies: - apollo-link "^1.2.14" - apollo-link-http-common "^0.2.16" - tslib "^1.9.3" - -apollo-link@^1.2.12, apollo-link@^1.2.14: - version "1.2.14" - resolved "https://registry.yarnpkg.com/apollo-link/-/apollo-link-1.2.14.tgz#3feda4b47f9ebba7f4160bef8b977ba725b684d9" - integrity sha512-p67CMEFP7kOG1JZ0ZkYZwRDa369w5PIjtMjvrQd/HnIV8FRsHRqLqK+oAZQnFa1DDdZtOtHTi+aMIW6EatC2jg== - dependencies: - apollo-utilities "^1.3.0" - ts-invariant "^0.4.0" - tslib "^1.9.3" - zen-observable-ts "^0.8.21" - -apollo-server-caching@0.5.1, apollo-server-caching@^0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/apollo-server-caching/-/apollo-server-caching-0.5.1.tgz#5cd0536ad5473abb667cc82b59bc56b96fb35db6" - integrity sha512-L7LHZ3k9Ao5OSf2WStvQhxdsNVplRQi7kCAPfqf9Z3GBEnQ2uaL0EgO0hSmtVHfXTbk5CTRziMT1Pe87bXrFIw== - dependencies: - lru-cache "^5.0.0" - -apollo-server-caching@^0.5.2: - version "0.5.2" - resolved "https://registry.yarnpkg.com/apollo-server-caching/-/apollo-server-caching-0.5.2.tgz#bef5d5e0d48473a454927a66b7bb947a0b6eb13e" - integrity sha512-HUcP3TlgRsuGgeTOn8QMbkdx0hLPXyEJehZIPrcof0ATz7j7aTPA4at7gaiFHCo8gk07DaWYGB3PFgjboXRcWQ== - dependencies: - lru-cache "^5.0.0" - -apollo-server-core@^2.14.4: - version "2.14.4" - resolved "https://registry.yarnpkg.com/apollo-server-core/-/apollo-server-core-2.14.4.tgz#75a77ee37f5374359f5d59f4069a03a6871b3abf" - integrity sha512-aAfsvbJ2YrqAXDBgcBQocOmQJ5DkeOnEYQ6ADdkkDNU68V5yBRkAHLTOzPfbUlGHVrnOH8PT1FIVWwu5mBgkVA== - dependencies: - "@apollographql/apollo-tools" "^0.4.3" - "@apollographql/graphql-playground-html" "1.6.26" - "@types/graphql-upload" "^8.0.0" - "@types/ws" "^7.0.0" - apollo-cache-control "^0.11.0" - apollo-datasource "^0.7.1" - apollo-engine-reporting "^2.0.1" - apollo-server-caching "^0.5.1" - apollo-server-env "^2.4.4" - apollo-server-errors "^2.4.1" - apollo-server-plugin-base "^0.9.0" - apollo-server-types "^0.5.0" - apollo-tracing "^0.11.0" - fast-json-stable-stringify "^2.0.0" - graphql-extensions "^0.12.3" - graphql-tag "^2.9.2" - graphql-tools "^4.0.0" - graphql-upload "^8.0.2" - loglevel "^1.6.7" - sha.js "^2.4.11" - subscriptions-transport-ws "^0.9.11" - ws "^6.0.0" - -apollo-server-core@^2.16.0: - version "2.16.0" - resolved "https://registry.yarnpkg.com/apollo-server-core/-/apollo-server-core-2.16.0.tgz#56b367db49f97b7da03b29cef89b63d9ed14ee0c" - integrity sha512-mnvg2cPvsQtjFXIqIhEAbPqGyiSXDSbiBgNQ8rY8g7r2eRMhHKZePqGF03gP1/w87yVaSDRAZBDk6o+jiBXjVQ== - dependencies: - "@apollographql/apollo-tools" "^0.4.3" - "@apollographql/graphql-playground-html" "1.6.26" - "@types/graphql-upload" "^8.0.0" - "@types/ws" "^7.0.0" - apollo-cache-control "^0.11.1" - apollo-datasource "^0.7.2" - apollo-engine-reporting "^2.3.0" - apollo-server-caching "^0.5.2" - apollo-server-env "^2.4.5" - apollo-server-errors "^2.4.2" - apollo-server-plugin-base "^0.9.1" - apollo-server-types "^0.5.1" - apollo-tracing "^0.11.1" - fast-json-stable-stringify "^2.0.0" - graphql-extensions "^0.12.4" - graphql-tag "^2.9.2" - graphql-tools "^4.0.0" - graphql-upload "^8.0.2" - loglevel "^1.6.7" - sha.js "^2.4.11" - subscriptions-transport-ws "^0.9.11" - ws "^6.0.0" - -apollo-server-env@^2.4.4: - version "2.4.4" - resolved "https://registry.yarnpkg.com/apollo-server-env/-/apollo-server-env-2.4.4.tgz#12d2d0896dcb184478cba066c7a683ab18689ca1" - integrity sha512-c2oddDS3lwAl6QNCIKCLEzt/dF9M3/tjjYRVdxOVN20TidybI7rAbnT4QOzf4tORnGXtiznEAvr/Kc9ahhKADg== - dependencies: - node-fetch "^2.1.2" - util.promisify "^1.0.0" - -apollo-server-env@^2.4.5: - version "2.4.5" - resolved "https://registry.yarnpkg.com/apollo-server-env/-/apollo-server-env-2.4.5.tgz#73730b4f0439094a2272a9d0caa4079d4b661d5f" - integrity sha512-nfNhmGPzbq3xCEWT8eRpoHXIPNcNy3QcEoBlzVMjeglrBGryLG2LXwBSPnVmTRRrzUYugX0ULBtgE3rBFNoUgA== - dependencies: - node-fetch "^2.1.2" - util.promisify "^1.0.0" - -apollo-server-errors@^2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/apollo-server-errors/-/apollo-server-errors-2.4.1.tgz#16ad49de6c9134bfb2b7dede9842e73bb239dbe2" - integrity sha512-7oEd6pUxqyWYUbQ9TA8tM0NU/3aGtXSEibo6+txUkuHe7QaxfZ2wHRp+pfT1LC1K3RXYjKj61/C2xEO19s3Kdg== - -apollo-server-errors@^2.4.2: - version "2.4.2" - resolved "https://registry.yarnpkg.com/apollo-server-errors/-/apollo-server-errors-2.4.2.tgz#1128738a1d14da989f58420896d70524784eabe5" - integrity sha512-FeGxW3Batn6sUtX3OVVUm7o56EgjxDlmgpTLNyWcLb0j6P8mw9oLNyAm3B+deHA4KNdNHO5BmHS2g1SJYjqPCQ== - -apollo-server-express@^2.14.4: - version "2.14.4" - resolved "https://registry.yarnpkg.com/apollo-server-express/-/apollo-server-express-2.14.4.tgz#d4ae5dacb757d04e8c7702297884438db85df294" - integrity sha512-g0ml0NGmghvJhTiXMR0HqDD8eTz77zdgzDG2XoqNoRehtVIsZq8fmKTagVt9cUKCKKiBPUF+4tqAGD9lnprUdw== - dependencies: - "@apollographql/graphql-playground-html" "1.6.26" - "@types/accepts" "^1.3.5" - "@types/body-parser" "1.19.0" - "@types/cors" "^2.8.4" - "@types/express" "4.17.4" - accepts "^1.3.5" - apollo-server-core "^2.14.4" - apollo-server-types "^0.5.0" - body-parser "^1.18.3" - cors "^2.8.4" - express "^4.17.1" - graphql-subscriptions "^1.0.0" - graphql-tools "^4.0.0" - parseurl "^1.3.2" - subscriptions-transport-ws "^0.9.16" - type-is "^1.6.16" - -apollo-server-express@^2.16.0: - version "2.16.0" - resolved "https://registry.yarnpkg.com/apollo-server-express/-/apollo-server-express-2.16.0.tgz#3474a7f7eb868a2a847a364839147f8d7f26454a" - integrity sha512-mBIvKcF8gApj7wbmqe0A4Tsy+Pw66mI6cmtD912bG59KhUBveSCZ21dDlRSvnXUyK+GOo2ItwcUEtmks+Z2Pqw== - dependencies: - "@apollographql/graphql-playground-html" "1.6.26" - "@types/accepts" "^1.3.5" - "@types/body-parser" "1.19.0" - "@types/cors" "^2.8.4" - "@types/express" "4.17.4" - accepts "^1.3.5" - apollo-server-core "^2.16.0" - apollo-server-types "^0.5.1" - body-parser "^1.18.3" - cors "^2.8.4" - express "^4.17.1" - graphql-subscriptions "^1.0.0" - graphql-tools "^4.0.0" - parseurl "^1.3.2" - subscriptions-transport-ws "^0.9.16" - type-is "^1.6.16" - -apollo-server-plugin-base@^0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/apollo-server-plugin-base/-/apollo-server-plugin-base-0.9.0.tgz#777f720a1ee827a66b8c159073ca30645f8bc625" - integrity sha512-LWcPrsy2+xqwlNseh/QaGa/MPNopS8c4qGgh0g0cAn0lZBRrJ9Yab7dq+iQ6vdUBwIhUWYN6s9dwUWCZw2SL8g== - dependencies: - apollo-server-types "^0.5.0" - -apollo-server-plugin-base@^0.9.1: - version "0.9.1" - resolved "https://registry.yarnpkg.com/apollo-server-plugin-base/-/apollo-server-plugin-base-0.9.1.tgz#a62ae9ab4e89790fd4cc5d123bb616da34e8e5fb" - integrity sha512-kvrX4Z3FdpjrZdHkyl5iY2A1Wvp4b6KQp00DeZqss7GyyKNUBKr80/7RQgBLEw7EWM7WB19j459xM/TjvW0FKQ== - dependencies: - apollo-server-types "^0.5.1" - -apollo-server-types@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/apollo-server-types/-/apollo-server-types-0.5.0.tgz#51f39c5fa610ece8b07f1fbcf63c47d4ac150340" - integrity sha512-zhtsqqqfdeoJQAfc41Sy6WnnBVxKNgZ34BKXf/Q+kXmw7rbZ/B5SG3SJMvj1iFsbzZxILmWdUsE9aD20lEr0bg== - dependencies: - apollo-engine-reporting-protobuf "^0.5.1" - apollo-server-caching "^0.5.1" - apollo-server-env "^2.4.4" - -apollo-server-types@^0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/apollo-server-types/-/apollo-server-types-0.5.1.tgz#091c09652894d6532db9ba873574443adabf85b9" - integrity sha512-my2cPw+DAb2qVnIuBcsRKGyS28uIc2vjFxa1NpRoJZe9gK0BWUBk7wzXnIzWy3HZ5Er11e/40MPTUesNfMYNVA== - dependencies: - apollo-engine-reporting-protobuf "^0.5.2" - apollo-server-caching "^0.5.2" - apollo-server-env "^2.4.5" - -apollo-server@2.14.4, apollo-server@^2.9.3: - version "2.14.4" - resolved "https://registry.yarnpkg.com/apollo-server/-/apollo-server-2.14.4.tgz#7567f072d8552d0a9c3b58febb95bccfc94f9daa" - integrity sha512-5RRs/UnzZMK+QGqCE8Wyfy5vNBFPmweFlkMRs966pM+6orN/g2GxxypKRsGa2rit2Wz0wki8vw+MjI80t2lPvg== - dependencies: - apollo-server-core "^2.14.4" - apollo-server-express "^2.14.4" - express "^4.0.0" - graphql-subscriptions "^1.0.0" - graphql-tools "^4.0.0" - -apollo-server@2.16.0: - version "2.16.0" - resolved "https://registry.yarnpkg.com/apollo-server/-/apollo-server-2.16.0.tgz#fa30e29b78e8cb70b2c81d0f7b96953beb3d4baf" - integrity sha512-zbEe0FSqatqE6bmIfq/o1/Hsqc596ZOwZM/L8Ttwa4ucQ1ybqf1ZejSYu6ehFEj1G6rOBY1ttVKkIllcErK4GQ== - dependencies: - apollo-server-core "^2.16.0" - apollo-server-express "^2.16.0" - express "^4.0.0" - graphql-subscriptions "^1.0.0" - graphql-tools "^4.0.0" - -apollo-tracing@^0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/apollo-tracing/-/apollo-tracing-0.11.0.tgz#8821eb60692f77c06660fb6bc147446f600aecfe" - integrity sha512-I9IFb/8lkBW8ZwOAi4LEojfT7dMfUSkpnV8LHQI8Rcj0HtzL9HObQ3woBmzyGHdGHLFuD/6/VHyFD67SesSrJg== - dependencies: - apollo-server-env "^2.4.4" - apollo-server-plugin-base "^0.9.0" - -apollo-tracing@^0.11.1: - version "0.11.1" - resolved "https://registry.yarnpkg.com/apollo-tracing/-/apollo-tracing-0.11.1.tgz#3e3a4ce4b21e57dcc57b10bbd539db243b752606" - integrity sha512-l7g+uILw7v32GA46IRXIx5XXbZhFI96BhSqrGK9yyvfq+NMcvVZrj3kIhRImPGhAjMdV+5biA/jztabElAbDjg== - dependencies: - apollo-server-env "^2.4.5" - apollo-server-plugin-base "^0.9.1" - -apollo-upload-client@^13.0.0: - version "13.0.0" - resolved "https://registry.yarnpkg.com/apollo-upload-client/-/apollo-upload-client-13.0.0.tgz#146d1ddd85d711fcac8ca97a72d3ca6787f2b71b" - integrity sha512-lJ9/bk1BH1lD15WhWRha2J3+LrXrPIX5LP5EwiOUHv8PCORp4EUrcujrA3rI5hZeZygrTX8bshcuMdpqpSrvtA== - dependencies: - "@babel/runtime" "^7.9.2" - apollo-link "^1.2.12" - apollo-link-http-common "^0.2.14" - extract-files "^8.0.0" - -apollo-utilities@^1.0.1, apollo-utilities@^1.3.0: - version "1.3.4" - resolved "https://registry.yarnpkg.com/apollo-utilities/-/apollo-utilities-1.3.4.tgz#6129e438e8be201b6c55b0f13ce49d2c7175c9cf" - integrity sha512-pk2hiWrCXMAy2fRPwEyhvka+mqwzeP60Jr1tRYi5xru+3ko94HI9o6lK0CT33/w4RDlxWchmdhDCrvdr+pHCig== - dependencies: - "@wry/equality" "^0.1.2" - fast-json-stable-stringify "^2.0.0" - ts-invariant "^0.4.0" - tslib "^1.10.0" - -app-root-path@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/app-root-path/-/app-root-path-3.0.0.tgz#210b6f43873227e18a4b810a032283311555d5ad" - integrity sha512-qMcx+Gy2UZynHjOHOIXPNvpf+9cjvk3cWrBBK7zg4gH9+clobJRb9NGzcT7mQTcV/6Gm/1WelUtqxVXnNlrwcw== - -aproba@^1.0.3, aproba@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" - integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== - -aproba@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/aproba/-/aproba-2.0.0.tgz#52520b8ae5b569215b354efc0caa3fe1e45a8adc" - integrity sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ== - -are-we-there-yet@~1.1.2: - version "1.1.5" - resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz#4b35c2944f062a8bfcda66410760350fe9ddfc21" - integrity sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w== - dependencies: - delegates "^1.0.0" - readable-stream "^2.0.6" - -arg@^4.1.0: - version "4.1.3" - resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089" - integrity sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA== - -argparse@^1.0.7: - version "1.0.10" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" - integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== - dependencies: - sprintf-js "~1.0.2" - -aria-query@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-3.0.0.tgz#65b3fcc1ca1155a8c9ae64d6eee297f15d5133cc" - integrity sha1-ZbP8wcoRVajJrmTW7uKX8V1RM8w= - dependencies: - ast-types-flow "0.0.7" - commander "^2.11.0" - -arity-n@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/arity-n/-/arity-n-1.0.4.tgz#d9e76b11733e08569c0847ae7b39b2860b30b745" - integrity sha1-2edrEXM+CFacCEeuezmyhgswt0U= - -arr-diff@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" - integrity sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA= - -arr-flatten@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" - integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== - -arr-union@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" - integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ= - -array-differ@^2.0.3: - version "2.1.0" - resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-2.1.0.tgz#4b9c1c3f14b906757082925769e8ab904f4801b1" - integrity sha512-KbUpJgx909ZscOc/7CLATBFam7P1Z1QRQInvgT0UztM9Q72aGKCunKASAl7WNW0tnPmPyEMeMhdsfWhfmW037w== - -array-equal@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93" - integrity sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM= - -array-find-index@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1" - integrity sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E= - -array-flatten@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" - integrity sha1-ml9pkFGx5wczKPKgCJaLZOopVdI= - -array-flatten@^2.1.0: - version "2.1.2" - resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-2.1.2.tgz#24ef80a28c1a893617e2149b0c6d0d788293b099" - integrity sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ== - -array-ify@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/array-ify/-/array-ify-1.0.0.tgz#9e528762b4a9066ad163a6962a364418e9626ece" - integrity sha1-nlKHYrSpBmrRY6aWKjZEGOlibs4= - -array-includes@^3.0.3, array-includes@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.1.tgz#cdd67e6852bdf9c1215460786732255ed2459348" - integrity sha512-c2VXaCHl7zPsvpkFsw4nxvFie4fh1ur9bpcgsVkIjqn0H/Xwdg+7fv3n2r/isyS8EBj5b06M9kHyZuIr4El6WQ== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.0" - is-string "^1.0.5" - -array-union@^1.0.1, array-union@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" - integrity sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk= - dependencies: - array-uniq "^1.0.1" - -array-union@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" - integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== - -array-uniq@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" - integrity sha1-r2rId6Jcx/dOBYiUdThY39sk/bY= - -array-unique@^0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" - integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= - -array.prototype.flat@^1.2.1: - version "1.2.3" - resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.2.3.tgz#0de82b426b0318dbfdb940089e38b043d37f6c7b" - integrity sha512-gBlRZV0VSmfPIeWfuuy56XZMvbVfbEUnOXUvt3F/eUUUSyzlgLxhEX4YAEpxNAogRGehPSnfXyPtYyKAhkzQhQ== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.0-next.1" - -array.prototype.flatmap@1.2.3: - version "1.2.3" - resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.2.3.tgz#1c13f84a178566042dd63de4414440db9222e443" - integrity sha512-OOEk+lkePcg+ODXIpvuU9PAryCikCJyo7GlDG1upleEpQRx6mzL9puEBkozQ5iAx20KV0l3DbyQwqciJtqe5Pg== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.0-next.1" - function-bind "^1.1.1" - -arrify@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" - integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= - -arrify@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/arrify/-/arrify-2.0.1.tgz#c9655e9331e0abcd588d2a7cad7e9956f66701fa" - integrity sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug== - -asap@^2.0.0, asap@~2.0.3, asap@~2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" - integrity sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY= - -asn1.js@^4.0.0: - version "4.10.1" - resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.10.1.tgz#b9c2bf5805f1e64aadeed6df3a2bfafb5a73f5a0" - integrity sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw== - dependencies: - bn.js "^4.0.0" - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - -asn1@~0.2.3: - version "0.2.4" - resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.4.tgz#8d2475dfab553bb33e77b54e59e880bb8ce23136" - integrity sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg== - dependencies: - safer-buffer "~2.1.0" - -assert-plus@1.0.0, assert-plus@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" - integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= - -assert@1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/assert/-/assert-1.4.1.tgz#99912d591836b5a6f5b345c0f07eefc08fc65d91" - integrity sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE= - dependencies: - util "0.10.3" - -assert@^1.1.1: - version "1.5.0" - resolved "https://registry.yarnpkg.com/assert/-/assert-1.5.0.tgz#55c109aaf6e0aefdb3dc4b71240c70bf574b18eb" - integrity sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA== - dependencies: - object-assign "^4.1.1" - util "0.10.3" - -assign-symbols@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" - integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c= - -ast-types-flow@0.0.7, ast-types-flow@^0.0.7: - version "0.0.7" - resolved "https://registry.yarnpkg.com/ast-types-flow/-/ast-types-flow-0.0.7.tgz#f70b735c6bca1a5c9c22d982c3e39e7feba3bdad" - integrity sha1-9wtzXGvKGlycItmCw+Oef+ujva0= - -astral-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9" - integrity sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg== - -astral-regex@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" - integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== - -async-each@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.3.tgz#b727dbf87d7651602f06f4d4ac387f47d91b0cbf" - integrity sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ== - -async-limiter@~1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.1.tgz#dd379e94f0db8310b08291f9d64c3209766617fd" - integrity sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ== - -async-retry@^1.2.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/async-retry/-/async-retry-1.3.1.tgz#139f31f8ddce50c0870b0ba558a6079684aaed55" - integrity sha512-aiieFW/7h3hY0Bq5d+ktDBejxuwR78vRu9hDUdR8rNhSaQ29VzPL4AoIRG7D/c7tdenwOcKvgPM6tIxB3cB6HA== - dependencies: - retry "0.12.0" - -async@^2.6.2: - version "2.6.3" - resolved "https://registry.yarnpkg.com/async/-/async-2.6.3.tgz#d72625e2344a3656e3a3ad4fa749fa83299d82ff" - integrity sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg== - dependencies: - lodash "^4.17.14" - -asynckit@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" - integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= - -at-least-node@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2" - integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg== - -atob-lite@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/atob-lite/-/atob-lite-2.0.0.tgz#0fef5ad46f1bd7a8502c65727f0367d5ee43d696" - integrity sha1-D+9a1G8b16hQLGVyfwNn1e5D1pY= - -atob@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" - integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== - -auto-bind@~4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/auto-bind/-/auto-bind-4.0.0.tgz#e3589fc6c2da8f7ca43ba9f84fa52a744fc997fb" - integrity sha512-Hdw8qdNiqdJ8LqT0iK0sVzkFbzg6fhnQqqfWhBDxcHZvU75+B+ayzTy8x+k5Ix0Y92XOhOUlx74ps+bA6BeYMQ== - -autoprefixer@^9.6.1: - version "9.8.0" - resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.8.0.tgz#68e2d2bef7ba4c3a65436f662d0a56a741e56511" - integrity sha512-D96ZiIHXbDmU02dBaemyAg53ez+6F5yZmapmgKcjm35yEe1uVDYI8hGW3VYoGRaG290ZFf91YxHrR518vC0u/A== - dependencies: - browserslist "^4.12.0" - caniuse-lite "^1.0.30001061" - chalk "^2.4.2" - normalize-range "^0.1.2" - num2fraction "^1.2.2" - postcss "^7.0.30" - postcss-value-parser "^4.1.0" - -aws-sign2@~0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" - integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= - -aws4@^1.8.0: - version "1.10.0" - resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.10.0.tgz#a17b3a8ea811060e74d47d306122400ad4497ae2" - integrity sha512-3YDiu347mtVtjpyV3u5kVqQLP242c06zwDOgpeRnybmXlYYsLbtTrUBUm8i8srONt+FWobl5aibnU1030PeeuA== - -axobject-query@^2.0.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/axobject-query/-/axobject-query-2.1.2.tgz#2bdffc0371e643e5f03ba99065d5179b9ca79799" - integrity sha512-ICt34ZmrVt8UQnvPl6TVyDTkmhXmAyAT4Jh5ugfGUX4MOrZ+U/ZY6/sdylRw3qGNr9Ub5AJsaHeDMzNLehRdOQ== - -babel-code-frame@^6.22.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" - integrity sha1-Y/1D99weO7fONZR9uP42mj9Yx0s= - dependencies: - chalk "^1.1.3" - esutils "^2.0.2" - js-tokens "^3.0.2" - -babel-eslint@10.1.0: - version "10.1.0" - resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-10.1.0.tgz#6968e568a910b78fb3779cdd8b6ac2f479943232" - integrity sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg== - dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/parser" "^7.7.0" - "@babel/traverse" "^7.7.0" - "@babel/types" "^7.7.0" - eslint-visitor-keys "^1.0.0" - resolve "^1.12.0" - -babel-extract-comments@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/babel-extract-comments/-/babel-extract-comments-1.0.0.tgz#0a2aedf81417ed391b85e18b4614e693a0351a21" - integrity sha512-qWWzi4TlddohA91bFwgt6zO/J0X+io7Qp184Fw0m2JYRSTZnJbFR8+07KmzudHCZgOiKRCrjhylwv9Xd8gfhVQ== - dependencies: - babylon "^6.18.0" - -babel-jest@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-24.9.0.tgz#3fc327cb8467b89d14d7bc70e315104a783ccd54" - integrity sha512-ntuddfyiN+EhMw58PTNL1ph4C9rECiQXjI4nMMBKBaNjXvqLdkXpPRcMSr4iyBrJg/+wz9brFUD6RhOAT6r4Iw== - dependencies: - "@jest/transform" "^24.9.0" - "@jest/types" "^24.9.0" - "@types/babel__core" "^7.1.0" - babel-plugin-istanbul "^5.1.0" - babel-preset-jest "^24.9.0" - chalk "^2.4.2" - slash "^2.0.0" - -babel-jest@^26.2.2: - version "26.2.2" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-26.2.2.tgz#70f618f2d7016ed71b232241199308985462f812" - integrity sha512-JmLuePHgA+DSOdOL8lPxCgD2LhPPm+rdw1vnxR73PpIrnmKCS2/aBhtkAcxQWuUcW2hBrH8MJ3LKXE7aWpNZyA== - dependencies: - "@jest/transform" "^26.2.2" - "@jest/types" "^26.2.0" - "@types/babel__core" "^7.1.7" - babel-plugin-istanbul "^6.0.0" - babel-preset-jest "^26.2.0" - chalk "^4.0.0" - graceful-fs "^4.2.4" - slash "^3.0.0" - -babel-loader@8.1.0: - version "8.1.0" - resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.1.0.tgz#c611d5112bd5209abe8b9fa84c3e4da25275f1c3" - integrity sha512-7q7nC1tYOrqvUrN3LQK4GwSk/TQorZSOlO9C+RZDZpODgyN4ZlCqE5q9cDsyWOliN+aU9B4JX01xK9eJXowJLw== - dependencies: - find-cache-dir "^2.1.0" - loader-utils "^1.4.0" - mkdirp "^0.5.3" - pify "^4.0.1" - schema-utils "^2.6.5" - -babel-plugin-dynamic-import-node@^2.3.3: - version "2.3.3" - resolved "https://registry.yarnpkg.com/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz#84fda19c976ec5c6defef57f9427b3def66e17a3" - integrity sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ== - dependencies: - object.assign "^4.1.0" - -babel-plugin-istanbul@^5.1.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-5.2.0.tgz#df4ade83d897a92df069c4d9a25cf2671293c854" - integrity sha512-5LphC0USA8t4i1zCtjbbNb6jJj/9+X6P37Qfirc/70EQ34xKlMW+a1RHGwxGI+SwWpNwZ27HqvzAobeqaXwiZw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - find-up "^3.0.0" - istanbul-lib-instrument "^3.3.0" - test-exclude "^5.2.3" - -babel-plugin-istanbul@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.0.0.tgz#e159ccdc9af95e0b570c75b4573b7c34d671d765" - integrity sha512-AF55rZXpe7trmEylbaE1Gv54wn6rwU03aptvRoVIGP8YykoSxqdVLV1TfwflBCE/QtHmqtP8SWlTENqbK8GCSQ== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@istanbuljs/load-nyc-config" "^1.0.0" - "@istanbuljs/schema" "^0.1.2" - istanbul-lib-instrument "^4.0.0" - test-exclude "^6.0.0" - -babel-plugin-jest-hoist@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-24.9.0.tgz#4f837091eb407e01447c8843cbec546d0002d756" - integrity sha512-2EMA2P8Vp7lG0RAzr4HXqtYwacfMErOuv1U3wrvxHX6rD1sV6xS3WXG3r8TRQ2r6w8OhvSdWt+z41hQNwNm3Xw== - dependencies: - "@types/babel__traverse" "^7.0.6" - -babel-plugin-jest-hoist@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.2.0.tgz#bdd0011df0d3d513e5e95f76bd53b51147aca2dd" - integrity sha512-B/hVMRv8Nh1sQ1a3EY8I0n4Y1Wty3NrR5ebOyVT302op+DOAau+xNEImGMsUWOC3++ZlMooCytKz+NgN8aKGbA== - dependencies: - "@babel/template" "^7.3.3" - "@babel/types" "^7.3.3" - "@types/babel__core" "^7.0.0" - "@types/babel__traverse" "^7.0.6" - -babel-plugin-macros@2.8.0: - version "2.8.0" - resolved "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-2.8.0.tgz#0f958a7cc6556b1e65344465d99111a1e5e10138" - integrity sha512-SEP5kJpfGYqYKpBrj5XU3ahw5p5GOHJ0U5ssOSQ/WBVdwkD2Dzlce95exQTs3jOVWPPKLBN2rlEWkCK7dSmLvg== - dependencies: - "@babel/runtime" "^7.7.2" - cosmiconfig "^6.0.0" - resolve "^1.12.0" - -babel-plugin-named-asset-import@^0.3.6: - version "0.3.6" - resolved "https://registry.yarnpkg.com/babel-plugin-named-asset-import/-/babel-plugin-named-asset-import-0.3.6.tgz#c9750a1b38d85112c9e166bf3ef7c5dbc605f4be" - integrity sha512-1aGDUfL1qOOIoqk9QKGIo2lANk+C7ko/fqH0uIyC71x3PEGz0uVP8ISgfEsFuG+FKmjHTvFK/nNM8dowpmUxLA== - -babel-plugin-syntax-object-rest-spread@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz#fd6536f2bce13836ffa3a5458c4903a597bb3bf5" - integrity sha1-/WU28rzhODb/o6VFjEkDpZe7O/U= - -babel-plugin-syntax-trailing-function-commas@^7.0.0-beta.0: - version "7.0.0-beta.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-7.0.0-beta.0.tgz#aa213c1435e2bffeb6fca842287ef534ad05d5cf" - integrity sha512-Xj9XuRuz3nTSbaTXWv3itLOcxyF4oPD8douBBmj7U9BBC6nEBYfyOJYQMf/8PJAFotC62UY5dFfIGEPr7WswzQ== - -babel-plugin-transform-object-rest-spread@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz#0f36692d50fef6b7e2d4b3ac1478137a963b7b06" - integrity sha1-DzZpLVD+9rfi1LOsFHgTepY7ewY= - dependencies: - babel-plugin-syntax-object-rest-spread "^6.8.0" - babel-runtime "^6.26.0" - -babel-plugin-transform-react-remove-prop-types@0.4.24: - version "0.4.24" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-remove-prop-types/-/babel-plugin-transform-react-remove-prop-types-0.4.24.tgz#f2edaf9b4c6a5fbe5c1d678bfb531078c1555f3a" - integrity sha512-eqj0hVcJUR57/Ug2zE1Yswsw4LhuqqHhD+8v120T1cl3kjg76QwtyBrdIk4WVwK+lAhBJVYCd/v+4nc4y+8JsA== - -babel-polyfill@6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-polyfill/-/babel-polyfill-6.23.0.tgz#8364ca62df8eafb830499f699177466c3b03499d" - integrity sha1-g2TKYt+Or7gwSZ9pkXdGbDsDSZ0= - dependencies: - babel-runtime "^6.22.0" - core-js "^2.4.0" - regenerator-runtime "^0.10.0" - -babel-preset-current-node-syntax@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-0.1.2.tgz#fb4a4c51fe38ca60fede1dc74ab35eb843cb41d6" - integrity sha512-u/8cS+dEiK1SFILbOC8/rUI3ml9lboKuuMvZ/4aQnQmhecQAgPw5ew066C1ObnEAUmlx7dv/s2z52psWEtLNiw== - dependencies: - "@babel/plugin-syntax-async-generators" "^7.8.4" - "@babel/plugin-syntax-bigint" "^7.8.3" - "@babel/plugin-syntax-class-properties" "^7.8.3" - "@babel/plugin-syntax-json-strings" "^7.8.3" - "@babel/plugin-syntax-logical-assignment-operators" "^7.8.3" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" - "@babel/plugin-syntax-numeric-separator" "^7.8.3" - "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" - "@babel/plugin-syntax-optional-chaining" "^7.8.3" - -babel-preset-fbjs@^3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/babel-preset-fbjs/-/babel-preset-fbjs-3.3.0.tgz#a6024764ea86c8e06a22d794ca8b69534d263541" - integrity sha512-7QTLTCd2gwB2qGoi5epSULMHugSVgpcVt5YAeiFO9ABLrutDQzKfGwzxgZHLpugq8qMdg/DhRZDZ5CLKxBkEbw== - dependencies: - "@babel/plugin-proposal-class-properties" "^7.0.0" - "@babel/plugin-proposal-object-rest-spread" "^7.0.0" - "@babel/plugin-syntax-class-properties" "^7.0.0" - "@babel/plugin-syntax-flow" "^7.0.0" - "@babel/plugin-syntax-jsx" "^7.0.0" - "@babel/plugin-syntax-object-rest-spread" "^7.0.0" - "@babel/plugin-transform-arrow-functions" "^7.0.0" - "@babel/plugin-transform-block-scoped-functions" "^7.0.0" - "@babel/plugin-transform-block-scoping" "^7.0.0" - "@babel/plugin-transform-classes" "^7.0.0" - "@babel/plugin-transform-computed-properties" "^7.0.0" - "@babel/plugin-transform-destructuring" "^7.0.0" - "@babel/plugin-transform-flow-strip-types" "^7.0.0" - "@babel/plugin-transform-for-of" "^7.0.0" - "@babel/plugin-transform-function-name" "^7.0.0" - "@babel/plugin-transform-literals" "^7.0.0" - "@babel/plugin-transform-member-expression-literals" "^7.0.0" - "@babel/plugin-transform-modules-commonjs" "^7.0.0" - "@babel/plugin-transform-object-super" "^7.0.0" - "@babel/plugin-transform-parameters" "^7.0.0" - "@babel/plugin-transform-property-literals" "^7.0.0" - "@babel/plugin-transform-react-display-name" "^7.0.0" - "@babel/plugin-transform-react-jsx" "^7.0.0" - "@babel/plugin-transform-shorthand-properties" "^7.0.0" - "@babel/plugin-transform-spread" "^7.0.0" - "@babel/plugin-transform-template-literals" "^7.0.0" - babel-plugin-syntax-trailing-function-commas "^7.0.0-beta.0" - -babel-preset-jest@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-24.9.0.tgz#192b521e2217fb1d1f67cf73f70c336650ad3cdc" - integrity sha512-izTUuhE4TMfTRPF92fFwD2QfdXaZW08qvWTFCI51V8rW5x00UuPgc3ajRoWofXOuxjfcOM5zzSYsQS3H8KGCAg== - dependencies: - "@babel/plugin-syntax-object-rest-spread" "^7.0.0" - babel-plugin-jest-hoist "^24.9.0" - -babel-preset-jest@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-26.2.0.tgz#f198201a4e543a43eb40bc481e19736e095fd3e0" - integrity sha512-R1k8kdP3R9phYQugXeNnK/nvCGlBzG4m3EoIIukC80GXb6wCv2XiwPhK6K9MAkQcMszWBYvl2Wm+yigyXFQqXg== - dependencies: - babel-plugin-jest-hoist "^26.2.0" - babel-preset-current-node-syntax "^0.1.2" - -babel-preset-react-app@^9.1.2: - version "9.1.2" - resolved "https://registry.yarnpkg.com/babel-preset-react-app/-/babel-preset-react-app-9.1.2.tgz#54775d976588a8a6d1a99201a702befecaf48030" - integrity sha512-k58RtQOKH21NyKtzptoAvtAODuAJJs3ZhqBMl456/GnXEQ/0La92pNmwgWoMn5pBTrsvk3YYXdY7zpY4e3UIxA== - dependencies: - "@babel/core" "7.9.0" - "@babel/plugin-proposal-class-properties" "7.8.3" - "@babel/plugin-proposal-decorators" "7.8.3" - "@babel/plugin-proposal-nullish-coalescing-operator" "7.8.3" - "@babel/plugin-proposal-numeric-separator" "7.8.3" - "@babel/plugin-proposal-optional-chaining" "7.9.0" - "@babel/plugin-transform-flow-strip-types" "7.9.0" - "@babel/plugin-transform-react-display-name" "7.8.3" - "@babel/plugin-transform-runtime" "7.9.0" - "@babel/preset-env" "7.9.0" - "@babel/preset-react" "7.9.1" - "@babel/preset-typescript" "7.9.0" - "@babel/runtime" "7.9.0" - babel-plugin-macros "2.8.0" - babel-plugin-transform-react-remove-prop-types "0.4.24" - -babel-runtime@^6.22.0, babel-runtime@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" - integrity sha1-llxwWGaOgrVde/4E/yM3vItWR/4= - dependencies: - core-js "^2.4.0" - regenerator-runtime "^0.11.0" - -babylon@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" - integrity sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ== - -backo2@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/backo2/-/backo2-1.0.2.tgz#31ab1ac8b129363463e35b3ebb69f4dfcfba7947" - integrity sha1-MasayLEpNjRj41s+u2n038+6eUc= - -balanced-match@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" - integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= - -base32.js@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/base32.js/-/base32.js-0.0.1.tgz#d045736a57b1f6c139f0c7df42518a84e91bb2ba" - integrity sha1-0EVzalex9sE58MffQlGKhOkbsro= - -base64-js@^1.0.2: - version "1.3.1" - resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.1.tgz#58ece8cb75dd07e71ed08c736abc5fac4dbf8df1" - integrity sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g== - -base@^0.11.1: - version "0.11.2" - resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" - integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== - dependencies: - cache-base "^1.0.1" - class-utils "^0.3.5" - component-emitter "^1.2.1" - define-property "^1.0.0" - isobject "^3.0.1" - mixin-deep "^1.2.0" - pascalcase "^0.1.1" - -batch@0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/batch/-/batch-0.6.1.tgz#dc34314f4e679318093fc760272525f94bf25c16" - integrity sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY= - -bcrypt-pbkdf@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" - integrity sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4= - dependencies: - tweetnacl "^0.14.3" - -bcryptjs@^2.4.3: - version "2.4.3" - resolved "https://registry.yarnpkg.com/bcryptjs/-/bcryptjs-2.4.3.tgz#9ab5627b93e60621ff7cdac5da9733027df1d0cb" - integrity sha1-mrVie5PmBiH/fNrF2pczAn3x0Ms= - -before-after-hook@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/before-after-hook/-/before-after-hook-2.1.0.tgz#b6c03487f44e24200dd30ca5e6a1979c5d2fb635" - integrity sha512-IWIbu7pMqyw3EAJHzzHbWa85b6oud/yfKYg5rqB5hNE8CeMi3nX+2C2sj0HswfblST86hpVEOAb9x34NZd6P7A== - -big.js@^5.2.2: - version "5.2.2" - resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" - integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ== - -binary-extensions@^1.0.0: - version "1.13.1" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.13.1.tgz#598afe54755b2868a5330d2aff9d4ebb53209b65" - integrity sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw== - -binary-extensions@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.0.0.tgz#23c0df14f6a88077f5f986c0d167ec03c3d5537c" - integrity sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow== - -bindings@^1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df" - integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ== - dependencies: - file-uri-to-path "1.0.0" - -bl@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/bl/-/bl-2.2.0.tgz#e1a574cdf528e4053019bb800b041c0ac88da493" - integrity sha512-wbgvOpqopSr7uq6fJrLH8EsvYMJf9gzfo2jCsL2eTy75qXPukA4pCgHamOQkZtY5vmfVtjB+P3LNlMHW5CEZXA== - dependencies: - readable-stream "^2.3.5" - safe-buffer "^5.1.1" - -bluebird@3.5.1: - version "3.5.1" - resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.1.tgz#d9551f9de98f1fcda1e683d17ee91a0602ee2eb9" - integrity sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA== - -bluebird@^3.5.0, bluebird@^3.5.1, bluebird@^3.5.3, bluebird@^3.5.5: - version "3.7.2" - resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" - integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== - -bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.4.0: - version "4.11.9" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.9.tgz#26d556829458f9d1e81fc48952493d0ba3507828" - integrity sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw== - -bn.js@^5.1.1: - version "5.1.2" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.1.2.tgz#c9686902d3c9a27729f43ab10f9d79c2004da7b0" - integrity sha512-40rZaf3bUNKTVYu9sIeeEGOg7g14Yvnj9kH7b50EiwX0Q7A6umbvfI5tvHaOERH0XigqKkfLkFQxzb4e6CIXnA== - -body-parser@1.19.0, body-parser@^1.18.3: - version "1.19.0" - resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.19.0.tgz#96b2709e57c9c4e09a6fd66a8fd979844f69f08a" - integrity sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw== - 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" - -bonjour@^3.5.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/bonjour/-/bonjour-3.5.0.tgz#8e890a183d8ee9a2393b3844c691a42bcf7bc9f5" - integrity sha1-jokKGD2O6aI5OzhExpGkK897yfU= - 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" - -boolbase@^1.0.0, boolbase@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" - integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24= - -boxen@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/boxen/-/boxen-4.2.0.tgz#e411b62357d6d6d36587c8ac3d5d974daa070e64" - integrity sha512-eB4uT9RGzg2odpER62bBwSLvUeGC+WbRjjyyFhGsKnc8wp/m0+hQsMUvUe3H2V0D5vw0nBdO1hCJoZo5mKeuIQ== - dependencies: - ansi-align "^3.0.0" - camelcase "^5.3.1" - chalk "^3.0.0" - cli-boxes "^2.2.0" - string-width "^4.1.0" - term-size "^2.1.0" - type-fest "^0.8.1" - widest-line "^3.1.0" - -brace-expansion@^1.1.7: - version "1.1.11" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" - integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== - dependencies: - balanced-match "^1.0.0" - concat-map "0.0.1" - -braces@^2.3.1, braces@^2.3.2: - version "2.3.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" - integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== - dependencies: - arr-flatten "^1.1.0" - array-unique "^0.3.2" - extend-shallow "^2.0.1" - fill-range "^4.0.0" - isobject "^3.0.1" - repeat-element "^1.1.2" - snapdragon "^0.8.1" - snapdragon-node "^2.0.1" - split-string "^3.0.2" - to-regex "^3.0.1" - -braces@^3.0.1, braces@~3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" - integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== - dependencies: - fill-range "^7.0.1" - -brorand@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" - integrity sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8= - -browser-process-hrtime@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" - integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow== - -browser-resolve@^1.11.3: - version "1.11.3" - resolved "https://registry.yarnpkg.com/browser-resolve/-/browser-resolve-1.11.3.tgz#9b7cbb3d0f510e4cb86bdbd796124d28b5890af6" - integrity sha512-exDi1BYWB/6raKHmDTCicQfTkqwN5fioMFV4j8BsfMU4R2DK/QfZfK7kOVkmWCNANf0snkBzqGqAJBao9gZMdQ== - dependencies: - resolve "1.1.7" - -browserify-aes@^1.0.0, browserify-aes@^1.0.4: - version "1.2.0" - resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" - integrity sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA== - dependencies: - buffer-xor "^1.0.3" - cipher-base "^1.0.0" - create-hash "^1.1.0" - evp_bytestokey "^1.0.3" - inherits "^2.0.1" - safe-buffer "^5.0.1" - -browserify-cipher@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.1.tgz#8d6474c1b870bfdabcd3bcfcc1934a10e94f15f0" - integrity sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w== - dependencies: - browserify-aes "^1.0.4" - browserify-des "^1.0.0" - evp_bytestokey "^1.0.0" - -browserify-des@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.2.tgz#3af4f1f59839403572f1c66204375f7a7f703e9c" - integrity sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A== - dependencies: - cipher-base "^1.0.1" - des.js "^1.0.0" - inherits "^2.0.1" - safe-buffer "^5.1.2" - -browserify-rsa@^4.0.0, browserify-rsa@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.0.1.tgz#21e0abfaf6f2029cf2fafb133567a701d4135524" - integrity sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ= - dependencies: - bn.js "^4.1.0" - randombytes "^2.0.1" - -browserify-sign@^4.0.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.2.0.tgz#545d0b1b07e6b2c99211082bf1b12cce7a0b0e11" - integrity sha512-hEZC1KEeYuoHRqhGhTy6gWrpJA3ZDjFWv0DE61643ZnOXAKJb3u7yWcrU0mMc9SwAqK1n7myPGndkp0dFG7NFA== - dependencies: - bn.js "^5.1.1" - browserify-rsa "^4.0.1" - create-hash "^1.2.0" - create-hmac "^1.1.7" - elliptic "^6.5.2" - inherits "^2.0.4" - parse-asn1 "^5.1.5" - readable-stream "^3.6.0" - safe-buffer "^5.2.0" - -browserify-zlib@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.2.0.tgz#2869459d9aa3be245fe8fe2ca1f46e2e7f54d73f" - integrity sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA== - dependencies: - pako "~1.0.5" - -browserslist@4.10.0: - version "4.10.0" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.10.0.tgz#f179737913eaf0d2b98e4926ac1ca6a15cbcc6a9" - integrity sha512-TpfK0TDgv71dzuTsEAlQiHeWQ/tiPqgNZVdv046fvNtBZrjbv2O3TsWCDU0AWGJJKCF/KsjNdLzR9hXOsh/CfA== - dependencies: - caniuse-lite "^1.0.30001035" - electron-to-chromium "^1.3.378" - node-releases "^1.1.52" - pkg-up "^3.1.0" - -browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.6.2, browserslist@^4.6.4, browserslist@^4.8.5, browserslist@^4.9.1: - version "4.12.0" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.12.0.tgz#06c6d5715a1ede6c51fc39ff67fd647f740b656d" - integrity sha512-UH2GkcEDSI0k/lRkuDSzFl9ZZ87skSy9w2XAn1MsZnL+4c4rqbBd3e82UWHbYDpztABrPBhZsTEeuxVfHppqDg== - dependencies: - caniuse-lite "^1.0.30001043" - electron-to-chromium "^1.3.413" - node-releases "^1.1.53" - pkg-up "^2.0.0" - -bs-logger@0.x: - version "0.2.6" - resolved "https://registry.yarnpkg.com/bs-logger/-/bs-logger-0.2.6.tgz#eb7d365307a72cf974cc6cda76b68354ad336bd8" - integrity sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog== - dependencies: - fast-json-stable-stringify "2.x" - -bser@2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05" - integrity sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ== - dependencies: - node-int64 "^0.4.0" - -bson@^1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/bson/-/bson-1.1.4.tgz#f76870d799f15b854dffb7ee32f0a874797f7e89" - integrity sha512-S/yKGU1syOMzO86+dGpg2qGoDL0zvzcb262G+gqEy6TgP6rt6z6qxSFX/8X6vLC91P7G7C3nLs0+bvDzmvBA3Q== - -btoa-lite@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/btoa-lite/-/btoa-lite-1.0.0.tgz#337766da15801210fdd956c22e9c6891ab9d0337" - integrity sha1-M3dm2hWAEhD92VbCLpxokaudAzc= - -buffer-equal-constant-time@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz#f8e71132f7ffe6e01a5c9697a4c6f3e48d5cc819" - integrity sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk= - -buffer-from@1.x, buffer-from@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" - integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== - -buffer-indexof@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/buffer-indexof/-/buffer-indexof-1.1.1.tgz#52fabcc6a606d1a00302802648ef68f639da268c" - integrity sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g== - -buffer-writer@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/buffer-writer/-/buffer-writer-2.0.0.tgz#ce7eb81a38f7829db09c873f2fbb792c0c98ec04" - integrity sha512-a7ZpuTZU1TRtnwyCNW3I5dc0wWNC3VR9S++Ewyk2HHZdrO3CQJqSpd+95Us590V6AL7JqUAH2IwZ/398PmNFgw== - -buffer-xor@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" - integrity sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk= - -buffer@^4.3.0: - version "4.9.2" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.2.tgz#230ead344002988644841ab0244af8c44bbe3ef8" - integrity sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg== - dependencies: - base64-js "^1.0.2" - ieee754 "^1.1.4" - isarray "^1.0.0" - -buffer@^5.1.0: - version "5.6.0" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.6.0.tgz#a31749dc7d81d84db08abf937b6b8c4033f62786" - integrity sha512-/gDYp/UtU0eA1ys8bOs9J6a+E/KWIY+DZ+Q2WESNUA0jFRsJOc0SNUO6xJ5SGA1xueg3NL65W6s+NY5l9cunuw== - dependencies: - base64-js "^1.0.2" - ieee754 "^1.1.4" - -builtin-status-codes@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8" - integrity sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug= - -builtins@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/builtins/-/builtins-1.0.3.tgz#cb94faeb61c8696451db36534e1422f94f0aee88" - integrity sha1-y5T662HIaWRR2zZTThQi+U8K7og= - -busboy@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/busboy/-/busboy-0.3.1.tgz#170899274c5bf38aae27d5c62b71268cd585fd1b" - integrity sha512-y7tTxhGKXcyBxRKAni+awqx8uqaJKrSFSNFSeRG5CsWNdmy2BIK+6VGWEW7TZnIO/533mtMEA4rOevQV815YJw== - dependencies: - dicer "0.3.0" - -byline@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/byline/-/byline-5.0.0.tgz#741c5216468eadc457b03410118ad77de8c1ddb1" - integrity sha1-dBxSFkaOrcRXsDQQEYrXfejB3bE= - -byte-size@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/byte-size/-/byte-size-5.0.1.tgz#4b651039a5ecd96767e71a3d7ed380e48bed4191" - integrity sha512-/XuKeqWocKsYa/cBY1YbSJSWWqTi4cFgr9S6OyM7PBaPbr9zvNGwWP33vt0uqGhwDdN+y3yhbXVILEUpnwEWGw== - -bytes@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" - integrity sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg= - -bytes@3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.0.tgz#f6cf7933a360e0588fa9fde85651cdc7f805d1f6" - integrity sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg== - -cacache@^12.0.0, cacache@^12.0.2, cacache@^12.0.3: - version "12.0.4" - resolved "https://registry.yarnpkg.com/cacache/-/cacache-12.0.4.tgz#668bcbd105aeb5f1d92fe25570ec9525c8faa40c" - integrity sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ== - dependencies: - bluebird "^3.5.5" - chownr "^1.1.1" - figgy-pudding "^3.5.1" - glob "^7.1.4" - graceful-fs "^4.1.15" - infer-owner "^1.0.3" - lru-cache "^5.1.1" - mississippi "^3.0.0" - mkdirp "^0.5.1" - move-concurrently "^1.0.1" - promise-inflight "^1.0.1" - rimraf "^2.6.3" - ssri "^6.0.1" - unique-filename "^1.1.1" - y18n "^4.0.0" - -cacache@^13.0.1: - version "13.0.1" - resolved "https://registry.yarnpkg.com/cacache/-/cacache-13.0.1.tgz#a8000c21697089082f85287a1aec6e382024a71c" - integrity sha512-5ZvAxd05HDDU+y9BVvcqYu2LLXmPnQ0hW62h32g4xBTgL/MppR4/04NHfj/ycM2y6lmTnbw6HVi+1eN0Psba6w== - dependencies: - chownr "^1.1.2" - figgy-pudding "^3.5.1" - fs-minipass "^2.0.0" - glob "^7.1.4" - graceful-fs "^4.2.2" - infer-owner "^1.0.4" - lru-cache "^5.1.1" - minipass "^3.0.0" - minipass-collect "^1.0.2" - minipass-flush "^1.0.5" - minipass-pipeline "^1.2.2" - mkdirp "^0.5.1" - move-concurrently "^1.0.1" - p-map "^3.0.0" - promise-inflight "^1.0.1" - rimraf "^2.7.1" - ssri "^7.0.0" - unique-filename "^1.1.1" - -cache-base@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" - integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== - dependencies: - collection-visit "^1.0.0" - component-emitter "^1.2.1" - get-value "^2.0.6" - has-value "^1.0.0" - isobject "^3.0.1" - set-value "^2.0.0" - to-object-path "^0.3.0" - union-value "^1.0.0" - unset-value "^1.0.0" - -cacheable-request@^6.0.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-6.1.0.tgz#20ffb8bd162ba4be11e9567d823db651052ca912" - integrity sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg== - dependencies: - clone-response "^1.0.2" - get-stream "^5.1.0" - http-cache-semantics "^4.0.0" - keyv "^3.0.0" - lowercase-keys "^2.0.0" - normalize-url "^4.1.0" - responselike "^1.0.2" - -call-me-maybe@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.1.tgz#26d208ea89e37b5cbde60250a15f031c16a4d66b" - integrity sha1-JtII6onje1y95gJQoV8DHBak1ms= - -caller-callsite@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/caller-callsite/-/caller-callsite-2.0.0.tgz#847e0fce0a223750a9a027c54b33731ad3154134" - integrity sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ= - dependencies: - callsites "^2.0.0" - -caller-path@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-2.0.0.tgz#468f83044e369ab2010fac5f06ceee15bb2cb1f4" - integrity sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ= - dependencies: - caller-callsite "^2.0.0" - -callsites@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/callsites/-/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50" - integrity sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA= - -callsites@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" - integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== - -camel-case@4.1.1, camel-case@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-4.1.1.tgz#1fc41c854f00e2f7d0139dfeba1542d6896fe547" - integrity sha512-7fa2WcG4fYFkclIvEmxBbTvmibwF2/agfEBc6q3lOpVu0A13ltLsA+Hr/8Hp6kp5f+G7hKi6t8lys6XxP+1K6Q== - dependencies: - pascal-case "^3.1.1" - tslib "^1.10.0" - -camelcase-keys@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7" - integrity sha1-MIvur/3ygRkFHvodkyITyRuPkuc= - dependencies: - camelcase "^2.0.0" - map-obj "^1.0.0" - -camelcase-keys@^4.0.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-4.2.0.tgz#a2aa5fb1af688758259c32c141426d78923b9b77" - integrity sha1-oqpfsa9oh1glnDLBQUJteJI7m3c= - dependencies: - camelcase "^4.1.0" - map-obj "^2.0.0" - quick-lru "^1.0.0" - -camelcase-keys@^6.2.2: - version "6.2.2" - resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-6.2.2.tgz#5e755d6ba51aa223ec7d3d52f25778210f9dc3c0" - integrity sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg== - dependencies: - camelcase "^5.3.1" - map-obj "^4.0.0" - quick-lru "^4.0.1" - -camelcase@5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.0.0.tgz#03295527d58bd3cd4aa75363f35b2e8d97be2f42" - integrity sha512-faqwZqnWxbxn+F1d399ygeamQNy3lPp/H9H6rNrqYh4FSVCtcY+3cub1MxA8o9mDd55mM8Aghuu/kuyYA6VTsA== - -camelcase@5.3.1, camelcase@^5.0.0, camelcase@^5.3.1: - version "5.3.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" - integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== - -camelcase@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" - integrity sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8= - -camelcase@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" - integrity sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0= - -camelcase@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.0.0.tgz#5259f7c30e35e278f1bdc2a4d91230b37cad981e" - integrity sha512-8KMDF1Vz2gzOq54ONPJS65IvTUaB1cHJ2DMM7MbPmLZljDH1qpzzLsWdiN9pHh6qvkRVDTi/07+eNGch/oLU4w== - -caniuse-api@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-3.0.0.tgz#5e4d90e2274961d46291997df599e3ed008ee4c0" - integrity sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw== - dependencies: - browserslist "^4.0.0" - caniuse-lite "^1.0.0" - lodash.memoize "^4.1.2" - lodash.uniq "^4.5.0" - -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000981, caniuse-lite@^1.0.30001035, caniuse-lite@^1.0.30001043, caniuse-lite@^1.0.30001061: - version "1.0.30001083" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001083.tgz#52410c20c6f029f604f0d45eca0439a82e712442" - integrity sha512-CnYJ27awX4h7yj5glfK7r1TOI13LBytpLzEgfj0s4mY75/F8pnQcYjL+oVpmS38FB59+vU0gscQ9D8tc+lIXvA== - -capital-case@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/capital-case/-/capital-case-1.0.3.tgz#339bd77e8fab6cf75111d4fca509b3edf7c117c8" - integrity sha512-OlUSJpUr7SY0uZFOxcwnDOU7/MpHlKTZx2mqnDYQFrDudXLFm0JJ9wr/l4csB+rh2Ug0OPuoSO53PqiZBqno9A== - dependencies: - no-case "^3.0.3" - tslib "^1.10.0" - upper-case-first "^2.0.1" - -capture-exit@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/capture-exit/-/capture-exit-2.0.0.tgz#fb953bfaebeb781f62898239dabb426d08a509a4" - integrity sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g== - dependencies: - rsvp "^4.8.4" - -case-sensitive-paths-webpack-plugin@2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.3.0.tgz#23ac613cc9a856e4f88ff8bb73bbb5e989825cf7" - integrity sha512-/4YgnZS8y1UXXmC02xD5rRrBEu6T5ub+mQHLNRj0fzTRbgdBYhsNo2V5EqwgqrExjxsjtF/OpAKAMkKsxbD5XQ== - -caseless@~0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" - integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= - -chalk@1.1.3, chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" - integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg= - dependencies: - ansi-styles "^2.2.1" - escape-string-regexp "^1.0.2" - has-ansi "^2.0.0" - strip-ansi "^3.0.0" - supports-color "^2.0.0" - -chalk@2.4.2, chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.3.1, chalk@^2.4.1, chalk@^2.4.2: - version "2.4.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" - integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== - dependencies: - ansi-styles "^3.2.1" - escape-string-regexp "^1.0.5" - supports-color "^5.3.0" - -chalk@4.1.0, chalk@^4.0.0, chalk@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.0.tgz#4e14870a618d9e2edd97dd8345fd9d9dc315646a" - integrity sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A== - dependencies: - ansi-styles "^4.1.0" - supports-color "^7.1.0" - -chalk@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-3.0.0.tgz#3f73c2bf526591f574cc492c51e2456349f844e4" - integrity sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg== - dependencies: - ansi-styles "^4.1.0" - supports-color "^7.1.0" - -change-case@4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/change-case/-/change-case-4.1.1.tgz#d5005709275952e7963fed7b91e4f9fdb6180afa" - integrity sha512-qRlUWn/hXnX1R1LBDF/RelJLiqNjKjUqlmuBVSEIyye8kq49CXqkZWKmi8XeUAdDXWFOcGLUMZ+aHn3Q5lzUXw== - dependencies: - camel-case "^4.1.1" - capital-case "^1.0.3" - constant-case "^3.0.3" - dot-case "^3.0.3" - header-case "^2.0.3" - no-case "^3.0.3" - param-case "^3.0.3" - pascal-case "^3.1.1" - path-case "^3.0.3" - sentence-case "^3.0.3" - snake-case "^3.0.3" - tslib "^1.10.0" - -char-regex@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" - integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw== - -chardet@^0.4.0: - version "0.4.2" - resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.4.2.tgz#b5473b33dc97c424e5d98dc87d55d4d8a29c8bf2" - integrity sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I= - -chardet@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" - integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== - -chokidar@3.4.1: - version "3.4.1" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.4.1.tgz#e905bdecf10eaa0a0b1db0c664481cc4cbc22ba1" - integrity sha512-TQTJyr2stihpC4Sya9hs2Xh+O2wf+igjL36Y75xx2WdHuiICcn/XJza46Jwt0eT5hVpQOzo3FpY3cj3RVYLX0g== - dependencies: - anymatch "~3.1.1" - braces "~3.0.2" - glob-parent "~5.1.0" - is-binary-path "~2.1.0" - is-glob "~4.0.1" - normalize-path "~3.0.0" - readdirp "~3.4.0" - optionalDependencies: - fsevents "~2.1.2" - -chokidar@^2.1.8: - version "2.1.8" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.8.tgz#804b3a7b6a99358c3c5c61e71d8728f041cff917" - integrity sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg== - dependencies: - anymatch "^2.0.0" - async-each "^1.0.1" - braces "^2.3.2" - glob-parent "^3.1.0" - inherits "^2.0.3" - is-binary-path "^1.0.0" - is-glob "^4.0.0" - normalize-path "^3.0.0" - path-is-absolute "^1.0.0" - readdirp "^2.2.1" - upath "^1.1.1" - optionalDependencies: - fsevents "^1.2.7" - -chokidar@^3.2.2, chokidar@^3.3.0, chokidar@^3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.4.0.tgz#b30611423ce376357c765b9b8f904b9fba3c0be8" - integrity sha512-aXAaho2VJtisB/1fg1+3nlLJqGOuewTzQpd/Tz0yTg2R0e4IGtshYvtjowyEumcBv2z+y4+kc75Mz7j5xJskcQ== - dependencies: - anymatch "~3.1.1" - braces "~3.0.2" - glob-parent "~5.1.0" - is-binary-path "~2.1.0" - is-glob "~4.0.1" - normalize-path "~3.0.0" - readdirp "~3.4.0" - optionalDependencies: - fsevents "~2.1.2" - -chownr@^1.1.1, chownr@^1.1.2: - version "1.1.4" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" - integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== - -chrome-trace-event@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz#234090ee97c7d4ad1a2c4beae27505deffc608a4" - integrity sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ== - dependencies: - tslib "^1.9.0" - -ci-info@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" - integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== - -cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de" - integrity sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q== - dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" - -class-utils@^0.3.5: - version "0.3.6" - resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" - integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== - dependencies: - arr-union "^3.1.0" - define-property "^0.2.5" - isobject "^3.0.0" - static-extend "^0.1.1" - -clean-css@^4.2.3: - version "4.2.3" - resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.2.3.tgz#507b5de7d97b48ee53d84adb0160ff6216380f78" - integrity sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA== - dependencies: - source-map "~0.6.0" - -clean-stack@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" - integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== - -cli-boxes@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-2.2.0.tgz#538ecae8f9c6ca508e3c3c95b453fe93cb4c168d" - integrity sha512-gpaBrMAizVEANOpfZp/EEUixTXDyGt7DFzdK5hU+UbWt/J0lB0w20ncZj59Z9a93xHb9u12zF5BS6i9RKbtg4w== - -cli-cursor@^2.0.0, cli-cursor@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" - integrity sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU= - dependencies: - restore-cursor "^2.0.0" - -cli-cursor@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" - integrity sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw== - dependencies: - restore-cursor "^3.1.0" - -cli-highlight@^2.0.0: - version "2.1.4" - resolved "https://registry.yarnpkg.com/cli-highlight/-/cli-highlight-2.1.4.tgz#098cb642cf17f42adc1c1145e07f960ec4d7522b" - integrity sha512-s7Zofobm20qriqDoU9sXptQx0t2R9PEgac92mENNm7xaEe1hn71IIMsXMK+6encA6WRCWWxIGQbipr3q998tlQ== - dependencies: - chalk "^3.0.0" - highlight.js "^9.6.0" - mz "^2.4.0" - parse5 "^5.1.1" - parse5-htmlparser2-tree-adapter "^5.1.1" - yargs "^15.0.0" - -cli-truncate@2.1.0, cli-truncate@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-2.1.0.tgz#c39e28bf05edcde5be3b98992a22deed5a2b93c7" - integrity sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg== - dependencies: - slice-ansi "^3.0.0" - string-width "^4.2.0" - -cli-truncate@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-0.2.1.tgz#9f15cfbb0705005369216c626ac7d05ab90dd574" - integrity sha1-nxXPuwcFAFNpIWxiasfQWrkN1XQ= - dependencies: - slice-ansi "0.0.4" - string-width "^1.0.1" - -cli-width@^2.0.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.1.tgz#b0433d0b4e9c847ef18868a4ef16fd5fc8271c48" - integrity sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw== - -cli-width@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-3.0.0.tgz#a2f48437a2caa9a22436e794bf071ec9e61cedf6" - integrity sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw== - -cliui@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-4.1.0.tgz#348422dbe82d800b3022eef4f6ac10bf2e4d1b49" - integrity sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ== - dependencies: - string-width "^2.1.1" - strip-ansi "^4.0.0" - wrap-ansi "^2.0.0" - -cliui@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-5.0.0.tgz#deefcfdb2e800784aa34f46fa08e06851c7bbbc5" - integrity sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA== - dependencies: - string-width "^3.1.0" - strip-ansi "^5.2.0" - wrap-ansi "^5.1.0" - -cliui@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-6.0.0.tgz#511d702c0c4e41ca156d7d0e96021f23e13225b1" - integrity sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ== - dependencies: - string-width "^4.2.0" - strip-ansi "^6.0.0" - wrap-ansi "^6.2.0" - -clone-deep@^0.2.4: - version "0.2.4" - resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-0.2.4.tgz#4e73dd09e9fb971cc38670c5dced9c1896481cc6" - integrity sha1-TnPdCen7lxzDhnDF3O2cGJZIHMY= - dependencies: - for-own "^0.1.3" - is-plain-object "^2.0.1" - kind-of "^3.0.2" - lazy-cache "^1.0.3" - shallow-clone "^0.1.2" - -clone-deep@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387" - integrity sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ== - dependencies: - is-plain-object "^2.0.4" - kind-of "^6.0.2" - shallow-clone "^3.0.0" - -clone-response@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/clone-response/-/clone-response-1.0.2.tgz#d1dc973920314df67fbeb94223b4ee350239e96b" - integrity sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws= - dependencies: - mimic-response "^1.0.0" - -clone@^1.0.2: - version "1.0.4" - resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" - integrity sha1-2jCcwmPfFZlMaIypAheco8fNfH4= - -clsx@^1.0.4: - version "1.1.1" - resolved "https://registry.yarnpkg.com/clsx/-/clsx-1.1.1.tgz#98b3134f9abbdf23b2663491ace13c5c03a73188" - integrity sha512-6/bPho624p3S2pMyvP5kKBPXnI3ufHLObBFCfgx+LkeR5lg2XYy2hqZqUf45ypD8COn2bhgGJSUE+l5dhNBieA== - -cluster-key-slot@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/cluster-key-slot/-/cluster-key-slot-1.1.0.tgz#30474b2a981fb12172695833052bc0d01336d10d" - integrity sha512-2Nii8p3RwAPiFwsnZvukotvow2rIHM+yQ6ZcBXGHdniadkYGZYiGmkHJIbZPIV9nfv7m/U1IPMVVcAhoWFeklw== - -co@^4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" - integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ= - -coa@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/coa/-/coa-2.0.2.tgz#43f6c21151b4ef2bf57187db0d73de229e3e7ec3" - integrity sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA== - dependencies: - "@types/q" "^1.5.1" - chalk "^2.4.1" - q "^1.1.2" - -code-point-at@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" - integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= - -collect-v8-coverage@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz#cc2c8e94fc18bbdffe64d6534570c8a673b27f59" - integrity sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg== - -collection-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" - integrity sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA= - dependencies: - map-visit "^1.0.0" - object-visit "^1.0.0" - -color-convert@^1.9.0, color-convert@^1.9.1: - version "1.9.3" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" - integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== - dependencies: - color-name "1.1.3" - -color-convert@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" - integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== - dependencies: - color-name "~1.1.4" - -color-name@1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" - integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= - -color-name@^1.0.0, color-name@~1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" - integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== - -color-string@^1.5.2: - version "1.5.3" - resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.5.3.tgz#c9bbc5f01b58b5492f3d6857459cb6590ce204cc" - integrity sha512-dC2C5qeWoYkxki5UAXapdjqO672AM4vZuPGRQfO8b5HKuKGBbKWpITyDYN7TOFKvRW7kOgAn3746clDBMDJyQw== - dependencies: - color-name "^1.0.0" - simple-swizzle "^0.2.2" - -color@^3.0.0: - version "3.1.2" - resolved "https://registry.yarnpkg.com/color/-/color-3.1.2.tgz#68148e7f85d41ad7649c5fa8c8106f098d229e10" - integrity sha512-vXTJhHebByxZn3lDvDJYw4lR5+uB3vuoHsuYA5AKuxRVn5wzzIfQKGLBmgdVRHKTJYeK5rvJcHnrd0Li49CFpg== - dependencies: - color-convert "^1.9.1" - color-string "^1.5.2" - -columnify@^1.5.4: - version "1.5.4" - resolved "https://registry.yarnpkg.com/columnify/-/columnify-1.5.4.tgz#4737ddf1c7b69a8a7c340570782e947eec8e78bb" - integrity sha1-Rzfd8ce2mop8NAVweC6UfuyOeLs= - dependencies: - strip-ansi "^3.0.0" - wcwidth "^1.0.0" - -combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6: - version "1.0.8" - resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" - integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== - dependencies: - delayed-stream "~1.0.0" - -commander@^2.11.0, commander@^2.20.0, commander@^2.20.3, commander@~2.20.3: - version "2.20.3" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" - integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== - -commander@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068" - integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA== - -commander@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-5.1.0.tgz#46abbd1652f8e059bddaef99bbdcb2ad9cf179ae" - integrity sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg== - -common-tags@1.8.0, common-tags@^1.8.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/common-tags/-/common-tags-1.8.0.tgz#8e3153e542d4a39e9b10554434afaaf98956a937" - integrity sha512-6P6g0uetGpW/sdyUy/iQQCbFF0kWVMSIVSyYz7Zgjcgh8mgw8PQzDNZeyZ5DQ2gM7LBoZPHmnjz8rUthkBG5tw== - -commondir@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" - integrity sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs= - -compare-func@^1.3.1: - version "1.3.4" - resolved "https://registry.yarnpkg.com/compare-func/-/compare-func-1.3.4.tgz#6b07c4c5e8341119baf44578085bda0f4a823516" - integrity sha512-sq2sWtrqKPkEXAC8tEJA1+BqAH9GbFkGBtUOqrUX57VSfwp8xyktctk+uLoRy5eccTdxzDcVIztlYDpKs3Jv1Q== - dependencies: - array-ify "^1.0.0" - dot-prop "^3.0.0" - -compare-versions@^3.6.0: - version "3.6.0" - resolved "https://registry.yarnpkg.com/compare-versions/-/compare-versions-3.6.0.tgz#1a5689913685e5a87637b8d3ffca75514ec41d62" - integrity sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA== - -component-emitter@^1.2.1: - version "1.3.0" - resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" - integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== - -compose-function@3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/compose-function/-/compose-function-3.0.3.tgz#9ed675f13cc54501d30950a486ff6a7ba3ab185f" - integrity sha1-ntZ18TzFRQHTCVCkhv9qe6OrGF8= - dependencies: - arity-n "^1.0.4" - -compressible@~2.0.16: - version "2.0.18" - resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.18.tgz#af53cca6b070d4c3c0750fbd77286a6d7cc46fba" - integrity sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg== - dependencies: - mime-db ">= 1.43.0 < 2" - -compression@^1.7.4: - version "1.7.4" - resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.4.tgz#95523eff170ca57c29a0ca41e6fe131f41e5bb8f" - integrity sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ== - 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" - -concat-map@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" - integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= - -concat-stream@^1.5.0: - version "1.6.2" - resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" - integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw== - dependencies: - buffer-from "^1.0.0" - inherits "^2.0.3" - readable-stream "^2.2.2" - typedarray "^0.0.6" - -concat-stream@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-2.0.0.tgz#414cf5af790a48c60ab9be4527d56d5e41133cb1" - integrity sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A== - dependencies: - buffer-from "^1.0.0" - inherits "^2.0.3" - readable-stream "^3.0.2" - typedarray "^0.0.6" - -concurrently@5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/concurrently/-/concurrently-5.2.0.tgz#ead55121d08a0fc817085584c123cedec2e08975" - integrity sha512-XxcDbQ4/43d6CxR7+iV8IZXhur4KbmEJk1CetVMUqCy34z9l0DkszbY+/9wvmSnToTej0SYomc2WSRH+L0zVJw== - dependencies: - chalk "^2.4.2" - date-fns "^2.0.1" - lodash "^4.17.15" - read-pkg "^4.0.1" - rxjs "^6.5.2" - spawn-command "^0.0.2-1" - supports-color "^6.1.0" - tree-kill "^1.2.2" - yargs "^13.3.0" - -config-chain@^1.1.11: - version "1.1.12" - resolved "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.12.tgz#0fde8d091200eb5e808caf25fe618c02f48e4efa" - integrity sha512-a1eOIcu8+7lUInge4Rpf/n4Krkf3Dd9lqhljRzII1/Zno/kRtUWnznPO3jOKBmTEktkt3fkxisUcivoj0ebzoA== - dependencies: - ini "^1.3.4" - proto-list "~1.2.1" - -configstore@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/configstore/-/configstore-5.0.1.tgz#d365021b5df4b98cdd187d6a3b0e3f6a7cc5ed96" - integrity sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA== - dependencies: - dot-prop "^5.2.0" - graceful-fs "^4.1.2" - make-dir "^3.0.0" - unique-string "^2.0.0" - write-file-atomic "^3.0.0" - xdg-basedir "^4.0.0" - -confusing-browser-globals@^1.0.9: - version "1.0.9" - resolved "https://registry.yarnpkg.com/confusing-browser-globals/-/confusing-browser-globals-1.0.9.tgz#72bc13b483c0276801681871d4898516f8f54fdd" - integrity sha512-KbS1Y0jMtyPgIxjO7ZzMAuUpAKMt1SzCL9fsrKsX6b0zJPTaT0SiSPmewwVZg9UAO83HVIlEhZF84LIjZ0lmAw== - -connect-history-api-fallback@^1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz#8b32089359308d111115d81cad3fceab888f97bc" - integrity sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg== - -console-browserify@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.2.0.tgz#67063cef57ceb6cf4993a2ab3a55840ae8c49336" - integrity sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA== - -console-control-strings@^1.0.0, console-control-strings@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" - integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= - -constant-case@3.0.3, constant-case@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/constant-case/-/constant-case-3.0.3.tgz#ac910a99caf3926ac5112f352e3af599d8c5fc0a" - integrity sha512-FXtsSnnrFYpzDmvwDGQW+l8XK3GV1coLyBN0eBz16ZUzGaZcT2ANVCJmLeuw2GQgxKHQIe9e0w2dzkSfaRlUmA== - dependencies: - no-case "^3.0.3" - tslib "^1.10.0" - upper-case "^2.0.1" - -constants-browserify@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" - integrity sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U= - -contains-path@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a" - integrity sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo= - -content-disposition@0.5.3: - version "0.5.3" - resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.3.tgz#e130caf7e7279087c5616c2007d0485698984fbd" - integrity sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g== - dependencies: - safe-buffer "5.1.2" - -content-type@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" - integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== - -conventional-changelog-angular@^5.0.10, conventional-changelog-angular@^5.0.3: - version "5.0.10" - resolved "https://registry.yarnpkg.com/conventional-changelog-angular/-/conventional-changelog-angular-5.0.10.tgz#5cf7b00dd315b6a6a558223c80d5ef24ddb34205" - integrity sha512-k7RPPRs0vp8+BtPsM9uDxRl6KcgqtCJmzRD1wRtgqmhQ96g8ifBGo9O/TZBG23jqlXS/rg8BKRDELxfnQQGiaA== - dependencies: - compare-func "^1.3.1" - q "^1.5.1" - -conventional-changelog-atom@^2.0.7: - version "2.0.7" - resolved "https://registry.yarnpkg.com/conventional-changelog-atom/-/conventional-changelog-atom-2.0.7.tgz#221575253a04f77a2fd273eb2bf29a138f710abf" - integrity sha512-7dOREZwzB+tCEMjRTDfen0OHwd7vPUdmU0llTy1eloZgtOP4iSLVzYIQqfmdRZEty+3w5Jz+AbhfTJKoKw1JeQ== - dependencies: - q "^1.5.1" - -conventional-changelog-cli@2.0.34: - version "2.0.34" - resolved "https://registry.yarnpkg.com/conventional-changelog-cli/-/conventional-changelog-cli-2.0.34.tgz#3d9da6011aaaf24f331b606ddc5087a6b811464b" - integrity sha512-HDDIhhpsMKiiAfH/mbj7wApgN7uA33Nk4hISY3/7ijlfqXc/bmP3v4o3Yialoxz0iTBibc94xi6kfTH7XIvwDw== - dependencies: - add-stream "^1.0.0" - conventional-changelog "^3.1.21" - lodash "^4.17.15" - meow "^7.0.0" - tempfile "^3.0.0" - -conventional-changelog-codemirror@^2.0.7: - version "2.0.7" - resolved "https://registry.yarnpkg.com/conventional-changelog-codemirror/-/conventional-changelog-codemirror-2.0.7.tgz#d6b6a8ce2707710c5a036e305037547fb9e15bfb" - integrity sha512-Oralk1kiagn3Gb5cR5BffenWjVu59t/viE6UMD/mQa1hISMPkMYhJIqX+CMeA1zXgVBO+YHQhhokEj99GP5xcg== - dependencies: - q "^1.5.1" - -conventional-changelog-conventionalcommits@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-4.3.0.tgz#c4205a659f7ca9d7881f29ee78a4e7d6aeb8b3c2" - integrity sha512-oYHydvZKU+bS8LnGqTMlNrrd7769EsuEHKy4fh1oMdvvDi7fem8U+nvfresJ1IDB8K00Mn4LpiA/lR+7Gs6rgg== - dependencies: - compare-func "^1.3.1" - lodash "^4.17.15" - q "^1.5.1" - -conventional-changelog-core@^3.1.6: - version "3.2.3" - resolved "https://registry.yarnpkg.com/conventional-changelog-core/-/conventional-changelog-core-3.2.3.tgz#b31410856f431c847086a7dcb4d2ca184a7d88fb" - integrity sha512-LMMX1JlxPIq/Ez5aYAYS5CpuwbOk6QFp8O4HLAcZxe3vxoCtABkhfjetk8IYdRB9CDQGwJFLR3Dr55Za6XKgUQ== - dependencies: - conventional-changelog-writer "^4.0.6" - conventional-commits-parser "^3.0.3" - dateformat "^3.0.0" - get-pkg-repo "^1.0.0" - git-raw-commits "2.0.0" - git-remote-origin-url "^2.0.0" - git-semver-tags "^2.0.3" - lodash "^4.2.1" - normalize-package-data "^2.3.5" - q "^1.5.1" - read-pkg "^3.0.0" - read-pkg-up "^3.0.0" - through2 "^3.0.0" - -conventional-changelog-core@^4.1.7: - version "4.1.7" - resolved "https://registry.yarnpkg.com/conventional-changelog-core/-/conventional-changelog-core-4.1.7.tgz#6b5cdadda4430895cc4a75a73dd8b36e322ab346" - integrity sha512-UBvSrQR2RdKbSQKh7RhueiiY4ZAIOW3+CSWdtKOwRv+KxIMNFKm1rOcGBFx0eA8AKhGkkmmacoTWJTqyz7Q0VA== - dependencies: - add-stream "^1.0.0" - conventional-changelog-writer "^4.0.16" - conventional-commits-parser "^3.1.0" - dateformat "^3.0.0" - get-pkg-repo "^1.0.0" - git-raw-commits "2.0.0" - git-remote-origin-url "^2.0.0" - git-semver-tags "^4.0.0" - lodash "^4.17.15" - normalize-package-data "^2.3.5" - q "^1.5.1" - read-pkg "^3.0.0" - read-pkg-up "^3.0.0" - shelljs "^0.8.3" - through2 "^3.0.0" - -conventional-changelog-ember@^2.0.8: - version "2.0.8" - resolved "https://registry.yarnpkg.com/conventional-changelog-ember/-/conventional-changelog-ember-2.0.8.tgz#f0f04eb7ff3c885af97db100865ab95dcfa9917f" - integrity sha512-JEMEcUAMg4Q9yxD341OgWlESQ4gLqMWMXIWWUqoQU8yvTJlKnrvcui3wk9JvnZQyONwM2g1MKRZuAjKxr8hAXA== - dependencies: - q "^1.5.1" - -conventional-changelog-eslint@^3.0.8: - version "3.0.8" - resolved "https://registry.yarnpkg.com/conventional-changelog-eslint/-/conventional-changelog-eslint-3.0.8.tgz#f8b952b7ed7253ea0ac0b30720bb381f4921b46c" - integrity sha512-5rTRltgWG7TpU1PqgKHMA/2ivjhrB+E+S7OCTvj0zM/QGg4vmnVH67Vq/EzvSNYtejhWC+OwzvDrLk3tqPry8A== - dependencies: - q "^1.5.1" - -conventional-changelog-express@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/conventional-changelog-express/-/conventional-changelog-express-2.0.5.tgz#6e93705acdad374516ca125990012a48e710f8de" - integrity sha512-pW2hsjKG+xNx/Qjof8wYlAX/P61hT5gQ/2rZ2NsTpG+PgV7Rc8RCfITvC/zN9K8fj0QmV6dWmUefCteD9baEAw== - dependencies: - q "^1.5.1" - -conventional-changelog-jquery@^3.0.10: - version "3.0.10" - resolved "https://registry.yarnpkg.com/conventional-changelog-jquery/-/conventional-changelog-jquery-3.0.10.tgz#fe8eb6aff322aa980af5eb68497622a5f6257ce7" - integrity sha512-QCW6wF8QgPkq2ruPaxc83jZxoWQxLkt/pNxIDn/oYjMiVgrtqNdd7lWe3vsl0hw5ENHNf/ejXuzDHk6suKsRpg== - dependencies: - q "^1.5.1" - -conventional-changelog-jshint@^2.0.7: - version "2.0.7" - resolved "https://registry.yarnpkg.com/conventional-changelog-jshint/-/conventional-changelog-jshint-2.0.7.tgz#955a69266951cd31e8afeb3f1c55e0517fdca943" - integrity sha512-qHA8rmwUnLiIxANJbz650+NVzqDIwNtc0TcpIa0+uekbmKHttidvQ1dGximU3vEDdoJVKFgR3TXFqYuZmYy9ZQ== - dependencies: - compare-func "^1.3.1" - q "^1.5.1" - -conventional-changelog-preset-loader@^2.1.1, conventional-changelog-preset-loader@^2.3.4: - version "2.3.4" - resolved "https://registry.yarnpkg.com/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-2.3.4.tgz#14a855abbffd59027fd602581f1f34d9862ea44c" - integrity sha512-GEKRWkrSAZeTq5+YjUZOYxdHq+ci4dNwHvpaBC3+ENalzFWuCWa9EZXSuZBpkr72sMdKB+1fyDV4takK1Lf58g== - -conventional-changelog-writer@^4.0.16, conventional-changelog-writer@^4.0.6: - version "4.0.16" - resolved "https://registry.yarnpkg.com/conventional-changelog-writer/-/conventional-changelog-writer-4.0.16.tgz#ca10f2691a8ea6d3c2eb74bd35bcf40aa052dda5" - integrity sha512-jmU1sDJDZpm/dkuFxBeRXvyNcJQeKhGtVcFFkwTphUAzyYWcwz2j36Wcv+Mv2hU3tpvLMkysOPXJTLO55AUrYQ== - dependencies: - compare-func "^1.3.1" - conventional-commits-filter "^2.0.6" - dateformat "^3.0.0" - handlebars "^4.7.6" - json-stringify-safe "^5.0.1" - lodash "^4.17.15" - meow "^7.0.0" - semver "^6.0.0" - split "^1.0.0" - through2 "^3.0.0" - -conventional-changelog@^3.1.21: - version "3.1.21" - resolved "https://registry.yarnpkg.com/conventional-changelog/-/conventional-changelog-3.1.21.tgz#4a774e6bf503acfd7e4685bb750da8c0eccf1e0d" - integrity sha512-ZGecVZPEo3aC75VVE4nu85589dDhpMyqfqgUM5Myq6wfKWiNqhDJLSDMsc8qKXshZoY7dqs1hR0H/15kI/G2jQ== - dependencies: - conventional-changelog-angular "^5.0.10" - conventional-changelog-atom "^2.0.7" - conventional-changelog-codemirror "^2.0.7" - conventional-changelog-conventionalcommits "^4.3.0" - conventional-changelog-core "^4.1.7" - conventional-changelog-ember "^2.0.8" - conventional-changelog-eslint "^3.0.8" - conventional-changelog-express "^2.0.5" - conventional-changelog-jquery "^3.0.10" - conventional-changelog-jshint "^2.0.7" - conventional-changelog-preset-loader "^2.3.4" - -conventional-commits-filter@^2.0.2, conventional-commits-filter@^2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/conventional-commits-filter/-/conventional-commits-filter-2.0.6.tgz#0935e1240c5ca7698329affee1b6a46d33324c4c" - integrity sha512-4g+sw8+KA50/Qwzfr0hL5k5NWxqtrOVw4DDk3/h6L85a9Gz0/Eqp3oP+CWCNfesBvZZZEFHF7OTEbRe+yYSyKw== - dependencies: - lodash.ismatch "^4.4.0" - modify-values "^1.0.0" - -conventional-commits-parser@^3.0.3, conventional-commits-parser@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/conventional-commits-parser/-/conventional-commits-parser-3.1.0.tgz#10140673d5e7ef5572633791456c5d03b69e8be4" - integrity sha512-RSo5S0WIwXZiRxUGTPuYFbqvrR4vpJ1BDdTlthFgvHt5kEdnd1+pdvwWphWn57/oIl4V72NMmOocFqqJ8mFFhA== - dependencies: - JSONStream "^1.0.4" - is-text-path "^1.0.1" - lodash "^4.17.15" - meow "^7.0.0" - split2 "^2.0.0" - through2 "^3.0.0" - trim-off-newlines "^1.0.0" - -conventional-recommended-bump@^5.0.0: - version "5.0.1" - resolved "https://registry.yarnpkg.com/conventional-recommended-bump/-/conventional-recommended-bump-5.0.1.tgz#5af63903947b6e089e77767601cb592cabb106ba" - integrity sha512-RVdt0elRcCxL90IrNP0fYCpq1uGt2MALko0eyeQ+zQuDVWtMGAy9ng6yYn3kax42lCj9+XBxQ8ZN6S9bdKxDhQ== - dependencies: - concat-stream "^2.0.0" - conventional-changelog-preset-loader "^2.1.1" - conventional-commits-filter "^2.0.2" - conventional-commits-parser "^3.0.3" - git-raw-commits "2.0.0" - git-semver-tags "^2.0.3" - meow "^4.0.0" - q "^1.5.1" - -convert-source-map@1.7.0, convert-source-map@^1.4.0, convert-source-map@^1.6.0, convert-source-map@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.7.0.tgz#17a2cb882d7f77d3490585e2ce6c524424a3a442" - integrity sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA== - dependencies: - safe-buffer "~5.1.1" - -convert-source-map@^0.3.3: - version "0.3.5" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-0.3.5.tgz#f1d802950af7dd2631a1febe0596550c86ab3190" - integrity sha1-8dgClQr33SYxof6+BZZVDIarMZA= - -cookie-signature@1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" - integrity sha1-4wOogrNCzD7oylE6eZmXNNqzriw= - -cookie@0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.0.tgz#beb437e7022b3b6d49019d088665303ebe9c14ba" - integrity sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg== - -copy-concurrently@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/copy-concurrently/-/copy-concurrently-1.0.5.tgz#92297398cae34937fcafd6ec8139c18051f0b5e0" - integrity sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A== - dependencies: - aproba "^1.1.1" - fs-write-stream-atomic "^1.0.8" - iferr "^0.1.5" - mkdirp "^0.5.1" - rimraf "^2.5.4" - run-queue "^1.0.0" - -copy-descriptor@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" - integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= - -core-js-compat@^3.6.2: - version "3.6.5" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.6.5.tgz#2a51d9a4e25dfd6e690251aa81f99e3c05481f1c" - integrity sha512-7ItTKOhOZbznhXAQ2g/slGg1PJV5zDO/WdkTwi7UEOJmkvsE32PWvx6mKtDjiMpjnR2CNf6BAD6sSxIlv7ptng== - dependencies: - browserslist "^4.8.5" - semver "7.0.0" - -core-js-pure@^3.0.0: - version "3.6.5" - resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.6.5.tgz#c79e75f5e38dbc85a662d91eea52b8256d53b813" - integrity sha512-lacdXOimsiD0QyNf9BC/mxivNJ/ybBGJXQFKzRekp1WTHoVUWsUHEn+2T8GJAzzIhyOuXA+gOxCVN3l+5PLPUA== - -core-js@3.6.5, core-js@^3.0.1, core-js@^3.5.0: - version "3.6.5" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.6.5.tgz#7395dc273af37fb2e50e9bd3d9fe841285231d1a" - integrity sha512-vZVEEwZoIsI+vPEuoF9Iqf5H7/M3eeQqWlQnYa8FSKKePuYTf5MWnxb5SDAzCa60b3JBRS5g9b+Dq7b1y/RCrA== - -core-js@^2.4.0, core-js@^2.4.1: - version "2.6.11" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.11.tgz#38831469f9922bded8ee21c9dc46985e0399308c" - integrity sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg== - -core-util-is@1.0.2, core-util-is@~1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" - integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= - -cors@2.8.5, cors@^2.8.4: - version "2.8.5" - resolved "https://registry.yarnpkg.com/cors/-/cors-2.8.5.tgz#eac11da51592dd86b9f06f6e7ac293b3df875d29" - integrity sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g== - dependencies: - object-assign "^4" - vary "^1" - -cosmiconfig@6.0.0, cosmiconfig@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-6.0.0.tgz#da4fee853c52f6b1e6935f41c1a2fc50bd4a9982" - integrity sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg== - dependencies: - "@types/parse-json" "^4.0.0" - import-fresh "^3.1.0" - parse-json "^5.0.0" - path-type "^4.0.0" - yaml "^1.7.2" - -cosmiconfig@^5.0.0, cosmiconfig@^5.1.0, cosmiconfig@^5.2.1: - version "5.2.1" - resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.2.1.tgz#040f726809c591e77a17c0a3626ca45b4f168b1a" - integrity sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA== - dependencies: - import-fresh "^2.0.0" - is-directory "^0.3.1" - js-yaml "^3.13.1" - parse-json "^4.0.0" - -create-ecdh@^4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.3.tgz#c9111b6f33045c4697f144787f9254cdc77c45ff" - integrity sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw== - dependencies: - bn.js "^4.1.0" - elliptic "^6.0.0" - -create-hash@^1.1.0, create-hash@^1.1.2, create-hash@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196" - integrity sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg== - dependencies: - cipher-base "^1.0.1" - inherits "^2.0.1" - md5.js "^1.3.4" - ripemd160 "^2.0.1" - sha.js "^2.4.0" - -create-hmac@^1.1.0, create-hmac@^1.1.4, create-hmac@^1.1.7: - version "1.1.7" - resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff" - integrity sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg== - dependencies: - cipher-base "^1.0.3" - create-hash "^1.1.0" - inherits "^2.0.1" - ripemd160 "^2.0.0" - safe-buffer "^5.0.1" - sha.js "^2.4.8" - -cross-fetch@2.2.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/cross-fetch/-/cross-fetch-2.2.2.tgz#a47ff4f7fc712daba8f6a695a11c948440d45723" - integrity sha1-pH/09/xxLauo9qaVoRyUhEDUVyM= - dependencies: - node-fetch "2.1.2" - whatwg-fetch "2.0.4" - -cross-fetch@3.0.5: - version "3.0.5" - resolved "https://registry.yarnpkg.com/cross-fetch/-/cross-fetch-3.0.5.tgz#2739d2981892e7ab488a7ad03b92df2816e03f4c" - integrity sha512-FFLcLtraisj5eteosnX1gf01qYDCOc4fDy0+euOt8Kn9YBY2NtXL/pCoYPavw24NIQkQqm5ZOLsGD5Zzj0gyew== - dependencies: - node-fetch "2.6.0" - -cross-spawn@7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.1.tgz#0ab56286e0f7c24e153d04cc2aa027e43a9a5d14" - integrity sha512-u7v4o84SwFpD32Z8IIcPZ6z1/ie24O6RU3RbtL5Y316l3KuHVPx9ItBgWQ6VlfAFnRnTtMUrsQ9MUUTuEZjogg== - dependencies: - path-key "^3.1.0" - shebang-command "^2.0.0" - which "^2.0.1" - -cross-spawn@^6.0.0, cross-spawn@^6.0.5: - version "6.0.5" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" - integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== - dependencies: - nice-try "^1.0.4" - path-key "^2.0.1" - semver "^5.5.0" - shebang-command "^1.2.0" - which "^1.2.9" - -cross-spawn@^7.0.0, cross-spawn@^7.0.2: - version "7.0.3" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" - integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== - dependencies: - path-key "^3.1.0" - shebang-command "^2.0.0" - which "^2.0.1" - -crypto-browserify@^3.11.0: - version "3.12.0" - resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec" - integrity sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg== - dependencies: - browserify-cipher "^1.0.0" - browserify-sign "^4.0.0" - create-ecdh "^4.0.0" - create-hash "^1.1.0" - create-hmac "^1.1.0" - diffie-hellman "^5.0.0" - inherits "^2.0.1" - pbkdf2 "^3.0.3" - public-encrypt "^4.0.0" - randombytes "^2.0.0" - randomfill "^1.0.3" - -crypto-random-string@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-2.0.0.tgz#ef2a7a966ec11083388369baa02ebead229b30d5" - integrity sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA== - -css-blank-pseudo@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/css-blank-pseudo/-/css-blank-pseudo-0.1.4.tgz#dfdefd3254bf8a82027993674ccf35483bfcb3c5" - integrity sha512-LHz35Hr83dnFeipc7oqFDmsjHdljj3TQtxGGiNWSOsTLIAubSm4TEz8qCaKFpk7idaQ1GfWscF4E6mgpBysA1w== - dependencies: - postcss "^7.0.5" - -css-color-names@0.0.4, css-color-names@^0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/css-color-names/-/css-color-names-0.0.4.tgz#808adc2e79cf84738069b646cb20ec27beb629e0" - integrity sha1-gIrcLnnPhHOAabZGyyDsJ762KeA= - -css-declaration-sorter@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/css-declaration-sorter/-/css-declaration-sorter-4.0.1.tgz#c198940f63a76d7e36c1e71018b001721054cb22" - integrity sha512-BcxQSKTSEEQUftYpBVnsH4SF05NTuBokb19/sBt6asXGKZ/6VP7PLG1CBCkFDYOnhXhPh0jMhO6xZ71oYHXHBA== - dependencies: - postcss "^7.0.1" - timsort "^0.3.0" - -css-has-pseudo@^0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/css-has-pseudo/-/css-has-pseudo-0.10.0.tgz#3c642ab34ca242c59c41a125df9105841f6966ee" - integrity sha512-Z8hnfsZu4o/kt+AuFzeGpLVhFOGO9mluyHBaA2bA8aCGTwah5sT3WV/fTHH8UNZUytOIImuGPrl/prlb4oX4qQ== - dependencies: - postcss "^7.0.6" - postcss-selector-parser "^5.0.0-rc.4" - -css-loader@3.4.2: - version "3.4.2" - resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-3.4.2.tgz#d3fdb3358b43f233b78501c5ed7b1c6da6133202" - integrity sha512-jYq4zdZT0oS0Iykt+fqnzVLRIeiPWhka+7BqPn+oSIpWJAHak5tmB/WZrJ2a21JhCeFyNnnlroSl8c+MtVndzA== - dependencies: - camelcase "^5.3.1" - cssesc "^3.0.0" - icss-utils "^4.1.1" - loader-utils "^1.2.3" - normalize-path "^3.0.0" - postcss "^7.0.23" - postcss-modules-extract-imports "^2.0.0" - postcss-modules-local-by-default "^3.0.2" - postcss-modules-scope "^2.1.1" - postcss-modules-values "^3.0.0" - postcss-value-parser "^4.0.2" - schema-utils "^2.6.0" - -css-prefers-color-scheme@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/css-prefers-color-scheme/-/css-prefers-color-scheme-3.1.1.tgz#6f830a2714199d4f0d0d0bb8a27916ed65cff1f4" - integrity sha512-MTu6+tMs9S3EUqzmqLXEcgNRbNkkD/TGFvowpeoWJn5Vfq7FMgsmRQs9X5NXAURiOBmOxm/lLjsDNXDE6k9bhg== - dependencies: - postcss "^7.0.5" - -css-select-base-adapter@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz#3b2ff4972cc362ab88561507a95408a1432135d7" - integrity sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w== - -css-select@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/css-select/-/css-select-1.2.0.tgz#2b3a110539c5355f1cd8d314623e870b121ec858" - integrity sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg= - dependencies: - boolbase "~1.0.0" - css-what "2.1" - domutils "1.5.1" - nth-check "~1.0.1" - -css-select@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/css-select/-/css-select-2.1.0.tgz#6a34653356635934a81baca68d0255432105dbef" - integrity sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ== - dependencies: - boolbase "^1.0.0" - css-what "^3.2.1" - domutils "^1.7.0" - nth-check "^1.0.2" - -css-tree@1.0.0-alpha.37: - version "1.0.0-alpha.37" - resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0-alpha.37.tgz#98bebd62c4c1d9f960ec340cf9f7522e30709a22" - integrity sha512-DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg== - dependencies: - mdn-data "2.0.4" - source-map "^0.6.1" - -css-tree@1.0.0-alpha.39: - version "1.0.0-alpha.39" - resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0-alpha.39.tgz#2bff3ffe1bb3f776cf7eefd91ee5cba77a149eeb" - integrity sha512-7UvkEYgBAHRG9Nt980lYxjsTrCyHFN53ky3wVsDkiMdVqylqRt+Zc+jm5qw7/qyOvN2dHSYtX0e4MbCCExSvnA== - dependencies: - mdn-data "2.0.6" - source-map "^0.6.1" - -css-vendor@^2.0.8: - version "2.0.8" - resolved "https://registry.yarnpkg.com/css-vendor/-/css-vendor-2.0.8.tgz#e47f91d3bd3117d49180a3c935e62e3d9f7f449d" - integrity sha512-x9Aq0XTInxrkuFeHKbYC7zWY8ai7qJ04Kxd9MnvbC1uO5DagxoHQjm4JvG+vCdXOoFtCjbL2XSZfxmoYa9uQVQ== - dependencies: - "@babel/runtime" "^7.8.3" - is-in-browser "^1.0.2" - -css-what@2.1: - version "2.1.3" - resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.3.tgz#a6d7604573365fe74686c3f311c56513d88285f2" - integrity sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg== - -css-what@^3.2.1: - version "3.3.0" - resolved "https://registry.yarnpkg.com/css-what/-/css-what-3.3.0.tgz#10fec696a9ece2e591ac772d759aacabac38cd39" - integrity sha512-pv9JPyatiPaQ6pf4OvD/dbfm0o5LviWmwxNWzblYf/1u9QZd0ihV+PMwy5jdQWQ3349kZmKEx9WXuSka2dM4cg== - -css@^2.0.0: - version "2.2.4" - resolved "https://registry.yarnpkg.com/css/-/css-2.2.4.tgz#c646755c73971f2bba6a601e2cf2fd71b1298929" - integrity sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw== - dependencies: - inherits "^2.0.3" - source-map "^0.6.1" - source-map-resolve "^0.5.2" - urix "^0.1.0" - -cssdb@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/cssdb/-/cssdb-4.4.0.tgz#3bf2f2a68c10f5c6a08abd92378331ee803cddb0" - integrity sha512-LsTAR1JPEM9TpGhl/0p3nQecC2LJ0kD8X5YARu1hk/9I1gril5vDtMZyNxcEpxxDj34YNck/ucjuoUd66K03oQ== - -cssesc@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-2.0.0.tgz#3b13bd1bb1cb36e1bcb5a4dcd27f54c5dcb35703" - integrity sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg== - -cssesc@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" - integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== - -cssfilter@0.0.10: - version "0.0.10" - resolved "https://registry.yarnpkg.com/cssfilter/-/cssfilter-0.0.10.tgz#c6d2672632a2e5c83e013e6864a42ce8defd20ae" - integrity sha1-xtJnJjKi5cg+AT5oZKQs6N79IK4= - -cssnano-preset-default@^4.0.7: - version "4.0.7" - resolved "https://registry.yarnpkg.com/cssnano-preset-default/-/cssnano-preset-default-4.0.7.tgz#51ec662ccfca0f88b396dcd9679cdb931be17f76" - integrity sha512-x0YHHx2h6p0fCl1zY9L9roD7rnlltugGu7zXSKQx6k2rYw0Hi3IqxcoAGF7u9Q5w1nt7vK0ulxV8Lo+EvllGsA== - dependencies: - css-declaration-sorter "^4.0.1" - cssnano-util-raw-cache "^4.0.1" - postcss "^7.0.0" - postcss-calc "^7.0.1" - postcss-colormin "^4.0.3" - postcss-convert-values "^4.0.1" - postcss-discard-comments "^4.0.2" - postcss-discard-duplicates "^4.0.2" - postcss-discard-empty "^4.0.1" - postcss-discard-overridden "^4.0.1" - postcss-merge-longhand "^4.0.11" - postcss-merge-rules "^4.0.3" - postcss-minify-font-values "^4.0.2" - postcss-minify-gradients "^4.0.2" - postcss-minify-params "^4.0.2" - postcss-minify-selectors "^4.0.2" - postcss-normalize-charset "^4.0.1" - postcss-normalize-display-values "^4.0.2" - postcss-normalize-positions "^4.0.2" - postcss-normalize-repeat-style "^4.0.2" - postcss-normalize-string "^4.0.2" - postcss-normalize-timing-functions "^4.0.2" - postcss-normalize-unicode "^4.0.1" - postcss-normalize-url "^4.0.1" - postcss-normalize-whitespace "^4.0.2" - postcss-ordered-values "^4.1.2" - postcss-reduce-initial "^4.0.3" - postcss-reduce-transforms "^4.0.2" - postcss-svgo "^4.0.2" - postcss-unique-selectors "^4.0.1" - -cssnano-util-get-arguments@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/cssnano-util-get-arguments/-/cssnano-util-get-arguments-4.0.0.tgz#ed3a08299f21d75741b20f3b81f194ed49cc150f" - integrity sha1-7ToIKZ8h11dBsg87gfGU7UnMFQ8= - -cssnano-util-get-match@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/cssnano-util-get-match/-/cssnano-util-get-match-4.0.0.tgz#c0e4ca07f5386bb17ec5e52250b4f5961365156d" - integrity sha1-wOTKB/U4a7F+xeUiULT1lhNlFW0= - -cssnano-util-raw-cache@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/cssnano-util-raw-cache/-/cssnano-util-raw-cache-4.0.1.tgz#b26d5fd5f72a11dfe7a7846fb4c67260f96bf282" - integrity sha512-qLuYtWK2b2Dy55I8ZX3ky1Z16WYsx544Q0UWViebptpwn/xDBmog2TLg4f+DBMg1rJ6JDWtn96WHbOKDWt1WQA== - dependencies: - postcss "^7.0.0" - -cssnano-util-same-parent@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/cssnano-util-same-parent/-/cssnano-util-same-parent-4.0.1.tgz#574082fb2859d2db433855835d9a8456ea18bbf3" - integrity sha512-WcKx5OY+KoSIAxBW6UBBRay1U6vkYheCdjyVNDm85zt5K9mHoGOfsOsqIszfAqrQQFIIKgjh2+FDgIj/zsl21Q== - -cssnano@^4.1.10: - version "4.1.10" - resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-4.1.10.tgz#0ac41f0b13d13d465487e111b778d42da631b8b2" - integrity sha512-5wny+F6H4/8RgNlaqab4ktc3e0/blKutmq8yNlBFXA//nSFFAqAngjNVRzUvCgYROULmZZUoosL/KSoZo5aUaQ== - dependencies: - cosmiconfig "^5.0.0" - cssnano-preset-default "^4.0.7" - is-resolvable "^1.0.0" - postcss "^7.0.0" - -csso@^4.0.2: - version "4.0.3" - resolved "https://registry.yarnpkg.com/csso/-/csso-4.0.3.tgz#0d9985dc852c7cc2b2cacfbbe1079014d1a8e903" - integrity sha512-NL3spysxUkcrOgnpsT4Xdl2aiEiBG6bXswAABQVHcMrfjjBisFOKwLDOmf4wf32aPdcJws1zds2B0Rg+jqMyHQ== - dependencies: - css-tree "1.0.0-alpha.39" - -cssom@0.3.x, "cssom@>= 0.3.2 < 0.4.0", cssom@^0.3.4, cssom@~0.3.6: - version "0.3.8" - resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a" - integrity sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg== - -cssom@^0.4.4: - version "0.4.4" - resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.4.4.tgz#5a66cf93d2d0b661d80bf6a44fb65f5c2e4e0a10" - integrity sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw== - -cssstyle@^1.0.0, cssstyle@^1.1.1: - version "1.4.0" - resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-1.4.0.tgz#9d31328229d3c565c61e586b02041a28fccdccf1" - integrity sha512-GBrLZYZ4X4x6/QEoBnIrqb8B/f5l4+8me2dkom/j1Gtbxy0kBv6OGzKuAsGM75bkGwGAFkt56Iwg28S3XTZgSA== - dependencies: - cssom "0.3.x" - -cssstyle@^2.2.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-2.3.0.tgz#ff665a0ddbdc31864b09647f34163443d90b0852" - integrity sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A== - dependencies: - cssom "~0.3.6" - -csstype@^2.2.0, csstype@^2.5.2, csstype@^2.6.5, csstype@^2.6.7: - version "2.6.10" - resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.6.10.tgz#e63af50e66d7c266edb6b32909cfd0aabe03928b" - integrity sha512-D34BqZU4cIlMCY93rZHbrq9pjTAQJ3U8S8rfBqjwHxkGPThWFjzZDQpgMJY0QViLxth6ZKYiwFBo14RdN44U/w== - -currently-unhandled@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" - integrity sha1-mI3zP+qxke95mmE2nddsF635V+o= - dependencies: - array-find-index "^1.0.1" - -cyclist@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/cyclist/-/cyclist-1.0.1.tgz#596e9698fd0c80e12038c2b82d6eb1b35b6224d9" - integrity sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk= - -d@1, d@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/d/-/d-1.0.1.tgz#8698095372d58dbee346ffd0c7093f99f8f9eb5a" - integrity sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA== - dependencies: - es5-ext "^0.10.50" - type "^1.0.1" - -damerau-levenshtein@^1.0.4: - version "1.0.6" - resolved "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.6.tgz#143c1641cb3d85c60c32329e26899adea8701791" - integrity sha512-JVrozIeElnj3QzfUIt8tB8YMluBJom4Vw9qTPpjGYQ9fYlB3D/rb6OordUxf3xeFB35LKWs0xqcO5U6ySvBtug== - -dargs@^4.0.1: - version "4.1.0" - resolved "https://registry.yarnpkg.com/dargs/-/dargs-4.1.0.tgz#03a9dbb4b5c2f139bf14ae53f0b8a2a6a86f4e17" - integrity sha1-A6nbtLXC8Tm/FK5T8LiipqhvThc= - dependencies: - number-is-nan "^1.0.0" - -dashdash@^1.12.0: - version "1.14.1" - resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" - integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA= - dependencies: - assert-plus "^1.0.0" - -data-urls@^1.0.0, data-urls@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-1.1.0.tgz#15ee0582baa5e22bb59c77140da8f9c76963bbfe" - integrity sha512-YTWYI9se1P55u58gL5GkQHW4P6VJBJ5iBT+B5a7i2Tjadhv52paJG0qHX4A0OR6/t52odI64KP2YvFpkDOi3eQ== - dependencies: - abab "^2.0.0" - whatwg-mimetype "^2.2.0" - whatwg-url "^7.0.0" - -data-urls@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-2.0.0.tgz#156485a72963a970f5d5821aaf642bef2bf2db9b" - integrity sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ== - dependencies: - abab "^2.0.3" - whatwg-mimetype "^2.3.0" - whatwg-url "^8.0.0" - -date-fns@^1.27.2: - version "1.30.1" - resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-1.30.1.tgz#2e71bf0b119153dbb4cc4e88d9ea5acfb50dc05c" - integrity sha512-hBSVCvSmWC+QypYObzwGOd9wqdDpOt+0wl0KbU+R+uuZBS1jN8VsD1ss3irQDknRj5NvxiTF6oj/nDRnN/UQNw== - -date-fns@^2.0.1: - version "2.14.0" - resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-2.14.0.tgz#359a87a265bb34ef2e38f93ecf63ac453f9bc7ba" - integrity sha512-1zD+68jhFgDIM0rF05rcwYO8cExdNqxjq4xP1QKM60Q45mnO6zaMWB4tOzrIr4M4GSLntsKeE4c9Bdl2jhL/yw== - -dateformat@^3.0.0: - version "3.0.3" - resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae" - integrity sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q== - -de-indent@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/de-indent/-/de-indent-1.0.2.tgz#b2038e846dc33baa5796128d0804b455b8c1e21d" - integrity sha1-sgOOhG3DO6pXlhKNCAS0VbjB4h0= - -debounce@1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/debounce/-/debounce-1.2.0.tgz#44a540abc0ea9943018dc0eaa95cce87f65cd131" - integrity sha512-mYtLl1xfZLi1m4RtQYlZgJUNQjl4ZxVnHzIR8nLLgi4q1YT8o/WM+MK/f8yfcc9s5Ir5zRaPZyZU6xs1Syoocg== - -debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.0, debug@^2.6.9: - version "2.6.9" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" - integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== - dependencies: - ms "2.0.0" - -debug@3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" - integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g== - dependencies: - ms "2.0.0" - -debug@^3.0.0, debug@^3.1.0, debug@^3.1.1, debug@^3.2.5, debug@^3.2.6: - version "3.2.6" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" - integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== - dependencies: - ms "^2.1.1" - -debug@^4.0.1, debug@^4.1.0, debug@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" - integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw== - dependencies: - ms "^2.1.1" - -debuglog@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/debuglog/-/debuglog-1.0.1.tgz#aa24ffb9ac3df9a2351837cfb2d279360cd78492" - integrity sha1-qiT/uaw9+aI1GDfPstJ5NgzXhJI= - -decamelize-keys@^1.0.0, decamelize-keys@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.0.tgz#d171a87933252807eb3cb61dc1c1445d078df2d9" - integrity sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk= - dependencies: - decamelize "^1.1.0" - map-obj "^1.0.0" - -decamelize@^1.1.0, decamelize@^1.1.2, decamelize@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" - integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= - -decimal.js@^10.2.0: - version "10.2.0" - resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.2.0.tgz#39466113a9e036111d02f82489b5fd6b0b5ed231" - integrity sha512-vDPw+rDgn3bZe1+F/pyEwb1oMG2XTlRVgAa6B4KccTEpYgF8w6eQllVbQcfIJnZyvzFtFpxnpGtx8dd7DJp/Rw== - -decode-uri-component@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" - integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU= - -decompress-response@^3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-3.3.0.tgz#80a4dd323748384bfa248083622aedec982adff3" - integrity sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M= - dependencies: - mimic-response "^1.0.0" - -dedent@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" - integrity sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw= - -deep-equal@^1.0.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.1.1.tgz#b5c98c942ceffaf7cb051e24e1434a25a2e6076a" - integrity sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g== - 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" - -deep-extend@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" - integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== - -deep-is@^0.1.3, deep-is@~0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" - integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= - -deepmerge@4.2.2, deepmerge@^4.2.2: - version "4.2.2" - resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.2.2.tgz#44d2ea3679b8f4d4ffba33f03d865fc1e7bf4955" - integrity sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg== - -deepmerge@^2.1.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-2.2.1.tgz#5d3ff22a01c00f645405a2fbc17d0778a1801170" - integrity sha512-R9hc1Xa/NOBi9WRVUWg19rl1UB7Tt4kuPd+thNJgFZoxXsTz7ncaPaeIm+40oSGuP33DfMb4sZt1QIGiJzC4EA== - -default-gateway@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/default-gateway/-/default-gateway-4.2.0.tgz#167104c7500c2115f6dd69b0a536bb8ed720552b" - integrity sha512-h6sMrVB1VMWVrW13mSc6ia/DwYYw5MN6+exNu1OaJeFac5aSAvwM7lZ0NVfTABuSkQelr4h5oebg3KB1XPdjgA== - dependencies: - execa "^1.0.0" - ip-regex "^2.1.0" - -defaults@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d" - integrity sha1-xlYFHpgX2f8I7YgUd/P+QBnz730= - dependencies: - clone "^1.0.2" - -defer-to-connect@^1.0.1: - version "1.1.3" - resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-1.1.3.tgz#331ae050c08dcf789f8c83a7b81f0ed94f4ac591" - integrity sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ== - -define-properties@^1.1.2, define-properties@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" - integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== - dependencies: - object-keys "^1.0.12" - -define-property@^0.2.5: - version "0.2.5" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" - integrity sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY= - dependencies: - is-descriptor "^0.1.0" - -define-property@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" - integrity sha1-dp66rz9KY6rTr56NMEybvnm/sOY= - dependencies: - is-descriptor "^1.0.0" - -define-property@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" - integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== - dependencies: - is-descriptor "^1.0.2" - isobject "^3.0.1" - -del@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/del/-/del-4.1.1.tgz#9e8f117222ea44a31ff3a156c049b99052a9f0b4" - integrity sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ== - dependencies: - "@types/glob" "^7.1.1" - globby "^6.1.0" - is-path-cwd "^2.0.0" - is-path-in-cwd "^2.0.0" - p-map "^2.0.0" - pify "^4.0.1" - rimraf "^2.6.3" - -delayed-stream@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" - integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= - -delegates@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" - integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= - -denque@^1.1.0, denque@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/denque/-/denque-1.4.1.tgz#6744ff7641c148c3f8a69c307e51235c1f4a37cf" - integrity sha512-OfzPuSZKGcgr96rf1oODnfjqBFmr1DVoc/TrItj3Ohe0Ah1C5WX5Baquw/9U9KovnQ88EqmJbD66rKYUQYN1tQ== - -depd@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" - integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= - -depd@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" - integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== - -dependency-graph@0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/dependency-graph/-/dependency-graph-0.9.0.tgz#11aed7e203bc8b00f48356d92db27b265c445318" - integrity sha512-9YLIBURXj4DJMFALxXw9K3Y3rwb5Fk0X5/8ipCzaN84+gKxoHK43tVKRNakCQbiEx07E8Uwhuq21BpUagFhZ8w== - -deprecated-decorator@^0.1.6: - version "0.1.6" - resolved "https://registry.yarnpkg.com/deprecated-decorator/-/deprecated-decorator-0.1.6.tgz#00966317b7a12fe92f3cc831f7583af329b86c37" - integrity sha1-AJZjF7ehL+kvPMgx91g68ym4bDc= - -deprecation@^2.0.0, deprecation@^2.3.1: - version "2.3.1" - resolved "https://registry.yarnpkg.com/deprecation/-/deprecation-2.3.1.tgz#6368cbdb40abf3373b525ac87e4a260c3a700919" - integrity sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ== - -des.js@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.1.tgz#5382142e1bdc53f85d86d53e5f4aa7deb91e0843" - integrity sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA== - dependencies: - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - -destroy@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" - integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA= - -detect-indent@6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-6.0.0.tgz#0abd0f549f69fc6659a254fe96786186b6f528fd" - integrity sha512-oSyFlqaTHCItVRGK5RmrmjB+CmaMOW7IaNA/kdxqhoa6d17j/5ce9O9eWXmV/KEdRwqpQA+Vqe8a8Bsybu4YnA== - -detect-indent@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-5.0.0.tgz#3871cc0a6a002e8c3e5b3cf7f336264675f06b9d" - integrity sha1-OHHMCmoALow+Wzz38zYmRnXwa50= - -detect-newline@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2" - integrity sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I= - -detect-newline@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" - integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== - -detect-node@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.4.tgz#014ee8f8f669c5c58023da64b8179c083a28c46c" - integrity sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw== - -detect-port-alt@1.1.6: - version "1.1.6" - resolved "https://registry.yarnpkg.com/detect-port-alt/-/detect-port-alt-1.1.6.tgz#24707deabe932d4a3cf621302027c2b266568275" - integrity sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q== - dependencies: - address "^1.0.1" - debug "^2.6.0" - -dezalgo@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/dezalgo/-/dezalgo-1.0.3.tgz#7f742de066fc748bc8db820569dddce49bf0d456" - integrity sha1-f3Qt4Gb8dIvI24IFad3c5Jvw1FY= - dependencies: - asap "^2.0.0" - wrappy "1" - -dicer@0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/dicer/-/dicer-0.3.0.tgz#eacd98b3bfbf92e8ab5c2fdb71aaac44bb06b872" - integrity sha512-MdceRRWqltEG2dZqO769g27N/3PXfcKl04VhYnBlo2YhH7zPi88VebsjTKclaOyiuMaGU72hTfw3VkUitGcVCA== - dependencies: - streamsearch "0.1.2" - -diff-sequences@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-24.9.0.tgz#5715d6244e2aa65f48bba0bc972db0b0b11e95b5" - integrity sha512-Dj6Wk3tWyTE+Fo1rW8v0Xhwk80um6yFYKbuAxc9c3EZxIHFDYwbi34Uk42u1CdnIiVorvt4RmlSDjIPyzGC2ew== - -diff-sequences@^25.2.6: - version "25.2.6" - resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-25.2.6.tgz#5f467c00edd35352b7bca46d7927d60e687a76dd" - integrity sha512-Hq8o7+6GaZeoFjtpgvRBUknSXNeJiCx7V9Fr94ZMljNiCr9n9L8H8aJqgWOQiDDGdyn29fRNcDdRVJ5fdyihfg== - -diff-sequences@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-26.0.0.tgz#0760059a5c287637b842bd7085311db7060e88a6" - integrity sha512-JC/eHYEC3aSS0vZGjuoc4vHA0yAQTzhQQldXMeMF+JlxLGJlCO38Gma82NV9gk1jGFz8mDzUMeaKXvjRRdJ2dg== - -diff@^4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d" - integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A== - -diffie-hellman@^5.0.0: - version "5.0.3" - resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875" - integrity sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg== - dependencies: - bn.js "^4.1.0" - miller-rabin "^4.0.0" - randombytes "^2.0.0" - -dir-glob@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-2.0.0.tgz#0b205d2b6aef98238ca286598a8204d29d0a0034" - integrity sha512-37qirFDz8cA5fimp9feo43fSuRo2gHwaIn6dXL8Ber1dGwUosDrGZeCCXq57WnIqE4aQ+u3eQZzsk1yOzhdwag== - dependencies: - arrify "^1.0.1" - path-type "^3.0.0" - -dir-glob@^2.2.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-2.2.2.tgz#fa09f0694153c8918b18ba0deafae94769fc50c4" - integrity sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw== - dependencies: - path-type "^3.0.0" - -dir-glob@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" - integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== - dependencies: - path-type "^4.0.0" - -dns-equal@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/dns-equal/-/dns-equal-1.0.0.tgz#b39e7f1da6eb0a75ba9c17324b34753c47e0654d" - integrity sha1-s55/HabrCnW6nBcySzR1PEfgZU0= - -dns-packet@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/dns-packet/-/dns-packet-1.3.1.tgz#12aa426981075be500b910eedcd0b47dd7deda5a" - integrity sha512-0UxfQkMhYAUaZI+xrNZOz/as5KgDU0M/fQ9b6SpkyLbk3GEswDi6PADJVaYJradtRVsRIlF1zLyOodbcTCDzUg== - dependencies: - ip "^1.1.0" - safe-buffer "^5.0.1" - -dns-txt@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/dns-txt/-/dns-txt-2.0.2.tgz#b91d806f5d27188e4ab3e7d107d881a1cc4642b6" - integrity sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY= - dependencies: - buffer-indexof "^1.0.0" - -doctrine@1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa" - integrity sha1-N53Ocw9hZvds76TmcHoVmwLFpvo= - dependencies: - esutils "^2.0.2" - isarray "^1.0.0" - -doctrine@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" - integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== - dependencies: - esutils "^2.0.2" - -doctrine@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" - integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== - dependencies: - esutils "^2.0.2" - -dom-converter@^0.2: - version "0.2.0" - resolved "https://registry.yarnpkg.com/dom-converter/-/dom-converter-0.2.0.tgz#6721a9daee2e293682955b6afe416771627bb768" - integrity sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA== - dependencies: - utila "~0.4" - -dom-helpers@^5.0.1: - version "5.1.4" - resolved "https://registry.yarnpkg.com/dom-helpers/-/dom-helpers-5.1.4.tgz#4609680ab5c79a45f2531441f1949b79d6587f4b" - integrity sha512-TjMyeVUvNEnOnhzs6uAn9Ya47GmMo3qq7m+Lr/3ON0Rs5kHvb8I+SQYjLUSYn7qhEm0QjW0yrBkvz9yOrwwz1A== - dependencies: - "@babel/runtime" "^7.8.7" - csstype "^2.6.7" - -dom-serializer@0: - version "0.2.2" - resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.2.2.tgz#1afb81f533717175d478655debc5e332d9f9bb51" - integrity sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g== - dependencies: - domelementtype "^2.0.1" - entities "^2.0.0" - -domain-browser@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda" - integrity sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA== - -domelementtype@1, domelementtype@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.1.tgz#d048c44b37b0d10a7f2a3d5fee3f4333d790481f" - integrity sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w== - -domelementtype@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.0.1.tgz#1f8bdfe91f5a78063274e803b4bdcedf6e94f94d" - integrity sha512-5HOHUDsYZWV8FGWN0Njbr/Rn7f/eWSQi1v7+HsUVwXgn8nWWlL64zKDkS0n8ZmQ3mlWOMuXOnR+7Nx/5tMO5AQ== - -domexception@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/domexception/-/domexception-1.0.1.tgz#937442644ca6a31261ef36e3ec677fe805582c90" - integrity sha512-raigMkn7CJNNo6Ihro1fzG7wr3fHuYVytzquZKX5n0yizGsTcYgzdIUwj1X9pK0VvjeihV+XiclP+DjwbsSKug== - dependencies: - webidl-conversions "^4.0.2" - -domexception@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/domexception/-/domexception-2.0.1.tgz#fb44aefba793e1574b0af6aed2801d057529f304" - integrity sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg== - dependencies: - webidl-conversions "^5.0.0" - -domhandler@^2.3.0: - version "2.4.2" - resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.4.2.tgz#8805097e933d65e85546f726d60f5eb88b44f803" - integrity sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA== - dependencies: - domelementtype "1" - -domutils@1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf" - integrity sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8= - dependencies: - dom-serializer "0" - domelementtype "1" - -domutils@^1.5.1, domutils@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.7.0.tgz#56ea341e834e06e6748af7a1cb25da67ea9f8c2a" - integrity sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg== - dependencies: - dom-serializer "0" - domelementtype "1" - -dot-case@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/dot-case/-/dot-case-3.0.3.tgz#21d3b52efaaba2ea5fda875bb1aa8124521cf4aa" - integrity sha512-7hwEmg6RiSQfm/GwPL4AAWXKy3YNNZA3oFv2Pdiey0mwkRCPZ9x6SZbkLcn8Ma5PYeVokzoD4Twv2n7LKp5WeA== - dependencies: - no-case "^3.0.3" - tslib "^1.10.0" - -dot-prop@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-3.0.0.tgz#1b708af094a49c9a0e7dbcad790aba539dac1177" - integrity sha1-G3CK8JSknJoOfbyteQq6U52sEXc= - dependencies: - is-obj "^1.0.0" - -dot-prop@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-4.2.0.tgz#1f19e0c2e1aa0e32797c49799f2837ac6af69c57" - integrity sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ== - dependencies: - is-obj "^1.0.0" - -dot-prop@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.2.0.tgz#c34ecc29556dc45f1f4c22697b6f4904e0cc4fcb" - integrity sha512-uEUyaDKoSQ1M4Oq8l45hSE26SnTxL6snNnqvK/VWx5wJhmff5z0FUVJDKDanor/6w3kzE3i7XZOk+7wC0EXr1A== - dependencies: - is-obj "^2.0.0" - -dotenv-expand@5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/dotenv-expand/-/dotenv-expand-5.1.0.tgz#3fbaf020bfd794884072ea26b1e9791d45a629f0" - integrity sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA== - -dotenv@8.2.0, dotenv@^8.2.0: - version "8.2.0" - resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-8.2.0.tgz#97e619259ada750eea3e4ea3e26bceea5424b16a" - integrity sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw== - -dotenv@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-4.0.0.tgz#864ef1379aced55ce6f95debecdce179f7a0cd1d" - integrity sha1-hk7xN5rO1Vzm+V3r7NzhefegzR0= - -dotenv@^6.2.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-6.2.0.tgz#941c0410535d942c8becf28d3f357dbd9d476064" - integrity sha512-HygQCKUBSFl8wKQZBSemMywRWcEDNidvNbjGVyZu3nbZ8qq9ubiPoGLMdRDpfSrpkkm9BXYFkpKxxFX38o/76w== - -duplexer3@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" - integrity sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI= - -duplexer@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.1.tgz#ace6ff808c1ce66b57d1ebf97977acb02334cfc1" - integrity sha1-rOb/gIwc5mtX0ev5eXessCM0z8E= - -duplexify@^3.4.2, duplexify@^3.6.0: - version "3.7.1" - resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.7.1.tgz#2a4df5317f6ccfd91f86d6fd25d8d8a103b88309" - integrity sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g== - dependencies: - end-of-stream "^1.0.0" - inherits "^2.0.1" - readable-stream "^2.0.0" - stream-shift "^1.0.0" - -ecc-jsbn@~0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" - integrity sha1-OoOpBOVDUyh4dMVkt1SThoSamMk= - dependencies: - jsbn "~0.1.0" - safer-buffer "^2.1.0" - -ecdsa-sig-formatter@1.0.11: - version "1.0.11" - resolved "https://registry.yarnpkg.com/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz#ae0f0fa2d85045ef14a817daa3ce9acd0489e5bf" - integrity sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ== - dependencies: - safe-buffer "^5.0.1" - -ee-first@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" - integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= - -electron-to-chromium@^1.3.378, electron-to-chromium@^1.3.413: - version "1.3.473" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.473.tgz#d0cd5fe391046fb70674ec98149f0f97609d29b8" - integrity sha512-smevlzzMNz3vMz6OLeeCq5HRWEj2AcgccNPYnAx4Usx0IOciq9DU36RJcICcS09hXoY7t7deRfVYKD14IrGb9A== - -elegant-spinner@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/elegant-spinner/-/elegant-spinner-1.0.1.tgz#db043521c95d7e303fd8f345bedc3349cfb0729e" - integrity sha1-2wQ1IcldfjA/2PNFvtwzSc+wcp4= - -elliptic@^6.0.0, elliptic@^6.5.2: - version "6.5.2" - resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.2.tgz#05c5678d7173c049d8ca433552224a495d0e3762" - integrity sha512-f4x70okzZbIQl/NSRLkI/+tteV/9WqL98zx+SQ69KbXxmVrmjwsNUPn/gYJJ0sHvEak24cZgHIPegRePAtA/xw== - dependencies: - bn.js "^4.4.0" - brorand "^1.0.1" - hash.js "^1.0.0" - hmac-drbg "^1.0.0" - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - minimalistic-crypto-utils "^1.0.0" - -emittery@0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.5.1.tgz#9fbbf57e9aecc258d727d78858a598eb05ea5c96" - integrity sha512-sYZXNHH9PhTfs98ROEFVC3bLiR8KSqXQsEHIwZ9J6H0RaQObC3JYq4G8IvDd0b45/LxfGKYBpmaUN4LiKytaNw== - -emittery@^0.7.1: - version "0.7.1" - resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.7.1.tgz#c02375a927a40948c0345cc903072597f5270451" - integrity sha512-d34LN4L6h18Bzz9xpoku2nPwKxCPlPMr3EEKTkoEBi+1/+b0lcRkRJ1UVyyZaKNeqGR3swcGl6s390DNO4YVgQ== - -emoji-regex@^7.0.1, emoji-regex@^7.0.2: - version "7.0.3" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" - integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== - -emoji-regex@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" - integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== - -emojis-list@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389" - integrity sha1-TapNnbAPmBmIDHn6RXrlsJof04k= - -emojis-list@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78" - integrity sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q== - -encodeurl@~1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" - integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= - -encoding@^0.1.11: - version "0.1.12" - resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb" - integrity sha1-U4tm8+5izRq1HsMjgp0flIDHS+s= - dependencies: - iconv-lite "~0.4.13" - -end-of-stream@^1.0.0, end-of-stream@^1.1.0: - version "1.4.4" - resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" - integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== - dependencies: - once "^1.4.0" - -enhanced-resolve@^4.1.0: - version "4.1.1" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.1.1.tgz#2937e2b8066cd0fe7ce0990a98f0d71a35189f66" - integrity sha512-98p2zE+rL7/g/DzMHMTF4zZlCgeVdJ7yr6xzEpJRYwFYrGi9ANdn5DnJURg6RpBkyk60XYDnWIv51VfIhfNGuA== - dependencies: - graceful-fs "^4.1.2" - memory-fs "^0.5.0" - tapable "^1.0.0" - -enquirer@^2.3.5: - version "2.3.5" - resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.5.tgz#3ab2b838df0a9d8ab9e7dff235b0e8712ef92381" - integrity sha512-BNT1C08P9XD0vNg3J475yIUG+mVdp9T6towYFHUv897X0KoHBjB1shyrNmhmtHWKP17iSWgo7Gqh7BBuzLZMSA== - dependencies: - ansi-colors "^3.2.1" - -entities@^1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56" - integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w== - -entities@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/entities/-/entities-2.0.3.tgz#5c487e5742ab93c15abb5da22759b8590ec03b7f" - integrity sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ== - -env-paths@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.0.tgz#cdca557dc009152917d6166e2febe1f039685e43" - integrity sha512-6u0VYSCo/OW6IoD5WCLLy9JUGARbamfSavcNXry/eu8aHVFei6CD3Sw+VGX5alea1i9pgPHW0mbu6Xj0uBh7gA== - -envinfo@^7.3.1: - version "7.5.1" - resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.5.1.tgz#93c26897225a00457c75e734d354ea9106a72236" - integrity sha512-hQBkDf2iO4Nv0CNHpCuSBeaSrveU6nThVxFGTrq/eDlV716UQk09zChaJae4mZRsos1x4YLY2TaH3LHUae3ZmQ== - -err-code@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/err-code/-/err-code-1.1.2.tgz#06e0116d3028f6aef4806849eb0ea6a748ae6960" - integrity sha1-BuARbTAo9q70gGhJ6w6mp0iuaWA= - -errno@^0.1.3, errno@~0.1.7: - version "0.1.7" - resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.7.tgz#4684d71779ad39af177e3f007996f7c67c852618" - integrity sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg== - dependencies: - prr "~1.0.1" - -error-ex@^1.2.0, error-ex@^1.3.1: - version "1.3.2" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" - integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== - dependencies: - is-arrayish "^0.2.1" - -es-abstract@^1.17.0, es-abstract@^1.17.0-next.1, es-abstract@^1.17.2, es-abstract@^1.17.5: - version "1.17.6" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.6.tgz#9142071707857b2cacc7b89ecb670316c3e2d52a" - integrity sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw== - dependencies: - es-to-primitive "^1.2.1" - function-bind "^1.1.1" - has "^1.0.3" - has-symbols "^1.0.1" - is-callable "^1.2.0" - is-regex "^1.1.0" - object-inspect "^1.7.0" - object-keys "^1.1.1" - object.assign "^4.1.0" - string.prototype.trimend "^1.0.1" - string.prototype.trimstart "^1.0.1" - -es-to-primitive@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" - integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA== - dependencies: - is-callable "^1.1.4" - is-date-object "^1.0.1" - is-symbol "^1.0.2" - -es5-ext@^0.10.35, es5-ext@^0.10.50: - version "0.10.53" - resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.53.tgz#93c5a3acfdbef275220ad72644ad02ee18368de1" - integrity sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q== - dependencies: - es6-iterator "~2.0.3" - es6-symbol "~3.1.3" - next-tick "~1.0.0" - -es6-iterator@2.0.3, es6-iterator@~2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7" - integrity sha1-p96IkUGgWpSwhUQDstCg+/qY87c= - dependencies: - d "1" - es5-ext "^0.10.35" - es6-symbol "^3.1.1" - -es6-promise@^4.0.3: - version "4.2.8" - resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-4.2.8.tgz#4eb21594c972bc40553d276e510539143db53e0a" - integrity sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w== - -es6-promisify@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/es6-promisify/-/es6-promisify-5.0.0.tgz#5109d62f3e56ea967c4b63505aef08291c8a5203" - integrity sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM= - dependencies: - es6-promise "^4.0.3" - -es6-symbol@^3.1.1, es6-symbol@~3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.3.tgz#bad5d3c1bcdac28269f4cb331e431c78ac705d18" - integrity sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA== - dependencies: - d "^1.0.1" - ext "^1.1.2" - -escape-goat@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/escape-goat/-/escape-goat-2.1.1.tgz#1b2dc77003676c457ec760b2dc68edb648188675" - integrity sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q== - -escape-html@~1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" - integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg= - -escape-string-regexp@2.0.0, escape-string-regexp@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" - integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== - -escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" - integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= - -escodegen@^1.11.0, escodegen@^1.14.1, escodegen@^1.9.1: - version "1.14.2" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.14.2.tgz#14ab71bf5026c2aa08173afba22c6f3173284a84" - integrity sha512-InuOIiKk8wwuOFg6x9BQXbzjrQhtyXh46K9bqVTPzSo2FnyMBaYGBMC6PhQy7yxxil9vIedFBweQBMK74/7o8A== - dependencies: - esprima "^4.0.1" - estraverse "^4.2.0" - esutils "^2.0.2" - optionator "^0.8.1" - optionalDependencies: - source-map "~0.6.1" - -eslint-config-prettier@6.11.0: - version "6.11.0" - resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-6.11.0.tgz#f6d2238c1290d01c859a8b5c1f7d352a0b0da8b1" - integrity sha512-oB8cpLWSAjOVFEJhhyMZh6NOEOtBVziaqdDQ86+qhDHFbZXoRTM7pNSvFRfW/W/L/LrQ38C99J5CGuRBBzBsdA== - dependencies: - get-stdin "^6.0.0" - -eslint-config-react-app@^5.2.1: - version "5.2.1" - resolved "https://registry.yarnpkg.com/eslint-config-react-app/-/eslint-config-react-app-5.2.1.tgz#698bf7aeee27f0cea0139eaef261c7bf7dd623df" - integrity sha512-pGIZ8t0mFLcV+6ZirRgYK6RVqUIKRIi9MmgzUEmrIknsn3AdO0I32asO86dJgloHq+9ZPl8UIg8mYrvgP5u2wQ== - dependencies: - confusing-browser-globals "^1.0.9" - -eslint-import-resolver-node@^0.3.2: - version "0.3.3" - resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.3.tgz#dbaa52b6b2816b50bc6711af75422de808e98404" - integrity sha512-b8crLDo0M5RSe5YG8Pu2DYBj71tSB6OvXkfzwbJU2w7y8P4/yo0MyF8jU26IEuEuHF2K5/gcAJE3LhQGqBBbVg== - dependencies: - debug "^2.6.9" - resolve "^1.13.1" - -eslint-loader@3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/eslint-loader/-/eslint-loader-3.0.3.tgz#e018e3d2722381d982b1201adb56819c73b480ca" - integrity sha512-+YRqB95PnNvxNp1HEjQmvf9KNvCin5HXYYseOXVC2U0KEcw4IkQ2IQEBG46j7+gW39bMzeu0GsUhVbBY3Votpw== - dependencies: - fs-extra "^8.1.0" - loader-fs-cache "^1.0.2" - loader-utils "^1.2.3" - object-hash "^2.0.1" - schema-utils "^2.6.1" - -eslint-module-utils@^2.4.1: - version "2.6.0" - resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.6.0.tgz#579ebd094f56af7797d19c9866c9c9486629bfa6" - integrity sha512-6j9xxegbqe8/kZY8cYpcp0xhbK0EgJlg3g9mib3/miLaExuuwc3n5UEfSnU6hWMbT0FAYVvDbL9RrRgpUeQIvA== - dependencies: - debug "^2.6.9" - pkg-dir "^2.0.0" - -eslint-plugin-flowtype@4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-flowtype/-/eslint-plugin-flowtype-4.6.0.tgz#82b2bd6f21770e0e5deede0228e456cb35308451" - integrity sha512-W5hLjpFfZyZsXfo5anlu7HM970JBDqbEshAJUkeczP6BFCIfJXuiIBQXyberLRtOStT0OGPF8efeTbxlHk4LpQ== - dependencies: - lodash "^4.17.15" - -eslint-plugin-import@2.20.1: - version "2.20.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.20.1.tgz#802423196dcb11d9ce8435a5fc02a6d3b46939b3" - integrity sha512-qQHgFOTjguR+LnYRoToeZWT62XM55MBVXObHM6SKFd1VzDcX/vqT1kAz8ssqigh5eMj8qXcRoXXGZpPP6RfdCw== - dependencies: - array-includes "^3.0.3" - array.prototype.flat "^1.2.1" - contains-path "^0.1.0" - debug "^2.6.9" - doctrine "1.5.0" - eslint-import-resolver-node "^0.3.2" - eslint-module-utils "^2.4.1" - has "^1.0.3" - minimatch "^3.0.4" - object.values "^1.1.0" - read-pkg-up "^2.0.0" - resolve "^1.12.0" - -eslint-plugin-jest@23.18.0: - version "23.18.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-23.18.0.tgz#4813eacb181820ed13c5505f400956d176b25af8" - integrity sha512-wLPM/Rm1SGhxrFQ2TKM/BYsYPhn7ch6ZEK92S2o/vGkAAnDXM0I4nTIo745RIX+VlCRMFgBuJEax6XfTHMdeKg== - dependencies: - "@typescript-eslint/experimental-utils" "^2.5.0" - -eslint-plugin-jsx-a11y@6.2.3: - version "6.2.3" - resolved "https://registry.yarnpkg.com/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.2.3.tgz#b872a09d5de51af70a97db1eea7dc933043708aa" - integrity sha512-CawzfGt9w83tyuVekn0GDPU9ytYtxyxyFZ3aSWROmnRRFQFT2BiPJd7jvRdzNDi6oLWaS2asMeYSNMjWTV4eNg== - dependencies: - "@babel/runtime" "^7.4.5" - aria-query "^3.0.0" - array-includes "^3.0.3" - ast-types-flow "^0.0.7" - axobject-query "^2.0.2" - damerau-levenshtein "^1.0.4" - emoji-regex "^7.0.2" - has "^1.0.3" - jsx-ast-utils "^2.2.1" - -eslint-plugin-prettier@3.1.4: - version "3.1.4" - resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-3.1.4.tgz#168ab43154e2ea57db992a2cd097c828171f75c2" - integrity sha512-jZDa8z76klRqo+TdGDTFJSavwbnWK2ZpqGKNZ+VvweMW516pDUMmQ2koXvxEE4JhzNvTv+radye/bWGBmA6jmg== - dependencies: - prettier-linter-helpers "^1.0.0" - -eslint-plugin-react-hooks@^1.6.1: - version "1.7.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-1.7.0.tgz#6210b6d5a37205f0b92858f895a4e827020a7d04" - integrity sha512-iXTCFcOmlWvw4+TOE8CLWj6yX1GwzT0Y6cUfHHZqWnSk144VmVIRcVGtUAzrLES7C798lmvnt02C7rxaOX1HNA== - -eslint-plugin-react@7.19.0: - version "7.19.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.19.0.tgz#6d08f9673628aa69c5559d33489e855d83551666" - integrity sha512-SPT8j72CGuAP+JFbT0sJHOB80TX/pu44gQ4vXH/cq+hQTiY2PuZ6IHkqXJV6x1b28GDdo1lbInjKUrrdUf0LOQ== - dependencies: - array-includes "^3.1.1" - doctrine "^2.1.0" - has "^1.0.3" - jsx-ast-utils "^2.2.3" - object.entries "^1.1.1" - object.fromentries "^2.0.2" - object.values "^1.1.1" - prop-types "^15.7.2" - resolve "^1.15.1" - semver "^6.3.0" - string.prototype.matchall "^4.0.2" - xregexp "^4.3.0" - -eslint-scope@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.3.tgz#ca03833310f6889a3264781aa82e63eb9cfe7848" - integrity sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg== - dependencies: - esrecurse "^4.1.0" - estraverse "^4.1.1" - -eslint-scope@^5.0.0, eslint-scope@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.0.tgz#d0f971dfe59c69e0cada684b23d49dbf82600ce5" - integrity sha512-iiGRvtxWqgtx5m8EyQUJihBloE4EnYeGE/bz1wSPwJE6tZuJUtHlhqDM4Xj2ukE8Dyy1+HCZ4hE0fzIVMzb58w== - dependencies: - esrecurse "^4.1.0" - estraverse "^4.1.1" - -eslint-utils@^1.4.3: - version "1.4.3" - resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.4.3.tgz#74fec7c54d0776b6f67e0251040b5806564e981f" - integrity sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q== - dependencies: - eslint-visitor-keys "^1.1.0" - -eslint-utils@^2.0.0, eslint-utils@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz#d2de5e03424e707dc10c74068ddedae708741b27" - integrity sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg== - dependencies: - eslint-visitor-keys "^1.1.0" - -eslint-visitor-keys@^1.0.0, eslint-visitor-keys@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.2.0.tgz#74415ac884874495f78ec2a97349525344c981fa" - integrity sha512-WFb4ihckKil6hu3Dp798xdzSfddwKKU3+nGniKF6HfeW6OLd2OUDEPP7TcHtB5+QXOKg2s6B2DaMPE1Nn/kxKQ== - -eslint-visitor-keys@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" - integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== - -eslint@7.5.0: - version "7.5.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.5.0.tgz#9ecbfad62216d223b82ac9ffea7ef3444671d135" - integrity sha512-vlUP10xse9sWt9SGRtcr1LAC67BENcQMFeV+w5EvLEoFe3xJ8cF1Skd0msziRx/VMC+72B4DxreCE+OR12OA6Q== - dependencies: - "@babel/code-frame" "^7.0.0" - ajv "^6.10.0" - chalk "^4.0.0" - cross-spawn "^7.0.2" - debug "^4.0.1" - doctrine "^3.0.0" - enquirer "^2.3.5" - eslint-scope "^5.1.0" - eslint-utils "^2.1.0" - eslint-visitor-keys "^1.3.0" - espree "^7.2.0" - esquery "^1.2.0" - esutils "^2.0.2" - file-entry-cache "^5.0.1" - functional-red-black-tree "^1.0.1" - glob-parent "^5.0.0" - globals "^12.1.0" - ignore "^4.0.6" - import-fresh "^3.0.0" - imurmurhash "^0.1.4" - is-glob "^4.0.0" - js-yaml "^3.13.1" - json-stable-stringify-without-jsonify "^1.0.1" - levn "^0.4.1" - lodash "^4.17.19" - minimatch "^3.0.4" - natural-compare "^1.4.0" - optionator "^0.9.1" - progress "^2.0.0" - regexpp "^3.1.0" - semver "^7.2.1" - strip-ansi "^6.0.0" - strip-json-comments "^3.1.0" - table "^5.2.3" - text-table "^0.2.0" - v8-compile-cache "^2.0.3" - -eslint@^6.6.0: - version "6.8.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-6.8.0.tgz#62262d6729739f9275723824302fb227c8c93ffb" - integrity sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig== - dependencies: - "@babel/code-frame" "^7.0.0" - ajv "^6.10.0" - chalk "^2.1.0" - cross-spawn "^6.0.5" - debug "^4.0.1" - doctrine "^3.0.0" - eslint-scope "^5.0.0" - eslint-utils "^1.4.3" - eslint-visitor-keys "^1.1.0" - espree "^6.1.2" - esquery "^1.0.1" - esutils "^2.0.2" - file-entry-cache "^5.0.1" - functional-red-black-tree "^1.0.1" - glob-parent "^5.0.0" - globals "^12.1.0" - ignore "^4.0.6" - import-fresh "^3.0.0" - imurmurhash "^0.1.4" - inquirer "^7.0.0" - is-glob "^4.0.0" - js-yaml "^3.13.1" - json-stable-stringify-without-jsonify "^1.0.1" - levn "^0.3.0" - lodash "^4.17.14" - minimatch "^3.0.4" - mkdirp "^0.5.1" - natural-compare "^1.4.0" - optionator "^0.8.3" - progress "^2.0.0" - regexpp "^2.0.1" - semver "^6.1.2" - strip-ansi "^5.2.0" - strip-json-comments "^3.0.1" - table "^5.2.3" - text-table "^0.2.0" - v8-compile-cache "^2.0.3" - -espree@^6.1.2: - version "6.2.1" - resolved "https://registry.yarnpkg.com/espree/-/espree-6.2.1.tgz#77fc72e1fd744a2052c20f38a5b575832e82734a" - integrity sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw== - dependencies: - acorn "^7.1.1" - acorn-jsx "^5.2.0" - eslint-visitor-keys "^1.1.0" - -espree@^7.2.0: - version "7.2.0" - resolved "https://registry.yarnpkg.com/espree/-/espree-7.2.0.tgz#1c263d5b513dbad0ac30c4991b93ac354e948d69" - integrity sha512-H+cQ3+3JYRMEIOl87e7QdHX70ocly5iW4+dttuR8iYSPr/hXKFb+7dBsZ7+u1adC4VrnPlTkv0+OwuPnDop19g== - dependencies: - acorn "^7.3.1" - acorn-jsx "^5.2.0" - eslint-visitor-keys "^1.3.0" - -esprima@^4.0.0, esprima@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" - integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== - -esquery@^1.0.1, esquery@^1.2.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.3.1.tgz#b78b5828aa8e214e29fb74c4d5b752e1c033da57" - integrity sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ== - dependencies: - estraverse "^5.1.0" - -esrecurse@^4.1.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.1.tgz#007a3b9fdbc2b3bb87e4879ea19c92fdbd3942cf" - integrity sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ== - dependencies: - estraverse "^4.1.0" - -estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" - integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== - -estraverse@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.1.0.tgz#374309d39fd935ae500e7b92e8a6b4c720e59642" - integrity sha512-FyohXK+R0vE+y1nHLoBM7ZTyqRpqAlhdZHCWIWEviFLiGB8b04H6bQs8G+XTthacvT8VuwvteiP7RJSxMs8UEw== - -esutils@^2.0.2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" - integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== - -etag@~1.8.1: - version "1.8.1" - resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" - integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= - -eventemitter3@^3.1.0: - version "3.1.2" - resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-3.1.2.tgz#2d3d48f9c346698fce83a85d7d664e98535df6e7" - integrity sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q== - -eventemitter3@^4.0.0: - version "4.0.4" - resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.4.tgz#b5463ace635a083d018bdc7c917b4c5f10a85384" - integrity sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ== - -events@3.1.0, events@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/events/-/events-3.1.0.tgz#84279af1b34cb75aa88bf5ff291f6d0bd9b31a59" - integrity sha512-Rv+u8MLHNOdMjTAFeT3nCjHn2aGlx435FP/sDHNaRhDEMwyI/aB22Kj2qIN8R0cw3z28psEQLYwxVKLsKrMgWg== - -eventsource@^1.0.7: - version "1.0.7" - resolved "https://registry.yarnpkg.com/eventsource/-/eventsource-1.0.7.tgz#8fbc72c93fcd34088090bc0a4e64f4b5cee6d8d0" - integrity sha512-4Ln17+vVT0k8aWq+t/bF5arcS3EpT9gYtW66EPacdj/mAFevznsnyoHLPy2BA8gbIQeIHoPsvwmfBftfcG//BQ== - dependencies: - original "^1.0.0" - -evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02" - integrity sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA== - dependencies: - md5.js "^1.3.4" - safe-buffer "^5.1.1" - -exec-sh@^0.3.2: - version "0.3.4" - resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.3.4.tgz#3a018ceb526cc6f6df2bb504b2bfe8e3a4934ec5" - integrity sha512-sEFIkc61v75sWeOe72qyrqg2Qg0OuLESziUDk/O/z2qgS15y2gWVFrI6f2Qn/qw/0/NCfCEsmNA4zOjkwEZT1A== - -execa@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" - integrity sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA== - dependencies: - cross-spawn "^6.0.0" - get-stream "^4.0.0" - is-stream "^1.1.0" - npm-run-path "^2.0.0" - p-finally "^1.0.0" - signal-exit "^3.0.0" - strip-eof "^1.0.0" - -execa@^4.0.0, execa@^4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/execa/-/execa-4.0.2.tgz#ad87fb7b2d9d564f70d2b62d511bee41d5cbb240" - integrity sha512-QI2zLa6CjGWdiQsmSkZoGtDx2N+cQIGb3yNolGTdjSQzydzLgYYf8LRuagp7S7fPimjcrzUDSUFd/MgzELMi4Q== - dependencies: - cross-spawn "^7.0.0" - get-stream "^5.0.0" - human-signals "^1.1.1" - is-stream "^2.0.0" - merge-stream "^2.0.0" - npm-run-path "^4.0.0" - onetime "^5.1.0" - signal-exit "^3.0.2" - strip-final-newline "^2.0.0" - -exit@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" - integrity sha1-BjJjj42HfMghB9MKD/8aF8uhzQw= - -expand-brackets@^2.1.4: - version "2.1.4" - resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" - integrity sha1-t3c14xXOMPa27/D4OwQVGiJEliI= - dependencies: - debug "^2.3.3" - define-property "^0.2.5" - extend-shallow "^2.0.1" - posix-character-classes "^0.1.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -expect@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/expect/-/expect-24.9.0.tgz#b75165b4817074fa4a157794f46fe9f1ba15b6ca" - integrity sha512-wvVAx8XIol3Z5m9zvZXiyZOQ+sRJqNTIm6sGjdWlaZIeupQGO3WbYI+15D/AmEwZywL6wtJkbAbJtzkOfBuR0Q== - dependencies: - "@jest/types" "^24.9.0" - ansi-styles "^3.2.0" - jest-get-type "^24.9.0" - jest-matcher-utils "^24.9.0" - jest-message-util "^24.9.0" - jest-regex-util "^24.9.0" - -expect@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/expect/-/expect-26.2.0.tgz#0140dd9cc7376d7833852e9cda88c05414f1efba" - integrity sha512-8AMBQ9UVcoUXt0B7v+5/U5H6yiUR87L6eKCfjE3spx7Ya5lF+ebUo37MCFBML2OiLfkX1sxmQOZhIDonyVTkcw== - dependencies: - "@jest/types" "^26.2.0" - ansi-styles "^4.0.0" - jest-get-type "^26.0.0" - jest-matcher-utils "^26.2.0" - jest-message-util "^26.2.0" - jest-regex-util "^26.0.0" - -express-session@1.17.1: - version "1.17.1" - resolved "https://registry.yarnpkg.com/express-session/-/express-session-1.17.1.tgz#36ecbc7034566d38c8509885c044d461c11bf357" - integrity sha512-UbHwgqjxQZJiWRTMyhvWGvjBQduGCSBDhhZXYenziMFjxst5rMV+aJZ6hKPHZnPyHGsrqRICxtX8jtEbm/z36Q== - dependencies: - cookie "0.4.0" - cookie-signature "1.0.6" - debug "2.6.9" - depd "~2.0.0" - on-headers "~1.0.2" - parseurl "~1.3.3" - safe-buffer "5.2.0" - uid-safe "~2.1.5" - -express@4.17.1, express@^4.0.0, express@^4.17.0, express@^4.17.1: - version "4.17.1" - resolved "https://registry.yarnpkg.com/express/-/express-4.17.1.tgz#4491fc38605cf51f8629d39c2b5d026f98a4c134" - integrity sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g== - 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" - -ext@^1.1.2: - version "1.4.0" - resolved "https://registry.yarnpkg.com/ext/-/ext-1.4.0.tgz#89ae7a07158f79d35517882904324077e4379244" - integrity sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A== - dependencies: - type "^2.0.0" - -extend-shallow@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" - integrity sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8= - dependencies: - is-extendable "^0.1.0" - -extend-shallow@^3.0.0, extend-shallow@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" - integrity sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg= - dependencies: - assign-symbols "^1.0.0" - is-extendable "^1.0.1" - -extend@~3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" - integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== - -external-editor@^2.0.1: - version "2.2.0" - resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-2.2.0.tgz#045511cfd8d133f3846673d1047c154e214ad3d5" - integrity sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A== - dependencies: - chardet "^0.4.0" - iconv-lite "^0.4.17" - tmp "^0.0.33" - -external-editor@^3.0.3: - version "3.1.0" - resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.1.0.tgz#cb03f740befae03ea4d283caed2741a83f335495" - integrity sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew== - dependencies: - chardet "^0.7.0" - iconv-lite "^0.4.24" - tmp "^0.0.33" - -extglob@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" - integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== - dependencies: - array-unique "^0.3.2" - define-property "^1.0.0" - expand-brackets "^2.1.4" - extend-shallow "^2.0.1" - fragment-cache "^0.2.1" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -extract-files@^8.0.0: - version "8.1.0" - resolved "https://registry.yarnpkg.com/extract-files/-/extract-files-8.1.0.tgz#46a0690d0fe77411a2e3804852adeaa65cd59288" - integrity sha512-PTGtfthZK79WUMk+avLmwx3NGdU8+iVFXC2NMGxKsn0MnihOG2lvumj+AZo8CTwTrwjXDgZ5tztbRlEdRjBonQ== - -extsprintf@1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" - integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU= - -extsprintf@^1.2.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" - integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8= - -fast-deep-equal@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz#c053477817c86b51daa853c81e059b733d023614" - integrity sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ= - -fast-deep-equal@^3.1.1: - version "3.1.3" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" - integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== - -fast-diff@^1.1.2: - version "1.2.0" - resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.2.0.tgz#73ee11982d86caaf7959828d519cfe927fac5f03" - integrity sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w== - -fast-glob@^2.0.2, fast-glob@^2.2.6: - version "2.2.7" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-2.2.7.tgz#6953857c3afa475fff92ee6015d52da70a4cd39d" - integrity sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw== - dependencies: - "@mrmlnc/readdir-enhanced" "^2.2.1" - "@nodelib/fs.stat" "^1.1.2" - glob-parent "^3.1.0" - is-glob "^4.0.0" - merge2 "^1.2.3" - micromatch "^3.1.10" - -fast-glob@^3.1.1: - version "3.2.2" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.2.tgz#ade1a9d91148965d4bf7c51f72e1ca662d32e63d" - integrity sha512-UDV82o4uQyljznxwMxyVRJgZZt3O5wENYojjzbaGEGZgeOxkLFf+V4cnUD+krzb2F72E18RhamkMZ7AdeggF7A== - dependencies: - "@nodelib/fs.stat" "^2.0.2" - "@nodelib/fs.walk" "^1.2.3" - glob-parent "^5.1.0" - merge2 "^1.3.0" - micromatch "^4.0.2" - picomatch "^2.2.1" - -fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" - integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== - -fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" - integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= - -fastq@^1.6.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.8.0.tgz#550e1f9f59bbc65fe185cb6a9b4d95357107f481" - integrity sha512-SMIZoZdLh/fgofivvIkmknUXyPnvxRE3DhtZ5Me3Mrsk5gyPL42F0xr51TdRXskBxHfMp+07bcYzfsYEsSQA9Q== - dependencies: - reusify "^1.0.4" - -faye-websocket@^0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.10.0.tgz#4e492f8d04dfb6f89003507f6edbf2d501e7c6f4" - integrity sha1-TkkvjQTftviQA1B/btvy1QHnxvQ= - dependencies: - websocket-driver ">=0.5.1" - -faye-websocket@~0.11.1: - version "0.11.3" - resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.3.tgz#5c0e9a8968e8912c286639fde977a8b209f2508e" - integrity sha512-D2y4bovYpzziGgbHYtGCMjlJM36vAl/y+xUyn1C+FVx8szd1E+86KwVw6XvYSzOP8iMpm1X0I4xJD+QtUb36OA== - dependencies: - websocket-driver ">=0.5.1" - -fb-watchman@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.1.tgz#fc84fb39d2709cf3ff6d743706157bb5708a8a85" - integrity sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg== - dependencies: - bser "2.1.1" - -fbjs-css-vars@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/fbjs-css-vars/-/fbjs-css-vars-1.0.2.tgz#216551136ae02fe255932c3ec8775f18e2c078b8" - integrity sha512-b2XGFAFdWZWg0phtAWLHCk836A1Xann+I+Dgd3Gk64MHKZO44FfoD1KxyvbSh0qZsIoXQGGlVztIY+oitJPpRQ== - -fbjs@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-1.0.0.tgz#52c215e0883a3c86af2a7a776ed51525ae8e0a5a" - integrity sha512-MUgcMEJaFhCaF1QtWGnmq9ZDRAzECTCRAF7O6UZIlAlkTs1SasiX9aP0Iw7wfD2mJ7wDTNfg2w7u5fSCwJk1OA== - dependencies: - core-js "^2.4.1" - fbjs-css-vars "^1.0.0" - isomorphic-fetch "^2.1.1" - loose-envify "^1.0.0" - object-assign "^4.1.0" - promise "^7.1.1" - setimmediate "^1.0.5" - ua-parser-js "^0.7.18" - -figgy-pudding@^3.4.1, figgy-pudding@^3.5.1: - version "3.5.2" - resolved "https://registry.yarnpkg.com/figgy-pudding/-/figgy-pudding-3.5.2.tgz#b4eee8148abb01dcf1d1ac34367d59e12fa61d6e" - integrity sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw== - -figlet@^1.1.1: - version "1.4.0" - resolved "https://registry.yarnpkg.com/figlet/-/figlet-1.4.0.tgz#21c5878b3752a932ebdb8be400e2d10bbcddfd60" - integrity sha512-CxxIjEKHlqGosgXaIA+sikGDdV6KZOOlzPJnYuPgQlOSHZP5h9WIghYI30fyXnwEVeSH7Hedy72gC6zJrFC+SQ== - -figures@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e" - integrity sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4= - dependencies: - escape-string-regexp "^1.0.5" - object-assign "^4.1.0" - -figures@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" - integrity sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI= - dependencies: - escape-string-regexp "^1.0.5" - -figures@^3.0.0, figures@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" - integrity sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg== - dependencies: - escape-string-regexp "^1.0.5" - -file-entry-cache@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-5.0.1.tgz#ca0f6efa6dd3d561333fb14515065c2fafdf439c" - integrity sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g== - dependencies: - flat-cache "^2.0.1" - -file-loader@4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-4.3.0.tgz#780f040f729b3d18019f20605f723e844b8a58af" - integrity sha512-aKrYPYjF1yG3oX0kWRrqrSMfgftm7oJW5M+m4owoldH5C51C0RkIwB++JbRvEW3IU6/ZG5n8UvEcdgwOt2UOWA== - dependencies: - loader-utils "^1.2.3" - schema-utils "^2.5.0" - -file-uri-to-path@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" - integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw== - -filesize@6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/filesize/-/filesize-6.0.1.tgz#f850b509909c7c86f7e450ea19006c31c2ed3d2f" - integrity sha512-u4AYWPgbI5GBhs6id1KdImZWn5yfyFrrQ8OWZdN7ZMfA8Bf4HcO0BGo9bmUIEV8yrp8I1xVfJ/dn90GtFNNJcg== - -fill-range@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" - integrity sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc= - dependencies: - extend-shallow "^2.0.1" - is-number "^3.0.0" - repeat-string "^1.6.1" - to-regex-range "^2.1.0" - -fill-range@^7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" - integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== - dependencies: - to-regex-range "^5.0.1" - -finalhandler@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.2.tgz#b7e7d000ffd11938d0fdb053506f6ebabe9f587d" - integrity sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA== - 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" - -find-cache-dir@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-0.1.1.tgz#c8defae57c8a52a8a784f9e31c57c742e993a0b9" - integrity sha1-yN765XyKUqinhPnjHFfHQumToLk= - dependencies: - commondir "^1.0.1" - mkdirp "^0.5.1" - pkg-dir "^1.0.0" - -find-cache-dir@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-2.1.0.tgz#8d0f94cd13fe43c6c7c261a0d86115ca918c05f7" - integrity sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ== - dependencies: - commondir "^1.0.1" - make-dir "^2.0.0" - pkg-dir "^3.0.0" - -find-cache-dir@^3.2.0: - version "3.3.1" - resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.3.1.tgz#89b33fad4a4670daa94f855f7fbe31d6d84fe880" - integrity sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ== - dependencies: - commondir "^1.0.1" - make-dir "^3.0.2" - pkg-dir "^4.1.0" - -find-up@4.1.0, find-up@^4.0.0, find-up@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" - integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== - dependencies: - locate-path "^5.0.0" - path-exists "^4.0.0" - -find-up@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" - integrity sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8= - dependencies: - path-exists "^2.0.0" - pinkie-promise "^2.0.0" - -find-up@^2.0.0, find-up@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" - integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c= - dependencies: - locate-path "^2.0.0" - -find-up@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" - integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== - dependencies: - locate-path "^3.0.0" - -find-versions@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/find-versions/-/find-versions-3.2.0.tgz#10297f98030a786829681690545ef659ed1d254e" - integrity sha512-P8WRou2S+oe222TOCHitLy8zj+SIsVJh52VP4lvXkaFVnOFFdoWv1H1Jjvel1aI6NCFOAaeAVm8qrI0odiLcww== - dependencies: - semver-regex "^2.0.0" - -flat-cache@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-2.0.1.tgz#5d296d6f04bda44a4630a301413bdbc2ec085ec0" - integrity sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA== - dependencies: - flatted "^2.0.0" - rimraf "2.6.3" - write "1.0.3" - -flatted@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/flatted/-/flatted-2.0.2.tgz#4575b21e2bcee7434aa9be662f4b7b5f9c2b5138" - integrity sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA== - -flatten@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/flatten/-/flatten-1.0.3.tgz#c1283ac9f27b368abc1e36d1ff7b04501a30356b" - integrity sha512-dVsPA/UwQ8+2uoFe5GHtiBMu48dWLTdsuEd7CKGlZlD78r1TTWBvDuFaFGKCo/ZfEr95Uk56vZoX86OsHkUeIg== - -flush-write-stream@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.1.1.tgz#8dd7d873a1babc207d94ead0c2e0e44276ebf2e8" - integrity sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w== - dependencies: - inherits "^2.0.3" - readable-stream "^2.3.6" - -follow-redirects@^1.0.0: - version "1.11.0" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.11.0.tgz#afa14f08ba12a52963140fe43212658897bc0ecb" - integrity sha512-KZm0V+ll8PfBrKwMzdo5D13b1bur9Iq9Zd/RMmAoQQcl2PxxFml8cxXPaaPYVbV0RjNjq1CU7zIzAOqtUPudmA== - dependencies: - debug "^3.0.0" - -for-in@^0.1.3: - version "0.1.8" - resolved "https://registry.yarnpkg.com/for-in/-/for-in-0.1.8.tgz#d8773908e31256109952b1fdb9b3fa867d2775e1" - integrity sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE= - -for-in@^1.0.1, for-in@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" - integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA= - -for-own@^0.1.3: - version "0.1.5" - resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.5.tgz#5265c681a4f294dabbf17c9509b6763aa84510ce" - integrity sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4= - dependencies: - for-in "^1.0.1" - -forever-agent@~0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" - integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= - -fork-ts-checker-webpack-plugin@3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-3.1.1.tgz#a1642c0d3e65f50c2cc1742e9c0a80f441f86b19" - integrity sha512-DuVkPNrM12jR41KM2e+N+styka0EgLkTnXmNcXdgOM37vtGeY+oCBK/Jx0hzSeEU6memFCtWb4htrHPMDfwwUQ== - dependencies: - babel-code-frame "^6.22.0" - chalk "^2.4.1" - chokidar "^3.3.0" - micromatch "^3.1.10" - minimatch "^3.0.4" - semver "^5.6.0" - tapable "^1.0.0" - worker-rpc "^0.1.0" - -form-data@^2.5.0: - version "2.5.1" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.5.1.tgz#f2cbec57b5e59e23716e128fe44d4e5dd23895f4" - integrity sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA== - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.6" - mime-types "^2.1.12" - -form-data@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-3.0.0.tgz#31b7e39c85f1355b7139ee0c647cf0de7f83c682" - integrity sha512-CKMFDglpbMi6PyN+brwB9Q/GOw0eAnsrEZDgcsH5Krhz5Od/haKHAX0NmQfha2zPPz0JpWzA7GJHGSnvCRLWsg== - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.8" - mime-types "^2.1.12" - -form-data@~2.3.2: - version "2.3.3" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" - integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ== - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.6" - mime-types "^2.1.12" - -formik@2.1.4: - version "2.1.4" - resolved "https://registry.yarnpkg.com/formik/-/formik-2.1.4.tgz#8deef07ec845ea98f75e03da4aad7aab4ac46570" - integrity sha512-oKz8S+yQBzuQVSEoxkqqJrKQS5XJASWGVn6mrs+oTWrBoHgByVwwI1qHiVc9GKDpZBU9vAxXYAKz2BvujlwunA== - dependencies: - deepmerge "^2.1.1" - hoist-non-react-statics "^3.3.0" - lodash "^4.17.14" - lodash-es "^4.17.14" - react-fast-compare "^2.0.1" - scheduler "^0.18.0" - tiny-warning "^1.0.2" - tslib "^1.10.0" - -forwarded@~0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.2.tgz#98c23dab1175657b8c0573e8ceccd91b0ff18c84" - integrity sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ= - -fragment-cache@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" - integrity sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk= - dependencies: - map-cache "^0.2.2" - -fresh@0.5.2: - version "0.5.2" - resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" - integrity sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac= - -from2@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" - integrity sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8= - dependencies: - inherits "^2.0.1" - readable-stream "^2.0.0" - -fs-capacitor@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/fs-capacitor/-/fs-capacitor-2.0.4.tgz#5a22e72d40ae5078b4fe64fe4d08c0d3fc88ad3c" - integrity sha512-8S4f4WsCryNw2mJJchi46YgB6CR5Ze+4L1h8ewl9tEpL4SJ3ZO+c/bS4BWhB8bK+O3TMqhuZarTitd0S0eh2pA== - -fs-extra@9.0.1: - version "9.0.1" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.0.1.tgz#910da0062437ba4c39fedd863f1675ccfefcb9fc" - integrity sha512-h2iAoN838FqAFJY2/qVpzFXy+EBxfVE220PalAqQLDVsFOHLJrZvut5puAbCdNv6WJk+B8ihI+k0c7JK5erwqQ== - dependencies: - at-least-node "^1.0.0" - graceful-fs "^4.2.0" - jsonfile "^6.0.1" - universalify "^1.0.0" - -fs-extra@^4.0.2: - version "4.0.3" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-4.0.3.tgz#0d852122e5bc5beb453fb028e9c0c9bf36340c94" - integrity sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg== - dependencies: - graceful-fs "^4.1.2" - jsonfile "^4.0.0" - universalify "^0.1.0" - -fs-extra@^7.0.0: - version "7.0.1" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-7.0.1.tgz#4f189c44aa123b895f722804f55ea23eadc348e9" - integrity sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw== - dependencies: - graceful-fs "^4.1.2" - jsonfile "^4.0.0" - universalify "^0.1.0" - -fs-extra@^8.1.0: - version "8.1.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0" - integrity sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g== - dependencies: - graceful-fs "^4.2.0" - jsonfile "^4.0.0" - universalify "^0.1.0" - -fs-minipass@^1.2.5: - version "1.2.7" - resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.7.tgz#ccff8570841e7fe4265693da88936c55aed7f7c7" - integrity sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA== - dependencies: - minipass "^2.6.0" - -fs-minipass@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" - integrity sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg== - dependencies: - minipass "^3.0.0" - -fs-write-stream-atomic@^1.0.8: - version "1.0.10" - resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" - integrity sha1-tH31NJPvkR33VzHnCp3tAYnbQMk= - dependencies: - graceful-fs "^4.1.2" - iferr "^0.1.5" - imurmurhash "^0.1.4" - readable-stream "1 || 2" - -fs.realpath@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" - integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= - -fsevents@2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.2.tgz#4c0a1fb34bc68e543b4b82a9ec392bfbda840805" - integrity sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA== +# This file is generated by running "yarn install" inside your project. +# Manual changes might be lost - proceed with caution! + +__metadata: + version: 4 + cacheKey: 5 + +"@accounts/apollo-link@^0.29.0, @accounts/apollo-link@workspace:packages/apollo-link-accounts": + version: 0.0.0-use.local + resolution: "@accounts/apollo-link@workspace:packages/apollo-link-accounts" + dependencies: + "@accounts/client": ^0.29.0 + "@apollo/client": 3.1.3 + "@types/node": 14.0.14 + graphql: 14.6.0 + rimraf: 3.0.2 + tslib: 2.0.0 + peerDependencies: + "@apollo/client": ^3.0.0 + languageName: unknown + linkType: soft + +"@accounts/boost@^0.29.0, @accounts/boost@workspace:packages/boost": + version: 0.0.0-use.local + resolution: "@accounts/boost@workspace:packages/boost" + dependencies: + "@accounts/database-manager": ^0.29.0 + "@accounts/graphql-api": ^0.29.0 + "@accounts/server": ^0.29.0 + "@accounts/types": ^0.29.0 + "@graphql-modules/core": 0.7.17 + apollo-server: ^2.9.3 + graphql: 14.6.0 + graphql-tools: ^5.0.0 + jsonwebtoken: ^8.5.1 + lodash: ^4.17.15 + rimraf: 3.0.2 + tslib: 2.0.0 + languageName: unknown + linkType: soft + +"@accounts/client-password@^0.29.0, @accounts/client-password@workspace:packages/client-password": + version: 0.0.0-use.local + resolution: "@accounts/client-password@workspace:packages/client-password" + dependencies: + "@accounts/client": ^0.29.0 + "@accounts/types": ^0.29.0 + "@types/jest": 26.0.9 + "@types/node": 14.0.14 + jest: 26.2.2 + rimraf: 3.0.2 + tslib: 2.0.0 + languageName: unknown + linkType: soft + +"@accounts/client@^0.29.0, @accounts/client@workspace:packages/client": + version: 0.0.0-use.local + resolution: "@accounts/client@workspace:packages/client" + dependencies: + "@accounts/types": ^0.29.0 + "@types/jest": 26.0.9 + "@types/jwt-decode": 2.2.1 + "@types/node": 14.0.14 + jest: 26.2.2 + jest-localstorage-mock: 2.4.2 + jsonwebtoken: 8.5.1 + jwt-decode: 2.2.0 + localstorage-polyfill: 1.0.1 + rimraf: 3.0.2 + tslib: 2.0.0 + languageName: unknown + linkType: soft + +"@accounts/database-manager@^0.29.0, @accounts/database-manager@workspace:packages/database-manager": + version: 0.0.0-use.local + resolution: "@accounts/database-manager@workspace:packages/database-manager" + dependencies: + "@accounts/types": ^0.29.0 + "@types/jest": 26.0.9 + "@types/node": 14.0.14 + jest: 26.2.2 + rimraf: 3.0.2 + tslib: 2.0.0 + languageName: unknown + linkType: soft + +"@accounts/database-tests@^0.29.0, @accounts/database-tests@workspace:packages/database-tests": + version: 0.0.0-use.local + resolution: "@accounts/database-tests@workspace:packages/database-tests" + dependencies: + "@accounts/types": ^0.29.0 + "@types/jest": 26.0.9 + "@types/node": 14.0.14 + jest: 26.2.2 + tslib: 2.0.0 + languageName: unknown + linkType: soft + +"@accounts/e2e@workspace:packages/e2e": + version: 0.0.0-use.local + resolution: "@accounts/e2e@workspace:packages/e2e" + dependencies: + "@accounts/client": ^0.29.0 + "@accounts/client-password": ^0.29.0 + "@accounts/graphql-api": ^0.29.0 + "@accounts/graphql-client": ^0.29.0 + "@accounts/mongo": ^0.29.0 + "@accounts/password": ^0.29.0 + "@accounts/rest-client": ^0.29.0 + "@accounts/rest-express": ^0.29.0 + "@accounts/server": ^0.29.0 + "@accounts/typeorm": ^0.29.0 + "@accounts/types": ^0.29.0 + "@apollo/client": 3.1.3 + "@graphql-modules/core": 0.7.17 + "@types/body-parser": 1.19.0 + "@types/express": 4.17.6 + "@types/jest": 26.0.9 + "@types/lodash": 4.14.157 + "@types/mongoose": 5.7.16 + "@types/node": 14.0.14 + "@types/node-fetch": 2.5.7 + apollo-server: 2.14.4 + body-parser: 1.19.0 + core-js: 3.6.5 + express: 4.17.1 + graphql: 14.6.0 + jest: 26.2.2 + jest-localstorage-mock: 2.4.2 + lodash: 4.17.15 + mongoose: 5.9.13 + node-fetch: 2.6.0 + tslib: 2.0.0 + typeorm: 0.2.25 + languageName: unknown + linkType: soft + +"@accounts/error@workspace:packages/error": + version: 0.0.0-use.local + resolution: "@accounts/error@workspace:packages/error" + dependencies: + "@types/jest": 26.0.9 + "@types/node": 14.0.14 + jest: 26.2.2 + rimraf: 3.0.2 + tslib: 2.0.0 + languageName: unknown + linkType: soft + +"@accounts/express-session@workspace:packages/express-session": + version: 0.0.0-use.local + resolution: "@accounts/express-session@workspace:packages/express-session" + dependencies: + "@accounts/server": ^0.29.0 + "@accounts/types": ^0.29.0 + "@types/express": 4.17.6 + "@types/express-session": 1.17.0 + "@types/jest": 26.0.9 + "@types/lodash": 4.14.157 + "@types/request-ip": 0.0.35 + express: 4.17.1 + express-session: 1.17.1 + jest: 26.2.2 + lodash: ^4.17.15 + request-ip: ^2.1.3 + tslib: 2.0.0 + peerDependencies: + "@accounts/server": ^0.19.0 + express: ^4.16.3 + express-session: ^1.15.6 + languageName: unknown + linkType: soft + +"@accounts/graphql-api@^0.29.0, @accounts/graphql-api@workspace:packages/graphql-api": + version: 0.0.0-use.local + resolution: "@accounts/graphql-api@workspace:packages/graphql-api" + dependencies: + "@accounts/password": ^0.29.0 + "@accounts/server": ^0.29.0 + "@accounts/types": ^0.29.0 + "@graphql-codegen/add": 1.17.7 + "@graphql-codegen/cli": 1.17.7 + "@graphql-codegen/introspection": 1.17.7 + "@graphql-codegen/typescript": 1.17.7 + "@graphql-codegen/typescript-operations": 1.17.7 + "@graphql-codegen/typescript-resolvers": 1.17.7 + "@graphql-codegen/typescript-type-graphql": 1.17.7 + "@graphql-modules/core": 0.7.17 + "@graphql-tools/merge": 6.0.11 + "@types/jest": 26.0.9 + "@types/request-ip": 0.0.35 + concurrently: 5.2.0 + graphql: 14.6.0 + graphql-tools: 5.0.0 + jest: 26.2.2 + lodash: 4.17.15 + request-ip: 2.1.3 + ts-node: 8.10.1 + tslib: 2.0.0 + peerDependencies: + "@accounts/password": ^0.28.0 + "@accounts/server": ^0.28.0 + "@accounts/types": ^0.28.0 + "@graphql-modules/core": 0.7.17 + graphql-tag: ^2.10.0 + graphql-tools: ^5.0.0 + languageName: unknown + linkType: soft + +"@accounts/graphql-client@^0.29.0, @accounts/graphql-client@workspace:packages/graphql-client": + version: 0.0.0-use.local + resolution: "@accounts/graphql-client@workspace:packages/graphql-client" + dependencies: + "@accounts/client": ^0.29.0 + "@accounts/types": ^0.29.0 + "@graphql-codegen/add": 1.17.7 + "@graphql-codegen/cli": 1.17.7 + "@graphql-codegen/typed-document-node": 1.17.8 + "@graphql-codegen/typescript": 1.17.7 + "@graphql-codegen/typescript-operations": 1.17.7 + "@graphql-typed-document-node/core": 0.0.1 + "@types/jest": 26.0.9 + graphql: 14.6.0 + jest: 26.2.2 + lodash: 4.17.19 + tslib: 2.0.0 + peerDependencies: + graphql: ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 + languageName: unknown + linkType: soft + +"@accounts/mongo@^0.29.0, @accounts/mongo@workspace:packages/database-mongo": + version: 0.0.0-use.local + resolution: "@accounts/mongo@workspace:packages/database-mongo" + dependencies: + "@accounts/database-tests": ^0.29.0 + "@accounts/types": ^0.29.0 + "@types/jest": 26.0.9 + "@types/lodash": 4.14.157 + "@types/mongodb": 3.5.25 + "@types/node": 14.0.14 + jest: 26.2.2 + lodash: ^4.17.15 + mongodb: ^3.4.1 + tslib: 2.0.0 + languageName: unknown + linkType: soft + +"@accounts/oauth-instagram@workspace:packages/oauth-instagram": + version: 0.0.0-use.local + resolution: "@accounts/oauth-instagram@workspace:packages/oauth-instagram" + dependencies: + "@accounts/oauth": ^0.29.0 + "@types/jest": 26.0.9 + "@types/node": 14.0.14 + "@types/request-promise": 4.1.46 + jest: 26.2.2 + request: ^2.88.0 + request-promise: ^4.2.5 + tslib: 2.0.0 + languageName: unknown + linkType: soft + +"@accounts/oauth-twitter@workspace:packages/oauth-twitter": + version: 0.0.0-use.local + resolution: "@accounts/oauth-twitter@workspace:packages/oauth-twitter" + dependencies: + "@accounts/oauth": ^0.29.0 + "@types/jest": 26.0.9 + "@types/node": 14.0.14 + "@types/oauth": 0.9.1 + jest: 26.2.2 + oauth: ^0.9.15 + tslib: 2.0.0 + languageName: unknown + linkType: soft + +"@accounts/oauth@^0.29.0, @accounts/oauth@workspace:packages/oauth": + version: 0.0.0-use.local + resolution: "@accounts/oauth@workspace:packages/oauth" + dependencies: + "@accounts/server": ^0.29.0 + "@accounts/types": ^0.29.0 + "@types/jest": 26.0.9 + "@types/node": 14.0.14 + jest: 26.2.2 + tslib: 2.0.0 + languageName: unknown + linkType: soft + +"@accounts/password@^0.29.0, @accounts/password@workspace:packages/password": + version: 0.0.0-use.local + resolution: "@accounts/password@workspace:packages/password" + dependencies: + "@accounts/server": ^0.29.0 + "@accounts/two-factor": ^0.29.0 + "@accounts/types": ^0.29.0 + "@types/bcryptjs": 2.4.2 + "@types/jest": 26.0.9 + "@types/lodash": 4.14.157 + "@types/node": 14.0.14 + bcryptjs: ^2.4.3 + jest: 26.2.2 + lodash: ^4.17.15 + rimraf: 3.0.2 + tslib: 2.0.0 + peerDependencies: + "@accounts/server": ^0.19.0 + languageName: unknown + linkType: soft + +"@accounts/redis@workspace:packages/database-redis": + version: 0.0.0-use.local + resolution: "@accounts/redis@workspace:packages/database-redis" + dependencies: + "@accounts/database-tests": ^0.29.0 + "@accounts/types": ^0.29.0 + "@types/ioredis": 4.14.9 + "@types/jest": 26.0.9 + "@types/lodash": 4.14.157 + "@types/node": 14.0.14 + "@types/shortid": 0.0.29 + ioredis: ^4.14.1 + jest: 26.2.2 + lodash: ^4.17.15 + shortid: ^2.2.15 + tslib: 2.0.0 + languageName: unknown + linkType: soft + +"@accounts/rest-client@^0.29.0, @accounts/rest-client@workspace:packages/rest-client": + version: 0.0.0-use.local + resolution: "@accounts/rest-client@workspace:packages/rest-client" + dependencies: + "@accounts/client": ^0.29.0 + "@accounts/types": ^0.29.0 + "@types/jest": 26.0.9 + "@types/lodash": 4.14.157 + "@types/node": 14.0.14 + jest: 26.2.2 + lodash: ^4.17.15 + node-fetch: 2.6.0 + tslib: 2.0.0 + peerDependencies: + "@accounts/client": ^0.19.0 + languageName: unknown + linkType: soft + +"@accounts/rest-express@^0.29.0, @accounts/rest-express@workspace:packages/rest-express": + version: 0.0.0-use.local + resolution: "@accounts/rest-express@workspace:packages/rest-express" + dependencies: + "@accounts/password": ^0.29.0 + "@accounts/server": ^0.29.0 + "@accounts/types": ^0.29.0 + "@types/express": 4.17.6 + "@types/jest": 26.0.9 + "@types/node": 14.0.14 + "@types/request-ip": 0.0.35 + express: ^4.17.0 + jest: 26.2.2 + request-ip: ^2.1.3 + tslib: 2.0.0 + peerDependencies: + "@accounts/server": ^0.19.0 + languageName: unknown + linkType: soft + +"@accounts/server@^0.29.0, @accounts/server@workspace:packages/server": + version: 0.0.0-use.local + resolution: "@accounts/server@workspace:packages/server" + dependencies: + "@accounts/types": ^0.29.0 + "@types/jest": 26.0.9 + "@types/jsonwebtoken": 8.3.9 + "@types/jwt-decode": 2.2.1 + "@types/lodash": 4.14.157 + "@types/node": 14.0.14 + emittery: 0.5.1 + jest: 26.2.2 + jsonwebtoken: 8.5.1 + jwt-decode: 2.2.0 + lodash: 4.17.15 + rimraf: 3.0.2 + tslib: 2.0.0 + languageName: unknown + linkType: soft + +"@accounts/two-factor@^0.29.0, @accounts/two-factor@workspace:packages/two-factor": + version: 0.0.0-use.local + resolution: "@accounts/two-factor@workspace:packages/two-factor" + dependencies: + "@accounts/types": ^0.29.0 + "@types/jest": 26.0.9 + "@types/lodash": ^4.14.138 + "@types/node": 14.0.14 + "@types/speakeasy": 2.0.2 + jest: 26.2.2 + lodash: ^4.17.15 + speakeasy: ^2.0.0 + tslib: 2.0.0 + languageName: unknown + linkType: soft + +"@accounts/typeorm@^0.29.0, @accounts/typeorm@workspace:packages/database-typeorm": + version: 0.0.0-use.local + resolution: "@accounts/typeorm@workspace:packages/database-typeorm" + dependencies: + "@accounts/database-tests": ^0.29.0 + "@accounts/types": ^0.29.0 + "@types/jest": 26.0.9 + "@types/lodash": 4.14.157 + "@types/node": 14.0.14 + jest: 26.2.2 + lodash: ^4.17.15 + pg: 8.1.0 + reflect-metadata: ^0.1.13 + tslib: 2.0.0 + typeorm: ^0.2.25 + languageName: unknown + linkType: soft + +"@accounts/types@^0.29.0, @accounts/types@workspace:packages/types": + version: 0.0.0-use.local + resolution: "@accounts/types@workspace:packages/types" + dependencies: + "@types/jest": 26.0.9 + "@types/node": 14.0.14 + jest: 26.2.2 + rimraf: 3.0.2 + tslib: 2.0.0 + languageName: unknown + linkType: soft + +"@algolia/cache-browser-local-storage@npm:4.4.0": + version: 4.4.0 + resolution: "@algolia/cache-browser-local-storage@npm:4.4.0" + dependencies: + "@algolia/cache-common": 4.4.0 + checksum: 72d1d02ecafa43a8ed8073f900912fd00c4e0a02f706cbecf57b92860e16c10f8566a2591a50706376aa4c4f62754558777091481b9839f2ab3f8353dc17a15a + languageName: node + linkType: hard + +"@algolia/cache-common@npm:4.4.0": + version: 4.4.0 + resolution: "@algolia/cache-common@npm:4.4.0" + checksum: 0308f08187c7ddf818ad3066248cfbce907cc8836379b73761003db67834059802c75ef6db9bbadb069d9cbe2e76ba9bb40302f664a8493559aef2be647a5b9a + languageName: node + linkType: hard + +"@algolia/cache-in-memory@npm:4.4.0": + version: 4.4.0 + resolution: "@algolia/cache-in-memory@npm:4.4.0" + dependencies: + "@algolia/cache-common": 4.4.0 + checksum: af6a55aca38ce3024052d3d35a2c0e1c62b8a47ac0b342a7903ef510f56d1454b8f63d4ef95b576f232fc5dd5d7b7bea440a2d6ef59fa7c04f1f753949fb9ad4 + languageName: node + linkType: hard + +"@algolia/client-account@npm:4.4.0": + version: 4.4.0 + resolution: "@algolia/client-account@npm:4.4.0" + dependencies: + "@algolia/client-common": 4.4.0 + "@algolia/client-search": 4.4.0 + "@algolia/transporter": 4.4.0 + checksum: 2ccb5c253c16ce8f86f0494339b15fc9572a5b4e917ac1ddbb6a9dd6d885457fe3af657e116fd68bf1e751e00742cffb09f9c3fbaf929e9648b4e731f49a17da + languageName: node + linkType: hard + +"@algolia/client-analytics@npm:4.4.0": + version: 4.4.0 + resolution: "@algolia/client-analytics@npm:4.4.0" + dependencies: + "@algolia/client-common": 4.4.0 + "@algolia/client-search": 4.4.0 + "@algolia/requester-common": 4.4.0 + "@algolia/transporter": 4.4.0 + checksum: 09c67b805f8f13d803032cc9dafafb0e0f084d5a27732e7251eb19fef2933652087bb903746a3a55dafee64f6dd2773971278971e0e7a829f7c8b07268ae05e1 + languageName: node + linkType: hard + +"@algolia/client-common@npm:4.4.0": + version: 4.4.0 + resolution: "@algolia/client-common@npm:4.4.0" + dependencies: + "@algolia/requester-common": 4.4.0 + "@algolia/transporter": 4.4.0 + checksum: 96a2cb77ee708186c298e89dde6e8b3927a5448f217ab943c83d64ac2c9ccbaf1086965052e0e6922e493b6c0683f92d13e07c9ba200481e376662408306fa38 + languageName: node + linkType: hard + +"@algolia/client-recommendation@npm:4.4.0": + version: 4.4.0 + resolution: "@algolia/client-recommendation@npm:4.4.0" + dependencies: + "@algolia/client-common": 4.4.0 + "@algolia/requester-common": 4.4.0 + "@algolia/transporter": 4.4.0 + checksum: 11d52c9fc92a365563e714170684f55231e5c1fe52bf69942187cd6b9fa77edeb5e2058d24e86c0dbd37639bacadc6a801b95d7c3f1180419db934c01769a928 + languageName: node + linkType: hard + +"@algolia/client-search@npm:4.4.0": + version: 4.4.0 + resolution: "@algolia/client-search@npm:4.4.0" + dependencies: + "@algolia/client-common": 4.4.0 + "@algolia/requester-common": 4.4.0 + "@algolia/transporter": 4.4.0 + checksum: a8986c64ccda417ba7f808c446f33d1a4772cd5d5a242eaa6d8dd744d6eaf0fa539156c7354e4ea910ea92453286a76b327c038d1e6bf428a7df93c99cccbffa + languageName: node + linkType: hard + +"@algolia/logger-common@npm:4.4.0": + version: 4.4.0 + resolution: "@algolia/logger-common@npm:4.4.0" + checksum: d19adc6c73476ac00e4faa7f3733018b28dd18f4a226c39f5377c001596e01301ec5731f99e6decb48c36a6283411f7ef9536af0db5a69b7aca8b04e5f5f0286 + languageName: node + linkType: hard + +"@algolia/logger-console@npm:4.4.0": + version: 4.4.0 + resolution: "@algolia/logger-console@npm:4.4.0" + dependencies: + "@algolia/logger-common": 4.4.0 + checksum: 9399e26e42795cfaee69d5b92d3ada8bc6f8213b574f60b6b07577ebb7cea38ec81069fc47681bb67593a846777d2da18e7dbb2aacabaee89c48cacbfb722e3c + languageName: node + linkType: hard + +"@algolia/requester-browser-xhr@npm:4.4.0": + version: 4.4.0 + resolution: "@algolia/requester-browser-xhr@npm:4.4.0" + dependencies: + "@algolia/requester-common": 4.4.0 + checksum: 7b69a7f2c7b049afefa3053d24e4eb4cafbe0f7e5e0b62225ae60ebc5492afde7914f271523ec1564d0200a7118f269ae50e2c12bf02b610a736618d1bba6557 + languageName: node + linkType: hard + +"@algolia/requester-common@npm:4.4.0": + version: 4.4.0 + resolution: "@algolia/requester-common@npm:4.4.0" + checksum: b4931ee47d1ab86a3471585699bc1ce81fddb2350cc1ec48b9764cbb22784a39940cf03080edf2ea3a30742be4bab631875f2c225c3b7deda78a1e8b76fa5a1e + languageName: node + linkType: hard + +"@algolia/requester-node-http@npm:4.4.0": + version: 4.4.0 + resolution: "@algolia/requester-node-http@npm:4.4.0" + dependencies: + "@algolia/requester-common": 4.4.0 + checksum: 481e9f050f0847368c3a8ddb3f14555cc5847788e264dd97c37677b992529bc976474dda91c24c87dafeff429b04ee3a181ddbd0c41cfc4006852c8af7bcaa39 + languageName: node + linkType: hard + +"@algolia/transporter@npm:4.4.0": + version: 4.4.0 + resolution: "@algolia/transporter@npm:4.4.0" + dependencies: + "@algolia/cache-common": 4.4.0 + "@algolia/logger-common": 4.4.0 + "@algolia/requester-common": 4.4.0 + checksum: 83d20cc8bb4eb13832cb3c8748d83ab4a1c27dee28a117cd5f1b8ec471d5bf16b4ecb6d4cf5596e2d2b4aa204c08f70011db527d4324fd1524b93b6d3a7acd8c + languageName: node + linkType: hard + +"@apollo/client@npm:3.1.3": + version: 3.1.3 + resolution: "@apollo/client@npm:3.1.3" + dependencies: + "@types/zen-observable": ^0.8.0 + "@wry/context": ^0.5.2 + "@wry/equality": ^0.2.0 + fast-json-stable-stringify: ^2.0.0 + graphql-tag: ^2.11.0 + hoist-non-react-statics: ^3.3.2 + optimism: ^0.12.1 + prop-types: ^15.7.2 + symbol-observable: ^1.2.0 + ts-invariant: ^0.4.4 + tslib: ^1.10.0 + zen-observable: ^0.8.14 + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 + react: ^16.8.0 + subscriptions-transport-ws: ^0.9.0 + peerDependenciesMeta: + react: + optional: true + checksum: 525668ad5828d1b01cb9e235c6240e17f4f50a4bf536599261065acca5fbfd067b70b1f333b0e0d082690ee37ff9ddbb04305f00dccda7f8a330f7a89a16d7c6 + languageName: node + linkType: hard + +"@apollo/protobufjs@npm:^1.0.3": + version: 1.0.4 + resolution: "@apollo/protobufjs@npm:1.0.4" + dependencies: + "@protobufjs/aspromise": ^1.1.2 + "@protobufjs/base64": ^1.1.2 + "@protobufjs/codegen": ^2.0.4 + "@protobufjs/eventemitter": ^1.1.0 + "@protobufjs/fetch": ^1.1.0 + "@protobufjs/float": ^1.0.2 + "@protobufjs/inquire": ^1.1.0 + "@protobufjs/path": ^1.1.2 + "@protobufjs/pool": ^1.1.0 + "@protobufjs/utf8": ^1.1.0 + "@types/long": ^4.0.0 + "@types/node": ^10.1.0 + long: ^4.0.0 + bin: + apollo-pbjs: bin/pbjs + apollo-pbts: bin/pbts + checksum: 24a06fc87199a5934076e5b0959ef828cd93f53a1b594fc790ee5ad95b93e4d48a58c3be0a08df31593a5dc19a652499378a2af2a382f59118e3e3a46691f654 + languageName: node + linkType: hard + +"@apollographql/apollo-tools@npm:^0.4.3": + version: 0.4.8 + resolution: "@apollographql/apollo-tools@npm:0.4.8" + dependencies: + apollo-env: ^0.6.5 + checksum: 324d2a78e4a590e3451fc8883e8a6b2231982cb071a1adba72a83361882a7488aff4a75e50c098d01860c3d9c593a09d47c7bb71d401815001fda783dccd6967 + languageName: node + linkType: hard + +"@apollographql/graphql-playground-html@npm:1.6.26": + version: 1.6.26 + resolution: "@apollographql/graphql-playground-html@npm:1.6.26" + dependencies: + xss: ^1.0.6 + checksum: d566024a09041177688846d5592b31d551ff8f3924601e1bea8686e2fd74a88e9c77db4673bca2d1d74f8eb6689b7eb9dc2267a7bcd06f608903ea5146cc023c + languageName: node + linkType: hard + +"@ardatan/aggregate-error@npm:0.0.1": + version: 0.0.1 + resolution: "@ardatan/aggregate-error@npm:0.0.1" + checksum: bb98b317dbfc035520015f71c975fbdcf062386d8080b3f6710d89aa6d263b6da696b1c137e25234cbba6d46e9e677ebb6341701b27aefd47c03df9e617e030c + languageName: node + linkType: hard + +"@babel/code-frame@npm:7.8.3": + version: 7.8.3 + resolution: "@babel/code-frame@npm:7.8.3" + dependencies: + "@babel/highlight": ^7.8.3 + checksum: 0552a3e3667ad5af3bbffd537a7d177f321af3ff416522a9e9c7c671b9fc5d7f5eb6847e676e8de7a7362819e9670d9fe684e95d1c98adad0c0a0763c096955e + languageName: node + linkType: hard + +"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.10.4, @babel/code-frame@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/code-frame@npm:7.10.4" + dependencies: + "@babel/highlight": ^7.10.4 + checksum: 05245d3b22a3ae849439195c4ee9ce9903dfd8c3fcb5124e77923c45e9f1ceac971cce4c61505974f411a9db432949531abe10ddee92937a0a9c306dc380a5b2 + languageName: node + linkType: hard + +"@babel/compat-data@npm:^7.10.4, @babel/compat-data@npm:^7.11.0, @babel/compat-data@npm:^7.9.0": + version: 7.11.0 + resolution: "@babel/compat-data@npm:7.11.0" + dependencies: + browserslist: ^4.12.0 + invariant: ^2.2.4 + semver: ^5.5.0 + checksum: 6c3b3946543f4276e1bafbee03de6699c4cdbf92e236fd593f7793b8a2f78e6addb9ded715d84bc676ab39fda3efee634c23a7cf5b982c3d83381c51cd912b85 + languageName: node + linkType: hard + +"@babel/core@npm:7.10.5": + version: 7.10.5 + resolution: "@babel/core@npm:7.10.5" + dependencies: + "@babel/code-frame": ^7.10.4 + "@babel/generator": ^7.10.5 + "@babel/helper-module-transforms": ^7.10.5 + "@babel/helpers": ^7.10.4 + "@babel/parser": ^7.10.5 + "@babel/template": ^7.10.4 + "@babel/traverse": ^7.10.5 + "@babel/types": ^7.10.5 + convert-source-map: ^1.7.0 + debug: ^4.1.0 + gensync: ^1.0.0-beta.1 + json5: ^2.1.2 + lodash: ^4.17.19 + resolve: ^1.3.2 + semver: ^5.4.1 + source-map: ^0.5.0 + checksum: 1b7ddcb578a937245e63889b4648b44c28e04257ef52bf506f61c751ec2def9c9c586883b669be2e66a2b829037a1d78e19ee23a371966c94e0728f9598799e1 + languageName: node + linkType: hard + +"@babel/core@npm:7.9.0, @babel/core@npm:^7.0.0, @babel/core@npm:^7.1.0, @babel/core@npm:^7.4.5, @babel/core@npm:^7.7.5": + version: 7.9.0 + resolution: "@babel/core@npm:7.9.0" + dependencies: + "@babel/code-frame": ^7.8.3 + "@babel/generator": ^7.9.0 + "@babel/helper-module-transforms": ^7.9.0 + "@babel/helpers": ^7.9.0 + "@babel/parser": ^7.9.0 + "@babel/template": ^7.8.6 + "@babel/traverse": ^7.9.0 + "@babel/types": ^7.9.0 + convert-source-map: ^1.7.0 + debug: ^4.1.0 + gensync: ^1.0.0-beta.1 + json5: ^2.1.2 + lodash: ^4.17.13 + resolve: ^1.3.2 + semver: ^5.4.1 + source-map: ^0.5.0 + checksum: 969b99c3aa93836cda851b28cd5d254ce197b3c78274c2c0aff4c42682a10d105b2052c2808d526a9d39c5e2d4fc26e78c88f2c33aeeb9c5cfcdb4019fc1c3bd + languageName: node + linkType: hard + +"@babel/core@npm:^7.9.0": + version: 7.11.1 + resolution: "@babel/core@npm:7.11.1" + dependencies: + "@babel/code-frame": ^7.10.4 + "@babel/generator": ^7.11.0 + "@babel/helper-module-transforms": ^7.11.0 + "@babel/helpers": ^7.10.4 + "@babel/parser": ^7.11.1 + "@babel/template": ^7.10.4 + "@babel/traverse": ^7.11.0 + "@babel/types": ^7.11.0 + convert-source-map: ^1.7.0 + debug: ^4.1.0 + gensync: ^1.0.0-beta.1 + json5: ^2.1.2 + lodash: ^4.17.19 + resolve: ^1.3.2 + semver: ^5.4.1 + source-map: ^0.5.0 + checksum: c6bb33b1f7eb803de5832342841ed615f0152e333efa601bf18460c8070bfd0e77cea83010a18a409bf8886096ec57397dd8bf388bc4d85f1337dc2bc6e3f7ef + languageName: node + linkType: hard + +"@babel/generator@npm:^7.10.5, @babel/generator@npm:^7.11.0, @babel/generator@npm:^7.4.0, @babel/generator@npm:^7.5.0, @babel/generator@npm:^7.9.0": + version: 7.11.0 + resolution: "@babel/generator@npm:7.11.0" + dependencies: + "@babel/types": ^7.11.0 + jsesc: ^2.5.1 + source-map: ^0.5.0 + checksum: aec10e0792f506b88b0abf859d7a76d7d4a8e9a4c3865f13ce9c2fc6d67234e205859c20f8aef633f2b6a23acc7b8af1d70d77ad186b3d0af155ab9252e13b10 + languageName: node + linkType: hard + +"@babel/helper-annotate-as-pure@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/helper-annotate-as-pure@npm:7.10.4" + dependencies: + "@babel/types": ^7.10.4 + checksum: 535cdf631e1e6c0bfd6820d2509c69373e2f48148505ddc2325ce8fe85302dc5681d6f6fd41261cacc458a0431edeff7c6115056144b80b02c10e111d2941c36 + languageName: node + linkType: hard + +"@babel/helper-builder-binary-assignment-operator-visitor@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/helper-builder-binary-assignment-operator-visitor@npm:7.10.4" + dependencies: + "@babel/helper-explode-assignable-expression": ^7.10.4 + "@babel/types": ^7.10.4 + checksum: 369530a1971c92d09bd3fae3387bf752abffa9a1f285ab55f45cdf0ac9a2e8ed1a28cd4dc31b0d5672ee0aac91435e3fdcf1196f67870ac0f9a768e3d9295d60 + languageName: node + linkType: hard + +"@babel/helper-builder-react-jsx-experimental@npm:^7.10.4": + version: 7.10.5 + resolution: "@babel/helper-builder-react-jsx-experimental@npm:7.10.5" + dependencies: + "@babel/helper-annotate-as-pure": ^7.10.4 + "@babel/helper-module-imports": ^7.10.4 + "@babel/types": ^7.10.5 + checksum: 9505bc9d365e1c66cde44b196b3a5884fe35aae526cdef8696d7236cce01a58ce660f6ea727c6cba964f8f0a7b75e57634e8ccfbbeb1f5694a7277a55417eaaf + languageName: node + linkType: hard + +"@babel/helper-builder-react-jsx@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/helper-builder-react-jsx@npm:7.10.4" + dependencies: + "@babel/helper-annotate-as-pure": ^7.10.4 + "@babel/types": ^7.10.4 + checksum: f14f786b5e5d4728ecfae8679d26da6460056dee4c8c2ae7432cd0e64332a289cf44e43b0e2b349f8ce1d281595fafb6824988d9674fa29389b1e5ab2055b3be + languageName: node + linkType: hard + +"@babel/helper-compilation-targets@npm:^7.10.4, @babel/helper-compilation-targets@npm:^7.8.7": + version: 7.10.4 + resolution: "@babel/helper-compilation-targets@npm:7.10.4" + dependencies: + "@babel/compat-data": ^7.10.4 + browserslist: ^4.12.0 + invariant: ^2.2.4 + levenary: ^1.1.1 + semver: ^5.5.0 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 7603388e451012154ac6b8f6ec3792f2f35abbee21efa338fa87a851d88b72bee4a8aa5b016e53a5dc011dc616d803eda2cb030ec55a4a6673f1f587f95275e0 + languageName: node + linkType: hard + +"@babel/helper-create-class-features-plugin@npm:^7.10.4, @babel/helper-create-class-features-plugin@npm:^7.10.5, @babel/helper-create-class-features-plugin@npm:^7.8.3": + version: 7.10.5 + resolution: "@babel/helper-create-class-features-plugin@npm:7.10.5" + dependencies: + "@babel/helper-function-name": ^7.10.4 + "@babel/helper-member-expression-to-functions": ^7.10.5 + "@babel/helper-optimise-call-expression": ^7.10.4 + "@babel/helper-plugin-utils": ^7.10.4 + "@babel/helper-replace-supers": ^7.10.4 + "@babel/helper-split-export-declaration": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: ba8fb0f7b7788d0fde2341314a86d0d5705ed17537eba1e319bb0e532125c5b97fc142633ae1605615be9f45cb6cbf19879c13e626610ecd3be1821d651a1423 + languageName: node + linkType: hard + +"@babel/helper-create-regexp-features-plugin@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/helper-create-regexp-features-plugin@npm:7.10.4" + dependencies: + "@babel/helper-annotate-as-pure": ^7.10.4 + "@babel/helper-regex": ^7.10.4 + regexpu-core: ^4.7.0 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 6d1728b614b35daf5f4cef73769286685f86aaebf6caec1d50b8f2edbcb7a74399cf4381c436405476f97ef3411d025c54f2a2674f1c01580a970e634d492963 + languageName: node + linkType: hard + +"@babel/helper-define-map@npm:^7.10.4": + version: 7.10.5 + resolution: "@babel/helper-define-map@npm:7.10.5" + dependencies: + "@babel/helper-function-name": ^7.10.4 + "@babel/types": ^7.10.5 + lodash: ^4.17.19 + checksum: 964cab640de84daa572d75e07216cf9d1aeeca3552acec0516d3aa10533836741f7391ab957e8b22624bd6b25473d8bd53f4b8d4af8713871601af02d31072ae + languageName: node + linkType: hard + +"@babel/helper-explode-assignable-expression@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/helper-explode-assignable-expression@npm:7.10.4" + dependencies: + "@babel/traverse": ^7.10.4 + "@babel/types": ^7.10.4 + checksum: 3348549a83dbb81ae44e97504134460069c648cc9add914856aec281fdc712a68b012f110778d84f098a94588178ba5261221ea6f46abd6892e5ec4281c41be0 + languageName: node + linkType: hard + +"@babel/helper-function-name@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/helper-function-name@npm:7.10.4" + dependencies: + "@babel/helper-get-function-arity": ^7.10.4 + "@babel/template": ^7.10.4 + "@babel/types": ^7.10.4 + checksum: 41ab8f48bbb7d4a65a90a4cf50c79c386d3c30e0dac10bc3ce311fda2ca971d82289a07570a785ebac92686854237ea1e511e74f2577a38c7ec2d67f2a250a9e + languageName: node + linkType: hard + +"@babel/helper-get-function-arity@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/helper-get-function-arity@npm:7.10.4" + dependencies: + "@babel/types": ^7.10.4 + checksum: 4f0ddd43405e5a43c0638ddeb9fd6fc562ce8f338983ae603d4824ce4b586c2ca2fbc0ca93864357ba3a28f699029653749c6b49ec8576cb512ab0f404500999 + languageName: node + linkType: hard + +"@babel/helper-hoist-variables@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/helper-hoist-variables@npm:7.10.4" + dependencies: + "@babel/types": ^7.10.4 + checksum: 0bc1976366e1535920ac46ecf89700a738bb38f1413ca42f1bc11bef708f297f011078077355dfe81b3e5af8ef696c5fb752408d6b65f85c71839c28ce95afaa + languageName: node + linkType: hard + +"@babel/helper-member-expression-to-functions@npm:^7.10.4, @babel/helper-member-expression-to-functions@npm:^7.10.5": + version: 7.11.0 + resolution: "@babel/helper-member-expression-to-functions@npm:7.11.0" + dependencies: + "@babel/types": ^7.11.0 + checksum: 745f0697ca43736736d936125d563070a4e0da4eb90cf67be45d46c18b622106a14923d9541a6f217207b83f67d0113b0a69c01f1f207fe8be086637722433f3 + languageName: node + linkType: hard + +"@babel/helper-module-imports@npm:^7.10.4, @babel/helper-module-imports@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/helper-module-imports@npm:7.10.4" + dependencies: + "@babel/types": ^7.10.4 + checksum: 84d03b58e7f04daf7c5a80765c527c24021ddbf4051567381528e2b351a550451dd87f67bf7a66f251dffcc979cd2ddaa01e1defd8b8db1095d38005e18eb806 + languageName: node + linkType: hard + +"@babel/helper-module-transforms@npm:^7.10.4, @babel/helper-module-transforms@npm:^7.10.5, @babel/helper-module-transforms@npm:^7.11.0, @babel/helper-module-transforms@npm:^7.9.0": + version: 7.11.0 + resolution: "@babel/helper-module-transforms@npm:7.11.0" + dependencies: + "@babel/helper-module-imports": ^7.10.4 + "@babel/helper-replace-supers": ^7.10.4 + "@babel/helper-simple-access": ^7.10.4 + "@babel/helper-split-export-declaration": ^7.11.0 + "@babel/template": ^7.10.4 + "@babel/types": ^7.11.0 + lodash: ^4.17.19 + checksum: 8b74d0a729f00c5880ed7927e333a6b4bc31739108fbbbdd94b0cf28599f49c78f1e48f16b12bec0b1c966ba1ca72faf10eb98019617ef470a6885cc891e97f6 + languageName: node + linkType: hard + +"@babel/helper-optimise-call-expression@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/helper-optimise-call-expression@npm:7.10.4" + dependencies: + "@babel/types": ^7.10.4 + checksum: 70dd5a6daf6dc9f176dbfcac4afc1390d872821abe4ffaedf3ff0b1dbda8fb4b49efdeb612ae86c08f0773340583ce6e393a7a059727991aaa51b18de1fc0960 + languageName: node + linkType: hard + +"@babel/helper-plugin-utils@npm:7.10.4, @babel/helper-plugin-utils@npm:^7.0.0, @babel/helper-plugin-utils@npm:^7.10.4, @babel/helper-plugin-utils@npm:^7.8.0, @babel/helper-plugin-utils@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/helper-plugin-utils@npm:7.10.4" + checksum: 9f617e619a3557cb5fae8885e91cd94ba4ee16fb345e0360de0d7dc037efb10cc604939ecc1038ccdb71aa37e7e78f20133d7bbbebecb8f6dcdb557650366d92 + languageName: node + linkType: hard + +"@babel/helper-regex@npm:^7.10.4": + version: 7.10.5 + resolution: "@babel/helper-regex@npm:7.10.5" + dependencies: + lodash: ^4.17.19 + checksum: 956b9f22da2e996670b5f0b61450d3ed4efa462a5ebec5af7967da7a7759670a04ec4887152d43ea6b695c320370cac022987a9647d4caa86f0662605d7fc82f + languageName: node + linkType: hard + +"@babel/helper-remap-async-to-generator@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/helper-remap-async-to-generator@npm:7.10.4" + dependencies: + "@babel/helper-annotate-as-pure": ^7.10.4 + "@babel/helper-wrap-function": ^7.10.4 + "@babel/template": ^7.10.4 + "@babel/traverse": ^7.10.4 + "@babel/types": ^7.10.4 + checksum: 258395dbab35546aecaf8f8b0b5a2c223cddbd11a41cd85e7571911adf1742ff7146dbf6cf53f14ba3d8f3ae2c54ec9bc396fcf31c66aa56d1dd692b10e99299 + languageName: node + linkType: hard + +"@babel/helper-replace-supers@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/helper-replace-supers@npm:7.10.4" + dependencies: + "@babel/helper-member-expression-to-functions": ^7.10.4 + "@babel/helper-optimise-call-expression": ^7.10.4 + "@babel/traverse": ^7.10.4 + "@babel/types": ^7.10.4 + checksum: 2d7e0627cda8d6f360e52d9c962746fb5818cb6599072d4473fc1e7a2eacfb1a2605a1727d95ae9af66e06e1b84c0a67d40ae16446f838d367de11ae198ee0f8 + languageName: node + linkType: hard + +"@babel/helper-simple-access@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/helper-simple-access@npm:7.10.4" + dependencies: + "@babel/template": ^7.10.4 + "@babel/types": ^7.10.4 + checksum: a7ce52a2295b9290b70cfbdd5667ec42de1a170de2f9d6e8321b3864e631bca729fbb537fbcc85396b7ce921abc2c844a452e70996fcd582dd31433c33ef0f9d + languageName: node + linkType: hard + +"@babel/helper-skip-transparent-expression-wrappers@npm:^7.11.0": + version: 7.11.0 + resolution: "@babel/helper-skip-transparent-expression-wrappers@npm:7.11.0" + dependencies: + "@babel/types": ^7.11.0 + checksum: c5995c834fbaeb8d573184c54e637add2c1b558f6f8a52a84d0c1777a564b634b94917f2b232d1ee4a96ae34587fdeb28b5dae1a45f3e3620cbff0da340aa287 + languageName: node + linkType: hard + +"@babel/helper-split-export-declaration@npm:^7.10.4, @babel/helper-split-export-declaration@npm:^7.11.0": + version: 7.11.0 + resolution: "@babel/helper-split-export-declaration@npm:7.11.0" + dependencies: + "@babel/types": ^7.11.0 + checksum: ddfc44d0cf75ee3a73e71b18e8b9b67d256f6e8496e550ab0b1342ef8cd62dd232c13ac77569e319869b1515a9733863e69a143e76f52e9fc1b51ee374b8869b + languageName: node + linkType: hard + +"@babel/helper-validator-identifier@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/helper-validator-identifier@npm:7.10.4" + checksum: 25098ef842e3ffecdd9a7216f6173da7ad7be1b0b3e454a9f6965055154b9ad7a4acd2f218ba3d2efc0821bdab97837b3cb815844af7d72f66f89d446a54efc6 + languageName: node + linkType: hard + +"@babel/helper-wrap-function@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/helper-wrap-function@npm:7.10.4" + dependencies: + "@babel/helper-function-name": ^7.10.4 + "@babel/template": ^7.10.4 + "@babel/traverse": ^7.10.4 + "@babel/types": ^7.10.4 + checksum: 4d5fe2db333b8f64f85057562ab49d825ad64ec53b94b92d2229645f7373e6e67a51e9eb108ac5d91933687a576ab4cd1f663a66caf140a6911d2a07e7efba24 + languageName: node + linkType: hard + +"@babel/helpers@npm:^7.10.4, @babel/helpers@npm:^7.9.0": + version: 7.10.4 + resolution: "@babel/helpers@npm:7.10.4" + dependencies: + "@babel/template": ^7.10.4 + "@babel/traverse": ^7.10.4 + "@babel/types": ^7.10.4 + checksum: 96859c490ac07fe30fe2b6ad8e474325d2504ffcc8b720b0f22a01e8334d79b4fb3051720c2146390579f7781cbc5923cb32d4e23e51b811c83aaa644fe17f2a + languageName: node + linkType: hard + +"@babel/highlight@npm:^7.10.4, @babel/highlight@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/highlight@npm:7.10.4" + dependencies: + "@babel/helper-validator-identifier": ^7.10.4 + chalk: ^2.0.0 + js-tokens: ^4.0.0 + checksum: c167b938af9797e7630dd922398ceb1a079469085b9c0a7274f093f9f2b1ef9f0a5efec89592e81cbab7c87a537d32c238cea97d288b7af9a0d26b2bceb7a439 + languageName: node + linkType: hard + +"@babel/parser@npm:7.11.1": + version: 7.11.1 + resolution: "@babel/parser@npm:7.11.1" + bin: + parser: ./bin/babel-parser.js + checksum: a9eb7293d5e7ed4fe1d7d3898cfe45deca0a1a78ebf7cf1a805e9fb918654d9b8f56720ead85cd568d27900bb0b19c778fdc6421a89963e3fbc4062efb028604 + languageName: node + linkType: hard + +"@babel/parser@npm:^7.0.0, @babel/parser@npm:^7.1.0, @babel/parser@npm:^7.10.4, @babel/parser@npm:^7.10.5, @babel/parser@npm:^7.11.0, @babel/parser@npm:^7.11.1, @babel/parser@npm:^7.4.3, @babel/parser@npm:^7.7.0, @babel/parser@npm:^7.9.0, @babel/parser@npm:^7.9.4": + version: 7.11.3 + resolution: "@babel/parser@npm:7.11.3" + bin: + parser: ./bin/babel-parser.js + checksum: 39795285226f17c09492bbbfd3bfdde461bc3d0b935000e5fc66c3376567585959d0488d4e1447ebcb1528abe6fc9c1a1740b05cdb8078acee1242141169397e + languageName: node + linkType: hard + +"@babel/plugin-proposal-async-generator-functions@npm:^7.10.4, @babel/plugin-proposal-async-generator-functions@npm:^7.8.3": + version: 7.10.5 + resolution: "@babel/plugin-proposal-async-generator-functions@npm:7.10.5" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + "@babel/helper-remap-async-to-generator": ^7.10.4 + "@babel/plugin-syntax-async-generators": ^7.8.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: d43c72c3308dbf70a6f437919af6e8de6e59170876443d3785554805272901f2eb226a95535aaffde397ff664cce74425fd50986908195741714860986aade85 + languageName: node + linkType: hard + +"@babel/plugin-proposal-class-properties@npm:7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-proposal-class-properties@npm:7.8.3" + dependencies: + "@babel/helper-create-class-features-plugin": ^7.8.3 + "@babel/helper-plugin-utils": ^7.8.3 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 09072d267cd00c89057cab37817b2bc8dd397e56f849a63596aa40dc0962b4daedb2c1fc0b8f7b842baffe0042b21a1758f3b9c53e1bfcc9345b7db3336220aa + languageName: node + linkType: hard + +"@babel/plugin-proposal-class-properties@npm:^7.0.0, @babel/plugin-proposal-class-properties@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/plugin-proposal-class-properties@npm:7.10.4" + dependencies: + "@babel/helper-create-class-features-plugin": ^7.10.4 + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 32cf34c077eb2612e7f9a599078a51ed53807167b8cfe01702a777bf9efaec254820e2c3c52ce801e8619d40226065f311b8190b36c21f8b853c7f340dccca1f + languageName: node + linkType: hard + +"@babel/plugin-proposal-decorators@npm:7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-proposal-decorators@npm:7.8.3" + dependencies: + "@babel/helper-create-class-features-plugin": ^7.8.3 + "@babel/helper-plugin-utils": ^7.8.3 + "@babel/plugin-syntax-decorators": ^7.8.3 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: d56e31cc7b7b8a2e89dda534a64535ad82994719d5105fcafbd4b3867bf939981282021fbf4083c4036475d250841dc99de323ce494a7fa94cc347d03ae42c4b + languageName: node + linkType: hard + +"@babel/plugin-proposal-dynamic-import@npm:^7.10.4, @babel/plugin-proposal-dynamic-import@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-proposal-dynamic-import@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + "@babel/plugin-syntax-dynamic-import": ^7.8.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 0ded8305a774d2885ead96e9fda66ec0fc01085c123427b4ecd71314ea08a2b753e8bdbf28f127eafa9cbd7d2d08c7302506ae6f9c0e1c0895818a4c1604f45b + languageName: node + linkType: hard + +"@babel/plugin-proposal-export-namespace-from@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/plugin-proposal-export-namespace-from@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + "@babel/plugin-syntax-export-namespace-from": ^7.8.3 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: b17727e66f86119de1f8b3d7b48351ec2b339f95a7c45238c0c11c9d81491696689d68204d79f45cdede007ed674424a6d255463285c2d66abbb76f09417ae28 + languageName: node + linkType: hard + +"@babel/plugin-proposal-json-strings@npm:^7.10.4, @babel/plugin-proposal-json-strings@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-proposal-json-strings@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + "@babel/plugin-syntax-json-strings": ^7.8.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 340397166125ea2d4e2b2c15b5bb8845dc6cb5dc2bcd9ff52b5e767b8337e38ff1daa66aa7eb461b4abed3d242376e93d972ebe6799b5a1a3c65b1feb8833dfe + languageName: node + linkType: hard + +"@babel/plugin-proposal-logical-assignment-operators@npm:^7.11.0": + version: 7.11.0 + resolution: "@babel/plugin-proposal-logical-assignment-operators@npm:7.11.0" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + "@babel/plugin-syntax-logical-assignment-operators": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: a87e80bcfdfcbdbd6fa3b34198948d4a9c0e2a8965efcd525215fc8244e7b47f7cb5e69c6c5d42646cdab6aeaebf3e138a33ebe0c44a4163e4ad995b85f008b5 + languageName: node + linkType: hard + +"@babel/plugin-proposal-nullish-coalescing-operator@npm:7.8.3, @babel/plugin-proposal-nullish-coalescing-operator@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-proposal-nullish-coalescing-operator@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": ^7.8.3 + "@babel/plugin-syntax-nullish-coalescing-operator": ^7.8.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 99b6683ae81309453ae55b2a8681e02de52efc7c5cdf30342cb0585ad4a2ef07d1a7781cfa6c4b0b7329538e11576263a5f217043b56ab15980e3ae9007738db + languageName: node + linkType: hard + +"@babel/plugin-proposal-nullish-coalescing-operator@npm:^7.10.1, @babel/plugin-proposal-nullish-coalescing-operator@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/plugin-proposal-nullish-coalescing-operator@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + "@babel/plugin-syntax-nullish-coalescing-operator": ^7.8.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 5a20d8bcbf2926dde3e9edcf847eaa5485d0d0fea76d0683ef1cafb11e0c35e46620391916283e1a9c0f76351e8c5ecccebf0d3a6bdf24559c5ad381433a0e3a + languageName: node + linkType: hard + +"@babel/plugin-proposal-numeric-separator@npm:7.8.3, @babel/plugin-proposal-numeric-separator@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-proposal-numeric-separator@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": ^7.8.3 + "@babel/plugin-syntax-numeric-separator": ^7.8.3 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 8ab823d0d2d20e6439787fbb2c1b52e634fccf414e92268914b482edfb5d863cb9b85a0b2e37f0956efb20d968335420afe0b7d31197c9f84faaf9af3c65fd74 + languageName: node + linkType: hard + +"@babel/plugin-proposal-numeric-separator@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/plugin-proposal-numeric-separator@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + "@babel/plugin-syntax-numeric-separator": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 344eff491f0a7bb17958ce00db34af5671ec3d9dc87c29766208ab7a3c8ea769730c9f2420c55c54ecd24ffdd5df01f258d54eb41ccd35911e974c549a697e4b + languageName: node + linkType: hard + +"@babel/plugin-proposal-object-rest-spread@npm:7.10.4": + version: 7.10.4 + resolution: "@babel/plugin-proposal-object-rest-spread@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + "@babel/plugin-syntax-object-rest-spread": ^7.8.0 + "@babel/plugin-transform-parameters": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: eb09aa3de7ee0c89ba28e4e1a7e2e24d1d2ba8cb83288993798b37cb588a16c19b9bfe596108bf0e4e9b266c53baeb77aad6bb5d9c114af1e8828693ac7f2c28 + languageName: node + linkType: hard + +"@babel/plugin-proposal-object-rest-spread@npm:^7.0.0, @babel/plugin-proposal-object-rest-spread@npm:^7.11.0, @babel/plugin-proposal-object-rest-spread@npm:^7.9.0": + version: 7.11.0 + resolution: "@babel/plugin-proposal-object-rest-spread@npm:7.11.0" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + "@babel/plugin-syntax-object-rest-spread": ^7.8.0 + "@babel/plugin-transform-parameters": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 5071094245f02ce9b1b090597f51cf8510c7936425ac2358b561447b09bcdd231b5b52896f63cc1a96aa6c2ab7a952b61d9fee6b286686f7dc8697728dd5d66d + languageName: node + linkType: hard + +"@babel/plugin-proposal-optional-catch-binding@npm:^7.10.4, @babel/plugin-proposal-optional-catch-binding@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-proposal-optional-catch-binding@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + "@babel/plugin-syntax-optional-catch-binding": ^7.8.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 56a3a62131cdc7b7481a005dacd26f83ae10936e2dbe0b06a98cb767b13cdc859504d862a166be8d1e2ac4bc0ddfc7aa9fa7135a68e126bfcba1bcb0585928d0 + languageName: node + linkType: hard + +"@babel/plugin-proposal-optional-chaining@npm:7.9.0, @babel/plugin-proposal-optional-chaining@npm:^7.9.0": + version: 7.9.0 + resolution: "@babel/plugin-proposal-optional-chaining@npm:7.9.0" + dependencies: + "@babel/helper-plugin-utils": ^7.8.3 + "@babel/plugin-syntax-optional-chaining": ^7.8.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 88c2000597877a1bae264aa7fb3529225123772d4680b4468032ebcbc170b7fe3f2d3028712cfad2180af147a2bfdb50ad36d191a7753b05ef7f502c66b48e70 + languageName: node + linkType: hard + +"@babel/plugin-proposal-optional-chaining@npm:^7.10.3, @babel/plugin-proposal-optional-chaining@npm:^7.11.0": + version: 7.11.0 + resolution: "@babel/plugin-proposal-optional-chaining@npm:7.11.0" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + "@babel/helper-skip-transparent-expression-wrappers": ^7.11.0 + "@babel/plugin-syntax-optional-chaining": ^7.8.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: fb59410944f66de515e34eb68a5fa2c530db7f87d2e599230f5d512ebf1d4c92d2e10a39ec012feefc1cc748a3e3b0be25967997bff23af9bb6f7c1402d3eda7 + languageName: node + linkType: hard + +"@babel/plugin-proposal-private-methods@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/plugin-proposal-private-methods@npm:7.10.4" + dependencies: + "@babel/helper-create-class-features-plugin": ^7.10.4 + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 7a29e63aaf68e25059570253c0f3b1046000ed2d43f66cb458a90c6d5fa4f1cc58f2197778ee0d07f773520980bd076609f94789d7f6b8637b9927d62ddfe6fe + languageName: node + linkType: hard + +"@babel/plugin-proposal-unicode-property-regex@npm:^7.10.4, @babel/plugin-proposal-unicode-property-regex@npm:^7.4.4, @babel/plugin-proposal-unicode-property-regex@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-proposal-unicode-property-regex@npm:7.10.4" + dependencies: + "@babel/helper-create-regexp-features-plugin": ^7.10.4 + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 41e271cf08bad32a0e86dedb67ed4329a119466ec1531a69397915fbac6032f8452e5b0bb7205a069a6a728c370375a944efabaec155d861b9e4028e0f434667 + languageName: node + linkType: hard + +"@babel/plugin-syntax-async-generators@npm:^7.8.0, @babel/plugin-syntax-async-generators@npm:^7.8.4": + version: 7.8.4 + resolution: "@babel/plugin-syntax-async-generators@npm:7.8.4" + dependencies: + "@babel/helper-plugin-utils": ^7.8.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 39685944ffe342981afb1fe3af824305e94ee249b1841c78c1112f93d256d3d405902ac146ab3bad8c243710f081621f9fbf53c62474800d398293c99521c8ef + languageName: node + linkType: hard + +"@babel/plugin-syntax-bigint@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-bigint@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": ^7.8.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 8c9b610377af48e1d8ec0d5ad5eec5e462fbc775b20f367e0ebc2656b98b4cc73a952e8b5ab8641e6de0d04923f3843dd73ce00a71ef5cac9940822ff776c8ec + languageName: node + linkType: hard + +"@babel/plugin-syntax-class-properties@npm:^7.0.0, @babel/plugin-syntax-class-properties@npm:^7.10.4, @babel/plugin-syntax-class-properties@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-syntax-class-properties@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 8d0c1a3f5a922c2cd9387c7313e5516d58bfb6e60885b8d953ae23b6432aafe14be0fa1a2d4348c02f2eaaca82fecd76b7f622bff439775505c021b00a12dcbb + languageName: node + linkType: hard + +"@babel/plugin-syntax-decorators@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-syntax-decorators@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 61a68e950b42ab211b20483692b899daa7fe5622568ebdca427dff5f5bb7fba7c62da15f69219e2b5758429bfa11fa6891c6bb1cab24b242f007da0c461288d3 + languageName: node + linkType: hard + +"@babel/plugin-syntax-dynamic-import@npm:^7.8.0, @babel/plugin-syntax-dynamic-import@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-dynamic-import@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": ^7.8.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 134a6f37feac0e6d55f8188232e11798ccf699b02d50a4daf9c040f52a22ee32923a6a979443ecc865f4014937ffe67ac11b81aa5668b6792238c647314f41c9 + languageName: node + linkType: hard + +"@babel/plugin-syntax-export-namespace-from@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-export-namespace-from@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": ^7.8.3 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 832e007319bc5040818012d51eb91c3ad4c38a1ea696e9a9805df4d601d8c4f061032cb61494946e7bdaa5db0422a6bb6f39577cd0e5c8323b6bb2c364406dcb + languageName: node + linkType: hard + +"@babel/plugin-syntax-flow@npm:^7.0.0, @babel/plugin-syntax-flow@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-syntax-flow@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 96d32d0411ac94429714f0bfda399b26b1ecee0757b645105cc3ffbb85cdef0d7f9959529d38ee44d1c17e989876b3f86f8a61f41430667ddea6d176e78d52cb + languageName: node + linkType: hard + +"@babel/plugin-syntax-import-meta@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-syntax-import-meta@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 685ee8f0b5b675952e02e1cabcde4d92638918a66ed515b2663e2e0b2246210a0768325423d5642f8687653a449357826675ccfcb712676be260a0ae13313828 + languageName: node + linkType: hard + +"@babel/plugin-syntax-json-strings@npm:^7.8.0, @babel/plugin-syntax-json-strings@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-json-strings@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": ^7.8.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 1a7dabf0a4b264cb235966c4256aad131567eba20e41de731fa9127d371454a2f702e27fd7bedac65efb0df847e5cece7bcb5507a931604d1c2ecb7390adaa1f + languageName: node + linkType: hard + +"@babel/plugin-syntax-jsx@npm:7.10.4, @babel/plugin-syntax-jsx@npm:^7.0.0, @babel/plugin-syntax-jsx@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/plugin-syntax-jsx@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 7c9a5c56e559e696ae6f36404a58c8bddd3bb4276f24f89606192f6e3f72f38cce65bfd5fd83e9b691aa0265312db79bab514e64486d178ca0c710b8a5924074 + languageName: node + linkType: hard + +"@babel/plugin-syntax-logical-assignment-operators@npm:^7.10.4, @babel/plugin-syntax-logical-assignment-operators@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-syntax-logical-assignment-operators@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 5b82f717707d278e58d12649932bf3327923361f051cd4517a5b63d7ebfe39cb6cdfb37aa199b5a441db305301a3c8de01c946d25d1f4c4ecb94322a23ac9e73 + languageName: node + linkType: hard + +"@babel/plugin-syntax-nullish-coalescing-operator@npm:^7.8.0, @babel/plugin-syntax-nullish-coalescing-operator@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-nullish-coalescing-operator@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": ^7.8.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 4ba03753759a2d9783b792c060147a20f474f76c42edf77cbf89c6669f9f22ffb3cbba4facdd8ce651129db6089a81feca1f7e42da75244eabedecba37bd20be + languageName: node + linkType: hard + +"@babel/plugin-syntax-numeric-separator@npm:^7.10.4, @babel/plugin-syntax-numeric-separator@npm:^7.8.0, @babel/plugin-syntax-numeric-separator@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-syntax-numeric-separator@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 47ae8782939ccc41f94b1d46b8b7a63363b003b8b7544bddae8dd454a8d51b38bbd4f9c26e91ecfb5fc16dc5f2228700e3030def63c5d07046073ec8fabc4665 + languageName: node + linkType: hard + +"@babel/plugin-syntax-object-rest-spread@npm:7.8.3, @babel/plugin-syntax-object-rest-spread@npm:^7.0.0, @babel/plugin-syntax-object-rest-spread@npm:^7.8.0, @babel/plugin-syntax-object-rest-spread@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-object-rest-spread@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": ^7.8.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: db5dfb39faceddba8b80c586e331e17c3a1f79941f80eaa070b91fb920582bffe8bba46f6bebbdaf7c1f9b0bbe2a68493c28e1c9fb0ced864da739c0cd52ce43 + languageName: node + linkType: hard + +"@babel/plugin-syntax-optional-catch-binding@npm:^7.8.0, @babel/plugin-syntax-optional-catch-binding@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-optional-catch-binding@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": ^7.8.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: f03d07526674ecdb3388e1d648ec250250968e13c037a7110e37d3eab0b82b07d6605332772afdf19f1831dfd3bdbbf0288a7d9097097d30b9548388ea693a07 + languageName: node + linkType: hard + +"@babel/plugin-syntax-optional-chaining@npm:^7.8.0, @babel/plugin-syntax-optional-chaining@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-optional-chaining@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": ^7.8.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 2a50685d023bc609b01a3fd7ed3af03bc36c575da8d02199ed51cb24e8e068f26a128a20486cd502abe9e1d4c02e0264b8a58f1a5143e1291ca3508a948ada97 + languageName: node + linkType: hard + +"@babel/plugin-syntax-top-level-await@npm:^7.10.4, @babel/plugin-syntax-top-level-await@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-syntax-top-level-await@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 998d87fbd38a2c7d1b630ccd0a90430a70dec6b7fb23fc37c60cbc10de7112a094c786602d9c8e3093568f538eb2642705006682ce58eb922f2eda889af3ad48 + languageName: node + linkType: hard + +"@babel/plugin-syntax-typescript@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/plugin-syntax-typescript@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 9511691ac0d5bb1810055bc8528d217c9bb862097244259707bff96ae65137f1aa23c26df4069ae6b7a7ed0e93bc9c47ea9e50402a7c1576ee8d94ebd5ba3c73 + languageName: node + linkType: hard + +"@babel/plugin-transform-arrow-functions@npm:^7.0.0, @babel/plugin-transform-arrow-functions@npm:^7.10.4, @babel/plugin-transform-arrow-functions@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-transform-arrow-functions@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: ec5b1d6ec6b61baf93cff41016e30f9d410a6a24fd8adc6e8790b168781470ad52dbf34c8e6897bed7c62eb79c20f59f96e6014acb8f7fd6b91c89ed1c515acb + languageName: node + linkType: hard + +"@babel/plugin-transform-async-to-generator@npm:^7.10.4, @babel/plugin-transform-async-to-generator@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-transform-async-to-generator@npm:7.10.4" + dependencies: + "@babel/helper-module-imports": ^7.10.4 + "@babel/helper-plugin-utils": ^7.10.4 + "@babel/helper-remap-async-to-generator": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: c4cddae691f303aecc5124dfd4cbc9eba09523b714b92fa4a567cf4add212c057b93d7598cd6dda79645230c777290fc13ec17f6384255c8bdce50692539abe1 + languageName: node + linkType: hard + +"@babel/plugin-transform-block-scoped-functions@npm:^7.0.0, @babel/plugin-transform-block-scoped-functions@npm:^7.10.4, @babel/plugin-transform-block-scoped-functions@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-transform-block-scoped-functions@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: d608f55104576798ec224d1b222ee33a22968bc0653b54c316c0a591bf4c2681b87c6222266d978ab273c19ef44e6976eaeac4da8928694312433a01616cc73f + languageName: node + linkType: hard + +"@babel/plugin-transform-block-scoping@npm:^7.0.0, @babel/plugin-transform-block-scoping@npm:^7.10.4, @babel/plugin-transform-block-scoping@npm:^7.8.3": + version: 7.11.1 + resolution: "@babel/plugin-transform-block-scoping@npm:7.11.1" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: f24179bf37249a06515b571f30bc9b9aefe8be9e740f1be58345b153f41f3cd978cb47cc9440f0e48ff26ad828f6d97e353eddf03fc0e10621a8a48757f02cbe + languageName: node + linkType: hard + +"@babel/plugin-transform-classes@npm:^7.0.0, @babel/plugin-transform-classes@npm:^7.10.4, @babel/plugin-transform-classes@npm:^7.9.0": + version: 7.10.4 + resolution: "@babel/plugin-transform-classes@npm:7.10.4" + dependencies: + "@babel/helper-annotate-as-pure": ^7.10.4 + "@babel/helper-define-map": ^7.10.4 + "@babel/helper-function-name": ^7.10.4 + "@babel/helper-optimise-call-expression": ^7.10.4 + "@babel/helper-plugin-utils": ^7.10.4 + "@babel/helper-replace-supers": ^7.10.4 + "@babel/helper-split-export-declaration": ^7.10.4 + globals: ^11.1.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: c5ba85f73658eb060c83fafda960572c9ceb4e47650c539fbde474d37f133a0112031c4602964cf5f9ef967916e4bbd4afa8b1210cd64ec6fb71519521e28348 + languageName: node + linkType: hard + +"@babel/plugin-transform-computed-properties@npm:^7.0.0, @babel/plugin-transform-computed-properties@npm:^7.10.4, @babel/plugin-transform-computed-properties@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-transform-computed-properties@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: c69c53881deaa1595fd974328997f1c4731586df5e6be310269107becb83efb0fd8abbe7177320c6b1fdd8828bfe42301f6649e7589da8472a65ecda72cd8d32 + languageName: node + linkType: hard + +"@babel/plugin-transform-destructuring@npm:^7.0.0, @babel/plugin-transform-destructuring@npm:^7.10.4, @babel/plugin-transform-destructuring@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-transform-destructuring@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 2ea714834691b08805227a5335707e556aff087507c9fdccb7265ed56ca9ee39635945d102f5a6f418ade08f3f61ce3f4ebc345d36060254d06d6e08a5693f0a + languageName: node + linkType: hard + +"@babel/plugin-transform-dotall-regex@npm:^7.10.4, @babel/plugin-transform-dotall-regex@npm:^7.4.4, @babel/plugin-transform-dotall-regex@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-transform-dotall-regex@npm:7.10.4" + dependencies: + "@babel/helper-create-regexp-features-plugin": ^7.10.4 + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 284cce72dfade92b51e8a66742ac7e9449f3d9e379ea2185777e600b000fd1ba0614786ccd9f753a52e2a896235ba7381d82767d7ade0352fd32ec5c90781bc7 + languageName: node + linkType: hard + +"@babel/plugin-transform-duplicate-keys@npm:^7.10.4, @babel/plugin-transform-duplicate-keys@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-transform-duplicate-keys@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 60897c7c2f49f687b5699c486a84f91f16bd8951c306795199bbc908073000db3d693f4ca04058d62ef09bec61fccd4d9c379ef8086754297d4440b1677047f2 + languageName: node + linkType: hard + +"@babel/plugin-transform-exponentiation-operator@npm:^7.10.4, @babel/plugin-transform-exponentiation-operator@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-transform-exponentiation-operator@npm:7.10.4" + dependencies: + "@babel/helper-builder-binary-assignment-operator-visitor": ^7.10.4 + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: fb086b4482cce50adc59dcc5713f4a4fe082bad176b360f5bb3fabc47461cdfed6bbf739a84535a78bc26f743bca74f31f195ec8c223cba8acafa299f5361fe1 + languageName: node + linkType: hard + +"@babel/plugin-transform-flow-strip-types@npm:7.9.0, @babel/plugin-transform-flow-strip-types@npm:^7.0.0": + version: 7.9.0 + resolution: "@babel/plugin-transform-flow-strip-types@npm:7.9.0" + dependencies: + "@babel/helper-plugin-utils": ^7.8.3 + "@babel/plugin-syntax-flow": ^7.8.3 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 6f639bec01e55d918d93fcc620702d979c1f81913e169488e44cca742fb93dbdc66482f17b718d10b2be8b8ad834afada6590a290e32334dc0602db25c6afb8f + languageName: node + linkType: hard + +"@babel/plugin-transform-for-of@npm:^7.0.0, @babel/plugin-transform-for-of@npm:^7.10.4, @babel/plugin-transform-for-of@npm:^7.9.0": + version: 7.10.4 + resolution: "@babel/plugin-transform-for-of@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 86c02bbf98763179f881f58f7b3c6536ed6da36db9190f6a285a61298584ecbef253e1d1e7ffae3cdc216c47bca7987d96e3a4c652edd3134994a146da831e4e + languageName: node + linkType: hard + +"@babel/plugin-transform-function-name@npm:^7.0.0, @babel/plugin-transform-function-name@npm:^7.10.4, @babel/plugin-transform-function-name@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-transform-function-name@npm:7.10.4" + dependencies: + "@babel/helper-function-name": ^7.10.4 + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 64d8bf2de2a290d1c5d0c5f1d5f57fc64ff02705bc9740fc217f026d7aea7a1823ef22e28c6aa101ee7f81b55485801938bbc2210530845eee7fc0305ccdde0c + languageName: node + linkType: hard + +"@babel/plugin-transform-literals@npm:^7.0.0, @babel/plugin-transform-literals@npm:^7.10.4, @babel/plugin-transform-literals@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-transform-literals@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 53cd3f43672cb9361175e21cddb9eb39d260ddb1ca6206c669ec5a6519db16609cb46e88af700b3da5b2a9ce09ea035f9557ca60e679341d737b1988f5ba6088 + languageName: node + linkType: hard + +"@babel/plugin-transform-member-expression-literals@npm:^7.0.0, @babel/plugin-transform-member-expression-literals@npm:^7.10.4, @babel/plugin-transform-member-expression-literals@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-transform-member-expression-literals@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: e6a1844cb542ea43a83fc0ac81f630ab5ac1547aaf595acfb9f9c17e98b5aa1f7aca21f84657c111260e6e7a2404643355ea8c2b5fd434915b106c3e1c2f431e + languageName: node + linkType: hard + +"@babel/plugin-transform-modules-amd@npm:^7.10.4, @babel/plugin-transform-modules-amd@npm:^7.9.0": + version: 7.10.5 + resolution: "@babel/plugin-transform-modules-amd@npm:7.10.5" + dependencies: + "@babel/helper-module-transforms": ^7.10.5 + "@babel/helper-plugin-utils": ^7.10.4 + babel-plugin-dynamic-import-node: ^2.3.3 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 6d2b80f3ca13d13589863288f75f9c9efaa7d80e6eeb93351c8994c3c15c4a675e8347f0b28fcc2afb2dce5cb17b499560a215ba7691719d6ab0ad164384e41e + languageName: node + linkType: hard + +"@babel/plugin-transform-modules-commonjs@npm:^7.0.0, @babel/plugin-transform-modules-commonjs@npm:^7.10.4, @babel/plugin-transform-modules-commonjs@npm:^7.9.0": + version: 7.10.4 + resolution: "@babel/plugin-transform-modules-commonjs@npm:7.10.4" + dependencies: + "@babel/helper-module-transforms": ^7.10.4 + "@babel/helper-plugin-utils": ^7.10.4 + "@babel/helper-simple-access": ^7.10.4 + babel-plugin-dynamic-import-node: ^2.3.3 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 42176865089a2800e888c41beaf3688e00b9b71b5bc65ca238342c83e9d38ec141eaa405182688a8294b344cd8a7ed36ab2da2662c38a40e2c736fed48ae7178 + languageName: node + linkType: hard + +"@babel/plugin-transform-modules-systemjs@npm:^7.10.4, @babel/plugin-transform-modules-systemjs@npm:^7.9.0": + version: 7.10.5 + resolution: "@babel/plugin-transform-modules-systemjs@npm:7.10.5" + dependencies: + "@babel/helper-hoist-variables": ^7.10.4 + "@babel/helper-module-transforms": ^7.10.5 + "@babel/helper-plugin-utils": ^7.10.4 + babel-plugin-dynamic-import-node: ^2.3.3 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: eb08d7c7e58c45c14212b885d3aceea9742a4565fa561e171c53169834d5e42044c818447a7f055f098b92742eef392470cf16678c30b9775bf6b232130c259b + languageName: node + linkType: hard + +"@babel/plugin-transform-modules-umd@npm:^7.10.4, @babel/plugin-transform-modules-umd@npm:^7.9.0": + version: 7.10.4 + resolution: "@babel/plugin-transform-modules-umd@npm:7.10.4" + dependencies: + "@babel/helper-module-transforms": ^7.10.4 + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: b0c3f47b9e36dd2fffb8f31ee6449410b59bcb8c544552bc91c2f565ea34c8b9dc4396b478e38ba885b96777de6fdd38cf2053307c189837b54429290ecfa720 + languageName: node + linkType: hard + +"@babel/plugin-transform-named-capturing-groups-regex@npm:^7.10.4, @babel/plugin-transform-named-capturing-groups-regex@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-transform-named-capturing-groups-regex@npm:7.10.4" + dependencies: + "@babel/helper-create-regexp-features-plugin": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 6b868806fda6cab6ff011990473a424199059f75a9eb12d0e421e01460244e0164f837af8b76e415bc390bf6502d5372ad9d56fd270cd1cfff7e0d19facc237f + languageName: node + linkType: hard + +"@babel/plugin-transform-new-target@npm:^7.10.4, @babel/plugin-transform-new-target@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-transform-new-target@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: a4742428d2c942d11b8cd91beaf6e3e1509416b563bf74959e4d103ffa954176d639cb44eb3b5992321897253eda6d921f21f18af1d20da30534dcccdd474bec + languageName: node + linkType: hard + +"@babel/plugin-transform-object-super@npm:^7.0.0, @babel/plugin-transform-object-super@npm:^7.10.4, @babel/plugin-transform-object-super@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-transform-object-super@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + "@babel/helper-replace-supers": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 30485dd88ba30dc1584d08a3c2b61f61e3ca5b0850a183e3c655a3bcd7fa49fd3c5c1d5de5da2baa811b97d65d52fec11a39deb3acca4acbacd63ae632335d0c + languageName: node + linkType: hard + +"@babel/plugin-transform-parameters@npm:^7.0.0, @babel/plugin-transform-parameters@npm:^7.10.4, @babel/plugin-transform-parameters@npm:^7.8.7": + version: 7.10.5 + resolution: "@babel/plugin-transform-parameters@npm:7.10.5" + dependencies: + "@babel/helper-get-function-arity": ^7.10.4 + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: f5da5726a22e981388640b152b7cdb75132e8a0d93a0228a4c6c72a9cd80052edf01e25829d24f71419f978de0512103d61328fd24d4df36c3b0b16064b5b1bb + languageName: node + linkType: hard + +"@babel/plugin-transform-property-literals@npm:^7.0.0, @babel/plugin-transform-property-literals@npm:^7.10.4, @babel/plugin-transform-property-literals@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-transform-property-literals@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 06ced62af42371e315830b84b71e043a08fbdac995945b7b15d9987430d3eea9f3aed646c3b50e4b4aaa2fadf46a824b2a2ce49e379db7157647a37d751603c6 + languageName: node + linkType: hard + +"@babel/plugin-transform-react-constant-elements@npm:^7.0.0, @babel/plugin-transform-react-constant-elements@npm:^7.9.0": + version: 7.10.4 + resolution: "@babel/plugin-transform-react-constant-elements@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 23c11fd1f77e3e053ae915be13f9613c323bd4b474b5ca3b19a6cb4b527bff4521f0fa42241ef6cce3ebc4be6cff8a90918195224af3f270feb454e0e01f63a7 + languageName: node + linkType: hard + +"@babel/plugin-transform-react-display-name@npm:7.8.3, @babel/plugin-transform-react-display-name@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-transform-react-display-name@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": ^7.8.3 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 9e25364d9509a5f5bca8748fbb4337b1c9fc5d4c9bc698f6abffb14cfb0928782d55ec91d13e6e239f8a4c4532aa2267c9a3ad0a99a6c6f4ad0e1e24f5ee710a + languageName: node + linkType: hard + +"@babel/plugin-transform-react-display-name@npm:^7.0.0, @babel/plugin-transform-react-display-name@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/plugin-transform-react-display-name@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 7a224e1163271a0557adc8d94332ab72f4c6a3fc163377349975cf453c44845fef697f0b46c0254f3e0eba889d55d01a47e3f065c5b9bc01060ba7d0f3e1e44f + languageName: node + linkType: hard + +"@babel/plugin-transform-react-jsx-development@npm:^7.10.4, @babel/plugin-transform-react-jsx-development@npm:^7.9.0": + version: 7.10.4 + resolution: "@babel/plugin-transform-react-jsx-development@npm:7.10.4" + dependencies: + "@babel/helper-builder-react-jsx-experimental": ^7.10.4 + "@babel/helper-plugin-utils": ^7.10.4 + "@babel/plugin-syntax-jsx": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: ca014ab370cc3f42a13fda34e04a54b1d16212eb8f74e1403fc4b37c01f2f36d1756543fcadd2f618f1ee315380ba175ced38c3c66873f4de0bc8c24fa46d69f + languageName: node + linkType: hard + +"@babel/plugin-transform-react-jsx-self@npm:^7.10.4, @babel/plugin-transform-react-jsx-self@npm:^7.9.0": + version: 7.10.4 + resolution: "@babel/plugin-transform-react-jsx-self@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + "@babel/plugin-syntax-jsx": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 5447767b732e79e4424e54ad5acebae85ef78e6a7746e97ae8eb866b47bb6a5e63c3a5226e9f2b190ab62787e29b8d152af4541c67548016a181ae27b5bc8f48 + languageName: node + linkType: hard + +"@babel/plugin-transform-react-jsx-source@npm:^7.10.4, @babel/plugin-transform-react-jsx-source@npm:^7.9.0": + version: 7.10.5 + resolution: "@babel/plugin-transform-react-jsx-source@npm:7.10.5" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + "@babel/plugin-syntax-jsx": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 9dc5d9bad0fc117524b15713911f60a347277a7308dc9e34552b84362be8ea4625cd8aa67e4340b29550d5f34bd342f6eab2c3e2c49137fe1b3ce95c97348ade + languageName: node + linkType: hard + +"@babel/plugin-transform-react-jsx@npm:^7.0.0, @babel/plugin-transform-react-jsx@npm:^7.10.4, @babel/plugin-transform-react-jsx@npm:^7.9.1": + version: 7.10.4 + resolution: "@babel/plugin-transform-react-jsx@npm:7.10.4" + dependencies: + "@babel/helper-builder-react-jsx": ^7.10.4 + "@babel/helper-builder-react-jsx-experimental": ^7.10.4 + "@babel/helper-plugin-utils": ^7.10.4 + "@babel/plugin-syntax-jsx": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 0fb7d136c89f723214c48785e280429ad30f99d6c0cf07e056a769904741f733afbe46cfa7c53751be7d8fea25163b158c02aefc5df6e14eb3fe87757b383c30 + languageName: node + linkType: hard + +"@babel/plugin-transform-react-pure-annotations@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/plugin-transform-react-pure-annotations@npm:7.10.4" + dependencies: + "@babel/helper-annotate-as-pure": ^7.10.4 + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: c59c44cf39d5aa3a442b5ff360414fd690a3a5445c03d9ca6fb60ad01119c97074a71ec9f4a44a30df1f3258a7a15d059a5fbd485fd26b7057e8ea9c95bac516 + languageName: node + linkType: hard + +"@babel/plugin-transform-regenerator@npm:^7.10.4, @babel/plugin-transform-regenerator@npm:^7.8.7": + version: 7.10.4 + resolution: "@babel/plugin-transform-regenerator@npm:7.10.4" + dependencies: + regenerator-transform: ^0.14.2 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 932b35c5ed2f91b09afbea141789d561e8ce5af280f668107fb2768bc3e441c102c37051a964749837053c7be266a224a9ddc5acc562f997b9fef406ca47b179 + languageName: node + linkType: hard + +"@babel/plugin-transform-reserved-words@npm:^7.10.4, @babel/plugin-transform-reserved-words@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-transform-reserved-words@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 457433e66e54b527a4b27473eaab0302a868ed74c8b9fcb33a8a7fd24e66bdb764d6bff505de79fcfb35444debca66fd12b51c9df53e6cf817b784ad9f46ae91 + languageName: node + linkType: hard + +"@babel/plugin-transform-runtime@npm:7.9.0": + version: 7.9.0 + resolution: "@babel/plugin-transform-runtime@npm:7.9.0" + dependencies: + "@babel/helper-module-imports": ^7.8.3 + "@babel/helper-plugin-utils": ^7.8.3 + resolve: ^1.8.1 + semver: ^5.5.1 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 9fddeb4a90adfc070206fd41db3646079f67f738c485a2b626c1b880ad6f90ac78acd5f727920a2584ae04fc01fc8ee46ce7cd40f03f6731e5e31a2abf3e26a9 + languageName: node + linkType: hard + +"@babel/plugin-transform-runtime@npm:^7.9.0": + version: 7.11.0 + resolution: "@babel/plugin-transform-runtime@npm:7.11.0" + dependencies: + "@babel/helper-module-imports": ^7.10.4 + "@babel/helper-plugin-utils": ^7.10.4 + resolve: ^1.8.1 + semver: ^5.5.1 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: fc327b4f15366b821165cd0aec18688fbb596c056d5316190d51264e8ecb7a0a7d53c7e204709148de76dd07bf4556314ccf4bf33a1515d494e52ddf9992b67d + languageName: node + linkType: hard + +"@babel/plugin-transform-shorthand-properties@npm:^7.0.0, @babel/plugin-transform-shorthand-properties@npm:^7.10.4, @babel/plugin-transform-shorthand-properties@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-transform-shorthand-properties@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 91ba5aa0990a9ba2fdca39c98cdd687a7a0bc62c20c0243cbe02b8c580e51d55f2ee310df9decd7b8eb8e8395c68071ee69d22b953aafa0b2d436081d767317d + languageName: node + linkType: hard + +"@babel/plugin-transform-spread@npm:^7.0.0, @babel/plugin-transform-spread@npm:^7.11.0, @babel/plugin-transform-spread@npm:^7.8.3": + version: 7.11.0 + resolution: "@babel/plugin-transform-spread@npm:7.11.0" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + "@babel/helper-skip-transparent-expression-wrappers": ^7.11.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: b10b0608d993441b649160db357161222e9e39afb4fc17c004aa67861cf21bcbfe757099bc68338c5119bc3068d1e4dcd3783fc84d11c5e76134e24e2b5a13a2 + languageName: node + linkType: hard + +"@babel/plugin-transform-sticky-regex@npm:^7.10.4, @babel/plugin-transform-sticky-regex@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-transform-sticky-regex@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + "@babel/helper-regex": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 56eed04e484f03645bc57228b3c6057460a2ded9ead109aa895edef4475410f480896319c04f1dbe66fcfe8b5a49ead110ce50595eefee01a0ac6fbb2b2f7f8c + languageName: node + linkType: hard + +"@babel/plugin-transform-template-literals@npm:^7.0.0, @babel/plugin-transform-template-literals@npm:^7.10.4, @babel/plugin-transform-template-literals@npm:^7.8.3": + version: 7.10.5 + resolution: "@babel/plugin-transform-template-literals@npm:7.10.5" + dependencies: + "@babel/helper-annotate-as-pure": ^7.10.4 + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: bd5e87e4073d3b8ee437f5c3ee1316540110796a988a31ab238291ec3b6d99dde1f19733d34d4ac9e0f71419e37870519cd43e91f3f3896068b450df860982be + languageName: node + linkType: hard + +"@babel/plugin-transform-typeof-symbol@npm:^7.10.4, @babel/plugin-transform-typeof-symbol@npm:^7.8.4": + version: 7.10.4 + resolution: "@babel/plugin-transform-typeof-symbol@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 13f3e7537220788f3d1b6a100769897c23dc084abe38e5e893a8e71f729f74a675af10999ac672cd83f3206a942dc5e9200dea5b0d474f37119de677af142737 + languageName: node + linkType: hard + +"@babel/plugin-transform-typescript@npm:^7.10.4, @babel/plugin-transform-typescript@npm:^7.9.0": + version: 7.11.0 + resolution: "@babel/plugin-transform-typescript@npm:7.11.0" + dependencies: + "@babel/helper-create-class-features-plugin": ^7.10.5 + "@babel/helper-plugin-utils": ^7.10.4 + "@babel/plugin-syntax-typescript": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 0f2e43de8b8f43ad5c7ffb7c5f35531c471fad5eb6d454773f4bd08f0c3e2ea082d447f8666200696618169ff2035f9d1e26a7c8bd0ce0edddf978fa1362d79e + languageName: node + linkType: hard + +"@babel/plugin-transform-unicode-escapes@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/plugin-transform-unicode-escapes@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: c7467a508fa834df8f251f714604fc1ed21c37e8a1443a24bcc1db353f647d28305f912c603924648081a717cb92557ea6bc47c5b011ebbe67f601e7dbaa6b5e + languageName: node + linkType: hard + +"@babel/plugin-transform-unicode-regex@npm:^7.10.4, @babel/plugin-transform-unicode-regex@npm:^7.8.3": + version: 7.10.4 + resolution: "@babel/plugin-transform-unicode-regex@npm:7.10.4" + dependencies: + "@babel/helper-create-regexp-features-plugin": ^7.10.4 + "@babel/helper-plugin-utils": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 2e0762e7fa222c1e2c936ec0e94af336dfe5c69130499ada734b20e2c86f83907528c748258f3ee99e728eea3b183f9e0c9d61e3b3d4c83daa92308078cc1888 + languageName: node + linkType: hard + +"@babel/preset-env@npm:7.9.0": + version: 7.9.0 + resolution: "@babel/preset-env@npm:7.9.0" + dependencies: + "@babel/compat-data": ^7.9.0 + "@babel/helper-compilation-targets": ^7.8.7 + "@babel/helper-module-imports": ^7.8.3 + "@babel/helper-plugin-utils": ^7.8.3 + "@babel/plugin-proposal-async-generator-functions": ^7.8.3 + "@babel/plugin-proposal-dynamic-import": ^7.8.3 + "@babel/plugin-proposal-json-strings": ^7.8.3 + "@babel/plugin-proposal-nullish-coalescing-operator": ^7.8.3 + "@babel/plugin-proposal-numeric-separator": ^7.8.3 + "@babel/plugin-proposal-object-rest-spread": ^7.9.0 + "@babel/plugin-proposal-optional-catch-binding": ^7.8.3 + "@babel/plugin-proposal-optional-chaining": ^7.9.0 + "@babel/plugin-proposal-unicode-property-regex": ^7.8.3 + "@babel/plugin-syntax-async-generators": ^7.8.0 + "@babel/plugin-syntax-dynamic-import": ^7.8.0 + "@babel/plugin-syntax-json-strings": ^7.8.0 + "@babel/plugin-syntax-nullish-coalescing-operator": ^7.8.0 + "@babel/plugin-syntax-numeric-separator": ^7.8.0 + "@babel/plugin-syntax-object-rest-spread": ^7.8.0 + "@babel/plugin-syntax-optional-catch-binding": ^7.8.0 + "@babel/plugin-syntax-optional-chaining": ^7.8.0 + "@babel/plugin-syntax-top-level-await": ^7.8.3 + "@babel/plugin-transform-arrow-functions": ^7.8.3 + "@babel/plugin-transform-async-to-generator": ^7.8.3 + "@babel/plugin-transform-block-scoped-functions": ^7.8.3 + "@babel/plugin-transform-block-scoping": ^7.8.3 + "@babel/plugin-transform-classes": ^7.9.0 + "@babel/plugin-transform-computed-properties": ^7.8.3 + "@babel/plugin-transform-destructuring": ^7.8.3 + "@babel/plugin-transform-dotall-regex": ^7.8.3 + "@babel/plugin-transform-duplicate-keys": ^7.8.3 + "@babel/plugin-transform-exponentiation-operator": ^7.8.3 + "@babel/plugin-transform-for-of": ^7.9.0 + "@babel/plugin-transform-function-name": ^7.8.3 + "@babel/plugin-transform-literals": ^7.8.3 + "@babel/plugin-transform-member-expression-literals": ^7.8.3 + "@babel/plugin-transform-modules-amd": ^7.9.0 + "@babel/plugin-transform-modules-commonjs": ^7.9.0 + "@babel/plugin-transform-modules-systemjs": ^7.9.0 + "@babel/plugin-transform-modules-umd": ^7.9.0 + "@babel/plugin-transform-named-capturing-groups-regex": ^7.8.3 + "@babel/plugin-transform-new-target": ^7.8.3 + "@babel/plugin-transform-object-super": ^7.8.3 + "@babel/plugin-transform-parameters": ^7.8.7 + "@babel/plugin-transform-property-literals": ^7.8.3 + "@babel/plugin-transform-regenerator": ^7.8.7 + "@babel/plugin-transform-reserved-words": ^7.8.3 + "@babel/plugin-transform-shorthand-properties": ^7.8.3 + "@babel/plugin-transform-spread": ^7.8.3 + "@babel/plugin-transform-sticky-regex": ^7.8.3 + "@babel/plugin-transform-template-literals": ^7.8.3 + "@babel/plugin-transform-typeof-symbol": ^7.8.4 + "@babel/plugin-transform-unicode-regex": ^7.8.3 + "@babel/preset-modules": ^0.1.3 + "@babel/types": ^7.9.0 + browserslist: ^4.9.1 + core-js-compat: ^3.6.2 + invariant: ^2.2.2 + levenary: ^1.1.1 + semver: ^5.5.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 0def3f55ca4920da1d85131f4c78b847432b99027be8957b84d00b9265975a18ee17e4be1c5830b96d3b63868b6637b9fdd382c6dafb496a17895974ad23695a + languageName: node + linkType: hard + +"@babel/preset-env@npm:^7.4.5, @babel/preset-env@npm:^7.9.0, @babel/preset-env@npm:^7.9.5": + version: 7.11.0 + resolution: "@babel/preset-env@npm:7.11.0" + dependencies: + "@babel/compat-data": ^7.11.0 + "@babel/helper-compilation-targets": ^7.10.4 + "@babel/helper-module-imports": ^7.10.4 + "@babel/helper-plugin-utils": ^7.10.4 + "@babel/plugin-proposal-async-generator-functions": ^7.10.4 + "@babel/plugin-proposal-class-properties": ^7.10.4 + "@babel/plugin-proposal-dynamic-import": ^7.10.4 + "@babel/plugin-proposal-export-namespace-from": ^7.10.4 + "@babel/plugin-proposal-json-strings": ^7.10.4 + "@babel/plugin-proposal-logical-assignment-operators": ^7.11.0 + "@babel/plugin-proposal-nullish-coalescing-operator": ^7.10.4 + "@babel/plugin-proposal-numeric-separator": ^7.10.4 + "@babel/plugin-proposal-object-rest-spread": ^7.11.0 + "@babel/plugin-proposal-optional-catch-binding": ^7.10.4 + "@babel/plugin-proposal-optional-chaining": ^7.11.0 + "@babel/plugin-proposal-private-methods": ^7.10.4 + "@babel/plugin-proposal-unicode-property-regex": ^7.10.4 + "@babel/plugin-syntax-async-generators": ^7.8.0 + "@babel/plugin-syntax-class-properties": ^7.10.4 + "@babel/plugin-syntax-dynamic-import": ^7.8.0 + "@babel/plugin-syntax-export-namespace-from": ^7.8.3 + "@babel/plugin-syntax-json-strings": ^7.8.0 + "@babel/plugin-syntax-logical-assignment-operators": ^7.10.4 + "@babel/plugin-syntax-nullish-coalescing-operator": ^7.8.0 + "@babel/plugin-syntax-numeric-separator": ^7.10.4 + "@babel/plugin-syntax-object-rest-spread": ^7.8.0 + "@babel/plugin-syntax-optional-catch-binding": ^7.8.0 + "@babel/plugin-syntax-optional-chaining": ^7.8.0 + "@babel/plugin-syntax-top-level-await": ^7.10.4 + "@babel/plugin-transform-arrow-functions": ^7.10.4 + "@babel/plugin-transform-async-to-generator": ^7.10.4 + "@babel/plugin-transform-block-scoped-functions": ^7.10.4 + "@babel/plugin-transform-block-scoping": ^7.10.4 + "@babel/plugin-transform-classes": ^7.10.4 + "@babel/plugin-transform-computed-properties": ^7.10.4 + "@babel/plugin-transform-destructuring": ^7.10.4 + "@babel/plugin-transform-dotall-regex": ^7.10.4 + "@babel/plugin-transform-duplicate-keys": ^7.10.4 + "@babel/plugin-transform-exponentiation-operator": ^7.10.4 + "@babel/plugin-transform-for-of": ^7.10.4 + "@babel/plugin-transform-function-name": ^7.10.4 + "@babel/plugin-transform-literals": ^7.10.4 + "@babel/plugin-transform-member-expression-literals": ^7.10.4 + "@babel/plugin-transform-modules-amd": ^7.10.4 + "@babel/plugin-transform-modules-commonjs": ^7.10.4 + "@babel/plugin-transform-modules-systemjs": ^7.10.4 + "@babel/plugin-transform-modules-umd": ^7.10.4 + "@babel/plugin-transform-named-capturing-groups-regex": ^7.10.4 + "@babel/plugin-transform-new-target": ^7.10.4 + "@babel/plugin-transform-object-super": ^7.10.4 + "@babel/plugin-transform-parameters": ^7.10.4 + "@babel/plugin-transform-property-literals": ^7.10.4 + "@babel/plugin-transform-regenerator": ^7.10.4 + "@babel/plugin-transform-reserved-words": ^7.10.4 + "@babel/plugin-transform-shorthand-properties": ^7.10.4 + "@babel/plugin-transform-spread": ^7.11.0 + "@babel/plugin-transform-sticky-regex": ^7.10.4 + "@babel/plugin-transform-template-literals": ^7.10.4 + "@babel/plugin-transform-typeof-symbol": ^7.10.4 + "@babel/plugin-transform-unicode-escapes": ^7.10.4 + "@babel/plugin-transform-unicode-regex": ^7.10.4 + "@babel/preset-modules": ^0.1.3 + "@babel/types": ^7.11.0 + browserslist: ^4.12.0 + core-js-compat: ^3.6.2 + invariant: ^2.2.2 + levenary: ^1.1.1 + semver: ^5.5.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 5ce0e1d188c14c47f3278d39f927e158ec9f66793d04891ad0b066413141f3ba6fffea720cc7408d9e8bce3cc8de63fff07884fd8331ca5c04fbf1fdedb17614 + languageName: node + linkType: hard + +"@babel/preset-modules@npm:^0.1.3": + version: 0.1.3 + resolution: "@babel/preset-modules@npm:0.1.3" + 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 + checksum: 341c13de18779d682ec710c40e60e92285d9a557211c0448398b7308cffb7a1edaaaf4862c1dfe9b02c8b1184c3fdad73daead66cc48aa37b8e90602a49ac175 + languageName: node + linkType: hard + +"@babel/preset-react@npm:7.9.1": + version: 7.9.1 + resolution: "@babel/preset-react@npm:7.9.1" + dependencies: + "@babel/helper-plugin-utils": ^7.8.3 + "@babel/plugin-transform-react-display-name": ^7.8.3 + "@babel/plugin-transform-react-jsx": ^7.9.1 + "@babel/plugin-transform-react-jsx-development": ^7.9.0 + "@babel/plugin-transform-react-jsx-self": ^7.9.0 + "@babel/plugin-transform-react-jsx-source": ^7.9.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 40986497972b9743558a408a78157ef6aec05374e5f130b7bab29dc4eaf49c8934116fb83ae17648bf679212a17d2469b37d338057ab282dced0fd9f1051cbce + languageName: node + linkType: hard + +"@babel/preset-react@npm:^7.0.0, @babel/preset-react@npm:^7.9.4": + version: 7.10.4 + resolution: "@babel/preset-react@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + "@babel/plugin-transform-react-display-name": ^7.10.4 + "@babel/plugin-transform-react-jsx": ^7.10.4 + "@babel/plugin-transform-react-jsx-development": ^7.10.4 + "@babel/plugin-transform-react-jsx-self": ^7.10.4 + "@babel/plugin-transform-react-jsx-source": ^7.10.4 + "@babel/plugin-transform-react-pure-annotations": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 233b242753c7fe8acf0b5155937a7004ec0424d9e9b582bfdca76932ccf140144f60f4927b12397160ac5ffede2eafde3de0892e0d56411c738606d7bb233dd2 + languageName: node + linkType: hard + +"@babel/preset-typescript@npm:7.9.0": + version: 7.9.0 + resolution: "@babel/preset-typescript@npm:7.9.0" + dependencies: + "@babel/helper-plugin-utils": ^7.8.3 + "@babel/plugin-transform-typescript": ^7.9.0 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: d83ac83919d1b7f1cd9a95b738389c12314492231c70e82026ac17f85efe943b61fe7670d4c99707b2a716ccb91bc0703abc8dffd9466d0f201c0ad8ccdd42f6 + languageName: node + linkType: hard + +"@babel/preset-typescript@npm:^7.9.0": + version: 7.10.4 + resolution: "@babel/preset-typescript@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": ^7.10.4 + "@babel/plugin-transform-typescript": ^7.10.4 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: e14357988cfd69fea5c146bbe7782a1061e6f4ed4ccdaa7aaf6daa1b7c9b34f3502aa48674c877c68bcda44ad8ad5892c5babbf984f7be91eafa1e1417abc8e5 + languageName: node + linkType: hard + +"@babel/runtime-corejs3@npm:^7.10.4, @babel/runtime-corejs3@npm:^7.8.3": + version: 7.11.2 + resolution: "@babel/runtime-corejs3@npm:7.11.2" + dependencies: + core-js-pure: ^3.0.0 + regenerator-runtime: ^0.13.4 + checksum: 151da4e97bb558d5a58e2a94eb89bcd505b7273c00b6ad8fe1988aefbe16aee01aa83dba0e90e56370a3e99d974d4f5fb081a6489161dc414e322d70bf19bc92 + languageName: node + linkType: hard + +"@babel/runtime@npm:7.9.0": + version: 7.9.0 + resolution: "@babel/runtime@npm:7.9.0" + dependencies: + regenerator-runtime: ^0.13.4 + checksum: b34bc3bdb86d2ea1182eba4a4e0fb7abdf5010bb263aaf4395a362b29209915dbb94d7a1f4ae02a98d8241666c1a99d8733513e7cb26e309956ddcb7071b34df + languageName: node + linkType: hard + +"@babel/runtime@npm:^7.0.0, @babel/runtime@npm:^7.1.2, @babel/runtime@npm:^7.3.1, @babel/runtime@npm:^7.3.4, @babel/runtime@npm:^7.4.0, @babel/runtime@npm:^7.4.4, @babel/runtime@npm:^7.4.5, @babel/runtime@npm:^7.5.5, @babel/runtime@npm:^7.7.2, @babel/runtime@npm:^7.8.3, @babel/runtime@npm:^7.8.4, @babel/runtime@npm:^7.8.7, @babel/runtime@npm:^7.9.2": + version: 7.11.2 + resolution: "@babel/runtime@npm:7.11.2" + dependencies: + regenerator-runtime: ^0.13.4 + checksum: 2f127ad60a0f0568faa0044e5b48329d8166c7fd3a0a3ce774070010a1c441ebf5570f526dd6bb26e214fb1a01bb987ab6a4c3f60a00f04d02448939f4c61e1e + languageName: node + linkType: hard + +"@babel/template@npm:^7.10.4, @babel/template@npm:^7.3.3, @babel/template@npm:^7.4.0, @babel/template@npm:^7.8.6": + version: 7.10.4 + resolution: "@babel/template@npm:7.10.4" + dependencies: + "@babel/code-frame": ^7.10.4 + "@babel/parser": ^7.10.4 + "@babel/types": ^7.10.4 + checksum: 23a5c4f7ab77d3f0cfeca3f8462f3b8a85d605d7c56bd917b46e9061aca2c8e84558d1209b8e365eb0e038d92fc387d42382c3072e3ad75087f9a04649e7bea6 + languageName: node + linkType: hard + +"@babel/traverse@npm:7.11.0, @babel/traverse@npm:^7.0.0, @babel/traverse@npm:^7.1.0, @babel/traverse@npm:^7.10.4, @babel/traverse@npm:^7.10.5, @babel/traverse@npm:^7.11.0, @babel/traverse@npm:^7.4.3, @babel/traverse@npm:^7.7.0, @babel/traverse@npm:^7.9.0": + version: 7.11.0 + resolution: "@babel/traverse@npm:7.11.0" + dependencies: + "@babel/code-frame": ^7.10.4 + "@babel/generator": ^7.11.0 + "@babel/helper-function-name": ^7.10.4 + "@babel/helper-split-export-declaration": ^7.11.0 + "@babel/parser": ^7.11.0 + "@babel/types": ^7.11.0 + debug: ^4.1.0 + globals: ^11.1.0 + lodash: ^4.17.19 + checksum: 81e4bb3020f18474d873be18c1ff56816c9de1ed38bffb933976b04904c626d2fa9a7c621658360e38c0b125175cc04f4946f19c10f65941632d17fdc4d399dc + languageName: node + linkType: hard + +"@babel/types@npm:7.11.0, @babel/types@npm:^7.0.0, @babel/types@npm:^7.10.4, @babel/types@npm:^7.10.5, @babel/types@npm:^7.11.0, @babel/types@npm:^7.3.0, @babel/types@npm:^7.3.3, @babel/types@npm:^7.4.0, @babel/types@npm:^7.4.4, @babel/types@npm:^7.7.0, @babel/types@npm:^7.9.0, @babel/types@npm:^7.9.5": + version: 7.11.0 + resolution: "@babel/types@npm:7.11.0" + dependencies: + "@babel/helper-validator-identifier": ^7.10.4 + lodash: ^4.17.19 + to-fast-properties: ^2.0.0 + checksum: 46e2fcd49d1c6d3261fcc3e88906fa39661a193365325ca94b9b1d59f949cef8546e3aba3e13a122b1bf2a493120ad00c06533ae0c428ad60ce81ee2a2649964 + languageName: node + linkType: hard + +"@bcoe/v8-coverage@npm:^0.2.3": + version: 0.2.3 + resolution: "@bcoe/v8-coverage@npm:0.2.3" + checksum: 4fc6fb784b09d2e994fc9180dc8af9f674a4e5114cd2c52754e689f87725e670d0919728945fe3991d434109e42e5ac6f9d85c58a566e2a645eb9dda68eead6a + languageName: node + linkType: hard + +"@cnakazawa/watch@npm:^1.0.3": + version: 1.0.4 + resolution: "@cnakazawa/watch@npm:1.0.4" + dependencies: + exec-sh: ^0.3.2 + minimist: ^1.2.0 + bin: + watch: cli.js + checksum: 7909f89bbee917b2a5932fd178b48b5291f417293538b1e8e68a5fa5815b3d6d4873c591d965f84559cd3e7b669c42a749ab706ef792368de39b95541ae4627d + languageName: node + linkType: hard + +"@csstools/convert-colors@npm:^1.4.0": + version: 1.4.0 + resolution: "@csstools/convert-colors@npm:1.4.0" + checksum: c8c8e6b5b3c2ae7e2c4a0ff376b79e09c8e350f3a3973eee8d42372f3e49d41c43172087c426e33fefdb9057de8a6f23cabf31e6201adce3f78d4b25e1722b50 + languageName: node + linkType: hard + +"@csstools/normalize.css@npm:^10.1.0": + version: 10.1.0 + resolution: "@csstools/normalize.css@npm:10.1.0" + checksum: 75d6c92d2ed1c643dd3f33c07feda78983790717c1b03c8b6a35215feac571d1d79e65a3668774eb420bd352651a2c33afd53cd580a25e93b6c6fd8bb0756071 + languageName: node + linkType: hard + +"@docsearch/css@npm:^1.0.0-alpha.27": + version: 1.0.0-alpha.27 + resolution: "@docsearch/css@npm:1.0.0-alpha.27" + checksum: ac8adcaac81f05d41895be795b29747b0d2c14c180382dae60f747ea371efa08a534964003979753594803ff655a4230ab1e2b6eaba26ed4c57f9ba022cce2d3 + languageName: node + linkType: hard + +"@docsearch/react@npm:^1.0.0-alpha.25": + version: 1.0.0-alpha.27 + resolution: "@docsearch/react@npm:1.0.0-alpha.27" + dependencies: + "@docsearch/css": ^1.0.0-alpha.27 + "@francoischalifour/autocomplete-core": ^1.0.0-alpha.27 + "@francoischalifour/autocomplete-preset-algolia": ^1.0.0-alpha.27 + algoliasearch: ^4.0.0 + peerDependencies: + react: ^16.8.0 + react-dom: ^16.8.0 + checksum: abc9d2560118d3ac3edea1c67d184690308f1792781e3ec7d7fd34983af958ab69e512275c6265cf8515a2b3405384953ece16776998a088e7ab5b0fdcaa6d76 + languageName: node + linkType: hard + +"@docusaurus/core@npm:2.0.0-alpha.61, @docusaurus/core@npm:^2.0.0-alpha.61": + version: 2.0.0-alpha.61 + resolution: "@docusaurus/core@npm:2.0.0-alpha.61" + dependencies: + "@babel/core": ^7.9.0 + "@babel/plugin-proposal-nullish-coalescing-operator": ^7.10.1 + "@babel/plugin-proposal-optional-chaining": ^7.10.3 + "@babel/plugin-syntax-dynamic-import": ^7.8.3 + "@babel/plugin-transform-runtime": ^7.9.0 + "@babel/preset-env": ^7.9.0 + "@babel/preset-react": ^7.9.4 + "@babel/preset-typescript": ^7.9.0 + "@babel/runtime": ^7.9.2 + "@babel/runtime-corejs3": ^7.10.4 + "@docusaurus/types": ^2.0.0-alpha.61 + "@docusaurus/utils": ^2.0.0-alpha.61 + "@endiliey/static-site-generator-webpack-plugin": ^4.0.0 + "@hapi/joi": ^17.1.1 + "@svgr/webpack": ^5.4.0 + babel-loader: ^8.1.0 + babel-plugin-dynamic-import-node: ^2.3.0 + boxen: ^4.2.0 + cache-loader: ^4.1.0 + chalk: ^3.0.0 + chokidar: ^3.3.0 + commander: ^4.0.1 + copy-webpack-plugin: ^5.0.5 + core-js: ^2.6.5 + css-loader: ^3.4.2 + del: ^5.1.0 + detect-port: ^1.3.0 + eta: ^1.1.1 + express: ^4.17.1 + file-loader: ^6.0.0 + fs-extra: ^8.1.0 + globby: ^10.0.1 + html-minifier-terser: ^5.0.5 + html-tags: ^3.1.0 + html-webpack-plugin: ^4.0.4 + import-fresh: ^3.2.1 + inquirer: ^7.2.0 + is-root: ^2.1.0 + lodash: ^4.5.2 + lodash.has: ^4.5.2 + lodash.isplainobject: ^4.0.6 + lodash.isstring: ^4.0.1 + mini-css-extract-plugin: ^0.8.0 + nprogress: ^0.2.0 + null-loader: ^3.0.0 + optimize-css-assets-webpack-plugin: ^5.0.3 + pnp-webpack-plugin: ^1.6.4 + postcss-loader: ^3.0.0 + postcss-preset-env: ^6.7.0 + react-dev-utils: ^10.2.1 + react-helmet: ^6.0.0-beta + react-loadable: ^5.5.0 + react-loadable-ssr-addon: ^0.2.3 + react-router: ^5.1.2 + react-router-config: ^5.1.1 + react-router-dom: ^5.1.2 + resolve-pathname: ^3.0.0 + semver: ^6.3.0 + serve-handler: ^6.1.3 + shelljs: ^0.8.4 + std-env: ^2.2.1 + terser-webpack-plugin: ^2.3.5 + update-notifier: ^4.1.0 + url-loader: ^4.1.0 + wait-file: ^1.0.5 + webpack: ^4.41.2 + webpack-bundle-analyzer: ^3.6.1 + webpack-dev-server: ^3.11.0 + webpack-merge: ^4.2.2 + webpackbar: ^4.0.0 + peerDependencies: + react: ^16.8.4 + react-dom: ^16.8.4 + bin: + docusaurus: bin/docusaurus.js + checksum: 33988b122f8e89ca4292926dfdcbfeb9c9e6dbe781e1a4419ecbf41d91771701e66eba6c8563f8208879c2a0fb2ac8fc2ac946a5c975ec18cfba4edefe250fac + languageName: node + linkType: hard + +"@docusaurus/mdx-loader@npm:^2.0.0-alpha.61": + version: 2.0.0-alpha.61 + resolution: "@docusaurus/mdx-loader@npm:2.0.0-alpha.61" + dependencies: + "@babel/parser": ^7.9.4 + "@babel/traverse": ^7.9.0 + "@docusaurus/core": ^2.0.0-alpha.61 + "@mdx-js/mdx": ^1.5.8 + "@mdx-js/react": ^1.5.8 + escape-html: ^1.0.3 + file-loader: ^6.0.0 + fs-extra: ^8.1.0 + github-slugger: ^1.3.0 + gray-matter: ^4.0.2 + loader-utils: ^1.2.3 + mdast-util-to-string: ^1.1.0 + remark-emoji: ^2.1.0 + stringify-object: ^3.3.0 + unist-util-visit: ^2.0.2 + url-loader: ^4.1.0 + checksum: 7c9f3e64ec4bbb1375265863521a11d19216426b6dbf68fb747656e92681101fc97f11397af67782ad29d9c2949fb723274ae0dbfc848522edcd6268b3e4550b + languageName: node + linkType: hard + +"@docusaurus/plugin-content-blog@npm:^2.0.0-alpha.61": + version: 2.0.0-alpha.61 + resolution: "@docusaurus/plugin-content-blog@npm:2.0.0-alpha.61" + dependencies: + "@docusaurus/core": ^2.0.0-alpha.61 + "@docusaurus/mdx-loader": ^2.0.0-alpha.61 + "@docusaurus/types": ^2.0.0-alpha.61 + "@docusaurus/utils": ^2.0.0-alpha.61 + "@docusaurus/utils-validation": ^2.0.0-alpha.61 + "@hapi/joi": ^17.1.1 + feed: ^4.1.0 + fs-extra: ^8.1.0 + globby: ^10.0.1 + loader-utils: ^1.2.3 + lodash.kebabcase: ^4.1.1 + reading-time: ^1.2.0 + remark-admonitions: ^1.2.1 + peerDependencies: + react: ^16.8.4 + react-dom: ^16.8.4 + checksum: d7fdeeb8a8b4e1215b5030c14a8f9001e3b7e323f788192c49e0739df3c74efae209083e568d6d8771b7f3f04ddb27e53d75ae652f1e3f0213f20bc97c8fe632 + languageName: node + linkType: hard + +"@docusaurus/plugin-content-docs@npm:^2.0.0-alpha.61": + version: 2.0.0-alpha.61 + resolution: "@docusaurus/plugin-content-docs@npm:2.0.0-alpha.61" + dependencies: + "@docusaurus/core": ^2.0.0-alpha.61 + "@docusaurus/mdx-loader": ^2.0.0-alpha.61 + "@docusaurus/types": ^2.0.0-alpha.61 + "@docusaurus/utils": ^2.0.0-alpha.61 + "@docusaurus/utils-validation": ^2.0.0-alpha.61 + "@hapi/joi": 17.1.1 + execa: ^3.4.0 + fs-extra: ^8.1.0 + globby: ^10.0.1 + import-fresh: ^3.2.1 + loader-utils: ^1.2.3 + lodash.flatmap: ^4.5.0 + lodash.groupby: ^4.6.0 + lodash.pick: ^4.4.0 + lodash.pickby: ^4.6.0 + lodash.sortby: ^4.6.0 + remark-admonitions: ^1.2.1 + shelljs: ^0.8.4 + peerDependencies: + react: ^16.8.4 + react-dom: ^16.8.4 + checksum: 1219ec8748421b06328bd35b35085318d7cf3d16777e018762eac3ba8ae05eb979dd5cd96ab064b366f59b53403bae54aec801a617c7fdc6a01c4f41d79385d5 + languageName: node + linkType: hard + +"@docusaurus/plugin-content-pages@npm:^2.0.0-alpha.61": + version: 2.0.0-alpha.61 + resolution: "@docusaurus/plugin-content-pages@npm:2.0.0-alpha.61" + dependencies: + "@docusaurus/mdx-loader": ^2.0.0-alpha.61 + "@docusaurus/types": ^2.0.0-alpha.61 + "@docusaurus/utils": ^2.0.0-alpha.61 + "@docusaurus/utils-validation": ^2.0.0-alpha.61 + "@hapi/joi": 17.1.1 + globby: ^10.0.1 + loader-utils: ^1.2.3 + remark-admonitions: ^1.2.1 + peerDependencies: + "@docusaurus/core": ^2.0.0 + react: ^16.8.4 + react-dom: ^16.8.4 + checksum: e3ad03eb9d94080480d1695ddc03b43c80711f91842f702c0900df789050fbf8f4ae564c8b364cf8cc861d215b02e9b24e850604bdbb2fa1e784fa2c8786381b + languageName: node + linkType: hard + +"@docusaurus/plugin-debug@npm:^2.0.0-alpha.61": + version: 2.0.0-alpha.61 + resolution: "@docusaurus/plugin-debug@npm:2.0.0-alpha.61" + dependencies: + "@docusaurus/types": ^2.0.0-alpha.61 + "@docusaurus/utils": ^2.0.0-alpha.61 + peerDependencies: + "@docusaurus/core": ^2.0.0 + react: ^16.8.4 + react-dom: ^16.8.4 + checksum: c1586a1b4887d0f62c5e2249fb467c67bd81ecf6357b08525da4ca0b1f25416405cac5ef001e9ece95cd6be1f4448d743b7415a5ddfd1b1e8e3cff6f15f294bb + languageName: node + linkType: hard + +"@docusaurus/plugin-google-analytics@npm:^2.0.0-alpha.61": + version: 2.0.0-alpha.61 + resolution: "@docusaurus/plugin-google-analytics@npm:2.0.0-alpha.61" + peerDependencies: + "@docusaurus/core": ^2.0.0 + checksum: 956986f04ceec93915998990f896093e50473d0f7b1d83140944842a19622cbae755aee5871eb8b106f923726691505cedbc3d9080aee4ecd215d6d30ecd1192 + languageName: node + linkType: hard + +"@docusaurus/plugin-google-gtag@npm:^2.0.0-alpha.61": + version: 2.0.0-alpha.61 + resolution: "@docusaurus/plugin-google-gtag@npm:2.0.0-alpha.61" + peerDependencies: + "@docusaurus/core": ^2.0.0 + checksum: 800008fd8fa1c272737c2878d465ea6664f24a79a0c35db44182b9762d949f717ba3139bf60fa3b0894361e629be37d3e64ef4cf981f4c5c30de447dbb9a7f7b + languageName: node + linkType: hard + +"@docusaurus/plugin-sitemap@npm:^2.0.0-alpha.61": + version: 2.0.0-alpha.61 + resolution: "@docusaurus/plugin-sitemap@npm:2.0.0-alpha.61" + dependencies: + "@docusaurus/types": ^2.0.0-alpha.61 + "@hapi/joi": 17.1.1 + fs-extra: ^8.1.0 + sitemap: ^3.2.2 + peerDependencies: + "@docusaurus/core": ^2.0.0 + checksum: f34b0f7f06be6da565bc50aacad1a7f6710ee641674eff97680fffeeb1afee28e403ca9341a3424db81d984c23afaa65a1d3211c5cba72007fb2880a091c864b + languageName: node + linkType: hard + +"@docusaurus/preset-classic@npm:2.0.0-alpha.61": + version: 2.0.0-alpha.61 + resolution: "@docusaurus/preset-classic@npm:2.0.0-alpha.61" + dependencies: + "@docusaurus/plugin-content-blog": ^2.0.0-alpha.61 + "@docusaurus/plugin-content-docs": ^2.0.0-alpha.61 + "@docusaurus/plugin-content-pages": ^2.0.0-alpha.61 + "@docusaurus/plugin-debug": ^2.0.0-alpha.61 + "@docusaurus/plugin-google-analytics": ^2.0.0-alpha.61 + "@docusaurus/plugin-google-gtag": ^2.0.0-alpha.61 + "@docusaurus/plugin-sitemap": ^2.0.0-alpha.61 + "@docusaurus/theme-classic": ^2.0.0-alpha.61 + "@docusaurus/theme-search-algolia": ^2.0.0-alpha.61 + peerDependencies: + "@docusaurus/core": ^2.0.0 + react: ^16.8.4 + react-dom: ^16.8.4 + checksum: 3ae7c3ae9450ed03672bbb483d14ff31ad6b44203855d623fb250aab7821639ffead6a2afec96140429052971b7809b10fb8167bcb327ce72f715018b15c03dc + languageName: node + linkType: hard + +"@docusaurus/theme-classic@npm:^2.0.0-alpha.61": + version: 2.0.0-alpha.61 + resolution: "@docusaurus/theme-classic@npm:2.0.0-alpha.61" + dependencies: + "@hapi/joi": ^17.1.1 + "@mdx-js/mdx": ^1.5.8 + "@mdx-js/react": ^1.5.8 + clsx: ^1.1.1 + copy-text-to-clipboard: ^2.2.0 + infima: 0.2.0-alpha.12 + lodash: ^4.17.19 + parse-numeric-range: ^0.0.2 + prism-react-renderer: ^1.1.0 + prismjs: ^1.20.0 + prop-types: ^15.7.2 + react-router-dom: ^5.1.2 + react-toggle: ^4.1.1 + peerDependencies: + "@docusaurus/core": ^2.0.0 + react: ^16.8.4 + react-dom: ^16.8.4 + checksum: 80c7d115456d58f12390da00e22df49f9a45b4e22f17b8a1138ad870b286b2281eb4d76e7167bdac0b45a502e8ec660daadebe41eb95f3092cc0be5fc58b6b59 + languageName: node + linkType: hard + +"@docusaurus/theme-search-algolia@npm:^2.0.0-alpha.61": + version: 2.0.0-alpha.61 + resolution: "@docusaurus/theme-search-algolia@npm:2.0.0-alpha.61" + dependencies: + "@docsearch/react": ^1.0.0-alpha.25 + "@hapi/joi": ^17.1.1 + algoliasearch: ^4.0.0 + algoliasearch-helper: ^3.1.1 + clsx: ^1.1.1 + eta: ^1.1.1 + peerDependencies: + "@docusaurus/core": ^2.0.0 + "@docusaurus/utils": 2.0.0-alpha.60 + react: ^16.8.4 + react-dom: ^16.8.4 + checksum: 964e58de4dbd06a066958b5bb353fee1a999a5bd3d18cd835ed0df938932c439669ec5c6ef73ca1c9f0488b202574bbb288975acaf5bac7553ca57f7c0fd9c32 + languageName: node + linkType: hard + +"@docusaurus/types@npm:^2.0.0-alpha.61": + version: 2.0.0-alpha.61 + resolution: "@docusaurus/types@npm:2.0.0-alpha.61" + dependencies: + "@types/webpack": ^4.41.0 + commander: ^4.0.1 + querystring: 0.2.0 + webpack-merge: ^4.2.2 + checksum: 8ae4af00abd47fe9b6017295f2daa1af3937b9c4eca319ddee8b144f03120f97012c0269dc1a8320862eb69a4614df4b66054edaff806d3a1f6118c258b45ca8 + languageName: node + linkType: hard + +"@docusaurus/utils-validation@npm:^2.0.0-alpha.61": + version: 2.0.0-alpha.61 + resolution: "@docusaurus/utils-validation@npm:2.0.0-alpha.61" + dependencies: + "@hapi/joi": 17.1.1 + checksum: ee41551653e5c07ae63d74cf8050daf5a776a1eee4cdbdf4ee5425c205f2855ccbb747433ddff696e9b731c48e84f2dda0eff53aa9f0087dd8ce1268ddb595bc + languageName: node + linkType: hard + +"@docusaurus/utils@npm:^2.0.0-alpha.61": + version: 2.0.0-alpha.61 + resolution: "@docusaurus/utils@npm:2.0.0-alpha.61" + dependencies: + escape-string-regexp: ^2.0.0 + fs-extra: ^8.1.0 + gray-matter: ^4.0.2 + lodash.camelcase: ^4.3.0 + lodash.kebabcase: ^4.1.1 + resolve-pathname: ^3.0.0 + checksum: 0d42697d7db20245fbcbff2613d56b4a37320f3bd2a8a57e7380741ca7181efcccbb73b0f485f45ef492acb747be93888996fb6a214c0ab8851c7fb28039d22e + languageName: node + linkType: hard + +"@emotion/hash@npm:^0.8.0": + version: 0.8.0 + resolution: "@emotion/hash@npm:0.8.0" + checksum: 8fd781e18428745d6c7121bebf3965cad12c61f3bd5fb773e46f16f1d7b7ae1346770df438fcfe8bc73ecf6762a54baef7cf259a694575d4f06cabb79ebcf7c0 + languageName: node + linkType: hard + +"@endiliey/static-site-generator-webpack-plugin@npm:^4.0.0": + version: 4.0.0 + resolution: "@endiliey/static-site-generator-webpack-plugin@npm:4.0.0" + dependencies: + bluebird: ^3.7.1 + cheerio: ^0.22.0 + eval: ^0.1.4 + url: ^0.11.0 + webpack-sources: ^1.4.3 + checksum: 094e9800fe9050ed4ac1ce3617f6e011cab6fb0aebe601d49c8d7e6c2386c498c919920941a37194c5517a9c42d3abcd68753fe8d93e4506b3c6cd3969c7696a + languageName: node + linkType: hard + +"@evocateur/libnpmaccess@npm:^3.1.2": + version: 3.1.2 + resolution: "@evocateur/libnpmaccess@npm:3.1.2" + dependencies: + "@evocateur/npm-registry-fetch": ^4.0.0 + aproba: ^2.0.0 + figgy-pudding: ^3.5.1 + get-stream: ^4.0.0 + npm-package-arg: ^6.1.0 + checksum: 4c28e32c32d9670d4705a11c76e5b2376cbd6553b3ad2b51ebf237cffde357918b75223c2919fc7e2f0a5f9c6d6ba293f1846e0a98c793636c78bfced11c03f6 + languageName: node + linkType: hard + +"@evocateur/libnpmpublish@npm:^1.2.2": + version: 1.2.2 + resolution: "@evocateur/libnpmpublish@npm:1.2.2" + dependencies: + "@evocateur/npm-registry-fetch": ^4.0.0 + aproba: ^2.0.0 + figgy-pudding: ^3.5.1 + get-stream: ^4.0.0 + lodash.clonedeep: ^4.5.0 + normalize-package-data: ^2.4.0 + npm-package-arg: ^6.1.0 + semver: ^5.5.1 + ssri: ^6.0.1 + checksum: 396cb21782458b9bd5d9bb1f564bcdb5686329a3748896667e5281c25a08508bc247d693e1dfb6afb5c12949519407db8c85be6259175a634bec5fd9237da9fc + languageName: node + linkType: hard + +"@evocateur/npm-registry-fetch@npm:^4.0.0": + version: 4.0.0 + resolution: "@evocateur/npm-registry-fetch@npm:4.0.0" + dependencies: + JSONStream: ^1.3.4 + bluebird: ^3.5.1 + figgy-pudding: ^3.4.1 + lru-cache: ^5.1.1 + make-fetch-happen: ^5.0.0 + npm-package-arg: ^6.1.0 + safe-buffer: ^5.1.2 + checksum: 2df76e74cd272796ae620b06d0ec8c84d5a686d3bc74f0e748d218be3e6f6d99c2b317b7e32e5aae376199b71451edd2f8a443b81c0f66e15151f9b0e9dc1320 + languageName: node + linkType: hard + +"@evocateur/pacote@npm:^9.6.3": + version: 9.6.5 + resolution: "@evocateur/pacote@npm:9.6.5" + dependencies: + "@evocateur/npm-registry-fetch": ^4.0.0 + bluebird: ^3.5.3 + cacache: ^12.0.3 + chownr: ^1.1.2 + figgy-pudding: ^3.5.1 + get-stream: ^4.1.0 + glob: ^7.1.4 + infer-owner: ^1.0.4 + lru-cache: ^5.1.1 + make-fetch-happen: ^5.0.0 + minimatch: ^3.0.4 + minipass: ^2.3.5 + mississippi: ^3.0.0 + mkdirp: ^0.5.1 + normalize-package-data: ^2.5.0 + npm-package-arg: ^6.1.0 + npm-packlist: ^1.4.4 + npm-pick-manifest: ^3.0.0 + osenv: ^0.1.5 + promise-inflight: ^1.0.1 + promise-retry: ^1.1.1 + protoduck: ^5.0.1 + rimraf: ^2.6.3 + safe-buffer: ^5.2.0 + semver: ^5.7.0 + ssri: ^6.0.1 + tar: ^4.4.10 + unique-filename: ^1.1.1 + which: ^1.3.1 + checksum: 97477b1b47cbd0d7d68a267d88193e85d6d624494fbb3c2f7a61c96aca2834b71ae28e2d6b9ab967212188f25574f65d73be58d5c76c27004525a44327f5072d + languageName: node + linkType: hard + +"@examples/accounts-boost@workspace:examples/accounts-boost": + version: 0.0.0-use.local + resolution: "@examples/accounts-boost@workspace:examples/accounts-boost" + dependencies: + "@accounts/boost": ^0.29.0 + "@graphql-tools/merge": 6.0.11 + apollo-link-context: 1.0.20 + apollo-link-http: 1.5.17 + apollo-server: 2.14.4 + graphql: 14.6.0 + graphql-tools: 5.0.0 + lodash: 4.17.15 + node-fetch: 2.6.0 + nodemon: 2.0.3 + ts-node: 8.10.1 + tslib: 2.0.0 + typescript: 3.8.3 + languageName: unknown + linkType: soft + +"@examples/graphql-server-typescript@workspace:examples/graphql-server-typescript": + version: 0.0.0-use.local + resolution: "@examples/graphql-server-typescript@workspace:examples/graphql-server-typescript" + dependencies: + "@accounts/database-manager": ^0.29.0 + "@accounts/graphql-api": ^0.29.0 + "@accounts/mongo": ^0.29.0 + "@accounts/password": ^0.29.0 + "@accounts/rest-express": ^0.29.0 + "@accounts/server": ^0.29.0 + "@graphql-modules/core": 0.7.17 + "@graphql-tools/merge": 6.0.11 + "@types/mongoose": 5.7.32 + "@types/node": 14.0.13 + apollo-server: 2.16.0 + graphql: 14.6.0 + lodash: 4.17.19 + mongoose: 5.9.25 + nodemon: 2.0.4 + ts-node: 8.10.2 + tslib: 2.0.0 + typescript: 3.9.7 + languageName: unknown + linkType: soft + +"@examples/graphql-typeorm-typescript@workspace:examples/graphql-server-typeorm-postgres": + version: 0.0.0-use.local + resolution: "@examples/graphql-typeorm-typescript@workspace:examples/graphql-server-typeorm-postgres" + dependencies: + "@accounts/graphql-api": ^0.29.0 + "@accounts/password": ^0.29.0 + "@accounts/server": ^0.29.0 + "@accounts/typeorm": ^0.29.0 + "@accounts/types": ^0.29.0 + "@graphql-modules/core": 0.7.17 + "@graphql-tools/merge": 6.0.11 + "@types/node": 14.0.13 + apollo-server: 2.14.4 + dotenv: ^8.2.0 + graphql: 14.6.0 + nodemon: 2.0.3 + pg: 8.1.0 + ts-node: 8.10.1 + typeorm: 0.2.25 + typescript: 3.8.3 + languageName: unknown + linkType: soft + +"@examples/react-graphql-typescript@workspace:examples/react-graphql-typescript": + version: 0.0.0-use.local + resolution: "@examples/react-graphql-typescript@workspace:examples/react-graphql-typescript" + dependencies: + "@accounts/apollo-link": ^0.29.0 + "@accounts/client": ^0.29.0 + "@accounts/client-password": ^0.29.0 + "@accounts/graphql-client": ^0.29.0 + "@apollo/client": 3.1.3 + "@material-ui/core": 4.11.0 + "@material-ui/styles": 4.10.0 + "@types/node": 14.0.13 + "@types/qrcode.react": 1.0.1 + "@types/react": 16.9.43 + "@types/react-dom": 16.9.8 + "@types/react-router": 5.1.8 + "@types/react-router-dom": 5.1.5 + graphql: 14.6.0 + graphql-tag: 2.10.4 + qrcode.react: 1.0.0 + react: 16.13.1 + react-dom: 16.13.1 + react-router-dom: 5.2.0 + react-scripts: 3.4.1 + tslib: 2.0.0 + typescript: 3.9.7 + languageName: unknown + linkType: soft + +"@examples/react-rest-typescript@workspace:examples/react-rest-typescript": + version: 0.0.0-use.local + resolution: "@examples/react-rest-typescript@workspace:examples/react-rest-typescript" + dependencies: + "@accounts/client": ^0.29.0 + "@accounts/client-password": ^0.29.0 + "@accounts/rest-client": ^0.29.0 + "@material-ui/core": 4.9.13 + "@material-ui/icons": 4.9.1 + "@material-ui/lab": 4.0.0-alpha.50 + "@material-ui/styles": 4.9.13 + "@types/node": 14.0.13 + "@types/qrcode.react": 1.0.0 + "@types/react": 16.9.36 + "@types/react-dom": 16.9.8 + "@types/react-router": 5.1.7 + "@types/react-router-dom": 5.1.5 + formik: 2.1.4 + qrcode.react: 1.0.0 + react: 16.13.1 + react-dom: 16.13.1 + react-router-dom: 5.1.2 + react-scripts: 3.4.1 + tslib: 2.0.0 + typescript: 3.7.5 + languageName: unknown + linkType: soft + +"@examples/rest-express-typescript@workspace:examples/rest-express-typescript": + version: 0.0.0-use.local + resolution: "@examples/rest-express-typescript@workspace:examples/rest-express-typescript" + dependencies: + "@accounts/mongo": ^0.29.0 + "@accounts/password": ^0.29.0 + "@accounts/rest-express": ^0.29.0 + "@accounts/server": ^0.29.0 + "@types/node": 14.0.13 + body-parser: 1.19.0 + cors: 2.8.5 + express: 4.17.1 + mongoose: 5.9.13 + nodemon: 2.0.3 + ts-node: 8.10.1 + tslib: 2.0.0 + typescript: 3.8.3 + languageName: unknown + linkType: soft + +"@francoischalifour/autocomplete-core@npm:^1.0.0-alpha.27": + version: 1.0.0-alpha.27 + resolution: "@francoischalifour/autocomplete-core@npm:1.0.0-alpha.27" + checksum: a914e13097743865e7c0617ad1eecd243ceb4919ca44805b4803b6aae5ab4cabe8bdbc990d180cff67c94404650b4be029931f60c0c3c01ef2dfe15538a1e36b + languageName: node + linkType: hard + +"@francoischalifour/autocomplete-preset-algolia@npm:^1.0.0-alpha.27": + version: 1.0.0-alpha.27 + resolution: "@francoischalifour/autocomplete-preset-algolia@npm:1.0.0-alpha.27" + checksum: e4ea94416af1d09addca0580411ba4d18ba1f6af168d7b25ce203c091f0564fa29ddf0762e20925f82dedf61eba04cf5aed648cdb82934e4f60ec011337d3438 + languageName: node + linkType: hard + +"@graphql-codegen/add@npm:1.17.7": + version: 1.17.7 + resolution: "@graphql-codegen/add@npm:1.17.7" + dependencies: + "@graphql-codegen/plugin-helpers": 1.17.7 + tslib: ~2.0.0 + peerDependencies: + graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: 939852ad8bb0cfda27339685ebabc7c773f43ec7cc3ca0edc1cbf5ac4f76b1c14aec2b3221bb199b636d600d21b3ac9c8c73568a18f64fc2658e253343b72b3d + languageName: node + linkType: hard + +"@graphql-codegen/cli@npm:1.17.7": + version: 1.17.7 + resolution: "@graphql-codegen/cli@npm:1.17.7" + dependencies: + "@graphql-codegen/core": 1.17.7 + "@graphql-codegen/plugin-helpers": 1.17.7 + "@graphql-tools/apollo-engine-loader": ^6.0.0 + "@graphql-tools/code-file-loader": ^6.0.0 + "@graphql-tools/git-loader": ^6.0.0 + "@graphql-tools/github-loader": ^6.0.0 + "@graphql-tools/graphql-file-loader": ^6.0.0 + "@graphql-tools/json-file-loader": ^6.0.0 + "@graphql-tools/load": ^6.0.0 + "@graphql-tools/prisma-loader": ^6.0.0 + "@graphql-tools/url-loader": ^6.0.0 + "@graphql-tools/utils": ^6.0.0 + ansi-escapes: 4.3.1 + camel-case: 4.1.1 + chalk: 4.1.0 + chokidar: 3.4.1 + common-tags: 1.8.0 + constant-case: 3.0.3 + cosmiconfig: 7.0.0 + debounce: 1.2.0 + dependency-graph: 0.9.0 + detect-indent: 6.0.0 + glob: 7.1.6 + graphql-config: ^3.0.2 + indent-string: 4.0.0 + inquirer: 7.3.3 + is-glob: 4.0.1 + json-to-pretty-yaml: 1.2.2 + listr: 0.14.3 + listr-update-renderer: 0.5.0 + log-symbols: 4.0.0 + lower-case: 2.0.1 + minimatch: 3.0.4 + mkdirp: 1.0.4 + pascal-case: 3.1.1 + request: 2.88.2 + string-env-interpolation: 1.0.1 + ts-log: 2.1.4 + tslib: ^2.0.0 + upper-case: 2.0.1 + valid-url: 1.0.9 + wrap-ansi: 7.0.0 + yargs: 15.4.1 + peerDependencies: + graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + bin: + gql-gen: bin.js + graphql-code-generator: bin.js + graphql-codegen: bin.js + checksum: fb03ea0c9e3209e41db6e68792f3f00fcca6083b6c5e09e4fefc119b3d4a25d71f7377782249e04dee473498fb68c76478cda082e173c75ee23df95354b22dae + languageName: node + linkType: hard + +"@graphql-codegen/core@npm:1.17.7": + version: 1.17.7 + resolution: "@graphql-codegen/core@npm:1.17.7" + dependencies: + "@graphql-codegen/plugin-helpers": 1.17.7 + "@graphql-tools/merge": ^6.0.0 + "@graphql-tools/utils": ^6.0.0 + tslib: ~2.0.0 + peerDependencies: + graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: 4aaa011255bc6ad984417d4df7f3ac66fec4057959ca41ab4eb88e8fdaecfdafe293928790559c4a38a463bb42ac30f36557860b2c413650f6595505ff7430f2 + languageName: node + linkType: hard + +"@graphql-codegen/introspection@npm:1.17.7": + version: 1.17.7 + resolution: "@graphql-codegen/introspection@npm:1.17.7" + dependencies: + "@graphql-codegen/plugin-helpers": 1.17.7 + tslib: ~2.0.0 + peerDependencies: + graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: 993c2ad9bd77505af191744e8f51fe224b2f25a6f1276e1c44e7ab30278dddadde705d58413453f5fde6b340db4cbd52f0e9a513edb3380b33405964c7b88a2d + languageName: node + linkType: hard + +"@graphql-codegen/plugin-helpers@npm:1.17.7, @graphql-codegen/plugin-helpers@npm:^1.17.7": + version: 1.17.7 + resolution: "@graphql-codegen/plugin-helpers@npm:1.17.7" + dependencies: + "@graphql-tools/utils": ^6.0.0 + camel-case: 4.1.1 + common-tags: 1.8.0 + constant-case: 3.0.3 + import-from: 3.0.0 + lodash: ~4.17.15 + lower-case: 2.0.1 + param-case: 3.0.3 + pascal-case: 3.1.1 + tslib: ~2.0.0 + upper-case: 2.0.1 + peerDependencies: + graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: e7017c2f9c5858b8f02f20a08ced628dab0d48f69f8182aa9ed1dd7588b74c1b36783f4b12dc8bf355f60d3260fa3ff6418ceeb1034654bc5f9657560e4da44f + languageName: node + linkType: hard + +"@graphql-codegen/typed-document-node@npm:1.17.8": + version: 1.17.8 + resolution: "@graphql-codegen/typed-document-node@npm:1.17.8" + dependencies: + "@graphql-codegen/plugin-helpers": ^1.17.7 + "@graphql-codegen/visitor-plugin-common": ^1.17.12 + auto-bind: ~4.0.0 + change-case: ^4.1.1 + tslib: ~2.0.0 + peerDependencies: + graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: a21e9c071f1cb67925d8967415f6778d85a0fb5f124d2abdfbedd50efaa7c55e49187d44ab39ea7bb199dcb26b4c49497f5f3217bc06fe5ca85e2f767ba0eadb + languageName: node + linkType: hard + +"@graphql-codegen/typescript-operations@npm:1.17.7": + version: 1.17.7 + resolution: "@graphql-codegen/typescript-operations@npm:1.17.7" + dependencies: + "@graphql-codegen/plugin-helpers": 1.17.7 + "@graphql-codegen/typescript": 1.17.7 + "@graphql-codegen/visitor-plugin-common": 1.17.7 + auto-bind: ~4.0.0 + tslib: ~2.0.0 + peerDependencies: + graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: f4bf938eb8e5bc97cb0b2b071ae55bf7c5f8d8a644b5227ee7857b3b0fa159d0973e671e8e7c5d9832f9637bde0e2d3321bf05b89a2bfa633c013c30af39cfc5 + languageName: node + linkType: hard + +"@graphql-codegen/typescript-resolvers@npm:1.17.7": + version: 1.17.7 + resolution: "@graphql-codegen/typescript-resolvers@npm:1.17.7" + dependencies: + "@graphql-codegen/plugin-helpers": 1.17.7 + "@graphql-codegen/typescript": 1.17.7 + "@graphql-codegen/visitor-plugin-common": 1.17.7 + "@graphql-tools/utils": ^6.0.0 + auto-bind: ~4.0.0 + tslib: ~2.0.0 + peerDependencies: + graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: 727f258ca6bc28e7658c32bac70f52bc653c49db3ac29498654bd265c09eb00e632c310e2cb7abc79b8f226bb950ac9abf4d7976ae987945643df564babba55c + languageName: node + linkType: hard + +"@graphql-codegen/typescript-type-graphql@npm:1.17.7": + version: 1.17.7 + resolution: "@graphql-codegen/typescript-type-graphql@npm:1.17.7" + dependencies: + "@graphql-codegen/plugin-helpers": 1.17.7 + "@graphql-codegen/typescript": 1.17.7 + "@graphql-codegen/visitor-plugin-common": 1.17.7 + auto-bind: ~4.0.0 + tslib: ~2.0.0 + peerDependencies: + graphql: ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: c1a5419737e7886bb36faedf66e700638023efb41c193fe884e5c02dd54faee8735500eaec3fb10d4d7a0a026c221124577432aaa59194d895925f5eb8248000 + languageName: node + linkType: hard + +"@graphql-codegen/typescript@npm:1.17.7": + version: 1.17.7 + resolution: "@graphql-codegen/typescript@npm:1.17.7" + dependencies: + "@graphql-codegen/plugin-helpers": 1.17.7 + "@graphql-codegen/visitor-plugin-common": 1.17.7 + auto-bind: ~4.0.0 + tslib: ~2.0.0 + peerDependencies: + graphql: ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: 9bdcf342840cce418fa05f4540f3864e9dbd577a386b44162419231525aca1a2adb8f7bbf21b1698aa838fb5eb83a40b940ac5a2c85f03c019614c4f2fca7f87 + languageName: node + linkType: hard + +"@graphql-codegen/visitor-plugin-common@npm:1.17.7": + version: 1.17.7 + resolution: "@graphql-codegen/visitor-plugin-common@npm:1.17.7" + dependencies: + "@graphql-codegen/plugin-helpers": 1.17.7 + "@graphql-tools/relay-operation-optimizer": 6.0.15 + array.prototype.flatmap: 1.2.3 + auto-bind: ~4.0.0 + dependency-graph: 0.9.0 + graphql-tag: 2.11.0 + parse-filepath: 1.0.2 + pascal-case: 3.1.1 + tslib: ~2.0.0 + peerDependencies: + graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: 4e35d412e47ea034e4e20175b982ca5828e03d39412c3c19829a0d3a8bc8ad5a49d70d80b1acf8dd13548b5607bd707c64a6ce2da5e22deeed80b0760b39d3a1 + languageName: node + linkType: hard + +"@graphql-codegen/visitor-plugin-common@npm:^1.17.12": + version: 1.17.12 + resolution: "@graphql-codegen/visitor-plugin-common@npm:1.17.12" + dependencies: + "@graphql-codegen/plugin-helpers": ^1.17.7 + "@graphql-tools/relay-operation-optimizer": 6.0.15 + array.prototype.flatmap: ^1.2.3 + auto-bind: ~4.0.0 + dependency-graph: ^0.9.0 + graphql-tag: ^2.11.0 + parse-filepath: ^1.0.2 + pascal-case: ^3.1.1 + tslib: ~2.0.0 + peerDependencies: + graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: ed1ab53c584dd727a5000f3c63e820c03a23ba30f5f7c1a4198e1f57e6e656bb212acdf656d0a27e9ddc253c22bc7d88f931916a0db101b0b310e96bee5db72e + languageName: node + linkType: hard + +"@graphql-modules/core@npm:0.7.17": + version: 0.7.17 + resolution: "@graphql-modules/core@npm:0.7.17" + dependencies: + "@graphql-modules/di": 0.7.17 + "@graphql-toolkit/common": 0.10.6 + "@graphql-toolkit/schema-merging": 0.10.6 + apollo-server-caching: 0.5.1 + deepmerge: 4.2.2 + graphql-tools: 5.0.0 + tslib: 2.0.0 + peerDependencies: + graphql: ^14.1.1 || ^15.0.0 + checksum: 9fc9f20cc5141dd7620fd154793beb95c98e12b3871ec55fe7adb2c92407f9423c78da8882cdc50ecd11c0101045fc587a16a4dcef7e7b079069213c92e6f8bd + languageName: node + linkType: hard + +"@graphql-modules/di@npm:0.7.17": + version: 0.7.17 + resolution: "@graphql-modules/di@npm:0.7.17" + dependencies: + events: 3.1.0 + tslib: 2.0.0 + peerDependencies: + reflect-metadata: ^0.1.12 + checksum: a0c6d85dcfdd023a108a0093f5fc19f08875b5c847d6a1ecc4038347ff4bb8ad8e5a7df5b821269c41fb7906179fc2ab800601889e387ea4a31265794ed20276 + languageName: node + linkType: hard + +"@graphql-toolkit/common@npm:0.10.6": + version: 0.10.6 + resolution: "@graphql-toolkit/common@npm:0.10.6" + dependencies: + aggregate-error: 3.0.1 + camel-case: 4.1.1 + graphql-tools: 5.0.0 + lodash: 4.17.15 + peerDependencies: + graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: 8c828d49d200fd2462f36bc7cb346d823b60ac8d6875971bda6a102d82c53e8a95d63dfe3bc5696f81db8302a22861150ca09491271c3836d07dab213055b658 + languageName: node + linkType: hard + +"@graphql-toolkit/schema-merging@npm:0.10.6": + version: 0.10.6 + resolution: "@graphql-toolkit/schema-merging@npm:0.10.6" + dependencies: + "@graphql-toolkit/common": 0.10.6 + deepmerge: 4.2.2 + graphql-tools: 5.0.0 + tslib: 1.11.1 + peerDependencies: + graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: 511f096b75e596e0cedf5ed85ca81e2b127fdc4be064e2eccd728a785d55f34abcf9a0c6884674958c5dc331d993eeac65ae0b376324c603b81dab956dda9f9b + languageName: node + linkType: hard + +"@graphql-tools/apollo-engine-loader@npm:^6.0.0": + version: 6.0.16 + resolution: "@graphql-tools/apollo-engine-loader@npm:6.0.16" + dependencies: + "@graphql-tools/utils": 6.0.16 + cross-fetch: 3.0.5 + tslib: ~2.0.0 + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 + checksum: 4d9a7ad99f86bc7f088ff46d2a67e1abc133e5a5e31929256ab282de160b188a5c1149ade239a4fddbb44c76cfb4b29ac627bddfb5000b12cd5f085057ff9cc7 + languageName: node + linkType: hard + +"@graphql-tools/code-file-loader@npm:^6.0.0": + version: 6.0.16 + resolution: "@graphql-tools/code-file-loader@npm:6.0.16" + dependencies: + "@graphql-tools/graphql-tag-pluck": 6.0.16 + "@graphql-tools/utils": 6.0.16 + fs-extra: 9.0.1 + tslib: ~2.0.0 + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 + checksum: c672c7d42d68140e85eca860469e002bdf433045fa8bc5fb98c2615d28ed82afedcbd79ccf1fbd04d1b3f8b38ce45162975c14cdeefdd015c415e750ea5f7e41 + languageName: node + linkType: hard + +"@graphql-tools/delegate@npm:6.0.16": + version: 6.0.16 + resolution: "@graphql-tools/delegate@npm:6.0.16" + dependencies: + "@ardatan/aggregate-error": 0.0.1 + "@graphql-tools/schema": 6.0.16 + "@graphql-tools/utils": 6.0.16 + tslib: ~2.0.0 + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 + checksum: 1f500c3ec28395e1950ec6858a6e50bae1002fe4031314717536c763c9c8337d2347fd0737889c41266bea59ddf3418bf29c8eb9fbbea2681afa4427c804a34f + languageName: node + linkType: hard + +"@graphql-tools/git-loader@npm:^6.0.0": + version: 6.0.16 + resolution: "@graphql-tools/git-loader@npm:6.0.16" + dependencies: + "@graphql-tools/graphql-tag-pluck": 6.0.16 + "@graphql-tools/utils": 6.0.16 + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 + checksum: f827f418abee261e612049bda8ac87bf832f4433c74fa806846db6761497702561758eb697085287553b80b8e93c32c7b462e9dc0951558fd5c12abf3e81489c + languageName: node + linkType: hard + +"@graphql-tools/github-loader@npm:^6.0.0": + version: 6.0.16 + resolution: "@graphql-tools/github-loader@npm:6.0.16" + dependencies: + "@graphql-tools/graphql-tag-pluck": 6.0.16 + "@graphql-tools/utils": 6.0.16 + cross-fetch: 3.0.5 + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 + checksum: d97471b617143db724866f4132ea19af6997e356851d2620b9ac1cff45b7c46cf6cb2c1eb4f7140be63639375b856514e36b6bb4572f7d456f49b8ddda62acd2 + languageName: node + linkType: hard + +"@graphql-tools/graphql-file-loader@npm:^6.0.0": + version: 6.0.16 + resolution: "@graphql-tools/graphql-file-loader@npm:6.0.16" + dependencies: + "@graphql-tools/import": 6.0.16 + "@graphql-tools/utils": 6.0.16 + fs-extra: 9.0.1 + tslib: ~2.0.0 + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 + checksum: 70590463a1367028d5d6dbc730c6dba9834a3e6cd6f44c5d8d477da74d6a5bb8f733e394f33ba3ff9dc7004e40e905f5dcf84e6d9261938012a035c88e249e80 + languageName: node + linkType: hard + +"@graphql-tools/graphql-tag-pluck@npm:6.0.16": + version: 6.0.16 + resolution: "@graphql-tools/graphql-tag-pluck@npm:6.0.16" + dependencies: + "@babel/parser": 7.11.1 + "@babel/traverse": 7.11.0 + "@babel/types": 7.11.0 + "@graphql-tools/utils": 6.0.16 + vue-template-compiler: ^2.6.11 + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 + dependenciesMeta: + vue-template-compiler: + optional: true + checksum: 5ec2d9f89d76c9c2a9370679667acf68b7cac5003aa02f5633daf54bc40c5f4c80f09b4f139dc3b46e28c8dcfe4311887bb9d7163f167b97a2763dcf94bf0a82 + languageName: node + linkType: hard + +"@graphql-tools/import@npm:6.0.16": + version: 6.0.16 + resolution: "@graphql-tools/import@npm:6.0.16" + dependencies: + fs-extra: 9.0.1 + resolve-from: 5.0.0 + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 + checksum: bfe2ca95bea4ee15bb5deaa7bb778a2063c3580cd10c004dddf82abb3ef978761f4e8af8a168aee674bba680a1284d8b14f281d73aa393850a45848efe4cba9d + languageName: node + linkType: hard + +"@graphql-tools/json-file-loader@npm:^6.0.0": + version: 6.0.16 + resolution: "@graphql-tools/json-file-loader@npm:6.0.16" + dependencies: + "@graphql-tools/utils": 6.0.16 + fs-extra: 9.0.1 + tslib: ~2.0.0 + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 + checksum: ba92d09a4076afb4da47c0c89d8dd5c27e36c3783baaf68ebfa36d6923a018da2fccce06aa9e0b2b4f34135d92c0c469cdd398058cea85fe93aa9ee9ef5bee3f + languageName: node + linkType: hard + +"@graphql-tools/load@npm:^6.0.0": + version: 6.0.16 + resolution: "@graphql-tools/load@npm:6.0.16" + dependencies: + "@graphql-tools/merge": 6.0.16 + "@graphql-tools/utils": 6.0.16 + globby: 11.0.1 + import-from: 3.0.0 + is-glob: 4.0.1 + p-limit: 3.0.2 + tslib: ~2.0.0 + unixify: 1.0.0 + valid-url: 1.0.9 + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 + checksum: 6d38798d04d5c0ff512afb4f87334cb5b1b0e805a4bb1c52347462b3f44169d236bcc44aebdaa89c40786b5428489f05b0c05180efbc51f00c7f8e0765a5cdda + languageName: node + linkType: hard + +"@graphql-tools/merge@npm:6.0.11, @graphql-tools/merge@npm:^6.0.0": + version: 6.0.11 + resolution: "@graphql-tools/merge@npm:6.0.11" + dependencies: + "@graphql-tools/schema": 6.0.11 + "@graphql-tools/utils": 6.0.11 + tslib: ~2.0.0 + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 + checksum: 33d0d0d738077788c10647aa6e3a6c1d35e38f2d72e8c79bd62a32c551ef09618afb21a12a30c4bafcb3921506e33a843da0abd6bd380505276a84517b6063fb + languageName: node + linkType: hard + +"@graphql-tools/merge@npm:6.0.16": + version: 6.0.16 + resolution: "@graphql-tools/merge@npm:6.0.16" + dependencies: + "@graphql-tools/schema": 6.0.16 + "@graphql-tools/utils": 6.0.16 + tslib: ~2.0.0 + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 + checksum: a04a32353912abad88061c0779842c0530fbf1d49e56e60442b4bb8f1628e400c844a63b2a47383fcfce46b6cf1f290971644345b380e1e949ae083220cc98a9 + languageName: node + linkType: hard + +"@graphql-tools/prisma-loader@npm:^6.0.0": + version: 6.0.16 + resolution: "@graphql-tools/prisma-loader@npm:6.0.16" + dependencies: + "@graphql-tools/url-loader": 6.0.16 + "@graphql-tools/utils": 6.0.16 + "@types/http-proxy-agent": ^2.0.2 + "@types/js-yaml": ^3.12.5 + "@types/json-stable-stringify": ^1.0.32 + "@types/jsonwebtoken": ^8.5.0 + ajv: ^6.12.3 + bluebird: ^3.7.2 + chalk: ^4.1.0 + debug: ^4.1.1 + dotenv: ^8.2.0 + fs-extra: 9.0.1 + graphql-request: ^2.0.0 + http-proxy-agent: ^4.0.1 + https-proxy-agent: ^5.0.0 + isomorphic-fetch: ^2.2.1 + js-yaml: ^3.14.0 + json-stable-stringify: ^1.0.1 + jsonwebtoken: ^8.5.1 + lodash: ^4.17.19 + replaceall: ^0.1.6 + scuid: ^1.1.0 + tslib: ~2.0.0 + yaml-ast-parser: ^0.0.43 + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 + checksum: 3fdd468e63aae33eec2b0a4cf5bbf969de7d4d75756ad3eaed7b31d22ff57ef03e0e78bc2f101e8aa2097ad2a458b52b302431bbac2a2e9cbdabc5f9876827f0 + languageName: node + linkType: hard + +"@graphql-tools/relay-operation-optimizer@npm:6.0.15": + version: 6.0.15 + resolution: "@graphql-tools/relay-operation-optimizer@npm:6.0.15" + dependencies: + "@graphql-tools/utils": 6.0.15 + relay-compiler: 10.0.0 + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 + checksum: 2e8526e2bd61fd6e12186744fd1a5e693b17df0c12a39628d104ef1110fb6516def777c08e27c8827d47161a96ed695ecb57e3b1eca1689938a1ed6ea922de66 + languageName: node + linkType: hard + +"@graphql-tools/schema@npm:6.0.11": + version: 6.0.11 + resolution: "@graphql-tools/schema@npm:6.0.11" + dependencies: + "@graphql-tools/utils": 6.0.11 + tslib: ~2.0.0 + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 + checksum: aa1770ec0bee9dd9c1cfcefa9074dee17acc60d40a8d5c3b06736f1522c3c990c21181364ff8b24efa47fd45ed8d912711224cfdb017cc2407d1e4c59251c009 + languageName: node + linkType: hard + +"@graphql-tools/schema@npm:6.0.16": + version: 6.0.16 + resolution: "@graphql-tools/schema@npm:6.0.16" + dependencies: + "@graphql-tools/utils": 6.0.16 + tslib: ~2.0.0 + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 + checksum: c9faccc504e6a718e11517107512b349e1bfd7f85b5a70030a46897ced95154f9adfcc8ad39baffb597b347aad3b05c56d4eb4fd34825a7bf19561f0f58a5752 + languageName: node + linkType: hard + +"@graphql-tools/url-loader@npm:6.0.16, @graphql-tools/url-loader@npm:^6.0.0": + version: 6.0.16 + resolution: "@graphql-tools/url-loader@npm:6.0.16" + dependencies: + "@graphql-tools/delegate": 6.0.16 + "@graphql-tools/utils": 6.0.16 + "@graphql-tools/wrap": 6.0.16 + "@types/websocket": 1.0.1 + cross-fetch: 3.0.5 + subscriptions-transport-ws: 0.9.17 + tslib: ~2.0.0 + valid-url: 1.0.9 + websocket: 1.0.31 + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 + checksum: b02907838abcad21ad0f3ef815c3a171a4033874f09df17c81d7c713485bdb720675e3cbcf6bbcc375617e3aca510f185e16edf89c73b172b386b522266f5159 + languageName: node + linkType: hard + +"@graphql-tools/utils@npm:6.0.11": + version: 6.0.11 + resolution: "@graphql-tools/utils@npm:6.0.11" + dependencies: + "@ardatan/aggregate-error": 0.0.1 + camel-case: 4.1.1 + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 + checksum: 5dc40b64f6851f0fe403d8465005c67bbb1380a2819440b3ac7faa441b2fe15de0950436691aac6111358f522f6b09fb1aa550d44e51773a895bf104a977b253 + languageName: node + linkType: hard + +"@graphql-tools/utils@npm:6.0.15": + version: 6.0.15 + resolution: "@graphql-tools/utils@npm:6.0.15" + dependencies: + "@ardatan/aggregate-error": 0.0.1 + camel-case: 4.1.1 + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 + checksum: d68a753b32c7aead2cb47b1be00eac8d03659dfbc9f3aac0531b4820cc7179c37a7ab79724011a8a8c48428bddbf8808ac95a3fffac6b583b9fc3cd0609f2274 + languageName: node + linkType: hard + +"@graphql-tools/utils@npm:6.0.16, @graphql-tools/utils@npm:^6.0.0": + version: 6.0.16 + resolution: "@graphql-tools/utils@npm:6.0.16" + dependencies: + "@ardatan/aggregate-error": 0.0.1 + camel-case: 4.1.1 + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 + checksum: 215d395487602cc6754502f41798ad269d08ef7c32c05a62932fddff0137e69dc92b73cca9b8d73de3a30bbae0e279a99b514f98b3b667c61762981641573fdb + languageName: node + linkType: hard + +"@graphql-tools/wrap@npm:6.0.16": + version: 6.0.16 + resolution: "@graphql-tools/wrap@npm:6.0.16" + dependencies: + "@graphql-tools/delegate": 6.0.16 + "@graphql-tools/schema": 6.0.16 + "@graphql-tools/utils": 6.0.16 + aggregate-error: 3.0.1 + tslib: ~2.0.0 + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 + checksum: 3bb34dcffc7c1ff7092146b37293b9b9ea8a882067b46289a2471997f47455e9a687db290b65af74ce88579e1197448e4d3e3d5e4de07f8f2cc5079bcba3083d + languageName: node + linkType: hard + +"@graphql-typed-document-node/core@npm:0.0.1": + version: 0.0.1 + resolution: "@graphql-typed-document-node/core@npm:0.0.1" + peerDependencies: + graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: cc5241116bc75b7b867be066a02e1abd3f948aa8b7df44a135e813d66b4b8aaea8bb93ac10f6ea2609876aa6ec156b9e034f7dd0d787a7cab530b556a97c98ae + languageName: node + linkType: hard + +"@hapi/address@npm:2.x.x": + version: 2.1.4 + resolution: "@hapi/address@npm:2.1.4" + checksum: 5dc5d0d3d6aad953bef59c5f24af704ae349dce626460eb2df93bd1e4b560136e354f92ce1c573292dfc7edce84189859794d28381711b50f738e67042081278 + languageName: node + linkType: hard + +"@hapi/address@npm:^4.0.1": + version: 4.1.0 + resolution: "@hapi/address@npm:4.1.0" + dependencies: + "@hapi/hoek": ^9.0.0 + checksum: 2844aceeb993bb767ae2c34e75767e7eff1b0cf811c4655c6500206d8d06a7deacdf4cf4172901e3bcafcbd7e8892b5ff786d0469071b9ba5ec14d0896034497 + languageName: node + linkType: hard + +"@hapi/bourne@npm:1.x.x": + version: 1.3.2 + resolution: "@hapi/bourne@npm:1.3.2" + checksum: bc23796d94afbca6bf691161d181bf005e86eac3f16fa4a11c38ca1acc9ffabf4e83791a98e9234bd09539ac013675bb53ea2de119373f9e9349f3b94312b76d + languageName: node + linkType: hard + +"@hapi/formula@npm:^2.0.0": + version: 2.0.0 + resolution: "@hapi/formula@npm:2.0.0" + checksum: 02d14257149799b478e21f2620639470efb152f09dd2083fb9a6f247f29760de4af6ceb938b2337ecdf2a0514c2edd5beca6df5415d5c2cea909977fb0da4eaf + languageName: node + linkType: hard + +"@hapi/hoek@npm:8.x.x, @hapi/hoek@npm:^8.3.0": + version: 8.5.1 + resolution: "@hapi/hoek@npm:8.5.1" + checksum: 17bf9a0b6f2f9ecb248824dab838c66c50b16b00b1d3785233fafd5abacb06cc6cdcbd6f4c7be87babb227fc02fff46ad1c23de3f5b6f48ffe36b6aac829d82c + languageName: node + linkType: hard + +"@hapi/hoek@npm:^9.0.0": + version: 9.0.4 + resolution: "@hapi/hoek@npm:9.0.4" + checksum: d000f60d5e30db7ed2b838a7ec4a757542f04036c8eb431328fd1139f3f7dbd400a2c7d86acbbaf8b8da11dee6f8ae706f6d88bd71c02b3c5f16fd3f6223aa09 + languageName: node + linkType: hard + +"@hapi/joi@npm:17.1.1, @hapi/joi@npm:^17.1.1": + version: 17.1.1 + resolution: "@hapi/joi@npm:17.1.1" + dependencies: + "@hapi/address": ^4.0.1 + "@hapi/formula": ^2.0.0 + "@hapi/hoek": ^9.0.0 + "@hapi/pinpoint": ^2.0.0 + "@hapi/topo": ^5.0.0 + checksum: 7547ccf2a8168e4f68f630069ab069f94d0689bd18a034a6dea40cc9c7e88776665670316f65bdd29068dccde111f3d7164504cfaf6db183110b64f36c5643dd + languageName: node + linkType: hard + +"@hapi/joi@npm:^15.0.0, @hapi/joi@npm:^15.1.0": + version: 15.1.1 + resolution: "@hapi/joi@npm:15.1.1" + dependencies: + "@hapi/address": 2.x.x + "@hapi/bourne": 1.x.x + "@hapi/hoek": 8.x.x + "@hapi/topo": 3.x.x + checksum: 7edbb0d5a5c1ff376b66243427a3b98a559e9ea89f7d40ee55916e0519bc1be56a9ac69f1e446a2c39c153fe835c57e4ee71297d4266b0ca82c49f7a2e90f681 + languageName: node + linkType: hard + +"@hapi/pinpoint@npm:^2.0.0": + version: 2.0.0 + resolution: "@hapi/pinpoint@npm:2.0.0" + checksum: 445ca018999145dccff58ca1be71fa533c3124a1d0f256b8c3daf88067992a20aebfbdee49664741cfac160d924c76d24bd3e8eeb521af721e6f606f4bd64634 + languageName: node + linkType: hard + +"@hapi/topo@npm:3.x.x": + version: 3.1.6 + resolution: "@hapi/topo@npm:3.1.6" + dependencies: + "@hapi/hoek": ^8.3.0 + checksum: 4550d3d7498a203ce5c0e53753eb9f510aa2b74c08bfaf7d7c4676a0943b27d72f22297ff006e8396eb74e6b73154ebf98feab19c199b0768a084a777d024a50 + languageName: node + linkType: hard + +"@hapi/topo@npm:^5.0.0": + version: 5.0.0 + resolution: "@hapi/topo@npm:5.0.0" + dependencies: + "@hapi/hoek": ^9.0.0 + checksum: f92797d5ef54bb801a3591a118ea483ed5a6b41cdd1aaa6f7bf427b64b5f76056bc7063447adf43be8f94b04408228cce12963ea498b8da8f9e01d01c78710ac + languageName: node + linkType: hard + +"@istanbuljs/load-nyc-config@npm:^1.0.0": + version: 1.1.0 + resolution: "@istanbuljs/load-nyc-config@npm:1.1.0" + 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 + checksum: f7f3b1c922bf5e36a7f747b2a80fedc9c2e1ebd7e03dc73082fca7c1066cc4e2e2ac39827aded6a087c32294e9c032ff3e50bc9041fcf757b4a38ca97418b652 + languageName: node + linkType: hard + +"@istanbuljs/schema@npm:^0.1.2": + version: 0.1.2 + resolution: "@istanbuljs/schema@npm:0.1.2" + checksum: ebc6bd5f14aca7dd229d3e03aaab47c4c9a1ae25c892d6370d786c7a06128b4e03f60b31b10408010b701e1982087c1e2dae798e66cb57b44c7883228693f8e4 + languageName: node + linkType: hard + +"@jest/console@npm:^24.7.1, @jest/console@npm:^24.9.0": + version: 24.9.0 + resolution: "@jest/console@npm:24.9.0" + dependencies: + "@jest/source-map": ^24.9.0 + chalk: ^2.0.1 + slash: ^2.0.0 + checksum: 74f7e051e60c65f90bd540e26e46c89ab633a029029afe11b2d78bda4cd102ba7962e342b61acf100f20318ae0b0a85cbb0e2b85074eb1adfe5995e658753734 + languageName: node + linkType: hard + +"@jest/console@npm:^26.2.0": + version: 26.2.0 + resolution: "@jest/console@npm:26.2.0" + dependencies: + "@jest/types": ^26.2.0 + "@types/node": "*" + chalk: ^4.0.0 + jest-message-util: ^26.2.0 + jest-util: ^26.2.0 + slash: ^3.0.0 + checksum: e3823e2358f2e4307d9092bb013de5d1de7ae8c636328d35ee991917b1eb8bf4fdd7e97a499024600b06963559392667f3d80886badde531e19f0d0ae4bdd676 + languageName: node + linkType: hard + +"@jest/core@npm:^24.9.0": + version: 24.9.0 + resolution: "@jest/core@npm:24.9.0" + dependencies: + "@jest/console": ^24.7.1 + "@jest/reporters": ^24.9.0 + "@jest/test-result": ^24.9.0 + "@jest/transform": ^24.9.0 + "@jest/types": ^24.9.0 + ansi-escapes: ^3.0.0 + chalk: ^2.0.1 + exit: ^0.1.2 + graceful-fs: ^4.1.15 + jest-changed-files: ^24.9.0 + jest-config: ^24.9.0 + jest-haste-map: ^24.9.0 + jest-message-util: ^24.9.0 + jest-regex-util: ^24.3.0 + jest-resolve: ^24.9.0 + jest-resolve-dependencies: ^24.9.0 + jest-runner: ^24.9.0 + jest-runtime: ^24.9.0 + jest-snapshot: ^24.9.0 + jest-util: ^24.9.0 + jest-validate: ^24.9.0 + jest-watcher: ^24.9.0 + micromatch: ^3.1.10 + p-each-series: ^1.0.0 + realpath-native: ^1.1.0 + rimraf: ^2.5.4 + slash: ^2.0.0 + strip-ansi: ^5.0.0 + checksum: ce1e33782c03ba8acf3cacf02fff5319def05c97e8c3abc2e9f28b250d8c8d94638d8e1d38dc6123bbd307192c08d6f435e0a38512a29a6ff51e5f48d2ce1ed7 + languageName: node + linkType: hard + +"@jest/core@npm:^26.2.2": + version: 26.2.2 + resolution: "@jest/core@npm:26.2.2" + dependencies: + "@jest/console": ^26.2.0 + "@jest/reporters": ^26.2.2 + "@jest/test-result": ^26.2.0 + "@jest/transform": ^26.2.2 + "@jest/types": ^26.2.0 + "@types/node": "*" + ansi-escapes: ^4.2.1 + chalk: ^4.0.0 + exit: ^0.1.2 + graceful-fs: ^4.2.4 + jest-changed-files: ^26.2.0 + jest-config: ^26.2.2 + jest-haste-map: ^26.2.2 + jest-message-util: ^26.2.0 + jest-regex-util: ^26.0.0 + jest-resolve: ^26.2.2 + jest-resolve-dependencies: ^26.2.2 + jest-runner: ^26.2.2 + jest-runtime: ^26.2.2 + jest-snapshot: ^26.2.2 + jest-util: ^26.2.0 + jest-validate: ^26.2.0 + jest-watcher: ^26.2.0 + micromatch: ^4.0.2 + p-each-series: ^2.1.0 + rimraf: ^3.0.0 + slash: ^3.0.0 + strip-ansi: ^6.0.0 + checksum: fbad6ea72be2e7321fb58076c0a6e8bed6d5fa9f472848f1550437388518f903f72a5d3f2a249073a040015250261af8fbc9d5ec1e38776ee7b0f646475c1890 + languageName: node + linkType: hard + +"@jest/environment@npm:^24.3.0, @jest/environment@npm:^24.9.0": + version: 24.9.0 + resolution: "@jest/environment@npm:24.9.0" + dependencies: + "@jest/fake-timers": ^24.9.0 + "@jest/transform": ^24.9.0 + "@jest/types": ^24.9.0 + jest-mock: ^24.9.0 + checksum: 77f7313e1b913253b63edc5742aa9fa5e07f38d39b703d5f6246e4dd9778718b99313514c6245fe37791e64fd98fc7cc2fd12c98c75b05d916ec67a877d3943c + languageName: node + linkType: hard + +"@jest/environment@npm:^26.2.0": + version: 26.2.0 + resolution: "@jest/environment@npm:26.2.0" + dependencies: + "@jest/fake-timers": ^26.2.0 + "@jest/types": ^26.2.0 + "@types/node": "*" + jest-mock: ^26.2.0 + checksum: f9974385bd47df5a0fee618dafe908ddf8e5abf08d6d0975512a3fb8ef935fcbad3f863f661ebf49313fd716989aed15be7afe05b61f776591da2be9f7768cb6 + languageName: node + linkType: hard + +"@jest/fake-timers@npm:^24.3.0, @jest/fake-timers@npm:^24.9.0": + version: 24.9.0 + resolution: "@jest/fake-timers@npm:24.9.0" + dependencies: + "@jest/types": ^24.9.0 + jest-message-util: ^24.9.0 + jest-mock: ^24.9.0 + checksum: 5c03cc46de3be3b6a208d325fb4a92f127c8273cbbc691cf0454609ad47f15fdb2fcc8b60aae93ee745ee1f0fc95e64629ba203108a876f94141a59009db6796 + languageName: node + linkType: hard + +"@jest/fake-timers@npm:^26.2.0": + version: 26.2.0 + resolution: "@jest/fake-timers@npm:26.2.0" + dependencies: + "@jest/types": ^26.2.0 + "@sinonjs/fake-timers": ^6.0.1 + "@types/node": "*" + jest-message-util: ^26.2.0 + jest-mock: ^26.2.0 + jest-util: ^26.2.0 + checksum: b917001dfa7533e22159f2e3813a2e9933c7e8acac411bd3593700c220c06f49b23956764df28ba1f519f9b1b136ac506eea09a362ef8b2d18b97f3148fac410 + languageName: node + linkType: hard + +"@jest/globals@npm:^26.2.0": + version: 26.2.0 + resolution: "@jest/globals@npm:26.2.0" + dependencies: + "@jest/environment": ^26.2.0 + "@jest/types": ^26.2.0 + expect: ^26.2.0 + checksum: 627008bda51bed3be53babe46ee72c84868b335f6d6898e9bcb59b100ae06c1d7d48f445b8b99c2e2deaa139010d385d24082c8f1b679442eb701e6f64b71e77 + languageName: node + linkType: hard + +"@jest/reporters@npm:^24.9.0": + version: 24.9.0 + resolution: "@jest/reporters@npm:24.9.0" + dependencies: + "@jest/environment": ^24.9.0 + "@jest/test-result": ^24.9.0 + "@jest/transform": ^24.9.0 + "@jest/types": ^24.9.0 + chalk: ^2.0.1 + exit: ^0.1.2 + glob: ^7.1.2 + istanbul-lib-coverage: ^2.0.2 + istanbul-lib-instrument: ^3.0.1 + istanbul-lib-report: ^2.0.4 + istanbul-lib-source-maps: ^3.0.1 + istanbul-reports: ^2.2.6 + jest-haste-map: ^24.9.0 + jest-resolve: ^24.9.0 + jest-runtime: ^24.9.0 + jest-util: ^24.9.0 + jest-worker: ^24.6.0 + node-notifier: ^5.4.2 + slash: ^2.0.0 + source-map: ^0.6.0 + string-length: ^2.0.0 + checksum: 38c3c2f0e6dac7866bc9e5e3ae960ab74988300860a2a66248bfc2bd40a96532a20ad9b83b260929b14a119ac52eddd9e7e26c90015186dcf5b507aa9e8d5758 + languageName: node + linkType: hard + +"@jest/reporters@npm:^26.2.2": + version: 26.2.2 + resolution: "@jest/reporters@npm:26.2.2" + dependencies: + "@bcoe/v8-coverage": ^0.2.3 + "@jest/console": ^26.2.0 + "@jest/test-result": ^26.2.0 + "@jest/transform": ^26.2.2 + "@jest/types": ^26.2.0 + chalk: ^4.0.0 + collect-v8-coverage: ^1.0.0 + exit: ^0.1.2 + glob: ^7.1.2 + graceful-fs: ^4.2.4 + istanbul-lib-coverage: ^3.0.0 + istanbul-lib-instrument: ^4.0.3 + istanbul-lib-report: ^3.0.0 + istanbul-lib-source-maps: ^4.0.0 + istanbul-reports: ^3.0.2 + jest-haste-map: ^26.2.2 + jest-resolve: ^26.2.2 + jest-util: ^26.2.0 + jest-worker: ^26.2.1 + node-notifier: ^7.0.0 + slash: ^3.0.0 + source-map: ^0.6.0 + string-length: ^4.0.1 + terminal-link: ^2.0.0 + v8-to-istanbul: ^4.1.3 + dependenciesMeta: + node-notifier: + optional: true + checksum: 69be9eea5283c1d8e0432ca55d041efd2e9f6e30d503e6655f03c6334f4d4a7cf19e9e4052568ad656c9d635308ffb3b09201a7376a9f9e222a5b6b1d89ba7c9 + languageName: node + linkType: hard + +"@jest/source-map@npm:^24.3.0, @jest/source-map@npm:^24.9.0": + version: 24.9.0 + resolution: "@jest/source-map@npm:24.9.0" + dependencies: + callsites: ^3.0.0 + graceful-fs: ^4.1.15 + source-map: ^0.6.0 + checksum: 1bbebf706b36ffed3d49077f4a12bd8edba726ecef94f32b61315076377ea076bd77bc50d84dc0edb8a67ec78a56a5e6169feb283392a1809adeac148139123d + languageName: node + linkType: hard + +"@jest/source-map@npm:^26.1.0": + version: 26.1.0 + resolution: "@jest/source-map@npm:26.1.0" + dependencies: + callsites: ^3.0.0 + graceful-fs: ^4.2.4 + source-map: ^0.6.0 + checksum: f2d1d8cee4a9d859f112e9fcceb4751093d65b41e36e2ec319926a26e9c28f99d7582f4ba73ae9cf5fcf168a103b189fe0cd8dc3a82e6956d067d087d4c4296d + languageName: node + linkType: hard + +"@jest/test-result@npm:^24.9.0": + version: 24.9.0 + resolution: "@jest/test-result@npm:24.9.0" + dependencies: + "@jest/console": ^24.9.0 + "@jest/types": ^24.9.0 + "@types/istanbul-lib-coverage": ^2.0.0 + checksum: e8e91f3dbdbd47c25b3ce72c33dc14590b3d650485d0b6955d3c19028a82e16a29641cf3f766a856e992b1af8c9e824b098d7ea36bc98f30532a4cbfba8e080a + languageName: node + linkType: hard + +"@jest/test-result@npm:^26.2.0": + version: 26.2.0 + resolution: "@jest/test-result@npm:26.2.0" + dependencies: + "@jest/console": ^26.2.0 + "@jest/types": ^26.2.0 + "@types/istanbul-lib-coverage": ^2.0.0 + collect-v8-coverage: ^1.0.0 + checksum: 64fb226ecbf9da509b541ff96ce507046c221731ec256eab1159de3de19b9bc003af99b6ea78ac4af871243f70532b84feecdf8f78898aa6d297eb9d67ca37c6 + languageName: node + linkType: hard + +"@jest/test-sequencer@npm:^24.9.0": + version: 24.9.0 + resolution: "@jest/test-sequencer@npm:24.9.0" + dependencies: + "@jest/test-result": ^24.9.0 + jest-haste-map: ^24.9.0 + jest-runner: ^24.9.0 + jest-runtime: ^24.9.0 + checksum: 38be116ee4bd2e81c03c7d18c5ea9a78306737edc7c0a980aa826aa3eae4ab4f25d8f805a2b38911dff6ba91d70995e2a3ea9222e6c27cad395dcc19691b7410 + languageName: node + linkType: hard + +"@jest/test-sequencer@npm:^26.2.2": + version: 26.2.2 + resolution: "@jest/test-sequencer@npm:26.2.2" + dependencies: + "@jest/test-result": ^26.2.0 + graceful-fs: ^4.2.4 + jest-haste-map: ^26.2.2 + jest-runner: ^26.2.2 + jest-runtime: ^26.2.2 + checksum: 13b8e3da503ff7cc5afbdb71abf10c85ebb1250a0c00301d80a9634ffbdf5c418ef56a929cfb9353a9b1e1bc6b64bc54983bfae4dbe2abd13c3e1c56e4ce2ce4 + languageName: node + linkType: hard + +"@jest/transform@npm:^24.9.0": + version: 24.9.0 + resolution: "@jest/transform@npm:24.9.0" + dependencies: + "@babel/core": ^7.1.0 + "@jest/types": ^24.9.0 + babel-plugin-istanbul: ^5.1.0 + chalk: ^2.0.1 + convert-source-map: ^1.4.0 + fast-json-stable-stringify: ^2.0.0 + graceful-fs: ^4.1.15 + jest-haste-map: ^24.9.0 + jest-regex-util: ^24.9.0 + jest-util: ^24.9.0 + micromatch: ^3.1.10 + pirates: ^4.0.1 + realpath-native: ^1.1.0 + slash: ^2.0.0 + source-map: ^0.6.1 + write-file-atomic: 2.4.1 + checksum: 73c5ad0ae6bae5c60261b6b256b995f099f84a964580537154293edc63ab0e9fb6e3dda737c04aafd9daa815f19b6fb437e611f4f811f8041bd37e8192709650 + languageName: node + linkType: hard + +"@jest/transform@npm:^26.2.2": + version: 26.2.2 + resolution: "@jest/transform@npm:26.2.2" + dependencies: + "@babel/core": ^7.1.0 + "@jest/types": ^26.2.0 + babel-plugin-istanbul: ^6.0.0 + chalk: ^4.0.0 + convert-source-map: ^1.4.0 + fast-json-stable-stringify: ^2.0.0 + graceful-fs: ^4.2.4 + jest-haste-map: ^26.2.2 + jest-regex-util: ^26.0.0 + jest-util: ^26.2.0 + micromatch: ^4.0.2 + pirates: ^4.0.1 + slash: ^3.0.0 + source-map: ^0.6.1 + write-file-atomic: ^3.0.0 + checksum: ac84cc720d4fe59ffc9369414605c54cac1bcf49a51230e49899f62b371f05bd9897b8eac73a212fae90f9555fee0199094aec890269c862d8abe63938e9d450 + languageName: node + linkType: hard + +"@jest/types@npm:^24.3.0, @jest/types@npm:^24.9.0": + version: 24.9.0 + resolution: "@jest/types@npm:24.9.0" + dependencies: + "@types/istanbul-lib-coverage": ^2.0.0 + "@types/istanbul-reports": ^1.1.1 + "@types/yargs": ^13.0.0 + checksum: 7cd388ad9d3a6de7e0ca29cbaf34dd9da9f6485d26747fc2ef6732bf06dc98d79519b7f3684b7287bd6d5168c394d8f806dc1343bd3c1b3cdc3e85486a518c63 + languageName: node + linkType: hard + +"@jest/types@npm:^25.5.0": + version: 25.5.0 + resolution: "@jest/types@npm:25.5.0" + dependencies: + "@types/istanbul-lib-coverage": ^2.0.0 + "@types/istanbul-reports": ^1.1.1 + "@types/yargs": ^15.0.0 + chalk: ^3.0.0 + checksum: 33ad68320efb297c4bd98975105130e1b4096d631decfc5a093691e24f27fce0410b4a7c5a87b736873271ebc003e48e853529587e584b3152efca572139a4a3 + languageName: node + linkType: hard + +"@jest/types@npm:^26.2.0": + version: 26.2.0 + resolution: "@jest/types@npm:26.2.0" + dependencies: + "@types/istanbul-lib-coverage": ^2.0.0 + "@types/istanbul-reports": ^1.1.1 + "@types/node": "*" + "@types/yargs": ^15.0.0 + chalk: ^4.0.0 + checksum: 369e0123c9451480749fd516645df44e20818054b5cbb7538502751dfe4a88a691441b76df5fb1bda4b7116cb5023bc834141d64ae9d46c240d72417b5ea60a9 + languageName: node + linkType: hard + +"@lerna/add@npm:3.21.0": + version: 3.21.0 + resolution: "@lerna/add@npm:3.21.0" + dependencies: + "@evocateur/pacote": ^9.6.3 + "@lerna/bootstrap": 3.21.0 + "@lerna/command": 3.21.0 + "@lerna/filter-options": 3.20.0 + "@lerna/npm-conf": 3.16.0 + "@lerna/validation-error": 3.13.0 + dedent: ^0.7.0 + npm-package-arg: ^6.1.0 + p-map: ^2.1.0 + semver: ^6.2.0 + checksum: e3f7402ce914d34b335042a5f8ac5effe7f44b1f2a3ea00b64cbecd6a8bef2ab7670674a5aab2b5111e7f051bb077fc39114fedf36e769c504b2751036a15db1 + languageName: node + linkType: hard + +"@lerna/bootstrap@npm:3.21.0": + version: 3.21.0 + resolution: "@lerna/bootstrap@npm:3.21.0" + dependencies: + "@lerna/command": 3.21.0 + "@lerna/filter-options": 3.20.0 + "@lerna/has-npm-version": 3.16.5 + "@lerna/npm-install": 3.16.5 + "@lerna/package-graph": 3.18.5 + "@lerna/pulse-till-done": 3.13.0 + "@lerna/rimraf-dir": 3.16.5 + "@lerna/run-lifecycle": 3.16.2 + "@lerna/run-topologically": 3.18.5 + "@lerna/symlink-binary": 3.17.0 + "@lerna/symlink-dependencies": 3.17.0 + "@lerna/validation-error": 3.13.0 + dedent: ^0.7.0 + get-port: ^4.2.0 + multimatch: ^3.0.0 + npm-package-arg: ^6.1.0 + npmlog: ^4.1.2 + p-finally: ^1.0.0 + p-map: ^2.1.0 + p-map-series: ^1.0.0 + p-waterfall: ^1.0.0 + read-package-tree: ^5.1.6 + semver: ^6.2.0 + checksum: 813ef19c05c3eb161148f417b640f0f7f9537f7b17c69fd63e27770d7da25fddce7575aec75c58d21c4b6008ad8175be1a99d6a609e50e5ae4cc211dc9014e0a + languageName: node + linkType: hard + +"@lerna/changed@npm:3.21.0": + version: 3.21.0 + resolution: "@lerna/changed@npm:3.21.0" + dependencies: + "@lerna/collect-updates": 3.20.0 + "@lerna/command": 3.21.0 + "@lerna/listable": 3.18.5 + "@lerna/output": 3.13.0 + checksum: 30c9cdf411ef5eae51aff682e5d466216214b896d6c0653e4519512f7322b05c6b4d39bd9421549f1a2dff52b7d911e7bf856968bfde2a4c9d86045634b405d9 + languageName: node + linkType: hard + +"@lerna/check-working-tree@npm:3.16.5": + version: 3.16.5 + resolution: "@lerna/check-working-tree@npm:3.16.5" + dependencies: + "@lerna/collect-uncommitted": 3.16.5 + "@lerna/describe-ref": 3.16.5 + "@lerna/validation-error": 3.13.0 + checksum: 5a2a31ceb18ea52f7651a8fd9102988a8fb9d86afdb54e3a5c9240ee92f8f790b8e4e51e5d8baba033df19317a676be77a90d3a43237a05b9bfd5c7b1ec5ec99 + languageName: node + linkType: hard + +"@lerna/child-process@npm:3.16.5": + version: 3.16.5 + resolution: "@lerna/child-process@npm:3.16.5" + dependencies: + chalk: ^2.3.1 + execa: ^1.0.0 + strong-log-transformer: ^2.0.0 + checksum: b14fa8836e864c12cf1506a7a3fd3afb4144c632837fde4431458fefb2e14fbd1adcbf4b4438e61c3e5e1f0468e4c9f07155abef4dc8cd41a398c71eb7b6e6cb + languageName: node + linkType: hard + +"@lerna/clean@npm:3.21.0": + version: 3.21.0 + resolution: "@lerna/clean@npm:3.21.0" + dependencies: + "@lerna/command": 3.21.0 + "@lerna/filter-options": 3.20.0 + "@lerna/prompt": 3.18.5 + "@lerna/pulse-till-done": 3.13.0 + "@lerna/rimraf-dir": 3.16.5 + p-map: ^2.1.0 + p-map-series: ^1.0.0 + p-waterfall: ^1.0.0 + checksum: bf3c1a7e7ee8ed276566488b45735ab1dfcffc35341d06af9b93f05fcb2f3f9fe8c4f5b0ae679fdf020b11a34a9b237c5e13ee5dd0124cc663d40d999c7c08bb + languageName: node + linkType: hard + +"@lerna/cli@npm:3.18.5": + version: 3.18.5 + resolution: "@lerna/cli@npm:3.18.5" + dependencies: + "@lerna/global-options": 3.13.0 + dedent: ^0.7.0 + npmlog: ^4.1.2 + yargs: ^14.2.2 + checksum: 0df93cc208289abfd2fa2c0ae8e96febe8f25964232221d8cccfd0242b5ef2fdad0de73baf8293ec9393589df6ee89f9f8df25cd82c4c8c255590a3fc07d3cb7 + languageName: node + linkType: hard + +"@lerna/collect-uncommitted@npm:3.16.5": + version: 3.16.5 + resolution: "@lerna/collect-uncommitted@npm:3.16.5" + dependencies: + "@lerna/child-process": 3.16.5 + chalk: ^2.3.1 + figgy-pudding: ^3.5.1 + npmlog: ^4.1.2 + checksum: 4e10c8a7af601086c4834a39b24314919c3a5b9f36131d1d433c2e6e1395cd6ba35d746ffc6708b22c64beaf9f4d17705896cac9fd3b4cffebec3876cce9ed89 + languageName: node + linkType: hard + +"@lerna/collect-updates@npm:3.20.0": + version: 3.20.0 + resolution: "@lerna/collect-updates@npm:3.20.0" + dependencies: + "@lerna/child-process": 3.16.5 + "@lerna/describe-ref": 3.16.5 + minimatch: ^3.0.4 + npmlog: ^4.1.2 + slash: ^2.0.0 + checksum: 9f62ac2fad137085ba2e7700bb551ee8d992372cde8273336a6b7b2e43af7b42807ef4e6c57c853b6fc5da7961cc98a5195477147328d71daace28c4f8267112 + languageName: node + linkType: hard + +"@lerna/command@npm:3.21.0": + version: 3.21.0 + resolution: "@lerna/command@npm:3.21.0" + dependencies: + "@lerna/child-process": 3.16.5 + "@lerna/package-graph": 3.18.5 + "@lerna/project": 3.21.0 + "@lerna/validation-error": 3.13.0 + "@lerna/write-log-file": 3.13.0 + clone-deep: ^4.0.1 + dedent: ^0.7.0 + execa: ^1.0.0 + is-ci: ^2.0.0 + npmlog: ^4.1.2 + checksum: 5a626991f2f4bfc0fb2dc4d446d0eaa22318edc5f6a37ddff96954bc0e2c1852f51c158c213a73cfab6ba1fe5b0be187ac2acf972c54e60b9e775e9f06fd07d6 + languageName: node + linkType: hard + +"@lerna/conventional-commits@npm:3.22.0": + version: 3.22.0 + resolution: "@lerna/conventional-commits@npm:3.22.0" + dependencies: + "@lerna/validation-error": 3.13.0 + conventional-changelog-angular: ^5.0.3 + conventional-changelog-core: ^3.1.6 + conventional-recommended-bump: ^5.0.0 + fs-extra: ^8.1.0 + get-stream: ^4.0.0 + lodash.template: ^4.5.0 + npm-package-arg: ^6.1.0 + npmlog: ^4.1.2 + pify: ^4.0.1 + semver: ^6.2.0 + checksum: 8f649d28b8df4b172e1b98c8a173b6962dad34800a003b31c628a687ab1c9b450f229fe574d1908ceca9c8e544738ea29fb91284b1d79f785e2b55427c848fa3 + languageName: node + linkType: hard + +"@lerna/create-symlink@npm:3.16.2": + version: 3.16.2 + resolution: "@lerna/create-symlink@npm:3.16.2" + dependencies: + "@zkochan/cmd-shim": ^3.1.0 + fs-extra: ^8.1.0 + npmlog: ^4.1.2 + checksum: ddc420fdd2633a951c750410108f8cf9b2e4e1a6c49941057655fb9468999ccb1912ece506586ed93e3a95539f13d1e1a36b91b1fb6913a8489d0bacb71d3746 + languageName: node + linkType: hard + +"@lerna/create@npm:3.22.0": + version: 3.22.0 + resolution: "@lerna/create@npm:3.22.0" + dependencies: + "@evocateur/pacote": ^9.6.3 + "@lerna/child-process": 3.16.5 + "@lerna/command": 3.21.0 + "@lerna/npm-conf": 3.16.0 + "@lerna/validation-error": 3.13.0 + camelcase: ^5.0.0 + dedent: ^0.7.0 + fs-extra: ^8.1.0 + globby: ^9.2.0 + init-package-json: ^1.10.3 + npm-package-arg: ^6.1.0 + p-reduce: ^1.0.0 + pify: ^4.0.1 + semver: ^6.2.0 + slash: ^2.0.0 + validate-npm-package-license: ^3.0.3 + validate-npm-package-name: ^3.0.0 + whatwg-url: ^7.0.0 + checksum: 3a7003b90941b979eb28e8daea23bc35be6923b5b717f5674b70e8afb4dea270b84f961c15b37e26fbf86121ee1c7695c3be57de9de2aeba67ca6061642ed69c + languageName: node + linkType: hard + +"@lerna/describe-ref@npm:3.16.5": + version: 3.16.5 + resolution: "@lerna/describe-ref@npm:3.16.5" + dependencies: + "@lerna/child-process": 3.16.5 + npmlog: ^4.1.2 + checksum: e8bd1858743eaa69a7a4b9896252909378240b167caee764c3a714e1b4c6c9ea19365751d1c9070719e55a65c535db91ace3d721bbf3492f20cb97f40d1251ea + languageName: node + linkType: hard + +"@lerna/diff@npm:3.21.0": + version: 3.21.0 + resolution: "@lerna/diff@npm:3.21.0" + dependencies: + "@lerna/child-process": 3.16.5 + "@lerna/command": 3.21.0 + "@lerna/validation-error": 3.13.0 + npmlog: ^4.1.2 + checksum: c92598e5374e59a59a6c677d308796d3130804352ed7f6181b3d0d76ab2db556341b4f1aa5fc0d063c978efca7fa97276065b18fc8794a2c3b7b8d20346a6549 + languageName: node + linkType: hard + +"@lerna/exec@npm:3.21.0": + version: 3.21.0 + resolution: "@lerna/exec@npm:3.21.0" + dependencies: + "@lerna/child-process": 3.16.5 + "@lerna/command": 3.21.0 + "@lerna/filter-options": 3.20.0 + "@lerna/profiler": 3.20.0 + "@lerna/run-topologically": 3.18.5 + "@lerna/validation-error": 3.13.0 + p-map: ^2.1.0 + checksum: b1d50420109e5351cca714ef5c4e4bbc8fa6f89b756aa36e4596af74929b5d0736bc6be0b27e55c0935d64cc7fd040cb107e97a4cbfb449bba473e9160144602 + languageName: node + linkType: hard + +"@lerna/filter-options@npm:3.20.0": + version: 3.20.0 + resolution: "@lerna/filter-options@npm:3.20.0" + dependencies: + "@lerna/collect-updates": 3.20.0 + "@lerna/filter-packages": 3.18.0 + dedent: ^0.7.0 + figgy-pudding: ^3.5.1 + npmlog: ^4.1.2 + checksum: c1befe98935e5333009b4fd62cd2c96447645c80b04d633073e871965f4b5182829b3fc1ffa109fc84069e98a57969a0836c8215897613c0a0b0bb594b39eea7 + languageName: node + linkType: hard + +"@lerna/filter-packages@npm:3.18.0": + version: 3.18.0 + resolution: "@lerna/filter-packages@npm:3.18.0" + dependencies: + "@lerna/validation-error": 3.13.0 + multimatch: ^3.0.0 + npmlog: ^4.1.2 + checksum: eabaab85374f4d0f441cb07590e80a52c5ae36c4ec0b2273af954a4ac7b530101995269a5abb1bd640bdc6fc97abb939966e01a23b6ff02a1764df0fd3ee3647 + languageName: node + linkType: hard + +"@lerna/get-npm-exec-opts@npm:3.13.0": + version: 3.13.0 + resolution: "@lerna/get-npm-exec-opts@npm:3.13.0" + dependencies: + npmlog: ^4.1.2 + checksum: 149d0704e3a36565248b341545fb35f0a58059045bff23e4e3bdf6ef68b79652e624abecfb1c5645b8d962e6d17532d0d813554b9ab6ec1879118d119439f4f9 + languageName: node + linkType: hard + +"@lerna/get-packed@npm:3.16.0": + version: 3.16.0 + resolution: "@lerna/get-packed@npm:3.16.0" + dependencies: + fs-extra: ^8.1.0 + ssri: ^6.0.1 + tar: ^4.4.8 + checksum: bf0fc8127ad528e4852a5e990b87b03fd81d6f695c63f600018f669e35434f61d9d1bcf081e3480a2792c60dfb204dd8093bb32f377b3e8d6361bd655286888e + languageName: node + linkType: hard + +"@lerna/github-client@npm:3.22.0": + version: 3.22.0 + resolution: "@lerna/github-client@npm:3.22.0" + dependencies: + "@lerna/child-process": 3.16.5 + "@octokit/plugin-enterprise-rest": ^6.0.1 + "@octokit/rest": ^16.28.4 + git-url-parse: ^11.1.2 + npmlog: ^4.1.2 + checksum: 7da42e14d0df488600c951718a9388f096973f0648df9495d08bc69955a43e1a7b5fa2fbc6062ab489c857ecea8902fe155039fe0d63fdb87ccf88e7ea5350d5 + languageName: node + linkType: hard + +"@lerna/gitlab-client@npm:3.15.0": + version: 3.15.0 + resolution: "@lerna/gitlab-client@npm:3.15.0" + dependencies: + node-fetch: ^2.5.0 + npmlog: ^4.1.2 + whatwg-url: ^7.0.0 + checksum: 01f303999ed22dd6a18c722e99267667d3d79857ad984da8c934112a6680a6560695a0d0ed01c9e68f5e27c81c1ef9a32ccafbb1359e4605c22b8dea0567220c + languageName: node + linkType: hard + +"@lerna/global-options@npm:3.13.0": + version: 3.13.0 + resolution: "@lerna/global-options@npm:3.13.0" + checksum: 58d905373d81a79a89677370d421c35e8889db899eb266ec431d4e12dee9ba26bec8dfc4f7cf2eb3368744abf41dc0a479ffcefe2cf5c696c10db6e1155f66e7 + languageName: node + linkType: hard + +"@lerna/has-npm-version@npm:3.16.5": + version: 3.16.5 + resolution: "@lerna/has-npm-version@npm:3.16.5" + dependencies: + "@lerna/child-process": 3.16.5 + semver: ^6.2.0 + checksum: c1aeea230631448a0ff3ca2fe22b7bcfe787d5a61a70add1921ea59f503ab9716d310381d8ab851a4b61a7d9880a540311cab4c61a172a6673fbf2e820e015be + languageName: node + linkType: hard + +"@lerna/import@npm:3.22.0": + version: 3.22.0 + resolution: "@lerna/import@npm:3.22.0" + dependencies: + "@lerna/child-process": 3.16.5 + "@lerna/command": 3.21.0 + "@lerna/prompt": 3.18.5 + "@lerna/pulse-till-done": 3.13.0 + "@lerna/validation-error": 3.13.0 + dedent: ^0.7.0 + fs-extra: ^8.1.0 + p-map-series: ^1.0.0 + checksum: 6bfc96ae451aad113861fe484c2575f5fcd8b0daf6fed2dc9a29ebdfcd10236789ff0d98ead9d8fbdf4fd6f6702817f15cee5bdae0b9bb0fb53d7ec601c9afa2 + languageName: node + linkType: hard + +"@lerna/info@npm:3.21.0": + version: 3.21.0 + resolution: "@lerna/info@npm:3.21.0" + dependencies: + "@lerna/command": 3.21.0 + "@lerna/output": 3.13.0 + envinfo: ^7.3.1 + checksum: d9e1aae8daf28ebc8bd9cd573681d592f04ceca5d1ca8204d3521f6c9789ceec6a37bbbd7b4c6673cbe0500482372d15f3cdfb37d7ca042e02c82221083c719b + languageName: node + linkType: hard + +"@lerna/init@npm:3.21.0": + version: 3.21.0 + resolution: "@lerna/init@npm:3.21.0" + dependencies: + "@lerna/child-process": 3.16.5 + "@lerna/command": 3.21.0 + fs-extra: ^8.1.0 + p-map: ^2.1.0 + write-json-file: ^3.2.0 + checksum: c751352b9b14517f55e5c298c0bde5f260096b8564c4f62510ac423c34ac1fd48c6bc0d55304a643ee220c69e688820c0103d233948099d0e42ae33832fef6d6 + languageName: node + linkType: hard + +"@lerna/link@npm:3.21.0": + version: 3.21.0 + resolution: "@lerna/link@npm:3.21.0" + dependencies: + "@lerna/command": 3.21.0 + "@lerna/package-graph": 3.18.5 + "@lerna/symlink-dependencies": 3.17.0 + p-map: ^2.1.0 + slash: ^2.0.0 + checksum: aacea36129ad6ee7818dd075c4e07707bd3c2be1d1d9bb153266d691df5822428af24e69797f08b2bfdfaddfc824d0c984a8f7ae29f4ca86c975eaeb5b0eab37 + languageName: node + linkType: hard + +"@lerna/list@npm:3.21.0": + version: 3.21.0 + resolution: "@lerna/list@npm:3.21.0" + dependencies: + "@lerna/command": 3.21.0 + "@lerna/filter-options": 3.20.0 + "@lerna/listable": 3.18.5 + "@lerna/output": 3.13.0 + checksum: 24b2f5d3d39fb0c53d759bd54bb1e8655f25e9bd786edee586c16339c64da48d3c9da2c79cc9cd269007ccabe0c604a1f1de0e4bf22da6feaf22383bdea43d54 + languageName: node + linkType: hard + +"@lerna/listable@npm:3.18.5": + version: 3.18.5 + resolution: "@lerna/listable@npm:3.18.5" + dependencies: + "@lerna/query-graph": 3.18.5 + chalk: ^2.3.1 + columnify: ^1.5.4 + checksum: 59c2e6441d084793a1d552adca53aa72b1749a5b96b85a6cd5bf1fa00da1a36c9fb7c658d8e66f992f6ba1f2cfb9104384293620b575bd2346ff8810098cb91c + languageName: node + linkType: hard + +"@lerna/log-packed@npm:3.16.0": + version: 3.16.0 + resolution: "@lerna/log-packed@npm:3.16.0" + dependencies: + byte-size: ^5.0.1 + columnify: ^1.5.4 + has-unicode: ^2.0.1 + npmlog: ^4.1.2 + checksum: 8b67a5e0e242e57e87d1e1a58e32fc172fbe0e35f0adaf351fcc2e100ac5391bb6c4f0cfefe770ccd64af6a8971136ec7d18dac04d7f65eecdb9dc02b15ab728 + languageName: node + linkType: hard + +"@lerna/npm-conf@npm:3.16.0": + version: 3.16.0 + resolution: "@lerna/npm-conf@npm:3.16.0" + dependencies: + config-chain: ^1.1.11 + pify: ^4.0.1 + checksum: e119caae116e6102a6f44effa4cd096e944e31022e68dc7c7ce084e39e22049f8c51e6c20d33bf4c930d14906fc6fdcedfcae1fde8dd9d4c9f5a63685c3a2505 + languageName: node + linkType: hard + +"@lerna/npm-dist-tag@npm:3.18.5": + version: 3.18.5 + resolution: "@lerna/npm-dist-tag@npm:3.18.5" + dependencies: + "@evocateur/npm-registry-fetch": ^4.0.0 + "@lerna/otplease": 3.18.5 + figgy-pudding: ^3.5.1 + npm-package-arg: ^6.1.0 + npmlog: ^4.1.2 + checksum: 92fbb9ed61f1dc1d4f40e53f28f6b9729ec6a9ec4114f651413c0a21759d42216e5aa09c36bca610b02b2f2132abc350b9c10a0aa194e030875343cb96d146d0 + languageName: node + linkType: hard + +"@lerna/npm-install@npm:3.16.5": + version: 3.16.5 + resolution: "@lerna/npm-install@npm:3.16.5" + dependencies: + "@lerna/child-process": 3.16.5 + "@lerna/get-npm-exec-opts": 3.13.0 + fs-extra: ^8.1.0 + npm-package-arg: ^6.1.0 + npmlog: ^4.1.2 + signal-exit: ^3.0.2 + write-pkg: ^3.1.0 + checksum: f4b97ea29ddab36bc9fef796bca31bdc3ddd0aeabb07c4a4c80c739307a663632db452bcb0ec5f335774a1ebaaa826a0595393c7189e5a60318824da02c1e24a + languageName: node + linkType: hard + +"@lerna/npm-publish@npm:3.18.5": + version: 3.18.5 + resolution: "@lerna/npm-publish@npm:3.18.5" + dependencies: + "@evocateur/libnpmpublish": ^1.2.2 + "@lerna/otplease": 3.18.5 + "@lerna/run-lifecycle": 3.16.2 + figgy-pudding: ^3.5.1 + fs-extra: ^8.1.0 + npm-package-arg: ^6.1.0 + npmlog: ^4.1.2 + pify: ^4.0.1 + read-package-json: ^2.0.13 + checksum: 6df8815cce8e4971d5ccb8bd6ce41335a393c22937acca20801302b3011dbc1b00bcd20ba5f538c50f628c21d9ec927bc4982f9590db8d69833b11b12be3684b + languageName: node + linkType: hard + +"@lerna/npm-run-script@npm:3.16.5": + version: 3.16.5 + resolution: "@lerna/npm-run-script@npm:3.16.5" + dependencies: + "@lerna/child-process": 3.16.5 + "@lerna/get-npm-exec-opts": 3.13.0 + npmlog: ^4.1.2 + checksum: 2dd6ac59f91ea9ea41ddad0a32044a8cd83dc6a402d8616082759bc730aca8c75a551ddf23313b62f0e52ee4e0ece3051574e67f7d7b557b40996fff304e7a16 + languageName: node + linkType: hard + +"@lerna/otplease@npm:3.18.5": + version: 3.18.5 + resolution: "@lerna/otplease@npm:3.18.5" + dependencies: + "@lerna/prompt": 3.18.5 + figgy-pudding: ^3.5.1 + checksum: 448510498d59d26d3e64535738d3c15c12ae62bcdf5e42db57ef692440cfc2ac00e5f1f7ded56527a1a95854c2ed697b01af0e3205545457e106c8133522f07e + languageName: node + linkType: hard + +"@lerna/output@npm:3.13.0": + version: 3.13.0 + resolution: "@lerna/output@npm:3.13.0" + dependencies: + npmlog: ^4.1.2 + checksum: 0e362fd63267c573f5031380d90c12b1c5a60a7add9d9c170e53806c2bede7d8809f448af10d1406253051b23e5b2d03f6ea884da87acbf7451b07dc40ea593d + languageName: node + linkType: hard + +"@lerna/pack-directory@npm:3.16.4": + version: 3.16.4 + resolution: "@lerna/pack-directory@npm:3.16.4" + dependencies: + "@lerna/get-packed": 3.16.0 + "@lerna/package": 3.16.0 + "@lerna/run-lifecycle": 3.16.2 + figgy-pudding: ^3.5.1 + npm-packlist: ^1.4.4 + npmlog: ^4.1.2 + tar: ^4.4.10 + temp-write: ^3.4.0 + checksum: 21d2844e8fe07a24cea67e2a64b2a33965b1fc88462bb26ddfd7c4c7d7765069757b1a603f0a29e9d5de86d03ccd263fba6e0ec687bf3c244a6e1a174d706813 + languageName: node + linkType: hard + +"@lerna/package-graph@npm:3.18.5": + version: 3.18.5 + resolution: "@lerna/package-graph@npm:3.18.5" + dependencies: + "@lerna/prerelease-id-from-version": 3.16.0 + "@lerna/validation-error": 3.13.0 + npm-package-arg: ^6.1.0 + npmlog: ^4.1.2 + semver: ^6.2.0 + checksum: 591960545bd3a385f30c97c2b7d620a5cbf81636b845413c56ab35113e6323ba6b41fcba502f14cceda842212669343e2da72dcc2bd6e082fdaff06c8497329b + languageName: node + linkType: hard + +"@lerna/package@npm:3.16.0": + version: 3.16.0 + resolution: "@lerna/package@npm:3.16.0" + dependencies: + load-json-file: ^5.3.0 + npm-package-arg: ^6.1.0 + write-pkg: ^3.1.0 + checksum: 98e6254a3121d3eb4be4045a9709d37bda462a87bd680d6a0da0e114502489c8698577da3e254a08333b24c5cb9e2c25c4bd9fb0a45fba44dcf938acecfaea66 + languageName: node + linkType: hard + +"@lerna/prerelease-id-from-version@npm:3.16.0": + version: 3.16.0 + resolution: "@lerna/prerelease-id-from-version@npm:3.16.0" + dependencies: + semver: ^6.2.0 + checksum: 8add5ca0567d587e46bf2e12eb3b55e6818cbe5cc7698c3e22663ad292e263d0815bc9a295d1d11a4c14e3447d4ada2fe3ff5371ae17669fc06465b79a7045b8 + languageName: node + linkType: hard + +"@lerna/profiler@npm:3.20.0": + version: 3.20.0 + resolution: "@lerna/profiler@npm:3.20.0" + dependencies: + figgy-pudding: ^3.5.1 + fs-extra: ^8.1.0 + npmlog: ^4.1.2 + upath: ^1.2.0 + checksum: 587ff49a1ef6eb21ce9554791d28c17a28f199ef90a87f5c74d781d4dfea48abeb9611ab6f6789c1d43cb8edce53e6672e848b6ccc971ae7de8d11dc306ffdc8 + languageName: node + linkType: hard + +"@lerna/project@npm:3.21.0": + version: 3.21.0 + resolution: "@lerna/project@npm:3.21.0" + dependencies: + "@lerna/package": 3.16.0 + "@lerna/validation-error": 3.13.0 + cosmiconfig: ^5.1.0 + dedent: ^0.7.0 + dot-prop: ^4.2.0 + glob-parent: ^5.0.0 + globby: ^9.2.0 + load-json-file: ^5.3.0 + npmlog: ^4.1.2 + p-map: ^2.1.0 + resolve-from: ^4.0.0 + write-json-file: ^3.2.0 + checksum: 89a0de6d11330f099932061c7cb01d5b75529e5e258f47050c95a968cc8973d5d59af90458086cb77120169502f3922a3b77b4a4f9d3787b180878457fc80ba2 + languageName: node + linkType: hard + +"@lerna/prompt@npm:3.18.5": + version: 3.18.5 + resolution: "@lerna/prompt@npm:3.18.5" + dependencies: + inquirer: ^6.2.0 + npmlog: ^4.1.2 + checksum: 7e9e2aca5d0d8d1d352d90c436d512c9bd2f94704f69d472383ad9775d32d8244ddba910ce20c6d26dd3555cf060febec931169b88b6bb9a60bb5b3118b2b49a + languageName: node + linkType: hard + +"@lerna/publish@npm:3.22.1": + version: 3.22.1 + resolution: "@lerna/publish@npm:3.22.1" + dependencies: + "@evocateur/libnpmaccess": ^3.1.2 + "@evocateur/npm-registry-fetch": ^4.0.0 + "@evocateur/pacote": ^9.6.3 + "@lerna/check-working-tree": 3.16.5 + "@lerna/child-process": 3.16.5 + "@lerna/collect-updates": 3.20.0 + "@lerna/command": 3.21.0 + "@lerna/describe-ref": 3.16.5 + "@lerna/log-packed": 3.16.0 + "@lerna/npm-conf": 3.16.0 + "@lerna/npm-dist-tag": 3.18.5 + "@lerna/npm-publish": 3.18.5 + "@lerna/otplease": 3.18.5 + "@lerna/output": 3.13.0 + "@lerna/pack-directory": 3.16.4 + "@lerna/prerelease-id-from-version": 3.16.0 + "@lerna/prompt": 3.18.5 + "@lerna/pulse-till-done": 3.13.0 + "@lerna/run-lifecycle": 3.16.2 + "@lerna/run-topologically": 3.18.5 + "@lerna/validation-error": 3.13.0 + "@lerna/version": 3.22.1 + figgy-pudding: ^3.5.1 + fs-extra: ^8.1.0 + npm-package-arg: ^6.1.0 + npmlog: ^4.1.2 + p-finally: ^1.0.0 + p-map: ^2.1.0 + p-pipe: ^1.2.0 + semver: ^6.2.0 + checksum: 70b270838e7ba06f6da34772938e224443d016cc1ed400972ee2347debc1f0b3fc9cf579a7cf928d23ddb92978b1c74d015caf933d80abec0a41cdc2d8ccb1c8 + languageName: node + linkType: hard + +"@lerna/pulse-till-done@npm:3.13.0": + version: 3.13.0 + resolution: "@lerna/pulse-till-done@npm:3.13.0" + dependencies: + npmlog: ^4.1.2 + checksum: dbfc744c8e125f90224a118adf236ae1123ee9414a48cf8139b67729b99b48bc986f6253b62fb53583feba0fbabb6d85117917146020883671e404110cac2e0d + languageName: node + linkType: hard + +"@lerna/query-graph@npm:3.18.5": + version: 3.18.5 + resolution: "@lerna/query-graph@npm:3.18.5" + dependencies: + "@lerna/package-graph": 3.18.5 + figgy-pudding: ^3.5.1 + checksum: dc247abd91c33a39085894a85acc6556b8fbc4938e5cc2817c5bef4fcf64de5b761c77d8154de0b3ad93fd12e9fe67bb2cf94ce0552371010bb8b97bd52db849 + languageName: node + linkType: hard + +"@lerna/resolve-symlink@npm:3.16.0": + version: 3.16.0 + resolution: "@lerna/resolve-symlink@npm:3.16.0" + dependencies: + fs-extra: ^8.1.0 + npmlog: ^4.1.2 + read-cmd-shim: ^1.0.1 + checksum: 656c5f45841dfb52cd11b5c66b42aecea94a3abb6dfa6dba0d66d7689a6366a51dd487ce63092a0e1aff4c60594330baa92ba30d3423e6d72ec58afdd13640b3 + languageName: node + linkType: hard + +"@lerna/rimraf-dir@npm:3.16.5": + version: 3.16.5 + resolution: "@lerna/rimraf-dir@npm:3.16.5" + dependencies: + "@lerna/child-process": 3.16.5 + npmlog: ^4.1.2 + path-exists: ^3.0.0 + rimraf: ^2.6.2 + checksum: e4bcdf133af4d739e9b66e19781b7b1dfbe127212235a8a5aedb2207dee4ded93aa48d4e30dbb54781eb1c3e5ed2ae36eb4ee6e95d3ca82c3c358958367c77fa + languageName: node + linkType: hard + +"@lerna/run-lifecycle@npm:3.16.2": + version: 3.16.2 + resolution: "@lerna/run-lifecycle@npm:3.16.2" + dependencies: + "@lerna/npm-conf": 3.16.0 + figgy-pudding: ^3.5.1 + npm-lifecycle: ^3.1.2 + npmlog: ^4.1.2 + checksum: fd61bb150e6dd68e578b32fee7ca9176f2e1c3e7a1088f399d8c5cf9de1a38bc738872f679756d802f4d208710a65f8bbb0e17437f8dfbd1a2c81d6fc56be0a5 + languageName: node + linkType: hard + +"@lerna/run-topologically@npm:3.18.5": + version: 3.18.5 + resolution: "@lerna/run-topologically@npm:3.18.5" + dependencies: + "@lerna/query-graph": 3.18.5 + figgy-pudding: ^3.5.1 + p-queue: ^4.0.0 + checksum: bc57c83993424e223ab5dada72a87ad747912fa42529bf7938e9da2e065f2ec3887a3e868a9aebf1eb46d47a4f355c77ba40477d4c7f1441e14dce1943c07855 + languageName: node + linkType: hard + +"@lerna/run@npm:3.21.0": + version: 3.21.0 + resolution: "@lerna/run@npm:3.21.0" + dependencies: + "@lerna/command": 3.21.0 + "@lerna/filter-options": 3.20.0 + "@lerna/npm-run-script": 3.16.5 + "@lerna/output": 3.13.0 + "@lerna/profiler": 3.20.0 + "@lerna/run-topologically": 3.18.5 + "@lerna/timer": 3.13.0 + "@lerna/validation-error": 3.13.0 + p-map: ^2.1.0 + checksum: dab14bdaa3b8fe0209321e9f84880c4999b7a9d5c2144f8eb424a05582e60242bd452d15ce27510368b409f19fe3aa663335c763b35e138a5b464c121302d8c9 + languageName: node + linkType: hard + +"@lerna/symlink-binary@npm:3.17.0": + version: 3.17.0 + resolution: "@lerna/symlink-binary@npm:3.17.0" + dependencies: + "@lerna/create-symlink": 3.16.2 + "@lerna/package": 3.16.0 + fs-extra: ^8.1.0 + p-map: ^2.1.0 + checksum: 8b8de0ce2f007862f30f05bb5bd171777987e2deb21a4d1ce460c53b02ad226b07d301c00be0860cdea27980b0929c85b1e5b344e8d5d58fae7dc383b3c6aa1f + languageName: node + linkType: hard + +"@lerna/symlink-dependencies@npm:3.17.0": + version: 3.17.0 + resolution: "@lerna/symlink-dependencies@npm:3.17.0" + dependencies: + "@lerna/create-symlink": 3.16.2 + "@lerna/resolve-symlink": 3.16.0 + "@lerna/symlink-binary": 3.17.0 + fs-extra: ^8.1.0 + p-finally: ^1.0.0 + p-map: ^2.1.0 + p-map-series: ^1.0.0 + checksum: 818a9de89ef9c0808ed087cb0dd380a03a8d99426ce2e3cb8fb97f94cce9987c9f83c1d978352ce11e1c41d1f46caafba95cc4e373c6ef1116189929b9777f6a + languageName: node + linkType: hard + +"@lerna/timer@npm:3.13.0": + version: 3.13.0 + resolution: "@lerna/timer@npm:3.13.0" + checksum: 08bd089df4c3f8f15d054e61833a624bfd2f667f49115626f4ab9d7f7d364c2c33d374027c124a83d4c467d835c269849ef264211421c89808331bca60a394aa + languageName: node + linkType: hard + +"@lerna/validation-error@npm:3.13.0": + version: 3.13.0 + resolution: "@lerna/validation-error@npm:3.13.0" + dependencies: + npmlog: ^4.1.2 + checksum: 92a50788e3dca052861c3fc9c5f24f08c2d7e31d39084cef98a9e60e86295a27c7d0cf3be34fabb6dc02cafc8809c1d6eaf4e98a790a0c49798527ae9fcca65a + languageName: node + linkType: hard + +"@lerna/version@npm:3.22.1": + version: 3.22.1 + resolution: "@lerna/version@npm:3.22.1" + dependencies: + "@lerna/check-working-tree": 3.16.5 + "@lerna/child-process": 3.16.5 + "@lerna/collect-updates": 3.20.0 + "@lerna/command": 3.21.0 + "@lerna/conventional-commits": 3.22.0 + "@lerna/github-client": 3.22.0 + "@lerna/gitlab-client": 3.15.0 + "@lerna/output": 3.13.0 + "@lerna/prerelease-id-from-version": 3.16.0 + "@lerna/prompt": 3.18.5 + "@lerna/run-lifecycle": 3.16.2 + "@lerna/run-topologically": 3.18.5 + "@lerna/validation-error": 3.13.0 + chalk: ^2.3.1 + dedent: ^0.7.0 + load-json-file: ^5.3.0 + minimatch: ^3.0.4 + npmlog: ^4.1.2 + p-map: ^2.1.0 + p-pipe: ^1.2.0 + p-reduce: ^1.0.0 + p-waterfall: ^1.0.0 + semver: ^6.2.0 + slash: ^2.0.0 + temp-write: ^3.4.0 + write-json-file: ^3.2.0 + checksum: 406350f23130a78d481800369c2b31069ccee60e55eaf7fb9274e24913d36cb8be2054ac1143a104468ed5a032284840626602ac19d947004aafd8e2e0321483 + languageName: node + linkType: hard + +"@lerna/write-log-file@npm:3.13.0": + version: 3.13.0 + resolution: "@lerna/write-log-file@npm:3.13.0" + dependencies: + npmlog: ^4.1.2 + write-file-atomic: ^2.3.0 + checksum: b93c48256d180dc2c44651619d824bf5bee07745fa4ffe08ae1193d134fbcd12db22cbfd870bae98d1b749e9f2801e271843770e013633e29289391b96132998 + languageName: node + linkType: hard + +"@material-ui/core@npm:4.11.0": + version: 4.11.0 + resolution: "@material-ui/core@npm:4.11.0" + dependencies: + "@babel/runtime": ^7.4.4 + "@material-ui/styles": ^4.10.0 + "@material-ui/system": ^4.9.14 + "@material-ui/types": ^5.1.0 + "@material-ui/utils": ^4.10.2 + "@types/react-transition-group": ^4.2.0 + clsx: ^1.0.4 + hoist-non-react-statics: ^3.3.2 + popper.js: 1.16.1-lts + prop-types: ^15.7.2 + react-is: ^16.8.0 + react-transition-group: ^4.4.0 + peerDependencies: + "@types/react": ^16.8.6 + react: ^16.8.0 + react-dom: ^16.8.0 + peerDependenciesMeta: + "@types/react": + optional: true + checksum: 02b3ada79f258f5e5d64fbab804c65d07ea3e8b2533e40c18fcab49c8065ebcb5acfea4ea0b033f2d91dee1fee3a6720f567c0c60f3be1bb5bd754be2d9bf322 + languageName: node + linkType: hard + +"@material-ui/core@npm:4.9.13": + version: 4.9.13 + resolution: "@material-ui/core@npm:4.9.13" + dependencies: + "@babel/runtime": ^7.4.4 + "@material-ui/react-transition-group": ^4.3.0 + "@material-ui/styles": ^4.9.13 + "@material-ui/system": ^4.9.13 + "@material-ui/types": ^5.0.1 + "@material-ui/utils": ^4.9.12 + "@types/react-transition-group": ^4.2.0 + clsx: ^1.0.4 + hoist-non-react-statics: ^3.3.2 + popper.js: ^1.16.1-lts + prop-types: ^15.7.2 + react-is: ^16.8.0 + react-transition-group: ^4.3.0 + peerDependencies: + "@types/react": ^16.8.6 + react: ^16.8.0 + react-dom: ^16.8.0 + peerDependenciesMeta: + "@types/react": + optional: true + checksum: 3e0a06f2fe74d46b3fa802712b4c068fbb2f066dfa67c7c53b6fe33ef4ca1955b725900f7649b685a4d17907cca43dcc08e6a5efcb3c0b7fa5f87d4f2d58e3a3 + languageName: node + linkType: hard + +"@material-ui/icons@npm:4.9.1": + version: 4.9.1 + resolution: "@material-ui/icons@npm:4.9.1" + dependencies: + "@babel/runtime": ^7.4.4 + peerDependencies: + "@material-ui/core": ^4.0.0 + "@types/react": ^16.8.6 + react: ^16.8.0 + react-dom: ^16.8.0 + peerDependenciesMeta: + "@types/react": + optional: true + checksum: 110bb77f0758d16ad85b6a91f23fe05bac6790b30b6b1889b0578d7d42050c63c76e2764ec4991bdf342073de43e14ebfc171f1c63296a6dd8d523cc6c07d2bb + languageName: node + linkType: hard + +"@material-ui/lab@npm:4.0.0-alpha.50": + version: 4.0.0-alpha.50 + resolution: "@material-ui/lab@npm:4.0.0-alpha.50" + dependencies: + "@babel/runtime": ^7.4.4 + "@material-ui/utils": ^4.9.6 + clsx: ^1.0.4 + prop-types: ^15.7.2 + react-is: ^16.8.0 + peerDependencies: + "@material-ui/core": ^4.9.10 + "@types/react": ^16.8.6 + react: ^16.8.0 + react-dom: ^16.8.0 + peerDependenciesMeta: + "@types/react": + optional: true + checksum: ee40ab7895efc6ddb4262da04a6bd1631956c89ae7d61b95e319935635c4f7e669909359cf4a2cd8e0815a49f798212b43eef32be6a2e3e4eaa7849e62351067 + languageName: node + linkType: hard + +"@material-ui/react-transition-group@npm:^4.3.0": + version: 4.3.0 + resolution: "@material-ui/react-transition-group@npm:4.3.0" + dependencies: + "@babel/runtime": ^7.5.5 + dom-helpers: ^5.0.1 + loose-envify: ^1.4.0 + prop-types: ^15.6.2 + peerDependencies: + react: ">=16.6.0" + react-dom: ">=16.6.0" + checksum: 55a7b8d787d7194ac39a249333509ac6c011909bb3f17c15102b1f8b60c4d7c43782f6625861e6c35f8c9348d74a1144009272c0a0f65bced2bca20a625450d1 + languageName: node + linkType: hard + +"@material-ui/styles@npm:4.10.0, @material-ui/styles@npm:^4.10.0, @material-ui/styles@npm:^4.9.13": + version: 4.10.0 + resolution: "@material-ui/styles@npm:4.10.0" + dependencies: + "@babel/runtime": ^7.4.4 + "@emotion/hash": ^0.8.0 + "@material-ui/types": ^5.1.0 + "@material-ui/utils": ^4.9.6 + clsx: ^1.0.4 + csstype: ^2.5.2 + hoist-non-react-statics: ^3.3.2 + jss: ^10.0.3 + jss-plugin-camel-case: ^10.0.3 + jss-plugin-default-unit: ^10.0.3 + jss-plugin-global: ^10.0.3 + jss-plugin-nested: ^10.0.3 + jss-plugin-props-sort: ^10.0.3 + jss-plugin-rule-value-function: ^10.0.3 + jss-plugin-vendor-prefixer: ^10.0.3 + prop-types: ^15.7.2 + peerDependencies: + "@types/react": ^16.8.6 + react: ^16.8.0 + react-dom: ^16.8.0 + peerDependenciesMeta: + "@types/react": + optional: true + checksum: 928821cb46416d494703f57d1c1f4d20137679d5eb23f01695b4a1afaec80dbb0f4011be2936496b1b5092bde4fb69f9cb1e747de927d05a5a05451cd24699a0 + languageName: node + linkType: hard + +"@material-ui/styles@npm:4.9.13": + version: 4.9.13 + resolution: "@material-ui/styles@npm:4.9.13" + dependencies: + "@babel/runtime": ^7.4.4 + "@emotion/hash": ^0.8.0 + "@material-ui/types": ^5.0.1 + "@material-ui/utils": ^4.9.6 + clsx: ^1.0.4 + csstype: ^2.5.2 + hoist-non-react-statics: ^3.3.2 + jss: ^10.0.3 + jss-plugin-camel-case: ^10.0.3 + jss-plugin-default-unit: ^10.0.3 + jss-plugin-global: ^10.0.3 + jss-plugin-nested: ^10.0.3 + jss-plugin-props-sort: ^10.0.3 + jss-plugin-rule-value-function: ^10.0.3 + jss-plugin-vendor-prefixer: ^10.0.3 + prop-types: ^15.7.2 + peerDependencies: + "@types/react": ^16.8.6 + react: ^16.8.0 + react-dom: ^16.8.0 + peerDependenciesMeta: + "@types/react": + optional: true + checksum: 23cb49be5314886f90b856ca81d48aa13ba90c845f471b20dde1aa954c90b1d78a270736d44f282f3efa52cca00b79555c347d372a4f00fd443ba4593dffb9ec + languageName: node + linkType: hard + +"@material-ui/system@npm:^4.9.13, @material-ui/system@npm:^4.9.14": + version: 4.9.14 + resolution: "@material-ui/system@npm:4.9.14" + dependencies: + "@babel/runtime": ^7.4.4 + "@material-ui/utils": ^4.9.6 + csstype: ^2.5.2 + prop-types: ^15.7.2 + peerDependencies: + "@types/react": ^16.8.6 + react: ^16.8.0 + react-dom: ^16.8.0 + peerDependenciesMeta: + "@types/react": + optional: true + checksum: f1be6f4564e1c1ec023885b2bf72e6b5cc1354a929d95dcf10640efcdef3763d877b58c1b84f660eaacad4a21478da62e21aaa20b871b0bc40a41a64037c19a2 + languageName: node + linkType: hard + +"@material-ui/types@npm:^5.0.1, @material-ui/types@npm:^5.1.0": + version: 5.1.0 + resolution: "@material-ui/types@npm:5.1.0" + peerDependencies: + "@types/react": "*" + peerDependenciesMeta: + "@types/react": + optional: true + checksum: 098567661854c0c7e886813f09690324fec3e2136cd79fa600949940ae30b8326eb2843fc8f65108cb0f53e1a6f8be5af7d4b5f884ba10b39c4c9d2a0105d3f5 + languageName: node + linkType: hard + +"@material-ui/utils@npm:^4.10.2, @material-ui/utils@npm:^4.9.12, @material-ui/utils@npm:^4.9.6": + version: 4.10.2 + resolution: "@material-ui/utils@npm:4.10.2" + dependencies: + "@babel/runtime": ^7.4.4 + prop-types: ^15.7.2 + react-is: ^16.8.0 + peerDependencies: + react: ^16.8.0 + react-dom: ^16.8.0 + checksum: 53b2a9ca15fce2b692c41bec9e59a10c47c2527a864f81081432d92bd82fbf8748200df6c52dc4ae459f041740ec599cd34f62b210a50b27992b4032742a273f + languageName: node + linkType: hard + +"@mdx-js/mdx@npm:^1.5.8": + version: 1.6.16 + resolution: "@mdx-js/mdx@npm:1.6.16" + dependencies: + "@babel/core": 7.10.5 + "@babel/plugin-syntax-jsx": 7.10.4 + "@babel/plugin-syntax-object-rest-spread": 7.8.3 + "@mdx-js/util": 1.6.16 + babel-plugin-apply-mdx-type-prop: 1.6.16 + babel-plugin-extract-import-names: 1.6.16 + camelcase-css: 2.0.1 + detab: 2.0.3 + hast-util-raw: 6.0.0 + lodash.uniq: 4.5.0 + mdast-util-to-hast: 9.1.0 + remark-footnotes: 1.0.0 + remark-mdx: 1.6.16 + remark-parse: 8.0.3 + remark-squeeze-paragraphs: 4.0.0 + style-to-object: 0.3.0 + unified: 9.1.0 + unist-builder: 2.0.3 + unist-util-visit: 2.0.3 + checksum: f88da533cac26f1f62bbe24853068ccc38f5a2e3733e96c8d2a261ee7e31c7ce8ead87efddcba40f53ec44e90098e30de306617030b30e74bec013a20677bc4f + languageName: node + linkType: hard + +"@mdx-js/react@npm:^1.5.8": + version: 1.6.16 + resolution: "@mdx-js/react@npm:1.6.16" + peerDependencies: + react: ^16.13.1 + checksum: a68aef2ce94cdde6c8a408e174c3d92cca4997356ab5e228f4d5689c2f3d35f28b63c1ae22e8b6b6db1539411e4f3a8275d1ea76987b5d73558296613c727ad8 + languageName: node + linkType: hard + +"@mdx-js/util@npm:1.6.16": + version: 1.6.16 + resolution: "@mdx-js/util@npm:1.6.16" + checksum: 3ffe44393252c0505d724da3dbdbe0195229ef2e9e08524d6f2e14ff9ed027224abf869adadf1893207b2203c9b5123270c1213f87a749f692d67642c02475f6 + languageName: node + linkType: hard + +"@mrmlnc/readdir-enhanced@npm:^2.2.1": + version: 2.2.1 + resolution: "@mrmlnc/readdir-enhanced@npm:2.2.1" + dependencies: + call-me-maybe: ^1.0.1 + glob-to-regexp: ^0.3.0 + checksum: e01193b783ed7682710a9af87ba05c69d15cc2183eedca36e37c720bbb7d7449f7d5cd8ad15c991f20c5d95cdce1a3a10ef6d82b1bb8a9762a193ad4245cc9da + languageName: node + linkType: hard + +"@nodelib/fs.scandir@npm:2.1.3": + version: 2.1.3 + resolution: "@nodelib/fs.scandir@npm:2.1.3" + dependencies: + "@nodelib/fs.stat": 2.0.3 + run-parallel: ^1.1.9 + checksum: 1f100655dd65cda70b92cd4497b34f85855fd7b8f439d1eb0d0304e605e5a7c97e100710bfff21447f792b2504d5c6a9918b74696ccc22f32b279fb557c1db47 + languageName: node + linkType: hard + +"@nodelib/fs.stat@npm:2.0.3, @nodelib/fs.stat@npm:^2.0.2": + version: 2.0.3 + resolution: "@nodelib/fs.stat@npm:2.0.3" + checksum: 1bfdb2f419370fe5f8412ae2691cc50122c829103719627b36838e875feacc982a9d8d102ea6b5ab1479538a96867f324f63fe97440d8352d03ffa6337beec45 + languageName: node + linkType: hard + +"@nodelib/fs.stat@npm:^1.1.2": + version: 1.1.3 + resolution: "@nodelib/fs.stat@npm:1.1.3" + checksum: 351499088e1b332e48a187e7d4b6bbbd84459970f5b4a7155dbd67ee4a5af766f5f2ca49ff19af8ee29cc16a130eafa7968b64f966498a7bf94d5d8032dd7ec0 + languageName: node + linkType: hard + +"@nodelib/fs.walk@npm:^1.2.3": + version: 1.2.4 + resolution: "@nodelib/fs.walk@npm:1.2.4" + dependencies: + "@nodelib/fs.scandir": 2.1.3 + fastq: ^1.6.0 + checksum: f4bffba16cc5d527fa594e120065e6d2376e274fb5df42cc744fcd28805fe23844590db74b20e102805280794208438b574e6e7fc25c6c245896909992a65e83 + languageName: node + linkType: hard + +"@octokit/auth-token@npm:^2.4.0": + version: 2.4.2 + resolution: "@octokit/auth-token@npm:2.4.2" + dependencies: + "@octokit/types": ^5.0.0 + checksum: e3347630bbe4d22409879ac6aa166675410cef4fb0ac3ca734d2ab6fa49abf100b28d2de9b5ad347790686fd8d41897a21bbeb2d01f46d6f9ab0faf760f10b83 + languageName: node + linkType: hard + +"@octokit/endpoint@npm:^6.0.1": + version: 6.0.5 + resolution: "@octokit/endpoint@npm:6.0.5" + dependencies: + "@octokit/types": ^5.0.0 + is-plain-object: ^4.0.0 + universal-user-agent: ^6.0.0 + checksum: 2d637ef3a338509d899c08d10074f9313e0fe6ebde39ed390eb10c5aa6da19dee22fcaf4235da4726e8a3a1244744b3d2c4900890d15aefe7cf4a945900c43dc + languageName: node + linkType: hard + +"@octokit/plugin-enterprise-rest@npm:^6.0.1": + version: 6.0.1 + resolution: "@octokit/plugin-enterprise-rest@npm:6.0.1" + checksum: 12a599a97d212209e00631805290e514f2823de6548e18831b802300ec1b555856510a8e72274168d15298602554be6bb6b247c091e5dacc320067fe8955740e + languageName: node + linkType: hard + +"@octokit/plugin-paginate-rest@npm:^1.1.1": + version: 1.1.2 + resolution: "@octokit/plugin-paginate-rest@npm:1.1.2" + dependencies: + "@octokit/types": ^2.0.1 + checksum: 3a60026e4c5a921209177eee505bafe8cfa81cfe838a364cd17294e0b5a549961bcfb0455f7ae3d51453a1ef686505a48c4a4d92f9153b3c27a0da69487e05db + languageName: node + linkType: hard + +"@octokit/plugin-request-log@npm:^1.0.0": + version: 1.0.0 + resolution: "@octokit/plugin-request-log@npm:1.0.0" + checksum: fa9e3bd25fb1ec89b28ac0fa11bfc70f4d105ec603c958444a83ff0a6e5076aa1cdc6279e6344e79cac118cf8a0eae26b277e57c9dc08b7ec12aab16d196c66f + languageName: node + linkType: hard + +"@octokit/plugin-rest-endpoint-methods@npm:2.4.0": + version: 2.4.0 + resolution: "@octokit/plugin-rest-endpoint-methods@npm:2.4.0" + dependencies: + "@octokit/types": ^2.0.1 + deprecation: ^2.3.1 + checksum: 5b4673449fe320576769df70417a40de54760906971341f2576da76571b914a8e5d6144ca5f38b7b29c14d5549ebc0a52ad3cbaa110449b70f83c02ca0ff4287 + languageName: node + linkType: hard + +"@octokit/request-error@npm:^1.0.2": + version: 1.2.1 + resolution: "@octokit/request-error@npm:1.2.1" + dependencies: + "@octokit/types": ^2.0.0 + deprecation: ^2.0.0 + once: ^1.4.0 + checksum: 8612f7a03728828a2e6389dc0007c5d9078405defea9025175e75404036d00ca8ceb847e662ebba2cf5a08861d8eb80ec0cdfec0732682999c99bf7173759ff7 + languageName: node + linkType: hard + +"@octokit/request-error@npm:^2.0.0": + version: 2.0.2 + resolution: "@octokit/request-error@npm:2.0.2" + dependencies: + "@octokit/types": ^5.0.1 + deprecation: ^2.0.0 + once: ^1.4.0 + checksum: 3ba45b317978025ae5e1afcdd288276e00c199088df7f6b21d0d954ff6f14419057aa5fdd0fd38a8cc2b1335ce41f1937ada3a67cd262af0d9cabcde265f2969 + languageName: node + linkType: hard + +"@octokit/request@npm:^5.2.0": + version: 5.4.7 + resolution: "@octokit/request@npm:5.4.7" + dependencies: + "@octokit/endpoint": ^6.0.1 + "@octokit/request-error": ^2.0.0 + "@octokit/types": ^5.0.0 + deprecation: ^2.0.0 + is-plain-object: ^4.0.0 + node-fetch: ^2.3.0 + once: ^1.4.0 + universal-user-agent: ^6.0.0 + checksum: 1f4e8b49f6d8fa2e37ffa04900cc2571a4d77760869dc3d5cae26786e503ae2d507de81fabb031743e8ea3bc391a62be1fc558b1c23c81c77ad76acf7ee83169 + languageName: node + linkType: hard + +"@octokit/rest@npm:^16.28.4": + version: 16.43.2 + resolution: "@octokit/rest@npm:16.43.2" + dependencies: + "@octokit/auth-token": ^2.4.0 + "@octokit/plugin-paginate-rest": ^1.1.1 + "@octokit/plugin-request-log": ^1.0.0 + "@octokit/plugin-rest-endpoint-methods": 2.4.0 + "@octokit/request": ^5.2.0 + "@octokit/request-error": ^1.0.2 + atob-lite: ^2.0.0 + before-after-hook: ^2.0.0 + btoa-lite: ^1.0.0 + deprecation: ^2.0.0 + lodash.get: ^4.4.2 + lodash.set: ^4.3.2 + lodash.uniq: ^4.5.0 + octokit-pagination-methods: ^1.1.0 + once: ^1.4.0 + universal-user-agent: ^4.0.0 + checksum: d7a7a7cf5add047db99c1a80b2587ae42d9fd8d29bdc46ee9bd306bba62d85c04911329a4fcb2b27f010d40b693c83d9c1e213269303fa9f04b3e7dc8d6de872 + languageName: node + linkType: hard + +"@octokit/types@npm:^2.0.0, @octokit/types@npm:^2.0.1": + version: 2.16.2 + resolution: "@octokit/types@npm:2.16.2" + dependencies: + "@types/node": ">= 8" + checksum: 0cdd051034f3d48fc48f40929f2a7832236c490045242e04408c753edb4fa7e947e7e34d21b00df933b3719726671da89648a7bf20816f4e05368e420d874ae4 + languageName: node + linkType: hard + +"@octokit/types@npm:^5.0.0, @octokit/types@npm:^5.0.1": + version: 5.4.0 + resolution: "@octokit/types@npm:5.4.0" + dependencies: + "@types/node": ">= 8" + checksum: 7dab73cee1f7580e0ad7d8d5a29d64da7dda7eea2d8b4257aa418dc7ac2d7b688073628ff55de5fba233ac650b4c867cdadc5c80fb35b9615eb7a6003078f794 + languageName: node + linkType: hard + +"@protobufjs/aspromise@npm:^1.1.1, @protobufjs/aspromise@npm:^1.1.2": + version: 1.1.2 + resolution: "@protobufjs/aspromise@npm:1.1.2" + checksum: 83ced0798abea0c30ed07dc6338605ddfd8dc7b8b15d84586d155980f90476a8f049e7695d7de79d35dcada29a01710d24d0aa2104e8466412c0cbc6c14d9173 + languageName: node + linkType: hard + +"@protobufjs/base64@npm:^1.1.2": + version: 1.1.2 + resolution: "@protobufjs/base64@npm:1.1.2" + checksum: ae9e84aaf69f5e6aedfb346153c236e6f6ca0e97612c680251fc3e48e6c60746ed553062ea97fdde9f0592fb085e467b9de377a848a224d990a4f0a5e7212fa4 + languageName: node + linkType: hard + +"@protobufjs/codegen@npm:^2.0.4": + version: 2.0.4 + resolution: "@protobufjs/codegen@npm:2.0.4" + checksum: a05d5f8892eeb7696c73f7585a9c3a89eea293b37a582cd1a5d650908393287b0ca068dc55e7bbecd3ec146b2f61afaff2f61e3cb488ea67b900114247b1b717 + languageName: node + linkType: hard + +"@protobufjs/eventemitter@npm:^1.1.0": + version: 1.1.0 + resolution: "@protobufjs/eventemitter@npm:1.1.0" + checksum: 32a84e33f191a3ddc0ca4f8975484c0afaf10c2b27e0cb2008dabe267791420447c25d77b1409595aa6be660a908ada306d40cccb675aee7912c4bc82a9f512e + languageName: node + linkType: hard + +"@protobufjs/fetch@npm:^1.1.0": + version: 1.1.0 + resolution: "@protobufjs/fetch@npm:1.1.0" + dependencies: + "@protobufjs/aspromise": ^1.1.1 + "@protobufjs/inquire": ^1.1.0 + checksum: d682e5d8a164d096d71b05866eb0852d4e1fc024900e3af96a57d9f6396402b96d81b7bd77cda6b983ebcbfd715ec12dd1c1582760b7658a9438c530f5f6f4db + languageName: node + linkType: hard + +"@protobufjs/float@npm:^1.0.2": + version: 1.0.2 + resolution: "@protobufjs/float@npm:1.0.2" + checksum: eee7278de2c4550fac7ec156cba3d4227226a08470426cba6eb04671be9aea035bdf79b7839fdad624171451a4d66e1cdf01e4980e57223ba4f1e34ccd187563 + languageName: node + linkType: hard + +"@protobufjs/inquire@npm:^1.1.0": + version: 1.1.0 + resolution: "@protobufjs/inquire@npm:1.1.0" + checksum: 3541518cca945c2a95e2dcacacdc243fd64abc4cc51c2b691bd0534bd8a1b945c90368f57ba3fed1d6632e1e68d6dac6a7761738f89ccf60bb352b6624c8aacb + languageName: node + linkType: hard + +"@protobufjs/path@npm:^1.1.2": + version: 1.1.2 + resolution: "@protobufjs/path@npm:1.1.2" + checksum: 22f10c5c22e5b3f7bb3e7f0af15bafa1fe42bad3705f27448464c6221d956d10c6c9dad96a48650ec5acba7b072a64ab94da52e21f00e6cd9612da761f02b845 + languageName: node + linkType: hard + +"@protobufjs/pool@npm:^1.1.0": + version: 1.1.0 + resolution: "@protobufjs/pool@npm:1.1.0" + checksum: 5fc4af9e069b58cc39cfd6fded3bfe3de7113d35c1bc3458bfc6699fa42e90c2c6d96b5ae7c274470f272135122a9ab94c708eacfd81e1b0a593917841b07ec4 + languageName: node + linkType: hard + +"@protobufjs/utf8@npm:^1.1.0": + version: 1.1.0 + resolution: "@protobufjs/utf8@npm:1.1.0" + checksum: 5b3fa7425fe2852f6e5643d9a53c6cfb4491630667176c0fc35ddb7a71101559241bafb6b80486144ed75da3d3624095d037c802b578dbdb4cce131cf1bcb7cf + languageName: node + linkType: hard + +"@samverschueren/stream-to-observable@npm:^0.3.0": + version: 0.3.1 + resolution: "@samverschueren/stream-to-observable@npm:0.3.1" + dependencies: + any-observable: ^0.3.0 + peerDependencies: + rxjs: "*" + zen-observable: "*" + peerDependenciesMeta: + rxjs: + optional: true + zen-observable: + optional: true + checksum: 6a097438c84c526dbd4be6e1655fe0080833ed21d7f27a19250d7af85d2fe34d36d4aa5b042a06bbd6dfade53427b5c4e2ada400c861afa534ee7068223fe7e9 + languageName: node + linkType: hard + +"@sindresorhus/is@npm:^0.14.0": + version: 0.14.0 + resolution: "@sindresorhus/is@npm:0.14.0" + checksum: da26389d6e23f64726224ffda6f6a04bab88e15b9c4eb8f9e5fdafc3baaaa071c85c47816723b7e61e14bf2f4dcff25d6bc1629032c2916ffb8b3fe759ad7b1f + languageName: node + linkType: hard + +"@sinonjs/commons@npm:^1.7.0": + version: 1.8.1 + resolution: "@sinonjs/commons@npm:1.8.1" + dependencies: + type-detect: 4.0.8 + checksum: adbf84a27bc895ca7bbe8ea9f53df9b5625a3d4fd54bc9390c88fa86a75b9d6d56722032336ab294c184862a09640932d794c347a4ed265c9ea126d966d0bf23 + languageName: node + linkType: hard + +"@sinonjs/fake-timers@npm:^6.0.1": + version: 6.0.1 + resolution: "@sinonjs/fake-timers@npm:6.0.1" + dependencies: + "@sinonjs/commons": ^1.7.0 + checksum: 64458b908773638dda08b555a00e6fbbbc679735348291dc1b7f437ada2f60242537fdc48e4ee82d2573d86984ec87e755b66a96c0ed9ebf0f46b4c6687ccde2 + languageName: node + linkType: hard + +"@svgr/babel-plugin-add-jsx-attribute@npm:^4.2.0": + version: 4.2.0 + resolution: "@svgr/babel-plugin-add-jsx-attribute@npm:4.2.0" + checksum: af843b702aea72d213f0d1816df539b90546e31667c91807b79348b702f53efd3fa324837909f7656dae017f1d3626bfc52222cde848f73f50e86cdfec76f285 + languageName: node + linkType: hard + +"@svgr/babel-plugin-add-jsx-attribute@npm:^5.4.0": + version: 5.4.0 + resolution: "@svgr/babel-plugin-add-jsx-attribute@npm:5.4.0" + checksum: 47774c40258bbf032df76bc67683b43f7fd702f543be86f330a30468eabb931ca1916531b2b219e42060d6d581a761c890e66910171819a2d6c47da0614d463e + languageName: node + linkType: hard + +"@svgr/babel-plugin-remove-jsx-attribute@npm:^4.2.0": + version: 4.2.0 + resolution: "@svgr/babel-plugin-remove-jsx-attribute@npm:4.2.0" + checksum: 75c1af25c92ed5e118641c2a246b2b555e6716f3910c8f9c1a380210827e98713fec475923f913b687b360712915f69e2a82931a597fde1977355c7995589a49 + languageName: node + linkType: hard + +"@svgr/babel-plugin-remove-jsx-attribute@npm:^5.4.0": + version: 5.4.0 + resolution: "@svgr/babel-plugin-remove-jsx-attribute@npm:5.4.0" + checksum: 38448e29a065bb72a39838b945988501772258cb6c7ec0c69ab1e5ee3003e85696a115372c95431ced7ef1bfe9a382d2b675f1dd38d7ad0a174d9b6366521345 + languageName: node + linkType: hard + +"@svgr/babel-plugin-remove-jsx-empty-expression@npm:^4.2.0": + version: 4.2.0 + resolution: "@svgr/babel-plugin-remove-jsx-empty-expression@npm:4.2.0" + checksum: d66e7c6e68e797f91838a4908aec88021a94e818fd141518afb71311240551e721cf1c0a4b4cf118cb6ae6a898a45865c95e3a1d6375c2c87d50178d4a8ef886 + languageName: node + linkType: hard + +"@svgr/babel-plugin-remove-jsx-empty-expression@npm:^5.0.1": + version: 5.0.1 + resolution: "@svgr/babel-plugin-remove-jsx-empty-expression@npm:5.0.1" + checksum: 4afbf76dfff20604dc75d159ee190f89c76231e15258de661ecbdf8211307426b16d438a4de3959f273fd949e32a082ba06a5419329b65d5aaea7ee8b1ffe408 + languageName: node + linkType: hard + +"@svgr/babel-plugin-replace-jsx-attribute-value@npm:^4.2.0": + version: 4.2.0 + resolution: "@svgr/babel-plugin-replace-jsx-attribute-value@npm:4.2.0" + checksum: e1067d3938ab9b20b6be512889d6c62ba667b0464679db588c454f64e0df5f275051219457b2266061f4ab8a3fbe7d00e06250a99c5d9368e5784d9d310ea586 + languageName: node + linkType: hard + +"@svgr/babel-plugin-replace-jsx-attribute-value@npm:^5.0.1": + version: 5.0.1 + resolution: "@svgr/babel-plugin-replace-jsx-attribute-value@npm:5.0.1" + checksum: 9a540c190422fe7b0d0d98398bc1055f0e41ab909eff9ceb2c18cc26c849ee2516019a73a3d95c553c53a1ba913d82db5baae4e679e345bd3cc9ebf97b3a27ae + languageName: node + linkType: hard + +"@svgr/babel-plugin-svg-dynamic-title@npm:^4.3.3": + version: 4.3.3 + resolution: "@svgr/babel-plugin-svg-dynamic-title@npm:4.3.3" + checksum: a5a53b3e49d2d421a5b17588dda5cee20edc8ae4ebc65a581d1fde482d632992428268ef2af6bc83675b0de89c746e497b62f3f8542a7a66f4e30915d568764f + languageName: node + linkType: hard + +"@svgr/babel-plugin-svg-dynamic-title@npm:^5.4.0": + version: 5.4.0 + resolution: "@svgr/babel-plugin-svg-dynamic-title@npm:5.4.0" + checksum: 4c3422e7bfedb9d7d5d99ffcac59f54ef051519e55a03e7d56917f5461decc4af85ba2fb831fc05849db94a28b44074d5bedc5537d941f974750b8ecff100b0d + languageName: node + linkType: hard + +"@svgr/babel-plugin-svg-em-dimensions@npm:^4.2.0": + version: 4.2.0 + resolution: "@svgr/babel-plugin-svg-em-dimensions@npm:4.2.0" + checksum: 2ca6ab5aec7ed8d519abc576db9a9e877001c9f08536fd6416d051cf11a5f73917a615df32cc5973162a93d6a2798693a045926a4dcc64fa56de6b4a3e303600 + languageName: node + linkType: hard + +"@svgr/babel-plugin-svg-em-dimensions@npm:^5.4.0": + version: 5.4.0 + resolution: "@svgr/babel-plugin-svg-em-dimensions@npm:5.4.0" + checksum: a3085fa04545a0d871bc3fc35c79514a1367afd56968e6d036fca5b06ae3f2a327930aadbb8af39c8e415cd4362795c626d6d61b35a7972723525455ca227b79 + languageName: node + linkType: hard + +"@svgr/babel-plugin-transform-react-native-svg@npm:^4.2.0": + version: 4.2.0 + resolution: "@svgr/babel-plugin-transform-react-native-svg@npm:4.2.0" + checksum: 916d593ee0adca94edd9bb87d6c9e061aba68bc3a20e7d12a6e1dcbaaecad66a12a55419318aeba665188db6ce7944cb4d004e3abeaedaa7ac032d20d522c26c + languageName: node + linkType: hard + +"@svgr/babel-plugin-transform-react-native-svg@npm:^5.4.0": + version: 5.4.0 + resolution: "@svgr/babel-plugin-transform-react-native-svg@npm:5.4.0" + checksum: 5bc36631575ee45a312415df264f2aa86a40151499fc742fae7054ef52916ecd86a9cd1aafa53b5b877b831fb3b556158f0b5b29bb2fffbc4fa7a0fbb24f18f7 + languageName: node + linkType: hard + +"@svgr/babel-plugin-transform-svg-component@npm:^4.2.0": + version: 4.2.0 + resolution: "@svgr/babel-plugin-transform-svg-component@npm:4.2.0" + checksum: 1c3c68ce1af23f61e9cfdb9638e2b20fa10f699d8e88a223f2a57eaf4bc7ba11a7907cb53ce1dbd5b79ec94e6a0dd382b1962cd2197f4e3678c6be940bcdcf8e + languageName: node + linkType: hard + +"@svgr/babel-plugin-transform-svg-component@npm:^5.4.0": + version: 5.4.0 + resolution: "@svgr/babel-plugin-transform-svg-component@npm:5.4.0" + checksum: 7ecca81fd55c9b6071e39549f9e1a9ce48bc2ce76a4e8a9b3ca48a90e48045a59bf8c3b80148a9f4a85f4825ac3b1b6827b32793d167cf6f726c707bfe0588f8 + languageName: node + linkType: hard + +"@svgr/babel-preset@npm:^4.3.3": + version: 4.3.3 + resolution: "@svgr/babel-preset@npm:4.3.3" + dependencies: + "@svgr/babel-plugin-add-jsx-attribute": ^4.2.0 + "@svgr/babel-plugin-remove-jsx-attribute": ^4.2.0 + "@svgr/babel-plugin-remove-jsx-empty-expression": ^4.2.0 + "@svgr/babel-plugin-replace-jsx-attribute-value": ^4.2.0 + "@svgr/babel-plugin-svg-dynamic-title": ^4.3.3 + "@svgr/babel-plugin-svg-em-dimensions": ^4.2.0 + "@svgr/babel-plugin-transform-react-native-svg": ^4.2.0 + "@svgr/babel-plugin-transform-svg-component": ^4.2.0 + checksum: 855c7c031ee307b2497d01eb8d785d88912df1ed31cc0ee93c550710e360717e7e603515ffc1d05b35f0b829b0561ab6aabe5308d8463c17199c51c6ce9301c9 + languageName: node + linkType: hard + +"@svgr/babel-preset@npm:^5.4.0": + version: 5.4.0 + resolution: "@svgr/babel-preset@npm:5.4.0" + dependencies: + "@svgr/babel-plugin-add-jsx-attribute": ^5.4.0 + "@svgr/babel-plugin-remove-jsx-attribute": ^5.4.0 + "@svgr/babel-plugin-remove-jsx-empty-expression": ^5.0.1 + "@svgr/babel-plugin-replace-jsx-attribute-value": ^5.0.1 + "@svgr/babel-plugin-svg-dynamic-title": ^5.4.0 + "@svgr/babel-plugin-svg-em-dimensions": ^5.4.0 + "@svgr/babel-plugin-transform-react-native-svg": ^5.4.0 + "@svgr/babel-plugin-transform-svg-component": ^5.4.0 + checksum: 3364604a96f58f654529ca9233a413008edb06ad63cbc2b76dd5fbce217a96f49b0f49aa8f38daa508d40f10c8a5ad8f03ea59b3cb5e321da16ed33379cbb318 + languageName: node + linkType: hard + +"@svgr/core@npm:^4.3.3": + version: 4.3.3 + resolution: "@svgr/core@npm:4.3.3" + dependencies: + "@svgr/plugin-jsx": ^4.3.3 + camelcase: ^5.3.1 + cosmiconfig: ^5.2.1 + checksum: 1bd9710f7229cd9adf867f17799b7abcb8f0232382ceea5e3aabefd2166f2666c2707f11715b52f5154294d9c2c9c5723551f4fdb6152037e2262dd200f909a9 + languageName: node + linkType: hard + +"@svgr/core@npm:^5.4.0": + version: 5.4.0 + resolution: "@svgr/core@npm:5.4.0" + dependencies: + "@svgr/plugin-jsx": ^5.4.0 + camelcase: ^6.0.0 + cosmiconfig: ^6.0.0 + checksum: f8ca39b458f4bfb0793d319db6c619e2648929c32adf9fae205b23f4302766261c7222af860c5ce9ab526a0a6343f08056b7b3ff03369758522fd39c1459472d + languageName: node + linkType: hard + +"@svgr/hast-util-to-babel-ast@npm:^4.3.2": + version: 4.3.2 + resolution: "@svgr/hast-util-to-babel-ast@npm:4.3.2" + dependencies: + "@babel/types": ^7.4.4 + checksum: 5a311e38193d81c8c194dde74d12995e0a1702dde594ab788eaaec124ea58c27fca7a2c49e072e29b523a5e9ae898b9c4aeb2995b9e7ad217ed941585b67b7ef + languageName: node + linkType: hard + +"@svgr/hast-util-to-babel-ast@npm:^5.4.0": + version: 5.4.0 + resolution: "@svgr/hast-util-to-babel-ast@npm:5.4.0" + dependencies: + "@babel/types": ^7.9.5 + checksum: 24e174924fa74717529529d4a56a4ce159352fbe8bc14eb40509326ab3f1242d5c25def531b4ea1e65165fe7c1538ada3a1b7b0039edb09eee54f15437dd6d53 + languageName: node + linkType: hard + +"@svgr/plugin-jsx@npm:^4.3.3": + version: 4.3.3 + resolution: "@svgr/plugin-jsx@npm:4.3.3" + dependencies: + "@babel/core": ^7.4.5 + "@svgr/babel-preset": ^4.3.3 + "@svgr/hast-util-to-babel-ast": ^4.3.2 + svg-parser: ^2.0.0 + checksum: 425aa1ae322c46b0e93e2c8405389252fa5edd24abe7efbf0a487d0f14b7e524eb1830e4e9c49665fb2c923e87884e9aff1c6b1b828c9d4b4c765e0546a6690f + languageName: node + linkType: hard + +"@svgr/plugin-jsx@npm:^5.4.0": + version: 5.4.0 + resolution: "@svgr/plugin-jsx@npm:5.4.0" + dependencies: + "@babel/core": ^7.7.5 + "@svgr/babel-preset": ^5.4.0 + "@svgr/hast-util-to-babel-ast": ^5.4.0 + svg-parser: ^2.0.2 + checksum: 96c20838c74fecbea1100c08c2c8420cad533a4bc791bcc8bc2201bd0bb0da698105bb5eb021ed11c2f1ff216b31c400e39b3234a598c73187fe59e9e18b5ab2 + languageName: node + linkType: hard + +"@svgr/plugin-svgo@npm:^4.3.1": + version: 4.3.1 + resolution: "@svgr/plugin-svgo@npm:4.3.1" + dependencies: + cosmiconfig: ^5.2.1 + merge-deep: ^3.0.2 + svgo: ^1.2.2 + checksum: ed4d33e2f15360722f731c76137c40a3013b49be57e1ee4498f26faa44b27eb5731c3170c1595368fae7c7a2e06330951f932ea2f2c07172c22fe489441bf37d + languageName: node + linkType: hard + +"@svgr/plugin-svgo@npm:^5.4.0": + version: 5.4.0 + resolution: "@svgr/plugin-svgo@npm:5.4.0" + dependencies: + cosmiconfig: ^6.0.0 + merge-deep: ^3.0.2 + svgo: ^1.2.2 + checksum: 52656c2d9313c9175c15a7c67419fb5b3bd5a1acf3c9a7a7dabe37fe04a46e00f157fc5a324df35797921e50ae3c2204634378b61f863db994d30c027374b7e1 + languageName: node + linkType: hard + +"@svgr/webpack@npm:4.3.3": + version: 4.3.3 + resolution: "@svgr/webpack@npm:4.3.3" + dependencies: + "@babel/core": ^7.4.5 + "@babel/plugin-transform-react-constant-elements": ^7.0.0 + "@babel/preset-env": ^7.4.5 + "@babel/preset-react": ^7.0.0 + "@svgr/core": ^4.3.3 + "@svgr/plugin-jsx": ^4.3.3 + "@svgr/plugin-svgo": ^4.3.1 + loader-utils: ^1.2.3 + checksum: 160f2805c5c1173c71908c26b03f3f832ba8024c1146e2945b94e94d85c6874a4b521f3417d4542d45141f29f4d1fbea07b54960d03c23aae46730c27380e278 + languageName: node + linkType: hard + +"@svgr/webpack@npm:^5.4.0": + version: 5.4.0 + resolution: "@svgr/webpack@npm:5.4.0" + dependencies: + "@babel/core": ^7.9.0 + "@babel/plugin-transform-react-constant-elements": ^7.9.0 + "@babel/preset-env": ^7.9.5 + "@babel/preset-react": ^7.9.4 + "@svgr/core": ^5.4.0 + "@svgr/plugin-jsx": ^5.4.0 + "@svgr/plugin-svgo": ^5.4.0 + loader-utils: ^2.0.0 + checksum: ebd4d6835da888c9a9c411da22c61a2ebca1506c6cb071ddfef85d66b618e616a10efe5d60c7213c86e5b174ec79f3c0de3d9df1d0a7dc76a371025f3f777f45 + languageName: node + linkType: hard + +"@szmarczak/http-timer@npm:^1.1.2": + version: 1.1.2 + resolution: "@szmarczak/http-timer@npm:1.1.2" + dependencies: + defer-to-connect: ^1.0.1 + checksum: a46ec854231194dd1ab924a5ea0d8f0afa2b7133754a3def099cc5749e34802d8668a7d7ee3583327048354b9dc621113843d8546387e06ff57e6763cbb558d9 + languageName: node + linkType: hard + +"@tootallnate/once@npm:1": + version: 1.1.2 + resolution: "@tootallnate/once@npm:1.1.2" + checksum: d030f3fb14e0373dbf5005d8f696ff34fda87bf56744bea611fc737449bfc0687ebcb28ee8ba4c6624877f51b18d701c0d417d793f406006a192f4721911d048 + languageName: node + linkType: hard + +"@types/accepts@npm:*, @types/accepts@npm:^1.3.5": + version: 1.3.5 + resolution: "@types/accepts@npm:1.3.5" + dependencies: + "@types/node": "*" + checksum: 78a31c01d948c405a1a6a89061f0acd5a89df40de445c36382538985a3d00a236ba1cc5099bd812118525c2f29bb61d4869cd775ba63dd3e160113b5fa203915 + languageName: node + linkType: hard + +"@types/anymatch@npm:*": + version: 1.3.1 + resolution: "@types/anymatch@npm:1.3.1" + checksum: 1647865e528a168f66f57a077e9651c10a4c172b656cc3686fddf176555d42ca0a1647bfc626ea2fceb68fc7701426ab708224be1762b4a5216fe8368ffdba3c + languageName: node + linkType: hard + +"@types/babel__core@npm:^7.0.0, @types/babel__core@npm:^7.1.0, @types/babel__core@npm:^7.1.7": + version: 7.1.9 + resolution: "@types/babel__core@npm:7.1.9" + dependencies: + "@babel/parser": ^7.1.0 + "@babel/types": ^7.0.0 + "@types/babel__generator": "*" + "@types/babel__template": "*" + "@types/babel__traverse": "*" + checksum: 251c4d3c2ae220b12b57143ca1ac7766d9e86da3819fbdf26ccae969b3fde041c0a21d893d96c08e4cca16373b4a209d06bd258c23d4df5e684ea47f5d158ffb + languageName: node + linkType: hard + +"@types/babel__generator@npm:*": + version: 7.6.1 + resolution: "@types/babel__generator@npm:7.6.1" + dependencies: + "@babel/types": ^7.0.0 + checksum: d9f19e0e47fe7df97e41029b656ca85e66124509b36b0ccaa5cc68617fe243240bd4431246b8928b9f08abf3818bbd6c94ba934cc7f88faaa2e32a38f5b728a8 + languageName: node + linkType: hard + +"@types/babel__template@npm:*": + version: 7.0.2 + resolution: "@types/babel__template@npm:7.0.2" + dependencies: + "@babel/parser": ^7.1.0 + "@babel/types": ^7.0.0 + checksum: dd13bcf6f016866dba8310053302ac657de9966d85c67748d07ee385d07bdd8af56930ed4192c426b5118f43db268c17784bc6eb051ba94c5fcd50d5ca2db74f + languageName: node + linkType: hard + +"@types/babel__traverse@npm:*, @types/babel__traverse@npm:^7.0.6": + version: 7.0.13 + resolution: "@types/babel__traverse@npm:7.0.13" + dependencies: + "@babel/types": ^7.3.0 + checksum: 25d3cf96fcae3755d2d79ee5f696df56eba082cfc424a0b9d190dfad5c8e9167d1a4e2abbcb00bc5cd39853e4d638457caf894549ff583679dcb1b18b6a6ebc5 + languageName: node + linkType: hard + +"@types/bcryptjs@npm:2.4.2": + version: 2.4.2 + resolution: "@types/bcryptjs@npm:2.4.2" + checksum: 91013aa8a5e8185137af1fb011de7f794f5bc71400e0aebba2252985a4d0c5eb4c477617c4aa4c20fdb21f05320ac0095eb8b596c004ff5e3315b656e58a0c72 + languageName: node + linkType: hard + +"@types/bluebird@npm:*": + version: 3.5.32 + resolution: "@types/bluebird@npm:3.5.32" + checksum: 92c0baae50feaecb43c1b592829dcbe832b4440110a98cf9ae761e758c6d80843ca7bbd0ecb867e7c470658c52858a53b5700bca5598bce81a713f64f6a5cf41 + languageName: node + linkType: hard + +"@types/body-parser@npm:*, @types/body-parser@npm:1.19.0": + version: 1.19.0 + resolution: "@types/body-parser@npm:1.19.0" + dependencies: + "@types/connect": "*" + "@types/node": "*" + checksum: 4576f3fde5980c1219cadbc7c523bdb1cefc3713300e18bf47ff37bb9b8176342a1dc7519008311fd8fc11413cf188a83931b9b59051aa1c2f095c1e10459369 + languageName: node + linkType: hard + +"@types/bson@npm:*": + version: 4.0.2 + resolution: "@types/bson@npm:4.0.2" + dependencies: + "@types/node": "*" + checksum: 853bd6bee3bca53aee92f63f1748f53d9c0cc179fad80ddb46b000a866e888bbc7f42d7ce04c6e7dbdf5ed63f2a2e7bf6a962d82a9017b4a6b48237d63d927a3 + languageName: node + linkType: hard + +"@types/caseless@npm:*": + version: 0.12.2 + resolution: "@types/caseless@npm:0.12.2" + checksum: 492343e49987f92550c10efe9052f7307ced5d9c3acf7796cda206909b369746e4fcf3bdb061eed6b27dd03482bb6e3b6ec856aa30c4f565893dc18cc8341027 + languageName: node + linkType: hard + +"@types/color-name@npm:^1.1.1": + version: 1.1.1 + resolution: "@types/color-name@npm:1.1.1" + checksum: 8311db94a9c4ecd247763b81e783ee49d87678b4ce6a7ee502e2bd5cea242b7357804a04855db009f713174bc654cc0c01c7303d40d757e5d710f5ac0368500f + languageName: node + linkType: hard + +"@types/connect@npm:*": + version: 3.4.33 + resolution: "@types/connect@npm:3.4.33" + dependencies: + "@types/node": "*" + checksum: 6414495b5995fcb8274feb8b1f113c0685160ea7781e75c638325c6e7a0c226d0c554fa622fe3d278470358c99f68a5994fe49e1b104736f76f3fb3b509e375f + languageName: node + linkType: hard + +"@types/content-disposition@npm:*": + version: 0.5.3 + resolution: "@types/content-disposition@npm:0.5.3" + checksum: 1b7d94b19ae8564816233b74df5f662052d393d0fdb317c81d894f5e1e762010c46b1812ce01a1492a72603e182afd18a59673e25ae737efc3e470ba261697d7 + languageName: node + linkType: hard + +"@types/cookies@npm:*": + version: 0.7.4 + resolution: "@types/cookies@npm:0.7.4" + dependencies: + "@types/connect": "*" + "@types/express": "*" + "@types/keygrip": "*" + "@types/node": "*" + checksum: 641b1f5122a90914224784c23b7cd16434578255996abe6ef944c76e76839d5d6b124fec38c44a41e6855a49b926df3296c91c40fc54116638826783998ecc03 + languageName: node + linkType: hard + +"@types/cors@npm:^2.8.4": + version: 2.8.7 + resolution: "@types/cors@npm:2.8.7" + dependencies: + "@types/express": "*" + checksum: 5a2f88615b6ca26f354adf1b1f06eb304c2c78278225c903d6ade68fb5390727a717c33dd4e49d241a2ad01b2ddb020cc2ea87fa354233adbf7d27c52720013c + languageName: node + linkType: hard + +"@types/eslint-visitor-keys@npm:^1.0.0": + version: 1.0.0 + resolution: "@types/eslint-visitor-keys@npm:1.0.0" + checksum: 48d1f3263148ac822afbc1e54358b423851a2a28c41aef4d7803b052b4f6c3ebfb219daed419b8a4f2b6ac34b545dab4def916d15e69d2bf3f128f7abc0e6132 + languageName: node + linkType: hard + +"@types/express-serve-static-core@npm:*": + version: 4.17.9 + resolution: "@types/express-serve-static-core@npm:4.17.9" + dependencies: + "@types/node": "*" + "@types/qs": "*" + "@types/range-parser": "*" + checksum: 20ddd0d2639ee65a4f016e29137b69a1b8e057cb0dfd568ac7c6abc32f295f3631b480b58d2da89c72a4574d971516b6adaf4b1b9c72399880234b937a1f3f23 + languageName: node + linkType: hard + +"@types/express-session@npm:1.17.0": + version: 1.17.0 + resolution: "@types/express-session@npm:1.17.0" + dependencies: + "@types/express": "*" + "@types/node": "*" + checksum: 4b81e7ee6f00a15a95a36a742fade3f04789c0653780ba7328e0452b14e875a21bfc4f4020c65823e4797572f6d43244ccfea758530a30def1eaf72a586e86b0 + languageName: node + linkType: hard + +"@types/express@npm:*, @types/express@npm:4.17.6": + version: 4.17.6 + resolution: "@types/express@npm:4.17.6" + dependencies: + "@types/body-parser": "*" + "@types/express-serve-static-core": "*" + "@types/qs": "*" + "@types/serve-static": "*" + checksum: 45e31c66a048bfb8ddfb28f9c7f448f89eb8667132dc13f0e35397d5e4df05796f920a114bb774ba910bb3795a18d17a3ea8ae6aaf4d0d2e6b6c5622866f21d0 + languageName: node + linkType: hard + +"@types/express@npm:4.17.7": + version: 4.17.7 + resolution: "@types/express@npm:4.17.7" + dependencies: + "@types/body-parser": "*" + "@types/express-serve-static-core": "*" + "@types/qs": "*" + "@types/serve-static": "*" + checksum: 99b795c60e7368b575794574c35d0ffd0d119c52bc681af6beda2fee70aada78e8aef07fc0db3b88f594d5d935847de4187561d2456760eeb4fde5d10dbb3780 + languageName: node + linkType: hard + +"@types/fs-capacitor@npm:*": + version: 2.0.0 + resolution: "@types/fs-capacitor@npm:2.0.0" + dependencies: + "@types/node": "*" + checksum: 2fed98a117ded3af250ae87193c716f41ac8e688eeacb73107688113d15d6bf8ad384c2319e7b430a8c1444197a34c274fed7ff75dab0de49844e841a629c0b0 + languageName: node + linkType: hard + +"@types/glob@npm:^7.1.1": + version: 7.1.3 + resolution: "@types/glob@npm:7.1.3" + dependencies: + "@types/minimatch": "*" + "@types/node": "*" + checksum: 633bf1dda9a30899b233ed6b97c75cdd59f2ee856a12240c85474ce6889e26b3b3520b62de56f6bb61824af0ef51b311a0cae305f27ba0de8ddc4898a3673d42 + languageName: node + linkType: hard + +"@types/graceful-fs@npm:^4.1.2": + version: 4.1.3 + resolution: "@types/graceful-fs@npm:4.1.3" + dependencies: + "@types/node": "*" + checksum: 5e2ec610a96de2a7b13ee1e071a31a225b68df07880f80f1112a3540299288d943c69c0f1114a60480aa137d424333392c11732969f14b964c1c419fae48a6f0 + languageName: node + linkType: hard + +"@types/graphql-upload@npm:^8.0.0": + version: 8.0.3 + resolution: "@types/graphql-upload@npm:8.0.3" + dependencies: + "@types/express": "*" + "@types/fs-capacitor": "*" + "@types/koa": "*" + graphql: ^14.5.3 + checksum: 9f8425bcd83ab7adb87185165180b70f15e9510583e04566036d7766cba863663c3459035e8d9c2831634f1a19fcd556165dfe006b76be9c0c99531ec8d487e6 + languageName: node + linkType: hard + +"@types/hast@npm:^2.0.0": + version: 2.3.1 + resolution: "@types/hast@npm:2.3.1" + dependencies: + "@types/unist": "*" + checksum: 8aff367be477854d6cd3e5cf03d7154cd163a67bc3266777c2f4b1c32d07a335420ba58a8a799965dbc3190f1ed9989880008afb1392043290acc384a155a7a3 + languageName: node + linkType: hard + +"@types/history@npm:*": + version: 4.7.7 + resolution: "@types/history@npm:4.7.7" + checksum: df732a473c87a0cf5e5bd7c22ab39e709c8fe9d161dd0a6c2c4c37f200fbbf671a49851d2d5f7f7b9b1a3de748ad14d73f8538f0ff6c374427359586d7302b24 + languageName: node + linkType: hard + +"@types/html-minifier-terser@npm:^5.0.0": + version: 5.1.0 + resolution: "@types/html-minifier-terser@npm:5.1.0" + checksum: e07f30cf9b3bfc3fcf4854c28b43cbdfb9c25180368a393749c762c4b980985037acddef50d894d722bf6e3d866b4c6d6d466ecb3b4db997429e5f75cc8bc422 + languageName: node + linkType: hard + +"@types/http-assert@npm:*": + version: 1.5.1 + resolution: "@types/http-assert@npm:1.5.1" + checksum: 0c9cbc568be88c60870d96953880c9b2c1d7c290df928a4004693debb715b8ad1b3e8a2f4b13b84e22b41379d20d9255e960532cf613a28126e8a433ddabac01 + languageName: node + linkType: hard + +"@types/http-proxy-agent@npm:^2.0.2": + version: 2.0.2 + resolution: "@types/http-proxy-agent@npm:2.0.2" + dependencies: + "@types/node": "*" + checksum: ff52ffc3cd121b06f05766d20e0376ec20baa59870de4837566f052dfdd12d9b6d555c090b7fcee09d0d6aaab5dc0ca5c073b9a229dd6428428b1b9cf4ef3b45 + languageName: node + linkType: hard + +"@types/ioredis@npm:4.14.9": + version: 4.14.9 + resolution: "@types/ioredis@npm:4.14.9" + dependencies: + "@types/node": "*" + checksum: c4f8905f66bdec6258201c72ddc70d5b0d5ee2bbdceb830c75c0a0bf49855dce34333bb872a38fed2840ae029e4d0f7c9dcef9865fcf9093209593a4f97a00b0 + languageName: node + linkType: hard + +"@types/istanbul-lib-coverage@npm:*, @types/istanbul-lib-coverage@npm:^2.0.0, @types/istanbul-lib-coverage@npm:^2.0.1": + version: 2.0.3 + resolution: "@types/istanbul-lib-coverage@npm:2.0.3" + checksum: d6f6dbf66d2d2d7d80d093329f0428ac279440510030bfd0080545bba6882433444430905e6e31eba299b890e50ccf2b6a7de9345d7d0ed52ff174f8ead48855 + languageName: node + linkType: hard + +"@types/istanbul-lib-report@npm:*": + version: 3.0.0 + resolution: "@types/istanbul-lib-report@npm:3.0.0" + dependencies: + "@types/istanbul-lib-coverage": "*" + checksum: 78aa9f859b6d1b2c02387b401e4e42fdec2e26ffede392e544da108abc6aff35c95b40821116ca46006d94c8b405ffd64465c32514549e997b04f8363de1af5e + languageName: node + linkType: hard + +"@types/istanbul-reports@npm:^1.1.1": + version: 1.1.2 + resolution: "@types/istanbul-reports@npm:1.1.2" + dependencies: + "@types/istanbul-lib-coverage": "*" + "@types/istanbul-lib-report": "*" + checksum: 92bd1f76a4ce16f5390c80b6b0e657171faf0003b0ff370b3c37739087c825d664493c9debf442c0871d864f1be15c88460f2399ae748186d1a944f16958aea4 + languageName: node + linkType: hard + +"@types/jest@npm:26.0.9": + version: 26.0.9 + resolution: "@types/jest@npm:26.0.9" + dependencies: + jest-diff: ^25.2.1 + pretty-format: ^25.2.1 + checksum: 5d2b5fb5122d384f1857c5f7f52643957ba0494db44f4eee22323f3d548e069cf1389a8985f60710cea4abc6fc31d50e3a7ead5ad02a9d00a092744cb66aecea + languageName: node + linkType: hard + +"@types/js-yaml@npm:^3.12.5": + version: 3.12.5 + resolution: "@types/js-yaml@npm:3.12.5" + checksum: 82ca4b40ee1baf82961f75b7db8fae5a1d63410c066475424659c3bd1873cf02bf015ebdeb8751e7b6d0c87b4d3f09f20d2cc2075c4bdd4e7d58409ddd6ad925 + languageName: node + linkType: hard + +"@types/json-schema@npm:^7.0.3, @types/json-schema@npm:^7.0.4": + version: 7.0.5 + resolution: "@types/json-schema@npm:7.0.5" + checksum: 6290f9fe93ac957b244262d5ff56cfd3045c63da6ed88dcc2d5b84131e6284c8e6213bf0cb81423a4f940182647bcd69057309c982f8db64dfff8f65f800ef80 + languageName: node + linkType: hard + +"@types/json-stable-stringify@npm:^1.0.32": + version: 1.0.32 + resolution: "@types/json-stable-stringify@npm:1.0.32" + checksum: 4b2816f96fc06c7bb04218aae64e9ca019f20d29446a202c16735c47c353bbeff45b5916b51bfdb087143cf2dc0d838202a4521711d1f03ece6b0403fcc26c52 + languageName: node + linkType: hard + +"@types/jsonwebtoken@npm:8.3.9": + version: 8.3.9 + resolution: "@types/jsonwebtoken@npm:8.3.9" + dependencies: + "@types/node": "*" + checksum: 71a1fb7334ec2793cf5565379e2450cfe0e8f4f85ae664acff47dc1fa548ea0c3b68f20d705645b4783c6d33421ff468151aec5c75a85c58cd53a31fe4640596 + languageName: node + linkType: hard + +"@types/jsonwebtoken@npm:^8.5.0": + version: 8.5.0 + resolution: "@types/jsonwebtoken@npm:8.5.0" + dependencies: + "@types/node": "*" + checksum: d1a6b28f826898bc4f5596d91705aa864419c4a5ca49215507260644af8ceff9edb6db1901a108207cfb22558d035655b55309f38b75fa081da01be9f5408b21 + languageName: node + linkType: hard + +"@types/jwt-decode@npm:2.2.1": + version: 2.2.1 + resolution: "@types/jwt-decode@npm:2.2.1" + checksum: 7d0cce0a1906b1e90a410af2786964dc76b3c9641a5eb11ed2e12e09e07874361a15efbb0e2f8ac7553f097481cb668b21c7ad60ce89961fea854f2c7cdef764 + languageName: node + linkType: hard + +"@types/keygrip@npm:*": + version: 1.0.2 + resolution: "@types/keygrip@npm:1.0.2" + checksum: 8d86a3d702146ae7012571f1783bdc1228cc42ec89472b7ed14c2a46b12b1fa7423e9ecfbe1167bdbc4f26bdc95ee4b3b757a9df29202f98333cddc379b46f6d + languageName: node + linkType: hard + +"@types/keyv@npm:^3.1.1": + version: 3.1.1 + resolution: "@types/keyv@npm:3.1.1" + dependencies: + "@types/node": "*" + checksum: 3aaf557d5b82e733d5a17b7f55af5d6be953363c3a594f006d64265790fe87c301c6e1400c0b6b1cf72add50a0ceddc25afb8231ab8302a2e5b6ebfbfac30e5d + languageName: node + linkType: hard + +"@types/koa-compose@npm:*": + version: 3.2.5 + resolution: "@types/koa-compose@npm:3.2.5" + dependencies: + "@types/koa": "*" + checksum: bb6cae03095752d2f351e650ec4f5631c4512aec85bf5f7bab210a91a04714fbe0e75edac120cb56aff2cee5c6549bd6bf7a0ccc35f3adc0aa41d463b0a1f310 + languageName: node + linkType: hard + +"@types/koa@npm:*": + version: 2.11.3 + resolution: "@types/koa@npm:2.11.3" + dependencies: + "@types/accepts": "*" + "@types/content-disposition": "*" + "@types/cookies": "*" + "@types/http-assert": "*" + "@types/keygrip": "*" + "@types/koa-compose": "*" + "@types/node": "*" + checksum: 3e92c13f320b92a35f89efe75d8d42d3ae9ff22600ca05582d206caff5b5ab16ea70f96410c473680792b4548bff7e6dd853d0ddd594d93f226dc23b9782e4bc + languageName: node + linkType: hard + +"@types/lodash@npm:4.14.157": + version: 4.14.157 + resolution: "@types/lodash@npm:4.14.157" + checksum: ea8d890a4d78f4690f9d8e5cb03f3581e8ea59047696e2c2114087ec471e891b3ce683e5344c9c15ea7bd9730b79e5fd808b3eff80a01741503ea59922c2bb83 + languageName: node + linkType: hard + +"@types/lodash@npm:^4.14.138": + version: 4.14.159 + resolution: "@types/lodash@npm:4.14.159" + checksum: 15fc1b690916aec2e169327759fbc71b0cb25ca0cd0003c4d20d2e5b4ed14b7bc2feb2835d643e0335eabc1536e7c11b499de591eb794fbb764523cb06c66eee + languageName: node + linkType: hard + +"@types/long@npm:^4.0.0": + version: 4.0.1 + resolution: "@types/long@npm:4.0.1" + checksum: ed2a125330dbf2b425b2e58b1e1151a37106ceeec973f9f191fba0bda83ed00fae6d858254022e8b6e7165fec5f0c3872b7cb5f425c753383fed54699fb63b38 + languageName: node + linkType: hard + +"@types/mdast@npm:^3.0.0": + version: 3.0.3 + resolution: "@types/mdast@npm:3.0.3" + dependencies: + "@types/unist": "*" + checksum: d271df999e2b7144ef96a79bff75f22573d06d6c26ead8e190f59d4578da0b10af7c707f1453449bae6ba5c2dccfae8becf9f7a84a4bb30bc2a43fbc49607754 + languageName: node + linkType: hard + +"@types/mime@npm:*": + version: 2.0.3 + resolution: "@types/mime@npm:2.0.3" + checksum: 6df548a912494f8579d548cd883be0425f30eaa2922283335c405e270600f49045a06d766460c0f0edabb41dff570c614d174d3c52215de3bddd11f190ec9ae9 + languageName: node + linkType: hard + +"@types/minimatch@npm:*": + version: 3.0.3 + resolution: "@types/minimatch@npm:3.0.3" + checksum: 672ccdac197e8176eed1a9441d0caf8a29a90eb139b1cefdd4c9e71b1c48f5c749f5d101a2d85da15c6259214ebda95072835021407d60330a731a2672964b82 + languageName: node + linkType: hard + +"@types/minimist@npm:^1.2.0": + version: 1.2.0 + resolution: "@types/minimist@npm:1.2.0" + checksum: 098945c2c29df019cae250dfe614e50dab8120f4e359bd034190f931a63a23f3058764eec0d8cea3757eedd5b308ed28e4357ece9510a99380da08762f5f6635 + languageName: node + linkType: hard + +"@types/mongodb@npm:*, @types/mongodb@npm:3.5.25": + version: 3.5.25 + resolution: "@types/mongodb@npm:3.5.25" + dependencies: + "@types/bson": "*" + "@types/node": "*" + checksum: a085d0bd2499399a8e6d4e79bab22ec42e4e3111c127e40ed56958d5642c8353bbd38755541ccce6f7c89bc4b18f0e19e11519c32b917bec52e645cb90ff4d20 + languageName: node + linkType: hard + +"@types/mongoose@npm:5.7.16": + version: 5.7.16 + resolution: "@types/mongoose@npm:5.7.16" + dependencies: + "@types/mongodb": "*" + "@types/node": "*" + checksum: f75388f755ae80ded172699f9c3d0a2cdf1e88c50dbf80477982b8a2cadd736c8c040124e52a349d77112309eda3d9770dd73b27d7b6b937e6ff24f0cce7b80d + languageName: node + linkType: hard + +"@types/mongoose@npm:5.7.32": + version: 5.7.32 + resolution: "@types/mongoose@npm:5.7.32" + dependencies: + "@types/mongodb": "*" + "@types/node": "*" + checksum: f2916fc06dea343cfb9f110b891bd1cbd5cf6fe4db4be6cc73cc6e06ce4a2a7d58a5a1eda8944016a2cc29c6175f0aa551a074da8524d4f91588ab87ed09aac5 + languageName: node + linkType: hard + +"@types/node-fetch@npm:2.5.7": + version: 2.5.7 + resolution: "@types/node-fetch@npm:2.5.7" + dependencies: + "@types/node": "*" + form-data: ^3.0.0 + checksum: 101f6e8474407f957dfe1750d82aa0bcaa56347d09c8ba8634e6a901d07032533c0a578860691d915ff8fa230355700c41c04ae7e505840b5d6ff8cc3ece7741 + languageName: node + linkType: hard + +"@types/node@npm:*, @types/node@npm:14.0.14, @types/node@npm:>= 8": + version: 14.0.14 + resolution: "@types/node@npm:14.0.14" + checksum: 0a2072aa7de32e6535ce6bc7383965fc0a4b7bbf6d76f69027db72e86381921c820a8a2173f75fa210d9fb3286c707079d3804ef33c76a065bcb890858e50ee9 + languageName: node + linkType: hard + +"@types/node@npm:14.0.13": + version: 14.0.13 + resolution: "@types/node@npm:14.0.13" + checksum: 2f2be6f7f1a916b0f4d58949bd934a8e41c0dcb15c493c17c3eaf78da3065c09650030f0dfe2e8c11880d597ee001d7cd925129218037fdb4432e80f7d895673 + languageName: node + linkType: hard + +"@types/node@npm:^10.1.0": + version: 10.17.28 + resolution: "@types/node@npm:10.17.28" + checksum: 68a35b255d6eefe8d580044f15f7a661e082773ceda963f36258c547668b1a36e0bffac133ee0e25f0f54263a6df28bcb16328b8a3d605d464ebc41915603172 + languageName: node + linkType: hard + +"@types/normalize-package-data@npm:^2.4.0": + version: 2.4.0 + resolution: "@types/normalize-package-data@npm:2.4.0" + checksum: 6d077e73be7ac6227b678829c7bd765607136cdef537fd4ee7f368d9302a651aea924254d69826663322048436d90d6e7c679c9aa99c4824a687c568aab8ce4f + languageName: node + linkType: hard + +"@types/oauth@npm:0.9.1": + version: 0.9.1 + resolution: "@types/oauth@npm:0.9.1" + dependencies: + "@types/node": "*" + checksum: 0fc44360d075ba2d4fdfe9831cd003bb6aa5da95f33e56063bf8b8b38e377ff9bbfcf9709db7ddac22112bc9ca6f7810201a964d2254cd8de23d61e6d6c22da5 + languageName: node + linkType: hard + +"@types/parse-json@npm:^4.0.0": + version: 4.0.0 + resolution: "@types/parse-json@npm:4.0.0" + checksum: 4a8f720afac47b474d3f2eece312340e72bc31bc9561cda37b596ce2ed218c0099765d302625bb67d659a8452a1f93d514f4863c11c7ebaf65430428687dc426 + languageName: node + linkType: hard + +"@types/parse5@npm:^5.0.0": + version: 5.0.3 + resolution: "@types/parse5@npm:5.0.3" + checksum: 62b6ad696aeee22dc26bba2039bfb55773caf7cd705cb1b226a7107c187422782e6759ca6de54f9d1a299f335c2b99973774c9436a378f57927f36619570dc1d + languageName: node + linkType: hard + +"@types/prettier@npm:^2.0.0": + version: 2.0.2 + resolution: "@types/prettier@npm:2.0.2" + checksum: f661ba2c6312724a9513e63891c668cba33547e259e28ddca97c8107a9d5094aab51b4dd83e17fc8fa37e69c7ac6f2c447b8da36a7e579abf8b804c1e0593767 + languageName: node + linkType: hard + +"@types/prop-types@npm:*": + version: 15.7.3 + resolution: "@types/prop-types@npm:15.7.3" + checksum: bd0eab69d5120ad3784d0c9985f902653d5924707a7f2b3702a330e762dfd61b6494954cb54ad0c52b918ffd6f1e7e27c9270e4442bc15250de348596f2f60cb + languageName: node + linkType: hard + +"@types/q@npm:^1.5.1": + version: 1.5.4 + resolution: "@types/q@npm:1.5.4" + checksum: 1a19cf2c41648b862bd25a4c26ba33dc7206f14fcf50c5b78031b59090d21176e703cd10aff8af409eafbefcebb288607d30af765ee3859637cf3fae6e875648 + languageName: node + linkType: hard + +"@types/qrcode.react@npm:1.0.0": + version: 1.0.0 + resolution: "@types/qrcode.react@npm:1.0.0" + dependencies: + "@types/react": "*" + checksum: f2605dcac9f5c047c923cb50f5b1ffcf297568f5559d8a07ec2e838b61f722a6571a42f38595bc9ae233f024d200fd7428ab3eeb65a18be093773a4cb247a611 + languageName: node + linkType: hard + +"@types/qrcode.react@npm:1.0.1": + version: 1.0.1 + resolution: "@types/qrcode.react@npm:1.0.1" + dependencies: + "@types/react": "*" + checksum: b53d3fe19d7d27b023c863f5b1855c1f8cc6589658a35c24c96ce43bde9833bed499e79bf083be91a19ec3450dd68b05e53fd1b905557ddb2901f9468937e402 + languageName: node + linkType: hard + +"@types/qs@npm:*": + version: 6.9.4 + resolution: "@types/qs@npm:6.9.4" + checksum: 152d2431f7d3ff20bb1525e40a4074aadc8dcde9368b0b1c153014f84cd49ef87218119e7e9d4a2ccd8a4a71c94523361fb4796d90b4328c2222816c0e422483 + languageName: node + linkType: hard + +"@types/range-parser@npm:*": + version: 1.2.3 + resolution: "@types/range-parser@npm:1.2.3" + checksum: 092fabae0ecbd728d3e4debc938cd043e97cb9f210cfec1c56ff6065c6e91666f376eb586591825d6757a058fd1a1dc4831d34e04ecfbb0800f35b8d86d38635 + languageName: node + linkType: hard + +"@types/react-dom@npm:16.9.8": + version: 16.9.8 + resolution: "@types/react-dom@npm:16.9.8" + dependencies: + "@types/react": "*" + checksum: 53a223c0266178bca9161301d18ee6199e8f75f88caed5c4601c5aaedaf4c68f03bd72f6aafa979254beb20759f0b68a542ce04295d704eb67ae179769c50813 + languageName: node + linkType: hard + +"@types/react-router-dom@npm:5.1.5": + version: 5.1.5 + resolution: "@types/react-router-dom@npm:5.1.5" + dependencies: + "@types/history": "*" + "@types/react": "*" + "@types/react-router": "*" + checksum: d25c11cb718653a01b0e2cd5e4a44b1910fd506b3141c49e4b47ee197ddc06a05f3ee3c6853c60c15d83b96aeea534321ab200d4fbfd4ba047413b2c7176bfcb + languageName: node + linkType: hard + +"@types/react-router@npm:*, @types/react-router@npm:5.1.8": + version: 5.1.8 + resolution: "@types/react-router@npm:5.1.8" + dependencies: + "@types/history": "*" + "@types/react": "*" + checksum: 8b4c8fefdba877971aeaa642d81074d0fda0db9d8891709071c8586c32c75afca1baf478c3b26bcbd404503304599d8ea3243beb4e01080ee77f48f56815ee73 + languageName: node + linkType: hard + +"@types/react-router@npm:5.1.7": + version: 5.1.7 + resolution: "@types/react-router@npm:5.1.7" + dependencies: + "@types/history": "*" + "@types/react": "*" + checksum: b8cae75e5fb6918698929db4c2609c7f4c2c9616f2c9a3f2b7609732298f4d35d104b756e03c1574ba19b1505ca9bb56f61372a40b4e08e0324174e00dc77071 + languageName: node + linkType: hard + +"@types/react-transition-group@npm:^4.2.0": + version: 4.4.0 + resolution: "@types/react-transition-group@npm:4.4.0" + dependencies: + "@types/react": "*" + checksum: b761f70623ca2a386a310536886e7ceed15087e59a3b6c68478c9965d38edd819c5b29e3fb79a5d911ee4b1db5ab397ae0ebb5a5ddf98f08708a6d592cb7c256 + languageName: node + linkType: hard + +"@types/react@npm:*": + version: 16.9.45 + resolution: "@types/react@npm:16.9.45" + dependencies: + "@types/prop-types": "*" + csstype: ^3.0.2 + checksum: 285b9f607d2789ea2810a303b52496f8561e8352362372a84bcb069128ddb6c5a000a372067a5b456054f6680c5c922e8875fafdb97935a5814afa74ea906868 + languageName: node + linkType: hard + +"@types/react@npm:16.9.36": + version: 16.9.36 + resolution: "@types/react@npm:16.9.36" + dependencies: + "@types/prop-types": "*" + csstype: ^2.2.0 + checksum: 63731d81fcd0407ea17f265aa042bbf01f208798ca773e1a158ccb721798cffb4b398cc1c098fe8a71ff053601a51171bb607c3ff2ba14e1ff063aefe94f08cd + languageName: node + linkType: hard + +"@types/react@npm:16.9.43": + version: 16.9.43 + resolution: "@types/react@npm:16.9.43" + dependencies: + "@types/prop-types": "*" + csstype: ^2.2.0 + checksum: b9d4491463ab013e0752bf6f99bd578f91504f74dfd1ebd7fbceebbdffe89762b040494a78403e249bb72d1645d2784f844890e7b1acdb3634432533ff9732fb + languageName: node + linkType: hard + +"@types/request-ip@npm:0.0.35": + version: 0.0.35 + resolution: "@types/request-ip@npm:0.0.35" + dependencies: + "@types/node": "*" + checksum: 04ff98d2842cba8281aeea85e4ad03a110530f9b156a2c8cea544fb3ccff425dbc262943bb46b26186db68293e81c244a606c979cf5c2d28d37819ce14e7753a + languageName: node + linkType: hard + +"@types/request-promise@npm:4.1.46": + version: 4.1.46 + resolution: "@types/request-promise@npm:4.1.46" + dependencies: + "@types/bluebird": "*" + "@types/request": "*" + checksum: 72c20082c12bf70f1c7dcf7677ee466e52ccd36cfffb402fc8b76b075dcd93c2dc3ebd6c3f70d33c24a7a88cc7974431a772dedd960f8b0c7c0d8ed1f761a04f + languageName: node + linkType: hard + +"@types/request@npm:*": + version: 2.48.5 + resolution: "@types/request@npm:2.48.5" + dependencies: + "@types/caseless": "*" + "@types/node": "*" + "@types/tough-cookie": "*" + form-data: ^2.5.0 + checksum: 74f1a250cab068aec594cede9e57508e0b63d46110dd5d62611f087a4c0e9b524884b1d76f128e5ee86d3d91a40587986d85567b567653cd3e30873686ab195d + languageName: node + linkType: hard + +"@types/responselike@npm:^1.0.0": + version: 1.0.0 + resolution: "@types/responselike@npm:1.0.0" + dependencies: + "@types/node": "*" + checksum: e6e6613c800aeda63e2331e753e8d21df1a2c9aa7a4bc71ed792a848e4811fc96e609759089355314a2318c76eff1f161499cd242044838ab1e6f56e463ebb9c + languageName: node + linkType: hard + +"@types/serve-static@npm:*": + version: 1.13.5 + resolution: "@types/serve-static@npm:1.13.5" + dependencies: + "@types/express-serve-static-core": "*" + "@types/mime": "*" + checksum: 1d4e222e240ff6ed0aa41cd3997fefb53b4f2fbe8f16d20055174662dda1361c7409dfb40ad8e2f355316f80edcd701e0f3ff6298abe35e0b88d9b62903acd18 + languageName: node + linkType: hard + +"@types/shortid@npm:0.0.29": + version: 0.0.29 + resolution: "@types/shortid@npm:0.0.29" + checksum: 4c96e2e820bc431502d3ce45628a1c0354cdd02fa588b31efa461faa7762988effc4b6a769c8bcbebdb5727e616ac7fc7216b8fe6e980aac0d4e8328652a6d6e + languageName: node + linkType: hard + +"@types/source-list-map@npm:*": + version: 0.1.2 + resolution: "@types/source-list-map@npm:0.1.2" + checksum: 191f0e3b056b481e7a0bbb38f3d5b54b015556e38075726ca2637a35d3694df85cd16761b1b188729ac687a55aec3cbc2b07033ac090bcc13efe09ad10a3e935 + languageName: node + linkType: hard + +"@types/speakeasy@npm:2.0.2": + version: 2.0.2 + resolution: "@types/speakeasy@npm:2.0.2" + checksum: 6d14aa9020e4f1c02f95592465e0d767ee879824c622683cdcd727e14ead52e6c2cc2f20247bebcb6eea3765a6acec04590765dbf56739f704a982e5d9d45676 + languageName: node + linkType: hard + +"@types/stack-utils@npm:^1.0.1": + version: 1.0.1 + resolution: "@types/stack-utils@npm:1.0.1" + checksum: 59738e4b71b233b438a6ecb9faaf577d6f02afec4ea093d5ad3c10e78cb7096ab32648a2c2017c6c2e6c6853498aa783643a2c6b859c4a75f6750e7b37ae8bae + languageName: node + linkType: hard + +"@types/tapable@npm:*, @types/tapable@npm:^1.0.5": + version: 1.0.6 + resolution: "@types/tapable@npm:1.0.6" + checksum: 01709a2f8dbea665a39c008ba6995c76210fabb52434815e7632c7fff22ecad1dd49a1d75b8f5b2e9b365c6d7a6407127bed834587df4777b800110c2a74fc36 + languageName: node + linkType: hard + +"@types/tough-cookie@npm:*": + version: 4.0.0 + resolution: "@types/tough-cookie@npm:4.0.0" + checksum: 5a0cccc6d073b84dbb48d603e692b55ac30cea1653a7fc813e97a3bcaa9edd97c703c15727378d632e416a90178e6da657151eba8175cbb201a9a98de22ac3a8 + languageName: node + linkType: hard + +"@types/uglify-js@npm:*": + version: 3.9.3 + resolution: "@types/uglify-js@npm:3.9.3" + dependencies: + source-map: ^0.6.1 + checksum: b12ae05d8faace173070c3ab2d0a7345a4fdefd9c1a248ac6256200f9ba5ad129c89f313e7e12544027906ffc620a56b458ab3731102f65c5412c0c068232374 + languageName: node + linkType: hard + +"@types/unist@npm:*, @types/unist@npm:^2.0.0, @types/unist@npm:^2.0.2, @types/unist@npm:^2.0.3": + version: 2.0.3 + resolution: "@types/unist@npm:2.0.3" + checksum: 42e0dc4ac75a27c4bb91a3f8e82edfd8819cacb6edda08bdfb436700ea01a587faa30017fde744b0a0b33825f5e37686398c1eb5b664cabc3a72a6b3757f85a5 + languageName: node + linkType: hard + +"@types/webpack-sources@npm:*": + version: 1.4.2 + resolution: "@types/webpack-sources@npm:1.4.2" + dependencies: + "@types/node": "*" + "@types/source-list-map": "*" + source-map: ^0.7.3 + checksum: 2ca006ace3fba2e3a8a417ffca353c38c6c4b3398698d1c64ee0a38fd937580aa854e4c2e6ac7191b4fb60fab0ce1222403e28d5d8bda97462fac5f45fc69934 + languageName: node + linkType: hard + +"@types/webpack@npm:^4.41.0, @types/webpack@npm:^4.41.8": + version: 4.41.21 + resolution: "@types/webpack@npm:4.41.21" + dependencies: + "@types/anymatch": "*" + "@types/node": "*" + "@types/tapable": "*" + "@types/uglify-js": "*" + "@types/webpack-sources": "*" + source-map: ^0.6.0 + checksum: 3a02667221be2d8ecdb2da8d78e74dbc6ef216a4f0c636017e9dbe243198ed80a258e0c9f9e0613eea76efe77b5293f6f052dee4d26adc3dd54e56f38a2031f2 + languageName: node + linkType: hard + +"@types/websocket@npm:1.0.1": + version: 1.0.1 + resolution: "@types/websocket@npm:1.0.1" + dependencies: + "@types/node": "*" + checksum: 93d407970a6487290f8bace3b6de40d6f35f092386e5fba8981c3cb5ee60b155da419ab98007a3991c4a2e27eee948c5f98786a13619359b42a4a04aaf7bdf27 + languageName: node + linkType: hard + +"@types/ws@npm:^7.0.0": + version: 7.2.6 + resolution: "@types/ws@npm:7.2.6" + dependencies: + "@types/node": "*" + checksum: 2f7c358c4b2798f1885c3edecf4b09ecfa35933eff0c37bf8b99eab722032db5c1ab9e26899d13f035a8cf1d92a681578016c8837c5e6725892c24ee10f2f63f + languageName: node + linkType: hard + +"@types/yargs-parser@npm:*": + version: 15.0.0 + resolution: "@types/yargs-parser@npm:15.0.0" + checksum: 74bfaefde90fb28eace49469fa6c2da63161176cb6dfbd2cfea2c3cb3268e4ca6abe174ae3ff7e633a49a6d6d1a114901c78799a19d0cbc5a9b539585afe6c4f + languageName: node + linkType: hard + +"@types/yargs@npm:^13.0.0": + version: 13.0.10 + resolution: "@types/yargs@npm:13.0.10" + dependencies: + "@types/yargs-parser": "*" + checksum: 130a04449e4d20d2b19b86e879ab636a1c804efa603bc43b44dce2656daa97059baaab5b0c2ad56abf428b807d9d992877779e6b1bde97029ccb209b842e6ab6 + languageName: node + linkType: hard + +"@types/yargs@npm:^15.0.0": + version: 15.0.5 + resolution: "@types/yargs@npm:15.0.5" + dependencies: + "@types/yargs-parser": "*" + checksum: 2133c8cb5878d13959844f98e546e69dacdf44cd9baf87d84c828a1a093febfc97c8f4df19cffd34a4a4f726a3cdb1851da4391176accf56534c5f8a1c271f46 + languageName: node + linkType: hard + +"@types/zen-observable@npm:^0.8.0": + version: 0.8.0 + resolution: "@types/zen-observable@npm:0.8.0" + checksum: 63a7bf7d119c4239201952b004902a85be41643f8bfaee14b1881ea5a35508b6dce2cb63b9402152d7ccff8afde03ead9e3192c2666532fb5227667f297eb32f + languageName: node + linkType: hard + +"@typescript-eslint/eslint-plugin@npm:3.7.0": + version: 3.7.0 + resolution: "@typescript-eslint/eslint-plugin@npm:3.7.0" + dependencies: + "@typescript-eslint/experimental-utils": 3.7.0 + debug: ^4.1.1 + functional-red-black-tree: ^1.0.1 + regexpp: ^3.0.0 + semver: ^7.3.2 + tsutils: ^3.17.1 + peerDependencies: + "@typescript-eslint/parser": ^3.0.0 + eslint: ^5.0.0 || ^6.0.0 || ^7.0.0 + typescript: "*" + peerDependenciesMeta: + typescript: + optional: true + checksum: eb13dab2b1e2a422080e5b0e57244a9de4ce09ac9c4b55e26006f17fec85fd65af36c57d634c7ab0d7cd82092b32c711cee93fc0a1b7baa31c04578320234ca4 + languageName: node + linkType: hard + +"@typescript-eslint/eslint-plugin@npm:^2.10.0": + version: 2.34.0 + resolution: "@typescript-eslint/eslint-plugin@npm:2.34.0" + dependencies: + "@typescript-eslint/experimental-utils": 2.34.0 + functional-red-black-tree: ^1.0.1 + regexpp: ^3.0.0 + tsutils: ^3.17.1 + peerDependencies: + "@typescript-eslint/parser": ^2.0.0 + eslint: ^5.0.0 || ^6.0.0 + typescript: "*" + peerDependenciesMeta: + typescript: + optional: true + checksum: 8d800f4726487df5ce4d573e62effa250f168658759e32a976eae355cc3130d82e3a918542df273fec428b608d9d50e65ad02d596ba0c24de7fbb4ddb7897dee + languageName: node + linkType: hard + +"@typescript-eslint/experimental-utils@npm:2.34.0, @typescript-eslint/experimental-utils@npm:^2.5.0": + version: 2.34.0 + resolution: "@typescript-eslint/experimental-utils@npm:2.34.0" + dependencies: + "@types/json-schema": ^7.0.3 + "@typescript-eslint/typescript-estree": 2.34.0 + eslint-scope: ^5.0.0 + eslint-utils: ^2.0.0 + peerDependencies: + eslint: "*" + checksum: 53cbbcfe67ddc53b4bc23f78b3726b0c2de5ea04ee849ca8b619f1fcad16f644d9d72bb3ea9a08aabfc605ea4a9769fe1b81931af09ce2223ec49de749cde2d4 + languageName: node + linkType: hard + +"@typescript-eslint/experimental-utils@npm:3.7.0": + version: 3.7.0 + resolution: "@typescript-eslint/experimental-utils@npm:3.7.0" + dependencies: + "@types/json-schema": ^7.0.3 + "@typescript-eslint/types": 3.7.0 + "@typescript-eslint/typescript-estree": 3.7.0 + eslint-scope: ^5.0.0 + eslint-utils: ^2.0.0 + peerDependencies: + eslint: "*" + checksum: 5c83b89902b2659facf8eeac47da1344b9984ad9fb1f790f89793433f23cf5fe493f64832fb1db70db1bd60ad632b9962d5c2308b9960f6ee2948a3115e1fa12 + languageName: node + linkType: hard + +"@typescript-eslint/parser@npm:3.7.0": + version: 3.7.0 + resolution: "@typescript-eslint/parser@npm:3.7.0" + dependencies: + "@types/eslint-visitor-keys": ^1.0.0 + "@typescript-eslint/experimental-utils": 3.7.0 + "@typescript-eslint/types": 3.7.0 + "@typescript-eslint/typescript-estree": 3.7.0 + eslint-visitor-keys: ^1.1.0 + peerDependencies: + eslint: ^5.0.0 || ^6.0.0 || ^7.0.0 + typescript: "*" + peerDependenciesMeta: + typescript: + optional: true + checksum: b34e5240ed78c283fb348733e590308debd9e7190dfc598e2a189e6e0d2eda952b1f2821a9ba2b41eb5e91217b49601246962bee1599e2dd02a74ef9f466b791 + languageName: node + linkType: hard + +"@typescript-eslint/parser@npm:^2.10.0": + version: 2.34.0 + resolution: "@typescript-eslint/parser@npm:2.34.0" + dependencies: + "@types/eslint-visitor-keys": ^1.0.0 + "@typescript-eslint/experimental-utils": 2.34.0 + "@typescript-eslint/typescript-estree": 2.34.0 + eslint-visitor-keys: ^1.1.0 + peerDependencies: + eslint: ^5.0.0 || ^6.0.0 + typescript: "*" + peerDependenciesMeta: + typescript: + optional: true + checksum: a3fe33d422d5cfe97e36c983253d33d2f5907657f9bb61a129c58656441acf9e90ec525a5273239cc876bc43e031056b2796924f3e64e8ca1295674fb30a2eec + languageName: node + linkType: hard + +"@typescript-eslint/types@npm:3.7.0": + version: 3.7.0 + resolution: "@typescript-eslint/types@npm:3.7.0" + checksum: f484d333d000f529858369a1a87afcb403c9b1412eb25cd66560f28f9bb71d4f53372353e06486a0128ebb91ac83fff24537ea83cd8f39d486b54411d8538160 + languageName: node + linkType: hard + +"@typescript-eslint/typescript-estree@npm:2.34.0": + version: 2.34.0 + resolution: "@typescript-eslint/typescript-estree@npm:2.34.0" + dependencies: + debug: ^4.1.1 + eslint-visitor-keys: ^1.1.0 + glob: ^7.1.6 + is-glob: ^4.0.1 + lodash: ^4.17.15 + semver: ^7.3.2 + tsutils: ^3.17.1 + peerDependencies: + typescript: "*" + peerDependenciesMeta: + typescript: + optional: true + checksum: 77d1a758dfd4a2813fb51d6102aa79d7eccb006c66db8cff49a10706c8cf64cae6b256b8ec6694058c1c333775e1dbc6ca7501769138fc89165b9c10f8201e40 + languageName: node + linkType: hard + +"@typescript-eslint/typescript-estree@npm:3.7.0": + version: 3.7.0 + resolution: "@typescript-eslint/typescript-estree@npm:3.7.0" + dependencies: + "@typescript-eslint/types": 3.7.0 + "@typescript-eslint/visitor-keys": 3.7.0 + debug: ^4.1.1 + glob: ^7.1.6 + is-glob: ^4.0.1 + lodash: ^4.17.15 + semver: ^7.3.2 + tsutils: ^3.17.1 + peerDependencies: + typescript: "*" + peerDependenciesMeta: + typescript: + optional: true + checksum: d9ee7fadba54eaba6736a227614048df2d19ba9969058b3ddbe018136098edc24fd715441cb2b55cb6398aba3dd3d872ee65d98328223dda3849c9cd29bc8ea8 + languageName: node + linkType: hard + +"@typescript-eslint/visitor-keys@npm:3.7.0": + version: 3.7.0 + resolution: "@typescript-eslint/visitor-keys@npm:3.7.0" + dependencies: + eslint-visitor-keys: ^1.1.0 + checksum: 62212d8ccbea49dea5dca17ade8ab0eed64f94023f5b337a14c8f6a74cea8533d92cd09abd197abcb8e30924779adda88135732d85e8392e0007992ee11ee65c + languageName: node + linkType: hard + +"@webassemblyjs/ast@npm:1.8.5": + version: 1.8.5 + resolution: "@webassemblyjs/ast@npm:1.8.5" + dependencies: + "@webassemblyjs/helper-module-context": 1.8.5 + "@webassemblyjs/helper-wasm-bytecode": 1.8.5 + "@webassemblyjs/wast-parser": 1.8.5 + checksum: 69f9830bec4ea439e2d8436b427b3d193df81158bfe6573dd44745279c5e1d6322aa0a42619b539a05cb02683738a30b2edd77a0cdb2a878befc520549e5da2b + languageName: node + linkType: hard + +"@webassemblyjs/ast@npm:1.9.0": + version: 1.9.0 + resolution: "@webassemblyjs/ast@npm:1.9.0" + dependencies: + "@webassemblyjs/helper-module-context": 1.9.0 + "@webassemblyjs/helper-wasm-bytecode": 1.9.0 + "@webassemblyjs/wast-parser": 1.9.0 + checksum: 25d93900cc32c2cfa34860b988a534c6671cf789159cc6b918afdf6099f9f2f70710a947501170d9ba0a24f0503fe3b3b45300ec14ec05c9d833c055795133c4 + languageName: node + linkType: hard + +"@webassemblyjs/floating-point-hex-parser@npm:1.8.5": + version: 1.8.5 + resolution: "@webassemblyjs/floating-point-hex-parser@npm:1.8.5" + checksum: 063cf884b3f14f5d3b46d993a52988dd2ca92d26dcf9284f8eca7f6ed6fc97c57b3f9b9d81e4549701414635568cec30df520cf13d3c2b715403d5638eb313a2 + languageName: node + linkType: hard + +"@webassemblyjs/floating-point-hex-parser@npm:1.9.0": + version: 1.9.0 + resolution: "@webassemblyjs/floating-point-hex-parser@npm:1.9.0" + checksum: af9e11a688b0748f2e4119379d64a8f990a0edf1fbf80df612d2fdf3874528f4917ba51c735b324266314b6587b229825eb53eacbc9e9d00ce1d21ebd2a7d9dc + languageName: node + linkType: hard + +"@webassemblyjs/helper-api-error@npm:1.8.5": + version: 1.8.5 + resolution: "@webassemblyjs/helper-api-error@npm:1.8.5" + checksum: dffbfc50199605d03b4ba6647c9e4bb44af373bcc9e562279dc61781661ab60315e58b522a0c94079e0f14e011c59f79fbf112922c1795f26b1e6de93df0811c + languageName: node + linkType: hard + +"@webassemblyjs/helper-api-error@npm:1.9.0": + version: 1.9.0 + resolution: "@webassemblyjs/helper-api-error@npm:1.9.0" + checksum: ae7b9703ecbd0db50a2e95e23c9a1de2a0ba3d98187f4cd57473df4f2a88f9c3a2e53f98ce3a8ba0d73718a50733843ba0d8f88440d5e4a90704bb831f26a2e0 + languageName: node + linkType: hard + +"@webassemblyjs/helper-buffer@npm:1.8.5": + version: 1.8.5 + resolution: "@webassemblyjs/helper-buffer@npm:1.8.5" + checksum: ee2a591d5f823dd5090c71f022eaa5223f8e1fbd86416ee70a5e9fcaedeeba14b71c4c1f8027d37dc932b472840e68ba57356d1814a342090a5a52b14b048236 + languageName: node + linkType: hard + +"@webassemblyjs/helper-buffer@npm:1.9.0": + version: 1.9.0 + resolution: "@webassemblyjs/helper-buffer@npm:1.9.0" + checksum: 94bcf27ccf4e5cfcdb92f89bb1e80a973656cab5d19e67eb61a8b5c9cf4ce060616e3afc3d900f6cffa2fc9746a4ad7be75fa448c06af4d4103e507584149a78 + languageName: node + linkType: hard + +"@webassemblyjs/helper-code-frame@npm:1.8.5": + version: 1.8.5 + resolution: "@webassemblyjs/helper-code-frame@npm:1.8.5" + dependencies: + "@webassemblyjs/wast-printer": 1.8.5 + checksum: 79423ec4e1f99da1e6a0d637253257cd63d6ea3eca2b60939fed6a52b71e985d6270e9cda5d32611df6405e880a9e9750d101224d678a21c490057fab96a92ac + languageName: node + linkType: hard + +"@webassemblyjs/helper-code-frame@npm:1.9.0": + version: 1.9.0 + resolution: "@webassemblyjs/helper-code-frame@npm:1.9.0" + dependencies: + "@webassemblyjs/wast-printer": 1.9.0 + checksum: 008fc534f21b3b054bd0bd863d3afcb30740d9c8cdc5044481747533bd276729ec196392a78c16f5a5ee8a6d067fd5fbaed16142b2b4097b1c5340451b5a5d1d + languageName: node + linkType: hard + +"@webassemblyjs/helper-fsm@npm:1.8.5": + version: 1.8.5 + resolution: "@webassemblyjs/helper-fsm@npm:1.8.5" + checksum: f42e1c792cadd3f9fc37ba7661730dd5f90c07105ce94e37a7d295913ab71504c746bb51df3c9155f825865102b1ab5ff3e45a2c01a0c519d44f9933d50b14f8 + languageName: node + linkType: hard + +"@webassemblyjs/helper-fsm@npm:1.9.0": + version: 1.9.0 + resolution: "@webassemblyjs/helper-fsm@npm:1.9.0" + checksum: 3181e69c16aad1267fd471283b797e86f5e0b26abfddf1d0d2ddef8a758f486cd2482887ec317ecbb5c421aa1d11dea17a06e92c59ea9bd38513204e6c7b8f3d + languageName: node + linkType: hard + +"@webassemblyjs/helper-module-context@npm:1.8.5": + version: 1.8.5 + resolution: "@webassemblyjs/helper-module-context@npm:1.8.5" + dependencies: + "@webassemblyjs/ast": 1.8.5 + mamacro: ^0.0.3 + checksum: 24228675da927b64f6f60b3b7340eeae3b359e29bf101c596db95c339d3c07b515efe2afd465db7a3eaab72fda5679d32d509dba80e04f926deacee0aafb302c + languageName: node + linkType: hard + +"@webassemblyjs/helper-module-context@npm:1.9.0": + version: 1.9.0 + resolution: "@webassemblyjs/helper-module-context@npm:1.9.0" + dependencies: + "@webassemblyjs/ast": 1.9.0 + checksum: 9aa715a8d06a17ea92a6ec44322628f9418aa414b888632b5d8092a5125c2b6dcf2c6b80be2b6ad548201aa38e21d390e13c34f2edf7ba3335442739d88b0aef + languageName: node + linkType: hard + +"@webassemblyjs/helper-wasm-bytecode@npm:1.8.5": + version: 1.8.5 + resolution: "@webassemblyjs/helper-wasm-bytecode@npm:1.8.5" + checksum: 59289230d5cd9567ea725581348ee09d6db1b2deba09c50e35778a1bd29931de4c522d4b422b9efec2d85c2dda708ea2341df7fc61d61c8141210e58b280bc18 + languageName: node + linkType: hard + +"@webassemblyjs/helper-wasm-bytecode@npm:1.9.0": + version: 1.9.0 + resolution: "@webassemblyjs/helper-wasm-bytecode@npm:1.9.0" + checksum: 27ba07f49514d49ccf62a6e7a460941a6794107c9d7ef9685fda8a7373169d6ebdb676071006ce20581abb9f62562fa447473fb0b031e9ef6b2f62fa819be3f1 + languageName: node + linkType: hard + +"@webassemblyjs/helper-wasm-section@npm:1.8.5": + version: 1.8.5 + resolution: "@webassemblyjs/helper-wasm-section@npm:1.8.5" + dependencies: + "@webassemblyjs/ast": 1.8.5 + "@webassemblyjs/helper-buffer": 1.8.5 + "@webassemblyjs/helper-wasm-bytecode": 1.8.5 + "@webassemblyjs/wasm-gen": 1.8.5 + checksum: bb838f6db1c8188d73a9144230b5eb81b7c42e52ae33c138daab8d863be6ca0a93313506105c91230e52ae05b6e54a89ede6d52f8088b019fc057982a9b197fc + languageName: node + linkType: hard + +"@webassemblyjs/helper-wasm-section@npm:1.9.0": + version: 1.9.0 + resolution: "@webassemblyjs/helper-wasm-section@npm:1.9.0" + dependencies: + "@webassemblyjs/ast": 1.9.0 + "@webassemblyjs/helper-buffer": 1.9.0 + "@webassemblyjs/helper-wasm-bytecode": 1.9.0 + "@webassemblyjs/wasm-gen": 1.9.0 + checksum: 0e2957efc4001b1e030cf088f41a81b779437bf073272fbb31e3fc36d979dc5dd4137611397a70fa308986597a09cbdcd7806f123a0a809ae1035c40495a59d3 + languageName: node + linkType: hard + +"@webassemblyjs/ieee754@npm:1.8.5": + version: 1.8.5 + resolution: "@webassemblyjs/ieee754@npm:1.8.5" + dependencies: + "@xtuc/ieee754": ^1.2.0 + checksum: 9b1ca1610f17376b5eea3dd17f14b9ba2be0f6575dc8fdec1dbac93afbd37cf7ecedca2044c2c73cf19a9ef8b95b4ad29187e3af3fdb2f8b51c50fb46cf2f513 + languageName: node + linkType: hard + +"@webassemblyjs/ieee754@npm:1.9.0": + version: 1.9.0 + resolution: "@webassemblyjs/ieee754@npm:1.9.0" + dependencies: + "@xtuc/ieee754": ^1.2.0 + checksum: 1474a87d8686542267b11b8ab0a1a37d3003cd6d4b797b8f96c58e348d483fec4e267ec1e128525e56e9250f90b75a79f1187a6beba2072d568b7a01faf3b8d4 + languageName: node + linkType: hard + +"@webassemblyjs/leb128@npm:1.8.5": + version: 1.8.5 + resolution: "@webassemblyjs/leb128@npm:1.8.5" + dependencies: + "@xtuc/long": 4.2.2 + checksum: 7f69f7a5a3514c1d38dffbdad0c867674efba04a4886bbe0d3d2176b23f0d7a936ef56ee5c1fc4d339d5f875fc93342bf736c6d0bd0d9a54211da534fd5e6c88 + languageName: node + linkType: hard + +"@webassemblyjs/leb128@npm:1.9.0": + version: 1.9.0 + resolution: "@webassemblyjs/leb128@npm:1.9.0" + dependencies: + "@xtuc/long": 4.2.2 + checksum: af49765d067ca2db5ec6bda360a235b9063756092a6439b8a296cb1ee0ebff778bcd68f686d3c350d1375a3fdb80fd0a91ea9655da5d1ea10ea5d3eae19c1105 + languageName: node + linkType: hard + +"@webassemblyjs/utf8@npm:1.8.5": + version: 1.8.5 + resolution: "@webassemblyjs/utf8@npm:1.8.5" + checksum: 61f3c696dd3242fc3ba80ca88928decd8de8eb7267bc5601a886750a3b710ebdeb8db393e125db7e85abbb02e99180c8c58768f78d7bdb4d400485f98bbb1a4d + languageName: node + linkType: hard + +"@webassemblyjs/utf8@npm:1.9.0": + version: 1.9.0 + resolution: "@webassemblyjs/utf8@npm:1.9.0" + checksum: 172fd362aaf6760b826117177ec171ce63b5fabe172f09343b8cd24852f33475f3a596bc1d02088f64a498556a19f98dce00cafe3da3fb8d77367db5326d2d66 + languageName: node + linkType: hard + +"@webassemblyjs/wasm-edit@npm:1.8.5": + version: 1.8.5 + resolution: "@webassemblyjs/wasm-edit@npm:1.8.5" + dependencies: + "@webassemblyjs/ast": 1.8.5 + "@webassemblyjs/helper-buffer": 1.8.5 + "@webassemblyjs/helper-wasm-bytecode": 1.8.5 + "@webassemblyjs/helper-wasm-section": 1.8.5 + "@webassemblyjs/wasm-gen": 1.8.5 + "@webassemblyjs/wasm-opt": 1.8.5 + "@webassemblyjs/wasm-parser": 1.8.5 + "@webassemblyjs/wast-printer": 1.8.5 + checksum: 24d59edfd4b8aeb0669d1a5c9c49e5c4f9ee5070dc52f55c514b1314ca27de8c4c96e50f873297d00bf21af17cb46315fa28ec9c2f4b00b8c1b1b03431b69239 + languageName: node + linkType: hard + +"@webassemblyjs/wasm-edit@npm:1.9.0": + version: 1.9.0 + resolution: "@webassemblyjs/wasm-edit@npm:1.9.0" + dependencies: + "@webassemblyjs/ast": 1.9.0 + "@webassemblyjs/helper-buffer": 1.9.0 + "@webassemblyjs/helper-wasm-bytecode": 1.9.0 + "@webassemblyjs/helper-wasm-section": 1.9.0 + "@webassemblyjs/wasm-gen": 1.9.0 + "@webassemblyjs/wasm-opt": 1.9.0 + "@webassemblyjs/wasm-parser": 1.9.0 + "@webassemblyjs/wast-printer": 1.9.0 + checksum: 16016c9ef5b69fed1d6a6f21926e6e4a9add41e316efb23f6aeadc6efe2035cfb528720965883ac7861a5584b679a2697416f19db983c8a0c8bd6c7de7a0c6f1 + languageName: node + linkType: hard + +"@webassemblyjs/wasm-gen@npm:1.8.5": + version: 1.8.5 + resolution: "@webassemblyjs/wasm-gen@npm:1.8.5" + dependencies: + "@webassemblyjs/ast": 1.8.5 + "@webassemblyjs/helper-wasm-bytecode": 1.8.5 + "@webassemblyjs/ieee754": 1.8.5 + "@webassemblyjs/leb128": 1.8.5 + "@webassemblyjs/utf8": 1.8.5 + checksum: 4e409bc4b0b6bfa0b065d8ca86637eb877455880e289c57fc138bd17eb55575740388f46f9e4b8a70a9c420a29aedf607e189363ebd87e2761eea7d608619638 + languageName: node + linkType: hard + +"@webassemblyjs/wasm-gen@npm:1.9.0": + version: 1.9.0 + resolution: "@webassemblyjs/wasm-gen@npm:1.9.0" + dependencies: + "@webassemblyjs/ast": 1.9.0 + "@webassemblyjs/helper-wasm-bytecode": 1.9.0 + "@webassemblyjs/ieee754": 1.9.0 + "@webassemblyjs/leb128": 1.9.0 + "@webassemblyjs/utf8": 1.9.0 + checksum: 1afcebfd1272b6f2aac2322b64ced22194d5fe91baf7cbc9fbd4e18a9cf9b1c2d31af5a02a7bf15d5880d598de822accc21d446a94ad0e70d7eb09eeab7de6c6 + languageName: node + linkType: hard + +"@webassemblyjs/wasm-opt@npm:1.8.5": + version: 1.8.5 + resolution: "@webassemblyjs/wasm-opt@npm:1.8.5" + dependencies: + "@webassemblyjs/ast": 1.8.5 + "@webassemblyjs/helper-buffer": 1.8.5 + "@webassemblyjs/wasm-gen": 1.8.5 + "@webassemblyjs/wasm-parser": 1.8.5 + checksum: f7bbc2848f3d9f6aee541aff51083b2a85cf9ab45a92ce4146628ad52abb1b84f5da791ede667b118869edf3a62db280413f983fbb9516402e9a1cf397052229 + languageName: node + linkType: hard + +"@webassemblyjs/wasm-opt@npm:1.9.0": + version: 1.9.0 + resolution: "@webassemblyjs/wasm-opt@npm:1.9.0" + dependencies: + "@webassemblyjs/ast": 1.9.0 + "@webassemblyjs/helper-buffer": 1.9.0 + "@webassemblyjs/wasm-gen": 1.9.0 + "@webassemblyjs/wasm-parser": 1.9.0 + checksum: 2ce89f206e40dbfc44ec4a04669b76d14810db70da2506f90a7d5ff45f8002e34d7eaed447c3423cdad76d60617012d1fd0c055b63a5ed863b0068e5ce3e4032 + languageName: node + linkType: hard + +"@webassemblyjs/wasm-parser@npm:1.8.5": + version: 1.8.5 + resolution: "@webassemblyjs/wasm-parser@npm:1.8.5" + dependencies: + "@webassemblyjs/ast": 1.8.5 + "@webassemblyjs/helper-api-error": 1.8.5 + "@webassemblyjs/helper-wasm-bytecode": 1.8.5 + "@webassemblyjs/ieee754": 1.8.5 + "@webassemblyjs/leb128": 1.8.5 + "@webassemblyjs/utf8": 1.8.5 + checksum: a335d55c8161ebe2cdd7872c41913eabd9a4ed9cafe5136a85536e773840957f6829237cc6eba0768b38149160f0d29f183e2bfdba43a1922da104f9fc863a30 + languageName: node + linkType: hard + +"@webassemblyjs/wasm-parser@npm:1.9.0": + version: 1.9.0 + resolution: "@webassemblyjs/wasm-parser@npm:1.9.0" + dependencies: + "@webassemblyjs/ast": 1.9.0 + "@webassemblyjs/helper-api-error": 1.9.0 + "@webassemblyjs/helper-wasm-bytecode": 1.9.0 + "@webassemblyjs/ieee754": 1.9.0 + "@webassemblyjs/leb128": 1.9.0 + "@webassemblyjs/utf8": 1.9.0 + checksum: b8cb346c9b7d1238d24a418bbc676c5adea7561202580527e3f6a8f74e38de8ba60962d5bda56fa7c1d652d28d787234dfae0b4777e2a8bcaf3e0d539ced8acf + languageName: node + linkType: hard + +"@webassemblyjs/wast-parser@npm:1.8.5": + version: 1.8.5 + resolution: "@webassemblyjs/wast-parser@npm:1.8.5" + dependencies: + "@webassemblyjs/ast": 1.8.5 + "@webassemblyjs/floating-point-hex-parser": 1.8.5 + "@webassemblyjs/helper-api-error": 1.8.5 + "@webassemblyjs/helper-code-frame": 1.8.5 + "@webassemblyjs/helper-fsm": 1.8.5 + "@xtuc/long": 4.2.2 + checksum: 4529bf0193a21ff1c570d3e342d96ff607a76220428f4b9623fdd2b9c67e587031fb6acdcbc9eda4de92f46f0881984f6a2c2f61c91c3cfeec97fcd1cbb194ae + languageName: node + linkType: hard + +"@webassemblyjs/wast-parser@npm:1.9.0": + version: 1.9.0 + resolution: "@webassemblyjs/wast-parser@npm:1.9.0" + dependencies: + "@webassemblyjs/ast": 1.9.0 + "@webassemblyjs/floating-point-hex-parser": 1.9.0 + "@webassemblyjs/helper-api-error": 1.9.0 + "@webassemblyjs/helper-code-frame": 1.9.0 + "@webassemblyjs/helper-fsm": 1.9.0 + "@xtuc/long": 4.2.2 + checksum: eaa0140a446be6138bbd19ecadf93119381f4cfabe5d7453397f2bd1716e00498666f12944b7da0b472ad1bcc27eca2fd9934785b57cfe97910189f0df59c3f1 + languageName: node + linkType: hard + +"@webassemblyjs/wast-printer@npm:1.8.5": + version: 1.8.5 + resolution: "@webassemblyjs/wast-printer@npm:1.8.5" + dependencies: + "@webassemblyjs/ast": 1.8.5 + "@webassemblyjs/wast-parser": 1.8.5 + "@xtuc/long": 4.2.2 + checksum: 490420d15f566e182a55ac6ed0a16479c4cfc714f6373647cb980fec2754a4af21a1431394435ced7cef21d14d898727bd11c71ef6e813821371d992ba0af18b + languageName: node + linkType: hard + +"@webassemblyjs/wast-printer@npm:1.9.0": + version: 1.9.0 + resolution: "@webassemblyjs/wast-printer@npm:1.9.0" + dependencies: + "@webassemblyjs/ast": 1.9.0 + "@webassemblyjs/wast-parser": 1.9.0 + "@xtuc/long": 4.2.2 + checksum: 9f013b27e28b60cb215011079a15c94d1a7b0784eb3b59ec4936f8c0635ecdb58875c6809485cff814e01df170f02c18676cf782826795dc08553b98e69c1049 + languageName: node + linkType: hard + +"@wry/context@npm:^0.5.2": + version: 0.5.2 + resolution: "@wry/context@npm:0.5.2" + dependencies: + tslib: ^1.9.3 + checksum: 6547fb0eb53431d655e65400a7f16c1cc9b2ebd5b4924dee2912e0d9925343264f4cd6f3300e09199e5a1b44cb235d71de0cf561d2fa4b8c8519adf758cfcefe + languageName: node + linkType: hard + +"@wry/equality@npm:^0.1.2": + version: 0.1.11 + resolution: "@wry/equality@npm:0.1.11" + dependencies: + tslib: ^1.9.3 + checksum: 3d1da5799967fc272ae53f698514c169c85a04c11c1db3e4641a21edc82af75bfb4db9221c4f87aa333f14c7b43b72311fa66dae1ae981fa6f24c2bc5863d92b + languageName: node + linkType: hard + +"@wry/equality@npm:^0.2.0": + version: 0.2.0 + resolution: "@wry/equality@npm:0.2.0" + dependencies: + tslib: ^1.9.3 + checksum: ddd217fbefd8f105174abe099450e0ac1b813e19451b8525d2143098b23c42b30dd5042f38c5c92ba55017f9efab2ae4ce18d66a83d0e329de8523691a8bf60e + languageName: node + linkType: hard + +"@xtuc/ieee754@npm:^1.2.0": + version: 1.2.0 + resolution: "@xtuc/ieee754@npm:1.2.0" + checksum: 65bb9c55a054e2d79bf2a8c4ea23a962bd23f654b84532f3555d158d06dedf1603a4131a2f685cad988e582824ef7b8179918e894537be9626ea357f8ea60a63 + languageName: node + linkType: hard + +"@xtuc/long@npm:4.2.2": + version: 4.2.2 + resolution: "@xtuc/long@npm:4.2.2" + checksum: ec09a359f98e9f8c47bf6c965e73b520a1a65e93f1febf6472babc8b6b0b425a2084452be103da5be11aec8c502ecfa29400713d55ef774579d04f691db44a2d + languageName: node + linkType: hard + +"@zkochan/cmd-shim@npm:^3.1.0": + version: 3.1.0 + resolution: "@zkochan/cmd-shim@npm:3.1.0" + dependencies: + is-windows: ^1.0.0 + mkdirp-promise: ^5.0.1 + mz: ^2.5.0 + checksum: 79337e5aafbe1a94253ef953bf9db458c1890487d396561305d446e9abab85b8f5bca211ee5e10a7f0bcb119bf54ac8a9ada19877b37d6c329d879e19ded2bc7 + languageName: node + linkType: hard + +"JSONStream@npm:^1.0.4, JSONStream@npm:^1.3.4": + version: 1.3.5 + resolution: "JSONStream@npm:1.3.5" + dependencies: + jsonparse: ^1.2.0 + through: ">=2.2.7 <3" + bin: + JSONStream: ./bin.js + checksum: e9849f8a52cde19c95d7fbf0bdab7bde1f31c9fbf2062e47044817eeebb31217c99aaa041366f377243aa852c64fa144c4397ef76965d6491eb47827464d8479 + languageName: node + linkType: hard + +"abab@npm:^2.0.0, abab@npm:^2.0.3": + version: 2.0.4 + resolution: "abab@npm:2.0.4" + checksum: 764470a74d3cdf4abd76cae594106cdeb557911f133c3b5e558e2b2c8a2a081aa60b614e04491df01c38920f99c89f85bfe406115a749e7552f1b08bf3ed6a6b + languageName: node + linkType: hard + +"abbrev@npm:1": + version: 1.1.1 + resolution: "abbrev@npm:1.1.1" + checksum: 9f9236a3cc7f56c167be3aa81c77fcab2e08dfb8047b7861b91440f20b299b9442255856bdbe9d408d7e96a0b64a36e1c27384251126962490b4eee841b533e0 + languageName: node + linkType: hard + +"accepts@npm:^1.3.5, accepts@npm:~1.3.4, accepts@npm:~1.3.5, accepts@npm:~1.3.7": + version: 1.3.7 + resolution: "accepts@npm:1.3.7" + dependencies: + mime-types: ~2.1.24 + negotiator: 0.6.2 + checksum: 2686fa30dbc850db1bf458dc8171fba13c54ed6cb25f4298ec7c2f88b8dfc50351f25c40abe3a948e4ec7a0cc8ea83d1c55c2f73ffa612d18840a8778d4a2ee0 + languageName: node + linkType: hard + +"accounts-js@workspace:website": + version: 0.0.0-use.local + resolution: "accounts-js@workspace:website" + dependencies: + "@docusaurus/core": 2.0.0-alpha.61 + "@docusaurus/preset-classic": 2.0.0-alpha.61 + clsx: 1.1.1 + docusaurus-plugin-fathom: 1.1.0 + react: 16.13.1 + react-dom: 16.13.1 + ts-node: 8.10.1 + typedoc: 0.17.6 + typedoc-plugin-markdown: 2.3.1 + languageName: unknown + linkType: soft + +"acorn-globals@npm:^4.1.0, acorn-globals@npm:^4.3.0": + version: 4.3.4 + resolution: "acorn-globals@npm:4.3.4" + dependencies: + acorn: ^6.0.1 + acorn-walk: ^6.0.1 + checksum: 6c3511f40d25daefda449b803f9d651c1b2427009d5dc74ae485efe5b704be0ce17983ac9571df3f5344a6ab1df77a29cb4e19c5f34796cec3c1c049f3ad5951 + languageName: node + linkType: hard + +"acorn-globals@npm:^6.0.0": + version: 6.0.0 + resolution: "acorn-globals@npm:6.0.0" + dependencies: + acorn: ^7.1.1 + acorn-walk: ^7.1.1 + checksum: 078ed9bc354e95a30893efd260e2dc566dfc34d8e1d24a54b9ad59984bea53ff93cb1986a85b2b5e2b8e573cb00d34ad8767371b852941a1947f81c37c1be759 + languageName: node + linkType: hard + +"acorn-jsx@npm:^5.2.0": + version: 5.2.0 + resolution: "acorn-jsx@npm:5.2.0" + peerDependencies: + acorn: ^6.0.0 || ^7.0.0 + checksum: 1247cc4b32e7883c70823eae643ef07faefb02ef6084bb92d650e5564bb22d6e6392771036c1e15428dc01e6350a5336c6741e272c30ab6bf9ce578e4701f6c0 + languageName: node + linkType: hard + +"acorn-walk@npm:^6.0.1": + version: 6.2.0 + resolution: "acorn-walk@npm:6.2.0" + checksum: 3bd8415090ecfcf0a40e9bdde722993104d209d8e7721b48d9c77c46fb1dd261cc29ae0ee47e6532db9fbfe96d911b19ec0d72a383b20ed331364ab18d35b75b + languageName: node + linkType: hard + +"acorn-walk@npm:^7.1.1": + version: 7.2.0 + resolution: "acorn-walk@npm:7.2.0" + checksum: 7b52d5d6397f2d395ca878bdb0f56e583e69bc875521876d05fe2b6e293c21aca918b288c01bd18ac99b46b55a0f00a8d0e30fbdfb53c8e36e78ad1a65f73a4a + languageName: node + linkType: hard + +"acorn@npm:^5.5.3": + version: 5.7.4 + resolution: "acorn@npm:5.7.4" + bin: + acorn: bin/acorn + checksum: 1ca0f3e95b48b40ff3a6eb28e7e07a26f7aea762138ee8698eec6a6a241f3729506fbd55520c4f00de8fd2a2af7704be17c9f1c2c017a413a855f3e95929b6a1 + languageName: node + linkType: hard + +"acorn@npm:^6.0.1, acorn@npm:^6.0.4, acorn@npm:^6.2.1, acorn@npm:^6.4.1": + version: 6.4.1 + resolution: "acorn@npm:6.4.1" + bin: + acorn: bin/acorn + checksum: 7aa4623c6d2705e9a26057ccfdd409154f8b634973ce109a63fa2c7e679af689bb50378379610794ec9744975db7a3a3b97e2b83f87fab1b635ad19b6c0ac3be + languageName: node + linkType: hard + +"acorn@npm:^7.1.1, acorn@npm:^7.3.1": + version: 7.4.0 + resolution: "acorn@npm:7.4.0" + bin: + acorn: bin/acorn + checksum: a25b12d9e803df49593e983f05abd8084be883df23f78a3ceb49bfb9c453fdc43d51b3ce268b6acd7694c34d9cde1707acb1cdcbc5303bde47bee43ffc131491 + languageName: node + linkType: hard + +"add-stream@npm:^1.0.0": + version: 1.0.0 + resolution: "add-stream@npm:1.0.0" + checksum: 3b452cd36229ae6199cea9938ef5de26037164f7918eece0fab6db64401cdaddecad754771cfa026322dc81a1fe96f7cac03dfb932fbed572bc5e337ddc6c28a + languageName: node + linkType: hard + +"address@npm:1.1.2, address@npm:^1.0.1": + version: 1.1.2 + resolution: "address@npm:1.1.2" + checksum: e0fe385945097112e7819a29e1ac362d3c55c35352483c1a8418fbf9f2c4ad90ab6db9d904aaf4814c1c7174359b4cb39072819259df36a2b9dbf0c64a5e2fa3 + languageName: node + linkType: hard + +"adjust-sourcemap-loader@npm:2.0.0": + version: 2.0.0 + resolution: "adjust-sourcemap-loader@npm:2.0.0" + dependencies: + assert: 1.4.1 + camelcase: 5.0.0 + loader-utils: 1.2.3 + object-path: 0.11.4 + regex-parser: 2.2.10 + checksum: 086470bacc4244bcc29df88918b362c337c0d6ef6bdb71c6e1a80c04ff66cd518d18f23ba1e2b25908b41882285d9435b1281ae7b104ff6271237ea3bf7e36ac + languageName: node + linkType: hard + +"agent-base@npm:4, agent-base@npm:^4.3.0": + version: 4.3.0 + resolution: "agent-base@npm:4.3.0" + dependencies: + es6-promisify: ^5.0.0 + checksum: b40b7d9675c475202afac88c31d5ce42f041e50d2028bd4ad0cfc25b60abe4aedf6b976d9f653641663cbf45295539282d0cf7d50ece7f7c1dd0c05dc99a8112 + languageName: node + linkType: hard + +"agent-base@npm:6": + version: 6.0.1 + resolution: "agent-base@npm:6.0.1" + dependencies: + debug: 4 + checksum: 5dbab2ce93cbf858c557c87a7401114ccf6afdd3d1c5c038831798de2be3873356bb1c09067a75e7e1f9a9ba84b4d979d3aec8cab3db87c776f05b5ae693323c + languageName: node + linkType: hard + +"agent-base@npm:~4.2.1": + version: 4.2.1 + resolution: "agent-base@npm:4.2.1" + dependencies: + es6-promisify: ^5.0.0 + checksum: 17a3d8a70756b69e8adb9a0f5e490d5586008c03a83f00ec7dd1c5714b826fee84d7741fb23b58c3079ee3f2d7a13913ae05598a5c16ccba0ad6775726f01e57 + languageName: node + linkType: hard + +"agentkeepalive@npm:^3.4.1": + version: 3.5.2 + resolution: "agentkeepalive@npm:3.5.2" + dependencies: + humanize-ms: ^1.2.1 + checksum: 099d65d0b86b7393fe0c6be773386e0346bfab2b8cf62a040f125ac5eb13668da9dfb41b8f3ebaab8c8fa26ee713e29e819b8d0bf14e980e46b68494f3330d9a + languageName: node + linkType: hard + +"aggregate-error@npm:3.0.1, aggregate-error@npm:^3.0.0": + version: 3.0.1 + resolution: "aggregate-error@npm:3.0.1" + dependencies: + clean-stack: ^2.0.0 + indent-string: ^4.0.0 + checksum: aee96f00c21c9a8c005d949a448e656339235faeec5c050e041ed3d33812fc3478a777ffd6309eb61c17ceb66dd0d2c6220e06e565ec994f536d9a16814e0ebf + languageName: node + linkType: hard + +"ajv-errors@npm:^1.0.0": + version: 1.0.1 + resolution: "ajv-errors@npm:1.0.1" + peerDependencies: + ajv: ">=5.0.0" + checksum: d8356aadcb8a602c69c8eefca1aff93271316c45c42b975606346cfd7c3f9bf56569c15bd2fe18bee5ae16d4db15fb9b0b12cb48c057335980993978c5ff2450 + languageName: node + linkType: hard + +"ajv-keywords@npm:^3.1.0, ajv-keywords@npm:^3.4.1": + version: 3.5.2 + resolution: "ajv-keywords@npm:3.5.2" + peerDependencies: + ajv: ^6.9.1 + checksum: 01f26c292304870c03a1cd14fc1ddcf7c713a05611a122c5193694d4050063d5fba46cbf8b5b2ebde364166fddd3c2e0abdcd97df655b7a7fbb3e6634eeb056a + languageName: node + linkType: hard + +"ajv@npm:^6.1.0, ajv@npm:^6.10.0, ajv@npm:^6.10.2, ajv@npm:^6.12.2, ajv@npm:^6.12.3": + version: 6.12.3 + resolution: "ajv@npm:6.12.3" + 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 + checksum: b20a171bf30ede1635c6b1955bcc1db5a6b3e7dfa77f75aace9fb0db87375430c46d5cdd84158a0bf0a8da91e4da97bdb1afe5604a0969d8468b7c11143fdbba + languageName: node + linkType: hard + +"algoliasearch-helper@npm:^3.1.1": + version: 3.2.2 + resolution: "algoliasearch-helper@npm:3.2.2" + dependencies: + events: ^1.1.1 + peerDependencies: + algoliasearch: ">= 3.1 < 5" + checksum: 2ba425db93237e7a00d92f69bd291359a489712d0f213ee9e6711c7d5d5796440ec22841d2e68112055b3d8cfcca9b9f695f19a7ec1ea859dbe025b242b68263 + languageName: node + linkType: hard + +"algoliasearch@npm:^4.0.0": + version: 4.4.0 + resolution: "algoliasearch@npm:4.4.0" + dependencies: + "@algolia/cache-browser-local-storage": 4.4.0 + "@algolia/cache-common": 4.4.0 + "@algolia/cache-in-memory": 4.4.0 + "@algolia/client-account": 4.4.0 + "@algolia/client-analytics": 4.4.0 + "@algolia/client-common": 4.4.0 + "@algolia/client-recommendation": 4.4.0 + "@algolia/client-search": 4.4.0 + "@algolia/logger-common": 4.4.0 + "@algolia/logger-console": 4.4.0 + "@algolia/requester-browser-xhr": 4.4.0 + "@algolia/requester-common": 4.4.0 + "@algolia/requester-node-http": 4.4.0 + "@algolia/transporter": 4.4.0 + checksum: 16dea2fac51070dd9707ec49e628a42fa181a652ee7f1bc7a0874d6bc410001d0ea3b9fb109665eba7a3d053a736920b1ffbfa2f3364e63eacf6f7ca94bf745e + languageName: node + linkType: hard + +"alphanum-sort@npm:^1.0.0": + version: 1.0.2 + resolution: "alphanum-sort@npm:1.0.2" + checksum: 28bad91719e15959e36a791a3538924e07da356ebe3b5f992e7668e8018cfc417a7ba4a69512771e5ffa306c7e028435c7748546f66f72d4f7b0ad694cf55069 + languageName: node + linkType: hard + +"ansi-align@npm:^3.0.0": + version: 3.0.0 + resolution: "ansi-align@npm:3.0.0" + dependencies: + string-width: ^3.0.0 + checksum: e6bea1d61003857c5bbf3e81d806b53d32acb482f14dfe88233ba60656fd161cdb91d64b4feccb350adc511ac33fa60eb9ebac0afbcb0e22a8b17210a9f2147d + languageName: node + linkType: hard + +"ansi-colors@npm:^3.0.0": + version: 3.2.4 + resolution: "ansi-colors@npm:3.2.4" + checksum: 86ec4a476ae8661237c0da58c0b4c48ea57719fdd80eed00132db09ee88d69f5caa5889e13ccd07489e710bf3b9fd85123729e0660384d4373e92ef6125c1fad + languageName: node + linkType: hard + +"ansi-colors@npm:^4.1.1": + version: 4.1.1 + resolution: "ansi-colors@npm:4.1.1" + checksum: 50d8dfbce25602caea1b170ecf4c71c4c9c58d2d1e3186fb5712848c0610d05fe60b8bb6a9eaebd9b54f1db3baf6f603e04214cce597cc7799bc9f47fd9a797a + languageName: node + linkType: hard + +"ansi-escapes@npm:4.3.1, ansi-escapes@npm:^4.2.1, ansi-escapes@npm:^4.3.0": + version: 4.3.1 + resolution: "ansi-escapes@npm:4.3.1" + dependencies: + type-fest: ^0.11.0 + checksum: bcb39e57bd32af0236c4ded96aaf8ef5d86c5a4683762b0be998c68cd11d5afd93296f4b5e087a3557da82a899b7c4d081483d603a4d4647e6a6613bf1aded8a + languageName: node + linkType: hard + +"ansi-escapes@npm:^1.1.0": + version: 1.4.0 + resolution: "ansi-escapes@npm:1.4.0" + checksum: c0e83fa29b2776150b2acc04340a6028a98e8aa11485b2356e09b87d85961b74127a1187cd1a4946e05e17f758cda6e7ec7086945f4f1c3bec3dab9d6ab0d986 + languageName: node + linkType: hard + +"ansi-escapes@npm:^3.0.0, ansi-escapes@npm:^3.2.0": + version: 3.2.0 + resolution: "ansi-escapes@npm:3.2.0" + checksum: 0a106c53c71bc831a3245b49016a2630de4217674f4383761c7ef4fe78dfe73a897e323f27298783494b45ce3703f903013d4548c5411bafb6c5c937fb0b3f4e + languageName: node + linkType: hard + +"ansi-html@npm:0.0.7": + version: 0.0.7 + resolution: "ansi-html@npm:0.0.7" + bin: + ansi-html: ./bin/ansi-html + checksum: 1178680548785b6557e67c197c343411ee1a334606058ebcfb4a3c79accddaa43edb511b0dcb79c15a18041fe0e8d1063bbbad95be8b5b1d56934b9a51d88c83 + languageName: node + linkType: hard + +"ansi-regex@npm:^2.0.0": + version: 2.1.1 + resolution: "ansi-regex@npm:2.1.1" + checksum: 93a53c923fd433f67cd3d5647dffa6790f37bbfb924cf73ad23e28a8e414bde142d1da260d9a2be52ac4aa382063196880b1d40cf8b547642c746ed538ebf6c4 + languageName: node + linkType: hard + +"ansi-regex@npm:^3.0.0": + version: 3.0.0 + resolution: "ansi-regex@npm:3.0.0" + checksum: 2e3c40d42904366e4a1a7b906ea3ae7968179a50916dfa0fd3e59fd12333c5d95970a9a59067ac3406d97c78784d591f0b841a4efd365dafb261327ae1ea3478 + languageName: node + linkType: hard + +"ansi-regex@npm:^4.0.0, ansi-regex@npm:^4.1.0": + version: 4.1.0 + resolution: "ansi-regex@npm:4.1.0" + checksum: 53b6fe447cf92ee59739379de637af6f86b3b8a9537fbfe36a66f946f1d9d34afc3efe664ac31bcc7c3af042d43eabcfcfd3f790316d474bbc7b19a4b1d132dd + languageName: node + linkType: hard + +"ansi-regex@npm:^5.0.0": + version: 5.0.0 + resolution: "ansi-regex@npm:5.0.0" + checksum: cbd9b5c9dbbb4a949c2a6e93f1c6cc19f0683d8a4724d08d2158627be6d373f0f3ba1f4ada01dce7ee141f2ba2628fbbd29932c7d49926e3b630c7f329f3178b + languageName: node + linkType: hard + +"ansi-styles@npm:^2.2.1": + version: 2.2.1 + resolution: "ansi-styles@npm:2.2.1" + checksum: 108c7496372982f1ee53f3f09975de89cc771d2f7c89a32d56ab7a542f67b7de97391c9c16b43b39eb7ea176d3cfbb15975b6b355ae827f15f5a457b1b9dec31 + languageName: node + linkType: hard + +"ansi-styles@npm:^3.2.0, ansi-styles@npm:^3.2.1": + version: 3.2.1 + resolution: "ansi-styles@npm:3.2.1" + dependencies: + color-convert: ^1.9.0 + checksum: 456e1c23d9277512a47718da75e7fbb0a5ee215ef893c2f76d6b3efe8fceabc861121b80b0362146f5f995d21a1633f05a19bbf6283ae66ac11dc3b9c0bed779 + languageName: node + linkType: hard + +"ansi-styles@npm:^4.0.0, ansi-styles@npm:^4.1.0": + version: 4.2.1 + resolution: "ansi-styles@npm:4.2.1" + dependencies: + "@types/color-name": ^1.1.1 + color-convert: ^2.0.1 + checksum: c8c007d5dab7b4fea064c9ea318114e1f6fc714bb382d061ac09e66bc83c8f3ce12bb6354be01598722c14a5d710af280b7614d269354f80d2535946aefa82f4 + languageName: node + linkType: hard + +"any-observable@npm:^0.3.0": + version: 0.3.0 + resolution: "any-observable@npm:0.3.0" + checksum: 8051aaf7b9403b6722b10bd2464c939e3d20f2381306a6fecbbeace1626ccf1071da441eb73ca4ac40f8c0144daec2ad716bc284e720befea02292e5e60e39be + languageName: node + linkType: hard + +"any-promise@npm:^1.0.0": + version: 1.3.0 + resolution: "any-promise@npm:1.3.0" + checksum: e829425e4aef532fb9063c638de4693feaf285dae8ba84bcabd9c6d49446264650d1e16b73af8a25ae1e4480f9a4dc7cae364b4c4d4753b57dd1900cdfab8183 + languageName: node + linkType: hard + +"anymatch@npm:^2.0.0": + version: 2.0.0 + resolution: "anymatch@npm:2.0.0" + dependencies: + micromatch: ^3.1.4 + normalize-path: ^2.1.1 + checksum: 9e495910cca364b47ee125d451bae1bde542ef78a56ac2a1e9fe835a671ed6f3b05a0fedafc8afc58d0f5214c604cddd5ca2d27fa48f234faffa2bf26ffa7fcf + languageName: node + linkType: hard + +"anymatch@npm:^3.0.3, anymatch@npm:~3.1.1": + version: 3.1.1 + resolution: "anymatch@npm:3.1.1" + dependencies: + normalize-path: ^3.0.0 + picomatch: ^2.0.4 + checksum: cf61bbaf7f34d9f94dd966230b7a7f8f1f24e3e2185540741a2561118e108206d85101ee2fc9876cd756475dbe6573d84d91115c3abdbf53a64e26a5f1f06b67 + languageName: node + linkType: hard + +"apollo-cache-control@npm:^0.11.1": + version: 0.11.1 + resolution: "apollo-cache-control@npm:0.11.1" + dependencies: + apollo-server-env: ^2.4.5 + apollo-server-plugin-base: ^0.9.1 + peerDependencies: + graphql: ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: 58cceb5014f32526e39934edc8d27e471d22a7fd2ac4dca10b90b58c2303025b6592fd3d7f4ecd8a46720c1fd49891ca131f8ea01cab1ff865d6af0370dc429e + languageName: node + linkType: hard + +"apollo-datasource@npm:^0.7.2": + version: 0.7.2 + resolution: "apollo-datasource@npm:0.7.2" + dependencies: + apollo-server-caching: ^0.5.2 + apollo-server-env: ^2.4.5 + checksum: fdc6010d8e7ea2169677e355704a00791fe71f54dbf58d5df954b8c58e54db462079b7ff1f82e5efeffba6609ab3723e609729d7a3567f39ac30ebfb07651f88 + languageName: node + linkType: hard + +"apollo-engine-reporting-protobuf@npm:^0.5.2": + version: 0.5.2 + resolution: "apollo-engine-reporting-protobuf@npm:0.5.2" + dependencies: + "@apollo/protobufjs": ^1.0.3 + checksum: f49534868b245778783a4b871b1d2b3c1df1fb0a13bbaf77527cda05a94693174c81d0920aeffb806edf55dd2b54b69e04d396037c7d254d1e8a7a0a9ff5e3d5 + languageName: node + linkType: hard + +"apollo-engine-reporting@npm:^2.3.0": + version: 2.3.0 + resolution: "apollo-engine-reporting@npm:2.3.0" + dependencies: + apollo-engine-reporting-protobuf: ^0.5.2 + apollo-graphql: ^0.5.0 + apollo-server-caching: ^0.5.2 + apollo-server-env: ^2.4.5 + apollo-server-errors: ^2.4.2 + apollo-server-plugin-base: ^0.9.1 + apollo-server-types: ^0.5.1 + async-retry: ^1.2.1 + uuid: ^8.0.0 + peerDependencies: + graphql: ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: 5227f1e90b12ef384adff1e4ab00dd37e871ae0e444bf2cec5fdc43188de3cf75c90f58e6b2be4667b13d6040e2cd4549ce922a19c5627662c45404b90725f19 + languageName: node + linkType: hard + +"apollo-env@npm:^0.6.5": + version: 0.6.5 + resolution: "apollo-env@npm:0.6.5" + dependencies: + "@types/node-fetch": 2.5.7 + core-js: ^3.0.1 + node-fetch: ^2.2.0 + sha.js: ^2.4.11 + checksum: a4809dbe96ba80b3201b74283c92384ea4105cf57956013c9cb151d55510cf2690f950d4a74834c32e789b6ea3b015dbee80ab51d4abfba43b2e46a1a90659cc + languageName: node + linkType: hard + +"apollo-graphql@npm:^0.5.0": + version: 0.5.0 + resolution: "apollo-graphql@npm:0.5.0" + dependencies: + apollo-env: ^0.6.5 + lodash.sortby: ^4.7.0 + peerDependencies: + graphql: ^14.2.1 || ^15.0.0 + checksum: 8a72967d7b5fc8f6edd613677c9a7f9e195cf3e07bd49f7485ccdb20292ddcc3d4caa365b1d8d491f104962fdad1d180c2c77888824b53bb5c6218eb9d54dd70 + languageName: node + linkType: hard + +"apollo-link-context@npm:1.0.20": + version: 1.0.20 + resolution: "apollo-link-context@npm:1.0.20" + dependencies: + apollo-link: ^1.2.14 + tslib: ^1.9.3 + checksum: bb26853689c4fff4205695d6067b6eb170152f2f96e3e42d2583e4656141db6c472c0df9c57fd61279ccbf93de6a74a34111848a73ba7457da4bf499f0dd94e1 + languageName: node + linkType: hard + +"apollo-link-http-common@npm:^0.2.14, apollo-link-http-common@npm:^0.2.16": + version: 0.2.16 + resolution: "apollo-link-http-common@npm:0.2.16" + dependencies: + apollo-link: ^1.2.14 + ts-invariant: ^0.4.0 + tslib: ^1.9.3 + peerDependencies: + graphql: ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: 7ab319747bc9c3fbebd57b2df08be5425c0f62316e1a71e76d6041721d21e04962dd7522a0fc2280acbe5ee3aaa5acab79d6b35eee61dd91b8caa1bdbdd6d7b0 + languageName: node + linkType: hard + +"apollo-link-http@npm:1.5.17": + version: 1.5.17 + resolution: "apollo-link-http@npm:1.5.17" + dependencies: + apollo-link: ^1.2.14 + apollo-link-http-common: ^0.2.16 + tslib: ^1.9.3 + peerDependencies: + graphql: ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: c16c07aa1131af2fb1b43c323197299bb00c04649a7350250f4306f9b72c66d82945d24aedd6e9c07b3efeb14cf79881b0bcd470e60ef58b41115a43d41dc1e8 + languageName: node + linkType: hard + +"apollo-link@npm:^1.2.12, apollo-link@npm:^1.2.14": + version: 1.2.14 + resolution: "apollo-link@npm:1.2.14" + dependencies: + apollo-utilities: ^1.3.0 + ts-invariant: ^0.4.0 + tslib: ^1.9.3 + zen-observable-ts: ^0.8.21 + peerDependencies: + graphql: ^0.11.3 || ^0.12.3 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: 5cc96cd6df7280ad88f41532c32340972ca755b69f6a2f26f8faf04682c387a13d49dc31663674cac14e01f08828333d5deeefe54e667d1ad9ddc8375a216964 + languageName: node + linkType: hard + +"apollo-server-caching@npm:0.5.1": + version: 0.5.1 + resolution: "apollo-server-caching@npm:0.5.1" + dependencies: + lru-cache: ^5.0.0 + checksum: 15d8807b0b8bed3c209815ac026a7ed88e5e6b23a1b399b2e811489d2973da55f6eebf3f1fa690d5ad1a5d59a9781a33ef7e889f69b19b43c012375079753306 + languageName: node + linkType: hard + +"apollo-server-caching@npm:^0.5.2": + version: 0.5.2 + resolution: "apollo-server-caching@npm:0.5.2" + dependencies: + lru-cache: ^5.0.0 + checksum: 250a16c3cdb4112da0d859c95efe99f26dca5176c8177cf9d381a6749ec1065aff9724f09a4e656f5ea3d7fba994a8b9f90396a6125b3477f1a75ed13c622c2b + languageName: node + linkType: hard + +"apollo-server-core@npm:^2.14.4, apollo-server-core@npm:^2.16.0, apollo-server-core@npm:^2.16.1": + version: 2.16.1 + resolution: "apollo-server-core@npm:2.16.1" + dependencies: + "@apollographql/apollo-tools": ^0.4.3 + "@apollographql/graphql-playground-html": 1.6.26 + "@types/graphql-upload": ^8.0.0 + "@types/ws": ^7.0.0 + apollo-cache-control: ^0.11.1 + apollo-datasource: ^0.7.2 + apollo-engine-reporting: ^2.3.0 + apollo-server-caching: ^0.5.2 + apollo-server-env: ^2.4.5 + apollo-server-errors: ^2.4.2 + apollo-server-plugin-base: ^0.9.1 + apollo-server-types: ^0.5.1 + apollo-tracing: ^0.11.1 + fast-json-stable-stringify: ^2.0.0 + graphql-extensions: ^0.12.4 + graphql-tag: ^2.9.2 + graphql-tools: ^4.0.0 + graphql-upload: ^8.0.2 + loglevel: ^1.6.7 + sha.js: ^2.4.11 + subscriptions-transport-ws: ^0.9.11 + ws: ^6.0.0 + peerDependencies: + graphql: ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: 90ce35432dddc60d0c04340b50b8a066cc58bd585c64e6b8de2dda3241252040e25c1362828718641010fabe2499ddcc3b06420888eb49c75ee025a18eff3fee + languageName: node + linkType: hard + +"apollo-server-env@npm:^2.4.5": + version: 2.4.5 + resolution: "apollo-server-env@npm:2.4.5" + dependencies: + node-fetch: ^2.1.2 + util.promisify: ^1.0.0 + checksum: 6152f41750f0bfd2d689b74775a0e61da1345d7e98d89571c28df37edaf9627b30ae215a8863eb86bc82aaaa29277332e0c5eba6bac30f44586940c4ffd00a10 + languageName: node + linkType: hard + +"apollo-server-errors@npm:^2.4.2": + version: 2.4.2 + resolution: "apollo-server-errors@npm:2.4.2" + peerDependencies: + graphql: ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: 638fc54b24dcfd473fb55db4d9998bfad0b91b9c4b27f41e4a983b36055eed038a7d848470357318f28d78ea2c3f6e8418c5def07a88336cff5d33fe35891ba0 + languageName: node + linkType: hard + +"apollo-server-express@npm:^2.14.4, apollo-server-express@npm:^2.16.0, apollo-server-express@npm:^2.16.1": + version: 2.16.1 + resolution: "apollo-server-express@npm:2.16.1" + dependencies: + "@apollographql/graphql-playground-html": 1.6.26 + "@types/accepts": ^1.3.5 + "@types/body-parser": 1.19.0 + "@types/cors": ^2.8.4 + "@types/express": 4.17.7 + accepts: ^1.3.5 + apollo-server-core: ^2.16.1 + apollo-server-types: ^0.5.1 + body-parser: ^1.18.3 + cors: ^2.8.4 + express: ^4.17.1 + graphql-subscriptions: ^1.0.0 + graphql-tools: ^4.0.0 + parseurl: ^1.3.2 + subscriptions-transport-ws: ^0.9.16 + type-is: ^1.6.16 + peerDependencies: + graphql: ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: e1c9e649950228695d42c45e0a363fc823dc97eddd5c7ea8aeba39d38a34d3ac6e11d5d8b5749eff232ca1367826074b7d44e9fd228daf006ac771b1acac9ea8 + languageName: node + linkType: hard + +"apollo-server-plugin-base@npm:^0.9.1": + version: 0.9.1 + resolution: "apollo-server-plugin-base@npm:0.9.1" + dependencies: + apollo-server-types: ^0.5.1 + peerDependencies: + graphql: ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: e2b9e8e4e88276a4ed27e23922bf435c48c7b071b0e058a8ecd1d37e13037b21f3481d1f79ffc3be323df3a449d321c62d0ad564902170049e50ac53d412ec8d + languageName: node + linkType: hard + +"apollo-server-types@npm:^0.5.1": + version: 0.5.1 + resolution: "apollo-server-types@npm:0.5.1" + dependencies: + apollo-engine-reporting-protobuf: ^0.5.2 + apollo-server-caching: ^0.5.2 + apollo-server-env: ^2.4.5 + peerDependencies: + graphql: ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: fdef47a9ead07deb8bb4e61dcd72d5ee6c7539496d8819a3dae4f7608e33dd6f7413b8fe1b12b0cf2644c672e1b85bbc446ee15b089fef24497281174129f3da + languageName: node + linkType: hard + +"apollo-server@npm:2.14.4": + version: 2.14.4 + resolution: "apollo-server@npm:2.14.4" + dependencies: + apollo-server-core: ^2.14.4 + apollo-server-express: ^2.14.4 + express: ^4.0.0 + graphql-subscriptions: ^1.0.0 + graphql-tools: ^4.0.0 + peerDependencies: + graphql: ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: 55cd245e2bb5a6785b479fdc60a1135784d677137a2266024db04719a92d9a26df9f8e340da9bf66dfd7e44fb53897e17c2672cbbef6f130e0a1614d879e529e + languageName: node + linkType: hard + +"apollo-server@npm:2.16.0": + version: 2.16.0 + resolution: "apollo-server@npm:2.16.0" + dependencies: + apollo-server-core: ^2.16.0 + apollo-server-express: ^2.16.0 + express: ^4.0.0 + graphql-subscriptions: ^1.0.0 + graphql-tools: ^4.0.0 + peerDependencies: + graphql: ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: d1f69bb02db8c84564b3294508e2ab39adca03ae4e25ea82e3a90a4638c22350596c3f8088b61150ce50d3f5c6dfcefeba8bd4f6911e9f5a3ed135a0dbf33095 + languageName: node + linkType: hard + +"apollo-server@npm:^2.9.3": + version: 2.16.1 + resolution: "apollo-server@npm:2.16.1" + dependencies: + apollo-server-core: ^2.16.1 + apollo-server-express: ^2.16.1 + express: ^4.0.0 + graphql-subscriptions: ^1.0.0 + graphql-tools: ^4.0.0 + peerDependencies: + graphql: ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: 90dfaea1b167745630df93b75ca00f645e8e8f374051e2389a312dfeb25f1885a979a5e8b61d86786d11b4ebc36a09791c0a9e14a73e51ce584dffe83b57349e + languageName: node + linkType: hard + +"apollo-tracing@npm:^0.11.1": + version: 0.11.1 + resolution: "apollo-tracing@npm:0.11.1" + dependencies: + apollo-server-env: ^2.4.5 + apollo-server-plugin-base: ^0.9.1 + peerDependencies: + graphql: ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: 6c9daa774656b65031515a453e1d5d6f06b8e294bbcd6db698c777f7ca726fd37bcd8bf930649c1c999451706a382d0d203c4255ab6102b96c2bf5b4731240ab + languageName: node + linkType: hard + +"apollo-upload-client@npm:^13.0.0": + version: 13.0.0 + resolution: "apollo-upload-client@npm:13.0.0" + dependencies: + "@babel/runtime": ^7.9.2 + apollo-link: ^1.2.12 + apollo-link-http-common: ^0.2.14 + extract-files: ^8.0.0 + checksum: 0db6a9aebe758876687ac11f919f63868ba30ca3d512e67420c00cdaaa63d240b3388a3e09f7e2fc2924ccf6fbc3feac9c63aa0f253db9371bd8efc540a6aabe + languageName: node + linkType: hard + +"apollo-utilities@npm:^1.0.1, apollo-utilities@npm:^1.3.0": + version: 1.3.4 + resolution: "apollo-utilities@npm:1.3.4" + dependencies: + "@wry/equality": ^0.1.2 + fast-json-stable-stringify: ^2.0.0 + ts-invariant: ^0.4.0 + tslib: ^1.10.0 + peerDependencies: + graphql: ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: 5a046f8792b124a0fdc8ac37f4c50ba57cd4914dabcd652baaee08de541707c82bf2fb4d814e7d6d35b0b916f1582e5492c16809b43f0a2ce1584d9f89d4cd70 + languageName: node + linkType: hard + +"app-root-path@npm:^3.0.0": + version: 3.0.0 + resolution: "app-root-path@npm:3.0.0" + checksum: c4799a164ff9d3887654bcdaf32d1c84fddb326ba42ada30fbd26d8339a83f36dd490760a09c22fee86528a754f9f4997628cc962b8b33b4e2e7329c6333c74f + languageName: node + linkType: hard + +"aproba@npm:^1.0.3, aproba@npm:^1.1.1": + version: 1.2.0 + resolution: "aproba@npm:1.2.0" + checksum: d4bac3e640af1f35eea8d5ee2b96ce2682549e47289f071aa37ae56066e19d239e43dea170c207d0f71586d7634099089523dd5701f26d4ded7b31dd5848a24a + languageName: node + linkType: hard + +"aproba@npm:^2.0.0": + version: 2.0.0 + resolution: "aproba@npm:2.0.0" + checksum: 84a54bad440e98a0967a6f0919a6785ee2e6af13a6974096311b36745b26d080c2f5e78da2838bfb61e3a147b809de4eea81591cbbd6cb6c4a163b2c3f2027f7 + languageName: node + linkType: hard + +"are-we-there-yet@npm:~1.1.2": + version: 1.1.5 + resolution: "are-we-there-yet@npm:1.1.5" + dependencies: + delegates: ^1.0.0 + readable-stream: ^2.0.6 + checksum: 2d6fdb0ddde9b8cb120b6851b42c75f6b6db78b540b579a00d144ad38cb9e1bdf1248e5454049fcf5b47ef61d1a6f2ea433a8e38984158afd441bc1e0db7a625 + languageName: node + linkType: hard + +"arg@npm:^4.1.0": + version: 4.1.3 + resolution: "arg@npm:4.1.3" + checksum: 81b3b40b1529c4fbf75b12f7c3e6fb2dcce9e78072063babc169de9b4f40777788f3d2b04380f659ef676a756e03ccfbfe78adf4477353bda906295fa69dab89 + languageName: node + linkType: hard + +"argparse@npm:^1.0.7": + version: 1.0.10 + resolution: "argparse@npm:1.0.10" + dependencies: + sprintf-js: ~1.0.2 + checksum: 435adaef5f6671c3ef1478a22be6fd54bdb99fdbbce8f5561b9cbbb05068ccce87b7df3b9f3322ff52a6ebb9cab2b427cbedac47a07611690a9beaa5184093e2 + languageName: node + linkType: hard + +"aria-query@npm:^3.0.0": + version: 3.0.0 + resolution: "aria-query@npm:3.0.0" + dependencies: + ast-types-flow: 0.0.7 + commander: ^2.11.0 + checksum: 4603ead43ae64ef3920268b42c612adfc977941f72de1c1b1fcee99041388f7d6dd7cd4fb51957bc160f574b6c4748f478d9f366922bac77eb8e43f4002311bc + languageName: node + linkType: hard + +"arity-n@npm:^1.0.4": + version: 1.0.4 + resolution: "arity-n@npm:1.0.4" + checksum: 60e48e72da1f481f538cbf84c18a3be8501e3374ef7b9b99e173e4b90819ad20a8b469ef2b8e43a69e4d9c4595a6954605320c74c79aff6c82cbd3079ecb6624 + languageName: node + linkType: hard + +"arr-diff@npm:^4.0.0": + version: 4.0.0 + resolution: "arr-diff@npm:4.0.0" + checksum: cbdff67cf52b9742d7ecfcf8614a1a458638679909fadcec2f91d18807dd5ba1cfa1e47984f52876063c8648146d385926e11bdac976a1db3f219bfde9668160 + languageName: node + linkType: hard + +"arr-flatten@npm:^1.1.0": + version: 1.1.0 + resolution: "arr-flatten@npm:1.1.0" + checksum: 564dc9c32cb20a1b5bc6eeea3b7a7271fcc5e9f1f3d7648b9db145b7abf68815562870267010f9f4976d788f3f79d2ccf176e94cee69af7da48943a71041ab57 + languageName: node + linkType: hard + +"arr-union@npm:^3.1.0": + version: 3.1.0 + resolution: "arr-union@npm:3.1.0" + checksum: 78f0f75c4778283023b723152bf12be65773ab3628e21493e1a1d3c316d472af9053d9b3dec4d814a130ad4f8ba45ae79b0f33d270a4ae0b0ff41eb743461aa8 + languageName: node + linkType: hard + +"array-differ@npm:^2.0.3": + version: 2.1.0 + resolution: "array-differ@npm:2.1.0" + checksum: c1954d0a32986d0080184ed1277d86b2c717ce392fba383a4781e45a22e745e4f16045d2160887ee3c016298337463e84df326c65b2ad7767783b749e3dc2b6d + languageName: node + linkType: hard + +"array-equal@npm:^1.0.0": + version: 1.0.0 + resolution: "array-equal@npm:1.0.0" + checksum: ad82ed549385a7cacb7ed3a2be9cef73ccc0ebf371e4a30635bfc5737464f7fd5c70433e25c1bbdeec3d230d41be13e46b778e5a373300655531b4b7eff1f447 + languageName: node + linkType: hard + +"array-find-index@npm:^1.0.1": + version: 1.0.2 + resolution: "array-find-index@npm:1.0.2" + checksum: 5320b3bd4680eadee5191b8d8a4f01788f8761e11ae5d8d8f67e836308760d453c38300cdef41315e8adf24979083f73c353f651f1dc029ab3c712c1ef5ebf17 + languageName: node + linkType: hard + +"array-flatten@npm:1.1.1": + version: 1.1.1 + resolution: "array-flatten@npm:1.1.1" + checksum: de7a056451ff7891bb1bcda6ce2a50448ca70f63cd0fa7aa90430d288b6dc2931517b6853ce16c473a7f40fa6eaa874e20b6151616db93375471d1ffadfb1d3d + languageName: node + linkType: hard + +"array-flatten@npm:^2.1.0": + version: 2.1.2 + resolution: "array-flatten@npm:2.1.2" + checksum: 46bfb198da424765f26350a8d8b207deade75d493e6d26417bfebb4027857b9fef8f5ae3bacd0b912f9a9fd2c04e2ec140c7183c0408e10950579e9d5c9dea25 + languageName: node + linkType: hard + +"array-ify@npm:^1.0.0": + version: 1.0.0 + resolution: "array-ify@npm:1.0.0" + checksum: 1ba3a81a151f8df0eaafa25e47c8493803ebfa6b2f7918038ae52342b5d3d3ebee56fd57886a0c973ad9eb5faa8dee07c7d2716b582f4c741bb89a104b172461 + languageName: node + linkType: hard + +"array-includes@npm:^3.0.3, array-includes@npm:^3.1.1": + version: 3.1.1 + resolution: "array-includes@npm:3.1.1" + dependencies: + define-properties: ^1.1.3 + es-abstract: ^1.17.0 + is-string: ^1.0.5 + checksum: 9fa86fdad9b07f733ab9994fe1058228d4835917ea26788cbd88eed0805f8b87baddb03e6f277498f96297532d6aac678be2a65694fb44ea561cba71d619a611 + languageName: node + linkType: hard + +"array-union@npm:^1.0.1, array-union@npm:^1.0.2": + version: 1.0.2 + resolution: "array-union@npm:1.0.2" + dependencies: + array-uniq: ^1.0.1 + checksum: 5be2568acc80d284519ff2bed8385daa37074dccbf440d5a9ce911bcb9cf51486dd677d3f61903ba113196333d033b261c8eb901a491e15bb4e437e5c68f92c7 + languageName: node + linkType: hard + +"array-union@npm:^2.1.0": + version: 2.1.0 + resolution: "array-union@npm:2.1.0" + checksum: 93af542eb854bf62a742192d0061c82788a963a9a6594628f367388f2b9f1bfd9215910febbbdd55074841555d8b59bda6a13ecba4a8e136f58b675499eda292 + languageName: node + linkType: hard + +"array-uniq@npm:^1.0.1": + version: 1.0.3 + resolution: "array-uniq@npm:1.0.3" + checksum: ae11b7fc1e624f7ed45f7a269b521f3f9f73dbff277be9c61fe0240c497bd3fba86367753e0ebdf49bcfd3fee14f4ebab80f573545878525eb48429514a02124 + languageName: node + linkType: hard + +"array-unique@npm:^0.3.2": + version: 0.3.2 + resolution: "array-unique@npm:0.3.2" + checksum: 7139dbbcaf48325224593f2f7a400b123b310c53365b4a1d49916928082ad862117a1e6d411c926ec540e9408786bbd1cf90805609040568059156d1d09feb70 + languageName: node + linkType: hard + +"array.prototype.flat@npm:^1.2.1": + version: 1.2.3 + resolution: "array.prototype.flat@npm:1.2.3" + dependencies: + define-properties: ^1.1.3 + es-abstract: ^1.17.0-next.1 + checksum: f88a474d1cb3bfb2cfa44a5d36047bad146324f1beabbc743689d34fa36f29fab277008446ab56601c48721e1d50c5f47e5b3fae2583cc3724d1e6073cbdd901 + languageName: node + linkType: hard + +"array.prototype.flatmap@npm:1.2.3, array.prototype.flatmap@npm:^1.2.3": + version: 1.2.3 + resolution: "array.prototype.flatmap@npm:1.2.3" + dependencies: + define-properties: ^1.1.3 + es-abstract: ^1.17.0-next.1 + function-bind: ^1.1.1 + checksum: adbf30f2711d6599769a762278b7a1f8b94c917db268eb81f1364d808f1502b4e8995fe5a678e70029edb30fa4d39c1e3af3af7121baa3b7afcb7b59cbf76a00 + languageName: node + linkType: hard + +"arrify@npm:^1.0.1": + version: 1.0.1 + resolution: "arrify@npm:1.0.1" + checksum: f1d3bae819f49f51a09da5f5c5ce282e79ca69bbdb32db1d9f6c62b151ef801b74398d007cfe89686e2c5aeb62576a398b9068e5172b7f4e20157aa3284076d3 + languageName: node + linkType: hard + +"arrify@npm:^2.0.1": + version: 2.0.1 + resolution: "arrify@npm:2.0.1" + checksum: 2a19726815590d829e07998aefa2c352bd9061e58bf4391ffffa227129995841a710bef2d8b4c9408a6b0679d96c96bd23764bdbcc29bb21666c976816093972 + languageName: node + linkType: hard + +"asap@npm:^2.0.0, asap@npm:~2.0.3, asap@npm:~2.0.6": + version: 2.0.6 + resolution: "asap@npm:2.0.6" + checksum: 3d314f8c598b625a98347bacdba609d4c889c616ca5d8ea65acaae8050ab8b7aa6630df2cfe9856c20b260b432adf2ee7a65a1021f268ef70408c70f809e3a39 + languageName: node + linkType: hard + +"asn1.js@npm:^4.0.0": + version: 4.10.1 + resolution: "asn1.js@npm:4.10.1" + dependencies: + bn.js: ^4.0.0 + inherits: ^2.0.1 + minimalistic-assert: ^1.0.0 + checksum: 9c57bcc4ca0984967361fb05dd6e9a6d578a49da2f65623af69f934a958067a723944bcce258de5266d2b4a4c6ab840fb57f6af3f21a54e1857ecf263231b825 + languageName: node + linkType: hard + +"asn1@npm:~0.2.3": + version: 0.2.4 + resolution: "asn1@npm:0.2.4" + dependencies: + safer-buffer: ~2.1.0 + checksum: 5743ace942e2faa0b72f3b14bf1826509c5ca707ea150c10520f52b04f90aa715cee4370ec2e6279ce1ceb7d3c472ca33270124e90b495bea4c9b02f41b9d8ac + languageName: node + linkType: hard + +"assert-plus@npm:1.0.0, assert-plus@npm:^1.0.0": + version: 1.0.0 + resolution: "assert-plus@npm:1.0.0" + checksum: 1bda24f67343ccb75a7eee31179c92cf9f79bd6f6bc24101b0ce1495ef979376dd9b0f9b9064812bba564cdade5fbf851ed76b4a44b5e141d49cdaee6ffed6b2 + languageName: node + linkType: hard + +"assert@npm:1.4.1": + version: 1.4.1 + resolution: "assert@npm:1.4.1" + dependencies: + util: 0.10.3 + checksum: 0e5dd8f92e8de30e321141b1dd1e245c2120ff0718e07bcdce37bb36c8db7c0fb1d226393b021cfaf71fcf987bf6cf4cd50b2dcfa39fa9aeb48df22a3a602dc6 + languageName: node + linkType: hard + +"assert@npm:^1.1.1": + version: 1.5.0 + resolution: "assert@npm:1.5.0" + dependencies: + object-assign: ^4.1.1 + util: 0.10.3 + checksum: 9bd01a7a574d99656d3998b95e904c35fe41c9e18b8193a4b1bb3b1df2772f4fb03bf75897093daca9d883ed888d9be5da2a9a952da6f1da9101f4147a2f00c1 + languageName: node + linkType: hard + +"assign-symbols@npm:^1.0.0": + version: 1.0.0 + resolution: "assign-symbols@npm:1.0.0" + checksum: 893e9389a5dde0690102ad8d6146e50d747b6f45d51996d39b04abb7774755a4a9b53883295abab4dd455704b1e10c1fa560d617db5404bae118526916472bec + languageName: node + linkType: hard + +"ast-types-flow@npm:0.0.7, ast-types-flow@npm:^0.0.7": + version: 0.0.7 + resolution: "ast-types-flow@npm:0.0.7" + checksum: 4211a734ae7823e8ed55f68bd2cee5027a59ae3cbc8152f36485059859c5ef29560b0091fafdf40419ee42c433fe255c24ce54297e5cd299f8ded1a8eab7729c + languageName: node + linkType: hard + +"astral-regex@npm:^1.0.0": + version: 1.0.0 + resolution: "astral-regex@npm:1.0.0" + checksum: 08e37f599604eb3894af4ec5f9845caec7a45d10c1b57b04c4fc21cc669091803f8386efc52957ec3c7ae8c3af60b933018926aab156e5696a7aab393d6e0874 + languageName: node + linkType: hard + +"astral-regex@npm:^2.0.0": + version: 2.0.0 + resolution: "astral-regex@npm:2.0.0" + checksum: bf049ee7048b70af5473580020f98faf09159af31a7fa5e223099966dc90e9e87760bd34030e19a6dcac05b45614b428f559bd71f027344d123555e524cb95ac + languageName: node + linkType: hard + +"async-each@npm:^1.0.1": + version: 1.0.3 + resolution: "async-each@npm:1.0.3" + checksum: 0cf01982ae42db5ce591aab153e45e77aa7c813c4fb282f1e7cac2259f90949f82542e82a33f73ef308e0126c9a8bc702ee117a87614549fe88840cf5a44aec4 + languageName: node + linkType: hard + +"async-limiter@npm:~1.0.0": + version: 1.0.1 + resolution: "async-limiter@npm:1.0.1" + checksum: d123312ace75c07399ddc58e06cc028dacce35f71cdf59cf9b22f6c31dde221c22285e6185ede823ecb67f3b3065e26205eb9f74fcbba3f12ce7a2c2b09d7763 + languageName: node + linkType: hard + +"async-retry@npm:^1.2.1": + version: 1.3.1 + resolution: "async-retry@npm:1.3.1" + dependencies: + retry: 0.12.0 + checksum: 20d5747abf89055b0b5d2a1d33e29d62f1a7539bc4a236035abef2b3c75fa7423e89fc2b0aeee01057bd080076095f8ab570afb337aa24fc6dd6b5860933d3f0 + languageName: node + linkType: hard + +"async@npm:^2.6.2": + version: 2.6.3 + resolution: "async@npm:2.6.3" + dependencies: + lodash: ^4.17.14 + checksum: 5c30ec6f3d64308dd96d56dae16a00a23b9e6278fe8f66492837896d958508698648c59c53457d3fdf05fd04484e16538efeca2be38337cd78df0284e764ab34 + languageName: node + linkType: hard + +"asynckit@npm:^0.4.0": + version: 0.4.0 + resolution: "asynckit@npm:0.4.0" + checksum: a024000b9ddd938e2f27b3cb8188f96a5e1fff58185e98b84862fc4e01de279a547874a800340c2b106bb9de9b0fc61c6c683bc6892abf65e6be29a96addafd3 + languageName: node + linkType: hard + +"at-least-node@npm:^1.0.0": + version: 1.0.0 + resolution: "at-least-node@npm:1.0.0" + checksum: 8f33efc16287ed39766065c718a2d36a469f702c66c6eb41fa460c0c62bca395301a6a02946e315ae4a84c9cc7f44c94ec73a556bc2a1049350da98d0b013afe + languageName: node + linkType: hard + +"atob-lite@npm:^2.0.0": + version: 2.0.0 + resolution: "atob-lite@npm:2.0.0" + checksum: bb739d5e6573c94f8490fcb4fd23437be60ec07e4212588e4586cf65907eae6bde53b4f55749b983e24906c51c28dd42948a86e7a4c63711b0da261d7652a342 + languageName: node + linkType: hard + +"atob@npm:^2.1.2": + version: 2.1.2 + resolution: "atob@npm:2.1.2" + bin: + atob: bin/atob.js + checksum: 597c0d1a740bb6522c98bea8fe362ae9420b4203af588d2bd470326d9abd4504264956b8355923d7019a21527ef5e6526a7b4455862ec5178ccd81e0ea289d5f + languageName: node + linkType: hard + +"auto-bind@npm:~4.0.0": + version: 4.0.0 + resolution: "auto-bind@npm:4.0.0" + checksum: 8054fe5776afe69fb3e5726496dd0cd6f3f1f09ff897e22ffdae96b044b95411f0975e2447b50ff7f8f0167258f8dc859e253e30c298719f918a316e439ed29f + languageName: node + linkType: hard + +"autoprefixer@npm:^9.6.1": + version: 9.8.6 + resolution: "autoprefixer@npm:9.8.6" + dependencies: + browserslist: ^4.12.0 + caniuse-lite: ^1.0.30001109 + colorette: ^1.2.1 + normalize-range: ^0.1.2 + num2fraction: ^1.2.2 + postcss: ^7.0.32 + postcss-value-parser: ^4.1.0 + bin: + autoprefixer: bin/autoprefixer + checksum: b406d8047a97fcc39c9c6d208fd6f1974e5957800461d9a79457a3ecaca2c0ea090bd06f30c8653f48f751c31115c63a80502ff8c9a6bb7b8a5a5063021827d4 + languageName: node + linkType: hard + +"aws-sign2@npm:~0.7.0": + version: 0.7.0 + resolution: "aws-sign2@npm:0.7.0" + checksum: 7162b9b8fbd4cf451bd889b0ed27fc895f88e6a6cb5c5609de49759ea1a6e31646f86ca8e18d90bea0455c4caa466fc9692c1098a1784d2372a358cb68c1eea6 + languageName: node + linkType: hard + +"aws4@npm:^1.8.0": + version: 1.10.0 + resolution: "aws4@npm:1.10.0" + checksum: f8c20a0031a2ae88bb29a89d5e5f8139eb0cc8aa964d0a8d69a476a4b0f6cf3954e3dd40bd08cea69c95ee31e2e69226d82e804628261a2375223ac67582009d + languageName: node + linkType: hard + +"axobject-query@npm:^2.0.2": + version: 2.2.0 + resolution: "axobject-query@npm:2.2.0" + checksum: c963a3ba9f30a402c32c6addf7798e6cf3471228d78b5c54bdd11f18d2b3da1bafe874bc6add142b93bf0ee0cb6a6fb3e48a992dea38ec2f5a52697498db3ac1 + languageName: node + linkType: hard + +"babel-code-frame@npm:^6.22.0": + version: 6.26.0 + resolution: "babel-code-frame@npm:6.26.0" + dependencies: + chalk: ^1.1.3 + esutils: ^2.0.2 + js-tokens: ^3.0.2 + checksum: cc2a799ccc341ad2db8aa90762b680bbca1e15893c3b28a328e974f46443110b8c56bad25554efe26f8955d19cfa2955b5f3068310ab8a818a9d7e875c90e8b4 + languageName: node + linkType: hard + +"babel-eslint@npm:10.1.0": + version: 10.1.0 + resolution: "babel-eslint@npm:10.1.0" + dependencies: + "@babel/code-frame": ^7.0.0 + "@babel/parser": ^7.7.0 + "@babel/traverse": ^7.7.0 + "@babel/types": ^7.7.0 + eslint-visitor-keys: ^1.0.0 + resolve: ^1.12.0 + peerDependencies: + eslint: ">= 4.12.1" + checksum: c872bb9476e62557918b1f4ddfe864b1477cc5b0b31aa6049af5ffa94feae133c7e9d3e9b1d09eb516a811e9cf569b9f9eb2bc7b980d47d3960857a51ffe7b41 + languageName: node + linkType: hard + +"babel-extract-comments@npm:^1.0.0": + version: 1.0.0 + resolution: "babel-extract-comments@npm:1.0.0" + dependencies: + babylon: ^6.18.0 + checksum: 2a291f1a3afb95052b98346e6fc41d36add460d557dc7f01bacaae92efd1dd98521a632d211801a7045ef563c1eebd8d6d88d1a86548e57ffb7c68b4aaab9d0a + languageName: node + linkType: hard + +"babel-jest@npm:^24.9.0": + version: 24.9.0 + resolution: "babel-jest@npm:24.9.0" + dependencies: + "@jest/transform": ^24.9.0 + "@jest/types": ^24.9.0 + "@types/babel__core": ^7.1.0 + babel-plugin-istanbul: ^5.1.0 + babel-preset-jest: ^24.9.0 + chalk: ^2.4.2 + slash: ^2.0.0 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: b8b74b2af2242958f29f40c83461f7add1d32d2f3195ec31e6a5e309c1096eab557adac6233d6095a7db505f95ddd07d5f61d0de7c66f263cb8f33c9c45d1562 + languageName: node + linkType: hard + +"babel-jest@npm:^26.2.2": + version: 26.2.2 + resolution: "babel-jest@npm:26.2.2" + dependencies: + "@jest/transform": ^26.2.2 + "@jest/types": ^26.2.0 + "@types/babel__core": ^7.1.7 + babel-plugin-istanbul: ^6.0.0 + babel-preset-jest: ^26.2.0 + chalk: ^4.0.0 + graceful-fs: ^4.2.4 + slash: ^3.0.0 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 3f6abe43220c125805e6ff51b395050a93981f159ad7ea4caf291c88e07b162ee11318a80ba661bff0aa75fe910dbc45339a0d2357abe6368576c15e3709910b + languageName: node + linkType: hard + +"babel-loader@npm:8.1.0, babel-loader@npm:^8.1.0": + version: 8.1.0 + resolution: "babel-loader@npm:8.1.0" + dependencies: + find-cache-dir: ^2.1.0 + loader-utils: ^1.4.0 + mkdirp: ^0.5.3 + pify: ^4.0.1 + schema-utils: ^2.6.5 + peerDependencies: + "@babel/core": ^7.0.0 + webpack: ">=2" + checksum: f7b236a5f7b3f2c8a49ec41ed0a2905075ed4bb6d6ba85552b50be7c56b8fdb46e92270576ef29e6598f23919f7a00a515091c2410ced25c08992a4bd799124b + languageName: node + linkType: hard + +"babel-plugin-apply-mdx-type-prop@npm:1.6.16": + version: 1.6.16 + resolution: "babel-plugin-apply-mdx-type-prop@npm:1.6.16" + dependencies: + "@babel/helper-plugin-utils": 7.10.4 + "@mdx-js/util": 1.6.16 + peerDependencies: + "@babel/core": ^7.10.5 + checksum: 9c6132235351ef37a35cf97634b594efc6565327d9a7ca8a0975e3e0391dd70139c6d6f0e1d93480fef20adba204ce1d81a468946839c3690a3543c4c7beafb8 + languageName: node + linkType: hard + +"babel-plugin-dynamic-import-node@npm:^2.3.0, babel-plugin-dynamic-import-node@npm:^2.3.3": + version: 2.3.3 + resolution: "babel-plugin-dynamic-import-node@npm:2.3.3" + dependencies: + object.assign: ^4.1.0 + checksum: 6745b8edca96f6c8bc34ab65935b5676358d2e55323e8e823b8de7aa353e3e6398a495ce434c9c36ad5fb1609467a1b1a0028946e1490bf7de8f97df3ae7f3b1 + languageName: node + linkType: hard + +"babel-plugin-extract-import-names@npm:1.6.16": + version: 1.6.16 + resolution: "babel-plugin-extract-import-names@npm:1.6.16" + dependencies: + "@babel/helper-plugin-utils": 7.10.4 + checksum: bcb324449254baef2fa8a92d823c025d06b26f59e1304b59b253586a973ed91bcb4b2367b1f323416fd02579e0b8d718e3267bc7f81016a31b500e8f3301dc6c + languageName: node + linkType: hard + +"babel-plugin-istanbul@npm:^5.1.0": + version: 5.2.0 + resolution: "babel-plugin-istanbul@npm:5.2.0" + dependencies: + "@babel/helper-plugin-utils": ^7.0.0 + find-up: ^3.0.0 + istanbul-lib-instrument: ^3.3.0 + test-exclude: ^5.2.3 + checksum: e94429f5c2fbc6b098f8ded77addabe5d229a8c4c8d449b746396c9f05e419ef41e7582aa19f8c1674c6774f9029f686653796e15de494f63ceef40d1f60e083 + languageName: node + linkType: hard + +"babel-plugin-istanbul@npm:^6.0.0": + version: 6.0.0 + resolution: "babel-plugin-istanbul@npm:6.0.0" + dependencies: + "@babel/helper-plugin-utils": ^7.0.0 + "@istanbuljs/load-nyc-config": ^1.0.0 + "@istanbuljs/schema": ^0.1.2 + istanbul-lib-instrument: ^4.0.0 + test-exclude: ^6.0.0 + checksum: 0a185405d8209153054900049a69886af9dd107eb49341530e378b0babd31902f96a3eaa44dfc8a9c8ca5bcf43794a630cb70f8148d75e26c79cdfdc2255af7f + languageName: node + linkType: hard + +"babel-plugin-jest-hoist@npm:^24.9.0": + version: 24.9.0 + resolution: "babel-plugin-jest-hoist@npm:24.9.0" + dependencies: + "@types/babel__traverse": ^7.0.6 + checksum: 84c1d616d2d1674f8ac45c630328b639f31812436421b445ca9243874d81691f6bc1bb959955df67c1add23904758afc2ae5bcf1838f639cad6ca33903e858c0 + languageName: node + linkType: hard + +"babel-plugin-jest-hoist@npm:^26.2.0": + version: 26.2.0 + resolution: "babel-plugin-jest-hoist@npm:26.2.0" + dependencies: + "@babel/template": ^7.3.3 + "@babel/types": ^7.3.3 + "@types/babel__core": ^7.0.0 + "@types/babel__traverse": ^7.0.6 + checksum: 02f3e1b9c41367c8985fb5c0020fc8a5a5f1e5e43ae4df418c6d77582caee78cac5c16232b8ba8b04d6c842f28ff84817ddd64793dd9c9f1a2a1ce67a9224e07 + languageName: node + linkType: hard + +"babel-plugin-macros@npm:2.8.0": + version: 2.8.0 + resolution: "babel-plugin-macros@npm:2.8.0" + dependencies: + "@babel/runtime": ^7.7.2 + cosmiconfig: ^6.0.0 + resolve: ^1.12.0 + checksum: fc4e1224df180d88f44f6f31e448cf51a75c8aa7e0fd828e30c4143f69af6d49ce933f36952478a4e372485db35b6219628bcff16d7f5add724230addbc19e7d + languageName: node + linkType: hard + +"babel-plugin-named-asset-import@npm:^0.3.6": + version: 0.3.6 + resolution: "babel-plugin-named-asset-import@npm:0.3.6" + peerDependencies: + "@babel/core": ^7.1.0 + checksum: 5bd4847018a2c9eb94c6ee96d91a5b6635715312920b062d852094a54bb1bcc464dccc335bd3138a5cc2599bc1d1cb8c0660d147158505ab47ffd4c2247281f7 + languageName: node + linkType: hard + +"babel-plugin-syntax-object-rest-spread@npm:^6.8.0": + version: 6.13.0 + resolution: "babel-plugin-syntax-object-rest-spread@npm:6.13.0" + checksum: 459844d1a89dfe580876daa6c8be3f120931db2705cfc32ffacaa93442ca8036e38ad3f687fc889e9cd6e96f51d83cb4b520c063d8f12223baf6f8a34a07e4cc + languageName: node + linkType: hard + +"babel-plugin-syntax-trailing-function-commas@npm:^7.0.0-beta.0": + version: 7.0.0-beta.0 + resolution: "babel-plugin-syntax-trailing-function-commas@npm:7.0.0-beta.0" + checksum: c66215ecdc16da891c7e1bf4b2c39541e7e817c27719d8a83e3f64249aa2607cfe8d47580544e3963dbba36cc5f0693ae8cc42e5f2b1e7fc22b6c0cfc85f5e2b + languageName: node + linkType: hard + +"babel-plugin-transform-object-rest-spread@npm:^6.26.0": + version: 6.26.0 + resolution: "babel-plugin-transform-object-rest-spread@npm:6.26.0" + dependencies: + babel-plugin-syntax-object-rest-spread: ^6.8.0 + babel-runtime: ^6.26.0 + checksum: 1d8ff820576afd78850081dc71e36f77be08484b502a8fe87b959bad4463581bd0731c605b09307cd3ffabeb372c70524c0f8a303dc99c4d15085f84c06f26e3 + languageName: node + linkType: hard + +"babel-plugin-transform-react-remove-prop-types@npm:0.4.24": + version: 0.4.24 + resolution: "babel-plugin-transform-react-remove-prop-types@npm:0.4.24" + checksum: 4004ce6c87bd49223f996a4d0b98312083e7bd40d7cfb04711936001b31fd01502b7eea0b94c9116fb384668cdbe114e1866d79c25b72ad0d6cd2f32819c1094 + languageName: node + linkType: hard + +"babel-polyfill@npm:6.23.0": + version: 6.23.0 + resolution: "babel-polyfill@npm:6.23.0" + dependencies: + babel-runtime: ^6.22.0 + core-js: ^2.4.0 + regenerator-runtime: ^0.10.0 + checksum: 1967148168d35d7a811c9dc37e8406c78b625ce55d16fca4d1984c727e496ab0adfcf6b958d589daa7f4c7554abfaaf1557165469fe3441e98410318e5e41130 + languageName: node + linkType: hard + +"babel-preset-current-node-syntax@npm:^0.1.2": + version: 0.1.3 + resolution: "babel-preset-current-node-syntax@npm:0.1.3" + dependencies: + "@babel/plugin-syntax-async-generators": ^7.8.4 + "@babel/plugin-syntax-bigint": ^7.8.3 + "@babel/plugin-syntax-class-properties": ^7.8.3 + "@babel/plugin-syntax-import-meta": ^7.8.3 + "@babel/plugin-syntax-json-strings": ^7.8.3 + "@babel/plugin-syntax-logical-assignment-operators": ^7.8.3 + "@babel/plugin-syntax-nullish-coalescing-operator": ^7.8.3 + "@babel/plugin-syntax-numeric-separator": ^7.8.3 + "@babel/plugin-syntax-object-rest-spread": ^7.8.3 + "@babel/plugin-syntax-optional-catch-binding": ^7.8.3 + "@babel/plugin-syntax-optional-chaining": ^7.8.3 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 35ed34f14d3ebcf9b31275040434ac34224fe019f113290e00e5ff580322a9b8b3cc597267cda2eff02dce943745d8735f7664e17159ab569c51c2804258c340 + languageName: node + linkType: hard + +"babel-preset-fbjs@npm:^3.3.0": + version: 3.3.0 + resolution: "babel-preset-fbjs@npm:3.3.0" + dependencies: + "@babel/plugin-proposal-class-properties": ^7.0.0 + "@babel/plugin-proposal-object-rest-spread": ^7.0.0 + "@babel/plugin-syntax-class-properties": ^7.0.0 + "@babel/plugin-syntax-flow": ^7.0.0 + "@babel/plugin-syntax-jsx": ^7.0.0 + "@babel/plugin-syntax-object-rest-spread": ^7.0.0 + "@babel/plugin-transform-arrow-functions": ^7.0.0 + "@babel/plugin-transform-block-scoped-functions": ^7.0.0 + "@babel/plugin-transform-block-scoping": ^7.0.0 + "@babel/plugin-transform-classes": ^7.0.0 + "@babel/plugin-transform-computed-properties": ^7.0.0 + "@babel/plugin-transform-destructuring": ^7.0.0 + "@babel/plugin-transform-flow-strip-types": ^7.0.0 + "@babel/plugin-transform-for-of": ^7.0.0 + "@babel/plugin-transform-function-name": ^7.0.0 + "@babel/plugin-transform-literals": ^7.0.0 + "@babel/plugin-transform-member-expression-literals": ^7.0.0 + "@babel/plugin-transform-modules-commonjs": ^7.0.0 + "@babel/plugin-transform-object-super": ^7.0.0 + "@babel/plugin-transform-parameters": ^7.0.0 + "@babel/plugin-transform-property-literals": ^7.0.0 + "@babel/plugin-transform-react-display-name": ^7.0.0 + "@babel/plugin-transform-react-jsx": ^7.0.0 + "@babel/plugin-transform-shorthand-properties": ^7.0.0 + "@babel/plugin-transform-spread": ^7.0.0 + "@babel/plugin-transform-template-literals": ^7.0.0 + babel-plugin-syntax-trailing-function-commas: ^7.0.0-beta.0 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: b6cd74200eeefcdd7aab4761c28a4312617b7ebc4eb49f3ac7f800124519a2c68b0223b3c80c63d4d6aadc0b897ce6f043909d4fe0597ef905c5acb70193083f + languageName: node + linkType: hard + +"babel-preset-jest@npm:^24.9.0": + version: 24.9.0 + resolution: "babel-preset-jest@npm:24.9.0" + dependencies: + "@babel/plugin-syntax-object-rest-spread": ^7.0.0 + babel-plugin-jest-hoist: ^24.9.0 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 6b85c399b8438685c7d9f4bd67c659bba24d929e2ffe18ffdaa88d8ad3f2ccad06cfdc28dbdd5e9d95ec49ec506e31452bf78f04663f55282e36abf445263845 + languageName: node + linkType: hard + +"babel-preset-jest@npm:^26.2.0": + version: 26.2.0 + resolution: "babel-preset-jest@npm:26.2.0" + dependencies: + babel-plugin-jest-hoist: ^26.2.0 + babel-preset-current-node-syntax: ^0.1.2 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: c0a4347c78a902406544934df60d4cfb868cc3db16543cc2cf392bdbec52809ed96b1040b21aa35dfde1d33947540f7107070f90588bce939536d6264c464c7d + languageName: node + linkType: hard + +"babel-preset-react-app@npm:^9.1.2": + version: 9.1.2 + resolution: "babel-preset-react-app@npm:9.1.2" + dependencies: + "@babel/core": 7.9.0 + "@babel/plugin-proposal-class-properties": 7.8.3 + "@babel/plugin-proposal-decorators": 7.8.3 + "@babel/plugin-proposal-nullish-coalescing-operator": 7.8.3 + "@babel/plugin-proposal-numeric-separator": 7.8.3 + "@babel/plugin-proposal-optional-chaining": 7.9.0 + "@babel/plugin-transform-flow-strip-types": 7.9.0 + "@babel/plugin-transform-react-display-name": 7.8.3 + "@babel/plugin-transform-runtime": 7.9.0 + "@babel/preset-env": 7.9.0 + "@babel/preset-react": 7.9.1 + "@babel/preset-typescript": 7.9.0 + "@babel/runtime": 7.9.0 + babel-plugin-macros: 2.8.0 + babel-plugin-transform-react-remove-prop-types: 0.4.24 + checksum: a74d8848b88a2470577f1e33ffb7445601fc19edee3084a12c8e11102bfcf458d6092ebbd326e59c5700710a75f2c652bcf6b9681aa607db036d0f9eeeec9bf9 + languageName: node + linkType: hard + +"babel-runtime@npm:^6.22.0, babel-runtime@npm:^6.26.0": + version: 6.26.0 + resolution: "babel-runtime@npm:6.26.0" + dependencies: + core-js: ^2.4.0 + regenerator-runtime: ^0.11.0 + checksum: 5010bf1d81e484d9c6a5b4e4c32564a0dc180c2dc5a65f999729c3cb63b9c6e805d3d10c19a4ccc2112bce084e39e51e52daf5c21df0141ce8e6e37727af2e0b + languageName: node + linkType: hard + +"babylon@npm:^6.18.0": + version: 6.18.0 + resolution: "babylon@npm:6.18.0" + bin: + babylon: ./bin/babylon.js + checksum: af38302e3fd8b01004ab03e7f42e00d3d6b3e85190102a1ad7ffbed87bc025d96413a7c165b2b5f0b78e576b71e5306a67c1ae0368f6d12bef40fd00b0dbc7b5 + languageName: node + linkType: hard + +"backo2@npm:^1.0.2": + version: 1.0.2 + resolution: "backo2@npm:1.0.2" + checksum: 72f19a0fd2b573f5504adf1f2e74e7658eec000e7732ebd5f622b6b1d520187277a5e8310787906455d02fcf915f35c5c48e54c997bed1a60b95355db8f2ccab + languageName: node + linkType: hard + +"bail@npm:^1.0.0": + version: 1.0.5 + resolution: "bail@npm:1.0.5" + checksum: 25cd4263ee635466f4578d836cdd57038ba4472d9789cbfd338a5e7df5f4f5ba9d2db9eae95c4ac38d69f1aa5b621f6f4c1512f1ed5689742c6ce8c062da06e1 + languageName: node + linkType: hard + +"balanced-match@npm:^1.0.0": + version: 1.0.0 + resolution: "balanced-match@npm:1.0.0" + checksum: f515a605fe1b59f476f7477c5e1d53ad55b4f42982fca1d57b6701906f4ad1f1ac90fd6587d92cc1af2edb43eecf979214dd847ee410a6de9db4ebf0dd128d62 + languageName: node + linkType: hard + +"base32.js@npm:0.0.1": + version: 0.0.1 + resolution: "base32.js@npm:0.0.1" + checksum: 52db640770dd9ce8b3aa99cb63577dd81d23ee8c71da915721d6683e164606db707304a4b83c31392ee64548803972a54d25393a7be3076fb687387b6eb4d360 + languageName: node + linkType: hard + +"base64-js@npm:^1.0.2": + version: 1.3.1 + resolution: "base64-js@npm:1.3.1" + checksum: 8a0cc69d7c7c0ab75c164d3e2eccc3dd65fbaba17bcf440aab54636afd31255287ac3cd16a111e98d741c4a6e0b5631774b0c32818355089e645df3ae96a49bb + languageName: node + linkType: hard + +"base@npm:^0.11.1": + version: 0.11.2 + resolution: "base@npm:0.11.2" + dependencies: + cache-base: ^1.0.1 + class-utils: ^0.3.5 + component-emitter: ^1.2.1 + define-property: ^1.0.0 + isobject: ^3.0.1 + mixin-deep: ^1.2.0 + pascalcase: ^0.1.1 + checksum: 84e30392fd028df388b209cfb800e1ab4156b3cc499bd46f96ce6271fd17f10302ba6b87d4a56c6946cc77b6571502d45d73c7948a63a84f9ffd421f81232dd5 + languageName: node + linkType: hard + +"batch@npm:0.6.1": + version: 0.6.1 + resolution: "batch@npm:0.6.1" + checksum: 4ec2d961e6af6e944e164eb1b8c5885bc4c85846d110ce2d55156ab2903dd1593f3c4a7b71c2cff81464a2973e1b91cc1bf86239a9ba44435a319eeae3346a91 + languageName: node + linkType: hard + +"bcrypt-pbkdf@npm:^1.0.0": + version: 1.0.2 + resolution: "bcrypt-pbkdf@npm:1.0.2" + dependencies: + tweetnacl: ^0.14.3 + checksum: 3f57eb99bbc02352f68ff31e446997f4d21cc9a5e5286449dc1fe0116ec5dac5a4aa538967d45714fa9320312d2be8d16126f2d357da1dd40a3d546b96e097ed + languageName: node + linkType: hard + +"bcryptjs@npm:^2.4.3": + version: 2.4.3 + resolution: "bcryptjs@npm:2.4.3" + checksum: 5a320711757b5932da200856a5193cad0123df7c43b46417172eabf2aa436a8f08f64851722052fea6335453f96290005b6694a7dd26d8951810362de343175c + languageName: node + linkType: hard + +"before-after-hook@npm:^2.0.0": + version: 2.1.0 + resolution: "before-after-hook@npm:2.1.0" + checksum: 4df7ef0992ef7c5d8689a50bba12349789ab6da12203cd92c78dd5eb22e725694fd3602cff15ab85285a744c5d6106f3fbdc203f0cb6262cd3bebe42a763c3fd + languageName: node + linkType: hard + +"bfj@npm:^6.1.1": + version: 6.1.2 + resolution: "bfj@npm:6.1.2" + dependencies: + bluebird: ^3.5.5 + check-types: ^8.0.3 + hoopy: ^0.1.4 + tryer: ^1.0.1 + checksum: ba7bc1649cfaff7f5382bf729df3ccebcfedc3dfd62d10c791d5645ebc788688d0700f48a97041259403e57c3b20621c1759601bcaabe380e2b4fdbf5072f583 + languageName: node + linkType: hard + +"big.js@npm:^5.2.2": + version: 5.2.2 + resolution: "big.js@npm:5.2.2" + checksum: ea33d7d25674df4253ae3667da7f48ade6cc8828cb4f2c3a7753f53975f10cebae57e0d1ecf84f1b920b5467262dc0d4f357e5e497b138472d0e64992a8402a4 + languageName: node + linkType: hard + +"binary-extensions@npm:^1.0.0": + version: 1.13.1 + resolution: "binary-extensions@npm:1.13.1" + checksum: 7cdacc6dadaffb6a4d250c39ca51e1fd7ba0fd846348e2813465dfaa7fce1e59a3465c1555578e7e4e7959023b47824cc387b37780e2160f52fface775cc0133 + languageName: node + linkType: hard + +"binary-extensions@npm:^2.0.0": + version: 2.1.0 + resolution: "binary-extensions@npm:2.1.0" + checksum: 12bee2817930b211b88f6de5da2edb64f924ffde79e01516fcb17005a39e75374fae1ce1a9c58b52557a4d81eb6eb7a804cbe7170ea3a553919a7ce0053e2e4f + languageName: node + linkType: hard + +"bindings@npm:^1.5.0": + version: 1.5.0 + resolution: "bindings@npm:1.5.0" + dependencies: + file-uri-to-path: 1.0.0 + checksum: bd623dec58f126eb0c30f04a20da7080f06cdd5af26bf5a91615e70055fbba66c4cec5c88b156e8181c1d822f2392034a40a9121ef3ebc25638dc2163332b12d + languageName: node + linkType: hard + +"bl@npm:^2.2.0": + version: 2.2.0 + resolution: "bl@npm:2.2.0" + dependencies: + readable-stream: ^2.3.5 + safe-buffer: ^5.1.1 + checksum: a944248044a8a488f225124addb944d1618df846fdc8ba38be85dd95207f58322637800cd213d3886074d85d38ef0dc9ba9cc09ae85859effa7077f408ba6595 + languageName: node + linkType: hard + +"bluebird@npm:3.5.1": + version: 3.5.1 + resolution: "bluebird@npm:3.5.1" + checksum: 11347ec6d59fdb2aca5f2507bbc5f7127bf5a7bb978da30f83469ad43a3fa6b533b24544a9b31e21fd730b77b93b0526e65c73d8fdb11b3b633f4269d75e420a + languageName: node + linkType: hard + +"bluebird@npm:^3.5.0, bluebird@npm:^3.5.1, bluebird@npm:^3.5.3, bluebird@npm:^3.5.5, bluebird@npm:^3.7.1, bluebird@npm:^3.7.2": + version: 3.7.2 + resolution: "bluebird@npm:3.7.2" + checksum: 4f2288662f3d4eadbb82d4daa4a7d7976a28fa3c7eb4102c9b4033b03e5be4574ba123ac52a7c103cde4cb7b2d2afc1dbe41817ca15a29ff21ecd258d0286047 + languageName: node + linkType: hard + +"bn.js@npm:^4.0.0, bn.js@npm:^4.1.0, bn.js@npm:^4.4.0": + version: 4.11.9 + resolution: "bn.js@npm:4.11.9" + checksum: 31630d3560b28931010980886a0f657b37ce818ba237867cd838e89a1a0b71044fb4977aa56376616997b372bbb3f55d3bb25e5378c48c1d24a47bfb4235b60e + languageName: node + linkType: hard + +"bn.js@npm:^5.1.1": + version: 5.1.2 + resolution: "bn.js@npm:5.1.2" + checksum: ed0f337a224d874c8c58c604f8454184cd7069a6619c65a556e1b3a9544f7d22013add4460381288a9676e188e9f0e6e672a4ab8676d4834119d20f8ad782892 + languageName: node + linkType: hard + +"body-parser@npm:1.19.0, body-parser@npm:^1.18.3": + version: 1.19.0 + resolution: "body-parser@npm:1.19.0" + 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 + checksum: 18c2a81df5eabc7e3541bc9ace394b88e6fbd390989b5e764ff34c3f9dbd097e19986c31baa9b855ec5c2cff2b79157449afb0cdfb97bb99c11d6239b2c47a34 + languageName: node + linkType: hard + +"bonjour@npm:^3.5.0": + version: 3.5.0 + resolution: "bonjour@npm:3.5.0" + 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 + checksum: b6c49714a3e0015411878296d9db80894493c973f5bb4516811d75747b21429b1f807e9176d3f188165127feecdda8073abae47892426b25a4a1513f70daaeb8 + languageName: node + linkType: hard + +"boolbase@npm:^1.0.0, boolbase@npm:~1.0.0": + version: 1.0.0 + resolution: "boolbase@npm:1.0.0" + checksum: e827963c416fdb1dbcd57e066a43c40829518f4dcdc9f58ed04519daeebb610adacbb6cf102518bda9f08be593c5b1b49a83e36bf6b7d91b3403f7e35510eeae + languageName: node + linkType: hard + +"boxen@npm:^4.2.0": + version: 4.2.0 + resolution: "boxen@npm:4.2.0" + dependencies: + ansi-align: ^3.0.0 + camelcase: ^5.3.1 + chalk: ^3.0.0 + cli-boxes: ^2.2.0 + string-width: ^4.1.0 + term-size: ^2.1.0 + type-fest: ^0.8.1 + widest-line: ^3.1.0 + checksum: 667b291d227a86134aaacd6f2f997828607a8e2ead0da7b2568372728382765634df46e211f73d3b11a43784db7ec53da627a57213adbd42ce10ad39609ee4e3 + languageName: node + linkType: hard + +"brace-expansion@npm:^1.1.7": + version: 1.1.11 + resolution: "brace-expansion@npm:1.1.11" + dependencies: + balanced-match: ^1.0.0 + concat-map: 0.0.1 + checksum: 4c878e25e4858baf801945dfd63eb68feab2e502cf1122f25f3915c0e3bf397af3a93ff6bef0798db41c0d81ef28c08e55daac38058710f749a3b96eee6b8f40 + languageName: node + linkType: hard + +"braces@npm:^2.3.1, braces@npm:^2.3.2": + version: 2.3.2 + resolution: "braces@npm:2.3.2" + dependencies: + arr-flatten: ^1.1.0 + array-unique: ^0.3.2 + extend-shallow: ^2.0.1 + fill-range: ^4.0.0 + isobject: ^3.0.1 + repeat-element: ^1.1.2 + snapdragon: ^0.8.1 + snapdragon-node: ^2.0.1 + split-string: ^3.0.2 + to-regex: ^3.0.1 + checksum: 5f2d5ae262a39e516c7266f1316bc1caade4dcc26c5f8454f1d35064abbccd51cfea1c2cfa5a7402026991448a2b0ed0be1adce76ff1db2dfca7d3263f58d24d + languageName: node + linkType: hard + +"braces@npm:^3.0.1, braces@npm:~3.0.2": + version: 3.0.2 + resolution: "braces@npm:3.0.2" + dependencies: + fill-range: ^7.0.1 + checksum: f3493181c3e91a1333d3c9afc9b3263a3f62f4ced0b033c372efc1373b48a7699557f4e04026b232a8556e043ca5360a9d3008c33852350138d4b0ea57558b8d + languageName: node + linkType: hard + +"brorand@npm:^1.0.1": + version: 1.1.0 + resolution: "brorand@npm:1.1.0" + checksum: 4536dd73f07f6884d89c09c906345b606abff477e87babef64a85656e8cf12b1c5f40d06313b91dac12bf3e031ac190b5d548f2c3bf75f655344c3fcf90cbc8a + languageName: node + linkType: hard + +"browser-process-hrtime@npm:^1.0.0": + version: 1.0.0 + resolution: "browser-process-hrtime@npm:1.0.0" + checksum: 565847e5b0dc8c3762e545abb806ba886ed55de9b2c1479e382cf27e54f0af38ae3a1f81f3a98760403404419f65cbb20aff88d91cbee2b25e284bdebcc60a85 + languageName: node + linkType: hard + +"browser-resolve@npm:^1.11.3": + version: 1.11.3 + resolution: "browser-resolve@npm:1.11.3" + dependencies: + resolve: 1.1.7 + checksum: 4f76701a975e6ee2b01a75b8f0ee600fb176fb543cb5acd2e35cb0eb2a51d32c9a8342394fb9b1b0a627a16f415b0d2a14af0cd5663b8e77dbcc6ae72694cb35 + languageName: node + linkType: hard + +"browserify-aes@npm:^1.0.0, browserify-aes@npm:^1.0.4": + version: 1.2.0 + resolution: "browserify-aes@npm:1.2.0" + dependencies: + buffer-xor: ^1.0.3 + cipher-base: ^1.0.0 + create-hash: ^1.1.0 + evp_bytestokey: ^1.0.3 + inherits: ^2.0.1 + safe-buffer: ^5.0.1 + checksum: 487abe9fcf1d26add1f8f5b8e72ceb4493fb0ccbec170a18d2dd20b90fb2b4007d6c2db0bf993cdaf53567ebf8065ffcb01a08946087305adc82e4ccf2f9c1e8 + languageName: node + linkType: hard + +"browserify-cipher@npm:^1.0.0": + version: 1.0.1 + resolution: "browserify-cipher@npm:1.0.1" + dependencies: + browserify-aes: ^1.0.4 + browserify-des: ^1.0.0 + evp_bytestokey: ^1.0.0 + checksum: 4c5ee6d232c160ce0cb7e583a45a36ec1ad3323cbce278d77d243c51fe3f76db7df4406c53361a4f589cc70a54dc95da38519a6d0af5323cf60075f7eef9829d + languageName: node + linkType: hard + +"browserify-des@npm:^1.0.0": + version: 1.0.2 + resolution: "browserify-des@npm:1.0.2" + dependencies: + cipher-base: ^1.0.1 + des.js: ^1.0.0 + inherits: ^2.0.1 + safe-buffer: ^5.1.2 + checksum: d9e6ea8db0d79bdf649d2dc8436f85b02f055b3ccd54add73a671e9649cec24265d0ece5f44a0678ec7d2a5fab511ea5f70badd5f6141be24157866a31889ba5 + languageName: node + linkType: hard + +"browserify-rsa@npm:^4.0.0, browserify-rsa@npm:^4.0.1": + version: 4.0.1 + resolution: "browserify-rsa@npm:4.0.1" + dependencies: + bn.js: ^4.1.0 + randombytes: ^2.0.1 + checksum: 65ad8e818f70649b29ad48a6b06c5900a928126925ecbc2f9896bc6ee236dd1feeb745e3f276296724b2f134f438231ace72f529ac8605d78bff605998cf1e72 + languageName: node + linkType: hard + +"browserify-sign@npm:^4.0.0": + version: 4.2.1 + resolution: "browserify-sign@npm:4.2.1" + dependencies: + bn.js: ^5.1.1 + browserify-rsa: ^4.0.1 + create-hash: ^1.2.0 + create-hmac: ^1.1.7 + elliptic: ^6.5.3 + inherits: ^2.0.4 + parse-asn1: ^5.1.5 + readable-stream: ^3.6.0 + safe-buffer: ^5.2.0 + checksum: 931127b9c50c1223eef5e99c431db609fa55eef7ee3af878e891ee01649f5e62ed81c3e88b6cc51c33f972ef7f5a4342ede74334c57c5c6edb90b24c968aa06c + languageName: node + linkType: hard + +"browserify-zlib@npm:^0.2.0": + version: 0.2.0 + resolution: "browserify-zlib@npm:0.2.0" + dependencies: + pako: ~1.0.5 + checksum: 877c864e68a3f1dc9355eea71ee84c894c40f906f737bdf1e5d98d3641182099208e757356b5906160f0b2b22fa4976c4534ac1782bbdd39823b605ae2210f9a + languageName: node + linkType: hard + +"browserslist@npm:4.10.0": + version: 4.10.0 + resolution: "browserslist@npm:4.10.0" + dependencies: + caniuse-lite: ^1.0.30001035 + electron-to-chromium: ^1.3.378 + node-releases: ^1.1.52 + pkg-up: ^3.1.0 + bin: + browserslist: cli.js + checksum: 2fae62d6fb1d1eb5b27638c90ccc0e8a6996e6013fc7dd9e28d8ad4d72863642065ea8a9dfc9000255d8306d9543239b6d781b3d775c0e984c17d61a9bcb34ca + languageName: node + linkType: hard + +"browserslist@npm:^4.0.0, browserslist@npm:^4.12.0, browserslist@npm:^4.6.2, browserslist@npm:^4.6.4, browserslist@npm:^4.8.5, browserslist@npm:^4.9.1": + version: 4.14.0 + resolution: "browserslist@npm:4.14.0" + dependencies: + caniuse-lite: ^1.0.30001111 + electron-to-chromium: ^1.3.523 + escalade: ^3.0.2 + node-releases: ^1.1.60 + bin: + browserslist: cli.js + checksum: 1ca4d424ae15266468d1635d41f4113b1f863a9892958a86be8642e93504ad4ebc488c1ab935b7e86753d0f2243e5d24c15a637c4bc5aaa40dfd6da8d0eaa73b + languageName: node + linkType: hard + +"bs-logger@npm:0.x": + version: 0.2.6 + resolution: "bs-logger@npm:0.2.6" + dependencies: + fast-json-stable-stringify: 2.x + checksum: f5f2f1315d6ceac655c3945d149086a5f5a90b3c908780757e12e938aad0125a7aa563cae2f7153ccf43443adb1b88a44960a61063903c3973e1dfdda6fc2d8c + languageName: node + linkType: hard + +"bser@npm:2.1.1": + version: 2.1.1 + resolution: "bser@npm:2.1.1" + dependencies: + node-int64: ^0.4.0 + checksum: 302af195672988c21be9590b0b4fcacf9bd5bc116a32cbb5f613b21800fce8ee6aa1c57e76bbfa15a60269fe48885d062383e353fbaa821dbf06e92f72cc8b7d + languageName: node + linkType: hard + +"bson@npm:^1.1.4": + version: 1.1.4 + resolution: "bson@npm:1.1.4" + checksum: ec5d5fb1f57273c9203dfb31b0df30a58abb4e701851373233ae6693bcaac240631c42b05615fc91601458a76c56d9999a8fbfc8ec68163ac0273138db43cf70 + languageName: node + linkType: hard + +"btoa-lite@npm:^1.0.0": + version: 1.0.0 + resolution: "btoa-lite@npm:1.0.0" + checksum: d41fc7dc9f111a0082e1d67554ecdd3add151920bf5f3fbb9bdffd5c67b2e247a8c2a060607e8a2acd518eeb1b75d8a0828c36717f710ceebe0e88eb487a7394 + languageName: node + linkType: hard + +"buffer-equal-constant-time@npm:1.0.1": + version: 1.0.1 + resolution: "buffer-equal-constant-time@npm:1.0.1" + checksum: a38a6fead170594b97894658d0e62e3686ccaecea480051c0bf69ba29274eca87203452590c3b6a1b589a7da1baef89420da00a8f08c010675c1dbc25f58edf9 + languageName: node + linkType: hard + +"buffer-from@npm:1.x, buffer-from@npm:^1.0.0": + version: 1.1.1 + resolution: "buffer-from@npm:1.1.1" + checksum: 540ceb79c4f5bfcadaabbc18324fa84c50dc52905084be7c03596a339cf5a88513bee6831ce9b36ddd046fab09257a7c80686e129d0559a0cfd141da196ad956 + languageName: node + linkType: hard + +"buffer-indexof@npm:^1.0.0": + version: 1.1.1 + resolution: "buffer-indexof@npm:1.1.1" + checksum: f7114185678d4ebd66b68a8d76feda5a66ea5df57101e7af1c3faef6ff98ca6ac15891da200d7eea99153573e110d05bc9fdf493278e3bd2b0f117e84ff08f64 + languageName: node + linkType: hard + +"buffer-json@npm:^2.0.0": + version: 2.0.0 + resolution: "buffer-json@npm:2.0.0" + checksum: 14ae192479f36ad645ee638e37925516cf4019e4a68fb7061bd6105ce6b08e5d79926edabb1c9bfff490ca9348db1d625797bbd6c709c74679ef8fd81c87fcc6 + languageName: node + linkType: hard + +"buffer-writer@npm:2.0.0": + version: 2.0.0 + resolution: "buffer-writer@npm:2.0.0" + checksum: aeeac620f1010c1169e735661606872f058f2fba3a2efc0291a7f551a6e5900fd7b983f38e206fc7b991e3d1e3735f7da984c19c9af72c306582e2979819329d + languageName: node + linkType: hard + +"buffer-xor@npm:^1.0.3": + version: 1.0.3 + resolution: "buffer-xor@npm:1.0.3" + checksum: 58ce260802968a06448f58ba20f83146ef21c7fb55839602ad951aa3b839035f181341375f2692aca46c86c15f6fcf668985ceef2063a2d33eafb5c6a0a4f627 + languageName: node + linkType: hard + +"buffer@npm:^4.3.0": + version: 4.9.2 + resolution: "buffer@npm:4.9.2" + dependencies: + base64-js: ^1.0.2 + ieee754: ^1.1.4 + isarray: ^1.0.0 + checksum: e29ecda22aa854008e26a8df294be1e5339a3bec8cbf537a794fecf63a024da68165743bc9afb1524909c74d8b03392e93a9c8fa5c2b064b1b2a52d4680c204e + languageName: node + linkType: hard + +"buffer@npm:^5.1.0": + version: 5.6.0 + resolution: "buffer@npm:5.6.0" + dependencies: + base64-js: ^1.0.2 + ieee754: ^1.1.4 + checksum: e18fdf099c25cae354d673c7deee0391978bde5a47b785cf81e118c75853f0f36838b0a5ea5ee7adf8c02eedb9664292608efdcac9945f4f4f514d14054656f7 + languageName: node + linkType: hard + +"builtin-status-codes@npm:^3.0.0": + version: 3.0.0 + resolution: "builtin-status-codes@npm:3.0.0" + checksum: 8e2872a69ae05c6a24adc3b6dd4c340f077ea842fc8115ab5b4896f3ab68cf38f56438d430273efd152def59313fd8ca3a35bdad4c3e88b8bb88ba4a371b3866 + languageName: node + linkType: hard + +"builtins@npm:^1.0.3": + version: 1.0.3 + resolution: "builtins@npm:1.0.3" + checksum: 36aa0f11effcc9ab1637e69240752c70aab8ed1f9ed88baae94dd989fa3e34fc332a41f851062c24a888572f31343130e5cd7055344b9743c9d6bcbdc449eaf1 + languageName: node + linkType: hard + +"busboy@npm:^0.3.1": + version: 0.3.1 + resolution: "busboy@npm:0.3.1" + dependencies: + dicer: 0.3.0 + checksum: acc5c3d2f806c1f43a7a9a342bb4aaaa1223bac81cf3ba35ae3cc999f4e3a2e1b6db2d3895a228a862efbbc7b6fb39a7252e830bb5943e1b4362caa221c868ea + languageName: node + linkType: hard + +"byline@npm:^5.0.0": + version: 5.0.0 + resolution: "byline@npm:5.0.0" + checksum: 84aec9f9db13b7cff15ded0fc0e3d0e147861c6e25a8827f3440326b8f516d6e6aa6c475bdbbad771a612b0d355b93b39fbfe4f8ed57c6eb3252a018d1306e3d + languageName: node + linkType: hard + +"byte-size@npm:^5.0.1": + version: 5.0.1 + resolution: "byte-size@npm:5.0.1" + checksum: 915e1367eb6918fc7d0763da47abeab5399b925cbbe534a3ea98ff0e96edfca1941ee0e83617a155e89779a4fa505e323c2c29b54f10778f326272f1a4877395 + languageName: node + linkType: hard + +"bytes@npm:3.0.0": + version: 3.0.0 + resolution: "bytes@npm:3.0.0" + checksum: 98d6c0ab36f7a5527226fd928e65495ffd3d53cb22da627eba3300eed36bd283ae3dfdf3a0aa017df13a09115b5b8847e3d51f66c2f0304a262264c86a317c05 + languageName: node + linkType: hard + +"bytes@npm:3.1.0": + version: 3.1.0 + resolution: "bytes@npm:3.1.0" + checksum: c3f64645ef37922c8194fef88a052de2a28101882dfdf8a225493888c4941a26ea15164957e7492e5c5e3a8e98ee6276f4834efacb68e2d8ad4d91f903250b6c + languageName: node + linkType: hard + +"cacache@npm:^12.0.0, cacache@npm:^12.0.2, cacache@npm:^12.0.3": + version: 12.0.4 + resolution: "cacache@npm:12.0.4" + dependencies: + bluebird: ^3.5.5 + chownr: ^1.1.1 + figgy-pudding: ^3.5.1 + glob: ^7.1.4 + graceful-fs: ^4.1.15 + infer-owner: ^1.0.3 + lru-cache: ^5.1.1 + mississippi: ^3.0.0 + mkdirp: ^0.5.1 + move-concurrently: ^1.0.1 + promise-inflight: ^1.0.1 + rimraf: ^2.6.3 + ssri: ^6.0.1 + unique-filename: ^1.1.1 + y18n: ^4.0.0 + checksum: fd70ecfddb7fab7d9fb8544e10a738341e50709d897d97439c41d8b85b0df8bc50a2dcd8faab1af78499003b8944390a870451b3dd73860450d579c85128aede + languageName: node + linkType: hard + +"cacache@npm:^13.0.1": + version: 13.0.1 + resolution: "cacache@npm:13.0.1" + dependencies: + chownr: ^1.1.2 + figgy-pudding: ^3.5.1 + fs-minipass: ^2.0.0 + glob: ^7.1.4 + graceful-fs: ^4.2.2 + infer-owner: ^1.0.4 + lru-cache: ^5.1.1 + minipass: ^3.0.0 + minipass-collect: ^1.0.2 + minipass-flush: ^1.0.5 + minipass-pipeline: ^1.2.2 + mkdirp: ^0.5.1 + move-concurrently: ^1.0.1 + p-map: ^3.0.0 + promise-inflight: ^1.0.1 + rimraf: ^2.7.1 + ssri: ^7.0.0 + unique-filename: ^1.1.1 + checksum: f1aa76a2f801c7615934a94be9ad729f6747e19fe804868a52f52b042b3a03fe4f9504b0e84949ef8c812f241653fc859848b6d1bf97122d973398e8239a85a4 + languageName: node + linkType: hard + +"cache-base@npm:^1.0.1": + version: 1.0.1 + resolution: "cache-base@npm:1.0.1" + dependencies: + collection-visit: ^1.0.0 + component-emitter: ^1.2.1 + get-value: ^2.0.6 + has-value: ^1.0.0 + isobject: ^3.0.1 + set-value: ^2.0.0 + to-object-path: ^0.3.0 + union-value: ^1.0.0 + unset-value: ^1.0.0 + checksum: 3f362ba824453d4043df82655314503e591a09a1bcb909ffdfcc74deb0fe4e7c58e40de31293153b07aeb5545610a1d81bf49b67cff5d3dd084d389e5a4d4849 + languageName: node + linkType: hard + +"cache-loader@npm:^4.1.0": + version: 4.1.0 + resolution: "cache-loader@npm:4.1.0" + dependencies: + buffer-json: ^2.0.0 + find-cache-dir: ^3.0.0 + loader-utils: ^1.2.3 + mkdirp: ^0.5.1 + neo-async: ^2.6.1 + schema-utils: ^2.0.0 + peerDependencies: + webpack: ^4.0.0 + checksum: 2e369f72e32ee44f29ada210fcea87a85c120aa2619bb74b2f4346ae85034f58166b66135f3cfba307ad4290d893c447d46cea905508829427b5170158f36f08 + languageName: node + linkType: hard + +"cacheable-request@npm:^6.0.0": + version: 6.1.0 + resolution: "cacheable-request@npm:6.1.0" + dependencies: + clone-response: ^1.0.2 + get-stream: ^5.1.0 + http-cache-semantics: ^4.0.0 + keyv: ^3.0.0 + lowercase-keys: ^2.0.0 + normalize-url: ^4.1.0 + responselike: ^1.0.2 + checksum: 8b43f661371084ee67309c6bac93313360f55d5dfb1b622d32750c95a5f9c470a83d5798a042a67badcc0674ce0ca586a72f41e450275e78d87da1b705b91efb + languageName: node + linkType: hard + +"call-me-maybe@npm:^1.0.1": + version: 1.0.1 + resolution: "call-me-maybe@npm:1.0.1" + checksum: 07e1afb493ed945c6b053940881d46ece2ab04e1862e7cd8c483e8651e9831a70b31098e6be321a897b7e702d34b6417301280efda98c5e663a608baaf95d2f4 + languageName: node + linkType: hard + +"caller-callsite@npm:^2.0.0": + version: 2.0.0 + resolution: "caller-callsite@npm:2.0.0" + dependencies: + callsites: ^2.0.0 + checksum: 4f62ec12d0241f372d65156b98ca5d0abb5470a4ae497e11b58d945158ab9411a21e7a42873e62c9765ba7faf658dd524f96833f6d2f776011374bb80c85761d + languageName: node + linkType: hard + +"caller-path@npm:^2.0.0": + version: 2.0.0 + resolution: "caller-path@npm:2.0.0" + dependencies: + caller-callsite: ^2.0.0 + checksum: c4b19e43d4d2afc62c2b283d74844811a4517a162f9490f62c74421ddcfbd3e3334890fd9c474db98b20d62598a0ae659798c402623866b6f6068683a81ec5e7 + languageName: node + linkType: hard + +"callsites@npm:^2.0.0": + version: 2.0.0 + resolution: "callsites@npm:2.0.0" + checksum: 0ccd42292bdc6cd4a7dbfc0d91c232cbc9dc6d0db61659fd63deba826596c7302745b9f75d5c9db6da166e41207436045bd391fefb03e754b4f928b6e8b404ae + languageName: node + linkType: hard + +"callsites@npm:^3.0.0": + version: 3.1.0 + resolution: "callsites@npm:3.1.0" + checksum: f726bf10d752901174cae348e69c2e58206404d5eebcea485b3fedbcf7fcffdb397e10919fdf6ee2c8adb4be52a64eea2365d52583611939bfecd109260451c9 + languageName: node + linkType: hard + +"camel-case@npm:4.1.1, camel-case@npm:^4.1.1": + version: 4.1.1 + resolution: "camel-case@npm:4.1.1" + dependencies: + pascal-case: ^3.1.1 + tslib: ^1.10.0 + checksum: c202f62a74c020e51ab6d7d02c0367a6b8cd5d1803e69371421970186d6ca32a20437eb45257baa00a7bb976a202e8fbdb75d509145f5b022f7f80936997c6b8 + languageName: node + linkType: hard + +"camelcase-css@npm:2.0.1": + version: 2.0.1 + resolution: "camelcase-css@npm:2.0.1" + checksum: 3d557da914fe529026caa9053031eb85e9c548a12cb00acc5b79cde73c1de81eb417a4a10fe2d690a0043d019fd3cb19dbbe31c5d79d40699ba0836da5cf7187 + languageName: node + linkType: hard + +"camelcase-keys@npm:^2.0.0": + version: 2.1.0 + resolution: "camelcase-keys@npm:2.1.0" + dependencies: + camelcase: ^2.0.0 + map-obj: ^1.0.0 + checksum: 74eff079c8e6335aee88e3e950a138a293cd97055520a404d51eb5caad36af2bca92efcf4f78a5f319d41fcb146d46630fef380daf897a7ce38711ed66c52849 + languageName: node + linkType: hard + +"camelcase-keys@npm:^4.0.0": + version: 4.2.0 + resolution: "camelcase-keys@npm:4.2.0" + dependencies: + camelcase: ^4.1.0 + map-obj: ^2.0.0 + quick-lru: ^1.0.0 + checksum: 9a90a1847dc386d5fce948027064c53aeebdea5b57fd27d794e2b56c7c21337e2feb8768a9795fe7d2a038248ead1e0455a75df4a1714d41b807ef87eb23da59 + languageName: node + linkType: hard + +"camelcase-keys@npm:^6.2.2": + version: 6.2.2 + resolution: "camelcase-keys@npm:6.2.2" + dependencies: + camelcase: ^5.3.1 + map-obj: ^4.0.0 + quick-lru: ^4.0.1 + checksum: d4bd5fa5249127be0f5b1aa961da3a9de7d0a578d9524c5013f21c0ed345637eaa1e42bab28a75bbfc8511911ffb30fec4191a9efcec52741c1a3402dc38dd53 + languageName: node + linkType: hard + +"camelcase@npm:5.0.0": + version: 5.0.0 + resolution: "camelcase@npm:5.0.0" + checksum: 73567fa11f981cf6b6f282bf87197172771dccef7a8b1574115058e3f5266f8e0523541b629ba14ee05c269e743f516238862d32812afd6759dbb5fa5080da8e + languageName: node + linkType: hard + +"camelcase@npm:5.3.1, camelcase@npm:^5.0.0, camelcase@npm:^5.3.1": + version: 5.3.1 + resolution: "camelcase@npm:5.3.1" + checksum: 6a3350c4ea8ab6e5109e0b443cfaf43dc40abfad7b2d79dcafbbafbe9b6b4059b4365b17ad822e24cf08e6627c1ffb65a9651d05cef9fcc6f64b6a0c2f327feb + languageName: node + linkType: hard + +"camelcase@npm:^2.0.0": + version: 2.1.1 + resolution: "camelcase@npm:2.1.1" + checksum: 311182686b3b87ac07851d6bc8c1327d55ef5fe95403bce97e21696dfe666dec70cf2b008593c00ae69a2b84e0074e4c130157a41db1d237f6fe5686cbf870b3 + languageName: node + linkType: hard + +"camelcase@npm:^4.1.0": + version: 4.1.0 + resolution: "camelcase@npm:4.1.0" + checksum: 6ca41b5114ef3683013fb51cf9a11c60dcfeef90ceb0075c2d77b7455819e2acdcc7fb5c033314f862212acb23056f1774879dfc580938a9a27ecc345856d1a3 + languageName: node + linkType: hard + +"camelcase@npm:^6.0.0": + version: 6.0.0 + resolution: "camelcase@npm:6.0.0" + checksum: d92305180bc2041141cc0c889ee54d14f90b16365dc7c01eabe6d54e913eb8011313f98dde3025ae11f0003b601ba320f56ee56db476c64060cf2305bf7f6f2a + languageName: node + linkType: hard + +"caniuse-api@npm:^3.0.0": + version: 3.0.0 + resolution: "caniuse-api@npm:3.0.0" + dependencies: + browserslist: ^4.0.0 + caniuse-lite: ^1.0.0 + lodash.memoize: ^4.1.2 + lodash.uniq: ^4.5.0 + checksum: 6822fb3d421b438f9274b15f9a20f54937402730c978285ceb07b569de5876882b0bbc94274519f7308baaae8dc84227d846fc7dacc4f4b54fac7d2515aca582 + languageName: node + linkType: hard + +"caniuse-lite@npm:^1.0.0, caniuse-lite@npm:^1.0.30000981, caniuse-lite@npm:^1.0.30001035, caniuse-lite@npm:^1.0.30001109, caniuse-lite@npm:^1.0.30001111": + version: 1.0.30001112 + resolution: "caniuse-lite@npm:1.0.30001112" + checksum: 08293122dfa4c1493cdc78357008eb1af36eec5a61d6201d689c1d3b4bd62218be8e2eda72f85223e239a7ef00ac0f1dede8aafc24b7d1297f67c627ea241b28 + languageName: node + linkType: hard + +"capital-case@npm:^1.0.3": + version: 1.0.3 + resolution: "capital-case@npm:1.0.3" + dependencies: + no-case: ^3.0.3 + tslib: ^1.10.0 + upper-case-first: ^2.0.1 + checksum: bf0f9bcf053c3166ab2ba3eebd6700779a779a3ff40ebc690718b13624222a44b45d20cc6457825a357e48adb01822b36b04e9e4cd980b85c346023d3d36f9c6 + languageName: node + linkType: hard + +"capture-exit@npm:^2.0.0": + version: 2.0.0 + resolution: "capture-exit@npm:2.0.0" + dependencies: + rsvp: ^4.8.4 + checksum: 9dd81108a087a90430e5abbad45a195123647718cf19faa58b76db519a1d79975ab13685e55de16dbdee1da3f8e4c522e7b6dc7aa7614c65dc58ad27588f7887 + languageName: node + linkType: hard + +"case-sensitive-paths-webpack-plugin@npm:2.3.0": + version: 2.3.0 + resolution: "case-sensitive-paths-webpack-plugin@npm:2.3.0" + checksum: 45d85caef4dfc3cacb1461912dee18cfcae74f35cdbeaf564484ed3c82266a5d9305883b86d9537bd57d07ba2a64fb716c2ff98a88a4bf97619ab7b130cbb68e + languageName: node + linkType: hard + +"caseless@npm:~0.12.0": + version: 0.12.0 + resolution: "caseless@npm:0.12.0" + checksum: 147f48bff9bebf029d7050e2335da3f8d295f26d157edf08d8c3282c804dae04a462c4cd6efa8179755686aa3aeaca5c28f3e7f3559698bc0484c65e46c36c5b + languageName: node + linkType: hard + +"ccount@npm:^1.0.0, ccount@npm:^1.0.3": + version: 1.0.5 + resolution: "ccount@npm:1.0.5" + checksum: 7580ada7a3efa38d9dbdd581d3a9d5844529663d8faa5a9c209de3cce75cd96b721ebda7fa328ff4980a4392da6b30b27753a416823cae44a3e76dcf5c93b7a0 + languageName: node + linkType: hard + +"chalk@npm:1.1.3, chalk@npm:^1.0.0, chalk@npm:^1.1.1, chalk@npm:^1.1.3": + version: 1.1.3 + resolution: "chalk@npm:1.1.3" + dependencies: + ansi-styles: ^2.2.1 + escape-string-regexp: ^1.0.2 + has-ansi: ^2.0.0 + strip-ansi: ^3.0.0 + supports-color: ^2.0.0 + checksum: bc2df54f6da63d0918254aa2d79dd87f75442e35c751b07f5ca37e5886dd0963472e37ee8c5fa6da27710fdfa0e10779c72be4a6c860c67e96769ba63ee2901e + languageName: node + linkType: hard + +"chalk@npm:2.4.2, chalk@npm:^2.0.0, chalk@npm:^2.0.1, chalk@npm:^2.1.0, chalk@npm:^2.3.1, chalk@npm:^2.4.1, chalk@npm:^2.4.2": + version: 2.4.2 + resolution: "chalk@npm:2.4.2" + dependencies: + ansi-styles: ^3.2.1 + escape-string-regexp: ^1.0.5 + supports-color: ^5.3.0 + checksum: 22c7b7b5bc761c882bb6516454a1a671923f1c53ff972860065aa0b28a195f230163c1d46ee88bcc7a03e5539177d896457d8bc727de7f244c6e87032743038e + languageName: node + linkType: hard + +"chalk@npm:4.1.0, chalk@npm:^4.0.0, chalk@npm:^4.1.0": + version: 4.1.0 + resolution: "chalk@npm:4.1.0" + dependencies: + ansi-styles: ^4.1.0 + supports-color: ^7.1.0 + checksum: f860285b419f9e925c2db0f45ffa88aa8794c14b80cc5d01ff30930bcfc384996606362706f0829cf557f6d36152a5fb2d227ad63c4bc90e2ec9e9dbed4a3c07 + languageName: node + linkType: hard + +"chalk@npm:^3.0.0": + version: 3.0.0 + resolution: "chalk@npm:3.0.0" + dependencies: + ansi-styles: ^4.1.0 + supports-color: ^7.1.0 + checksum: 4018b0c812880da595d0d7b8159939527b72f58d3370e2fdc1a24d9abd460bab851695d7eca014082f110d5702d1221b05493fec430ccce375de907d50cc48c1 + languageName: node + linkType: hard + +"change-case@npm:^4.1.1": + version: 4.1.1 + resolution: "change-case@npm:4.1.1" + dependencies: + camel-case: ^4.1.1 + capital-case: ^1.0.3 + constant-case: ^3.0.3 + dot-case: ^3.0.3 + header-case: ^2.0.3 + no-case: ^3.0.3 + param-case: ^3.0.3 + pascal-case: ^3.1.1 + path-case: ^3.0.3 + sentence-case: ^3.0.3 + snake-case: ^3.0.3 + tslib: ^1.10.0 + checksum: 245a474fdb8008773fc8b6b0946bff8e4d46e5e807d8f5e34f3c59e9c592b94c109c01fe1b12356757c580ba886a51eb51fd255c716131851d9799f9f0d18177 + languageName: node + linkType: hard + +"char-regex@npm:^1.0.2": + version: 1.0.2 + resolution: "char-regex@npm:1.0.2" + checksum: 7db46ed45d9925985a9d212ed6fd5846debb7b969fe40548a3b806e65064480e895e303f8635d57b53f2f3725986d0a9cb10c227a31221d1b039e13a2211faaf + languageName: node + linkType: hard + +"character-entities-legacy@npm:^1.0.0": + version: 1.1.4 + resolution: "character-entities-legacy@npm:1.1.4" + checksum: bb1e426146681405edaaf349ac045533c8a2540958c824e90b7c2286bdbf1a4706c0b524983f5e0f2bee776bdf29cadb1240af60c02d192b24e3e227f2c84bca + languageName: node + linkType: hard + +"character-entities@npm:^1.0.0": + version: 1.2.4 + resolution: "character-entities@npm:1.2.4" + checksum: 6ca8a790a2c18f5cda36a75d6b8fdf8c818b215c46daa87c1d2bd8062d4dee54685ddcff578cdd777b852b72539fdfcc60ee681037684a8209004db7d867c705 + languageName: node + linkType: hard + +"character-reference-invalid@npm:^1.0.0": + version: 1.1.4 + resolution: "character-reference-invalid@npm:1.1.4" + checksum: 82d8ce7828536cc7e097594a0414c09a70356312f4e9dfe88af7fe8c3b14efea8e4cf16fae0bcbb95d76fdf5ef6b44a42f75d0998aa7894558cf1affa2a66b3a + languageName: node + linkType: hard + +"chardet@npm:^0.4.0": + version: 0.4.2 + resolution: "chardet@npm:0.4.2" + checksum: 456c69168f918da835246021823d05119b0bd45e6e5f4e3ddee15773f98935e51f94aad087963a2b49e80d613f042f307657641350b31924fb8e12253e361d03 + languageName: node + linkType: hard + +"chardet@npm:^0.7.0": + version: 0.7.0 + resolution: "chardet@npm:0.7.0" + checksum: b71a4ee4648489291af86418b96247824a8c1ee4f4f95d6268967fb40e9fbf70500e72fb737d5186a23cf98c8a02b91d68cb2f426d7428e92883af9d31a037ec + languageName: node + linkType: hard + +"check-types@npm:^8.0.3": + version: 8.0.3 + resolution: "check-types@npm:8.0.3" + checksum: 88b16cd319138fc158002fbb7349441eae7ce1625d817b34a6ecbffaeac83a816add0afc914decf30a54c4e479f6ef9b5f27916c56298f3d0b7a8c342163fd5e + languageName: node + linkType: hard + +"cheerio@npm:^0.22.0": + version: 0.22.0 + resolution: "cheerio@npm:0.22.0" + dependencies: + css-select: ~1.2.0 + dom-serializer: ~0.1.0 + entities: ~1.1.1 + htmlparser2: ^3.9.1 + lodash.assignin: ^4.0.9 + lodash.bind: ^4.1.4 + lodash.defaults: ^4.0.1 + lodash.filter: ^4.4.0 + lodash.flatten: ^4.2.0 + lodash.foreach: ^4.3.0 + lodash.map: ^4.4.0 + lodash.merge: ^4.4.0 + lodash.pick: ^4.2.1 + lodash.reduce: ^4.4.0 + lodash.reject: ^4.4.0 + lodash.some: ^4.4.0 + checksum: fbdec8b182e1f070b3b351c8084cfd1d11e05f6e609ff9dbd5ba13d87f1ffe8f6ce033149e8bcf5ddfbc1cc4e0f2b853d6f35884c3e019ee66cbee47cea25d7a + languageName: node + linkType: hard + +"chokidar@npm:3.4.1": + version: 3.4.1 + resolution: "chokidar@npm:3.4.1" + dependencies: + anymatch: ~3.1.1 + braces: ~3.0.2 + fsevents: ~2.1.2 + glob-parent: ~5.1.0 + is-binary-path: ~2.1.0 + is-glob: ~4.0.1 + normalize-path: ~3.0.0 + readdirp: ~3.4.0 + dependenciesMeta: + fsevents: + optional: true + checksum: fdbeae89bdd7832acb0b7a5192b7d6ec1a81aff915609b0b6ff110e58fa211d793fed16ce41ccd9d4c6c7786db1b97cd88984bfe2b87303f04aa6bf0f31feaaa + languageName: node + linkType: hard + +"chokidar@npm:^2.1.8": + version: 2.1.8 + resolution: "chokidar@npm:2.1.8" + dependencies: + anymatch: ^2.0.0 + async-each: ^1.0.1 + braces: ^2.3.2 + fsevents: ^1.2.7 + glob-parent: ^3.1.0 + inherits: ^2.0.3 + is-binary-path: ^1.0.0 + is-glob: ^4.0.0 + normalize-path: ^3.0.0 + path-is-absolute: ^1.0.0 + readdirp: ^2.2.1 + upath: ^1.1.1 + dependenciesMeta: + fsevents: + optional: true + checksum: 0758dcc7c6c7ace5924cf3c68088210932d391ab41026376b0adb8e07013ac87232e029f13468dfc9ca4dd59adae62a2b7eaedebb6c4e4f0ba92cbf3ac9e3721 + languageName: node + linkType: hard + +"chokidar@npm:^3.2.2, chokidar@npm:^3.3.0, chokidar@npm:^3.4.1": + version: 3.4.2 + resolution: "chokidar@npm:3.4.2" + dependencies: + anymatch: ~3.1.1 + braces: ~3.0.2 + fsevents: ~2.1.2 + glob-parent: ~5.1.0 + is-binary-path: ~2.1.0 + is-glob: ~4.0.1 + normalize-path: ~3.0.0 + readdirp: ~3.4.0 + dependenciesMeta: + fsevents: + optional: true + checksum: a394c13d28f3a7df6c3d8ca80791599523c654a9e08bec2bb6d0f44a6d74c61f9b46cd871401b8694e57e909055280adad898b93f4269d53b8b0e0c02f02dc12 + languageName: node + linkType: hard + +"chownr@npm:^1.1.1, chownr@npm:^1.1.2": + version: 1.1.4 + resolution: "chownr@npm:1.1.4" + checksum: 4a7f1a0b2637450fd15ddb085b10649487ddd1d59a8d9335b1aa5b1e9ad55840a591ab7d7f9b568001cb6777d017334477ab2e32e048788b13a069d011cd5781 + languageName: node + linkType: hard + +"chownr@npm:^2.0.0": + version: 2.0.0 + resolution: "chownr@npm:2.0.0" + checksum: b06ba0bf4218bc2214cdb94a7d0200db5c6425f9425795c064dcf5a3801aac8ae87f764727890cd1f48c026559159e7e0e15ed3d1940ce453dec54898d013379 + languageName: node + linkType: hard + +"chrome-trace-event@npm:^1.0.2": + version: 1.0.2 + resolution: "chrome-trace-event@npm:1.0.2" + dependencies: + tslib: ^1.9.0 + checksum: 926fe23bc92e35c7fb666711c1dc1f342f289a728eb37d23bc4371df7587fe58152569eb57d657e2377f2e56093513939cab5a5a8f3589743938cc0b61527c02 + languageName: node + linkType: hard + +"ci-info@npm:^1.6.0": + version: 1.6.0 + resolution: "ci-info@npm:1.6.0" + checksum: c53d8ead84b00b44a26099b9afbe25d07d1cf02a0b2e354f97e4765ab965525d5d831d264b045737ac03076be3c34e87b64dee0d94cfd87cfc227299cb1c0137 + languageName: node + linkType: hard + +"ci-info@npm:^2.0.0": + version: 2.0.0 + resolution: "ci-info@npm:2.0.0" + checksum: 553fe83c085fce5e19e20f85b993f24a463e6f805803837a8868607bb68b1300567868694a5dff1beca6c54926a4c0be1cc9ef0c35f810653d590bf64183f6a0 + languageName: node + linkType: hard + +"cipher-base@npm:^1.0.0, cipher-base@npm:^1.0.1, cipher-base@npm:^1.0.3": + version: 1.0.4 + resolution: "cipher-base@npm:1.0.4" + dependencies: + inherits: ^2.0.1 + safe-buffer: ^5.0.1 + checksum: ec80001ec91dbb7c5c08facc00ffc9c75fed7abd6d720c7a9c62c260aa2e5cb2655c183e011b50b8b711f755b1753c7fdd2ca44c091ee78d81c377ca74ed83c9 + languageName: node + linkType: hard + +"class-utils@npm:^0.3.5": + version: 0.3.6 + resolution: "class-utils@npm:0.3.6" + dependencies: + arr-union: ^3.1.0 + define-property: ^0.2.5 + isobject: ^3.0.0 + static-extend: ^0.1.1 + checksum: 6411679ad4d2bde81b62ad721d4771d108d5d8ef32805d10ebfa6f1d6bdcfd5cb6dfea5232b85221f079e42691c36cf2db05a5e76b87ba8f6deb37a2c23a4a41 + languageName: node + linkType: hard + +"classnames@npm:^2.2.5": + version: 2.2.6 + resolution: "classnames@npm:2.2.6" + checksum: 490eaeca5931846737ffd33e472a701d268d5b8bc5717dd4cf108a127b06e86e05350e06799abbbe763a0e4c945b4217f6700b7ae00ddc703505682c370e5cf2 + languageName: node + linkType: hard + +"clean-css@npm:^4.2.3": + version: 4.2.3 + resolution: "clean-css@npm:4.2.3" + dependencies: + source-map: ~0.6.0 + checksum: a60f7800828ea7a6b8315c3c855d700c59cf9e45e88a88e73c7fff12ee316a4afcbca1041b14453c8020f57de72ebf3d0ed6250f306faea83f5e05ee90a4c67a + languageName: node + linkType: hard + +"clean-stack@npm:^2.0.0": + version: 2.2.0 + resolution: "clean-stack@npm:2.2.0" + checksum: e291ce2b8c8c59e6449ac9a7a726090264bea6696e5343b21385e16d279c808ca09d73a1abea8fd23a9b7699e6ef5ce582df203511f71c8c27666bf3b2e300c5 + languageName: node + linkType: hard + +"cli-boxes@npm:^2.2.0": + version: 2.2.0 + resolution: "cli-boxes@npm:2.2.0" + checksum: db0db07e6984456140f3880180582b13c71abf31b8e74842f298d80a21a2655bdb0025645f92b3fbc384daa6b6b3b1b4ea67ce9219984a8aa6ae06fca2d6296a + languageName: node + linkType: hard + +"cli-cursor@npm:^2.0.0, cli-cursor@npm:^2.1.0": + version: 2.1.0 + resolution: "cli-cursor@npm:2.1.0" + dependencies: + restore-cursor: ^2.0.0 + checksum: df33c11b3c236c9238ec8112330e7a3f25d59c73b2cffea8ed4f9ab1881d93f8467d7a0920434a880e8cea37f264da5f26549f2afa350c764fac956c02fd841a + languageName: node + linkType: hard + +"cli-cursor@npm:^3.1.0": + version: 3.1.0 + resolution: "cli-cursor@npm:3.1.0" + dependencies: + restore-cursor: ^3.1.0 + checksum: 15dbfc222f27da8cbc61680e4948b189e811224271f6ee5be9db0dcbabe23ae3b2c5a5663be6f17ee51f6203ab44abddd4f4cffb20d69458fc845fa86976f96a + languageName: node + linkType: hard + +"cli-highlight@npm:^2.0.0": + version: 2.1.4 + resolution: "cli-highlight@npm:2.1.4" + dependencies: + chalk: ^3.0.0 + highlight.js: ^9.6.0 + mz: ^2.4.0 + parse5: ^5.1.1 + parse5-htmlparser2-tree-adapter: ^5.1.1 + yargs: ^15.0.0 + bin: + highlight: ./bin/highlight + checksum: fc8a65365fb6ee46739aad926dc4171b22962e0aba1bb7f19b9be22e12384839239ab6eaca9a08c6c1bbc849c312abed93a419e6472ea3e380caab6030250625 + languageName: node + linkType: hard + +"cli-truncate@npm:2.1.0, cli-truncate@npm:^2.1.0": + version: 2.1.0 + resolution: "cli-truncate@npm:2.1.0" + dependencies: + slice-ansi: ^3.0.0 + string-width: ^4.2.0 + checksum: 2b20f9e353cd34b015ff0067effd2810490c4e23eb9b4edfd7cdc41f00311d0d1a6148eb7e9947d4ab858295f4da5b5d8f150842a8802dc7999c51288fe26e62 + languageName: node + linkType: hard + +"cli-truncate@npm:^0.2.1": + version: 0.2.1 + resolution: "cli-truncate@npm:0.2.1" + dependencies: + slice-ansi: 0.0.4 + string-width: ^1.0.1 + checksum: f860298aa38107f0c7307d5f7c106dcf1b32c6d0d57c5126ac88b78e48e2a904927e1b44b523c5e38fb9f1c01c9c5b49f1d425ba0b8bd1910f9d0ee7e8a74665 + languageName: node + linkType: hard + +"cli-width@npm:^2.0.0": + version: 2.2.1 + resolution: "cli-width@npm:2.2.1" + checksum: f7c830bddca78d8b2706c213d6ffa4e751988b7f70ec3e871c97a87e12a9e17e9f9652f13a5bfcea0e2e8dbae1da4b0939d59cf2bf8c36979541c624043d6315 + languageName: node + linkType: hard + +"cli-width@npm:^3.0.0": + version: 3.0.0 + resolution: "cli-width@npm:3.0.0" + checksum: 6e5bc71774e202bfd3782d0be56eacee9462bfc7dc4a601dad10636163ab9c8abe625e760b0f28e590f9044bc23df3927ee3406f8c961fd2e4a51ef3f67fab2f + languageName: node + linkType: hard + +"clipboard@npm:^2.0.0": + version: 2.0.6 + resolution: "clipboard@npm:2.0.6" + dependencies: + good-listener: ^1.2.2 + select: ^1.1.2 + tiny-emitter: ^2.0.0 + checksum: 25e2e6b595f764ebb541dfda5c77051200567b5dd2de42ac6ab9681febe1256a977be450ab1d6f0d41554799106cc92e79e167797c8e8b8e88edcb0aec5b5dcb + languageName: node + linkType: hard + +"cliui@npm:^4.0.0": + version: 4.1.0 + resolution: "cliui@npm:4.1.0" + dependencies: + string-width: ^2.1.1 + strip-ansi: ^4.0.0 + wrap-ansi: ^2.0.0 + checksum: 401b0719e79fbe23c008cd9bcd1f0e80792d8b52f563ee0886410c7509ea69584239162234eac6ab38b36c9567764bec536779241ec4c15ca8f9e5fd7cdb7e75 + languageName: node + linkType: hard + +"cliui@npm:^5.0.0": + version: 5.0.0 + resolution: "cliui@npm:5.0.0" + dependencies: + string-width: ^3.1.0 + strip-ansi: ^5.2.0 + wrap-ansi: ^5.1.0 + checksum: 25e61dc985279bd7ec16715df53288346e5c36ff43956f7de31bf55b2432ce1259e75148b28c3ed41265caf1baee1d204363c429ae5fee54e6f78bed5a5d82b3 + languageName: node + linkType: hard + +"cliui@npm:^6.0.0": + version: 6.0.0 + resolution: "cliui@npm:6.0.0" + dependencies: + string-width: ^4.2.0 + strip-ansi: ^6.0.0 + wrap-ansi: ^6.2.0 + checksum: e59d0642946dd300b1b002e69f43b32d55e682c84f6f2073705ffe77477b400aeabd4f4795467db0771a21d35ee070071f6a31925e4f83b52a7fe1f5c8e6e860 + languageName: node + linkType: hard + +"clone-deep@npm:^0.2.4": + version: 0.2.4 + resolution: "clone-deep@npm:0.2.4" + dependencies: + for-own: ^0.1.3 + is-plain-object: ^2.0.1 + kind-of: ^3.0.2 + lazy-cache: ^1.0.3 + shallow-clone: ^0.1.2 + checksum: d23f5d7df4bf96488dadeb169a8b3892aebdabaa7f11da1d3e71519ca0fda260e64831966d92b8687d4417d17de1f25b5fbb540d225dc4c2ff8ffb169b0e943c + languageName: node + linkType: hard + +"clone-deep@npm:^4.0.1": + version: 4.0.1 + resolution: "clone-deep@npm:4.0.1" + dependencies: + is-plain-object: ^2.0.4 + kind-of: ^6.0.2 + shallow-clone: ^3.0.0 + checksum: b0146d66cabc7e609d23d10155dcc88e2f74b03539b3b65f8a05f889500e2a78b6c6265a744445d009d512a1afa16836f62aa5737d462027142984c2d41130c8 + languageName: node + linkType: hard + +"clone-response@npm:^1.0.2": + version: 1.0.2 + resolution: "clone-response@npm:1.0.2" + dependencies: + mimic-response: ^1.0.0 + checksum: 71832f9219f2682b0915bdbc0dd187ba8e63d16b0af5342b44f97b34afe9400a1f528a253dd2f70a8dd8b23bfa4c4e106928fcc520fa5899d769af95e4cce53c + languageName: node + linkType: hard + +"clone@npm:^1.0.2": + version: 1.0.4 + resolution: "clone@npm:1.0.4" + checksum: aaaa58f9906002d9c07630682536cb00581ee02d7a76cfa8573ad59784add4d5d6d4afe894c21899b974044f153f8c5c6419ffc8b1cdde61bf104ad52e3a185d + languageName: node + linkType: hard + +"clsx@npm:1.1.1, clsx@npm:^1.0.4, clsx@npm:^1.1.1": + version: 1.1.1 + resolution: "clsx@npm:1.1.1" + checksum: d8ae10ac0546da19fe8c9516886f6582a64a382cf4d09ea7d36d5287cafbdab1192ab249adc2cdf0310e0b0aeac4f4142cf7c738c98d9cb68c19ba24b6f673d5 + languageName: node + linkType: hard + +"cluster-key-slot@npm:^1.1.0": + version: 1.1.0 + resolution: "cluster-key-slot@npm:1.1.0" + checksum: 3b41b06942f6b0df71029dec9df6a272be2ab78353d60fcdc5a4af3b88a749d7fb2d1d3b092db0108b2bdd104086c03edcaa3b25ef432590bb954981d6cd7715 + languageName: node + linkType: hard + +"co@npm:^4.6.0": + version: 4.6.0 + resolution: "co@npm:4.6.0" + checksum: 3f22dbbe0f413ff72831d087d853a81d1137093e12e8ec90b4da2bde5c67bc6bff11b6adeb38ca9fa8704b8cd40dba294948bda3c271bccb74669972b840cc1a + languageName: node + linkType: hard + +"coa@npm:^2.0.2": + version: 2.0.2 + resolution: "coa@npm:2.0.2" + dependencies: + "@types/q": ^1.5.1 + chalk: ^2.4.1 + q: ^1.1.2 + checksum: 8724977fd035255e648ac9b3de3b476fe73390a8c92ae8b633b80fd4c37d82416a6a5591f2cdf0c8724a19e8d14c6871bc52bb52dac37187034102abb89866ef + languageName: node + linkType: hard + +"code-point-at@npm:^1.0.0": + version: 1.1.0 + resolution: "code-point-at@npm:1.1.0" + checksum: 7d9837296e0f1c00239c88542f5a3e0bad11e45d3d0e8d9d097901fe54722dd5d2c006969077a287be8648a202c43f74e096f17552cbd897568308fba7b87ac0 + languageName: node + linkType: hard + +"collapse-white-space@npm:^1.0.0, collapse-white-space@npm:^1.0.2": + version: 1.0.6 + resolution: "collapse-white-space@npm:1.0.6" + checksum: beca17619bd6f8a09bf1a08667d4951af39eeddb59c2a225d3f40a5b758bd0c42ebf8885488b73372c9330085b0971efa1b95503fca833d75e84d8cd1992914f + languageName: node + linkType: hard + +"collect-v8-coverage@npm:^1.0.0": + version: 1.0.1 + resolution: "collect-v8-coverage@npm:1.0.1" + checksum: 2fc4c79300d6e22169cb0f85e00565079c3939679b7021179db73419f773454166654c7b82372b080c780a9643de4002ec5bb909be55e7018aba3e8cb4f8b01f + languageName: node + linkType: hard + +"collection-visit@npm:^1.0.0": + version: 1.0.0 + resolution: "collection-visit@npm:1.0.0" + dependencies: + map-visit: ^1.0.0 + object-visit: ^1.0.0 + checksum: c73cb1316c29f4b175198dba417f759e6b50ca3f312e42f4f451c2a38cc8e3e292e1fec60d9ccbada35fbc22805a1d897d3bc37fd88fbfe8ab509e4ede88c386 + languageName: node + linkType: hard + +"color-convert@npm:^1.9.0, color-convert@npm:^1.9.1": + version: 1.9.3 + resolution: "color-convert@npm:1.9.3" + dependencies: + color-name: 1.1.3 + checksum: 5f244daa3d1fe1f216d48878c550465067d15268688308554e613b7640a068f96588096d51f0b98b68f15d6ff6bb8ad24e172582ac8c0ad43fa4d3da60fd1b79 + languageName: node + linkType: hard + +"color-convert@npm:^2.0.1": + version: 2.0.1 + resolution: "color-convert@npm:2.0.1" + dependencies: + color-name: ~1.1.4 + checksum: 3d5d8a011a43012ca11b6d739049ecf2055d95582fd16ec44bf1e685eb0baa5cc652002be8a1dc92b429c8d87418287d0528266a7595cb1ad8a7f4f1d3049df2 + languageName: node + linkType: hard + +"color-name@npm:1.1.3": + version: 1.1.3 + resolution: "color-name@npm:1.1.3" + checksum: d8b91bb90aefc05b6ff568cf8889566dcc6269824df6f3c9b8ca842b18d7f4d089c07dc166808d33f22092d4a79167aa56a96a5ff0d21efab548bf44614db43b + languageName: node + linkType: hard + +"color-name@npm:^1.0.0, color-name@npm:~1.1.4": + version: 1.1.4 + resolution: "color-name@npm:1.1.4" + checksum: 3e1c9a4dee12eada307436f61614dd11fe300469db2b83f80c8b7a7cd8a1015f0f18dd13403f018927b249003777ff60baba4a03c65f12e6bddc0dfd9642021f + languageName: node + linkType: hard + +"color-string@npm:^1.5.2": + version: 1.5.3 + resolution: "color-string@npm:1.5.3" + dependencies: + color-name: ^1.0.0 + simple-swizzle: ^0.2.2 + checksum: b860fba4277839e14e684a384c0e7c3d4eb7554486e586e1604d5f1f56cbf10389f8912fdf4637547857dc8fbc7cea0f50b4aad6f3f979fc537dc8eb1c9200b7 + languageName: node + linkType: hard + +"color@npm:^3.0.0": + version: 3.1.2 + resolution: "color@npm:3.1.2" + dependencies: + color-convert: ^1.9.1 + color-string: ^1.5.2 + checksum: 3fd5d29d43fd10a85a6ba8926e1917ce06ecab7c6be282d1f7e8f13d1482cc1075509edc5811301a1f541180530c4054d37b978729054fc9d46cee283e0e253b + languageName: node + linkType: hard + +"colorette@npm:^1.2.1": + version: 1.2.1 + resolution: "colorette@npm:1.2.1" + checksum: 1cc21ad4b84777a424794f78b6bb6a44b614ae17dcea91762199339f8047598e6d981249eeef7ea588c99eaf062be8fcdcd4866c112998922ed854db6dde96f9 + languageName: node + linkType: hard + +"columnify@npm:^1.5.4": + version: 1.5.4 + resolution: "columnify@npm:1.5.4" + dependencies: + strip-ansi: ^3.0.0 + wcwidth: ^1.0.0 + checksum: fbba883d433f8e034f2cef1c1cd22f0b94aace3bf937be2179eeb8f555cc3167fc30421350ded0e0d2dc4aaa714ed22cb5f3157b804a0f3ab5d06750c4bc96fd + languageName: node + linkType: hard + +"combined-stream@npm:^1.0.6, combined-stream@npm:^1.0.8, combined-stream@npm:~1.0.6": + version: 1.0.8 + resolution: "combined-stream@npm:1.0.8" + dependencies: + delayed-stream: ~1.0.0 + checksum: 5791ce7944530f0db74a97e77ea28b6fdbf89afcf038e41d6b4195019c4c803cd19ed2905a54959e5b3830d50bd5d6f93c681c6d3aaea8614ad43b48e62e9d65 + languageName: node + linkType: hard + +"comma-separated-tokens@npm:^1.0.0": + version: 1.0.8 + resolution: "comma-separated-tokens@npm:1.0.8" + checksum: 31a5a2fa6e0f02764b0634e0aa31913c9be0ef568f4e58b5c1ec85d0a6e4a6c367905eacf2c7e59b57d3d05f40cff166ea3c9b6ee8338625cad060ce43ede9fd + languageName: node + linkType: hard + +"commander@npm:^2.11.0, commander@npm:^2.18.0, commander@npm:^2.20.0, commander@npm:^2.20.3": + version: 2.20.3 + resolution: "commander@npm:2.20.3" + checksum: b73428e97de7624323f81ba13f8ed9271de487017432d18b4da3f07cfc528ad754bbd199004bd5d14e0ccd67d1fdfe0ec8dbbd4c438b401df3c4cc387bfd1daa + languageName: node + linkType: hard + +"commander@npm:^4.0.1, commander@npm:^4.1.1": + version: 4.1.1 + resolution: "commander@npm:4.1.1" + checksum: 448585071bf8fb4c0bf9dd52abaee43dea086f801334caec2c8e8c9f456f8abc224c1614ccbbdbf7da5ac2524d230f13cf1fc86c233cf8a041ebecea7df106e9 + languageName: node + linkType: hard + +"commander@npm:^5.1.0": + version: 5.1.0 + resolution: "commander@npm:5.1.0" + checksum: d16141ea7f580945156fb8a06de2834c4647c7d9d3732ebd4534ab8e0b7c64747db301e18f2b840f28ea8fef51f7a8d6178e674b45a21931f0b65ff1c7f476b3 + languageName: node + linkType: hard + +"common-tags@npm:1.8.0, common-tags@npm:^1.8.0": + version: 1.8.0 + resolution: "common-tags@npm:1.8.0" + checksum: f37a868d868929cf345fe49c4122efde693f9b06bf5764df36c3bdf5d3c271a24bb3fb6fbfaeec1f29768e60ad648cc11a4092c91bac05a8bde90ddbf5aae1a8 + languageName: node + linkType: hard + +"commondir@npm:^1.0.1": + version: 1.0.1 + resolution: "commondir@npm:1.0.1" + checksum: 98f18ad14f0ea38e0866db365bc8496f2a74250cf47ec96b94913e1b0574c99b4ff837a9f05dbc68d82505fd06b52dfba4f6bbe6fbda43094296cfaf33b475a0 + languageName: node + linkType: hard + +"compare-func@npm:^2.0.0": + version: 2.0.0 + resolution: "compare-func@npm:2.0.0" + dependencies: + array-ify: ^1.0.0 + dot-prop: ^5.1.0 + checksum: 825690b828f028acf270578cd4d9ea0751987b474095cd47093a29ac087a21e5de2db86b83cc0cecb935dfca952ba8bbcd7ead240fe6b3b7ecb1a66a8b109d28 + languageName: node + linkType: hard + +"compare-versions@npm:^3.6.0": + version: 3.6.0 + resolution: "compare-versions@npm:3.6.0" + checksum: 09525264502bda1f6667ad2429eaf5520b543d997e79e7a94b66a5896df8921cdc3a97140dfff75af6c9ba1859c872de1921c3cf8a6c48ed807bbf9f582cf093 + languageName: node + linkType: hard + +"component-emitter@npm:^1.2.1": + version: 1.3.0 + resolution: "component-emitter@npm:1.3.0" + checksum: fc4edbf1014f0aed88dcec33ca02d2938734e428423f640d8a3f94975615b8e8c506c19e29b93949637c5a281353e75fa79e299e0d57732f42a9fe346cb2cad6 + languageName: node + linkType: hard + +"compose-function@npm:3.0.3": + version: 3.0.3 + resolution: "compose-function@npm:3.0.3" + dependencies: + arity-n: ^1.0.4 + checksum: 069b4e1a82db5f00a7d9612565b5f0891744b09c0486bc61e1bcbd419e1202af710e44ec1b2ba2fb322af4861f141432165f34962f32d387c1ff37e4357a66e1 + languageName: node + linkType: hard + +"compressible@npm:~2.0.16": + version: 2.0.18 + resolution: "compressible@npm:2.0.18" + dependencies: + mime-db: ">= 1.43.0 < 2" + checksum: 8ac178b6ef4f72adc51e495f23f7212a4764395dde24e476046cca1db988859eef96453e11563bcf40d1bf74469cdd7db29539fd4ac553577d9812d3f112fada + languageName: node + linkType: hard + +"compression@npm:^1.7.4": + version: 1.7.4 + resolution: "compression@npm:1.7.4" + 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 + checksum: 8f5356777088492755e40a506acb35af7de9e99b3efcaba9d60dbdf4b61cb2f817a1100015da06f6ca8dea8f4cd015b91c27f02b562e2f66750329b9104dfeb1 + languageName: node + linkType: hard + +"concat-map@npm:0.0.1": + version: 0.0.1 + resolution: "concat-map@npm:0.0.1" + checksum: 554e28d9ee5aa6e061795473ee092cb3d3a2cbdb76c35416e0bb6e03f136d7d07676da387b2ed0ec4106cedbb6534080d9abc48ecc4a92b76406cf2d0c3c0c4b + languageName: node + linkType: hard + +"concat-stream@npm:^1.5.0": + version: 1.6.2 + resolution: "concat-stream@npm:1.6.2" + dependencies: + buffer-from: ^1.0.0 + inherits: ^2.0.3 + readable-stream: ^2.2.2 + typedarray: ^0.0.6 + checksum: 7a97b7a7d0938e36800bdb6f5caf938bac8c523a6ec15df1f2ac41d3785541be30a6671c9f4c0d1ac9609e6ab29dcab8f54d1c84035e3e3b7b24f9336da68ab0 + languageName: node + linkType: hard + +"concat-stream@npm:^2.0.0": + version: 2.0.0 + resolution: "concat-stream@npm:2.0.0" + dependencies: + buffer-from: ^1.0.0 + inherits: ^2.0.3 + readable-stream: ^3.0.2 + typedarray: ^0.0.6 + checksum: 286f55bb6a41f290248b0c4b1fa84f08b1d7f248634bf5907b1b946e28b537b8f95bd6100f10394e9d870fcec9ed50d4636dfc68c0b7e820b06c7f84814edb43 + languageName: node + linkType: hard + +"concurrently@npm:5.2.0": + version: 5.2.0 + resolution: "concurrently@npm:5.2.0" + dependencies: + chalk: ^2.4.2 + date-fns: ^2.0.1 + lodash: ^4.17.15 + read-pkg: ^4.0.1 + rxjs: ^6.5.2 + spawn-command: ^0.0.2-1 + supports-color: ^6.1.0 + tree-kill: ^1.2.2 + yargs: ^13.3.0 + bin: + concurrently: bin/concurrently.js + checksum: 3fd4d40a286fee797db0cb04845a13bf6c05b1fffed357ecc61a57e4acb8a0b5b085ae2828aefa52a87d0292eb61e2bdc24ef15a77bc44db4b1db59d1b90ba30 + languageName: node + linkType: hard + +"config-chain@npm:^1.1.11": + version: 1.1.12 + resolution: "config-chain@npm:1.1.12" + dependencies: + ini: ^1.3.4 + proto-list: ~1.2.1 + checksum: caf4b96491c2ea6fc5e6e23cebc526040cf21779ffc544c705a21b788f7dc3d34bc439878dcdfae8c15830052be55d62b26acada13da1236142d3efc5b4329be + languageName: node + linkType: hard + +"configstore@npm:^5.0.1": + version: 5.0.1 + resolution: "configstore@npm:5.0.1" + dependencies: + dot-prop: ^5.2.0 + graceful-fs: ^4.1.2 + make-dir: ^3.0.0 + unique-string: ^2.0.0 + write-file-atomic: ^3.0.0 + xdg-basedir: ^4.0.0 + checksum: 81dd877bf784af29e7bbeb14e183fef21df07d9eceb3e94601a0689accb168b55f4661c629d32f079f88ea1bff3396434beb0d022414b601e72cf89adf4167e1 + languageName: node + linkType: hard + +"confusing-browser-globals@npm:^1.0.9": + version: 1.0.9 + resolution: "confusing-browser-globals@npm:1.0.9" + checksum: 319e6d15384745d3ff4a5ca0357b687e0d36a1ab29a03084e192ea12802532de0fa7319169b09e971aba6a291f8a5ca333105e0fb239ed3f6c891f13eea2bea6 + languageName: node + linkType: hard + +"connect-history-api-fallback@npm:^1.6.0": + version: 1.6.0 + resolution: "connect-history-api-fallback@npm:1.6.0" + checksum: 298f60415d5f5480b76f98d8bf83737cae9f05921e3d3479452cae34ed3498fab35a1c4c8f19ca5b327bbbe759098f5f6e5fc097d829f607d0d642b075c93e21 + languageName: node + linkType: hard + +"consola@npm:^2.10.0": + version: 2.15.0 + resolution: "consola@npm:2.15.0" + checksum: 9a20844425061e100eb81cc9eb6ed05b54c38630151c6419c6a8526bd6b1eaaa7d61d37618cf7a1dee0e2052548fee41a99b8856f351733c12c6d85f20a3199c + languageName: node + linkType: hard + +"console-browserify@npm:^1.1.0": + version: 1.2.0 + resolution: "console-browserify@npm:1.2.0" + checksum: ddc0e717a48ffa11d6b7ad08a81a706151ff7c08db313c14ae28f1dce88360b2f2d88ccd7b760243a47b67d821f1294273511af5de61f4f201855bb55e8e1d58 + languageName: node + linkType: hard + +"console-control-strings@npm:^1.0.0, console-control-strings@npm:~1.1.0": + version: 1.1.0 + resolution: "console-control-strings@npm:1.1.0" + checksum: 58a404d951bf270494fb91e136cf064652c1208ccedac23e4da24e6a3a3933998f302cadc45cbf6582a007a4aa44dab944e84056b24e3b1964e9a28aeedf76c9 + languageName: node + linkType: hard + +"constant-case@npm:3.0.3, constant-case@npm:^3.0.3": + version: 3.0.3 + resolution: "constant-case@npm:3.0.3" + dependencies: + no-case: ^3.0.3 + tslib: ^1.10.0 + upper-case: ^2.0.1 + checksum: 96ef30a34985743f87cf1e7eb53ef3302df287de032b1621712cc8a29b9b7f10da8e0627d9871a2f0994eb060f2bd3c874abaa7d00a695c022f99d54054346d6 + languageName: node + linkType: hard + +"constants-browserify@npm:^1.0.0": + version: 1.0.0 + resolution: "constants-browserify@npm:1.0.0" + checksum: 108cd8ebfaf3c7fa77c443ca89ec63e41411e341d8b066b1c68d992598f1b75891fbd5370d67a1929a7813be71605884c40c107c1e760d12ebcedf49d31b0c44 + languageName: node + linkType: hard + +"contains-path@npm:^0.1.0": + version: 0.1.0 + resolution: "contains-path@npm:0.1.0" + checksum: 59920a59a0c7d1244235d76b8cfd2b2e7a8dcc463fa578ef9d4d5a5a73eeb14d75dada6b21188e0b35f2474ae9efd10c3698372e674db9c6a904b281998b97d6 + languageName: node + linkType: hard + +"content-disposition@npm:0.5.2": + version: 0.5.2 + resolution: "content-disposition@npm:0.5.2" + checksum: 5d54ba7c9a6e865d1fea321e43d9e56be091aa20706f4632a236ebe7824ed3cb0eac314b80e76a9db2092d287d69add03efcaf743068ee0be1f71159c14a134c + languageName: node + linkType: hard + +"content-disposition@npm:0.5.3": + version: 0.5.3 + resolution: "content-disposition@npm:0.5.3" + dependencies: + safe-buffer: 5.1.2 + checksum: 8f1f235c0423be68023df7f5a3948601d859ce44ee94e1d0fa2a97383bd469e789320b6ddf6f31b3620605c75cf771522df11386f51aff401e5d51b6ccfde3e2 + languageName: node + linkType: hard + +"content-type@npm:~1.0.4": + version: 1.0.4 + resolution: "content-type@npm:1.0.4" + checksum: ff6e19cbf281c23d5608723a6dc60ac97e2280bd4d21602511283112321e6c1555895e395555e367672b54a0f1585276284b7c3c8be313aca73902ac2f2609fd + languageName: node + linkType: hard + +"conventional-changelog-angular@npm:^5.0.11, conventional-changelog-angular@npm:^5.0.3": + version: 5.0.11 + resolution: "conventional-changelog-angular@npm:5.0.11" + dependencies: + compare-func: ^2.0.0 + q: ^1.5.1 + checksum: aecf4183da548e678341c2ff77e48b9d523e9c43a99522dc36f0b8a58fdf34bd4959f4ce341bb220634ee9f5af450d64b11b3ae743fbde2537be686b6615f7c6 + languageName: node + linkType: hard + +"conventional-changelog-atom@npm:^2.0.7": + version: 2.0.7 + resolution: "conventional-changelog-atom@npm:2.0.7" + dependencies: + q: ^1.5.1 + checksum: 6a7df60b8a6e814d57d394b752a9972ebb3fd7494c7a2a8ff8b282b8dc1d40c0df14b2115c9524560a6e1d27a5eb8d0ff2b52fa3a0817abf72479be1a06040dd + languageName: node + linkType: hard + +"conventional-changelog-cli@npm:2.0.34": + version: 2.0.34 + resolution: "conventional-changelog-cli@npm:2.0.34" + dependencies: + add-stream: ^1.0.0 + conventional-changelog: ^3.1.21 + lodash: ^4.17.15 + meow: ^7.0.0 + tempfile: ^3.0.0 + bin: + conventional-changelog: cli.js + checksum: 4ca4bf2d7f814a250580f4e59209c253fdfffe130ef83a7c2a6481b5505a66fa91ce95cbe7a1680b6ca4aad41f6471b4fe430aafec48a7201e5a56ae89e3eaab + languageName: node + linkType: hard + +"conventional-changelog-codemirror@npm:^2.0.7": + version: 2.0.7 + resolution: "conventional-changelog-codemirror@npm:2.0.7" + dependencies: + q: ^1.5.1 + checksum: 14450d537ffd9f3095715d6aea997ac9ff3f3ac38e776ab40ce42f55bd00280ce06051276dc007c1b51cb933d52df5c96e9e08db9369967ae1aeef8b06e625ef + languageName: node + linkType: hard + +"conventional-changelog-conventionalcommits@npm:^4.3.1": + version: 4.3.1 + resolution: "conventional-changelog-conventionalcommits@npm:4.3.1" + dependencies: + compare-func: ^2.0.0 + lodash: ^4.17.15 + q: ^1.5.1 + checksum: cea02d7ca168e94d5cd759f129367d2787ceca48268b7879e7f9c52341d0ab3eaee5b53faf13b12e7dd446541a2bfedf8bc81d49765ee95af519d950bd780193 + languageName: node + linkType: hard + +"conventional-changelog-core@npm:^3.1.6": + version: 3.2.3 + resolution: "conventional-changelog-core@npm:3.2.3" + dependencies: + conventional-changelog-writer: ^4.0.6 + conventional-commits-parser: ^3.0.3 + dateformat: ^3.0.0 + get-pkg-repo: ^1.0.0 + git-raw-commits: 2.0.0 + git-remote-origin-url: ^2.0.0 + git-semver-tags: ^2.0.3 + lodash: ^4.2.1 + normalize-package-data: ^2.3.5 + q: ^1.5.1 + read-pkg: ^3.0.0 + read-pkg-up: ^3.0.0 + through2: ^3.0.0 + checksum: 85f11239e2ea957976cdb36dc6cb9649ea1337c6b4a7fbc60c92408fc4460a3aa7719d5a0a0389330072455237f25b47d56bee8a4ca54de78ac3fc4aecc81930 + languageName: node + linkType: hard + +"conventional-changelog-core@npm:^4.1.8": + version: 4.1.8 + resolution: "conventional-changelog-core@npm:4.1.8" + dependencies: + add-stream: ^1.0.0 + conventional-changelog-writer: ^4.0.17 + conventional-commits-parser: ^3.1.0 + dateformat: ^3.0.0 + get-pkg-repo: ^1.0.0 + git-raw-commits: 2.0.0 + git-remote-origin-url: ^2.0.0 + git-semver-tags: ^4.0.0 + lodash: ^4.17.15 + normalize-package-data: ^2.3.5 + q: ^1.5.1 + read-pkg: ^3.0.0 + read-pkg-up: ^3.0.0 + shelljs: ^0.8.3 + through2: ^3.0.0 + checksum: d62a92597b12afaed558115225bc54213c929cdfd2ca9799741611004cd75fca9e7b2c0f090aed06caaae8c75f3de60e5b650e73a3eb6bf843fdb579b09fc2d5 + languageName: node + linkType: hard + +"conventional-changelog-ember@npm:^2.0.8": + version: 2.0.8 + resolution: "conventional-changelog-ember@npm:2.0.8" + dependencies: + q: ^1.5.1 + checksum: f9196de4d1138e5b50fad537afffec3e1c25dd408535bb6e6fdd325743cac9ced76e09f950f107668ce40dad8ea9cb114ab1d3660227841cfe552609ab98229c + languageName: node + linkType: hard + +"conventional-changelog-eslint@npm:^3.0.8": + version: 3.0.8 + resolution: "conventional-changelog-eslint@npm:3.0.8" + dependencies: + q: ^1.5.1 + checksum: dcc9c3259009272344b7c7a233cb672bc569067b2ecd3af12ca66e8689735a83c8c90ccc7dfdd0597196de6bb55ef7468e83d3afd287b230006b68ac658fba74 + languageName: node + linkType: hard + +"conventional-changelog-express@npm:^2.0.5": + version: 2.0.5 + resolution: "conventional-changelog-express@npm:2.0.5" + dependencies: + q: ^1.5.1 + checksum: c4b59e16be4c0cbc14211db40251592df7ed3bcf6c4904ed87c8ab258541e2d5d386910ade2d31b0610401348ab6d874f011ed6977048bffac4deba8b9d9f794 + languageName: node + linkType: hard + +"conventional-changelog-jquery@npm:^3.0.10": + version: 3.0.10 + resolution: "conventional-changelog-jquery@npm:3.0.10" + dependencies: + q: ^1.5.1 + checksum: 94c8a71463a992ef771d8e027f02f13af5ae318ff6d8e1a3e91140449206845086a2ce6eb8869d0126d8435bca88a60209466d829b4f352f06854848fca907ad + languageName: node + linkType: hard + +"conventional-changelog-jshint@npm:^2.0.8": + version: 2.0.8 + resolution: "conventional-changelog-jshint@npm:2.0.8" + dependencies: + compare-func: ^2.0.0 + q: ^1.5.1 + checksum: d19a0aed5a3b2346b98ec3ab1c17fc35d83f9cc915b8c206684cf37a2975d2ed20633ed209e5310f43a03c7e20265c665820cc1727113870b703c8829d696832 + languageName: node + linkType: hard + +"conventional-changelog-preset-loader@npm:^2.1.1, conventional-changelog-preset-loader@npm:^2.3.4": + version: 2.3.4 + resolution: "conventional-changelog-preset-loader@npm:2.3.4" + checksum: 7cd7ad04296bc0f784398e235b492685a01770de98d17d9334c4d5a1d7a0310033308c24b0452e5c9a9e1cd33ac2fd8c86f4ededee4833189269a7f0ddfcc3fa + languageName: node + linkType: hard + +"conventional-changelog-writer@npm:^4.0.17, conventional-changelog-writer@npm:^4.0.6": + version: 4.0.17 + resolution: "conventional-changelog-writer@npm:4.0.17" + dependencies: + compare-func: ^2.0.0 + conventional-commits-filter: ^2.0.6 + dateformat: ^3.0.0 + handlebars: ^4.7.6 + json-stringify-safe: ^5.0.1 + lodash: ^4.17.15 + meow: ^7.0.0 + semver: ^6.0.0 + split: ^1.0.0 + through2: ^3.0.0 + bin: + conventional-changelog-writer: cli.js + checksum: 652012a1ddb10c88a33a03c474a6694d7d63faf55898ede957fe6edaff301219b461bac00e5f4f5ef6cfb9b5226384ec7d0faf9bf580b6693975be916b51118d + languageName: node + linkType: hard + +"conventional-changelog@npm:^3.1.21": + version: 3.1.22 + resolution: "conventional-changelog@npm:3.1.22" + dependencies: + conventional-changelog-angular: ^5.0.11 + conventional-changelog-atom: ^2.0.7 + conventional-changelog-codemirror: ^2.0.7 + conventional-changelog-conventionalcommits: ^4.3.1 + conventional-changelog-core: ^4.1.8 + conventional-changelog-ember: ^2.0.8 + conventional-changelog-eslint: ^3.0.8 + conventional-changelog-express: ^2.0.5 + conventional-changelog-jquery: ^3.0.10 + conventional-changelog-jshint: ^2.0.8 + conventional-changelog-preset-loader: ^2.3.4 + checksum: d9244a5efb101634d2d01801eced26e724857b8b05f5bb167a526256eaafab716de7f6d8dbf253dadef8e5365fed4d449b44b9b326ea351dc4aa8780dec5f536 + languageName: node + linkType: hard + +"conventional-commits-filter@npm:^2.0.2, conventional-commits-filter@npm:^2.0.6": + version: 2.0.6 + resolution: "conventional-commits-filter@npm:2.0.6" + dependencies: + lodash.ismatch: ^4.4.0 + modify-values: ^1.0.0 + checksum: a8c80a3698b3b44e092c8fef589bee5391d38cb10b9e5689d029078e7096081d664685d6dc890efc0a717ffd4a3a6742e35a7933012834d6a6b68277896ea54d + languageName: node + linkType: hard + +"conventional-commits-parser@npm:^3.0.3, conventional-commits-parser@npm:^3.1.0": + version: 3.1.0 + resolution: "conventional-commits-parser@npm:3.1.0" + dependencies: + JSONStream: ^1.0.4 + is-text-path: ^1.0.1 + lodash: ^4.17.15 + meow: ^7.0.0 + split2: ^2.0.0 + through2: ^3.0.0 + trim-off-newlines: ^1.0.0 + bin: + conventional-commits-parser: cli.js + checksum: 4ffefd705767cb683cca2e733efe55148ae74623221e57bd5e600e68ed4a31beec83695249fcb583fe58da35280aac7cc08789225bd968027f6eb08d75312cb7 + languageName: node + linkType: hard + +"conventional-recommended-bump@npm:^5.0.0": + version: 5.0.1 + resolution: "conventional-recommended-bump@npm:5.0.1" + dependencies: + concat-stream: ^2.0.0 + conventional-changelog-preset-loader: ^2.1.1 + conventional-commits-filter: ^2.0.2 + conventional-commits-parser: ^3.0.3 + git-raw-commits: 2.0.0 + git-semver-tags: ^2.0.3 + meow: ^4.0.0 + q: ^1.5.1 + bin: + conventional-recommended-bump: cli.js + checksum: de0b3981511c1f5f5fe9f7dadfa7de503312db0b1ffea54bb41db9c04b37da8a361e198cc329c93ca941847da51583ec987af1ac7ebd02157d40b1d196a17e23 + languageName: node + linkType: hard + +"convert-source-map@npm:1.7.0, convert-source-map@npm:^1.4.0, convert-source-map@npm:^1.6.0, convert-source-map@npm:^1.7.0": + version: 1.7.0 + resolution: "convert-source-map@npm:1.7.0" + dependencies: + safe-buffer: ~5.1.1 + checksum: b10fbf041e3221c65e1ab67f05c8fcbad9c5fd078c62f4a6e05cb5fddc4b5a0e8a17c6a361c6a44f011b1a0c090b36aa88543be9dfa65da8c9e7f39c5de2d4df + languageName: node + linkType: hard + +"convert-source-map@npm:^0.3.3": + version: 0.3.5 + resolution: "convert-source-map@npm:0.3.5" + checksum: d31937554444da25c0a23f75158cc420f13d9b6ae54fd1217522184670c9bcac6e458e53c03fe3fd191b7f1b13c6d135f9771916fcd1d5667d65ce5e4f00ab6d + languageName: node + linkType: hard + +"cookie-signature@npm:1.0.6": + version: 1.0.6 + resolution: "cookie-signature@npm:1.0.6" + checksum: 305054e102eebd0a483c63aefdc3abf54a9471bed5eb12be56c0dcf35a94110b8a13139b27751ab07a5ef09e9f4190ee67f71e9d3acf1748e6e2f1aed338c987 + languageName: node + linkType: hard + +"cookie@npm:0.4.0": + version: 0.4.0 + resolution: "cookie@npm:0.4.0" + checksum: 7aaef4b642c533600fdd001d963a507dfcd814267503374e51d9743475d024feeff8b0b4ddd0777a25791a2efbdfd8bc4a0fe0696104efa195e8f8584807d410 + languageName: node + linkType: hard + +"copy-concurrently@npm:^1.0.0": + version: 1.0.5 + resolution: "copy-concurrently@npm:1.0.5" + dependencies: + aproba: ^1.1.1 + fs-write-stream-atomic: ^1.0.8 + iferr: ^0.1.5 + mkdirp: ^0.5.1 + rimraf: ^2.5.4 + run-queue: ^1.0.0 + checksum: 62ad9de2dcca3da3fdedf8ffd8c72dacafddc64e0299c61a53c55e3fc8c789d55bc6ca73b399576c52d25ba42c64f4b82f8ba8089ebf932f6f84e0aa8bd7c71e + languageName: node + linkType: hard + +"copy-descriptor@npm:^0.1.0": + version: 0.1.1 + resolution: "copy-descriptor@npm:0.1.1" + checksum: c052cf571ff6b69b604607a3d41f03cb742af9472026013e690ab33e1bef5e64930c53a5f881dc79c7e4f5ccc3cea0ebb9f420315d3690989329088976b68ee9 + languageName: node + linkType: hard + +"copy-text-to-clipboard@npm:^2.2.0": + version: 2.2.0 + resolution: "copy-text-to-clipboard@npm:2.2.0" + checksum: 574c2883637e9a1c1024a7ac33374acbc55891e6023c35f79fe4d0d238b6d79923f8498c02560aff537bc07223e2774c87fd3d10dc5aab2fb8e031dfdff839f7 + languageName: node + linkType: hard + +"copy-webpack-plugin@npm:^5.0.5": + version: 5.1.1 + resolution: "copy-webpack-plugin@npm:5.1.1" + dependencies: + cacache: ^12.0.3 + find-cache-dir: ^2.1.0 + glob-parent: ^3.1.0 + globby: ^7.1.1 + is-glob: ^4.0.1 + loader-utils: ^1.2.3 + minimatch: ^3.0.4 + normalize-path: ^3.0.0 + p-limit: ^2.2.1 + schema-utils: ^1.0.0 + serialize-javascript: ^2.1.2 + webpack-log: ^2.0.0 + peerDependencies: + webpack: ^4.0.0 || ^5.0.0 + checksum: f382283049ea507e3bd56812af8c089b6e380cc122dc8e6e807b7a9c033a6b3f01ae65533300fa14da9fbefa734a937dc9964825c71c60e60ce15de0d8139726 + languageName: node + linkType: hard + +"core-js-compat@npm:^3.6.2": + version: 3.6.5 + resolution: "core-js-compat@npm:3.6.5" + dependencies: + browserslist: ^4.8.5 + semver: 7.0.0 + checksum: b263b5313f5b10807cbe2037bcff1d0abc3611d8600ca29a742695eb21411f76a8c762db00a04d684a3f80645252aeb74b24542c157ec24697edd3ae7afcce87 + languageName: node + linkType: hard + +"core-js-pure@npm:^3.0.0": + version: 3.6.5 + resolution: "core-js-pure@npm:3.6.5" + checksum: 91fc8e0b699d5bcb11f265ad4544d08c98096b86ad6c9b4c00109616db0aa992ceb58ea82d0dbae2a16658a7aaf2922aa6f9fc1107dc3b0055270799d0414a3f + languageName: node + linkType: hard + +"core-js@npm:3.6.5, core-js@npm:^3.0.1, core-js@npm:^3.5.0": + version: 3.6.5 + resolution: "core-js@npm:3.6.5" + checksum: 9283348dd5be2f1d07feaf90e2336b3f00a2316e3d3c6d4f789c9a67bdd4d7b08ce1c88dca4e591340130056c6b412b0b74fae039f8e259206f1073f542e4e85 + languageName: node + linkType: hard + +"core-js@npm:^2.4.0, core-js@npm:^2.4.1, core-js@npm:^2.6.5": + version: 2.6.11 + resolution: "core-js@npm:2.6.11" + checksum: 39ad00b46deaecf344470ef940949b58c4b15e71608a98e8ac7429cd16e485b829f9720d44a44b5f4dee966ff04a18baf5283feb8aaba2cb59ce2c25fa72b88c + languageName: node + linkType: hard + +"core-util-is@npm:1.0.2, core-util-is@npm:~1.0.0": + version: 1.0.2 + resolution: "core-util-is@npm:1.0.2" + checksum: 089015ee3c462dfceba70faa1df83b42a7bb35db26dae6af283247b06fe3216c65fccd9f00eebcaf98300dc31e981d56aae9f90b624f8f6ff1153e235ff88b65 + languageName: node + linkType: hard + +"cors@npm:2.8.5, cors@npm:^2.8.4": + version: 2.8.5 + resolution: "cors@npm:2.8.5" + dependencies: + object-assign: ^4 + vary: ^1 + checksum: c83e88c15428b87ff55853ec5ce961b650c7aa3de536aadebbeb2334872d86a8be57165a77996f3b746366c950c2d51624a9b76b88fb7f18d178eca051ca1ae2 + languageName: node + linkType: hard + +"cosmiconfig@npm:6.0.0, cosmiconfig@npm:^6.0.0": + version: 6.0.0 + resolution: "cosmiconfig@npm:6.0.0" + dependencies: + "@types/parse-json": ^4.0.0 + import-fresh: ^3.1.0 + parse-json: ^5.0.0 + path-type: ^4.0.0 + yaml: ^1.7.2 + checksum: bbd6bbaefe15938107da21f2b5f2d5ede75c7ed4bca5af904d91987c59b050ac95f5e786d9021e16959e0119b36174b190f6040a1daf6fddc75361ab123c0d45 + languageName: node + linkType: hard + +"cosmiconfig@npm:7.0.0": + version: 7.0.0 + resolution: "cosmiconfig@npm:7.0.0" + 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 + checksum: 151fcb91773c0ae826fc801eab86f8f818605dbf63c8e5515adf0ff0fec5ede8e614f387f93c088d65527a2ea9021f0cd8c6b6e5c7fef2b77480b5e2c33700dc + languageName: node + linkType: hard + +"cosmiconfig@npm:^5.0.0, cosmiconfig@npm:^5.1.0, cosmiconfig@npm:^5.2.1": + version: 5.2.1 + resolution: "cosmiconfig@npm:5.2.1" + dependencies: + import-fresh: ^2.0.0 + is-directory: ^0.3.1 + js-yaml: ^3.13.1 + parse-json: ^4.0.0 + checksum: 02d51fb28871d1e6114333f1109e47714e280d60ee8f05cf03bd5a0b9d0954f3d1a99b01edb3ea8147e743b2c9caa3738f745157ebddd5b93efeac324d3d5239 + languageName: node + linkType: hard + +"create-ecdh@npm:^4.0.0": + version: 4.0.4 + resolution: "create-ecdh@npm:4.0.4" + dependencies: + bn.js: ^4.1.0 + elliptic: ^6.5.3 + checksum: e8f87322b18a79e0c795c95608838ff293c3154ff8a243171e2b4d97eebb9d099b2042c265e0f1231938c6bd7945ddaf640d32bb7b43967090c377ec8c5b542d + languageName: node + linkType: hard + +"create-hash@npm:^1.1.0, create-hash@npm:^1.1.2, create-hash@npm:^1.2.0": + version: 1.2.0 + resolution: "create-hash@npm:1.2.0" + dependencies: + cipher-base: ^1.0.1 + inherits: ^2.0.1 + md5.js: ^1.3.4 + ripemd160: ^2.0.1 + sha.js: ^2.4.0 + checksum: 5565182efc3603e4d34c3ce13fd0765a058b27f91e49ba8e720e30ba8bfc53e9cd835e5343136000b6f210a979fe1041a4f3fe728e866e64f34db04b068fd725 + languageName: node + linkType: hard + +"create-hmac@npm:^1.1.0, create-hmac@npm:^1.1.4, create-hmac@npm:^1.1.7": + version: 1.1.7 + resolution: "create-hmac@npm:1.1.7" + dependencies: + cipher-base: ^1.0.3 + create-hash: ^1.1.0 + inherits: ^2.0.1 + ripemd160: ^2.0.0 + safe-buffer: ^5.0.1 + sha.js: ^2.4.8 + checksum: 98957676a93081678a2a915ae14898d65aac9b5651ffa55b8888484dd9d79c06d3cb3f85b137cd833ab536d87adee17394bb2b0efc591ea0e34110266d5bcd75 + languageName: node + linkType: hard + +"cross-fetch@npm:3.0.5": + version: 3.0.5 + resolution: "cross-fetch@npm:3.0.5" + dependencies: + node-fetch: 2.6.0 + checksum: 99f0f4ae222c611bfd45c176e95335ffb4046c662e349afcdcfad8edf9a76cefb68e6dfb6707cddf0ad23d231290346a76d70ba1205f8af4cb335eb52321b4bc + languageName: node + linkType: hard + +"cross-spawn@npm:7.0.1": + version: 7.0.1 + resolution: "cross-spawn@npm:7.0.1" + dependencies: + path-key: ^3.1.0 + shebang-command: ^2.0.0 + which: ^2.0.1 + checksum: c37c136bda1342fe8dbd40a99d9c434ef510fb9741da4d386d0f2fe3d707166fc92d8d8e815f636e7fea93cc32ecd3636bc1e5adcabdee0b4587b6d52b27f002 + languageName: node + linkType: hard + +"cross-spawn@npm:^6.0.0, cross-spawn@npm:^6.0.5": + version: 6.0.5 + resolution: "cross-spawn@npm:6.0.5" + dependencies: + nice-try: ^1.0.4 + path-key: ^2.0.1 + semver: ^5.5.0 + shebang-command: ^1.2.0 + which: ^1.2.9 + checksum: 05fbbf957d9b81dc05fd799a238f6aacc2e7cc9783fff3f0e00439a97d6f269c90482571cbf1eeea17200fd119161a2d1f88aa49a8110b176e04f2a70825284f + languageName: node + linkType: hard + +"cross-spawn@npm:^7.0.0, cross-spawn@npm:^7.0.2": + version: 7.0.3 + resolution: "cross-spawn@npm:7.0.3" + dependencies: + path-key: ^3.1.0 + shebang-command: ^2.0.0 + which: ^2.0.1 + checksum: 51f10036f5f1de781be98f4738d58b50c6d44f4f471069b8ab075b21605893ba1548654880f7310a29a732d6fc7cd481da6026169b9f0831cab0148a62fb397a + languageName: node + linkType: hard + +"crypto-browserify@npm:^3.11.0": + version: 3.12.0 + resolution: "crypto-browserify@npm:3.12.0" + dependencies: + browserify-cipher: ^1.0.0 + browserify-sign: ^4.0.0 + create-ecdh: ^4.0.0 + create-hash: ^1.1.0 + create-hmac: ^1.1.0 + diffie-hellman: ^5.0.0 + inherits: ^2.0.1 + pbkdf2: ^3.0.3 + public-encrypt: ^4.0.0 + randombytes: ^2.0.0 + randomfill: ^1.0.3 + checksum: 8b558367b3759652b7c8dfd8fa0dc55a69362ae3efe039ac44d4b010bc63143708f4748ef8efc079945bf61dbc53c829cda968cd2abc1f34fcf43f669a414f73 + languageName: node + linkType: hard + +"crypto-random-string@npm:^2.0.0": + version: 2.0.0 + resolution: "crypto-random-string@npm:2.0.0" + checksum: 7bc19f6cafe3194a434198c9414941cc36d874e1f85b6fcba573b5623f77a440c0a10a94c0d0da26d7d23d85b6fe07354e589ef1a0fe2d7b32e0bab9e70ca4c1 + languageName: node + linkType: hard + +"css-blank-pseudo@npm:^0.1.4": + version: 0.1.4 + resolution: "css-blank-pseudo@npm:0.1.4" + dependencies: + postcss: ^7.0.5 + bin: + css-blank-pseudo: cli.js + checksum: 605927ba911aa22820de56db3ce5760a7d8936834447c5e30e20f63f141a8787920a0aa8dd7fdde97823ee0619e76e003a6e66f2ff299d49e8574b12ed300a7f + languageName: node + linkType: hard + +"css-color-names@npm:0.0.4, css-color-names@npm:^0.0.4": + version: 0.0.4 + resolution: "css-color-names@npm:0.0.4" + checksum: 6842f38c3ae176f9beef3f92be258936aa508d5c4aa6dca48abfc324574eeda275e265dd0589d6e7a9a29768b6d6dd5ab7c4de27b8255c6142330fde84821af2 + languageName: node + linkType: hard + +"css-declaration-sorter@npm:^4.0.1": + version: 4.0.1 + resolution: "css-declaration-sorter@npm:4.0.1" + dependencies: + postcss: ^7.0.1 + timsort: ^0.3.0 + checksum: 9cd18a0cca0e8e983ca3cd59461c05b650c244e0fbf28810e20ec8478dd715701538bf097980b50b92aed916825fd706d0546a8fd203b6e81612b7a67184bf98 + languageName: node + linkType: hard + +"css-has-pseudo@npm:^0.10.0": + version: 0.10.0 + resolution: "css-has-pseudo@npm:0.10.0" + dependencies: + postcss: ^7.0.6 + postcss-selector-parser: ^5.0.0-rc.4 + bin: + css-has-pseudo: cli.js + checksum: 8bfb4c7d426f4b0b660d1a72ed0c652fd58b3b2203f629ebffcb2bdc278e2e9de2319fe3bddde9f0d2de3d7cb42f0905f5de49802bd9a40f512fd782013eb7b9 + languageName: node + linkType: hard + +"css-loader@npm:3.4.2": + version: 3.4.2 + resolution: "css-loader@npm:3.4.2" + dependencies: + camelcase: ^5.3.1 + cssesc: ^3.0.0 + icss-utils: ^4.1.1 + loader-utils: ^1.2.3 + normalize-path: ^3.0.0 + postcss: ^7.0.23 + postcss-modules-extract-imports: ^2.0.0 + postcss-modules-local-by-default: ^3.0.2 + postcss-modules-scope: ^2.1.1 + postcss-modules-values: ^3.0.0 + postcss-value-parser: ^4.0.2 + schema-utils: ^2.6.0 + peerDependencies: + webpack: ^4.0.0 || ^5.0.0 + checksum: 712740d2e318fa5d5b6bfcd94f527955f72e02f1987bb2c1ded549cd8a51cdd33e1893f4bead5a66d26ddc1f0bc6331ef469c7ab305b48c49bd0d9810bb9fae7 + languageName: node + linkType: hard + +"css-loader@npm:^3.4.2": + version: 3.6.0 + resolution: "css-loader@npm:3.6.0" + dependencies: + camelcase: ^5.3.1 + cssesc: ^3.0.0 + icss-utils: ^4.1.1 + loader-utils: ^1.2.3 + normalize-path: ^3.0.0 + postcss: ^7.0.32 + postcss-modules-extract-imports: ^2.0.0 + postcss-modules-local-by-default: ^3.0.2 + postcss-modules-scope: ^2.2.0 + postcss-modules-values: ^3.0.0 + postcss-value-parser: ^4.1.0 + schema-utils: ^2.7.0 + semver: ^6.3.0 + peerDependencies: + webpack: ^4.0.0 || ^5.0.0 + checksum: f916e1dc6914e9fda52e81e603e5afd8cf68c866d9d1cb84edf245fa3ce6bec4252be841edc694c8f6aeb855c94dbde1baccb44678f0b652bbb8fb7ca68a1a0a + languageName: node + linkType: hard + +"css-prefers-color-scheme@npm:^3.1.1": + version: 3.1.1 + resolution: "css-prefers-color-scheme@npm:3.1.1" + dependencies: + postcss: ^7.0.5 + bin: + css-prefers-color-scheme: cli.js + checksum: 3ef06a7a427658f1ac0772d253990a70748d9f19e0e5b92d26430b3522f982a38195df79fd3d1eb45241a35d0f253d7a36e295a6a91d130d2ea45e90363ba8f8 + languageName: node + linkType: hard + +"css-select-base-adapter@npm:^0.1.1": + version: 0.1.1 + resolution: "css-select-base-adapter@npm:0.1.1" + checksum: 98cea0d8dc35e5660a80713b09c7be01a09405ca3d396122d02f65e76b8acab612b7ddd32b29bdd49f32b1e128239ca67c4b6d820912f283197306e58285d85c + languageName: node + linkType: hard + +"css-select@npm:^1.1.0, css-select@npm:~1.2.0": + version: 1.2.0 + resolution: "css-select@npm:1.2.0" + dependencies: + boolbase: ~1.0.0 + css-what: 2.1 + domutils: 1.5.1 + nth-check: ~1.0.1 + checksum: c1fdd9040c677cd872e57761aafce8b603fa3c979117cc9d70e0e4901d6e0c751abe3b05b93d918835413165916d7f7132559a6f350863124f6bbbec2b1694d8 + languageName: node + linkType: hard + +"css-select@npm:^2.0.0": + version: 2.1.0 + resolution: "css-select@npm:2.1.0" + dependencies: + boolbase: ^1.0.0 + css-what: ^3.2.1 + domutils: ^1.7.0 + nth-check: ^1.0.2 + checksum: b534aad04abbd433849d55b93e234b81c1ade4422c638a916fd7163db5a3b07186e92ce43c292d954417c8ce020eb31b8990ed2fb30c9c145c7f2549621e8095 + languageName: node + linkType: hard + +"css-tree@npm:1.0.0-alpha.37": + version: 1.0.0-alpha.37 + resolution: "css-tree@npm:1.0.0-alpha.37" + dependencies: + mdn-data: 2.0.4 + source-map: ^0.6.1 + checksum: 29d85bad8e8039bd77e2d8a754d61e3cbfac3b4e8556ecf2db186212567e310124aa000a46d442fd4fb9b31b32e723453fade25bf052c3cd4995781d1dad1fcf + languageName: node + linkType: hard + +"css-tree@npm:1.0.0-alpha.39": + version: 1.0.0-alpha.39 + resolution: "css-tree@npm:1.0.0-alpha.39" + dependencies: + mdn-data: 2.0.6 + source-map: ^0.6.1 + checksum: 2b3b48563f07d1636153a439f076565b125f5b64690736266c1833d5274c55f68b467ac5d648a5387121f7b1ff1f6e709a80f89824e345a17417994a34749403 + languageName: node + linkType: hard + +"css-vendor@npm:^2.0.8": + version: 2.0.8 + resolution: "css-vendor@npm:2.0.8" + dependencies: + "@babel/runtime": ^7.8.3 + is-in-browser: ^1.0.2 + checksum: a185d200db498b77df517c5378c760bcdcc5104e6fee046f8c8c399d7d3708e6b4f292f05a27f6b5dae7a3539caa63884a10cb72a45f75749bae73ac87175ed4 + languageName: node + linkType: hard + +"css-what@npm:2.1": + version: 2.1.3 + resolution: "css-what@npm:2.1.3" + checksum: 732fcecfe3247eadd79081790934f9aa003ca935657d87a4737afc03dc378f8f3d1a071066328a226d98299d15e855c886f625119fe1d7f2367659d3335bde6f + languageName: node + linkType: hard + +"css-what@npm:^3.2.1": + version: 3.3.0 + resolution: "css-what@npm:3.3.0" + checksum: 4e00fc59a9b38f4412a17e5f265b4b019ad7c1512338f17cffe589cfa0e7c1d968fba5425c82c24d6334aa22b82ffafd034e1a6206467774223bd8632609f6c7 + languageName: node + linkType: hard + +"css@npm:^2.0.0": + version: 2.2.4 + resolution: "css@npm:2.2.4" + dependencies: + inherits: ^2.0.3 + source-map: ^0.6.1 + source-map-resolve: ^0.5.2 + urix: ^0.1.0 + checksum: b94365b3c07c35529beab95f679102c66d1027774c2e80f5179a6ee11ccc440046aeb7771df33569334bbdfd8ea753dd132197040dc079fcd881141348a1886f + languageName: node + linkType: hard + +"cssdb@npm:^4.4.0": + version: 4.4.0 + resolution: "cssdb@npm:4.4.0" + checksum: 457af51749239fccace2760bc9e49a211d72a992dde98f6b737cd9bebe44da3da323a96835cb3d7c48927c491e940d6985ba345da9a9467581242152745d9659 + languageName: node + linkType: hard + +"cssesc@npm:^2.0.0": + version: 2.0.0 + resolution: "cssesc@npm:2.0.0" + bin: + cssesc: bin/cssesc + checksum: f32fabda44dbedacb03a1b393579696594effce89da0a3dd2614ce827b803e4fdf747031bb0bd72784d5558fa077211cddfb20a3dc1326815810b301cb7baab6 + languageName: node + linkType: hard + +"cssesc@npm:^3.0.0": + version: 3.0.0 + resolution: "cssesc@npm:3.0.0" + bin: + cssesc: bin/cssesc + checksum: 673783eda1f89af3faefc0e4b833f40621f484ce102a23396e7a65cc4c42798bd91ee3656c8b04a0a5ca38d40ada5bc8663e4541c380a7a81af2de5b2322e443 + languageName: node + linkType: hard + +"cssfilter@npm:0.0.10": + version: 0.0.10 + resolution: "cssfilter@npm:0.0.10" + checksum: 0a5cdc209e35ff0db9b0271846162ad9c0fdd7e612b217b88cfe6f1da5428b156369f17bab7f5f32f9d49b66daec912c188ef836735f499d87cafd824f3e9308 + languageName: node + linkType: hard + +"cssnano-preset-default@npm:^4.0.7": + version: 4.0.7 + resolution: "cssnano-preset-default@npm:4.0.7" + dependencies: + css-declaration-sorter: ^4.0.1 + cssnano-util-raw-cache: ^4.0.1 + postcss: ^7.0.0 + postcss-calc: ^7.0.1 + postcss-colormin: ^4.0.3 + postcss-convert-values: ^4.0.1 + postcss-discard-comments: ^4.0.2 + postcss-discard-duplicates: ^4.0.2 + postcss-discard-empty: ^4.0.1 + postcss-discard-overridden: ^4.0.1 + postcss-merge-longhand: ^4.0.11 + postcss-merge-rules: ^4.0.3 + postcss-minify-font-values: ^4.0.2 + postcss-minify-gradients: ^4.0.2 + postcss-minify-params: ^4.0.2 + postcss-minify-selectors: ^4.0.2 + postcss-normalize-charset: ^4.0.1 + postcss-normalize-display-values: ^4.0.2 + postcss-normalize-positions: ^4.0.2 + postcss-normalize-repeat-style: ^4.0.2 + postcss-normalize-string: ^4.0.2 + postcss-normalize-timing-functions: ^4.0.2 + postcss-normalize-unicode: ^4.0.1 + postcss-normalize-url: ^4.0.1 + postcss-normalize-whitespace: ^4.0.2 + postcss-ordered-values: ^4.1.2 + postcss-reduce-initial: ^4.0.3 + postcss-reduce-transforms: ^4.0.2 + postcss-svgo: ^4.0.2 + postcss-unique-selectors: ^4.0.1 + checksum: 7e947b0e09c15816638ff6e8cc881f58a99532271a94e7fc259e01a89e6eececb4a028f931d6940fd44c27f3134c54146a7b877cfa7497cd24fc5e299c493a51 + languageName: node + linkType: hard + +"cssnano-util-get-arguments@npm:^4.0.0": + version: 4.0.0 + resolution: "cssnano-util-get-arguments@npm:4.0.0" + checksum: 40017863677fe03979bf6d8f3cbddbba58913e6257e50eaad65c5b0de567a2e4d704b889919d299f6a8efa272cf89b862481c04e9a0faea4f2fc4dc501abd7ee + languageName: node + linkType: hard + +"cssnano-util-get-match@npm:^4.0.0": + version: 4.0.0 + resolution: "cssnano-util-get-match@npm:4.0.0" + checksum: 1220816e194911db505ea7f0489a5e966914de726ef2c753562a0cc4e31f184a09409806aa18fb07c4d97e68c0c950f2ad60b91c946954240f22356d256eb568 + languageName: node + linkType: hard + +"cssnano-util-raw-cache@npm:^4.0.1": + version: 4.0.1 + resolution: "cssnano-util-raw-cache@npm:4.0.1" + dependencies: + postcss: ^7.0.0 + checksum: d3eb80e96fc680e7b764ed8d622fbe860c7b80e831fb00552717d618c220940ba595cdd471b69bcf5b7d38fbb176d132512e68f6501e197cd10baa726f4d8cbd + languageName: node + linkType: hard + +"cssnano-util-same-parent@npm:^4.0.0": + version: 4.0.1 + resolution: "cssnano-util-same-parent@npm:4.0.1" + checksum: c01d567f9d1e867c3e591338bbfff5fb96dd6843ce0b78cda012a0096dae8c05237d4aedeeadebfbf5e1555c567d40cbc940bf44afc2716c1d077d7c8d907579 + languageName: node + linkType: hard + +"cssnano@npm:^4.1.10": + version: 4.1.10 + resolution: "cssnano@npm:4.1.10" + dependencies: + cosmiconfig: ^5.0.0 + cssnano-preset-default: ^4.0.7 + is-resolvable: ^1.0.0 + postcss: ^7.0.0 + checksum: 7578b1238992f6226e3aaa104fecfac97224ebebb20e58910ce71c6a8f966d2ee116ea1e9bc6c7a59dbf79941feb875452149938d34642898b19de87ff728e01 + languageName: node + linkType: hard + +"csso@npm:^4.0.2": + version: 4.0.3 + resolution: "csso@npm:4.0.3" + dependencies: + css-tree: 1.0.0-alpha.39 + checksum: b573974336bd5aef7ff71ae294b6664602b186e4ea6ad4b3dbd22fcf7ddeb89eddd5b6f06ad2cb6eebff882d3ab39096f211ed4d9abf4a6c1fde446d9829f9f9 + languageName: node + linkType: hard + +"cssom@npm:0.3.x, cssom@npm:>= 0.3.2 < 0.4.0, cssom@npm:^0.3.4, cssom@npm:~0.3.6": + version: 0.3.8 + resolution: "cssom@npm:0.3.8" + checksum: b7fb8b13aa2014a6c168c7644baa2f4d447a28b624544c87c8ef905bbec64ef247b3d167270f87e043acc6df30ea0f80e0da545a45187ff4006eb2c24988dfae + languageName: node + linkType: hard + +"cssom@npm:^0.4.4": + version: 0.4.4 + resolution: "cssom@npm:0.4.4" + checksum: db81cac44219b20d76b06f51d2614cead098478d1323b2df5e4b5d25bdc3f16d8474c3d45ae28f594a0933691c774fc2102837df66ccf375e280b0728ad53c5f + languageName: node + linkType: hard + +"cssstyle@npm:^1.0.0, cssstyle@npm:^1.1.1": + version: 1.4.0 + resolution: "cssstyle@npm:1.4.0" + dependencies: + cssom: 0.3.x + checksum: 5c138c9b0761a2826929ba1af06d541968c8ce2e147bc88719a9219554dbc2a7e48d2507936b4837c4cd75c07fa4988e51c6fe96dd96a45cd404c8a0012a46d3 + languageName: node + linkType: hard + +"cssstyle@npm:^2.2.0": + version: 2.3.0 + resolution: "cssstyle@npm:2.3.0" + dependencies: + cssom: ~0.3.6 + checksum: a778180d2f5eef44742b7083997a0ad6e59eee016724ceac4d6229e48842d3c5ebbb55dc02c555f793bdc486254f6eef8d2049c1815e8fc74514e3eb827d49ec + languageName: node + linkType: hard + +"csstype@npm:^2.2.0, csstype@npm:^2.5.2, csstype@npm:^2.6.5": + version: 2.6.13 + resolution: "csstype@npm:2.6.13" + checksum: 0a84ef4b068e464039ee4cc79e621a38b4b8b5c683fd12d42dbb810e6457ac454c3c7e578e4d327f958fc563fc03aec0e74b57180abd5804d6e2590ae3cf7086 + languageName: node + linkType: hard + +"csstype@npm:^3.0.2": + version: 3.0.2 + resolution: "csstype@npm:3.0.2" + checksum: acf2852a3c5f5e1ed84e36526e41584e09353ee57b9bd93bf17f91bd2be60545adaf86c4439b84952d1f596149e06f9da6bb28c1d1ab883c9b2ad68e143e79f4 + languageName: node + linkType: hard + +"currently-unhandled@npm:^0.4.1": + version: 0.4.1 + resolution: "currently-unhandled@npm:0.4.1" + dependencies: + array-find-index: ^1.0.1 + checksum: 1968b4b57677da838b8b3f0db806e1eb4f59cc95addb6e0fd3098703fe31a3e7e5e437f253aa74408a80699e7cc59947881a7e678d0ced887619077dcccdf70f + languageName: node + linkType: hard + +"cyclist@npm:^1.0.1": + version: 1.0.1 + resolution: "cyclist@npm:1.0.1" + checksum: 74bc0a48c37bed8a430f103d0a880902768b7e3bcc0f9e098c4bd9630438c6b053b88e33c127e41316bb2da8d642a937015961a6cd563641ad2a5798dfecadd9 + languageName: node + linkType: hard + +"d@npm:1, d@npm:^1.0.1": + version: 1.0.1 + resolution: "d@npm:1.0.1" + dependencies: + es5-ext: ^0.10.50 + type: ^1.0.1 + checksum: cf9b770965fa4876f7aff46784e4f1a1ee71cc5df7e05c9c36bee52a74340b312b6f7ab224c8bfcc83f4b18c6f6a24e7b50bcd449ba4464c1df69874941324ae + languageName: node + linkType: hard + +"damerau-levenshtein@npm:^1.0.4": + version: 1.0.6 + resolution: "damerau-levenshtein@npm:1.0.6" + checksum: 46fbf25fc5cef33e8192ce6141c45bc8e265d7da63fdbca2f34b4bcfb580d28e8a30414b356ff0057bed018edccda1cb20d4ba16bd7ab34f14fcaa818bd4b88d + languageName: node + linkType: hard + +"dargs@npm:^4.0.1": + version: 4.1.0 + resolution: "dargs@npm:4.1.0" + dependencies: + number-is-nan: ^1.0.0 + checksum: 27345b5881a0a56d46ca627e15966683e3fae1dc1a455315942f533756202ec0a2860e4bdced675bacff249866bf14424184d6d751f6d7bbd0e9798afc576ab4 + languageName: node + linkType: hard + +"dashdash@npm:^1.12.0": + version: 1.14.1 + resolution: "dashdash@npm:1.14.1" + dependencies: + assert-plus: ^1.0.0 + checksum: 5959409ee42dc4bdbf3fa384b801ece580ca336658bb0342ffab0099b3fc6bf9b3e239e1b82dcc4fcaeee315353e08f2eae47b0928a6a579391598c44958afa1 + languageName: node + linkType: hard + +"data-urls@npm:^1.0.0, data-urls@npm:^1.1.0": + version: 1.1.0 + resolution: "data-urls@npm:1.1.0" + dependencies: + abab: ^2.0.0 + whatwg-mimetype: ^2.2.0 + whatwg-url: ^7.0.0 + checksum: 04d211e1e9f83bab75450487da34b124b32beacd1ad0df96e3a747b705c24c65579833a04a6ea30a528ea5b99d5247660408c513b38905bf855f2de585b9e91c + languageName: node + linkType: hard + +"data-urls@npm:^2.0.0": + version: 2.0.0 + resolution: "data-urls@npm:2.0.0" + dependencies: + abab: ^2.0.3 + whatwg-mimetype: ^2.3.0 + whatwg-url: ^8.0.0 + checksum: 42239927c6a202e2d02b7f41c94ca53e3cea036898b97b8bf6120ed1b25e0dd11c48ec7aa5c84cf807c2cb9f3a637df9fb50f3ca25a52863186a4ac46254726b + languageName: node + linkType: hard + +"date-fns@npm:^1.27.2": + version: 1.30.1 + resolution: "date-fns@npm:1.30.1" + checksum: 351fc19b04d79de77823a90213b87039392528fdd44a42e3e87f28333e76a48f99e4fbb37c9823b6284f7eb0ef88368fafe61749d6eff173241170977751fa47 + languageName: node + linkType: hard + +"date-fns@npm:^2.0.1": + version: 2.15.0 + resolution: "date-fns@npm:2.15.0" + checksum: 045c172823f361aa466338a2d2670629b2639ad33da22d5f4012d97e2726e92d8fc617a0d6c815a11086a0e6d2226192c2191c4d5c0d898c5a978794f21007cb + languageName: node + linkType: hard + +"dateformat@npm:^3.0.0": + version: 3.0.3 + resolution: "dateformat@npm:3.0.3" + checksum: 8e6b36c4d3d057b6b43a2d9eceb1373aae6a63050153449e26c71b84ecefb1bafc54ff3f7f1e2b8bee3851a2425c1052aaa7c1ed3307b8ff062f38a816d40933 + languageName: node + linkType: hard + +"de-indent@npm:^1.0.2": + version: 1.0.2 + resolution: "de-indent@npm:1.0.2" + checksum: a1933a4328d053d9b0db447668521a6d0360b509c115dc5340420fd645be556c00b82e491d6b862249981ed22fbf2016080b222ad23c25038aba72cb8e3120ea + languageName: node + linkType: hard + +"debounce@npm:1.2.0": + version: 1.2.0 + resolution: "debounce@npm:1.2.0" + checksum: 3eb07f76c54f3563d9183aff9a28c61864aa65c3f5f17acc227ce28dc55fb96faa680aebe3c898af17d3e4dfb6cfb92df6179fa9d5566111b129e1de19cfc7e0 + languageName: node + linkType: hard + +"debug@npm:2.6.9, debug@npm:^2.2.0, debug@npm:^2.3.3, debug@npm:^2.6.0, debug@npm:^2.6.9": + version: 2.6.9 + resolution: "debug@npm:2.6.9" + dependencies: + ms: 2.0.0 + checksum: 559f44f98cf25e2ee489022aec173afbff746564cb108c4493becb95bc3c017a67bdaa25a0ff64801fd32c35051d00af0e56cc7f762ae2c3bc089496e5a1c31b + languageName: node + linkType: hard + +"debug@npm:3.1.0": + version: 3.1.0 + resolution: "debug@npm:3.1.0" + dependencies: + ms: 2.0.0 + checksum: 1295acd5e0531761255661d325cd0a80ac8c5f6de8942a53bb23c2197ccb97526972de662ed0e5d9393be83f3428a298a6e7185ecb02f0da6282019cd2ffb4a8 + languageName: node + linkType: hard + +"debug@npm:4, debug@npm:^4.0.1, debug@npm:^4.1.0, debug@npm:^4.1.1": + version: 4.2.0 + resolution: "debug@npm:4.2.0" + dependencies: + ms: 2.1.2 + peerDependencies: + supports-color: "*" + peerDependenciesMeta: + supports-color: + optional: true + checksum: dcfb8ede26b4d899628a75806923ab9ad29daae7db0f6f1ca6227b660693ae0ca085c7f87261793abe0832ad56aff2afc33f907c6b5dc96a41fc208771feb465 + languageName: node + linkType: hard + +"debug@npm:^3.1.0, debug@npm:^3.1.1, debug@npm:^3.2.5, debug@npm:^3.2.6": + version: 3.2.6 + resolution: "debug@npm:3.2.6" + dependencies: + ms: ^2.1.1 + checksum: 619feb53b115f1a8341365b8aa58a8757e6632738587d4b61b25627b74891211cb20e31fdbea37fec766e575a60cf456f7a02d6f9eddfdcef80caa6a4b0fc042 + languageName: node + linkType: hard + +"debuglog@npm:^1.0.1": + version: 1.0.1 + resolution: "debuglog@npm:1.0.1" + checksum: 570fab098ed51463ff103d5dc988dfc92520ac5137c7d9d0d334a2a91aee61d3923e2c5b0dff61e2478024d2892b0ef67ef7a54789e535bc162e0b54aa8f1939 + languageName: node + linkType: hard + +"decamelize-keys@npm:^1.0.0, decamelize-keys@npm:^1.1.0": + version: 1.1.0 + resolution: "decamelize-keys@npm:1.1.0" + dependencies: + decamelize: ^1.1.0 + map-obj: ^1.0.0 + checksum: dbfe6d594810ef134f8e3b8aa1684c854187a225999a0c3871b8c32d8fda886d1832b79b952a53e9557be17a78ec0198b6c26a5a5a35d012d6b18340a4dc6356 + languageName: node + linkType: hard + +"decamelize@npm:^1.1.0, decamelize@npm:^1.1.2, decamelize@npm:^1.2.0": + version: 1.2.0 + resolution: "decamelize@npm:1.2.0" + checksum: 8ca9d03ea8ac07920f4504e219d18edff2491bdd0a3e05a1e5ca2e9a0bf6333564231de3528b01d5e76c40a38c37bbc1e09cb5a0424714f53dd615ed78ced464 + languageName: node + linkType: hard + +"decimal.js@npm:^10.2.0": + version: 10.2.0 + resolution: "decimal.js@npm:10.2.0" + checksum: f60df1cce54e4b717cf9b865cbacf667ee67747563a4e84a2ebe8fd65fd57814a3ba6eba0870345fe37aea574ecbb84b3642a6e4e7a9089d3c7fbff8247e3c7f + languageName: node + linkType: hard + +"decode-uri-component@npm:^0.2.0": + version: 0.2.0 + resolution: "decode-uri-component@npm:0.2.0" + checksum: d8cb28c33f7b0a70b159b5fa126aee821ba090396689bd46ad2c423c3a658c504d2743ab18060fd5ed1cae5377bdd3632760a8e98ba920ff49637d43dc6a9687 + languageName: node + linkType: hard + +"decompress-response@npm:^3.3.0": + version: 3.3.0 + resolution: "decompress-response@npm:3.3.0" + dependencies: + mimic-response: ^1.0.0 + checksum: 93b0dcc8f0c32f1d5eb656e7db54fa5554227b8bfefd242c9d28f7b9c3908052c2ab8297b4af6256759da496679ee3a806d559f22d29b7e71a25879a2c25b99b + languageName: node + linkType: hard + +"dedent@npm:^0.7.0": + version: 0.7.0 + resolution: "dedent@npm:0.7.0" + checksum: 05c18541a4b932006a65eccaf03d68ac60552981db424f39f1ca4bebf5beaa53d318eadbb4dc0be24232844e69d1140763a7ada94559b2cb7771a47c0a829aeb + languageName: node + linkType: hard + +"deep-equal@npm:^1.0.1": + version: 1.1.1 + resolution: "deep-equal@npm:1.1.1" + 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 + checksum: cc6a0009ce73a10230758d50795211fb3ceb7eb7f2cf8baed1c4a4cb2a06dc28857ce11e641c95ca9abb5edc1f1e86a4bb6bcffaadf9fe9d310c102d346d043b + languageName: node + linkType: hard + +"deep-extend@npm:^0.6.0": + version: 0.6.0 + resolution: "deep-extend@npm:0.6.0" + checksum: 856d7f52db152c19fc5a70439ea938461cfb9338a632496fe370050dc73d3291cd76fc6713f604a5c126612dee9cac0f6da1d4b88ba4b0caa4f7214345879b89 + languageName: node + linkType: hard + +"deep-is@npm:^0.1.3, deep-is@npm:~0.1.3": + version: 0.1.3 + resolution: "deep-is@npm:0.1.3" + checksum: 3de58f86af4dec86c8be531a5abaf2e6d8ea98fa2f1d81a3a778d0d8df920ee282043a6ef05bfb4eb699c8551df9ac1b808d4dc71d54cc40ab1efa5ce8792943 + languageName: node + linkType: hard + +"deepmerge@npm:4.2.2, deepmerge@npm:^4.2.2": + version: 4.2.2 + resolution: "deepmerge@npm:4.2.2" + checksum: 85abf8e0045ee280996e7d2396979c877ef0741e413b716e42441110e0a83ac08098b2a49cea035510060bf667c0eae3189b2a52349f5fa4b000c211041637b1 + languageName: node + linkType: hard + +"deepmerge@npm:^2.1.1": + version: 2.2.1 + resolution: "deepmerge@npm:2.2.1" + checksum: 8394eb5ab19010e4e856e96ffb570528cad00e4af35e1e774898b52fd986fa6840dbce3e9217a7a1e38683c170cf0cbfe19c67323b89d329afad0ffa72db382e + languageName: node + linkType: hard + +"default-gateway@npm:^4.2.0": + version: 4.2.0 + resolution: "default-gateway@npm:4.2.0" + dependencies: + execa: ^1.0.0 + ip-regex: ^2.1.0 + checksum: 5d92439d573a261d850f6205fcc6541ec57378dec2032f3c7d0a18c7f9222f88f7ff4997bfff17607850b8fce6cdf3fb1c231bc43bf5e2bd6bbce3b733082add + languageName: node + linkType: hard + +"defaults@npm:^1.0.3": + version: 1.0.3 + resolution: "defaults@npm:1.0.3" + dependencies: + clone: ^1.0.2 + checksum: 974f63dd0acb79d14e94ac0f2ea69a880ab2a6e4b341bb9bdc2409b4091b928abe2709a4e140528948d02f29c286efdef22851d1dc972636eed2ce8e1c5b7465 + languageName: node + linkType: hard + +"defer-to-connect@npm:^1.0.1": + version: 1.1.3 + resolution: "defer-to-connect@npm:1.1.3" + checksum: d8632cafae79a077b894c17f92d668784ad83825150d31c107df4fafc39f351ecd5112e0c75e0c2886c29ea359faf299bbb73246af71607b1e5b0d1ecc496ebf + languageName: node + linkType: hard + +"define-properties@npm:^1.1.2, define-properties@npm:^1.1.3": + version: 1.1.3 + resolution: "define-properties@npm:1.1.3" + dependencies: + object-keys: ^1.0.12 + checksum: b69c48c1b1dacb61f0b1cea367707c3bb214e3c47818aff18e6f20a7f88cbfa33d4cbdfd9ff79e56faba95ddca3d78ff10fbf2f02ecfad6f3e13b256e76b1212 + languageName: node + linkType: hard + +"define-property@npm:^0.2.5": + version: 0.2.5 + resolution: "define-property@npm:0.2.5" + dependencies: + is-descriptor: ^0.1.0 + checksum: 6fed0540727ca8ea1f5eacddf24bf9e8c212c07f638ef0cd743caa69647f0421cd72a17b466d4c378c5c0f232ad756fa92b90f8e1d975ddfec388dc6306e3583 + languageName: node + linkType: hard + +"define-property@npm:^1.0.0": + version: 1.0.0 + resolution: "define-property@npm:1.0.0" + dependencies: + is-descriptor: ^1.0.0 + checksum: 9034f8f6f3128945374349262e4f97b53e9582f9e3435bedb284c5210c45a98b355d40a42a570766add34a604d97b6ff0773bfd122f891a289009a1b82cc0eee + languageName: node + linkType: hard + +"define-property@npm:^2.0.2": + version: 2.0.2 + resolution: "define-property@npm:2.0.2" + dependencies: + is-descriptor: ^1.0.2 + isobject: ^3.0.1 + checksum: 00c7ec53b5040507016736922a9678b3247bc85e0ea0429e47d6ca6a993890f9dc338fb19d5bf6f8c0ca29016a68aa7e7da5c35d4ed8b3646347d86a3b2b4b01 + languageName: node + linkType: hard + +"del@npm:^4.1.1": + version: 4.1.1 + resolution: "del@npm:4.1.1" + dependencies: + "@types/glob": ^7.1.1 + globby: ^6.1.0 + is-path-cwd: ^2.0.0 + is-path-in-cwd: ^2.0.0 + p-map: ^2.0.0 + pify: ^4.0.1 + rimraf: ^2.6.3 + checksum: 87eecb2af52e794f8d9c8d200a31e0032cec8c255f08a97ef28be771bf561f16023746f2329d7b436e0a1fe09abafe80a25b2546131aa809cbd9a6bf49220cf3 + languageName: node + linkType: hard + +"del@npm:^5.1.0": + version: 5.1.0 + resolution: "del@npm:5.1.0" + dependencies: + globby: ^10.0.1 + graceful-fs: ^4.2.2 + is-glob: ^4.0.1 + is-path-cwd: ^2.2.0 + is-path-inside: ^3.0.1 + p-map: ^3.0.0 + rimraf: ^3.0.0 + slash: ^3.0.0 + checksum: e9de3180b2a5742adf877d1acdf1721fe42a27ea86890a9f19e949697ac4d972ba505e912df023a8b5ef04c1b5989a02e8451fd52fa6d3487b8745c21456efc6 + languageName: node + linkType: hard + +"delayed-stream@npm:~1.0.0": + version: 1.0.0 + resolution: "delayed-stream@npm:1.0.0" + checksum: d9dfb0a7c79fd308fada9db2cf29d1ff22047ceb50dd78f7e3c173567909b438f418259cb76a6d9c9f513e88ef41d3a14154f618741ec8368c3efeff616d0c9f + languageName: node + linkType: hard + +"delegate@npm:^3.1.2": + version: 3.2.0 + resolution: "delegate@npm:3.2.0" + checksum: ccbbf29eb436719e4ffef06a1df2635a150f229f8ae549f4b6e118e940b17917e063c939541c6e23f38675d30acf424ecca9a8d1cca2a874d63fa0c257b0811f + languageName: node + linkType: hard + +"delegates@npm:^1.0.0": + version: 1.0.0 + resolution: "delegates@npm:1.0.0" + checksum: 7459e34d29cadd9bfd340728bfcc70ea96da5d940fb197298b523f805822680e583cba3ec34d36a18004325f1ec9de55e202a92b414d01db18cd87bb8a2ae5bd + languageName: node + linkType: hard + +"denque@npm:^1.1.0, denque@npm:^1.4.1": + version: 1.4.1 + resolution: "denque@npm:1.4.1" + checksum: 174e81b3c9407b2149216d9e793fb91d901c19b1225dceefdafe32d5abeca243382ffee9bb111a1f60e42d2791b457d029bb57379d48404b2fb351bf700b6a8c + languageName: node + linkType: hard + +"depd@npm:~1.1.2": + version: 1.1.2 + resolution: "depd@npm:1.1.2" + checksum: f45566ff7019a346852f095768a380778ed544de24e103b479fd5d3e61982d670efbb5234c09d0588d7fdb09c26c48283d7150e4be5e6ce5d3d37cd268d75c4d + languageName: node + linkType: hard + +"depd@npm:~2.0.0": + version: 2.0.0 + resolution: "depd@npm:2.0.0" + checksum: 20726d843f5ab5e933211fcb5a440a1a3986ef9d6f85d38cf1eae815ea3cc12fa4436bd35a38e21bdb391a021b57f2d97b9f856873852506acac1b07ac913ba4 + languageName: node + linkType: hard + +"dependency-graph@npm:0.9.0, dependency-graph@npm:^0.9.0": + version: 0.9.0 + resolution: "dependency-graph@npm:0.9.0" + checksum: bd4be777ce16fd5412db9cf7df3c7a5e76bd2029a79b624db716e130ed7efaf606f3086234fc26fa9f317db4a2760006cb6397d165b14a314f1bb50a1c632e2c + languageName: node + linkType: hard + +"deprecated-decorator@npm:^0.1.6": + version: 0.1.6 + resolution: "deprecated-decorator@npm:0.1.6" + checksum: 35a358b89b0ca582266b5a2ce73e088658af576508463f1f608f0e7e08bf2fe3395651209a2d431d2c6901ebfafc483bc7318b8bb82d3b3585fcbd6e6c3d65de + languageName: node + linkType: hard + +"deprecation@npm:^2.0.0, deprecation@npm:^2.3.1": + version: 2.3.1 + resolution: "deprecation@npm:2.3.1" + checksum: 59343a0b927c5b6f67abb899fda68bf42b132c05ef1a985952c1e220c41fe5035b2d54a28c7c2a8b5239075d1dc25c83340242ada75f1c06c1bb047176f05f9b + languageName: node + linkType: hard + +"des.js@npm:^1.0.0": + version: 1.0.1 + resolution: "des.js@npm:1.0.1" + dependencies: + inherits: ^2.0.1 + minimalistic-assert: ^1.0.0 + checksum: 74cd0aa0c57b5db03fb8084d6083016fa8f2b98a3f34fb6ae26ad505fa75c78e064be9b7b987e99485d9cc8696fd87a9c86d9309591a184d3dee8d438038c53c + languageName: node + linkType: hard + +"destroy@npm:~1.0.4": + version: 1.0.4 + resolution: "destroy@npm:1.0.4" + checksum: 5a516fc5a8a8089eecdac11da2339353542be7a71102dc5a1372ef6161501bf5c1ee59ff9f8a3f5f14cc8c88594d606f855f816d46a228ee5e0e5cb2b543534b + languageName: node + linkType: hard + +"detab@npm:2.0.3, detab@npm:^2.0.0": + version: 2.0.3 + resolution: "detab@npm:2.0.3" + dependencies: + repeat-string: ^1.5.4 + checksum: 4559bac86e79633529ce20861fdd4dbe86141761ab132b31a886818a25849425f29eaae923738104e4d5a95dc32995df3ca279dc763c55520138cac4b791ba96 + languageName: node + linkType: hard + +"detect-indent@npm:6.0.0": + version: 6.0.0 + resolution: "detect-indent@npm:6.0.0" + checksum: ad0619414151942d278c06cd4b6b79feb96c16eebf4979ef1d03433941f1a85c9bba7daba73a73814d629923716169da5416bbc4290c232d53a2dc06f462da5f + languageName: node + linkType: hard + +"detect-indent@npm:^5.0.0": + version: 5.0.0 + resolution: "detect-indent@npm:5.0.0" + checksum: 1b6a22f23b837da87434d461ff125121649dd9d775302d94e986a0ae990fb8801b883dd0d316a6d90df8f0e7303b6ff7c04b57eaac63265e14c88d38172f947d + languageName: node + linkType: hard + +"detect-newline@npm:^2.1.0": + version: 2.1.0 + resolution: "detect-newline@npm:2.1.0" + checksum: 634e4a25406321b203b33ae5123c1f2091d94509d6979448081b9256c1078cec9ca5c12eee16164be79f6cbbd56c2e2232fca541e2edf3c8d374efe661e5b44a + languageName: node + linkType: hard + +"detect-newline@npm:^3.0.0": + version: 3.1.0 + resolution: "detect-newline@npm:3.1.0" + checksum: 6d3f67971da681403c1b1920eb3994c0718a4e70d32ae4cfc5369f3e30b4746f075a3986cb5a5c762fac36597d8f8a33b6c98bd5ce822589773313f29ce4544f + languageName: node + linkType: hard + +"detect-node@npm:^2.0.4": + version: 2.0.4 + resolution: "detect-node@npm:2.0.4" + checksum: e7648a5a91dd5e91838d14f0e9631f2adf0117cc271ea86d8ce394a8fbe8fc7545755c8261faaf4b1e196795a10da99e5d5f1013163ba0f6260a57b0ba29cc60 + languageName: node + linkType: hard + +"detect-port-alt@npm:1.1.6": + version: 1.1.6 + resolution: "detect-port-alt@npm:1.1.6" + dependencies: + address: ^1.0.1 + debug: ^2.6.0 + bin: + detect: ./bin/detect-port + detect-port: ./bin/detect-port + checksum: 246570e7557d54b9c8e125e338a351546cd9007d11802e89205c6970c05c5ce7be28f5b47124d2d535eb5295c25e0c503275bb518a1f57564edbb9f5a690de3c + languageName: node + linkType: hard + +"detect-port@npm:^1.3.0": + version: 1.3.0 + resolution: "detect-port@npm:1.3.0" + dependencies: + address: ^1.0.1 + debug: ^2.6.0 + bin: + detect: ./bin/detect-port + detect-port: ./bin/detect-port + checksum: 4ebfc40948cd3dc20c5bbef95018ead433d522b6ef0e2efae2d20943632a815db80435a78212525f05b492331b05e66af51d260e42f8bfe6145f66e2a223f054 + languageName: node + linkType: hard + +"dezalgo@npm:^1.0.0": + version: 1.0.3 + resolution: "dezalgo@npm:1.0.3" + dependencies: + asap: ^2.0.0 + wrappy: 1 + checksum: 05bfff5425006438f6413c788e378af06a60538a68dcf15ce6f0ba5737ab97348ee0cb67a6fe8623700775cdda707eb3cb00a770c832d542349a7bf7a602e804 + languageName: node + linkType: hard + +"dicer@npm:0.3.0": + version: 0.3.0 + resolution: "dicer@npm:0.3.0" + dependencies: + streamsearch: 0.1.2 + checksum: eb06a8c283287da1f0034cde3f2bafe8bbd70636d4c9b12783f36d919c88533d6d285e044197853e03c1a2ea5d68f8ebcf59d366bd873a4a91e5d370e9871ad7 + languageName: node + linkType: hard + +"diff-sequences@npm:^24.9.0": + version: 24.9.0 + resolution: "diff-sequences@npm:24.9.0" + checksum: 049107ba804c3a332fe7edefd1cec8df33a18a99c6af77f88b3b9d22b5ee2e1940dbde23b97f97b0d7250a98f8c488c3ba552ebab54dc75c9542c1e90232d009 + languageName: node + linkType: hard + +"diff-sequences@npm:^25.2.6": + version: 25.2.6 + resolution: "diff-sequences@npm:25.2.6" + checksum: 332484fc00f6beca726d8dbc13095f6006527002bef936a07b4e6bbec681fbaac484e1a7ea4e9ab0d53e375d1cde9e642c8cce31dfe6329cfdf8f01f26b17505 + languageName: node + linkType: hard + +"diff-sequences@npm:^26.0.0": + version: 26.0.0 + resolution: "diff-sequences@npm:26.0.0" + checksum: 0b5fdd1803e9d5f99e25ae28e22d48e17eabddfbf398ec74e6695777530778ef6bd9c9f46377a9f332ba9a0e6f2b7be45a54cd5b86e26f7514543d8d27f2d904 + languageName: node + linkType: hard + +"diff@npm:^4.0.1": + version: 4.0.2 + resolution: "diff@npm:4.0.2" + checksum: 81b5cd7ddde6f0ba2a532d434cfdca365aedd6cc62bb133e851e66e071d40382a30924a07c1034bd3d5a2e332146f64514b73c06fe2ebc0490a67f0c98da79fb + languageName: node + linkType: hard + +"diffie-hellman@npm:^5.0.0": + version: 5.0.3 + resolution: "diffie-hellman@npm:5.0.3" + dependencies: + bn.js: ^4.1.0 + miller-rabin: ^4.0.0 + randombytes: ^2.0.0 + checksum: c988be315dc9ec83948605da58a25912daaae787d6a5cfa0b0574383dcf9b953aa81ba3109d06bc8590b037259753d2962a362e351efcb4274e94f1b0f277065 + languageName: node + linkType: hard + +"dir-glob@npm:2.0.0": + version: 2.0.0 + resolution: "dir-glob@npm:2.0.0" + dependencies: + arrify: ^1.0.1 + path-type: ^3.0.0 + checksum: e826e4aa5a5f0fb2f75d7ba534481dc0bdf3179fd4c34ddc15f34ee88fb60e5ad6fba095b23aa26ffc3386fa3d94e409a4603ff889391dad33bbc6e5d85e3920 + languageName: node + linkType: hard + +"dir-glob@npm:^2.0.0, dir-glob@npm:^2.2.2": + version: 2.2.2 + resolution: "dir-glob@npm:2.2.2" + dependencies: + path-type: ^3.0.0 + checksum: 1ee89c351e99f08f6d5546503ee3481842aa5ee1ce6e50957ef71b492dd764191e8abed607dfb305bebe8a2d7f7617b97bf711ed6abb82704cf03df0bbb0b672 + languageName: node + linkType: hard + +"dir-glob@npm:^3.0.1": + version: 3.0.1 + resolution: "dir-glob@npm:3.0.1" + dependencies: + path-type: ^4.0.0 + checksum: 687fa3bd604f264042f325d9460e1298447fb32782f30cddc47cb302b742684d13e8ffce4c6f455e0ae92099d71e29f72387379c10b8fd3f6f1bf8992d7c0997 + languageName: node + linkType: hard + +"dns-equal@npm:^1.0.0": + version: 1.0.0 + resolution: "dns-equal@npm:1.0.0" + checksum: 096be3c1a742c7c5bdcd39836f70cb060f4c453f0f48cae1830bf011813387912f97da34d247570b5ec547c61c404f06657a0092297f38d797b22a10b5801bfe + languageName: node + linkType: hard + +"dns-packet@npm:^1.3.1": + version: 1.3.1 + resolution: "dns-packet@npm:1.3.1" + dependencies: + ip: ^1.1.0 + safe-buffer: ^5.0.1 + checksum: cb7bb4e8fb25460fcde192273f0c95ce91a9f780a7f3a49ae835cd2fd7f0fcc1bb870ef0141ebb9eca8de9c545293291d1a4c978a754adbb93a84dcee9623bd9 + languageName: node + linkType: hard + +"dns-txt@npm:^2.0.2": + version: 2.0.2 + resolution: "dns-txt@npm:2.0.2" + dependencies: + buffer-indexof: ^1.0.0 + checksum: 62d4b87b09421f813dd03eb17866cb307e278555475b25752396d3e5c7e63b9f0f64ab5b41edeb755cb52d722600a89977d36c64a94d02ed92c32e44a8b849f2 + languageName: node + linkType: hard + +"doctrine@npm:1.5.0": + version: 1.5.0 + resolution: "doctrine@npm:1.5.0" + dependencies: + esutils: ^2.0.2 + isarray: ^1.0.0 + checksum: aaffea02f963b8b07a78b1e27d7cef29be65d31be2c6681cb2872c2fb3781e14615bd05d4dff6036f75dcf3f191216058409fbfec805d3a7277a8647cd5bdee1 + languageName: node + linkType: hard + +"doctrine@npm:^2.1.0": + version: 2.1.0 + resolution: "doctrine@npm:2.1.0" + dependencies: + esutils: ^2.0.2 + checksum: 4aa55e46757cc11bff8efa67cdb679dd89e87c954ea9d88fad5a9198cfe0a73748085503d29bebcb143487d720a759a6bbe81d6848c94da46a55c7a366b9834e + languageName: node + linkType: hard + +"doctrine@npm:^3.0.0": + version: 3.0.0 + resolution: "doctrine@npm:3.0.0" + dependencies: + esutils: ^2.0.2 + checksum: 2eae469bd2889ceee9892083a67340b3622568fe5290edce620e5d5ddab23d644b2a780e9a7c68ad9c8a62716a70c5e484402ac93a398fa78b54b7505592aa7f + languageName: node + linkType: hard + +"docusaurus-plugin-fathom@npm:1.1.0": + version: 1.1.0 + resolution: "docusaurus-plugin-fathom@npm:1.1.0" + peerDependencies: + "@docusaurus/core": ^2.0.0 + checksum: fbcc0e09451e689acc44e1dac0a9d2ad5866b6d3ff1da770707f4dcaa567db5e22ad904a1ca483369f4b77d690880966979d36d282fc70fdbaf59f143381bd4f + languageName: node + linkType: hard + +"dom-converter@npm:^0.2": + version: 0.2.0 + resolution: "dom-converter@npm:0.2.0" + dependencies: + utila: ~0.4 + checksum: 437b4464bd3c5e654decf855f9263e939d633d7bb720512f9a400b3e1005d870eb4a5fbead7d9ccb7849f7df5ee30c62f9a56b68143c13575ae5fef16007742c + languageName: node + linkType: hard + +"dom-helpers@npm:^5.0.1": + version: 5.2.0 + resolution: "dom-helpers@npm:5.2.0" + dependencies: + "@babel/runtime": ^7.8.7 + csstype: ^3.0.2 + checksum: 9ef27628f4ccfdfa0537b35ecf3b9600f1656f9c66f57a1530b552a65b51f4466d44514f2cb87399a15feee3c51047a77760327971e9aabc64fe637efd319156 + languageName: node + linkType: hard + +"dom-serializer@npm:0": + version: 0.2.2 + resolution: "dom-serializer@npm:0.2.2" + dependencies: + domelementtype: ^2.0.1 + entities: ^2.0.0 + checksum: 598e05e71b8cdb03424393c0631818b978b9fee2dd18d0215a9ee97a6dee86bddd1dcfae4609c173185a9f1bcde24d4a87e1f0d512d66b76536b21fc3f34fc03 + languageName: node + linkType: hard + +"dom-serializer@npm:~0.1.0": + version: 0.1.1 + resolution: "dom-serializer@npm:0.1.1" + dependencies: + domelementtype: ^1.3.0 + entities: ^1.1.1 + checksum: 5c6c89b18c6db6dcb3697b1e63a3118ae7126c5bf1f3d39861bb9e585b7a46232866c5e0d5ff9175afac79395618716cfb285439c85f8c805f09da1f5caf2264 + languageName: node + linkType: hard + +"domain-browser@npm:^1.1.1": + version: 1.2.0 + resolution: "domain-browser@npm:1.2.0" + checksum: 39a1156552d162c33e0edff62b0f9ae64609d4ffa85ecaccfad2416ee34e4b6c78aea53c30ce167a04421144963a674e8471eba2b6272b4760e020149b9bafbb + languageName: node + linkType: hard + +"domelementtype@npm:1, domelementtype@npm:^1.3.0, domelementtype@npm:^1.3.1": + version: 1.3.1 + resolution: "domelementtype@npm:1.3.1" + checksum: a4791788de07071422b2fe63b58cfb89c2507def6864954d0d7a062adb00fc925059856d29c3e48051c8fa2f20147e5d3fb24b1adbc5bdf0f9e99981b53b74c6 + languageName: node + linkType: hard + +"domelementtype@npm:^2.0.1": + version: 2.0.1 + resolution: "domelementtype@npm:2.0.1" + checksum: 9ddda35625a244de9a4832b1cf861f80e146faf6f0e70efe5a88c2c54c34e29e745f7048992dadc3af91c031abe035782f4dc16e6e7862eff6e80bd7c79327df + languageName: node + linkType: hard + +"domexception@npm:^1.0.1": + version: 1.0.1 + resolution: "domexception@npm:1.0.1" + dependencies: + webidl-conversions: ^4.0.2 + checksum: 0a678e600248b8a6f0149cb6a6ddae77d698d16a6fcf39d4228b933d5ac2b9ee657a36b2cd08ea82ec6196da756535bd30b8362f697cc9e564d969e52437fcd8 + languageName: node + linkType: hard + +"domexception@npm:^2.0.1": + version: 2.0.1 + resolution: "domexception@npm:2.0.1" + dependencies: + webidl-conversions: ^5.0.0 + checksum: bde9f50cb568a29b0c24ab50500ff23e9a2160394f04ae5fd9db91c4303a4f892fd9a42b07a0d52cdae11d8a348b4e907dd4343176c6f5a74f8be6ffde60bd95 + languageName: node + linkType: hard + +"domhandler@npm:^2.3.0": + version: 2.4.2 + resolution: "domhandler@npm:2.4.2" + dependencies: + domelementtype: 1 + checksum: dbe99b096aaf6e0618efc2e7e39d46448cba00999b08ba14970ee4d7a8916c4d4d463fcc1b4a7f247b34f47d1c115eec8fa5f8a4d1e430b2207da32bdf41f49a + languageName: node + linkType: hard + +"domutils@npm:1.5.1": + version: 1.5.1 + resolution: "domutils@npm:1.5.1" + dependencies: + dom-serializer: 0 + domelementtype: 1 + checksum: ffc578118d3e50d0f34a0bba37575492998d43b7e54764533b1890e6c233b67068a0f369d1d23d200aa71c3fe87f2d60fdc4a87479e416edafecc33f00fc9735 + languageName: node + linkType: hard + +"domutils@npm:^1.5.1, domutils@npm:^1.7.0": + version: 1.7.0 + resolution: "domutils@npm:1.7.0" + dependencies: + dom-serializer: 0 + domelementtype: 1 + checksum: a5b2f01fb3ff626073e3c3b43fedcff34073fb059b1235ee31cd0b5690d826304f41bc3fd117f95d754a1666ac3a57d224b408d83dd4f1c4525fd5b636d8df6f + languageName: node + linkType: hard + +"dot-case@npm:^3.0.3": + version: 3.0.3 + resolution: "dot-case@npm:3.0.3" + dependencies: + no-case: ^3.0.3 + tslib: ^1.10.0 + checksum: 31e5037039fb696ed7f1da1d3f0cea5fa0ffe0523334229a2f241856411fbbb59a5a7a6f8ae1447820718797708650bd6f90836d510ec27a81694fbc006c946a + languageName: node + linkType: hard + +"dot-prop@npm:^4.2.0": + version: 4.2.0 + resolution: "dot-prop@npm:4.2.0" + dependencies: + is-obj: ^1.0.0 + checksum: 6dadca2215c4844f8313828a67f4398c87e1dae263a111aa7e9255aecf31647bb4a6e80efdd7a768bb170d47c96265bb744ff659dbf1aa7c8c78d4cfe69be20c + languageName: node + linkType: hard + +"dot-prop@npm:^5.1.0, dot-prop@npm:^5.2.0": + version: 5.2.0 + resolution: "dot-prop@npm:5.2.0" + dependencies: + is-obj: ^2.0.0 + checksum: d2f62e0b5ec467edb8e278ab6070955f0a4aec973ec1fa837ff6152f3cdd96cd2a04c7e2626cb3eac4f639b8f6786b5b87d3c01df7ba729693c636cb78b7ae93 + languageName: node + linkType: hard + +"dotenv-expand@npm:5.1.0": + version: 5.1.0 + resolution: "dotenv-expand@npm:5.1.0" + checksum: b895c6220d345db8f58dca439d3bc65c2ee538659df570ed3fa8c99487df854afd6d1ddadf1e43a4091c9ed6166956e7db7bc5a05cf48fa812c0772e1f5cf860 + languageName: node + linkType: hard + +"dotenv@npm:8.2.0, dotenv@npm:^8.2.0": + version: 8.2.0 + resolution: "dotenv@npm:8.2.0" + checksum: 16cb89cbd7b98b053899b8aba8c5044c8fb61a2db8a81fe70360b75035fce5fed53bd7a34d772be717d0880c0321122a4c09423f518025e1b52d96791521b1a7 + languageName: node + linkType: hard + +"dotenv@npm:^6.2.0": + version: 6.2.0 + resolution: "dotenv@npm:6.2.0" + checksum: 2589b4c8e3d9a54eaad276d0a6a3821eb73250b439edd7ba70147dfe4e12148461919817506c7dfae3f1ea72a88cb38bf01b0656fe0c28e8e51df9391ef76e73 + languageName: node + linkType: hard + +"duplexer3@npm:^0.1.4": + version: 0.1.4 + resolution: "duplexer3@npm:0.1.4" + checksum: 2a4ae463aafdb6e3541e556785d971e83e8d2b534b4cfcb114b01ebc6af6dde5a07454835c7207c8eeb5472927db1bac1b507044413164e991906c5da807938b + languageName: node + linkType: hard + +"duplexer@npm:^0.1.1": + version: 0.1.1 + resolution: "duplexer@npm:0.1.1" + checksum: cd332f728a580abef8a87b38e129c7425d34b7dcc4e1b596da300bb3309e10ba51848429a0c0d1f134b66cae8c9ffe1371e3718c74a6f57da2a544a589b21216 + languageName: node + linkType: hard + +"duplexify@npm:^3.4.2, duplexify@npm:^3.6.0": + version: 3.7.1 + resolution: "duplexify@npm:3.7.1" + dependencies: + end-of-stream: ^1.0.0 + inherits: ^2.0.1 + readable-stream: ^2.0.0 + stream-shift: ^1.0.0 + checksum: 9581cdb8f6304fdaacb8bbe2b8b393a8da3ece3086dd24070601b70f08ca417305b4f3a94699b984c4981dceb6eebb4c132abfe0445baacfd04f2b66a0524cda + languageName: node + linkType: hard + +"ecc-jsbn@npm:~0.1.1": + version: 0.1.2 + resolution: "ecc-jsbn@npm:0.1.2" + dependencies: + jsbn: ~0.1.0 + safer-buffer: ^2.1.0 + checksum: 5b4dd05f24b2b94c1bb882488dba2b878bb5b83182669aa71fbdf53c6941618180cb226c4eb9a3e2fa51ad11f87b5edb0a7d7289cdef468ba2e6024542f73f07 + languageName: node + linkType: hard + +"ecdsa-sig-formatter@npm:1.0.11": + version: 1.0.11 + resolution: "ecdsa-sig-formatter@npm:1.0.11" + dependencies: + safe-buffer: ^5.0.1 + checksum: 9d07775ee274e0ca3978a562e9eba14ce77ecc804d977d0e94525c2aa4a70d909eda5703810955d22fd06fc6312e6aacf85e233eebdabc7b27a0a38fd62902a4 + languageName: node + linkType: hard + +"ee-first@npm:1.1.1": + version: 1.1.1 + resolution: "ee-first@npm:1.1.1" + checksum: ba74f91398e3ee3b6d665b2f0d13ad6530e89a7e64ec886a6eec0602fb8a5a274652960e21bd5d4b42fdeb9017d873ff872f50342d38779e955285977edb337c + languageName: node + linkType: hard + +"ejs@npm:^2.6.1": + version: 2.7.4 + resolution: "ejs@npm:2.7.4" + checksum: f066d9a932fb921bdb6e87133d747d5e3408a1c1303f9a15e5a7a3973afdf444a672c98c2f6d97b9a1a76363bd8ae6d05286f26c6b6b7b9674dfc5802fc8546d + languageName: node + linkType: hard + +"electron-to-chromium@npm:^1.3.378, electron-to-chromium@npm:^1.3.523": + version: 1.3.526 + resolution: "electron-to-chromium@npm:1.3.526" + checksum: 7a7fa4a9bd412565fc8ea8a40520f245be12b51d1d84a3b15af2540e1e7021d30af1ba77383b10433c028129ea3c303c559b58b1959dae46aeeb963f80cb3811 + languageName: node + linkType: hard + +"elegant-spinner@npm:^1.0.1": + version: 1.0.1 + resolution: "elegant-spinner@npm:1.0.1" + checksum: 69837a8a8878cadabe8dd26faff9e40e5bf9d5e0af4bad66a0dbc94077c3f03fb0e459b59a2d625bf3c4309913f03d8c87f1abb70ef7a10a2cd4d83fe419c7a0 + languageName: node + linkType: hard + +"elliptic@npm:^6.5.3": + version: 6.5.3 + resolution: "elliptic@npm:6.5.3" + dependencies: + bn.js: ^4.4.0 + brorand: ^1.0.1 + hash.js: ^1.0.0 + hmac-drbg: ^1.0.0 + inherits: ^2.0.1 + minimalistic-assert: ^1.0.0 + minimalistic-crypto-utils: ^1.0.0 + checksum: b66cf0b8f8d9a4d47992e6f0b754cbe4c0681b78b7d6691529c99fc79d8a87069f354a665a528c4bdd0327e1d937c617f9bb2fef1aa92761e4c2b7f73200af38 + languageName: node + linkType: hard + +"emittery@npm:0.5.1": + version: 0.5.1 + resolution: "emittery@npm:0.5.1" + checksum: f972aacc49c041002b0d2b2f64f62c3f492a7068c863bc5d86bcf4b749ebef2c6f93dc9765f4d73b627ae9f926474be0ea4485c4ae88219ebb7eca923148a3f7 + languageName: node + linkType: hard + +"emittery@npm:^0.7.1": + version: 0.7.1 + resolution: "emittery@npm:0.7.1" + checksum: 917b0995126e004ddf175e7d0a74ae8608083846c3f3608e964bf13caba220a003b7455ced5bf813a40e977605be48e53c74f6150fbe587a47ef6b985b8a447e + languageName: node + linkType: hard + +"emoji-regex@npm:>=6.0.0 <=6.1.1": + version: 6.1.1 + resolution: "emoji-regex@npm:6.1.1" + checksum: 1d35436f24d1a00d53451573271ee1ea01e8b978bcc105ac7677633c35c665a796c317086d39b19eda6261d1861415185e98e28d39d2437cd2a9fd3dfcc0f54a + languageName: node + linkType: hard + +"emoji-regex@npm:^7.0.1, emoji-regex@npm:^7.0.2": + version: 7.0.3 + resolution: "emoji-regex@npm:7.0.3" + checksum: e3a504cf5242061d9b3c78a88ce787d6beee37a5d21287c6ccdddf1fe665d5ef3eddfdda663d0baf683df8e7d354210eeb1458a7d9afdf0d7a28d48cbb9975e1 + languageName: node + linkType: hard + +"emoji-regex@npm:^8.0.0": + version: 8.0.0 + resolution: "emoji-regex@npm:8.0.0" + checksum: 87cf3f89efb8ba028075b3dc1713e2c5609af94cbc129b1f00c3113d01dbe4bf85c9d971e75a98bf8a8508131727682ce929e4bd70e9022af4fd47d75e9507de + languageName: node + linkType: hard + +"emojis-list@npm:^2.0.0": + version: 2.1.0 + resolution: "emojis-list@npm:2.1.0" + checksum: 09220b636cb03b16c234b6412391c9d8ce6fab4213659fd88d98a83e1b8fce8c60352f4dfc395a2f14159f1ed348a150c26123aee8afccb15b9747e26ed7b6ec + languageName: node + linkType: hard + +"emojis-list@npm:^3.0.0": + version: 3.0.0 + resolution: "emojis-list@npm:3.0.0" + checksum: a79126b55bc86ee8fd938235a6adf9d457c05fb5bb934e8608b7d35c878d9d1e312a67759244f5c3fba0810b508eb5617e5e6ad6886496ebcfa6832d1c8de3c4 + languageName: node + linkType: hard + +"emoticon@npm:^3.2.0": + version: 3.2.0 + resolution: "emoticon@npm:3.2.0" + checksum: fc608314df036126955e4414e87a4a3e7e66793f7c085ed82a5f6278eee8576d89bbc5601326b7da9ca71d075e120d884517455ac3963aa2143e10d8a144ad4f + languageName: node + linkType: hard + +"encodeurl@npm:~1.0.2": + version: 1.0.2 + resolution: "encodeurl@npm:1.0.2" + checksum: 6ee5fcbcd245d2a2b6bd6fe36b80f91e31ab46e29192c50af00e8f860c0c2310ebbdaae40257878fdce90b42abcb3526895c7c3a2e229461ed1f0d0b5a020fc8 + languageName: node + linkType: hard + +"encoding@npm:^0.1.11": + version: 0.1.13 + resolution: "encoding@npm:0.1.13" + dependencies: + iconv-lite: ^0.6.2 + checksum: 282d5696a4916383b0f71a87375505e33ef0be0c3a30939fb559a878b691873d48acc61ee6dcbfacf3e68404ab4462e081bcfd0aa3c9a3f1fabb900306aad77d + languageName: node + linkType: hard + +"end-of-stream@npm:^1.0.0, end-of-stream@npm:^1.1.0": + version: 1.4.4 + resolution: "end-of-stream@npm:1.4.4" + dependencies: + once: ^1.4.0 + checksum: 7da60e458bdb5e16c006a45e85ef3bc1e3791db5ba275b0913258ccddc8899acb9252c4ddbcce87bd1b46e2a3f97315aafb9f0c0330e8aac44defb504a9d3ccd + languageName: node + linkType: hard + +"enhanced-resolve@npm:^4.1.0, enhanced-resolve@npm:^4.3.0": + version: 4.3.0 + resolution: "enhanced-resolve@npm:4.3.0" + dependencies: + graceful-fs: ^4.1.2 + memory-fs: ^0.5.0 + tapable: ^1.0.0 + checksum: aecdc0b2085990d84682c2ef829d0df3fe52511ac6353b2210ff138892fa36e524e117e1a534e0d5e51853cb1a9cce8941a68c81ed51a4989d2b041739aab65b + languageName: node + linkType: hard + +"enquirer@npm:^2.3.5": + version: 2.3.6 + resolution: "enquirer@npm:2.3.6" + dependencies: + ansi-colors: ^4.1.1 + checksum: e249bb97bf7d5a91d51081547ea5aa1d849604e5de74feff2c48f7174fc6c9dfcfeea42ef5536e9a3be58964a248c322d6897269ae7bba3e1b6d24f152d9d685 + languageName: node + linkType: hard + +"entities@npm:^1.1.1, entities@npm:~1.1.1": + version: 1.1.2 + resolution: "entities@npm:1.1.2" + checksum: 3a4259db358c612853e616915d398e692a3c5dbaa4da44b9a6fce15ab88615cadc9790af608c3bee152972ece69ae61a22f4a13272fd943db2ceaee02ce5cc87 + languageName: node + linkType: hard + +"entities@npm:^2.0.0": + version: 2.0.3 + resolution: "entities@npm:2.0.3" + checksum: 02dfe1fbf531dd667420ff4e963ddc049203471ba8ad2873655303aff4cf65f27823effb397521af4d58b5609d33fc0492b0cc073c8374f3bbe6d3b5bcec1a42 + languageName: node + linkType: hard + +"env-paths@npm:^2.2.0": + version: 2.2.0 + resolution: "env-paths@npm:2.2.0" + checksum: 09de4fd1c068d5965aa8aede852a764b7fb6fa8f1299ba7789bc29c22840ab1985e0c9c55bc6bf40b4276834b8adfa1baf82ec9bc58445d9e75800dc32d78a4f + languageName: node + linkType: hard + +"envinfo@npm:^7.3.1": + version: 7.7.2 + resolution: "envinfo@npm:7.7.2" + bin: + envinfo: dist/cli.js + checksum: b393ee3cdefe881e7c0383390d7fc61f333132808262e660b3f3690e2273bf9ed02419ee9f3d542aee0a05d67a1d0c28fd2a82507fe8cbe2e2e03958db80718e + languageName: node + linkType: hard + +"err-code@npm:^1.0.0": + version: 1.1.2 + resolution: "err-code@npm:1.1.2" + checksum: 9e6bcdc90de83b1f30e312a7c7db38e6c50cbea0771e8b9f7301506e09df543ce29b4ed147ec528c1c072fb5561be7651b902b085338237682c8d0ac496e759c + languageName: node + linkType: hard + +"errno@npm:^0.1.3, errno@npm:~0.1.7": + version: 0.1.7 + resolution: "errno@npm:0.1.7" + dependencies: + prr: ~1.0.1 + bin: + errno: ./cli.js + checksum: 3d2da6fa1e3826dead7e06476cb4219555e8492c4ba8e0c40b2dc333e9b52e33223a414a394d7b9f18f82740aa69861c5fcef5b80798f08ff903c7c78916ce14 + languageName: node + linkType: hard + +"error-ex@npm:^1.2.0, error-ex@npm:^1.3.1": + version: 1.3.2 + resolution: "error-ex@npm:1.3.2" + dependencies: + is-arrayish: ^0.2.1 + checksum: 6c6c9187429ae867d145bc64c682c7c137b1f8373a406dc3b605c0d92f15b85bfcea02b461dc55ae11b10d013377e1eaf3d469d2861b2f94703c743620a9c08c + languageName: node + linkType: hard + +"es-abstract@npm:^1.17.0, es-abstract@npm:^1.17.0-next.1, es-abstract@npm:^1.17.5": + version: 1.17.6 + resolution: "es-abstract@npm:1.17.6" + dependencies: + es-to-primitive: ^1.2.1 + function-bind: ^1.1.1 + has: ^1.0.3 + has-symbols: ^1.0.1 + is-callable: ^1.2.0 + is-regex: ^1.1.0 + object-inspect: ^1.7.0 + object-keys: ^1.1.1 + object.assign: ^4.1.0 + string.prototype.trimend: ^1.0.1 + string.prototype.trimstart: ^1.0.1 + checksum: 637ad488bdcbc538dfb35ee30cdbe5e48ecf68c5145a368c8f1be346e83d2555e416709e9382eb9902e542da94763cdd2152d87dbbb01b5b39919c1329bd0bb4 + languageName: node + linkType: hard + +"es-to-primitive@npm:^1.2.1": + version: 1.2.1 + resolution: "es-to-primitive@npm:1.2.1" + dependencies: + is-callable: ^1.1.4 + is-date-object: ^1.0.1 + is-symbol: ^1.0.2 + checksum: d20b7be268b84662469972ec7265a57d4d6a65b9bf2b73f040d75e14f9f6dbe266a1a88579162e11349f9cb70eaa17640efb515c90dab19745a904b680b14be3 + languageName: node + linkType: hard + +"es5-ext@npm:^0.10.35, es5-ext@npm:^0.10.50": + version: 0.10.53 + resolution: "es5-ext@npm:0.10.53" + dependencies: + es6-iterator: ~2.0.3 + es6-symbol: ~3.1.3 + next-tick: ~1.0.0 + checksum: 99e8115c2f99674d0defc1e077bb0061cd9e1fc996e93605f83441cc5b3b200b7b3646f9cda9313aa877a05c47b4577ead99a26177136a0ca3f208f67a7b4418 + languageName: node + linkType: hard + +"es6-iterator@npm:2.0.3, es6-iterator@npm:~2.0.3": + version: 2.0.3 + resolution: "es6-iterator@npm:2.0.3" + dependencies: + d: 1 + es5-ext: ^0.10.35 + es6-symbol: ^3.1.1 + checksum: 1880ce31210da874cbb92b404c3128bdf68f616f3a902b2ca1d12f268aaedb11c5e6a2d9d364cde762de0130652a0474ba91abc09fa35f4abf6a8f22a592265e + languageName: node + linkType: hard + +"es6-promise@npm:^4.0.3": + version: 4.2.8 + resolution: "es6-promise@npm:4.2.8" + checksum: b85e5faab1b3785b8bf1a6c91b5f176cf3e5e4550359508ef54dd58b19ad2b831e04607e2a0a464f2a1407bf02897d5c88daf6e3d94c2ee4510e8191b44b64ef + languageName: node + linkType: hard + +"es6-promisify@npm:^5.0.0": + version: 5.0.0 + resolution: "es6-promisify@npm:5.0.0" + dependencies: + es6-promise: ^4.0.3 + checksum: 657d2f0623ddec94f7e3a881fcd73e33c26e796c25791169b50527014b58995a1cc35578595b6f28a71896d44dc00a98e6cf838804582c8fa38f9a4bb7ef1761 + languageName: node + linkType: hard + +"es6-symbol@npm:^3.1.1, es6-symbol@npm:~3.1.3": + version: 3.1.3 + resolution: "es6-symbol@npm:3.1.3" + dependencies: + d: ^1.0.1 + ext: ^1.1.2 + checksum: 0915d72de8760b56b69ca4360276123a4f61de5a3172fe340ce9288271cf48bcebe3ee46ca8ee0f2fd73206bbbefa7c4a40a6673d278a87c97d3a155de778931 + languageName: node + linkType: hard + +"escalade@npm:^3.0.2": + version: 3.0.2 + resolution: "escalade@npm:3.0.2" + checksum: 30f45cb4dbc35e41dd53910c016313733219bdd06c49751fd30ef241509ef4f1c8b21b65313949aaaf1edd58ab1ac84bf71b4a70465c7be46f7e5eaf51d737bb + languageName: node + linkType: hard + +"escape-goat@npm:^2.0.0": + version: 2.1.1 + resolution: "escape-goat@npm:2.1.1" + checksum: 8270a80ca5449893b004ae260f41aece7db91198dcb007f3f26e68c3adde0f9a4c63df9aaa23d9a3a79b670a304a30986027770b2afd5b09be18a8ffcc8ab88d + languageName: node + linkType: hard + +"escape-html@npm:^1.0.3, escape-html@npm:~1.0.3": + version: 1.0.3 + resolution: "escape-html@npm:1.0.3" + checksum: 900a7f2b80b9f89c85b7a303d1b7a4d354b93e328871414f165f13c5c209a80eab787e3a63429e596877def69fe4dcb3d1b55af655207a901a9ec99f7f148743 + languageName: node + linkType: hard + +"escape-string-regexp@npm:2.0.0, escape-string-regexp@npm:^2.0.0": + version: 2.0.0 + resolution: "escape-string-regexp@npm:2.0.0" + checksum: f3500f264e864aef0c336a2efb3adb1cee9ba1abbe15d69f0d9dab423607cac91aa009b23011b4e6cfd6d6b79888873e21dad1882047aa2e1555dd307428c51d + languageName: node + linkType: hard + +"escape-string-regexp@npm:^1.0.2, escape-string-regexp@npm:^1.0.5": + version: 1.0.5 + resolution: "escape-string-regexp@npm:1.0.5" + checksum: f9484b8b4c8827d816e0fd905c25ed4b561376a9c220e1430403ea84619bf680c76a883a48cff8b8e091daf55d6a497e37479f9787b9f15f3c421b6054289744 + languageName: node + linkType: hard + +"escodegen@npm:^1.11.0, escodegen@npm:^1.14.1, escodegen@npm:^1.9.1": + version: 1.14.3 + resolution: "escodegen@npm:1.14.3" + dependencies: + esprima: ^4.0.1 + estraverse: ^4.2.0 + esutils: ^2.0.2 + optionator: ^0.8.1 + source-map: ~0.6.1 + dependenciesMeta: + source-map: + optional: true + bin: + escodegen: bin/escodegen.js + esgenerate: bin/esgenerate.js + checksum: 548c5a83a81a51122f1006309a392e1412bb00657f15aca60f01f9d4553851bdaf0519d898fd3ee2bb46f116e03ee48757f4d9a28a7b58bc8c096fd4b33f6cbc + languageName: node + linkType: hard + +"eslint-config-prettier@npm:6.11.0": + version: 6.11.0 + resolution: "eslint-config-prettier@npm:6.11.0" + dependencies: + get-stdin: ^6.0.0 + peerDependencies: + eslint: ">=3.14.1" + bin: + eslint-config-prettier-check: bin/cli.js + checksum: 59efd906c78d47753a673c205ef515fdab19cd6ea0fd992c9cb2366804861746238244526ab565ccc7448569f5472ce7646a77d0c9998787192e4ebae95df71d + languageName: node + linkType: hard + +"eslint-config-react-app@npm:^5.2.1": + version: 5.2.1 + resolution: "eslint-config-react-app@npm:5.2.1" + dependencies: + confusing-browser-globals: ^1.0.9 + peerDependencies: + "@typescript-eslint/eslint-plugin": 2.x + "@typescript-eslint/parser": 2.x + babel-eslint: 10.x + eslint: 6.x + eslint-plugin-flowtype: 3.x || 4.x + eslint-plugin-import: 2.x + eslint-plugin-jsx-a11y: 6.x + eslint-plugin-react: 7.x + eslint-plugin-react-hooks: 1.x || 2.x + checksum: bb6028338a4c233568c2f9249fce0e464edbe68079bee63fedbd9c9398d534bf6e6c19d312021916198ec75e9bdce1ddb1e5a11f191ea9887a610b782b8741b9 + languageName: node + linkType: hard + +"eslint-import-resolver-node@npm:^0.3.2": + version: 0.3.4 + resolution: "eslint-import-resolver-node@npm:0.3.4" + dependencies: + debug: ^2.6.9 + resolve: ^1.13.1 + checksum: 825e34e662c988ece8229e6956a95f12d2fa19265b429e3e3db14e58bfe72e270c999cda0cfc690793ed6e6a3e49ffa8df0e0a8842d668a1f0f7de5ae1aa36f9 + languageName: node + linkType: hard + +"eslint-loader@npm:3.0.3": + version: 3.0.3 + resolution: "eslint-loader@npm:3.0.3" + dependencies: + fs-extra: ^8.1.0 + loader-fs-cache: ^1.0.2 + loader-utils: ^1.2.3 + object-hash: ^2.0.1 + schema-utils: ^2.6.1 + peerDependencies: + eslint: ^5.0.0 || ^6.0.0 + webpack: ^4.0.0 || ^5.0.0 + checksum: fc71a64d88949b56231f56227449ee855f5e5583c70af805097c5ed828ee4d9b7f553f65e07c9ed11ec1ccb84529c34c2c410890e29fcfc2b88225a4ad2c2cdf + languageName: node + linkType: hard + +"eslint-module-utils@npm:^2.4.1": + version: 2.6.0 + resolution: "eslint-module-utils@npm:2.6.0" + dependencies: + debug: ^2.6.9 + pkg-dir: ^2.0.0 + checksum: f584af176480a702eedcdb3f610797f8b8d1293c3835ed71fadb579ec28400b91ded5283729418f63d48dc27c6358bd66f2bd839614d565a1b78d3c3440ee8f7 + languageName: node + linkType: hard + +"eslint-plugin-flowtype@npm:4.6.0": + version: 4.6.0 + resolution: "eslint-plugin-flowtype@npm:4.6.0" + dependencies: + lodash: ^4.17.15 + peerDependencies: + eslint: ">=6.1.0" + checksum: 2a20f898f360527828487134050bfaad7d9e4b153abdcc1c5641b55e219a7d0a3d1c8303e18ade81f22877e2f195126c5c740b6da25b87e02b60e72c950944ca + languageName: node + linkType: hard + +"eslint-plugin-import@npm:2.20.1": + version: 2.20.1 + resolution: "eslint-plugin-import@npm:2.20.1" + dependencies: + array-includes: ^3.0.3 + array.prototype.flat: ^1.2.1 + contains-path: ^0.1.0 + debug: ^2.6.9 + doctrine: 1.5.0 + eslint-import-resolver-node: ^0.3.2 + eslint-module-utils: ^2.4.1 + has: ^1.0.3 + minimatch: ^3.0.4 + object.values: ^1.1.0 + read-pkg-up: ^2.0.0 + resolve: ^1.12.0 + peerDependencies: + eslint: 2.x - 6.x + checksum: d35b8171ff4611f19749f12f7fcb680a6cd583c6df90a5702116d5502152bd6f8d3c41431e5dc7260d29905c79fa0cf417386d80aa4074a511e371ef9b915348 + languageName: node + linkType: hard + +"eslint-plugin-jest@npm:23.18.0": + version: 23.18.0 + resolution: "eslint-plugin-jest@npm:23.18.0" + dependencies: + "@typescript-eslint/experimental-utils": ^2.5.0 + peerDependencies: + eslint: ">=5" + checksum: 56bb63ff745c228288407e820369587b88bb47077139f425892a3629591c5e0d28372a17cfb976e2413b748521b01df05bde196017f9dcdd79902a182828b96b + languageName: node + linkType: hard + +"eslint-plugin-jsx-a11y@npm:6.2.3": + version: 6.2.3 + resolution: "eslint-plugin-jsx-a11y@npm:6.2.3" + dependencies: + "@babel/runtime": ^7.4.5 + aria-query: ^3.0.0 + array-includes: ^3.0.3 + ast-types-flow: ^0.0.7 + axobject-query: ^2.0.2 + damerau-levenshtein: ^1.0.4 + emoji-regex: ^7.0.2 + has: ^1.0.3 + jsx-ast-utils: ^2.2.1 + peerDependencies: + eslint: ^3 || ^4 || ^5 || ^6 + checksum: b3123ca859e24a15be4580fa9f4180eb6ca1d8acec603a228b490a9d6cfb4e6ee81d4e16d92ac90fac1516d09d10aece58fceb8fb8134610e4e0e7592427e125 + languageName: node + linkType: hard + +"eslint-plugin-prettier@npm:3.1.4": + version: 3.1.4 + resolution: "eslint-plugin-prettier@npm:3.1.4" + dependencies: + prettier-linter-helpers: ^1.0.0 + peerDependencies: + eslint: ">=5.0.0" + prettier: ">=1.13.0" + checksum: 4e4df155790a20a7ceef9008bbc22a677a8f7e790e9ef613a049a78dfe0b5dc3726afcd4bfd2a8ce41abc88c9a11db029819a722f70b940da32a03629e7f7832 + languageName: node + linkType: hard + +"eslint-plugin-react-hooks@npm:^1.6.1": + version: 1.7.0 + resolution: "eslint-plugin-react-hooks@npm:1.7.0" + peerDependencies: + eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 + checksum: 99dc3276cd8f20428e0ec4d9b15433ce22b87ef9f1c82279369a98b7c663f9092ff63f63683a948f207ab75cceedd808cac2ca870011b733a89b0fc753eb0f91 + languageName: node + linkType: hard + +"eslint-plugin-react@npm:7.19.0": + version: 7.19.0 + resolution: "eslint-plugin-react@npm:7.19.0" + dependencies: + array-includes: ^3.1.1 + doctrine: ^2.1.0 + has: ^1.0.3 + jsx-ast-utils: ^2.2.3 + object.entries: ^1.1.1 + object.fromentries: ^2.0.2 + object.values: ^1.1.1 + prop-types: ^15.7.2 + resolve: ^1.15.1 + semver: ^6.3.0 + string.prototype.matchall: ^4.0.2 + xregexp: ^4.3.0 + peerDependencies: + eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 + checksum: 3e5b7bd3b2ea663716fd2518efd1eed359712711a3c0284ed04e5955e6b7019151d8b54dddad2a9116a54e251dd180bf5ba0ccf34a80ffbe8f4d535a0d03e6b3 + languageName: node + linkType: hard + +"eslint-scope@npm:^4.0.3": + version: 4.0.3 + resolution: "eslint-scope@npm:4.0.3" + dependencies: + esrecurse: ^4.1.0 + estraverse: ^4.1.1 + checksum: 49635cf9d936af317b9fa89cf98f30719ec9e287e5532c300cbab8015a1920b7ace495ffadaefd0ac86617ce85c17717f0ef1899f66536dca12aa85f1899899d + languageName: node + linkType: hard + +"eslint-scope@npm:^5.0.0, eslint-scope@npm:^5.1.0": + version: 5.1.0 + resolution: "eslint-scope@npm:5.1.0" + dependencies: + esrecurse: ^4.1.0 + estraverse: ^4.1.1 + checksum: 4a0e97979a855d09c4bb3a3f4f945cefaf8f6638a6a8f49472cefb0cf64982ab7ed1683a1e63d20ce1bcb01f94c133dc7a5bdf03b28eb945999f50f08878a2b4 + languageName: node + linkType: hard + +"eslint-utils@npm:^1.4.3": + version: 1.4.3 + resolution: "eslint-utils@npm:1.4.3" + dependencies: + eslint-visitor-keys: ^1.1.0 + checksum: 4a7ede9e723a859a8805bd1ae73681c99323be0da90d37799796ec564cc6c3326d57ac80f91667737abc45383170a3a90653e13c00c7368b3af9be0cec662b4c + languageName: node + linkType: hard + +"eslint-utils@npm:^2.0.0, eslint-utils@npm:^2.1.0": + version: 2.1.0 + resolution: "eslint-utils@npm:2.1.0" + dependencies: + eslint-visitor-keys: ^1.1.0 + checksum: a43892372a4205374982ac9d4c8edc5fe180cba76535ab9184c48f18a3d931b7ffdd6862cb2f8ca4305c47eface0e614e39884a75fbf169fcc55a6131af2ec48 + languageName: node + linkType: hard + +"eslint-visitor-keys@npm:^1.0.0, eslint-visitor-keys@npm:^1.1.0, eslint-visitor-keys@npm:^1.3.0": + version: 1.3.0 + resolution: "eslint-visitor-keys@npm:1.3.0" + checksum: 58ab7a0107621d8a0fe19142a5e1306fd527c0f36b65d5c79033639e80278d8060264804f42c56f68e5541c4cc83d9175f9143083774cec8222f6cd5a695306e + languageName: node + linkType: hard + +"eslint@npm:7.5.0": + version: 7.5.0 + resolution: "eslint@npm:7.5.0" + dependencies: + "@babel/code-frame": ^7.0.0 + ajv: ^6.10.0 + chalk: ^4.0.0 + cross-spawn: ^7.0.2 + debug: ^4.0.1 + doctrine: ^3.0.0 + enquirer: ^2.3.5 + eslint-scope: ^5.1.0 + eslint-utils: ^2.1.0 + eslint-visitor-keys: ^1.3.0 + espree: ^7.2.0 + esquery: ^1.2.0 + esutils: ^2.0.2 + file-entry-cache: ^5.0.1 + functional-red-black-tree: ^1.0.1 + glob-parent: ^5.0.0 + globals: ^12.1.0 + ignore: ^4.0.6 + import-fresh: ^3.0.0 + imurmurhash: ^0.1.4 + is-glob: ^4.0.0 + js-yaml: ^3.13.1 + json-stable-stringify-without-jsonify: ^1.0.1 + levn: ^0.4.1 + lodash: ^4.17.19 + minimatch: ^3.0.4 + natural-compare: ^1.4.0 + optionator: ^0.9.1 + progress: ^2.0.0 + regexpp: ^3.1.0 + semver: ^7.2.1 + strip-ansi: ^6.0.0 + strip-json-comments: ^3.1.0 + table: ^5.2.3 + text-table: ^0.2.0 + v8-compile-cache: ^2.0.3 + bin: + eslint: bin/eslint.js + checksum: 5a65f133db997f39e48082636496e11db168c7385839111b2ecbb9d4fa16d9eaeae9a88f0317ddcc5118fe388c2907ab0f302c752fb36e56ace6e3660070ea42 + languageName: node + linkType: hard + +"eslint@npm:^6.6.0": + version: 6.8.0 + resolution: "eslint@npm:6.8.0" + dependencies: + "@babel/code-frame": ^7.0.0 + ajv: ^6.10.0 + chalk: ^2.1.0 + cross-spawn: ^6.0.5 + debug: ^4.0.1 + doctrine: ^3.0.0 + eslint-scope: ^5.0.0 + eslint-utils: ^1.4.3 + eslint-visitor-keys: ^1.1.0 + espree: ^6.1.2 + esquery: ^1.0.1 + esutils: ^2.0.2 + file-entry-cache: ^5.0.1 + functional-red-black-tree: ^1.0.1 + glob-parent: ^5.0.0 + globals: ^12.1.0 + ignore: ^4.0.6 + import-fresh: ^3.0.0 + imurmurhash: ^0.1.4 + inquirer: ^7.0.0 + is-glob: ^4.0.0 + js-yaml: ^3.13.1 + json-stable-stringify-without-jsonify: ^1.0.1 + levn: ^0.3.0 + lodash: ^4.17.14 + minimatch: ^3.0.4 + mkdirp: ^0.5.1 + natural-compare: ^1.4.0 + optionator: ^0.8.3 + progress: ^2.0.0 + regexpp: ^2.0.1 + semver: ^6.1.2 + strip-ansi: ^5.2.0 + strip-json-comments: ^3.0.1 + table: ^5.2.3 + text-table: ^0.2.0 + v8-compile-cache: ^2.0.3 + bin: + eslint: ./bin/eslint.js + checksum: 796be0e038188d4cd8062541394d29f35606a7cee00cead5f6c8e3f9db932f0d19ee946df16fd593e0bcd614f896a416afa916bf82d9420576537ac349f2a06d + languageName: node + linkType: hard + +"espree@npm:^6.1.2": + version: 6.2.1 + resolution: "espree@npm:6.2.1" + dependencies: + acorn: ^7.1.1 + acorn-jsx: ^5.2.0 + eslint-visitor-keys: ^1.1.0 + checksum: 8651a6c1625436a5ff42b0927fb7c9cfa3f87697b9522251b87a343a26655e46d3ce6b03654ac53d4558b41070fef2cdcd1ec4a73cc633661ea40aa1cefdb5e5 + languageName: node + linkType: hard + +"espree@npm:^7.2.0": + version: 7.2.0 + resolution: "espree@npm:7.2.0" + dependencies: + acorn: ^7.3.1 + acorn-jsx: ^5.2.0 + eslint-visitor-keys: ^1.3.0 + checksum: 51bdb836f47a360ea4fd1a28cf7df1974f2be93abd5cf707cfbedcb15fb6591d26f6dc345d3cb07c4b1df7c5435e50d4b2fdf2a0ed4d63175da8b2c83f06057b + languageName: node + linkType: hard + +"esprima@npm:^4.0.0, esprima@npm:^4.0.1": + version: 4.0.1 + resolution: "esprima@npm:4.0.1" + bin: + esparse: ./bin/esparse.js + esvalidate: ./bin/esvalidate.js + checksum: 5df45a3d9c95c36800d028ba76d8d4e04e199932b58c2939f462f859fd583e7d39b4a12d3f97986cf272a28a5fe5948ee6e49e36ef63f67b5b48d82a635c5081 + languageName: node + linkType: hard + +"esquery@npm:^1.0.1, esquery@npm:^1.2.0": + version: 1.3.1 + resolution: "esquery@npm:1.3.1" + dependencies: + estraverse: ^5.1.0 + checksum: 0aac7572bc8cf4aad87f4424b3e5e80917c214d15a1da02718c4bb0e6030552b0dea700777747507d5e310cfba43ea719e6397a45050fb50b9b68c0f7de6b26a + languageName: node + linkType: hard + +"esrecurse@npm:^4.1.0": + version: 4.2.1 + resolution: "esrecurse@npm:4.2.1" + dependencies: + estraverse: ^4.1.0 + checksum: 9acfa287729037ccb63ee725df2214b313fe1296a91f58fe42b151e1af0d51558ac18486e53f5717477ad9306f7a79d4e20fc7f8bac486d3175f86ab2dc67f73 + languageName: node + linkType: hard + +"estraverse@npm:^4.1.0, estraverse@npm:^4.1.1, estraverse@npm:^4.2.0": + version: 4.3.0 + resolution: "estraverse@npm:4.3.0" + checksum: 1e4c627da9e9af07bf7b2817320f606841808fb2ec0cbd81097b30d5f90d8613288b3e523153babe04615d59b54ef876d98f0ca27488b6c0934dacd725a8d338 + languageName: node + linkType: hard + +"estraverse@npm:^5.1.0": + version: 5.2.0 + resolution: "estraverse@npm:5.2.0" + checksum: 7dc1b027aebf937bab10c3254d9d73ed21672d7382518c9ddb9dc45560cb2f4e6548cc8ff1a07b7f431e94bd0fb0bf5da75b602e2473f966fea141c4c31b31d6 + languageName: node + linkType: hard + +"esutils@npm:^2.0.2": + version: 2.0.3 + resolution: "esutils@npm:2.0.3" + checksum: 590b04533177f8f6f0f352b3ac7da6c1c1e3d8375d8973972fba9c94558ca168685fd38319c3c6f4c37ba256df7494a7f15d8e761df1655af8a8f0027d988f8f + languageName: node + linkType: hard + +"eta@npm:^1.1.1": + version: 1.2.2 + resolution: "eta@npm:1.2.2" + checksum: 4c9a1f66ddbdb2ed51c0094baf3641620fc451fd2642bf606ab82770bf4c2f7575928e715df5146dd619cfd8c6c2c173d0d71bcdc70eb9585b51a7e9d4e0d006 + languageName: node + linkType: hard + +"etag@npm:~1.8.1": + version: 1.8.1 + resolution: "etag@npm:1.8.1" + checksum: f18341a3c12a554ec46c0d4756bc9cae177e92f25a4ebd9ceefebf0ee448b675972fc110879f22b1bf514174713921ae5de9ff77af2062d422b1085588465a57 + languageName: node + linkType: hard + +"eval@npm:^0.1.4": + version: 0.1.4 + resolution: "eval@npm:0.1.4" + dependencies: + require-like: ">= 0.1.1" + checksum: f1f7b21adcb06844494abe2f9f57048ab059c2b06fcf61e1d986493f7a760ef8bf3188d69a1eaada523372aa99bde2d0f77be84760ef8acf2588054fff3e1483 + languageName: node + linkType: hard + +"eventemitter3@npm:^3.1.0": + version: 3.1.2 + resolution: "eventemitter3@npm:3.1.2" + checksum: fa1a206c4e4e8e427542f7fdfa10bd073a4ddf2510fb22e2f9a33b9aa7a0d5669bffba9b889e22d8c1c976af51a92dab274845e58d626ddb2d3563ed4d5d50dc + languageName: node + linkType: hard + +"eventemitter3@npm:^4.0.0": + version: 4.0.4 + resolution: "eventemitter3@npm:4.0.4" + checksum: 6693972304a7bf91aea3727d83803e1b38819ee0ed628ed842ac909284dedd1f3a7aa0ab4ccdd332bfcb9720138c9021b7b4737259e9fe8d70f7f25c57b9f0ad + languageName: node + linkType: hard + +"events@npm:3.1.0, events@npm:^3.0.0": + version: 3.1.0 + resolution: "events@npm:3.1.0" + checksum: b25256e5cb2238e1cf940e81b72ec8b3793e817a8b8ef44031971908a418e1f29ccff0c3ddc0cb5c792f98314a127d4fc9d3670a3e9a681656c28ff1558d8569 + languageName: node + linkType: hard + +"events@npm:^1.1.1": + version: 1.1.1 + resolution: "events@npm:1.1.1" + checksum: ec57b605851d6c4421fb2b0c86af432e87dd94b8b8cd936d74383a19e66a0d7e4af27f6a946ad49dad7e9c66000f3b16ef33e38ec12e31dc69d1b36321bc00ce + languageName: node + linkType: hard + +"eventsource@npm:^1.0.7": + version: 1.0.7 + resolution: "eventsource@npm:1.0.7" + dependencies: + original: ^1.0.0 + checksum: 058506715061d4613c004854c1220d57091445ba73599f9eb232273be1119f13d3568df1a3d866bf94333fbcd138cc45268c454376ee48c3b432a26767961815 + languageName: node + linkType: hard + +"evp_bytestokey@npm:^1.0.0, evp_bytestokey@npm:^1.0.3": + version: 1.0.3 + resolution: "evp_bytestokey@npm:1.0.3" + dependencies: + md5.js: ^1.3.4 + node-gyp: latest + safe-buffer: ^5.1.1 + checksum: 529ceee780657a04e2b19ecbb685473f12aae05d5f9f794e36044f5ea602e1a0ba42bff4e1b7544a8a4164fbd9c585e69398b114f9925448d02c31c52c95cf26 + languageName: node + linkType: hard + +"exec-sh@npm:^0.3.2": + version: 0.3.4 + resolution: "exec-sh@npm:0.3.4" + checksum: cfdd8cbfde80cced18a9b6a361f531c9e99b9e5c0b010338dd1f20cb01aa480af21dc94932530bf07d51341807a79af897b5c31b86f8c2c8f42932e276c8089d + languageName: node + linkType: hard + +"execa@npm:^1.0.0": + version: 1.0.0 + resolution: "execa@npm:1.0.0" + dependencies: + cross-spawn: ^6.0.0 + get-stream: ^4.0.0 + is-stream: ^1.1.0 + npm-run-path: ^2.0.0 + p-finally: ^1.0.0 + signal-exit: ^3.0.0 + strip-eof: ^1.0.0 + checksum: 39714ea24e349403f9fc92b450f0e6823cdd4573e15b17c0fba6d95f2eecd46dc32624bbf15071d91e2c64a4402c74ce7a362671126964100ad34e2d6210adf9 + languageName: node + linkType: hard + +"execa@npm:^3.4.0": + version: 3.4.0 + resolution: "execa@npm:3.4.0" + dependencies: + cross-spawn: ^7.0.0 + get-stream: ^5.0.0 + human-signals: ^1.1.1 + is-stream: ^2.0.0 + merge-stream: ^2.0.0 + npm-run-path: ^4.0.0 + onetime: ^5.1.0 + p-finally: ^2.0.0 + signal-exit: ^3.0.2 + strip-final-newline: ^2.0.0 + checksum: 6f1eb2d6012ba061f9daee5cd0ba775dae71a5b18ab4003c4edc5f0b85047f98b982b71e731b237dde1ea3348b4a09deafa988eca5d1f1b6a9925f74c9907777 + languageName: node + linkType: hard + +"execa@npm:^4.0.0, execa@npm:^4.0.1": + version: 4.0.3 + resolution: "execa@npm:4.0.3" + dependencies: + cross-spawn: ^7.0.0 + get-stream: ^5.0.0 + human-signals: ^1.1.1 + is-stream: ^2.0.0 + merge-stream: ^2.0.0 + npm-run-path: ^4.0.0 + onetime: ^5.1.0 + signal-exit: ^3.0.2 + strip-final-newline: ^2.0.0 + checksum: 65b237d178b468045ee57af6aa4e4124807b28aec9573d9b3b16b02a7e41bd65996236e0c5575d053d3888585ffc795cbed38847c6c9669e9c8481fc44ac05e4 + languageName: node + linkType: hard + +"exit@npm:^0.1.2": + version: 0.1.2 + resolution: "exit@npm:0.1.2" + checksum: 64022f65df300964bb588a503ecbc582a2d2d4db12f777b64495e840274ec17a71099e5cdc06dc970aba9795d8bbb9ccb6ba016844fdbd6b74541f4fdb25f201 + languageName: node + linkType: hard + +"expand-brackets@npm:^2.1.4": + version: 2.1.4 + resolution: "expand-brackets@npm:2.1.4" + dependencies: + debug: ^2.3.3 + define-property: ^0.2.5 + extend-shallow: ^2.0.1 + posix-character-classes: ^0.1.0 + regex-not: ^1.0.0 + snapdragon: ^0.8.1 + to-regex: ^3.0.1 + checksum: 9aadab00ff10da89d3bdbcb92fc48f152977e8f986b227955b17601cb7eb65a63c9b35811d78ce8ff534fc20faab759a043f0f1c71b904f5d37a35a074ff6fb0 + languageName: node + linkType: hard + +"expect@npm:^24.9.0": + version: 24.9.0 + resolution: "expect@npm:24.9.0" + dependencies: + "@jest/types": ^24.9.0 + ansi-styles: ^3.2.0 + jest-get-type: ^24.9.0 + jest-matcher-utils: ^24.9.0 + jest-message-util: ^24.9.0 + jest-regex-util: ^24.9.0 + checksum: fc060faa7fe1dbd9c6eb71e237511dd56fba70f2ea1f1b17027855923d16f10df59ff809fe0359812e5c7f1eb3537729eaf9cfbb463c31417d29dce0fba37726 + languageName: node + linkType: hard + +"expect@npm:^26.2.0": + version: 26.2.0 + resolution: "expect@npm:26.2.0" + dependencies: + "@jest/types": ^26.2.0 + ansi-styles: ^4.0.0 + jest-get-type: ^26.0.0 + jest-matcher-utils: ^26.2.0 + jest-message-util: ^26.2.0 + jest-regex-util: ^26.0.0 + checksum: fc0f842ee098229a5027a4768c0a82a5ef900758a7bf21cdb75f7ad41f7bc3beba6a572eac54437867da0a2f5b46bcc2f7b619c8dbaf98f92fe7271441048d17 + languageName: node + linkType: hard + +"express-session@npm:1.17.1": + version: 1.17.1 + resolution: "express-session@npm:1.17.1" + dependencies: + cookie: 0.4.0 + cookie-signature: 1.0.6 + debug: 2.6.9 + depd: ~2.0.0 + on-headers: ~1.0.2 + parseurl: ~1.3.3 + safe-buffer: 5.2.0 + uid-safe: ~2.1.5 + checksum: f40acdd82f118329de84e419b6e6192564c715a2431325ac1d913a4233d9adef02424e75e951bf9aed85c150d61cddc276e5dc14a5d8f65e19a11ac8c8e3745c + languageName: node + linkType: hard + +"express@npm:4.17.1, express@npm:^4.0.0, express@npm:^4.16.3, express@npm:^4.17.0, express@npm:^4.17.1": + version: 4.17.1 + resolution: "express@npm:4.17.1" + 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 + checksum: c4b470d623152c148e874b08d4afc35ea9498547c31a6ff6dae767ae11e3a59508a299732e9f45bfa2885685fbe2b75ca360862977798dfcec28ff2a4260eab2 + languageName: node + linkType: hard + +"ext@npm:^1.1.2": + version: 1.4.0 + resolution: "ext@npm:1.4.0" + dependencies: + type: ^2.0.0 + checksum: c94102371fecdee9f48d1acac2d0e49d49906af457c79d1d7cf1a0a14317ed3e4c99cd8a2e6f9a00e93d54306ee2872e2542edd0aa58bccc4fc72aa429ef215c + languageName: node + linkType: hard + +"extend-shallow@npm:^2.0.1": + version: 2.0.1 + resolution: "extend-shallow@npm:2.0.1" + dependencies: + is-extendable: ^0.1.0 + checksum: 03dbbba8b9711409442428f4e0f80a92f86862a4d2559fa9629dd7080e85cacc6311c84ebea8b22b5ff40d3ef6475bbf534f098b77b7624448276708e60fa248 + languageName: node + linkType: hard + +"extend-shallow@npm:^3.0.0, extend-shallow@npm:^3.0.2": + version: 3.0.2 + resolution: "extend-shallow@npm:3.0.2" + dependencies: + assign-symbols: ^1.0.0 + is-extendable: ^1.0.1 + checksum: 5301c5070b98bef2413524046c3478cdce1a6bc112b44af2d4bdbfca59daabad49eb04c14e55375963db45f4ef6f43530d71a2c1c862a72d08eb165c77a13767 + languageName: node + linkType: hard + +"extend@npm:^3.0.0, extend@npm:~3.0.2": + version: 3.0.2 + resolution: "extend@npm:3.0.2" + checksum: 1406da1f0c4b00b839497e4cdd0ec4303ce2ae349144b7c28064a5073c93ce8c08da4e8fb1bc5cb459ffcdff30a35fc0fe54344eb88320e70100c1baea6f195c + languageName: node + linkType: hard + +"external-editor@npm:^2.0.1": + version: 2.2.0 + resolution: "external-editor@npm:2.2.0" + dependencies: + chardet: ^0.4.0 + iconv-lite: ^0.4.17 + tmp: ^0.0.33 + checksum: 0d2ef9aac5b51560684438185f41210fd2d9ae37102153456f2773af743f9c7a9cfed3274bee05763da6fd2a18a21078cd7b7b903890280ff149c4fb6d9e638c + languageName: node + linkType: hard + +"external-editor@npm:^3.0.3": + version: 3.1.0 + resolution: "external-editor@npm:3.1.0" + dependencies: + chardet: ^0.7.0 + iconv-lite: ^0.4.24 + tmp: ^0.0.33 + checksum: 22163643f9938f4d46bab20ee0417cf1131aaf9ea4c546184d3668f689b8f7fc0d750b5a60857cb8ea09e4651b2c49fe30eb5a0903697e3c2d837da1e90d2d7c + languageName: node + linkType: hard + +"extglob@npm:^2.0.4": + version: 2.0.4 + resolution: "extglob@npm:2.0.4" + dependencies: + array-unique: ^0.3.2 + define-property: ^1.0.0 + expand-brackets: ^2.1.4 + extend-shallow: ^2.0.1 + fragment-cache: ^0.2.1 + regex-not: ^1.0.0 + snapdragon: ^0.8.1 + to-regex: ^3.0.1 + checksum: ce23be772ff536976902aa0193a6d167abad229ca40fb4c1de2fd71c0116eeae168a02f6508d41382eb918fcbafb66dba61d498754051964a167c98210c62b28 + languageName: node + linkType: hard + +"extract-files@npm:^8.0.0": + version: 8.1.0 + resolution: "extract-files@npm:8.1.0" + checksum: 8d13a42a9a988cd286fe8fd4fee5516d3597cf5616c6a52b467738e5ec84e9ee93d9eba9c4f0bf373519a174b5d9229613814dcab0790a9b9fee9ea140232359 + languageName: node + linkType: hard + +"extsprintf@npm:1.3.0, extsprintf@npm:^1.2.0": + version: 1.3.0 + resolution: "extsprintf@npm:1.3.0" + checksum: 892efd56aa9b27cbfbca42ad0c59308633f66000e71d1fb19c6989ea7309b32f3ff281778871bd2ce9bc7f3ad02515aa2783cea0323d0f6ff840b7c6a6a4603e + languageName: node + linkType: hard + +"fast-deep-equal@npm:^3.1.1": + version: 3.1.3 + resolution: "fast-deep-equal@npm:3.1.3" + checksum: 451526766b219503131d11e823eaadd1533080b0be4860e316670b039dcaf31cd1007c2fe036a9b922abba7c040dfad5e942ed79d21f2ff849e50049f36e0fb7 + languageName: node + linkType: hard + +"fast-diff@npm:^1.1.2": + version: 1.2.0 + resolution: "fast-diff@npm:1.2.0" + checksum: 9c5407d9c4869407854fe8838b8d9d26065ca747c9b80697957ae37482e982e880de823efa2c97ea1cba05dc06fce853a005e7557d10550c64c052cf7021ba9e + languageName: node + linkType: hard + +"fast-glob@npm:^2.0.2, fast-glob@npm:^2.2.6": + version: 2.2.7 + resolution: "fast-glob@npm:2.2.7" + dependencies: + "@mrmlnc/readdir-enhanced": ^2.2.1 + "@nodelib/fs.stat": ^1.1.2 + glob-parent: ^3.1.0 + is-glob: ^4.0.0 + merge2: ^1.2.3 + micromatch: ^3.1.10 + checksum: 9dc5c93807e43257b39fc53aa8ed10ffa253e997dd1d473377a7e9daa4b6c675c730b72f1aa132b80f068c4ece012ff9236a88085fc0229b180fe7c85afcae84 + languageName: node + linkType: hard + +"fast-glob@npm:^3.0.3, fast-glob@npm:^3.1.1": + version: 3.2.4 + resolution: "fast-glob@npm:3.2.4" + dependencies: + "@nodelib/fs.stat": ^2.0.2 + "@nodelib/fs.walk": ^1.2.3 + glob-parent: ^5.1.0 + merge2: ^1.3.0 + micromatch: ^4.0.2 + picomatch: ^2.2.1 + checksum: 18f9eca898bc3be71b717cb59cb424e937bb9f5629449ba4e93e498dca9db921a9fd3cbdc3389d3f94aec3074bbe2ff6a74f779627a93e81ba0262b795ec44e4 + languageName: node + linkType: hard + +"fast-json-stable-stringify@npm:2.x, fast-json-stable-stringify@npm:^2.0.0": + version: 2.1.0 + resolution: "fast-json-stable-stringify@npm:2.1.0" + checksum: 7df3fabfe445d65953b2d9d9d3958bd895438b215a40fb87dae8b2165c5169a897785eb5d51e6cf0eb03523af756e3d82ea01083f6ac6341fe16db532fee3016 + languageName: node + linkType: hard + +"fast-levenshtein@npm:^2.0.6, fast-levenshtein@npm:~2.0.6": + version: 2.0.6 + resolution: "fast-levenshtein@npm:2.0.6" + checksum: a2d03af3088b0397633e007fb3010ecfa4f91cae2116d2385653c59396a1b31467641afa672a79e6f82218518670dc144128378124e711e35dbf90bc82846f22 + languageName: node + linkType: hard + +"fast-url-parser@npm:1.1.3": + version: 1.1.3 + resolution: "fast-url-parser@npm:1.1.3" + dependencies: + punycode: ^1.3.2 + checksum: 8dbc306b736e32963fe4391a581401c422d826497ce5cacf6e7c60525febfbcea477fbc5b012fe3316f6634a20fa00882168c5ed792ff3ef904c5bc6a11a598d + languageName: node + linkType: hard + +"fastq@npm:^1.6.0": + version: 1.8.0 + resolution: "fastq@npm:1.8.0" + dependencies: + reusify: ^1.0.4 + checksum: 77d71545ba88a5c4cbe628716bcf7a0db1dbe81943c1abfbe9eab65db17c6c1db7836e99478b3b8baf21d260b896dff4723f7b7af6606b3d3db2b135bf414c16 + languageName: node + linkType: hard + +"faye-websocket@npm:^0.10.0": + version: 0.10.0 + resolution: "faye-websocket@npm:0.10.0" + dependencies: + websocket-driver: ">=0.5.1" + checksum: 2a5823ddfb39ec7ef952dd1adab4c28fd162f5ee175f40f8d7467560554299199c1f0aa505e0fe14a85452c76d0c4dbee32f8327c71bf2f61a32f62538843111 + languageName: node + linkType: hard + +"faye-websocket@npm:~0.11.1": + version: 0.11.3 + resolution: "faye-websocket@npm:0.11.3" + dependencies: + websocket-driver: ">=0.5.1" + checksum: 94c48a5b4e9ab6ff05a424dfeebe0da6c7963776172c8713588926f1e15348c423e440c601360d105602586d59f8daeed5dadb76e29070f0b468ebd55e1f868d + languageName: node + linkType: hard + +"fb-watchman@npm:^2.0.0": + version: 2.0.1 + resolution: "fb-watchman@npm:2.0.1" + dependencies: + bser: 2.1.1 + checksum: f9ec24592a45026a6a7f54034a4b5efb010cac7d7fbc234fe9ae5d725c13efa9be0ded1ae348473fc42af4e28eea53f8b993857c0c49e6d721f7c9eb5b21217f + languageName: node + linkType: hard + +"fbjs-css-vars@npm:^1.0.0": + version: 1.0.2 + resolution: "fbjs-css-vars@npm:1.0.2" + checksum: 2f0c717cc2502932102b67d9dbfa75eeed8e5b6a655e12badfac2557907e635337a0a29acca262d0027bef87a8f63b52d0a2b065012eeaee1f0016f749b37b9a + languageName: node + linkType: hard + +"fbjs@npm:^1.0.0": + version: 1.0.0 + resolution: "fbjs@npm:1.0.0" + dependencies: + core-js: ^2.4.1 + fbjs-css-vars: ^1.0.0 + isomorphic-fetch: ^2.1.1 + loose-envify: ^1.0.0 + object-assign: ^4.1.0 + promise: ^7.1.1 + setimmediate: ^1.0.5 + ua-parser-js: ^0.7.18 + checksum: 8fbb6828cfb087b08f0ba088c62335dbc73f6da92ecf39bb61c1b045cb730803cb193484bd5e4409d4a78a1d723abbe030b0723c03b598a35fd7165d2ef2f006 + languageName: node + linkType: hard + +"feed@npm:^4.1.0": + version: 4.2.1 + resolution: "feed@npm:4.2.1" + dependencies: + xml-js: ^1.6.11 + checksum: b782f0df7d110d82b01d0717cc32b12c756347af2f965776589980d06b2267354125f4b83c6050020c5c2c65987dba796b20a82e94b609fe081038d255006eae + languageName: node + linkType: hard + +"figgy-pudding@npm:^3.4.1, figgy-pudding@npm:^3.5.1": + version: 3.5.2 + resolution: "figgy-pudding@npm:3.5.2" + checksum: 737645f602631734ad53b7445128e255939f809565350b376b3b8fad7673f37c82525a16463f176643ff4b989bb79ed0ecc18111a364ead1082a74c99195a6ca + languageName: node + linkType: hard + +"figlet@npm:^1.1.1": + version: 1.5.0 + resolution: "figlet@npm:1.5.0" + checksum: 49839d8179dc0a7b6f105f13348e233df79cc2959088316560c1a85af0e99466b3e85d417de2a1f87d4dd4f42c7a734b01b8290aaf1c04c80f6fcffdf7c86bde + languageName: node + linkType: hard + +"figures@npm:^1.7.0": + version: 1.7.0 + resolution: "figures@npm:1.7.0" + dependencies: + escape-string-regexp: ^1.0.5 + object-assign: ^4.1.0 + checksum: 17f76820de5201632650d0ea10b5485111677df96423a2401158e85eeb277344551fea908d4ca7407f4fa99ac2e7a70839ece89ce6185e7fa6787245aeb7fd87 + languageName: node + linkType: hard + +"figures@npm:^2.0.0": + version: 2.0.0 + resolution: "figures@npm:2.0.0" + dependencies: + escape-string-regexp: ^1.0.5 + checksum: de1145903784bd0b8bca1716426825d0a608fa81f370e0779047ef3f8d4509896f81435093e62a887717aeed0b8c8a92da7953f7f506ca57e62cf95d12b6c65a + languageName: node + linkType: hard + +"figures@npm:^3.0.0, figures@npm:^3.2.0": + version: 3.2.0 + resolution: "figures@npm:3.2.0" + dependencies: + escape-string-regexp: ^1.0.5 + checksum: 6c8acb1c17c4d27eeb6ff06801b5ae39a999c4794ec50eacf858a1e32746d92af77a9a907c3e1865e2e6ac7d9f1aa765f0f8a01a16a4676b79b6e90a7cc23f44 + languageName: node + linkType: hard + +"file-entry-cache@npm:^5.0.1": + version: 5.0.1 + resolution: "file-entry-cache@npm:5.0.1" + dependencies: + flat-cache: ^2.0.1 + checksum: 7140588becf15f05ee956cfb359b5f23e0c73acbbd38ad14c7a76a0097342e6bfc0a8151cd2e481ea3cbb735190ba9a0df4b69055ebb5b0389c62339b1a2f86b + languageName: node + linkType: hard + +"file-loader@npm:4.3.0": + version: 4.3.0 + resolution: "file-loader@npm:4.3.0" + dependencies: + loader-utils: ^1.2.3 + schema-utils: ^2.5.0 + peerDependencies: + webpack: ^4.0.0 + checksum: 03535f889b56836dc462f20e138ba5ad46893cc079cfb970b3434aa4d4e959a1e52770fa62e87d657f4d7d3dd9207726a464dee19eb82ccdafdc2e5c6a80f92a + languageName: node + linkType: hard + +"file-loader@npm:^6.0.0": + version: 6.0.0 + resolution: "file-loader@npm:6.0.0" + dependencies: + loader-utils: ^2.0.0 + schema-utils: ^2.6.5 + peerDependencies: + webpack: ^4.0.0 || ^5.0.0 + checksum: 745f5ee763fe46f2124921ff4fb7ed601eb1e8d6ac975cf6af321b3957ce8f78afb885c636e64a9031634e85e26dc9e8ef40ebeb532153c6a80a7d06b56876cb + languageName: node + linkType: hard + +"file-uri-to-path@npm:1.0.0": + version: 1.0.0 + resolution: "file-uri-to-path@npm:1.0.0" + checksum: 5ddb9682f04f6f87b7765b93306206db2f96bc86162487e27639c55fe3ffeed12c30906ef1dedaa5307d7cabbbbdcbfa299b79aaec435de0f17e17ab31bd20b3 + languageName: node + linkType: hard + +"filesize@npm:6.0.1": + version: 6.0.1 + resolution: "filesize@npm:6.0.1" + checksum: ee259a066a05bc159f030531e6afb946426fa4d3f8bb357b00334d8c0319b37b97c628f0320dfcbe9bfcc6a215929f9d903098dc58bc9ef248907f1c78aea37e + languageName: node + linkType: hard + +"filesize@npm:^3.6.1": + version: 3.6.1 + resolution: "filesize@npm:3.6.1" + checksum: 9fb54113c906f0b7aecc05440185dc8b8dac83bd73b839a5298ce02500a487151b3a4735784bfab027fc58776f5281ec4c31e60f59b9173d62f47838dae31783 + languageName: node + linkType: hard + +"fill-range@npm:^4.0.0": + version: 4.0.0 + resolution: "fill-range@npm:4.0.0" + dependencies: + extend-shallow: ^2.0.1 + is-number: ^3.0.0 + repeat-string: ^1.6.1 + to-regex-range: ^2.1.0 + checksum: 4a1491ee292f3d4a3d073c34cff0d7ba00dad8ad0de12d0a973c5aefb3f3f54971508cbc4b1c4923f6278b692b7695f9561086571fbee9f24cf3435ab92e8d50 + languageName: node + linkType: hard + +"fill-range@npm:^7.0.1": + version: 7.0.1 + resolution: "fill-range@npm:7.0.1" + dependencies: + to-regex-range: ^5.0.1 + checksum: efca43d59b487ad4bc0b2b1cb9e51617c75a7b0159db51fa190c75c3d634ea5fad1ff4750d7c14346add4cd065e3c46e8f99af333edf2b4ec2a424f87e491a85 + languageName: node + linkType: hard + +"finalhandler@npm:~1.1.2": + version: 1.1.2 + resolution: "finalhandler@npm:1.1.2" + 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 + checksum: f2e5b6bfe2201f13e74408530a7f354b7846ab3e648b3dde4f8ed3b773c8a743c16b0f378cb5113df7fef84c5be364bb1a3655f0a75571f163c982289fbd9671 + languageName: node + linkType: hard + +"find-cache-dir@npm:^0.1.1": + version: 0.1.1 + resolution: "find-cache-dir@npm:0.1.1" + dependencies: + commondir: ^1.0.1 + mkdirp: ^0.5.1 + pkg-dir: ^1.0.0 + checksum: 3097d0185122d2b944edaa727bb1575177d0b128f72a45ac9c79ff1d99100a3dd1bb967a7697e028b941ab1153c593aae34423ed852042e4568d23dabafaa297 + languageName: node + linkType: hard + +"find-cache-dir@npm:^2.1.0": + version: 2.1.0 + resolution: "find-cache-dir@npm:2.1.0" + dependencies: + commondir: ^1.0.1 + make-dir: ^2.0.0 + pkg-dir: ^3.0.0 + checksum: 6e996026565b651d709964abad7f353976e83e869dffae96f73f99f51078eb856a82411a3f2c77f89040c4976aed28248a761590f7237796a8578d00c6b34446 + languageName: node + linkType: hard + +"find-cache-dir@npm:^3.0.0, find-cache-dir@npm:^3.2.0, find-cache-dir@npm:^3.3.1": + version: 3.3.1 + resolution: "find-cache-dir@npm:3.3.1" + dependencies: + commondir: ^1.0.1 + make-dir: ^3.0.2 + pkg-dir: ^4.1.0 + checksum: b1e23226ee89fba89646aa5f72d084c6d04bb64f6d523c9cb2d57a1b5280fcac39e92fd5be572e2fae8a83aa70bc5b797ce33a826b9a4b92373cc38e66d4aa64 + languageName: node + linkType: hard + +"find-up@npm:4.1.0, find-up@npm:^4.0.0, find-up@npm:^4.1.0": + version: 4.1.0 + resolution: "find-up@npm:4.1.0" + dependencies: + locate-path: ^5.0.0 + path-exists: ^4.0.0 + checksum: d612d28e02eaca6cd7128fc9bc9b456e2547a3f9875b2b2ae2dbdc6b8cec52bc2885efcb3ac6c18954e838f4c8e20565d196784b190e1d38565f9dc39aade722 + languageName: node + linkType: hard + +"find-up@npm:^1.0.0": + version: 1.1.2 + resolution: "find-up@npm:1.1.2" + dependencies: + path-exists: ^2.0.0 + pinkie-promise: ^2.0.0 + checksum: cc15a62434c3f7f499d2f8c956aeeace97a8e87ad52ad78e156bd52e9c2acafcaad729356b564d0d57150b48017d0d3165ba2e790546550b3de8b7db256b883b + languageName: node + linkType: hard + +"find-up@npm:^2.0.0, find-up@npm:^2.1.0": + version: 2.1.0 + resolution: "find-up@npm:2.1.0" + dependencies: + locate-path: ^2.0.0 + checksum: 9dedb89f936b572f7c9fda3f66ebe146b0000fe9ef16fad94a77c25ce9585962e910bb32c1e08bab9b423985ff20221d2af4b7e4130b27c0f5f60c1aad3f6a7f + languageName: node + linkType: hard + +"find-up@npm:^3.0.0": + version: 3.0.0 + resolution: "find-up@npm:3.0.0" + dependencies: + locate-path: ^3.0.0 + checksum: c5422fc7231820421cff6f6e3a5d00a11a79fd16625f2af779c6aedfbaad66764fd149c1b84017aa44e85f86395eb25c31188ad273fc468a981b529eaa59a424 + languageName: node + linkType: hard + +"find-versions@npm:^3.2.0": + version: 3.2.0 + resolution: "find-versions@npm:3.2.0" + dependencies: + semver-regex: ^2.0.0 + checksum: 2ddc16b4265184e2b7ab68bfd9d84835178fef4193abd957ebe328e0de98e8ca3b31e2a19201c1c8308e24786faa295aab46c0bc21fa89440e2a1bc8174987f0 + languageName: node + linkType: hard + +"flat-cache@npm:^2.0.1": + version: 2.0.1 + resolution: "flat-cache@npm:2.0.1" + dependencies: + flatted: ^2.0.0 + rimraf: 2.6.3 + write: 1.0.3 + checksum: a36ba407553064be4a571cdee4021a50290f6179a0827df1d076a2e33cd84e543d0274cb15dbeb551c2ae6d53e611e3c02564a93f0d527563d0f560be7a14b0d + languageName: node + linkType: hard + +"flatted@npm:^2.0.0": + version: 2.0.2 + resolution: "flatted@npm:2.0.2" + checksum: a3e5fb71ad3c4f0661cd3899864812bcf3f64bdf6aa5f33f967c9c2a8a5f0c7219707e864c0602115fef40e093415f76a43e77afd0a86990904e2217ddb44eb4 + languageName: node + linkType: hard + +"flatten@npm:^1.0.2": + version: 1.0.3 + resolution: "flatten@npm:1.0.3" + checksum: 8a382594dc7bb4e4f28739a4abcd9d6f5c74d4be370892c10386a09656722e1a822137dc48c4bff15758e0656f8fee7bb3001133d068431796cf17b1f52a969a + languageName: node + linkType: hard + +"flush-write-stream@npm:^1.0.0": + version: 1.1.1 + resolution: "flush-write-stream@npm:1.1.1" + dependencies: + inherits: ^2.0.3 + readable-stream: ^2.3.6 + checksum: b8fa1fbfadd5c4b6df3cf2c34b3c408fe508a2899c536bafa339f679de545689997e907bd4ff61dd292942f8044fb2f293a5956dd8b601f6a5601617842d0dda + languageName: node + linkType: hard + +"follow-redirects@npm:^1.0.0": + version: 1.12.1 + resolution: "follow-redirects@npm:1.12.1" + checksum: afd9b64329e7001a9c79cfb2da85bd3c525994d3b67509a45b4a070385e7a9519d6732a5b5c30b1578369b3e747f7db06089354c91a677a13ef0c38c93116872 + languageName: node + linkType: hard + +"for-in@npm:^0.1.3": + version: 0.1.8 + resolution: "for-in@npm:0.1.8" + checksum: ba73137954ced20c1295e43df221ccc8cbe12a914787bf1af82f180f3e717227fb6c777d1afe3edc380f78eb4e142eee089a31c6de4bbe5294eda7b04f625943 + languageName: node + linkType: hard + +"for-in@npm:^1.0.1, for-in@npm:^1.0.2": + version: 1.0.2 + resolution: "for-in@npm:1.0.2" + checksum: e8d7280a654216e9951103e407d1655c2dfa67178ad468cb0b35701df6b594809ccdc66671b3478660d0e6c4bca9d038b1f1fc032716a184c19d67319550c554 + languageName: node + linkType: hard + +"for-own@npm:^0.1.3": + version: 0.1.5 + resolution: "for-own@npm:0.1.5" + dependencies: + for-in: ^1.0.1 + checksum: 7b9778a9197ab519e2c94aec35b44efb467d1867c181cea5a28d7a819480ce5ffcae0b4ae63f15d42f16312d72e63c3cdb1acbc407528ea0ba27afb9df4c958a + languageName: node + linkType: hard + +"forever-agent@npm:~0.6.1": + version: 0.6.1 + resolution: "forever-agent@npm:0.6.1" + checksum: 9cc0054dd4ea5fc26e014b8c929d1fb9247e931e81165cbd965a712061d65fb84791b2124f64cd79492e516662b94068d29fe1d824732382237321b3f61955fe + languageName: node + linkType: hard + +"fork-ts-checker-webpack-plugin@npm:3.1.1": + version: 3.1.1 + resolution: "fork-ts-checker-webpack-plugin@npm:3.1.1" + dependencies: + babel-code-frame: ^6.22.0 + chalk: ^2.4.1 + chokidar: ^3.3.0 + micromatch: ^3.1.10 + minimatch: ^3.0.4 + semver: ^5.6.0 + tapable: ^1.0.0 + worker-rpc: ^0.1.0 + checksum: 8a357eec4a4beead9d9cb64a781e179982c98db1600e040d04e7b2b0e3b0e2f5c872a86152112927bd391d803a445595ff507aeb0cc0c7d7cdba9e253a2bf531 + languageName: node + linkType: hard + +"form-data@npm:^2.5.0": + version: 2.5.1 + resolution: "form-data@npm:2.5.1" + dependencies: + asynckit: ^0.4.0 + combined-stream: ^1.0.6 + mime-types: ^2.1.12 + checksum: c46ee9a14a8678b6e0dfafabc96e25237d9f11ced9c51cd371a2b3448f6a3f2fa684b3bbbb35911bae8f5448b3f3c48c73f7f2be791a4ae5aee0eb0ab3cdfec2 + languageName: node + linkType: hard + +"form-data@npm:^3.0.0": + version: 3.0.0 + resolution: "form-data@npm:3.0.0" + dependencies: + asynckit: ^0.4.0 + combined-stream: ^1.0.8 + mime-types: ^2.1.12 + checksum: 1af88217b449eda6566a0d95185f2baa403ed2a0e3b11547069f6062be66cbac7c8d7a25f0fc59560702e96526e659b5b9e5a8c6fefe00f06da44338191a9133 + languageName: node + linkType: hard + +"form-data@npm:~2.3.2": + version: 2.3.3 + resolution: "form-data@npm:2.3.3" + dependencies: + asynckit: ^0.4.0 + combined-stream: ^1.0.6 + mime-types: ^2.1.12 + checksum: 862e686b105634222db77138d5f5ae08ba85f88c04925de5be86b2b9d03cf671d86566ad10f1dd5217634c0f1634069dfc1a663a1cc13e8fbac0ce8f670ad070 + languageName: node + linkType: hard + +"formik@npm:2.1.4": + version: 2.1.4 + resolution: "formik@npm:2.1.4" + dependencies: + deepmerge: ^2.1.1 + hoist-non-react-statics: ^3.3.0 + lodash: ^4.17.14 + lodash-es: ^4.17.14 + react-fast-compare: ^2.0.1 + scheduler: ^0.18.0 + tiny-warning: ^1.0.2 + tslib: ^1.10.0 + peerDependencies: + react: ">=16.3.0" + checksum: ff90492b85421182727bcae01f60851d53c66237c7afd0281d279ad978cc385920c7e764b07c7192d4d5384bdec0ba3a14ec4d0f9af438fe92d89b22b6b432d7 + languageName: node + linkType: hard + +"forwarded@npm:~0.1.2": + version: 0.1.2 + resolution: "forwarded@npm:0.1.2" + checksum: 568d862ad1c514813fc62dc1bd58b8669b16d4ee2e634a6fc71f4849df798883ab94e63d8e1b35a17af51b2b39ca869e672c7310efe42fc7b9bad43a80b5ff87 + languageName: node + linkType: hard + +"fragment-cache@npm:^0.2.1": + version: 0.2.1 + resolution: "fragment-cache@npm:0.2.1" + dependencies: + map-cache: ^0.2.2 + checksum: f88983f4bf54f9a8847d15e54518535aecbfa9b7f0242604ca5cd027d88ea1469212b5dbb579233e769d0e2f4e6764bc6bbac44731fb78b9964942165c7c3048 + languageName: node + linkType: hard + +"fresh@npm:0.5.2": + version: 0.5.2 + resolution: "fresh@npm:0.5.2" + checksum: 2f76c8505d1ea5a6d5accea3e7aff0b796bfa43364c84929254f33909fa08640948bd1728220d1ff5f4c2b378a65e97da647f2fe0f2b7ddb44001f6e0dc2e91f + languageName: node + linkType: hard + +"from2@npm:^2.1.0": + version: 2.3.0 + resolution: "from2@npm:2.3.0" + dependencies: + inherits: ^2.0.1 + readable-stream: ^2.0.0 + checksum: 5f1a9bbff02d30cf5b4f12cfef20b47455876f8318b92d275ca39e3c5adf0636d3a0d8f4821a1c245339c47e79a551dce9ce5c7d9236c16347b934dc13d1d408 + languageName: node + linkType: hard + +"fs-capacitor@npm:^2.0.4": + version: 2.0.4 + resolution: "fs-capacitor@npm:2.0.4" + checksum: 08b70847be568de2c91e54690e733df7bd8599e6fca4ee56f9872a04f0bbf5367bccbe1fc2c8140f891e87c6108a41f874b9b7a4f3d32bc694b3f396ec6d652b + languageName: node + linkType: hard + +"fs-extra@npm:9.0.1, fs-extra@npm:^9.0.0": + version: 9.0.1 + resolution: "fs-extra@npm:9.0.1" + dependencies: + at-least-node: ^1.0.0 + graceful-fs: ^4.2.0 + jsonfile: ^6.0.1 + universalify: ^1.0.0 + checksum: b7374cb05819bd95fa15bf74a30fbec3d2b64a0c00d2df67d6e1d6a901a9a7582a1243fe652d27a6cd042b38a2c1cd9ae3b3d100bc98dd041cc2f3e29964884f + languageName: node + linkType: hard + +"fs-extra@npm:^4.0.2": + version: 4.0.3 + resolution: "fs-extra@npm:4.0.3" + dependencies: + graceful-fs: ^4.1.2 + jsonfile: ^4.0.0 + universalify: ^0.1.0 + checksum: ad42def19446c82543ebfa707250de2e1adff8f1c902f9cad3946f69b3dad326696f70e86c3aebeab4bc4f19ff3ef9abee0460d7fb775122f3dc9142a4b1280f + languageName: node + linkType: hard + +"fs-extra@npm:^7.0.0": + version: 7.0.1 + resolution: "fs-extra@npm:7.0.1" + dependencies: + graceful-fs: ^4.1.2 + jsonfile: ^4.0.0 + universalify: ^0.1.0 + checksum: 0de3773953a13b517f053dbfa291166da076cc563cdd8f0ecefc64018ab15d2614f1707860b82e6b0e41695f613c1855f410749bd01bcb585f0243b1018a6595 + languageName: node + linkType: hard + +"fs-extra@npm:^8.1.0": + version: 8.1.0 + resolution: "fs-extra@npm:8.1.0" + dependencies: + graceful-fs: ^4.2.0 + jsonfile: ^4.0.0 + universalify: ^0.1.0 + checksum: 056a96d4f55ab8728b021e251175a4a6440d1edb5845e6c2e8e010019bde3e63de188a0eb99386c21c71804ca1a571cd6e08f507971f10a2bc4f4f7667720fa4 + languageName: node + linkType: hard + +"fs-minipass@npm:^1.2.5": + version: 1.2.7 + resolution: "fs-minipass@npm:1.2.7" + dependencies: + minipass: ^2.6.0 + checksum: eb59a93065f25457e5d1d10a064e22565e704b03140d5ef86a71a57155b13aa645811126fed2a5a282df8dc9c40df9c9d696f6b2d93c181071a971221d0a454b + languageName: node + linkType: hard + +"fs-minipass@npm:^2.0.0": + version: 2.1.0 + resolution: "fs-minipass@npm:2.1.0" + dependencies: + minipass: ^3.0.0 + checksum: e14a490658621cf1f7d8cbf9e92a9cc4dc7ce050418e4817e877e4531c438223db79f7a1774668087428d665a3de95f87014ce36c8afdc841fea42bcb782abcb + languageName: node + linkType: hard + +"fs-write-stream-atomic@npm:^1.0.8": + version: 1.0.10 + resolution: "fs-write-stream-atomic@npm:1.0.10" + dependencies: + graceful-fs: ^4.1.2 + iferr: ^0.1.5 + imurmurhash: ^0.1.4 + readable-stream: 1 || 2 + checksum: 1e35e18bdd0215587ed74fa68fd2e96240ecbc91213cdb3c2e3cad49a99767b224507261757658a034c22223a20ec6179a14a4fe7c28631e2547c4fde3b42fa2 + languageName: node + linkType: hard + +"fs.realpath@npm:^1.0.0": + version: 1.0.0 + resolution: "fs.realpath@npm:1.0.0" + checksum: 698a91b1695e3926185c9e5b0dd57cf687dceb4eb73799af91e6b2ab741735e2962c366c5af6403ffddae2619914193bd339efa706fdc984d0ffc74b7a3603f4 + languageName: node + linkType: hard + +"fsevents@2.1.2, fsevents@^2.1.2, fsevents@~2.1.2": + version: 2.1.2 + resolution: "fsevents@npm:2.1.2" + dependencies: + node-gyp: latest + checksum: 8f61ef784058aa410def121afcf20014fbb845c678c04e43fe1fd1edec6c469c5452343b4a49960d89e8a207955c8e9b37a229af7a8fc5b28658c9e0faabe086 + languageName: node + linkType: hard fsevents@^1.2.7: - version "1.2.13" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.13.tgz#f325cb0455592428bcf11b383370ef70e3bfcc38" - integrity sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw== - dependencies: - bindings "^1.5.0" - nan "^2.12.1" - -fsevents@^2.1.2, fsevents@~2.1.2: - version "2.1.3" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.3.tgz#fb738703ae8d2f9fe900c33836ddebee8b97f23e" - integrity sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ== - -function-bind@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" - integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== - -functional-red-black-tree@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" - integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= - -gauge@~2.7.3: - version "2.7.4" - resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" - integrity sha1-LANAXHU4w51+s3sxcCLjJfsBi/c= - 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" - -genfun@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/genfun/-/genfun-5.0.0.tgz#9dd9710a06900a5c4a5bf57aca5da4e52fe76537" - integrity sha512-KGDOARWVga7+rnB3z9Sd2Letx515owfk0hSxHGuqjANb1M+x2bGZGqHLiozPsYMdM2OubeMni/Hpwmjq6qIUhA== - -gensync@^1.0.0-beta.1: - version "1.0.0-beta.1" - resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.1.tgz#58f4361ff987e5ff6e1e7a210827aa371eaac269" - integrity sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg== - -get-caller-file@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a" - integrity sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w== - -get-caller-file@^2.0.1: - version "2.0.5" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" - integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== - -get-own-enumerable-property-symbols@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz#b5fde77f22cbe35f390b4e089922c50bce6ef664" - integrity sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g== - -get-package-type@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" - integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q== - -get-pkg-repo@^1.0.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/get-pkg-repo/-/get-pkg-repo-1.4.0.tgz#c73b489c06d80cc5536c2c853f9e05232056972d" - integrity sha1-xztInAbYDMVTbCyFP54FIyBWly0= - dependencies: - hosted-git-info "^2.1.4" - meow "^3.3.0" - normalize-package-data "^2.3.0" - parse-github-repo-url "^1.3.0" - through2 "^2.0.0" - -get-port@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/get-port/-/get-port-4.2.0.tgz#e37368b1e863b7629c43c5a323625f95cf24b119" - integrity sha512-/b3jarXkH8KJoOMQc3uVGHASwGLPq3gSFJ7tgJm2diza+bydJPTGOibin2steecKeOylE8oY2JERlVWkAJO6yw== - -get-stdin@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" - integrity sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4= - -get-stdin@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-6.0.0.tgz#9e09bf712b360ab9225e812048f71fde9c89657b" - integrity sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g== - -get-stream@^4.0.0, get-stream@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" - integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== - dependencies: - pump "^3.0.0" - -get-stream@^5.0.0, get-stream@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.1.0.tgz#01203cdc92597f9b909067c3e656cc1f4d3c4dc9" - integrity sha512-EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw== - dependencies: - pump "^3.0.0" - -get-value@^2.0.3, get-value@^2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" - integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg= - -getpass@^0.1.1: - version "0.1.7" - resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" - integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo= - dependencies: - assert-plus "^1.0.0" - -git-raw-commits@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/git-raw-commits/-/git-raw-commits-2.0.0.tgz#d92addf74440c14bcc5c83ecce3fb7f8a79118b5" - integrity sha512-w4jFEJFgKXMQJ0H0ikBk2S+4KP2VEjhCvLCNqbNRQC8BgGWgLKNCO7a9K9LI+TVT7Gfoloje502sEnctibffgg== - dependencies: - dargs "^4.0.1" - lodash.template "^4.0.2" - meow "^4.0.0" - split2 "^2.0.0" - through2 "^2.0.0" - -git-remote-origin-url@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/git-remote-origin-url/-/git-remote-origin-url-2.0.0.tgz#5282659dae2107145a11126112ad3216ec5fa65f" - integrity sha1-UoJlna4hBxRaERJhEq0yFuxfpl8= - dependencies: - gitconfiglocal "^1.0.0" - pify "^2.3.0" - -git-semver-tags@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/git-semver-tags/-/git-semver-tags-2.0.3.tgz#48988a718acf593800f99622a952a77c405bfa34" - integrity sha512-tj4FD4ww2RX2ae//jSrXZzrocla9db5h0V7ikPl1P/WwoZar9epdUhwR7XHXSgc+ZkNq72BEEerqQuicoEQfzA== - dependencies: - meow "^4.0.0" - semver "^6.0.0" - -git-semver-tags@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/git-semver-tags/-/git-semver-tags-4.0.0.tgz#a9dd58a0dd3561a4a9898b7e9731cf441c98fc38" - integrity sha512-LajaAWLYVBff+1NVircURJFL8TQ3EMIcLAfHisWYX/nPoMwnTYfWAznQDmMujlLqoD12VtLmoSrF1sQ5MhimEQ== - dependencies: - meow "^7.0.0" - semver "^6.0.0" - -git-up@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/git-up/-/git-up-4.0.1.tgz#cb2ef086653640e721d2042fe3104857d89007c0" - integrity sha512-LFTZZrBlrCrGCG07/dm1aCjjpL1z9L3+5aEeI9SBhAqSc+kiA9Or1bgZhQFNppJX6h/f5McrvJt1mQXTFm6Qrw== - dependencies: - is-ssh "^1.3.0" - parse-url "^5.0.0" - -git-url-parse@^11.1.2: - version "11.1.2" - resolved "https://registry.yarnpkg.com/git-url-parse/-/git-url-parse-11.1.2.tgz#aff1a897c36cc93699270587bea3dbcbbb95de67" - integrity sha512-gZeLVGY8QVKMIkckncX+iCq2/L8PlwncvDFKiWkBn9EtCfYDbliRTTp6qzyQ1VMdITUfq7293zDzfpjdiGASSQ== - dependencies: - git-up "^4.0.0" - -gitconfiglocal@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/gitconfiglocal/-/gitconfiglocal-1.0.0.tgz#41d045f3851a5ea88f03f24ca1c6178114464b9b" - integrity sha1-QdBF84UaXqiPA/JMocYXgRRGS5s= - dependencies: - ini "^1.3.2" - -glob-parent@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" - integrity sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4= - dependencies: - is-glob "^3.1.0" - path-dirname "^1.0.0" - -glob-parent@^5.0.0, glob-parent@^5.1.0, glob-parent@~5.1.0: - version "5.1.1" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.1.tgz#b6c1ef417c4e5663ea498f1c45afac6916bbc229" - integrity sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ== - dependencies: - is-glob "^4.0.1" - -glob-to-regexp@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz#8c5a1494d2066c570cc3bfe4496175acc4d502ab" - integrity sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs= - -glob@7.1.6, glob@^7.0.0, glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: - version "7.1.6" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" - integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== - 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" - -global-dirs@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/global-dirs/-/global-dirs-2.0.1.tgz#acdf3bb6685bcd55cb35e8a052266569e9469201" - integrity sha512-5HqUqdhkEovj2Of/ms3IeS/EekcO54ytHRLV4PEY2rhRwrHXLQjeVEES0Lhka0xwNDtGYn58wyC4s5+MHsOO6A== - dependencies: - ini "^1.3.5" - -global-modules@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-2.0.0.tgz#997605ad2345f27f51539bea26574421215c7780" - integrity sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A== - dependencies: - global-prefix "^3.0.0" - -global-prefix@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-3.0.0.tgz#fc85f73064df69f50421f47f883fe5b913ba9b97" - integrity sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg== - dependencies: - ini "^1.3.5" - kind-of "^6.0.2" - which "^1.3.1" - -globals@^11.1.0: - version "11.12.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" - integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== - -globals@^12.1.0: - version "12.4.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-12.4.0.tgz#a18813576a41b00a24a97e7f815918c2e19925f8" - integrity sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg== - dependencies: - type-fest "^0.8.1" - -globby@11.0.1: - version "11.0.1" - resolved "https://registry.yarnpkg.com/globby/-/globby-11.0.1.tgz#9a2bf107a068f3ffeabc49ad702c79ede8cfd357" - integrity sha512-iH9RmgwCmUJHi2z5o2l3eTtGBtXek1OYlHrbcxOYugyHLmAsZrPj43OtHThd62Buh/Vv6VyCBD2bdyWcGNQqoQ== - 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" - -globby@8.0.2: - version "8.0.2" - resolved "https://registry.yarnpkg.com/globby/-/globby-8.0.2.tgz#5697619ccd95c5275dbb2d6faa42087c1a941d8d" - integrity sha512-yTzMmKygLp8RUpG1Ymu2VXPSJQZjNAZPD4ywgYEaG7e4tBJeUQBO8OpXrf1RCNcEs5alsoJYPAMiIHP0cmeC7w== - dependencies: - array-union "^1.0.1" - dir-glob "2.0.0" - fast-glob "^2.0.2" - glob "^7.1.2" - ignore "^3.3.5" - pify "^3.0.0" - slash "^1.0.0" - -globby@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c" - integrity sha1-9abXDoOV4hyFj7BInWTfAkJNUGw= - dependencies: - array-union "^1.0.1" - glob "^7.0.3" - object-assign "^4.0.1" - pify "^2.0.0" - pinkie-promise "^2.0.0" - -globby@^9.2.0: - version "9.2.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-9.2.0.tgz#fd029a706c703d29bdd170f4b6db3a3f7a7cb63d" - integrity sha512-ollPHROa5mcxDEkwg6bPt3QbEf4pDQSNtd6JPL1YvOvAo/7/0VAm9TccUeoTmarjPw4pfUthSCqcyfNB1I3ZSg== - dependencies: - "@types/glob" "^7.1.1" - array-union "^1.0.2" - dir-glob "^2.2.2" - fast-glob "^2.2.6" - glob "^7.1.3" - ignore "^4.0.3" - pify "^4.0.1" - slash "^2.0.0" - -got@^9.6.0: - version "9.6.0" - resolved "https://registry.yarnpkg.com/got/-/got-9.6.0.tgz#edf45e7d67f99545705de1f7bbeeeb121765ed85" - integrity sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q== - dependencies: - "@sindresorhus/is" "^0.14.0" - "@szmarczak/http-timer" "^1.1.2" - cacheable-request "^6.0.0" - decompress-response "^3.3.0" - duplexer3 "^0.1.4" - get-stream "^4.1.0" - lowercase-keys "^1.0.1" - mimic-response "^1.0.1" - p-cancelable "^1.0.0" - to-readable-stream "^1.0.0" - url-parse-lax "^3.0.0" - -graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.2, graceful-fs@^4.2.4: - version "4.2.4" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.4.tgz#2256bde14d3632958c465ebc96dc467ca07a29fb" - integrity sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw== - -graphql-config@^3.0.2: - version "3.0.3" - resolved "https://registry.yarnpkg.com/graphql-config/-/graphql-config-3.0.3.tgz#58907c65ed7d6e04132321450b60e57863ea9a5f" - integrity sha512-MBY0wEjvcgJtZUyoqpPvOE1e5qPI0hJaa1gKTqjonSFiCsNHX2lykNjpOPcodmAgH1V06ELxhGnm9kcVzqvi/g== - dependencies: - "@graphql-tools/graphql-file-loader" "^6.0.0" - "@graphql-tools/json-file-loader" "^6.0.0" - "@graphql-tools/load" "^6.0.0" - "@graphql-tools/merge" "^6.0.0" - "@graphql-tools/url-loader" "^6.0.0" - "@graphql-tools/utils" "^6.0.0" - cosmiconfig "6.0.0" - minimatch "3.0.4" - string-env-interpolation "1.0.1" - tslib "^2.0.0" - -graphql-extensions@^0.12.3: - version "0.12.3" - resolved "https://registry.yarnpkg.com/graphql-extensions/-/graphql-extensions-0.12.3.tgz#593b210d0c1ec79985056bea1b7d645e5eddfc31" - integrity sha512-W7iT0kzlwTiZU7fXfw9IgWnsqVj7EFLd0/wVcZZRAbR8L3f4+YsGls0oxKdsrvYBnbG347BXKQmIyo6GTEk4XA== - dependencies: - "@apollographql/apollo-tools" "^0.4.3" - apollo-server-env "^2.4.4" - apollo-server-types "^0.5.0" - -graphql-extensions@^0.12.4: - version "0.12.4" - resolved "https://registry.yarnpkg.com/graphql-extensions/-/graphql-extensions-0.12.4.tgz#c0aa49a20f983a2da641526d1e505996bd2b4188" - integrity sha512-GnR4LiWk3s2bGOqIh6V1JgnSXw2RCH4NOgbCFEWvB6JqWHXTlXnLZ8bRSkCiD4pltv7RHUPWqN/sGh8R6Ae/ag== - dependencies: - "@apollographql/apollo-tools" "^0.4.3" - apollo-server-env "^2.4.5" - apollo-server-types "^0.5.1" - -graphql-request@^1.5.0: - version "1.8.2" - resolved "https://registry.yarnpkg.com/graphql-request/-/graphql-request-1.8.2.tgz#398d10ae15c585676741bde3fc01d5ca948f8fbe" - integrity sha512-dDX2M+VMsxXFCmUX0Vo0TopIZIX4ggzOtiCsThgtrKR4niiaagsGTDIHj3fsOMFETpa064vzovI+4YV4QnMbcg== - dependencies: - cross-fetch "2.2.2" - -graphql-subscriptions@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/graphql-subscriptions/-/graphql-subscriptions-1.1.0.tgz#5f2fa4233eda44cf7570526adfcf3c16937aef11" - integrity sha512-6WzlBFC0lWmXJbIVE8OgFgXIP4RJi3OQgTPa0DVMsDXdpRDjTsM1K9wfl5HSYX7R87QAGlvcv2Y4BIZa/ItonA== - dependencies: - iterall "^1.2.1" - -graphql-tag@2.10.4, graphql-tag@^2.10.4: - version "2.10.4" - resolved "https://registry.yarnpkg.com/graphql-tag/-/graphql-tag-2.10.4.tgz#2f301a98219be8b178a6453bb7e33b79b66d8f83" - integrity sha512-O7vG5BT3w6Sotc26ybcvLKNTdfr4GfsIVMD+LdYqXCeJIYPRyp8BIsDOUtxw7S1PYvRw5vH3278J2EDezR6mfA== - -graphql-tag@^2.9.2: - version "2.10.3" - resolved "https://registry.yarnpkg.com/graphql-tag/-/graphql-tag-2.10.3.tgz#ea1baba5eb8fc6339e4c4cf049dabe522b0edf03" - integrity sha512-4FOv3ZKfA4WdOKJeHdz6B3F/vxBLSgmBcGeAFPf4n1F64ltJUvOOerNj0rsJxONQGdhUMynQIvd6LzB+1J5oKA== - -graphql-tools@5.0.0, graphql-tools@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/graphql-tools/-/graphql-tools-5.0.0.tgz#67281c834a0e29f458adba8018f424816fa627e9" - integrity sha512-5zn3vtn//382b7G3Wzz3d5q/sh+f7tVrnxeuhTMTJ7pWJijNqLxH7VEzv8VwXCq19zAzHYEosFHfXiK7qzvk7w== - dependencies: - apollo-link "^1.2.14" - apollo-upload-client "^13.0.0" - deprecated-decorator "^0.1.6" - form-data "^3.0.0" - iterall "^1.3.0" - node-fetch "^2.6.0" - tslib "^1.11.1" - uuid "^7.0.3" - -graphql-tools@^4.0.0: - version "4.0.8" - resolved "https://registry.yarnpkg.com/graphql-tools/-/graphql-tools-4.0.8.tgz#e7fb9f0d43408fb0878ba66b522ce871bafe9d30" - integrity sha512-MW+ioleBrwhRjalKjYaLQbr+920pHBgy9vM/n47sswtns8+96sRn5M/G+J1eu7IMeKWiN/9p6tmwCHU7552VJg== - dependencies: - apollo-link "^1.2.14" - apollo-utilities "^1.0.1" - deprecated-decorator "^0.1.6" - iterall "^1.1.3" - uuid "^3.1.0" - -graphql-upload@^8.0.2: - version "8.1.0" - resolved "https://registry.yarnpkg.com/graphql-upload/-/graphql-upload-8.1.0.tgz#6d0ab662db5677a68bfb1f2c870ab2544c14939a" - integrity sha512-U2OiDI5VxYmzRKw0Z2dmfk0zkqMRaecH9Smh1U277gVgVe9Qn+18xqf4skwr4YJszGIh7iQDZ57+5ygOK9sM/Q== - dependencies: - busboy "^0.3.1" - fs-capacitor "^2.0.4" - http-errors "^1.7.3" - object-path "^0.11.4" - -graphql@14.6.0, graphql@^14.5.3: - version "14.6.0" - resolved "https://registry.yarnpkg.com/graphql/-/graphql-14.6.0.tgz#57822297111e874ea12f5cd4419616930cd83e49" - integrity sha512-VKzfvHEKybTKjQVpTFrA5yUq2S9ihcZvfJAtsDBBCuV6wauPu1xl/f9ehgVf0FcEJJs4vz6ysb/ZMkGigQZseg== - dependencies: - iterall "^1.2.2" - -growly@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" - integrity sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE= - -gud@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/gud/-/gud-1.0.0.tgz#a489581b17e6a70beca9abe3ae57de7a499852c0" - integrity sha512-zGEOVKFM5sVPPrYs7J5/hYEw2Pof8KCyOwyhG8sAF26mCAeUFAcYPu1mwB7hhpIP29zOIBaDqwuHdLp0jvZXjw== - -gzip-size@5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-5.1.1.tgz#cb9bee692f87c0612b232840a873904e4c135274" - integrity sha512-FNHi6mmoHvs1mxZAds4PpdCS6QG8B4C1krxJsMutgxl5t3+GlRTzzI3NEkifXx2pVsOvJdOGSmIgDhQ55FwdPA== - dependencies: - duplexer "^0.1.1" - pify "^4.0.1" - -handle-thing@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-2.0.1.tgz#857f79ce359580c340d43081cc648970d0bb234e" - integrity sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg== - -handlebars@^4.7.6: - version "4.7.6" - resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.6.tgz#d4c05c1baf90e9945f77aa68a7a219aa4a7df74e" - integrity sha512-1f2BACcBfiwAfStCKZNrUCgqNZkGsAT7UM3kkYtXuLo0KnaVfjKOyf7PRzB6++aK9STyT1Pd2ZCPe3EGOXleXA== - dependencies: - minimist "^1.2.5" - neo-async "^2.6.0" - source-map "^0.6.1" - wordwrap "^1.0.0" - optionalDependencies: - uglify-js "^3.1.4" - -har-schema@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" - integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI= - -har-validator@~5.1.3: - version "5.1.3" - resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.3.tgz#1ef89ebd3e4996557675eed9893110dc350fa080" - integrity sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g== - dependencies: - ajv "^6.5.5" - har-schema "^2.0.0" - -hard-rejection@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/hard-rejection/-/hard-rejection-2.1.0.tgz#1c6eda5c1685c63942766d79bb40ae773cecd883" - integrity sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA== - -harmony-reflect@^1.4.6: - version "1.6.1" - resolved "https://registry.yarnpkg.com/harmony-reflect/-/harmony-reflect-1.6.1.tgz#c108d4f2bb451efef7a37861fdbdae72c9bdefa9" - integrity sha512-WJTeyp0JzGtHcuMsi7rw2VwtkvLa+JyfEKJCFyfcS0+CDkjQ5lHPu7zEhFZP+PDSRrEgXa5Ah0l1MbgbE41XjA== - -has-ansi@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" - integrity sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE= - dependencies: - ansi-regex "^2.0.0" - -has-flag@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" - integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= - -has-flag@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" - integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== - -has-symbols@^1.0.0, has-symbols@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.1.tgz#9f5214758a44196c406d9bd76cebf81ec2dd31e8" - integrity sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg== - -has-unicode@^2.0.0, has-unicode@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" - integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= - -has-value@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" - integrity sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8= - dependencies: - get-value "^2.0.3" - has-values "^0.1.4" - isobject "^2.0.0" - -has-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" - integrity sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc= - dependencies: - get-value "^2.0.6" - has-values "^1.0.0" - isobject "^3.0.0" - -has-values@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" - integrity sha1-bWHeldkd/Km5oCCJrThL/49it3E= - -has-values@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" - integrity sha1-lbC2P+whRmGab+V/51Yo1aOe/k8= - dependencies: - is-number "^3.0.0" - kind-of "^4.0.0" - -has-yarn@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/has-yarn/-/has-yarn-2.1.0.tgz#137e11354a7b5bf11aa5cb649cf0c6f3ff2b2e77" - integrity sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw== - -has@^1.0.0, has@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" - integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== - dependencies: - function-bind "^1.1.1" - -hash-base@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.1.0.tgz#55c381d9e06e1d2997a883b4a3fddfe7f0d3af33" - integrity sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA== - dependencies: - inherits "^2.0.4" - readable-stream "^3.6.0" - safe-buffer "^5.2.0" - -hash.js@^1.0.0, hash.js@^1.0.3: - version "1.1.7" - resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" - integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== - dependencies: - inherits "^2.0.3" - minimalistic-assert "^1.0.1" - -he@^1.1.0, he@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" - integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== - -header-case@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/header-case/-/header-case-2.0.3.tgz#8a7407d16edfd5c970f8ebb116e6383f855b5a72" - integrity sha512-LChe/V32mnUQnTwTxd3aAlNMk8ia9tjCDb/LjYtoMrdAPApxLB+azejUk5ERZIZdIqvinwv6BAUuFXH/tQPdZA== - dependencies: - capital-case "^1.0.3" - tslib "^1.10.0" - -hex-color-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/hex-color-regex/-/hex-color-regex-1.1.0.tgz#4c06fccb4602fe2602b3c93df82d7e7dbf1a8a8e" - integrity sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ== - -highlight.js@^9.6.0: - version "9.18.1" - resolved "https://registry.yarnpkg.com/highlight.js/-/highlight.js-9.18.1.tgz#ed21aa001fe6252bb10a3d76d47573c6539fe13c" - integrity sha512-OrVKYz70LHsnCgmbXctv/bfuvntIKDz177h0Co37DQ5jamGZLVmoCVMtjMtNZY3X9DrCcKfklHPNeA0uPZhSJg== - -history@^4.9.0: - version "4.10.1" - resolved "https://registry.yarnpkg.com/history/-/history-4.10.1.tgz#33371a65e3a83b267434e2b3f3b1b4c58aad4cf3" - integrity sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew== - dependencies: - "@babel/runtime" "^7.1.2" - loose-envify "^1.2.0" - resolve-pathname "^3.0.0" - tiny-invariant "^1.0.2" - tiny-warning "^1.0.0" - value-equal "^1.0.1" - -hmac-drbg@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" - integrity sha1-0nRXAQJabHdabFRXk+1QL8DGSaE= - dependencies: - hash.js "^1.0.3" - minimalistic-assert "^1.0.0" - minimalistic-crypto-utils "^1.0.1" - -hoist-non-react-statics@^3.1.0, hoist-non-react-statics@^3.3.0, hoist-non-react-statics@^3.3.2: - version "3.3.2" - resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45" - integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw== - dependencies: - react-is "^16.7.0" - -hosted-git-info@^2.1.4, hosted-git-info@^2.7.1: - version "2.8.8" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.8.tgz#7539bd4bc1e0e0a895815a2e0262420b12858488" - integrity sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg== - -hpack.js@^2.1.6: - version "2.1.6" - resolved "https://registry.yarnpkg.com/hpack.js/-/hpack.js-2.1.6.tgz#87774c0949e513f42e84575b3c45681fade2a0b2" - integrity sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI= - dependencies: - inherits "^2.0.1" - obuf "^1.0.0" - readable-stream "^2.0.1" - wbuf "^1.1.0" - -hsl-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/hsl-regex/-/hsl-regex-1.0.0.tgz#d49330c789ed819e276a4c0d272dffa30b18fe6e" - integrity sha1-1JMwx4ntgZ4nakwNJy3/owsY/m4= - -hsla-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/hsla-regex/-/hsla-regex-1.0.0.tgz#c1ce7a3168c8c6614033a4b5f7877f3b225f9c38" - integrity sha1-wc56MWjIxmFAM6S194d/OyJfnDg= - -html-comment-regex@^1.1.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/html-comment-regex/-/html-comment-regex-1.1.2.tgz#97d4688aeb5c81886a364faa0cad1dda14d433a7" - integrity sha512-P+M65QY2JQ5Y0G9KKdlDpo0zK+/OHptU5AaBwUfAIDJZk1MYf32Frm84EcOytfJE0t5JvkAnKlmjsXDnWzCJmQ== - -html-encoding-sniffer@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz#e70d84b94da53aa375e11fe3a351be6642ca46f8" - integrity sha512-71lZziiDnsuabfdYiUeWdCVyKuqwWi23L8YeIgV9jSSZHCtb6wB1BKWooH7L3tn4/FuZJMVWyNaIDr4RGmaSYw== - dependencies: - whatwg-encoding "^1.0.1" - -html-encoding-sniffer@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz#42a6dc4fd33f00281176e8b23759ca4e4fa185f3" - integrity sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ== - dependencies: - whatwg-encoding "^1.0.5" - -html-entities@^1.2.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.3.1.tgz#fb9a1a4b5b14c5daba82d3e34c6ae4fe701a0e44" - integrity sha512-rhE/4Z3hIhzHAUKbW8jVcCyuT5oJCXXqhN/6mXXVCpzTmvJnoH2HL/bt3EZ6p55jbFJBeAe1ZNpL5BugLujxNA== - -html-escaper@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" - integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== - -html-minifier-terser@^5.0.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz#922e96f1f3bb60832c2634b79884096389b1f054" - integrity sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg== - dependencies: - camel-case "^4.1.1" - clean-css "^4.2.3" - commander "^4.1.1" - he "^1.2.0" - param-case "^3.0.3" - relateurl "^0.2.7" - terser "^4.6.3" - -html-webpack-plugin@4.0.0-beta.11: - version "4.0.0-beta.11" - resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-4.0.0-beta.11.tgz#3059a69144b5aecef97708196ca32f9e68677715" - integrity sha512-4Xzepf0qWxf8CGg7/WQM5qBB2Lc/NFI7MhU59eUDTkuQp3skZczH4UA1d6oQyDEIoMDgERVhRyTdtUPZ5s5HBg== - dependencies: - html-minifier-terser "^5.0.1" - loader-utils "^1.2.3" - lodash "^4.17.15" - pretty-error "^2.1.1" - tapable "^1.1.3" - util.promisify "1.0.0" - -htmlparser2@^3.3.0: - version "3.10.1" - resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.10.1.tgz#bd679dc3f59897b6a34bb10749c855bb53a9392f" - integrity sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ== - dependencies: - domelementtype "^1.3.1" - domhandler "^2.3.0" - domutils "^1.5.1" - entities "^1.1.1" - inherits "^2.0.1" - readable-stream "^3.1.1" - -http-cache-semantics@^3.8.1: - version "3.8.1" - resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz#39b0e16add9b605bf0a9ef3d9daaf4843b4cacd2" - integrity sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w== - -http-cache-semantics@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz#49e91c5cbf36c9b94bcfcd71c23d5249ec74e390" - integrity sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ== - -http-deceiver@^1.2.7: - version "1.2.7" - resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" - integrity sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc= - -http-errors@1.7.2: - version "1.7.2" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.2.tgz#4f5029cf13239f31036e5b2e55292bcfbcc85c8f" - integrity sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg== - dependencies: - depd "~1.1.2" - inherits "2.0.3" - setprototypeof "1.1.1" - statuses ">= 1.5.0 < 2" - toidentifier "1.0.0" - -http-errors@^1.7.3, http-errors@~1.7.2: - version "1.7.3" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.3.tgz#6c619e4f9c60308c38519498c14fbb10aacebb06" - integrity sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw== - dependencies: - depd "~1.1.2" - inherits "2.0.4" - setprototypeof "1.1.1" - statuses ">= 1.5.0 < 2" - toidentifier "1.0.0" - -http-errors@~1.6.2: - version "1.6.3" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d" - integrity sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0= - dependencies: - depd "~1.1.2" - inherits "2.0.3" - setprototypeof "1.1.0" - statuses ">= 1.4.0 < 2" - -http-parser-js@>=0.5.1: - version "0.5.2" - resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.5.2.tgz#da2e31d237b393aae72ace43882dd7e270a8ff77" - integrity sha512-opCO9ASqg5Wy2FNo7A0sxy71yGbbkJJXLdgMK04Tcypw9jr2MgWbyubb0+WdmDmGnFflO7fRbqbaihh/ENDlRQ== - -http-proxy-agent@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz#e4821beef5b2142a2026bd73926fe537631c5405" - integrity sha512-qwHbBLV7WviBl0rQsOzH6o5lwyOIvwp/BdFnvVxXORldu5TmjFfjzBcWUWS5kWAZhmv+JtiDhSuQCp4sBfbIgg== - dependencies: - agent-base "4" - debug "3.1.0" - -http-proxy-middleware@0.19.1: - version "0.19.1" - resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz#183c7dc4aa1479150306498c210cdaf96080a43a" - integrity sha512-yHYTgWMQO8VvwNS22eLLloAkvungsKdKTLO8AJlftYIKNfJr3GK3zK0ZCfzDDGUBttdGc8xFy1mCitvNKQtC3Q== - dependencies: - http-proxy "^1.17.0" - is-glob "^4.0.0" - lodash "^4.17.11" - micromatch "^3.1.10" - -http-proxy@^1.17.0: - version "1.18.1" - resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.18.1.tgz#401541f0534884bbf95260334e72f88ee3976549" - integrity sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ== - dependencies: - eventemitter3 "^4.0.0" - follow-redirects "^1.0.0" - requires-port "^1.0.0" - -http-signature@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" - integrity sha1-muzZJRFHcvPZW2WmCruPfBj7rOE= - dependencies: - assert-plus "^1.0.0" - jsprim "^1.2.2" - sshpk "^1.7.0" - -https-browserify@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" - integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM= - -https-proxy-agent@^2.2.1, https-proxy-agent@^2.2.3: - version "2.2.4" - resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-2.2.4.tgz#4ee7a737abd92678a293d9b34a1af4d0d08c787b" - integrity sha512-OmvfoQ53WLjtA9HeYP9RNrWMJzzAz1JGaSFr1nijg0PVR1JaD/xbJq1mdEIIlxGpXp9eSe/O2LgU9DJmTPd0Eg== - dependencies: - agent-base "^4.3.0" - debug "^3.1.0" - -human-signals@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3" - integrity sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw== - -humanize-ms@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/humanize-ms/-/humanize-ms-1.2.1.tgz#c46e3159a293f6b896da29316d8b6fe8bb79bbed" - integrity sha1-xG4xWaKT9riW2ikxbYtv6Lt5u+0= - dependencies: - ms "^2.0.0" - -husky@4.2.5: - version "4.2.5" - resolved "https://registry.yarnpkg.com/husky/-/husky-4.2.5.tgz#2b4f7622673a71579f901d9885ed448394b5fa36" - integrity sha512-SYZ95AjKcX7goYVZtVZF2i6XiZcHknw50iXvY7b0MiGoj5RwdgRQNEHdb+gPDPCXKlzwrybjFjkL6FOj8uRhZQ== - dependencies: - chalk "^4.0.0" - ci-info "^2.0.0" - compare-versions "^3.6.0" - cosmiconfig "^6.0.0" - find-versions "^3.2.0" - opencollective-postinstall "^2.0.2" - pkg-dir "^4.2.0" - please-upgrade-node "^3.2.0" - slash "^3.0.0" - which-pm-runs "^1.0.0" - -hyphenate-style-name@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/hyphenate-style-name/-/hyphenate-style-name-1.0.3.tgz#097bb7fa0b8f1a9cf0bd5c734cf95899981a9b48" - integrity sha512-EcuixamT82oplpoJ2XU4pDtKGWQ7b00CD9f1ug9IaQ3p1bkHMiKCZ9ut9QDI6qsa6cpUuB+A/I+zLtdNK4n2DQ== - -iconv-lite@0.4.24, iconv-lite@^0.4.17, iconv-lite@^0.4.24, iconv-lite@~0.4.13: - version "0.4.24" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" - integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== - dependencies: - safer-buffer ">= 2.1.2 < 3" - -icss-utils@^4.0.0, icss-utils@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-4.1.1.tgz#21170b53789ee27447c2f47dd683081403f9a467" - integrity sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA== - dependencies: - postcss "^7.0.14" - -identity-obj-proxy@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/identity-obj-proxy/-/identity-obj-proxy-3.0.0.tgz#94d2bda96084453ef36fbc5aaec37e0f79f1fc14" - integrity sha1-lNK9qWCERT7zb7xarsN+D3nx/BQ= - dependencies: - harmony-reflect "^1.4.6" - -ieee754@^1.1.4: - version "1.1.13" - resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.13.tgz#ec168558e95aa181fd87d37f55c32bbcb6708b84" - integrity sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg== - -iferr@^0.1.5: - version "0.1.5" - resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501" - integrity sha1-xg7taebY/bazEEofy8ocGS3FtQE= - -ignore-by-default@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/ignore-by-default/-/ignore-by-default-1.0.1.tgz#48ca6d72f6c6a3af00a9ad4ae6876be3889e2b09" - integrity sha1-SMptcvbGo68Aqa1K5odr44ieKwk= - -ignore-walk@^3.0.1: - version "3.0.3" - resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.3.tgz#017e2447184bfeade7c238e4aefdd1e8f95b1e37" - integrity sha512-m7o6xuOaT1aqheYHKf8W6J5pYH85ZI9w077erOzLje3JsB1gkafkAhHHY19dqjulgIZHFm32Cp5uNZgcQqdJKw== - dependencies: - minimatch "^3.0.4" - -ignore@^3.3.5: - version "3.3.10" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.10.tgz#0a97fb876986e8081c631160f8f9f389157f0043" - integrity sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug== - -ignore@^4.0.3, ignore@^4.0.6: - version "4.0.6" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" - integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== - -ignore@^5.1.4: - version "5.1.8" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.8.tgz#f150a8b50a34289b33e22f5889abd4d8016f0e57" - integrity sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw== - -immer@1.10.0: - version "1.10.0" - resolved "https://registry.yarnpkg.com/immer/-/immer-1.10.0.tgz#bad67605ba9c810275d91e1c2a47d4582e98286d" - integrity sha512-O3sR1/opvCDGLEVcvrGTMtLac8GJ5IwZC4puPrLuRj3l7ICKvkmA0vGuU9OW8mV9WIBRnaxp5GJh9IEAaNOoYg== - -immutable@~3.7.6: - version "3.7.6" - resolved "https://registry.yarnpkg.com/immutable/-/immutable-3.7.6.tgz#13b4d3cb12befa15482a26fe1b2ebae640071e4b" - integrity sha1-E7TTyxK++hVIKib+Gy665kAHHks= - -import-cwd@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/import-cwd/-/import-cwd-2.1.0.tgz#aa6cf36e722761285cb371ec6519f53e2435b0a9" - integrity sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk= - dependencies: - import-from "^2.1.0" - -import-fresh@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-2.0.0.tgz#d81355c15612d386c61f9ddd3922d4304822a546" - integrity sha1-2BNVwVYS04bGH53dOSLUMEgipUY= - dependencies: - caller-path "^2.0.0" - resolve-from "^3.0.0" - -import-fresh@^3.0.0, import-fresh@^3.1.0: - version "3.2.1" - resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.2.1.tgz#633ff618506e793af5ac91bf48b72677e15cbe66" - integrity sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ== - dependencies: - parent-module "^1.0.0" - resolve-from "^4.0.0" - -import-from@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/import-from/-/import-from-3.0.0.tgz#055cfec38cd5a27d8057ca51376d7d3bf0891966" - integrity sha512-CiuXOFFSzkU5x/CR0+z7T91Iht4CXgfCxVOFRhh2Zyhg5wOpWvvDLQUsWl+gcN+QscYBjez8hDCt85O7RLDttQ== - dependencies: - resolve-from "^5.0.0" - -import-from@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/import-from/-/import-from-2.1.0.tgz#335db7f2a7affd53aaa471d4b8021dee36b7f3b1" - integrity sha1-M1238qev/VOqpHHUuAId7ja387E= - dependencies: - resolve-from "^3.0.0" - -import-lazy@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-2.1.0.tgz#05698e3d45c88e8d7e9d92cb0584e77f096f3e43" - integrity sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM= - -import-local@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/import-local/-/import-local-2.0.0.tgz#55070be38a5993cf18ef6db7e961f5bee5c5a09d" - integrity sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ== - dependencies: - pkg-dir "^3.0.0" - resolve-cwd "^2.0.0" - -import-local@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.0.2.tgz#a8cfd0431d1de4a2199703d003e3e62364fa6db6" - integrity sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA== - dependencies: - pkg-dir "^4.2.0" - resolve-cwd "^3.0.0" - -imurmurhash@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" - integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= - -indent-string@4.0.0, indent-string@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" - integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== - -indent-string@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80" - integrity sha1-ji1INIdCEhtKghi3oTfppSBJ3IA= - dependencies: - repeating "^2.0.0" - -indent-string@^3.0.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-3.2.0.tgz#4a5fd6d27cc332f37e5419a504dbb837105c9289" - integrity sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok= - -indexes-of@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607" - integrity sha1-8w9xbI4r00bHtn0985FVZqfAVgc= - -infer-owner@^1.0.3, infer-owner@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467" - integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A== - -inflight@^1.0.4: - version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" - integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= - dependencies: - once "^1.3.0" - wrappy "1" - -inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3: - version "2.0.4" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" - integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== - -inherits@2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" - integrity sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE= - -inherits@2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" - integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= - -ini@^1.3.2, ini@^1.3.4, ini@^1.3.5, ini@~1.3.0: - version "1.3.5" - resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" - integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw== - -init-package-json@^1.10.3: - version "1.10.3" - resolved "https://registry.yarnpkg.com/init-package-json/-/init-package-json-1.10.3.tgz#45ffe2f610a8ca134f2bd1db5637b235070f6cbe" - integrity sha512-zKSiXKhQveNteyhcj1CoOP8tqp1QuxPIPBl8Bid99DGLFqA1p87M6lNgfjJHSBoWJJlidGOv5rWjyYKEB3g2Jw== - dependencies: - glob "^7.1.1" - npm-package-arg "^4.0.0 || ^5.0.0 || ^6.0.0" - promzard "^0.3.0" - read "~1.0.1" - read-package-json "1 || 2" - semver "2.x || 3.x || 4 || 5" - validate-npm-package-license "^3.0.1" - validate-npm-package-name "^3.0.0" - -inquirer@3.0.6: - version "3.0.6" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-3.0.6.tgz#e04aaa9d05b7a3cb9b0f407d04375f0447190347" - integrity sha1-4EqqnQW3o8ubD0B9BDdfBEcZA0c= - dependencies: - ansi-escapes "^1.1.0" - chalk "^1.0.0" - cli-cursor "^2.1.0" - cli-width "^2.0.0" - external-editor "^2.0.1" - figures "^2.0.0" - lodash "^4.3.0" - mute-stream "0.0.7" - run-async "^2.2.0" - rx "^4.1.0" - string-width "^2.0.0" - strip-ansi "^3.0.0" - through "^2.3.6" - -inquirer@7.0.4: - version "7.0.4" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.0.4.tgz#99af5bde47153abca23f5c7fc30db247f39da703" - integrity sha512-Bu5Td5+j11sCkqfqmUTiwv+tWisMtP0L7Q8WrqA2C/BbBhy1YTdFrvjjlrKq8oagA/tLQBski2Gcx/Sqyi2qSQ== - dependencies: - ansi-escapes "^4.2.1" - chalk "^2.4.2" - cli-cursor "^3.1.0" - cli-width "^2.0.0" - external-editor "^3.0.3" - figures "^3.0.0" - lodash "^4.17.15" - mute-stream "0.0.8" - run-async "^2.2.0" - rxjs "^6.5.3" - string-width "^4.1.0" - strip-ansi "^5.1.0" - through "^2.3.6" - -inquirer@7.3.3: - version "7.3.3" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.3.3.tgz#04d176b2af04afc157a83fd7c100e98ee0aad003" - integrity sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA== - dependencies: - ansi-escapes "^4.2.1" - chalk "^4.1.0" - cli-cursor "^3.1.0" - cli-width "^3.0.0" - external-editor "^3.0.3" - figures "^3.0.0" - lodash "^4.17.19" - mute-stream "0.0.8" - run-async "^2.4.0" - rxjs "^6.6.0" - string-width "^4.1.0" - strip-ansi "^6.0.0" - through "^2.3.6" - -inquirer@^6.2.0: - version "6.5.2" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.5.2.tgz#ad50942375d036d327ff528c08bd5fab089928ca" - integrity sha512-cntlB5ghuB0iuO65Ovoi8ogLHiWGs/5yNrtUcKjFhSSiVeAIVpD7koaSU9RM8mpXw5YDi9RdYXGQMaOURB7ycQ== - dependencies: - ansi-escapes "^3.2.0" - chalk "^2.4.2" - cli-cursor "^2.1.0" - cli-width "^2.0.0" - external-editor "^3.0.3" - figures "^2.0.0" - lodash "^4.17.12" - mute-stream "0.0.7" - run-async "^2.2.0" - rxjs "^6.4.0" - string-width "^2.1.0" - strip-ansi "^5.1.0" - through "^2.3.6" - -inquirer@^7.0.0: - version "7.2.0" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.2.0.tgz#63ce99d823090de7eb420e4bb05e6f3449aa389a" - integrity sha512-E0c4rPwr9ByePfNlTIB8z51kK1s2n6jrHuJeEHENl/sbq2G/S1auvibgEwNR4uSyiU+PiYHqSwsgGiXjG8p5ZQ== - dependencies: - ansi-escapes "^4.2.1" - chalk "^3.0.0" - cli-cursor "^3.1.0" - cli-width "^2.0.0" - external-editor "^3.0.3" - figures "^3.0.0" - lodash "^4.17.15" - mute-stream "0.0.8" - run-async "^2.4.0" - rxjs "^6.5.3" - string-width "^4.1.0" - strip-ansi "^6.0.0" - through "^2.3.6" - -internal-ip@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/internal-ip/-/internal-ip-4.3.0.tgz#845452baad9d2ca3b69c635a137acb9a0dad0907" - integrity sha512-S1zBo1D6zcsyuC6PMmY5+55YMILQ9av8lotMx447Bq6SAgo/sDK6y6uUKmuYhW7eacnIhFfsPmCNYdDzsnnDCg== - dependencies: - default-gateway "^4.2.0" - ipaddr.js "^1.9.0" - -internal-slot@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.2.tgz#9c2e9fb3cd8e5e4256c6f45fe310067fcfa378a3" - integrity sha512-2cQNfwhAfJIkU4KZPkDI+Gj5yNNnbqi40W9Gge6dfnk4TocEVm00B3bdiL+JINrbGJil2TeHvM4rETGzk/f/0g== - dependencies: - es-abstract "^1.17.0-next.1" - has "^1.0.3" - side-channel "^1.0.2" - -interpret@^1.0.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.4.0.tgz#665ab8bc4da27a774a40584e812e3e0fa45b1a1e" - integrity sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA== - -invariant@^2.2.2, invariant@^2.2.4: - version "2.2.4" - resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" - integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA== - dependencies: - loose-envify "^1.0.0" - -invert-kv@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-2.0.0.tgz#7393f5afa59ec9ff5f67a27620d11c226e3eec02" - integrity sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA== - -ioredis@^4.14.1: - version "4.17.3" - resolved "https://registry.yarnpkg.com/ioredis/-/ioredis-4.17.3.tgz#9938c60e4ca685f75326337177bdc2e73ae9c9dc" - integrity sha512-iRvq4BOYzNFkDnSyhx7cmJNOi1x/HWYe+A4VXHBu4qpwJaGT1Mp+D2bVGJntH9K/Z/GeOM/Nprb8gB3bmitz1Q== - dependencies: - cluster-key-slot "^1.1.0" - debug "^4.1.1" - denque "^1.1.0" - lodash.defaults "^4.2.0" - lodash.flatten "^4.4.0" - redis-commands "1.5.0" - redis-errors "^1.2.0" - redis-parser "^3.0.0" - standard-as-callback "^2.0.1" - -ip-regex@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-2.1.0.tgz#fa78bf5d2e6913c911ce9f819ee5146bb6d844e9" - integrity sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk= - -ip@1.1.5, ip@^1.1.0, ip@^1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" - integrity sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo= - -ipaddr.js@1.9.1, ipaddr.js@^1.9.0: - version "1.9.1" - resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" - integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== - -is-absolute-url@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-2.1.0.tgz#50530dfb84fcc9aa7dbe7852e83a37b93b9f2aa6" - integrity sha1-UFMN+4T8yap9vnhS6Do3uTufKqY= - -is-absolute-url@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-3.0.3.tgz#96c6a22b6a23929b11ea0afb1836c36ad4a5d698" - integrity sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q== - -is-absolute@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-absolute/-/is-absolute-1.0.0.tgz#395e1ae84b11f26ad1795e73c17378e48a301576" - integrity sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA== - dependencies: - is-relative "^1.0.0" - is-windows "^1.0.1" - -is-accessor-descriptor@^0.1.6: - version "0.1.6" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" - integrity sha1-qeEss66Nh2cn7u84Q/igiXtcmNY= - dependencies: - kind-of "^3.0.2" - -is-accessor-descriptor@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" - integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ== - dependencies: - kind-of "^6.0.0" - -is-arguments@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.0.4.tgz#3faf966c7cba0ff437fb31f6250082fcf0448cf3" - integrity sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA== - -is-arrayish@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" - integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= - -is-arrayish@^0.3.1: - version "0.3.2" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.3.2.tgz#4574a2ae56f7ab206896fb431eaeed066fdf8f03" - integrity sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ== - -is-binary-path@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" - integrity sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg= - dependencies: - binary-extensions "^1.0.0" - -is-binary-path@~2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" - integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== - dependencies: - binary-extensions "^2.0.0" - -is-buffer@^1.0.2, is-buffer@^1.1.5: - version "1.1.6" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" - integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== - -is-callable@^1.1.4, is-callable@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.0.tgz#83336560b54a38e35e3a2df7afd0454d691468bb" - integrity sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw== - -is-ci@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c" - integrity sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w== - dependencies: - ci-info "^2.0.0" - -is-color-stop@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-color-stop/-/is-color-stop-1.1.0.tgz#cfff471aee4dd5c9e158598fbe12967b5cdad345" - integrity sha1-z/9HGu5N1cnhWFmPvhKWe1za00U= - dependencies: - css-color-names "^0.0.4" - hex-color-regex "^1.1.0" - hsl-regex "^1.0.0" - hsla-regex "^1.0.0" - rgb-regex "^1.0.1" - rgba-regex "^1.0.0" - -is-data-descriptor@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" - integrity sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y= - dependencies: - kind-of "^3.0.2" - -is-data-descriptor@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" - integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ== - dependencies: - kind-of "^6.0.0" - -is-date-object@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.2.tgz#bda736f2cd8fd06d32844e7743bfa7494c3bfd7e" - integrity sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g== - -is-descriptor@^0.1.0: - version "0.1.6" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" - integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg== - dependencies: - is-accessor-descriptor "^0.1.6" - is-data-descriptor "^0.1.4" - kind-of "^5.0.0" - -is-descriptor@^1.0.0, is-descriptor@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" - integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg== - dependencies: - is-accessor-descriptor "^1.0.0" - is-data-descriptor "^1.0.0" - kind-of "^6.0.2" - -is-directory@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1" - integrity sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE= - -is-docker@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.0.0.tgz#2cb0df0e75e2d064fe1864c37cdeacb7b2dcf25b" - integrity sha512-pJEdRugimx4fBMra5z2/5iRdZ63OhYV0vr0Dwm5+xtW4D1FvRkB8hamMIhnWfyJeDdyr/aa7BDyNbtG38VxgoQ== - -is-extendable@^0.1.0, is-extendable@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" - integrity sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik= - -is-extendable@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" - integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== - dependencies: - is-plain-object "^2.0.4" - -is-extglob@^2.1.0, is-extglob@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" - integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= - -is-finite@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.1.0.tgz#904135c77fb42c0641d6aa1bcdbc4daa8da082f3" - integrity sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w== - -is-fullwidth-code-point@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" - integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs= - dependencies: - number-is-nan "^1.0.0" - -is-fullwidth-code-point@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" - integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= - -is-fullwidth-code-point@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" - integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== - -is-generator-fn@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" - integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ== - -is-glob@4.0.1, is-glob@^4.0.0, is-glob@^4.0.1, is-glob@~4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" - integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== - dependencies: - is-extglob "^2.1.1" - -is-glob@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" - integrity sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo= - dependencies: - is-extglob "^2.1.0" - -is-in-browser@^1.0.2, is-in-browser@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/is-in-browser/-/is-in-browser-1.1.3.tgz#56ff4db683a078c6082eb95dad7dc62e1d04f835" - integrity sha1-Vv9NtoOgeMYILrldrX3GLh0E+DU= - -is-installed-globally@^0.3.1: - version "0.3.2" - resolved "https://registry.yarnpkg.com/is-installed-globally/-/is-installed-globally-0.3.2.tgz#fd3efa79ee670d1187233182d5b0a1dd00313141" - integrity sha512-wZ8x1js7Ia0kecP/CHM/3ABkAmujX7WPvQk6uu3Fly/Mk44pySulQpnHG46OMjHGXApINnV4QhY3SWnECO2z5g== - dependencies: - global-dirs "^2.0.1" - is-path-inside "^3.0.1" - -is-npm@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/is-npm/-/is-npm-4.0.0.tgz#c90dd8380696df87a7a6d823c20d0b12bbe3c84d" - integrity sha512-96ECIfh9xtDDlPylNPXhzjsykHsMJZ18ASpaWzQyBr4YRTcVjUvzaHayDAES2oU/3KpljhHUjtSRNiDwi0F0ig== - -is-number@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" - integrity sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU= - dependencies: - kind-of "^3.0.2" - -is-number@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" - integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== - -is-obj@^1.0.0, is-obj@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" - integrity sha1-PkcprB9f3gJc19g6iW2rn09n2w8= - -is-obj@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982" - integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w== - -is-observable@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-observable/-/is-observable-1.1.0.tgz#b3e986c8f44de950867cab5403f5a3465005975e" - integrity sha512-NqCa4Sa2d+u7BWc6CukaObG3Fh+CU9bvixbpcXYhy2VvYS7vVGIdAgnIS5Ks3A/cqk4rebLJ9s8zBstT2aKnIA== - dependencies: - symbol-observable "^1.1.0" - -is-path-cwd@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-2.2.0.tgz#67d43b82664a7b5191fd9119127eb300048a9fdb" - integrity sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ== - -is-path-in-cwd@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz#bfe2dca26c69f397265a4009963602935a053acb" - integrity sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ== - dependencies: - is-path-inside "^2.1.0" - -is-path-inside@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-2.1.0.tgz#7c9810587d659a40d27bcdb4d5616eab059494b2" - integrity sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg== - dependencies: - path-is-inside "^1.0.2" - -is-path-inside@^3.0.1: - version "3.0.2" - resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.2.tgz#f5220fc82a3e233757291dddc9c5877f2a1f3017" - integrity sha512-/2UGPSgmtqwo1ktx8NDHjuPwZWmHhO+gj0f93EkhLB5RgW9RZevWYYlIkS6zePc6U2WpOdQYIwHe9YC4DWEBVg== - -is-plain-obj@^1.0.0, is-plain-obj@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" - integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= - -is-plain-object@^2.0.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" - integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== - dependencies: - isobject "^3.0.1" - -is-plain-object@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-3.0.0.tgz#47bfc5da1b5d50d64110806c199359482e75a928" - integrity sha512-tZIpofR+P05k8Aocp7UI/2UTa9lTJSebCXpFFoR9aibpokDj/uXBsJ8luUu0tTVYKkMU6URDUuOfJZ7koewXvg== - dependencies: - isobject "^4.0.0" - -is-potential-custom-element-name@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.0.tgz#0c52e54bcca391bb2c494b21e8626d7336c6e397" - integrity sha1-DFLlS8yjkbssSUsh6GJtczbG45c= - -is-promise@^2.1.0: - version "2.2.2" - resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.2.2.tgz#39ab959ccbf9a774cf079f7b40c7a26f763135f1" - integrity sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ== - -is-regex@^1.0.4, is-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.0.tgz#ece38e389e490df0dc21caea2bd596f987f767ff" - integrity sha512-iI97M8KTWID2la5uYXlkbSDQIg4F6o1sYboZKKTDpnDQMLtUL86zxhgDet3Q2SriaYsyGqZ6Mn2SjbRKeLHdqw== - dependencies: - has-symbols "^1.0.1" - -is-regexp@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-regexp/-/is-regexp-1.0.0.tgz#fd2d883545c46bac5a633e7b9a09e87fa2cb5069" - integrity sha1-/S2INUXEa6xaYz57mgnof6LLUGk= - -is-relative@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-relative/-/is-relative-1.0.0.tgz#a1bb6935ce8c5dba1e8b9754b9b2dcc020e2260d" - integrity sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA== - dependencies: - is-unc-path "^1.0.0" - -is-resolvable@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88" - integrity sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg== - -is-root@2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-root/-/is-root-2.1.0.tgz#809e18129cf1129644302a4f8544035d51984a9c" - integrity sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg== - -is-ssh@^1.3.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/is-ssh/-/is-ssh-1.3.1.tgz#f349a8cadd24e65298037a522cf7520f2e81a0f3" - integrity sha512-0eRIASHZt1E68/ixClI8bp2YK2wmBPVWEismTs6M+M099jKgrzl/3E976zIbImSIob48N2/XGe9y7ZiYdImSlg== - dependencies: - protocols "^1.1.0" - -is-stream@^1.0.1, is-stream@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" - integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ= - -is-stream@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.0.tgz#bde9c32680d6fae04129d6ac9d921ce7815f78e3" - integrity sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw== - -is-string@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.5.tgz#40493ed198ef3ff477b8c7f92f644ec82a5cd3a6" - integrity sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ== - -is-svg@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-svg/-/is-svg-3.0.0.tgz#9321dbd29c212e5ca99c4fa9794c714bcafa2f75" - integrity sha512-gi4iHK53LR2ujhLVVj+37Ykh9GLqYHX6JOVXbLAucaG/Cqw9xwdFOjDM2qeifLs1sF1npXXFvDu0r5HNgCMrzQ== - dependencies: - html-comment-regex "^1.1.0" - -is-symbol@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.3.tgz#38e1014b9e6329be0de9d24a414fd7441ec61937" - integrity sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ== - dependencies: - has-symbols "^1.0.1" - -is-text-path@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-text-path/-/is-text-path-1.0.1.tgz#4e1aa0fb51bfbcb3e92688001397202c1775b66e" - integrity sha1-Thqg+1G/vLPpJogAE5cgLBd1tm4= - dependencies: - text-extensions "^1.0.0" - -is-typedarray@^1.0.0, is-typedarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" - integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= - -is-unc-path@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-unc-path/-/is-unc-path-1.0.0.tgz#d731e8898ed090a12c352ad2eaed5095ad322c9d" - integrity sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ== - dependencies: - unc-path-regex "^0.1.2" - -is-utf8@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" - integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI= - -is-windows@^1.0.0, is-windows@^1.0.1, is-windows@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" - integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== - -is-wsl@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" - integrity sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0= - -is-wsl@^2.1.1: - version "2.2.0" - resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" - integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww== - dependencies: - is-docker "^2.0.0" - -is-yarn-global@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/is-yarn-global/-/is-yarn-global-0.3.0.tgz#d502d3382590ea3004893746754c89139973e232" - integrity sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw== - -is_js@^0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/is_js/-/is_js-0.9.0.tgz#0ab94540502ba7afa24c856aa985561669e9c52d" - integrity sha1-CrlFQFArp6+iTIVqqYVWFmnpxS0= - -isarray@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" - integrity sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8= - -isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" - integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= - -isexe@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" - integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= - -isobject@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" - integrity sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk= - dependencies: - isarray "1.0.0" - -isobject@^3.0.0, isobject@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" - integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= - -isobject@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-4.0.0.tgz#3f1c9155e73b192022a80819bacd0343711697b0" - integrity sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA== - -isomorphic-fetch@^2.1.1, isomorphic-fetch@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz#611ae1acf14f5e81f729507472819fe9733558a9" - integrity sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk= - dependencies: - node-fetch "^1.0.1" - whatwg-fetch ">=0.10.0" - -isstream@~0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" - integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= - -istanbul-lib-coverage@^2.0.2, istanbul-lib-coverage@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz#675f0ab69503fad4b1d849f736baaca803344f49" - integrity sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA== - -istanbul-lib-coverage@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz#f5944a37c70b550b02a78a5c3b2055b280cec8ec" - integrity sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg== - -istanbul-lib-instrument@^3.0.1, istanbul-lib-instrument@^3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz#a5f63d91f0bbc0c3e479ef4c5de027335ec6d630" - integrity sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA== - dependencies: - "@babel/generator" "^7.4.0" - "@babel/parser" "^7.4.3" - "@babel/template" "^7.4.0" - "@babel/traverse" "^7.4.3" - "@babel/types" "^7.4.0" - istanbul-lib-coverage "^2.0.5" - semver "^6.0.0" - -istanbul-lib-instrument@^4.0.0, istanbul-lib-instrument@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz#873c6fff897450118222774696a3f28902d77c1d" - integrity sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ== - dependencies: - "@babel/core" "^7.7.5" - "@istanbuljs/schema" "^0.1.2" - istanbul-lib-coverage "^3.0.0" - semver "^6.3.0" - -istanbul-lib-report@^2.0.4: - version "2.0.8" - resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz#5a8113cd746d43c4889eba36ab10e7d50c9b4f33" - integrity sha512-fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ== - dependencies: - istanbul-lib-coverage "^2.0.5" - make-dir "^2.1.0" - supports-color "^6.1.0" - -istanbul-lib-report@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#7518fe52ea44de372f460a76b5ecda9ffb73d8a6" - integrity sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw== - dependencies: - istanbul-lib-coverage "^3.0.0" - make-dir "^3.0.0" - supports-color "^7.1.0" - -istanbul-lib-source-maps@^3.0.1: - version "3.0.6" - resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz#284997c48211752ec486253da97e3879defba8c8" - integrity sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw== - dependencies: - debug "^4.1.1" - istanbul-lib-coverage "^2.0.5" - make-dir "^2.1.0" - rimraf "^2.6.3" - source-map "^0.6.1" - -istanbul-lib-source-maps@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz#75743ce6d96bb86dc7ee4352cf6366a23f0b1ad9" - integrity sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg== - dependencies: - debug "^4.1.1" - istanbul-lib-coverage "^3.0.0" - source-map "^0.6.1" - -istanbul-reports@^2.2.6: - version "2.2.7" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-2.2.7.tgz#5d939f6237d7b48393cc0959eab40cd4fd056931" - integrity sha512-uu1F/L1o5Y6LzPVSVZXNOoD/KXpJue9aeLRd0sM9uMXfZvzomB0WxVamWb5ue8kA2vVWEmW7EG+A5n3f1kqHKg== - dependencies: - html-escaper "^2.0.0" - -istanbul-reports@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.0.2.tgz#d593210e5000683750cb09fc0644e4b6e27fd53b" - integrity sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw== - dependencies: - html-escaper "^2.0.0" - istanbul-lib-report "^3.0.0" - -iterall@^1.1.3, iterall@^1.2.1, iterall@^1.2.2, iterall@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/iterall/-/iterall-1.3.0.tgz#afcb08492e2915cbd8a0884eb93a8c94d0d72fea" - integrity sha512-QZ9qOMdF+QLHxy1QIpUHUU1D5pS2CG2P69LF6L6CPjPYA/XMOmKV3PZpawHoAjHNyB0swdVTRxdYT4tbBbxqwg== - -jest-changed-files@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-24.9.0.tgz#08d8c15eb79a7fa3fc98269bc14b451ee82f8039" - integrity sha512-6aTWpe2mHF0DhL28WjdkO8LyGjs3zItPET4bMSeXU6T3ub4FPMw+mcOcbdGXQOAfmLcxofD23/5Bl9Z4AkFwqg== - dependencies: - "@jest/types" "^24.9.0" - execa "^1.0.0" - throat "^4.0.0" - -jest-changed-files@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-26.2.0.tgz#b4946201defe0c919a2f3d601e9f98cb21dacc15" - integrity sha512-+RyJb+F1K/XBLIYiL449vo5D+CvlHv29QveJUWNPXuUicyZcq+tf1wNxmmFeRvAU1+TzhwqczSjxnCCFt7+8iA== - dependencies: - "@jest/types" "^26.2.0" - execa "^4.0.0" - throat "^5.0.0" - -jest-cli@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-24.9.0.tgz#ad2de62d07472d419c6abc301fc432b98b10d2af" - integrity sha512-+VLRKyitT3BWoMeSUIHRxV/2g8y9gw91Jh5z2UmXZzkZKpbC08CSehVxgHUwTpy+HwGcns/tqafQDJW7imYvGg== - dependencies: - "@jest/core" "^24.9.0" - "@jest/test-result" "^24.9.0" - "@jest/types" "^24.9.0" - chalk "^2.0.1" - exit "^0.1.2" - import-local "^2.0.0" - is-ci "^2.0.0" - jest-config "^24.9.0" - jest-util "^24.9.0" - jest-validate "^24.9.0" - prompts "^2.0.1" - realpath-native "^1.1.0" - yargs "^13.3.0" - -jest-cli@^26.2.2: - version "26.2.2" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-26.2.2.tgz#4c273e5474baafac1eb15fd25aaafb4703f5ffbc" - integrity sha512-vVcly0n/ijZvdy6gPQiQt0YANwX2hLTPQZHtW7Vi3gcFdKTtif7YpI85F8R8JYy5DFSWz4x1OW0arnxlziu5Lw== - dependencies: - "@jest/core" "^26.2.2" - "@jest/test-result" "^26.2.0" - "@jest/types" "^26.2.0" - chalk "^4.0.0" - exit "^0.1.2" - graceful-fs "^4.2.4" - import-local "^3.0.2" - is-ci "^2.0.0" - jest-config "^26.2.2" - jest-util "^26.2.0" - jest-validate "^26.2.0" - prompts "^2.0.1" - yargs "^15.3.1" - -jest-config@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-24.9.0.tgz#fb1bbc60c73a46af03590719efa4825e6e4dd1b5" - integrity sha512-RATtQJtVYQrp7fvWg6f5y3pEFj9I+H8sWw4aKxnDZ96mob5i5SD6ZEGWgMLXQ4LE8UurrjbdlLWdUeo+28QpfQ== - dependencies: - "@babel/core" "^7.1.0" - "@jest/test-sequencer" "^24.9.0" - "@jest/types" "^24.9.0" - babel-jest "^24.9.0" - chalk "^2.0.1" - glob "^7.1.1" - jest-environment-jsdom "^24.9.0" - jest-environment-node "^24.9.0" - jest-get-type "^24.9.0" - jest-jasmine2 "^24.9.0" - jest-regex-util "^24.3.0" - jest-resolve "^24.9.0" - jest-util "^24.9.0" - jest-validate "^24.9.0" - micromatch "^3.1.10" - pretty-format "^24.9.0" - realpath-native "^1.1.0" - -jest-config@^26.2.2: - version "26.2.2" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-26.2.2.tgz#f3ebc7e2bc3f49de8ed3f8007152f345bb111917" - integrity sha512-2lhxH0y4YFOijMJ65usuf78m7+9/8+hAb1PZQtdRdgnQpAb4zP6KcVDDktpHEkspBKnc2lmFu+RQdHukUUbiTg== - dependencies: - "@babel/core" "^7.1.0" - "@jest/test-sequencer" "^26.2.2" - "@jest/types" "^26.2.0" - babel-jest "^26.2.2" - chalk "^4.0.0" - deepmerge "^4.2.2" - glob "^7.1.1" - graceful-fs "^4.2.4" - jest-environment-jsdom "^26.2.0" - jest-environment-node "^26.2.0" - jest-get-type "^26.0.0" - jest-jasmine2 "^26.2.2" - jest-regex-util "^26.0.0" - jest-resolve "^26.2.2" - jest-util "^26.2.0" - jest-validate "^26.2.0" - micromatch "^4.0.2" - pretty-format "^26.2.0" - -jest-diff@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-24.9.0.tgz#931b7d0d5778a1baf7452cb816e325e3724055da" - integrity sha512-qMfrTs8AdJE2iqrTp0hzh7kTd2PQWrsFyj9tORoKmu32xjPjeE4NyjVRDz8ybYwqS2ik8N4hsIpiVTyFeo2lBQ== - dependencies: - chalk "^2.0.1" - diff-sequences "^24.9.0" - jest-get-type "^24.9.0" - pretty-format "^24.9.0" - -jest-diff@^25.2.1: - version "25.5.0" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-25.5.0.tgz#1dd26ed64f96667c068cef026b677dfa01afcfa9" - integrity sha512-z1kygetuPiREYdNIumRpAHY6RXiGmp70YHptjdaxTWGmA085W3iCnXNx0DhflK3vwrKmrRWyY1wUpkPMVxMK7A== - dependencies: - chalk "^3.0.0" - diff-sequences "^25.2.6" - jest-get-type "^25.2.6" - pretty-format "^25.5.0" - -jest-diff@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-26.2.0.tgz#dee62c771adbb23ae585f3f1bd289a6e8ef4f298" - integrity sha512-Wu4Aopi2nzCsHWLBlD48TgRy3Z7OsxlwvHNd1YSnHc7q1NJfrmyCPoUXrTIrydQOG5ApaYpsAsdfnMbJqV1/wQ== - dependencies: - chalk "^4.0.0" - diff-sequences "^26.0.0" - jest-get-type "^26.0.0" - pretty-format "^26.2.0" - -jest-docblock@^24.3.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-24.9.0.tgz#7970201802ba560e1c4092cc25cbedf5af5a8ce2" - integrity sha512-F1DjdpDMJMA1cN6He0FNYNZlo3yYmOtRUnktrT9Q37njYzC5WEaDdmbynIgy0L/IvXvvgsG8OsqhLPXTpfmZAA== - dependencies: - detect-newline "^2.1.0" - -jest-docblock@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-26.0.0.tgz#3e2fa20899fc928cb13bd0ff68bd3711a36889b5" - integrity sha512-RDZ4Iz3QbtRWycd8bUEPxQsTlYazfYn/h5R65Fc6gOfwozFhoImx+affzky/FFBuqISPTqjXomoIGJVKBWoo0w== - dependencies: - detect-newline "^3.0.0" - -jest-each@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-24.9.0.tgz#eb2da602e2a610898dbc5f1f6df3ba86b55f8b05" - integrity sha512-ONi0R4BvW45cw8s2Lrx8YgbeXL1oCQ/wIDwmsM3CqM/nlblNCPmnC3IPQlMbRFZu3wKdQ2U8BqM6lh3LJ5Bsog== - dependencies: - "@jest/types" "^24.9.0" - chalk "^2.0.1" - jest-get-type "^24.9.0" - jest-util "^24.9.0" - pretty-format "^24.9.0" - -jest-each@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-26.2.0.tgz#aec8efa01d072d7982c900e74940863385fa884e" - integrity sha512-gHPCaho1twWHB5bpcfnozlc6mrMi+VAewVPNgmwf81x2Gzr6XO4dl+eOrwPWxbkYlgjgrYjWK2xgKnixbzH3Ew== - dependencies: - "@jest/types" "^26.2.0" - chalk "^4.0.0" - jest-get-type "^26.0.0" - jest-util "^26.2.0" - pretty-format "^26.2.0" - -jest-environment-jsdom-fourteen@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/jest-environment-jsdom-fourteen/-/jest-environment-jsdom-fourteen-1.0.1.tgz#4cd0042f58b4ab666950d96532ecb2fc188f96fb" - integrity sha512-DojMX1sY+at5Ep+O9yME34CdidZnO3/zfPh8UW+918C5fIZET5vCjfkegixmsi7AtdYfkr4bPlIzmWnlvQkP7Q== - dependencies: - "@jest/environment" "^24.3.0" - "@jest/fake-timers" "^24.3.0" - "@jest/types" "^24.3.0" - jest-mock "^24.0.0" - jest-util "^24.0.0" - jsdom "^14.1.0" - -jest-environment-jsdom@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-24.9.0.tgz#4b0806c7fc94f95edb369a69cc2778eec2b7375b" - integrity sha512-Zv9FV9NBRzLuALXjvRijO2351DRQeLYXtpD4xNvfoVFw21IOKNhZAEUKcbiEtjTkm2GsJ3boMVgkaR7rN8qetA== - dependencies: - "@jest/environment" "^24.9.0" - "@jest/fake-timers" "^24.9.0" - "@jest/types" "^24.9.0" - jest-mock "^24.9.0" - jest-util "^24.9.0" - jsdom "^11.5.1" - -jest-environment-jsdom@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-26.2.0.tgz#6443a6f3569297dcaa4371dddf93acaf167302dc" - integrity sha512-sDG24+5M4NuIGzkI3rJW8XUlrpkvIdE9Zz4jhD8OBnVxAw+Y1jUk9X+lAOD48nlfUTlnt3lbAI3k2Ox+WF3S0g== - dependencies: - "@jest/environment" "^26.2.0" - "@jest/fake-timers" "^26.2.0" - "@jest/types" "^26.2.0" - "@types/node" "*" - jest-mock "^26.2.0" - jest-util "^26.2.0" - jsdom "^16.2.2" - -jest-environment-node@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-24.9.0.tgz#333d2d2796f9687f2aeebf0742b519f33c1cbfd3" - integrity sha512-6d4V2f4nxzIzwendo27Tr0aFm+IXWa0XEUnaH6nU0FMaozxovt+sfRvh4J47wL1OvF83I3SSTu0XK+i4Bqe7uA== - dependencies: - "@jest/environment" "^24.9.0" - "@jest/fake-timers" "^24.9.0" - "@jest/types" "^24.9.0" - jest-mock "^24.9.0" - jest-util "^24.9.0" - -jest-environment-node@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-26.2.0.tgz#fee89e06bdd4bed3f75ee2978d73ede9bb57a681" - integrity sha512-4M5ExTYkJ19efBzkiXtBi74JqKLDciEk4CEsp5tTjWGYMrlKFQFtwIVG3tW1OGE0AlXhZjuHPwubuRYY4j4uOw== - dependencies: - "@jest/environment" "^26.2.0" - "@jest/fake-timers" "^26.2.0" - "@jest/types" "^26.2.0" - "@types/node" "*" - jest-mock "^26.2.0" - jest-util "^26.2.0" - -jest-get-type@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-24.9.0.tgz#1684a0c8a50f2e4901b6644ae861f579eed2ef0e" - integrity sha512-lUseMzAley4LhIcpSP9Jf+fTrQ4a1yHQwLNeeVa2cEmbCGeoZAtYPOIv8JaxLD/sUpKxetKGP+gsHl8f8TSj8Q== - -jest-get-type@^25.2.6: - version "25.2.6" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-25.2.6.tgz#0b0a32fab8908b44d508be81681487dbabb8d877" - integrity sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig== - -jest-get-type@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-26.0.0.tgz#381e986a718998dbfafcd5ec05934be538db4039" - integrity sha512-zRc1OAPnnws1EVfykXOj19zo2EMw5Hi6HLbFCSjpuJiXtOWAYIjNsHVSbpQ8bDX7L5BGYGI8m+HmKdjHYFF0kg== - -jest-haste-map@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-24.9.0.tgz#b38a5d64274934e21fa417ae9a9fbeb77ceaac7d" - integrity sha512-kfVFmsuWui2Sj1Rp1AJ4D9HqJwE4uwTlS/vO+eRUaMmd54BFpli2XhMQnPC2k4cHFVbB2Q2C+jtI1AGLgEnCjQ== - dependencies: - "@jest/types" "^24.9.0" - anymatch "^2.0.0" - fb-watchman "^2.0.0" - graceful-fs "^4.1.15" - invariant "^2.2.4" - jest-serializer "^24.9.0" - jest-util "^24.9.0" - jest-worker "^24.9.0" - micromatch "^3.1.10" - sane "^4.0.3" - walker "^1.0.7" - optionalDependencies: - fsevents "^1.2.7" - -jest-haste-map@^26.2.2: - version "26.2.2" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-26.2.2.tgz#6d4267b1903854bfdf6a871419f35a82f03ae71e" - integrity sha512-3sJlMSt+NHnzCB+0KhJ1Ut4zKJBiJOlbrqEYNdRQGlXTv8kqzZWjUKQRY3pkjmlf+7rYjAV++MQ4D6g4DhAyOg== - dependencies: - "@jest/types" "^26.2.0" - "@types/graceful-fs" "^4.1.2" - "@types/node" "*" - anymatch "^3.0.3" - fb-watchman "^2.0.0" - graceful-fs "^4.2.4" - jest-regex-util "^26.0.0" - jest-serializer "^26.2.0" - jest-util "^26.2.0" - jest-worker "^26.2.1" - micromatch "^4.0.2" - sane "^4.0.3" - walker "^1.0.7" - optionalDependencies: - fsevents "^2.1.2" - -jest-jasmine2@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-24.9.0.tgz#1f7b1bd3242c1774e62acabb3646d96afc3be6a0" - integrity sha512-Cq7vkAgaYKp+PsX+2/JbTarrk0DmNhsEtqBXNwUHkdlbrTBLtMJINADf2mf5FkowNsq8evbPc07/qFO0AdKTzw== - dependencies: - "@babel/traverse" "^7.1.0" - "@jest/environment" "^24.9.0" - "@jest/test-result" "^24.9.0" - "@jest/types" "^24.9.0" - chalk "^2.0.1" - co "^4.6.0" - expect "^24.9.0" - is-generator-fn "^2.0.0" - jest-each "^24.9.0" - jest-matcher-utils "^24.9.0" - jest-message-util "^24.9.0" - jest-runtime "^24.9.0" - jest-snapshot "^24.9.0" - jest-util "^24.9.0" - pretty-format "^24.9.0" - throat "^4.0.0" - -jest-jasmine2@^26.2.2: - version "26.2.2" - resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-26.2.2.tgz#d82b1721fac2b153a4f8b3f0c95e81e702812de2" - integrity sha512-Q8AAHpbiZMVMy4Hz9j1j1bg2yUmPa1W9StBvcHqRaKa9PHaDUMwds8LwaDyzP/2fkybcTQE4+pTMDOG9826tEw== - dependencies: - "@babel/traverse" "^7.1.0" - "@jest/environment" "^26.2.0" - "@jest/source-map" "^26.1.0" - "@jest/test-result" "^26.2.0" - "@jest/types" "^26.2.0" - "@types/node" "*" - chalk "^4.0.0" - co "^4.6.0" - expect "^26.2.0" - is-generator-fn "^2.0.0" - jest-each "^26.2.0" - jest-matcher-utils "^26.2.0" - jest-message-util "^26.2.0" - jest-runtime "^26.2.2" - jest-snapshot "^26.2.2" - jest-util "^26.2.0" - pretty-format "^26.2.0" - throat "^5.0.0" - -jest-leak-detector@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-24.9.0.tgz#b665dea7c77100c5c4f7dfcb153b65cf07dcf96a" - integrity sha512-tYkFIDsiKTGwb2FG1w8hX9V0aUb2ot8zY/2nFg087dUageonw1zrLMP4W6zsRO59dPkTSKie+D4rhMuP9nRmrA== - dependencies: - jest-get-type "^24.9.0" - pretty-format "^24.9.0" - -jest-leak-detector@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-26.2.0.tgz#073ee6d8db7a9af043e7ce99d8eea17a4fb0cc50" - integrity sha512-aQdzTX1YiufkXA1teXZu5xXOJgy7wZQw6OJ0iH5CtQlOETe6gTSocaYKUNui1SzQ91xmqEUZ/WRavg9FD82rtQ== - dependencies: - jest-get-type "^26.0.0" - pretty-format "^26.2.0" - -jest-localstorage-mock@2.4.2: - version "2.4.2" - resolved "https://registry.yarnpkg.com/jest-localstorage-mock/-/jest-localstorage-mock-2.4.2.tgz#31dd2916713eed3b8703196f60ec85ffd50c1a23" - integrity sha512-bywlhvs7RM2vpZ0EN12XOU5C2WAXRUbxl1VOxel4cqRUHD6zaUmh99UzwOTx0fWuqjfd0y/NDvEbewNaJaz+UQ== - -jest-matcher-utils@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-24.9.0.tgz#f5b3661d5e628dffe6dd65251dfdae0e87c3a073" - integrity sha512-OZz2IXsu6eaiMAwe67c1T+5tUAtQyQx27/EMEkbFAGiw52tB9em+uGbzpcgYVpA8wl0hlxKPZxrly4CXU/GjHA== - dependencies: - chalk "^2.0.1" - jest-diff "^24.9.0" - jest-get-type "^24.9.0" - pretty-format "^24.9.0" - -jest-matcher-utils@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-26.2.0.tgz#b107af98c2b8c557ffd46c1adf06f794aa52d622" - integrity sha512-2cf/LW2VFb3ayPHrH36ZDjp9+CAeAe/pWBAwsV8t3dKcrINzXPVxq8qMWOxwt5BaeBCx4ZupVGH7VIgB8v66vQ== - dependencies: - chalk "^4.0.0" - jest-diff "^26.2.0" - jest-get-type "^26.0.0" - pretty-format "^26.2.0" - -jest-message-util@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-24.9.0.tgz#527f54a1e380f5e202a8d1149b0ec872f43119e3" - integrity sha512-oCj8FiZ3U0hTP4aSui87P4L4jC37BtQwUMqk+zk/b11FR19BJDeZsZAvIHutWnmtw7r85UmR3CEWZ0HWU2mAlw== - dependencies: - "@babel/code-frame" "^7.0.0" - "@jest/test-result" "^24.9.0" - "@jest/types" "^24.9.0" - "@types/stack-utils" "^1.0.1" - chalk "^2.0.1" - micromatch "^3.1.10" - slash "^2.0.0" - stack-utils "^1.0.1" - -jest-message-util@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-26.2.0.tgz#757fbc1323992297092bb9016a71a2eb12fd22ea" - integrity sha512-g362RhZaJuqeqG108n1sthz5vNpzTNy926eNDszo4ncRbmmcMRIUAZibnd6s5v2XSBCChAxQtCoN25gnzp7JbQ== - dependencies: - "@babel/code-frame" "^7.0.0" - "@jest/types" "^26.2.0" - "@types/stack-utils" "^1.0.1" - chalk "^4.0.0" - graceful-fs "^4.2.4" - micromatch "^4.0.2" - slash "^3.0.0" - stack-utils "^2.0.2" - -jest-mock@^24.0.0, jest-mock@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-24.9.0.tgz#c22835541ee379b908673ad51087a2185c13f1c6" - integrity sha512-3BEYN5WbSq9wd+SyLDES7AHnjH9A/ROBwmz7l2y+ol+NtSFO8DYiEBzoO1CeFc9a8DYy10EO4dDFVv/wN3zl1w== - dependencies: - "@jest/types" "^24.9.0" - -jest-mock@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-26.2.0.tgz#a1b3303ab38c34aa1dbbc16ab57cdc1a59ed50d1" - integrity sha512-XeC7yWtWmWByoyVOHSsE7NYsbXJLtJNgmhD7z4MKumKm6ET0si81bsSLbQ64L5saK3TgsHo2B/UqG5KNZ1Sp/Q== - dependencies: - "@jest/types" "^26.2.0" - "@types/node" "*" - -jest-pnp-resolver@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.1.tgz#ecdae604c077a7fbc70defb6d517c3c1c898923a" - integrity sha512-pgFw2tm54fzgYvc/OHrnysABEObZCUNFnhjoRjaVOCN8NYc032/gVjPaHD4Aq6ApkSieWtfKAFQtmDKAmhupnQ== - -jest-pnp-resolver@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz#b704ac0ae028a89108a4d040b3f919dfddc8e33c" - integrity sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w== - -jest-regex-util@^24.3.0, jest-regex-util@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-24.9.0.tgz#c13fb3380bde22bf6575432c493ea8fe37965636" - integrity sha512-05Cmb6CuxaA+Ys6fjr3PhvV3bGQmO+2p2La4hFbU+W5uOc479f7FdLXUWXw4pYMAhhSZIuKHwSXSu6CsSBAXQA== - -jest-regex-util@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-26.0.0.tgz#d25e7184b36e39fd466c3bc41be0971e821fee28" - integrity sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A== - -jest-resolve-dependencies@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-24.9.0.tgz#ad055198959c4cfba8a4f066c673a3f0786507ab" - integrity sha512-Fm7b6AlWnYhT0BXy4hXpactHIqER7erNgIsIozDXWl5dVm+k8XdGVe1oTg1JyaFnOxarMEbax3wyRJqGP2Pq+g== - dependencies: - "@jest/types" "^24.9.0" - jest-regex-util "^24.3.0" - jest-snapshot "^24.9.0" - -jest-resolve-dependencies@^26.2.2: - version "26.2.2" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-26.2.2.tgz#2ad3cd9281730e9a5c487cd846984c5324e47929" - integrity sha512-S5vufDmVbQXnpP7435gr710xeBGUFcKNpNswke7RmFvDQtmqPjPVU/rCeMlEU0p6vfpnjhwMYeaVjKZAy5QYJA== - dependencies: - "@jest/types" "^26.2.0" - jest-regex-util "^26.0.0" - jest-snapshot "^26.2.2" - -jest-resolve@24.9.0, jest-resolve@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-24.9.0.tgz#dff04c7687af34c4dd7e524892d9cf77e5d17321" - integrity sha512-TaLeLVL1l08YFZAt3zaPtjiVvyy4oSA6CRe+0AFPPVX3Q/VI0giIWWoAvoS5L96vj9Dqxj4fB5p2qrHCmTU/MQ== - dependencies: - "@jest/types" "^24.9.0" - browser-resolve "^1.11.3" - chalk "^2.0.1" - jest-pnp-resolver "^1.2.1" - realpath-native "^1.1.0" - -jest-resolve@^26.2.2: - version "26.2.2" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-26.2.2.tgz#324a20a516148d61bffa0058ed0c77c510ecfd3e" - integrity sha512-ye9Tj/ILn/0OgFPE/3dGpQPUqt4dHwIocxt5qSBkyzxQD8PbL0bVxBogX2FHxsd3zJA7V2H/cHXnBnNyyT9YoQ== - dependencies: - "@jest/types" "^26.2.0" - chalk "^4.0.0" - graceful-fs "^4.2.4" - jest-pnp-resolver "^1.2.2" - jest-util "^26.2.0" - read-pkg-up "^7.0.1" - resolve "^1.17.0" - slash "^3.0.0" - -jest-runner@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-24.9.0.tgz#574fafdbd54455c2b34b4bdf4365a23857fcdf42" - integrity sha512-KksJQyI3/0mhcfspnxxEOBueGrd5E4vV7ADQLT9ESaCzz02WnbdbKWIf5Mkaucoaj7obQckYPVX6JJhgUcoWWg== - dependencies: - "@jest/console" "^24.7.1" - "@jest/environment" "^24.9.0" - "@jest/test-result" "^24.9.0" - "@jest/types" "^24.9.0" - chalk "^2.4.2" - exit "^0.1.2" - graceful-fs "^4.1.15" - jest-config "^24.9.0" - jest-docblock "^24.3.0" - jest-haste-map "^24.9.0" - jest-jasmine2 "^24.9.0" - jest-leak-detector "^24.9.0" - jest-message-util "^24.9.0" - jest-resolve "^24.9.0" - jest-runtime "^24.9.0" - jest-util "^24.9.0" - jest-worker "^24.6.0" - source-map-support "^0.5.6" - throat "^4.0.0" - -jest-runner@^26.2.2: - version "26.2.2" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-26.2.2.tgz#6d03d057886e9c782e10b2cf37443f902fe0e39e" - integrity sha512-/qb6ptgX+KQ+aNMohJf1We695kaAfuu3u3ouh66TWfhTpLd9WbqcF6163d/tMoEY8GqPztXPLuyG0rHRVDLxCA== - dependencies: - "@jest/console" "^26.2.0" - "@jest/environment" "^26.2.0" - "@jest/test-result" "^26.2.0" - "@jest/types" "^26.2.0" - "@types/node" "*" - chalk "^4.0.0" - emittery "^0.7.1" - exit "^0.1.2" - graceful-fs "^4.2.4" - jest-config "^26.2.2" - jest-docblock "^26.0.0" - jest-haste-map "^26.2.2" - jest-leak-detector "^26.2.0" - jest-message-util "^26.2.0" - jest-resolve "^26.2.2" - jest-runtime "^26.2.2" - jest-util "^26.2.0" - jest-worker "^26.2.1" - source-map-support "^0.5.6" - throat "^5.0.0" - -jest-runtime@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-24.9.0.tgz#9f14583af6a4f7314a6a9d9f0226e1a781c8e4ac" - integrity sha512-8oNqgnmF3v2J6PVRM2Jfuj8oX3syKmaynlDMMKQ4iyzbQzIG6th5ub/lM2bCMTmoTKM3ykcUYI2Pw9xwNtjMnw== - dependencies: - "@jest/console" "^24.7.1" - "@jest/environment" "^24.9.0" - "@jest/source-map" "^24.3.0" - "@jest/transform" "^24.9.0" - "@jest/types" "^24.9.0" - "@types/yargs" "^13.0.0" - chalk "^2.0.1" - exit "^0.1.2" - glob "^7.1.3" - graceful-fs "^4.1.15" - jest-config "^24.9.0" - jest-haste-map "^24.9.0" - jest-message-util "^24.9.0" - jest-mock "^24.9.0" - jest-regex-util "^24.3.0" - jest-resolve "^24.9.0" - jest-snapshot "^24.9.0" - jest-util "^24.9.0" - jest-validate "^24.9.0" - realpath-native "^1.1.0" - slash "^2.0.0" - strip-bom "^3.0.0" - yargs "^13.3.0" - -jest-runtime@^26.2.2: - version "26.2.2" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-26.2.2.tgz#2480ff79320680a643031dd21998d7c63d83ab68" - integrity sha512-a8VXM3DxCDnCIdl9+QucWFfQ28KdqmyVFqeKLigHdErtsx56O2ZIdQkhFSuP1XtVrG9nTNHbKxjh5XL1UaFDVQ== - dependencies: - "@jest/console" "^26.2.0" - "@jest/environment" "^26.2.0" - "@jest/fake-timers" "^26.2.0" - "@jest/globals" "^26.2.0" - "@jest/source-map" "^26.1.0" - "@jest/test-result" "^26.2.0" - "@jest/transform" "^26.2.2" - "@jest/types" "^26.2.0" - "@types/yargs" "^15.0.0" - chalk "^4.0.0" - collect-v8-coverage "^1.0.0" - exit "^0.1.2" - glob "^7.1.3" - graceful-fs "^4.2.4" - jest-config "^26.2.2" - jest-haste-map "^26.2.2" - jest-message-util "^26.2.0" - jest-mock "^26.2.0" - jest-regex-util "^26.0.0" - jest-resolve "^26.2.2" - jest-snapshot "^26.2.2" - jest-util "^26.2.0" - jest-validate "^26.2.0" - slash "^3.0.0" - strip-bom "^4.0.0" - yargs "^15.3.1" - -jest-serializer@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-24.9.0.tgz#e6d7d7ef96d31e8b9079a714754c5d5c58288e73" - integrity sha512-DxYipDr8OvfrKH3Kel6NdED3OXxjvxXZ1uIY2I9OFbGg+vUkkg7AGvi65qbhbWNPvDckXmzMPbK3u3HaDO49bQ== - -jest-serializer@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-26.2.0.tgz#92dcae5666322410f4bf50211dd749274959ddac" - integrity sha512-V7snZI9IVmyJEu0Qy0inmuXgnMWDtrsbV2p9CRAcmlmPVwpC2ZM8wXyYpiugDQnwLHx0V4+Pnog9Exb3UO8M6Q== - dependencies: - "@types/node" "*" - graceful-fs "^4.2.4" - -jest-snapshot@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-24.9.0.tgz#ec8e9ca4f2ec0c5c87ae8f925cf97497b0e951ba" - integrity sha512-uI/rszGSs73xCM0l+up7O7a40o90cnrk429LOiK3aeTvfC0HHmldbd81/B7Ix81KSFe1lwkbl7GnBGG4UfuDew== - dependencies: - "@babel/types" "^7.0.0" - "@jest/types" "^24.9.0" - chalk "^2.0.1" - expect "^24.9.0" - jest-diff "^24.9.0" - jest-get-type "^24.9.0" - jest-matcher-utils "^24.9.0" - jest-message-util "^24.9.0" - jest-resolve "^24.9.0" - mkdirp "^0.5.1" - natural-compare "^1.4.0" - pretty-format "^24.9.0" - semver "^6.2.0" - -jest-snapshot@^26.2.2: - version "26.2.2" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-26.2.2.tgz#9d2eda083a4a1017b157e351868749bd63211799" - integrity sha512-NdjD8aJS7ePu268Wy/n/aR1TUisG0BOY+QOW4f6h46UHEKOgYmmkvJhh2BqdVZQ0BHSxTMt04WpCf9njzx8KtA== - dependencies: - "@babel/types" "^7.0.0" - "@jest/types" "^26.2.0" - "@types/prettier" "^2.0.0" - chalk "^4.0.0" - expect "^26.2.0" - graceful-fs "^4.2.4" - jest-diff "^26.2.0" - jest-get-type "^26.0.0" - jest-haste-map "^26.2.2" - jest-matcher-utils "^26.2.0" - jest-message-util "^26.2.0" - jest-resolve "^26.2.2" - natural-compare "^1.4.0" - pretty-format "^26.2.0" - semver "^7.3.2" - -jest-util@26.x, jest-util@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-26.2.0.tgz#0597d2a27c559340957609f106c408c17c1d88ac" - integrity sha512-YmDwJxLZ1kFxpxPfhSJ0rIkiZOM0PQbRcfH0TzJOhqCisCAsI1WcmoQqO83My9xeVA2k4n+rzg2UuexVKzPpig== - dependencies: - "@jest/types" "^26.2.0" - "@types/node" "*" - chalk "^4.0.0" - graceful-fs "^4.2.4" - is-ci "^2.0.0" - micromatch "^4.0.2" - -jest-util@^24.0.0, jest-util@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-24.9.0.tgz#7396814e48536d2e85a37de3e4c431d7cb140162" - integrity sha512-x+cZU8VRmOJxbA1K5oDBdxQmdq0OIdADarLxk0Mq+3XS4jgvhG/oKGWcIDCtPG0HgjxOYvF+ilPJQsAyXfbNOg== - dependencies: - "@jest/console" "^24.9.0" - "@jest/fake-timers" "^24.9.0" - "@jest/source-map" "^24.9.0" - "@jest/test-result" "^24.9.0" - "@jest/types" "^24.9.0" - callsites "^3.0.0" - chalk "^2.0.1" - graceful-fs "^4.1.15" - is-ci "^2.0.0" - mkdirp "^0.5.1" - slash "^2.0.0" - source-map "^0.6.0" - -jest-validate@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-24.9.0.tgz#0775c55360d173cd854e40180756d4ff52def8ab" - integrity sha512-HPIt6C5ACwiqSiwi+OfSSHbK8sG7akG8eATl+IPKaeIjtPOeBUd/g3J7DghugzxrGjI93qS/+RPKe1H6PqvhRQ== - dependencies: - "@jest/types" "^24.9.0" - camelcase "^5.3.1" - chalk "^2.0.1" - jest-get-type "^24.9.0" - leven "^3.1.0" - pretty-format "^24.9.0" - -jest-validate@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-26.2.0.tgz#97fedf3e7984b7608854cbf925b9ca6ebcbdb78a" - integrity sha512-8XKn3hM6VIVmLNuyzYLCPsRCT83o8jMZYhbieh4dAyKLc4Ypr36rVKC+c8WMpWkfHHpGnEkvWUjjIAyobEIY/Q== - dependencies: - "@jest/types" "^26.2.0" - camelcase "^6.0.0" - chalk "^4.0.0" - jest-get-type "^26.0.0" - leven "^3.1.0" - pretty-format "^26.2.0" - -jest-watch-typeahead@0.4.2: - version "0.4.2" - resolved "https://registry.yarnpkg.com/jest-watch-typeahead/-/jest-watch-typeahead-0.4.2.tgz#e5be959698a7fa2302229a5082c488c3c8780a4a" - integrity sha512-f7VpLebTdaXs81rg/oj4Vg/ObZy2QtGzAmGLNsqUS5G5KtSN68tFcIsbvNODfNyQxU78g7D8x77o3bgfBTR+2Q== - dependencies: - ansi-escapes "^4.2.1" - chalk "^2.4.1" - jest-regex-util "^24.9.0" - jest-watcher "^24.3.0" - slash "^3.0.0" - string-length "^3.1.0" - strip-ansi "^5.0.0" - -jest-watcher@^24.3.0, jest-watcher@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-24.9.0.tgz#4b56e5d1ceff005f5b88e528dc9afc8dd4ed2b3b" - integrity sha512-+/fLOfKPXXYJDYlks62/4R4GoT+GU1tYZed99JSCOsmzkkF7727RqKrjNAxtfO4YpGv11wybgRvCjR73lK2GZw== - dependencies: - "@jest/test-result" "^24.9.0" - "@jest/types" "^24.9.0" - "@types/yargs" "^13.0.0" - ansi-escapes "^3.0.0" - chalk "^2.0.1" - jest-util "^24.9.0" - string-length "^2.0.0" - -jest-watcher@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-26.2.0.tgz#45bdf2fecadd19c0a501f3b071a474dca636825b" - integrity sha512-674Boco4Joe0CzgKPL6K4Z9LgyLx+ZvW2GilbpYb8rFEUkmDGgsZdv1Hv5rxsRpb1HLgKUOL/JfbttRCuFdZXQ== - dependencies: - "@jest/test-result" "^26.2.0" - "@jest/types" "^26.2.0" - "@types/node" "*" - ansi-escapes "^4.2.1" - chalk "^4.0.0" - jest-util "^26.2.0" - string-length "^4.0.1" - -jest-worker@^24.6.0, jest-worker@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-24.9.0.tgz#5dbfdb5b2d322e98567898238a9697bcce67b3e5" - integrity sha512-51PE4haMSXcHohnSMdM42anbvZANYTqMrr52tVKPqqsPJMzoP6FYYDVqahX/HrAoKEKz3uUPzSvKs9A3qR4iVw== - dependencies: - merge-stream "^2.0.0" - supports-color "^6.1.0" - -jest-worker@^25.1.0: - version "25.5.0" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-25.5.0.tgz#2611d071b79cea0f43ee57a3d118593ac1547db1" - integrity sha512-/dsSmUkIy5EBGfv/IjjqmFxrNAUpBERfGs1oHROyD7yxjG/w+t0GOJDX8O1k32ySmd7+a5IhnJU2qQFcJ4n1vw== - dependencies: - merge-stream "^2.0.0" - supports-color "^7.0.0" - -jest-worker@^26.2.1: - version "26.2.1" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.2.1.tgz#5d630ab93f666b53f911615bc13e662b382bd513" - integrity sha512-+XcGMMJDTeEGncRb5M5Zq9P7K4sQ1sirhjdOxsN1462h6lFo9w59bl2LVQmdGEEeU3m+maZCkS2Tcc9SfCHO4A== - dependencies: - "@types/node" "*" - merge-stream "^2.0.0" - supports-color "^7.0.0" - -jest@24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest/-/jest-24.9.0.tgz#987d290c05a08b52c56188c1002e368edb007171" - integrity sha512-YvkBL1Zm7d2B1+h5fHEOdyjCG+sGMz4f8D86/0HiqJ6MB4MnDc8FgP5vdWsGnemOQro7lnYo8UakZ3+5A0jxGw== - dependencies: - import-local "^2.0.0" - jest-cli "^24.9.0" - -jest@26.2.2: - version "26.2.2" - resolved "https://registry.yarnpkg.com/jest/-/jest-26.2.2.tgz#a022303887b145147204c5f66e6a5c832333c7e7" - integrity sha512-EkJNyHiAG1+A8pqSz7cXttoVa34hOEzN/MrnJhYnfp5VHxflVcf2pu3oJSrhiy6LfIutLdWo+n6q63tjcoIeig== - dependencies: - "@jest/core" "^26.2.2" - import-local "^3.0.2" - jest-cli "^26.2.2" - -"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" - integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== - -js-tokens@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" - integrity sha1-mGbfOVECEw449/mWvOtlRDIJwls= - -js-yaml@^3.10.0, js-yaml@^3.13.1: - version "3.14.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.0.tgz#a7a34170f26a21bb162424d8adacb4113a69e482" - integrity sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A== - dependencies: - argparse "^1.0.7" - esprima "^4.0.0" - -jsbn@~0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" - integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= - -jsdom@^11.5.1: - version "11.12.0" - resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-11.12.0.tgz#1a80d40ddd378a1de59656e9e6dc5a3ba8657bc8" - integrity sha512-y8Px43oyiBM13Zc1z780FrfNLJCXTL40EWlty/LXUtcjykRBNgLlCjWXpfSPBl2iv+N7koQN+dvqszHZgT/Fjw== - dependencies: - abab "^2.0.0" - acorn "^5.5.3" - acorn-globals "^4.1.0" - array-equal "^1.0.0" - cssom ">= 0.3.2 < 0.4.0" - cssstyle "^1.0.0" - data-urls "^1.0.0" - domexception "^1.0.1" - escodegen "^1.9.1" - html-encoding-sniffer "^1.0.2" - left-pad "^1.3.0" - nwsapi "^2.0.7" - parse5 "4.0.0" - pn "^1.1.0" - request "^2.87.0" - request-promise-native "^1.0.5" - sax "^1.2.4" - symbol-tree "^3.2.2" - tough-cookie "^2.3.4" - w3c-hr-time "^1.0.1" - webidl-conversions "^4.0.2" - whatwg-encoding "^1.0.3" - whatwg-mimetype "^2.1.0" - whatwg-url "^6.4.1" - ws "^5.2.0" - xml-name-validator "^3.0.0" - -jsdom@^14.1.0: - version "14.1.0" - resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-14.1.0.tgz#916463b6094956b0a6c1782c94e380cd30e1981b" - integrity sha512-O901mfJSuTdwU2w3Sn+74T+RnDVP+FuV5fH8tcPWyqrseRAb0s5xOtPgCFiPOtLcyK7CLIJwPyD83ZqQWvA5ng== - dependencies: - abab "^2.0.0" - acorn "^6.0.4" - acorn-globals "^4.3.0" - array-equal "^1.0.0" - cssom "^0.3.4" - cssstyle "^1.1.1" - data-urls "^1.1.0" - domexception "^1.0.1" - escodegen "^1.11.0" - html-encoding-sniffer "^1.0.2" - nwsapi "^2.1.3" - parse5 "5.1.0" - pn "^1.1.0" - request "^2.88.0" - request-promise-native "^1.0.5" - saxes "^3.1.9" - symbol-tree "^3.2.2" - tough-cookie "^2.5.0" - w3c-hr-time "^1.0.1" - w3c-xmlserializer "^1.1.2" - webidl-conversions "^4.0.2" - whatwg-encoding "^1.0.5" - whatwg-mimetype "^2.3.0" - whatwg-url "^7.0.0" - ws "^6.1.2" - xml-name-validator "^3.0.0" - -jsdom@^16.2.2: - version "16.2.2" - resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-16.2.2.tgz#76f2f7541646beb46a938f5dc476b88705bedf2b" - integrity sha512-pDFQbcYtKBHxRaP55zGXCJWgFHkDAYbKcsXEK/3Icu9nKYZkutUXfLBwbD+09XDutkYSHcgfQLZ0qvpAAm9mvg== - dependencies: - abab "^2.0.3" - acorn "^7.1.1" - acorn-globals "^6.0.0" - cssom "^0.4.4" - cssstyle "^2.2.0" - data-urls "^2.0.0" - decimal.js "^10.2.0" - domexception "^2.0.1" - escodegen "^1.14.1" - html-encoding-sniffer "^2.0.1" - is-potential-custom-element-name "^1.0.0" - nwsapi "^2.2.0" - parse5 "5.1.1" - request "^2.88.2" - request-promise-native "^1.0.8" - saxes "^5.0.0" - symbol-tree "^3.2.4" - tough-cookie "^3.0.1" - w3c-hr-time "^1.0.2" - w3c-xmlserializer "^2.0.0" - webidl-conversions "^6.0.0" - whatwg-encoding "^1.0.5" - whatwg-mimetype "^2.3.0" - whatwg-url "^8.0.0" - ws "^7.2.3" - xml-name-validator "^3.0.0" - -jsesc@^2.5.1: - version "2.5.2" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" - integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== - -jsesc@~0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" - integrity sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0= - -json-buffer@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898" - integrity sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg= - -json-parse-better-errors@^1.0.0, json-parse-better-errors@^1.0.1, json-parse-better-errors@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" - integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== - -json-schema-traverse@^0.3.0: - version "0.3.1" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340" - integrity sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A= - -json-schema-traverse@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" - integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== - -json-schema@0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" - integrity sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM= - -json-stable-stringify-without-jsonify@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" - integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= - -json-stable-stringify@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af" - integrity sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8= - dependencies: - jsonify "~0.0.0" - -json-stringify-safe@^5.0.1, json-stringify-safe@~5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" - integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= - -json-to-pretty-yaml@1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/json-to-pretty-yaml/-/json-to-pretty-yaml-1.2.2.tgz#f4cd0bd0a5e8fe1df25aaf5ba118b099fd992d5b" - integrity sha1-9M0L0KXo/h3yWq9boRiwmf2ZLVs= - dependencies: - remedial "^1.0.7" - remove-trailing-spaces "^1.0.6" - -json3@^3.3.2: - version "3.3.3" - resolved "https://registry.yarnpkg.com/json3/-/json3-3.3.3.tgz#7fc10e375fc5ae42c4705a5cc0aa6f62be305b81" - integrity sha512-c7/8mbUsKigAbLkD5B010BK4D9LZm7A1pNItkEwiUZRpIN66exu/e7YQWysGun+TRKaJp8MhemM+VkfWv42aCA== - -json5@2.x, json5@^2.1.2: - version "2.1.3" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.1.3.tgz#c9b0f7fa9233bfe5807fe66fcf3a5617ed597d43" - integrity sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA== - dependencies: - minimist "^1.2.5" - -json5@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" - integrity sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow== - dependencies: - minimist "^1.2.0" - -jsonfile@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" - integrity sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss= - optionalDependencies: - graceful-fs "^4.1.6" - -jsonfile@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.0.1.tgz#98966cba214378c8c84b82e085907b40bf614179" - integrity sha512-jR2b5v7d2vIOust+w3wtFKZIfpC2pnRmFAhAC/BuweZFQR8qZzxH1OyrQ10HmdVYiXWkYUqPVsz91cG7EL2FBg== - dependencies: - universalify "^1.0.0" - optionalDependencies: - graceful-fs "^4.1.6" - -jsonify@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" - integrity sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM= - -jsonparse@^1.2.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280" - integrity sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA= - -jsonwebtoken@8.5.1, jsonwebtoken@^8.1.0, jsonwebtoken@^8.5.1: - version "8.5.1" - resolved "https://registry.yarnpkg.com/jsonwebtoken/-/jsonwebtoken-8.5.1.tgz#00e71e0b8df54c2121a1f26137df2280673bcc0d" - integrity sha512-XjwVfRS6jTMsqYs0EsuJ4LGxXV14zQybNd4L2r0UvbVnSF9Af8x7p5MzbJ90Ioz/9TI41/hTCvznF/loiSzn8w== - dependencies: - jws "^3.2.2" - lodash.includes "^4.3.0" - lodash.isboolean "^3.0.3" - lodash.isinteger "^4.0.4" - lodash.isnumber "^3.0.3" - lodash.isplainobject "^4.0.6" - lodash.isstring "^4.0.1" - lodash.once "^4.0.0" - ms "^2.1.1" - semver "^5.6.0" - -jsprim@^1.2.2: - version "1.4.1" - resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" - integrity sha1-MT5mvB5cwG5Di8G3SZwuXFastqI= - dependencies: - assert-plus "1.0.0" - extsprintf "1.3.0" - json-schema "0.2.3" - verror "1.10.0" - -jss-plugin-camel-case@^10.0.3: - version "10.3.0" - resolved "https://registry.yarnpkg.com/jss-plugin-camel-case/-/jss-plugin-camel-case-10.3.0.tgz#ae4da53b39a6e3ea94b70a20fc41c11f0b87386a" - integrity sha512-tadWRi/SLWqLK3EUZEdDNJL71F3ST93Zrl9JYMjV0QDqKPAl0Liue81q7m/nFUpnSTXczbKDy4wq8rI8o7WFqA== - dependencies: - "@babel/runtime" "^7.3.1" - hyphenate-style-name "^1.0.3" - jss "^10.3.0" - -jss-plugin-default-unit@^10.0.3: - version "10.3.0" - resolved "https://registry.yarnpkg.com/jss-plugin-default-unit/-/jss-plugin-default-unit-10.3.0.tgz#cd74cf5088542620a82591f76c62c6b43a7e50a6" - integrity sha512-tT5KkIXAsZOSS9WDSe8m8lEHIjoEOj4Pr0WrG0WZZsMXZ1mVLFCSsD2jdWarQWDaRNyMj/I4d7czRRObhOxSuw== - dependencies: - "@babel/runtime" "^7.3.1" - jss "^10.3.0" - -jss-plugin-global@^10.0.3: - version "10.3.0" - resolved "https://registry.yarnpkg.com/jss-plugin-global/-/jss-plugin-global-10.3.0.tgz#6b883e74900bb71f65ac2b19bea78f7d1e85af3f" - integrity sha512-etYTG/y3qIR/vxZnKY+J3wXwObyBDNhBiB3l/EW9/pE3WHE//BZdK8LFvQcrCO48sZW1Z6paHo6klxUPP7WbzA== - dependencies: - "@babel/runtime" "^7.3.1" - jss "^10.3.0" - -jss-plugin-nested@^10.0.3: - version "10.3.0" - resolved "https://registry.yarnpkg.com/jss-plugin-nested/-/jss-plugin-nested-10.3.0.tgz#ae8aceac95e09c3d40c991ea32403fb647d9e0a8" - integrity sha512-qWiEkoXNEkkZ+FZrWmUGpf+zBsnEOmKXhkjNX85/ZfWhH9dfGxUCKuJFuOWFM+rjQfxV4csfesq4hY0jk8Qt0w== - dependencies: - "@babel/runtime" "^7.3.1" - jss "^10.3.0" - tiny-warning "^1.0.2" - -jss-plugin-props-sort@^10.0.3: - version "10.3.0" - resolved "https://registry.yarnpkg.com/jss-plugin-props-sort/-/jss-plugin-props-sort-10.3.0.tgz#5b0625f87b6431a7969c56b0d8c696525969bfe4" - integrity sha512-boetORqL/lfd7BWeFD3K+IyPqyIC+l3CRrdZr+NPq7Noqp+xyg/0MR7QisgzpxCEulk+j2CRcEUoZsvgPC4nTg== - dependencies: - "@babel/runtime" "^7.3.1" - jss "^10.3.0" - -jss-plugin-rule-value-function@^10.0.3: - version "10.3.0" - resolved "https://registry.yarnpkg.com/jss-plugin-rule-value-function/-/jss-plugin-rule-value-function-10.3.0.tgz#498b0e2bae16cb316a6bdb73fd783cf9604ba747" - integrity sha512-7WiMrKIHH3rwxTuJki9+7nY11r1UXqaUZRhHvqTD4/ZE+SVhvtD5Tx21ivNxotwUSleucA/8boX+NF21oXzr5Q== - dependencies: - "@babel/runtime" "^7.3.1" - jss "^10.3.0" - tiny-warning "^1.0.2" - -jss-plugin-vendor-prefixer@^10.0.3: - version "10.3.0" - resolved "https://registry.yarnpkg.com/jss-plugin-vendor-prefixer/-/jss-plugin-vendor-prefixer-10.3.0.tgz#b09c13a4d05a055429d8a24e19cc01ce049f0ed4" - integrity sha512-sZQbrcZyP5V0ADjCLwUA1spVWoaZvM7XZ+2fSeieZFBj31cRsnV7X70FFDerMHeiHAXKWzYek+67nMDjhrZAVQ== - dependencies: - "@babel/runtime" "^7.3.1" - css-vendor "^2.0.8" - jss "^10.3.0" - -jss@^10.0.3, jss@^10.3.0: - version "10.3.0" - resolved "https://registry.yarnpkg.com/jss/-/jss-10.3.0.tgz#2cf7be265f72b59c1764d816fdabff1c5dd18326" - integrity sha512-B5sTRW9B6uHaUVzSo9YiMEOEp3UX8lWevU0Fsv+xtRnsShmgCfIYX44bTH8bPJe6LQKqEXku3ulKuHLbxBS97Q== - dependencies: - "@babel/runtime" "^7.3.1" - csstype "^2.6.5" - is-in-browser "^1.1.3" - tiny-warning "^1.0.2" - -jsx-ast-utils@^2.2.1, jsx-ast-utils@^2.2.3: - version "2.4.1" - resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-2.4.1.tgz#1114a4c1209481db06c690c2b4f488cc665f657e" - integrity sha512-z1xSldJ6imESSzOjd3NNkieVJKRlKYSOtMG8SFyCj2FIrvSaSuli/WjpBkEzCBoR9bYYYFgqJw61Xhu7Lcgk+w== - dependencies: - array-includes "^3.1.1" - object.assign "^4.1.0" - -jwa@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/jwa/-/jwa-1.4.1.tgz#743c32985cb9e98655530d53641b66c8645b039a" - integrity sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA== - dependencies: - buffer-equal-constant-time "1.0.1" - ecdsa-sig-formatter "1.0.11" - safe-buffer "^5.0.1" - -jws@^3.2.2: - version "3.2.2" - resolved "https://registry.yarnpkg.com/jws/-/jws-3.2.2.tgz#001099f3639468c9414000e99995fa52fb478304" - integrity sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA== - dependencies: - jwa "^1.4.1" - safe-buffer "^5.0.1" - -jwt-decode@2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/jwt-decode/-/jwt-decode-2.2.0.tgz#7d86bd56679f58ce6a84704a657dd392bba81a79" - integrity sha1-fYa9VmefWM5qhHBKZX3TkruoGnk= - -kareem@2.3.1: - version "2.3.1" - resolved "https://registry.yarnpkg.com/kareem/-/kareem-2.3.1.tgz#def12d9c941017fabfb00f873af95e9c99e1be87" - integrity sha512-l3hLhffs9zqoDe8zjmb/mAN4B8VT3L56EUvKNqLFVs9YlFA+zx7ke1DO8STAdDyYNkeSo1nKmjuvQeI12So8Xw== - -keyv@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/keyv/-/keyv-3.1.0.tgz#ecc228486f69991e49e9476485a5be1e8fc5c4d9" - integrity sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA== - dependencies: - json-buffer "3.0.0" - -killable@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/killable/-/killable-1.0.1.tgz#4c8ce441187a061c7474fb87ca08e2a638194892" - integrity sha512-LzqtLKlUwirEUyl/nicirVmNiPvYs7l5n8wOPP7fyJVpUPkvCnW/vuiXGpylGUlnPDnB7311rARzAt3Mhswpjg== - -kind-of@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-2.0.1.tgz#018ec7a4ce7e3a86cb9141be519d24c8faa981b5" - integrity sha1-AY7HpM5+OobLkUG+UZ0kyPqpgbU= - dependencies: - is-buffer "^1.0.2" - -kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: - version "3.2.2" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" - integrity sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ= - dependencies: - is-buffer "^1.1.5" - -kind-of@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" - integrity sha1-IIE989cSkosgc3hpGkUGb65y3Vc= - dependencies: - is-buffer "^1.1.5" - -kind-of@^5.0.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" - integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== - -kind-of@^6.0.0, kind-of@^6.0.2, kind-of@^6.0.3: - version "6.0.3" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" - integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== - -kleur@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" - integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== - -last-call-webpack-plugin@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/last-call-webpack-plugin/-/last-call-webpack-plugin-3.0.0.tgz#9742df0e10e3cf46e5c0381c2de90d3a7a2d7555" - integrity sha512-7KI2l2GIZa9p2spzPIVZBYyNKkN+e/SQPpnjlTiPhdbDW3F86tdKKELxKpzJ5sgU19wQWsACULZmpTPYHeWO5w== - dependencies: - lodash "^4.17.5" - webpack-sources "^1.1.0" - -latest-version@^5.0.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/latest-version/-/latest-version-5.1.0.tgz#119dfe908fe38d15dfa43ecd13fa12ec8832face" - integrity sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA== - dependencies: - package-json "^6.3.0" - -lazy-cache@^0.2.3: - version "0.2.7" - resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-0.2.7.tgz#7feddf2dcb6edb77d11ef1d117ab5ffdf0ab1b65" - integrity sha1-f+3fLctu23fRHvHRF6tf/fCrG2U= - -lazy-cache@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e" - integrity sha1-odePw6UEdMuAhF07O24dpJpEbo4= - -lcid@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/lcid/-/lcid-2.0.0.tgz#6ef5d2df60e52f82eb228a4c373e8d1f397253cf" - integrity sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA== - dependencies: - invert-kv "^2.0.0" - -left-pad@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/left-pad/-/left-pad-1.3.0.tgz#5b8a3a7765dfe001261dde915589e782f8c94d1e" - integrity sha512-XI5MPzVNApjAyhQzphX8BkmKsKUxD4LdyK24iZeQGinBN9yTQT3bFlCBy/aVx2HrNcqQGsdot8ghrjyrvMCoEA== - -lerna@3.22.1: - version "3.22.1" - resolved "https://registry.yarnpkg.com/lerna/-/lerna-3.22.1.tgz#82027ac3da9c627fd8bf02ccfeff806a98e65b62" - integrity sha512-vk1lfVRFm+UuEFA7wkLKeSF7Iz13W+N/vFd48aW2yuS7Kv0RbNm2/qcDPV863056LMfkRlsEe+QYOw3palj5Lg== - dependencies: - "@lerna/add" "3.21.0" - "@lerna/bootstrap" "3.21.0" - "@lerna/changed" "3.21.0" - "@lerna/clean" "3.21.0" - "@lerna/cli" "3.18.5" - "@lerna/create" "3.22.0" - "@lerna/diff" "3.21.0" - "@lerna/exec" "3.21.0" - "@lerna/import" "3.22.0" - "@lerna/info" "3.21.0" - "@lerna/init" "3.21.0" - "@lerna/link" "3.21.0" - "@lerna/list" "3.21.0" - "@lerna/publish" "3.22.1" - "@lerna/run" "3.21.0" - "@lerna/version" "3.22.1" - import-local "^2.0.0" - npmlog "^4.1.2" - -leven@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" - integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== - -levenary@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/levenary/-/levenary-1.1.1.tgz#842a9ee98d2075aa7faeedbe32679e9205f46f77" - integrity sha512-mkAdOIt79FD6irqjYSs4rdbnlT5vRonMEvBVPVb3XmevfS8kgRXwfes0dhPdEtzTWD/1eNE/Bm/G1iRt6DcnQQ== - dependencies: - leven "^3.1.0" - -levn@^0.3.0, levn@~0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" - integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4= - dependencies: - prelude-ls "~1.1.2" - type-check "~0.3.2" - -levn@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" - integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== - dependencies: - prelude-ls "^1.2.1" - type-check "~0.4.0" - -lines-and-columns@^1.1.6: - version "1.1.6" - resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.1.6.tgz#1c00c743b433cd0a4e80758f7b64a57440d9ff00" - integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA= - -lint-staged@10.2.11: - version "10.2.11" - resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-10.2.11.tgz#713c80877f2dc8b609b05bc59020234e766c9720" - integrity sha512-LRRrSogzbixYaZItE2APaS4l2eJMjjf5MbclRZpLJtcQJShcvUzKXsNeZgsLIZ0H0+fg2tL4B59fU9wHIHtFIA== - dependencies: - chalk "^4.0.0" - cli-truncate "2.1.0" - commander "^5.1.0" - cosmiconfig "^6.0.0" - debug "^4.1.1" - dedent "^0.7.0" - enquirer "^2.3.5" - execa "^4.0.1" - listr2 "^2.1.0" - log-symbols "^4.0.0" - micromatch "^4.0.2" - normalize-path "^3.0.0" - please-upgrade-node "^3.2.0" - string-argv "0.3.1" - stringify-object "^3.3.0" - -listr-silent-renderer@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/listr-silent-renderer/-/listr-silent-renderer-1.1.1.tgz#924b5a3757153770bf1a8e3fbf74b8bbf3f9242e" - integrity sha1-kktaN1cVN3C/Go4/v3S4u/P5JC4= - -listr-update-renderer@0.5.0, listr-update-renderer@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/listr-update-renderer/-/listr-update-renderer-0.5.0.tgz#4ea8368548a7b8aecb7e06d8c95cb45ae2ede6a2" - integrity sha512-tKRsZpKz8GSGqoI/+caPmfrypiaq+OQCbd+CovEC24uk1h952lVj5sC7SqyFUm+OaJ5HN/a1YLt5cit2FMNsFA== - dependencies: - chalk "^1.1.3" - cli-truncate "^0.2.1" - elegant-spinner "^1.0.1" - figures "^1.7.0" - indent-string "^3.0.0" - log-symbols "^1.0.2" - log-update "^2.3.0" - strip-ansi "^3.0.1" - -listr-verbose-renderer@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/listr-verbose-renderer/-/listr-verbose-renderer-0.5.0.tgz#f1132167535ea4c1261102b9f28dac7cba1e03db" - integrity sha512-04PDPqSlsqIOaaaGZ+41vq5FejI9auqTInicFRndCBgE3bXG8D6W1I+mWhk+1nqbHmyhla/6BUrd5OSiHwKRXw== - dependencies: - chalk "^2.4.1" - cli-cursor "^2.1.0" - date-fns "^1.27.2" - figures "^2.0.0" - -listr2@^2.1.0: - version "2.1.7" - resolved "https://registry.yarnpkg.com/listr2/-/listr2-2.1.7.tgz#8107c12c699bac778f1567739298052d8ebb9c27" - integrity sha512-XCC1sWLkBFFIMIRwG/LedgHUzN2XLEo02ZqXn6fwuP0GlXGE5BCuL6EAbQFb4vZB+++YEonzEXDPWQe+jCoF6Q== - dependencies: - chalk "^4.0.0" - cli-truncate "^2.1.0" - figures "^3.2.0" - indent-string "^4.0.0" - log-update "^4.0.0" - p-map "^4.0.0" - rxjs "^6.5.5" - through "^2.3.8" - -listr@0.14.3: - version "0.14.3" - resolved "https://registry.yarnpkg.com/listr/-/listr-0.14.3.tgz#2fea909604e434be464c50bddba0d496928fa586" - integrity sha512-RmAl7su35BFd/xoMamRjpIE4j3v+L28o8CT5YhAXQJm1fD+1l9ngXY8JAQRJ+tFK2i5njvi0iRUKV09vPwA0iA== - dependencies: - "@samverschueren/stream-to-observable" "^0.3.0" - is-observable "^1.1.0" - is-promise "^2.1.0" - is-stream "^1.1.0" - listr-silent-renderer "^1.1.1" - listr-update-renderer "^0.5.0" - listr-verbose-renderer "^0.5.0" - p-map "^2.0.0" - rxjs "^6.3.3" - -load-json-file@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" - integrity sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA= - dependencies: - graceful-fs "^4.1.2" - parse-json "^2.2.0" - pify "^2.0.0" - pinkie-promise "^2.0.0" - strip-bom "^2.0.0" - -load-json-file@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8" - integrity sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg= - dependencies: - graceful-fs "^4.1.2" - parse-json "^2.2.0" - pify "^2.0.0" - strip-bom "^3.0.0" - -load-json-file@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b" - integrity sha1-L19Fq5HjMhYjT9U62rZo607AmTs= - dependencies: - graceful-fs "^4.1.2" - parse-json "^4.0.0" - pify "^3.0.0" - strip-bom "^3.0.0" - -load-json-file@^5.3.0: - version "5.3.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-5.3.0.tgz#4d3c1e01fa1c03ea78a60ac7af932c9ce53403f3" - integrity sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw== - dependencies: - graceful-fs "^4.1.15" - parse-json "^4.0.0" - pify "^4.0.1" - strip-bom "^3.0.0" - type-fest "^0.3.0" - -loader-fs-cache@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/loader-fs-cache/-/loader-fs-cache-1.0.3.tgz#f08657646d607078be2f0a032f8bd69dd6f277d9" - integrity sha512-ldcgZpjNJj71n+2Mf6yetz+c9bM4xpKtNds4LbqXzU/PTdeAX0g3ytnU1AJMEcTk2Lex4Smpe3Q/eCTsvUBxbA== - dependencies: - find-cache-dir "^0.1.1" - mkdirp "^0.5.1" - -loader-runner@^2.4.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.4.0.tgz#ed47066bfe534d7e84c4c7b9998c2a75607d9357" - integrity sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw== - -loader-utils@1.2.3: - version "1.2.3" - resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.2.3.tgz#1ff5dc6911c9f0a062531a4c04b609406108c2c7" - integrity sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA== - dependencies: - big.js "^5.2.2" - emojis-list "^2.0.0" - json5 "^1.0.1" - -loader-utils@^1.1.0, loader-utils@^1.2.3, loader-utils@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.4.0.tgz#c579b5e34cb34b1a74edc6c1fb36bfa371d5a613" - integrity sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA== - dependencies: - big.js "^5.2.2" - emojis-list "^3.0.0" - json5 "^1.0.1" - -localstorage-polyfill@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/localstorage-polyfill/-/localstorage-polyfill-1.0.1.tgz#4b3083d4bc51d23b4158537e66816137413fd31a" - integrity sha1-SzCD1LxR0jtBWFN+ZoFhN0E/0xo= - -locate-path@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" - integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4= - dependencies: - p-locate "^2.0.0" - path-exists "^3.0.0" - -locate-path@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" - integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== - dependencies: - p-locate "^3.0.0" - path-exists "^3.0.0" - -locate-path@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" - integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== - dependencies: - p-locate "^4.1.0" - -lodash-es@^4.17.14: - version "4.17.15" - resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.15.tgz#21bd96839354412f23d7a10340e5eac6ee455d78" - integrity sha512-rlrc3yU3+JNOpZ9zj5pQtxnx2THmvRykwL4Xlxoa8I9lHBlVbbyPhgyPMioxVZ4NqyxaVVtaJnzsyOidQIhyyQ== - -lodash._reinterpolate@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" - integrity sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0= - -lodash.clonedeep@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" - integrity sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8= - -lodash.defaults@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-4.2.0.tgz#d09178716ffea4dde9e5fb7b37f6f0802274580c" - integrity sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw= - -lodash.flatten@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/lodash.flatten/-/lodash.flatten-4.4.0.tgz#f31c22225a9632d2bbf8e4addbef240aa765a61f" - integrity sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8= - -lodash.get@^4.4.2: - version "4.4.2" - resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" - integrity sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk= - -lodash.includes@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/lodash.includes/-/lodash.includes-4.3.0.tgz#60bb98a87cb923c68ca1e51325483314849f553f" - integrity sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8= - -lodash.isboolean@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz#6c2e171db2a257cd96802fd43b01b20d5f5870f6" - integrity sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY= - -lodash.isinteger@^4.0.4: - version "4.0.4" - resolved "https://registry.yarnpkg.com/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz#619c0af3d03f8b04c31f5882840b77b11cd68343" - integrity sha1-YZwK89A/iwTDH1iChAt3sRzWg0M= - -lodash.ismatch@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz#756cb5150ca3ba6f11085a78849645f188f85f37" - integrity sha1-dWy1FQyjum8RCFp4hJZF8Yj4Xzc= - -lodash.isnumber@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz#3ce76810c5928d03352301ac287317f11c0b1ffc" - integrity sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w= - -lodash.isplainobject@^4.0.6: - version "4.0.6" - resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" - integrity sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs= - -lodash.isstring@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/lodash.isstring/-/lodash.isstring-4.0.1.tgz#d527dfb5456eca7cc9bb95d5daeaf88ba54a5451" - integrity sha1-1SfftUVuynzJu5XV2ur4i6VKVFE= - -lodash.memoize@4.x, lodash.memoize@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" - integrity sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4= - -lodash.once@^4.0.0: - version "4.1.1" - resolved "https://registry.yarnpkg.com/lodash.once/-/lodash.once-4.1.1.tgz#0dd3971213c7c56df880977d504c88fb471a97ac" - integrity sha1-DdOXEhPHxW34gJd9UEyI+0cal6w= - -lodash.set@^4.3.2: - version "4.3.2" - resolved "https://registry.yarnpkg.com/lodash.set/-/lodash.set-4.3.2.tgz#d8757b1da807dde24816b0d6a84bea1a76230b23" - integrity sha1-2HV7HagH3eJIFrDWqEvqGnYjCyM= - -lodash.sortby@^4.7.0: - version "4.7.0" - resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" - integrity sha1-7dFMgk4sycHgsKG0K7UhBRakJDg= - -lodash.template@^4.0.2, lodash.template@^4.4.0, lodash.template@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-4.5.0.tgz#f976195cf3f347d0d5f52483569fe8031ccce8ab" - integrity sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A== - dependencies: - lodash._reinterpolate "^3.0.0" - lodash.templatesettings "^4.0.0" - -lodash.templatesettings@^4.0.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz#e481310f049d3cf6d47e912ad09313b154f0fb33" - integrity sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ== - dependencies: - lodash._reinterpolate "^3.0.0" - -lodash.uniq@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" - integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= - -lodash@4.17.15, "lodash@>=3.5 <5", lodash@^4.17.11, lodash@^4.17.12, lodash@^4.17.13, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.2.1, lodash@^4.3.0: - version "4.17.15" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" - integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== - -lodash@4.17.19, lodash@^4.17.19, lodash@~4.17.15: - version "4.17.19" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.19.tgz#e48ddedbe30b3321783c5b4301fbd353bc1e4a4b" - integrity sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ== - -log-symbols@4.0.0, log-symbols@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.0.0.tgz#69b3cc46d20f448eccdb75ea1fa733d9e821c920" - integrity sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA== - dependencies: - chalk "^4.0.0" - -log-symbols@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-1.0.2.tgz#376ff7b58ea3086a0f09facc74617eca501e1a18" - integrity sha1-N2/3tY6jCGoPCfrMdGF+ylAeGhg= - dependencies: - chalk "^1.0.0" - -log-update@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/log-update/-/log-update-2.3.0.tgz#88328fd7d1ce7938b29283746f0b1bc126b24708" - integrity sha1-iDKP19HOeTiykoN0bwsbwSayRwg= - dependencies: - ansi-escapes "^3.0.0" - cli-cursor "^2.0.0" - wrap-ansi "^3.0.1" - -log-update@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/log-update/-/log-update-4.0.0.tgz#589ecd352471f2a1c0c570287543a64dfd20e0a1" - integrity sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg== - dependencies: - ansi-escapes "^4.3.0" - cli-cursor "^3.1.0" - slice-ansi "^4.0.0" - wrap-ansi "^6.2.0" - -loglevel@^1.6.6, loglevel@^1.6.7: - version "1.6.8" - resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.6.8.tgz#8a25fb75d092230ecd4457270d80b54e28011171" - integrity sha512-bsU7+gc9AJ2SqpzxwU3+1fedl8zAntbtC5XYlt3s2j1hJcn2PsXSmgN8TaLG/J1/2mod4+cE/3vNL70/c1RNCA== - -long@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/long/-/long-4.0.0.tgz#9a7b71cfb7d361a194ea555241c92f7468d5bf28" - integrity sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA== - -loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.2.0, loose-envify@^1.3.1, loose-envify@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" - integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== - dependencies: - js-tokens "^3.0.0 || ^4.0.0" - -loud-rejection@^1.0.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f" - integrity sha1-W0b4AUft7leIcPCG0Eghz5mOVR8= - dependencies: - currently-unhandled "^0.4.1" - signal-exit "^3.0.0" - -lower-case@2.0.1, lower-case@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-2.0.1.tgz#39eeb36e396115cc05e29422eaea9e692c9408c7" - integrity sha512-LiWgfDLLb1dwbFQZsSglpRj+1ctGnayXz3Uv0/WO8n558JycT5fg6zkNcnW0G68Nn0aEldTFeEfmjCfmqry/rQ== - dependencies: - tslib "^1.10.0" - -lowercase-keys@^1.0.0, lowercase-keys@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.1.tgz#6f9e30b47084d971a7c820ff15a6c5167b74c26f" - integrity sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA== - -lowercase-keys@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz#2603e78b7b4b0006cbca2fbcc8a3202558ac9479" - integrity sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA== - -lru-cache@^5.0.0, lru-cache@^5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" - integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== - dependencies: - yallist "^3.0.2" - -macos-release@^2.2.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/macos-release/-/macos-release-2.3.0.tgz#eb1930b036c0800adebccd5f17bc4c12de8bb71f" - integrity sha512-OHhSbtcviqMPt7yfw5ef5aghS2jzFVKEFyCJndQt2YpSQ9qRVSEv2axSJI1paVThEu+FFGs584h/1YhxjVqajA== - -make-dir@^1.0.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.3.0.tgz#79c1033b80515bd6d24ec9933e860ca75ee27f0c" - integrity sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ== - dependencies: - pify "^3.0.0" - -make-dir@^2.0.0, make-dir@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" - integrity sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA== - dependencies: - pify "^4.0.1" - semver "^5.6.0" - -make-dir@^3.0.0, make-dir@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" - integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== - dependencies: - semver "^6.0.0" - -make-error@1.x, make-error@^1.1.1: - version "1.3.6" - resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" - integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== - -make-fetch-happen@^5.0.0: - version "5.0.2" - resolved "https://registry.yarnpkg.com/make-fetch-happen/-/make-fetch-happen-5.0.2.tgz#aa8387104f2687edca01c8687ee45013d02d19bd" - integrity sha512-07JHC0r1ykIoruKO8ifMXu+xEU8qOXDFETylktdug6vJDACnP+HKevOu3PXyNPzFyTSlz8vrBYlBO1JZRe8Cag== - dependencies: - agentkeepalive "^3.4.1" - cacache "^12.0.0" - http-cache-semantics "^3.8.1" - http-proxy-agent "^2.1.0" - https-proxy-agent "^2.2.3" - lru-cache "^5.1.1" - mississippi "^3.0.0" - node-fetch-npm "^2.0.2" - promise-retry "^1.1.1" - socks-proxy-agent "^4.0.0" - ssri "^6.0.0" - -makeerror@1.0.x: - version "1.0.11" - resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.11.tgz#e01a5c9109f2af79660e4e8b9587790184f5a96c" - integrity sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw= - dependencies: - tmpl "1.0.x" - -mamacro@^0.0.3: - version "0.0.3" - resolved "https://registry.yarnpkg.com/mamacro/-/mamacro-0.0.3.tgz#ad2c9576197c9f1abf308d0787865bd975a3f3e4" - integrity sha512-qMEwh+UujcQ+kbz3T6V+wAmO2U8veoq2w+3wY8MquqwVA3jChfwY+Tk52GZKDfACEPjuZ7r2oJLejwpt8jtwTA== - -map-age-cleaner@^0.1.1: - version "0.1.3" - resolved "https://registry.yarnpkg.com/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz#7d583a7306434c055fe474b0f45078e6e1b4b92a" - integrity sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w== - dependencies: - p-defer "^1.0.0" - -map-cache@^0.2.0, map-cache@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" - integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8= - -map-obj@^1.0.0, map-obj@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" - integrity sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0= - -map-obj@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-2.0.0.tgz#a65cd29087a92598b8791257a523e021222ac1f9" - integrity sha1-plzSkIepJZi4eRJXpSPgISIqwfk= - -map-obj@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-4.1.0.tgz#b91221b542734b9f14256c0132c897c5d7256fd5" - integrity sha512-glc9y00wgtwcDmp7GaE/0b0OnxpNJsVf3ael/An6Fe2Q51LLwN1er6sdomLRzz5h0+yMpiYLhWYF5R7HeqVd4g== - -map-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" - integrity sha1-7Nyo8TFE5mDxtb1B8S80edmN+48= - dependencies: - object-visit "^1.0.0" - -md5.js@^1.3.4: - version "1.3.5" - resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f" - integrity sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg== - dependencies: - hash-base "^3.0.0" - inherits "^2.0.1" - safe-buffer "^5.1.2" - -mdn-data@2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.4.tgz#699b3c38ac6f1d728091a64650b65d388502fd5b" - integrity sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA== - -mdn-data@2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.6.tgz#852dc60fcaa5daa2e8cf6c9189c440ed3e042978" - integrity sha512-rQvjv71olwNHgiTbfPZFkJtjNMciWgswYeciZhtvWLO8bmX3TnhyA62I6sTWOyZssWHJJjY6/KiWwqQsWWsqOA== - -media-typer@0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" - integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g= - -mem@^4.0.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/mem/-/mem-4.3.0.tgz#461af497bc4ae09608cdb2e60eefb69bff744178" - integrity sha512-qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w== - dependencies: - map-age-cleaner "^0.1.1" - mimic-fn "^2.0.0" - p-is-promise "^2.0.0" - -memory-fs@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552" - integrity sha1-OpoguEYlI+RHz7x+i7gO1me/xVI= - dependencies: - errno "^0.1.3" - readable-stream "^2.0.1" - -memory-fs@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.5.0.tgz#324c01288b88652966d161db77838720845a8e3c" - integrity sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA== - dependencies: - errno "^0.1.3" - readable-stream "^2.0.1" - -memory-pager@^1.0.2: - version "1.5.0" - resolved "https://registry.yarnpkg.com/memory-pager/-/memory-pager-1.5.0.tgz#d8751655d22d384682741c972f2c3d6dfa3e66b5" - integrity sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg== - -meow@^3.3.0: - version "3.7.0" - resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb" - integrity sha1-cstmi0JSKCkKu/qFaJJYcwioAfs= - dependencies: - camelcase-keys "^2.0.0" - decamelize "^1.1.2" - loud-rejection "^1.0.0" - map-obj "^1.0.1" - minimist "^1.1.3" - normalize-package-data "^2.3.4" - object-assign "^4.0.1" - read-pkg-up "^1.0.1" - redent "^1.0.0" - trim-newlines "^1.0.0" - -meow@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/meow/-/meow-4.0.1.tgz#d48598f6f4b1472f35bf6317a95945ace347f975" - integrity sha512-xcSBHD5Z86zaOc+781KrupuHAzeGXSLtiAOmBsiLDiPSaYSB6hdew2ng9EBAnZ62jagG9MHAOdxpDi/lWBFJ/A== - dependencies: - camelcase-keys "^4.0.0" - decamelize-keys "^1.0.0" - loud-rejection "^1.0.0" - minimist "^1.1.3" - minimist-options "^3.0.1" - normalize-package-data "^2.3.4" - read-pkg-up "^3.0.0" - redent "^2.0.0" - trim-newlines "^2.0.0" - -meow@^7.0.0: - version "7.0.1" - resolved "https://registry.yarnpkg.com/meow/-/meow-7.0.1.tgz#1ed4a0a50b3844b451369c48362eb0515f04c1dc" - integrity sha512-tBKIQqVrAHqwit0vfuFPY3LlzJYkEOFyKa3bPgxzNl6q/RtN8KQ+ALYEASYuFayzSAsjlhXj/JZ10rH85Q6TUw== - dependencies: - "@types/minimist" "^1.2.0" - arrify "^2.0.1" - camelcase "^6.0.0" - camelcase-keys "^6.2.2" - decamelize-keys "^1.1.0" - hard-rejection "^2.1.0" - minimist-options "^4.0.2" - normalize-package-data "^2.5.0" - read-pkg-up "^7.0.1" - redent "^3.0.0" - trim-newlines "^3.0.0" - type-fest "^0.13.1" - yargs-parser "^18.1.3" - -merge-deep@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/merge-deep/-/merge-deep-3.0.2.tgz#f39fa100a4f1bd34ff29f7d2bf4508fbb8d83ad2" - integrity sha512-T7qC8kg4Zoti1cFd8Cr0M+qaZfOwjlPDEdZIIPPB2JZctjaPM4fX+i7HOId69tAti2fvO6X5ldfYUONDODsrkA== - dependencies: - arr-union "^3.1.0" - clone-deep "^0.2.4" - kind-of "^3.0.2" - -merge-descriptors@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" - integrity sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E= - -merge-stream@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" - integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== - -merge2@^1.2.3, merge2@^1.3.0: - version "1.4.1" - resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" - integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== - -methods@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" - integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= - -microevent.ts@~0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/microevent.ts/-/microevent.ts-0.1.1.tgz#70b09b83f43df5172d0205a63025bce0f7357fa0" - integrity sha512-jo1OfR4TaEwd5HOrt5+tAZ9mqT4jmpNAusXtyfNzqVm9uiSYFZlKM1wYL4oU7azZW/PxQW53wM0S6OR1JHNa2g== - -micromatch@^3.1.10, micromatch@^3.1.4: - version "3.1.10" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" - integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - braces "^2.3.1" - define-property "^2.0.2" - extend-shallow "^3.0.2" - extglob "^2.0.4" - fragment-cache "^0.2.1" - kind-of "^6.0.2" - nanomatch "^1.2.9" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.2" - -micromatch@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.2.tgz#4fcb0999bf9fbc2fcbdd212f6d629b9a56c39259" - integrity sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q== - dependencies: - braces "^3.0.1" - picomatch "^2.0.5" - -miller-rabin@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d" - integrity sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA== - dependencies: - bn.js "^4.0.0" - brorand "^1.0.1" - -mime-db@1.44.0, "mime-db@>= 1.43.0 < 2": - version "1.44.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.44.0.tgz#fa11c5eb0aca1334b4233cb4d52f10c5a6272f92" - integrity sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg== - -mime-types@^2.1.12, mime-types@~2.1.17, mime-types@~2.1.19, mime-types@~2.1.24: - version "2.1.27" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.27.tgz#47949f98e279ea53119f5722e0f34e529bec009f" - integrity sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w== - dependencies: - mime-db "1.44.0" - -mime@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" - integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== - -mime@^2.4.4: - version "2.4.6" - resolved "https://registry.yarnpkg.com/mime/-/mime-2.4.6.tgz#e5b407c90db442f2beb5b162373d07b69affa4d1" - integrity sha512-RZKhC3EmpBchfTGBVb8fb+RL2cWyw/32lshnsETttkBAyAUXSGHxbEJWWRXc751DrIxG1q04b8QwMbAwkRPpUA== - -mimic-fn@^1.0.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022" - integrity sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ== - -mimic-fn@^2.0.0, mimic-fn@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" - integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== - -mimic-response@^1.0.0, mimic-response@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b" - integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ== - -min-indent@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" - integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== - -mini-create-react-context@^0.3.0: - version "0.3.2" - resolved "https://registry.yarnpkg.com/mini-create-react-context/-/mini-create-react-context-0.3.2.tgz#79fc598f283dd623da8e088b05db8cddab250189" - integrity sha512-2v+OeetEyliMt5VHMXsBhABoJ0/M4RCe7fatd/fBy6SMiKazUSEt3gxxypfnk2SHMkdBYvorHRoQxuGoiwbzAw== - dependencies: - "@babel/runtime" "^7.4.0" - gud "^1.0.0" - tiny-warning "^1.0.2" - -mini-create-react-context@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/mini-create-react-context/-/mini-create-react-context-0.4.0.tgz#df60501c83151db69e28eac0ef08b4002efab040" - integrity sha512-b0TytUgFSbgFJGzJqXPKCFCBWigAjpjo+Fl7Vf7ZbKRDptszpppKxXH6DRXEABZ/gcEQczeb0iZ7JvL8e8jjCA== - dependencies: - "@babel/runtime" "^7.5.5" - tiny-warning "^1.0.3" - -mini-css-extract-plugin@0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-0.9.0.tgz#47f2cf07aa165ab35733b1fc97d4c46c0564339e" - integrity sha512-lp3GeY7ygcgAmVIcRPBVhIkf8Us7FZjA+ILpal44qLdSu11wmjKQ3d9k15lfD7pO4esu9eUIAW7qiYIBppv40A== - dependencies: - loader-utils "^1.1.0" - normalize-url "1.9.1" - schema-utils "^1.0.0" - webpack-sources "^1.1.0" - -minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" - integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== - -minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" - integrity sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo= - -minimatch@3.0.4, minimatch@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" - integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== - dependencies: - brace-expansion "^1.1.7" - -minimist-options@^3.0.1: - version "3.0.2" - resolved "https://registry.yarnpkg.com/minimist-options/-/minimist-options-3.0.2.tgz#fba4c8191339e13ecf4d61beb03f070103f3d954" - integrity sha512-FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ== - dependencies: - arrify "^1.0.1" - is-plain-obj "^1.1.0" - -minimist-options@^4.0.2: - version "4.1.0" - resolved "https://registry.yarnpkg.com/minimist-options/-/minimist-options-4.1.0.tgz#c0655713c53a8a2ebd77ffa247d342c40f010619" - integrity sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A== - dependencies: - arrify "^1.0.1" - is-plain-obj "^1.1.0" - kind-of "^6.0.3" - -minimist@1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" - integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ= - -minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0, minimist@^1.2.5: - version "1.2.5" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" - integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== - -minipass-collect@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/minipass-collect/-/minipass-collect-1.0.2.tgz#22b813bf745dc6edba2576b940022ad6edc8c617" - integrity sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA== - dependencies: - minipass "^3.0.0" - -minipass-flush@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373" - integrity sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw== - dependencies: - minipass "^3.0.0" - -minipass-pipeline@^1.2.2: - version "1.2.3" - resolved "https://registry.yarnpkg.com/minipass-pipeline/-/minipass-pipeline-1.2.3.tgz#55f7839307d74859d6e8ada9c3ebe72cec216a34" - integrity sha512-cFOknTvng5vqnwOpDsZTWhNll6Jf8o2x+/diplafmxpuIymAjzoOolZG0VvQf3V2HgqzJNhnuKHYp2BqDgz8IQ== - dependencies: - minipass "^3.0.0" - -minipass@^2.3.5, minipass@^2.6.0, minipass@^2.8.6, minipass@^2.9.0: - version "2.9.0" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6" - integrity sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg== - dependencies: - safe-buffer "^5.1.2" - yallist "^3.0.0" - -minipass@^3.0.0, minipass@^3.1.1: - version "3.1.3" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.1.3.tgz#7d42ff1f39635482e15f9cdb53184deebd5815fd" - integrity sha512-Mgd2GdMVzY+x3IJ+oHnVM+KG3lA5c8tnabyJKmHSaG2kAGpudxuOf8ToDkhumF7UzME7DecbQE9uOZhNm7PuJg== - dependencies: - yallist "^4.0.0" - -minizlib@^1.2.1: - version "1.3.3" - resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d" - integrity sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q== - dependencies: - minipass "^2.9.0" - -mississippi@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-3.0.0.tgz#ea0a3291f97e0b5e8776b363d5f0a12d94c67022" - integrity sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA== - dependencies: - concat-stream "^1.5.0" - duplexify "^3.4.2" - end-of-stream "^1.1.0" - flush-write-stream "^1.0.0" - from2 "^2.1.0" - parallel-transform "^1.1.0" - pump "^3.0.0" - pumpify "^1.3.3" - stream-each "^1.1.0" - through2 "^2.0.0" - -mixin-deep@^1.2.0: - version "1.3.2" - resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" - integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA== - dependencies: - for-in "^1.0.2" - is-extendable "^1.0.1" - -mixin-object@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/mixin-object/-/mixin-object-2.0.1.tgz#4fb949441dab182540f1fe035ba60e1947a5e57e" - integrity sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4= - dependencies: - for-in "^0.1.3" - is-extendable "^0.1.1" - -mkdirp-promise@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/mkdirp-promise/-/mkdirp-promise-5.0.1.tgz#e9b8f68e552c68a9c1713b84883f7a1dd039b8a1" - integrity sha1-6bj2jlUsaKnBcTuEiD96HdA5uKE= - dependencies: - mkdirp "*" - -mkdirp@*, mkdirp@1.0.4, mkdirp@1.x, mkdirp@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" - integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== - -mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@~0.5.1: - version "0.5.5" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" - integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== - dependencies: - minimist "^1.2.5" - -modify-values@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/modify-values/-/modify-values-1.0.1.tgz#b3939fa605546474e3e3e3c63d64bd43b4ee6022" - integrity sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw== - -mongodb@3.5.7: - version "3.5.7" - resolved "https://registry.yarnpkg.com/mongodb/-/mongodb-3.5.7.tgz#6dcfff3bdbf67a53263dcca1647c265eea1d065d" - integrity sha512-lMtleRT+vIgY/JhhTn1nyGwnSMmJkJELp+4ZbrjctrnBxuLbj6rmLuJFz8W2xUzUqWmqoyVxJLYuC58ZKpcTYQ== - dependencies: - bl "^2.2.0" - bson "^1.1.4" - denque "^1.4.1" - require_optional "^1.0.1" - safe-buffer "^5.1.2" - optionalDependencies: - saslprep "^1.0.0" - -mongodb@3.5.9, mongodb@^3.4.1: - version "3.5.9" - resolved "https://registry.yarnpkg.com/mongodb/-/mongodb-3.5.9.tgz#799b72be8110b7e71a882bb7ce0d84d05429f772" - integrity sha512-vXHBY1CsGYcEPoVWhwgxIBeWqP3dSu9RuRDsoLRPTITrcrgm1f0Ubu1xqF9ozMwv53agmEiZm0YGo+7WL3Nbug== - dependencies: - bl "^2.2.0" - bson "^1.1.4" - denque "^1.4.1" - require_optional "^1.0.1" - safe-buffer "^5.1.2" - optionalDependencies: - saslprep "^1.0.0" - -mongoose-legacy-pluralize@1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/mongoose-legacy-pluralize/-/mongoose-legacy-pluralize-1.0.2.tgz#3ba9f91fa507b5186d399fb40854bff18fb563e4" - integrity sha512-Yo/7qQU4/EyIS8YDFSeenIvXxZN+ld7YdV9LqFVQJzTLye8unujAWPZ4NWKfFA+RNjh+wvTWKY9Z3E5XM6ZZiQ== - -mongoose@5.9.13: - version "5.9.13" - resolved "https://registry.yarnpkg.com/mongoose/-/mongoose-5.9.13.tgz#fa4af761a0b1d10471daa23aafcc775b04b6db42" - integrity sha512-MsFdJAaCTVbDA3gYskUEpUN1kThL7sp4zh8N9rGt0+9vYMn28q92NLK90vGssM9qjOGWp8HqLeT1fBgfMZDnKA== - dependencies: - bson "^1.1.4" - kareem "2.3.1" - mongodb "3.5.7" - mongoose-legacy-pluralize "1.0.2" - mpath "0.7.0" - mquery "3.2.2" - ms "2.1.2" - regexp-clone "1.0.0" - safe-buffer "5.1.2" - sift "7.0.1" - sliced "1.0.1" - -mongoose@5.9.25: - version "5.9.25" - resolved "https://registry.yarnpkg.com/mongoose/-/mongoose-5.9.25.tgz#620da737ec9a667f84404ad4f35bb60338dd0b4b" - integrity sha512-vz/DqJ3mrHqEIlfRbKmDZ9TzQ1a0hCtSQpjHScIxr4rEtLs0tjsXDeEWcJ/vEEc3oLfP6vRx9V+uYSprXDUvFQ== - dependencies: - bson "^1.1.4" - kareem "2.3.1" - mongodb "3.5.9" - mongoose-legacy-pluralize "1.0.2" - mpath "0.7.0" - mquery "3.2.2" - ms "2.1.2" - regexp-clone "1.0.0" - safe-buffer "5.2.1" - sift "7.0.1" - sliced "1.0.1" - -move-concurrently@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" - integrity sha1-viwAX9oy4LKa8fBdfEszIUxwH5I= - dependencies: - aproba "^1.1.1" - copy-concurrently "^1.0.0" - fs-write-stream-atomic "^1.0.8" - mkdirp "^0.5.1" - rimraf "^2.5.4" - run-queue "^1.0.3" - -mpath@0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/mpath/-/mpath-0.7.0.tgz#20e8102e276b71709d6e07e9f8d4d0f641afbfb8" - integrity sha512-Aiq04hILxhz1L+f7sjGyn7IxYzWm1zLNNXcfhDtx04kZ2Gk7uvFdgZ8ts1cWa/6d0TQmag2yR8zSGZUmp0tFNg== - -mquery@3.2.2: - version "3.2.2" - resolved "https://registry.yarnpkg.com/mquery/-/mquery-3.2.2.tgz#e1383a3951852ce23e37f619a9b350f1fb3664e7" - integrity sha512-XB52992COp0KP230I3qloVUbkLUxJIu328HBP2t2EsxSFtf4W1HPSOBWOXf1bqxK4Xbb66lfMJ+Bpfd9/yZE1Q== - dependencies: - bluebird "3.5.1" - debug "3.1.0" - regexp-clone "^1.0.0" - safe-buffer "5.1.2" - sliced "1.0.1" - -ms@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" - integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= - -ms@2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" - integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== - -ms@2.1.2, ms@^2.0.0, ms@^2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" - integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== - -multicast-dns-service-types@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz#899f11d9686e5e05cb91b35d5f0e63b773cfc901" - integrity sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE= - -multicast-dns@^6.0.1: - version "6.2.3" - resolved "https://registry.yarnpkg.com/multicast-dns/-/multicast-dns-6.2.3.tgz#a0ec7bd9055c4282f790c3c82f4e28db3b31b229" - integrity sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g== - dependencies: - dns-packet "^1.3.1" - thunky "^1.0.2" - -multimatch@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/multimatch/-/multimatch-3.0.0.tgz#0e2534cc6bc238d9ab67e1b9cd5fcd85a6dbf70b" - integrity sha512-22foS/gqQfANZ3o+W7ST2x25ueHDVNWl/b9OlGcLpy/iKxjCpvcNCM51YCenUi7Mt/jAjjqv8JwZRs8YP5sRjA== - dependencies: - array-differ "^2.0.3" - array-union "^1.0.2" - arrify "^1.0.1" - minimatch "^3.0.4" - -mute-stream@0.0.7: - version "0.0.7" - resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" - integrity sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s= - -mute-stream@0.0.8, mute-stream@~0.0.4: - version "0.0.8" - resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" - integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== - -mz@^2.4.0, mz@^2.5.0: - version "2.7.0" - resolved "https://registry.yarnpkg.com/mz/-/mz-2.7.0.tgz#95008057a56cafadc2bc63dde7f9ff6955948e32" - integrity sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q== - dependencies: - any-promise "^1.0.0" - object-assign "^4.0.1" - thenify-all "^1.0.0" - -nan@^2.12.1, nan@^2.14.0: - version "2.14.1" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.1.tgz#d7be34dfa3105b91494c3147089315eff8874b01" - integrity sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw== - -nanoid@^2.1.0: - version "2.1.11" - resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-2.1.11.tgz#ec24b8a758d591561531b4176a01e3ab4f0f0280" - integrity sha512-s/snB+WGm6uwi0WjsZdaVcuf3KJXlfGl2LcxgwkEwJF0D/BWzVWAZW/XY4bFaiR7s0Jk3FPvlnepg1H1b1UwlA== - -nanomatch@^1.2.9: - version "1.2.13" - resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" - integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - define-property "^2.0.2" - extend-shallow "^3.0.2" - fragment-cache "^0.2.1" - is-windows "^1.0.2" - kind-of "^6.0.2" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -natural-compare@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" - integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= - -negotiator@0.6.2: - version "0.6.2" - resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" - integrity sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw== - -neo-async@^2.5.0, neo-async@^2.6.0, neo-async@^2.6.1: - version "2.6.1" - resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.1.tgz#ac27ada66167fa8849a6addd837f6b189ad2081c" - integrity sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw== - -next-tick@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.0.0.tgz#ca86d1fe8828169b0120208e3dc8424b9db8342c" - integrity sha1-yobR/ogoFpsBICCOPchCS524NCw= - -nice-try@^1.0.4: - version "1.0.5" - resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" - integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== - -no-case@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/no-case/-/no-case-3.0.3.tgz#c21b434c1ffe48b39087e86cfb4d2582e9df18f8" - integrity sha512-ehY/mVQCf9BL0gKfsJBvFJen+1V//U+0HQMPrWct40ixE4jnv0bfvxDbWtAHL9EcaPEOJHVVYKoQn1TlZUB8Tw== - dependencies: - lower-case "^2.0.1" - tslib "^1.10.0" - -node-fetch-npm@^2.0.2: - version "2.0.4" - resolved "https://registry.yarnpkg.com/node-fetch-npm/-/node-fetch-npm-2.0.4.tgz#6507d0e17a9ec0be3bec516958a497cec54bf5a4" - integrity sha512-iOuIQDWDyjhv9qSDrj9aq/klt6F9z1p2otB3AV7v3zBDcL/x+OfGsvGQZZCcMZbUf4Ujw1xGNQkjvGnVT22cKg== - dependencies: - encoding "^0.1.11" - json-parse-better-errors "^1.0.0" - safe-buffer "^5.1.1" - -node-fetch@1.6.3: - version "1.6.3" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.6.3.tgz#dc234edd6489982d58e8f0db4f695029abcd8c04" - integrity sha1-3CNO3WSJmC1Y6PDbT2lQKavNjAQ= - dependencies: - encoding "^0.1.11" - is-stream "^1.0.1" - -node-fetch@2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.1.2.tgz#ab884e8e7e57e38a944753cec706f788d1768bb5" - integrity sha1-q4hOjn5X44qUR1POxwb3iNF2i7U= - -node-fetch@2.6.0, node-fetch@^2.1.2, node-fetch@^2.2.0, node-fetch@^2.3.0, node-fetch@^2.5.0, node-fetch@^2.6.0: - version "2.6.0" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.0.tgz#e633456386d4aa55863f676a7ab0daa8fdecb0fd" - integrity sha512-8dG4H5ujfvFiqDmVu9fQ5bOHUC15JMjMY/Zumv26oOvvVJjM67KF8koCWIabKQ1GJIa9r2mMZscBq/TbdOcmNA== - -node-fetch@^1.0.1: - version "1.7.3" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.3.tgz#980f6f72d85211a5347c6b2bc18c5b84c3eb47ef" - integrity sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ== - dependencies: - encoding "^0.1.11" - is-stream "^1.0.1" - -node-forge@0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.9.0.tgz#d624050edbb44874adca12bb9a52ec63cb782579" - integrity sha512-7ASaDa3pD+lJ3WvXFsxekJQelBKRpne+GOVbLbtHYdd7pFspyeuJHnWfLplGf3SwKGbfs/aYl5V/JCIaHVUKKQ== - -node-gyp@^5.0.2: - version "5.1.1" - resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-5.1.1.tgz#eb915f7b631c937d282e33aed44cb7a025f62a3e" - integrity sha512-WH0WKGi+a4i4DUt2mHnvocex/xPLp9pYt5R6M2JdFB7pJ7Z34hveZ4nDTGTiLXCkitA9T8HFZjhinBCiVHYcWw== - dependencies: - env-paths "^2.2.0" - glob "^7.1.4" - graceful-fs "^4.2.2" - mkdirp "^0.5.1" - nopt "^4.0.1" - npmlog "^4.1.2" - request "^2.88.0" - rimraf "^2.6.3" - semver "^5.7.1" - tar "^4.4.12" - which "^1.3.1" - -node-int64@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" - integrity sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs= - -node-libs-browser@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-2.2.1.tgz#b64f513d18338625f90346d27b0d235e631f6425" - integrity sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q== - dependencies: - assert "^1.1.1" - browserify-zlib "^0.2.0" - buffer "^4.3.0" - console-browserify "^1.1.0" - constants-browserify "^1.0.0" - crypto-browserify "^3.11.0" - domain-browser "^1.1.1" - events "^3.0.0" - https-browserify "^1.0.0" - os-browserify "^0.3.0" - path-browserify "0.0.1" - process "^0.11.10" - punycode "^1.2.4" - querystring-es3 "^0.2.0" - readable-stream "^2.3.3" - stream-browserify "^2.0.1" - stream-http "^2.7.2" - string_decoder "^1.0.0" - timers-browserify "^2.0.4" - tty-browserify "0.0.0" - url "^0.11.0" - util "^0.11.0" - vm-browserify "^1.0.1" - -node-modules-regexp@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" - integrity sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA= - -node-notifier@^5.4.2: - version "5.4.3" - resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-5.4.3.tgz#cb72daf94c93904098e28b9c590fd866e464bd50" - integrity sha512-M4UBGcs4jeOK9CjTsYwkvH6/MzuUmGCyTW+kCY7uO+1ZVr0+FHGdPdIf5CCLqAaxnRrWidyoQlNkMIIVwbKB8Q== - dependencies: - growly "^1.3.0" - is-wsl "^1.1.0" - semver "^5.5.0" - shellwords "^0.1.1" - which "^1.3.0" - -node-notifier@^7.0.0: - version "7.0.1" - resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-7.0.1.tgz#a355e33e6bebacef9bf8562689aed0f4230ca6f9" - integrity sha512-VkzhierE7DBmQEElhTGJIoiZa1oqRijOtgOlsXg32KrJRXsPy0NXFBqWGW/wTswnJlDCs5viRYaqWguqzsKcmg== - dependencies: - growly "^1.3.0" - is-wsl "^2.1.1" - semver "^7.2.1" - shellwords "^0.1.1" - uuid "^7.0.3" - which "^2.0.2" - -node-releases@^1.1.52, node-releases@^1.1.53: - version "1.1.58" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.58.tgz#8ee20eef30fa60e52755fcc0942def5a734fe935" - integrity sha512-NxBudgVKiRh/2aPWMgPR7bPTX0VPmGx5QBwCtdHitnqFE5/O8DeBXuIMH1nwNnw/aMo6AjOrpsHzfY3UbUJ7yg== - -nodemon@2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/nodemon/-/nodemon-2.0.3.tgz#e9c64df8740ceaef1cb00e1f3da57c0a93ef3714" - integrity sha512-lLQLPS90Lqwc99IHe0U94rDgvjo+G9I4uEIxRG3evSLROcqQ9hwc0AxlSHKS4T1JW/IMj/7N5mthiN58NL/5kw== - dependencies: - chokidar "^3.2.2" - debug "^3.2.6" - ignore-by-default "^1.0.1" - minimatch "^3.0.4" - pstree.remy "^1.1.7" - semver "^5.7.1" - supports-color "^5.5.0" - touch "^3.1.0" - undefsafe "^2.0.2" - update-notifier "^4.0.0" - -nodemon@2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/nodemon/-/nodemon-2.0.4.tgz#55b09319eb488d6394aa9818148c0c2d1c04c416" - integrity sha512-Ltced+hIfTmaS28Zjv1BM552oQ3dbwPqI4+zI0SLgq+wpJhSyqgYude/aZa/3i31VCQWMfXJVxvu86abcam3uQ== - dependencies: - chokidar "^3.2.2" - debug "^3.2.6" - ignore-by-default "^1.0.1" - minimatch "^3.0.4" - pstree.remy "^1.1.7" - semver "^5.7.1" - supports-color "^5.5.0" - touch "^3.1.0" - undefsafe "^2.0.2" - update-notifier "^4.0.0" - -nopt@^4.0.1: - version "4.0.3" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.3.tgz#a375cad9d02fd921278d954c2254d5aa57e15e48" - integrity sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg== - dependencies: - abbrev "1" - osenv "^0.1.4" - -nopt@~1.0.10: - version "1.0.10" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-1.0.10.tgz#6ddd21bd2a31417b92727dd585f8a6f37608ebee" - integrity sha1-bd0hvSoxQXuScn3Vhfim83YI6+4= - dependencies: - abbrev "1" - -normalize-package-data@^2.0.0, normalize-package-data@^2.3.0, normalize-package-data@^2.3.2, normalize-package-data@^2.3.4, normalize-package-data@^2.3.5, normalize-package-data@^2.4.0, normalize-package-data@^2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" - integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== - dependencies: - hosted-git-info "^2.1.4" - resolve "^1.10.0" - semver "2 || 3 || 4 || 5" - validate-npm-package-license "^3.0.1" - -normalize-path@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" - integrity sha1-GrKLVW4Zg2Oowab35vogE3/mrtk= - dependencies: - remove-trailing-separator "^1.0.1" - -normalize-path@^3.0.0, normalize-path@~3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" - integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== - -normalize-range@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" - integrity sha1-LRDAa9/TEuqXd2laTShDlFa3WUI= - -normalize-url@1.9.1: - version "1.9.1" - resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-1.9.1.tgz#2cc0d66b31ea23036458436e3620d85954c66c3c" - integrity sha1-LMDWazHqIwNkWENuNiDYWVTGbDw= - dependencies: - object-assign "^4.0.1" - prepend-http "^1.0.0" - query-string "^4.1.0" - sort-keys "^1.0.0" - -normalize-url@^3.0.0, normalize-url@^3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-3.3.0.tgz#b2e1c4dc4f7c6d57743df733a4f5978d18650559" - integrity sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg== - -normalize-url@^4.1.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.0.tgz#453354087e6ca96957bd8f5baf753f5982142129" - integrity sha512-2s47yzUxdexf1OhyRi4Em83iQk0aPvwTddtFz4hnSSw9dCEsLEGf6SwIO8ss/19S9iBb5sJaOuTvTGDeZI00BQ== - -npm-bundled@^1.0.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.1.1.tgz#1edd570865a94cdb1bc8220775e29466c9fb234b" - integrity sha512-gqkfgGePhTpAEgUsGEgcq1rqPXA+tv/aVBlgEzfXwA1yiUJF7xtEt3CtVwOjNYQOVknDk0F20w58Fnm3EtG0fA== - dependencies: - npm-normalize-package-bin "^1.0.1" - -npm-lifecycle@^3.1.2: - version "3.1.5" - resolved "https://registry.yarnpkg.com/npm-lifecycle/-/npm-lifecycle-3.1.5.tgz#9882d3642b8c82c815782a12e6a1bfeed0026309" - integrity sha512-lDLVkjfZmvmfvpvBzA4vzee9cn+Me4orq0QF8glbswJVEbIcSNWib7qGOffolysc3teCqbbPZZkzbr3GQZTL1g== - dependencies: - byline "^5.0.0" - graceful-fs "^4.1.15" - node-gyp "^5.0.2" - resolve-from "^4.0.0" - slide "^1.1.6" - uid-number "0.0.6" - umask "^1.1.0" - which "^1.3.1" - -npm-normalize-package-bin@^1.0.0, npm-normalize-package-bin@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz#6e79a41f23fd235c0623218228da7d9c23b8f6e2" - integrity sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA== - -"npm-package-arg@^4.0.0 || ^5.0.0 || ^6.0.0", npm-package-arg@^6.0.0, npm-package-arg@^6.1.0: - version "6.1.1" - resolved "https://registry.yarnpkg.com/npm-package-arg/-/npm-package-arg-6.1.1.tgz#02168cb0a49a2b75bf988a28698de7b529df5cb7" - integrity sha512-qBpssaL3IOZWi5vEKUKW0cO7kzLeT+EQO9W8RsLOZf76KF9E/K9+wH0C7t06HXPpaH8WH5xF1MExLuCwbTqRUg== - dependencies: - hosted-git-info "^2.7.1" - osenv "^0.1.5" - semver "^5.6.0" - validate-npm-package-name "^3.0.0" - -npm-packlist@^1.4.4: - version "1.4.8" - resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.8.tgz#56ee6cc135b9f98ad3d51c1c95da22bbb9b2ef3e" - integrity sha512-5+AZgwru5IevF5ZdnFglB5wNlHG1AOOuw28WhUq8/8emhBmLv6jX5by4WJCh7lW0uSYZYS6DXqIsyZVIXRZU9A== - dependencies: - ignore-walk "^3.0.1" - npm-bundled "^1.0.1" - npm-normalize-package-bin "^1.0.1" - -npm-pick-manifest@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/npm-pick-manifest/-/npm-pick-manifest-3.0.2.tgz#f4d9e5fd4be2153e5f4e5f9b7be8dc419a99abb7" - integrity sha512-wNprTNg+X5nf+tDi+hbjdHhM4bX+mKqv6XmPh7B5eG+QY9VARfQPfCEH013H5GqfNj6ee8Ij2fg8yk0mzps1Vw== - dependencies: - figgy-pudding "^3.5.1" - npm-package-arg "^6.0.0" - semver "^5.4.1" - -npm-run-path@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" - integrity sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8= - dependencies: - path-key "^2.0.0" - -npm-run-path@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" - integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== - dependencies: - path-key "^3.0.0" - -npmlog@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" - integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== - dependencies: - are-we-there-yet "~1.1.2" - console-control-strings "~1.1.0" - gauge "~2.7.3" - set-blocking "~2.0.0" - -nth-check@^1.0.2, nth-check@~1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.2.tgz#b2bd295c37e3dd58a3bf0700376663ba4d9cf05c" - integrity sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg== - dependencies: - boolbase "~1.0.0" - -nullthrows@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/nullthrows/-/nullthrows-1.1.1.tgz#7818258843856ae971eae4208ad7d7eb19a431b1" - integrity sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw== - -num2fraction@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" - integrity sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4= - -number-is-nan@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" - integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= - -nwsapi@^2.0.7, nwsapi@^2.1.3, nwsapi@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.0.tgz#204879a9e3d068ff2a55139c2c772780681a38b7" - integrity sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ== - -oauth-sign@~0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" - integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== - -oauth@^0.9.15: - version "0.9.15" - resolved "https://registry.yarnpkg.com/oauth/-/oauth-0.9.15.tgz#bd1fefaf686c96b75475aed5196412ff60cfb9c1" - integrity sha1-vR/vr2hslrdUda7VGWQS/2DPucE= - -object-assign@^4, object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" - integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= - -object-copy@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" - integrity sha1-fn2Fi3gb18mRpBupde04EnVOmYw= - dependencies: - copy-descriptor "^0.1.0" - define-property "^0.2.5" - kind-of "^3.0.3" - -object-hash@^2.0.1: - version "2.0.3" - resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-2.0.3.tgz#d12db044e03cd2ca3d77c0570d87225b02e1e6ea" - integrity sha512-JPKn0GMu+Fa3zt3Bmr66JhokJU5BaNBIh4ZeTlaCBzrBsOeXzwcKKAK1tbLiPKgvwmPXsDvvLHoWh5Bm7ofIYg== - -object-inspect@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.7.0.tgz#f4f6bd181ad77f006b5ece60bd0b6f398ff74a67" - integrity sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw== - -object-is@^1.0.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.2.tgz#c5d2e87ff9e119f78b7a088441519e2eec1573b6" - integrity sha512-5lHCz+0uufF6wZ7CRFWJN3hp8Jqblpgve06U5CMQ3f//6iDjPr2PEo9MWCjEssDsa+UZEL4PkFpr+BMop6aKzQ== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.5" - -object-keys@^1.0.11, object-keys@^1.0.12, object-keys@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" - integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== - -object-path@0.11.4, object-path@^0.11.4: - version "0.11.4" - resolved "https://registry.yarnpkg.com/object-path/-/object-path-0.11.4.tgz#370ae752fbf37de3ea70a861c23bba8915691949" - integrity sha1-NwrnUvvzfePqcKhhwju6iRVpGUk= - -object-visit@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" - integrity sha1-95xEk68MU3e1n+OdOV5BBC3QRbs= - dependencies: - isobject "^3.0.0" - -object.assign@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" - integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w== - dependencies: - define-properties "^1.1.2" - function-bind "^1.1.1" - has-symbols "^1.0.0" - object-keys "^1.0.11" - -object.entries@^1.1.0, object.entries@^1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.2.tgz#bc73f00acb6b6bb16c203434b10f9a7e797d3add" - integrity sha512-BQdB9qKmb/HyNdMNWVr7O3+z5MUIx3aiegEIJqjMBbBf0YT9RRxTJSim4mzFqtyr7PDAHigq0N9dO0m0tRakQA== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.5" - has "^1.0.3" - -object.fromentries@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.2.tgz#4a09c9b9bb3843dd0f89acdb517a794d4f355ac9" - integrity sha512-r3ZiBH7MQppDJVLx6fhD618GKNG40CZYH9wgwdhKxBDDbQgjeWGGd4AtkZad84d291YxvWe7bJGuE65Anh0dxQ== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.0-next.1" - function-bind "^1.1.1" - has "^1.0.3" - -object.getownpropertydescriptors@^2.0.3, object.getownpropertydescriptors@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz#369bf1f9592d8ab89d712dced5cb81c7c5352649" - integrity sha512-Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.0-next.1" - -object.pick@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" - integrity sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c= - dependencies: - isobject "^3.0.1" - -object.values@^1.1.0, object.values@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.1.tgz#68a99ecde356b7e9295a3c5e0ce31dc8c953de5e" - integrity sha512-WTa54g2K8iu0kmS/us18jEmdv1a4Wi//BZ/DTVYEcH0XhLM5NYdpDHja3gt57VrZLcNAO2WGA+KpWsDBaHt6eA== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.0-next.1" - function-bind "^1.1.1" - has "^1.0.3" - -obuf@^1.0.0, obuf@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.2.tgz#09bea3343d41859ebd446292d11c9d4db619084e" - integrity sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg== - -octokit-pagination-methods@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/octokit-pagination-methods/-/octokit-pagination-methods-1.1.0.tgz#cf472edc9d551055f9ef73f6e42b4dbb4c80bea4" - integrity sha512-fZ4qZdQ2nxJvtcasX7Ghl+WlWS/d9IgnBIwFZXVNNZUmzpno91SX5bc5vuxiuKoCtK78XxGGNuSCrDC7xYB3OQ== - -on-finished@~2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" - integrity sha1-IPEzZIGwg811M3mSoWlxqi2QaUc= - dependencies: - ee-first "1.1.1" - -on-headers@~1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.2.tgz#772b0ae6aaa525c399e489adfad90c403eb3c28f" - integrity sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA== - -once@^1.3.0, once@^1.3.1, once@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" - integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= - dependencies: - wrappy "1" - -onetime@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4" - integrity sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ= - dependencies: - mimic-fn "^1.0.0" - -onetime@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.0.tgz#fff0f3c91617fe62bb50189636e99ac8a6df7be5" - integrity sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q== - dependencies: - mimic-fn "^2.1.0" - -open@^7.0.2: - version "7.0.4" - resolved "https://registry.yarnpkg.com/open/-/open-7.0.4.tgz#c28a9d315e5c98340bf979fdcb2e58664aa10d83" - integrity sha512-brSA+/yq+b08Hsr4c8fsEW2CRzk1BmfN3SAK/5VCHQ9bdoZJ4qa/+AfR0xHjlbbZUyPkUHs1b8x1RqdyZdkVqQ== - dependencies: - is-docker "^2.0.0" - is-wsl "^2.1.1" - -opencollective-postinstall@^2.0.2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz#7a0fff978f6dbfa4d006238fbac98ed4198c3259" - integrity sha512-8AV/sCtuzUeTo8gQK5qDZzARrulB3egtLzFgteqB2tcT4Mw7B8Kt7JcDHmltjz6FOAHsvTevk70gZEbhM4ZS9Q== - -opencollective@1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/opencollective/-/opencollective-1.0.3.tgz#aee6372bc28144583690c3ca8daecfc120dd0ef1" - integrity sha1-ruY3K8KBRFg2kMPKja7PwSDdDvE= - dependencies: - babel-polyfill "6.23.0" - chalk "1.1.3" - inquirer "3.0.6" - minimist "1.2.0" - node-fetch "1.6.3" - opn "4.0.2" - -opn@4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/opn/-/opn-4.0.2.tgz#7abc22e644dff63b0a96d5ab7f2790c0f01abc95" - integrity sha1-erwi5kTf9jsKltWrfyeQwPAavJU= - dependencies: - object-assign "^4.0.1" - pinkie-promise "^2.0.0" - -opn@^5.5.0: - version "5.5.0" - resolved "https://registry.yarnpkg.com/opn/-/opn-5.5.0.tgz#fc7164fab56d235904c51c3b27da6758ca3b9bfc" - integrity sha512-PqHpggC9bLV0VeWcdKhkpxY+3JTzetLSqTCWL/z/tFIbI6G8JCjondXklT1JinczLz2Xib62sSp0T/gKT4KksA== - dependencies: - is-wsl "^1.1.0" - -optimism@^0.12.1: - version "0.12.1" - resolved "https://registry.yarnpkg.com/optimism/-/optimism-0.12.1.tgz#933f9467b9aef0e601655adb9638f893e486ad02" - integrity sha512-t8I7HM1dw0SECitBYAqFOVHoBAHEQBTeKjIL9y9ImHzAVkdyPK4ifTgM4VJRDtTUY4r/u5Eqxs4XcGPHaoPkeQ== - dependencies: - "@wry/context" "^0.5.2" - -optimize-css-assets-webpack-plugin@5.0.3: - version "5.0.3" - resolved "https://registry.yarnpkg.com/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-5.0.3.tgz#e2f1d4d94ad8c0af8967ebd7cf138dcb1ef14572" - integrity sha512-q9fbvCRS6EYtUKKSwI87qm2IxlyJK5b4dygW1rKUBT6mMDhdG5e5bZT63v6tnJR9F9FB/H5a0HTmtw+laUBxKA== - dependencies: - cssnano "^4.1.10" - last-call-webpack-plugin "^3.0.0" - -optionator@^0.8.1, optionator@^0.8.3: - version "0.8.3" - resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" - integrity sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA== - dependencies: - deep-is "~0.1.3" - fast-levenshtein "~2.0.6" - levn "~0.3.0" - prelude-ls "~1.1.2" - type-check "~0.3.2" - word-wrap "~1.2.3" - -optionator@^0.9.1: - version "0.9.1" - resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499" - integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== - dependencies: - deep-is "^0.1.3" - fast-levenshtein "^2.0.6" - levn "^0.4.1" - prelude-ls "^1.2.1" - type-check "^0.4.0" - word-wrap "^1.2.3" - -original@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/original/-/original-1.0.2.tgz#e442a61cffe1c5fd20a65f3261c26663b303f25f" - integrity sha512-hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg== - dependencies: - url-parse "^1.4.3" - -os-browserify@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27" - integrity sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc= - -os-homedir@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" - integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= - -os-locale@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-3.1.0.tgz#a802a6ee17f24c10483ab9935719cef4ed16bf1a" - integrity sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q== - dependencies: - execa "^1.0.0" - lcid "^2.0.0" - mem "^4.0.0" - -os-name@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/os-name/-/os-name-3.1.0.tgz#dec19d966296e1cd62d701a5a66ee1ddeae70801" - integrity sha512-h8L+8aNjNcMpo/mAIBPn5PXCM16iyPGjHNWo6U1YO8sJTMHtEtyczI6QJnLoplswm6goopQkqc7OAnjhWcugVg== - dependencies: - macos-release "^2.2.0" - windows-release "^3.1.0" - -os-tmpdir@^1.0.0, os-tmpdir@~1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" - integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= - -osenv@^0.1.4, osenv@^0.1.5: - version "0.1.5" - resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" - integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g== - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.0" - -p-cancelable@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-1.1.0.tgz#d078d15a3af409220c886f1d9a0ca2e441ab26cc" - integrity sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw== - -p-defer@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c" - integrity sha1-n26xgvbJqozXQwBKfU+WsZaw+ww= - -p-each-series@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-each-series/-/p-each-series-1.0.0.tgz#930f3d12dd1f50e7434457a22cd6f04ac6ad7f71" - integrity sha1-kw89Et0fUOdDRFeiLNbwSsatf3E= - dependencies: - p-reduce "^1.0.0" - -p-each-series@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/p-each-series/-/p-each-series-2.1.0.tgz#961c8dd3f195ea96c747e636b262b800a6b1af48" - integrity sha512-ZuRs1miPT4HrjFa+9fRfOFXxGJfORgelKV9f9nNOWw2gl6gVsRaVDOQP0+MI0G0wGKns1Yacsu0GjOFbTK0JFQ== - -p-finally@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" - integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= - -p-is-promise@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-2.1.0.tgz#918cebaea248a62cf7ffab8e3bca8c5f882fc42e" - integrity sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg== - -p-limit@3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.0.1.tgz#584784ac0722d1aed09f19f90ed2999af6ce2839" - integrity sha512-mw/p92EyOzl2MhauKodw54Rx5ZK4624rNfgNaBguFZkHzyUG9WsDzFF5/yQVEJinbJDdP4jEfMN+uBquiGnaLg== - dependencies: - p-try "^2.0.0" - -p-limit@^1.1.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" - integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q== - dependencies: - p-try "^1.0.0" - -p-limit@^2.0.0, p-limit@^2.2.0, p-limit@^2.2.2: - version "2.3.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" - integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== - dependencies: - p-try "^2.0.0" - -p-locate@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" - integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM= - dependencies: - p-limit "^1.1.0" - -p-locate@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" - integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== - dependencies: - p-limit "^2.0.0" - -p-locate@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" - integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== - dependencies: - p-limit "^2.2.0" - -p-map-series@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-map-series/-/p-map-series-1.0.0.tgz#bf98fe575705658a9e1351befb85ae4c1f07bdca" - integrity sha1-v5j+V1cFZYqeE1G++4WuTB8Hvco= - dependencies: - p-reduce "^1.0.0" - -p-map@^2.0.0, p-map@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-2.1.0.tgz#310928feef9c9ecc65b68b17693018a665cea175" - integrity sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw== - -p-map@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-3.0.0.tgz#d704d9af8a2ba684e2600d9a215983d4141a979d" - integrity sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ== - dependencies: - aggregate-error "^3.0.0" - -p-map@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" - integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== - dependencies: - aggregate-error "^3.0.0" - -p-pipe@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/p-pipe/-/p-pipe-1.2.0.tgz#4b1a11399a11520a67790ee5a0c1d5881d6befe9" - integrity sha1-SxoROZoRUgpneQ7loMHViB1r7+k= - -p-queue@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/p-queue/-/p-queue-4.0.0.tgz#ed0eee8798927ed6f2c2f5f5b77fdb2061a5d346" - integrity sha512-3cRXXn3/O0o3+eVmUroJPSj/esxoEFIm0ZOno/T+NzG/VZgPOqQ8WKmlNqubSEpZmCIngEy34unkHGg83ZIBmg== - dependencies: - eventemitter3 "^3.1.0" - -p-reduce@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-reduce/-/p-reduce-1.0.0.tgz#18c2b0dd936a4690a529f8231f58a0fdb6a47dfa" - integrity sha1-GMKw3ZNqRpClKfgjH1ig/bakffo= - -p-retry@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/p-retry/-/p-retry-3.0.1.tgz#316b4c8893e2c8dc1cfa891f406c4b422bebf328" - integrity sha512-XE6G4+YTTkT2a0UWb2kjZe8xNwf8bIbnqpc/IS/idOBVhyves0mK5OJgeocjx7q5pvX/6m23xuzVPYT1uGM73w== - dependencies: - retry "^0.12.0" - -p-try@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" - integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M= - -p-try@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" - integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== - -p-waterfall@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-waterfall/-/p-waterfall-1.0.0.tgz#7ed94b3ceb3332782353af6aae11aa9fc235bb00" - integrity sha1-ftlLPOszMngjU69qrhGqn8I1uwA= - dependencies: - p-reduce "^1.0.0" - -package-json@^6.3.0: - version "6.5.0" - resolved "https://registry.yarnpkg.com/package-json/-/package-json-6.5.0.tgz#6feedaca35e75725876d0b0e64974697fed145b0" - integrity sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ== - dependencies: - got "^9.6.0" - registry-auth-token "^4.0.0" - registry-url "^5.0.0" - semver "^6.2.0" - -packet-reader@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/packet-reader/-/packet-reader-1.0.0.tgz#9238e5480dedabacfe1fe3f2771063f164157d74" - integrity sha512-HAKu/fG3HpHFO0AA8WE8q2g+gBJaZ9MG7fcKk+IJPLTGAD6Psw4443l+9DGRbOIh3/aXr7Phy0TjilYivJo5XQ== - -pako@~1.0.5: - version "1.0.11" - resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf" - integrity sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw== - -parallel-transform@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/parallel-transform/-/parallel-transform-1.2.0.tgz#9049ca37d6cb2182c3b1d2c720be94d14a5814fc" - integrity sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg== - dependencies: - cyclist "^1.0.1" - inherits "^2.0.3" - readable-stream "^2.1.5" - -param-case@3.0.3, param-case@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/param-case/-/param-case-3.0.3.tgz#4be41f8399eff621c56eebb829a5e451d9801238" - integrity sha512-VWBVyimc1+QrzappRs7waeN2YmoZFCGXWASRYX1/rGHtXqEcrGEIDm+jqIwFa2fRXNgQEwrxaYuIrX0WcAguTA== - dependencies: - dot-case "^3.0.3" - tslib "^1.10.0" - -parent-module@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" - integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== - dependencies: - callsites "^3.0.0" - -parent-require@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/parent-require/-/parent-require-1.0.0.tgz#746a167638083a860b0eef6732cb27ed46c32977" - integrity sha1-dGoWdjgIOoYLDu9nMssn7UbDKXc= - -parse-asn1@^5.0.0, parse-asn1@^5.1.5: - version "5.1.5" - resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.5.tgz#003271343da58dc94cace494faef3d2147ecea0e" - integrity sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ== - dependencies: - asn1.js "^4.0.0" - browserify-aes "^1.0.0" - create-hash "^1.1.0" - evp_bytestokey "^1.0.0" - pbkdf2 "^3.0.3" - safe-buffer "^5.1.1" - -parse-filepath@1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/parse-filepath/-/parse-filepath-1.0.2.tgz#a632127f53aaf3d15876f5872f3ffac763d6c891" - integrity sha1-pjISf1Oq89FYdvWHLz/6x2PWyJE= - dependencies: - is-absolute "^1.0.0" - map-cache "^0.2.0" - path-root "^0.1.1" - -parse-github-repo-url@^1.3.0: - version "1.4.1" - resolved "https://registry.yarnpkg.com/parse-github-repo-url/-/parse-github-repo-url-1.4.1.tgz#9e7d8bb252a6cb6ba42595060b7bf6df3dbc1f50" - integrity sha1-nn2LslKmy2ukJZUGC3v23z28H1A= - -parse-json@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" - integrity sha1-9ID0BDTvgHQfhGkJn43qGPVaTck= - dependencies: - error-ex "^1.2.0" - -parse-json@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" - integrity sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA= - dependencies: - error-ex "^1.3.1" - json-parse-better-errors "^1.0.1" - -parse-json@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.0.0.tgz#73e5114c986d143efa3712d4ea24db9a4266f60f" - integrity sha512-OOY5b7PAEFV0E2Fir1KOkxchnZNCdowAJgQ5NuxjpBKTRP3pQhwkrkxqQjeoKJ+fO7bCpmIZaogI4eZGDMEGOw== - dependencies: - "@babel/code-frame" "^7.0.0" - error-ex "^1.3.1" - json-parse-better-errors "^1.0.1" - lines-and-columns "^1.1.6" - -parse-path@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/parse-path/-/parse-path-4.0.1.tgz#0ec769704949778cb3b8eda5e994c32073a1adff" - integrity sha512-d7yhga0Oc+PwNXDvQ0Jv1BuWkLVPXcAoQ/WREgd6vNNoKYaW52KI+RdOFjI63wjkmps9yUE8VS4veP+AgpQ/hA== - dependencies: - is-ssh "^1.3.0" - protocols "^1.4.0" - -parse-url@^5.0.0: - version "5.0.1" - resolved "https://registry.yarnpkg.com/parse-url/-/parse-url-5.0.1.tgz#99c4084fc11be14141efa41b3d117a96fcb9527f" - integrity sha512-flNUPP27r3vJpROi0/R3/2efgKkyXqnXwyP1KQ2U0SfFRgdizOdWfvrrvJg1LuOoxs7GQhmxJlq23IpQ/BkByg== - dependencies: - is-ssh "^1.3.0" - normalize-url "^3.3.0" - parse-path "^4.0.0" - protocols "^1.4.0" - -parse5-htmlparser2-tree-adapter@^5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-5.1.1.tgz#e8c743d4e92194d5293ecde2b08be31e67461cbc" - integrity sha512-CF+TKjXqoqyDwHqBhFQ+3l5t83xYi6fVT1tQNg+Ye0JRLnTxWvIroCjEp1A0k4lneHNBGnICUf0cfYVYGEazqw== - dependencies: - parse5 "^5.1.1" - -parse5@4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/parse5/-/parse5-4.0.0.tgz#6d78656e3da8d78b4ec0b906f7c08ef1dfe3f608" - integrity sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA== - -parse5@5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/parse5/-/parse5-5.1.0.tgz#c59341c9723f414c452975564c7c00a68d58acd2" - integrity sha512-fxNG2sQjHvlVAYmzBZS9YlDp6PTSSDwa98vkD4QgVDDCAo84z5X1t5XyJQ62ImdLXx5NdIIfihey6xpum9/gRQ== - -parse5@5.1.1, parse5@^5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/parse5/-/parse5-5.1.1.tgz#f68e4e5ba1852ac2cadc00f4555fff6c2abb6178" - integrity sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug== - -parseurl@^1.3.2, parseurl@~1.3.2, parseurl@~1.3.3: - version "1.3.3" - resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" - integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== - -pascal-case@3.1.1, pascal-case@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-3.1.1.tgz#5ac1975133ed619281e88920973d2cd1f279de5f" - integrity sha512-XIeHKqIrsquVTQL2crjq3NfJUxmdLasn3TYOU0VBM+UX2a6ztAWBlJQBePLGY7VHW8+2dRadeIPK5+KImwTxQA== - dependencies: - no-case "^3.0.3" - tslib "^1.10.0" - -pascalcase@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" - integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ= - -path-browserify@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.1.tgz#e6c4ddd7ed3aa27c68a20cc4e50e1a4ee83bbc4a" - integrity sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ== - -path-case@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/path-case/-/path-case-3.0.3.tgz#d48119aed52c4712e036ca40c6b15984f909554f" - integrity sha512-UMFU6UETFpCNWbIWNczshPrnK/7JAXBP2NYw80ojElbQ2+JYxdqWDBkvvqM93u4u6oLmuJ/tPOf2tM8KtXv4eg== - dependencies: - dot-case "^3.0.3" - tslib "^1.10.0" - -path-dirname@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" - integrity sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA= - -path-exists@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" - integrity sha1-D+tsZPD8UY2adU3V77YscCJ2H0s= - dependencies: - pinkie-promise "^2.0.0" - -path-exists@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" - integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= - -path-exists@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" - integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== - -path-is-absolute@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" - integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= - -path-is-inside@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" - integrity sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM= - -path-key@^2.0.0, path-key@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" - integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= - -path-key@^3.0.0, path-key@^3.1.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" - integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== - -path-parse@^1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" - integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw== - -path-root-regex@^0.1.0: - version "0.1.2" - resolved "https://registry.yarnpkg.com/path-root-regex/-/path-root-regex-0.1.2.tgz#bfccdc8df5b12dc52c8b43ec38d18d72c04ba96d" - integrity sha1-v8zcjfWxLcUsi0PsONGNcsBLqW0= - -path-root@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/path-root/-/path-root-0.1.1.tgz#9a4a6814cac1c0cd73360a95f32083c8ea4745b7" - integrity sha1-mkpoFMrBwM1zNgqV8yCDyOpHRbc= - dependencies: - path-root-regex "^0.1.0" - -path-to-regexp@0.1.7: - version "0.1.7" - resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" - integrity sha1-32BBeABfUi8V60SQ5yR6G/qmf4w= - -path-to-regexp@^1.7.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-1.8.0.tgz#887b3ba9d84393e87a0a0b9f4cb756198b53548a" - integrity sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA== - dependencies: - isarray "0.0.1" - -path-type@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" - integrity sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE= - dependencies: - graceful-fs "^4.1.2" - pify "^2.0.0" - pinkie-promise "^2.0.0" - -path-type@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73" - integrity sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM= - dependencies: - pify "^2.0.0" - -path-type@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" - integrity sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg== - dependencies: - pify "^3.0.0" - -path-type@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" - integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== - -pbkdf2@^3.0.3: - version "3.1.1" - resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.1.tgz#cb8724b0fada984596856d1a6ebafd3584654b94" - integrity sha512-4Ejy1OPxi9f2tt1rRV7Go7zmfDQ+ZectEQz3VGUQhgq62HtIRPDyG/JtnwIxs6x3uNMwo2V7q1fMvKjb+Tnpqg== - dependencies: - create-hash "^1.1.2" - create-hmac "^1.1.4" - ripemd160 "^2.0.1" - safe-buffer "^5.0.1" - sha.js "^2.4.8" - -performance-now@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" - integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= - -pg-connection-string@^2.2.2: - version "2.2.3" - resolved "https://registry.yarnpkg.com/pg-connection-string/-/pg-connection-string-2.2.3.tgz#48e1158ec37eaa82e98dbcb7307103ec303fe0e7" - integrity sha512-I/KCSQGmOrZx6sMHXkOs2MjddrYcqpza3Dtsy0AjIgBr/bZiPJRK9WhABXN1Uy1UDazRbi9gZEzO2sAhL5EqiQ== - -pg-int8@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/pg-int8/-/pg-int8-1.0.1.tgz#943bd463bf5b71b4170115f80f8efc9a0c0eb78c" - integrity sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw== - -pg-pool@^3.2.0: - version "3.2.1" - resolved "https://registry.yarnpkg.com/pg-pool/-/pg-pool-3.2.1.tgz#5f4afc0f58063659aeefa952d36af49fa28b30e0" - integrity sha512-BQDPWUeKenVrMMDN9opfns/kZo4lxmSWhIqo+cSAF7+lfi9ZclQbr9vfnlNaPr8wYF3UYjm5X0yPAhbcgqNOdA== - -pg-protocol@^1.2.2: - version "1.2.4" - resolved "https://registry.yarnpkg.com/pg-protocol/-/pg-protocol-1.2.4.tgz#3139cac0e51347f1e21e03954b1bb9fe2c20962e" - integrity sha512-/8L/G+vW/VhWjTGXpGh8XVkXOFx1ZDY+Yuz//Ab8CfjInzFkreI+fDG3WjCeSra7fIZwAFxzbGptNbm8xSXenw== - -pg-types@^2.1.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/pg-types/-/pg-types-2.2.0.tgz#2d0250d636454f7cfa3b6ae0382fdfa8063254a3" - integrity sha512-qTAAlrEsl8s4OiEQY69wDvcMIdQN6wdz5ojQiOy6YRMuynxenON0O5oCpJI6lshc6scgAY8qvJ2On/p+CXY0GA== - dependencies: - pg-int8 "1.0.1" - postgres-array "~2.0.0" - postgres-bytea "~1.0.0" - postgres-date "~1.0.4" - postgres-interval "^1.1.0" - -pg@8.1.0: - version "8.1.0" - resolved "https://registry.yarnpkg.com/pg/-/pg-8.1.0.tgz#e5ac5ac2b77bad438130d93982cb60485d5c1a8c" - integrity sha512-Jp+XSNTGYDztc2FgIbmBXeeYMR7kKjfgnl3R+ioO6rkcxDmaea+YPp/gaxe13PBnJAFYyEGl0ixpwPm2gb6eUw== - dependencies: - buffer-writer "2.0.0" - packet-reader "1.0.0" - pg-connection-string "^2.2.2" - pg-pool "^3.2.0" - pg-protocol "^1.2.2" - pg-types "^2.1.0" - pgpass "1.x" - semver "4.3.2" - -pgpass@1.x: - version "1.0.2" - resolved "https://registry.yarnpkg.com/pgpass/-/pgpass-1.0.2.tgz#2a7bb41b6065b67907e91da1b07c1847c877b306" - integrity sha1-Knu0G2BltnkH6R2hsHwYR8h3swY= - dependencies: - split "^1.0.0" - -picomatch@^2.0.4, picomatch@^2.0.5, picomatch@^2.2.1: - version "2.2.2" - resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.2.tgz#21f333e9b6b8eaff02468f5146ea406d345f4dad" - integrity sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg== - -pify@^2.0.0, pify@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" - integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw= - -pify@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" - integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= - -pify@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" - integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== - -pinkie-promise@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" - integrity sha1-ITXW36ejWMBprJsXh3YogihFD/o= - dependencies: - pinkie "^2.0.0" - -pinkie@^2.0.0: - version "2.0.4" - resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" - integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA= - -pirates@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.1.tgz#643a92caf894566f91b2b986d2c66950a8e2fb87" - integrity sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA== - dependencies: - node-modules-regexp "^1.0.0" - -pkg-dir@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-1.0.0.tgz#7a4b508a8d5bb2d629d447056ff4e9c9314cf3d4" - integrity sha1-ektQio1bstYp1EcFb/TpyTFM89Q= - dependencies: - find-up "^1.0.0" - -pkg-dir@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b" - integrity sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s= - dependencies: - find-up "^2.1.0" - -pkg-dir@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3" - integrity sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw== - dependencies: - find-up "^3.0.0" - -pkg-dir@^4.1.0, pkg-dir@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" - integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== - dependencies: - find-up "^4.0.0" - -pkg-up@3.1.0, pkg-up@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-3.1.0.tgz#100ec235cc150e4fd42519412596a28512a0def5" - integrity sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA== - dependencies: - find-up "^3.0.0" - -pkg-up@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-2.0.0.tgz#c819ac728059a461cab1c3889a2be3c49a004d7f" - integrity sha1-yBmscoBZpGHKscOImivjxJoATX8= - dependencies: - find-up "^2.1.0" - -please-upgrade-node@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz#aeddd3f994c933e4ad98b99d9a556efa0e2fe942" - integrity sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg== - dependencies: - semver-compare "^1.0.0" - -pn@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/pn/-/pn-1.1.0.tgz#e2f4cef0e219f463c179ab37463e4e1ecdccbafb" - integrity sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA== - -pnp-webpack-plugin@1.6.4: - version "1.6.4" - resolved "https://registry.yarnpkg.com/pnp-webpack-plugin/-/pnp-webpack-plugin-1.6.4.tgz#c9711ac4dc48a685dabafc86f8b6dd9f8df84149" - integrity sha512-7Wjy+9E3WwLOEL30D+m8TSTF7qJJUJLONBnwQp0518siuMxUQUbgZwssaFX+QKlZkjHZcw/IpZCt/H0srrntSg== - dependencies: - ts-pnp "^1.1.6" - -popper.js@1.16.1-lts: - version "1.16.1-lts" - resolved "https://registry.yarnpkg.com/popper.js/-/popper.js-1.16.1-lts.tgz#cf6847b807da3799d80ee3d6d2f90df8a3f50b05" - integrity sha512-Kjw8nKRl1m+VrSFCoVGPph93W/qrSO7ZkqPpTf7F4bk/sqcfWK019dWBUpE/fBOsOQY1dks/Bmcbfn1heM/IsA== - -popper.js@^1.16.1-lts: - version "1.16.1" - resolved "https://registry.yarnpkg.com/popper.js/-/popper.js-1.16.1.tgz#2a223cb3dc7b6213d740e40372be40de43e65b1b" - integrity sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ== - -portfinder@^1.0.25: - version "1.0.26" - resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.26.tgz#475658d56ca30bed72ac7f1378ed350bd1b64e70" - integrity sha512-Xi7mKxJHHMI3rIUrnm/jjUgwhbYMkp/XKEcZX3aG4BrumLpq3nmoQMX+ClYnDZnZ/New7IatC1no5RX0zo1vXQ== - dependencies: - async "^2.6.2" - debug "^3.1.1" - mkdirp "^0.5.1" - -posix-character-classes@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" - integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= - -postcss-attribute-case-insensitive@^4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-4.0.2.tgz#d93e46b504589e94ac7277b0463226c68041a880" - integrity sha512-clkFxk/9pcdb4Vkn0hAHq3YnxBQ2p0CGD1dy24jN+reBck+EWxMbxSUqN4Yj7t0w8csl87K6p0gxBe1utkJsYA== - dependencies: - postcss "^7.0.2" - postcss-selector-parser "^6.0.2" - -postcss-browser-comments@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-browser-comments/-/postcss-browser-comments-3.0.0.tgz#1248d2d935fb72053c8e1f61a84a57292d9f65e9" - integrity sha512-qfVjLfq7HFd2e0HW4s1dvU8X080OZdG46fFbIBFjW7US7YPDcWfRvdElvwMJr2LI6hMmD+7LnH2HcmXTs+uOig== - dependencies: - postcss "^7" - -postcss-calc@^7.0.1: - version "7.0.2" - resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-7.0.2.tgz#504efcd008ca0273120568b0792b16cdcde8aac1" - integrity sha512-rofZFHUg6ZIrvRwPeFktv06GdbDYLcGqh9EwiMutZg+a0oePCCw1zHOEiji6LCpyRcjTREtPASuUqeAvYlEVvQ== - dependencies: - postcss "^7.0.27" - postcss-selector-parser "^6.0.2" - postcss-value-parser "^4.0.2" - -postcss-color-functional-notation@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/postcss-color-functional-notation/-/postcss-color-functional-notation-2.0.1.tgz#5efd37a88fbabeb00a2966d1e53d98ced93f74e0" - integrity sha512-ZBARCypjEDofW4P6IdPVTLhDNXPRn8T2s1zHbZidW6rPaaZvcnCS2soYFIQJrMZSxiePJ2XIYTlcb2ztr/eT2g== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-color-gray@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/postcss-color-gray/-/postcss-color-gray-5.0.0.tgz#532a31eb909f8da898ceffe296fdc1f864be8547" - integrity sha512-q6BuRnAGKM/ZRpfDascZlIZPjvwsRye7UDNalqVz3s7GDxMtqPY6+Q871liNxsonUw8oC61OG+PSaysYpl1bnw== - dependencies: - "@csstools/convert-colors" "^1.4.0" - postcss "^7.0.5" - postcss-values-parser "^2.0.0" - -postcss-color-hex-alpha@^5.0.3: - version "5.0.3" - resolved "https://registry.yarnpkg.com/postcss-color-hex-alpha/-/postcss-color-hex-alpha-5.0.3.tgz#a8d9ca4c39d497c9661e374b9c51899ef0f87388" - integrity sha512-PF4GDel8q3kkreVXKLAGNpHKilXsZ6xuu+mOQMHWHLPNyjiUBOr75sp5ZKJfmv1MCus5/DWUGcK9hm6qHEnXYw== - dependencies: - postcss "^7.0.14" - postcss-values-parser "^2.0.1" - -postcss-color-mod-function@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/postcss-color-mod-function/-/postcss-color-mod-function-3.0.3.tgz#816ba145ac11cc3cb6baa905a75a49f903e4d31d" - integrity sha512-YP4VG+xufxaVtzV6ZmhEtc+/aTXH3d0JLpnYfxqTvwZPbJhWqp8bSY3nfNzNRFLgB4XSaBA82OE4VjOOKpCdVQ== - dependencies: - "@csstools/convert-colors" "^1.4.0" - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-color-rebeccapurple@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-4.0.1.tgz#c7a89be872bb74e45b1e3022bfe5748823e6de77" - integrity sha512-aAe3OhkS6qJXBbqzvZth2Au4V3KieR5sRQ4ptb2b2O8wgvB3SJBsdG+jsn2BZbbwekDG8nTfcCNKcSfe/lEy8g== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-colormin@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-4.0.3.tgz#ae060bce93ed794ac71264f08132d550956bd381" - integrity sha512-WyQFAdDZpExQh32j0U0feWisZ0dmOtPl44qYmJKkq9xFWY3p+4qnRzCHeNrkeRhwPHz9bQ3mo0/yVkaply0MNw== - dependencies: - browserslist "^4.0.0" - color "^3.0.0" - has "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-convert-values@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-4.0.1.tgz#ca3813ed4da0f812f9d43703584e449ebe189a7f" - integrity sha512-Kisdo1y77KUC0Jmn0OXU/COOJbzM8cImvw1ZFsBgBgMgb1iL23Zs/LXRe3r+EZqM3vGYKdQ2YJVQ5VkJI+zEJQ== - dependencies: - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-custom-media@^7.0.8: - version "7.0.8" - resolved "https://registry.yarnpkg.com/postcss-custom-media/-/postcss-custom-media-7.0.8.tgz#fffd13ffeffad73621be5f387076a28b00294e0c" - integrity sha512-c9s5iX0Ge15o00HKbuRuTqNndsJUbaXdiNsksnVH8H4gdc+zbLzr/UasOwNG6CTDpLFekVY4672eWdiiWu2GUg== - dependencies: - postcss "^7.0.14" - -postcss-custom-properties@^8.0.11: - version "8.0.11" - resolved "https://registry.yarnpkg.com/postcss-custom-properties/-/postcss-custom-properties-8.0.11.tgz#2d61772d6e92f22f5e0d52602df8fae46fa30d97" - integrity sha512-nm+o0eLdYqdnJ5abAJeXp4CEU1c1k+eB2yMCvhgzsds/e0umabFrN6HoTy/8Q4K5ilxERdl/JD1LO5ANoYBeMA== - dependencies: - postcss "^7.0.17" - postcss-values-parser "^2.0.1" - -postcss-custom-selectors@^5.1.2: - version "5.1.2" - resolved "https://registry.yarnpkg.com/postcss-custom-selectors/-/postcss-custom-selectors-5.1.2.tgz#64858c6eb2ecff2fb41d0b28c9dd7b3db4de7fba" - integrity sha512-DSGDhqinCqXqlS4R7KGxL1OSycd1lydugJ1ky4iRXPHdBRiozyMHrdu0H3o7qNOCiZwySZTUI5MV0T8QhCLu+w== - dependencies: - postcss "^7.0.2" - postcss-selector-parser "^5.0.0-rc.3" - -postcss-dir-pseudo-class@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-5.0.0.tgz#6e3a4177d0edb3abcc85fdb6fbb1c26dabaeaba2" - integrity sha512-3pm4oq8HYWMZePJY+5ANriPs3P07q+LW6FAdTlkFH2XqDdP4HeeJYMOzn0HYLhRSjBO3fhiqSwwU9xEULSrPgw== - dependencies: - postcss "^7.0.2" - postcss-selector-parser "^5.0.0-rc.3" - -postcss-discard-comments@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-4.0.2.tgz#1fbabd2c246bff6aaad7997b2b0918f4d7af4033" - integrity sha512-RJutN259iuRf3IW7GZyLM5Sw4GLTOH8FmsXBnv8Ab/Tc2k4SR4qbV4DNbyyY4+Sjo362SyDmW2DQ7lBSChrpkg== - dependencies: - postcss "^7.0.0" - -postcss-discard-duplicates@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-4.0.2.tgz#3fe133cd3c82282e550fc9b239176a9207b784eb" - integrity sha512-ZNQfR1gPNAiXZhgENFfEglF93pciw0WxMkJeVmw8eF+JZBbMD7jp6C67GqJAXVZP2BWbOztKfbsdmMp/k8c6oQ== - dependencies: - postcss "^7.0.0" - -postcss-discard-empty@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-4.0.1.tgz#c8c951e9f73ed9428019458444a02ad90bb9f765" - integrity sha512-B9miTzbznhDjTfjvipfHoqbWKwd0Mj+/fL5s1QOz06wufguil+Xheo4XpOnc4NqKYBCNqqEzgPv2aPBIJLox0w== - dependencies: - postcss "^7.0.0" - -postcss-discard-overridden@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-4.0.1.tgz#652aef8a96726f029f5e3e00146ee7a4e755ff57" - integrity sha512-IYY2bEDD7g1XM1IDEsUT4//iEYCxAmP5oDSFMVU/JVvT7gh+l4fmjciLqGgwjdWpQIdb0Che2VX00QObS5+cTg== - dependencies: - postcss "^7.0.0" - -postcss-double-position-gradients@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/postcss-double-position-gradients/-/postcss-double-position-gradients-1.0.0.tgz#fc927d52fddc896cb3a2812ebc5df147e110522e" - integrity sha512-G+nV8EnQq25fOI8CH/B6krEohGWnF5+3A6H/+JEpOncu5dCnkS1QQ6+ct3Jkaepw1NGVqqOZH6lqrm244mCftA== - dependencies: - postcss "^7.0.5" - postcss-values-parser "^2.0.0" - -postcss-env-function@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/postcss-env-function/-/postcss-env-function-2.0.2.tgz#0f3e3d3c57f094a92c2baf4b6241f0b0da5365d7" - integrity sha512-rwac4BuZlITeUbiBq60h/xbLzXY43qOsIErngWa4l7Mt+RaSkT7QBjXVGTcBHupykkblHMDrBFh30zchYPaOUw== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-flexbugs-fixes@4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/postcss-flexbugs-fixes/-/postcss-flexbugs-fixes-4.1.0.tgz#e094a9df1783e2200b7b19f875dcad3b3aff8b20" - integrity sha512-jr1LHxQvStNNAHlgco6PzY308zvLklh7SJVYuWUwyUQncofaAlD2l+P/gxKHOdqWKe7xJSkVLFF/2Tp+JqMSZA== - dependencies: - postcss "^7.0.0" - -postcss-focus-visible@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-focus-visible/-/postcss-focus-visible-4.0.0.tgz#477d107113ade6024b14128317ade2bd1e17046e" - integrity sha512-Z5CkWBw0+idJHSV6+Bgf2peDOFf/x4o+vX/pwcNYrWpXFrSfTkQ3JQ1ojrq9yS+upnAlNRHeg8uEwFTgorjI8g== - dependencies: - postcss "^7.0.2" - -postcss-focus-within@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-focus-within/-/postcss-focus-within-3.0.0.tgz#763b8788596cee9b874c999201cdde80659ef680" - integrity sha512-W0APui8jQeBKbCGZudW37EeMCjDeVxKgiYfIIEo8Bdh5SpB9sxds/Iq8SEuzS0Q4YFOlG7EPFulbbxujpkrV2w== - dependencies: - postcss "^7.0.2" - -postcss-font-variant@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-font-variant/-/postcss-font-variant-4.0.0.tgz#71dd3c6c10a0d846c5eda07803439617bbbabacc" - integrity sha512-M8BFYKOvCrI2aITzDad7kWuXXTm0YhGdP9Q8HanmN4EF1Hmcgs1KK5rSHylt/lUJe8yLxiSwWAHdScoEiIxztg== - dependencies: - postcss "^7.0.2" - -postcss-gap-properties@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-gap-properties/-/postcss-gap-properties-2.0.0.tgz#431c192ab3ed96a3c3d09f2ff615960f902c1715" - integrity sha512-QZSqDaMgXCHuHTEzMsS2KfVDOq7ZFiknSpkrPJY6jmxbugUPTuSzs/vuE5I3zv0WAS+3vhrlqhijiprnuQfzmg== - dependencies: - postcss "^7.0.2" - -postcss-image-set-function@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/postcss-image-set-function/-/postcss-image-set-function-3.0.1.tgz#28920a2f29945bed4c3198d7df6496d410d3f288" - integrity sha512-oPTcFFip5LZy8Y/whto91L9xdRHCWEMs3e1MdJxhgt4jy2WYXfhkng59fH5qLXSCPN8k4n94p1Czrfe5IOkKUw== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-initial@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/postcss-initial/-/postcss-initial-3.0.2.tgz#f018563694b3c16ae8eaabe3c585ac6319637b2d" - integrity sha512-ugA2wKonC0xeNHgirR4D3VWHs2JcU08WAi1KFLVcnb7IN89phID6Qtg2RIctWbnvp1TM2BOmDtX8GGLCKdR8YA== - dependencies: - lodash.template "^4.5.0" - postcss "^7.0.2" - -postcss-lab-function@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/postcss-lab-function/-/postcss-lab-function-2.0.1.tgz#bb51a6856cd12289ab4ae20db1e3821ef13d7d2e" - integrity sha512-whLy1IeZKY+3fYdqQFuDBf8Auw+qFuVnChWjmxm/UhHWqNHZx+B99EwxTvGYmUBqe3Fjxs4L1BoZTJmPu6usVg== - dependencies: - "@csstools/convert-colors" "^1.4.0" - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-load-config@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-2.1.0.tgz#c84d692b7bb7b41ddced94ee62e8ab31b417b003" - integrity sha512-4pV3JJVPLd5+RueiVVB+gFOAa7GWc25XQcMp86Zexzke69mKf6Nx9LRcQywdz7yZI9n1udOxmLuAwTBypypF8Q== - dependencies: - cosmiconfig "^5.0.0" - import-cwd "^2.0.0" - -postcss-loader@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-3.0.0.tgz#6b97943e47c72d845fa9e03f273773d4e8dd6c2d" - integrity sha512-cLWoDEY5OwHcAjDnkyRQzAXfs2jrKjXpO/HQFcc5b5u/r7aa471wdmChmwfnv7x2u840iat/wi0lQ5nbRgSkUA== - dependencies: - loader-utils "^1.1.0" - postcss "^7.0.0" - postcss-load-config "^2.0.0" - schema-utils "^1.0.0" - -postcss-logical@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-logical/-/postcss-logical-3.0.0.tgz#2495d0f8b82e9f262725f75f9401b34e7b45d5b5" - integrity sha512-1SUKdJc2vuMOmeItqGuNaC+N8MzBWFWEkAnRnLpFYj1tGGa7NqyVBujfRtgNa2gXR+6RkGUiB2O5Vmh7E2RmiA== - dependencies: - postcss "^7.0.2" - -postcss-media-minmax@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-media-minmax/-/postcss-media-minmax-4.0.0.tgz#b75bb6cbc217c8ac49433e12f22048814a4f5ed5" - integrity sha512-fo9moya6qyxsjbFAYl97qKO9gyre3qvbMnkOZeZwlsW6XYFsvs2DMGDlchVLfAd8LHPZDxivu/+qW2SMQeTHBw== - dependencies: - postcss "^7.0.2" - -postcss-merge-longhand@^4.0.11: - version "4.0.11" - resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-4.0.11.tgz#62f49a13e4a0ee04e7b98f42bb16062ca2549e24" - integrity sha512-alx/zmoeXvJjp7L4mxEMjh8lxVlDFX1gqWHzaaQewwMZiVhLo42TEClKaeHbRf6J7j82ZOdTJ808RtN0ZOZwvw== - dependencies: - css-color-names "0.0.4" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - stylehacks "^4.0.0" - -postcss-merge-rules@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-4.0.3.tgz#362bea4ff5a1f98e4075a713c6cb25aefef9a650" - integrity sha512-U7e3r1SbvYzO0Jr3UT/zKBVgYYyhAz0aitvGIYOYK5CPmkNih+WDSsS5tvPrJ8YMQYlEMvsZIiqmn7HdFUaeEQ== - dependencies: - browserslist "^4.0.0" - caniuse-api "^3.0.0" - cssnano-util-same-parent "^4.0.0" - postcss "^7.0.0" - postcss-selector-parser "^3.0.0" - vendors "^1.0.0" - -postcss-minify-font-values@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-4.0.2.tgz#cd4c344cce474343fac5d82206ab2cbcb8afd5a6" - integrity sha512-j85oO6OnRU9zPf04+PZv1LYIYOprWm6IA6zkXkrJXyRveDEuQggG6tvoy8ir8ZwjLxLuGfNkCZEQG7zan+Hbtg== - dependencies: - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-minify-gradients@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-4.0.2.tgz#93b29c2ff5099c535eecda56c4aa6e665a663471" - integrity sha512-qKPfwlONdcf/AndP1U8SJ/uzIJtowHlMaSioKzebAXSG4iJthlWC9iSWznQcX4f66gIWX44RSA841HTHj3wK+Q== - dependencies: - cssnano-util-get-arguments "^4.0.0" - is-color-stop "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-minify-params@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-4.0.2.tgz#6b9cef030c11e35261f95f618c90036d680db874" - integrity sha512-G7eWyzEx0xL4/wiBBJxJOz48zAKV2WG3iZOqVhPet/9geefm/Px5uo1fzlHu+DOjT+m0Mmiz3jkQzVHe6wxAWg== - dependencies: - alphanum-sort "^1.0.0" - browserslist "^4.0.0" - cssnano-util-get-arguments "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - uniqs "^2.0.0" - -postcss-minify-selectors@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-4.0.2.tgz#e2e5eb40bfee500d0cd9243500f5f8ea4262fbd8" - integrity sha512-D5S1iViljXBj9kflQo4YutWnJmwm8VvIsU1GeXJGiG9j8CIg9zs4voPMdQDUmIxetUOh60VilsNzCiAFTOqu3g== - dependencies: - alphanum-sort "^1.0.0" - has "^1.0.0" - postcss "^7.0.0" - postcss-selector-parser "^3.0.0" - -postcss-modules-extract-imports@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz#818719a1ae1da325f9832446b01136eeb493cd7e" - integrity sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ== - dependencies: - postcss "^7.0.5" - -postcss-modules-local-by-default@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.2.tgz#e8a6561be914aaf3c052876377524ca90dbb7915" - integrity sha512-jM/V8eqM4oJ/22j0gx4jrp63GSvDH6v86OqyTHHUvk4/k1vceipZsaymiZ5PvocqZOl5SFHiFJqjs3la0wnfIQ== - dependencies: - icss-utils "^4.1.1" - postcss "^7.0.16" - postcss-selector-parser "^6.0.2" - postcss-value-parser "^4.0.0" - -postcss-modules-scope@^2.1.1: - version "2.2.0" - resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz#385cae013cc7743f5a7d7602d1073a89eaae62ee" - integrity sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ== - dependencies: - postcss "^7.0.6" - postcss-selector-parser "^6.0.0" - -postcss-modules-values@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz#5b5000d6ebae29b4255301b4a3a54574423e7f10" - integrity sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg== - dependencies: - icss-utils "^4.0.0" - postcss "^7.0.6" - -postcss-nesting@^7.0.0: - version "7.0.1" - resolved "https://registry.yarnpkg.com/postcss-nesting/-/postcss-nesting-7.0.1.tgz#b50ad7b7f0173e5b5e3880c3501344703e04c052" - integrity sha512-FrorPb0H3nuVq0Sff7W2rnc3SmIcruVC6YwpcS+k687VxyxO33iE1amna7wHuRVzM8vfiYofXSBHNAZ3QhLvYg== - dependencies: - postcss "^7.0.2" - -postcss-normalize-charset@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-4.0.1.tgz#8b35add3aee83a136b0471e0d59be58a50285dd4" - integrity sha512-gMXCrrlWh6G27U0hF3vNvR3w8I1s2wOBILvA87iNXaPvSNo5uZAMYsZG7XjCUf1eVxuPfyL4TJ7++SGZLc9A3g== - dependencies: - postcss "^7.0.0" - -postcss-normalize-display-values@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.2.tgz#0dbe04a4ce9063d4667ed2be476bb830c825935a" - integrity sha512-3F2jcsaMW7+VtRMAqf/3m4cPFhPD3EFRgNs18u+k3lTJJlVe7d0YPO+bnwqo2xg8YiRpDXJI2u8A0wqJxMsQuQ== - dependencies: - cssnano-util-get-match "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-positions@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-normalize-positions/-/postcss-normalize-positions-4.0.2.tgz#05f757f84f260437378368a91f8932d4b102917f" - integrity sha512-Dlf3/9AxpxE+NF1fJxYDeggi5WwV35MXGFnnoccP/9qDtFrTArZ0D0R+iKcg5WsUd8nUYMIl8yXDCtcrT8JrdA== - dependencies: - cssnano-util-get-arguments "^4.0.0" - has "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-repeat-style@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-4.0.2.tgz#c4ebbc289f3991a028d44751cbdd11918b17910c" - integrity sha512-qvigdYYMpSuoFs3Is/f5nHdRLJN/ITA7huIoCyqqENJe9PvPmLhNLMu7QTjPdtnVf6OcYYO5SHonx4+fbJE1+Q== - dependencies: - cssnano-util-get-arguments "^4.0.0" - cssnano-util-get-match "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-string@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-normalize-string/-/postcss-normalize-string-4.0.2.tgz#cd44c40ab07a0c7a36dc5e99aace1eca4ec2690c" - integrity sha512-RrERod97Dnwqq49WNz8qo66ps0swYZDSb6rM57kN2J+aoyEAJfZ6bMx0sx/F9TIEX0xthPGCmeyiam/jXif0eA== - dependencies: - has "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-timing-functions@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-4.0.2.tgz#8e009ca2a3949cdaf8ad23e6b6ab99cb5e7d28d9" - integrity sha512-acwJY95edP762e++00Ehq9L4sZCEcOPyaHwoaFOhIwWCDfik6YvqsYNxckee65JHLKzuNSSmAdxwD2Cud1Z54A== - dependencies: - cssnano-util-get-match "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-unicode@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-unicode/-/postcss-normalize-unicode-4.0.1.tgz#841bd48fdcf3019ad4baa7493a3d363b52ae1cfb" - integrity sha512-od18Uq2wCYn+vZ/qCOeutvHjB5jm57ToxRaMeNuf0nWVHaP9Hua56QyMF6fs/4FSUnVIw0CBPsU0K4LnBPwYwg== - dependencies: - browserslist "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-url@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-4.0.1.tgz#10e437f86bc7c7e58f7b9652ed878daaa95faae1" - integrity sha512-p5oVaF4+IHwu7VpMan/SSpmpYxcJMtkGppYf0VbdH5B6hN8YNmVyJLuY9FmLQTzY3fag5ESUUHDqM+heid0UVA== - dependencies: - is-absolute-url "^2.0.0" - normalize-url "^3.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-whitespace@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-4.0.2.tgz#bf1d4070fe4fcea87d1348e825d8cc0c5faa7d82" - integrity sha512-tO8QIgrsI3p95r8fyqKV+ufKlSHh9hMJqACqbv2XknufqEDhDvbguXGBBqxw9nsQoXWf0qOqppziKJKHMD4GtA== - dependencies: - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize@8.0.1: - version "8.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize/-/postcss-normalize-8.0.1.tgz#90e80a7763d7fdf2da6f2f0f82be832ce4f66776" - integrity sha512-rt9JMS/m9FHIRroDDBGSMsyW1c0fkvOJPy62ggxSHUldJO7B195TqFMqIf+lY5ezpDcYOV4j86aUp3/XbxzCCQ== - dependencies: - "@csstools/normalize.css" "^10.1.0" - browserslist "^4.6.2" - postcss "^7.0.17" - postcss-browser-comments "^3.0.0" - sanitize.css "^10.0.0" - -postcss-ordered-values@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-4.1.2.tgz#0cf75c820ec7d5c4d280189559e0b571ebac0eee" - integrity sha512-2fCObh5UanxvSxeXrtLtlwVThBvHn6MQcu4ksNT2tsaV2Fg76R2CV98W7wNSlX+5/pFwEyaDwKLLoEV7uRybAw== - dependencies: - cssnano-util-get-arguments "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-overflow-shorthand@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-overflow-shorthand/-/postcss-overflow-shorthand-2.0.0.tgz#31ecf350e9c6f6ddc250a78f0c3e111f32dd4c30" - integrity sha512-aK0fHc9CBNx8jbzMYhshZcEv8LtYnBIRYQD5i7w/K/wS9c2+0NSR6B3OVMu5y0hBHYLcMGjfU+dmWYNKH0I85g== - dependencies: - postcss "^7.0.2" - -postcss-page-break@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-page-break/-/postcss-page-break-2.0.0.tgz#add52d0e0a528cabe6afee8b46e2abb277df46bf" - integrity sha512-tkpTSrLpfLfD9HvgOlJuigLuk39wVTbbd8RKcy8/ugV2bNBUW3xU+AIqyxhDrQr1VUj1RmyJrBn1YWrqUm9zAQ== - dependencies: - postcss "^7.0.2" - -postcss-place@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-place/-/postcss-place-4.0.1.tgz#e9f39d33d2dc584e46ee1db45adb77ca9d1dcc62" - integrity sha512-Zb6byCSLkgRKLODj/5mQugyuj9bvAAw9LqJJjgwz5cYryGeXfFZfSXoP1UfveccFmeq0b/2xxwcTEVScnqGxBg== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-preset-env@6.7.0: - version "6.7.0" - resolved "https://registry.yarnpkg.com/postcss-preset-env/-/postcss-preset-env-6.7.0.tgz#c34ddacf8f902383b35ad1e030f178f4cdf118a5" - integrity sha512-eU4/K5xzSFwUFJ8hTdTQzo2RBLbDVt83QZrAvI07TULOkmyQlnYlpwep+2yIK+K+0KlZO4BvFcleOCCcUtwchg== - 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" - -postcss-pseudo-class-any-link@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-6.0.0.tgz#2ed3eed393b3702879dec4a87032b210daeb04d1" - integrity sha512-lgXW9sYJdLqtmw23otOzrtbDXofUdfYzNm4PIpNE322/swES3VU9XlXHeJS46zT2onFO7V1QFdD4Q9LiZj8mew== - dependencies: - postcss "^7.0.2" - postcss-selector-parser "^5.0.0-rc.3" - -postcss-reduce-initial@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-4.0.3.tgz#7fd42ebea5e9c814609639e2c2e84ae270ba48df" - integrity sha512-gKWmR5aUulSjbzOfD9AlJiHCGH6AEVLaM0AV+aSioxUDd16qXP1PCh8d1/BGVvpdWn8k/HiK7n6TjeoXN1F7DA== - dependencies: - browserslist "^4.0.0" - caniuse-api "^3.0.0" - has "^1.0.0" - postcss "^7.0.0" - -postcss-reduce-transforms@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-4.0.2.tgz#17efa405eacc6e07be3414a5ca2d1074681d4e29" - integrity sha512-EEVig1Q2QJ4ELpJXMZR8Vt5DQx8/mo+dGWSR7vWXqcob2gQLyQGsionYcGKATXvQzMPn6DSN1vTN7yFximdIAg== - dependencies: - cssnano-util-get-match "^4.0.0" - has "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-replace-overflow-wrap@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-3.0.0.tgz#61b360ffdaedca84c7c918d2b0f0d0ea559ab01c" - integrity sha512-2T5hcEHArDT6X9+9dVSPQdo7QHzG4XKclFT8rU5TzJPDN7RIRTbO9c4drUISOVemLj03aezStHCR2AIcr8XLpw== - dependencies: - postcss "^7.0.2" - -postcss-safe-parser@4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-safe-parser/-/postcss-safe-parser-4.0.1.tgz#8756d9e4c36fdce2c72b091bbc8ca176ab1fcdea" - integrity sha512-xZsFA3uX8MO3yAda03QrG3/Eg1LN3EPfjjf07vke/46HERLZyHrTsQ9E1r1w1W//fWEhtYNndo2hQplN2cVpCQ== - dependencies: - postcss "^7.0.0" - -postcss-selector-matches@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-selector-matches/-/postcss-selector-matches-4.0.0.tgz#71c8248f917ba2cc93037c9637ee09c64436fcff" - integrity sha512-LgsHwQR/EsRYSqlwdGzeaPKVT0Ml7LAT6E75T8W8xLJY62CE4S/l03BWIt3jT8Taq22kXP08s2SfTSzaraoPww== - dependencies: - balanced-match "^1.0.0" - postcss "^7.0.2" - -postcss-selector-not@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-selector-not/-/postcss-selector-not-4.0.0.tgz#c68ff7ba96527499e832724a2674d65603b645c0" - integrity sha512-W+bkBZRhqJaYN8XAnbbZPLWMvZD1wKTu0UxtFKdhtGjWYmxhkUneoeOhRJKdAE5V7ZTlnbHfCR+6bNwK9e1dTQ== - dependencies: - balanced-match "^1.0.0" - postcss "^7.0.2" - -postcss-selector-parser@^3.0.0: - version "3.1.2" - resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz#b310f5c4c0fdaf76f94902bbaa30db6aa84f5270" - integrity sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA== - dependencies: - dot-prop "^5.2.0" - indexes-of "^1.0.1" - uniq "^1.0.1" - -postcss-selector-parser@^5.0.0-rc.3, postcss-selector-parser@^5.0.0-rc.4: - version "5.0.0" - resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz#249044356697b33b64f1a8f7c80922dddee7195c" - integrity sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ== - dependencies: - cssesc "^2.0.0" - indexes-of "^1.0.1" - uniq "^1.0.1" - -postcss-selector-parser@^6.0.0, postcss-selector-parser@^6.0.2: - version "6.0.2" - resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.2.tgz#934cf799d016c83411859e09dcecade01286ec5c" - integrity sha512-36P2QR59jDTOAiIkqEprfJDsoNrvwFei3eCqKd1Y0tUsBimsq39BLp7RD+JWny3WgB1zGhJX8XVePwm9k4wdBg== - dependencies: - cssesc "^3.0.0" - indexes-of "^1.0.1" - uniq "^1.0.1" - -postcss-svgo@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-4.0.2.tgz#17b997bc711b333bab143aaed3b8d3d6e3d38258" - integrity sha512-C6wyjo3VwFm0QgBy+Fu7gCYOkCmgmClghO+pjcxvrcBKtiKt0uCF+hvbMO1fyv5BMImRK90SMb+dwUnfbGd+jw== - dependencies: - is-svg "^3.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - svgo "^1.0.0" - -postcss-unique-selectors@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-4.0.1.tgz#9446911f3289bfd64c6d680f073c03b1f9ee4bac" - integrity sha512-+JanVaryLo9QwZjKrmJgkI4Fn8SBgRO6WXQBJi7KiAVPlmxikB5Jzc4EvXMT2H0/m0RjrVVm9rGNhZddm/8Spg== - dependencies: - alphanum-sort "^1.0.0" - postcss "^7.0.0" - uniqs "^2.0.0" - -postcss-value-parser@^3.0.0: - version "3.3.1" - resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz#9ff822547e2893213cf1c30efa51ac5fd1ba8281" - integrity sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ== - -postcss-value-parser@^4.0.0, postcss-value-parser@^4.0.2, postcss-value-parser@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz#443f6a20ced6481a2bda4fa8532a6e55d789a2cb" - integrity sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ== - -postcss-values-parser@^2.0.0, postcss-values-parser@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz#da8b472d901da1e205b47bdc98637b9e9e550e5f" - integrity sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg== - dependencies: - flatten "^1.0.2" - indexes-of "^1.0.1" - uniq "^1.0.1" - -postcss@7.0.21: - version "7.0.21" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.21.tgz#06bb07824c19c2021c5d056d5b10c35b989f7e17" - integrity sha512-uIFtJElxJo29QC753JzhidoAhvp/e/Exezkdhfmt8AymWT6/5B7W1WmponYWkHk2eg6sONyTch0A3nkMPun3SQ== - dependencies: - chalk "^2.4.2" - source-map "^0.6.1" - supports-color "^6.1.0" - -postcss@^7, postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.16, postcss@^7.0.17, postcss@^7.0.2, postcss@^7.0.23, postcss@^7.0.27, postcss@^7.0.30, postcss@^7.0.5, postcss@^7.0.6: - version "7.0.32" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.32.tgz#4310d6ee347053da3433db2be492883d62cec59d" - integrity sha512-03eXong5NLnNCD05xscnGKGDZ98CyzoqPSMjOe6SuoQY7Z2hIj0Ld1g/O/UQRuOle2aRtiIRDg9tDcTGAkLfKw== - dependencies: - chalk "^2.4.2" - source-map "^0.6.1" - supports-color "^6.1.0" - -postgres-array@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postgres-array/-/postgres-array-2.0.0.tgz#48f8fce054fbc69671999329b8834b772652d82e" - integrity sha512-VpZrUqU5A69eQyW2c5CA1jtLecCsN2U/bD6VilrFDWq5+5UIEVO7nazS3TEcHf1zuPYO/sqGvUvW62g86RXZuA== - -postgres-bytea@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/postgres-bytea/-/postgres-bytea-1.0.0.tgz#027b533c0aa890e26d172d47cf9ccecc521acd35" - integrity sha1-AntTPAqokOJtFy1Hz5zOzFIazTU= - -postgres-date@~1.0.4: - version "1.0.5" - resolved "https://registry.yarnpkg.com/postgres-date/-/postgres-date-1.0.5.tgz#710b27de5f27d550f6e80b5d34f7ba189213c2ee" - integrity sha512-pdau6GRPERdAYUQwkBnGKxEfPyhVZXG/JiS44iZWiNdSOWE09N2lUgN6yshuq6fVSon4Pm0VMXd1srUUkLe9iA== - -postgres-interval@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/postgres-interval/-/postgres-interval-1.2.0.tgz#b460c82cb1587507788819a06aa0fffdb3544695" - integrity sha512-9ZhXKM/rw350N1ovuWHbGxnGh/SNJ4cnxHiM0rxE4VN41wsg8P8zWn9hv/buK00RP4WvlOyr/RBDiptyxVbkZQ== - dependencies: - xtend "^4.0.0" - -prelude-ls@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" - integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== - -prelude-ls@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" - integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= - -prepend-http@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" - integrity sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw= - -prepend-http@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897" - integrity sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc= - -prettier-linter-helpers@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz#d23d41fe1375646de2d0104d3454a3008802cf7b" - integrity sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w== - dependencies: - fast-diff "^1.1.2" - -prettier@2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.0.5.tgz#d6d56282455243f2f92cc1716692c08aa31522d4" - integrity sha512-7PtVymN48hGcO4fGjybyBSIWDsLU4H4XlvOHfq91pz9kkGlonzwTfYkaIEwiRg/dAJF9YlbsduBAgtYLi+8cFg== - -pretty-bytes@^5.1.0: - version "5.3.0" - resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-5.3.0.tgz#f2849e27db79fb4d6cfe24764fc4134f165989f2" - integrity sha512-hjGrh+P926p4R4WbaB6OckyRtO0F0/lQBiT+0gnxjV+5kjPBrfVBFCsCLbMqVQeydvIoouYTCmmEURiH3R1Bdg== - -pretty-error@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-2.1.1.tgz#5f4f87c8f91e5ae3f3ba87ab4cf5e03b1a17f1a3" - integrity sha1-X0+HyPkeWuPzuoerTPXgOxoX8aM= - dependencies: - renderkid "^2.0.1" - utila "~0.4" - -pretty-format@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-24.9.0.tgz#12fac31b37019a4eea3c11aa9a959eb7628aa7c9" - integrity sha512-00ZMZUiHaJrNfk33guavqgvfJS30sLYf0f8+Srklv0AMPodGGHcoHgksZ3OThYnIvOd+8yMCn0YiEOogjlgsnA== - dependencies: - "@jest/types" "^24.9.0" - ansi-regex "^4.0.0" - ansi-styles "^3.2.0" - react-is "^16.8.4" - -pretty-format@^25.2.1, pretty-format@^25.5.0: - version "25.5.0" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-25.5.0.tgz#7873c1d774f682c34b8d48b6743a2bf2ac55791a" - integrity sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ== - dependencies: - "@jest/types" "^25.5.0" - ansi-regex "^5.0.0" - ansi-styles "^4.0.0" - react-is "^16.12.0" - -pretty-format@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-26.2.0.tgz#83ecc8d7de676ff224225055e72bd64821cec4f1" - integrity sha512-qi/8IuBu2clY9G7qCXgCdD1Bf9w+sXakdHTRToknzMtVy0g7c4MBWaZy7MfB7ndKZovRO6XRwJiAYqq+MC7SDA== - dependencies: - "@jest/types" "^26.2.0" - ansi-regex "^5.0.0" - ansi-styles "^4.0.0" - react-is "^16.12.0" - -prisma-json-schema@0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/prisma-json-schema/-/prisma-json-schema-0.1.3.tgz#6c302db8f464f8b92e8694d3f7dd3f41ac9afcbe" - integrity sha512-XZrf2080oR81mY8/OC8al68HiwBm0nXlFE727JIia0ZbNqwuV4MyRYk6E0+OIa6/9KEYxZrcAmoBs3EW1cCvnA== - -prisma-yml@1.34.10: - version "1.34.10" - resolved "https://registry.yarnpkg.com/prisma-yml/-/prisma-yml-1.34.10.tgz#0ef1ad3a125f54f200289cba56bdd9597f17f410" - integrity sha512-N9on+Cf/XQKFGUULk/681tnpfqiZ19UBTurFMm+/9rnml37mteDaFr2k8yz+K8Gt2xpEJ7kBu7ikG5PrXI1uoA== - dependencies: - ajv "5" - bluebird "^3.5.1" - chalk "^2.3.0" - debug "^3.1.0" - dotenv "^4.0.0" - fs-extra "^7.0.0" - graphql-request "^1.5.0" - http-proxy-agent "^2.1.0" - https-proxy-agent "^2.2.1" - isomorphic-fetch "^2.2.1" - js-yaml "^3.10.0" - json-stable-stringify "^1.0.1" - jsonwebtoken "^8.1.0" - lodash "^4.17.4" - prisma-json-schema "0.1.3" - replaceall "^0.1.6" - scuid "^1.0.2" - yaml-ast-parser "^0.0.40" - -private@^0.1.8: - version "0.1.8" - resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff" - integrity sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg== - -process-nextick-args@~2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" - integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== - -process@^0.11.10: - version "0.11.10" - resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" - integrity sha1-czIwDoQBYb2j5podHZGn1LwW8YI= - -progress@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" - integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== - -promise-inflight@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" - integrity sha1-mEcocL8igTL8vdhoEputEsPAKeM= - -promise-retry@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/promise-retry/-/promise-retry-1.1.1.tgz#6739e968e3051da20ce6497fb2b50f6911df3d6d" - integrity sha1-ZznpaOMFHaIM5kl/srUPaRHfPW0= - dependencies: - err-code "^1.0.0" - retry "^0.10.0" - -promise@^7.1.1: - version "7.3.1" - resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf" - integrity sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg== - dependencies: - asap "~2.0.3" - -promise@^8.0.3: - version "8.1.0" - resolved "https://registry.yarnpkg.com/promise/-/promise-8.1.0.tgz#697c25c3dfe7435dd79fcd58c38a135888eaf05e" - integrity sha512-W04AqnILOL/sPRXziNicCjSNRruLAuIHEOVBazepu0545DDNGYHz7ar9ZgZ1fMU8/MA4mVxp5rkBWRi6OXIy3Q== - dependencies: - asap "~2.0.6" - -prompts@^2.0.1: - version "2.3.2" - resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.3.2.tgz#480572d89ecf39566d2bd3fe2c9fccb7c4c0b068" - integrity sha512-Q06uKs2CkNYVID0VqwfAl9mipo99zkBv/n2JtWY89Yxa3ZabWSrs0e2KTudKVa3peLUvYXMefDqIleLPVUBZMA== - dependencies: - kleur "^3.0.3" - sisteransi "^1.0.4" - -promzard@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/promzard/-/promzard-0.3.0.tgz#26a5d6ee8c7dee4cb12208305acfb93ba382a9ee" - integrity sha1-JqXW7ox97kyxIggwWs+5O6OCqe4= - dependencies: - read "1" - -prop-types@^15.6.0, prop-types@^15.6.2, prop-types@^15.7.2: - version "15.7.2" - resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5" - integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ== - dependencies: - loose-envify "^1.4.0" - object-assign "^4.1.1" - react-is "^16.8.1" - -proto-list@~1.2.1: - version "1.2.4" - resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" - integrity sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk= - -protocols@^1.1.0, protocols@^1.4.0: - version "1.4.7" - resolved "https://registry.yarnpkg.com/protocols/-/protocols-1.4.7.tgz#95f788a4f0e979b291ffefcf5636ad113d037d32" - integrity sha512-Fx65lf9/YDn3hUX08XUc0J8rSux36rEsyiv21ZGUC1mOyeM3lTRpZLcrm8aAolzS4itwVfm7TAPyxC2E5zd6xg== - -protoduck@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/protoduck/-/protoduck-5.0.1.tgz#03c3659ca18007b69a50fd82a7ebcc516261151f" - integrity sha512-WxoCeDCoCBY55BMvj4cAEjdVUFGRWed9ZxPlqTKYyw1nDDTQ4pqmnIMAGfJlg7Dx35uB/M+PHJPTmGOvaCaPTg== - dependencies: - genfun "^5.0.0" - -proxy-addr@~2.0.5: - version "2.0.6" - resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.6.tgz#fdc2336505447d3f2f2c638ed272caf614bbb2bf" - integrity sha512-dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw== - dependencies: - forwarded "~0.1.2" - ipaddr.js "1.9.1" - -prr@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" - integrity sha1-0/wRS6BplaRexok/SEzrHXj19HY= - -psl@^1.1.28: - version "1.8.0" - resolved "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24" - integrity sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ== - -pstree.remy@^1.1.7: - version "1.1.8" - resolved "https://registry.yarnpkg.com/pstree.remy/-/pstree.remy-1.1.8.tgz#c242224f4a67c21f686839bbdb4ac282b8373d3a" - integrity sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w== - -public-encrypt@^4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.3.tgz#4fcc9d77a07e48ba7527e7cbe0de33d0701331e0" - integrity sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q== - dependencies: - bn.js "^4.1.0" - browserify-rsa "^4.0.0" - create-hash "^1.1.0" - parse-asn1 "^5.0.0" - randombytes "^2.0.1" - safe-buffer "^5.1.2" - -pump@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909" - integrity sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA== - dependencies: - end-of-stream "^1.1.0" - once "^1.3.1" - -pump@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" - integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== - dependencies: - end-of-stream "^1.1.0" - once "^1.3.1" - -pumpify@^1.3.3: - version "1.5.1" - resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.5.1.tgz#36513be246ab27570b1a374a5ce278bfd74370ce" - integrity sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ== - dependencies: - duplexify "^3.6.0" - inherits "^2.0.3" - pump "^2.0.0" - -punycode@1.3.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" - integrity sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0= - -punycode@^1.2.4: - version "1.4.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" - integrity sha1-wNWmOycYgArY4esPpSachN1BhF4= - -punycode@^2.1.0, punycode@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" - integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== - -pupa@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/pupa/-/pupa-2.0.1.tgz#dbdc9ff48ffbea4a26a069b6f9f7abb051008726" - integrity sha512-hEJH0s8PXLY/cdXh66tNEQGndDrIKNqNC5xmrysZy3i5C3oEoLna7YAOad+7u125+zH1HNXUmGEkrhb3c2VriA== - dependencies: - escape-goat "^2.0.0" - -q@^1.1.2, q@^1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" - integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= - -qr.js@0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/qr.js/-/qr.js-0.0.0.tgz#cace86386f59a0db8050fa90d9b6b0e88a1e364f" - integrity sha1-ys6GOG9ZoNuAUPqQ2baw6IoeNk8= - -qrcode.react@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/qrcode.react/-/qrcode.react-1.0.0.tgz#7e8889db3b769e555e8eb463d4c6de221c36d5de" - integrity sha512-jBXleohRTwvGBe1ngV+62QvEZ/9IZqQivdwzo9pJM4LQMoCM2VnvNBnKdjvGnKyDZ/l0nCDgsPod19RzlPvm/Q== - dependencies: - loose-envify "^1.4.0" - prop-types "^15.6.0" - qr.js "0.0.0" - -qs@6.7.0: - version "6.7.0" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.7.0.tgz#41dc1a015e3d581f1621776be31afb2876a9b1bc" - integrity sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ== - -qs@~6.5.2: - version "6.5.2" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" - integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== - -query-string@^4.1.0: - version "4.3.4" - resolved "https://registry.yarnpkg.com/query-string/-/query-string-4.3.4.tgz#bbb693b9ca915c232515b228b1a02b609043dbeb" - integrity sha1-u7aTucqRXCMlFbIosaArYJBD2+s= - dependencies: - object-assign "^4.1.0" - strict-uri-encode "^1.0.0" - -querystring-es3@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73" - integrity sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM= - -querystring@0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" - integrity sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA= - -querystringify@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.1.1.tgz#60e5a5fd64a7f8bfa4d2ab2ed6fdf4c85bad154e" - integrity sha512-w7fLxIRCRT7U8Qu53jQnJyPkYZIaR4n5151KMfcJlO/A9397Wxb1amJvROTK6TOnp7PfoAmg/qXiNHI+08jRfA== - -quick-lru@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-1.1.0.tgz#4360b17c61136ad38078397ff11416e186dcfbb8" - integrity sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g= - -quick-lru@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-4.0.1.tgz#5b8878f113a58217848c6482026c73e1ba57727f" - integrity sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g== - -raf@^3.4.1: - version "3.4.1" - resolved "https://registry.yarnpkg.com/raf/-/raf-3.4.1.tgz#0742e99a4a6552f445d73e3ee0328af0ff1ede39" - integrity sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA== - dependencies: - performance-now "^2.1.0" - -random-bytes@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/random-bytes/-/random-bytes-1.0.0.tgz#4f68a1dc0ae58bd3fb95848c30324db75d64360b" - integrity sha1-T2ih3Arli9P7lYSMMDJNt11kNgs= - -randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5, randombytes@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" - integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== - dependencies: - safe-buffer "^5.1.0" - -randomfill@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/randomfill/-/randomfill-1.0.4.tgz#c92196fc86ab42be983f1bf31778224931d61458" - integrity sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw== - dependencies: - randombytes "^2.0.5" - safe-buffer "^5.1.0" - -range-parser@^1.2.1, range-parser@~1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" - integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== - -raw-body@2.4.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.4.0.tgz#a1ce6fb9c9bc356ca52e89256ab59059e13d0332" - integrity sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q== - dependencies: - bytes "3.1.0" - http-errors "1.7.2" - iconv-lite "0.4.24" - unpipe "1.0.0" - -rc@^1.2.8: - version "1.2.8" - resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" - integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== - dependencies: - deep-extend "^0.6.0" - ini "~1.3.0" - minimist "^1.2.0" - strip-json-comments "~2.0.1" - -react-app-polyfill@^1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/react-app-polyfill/-/react-app-polyfill-1.0.6.tgz#890f8d7f2842ce6073f030b117de9130a5f385f0" - integrity sha512-OfBnObtnGgLGfweORmdZbyEz+3dgVePQBb3zipiaDsMHV1NpWm0rDFYIVXFV/AK+x4VIIfWHhrdMIeoTLyRr2g== - dependencies: - core-js "^3.5.0" - object-assign "^4.1.1" - promise "^8.0.3" - raf "^3.4.1" - regenerator-runtime "^0.13.3" - whatwg-fetch "^3.0.0" - -react-dev-utils@^10.2.1: - version "10.2.1" - resolved "https://registry.yarnpkg.com/react-dev-utils/-/react-dev-utils-10.2.1.tgz#f6de325ae25fa4d546d09df4bb1befdc6dd19c19" - integrity sha512-XxTbgJnYZmxuPtY3y/UV0D8/65NKkmaia4rXzViknVnZeVlklSh8u6TnaEYPfAi/Gh1TP4mEOXHI6jQOPbeakQ== - dependencies: - "@babel/code-frame" "7.8.3" - address "1.1.2" - browserslist "4.10.0" - chalk "2.4.2" - cross-spawn "7.0.1" - detect-port-alt "1.1.6" - escape-string-regexp "2.0.0" - filesize "6.0.1" - find-up "4.1.0" - fork-ts-checker-webpack-plugin "3.1.1" - global-modules "2.0.0" - globby "8.0.2" - gzip-size "5.1.1" - immer "1.10.0" - inquirer "7.0.4" - is-root "2.1.0" - loader-utils "1.2.3" - open "^7.0.2" - pkg-up "3.1.0" - react-error-overlay "^6.0.7" - recursive-readdir "2.2.2" - shell-quote "1.7.2" - strip-ansi "6.0.0" - text-table "0.2.0" - -react-dom@16.13.1: - version "16.13.1" - resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.13.1.tgz#c1bd37331a0486c078ee54c4740720993b2e0e7f" - integrity sha512-81PIMmVLnCNLO/fFOQxdQkvEq/+Hfpv24XNJfpyZhTRfO0QcmQIF/PgCa1zCOj2w1hrn12MFLyaJ/G0+Mxtfag== - dependencies: - loose-envify "^1.1.0" - object-assign "^4.1.1" - prop-types "^15.6.2" - scheduler "^0.19.1" - -react-error-overlay@^6.0.7: - version "6.0.7" - resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-6.0.7.tgz#1dcfb459ab671d53f660a991513cb2f0a0553108" - integrity sha512-TAv1KJFh3RhqxNvhzxj6LeT5NWklP6rDr2a0jaTfsZ5wSZWHOGeqQyejUp3xxLfPt2UpyJEcVQB/zyPcmonNFA== - -react-fast-compare@^2.0.1: - version "2.0.4" - resolved "https://registry.yarnpkg.com/react-fast-compare/-/react-fast-compare-2.0.4.tgz#e84b4d455b0fec113e0402c329352715196f81f9" - integrity sha512-suNP+J1VU1MWFKcyt7RtjiSWUjvidmQSlqu+eHslq+342xCbGTYmC0mEhPCOHxlW0CywylOC1u2DFAT+bv4dBw== - -react-is@^16.12.0, react-is@^16.6.0, react-is@^16.7.0, react-is@^16.8.0, react-is@^16.8.1, react-is@^16.8.4: - version "16.13.1" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" - integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== - -react-router-dom@5.1.2: - version "5.1.2" - resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-5.1.2.tgz#06701b834352f44d37fbb6311f870f84c76b9c18" - integrity sha512-7BPHAaIwWpZS074UKaw1FjVdZBSVWEk8IuDXdB+OkLb8vd/WRQIpA4ag9WQk61aEfQs47wHyjWUoUGGZxpQXew== - dependencies: - "@babel/runtime" "^7.1.2" - history "^4.9.0" - loose-envify "^1.3.1" - prop-types "^15.6.2" - react-router "5.1.2" - tiny-invariant "^1.0.2" - tiny-warning "^1.0.0" - -react-router-dom@5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-5.2.0.tgz#9e65a4d0c45e13289e66c7b17c7e175d0ea15662" - integrity sha512-gxAmfylo2QUjcwxI63RhQ5G85Qqt4voZpUXSEqCwykV0baaOTQDR1f0PmY8AELqIyVc0NEZUj0Gov5lNGcXgsA== - dependencies: - "@babel/runtime" "^7.1.2" - history "^4.9.0" - loose-envify "^1.3.1" - prop-types "^15.6.2" - react-router "5.2.0" - tiny-invariant "^1.0.2" - tiny-warning "^1.0.0" - -react-router@5.1.2: - version "5.1.2" - resolved "https://registry.yarnpkg.com/react-router/-/react-router-5.1.2.tgz#6ea51d789cb36a6be1ba5f7c0d48dd9e817d3418" - integrity sha512-yjEuMFy1ONK246B+rsa0cUam5OeAQ8pyclRDgpxuSCrAlJ1qN9uZ5IgyKC7gQg0w8OM50NXHEegPh/ks9YuR2A== - dependencies: - "@babel/runtime" "^7.1.2" - history "^4.9.0" - hoist-non-react-statics "^3.1.0" - loose-envify "^1.3.1" - mini-create-react-context "^0.3.0" - path-to-regexp "^1.7.0" - prop-types "^15.6.2" - react-is "^16.6.0" - tiny-invariant "^1.0.2" - tiny-warning "^1.0.0" - -react-router@5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/react-router/-/react-router-5.2.0.tgz#424e75641ca8747fbf76e5ecca69781aa37ea293" - integrity sha512-smz1DUuFHRKdcJC0jobGo8cVbhO3x50tCL4icacOlcwDOEQPq4TMqwx3sY1TP+DvtTgz4nm3thuo7A+BK2U0Dw== - dependencies: - "@babel/runtime" "^7.1.2" - history "^4.9.0" - hoist-non-react-statics "^3.1.0" - loose-envify "^1.3.1" - mini-create-react-context "^0.4.0" - path-to-regexp "^1.7.0" - prop-types "^15.6.2" - react-is "^16.6.0" - tiny-invariant "^1.0.2" - tiny-warning "^1.0.0" - -react-scripts@3.4.1: - version "3.4.1" - resolved "https://registry.yarnpkg.com/react-scripts/-/react-scripts-3.4.1.tgz#f551298b5c71985cc491b9acf3c8e8c0ae3ada0a" - integrity sha512-JpTdi/0Sfd31mZA6Ukx+lq5j1JoKItX7qqEK4OiACjVQletM1P38g49d9/D0yTxp9FrSF+xpJFStkGgKEIRjlQ== - dependencies: - "@babel/core" "7.9.0" - "@svgr/webpack" "4.3.3" - "@typescript-eslint/eslint-plugin" "^2.10.0" - "@typescript-eslint/parser" "^2.10.0" - babel-eslint "10.1.0" - babel-jest "^24.9.0" - babel-loader "8.1.0" - babel-plugin-named-asset-import "^0.3.6" - babel-preset-react-app "^9.1.2" - camelcase "^5.3.1" - case-sensitive-paths-webpack-plugin "2.3.0" - css-loader "3.4.2" - dotenv "8.2.0" - dotenv-expand "5.1.0" - eslint "^6.6.0" - eslint-config-react-app "^5.2.1" - eslint-loader "3.0.3" - eslint-plugin-flowtype "4.6.0" - eslint-plugin-import "2.20.1" - eslint-plugin-jsx-a11y "6.2.3" - eslint-plugin-react "7.19.0" - eslint-plugin-react-hooks "^1.6.1" - file-loader "4.3.0" - fs-extra "^8.1.0" - html-webpack-plugin "4.0.0-beta.11" - identity-obj-proxy "3.0.0" - jest "24.9.0" - jest-environment-jsdom-fourteen "1.0.1" - jest-resolve "24.9.0" - jest-watch-typeahead "0.4.2" - mini-css-extract-plugin "0.9.0" - optimize-css-assets-webpack-plugin "5.0.3" - pnp-webpack-plugin "1.6.4" - postcss-flexbugs-fixes "4.1.0" - postcss-loader "3.0.0" - postcss-normalize "8.0.1" - postcss-preset-env "6.7.0" - postcss-safe-parser "4.0.1" - react-app-polyfill "^1.0.6" - react-dev-utils "^10.2.1" - resolve "1.15.0" - resolve-url-loader "3.1.1" - sass-loader "8.0.2" - semver "6.3.0" - style-loader "0.23.1" - terser-webpack-plugin "2.3.5" - ts-pnp "1.1.6" - url-loader "2.3.0" - webpack "4.42.0" - webpack-dev-server "3.10.3" - webpack-manifest-plugin "2.2.0" - workbox-webpack-plugin "4.3.1" - optionalDependencies: - fsevents "2.1.2" - -react-transition-group@^4.3.0, react-transition-group@^4.4.0: - version "4.4.1" - resolved "https://registry.yarnpkg.com/react-transition-group/-/react-transition-group-4.4.1.tgz#63868f9325a38ea5ee9535d828327f85773345c9" - integrity sha512-Djqr7OQ2aPUiYurhPalTrVy9ddmFCCzwhqQmtN+J3+3DzLO209Fdr70QrN8Z3DsglWql6iY1lDWAfpFiBtuKGw== - dependencies: - "@babel/runtime" "^7.5.5" - dom-helpers "^5.0.1" - loose-envify "^1.4.0" - prop-types "^15.6.2" - -react@16.13.1: - version "16.13.1" - resolved "https://registry.yarnpkg.com/react/-/react-16.13.1.tgz#2e818822f1a9743122c063d6410d85c1e3afe48e" - integrity sha512-YMZQQq32xHLX0bz5Mnibv1/LHb3Sqzngu7xstSM+vrkE5Kzr9xE0yMByK5kMoTK30YVJE61WfbxIFFvfeDKT1w== - dependencies: - loose-envify "^1.1.0" - object-assign "^4.1.1" - prop-types "^15.6.2" - -read-cmd-shim@^1.0.1: - version "1.0.5" - resolved "https://registry.yarnpkg.com/read-cmd-shim/-/read-cmd-shim-1.0.5.tgz#87e43eba50098ba5a32d0ceb583ab8e43b961c16" - integrity sha512-v5yCqQ/7okKoZZkBQUAfTsQ3sVJtXdNfbPnI5cceppoxEVLYA3k+VtV2omkeo8MS94JCy4fSiUwlRBAwCVRPUA== - dependencies: - graceful-fs "^4.1.2" - -"read-package-json@1 || 2", read-package-json@^2.0.0, read-package-json@^2.0.13: - version "2.1.1" - resolved "https://registry.yarnpkg.com/read-package-json/-/read-package-json-2.1.1.tgz#16aa66c59e7d4dad6288f179dd9295fd59bb98f1" - integrity sha512-dAiqGtVc/q5doFz6096CcnXhpYk0ZN8dEKVkGLU0CsASt8SrgF6SF7OTKAYubfvFhWaqofl+Y8HK19GR8jwW+A== - dependencies: - glob "^7.1.1" - json-parse-better-errors "^1.0.1" - normalize-package-data "^2.0.0" - npm-normalize-package-bin "^1.0.0" - optionalDependencies: - graceful-fs "^4.1.2" - -read-package-tree@^5.1.6: - version "5.3.1" - resolved "https://registry.yarnpkg.com/read-package-tree/-/read-package-tree-5.3.1.tgz#a32cb64c7f31eb8a6f31ef06f9cedf74068fe636" - integrity sha512-mLUDsD5JVtlZxjSlPPx1RETkNjjvQYuweKwNVt1Sn8kP5Jh44pvYuUHCp6xSVDZWbNxVxG5lyZJ921aJH61sTw== - dependencies: - read-package-json "^2.0.0" - readdir-scoped-modules "^1.0.0" - util-promisify "^2.1.0" - -read-pkg-up@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" - integrity sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI= - dependencies: - find-up "^1.0.0" - read-pkg "^1.0.0" - -read-pkg-up@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be" - integrity sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4= - dependencies: - find-up "^2.0.0" - read-pkg "^2.0.0" - -read-pkg-up@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-3.0.0.tgz#3ed496685dba0f8fe118d0691dc51f4a1ff96f07" - integrity sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc= - dependencies: - find-up "^2.0.0" - read-pkg "^3.0.0" - -read-pkg-up@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-4.0.0.tgz#1b221c6088ba7799601c808f91161c66e58f8978" - integrity sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA== - dependencies: - find-up "^3.0.0" - read-pkg "^3.0.0" - -read-pkg-up@^7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz#f3a6135758459733ae2b95638056e1854e7ef507" - integrity sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg== - dependencies: - find-up "^4.1.0" - read-pkg "^5.2.0" - type-fest "^0.8.1" - -read-pkg@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" - integrity sha1-9f+qXs0pyzHAR0vKfXVra7KePyg= - dependencies: - load-json-file "^1.0.0" - normalize-package-data "^2.3.2" - path-type "^1.0.0" - -read-pkg@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8" - integrity sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg= - dependencies: - load-json-file "^2.0.0" - normalize-package-data "^2.3.2" - path-type "^2.0.0" - -read-pkg@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389" - integrity sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k= - dependencies: - load-json-file "^4.0.0" - normalize-package-data "^2.3.2" - path-type "^3.0.0" - -read-pkg@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-4.0.1.tgz#963625378f3e1c4d48c85872b5a6ec7d5d093237" - integrity sha1-ljYlN48+HE1IyFhytabsfV0JMjc= - dependencies: - normalize-package-data "^2.3.2" - parse-json "^4.0.0" - pify "^3.0.0" - -read-pkg@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-5.2.0.tgz#7bf295438ca5a33e56cd30e053b34ee7250c93cc" - integrity sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg== - dependencies: - "@types/normalize-package-data" "^2.4.0" - normalize-package-data "^2.5.0" - parse-json "^5.0.0" - type-fest "^0.6.0" - -read@1, read@~1.0.1: - version "1.0.7" - resolved "https://registry.yarnpkg.com/read/-/read-1.0.7.tgz#b3da19bd052431a97671d44a42634adf710b40c4" - integrity sha1-s9oZvQUkMal2cdRKQmNK33ELQMQ= - dependencies: - mute-stream "~0.0.4" - -"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.5, readable-stream@^2.3.6, readable-stream@~2.3.6: - version "2.3.7" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" - integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== - 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" - -"readable-stream@2 || 3", readable-stream@^3.0.2, readable-stream@^3.0.6, readable-stream@^3.1.1, readable-stream@^3.6.0: - version "3.6.0" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" - integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== - dependencies: - inherits "^2.0.3" - string_decoder "^1.1.1" - util-deprecate "^1.0.1" - -readdir-scoped-modules@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/readdir-scoped-modules/-/readdir-scoped-modules-1.1.0.tgz#8d45407b4f870a0dcaebc0e28670d18e74514309" - integrity sha512-asaikDeqAQg7JifRsZn1NJZXo9E+VwlyCfbkZhwyISinqk5zNS6266HS5kah6P0SaQKGF6SkNnZVHUzHFYxYDw== - dependencies: - debuglog "^1.0.1" - dezalgo "^1.0.0" - graceful-fs "^4.1.2" - once "^1.3.0" - -readdirp@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525" - integrity sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ== - dependencies: - graceful-fs "^4.1.11" - micromatch "^3.1.10" - readable-stream "^2.0.2" - -readdirp@~3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.4.0.tgz#9fdccdf9e9155805449221ac645e8303ab5b9ada" - integrity sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ== - dependencies: - picomatch "^2.2.1" - -realpath-native@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/realpath-native/-/realpath-native-1.1.0.tgz#2003294fea23fb0672f2476ebe22fcf498a2d65c" - integrity sha512-wlgPA6cCIIg9gKz0fgAPjnzh4yR/LnXovwuo9hvyGvx3h8nX4+/iLZplfUWasXpqD8BdnGnP5njOFjkUwPzvjA== - dependencies: - util.promisify "^1.0.0" - -rechoir@^0.6.2: - version "0.6.2" - resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384" - integrity sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q= - dependencies: - resolve "^1.1.6" - -recursive-readdir@2.2.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/recursive-readdir/-/recursive-readdir-2.2.2.tgz#9946fb3274e1628de6e36b2f6714953b4845094f" - integrity sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg== - dependencies: - minimatch "3.0.4" - -redent@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde" - integrity sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94= - dependencies: - indent-string "^2.1.0" - strip-indent "^1.0.1" - -redent@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/redent/-/redent-2.0.0.tgz#c1b2007b42d57eb1389079b3c8333639d5e1ccaa" - integrity sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo= - dependencies: - indent-string "^3.0.0" - strip-indent "^2.0.0" - -redent@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/redent/-/redent-3.0.0.tgz#e557b7998316bb53c9f1f56fa626352c6963059f" - integrity sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg== - dependencies: - indent-string "^4.0.0" - strip-indent "^3.0.0" - -redis-commands@1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/redis-commands/-/redis-commands-1.5.0.tgz#80d2e20698fe688f227127ff9e5164a7dd17e785" - integrity sha512-6KxamqpZ468MeQC3bkWmCB1fp56XL64D4Kf0zJSwDZbVLLm7KFkoIcHrgRvQ+sk8dnhySs7+yBg94yIkAK7aJg== - -redis-errors@^1.0.0, redis-errors@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/redis-errors/-/redis-errors-1.2.0.tgz#eb62d2adb15e4eaf4610c04afe1529384250abad" - integrity sha1-62LSrbFeTq9GEMBK/hUpOEJQq60= - -redis-parser@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/redis-parser/-/redis-parser-3.0.0.tgz#b66d828cdcafe6b4b8a428a7def4c6bcac31c8b4" - integrity sha1-tm2CjNyv5rS4pCin3vTGvKwxyLQ= - dependencies: - redis-errors "^1.0.0" - -reflect-metadata@^0.1.13: - version "0.1.13" - resolved "https://registry.yarnpkg.com/reflect-metadata/-/reflect-metadata-0.1.13.tgz#67ae3ca57c972a2aa1642b10fe363fe32d49dc08" - integrity sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg== - -regenerate-unicode-properties@^8.2.0: - version "8.2.0" - resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz#e5de7111d655e7ba60c057dbe9ff37c87e65cdec" - integrity sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA== - dependencies: - regenerate "^1.4.0" - -regenerate@^1.4.0: - version "1.4.1" - resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.1.tgz#cad92ad8e6b591773485fbe05a485caf4f457e6f" - integrity sha512-j2+C8+NtXQgEKWk49MMP5P/u2GhnahTtVkRIHr5R5lVRlbKvmQ+oS+A5aLKWp2ma5VkT8sh6v+v4hbH0YHR66A== - -regenerator-runtime@^0.10.0: - version "0.10.5" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz#336c3efc1220adcedda2c9fab67b5a7955a33658" - integrity sha1-M2w+/BIgrc7dosn6tntaeVWjNlg= - -regenerator-runtime@^0.11.0: - version "0.11.1" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" - integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg== - -regenerator-runtime@^0.13.3, regenerator-runtime@^0.13.4: - version "0.13.5" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.5.tgz#d878a1d094b4306d10b9096484b33ebd55e26697" - integrity sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA== - -regenerator-transform@^0.14.2: - version "0.14.4" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.14.4.tgz#5266857896518d1616a78a0479337a30ea974cc7" - integrity sha512-EaJaKPBI9GvKpvUz2mz4fhx7WPgvwRLY9v3hlNHWmAuJHI13T4nwKnNvm5RWJzEdnI5g5UwtOww+S8IdoUC2bw== - dependencies: - "@babel/runtime" "^7.8.4" - private "^0.1.8" - -regex-not@^1.0.0, regex-not@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" - integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== - dependencies: - extend-shallow "^3.0.2" - safe-regex "^1.1.0" - -regex-parser@2.2.10: - version "2.2.10" - resolved "https://registry.yarnpkg.com/regex-parser/-/regex-parser-2.2.10.tgz#9e66a8f73d89a107616e63b39d4deddfee912b37" - integrity sha512-8t6074A68gHfU8Neftl0Le6KTDwfGAj7IyjPIMSfikI2wJUTHDMaIq42bUsfVnj8mhx0R+45rdUXHGpN164avA== - -regexp-clone@1.0.0, regexp-clone@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/regexp-clone/-/regexp-clone-1.0.0.tgz#222db967623277056260b992626354a04ce9bf63" - integrity sha512-TuAasHQNamyyJ2hb97IuBEif4qBHGjPHBS64sZwytpLEqtBQ1gPJTnOaQ6qmpET16cK14kkjbazl6+p0RRv0yw== - -regexp.prototype.flags@^1.2.0, regexp.prototype.flags@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz#7aba89b3c13a64509dabcf3ca8d9fbb9bdf5cb75" - integrity sha512-2+Q0C5g951OlYlJz6yu5/M33IcsESLlLfsyIaLJaG4FA2r4yP8MvVMJUUP/fVBkSpbbbZlS5gynbEWLipiiXiQ== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.0-next.1" - -regexpp@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-2.0.1.tgz#8d19d31cf632482b589049f8281f93dbcba4d07f" - integrity sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw== - -regexpp@^3.0.0, regexpp@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.1.0.tgz#206d0ad0a5648cffbdb8ae46438f3dc51c9f78e2" - integrity sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q== - -regexpu-core@^4.7.0: - version "4.7.0" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.7.0.tgz#fcbf458c50431b0bb7b45d6967b8192d91f3d938" - integrity sha512-TQ4KXRnIn6tz6tjnrXEkD/sshygKH/j5KzK86X8MkeHyZ8qst/LZ89j3X4/8HEIfHANTFIP/AbXakeRhWIl5YQ== - dependencies: - regenerate "^1.4.0" - regenerate-unicode-properties "^8.2.0" - regjsgen "^0.5.1" - regjsparser "^0.6.4" - unicode-match-property-ecmascript "^1.0.4" - unicode-match-property-value-ecmascript "^1.2.0" - -registry-auth-token@^4.0.0: - version "4.1.1" - resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-4.1.1.tgz#40a33be1e82539460f94328b0f7f0f84c16d9479" - integrity sha512-9bKS7nTl9+/A1s7tnPeGrUpRcVY+LUh7bfFgzpndALdPfXQBfQV77rQVtqgUV3ti4vc/Ik81Ex8UJDWDQ12zQA== - dependencies: - rc "^1.2.8" - -registry-url@^5.0.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/registry-url/-/registry-url-5.1.0.tgz#e98334b50d5434b81136b44ec638d9c2009c5009" - integrity sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw== - dependencies: - rc "^1.2.8" - -regjsgen@^0.5.1: - version "0.5.2" - resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.5.2.tgz#92ff295fb1deecbf6ecdab2543d207e91aa33733" - integrity sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A== - -regjsparser@^0.6.4: - version "0.6.4" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.6.4.tgz#a769f8684308401a66e9b529d2436ff4d0666272" - integrity sha512-64O87/dPDgfk8/RQqC4gkZoGyyWFIEUTTh80CU6CWuK5vkCGyekIx+oKcEIYtP/RAxSQltCZHCNu/mdd7fqlJw== - dependencies: - jsesc "~0.5.0" - -relateurl@^0.2.7: - version "0.2.7" - resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" - integrity sha1-VNvzd+UUQKypCkzSdGANP/LYiKk= - -relay-compiler@10.0.0: - version "10.0.0" - resolved "https://registry.yarnpkg.com/relay-compiler/-/relay-compiler-10.0.0.tgz#04d50d8ec53e3f683bc379b756cf0542a76105af" - integrity sha512-EVBMcMCiP+waOPR2930cNCCsac1sNhfQayzS+bOEMz2Lls5Bx7grhaadkBZLTEdCHQ1kf7lrsmcMDqj9mxABFw== - dependencies: - "@babel/core" "^7.0.0" - "@babel/generator" "^7.5.0" - "@babel/parser" "^7.0.0" - "@babel/runtime" "^7.0.0" - "@babel/traverse" "^7.0.0" - "@babel/types" "^7.0.0" - babel-preset-fbjs "^3.3.0" - chalk "^4.0.0" - fb-watchman "^2.0.0" - fbjs "^1.0.0" - glob "^7.1.1" - immutable "~3.7.6" - nullthrows "^1.1.1" - relay-runtime "10.0.0" - signedsource "^1.0.0" - yargs "^15.3.1" - -relay-runtime@10.0.0: - version "10.0.0" - resolved "https://registry.yarnpkg.com/relay-runtime/-/relay-runtime-10.0.0.tgz#cfceb0f8453b39a385d63093f2dbf1702ddc02b3" - integrity sha512-QEpFwEjvGgWgQ0MPJyrZKggaCoGMKwxPQx7NwYl4FcMmxZcicc8wk6vI1iTxl0tsPKgW/YG8FgueQR+X7ZtZqw== - dependencies: - "@babel/runtime" "^7.0.0" - fbjs "^1.0.0" - -remedial@^1.0.7: - version "1.0.8" - resolved "https://registry.yarnpkg.com/remedial/-/remedial-1.0.8.tgz#a5e4fd52a0e4956adbaf62da63a5a46a78c578a0" - integrity sha512-/62tYiOe6DzS5BqVsNpH/nkGlX45C/Sp6V+NtiN6JQNS1Viay7cWkazmRkrQrdFj2eshDe96SIQNIoMxqhzBOg== - -remove-trailing-separator@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" - integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8= - -remove-trailing-spaces@^1.0.6: - version "1.0.7" - resolved "https://registry.yarnpkg.com/remove-trailing-spaces/-/remove-trailing-spaces-1.0.7.tgz#491f04e11d98880714d12429b0d0938cbe030ae6" - integrity sha512-wjM17CJ2kk0SgoGyJ7ZMzRRCuTq+V8YhMwpZ5XEWX0uaked2OUq6utvHXGNBQrfkUzUUABFMyxlKn+85hMv4dg== - -renderkid@^2.0.1: - version "2.0.3" - resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-2.0.3.tgz#380179c2ff5ae1365c522bf2fcfcff01c5b74149" - integrity sha512-z8CLQp7EZBPCwCnncgf9C4XAi3WR0dv+uWu/PjIyhhAb5d6IJ/QZqlHFprHeKT+59//V6BNUsLbvN8+2LarxGA== - dependencies: - css-select "^1.1.0" - dom-converter "^0.2" - htmlparser2 "^3.3.0" - strip-ansi "^3.0.0" - utila "^0.4.0" - -repeat-element@^1.1.2: - version "1.1.3" - resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce" - integrity sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g== - -repeat-string@^1.6.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" - integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= - -repeating@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" - integrity sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo= - dependencies: - is-finite "^1.0.0" - -replaceall@^0.1.6: - version "0.1.6" - resolved "https://registry.yarnpkg.com/replaceall/-/replaceall-0.1.6.tgz#81d81ac7aeb72d7f5c4942adf2697a3220688d8e" - integrity sha1-gdgax663LX9cSUKt8ml6MiBojY4= - -request-ip@2.1.3, request-ip@^2.1.3: - version "2.1.3" - resolved "https://registry.yarnpkg.com/request-ip/-/request-ip-2.1.3.tgz#99ab2bafdeaf2002626e28083cb10597511d9e14" - integrity sha512-J3qdE/IhVM3BXkwMIVO4yFrvhJlU3H7JH16+6yHucadT4fePnR8dyh+vEs6FIx0S2x5TCt2ptiPfHcn0sqhbYQ== - dependencies: - is_js "^0.9.0" - -request-promise-core@1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.3.tgz#e9a3c081b51380dfea677336061fea879a829ee9" - integrity sha512-QIs2+ArIGQVp5ZYbWD5ZLCY29D5CfWizP8eWnm8FoGD1TX61veauETVQbrV60662V0oFBkrDOuaBI8XgtuyYAQ== - dependencies: - lodash "^4.17.15" - -request-promise-native@^1.0.5, request-promise-native@^1.0.8: - version "1.0.8" - resolved "https://registry.yarnpkg.com/request-promise-native/-/request-promise-native-1.0.8.tgz#a455b960b826e44e2bf8999af64dff2bfe58cb36" - integrity sha512-dapwLGqkHtwL5AEbfenuzjTYg35Jd6KPytsC2/TLkVMz8rm+tNt72MGUWT1RP/aYawMpN6HqbNGBQaRcBtjQMQ== - dependencies: - request-promise-core "1.1.3" - stealthy-require "^1.1.1" - tough-cookie "^2.3.3" - -request-promise@^4.2.5: - version "4.2.5" - resolved "https://registry.yarnpkg.com/request-promise/-/request-promise-4.2.5.tgz#186222c59ae512f3497dfe4d75a9c8461bd0053c" - integrity sha512-ZgnepCykFdmpq86fKGwqntyTiUrHycALuGggpyCZwMvGaZWgxW6yagT0FHkgo5LzYvOaCNvxYwWYIjevSH1EDg== - dependencies: - bluebird "^3.5.0" - request-promise-core "1.1.3" - stealthy-require "^1.1.1" - tough-cookie "^2.3.3" - -request@2.88.2, request@^2.87.0, request@^2.88.0, request@^2.88.2: - version "2.88.2" - resolved "https://registry.yarnpkg.com/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3" - integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw== - dependencies: - aws-sign2 "~0.7.0" - aws4 "^1.8.0" - caseless "~0.12.0" - combined-stream "~1.0.6" - extend "~3.0.2" - forever-agent "~0.6.1" - form-data "~2.3.2" - har-validator "~5.1.3" - http-signature "~1.2.0" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.19" - oauth-sign "~0.9.0" - performance-now "^2.1.0" - qs "~6.5.2" - safe-buffer "^5.1.2" - tough-cookie "~2.5.0" - tunnel-agent "^0.6.0" - uuid "^3.3.2" - -require-directory@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" - integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= - -require-main-filename@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" - integrity sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE= - -require-main-filename@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" - integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== - -require_optional@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/require_optional/-/require_optional-1.0.1.tgz#4cf35a4247f64ca3df8c2ef208cc494b1ca8fc2e" - integrity sha512-qhM/y57enGWHAe3v/NcwML6a3/vfESLe/sGM2dII+gEO0BpKRUkWZow/tyloNqJyN6kXSl3RyyM8Ll5D/sJP8g== - dependencies: - resolve-from "^2.0.0" - semver "^5.1.0" - -requires-port@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" - integrity sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8= - -resolve-cwd@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-2.0.0.tgz#00a9f7387556e27038eae232caa372a6a59b665a" - integrity sha1-AKn3OHVW4nA46uIyyqNypqWbZlo= - dependencies: - resolve-from "^3.0.0" - -resolve-cwd@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d" - integrity sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg== - dependencies: - resolve-from "^5.0.0" - -resolve-from@5.0.0, resolve-from@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" - integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== - -resolve-from@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-2.0.0.tgz#9480ab20e94ffa1d9e80a804c7ea147611966b57" - integrity sha1-lICrIOlP+h2egKgEx+oUdhGWa1c= - -resolve-from@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" - integrity sha1-six699nWiBvItuZTM17rywoYh0g= - -resolve-from@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" - integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== - -resolve-pathname@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/resolve-pathname/-/resolve-pathname-3.0.0.tgz#99d02224d3cf263689becbb393bc560313025dcd" - integrity sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng== - -resolve-url-loader@3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/resolve-url-loader/-/resolve-url-loader-3.1.1.tgz#28931895fa1eab9be0647d3b2958c100ae3c0bf0" - integrity sha512-K1N5xUjj7v0l2j/3Sgs5b8CjrrgtC70SmdCuZiJ8tSyb5J+uk3FoeZ4b7yTnH6j7ngI+Bc5bldHJIa8hYdu2gQ== - dependencies: - adjust-sourcemap-loader "2.0.0" - camelcase "5.3.1" - compose-function "3.0.3" - convert-source-map "1.7.0" - es6-iterator "2.0.3" - loader-utils "1.2.3" - postcss "7.0.21" - rework "1.0.1" - rework-visit "1.0.0" - source-map "0.6.1" - -resolve-url@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" - integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= + version: 1.2.13 + resolution: "fsevents@npm:1.2.13" + dependencies: + bindings: ^1.5.0 + nan: ^2.12.1 + checksum: e70509558b5f49ce9dfacb8f9e2848c6e6751a61966027789561145a9c4ae9ba4c6b28b531bc8b4ae52fdd2d4c90a3bf314e6794717e51838b27910bb41ce588 + languageName: node + linkType: hard + +"fsevents@patch:fsevents@2.1.2#builtin, fsevents@patch:fsevents@^2.1.2#builtin, fsevents@patch:fsevents@~2.1.2#builtin": + version: 2.1.2 + resolution: "fsevents@patch:fsevents@npm%3A2.1.2#builtin::version=2.1.2&hash=495457" + dependencies: + node-gyp: latest + checksum: 1d1501fde92a2c1ff0a134fe2db97a10916ed83321c8604998441a2cab4f5343040cd60ba64a6a06e3e321778139178c4b4a565eaa05b9cf7e16b511cdf9dcab + languageName: node + linkType: hard + +"fsevents@patch:fsevents@^1.2.7#builtin": + version: 1.2.13 + resolution: "fsevents@patch:fsevents@npm%3A1.2.13#builtin::version=1.2.13&hash=495457" + dependencies: + bindings: ^1.5.0 + nan: ^2.12.1 + checksum: 508a7e7e1e365236a7a0478392827145ba05c0181b1928b73b20c1a5212d15f6529735db897d617d7b0b051248c5720160f74c113bd727fc02de4f6cf885e1ff + languageName: node + linkType: hard + +"function-bind@npm:^1.1.1": + version: 1.1.1 + resolution: "function-bind@npm:1.1.1" + checksum: ffad86e7d2010ba179aaa6a3987d2cc0ed48fa92d27f1ed84bfa06d14f77deeed5bfbae7f00bdebc0c54218392cab2b18ecc080e2c72f592431927b87a27d42b + languageName: node + linkType: hard + +"functional-red-black-tree@npm:^1.0.1": + version: 1.0.1 + resolution: "functional-red-black-tree@npm:1.0.1" + checksum: 477ecaf62d4f8d788876099b35ed4b97586b331e729d2d28d0df96b598863d21c18b8a45a6cbecb6c2bf7f5e5ef1e82a053570583ef9a0ff8336683ab42b8d14 + languageName: node + linkType: hard + +"gauge@npm:~2.7.3": + version: 2.7.4 + resolution: "gauge@npm:2.7.4" + 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 + checksum: b136dbeb8e40acaaddab6c71c9f34d3c9aa104efc538c8c0ddcd74b25efb8daeb8dca24a9b30626b477d66beccd3dee8dd31e25eb4c7c97ec58a3f1a82914be1 + languageName: node + linkType: hard + +"genfun@npm:^5.0.0": + version: 5.0.0 + resolution: "genfun@npm:5.0.0" + checksum: b127fa4244490537e254d12e4348ba66b34b03d7722943486f4edc5642c5cd3ed461793a699f472be942275f5227631e760e6e90074396709bfadd72a600524c + languageName: node + linkType: hard + +"gensync@npm:^1.0.0-beta.1": + version: 1.0.0-beta.1 + resolution: "gensync@npm:1.0.0-beta.1" + checksum: 3d14f7c34fc903dd52c36d0879de2c4afde8315edccd630e97919c365819b32c06d98770ef87f7ba45686ee5d2bd5818354920187659b42828319f7cc3352fdb + languageName: node + linkType: hard + +"get-caller-file@npm:^1.0.1": + version: 1.0.3 + resolution: "get-caller-file@npm:1.0.3" + checksum: 282a3d15e79c44203873a8d5c7d8492af9e6b2c0aeccfaf63f0a853916ece9d4456e12d92c1efad01b5f8c73188a1c4d6fe8b68d4c899b753a1810ac841f6672 + languageName: node + linkType: hard + +"get-caller-file@npm:^2.0.1": + version: 2.0.5 + resolution: "get-caller-file@npm:2.0.5" + checksum: 9dd9e1e2591039ee4c38c897365b904f66f1e650a8c1cb7b7db8ce667fa63e88cc8b13282b74df9d93de481114b3304a0487880d31cd926dfda6efe71455855d + languageName: node + linkType: hard + +"get-own-enumerable-property-symbols@npm:^3.0.0": + version: 3.0.2 + resolution: "get-own-enumerable-property-symbols@npm:3.0.2" + checksum: 23f13946c768d9803a8e072ba13a4250528ced6bd5af4b4b31306eb197281f01a6426936b24b16725ff0e55f9097475296e4bcdb6d33455989683c3d385079ce + languageName: node + linkType: hard + +"get-package-type@npm:^0.1.0": + version: 0.1.0 + resolution: "get-package-type@npm:0.1.0" + checksum: a5b8beaf68d8bcdb507e23b3d2b6458e54b9061e84e2a8a94b846c8e1d794beb47fdcbda895da16ae59225bb3ea1608c0719e4f986e8a987ec2f228eaf00d78b + languageName: node + linkType: hard + +"get-pkg-repo@npm:^1.0.0": + version: 1.4.0 + resolution: "get-pkg-repo@npm:1.4.0" + dependencies: + hosted-git-info: ^2.1.4 + meow: ^3.3.0 + normalize-package-data: ^2.3.0 + parse-github-repo-url: ^1.3.0 + through2: ^2.0.0 + bin: + get-pkg-repo: cli.js + checksum: e3f47ce2079263f7d6901c166b934f186c286e1ea4a196acdd0f6b7e5420d7a4955f1f5032d735b124025a8b49db301907433b82a467c9b24e2df7265d4b003e + languageName: node + linkType: hard + +"get-port@npm:^4.2.0": + version: 4.2.0 + resolution: "get-port@npm:4.2.0" + checksum: a87cf447bbcf04507a3a2ddf5d8369b2addad34a41fcaf165811383065c407cccfcfd820773ef9640967d007a39288a850f5023bb0158facf29d72896447002d + languageName: node + linkType: hard + +"get-stdin@npm:^4.0.1": + version: 4.0.1 + resolution: "get-stdin@npm:4.0.1" + checksum: ba122b05691e29aa1c93f9dfe76671c23b311e5f299c4205c030c00a656045fcf56d2bb5a924b6cd576f278563643b6689b50aa54fc87abcdc2e6e8eda09920e + languageName: node + linkType: hard + +"get-stdin@npm:^6.0.0": + version: 6.0.0 + resolution: "get-stdin@npm:6.0.0" + checksum: b51d664838aef7f8353dc57371ce59cea54d8d584fec015a9d89d24561e95b97806d5b5ba120bc81574c9ed63cb3e210176ffa0ff9263c7e7ba4d56d0fe54913 + languageName: node + linkType: hard + +"get-stream@npm:^4.0.0, get-stream@npm:^4.1.0": + version: 4.1.0 + resolution: "get-stream@npm:4.1.0" + dependencies: + pump: ^3.0.0 + checksum: f41bb3c74de09d1dbe1e9d0b6d12520875d99b7ecd32c71ee21eea26d32ca74110e2406922ca64ed8cd6f10076c5f59e4fd128f10cc292eae3b669379e5f18ed + languageName: node + linkType: hard + +"get-stream@npm:^5.0.0, get-stream@npm:^5.1.0": + version: 5.2.0 + resolution: "get-stream@npm:5.2.0" + dependencies: + pump: ^3.0.0 + checksum: c71c5625f4573a33823371da253b4183df6bdb28cb678d03bab9b5f91626d92d6f3f5ae2404c5efdc1248fbb82204e4dae4283c7ff3cc14e505754f9f748f217 + languageName: node + linkType: hard + +"get-value@npm:^2.0.3, get-value@npm:^2.0.6": + version: 2.0.6 + resolution: "get-value@npm:2.0.6" + checksum: f08da3262718e0f2617703cc99ecd0ddb4cca1541b0022118f898824c99157778e044c802160688dc184b17e5a894d11c5771aaadc376c68cdf66bdbc25ff865 + languageName: node + linkType: hard + +"getpass@npm:^0.1.1": + version: 0.1.7 + resolution: "getpass@npm:0.1.7" + dependencies: + assert-plus: ^1.0.0 + checksum: 2650725bc6939616da8432e5351ca87d8b29421bb8dc19c21bad2c37cd337d2a50d36fcc398ce0c16a075f6079afe114131780dca7e2f4b96063e53e7d28fd7a + languageName: node + linkType: hard + +"git-raw-commits@npm:2.0.0": + version: 2.0.0 + resolution: "git-raw-commits@npm:2.0.0" + dependencies: + dargs: ^4.0.1 + lodash.template: ^4.0.2 + meow: ^4.0.0 + split2: ^2.0.0 + through2: ^2.0.0 + bin: + git-raw-commits: cli.js + checksum: ea32f86d3e0f6be83a1f53c86b9c2fa63a996193f6bc396f1dd91e0a89fb2f95d356c7207755d5d3d56a932e243f2478da21a16d1269806de468d60888e800d1 + languageName: node + linkType: hard + +"git-remote-origin-url@npm:^2.0.0": + version: 2.0.0 + resolution: "git-remote-origin-url@npm:2.0.0" + dependencies: + gitconfiglocal: ^1.0.0 + pify: ^2.3.0 + checksum: 4faec6028931fb8e7cc33716f115f276213e5e73e6af424ce10b64372f20eeb525625f6ab83227038cd50c0d2300f6ccf5b73d208f4136a3108b3414b875f8ff + languageName: node + linkType: hard + +"git-semver-tags@npm:^2.0.3": + version: 2.0.3 + resolution: "git-semver-tags@npm:2.0.3" + dependencies: + meow: ^4.0.0 + semver: ^6.0.0 + bin: + git-semver-tags: cli.js + checksum: b07606b0acf973d3b7c03790559c7dad01acc9c017232f8ce8ec7a76b4ddc5d5bcaa8ffd7651b3179a5b193a23a3fb6c6cbbcaaa6b3ee5d0fef87e76d084d90d + languageName: node + linkType: hard + +"git-semver-tags@npm:^4.0.0": + version: 4.0.0 + resolution: "git-semver-tags@npm:4.0.0" + dependencies: + meow: ^7.0.0 + semver: ^6.0.0 + bin: + git-semver-tags: cli.js + checksum: 0eb1326eb75824c5c70056a102780ef924ed552b93736d5b876863c63cbea25366155dace9ad75502fba7ea97c8d450c5d32323529ec5cde2adb00c070f7a292 + languageName: node + linkType: hard + +"git-up@npm:^4.0.0": + version: 4.0.2 + resolution: "git-up@npm:4.0.2" + dependencies: + is-ssh: ^1.3.0 + parse-url: ^5.0.0 + checksum: 1ccbc336df7c0c6cc9937f9bf90739f6546a23d89bbb81b276c664ef95d0c2d3310896744107fc18b289d35950a2b15f8f695d1212a4bd402604b049d6518713 + languageName: node + linkType: hard + +"git-url-parse@npm:^11.1.2": + version: 11.1.3 + resolution: "git-url-parse@npm:11.1.3" + dependencies: + git-up: ^4.0.0 + checksum: c9f06eeb3fc4a5a89e1045fb9d26be314863f5025d7c6ccbd6aa3d8c6ddcb6fa43e7f1f67d05fb4cfaa0a89fd7c54a65bcd55098f474304ac7708648a9b848af + languageName: node + linkType: hard + +"gitconfiglocal@npm:^1.0.0": + version: 1.0.0 + resolution: "gitconfiglocal@npm:1.0.0" + dependencies: + ini: ^1.3.2 + checksum: ef296938992352fe55ef67c4ede360a194ef501cf29a53b2cbc73d30a37c76259192ce6a20d7e8fe0711fe4f67fad713adb75a17ae90795bd159a8b4f10f8fc0 + languageName: node + linkType: hard + +"github-slugger@npm:^1.3.0": + version: 1.3.0 + resolution: "github-slugger@npm:1.3.0" + dependencies: + emoji-regex: ">=6.0.0 <=6.1.1" + checksum: 1f5961777b75d2ce2df5ae8d16a1eba49145a9896c5808341ca4100894631a4182ab010dea260a8a22855ea89d383f61412507dd34977a67b3a641168af19e10 + languageName: node + linkType: hard + +"glob-parent@npm:^3.1.0": + version: 3.1.0 + resolution: "glob-parent@npm:3.1.0" + dependencies: + is-glob: ^3.1.0 + path-dirname: ^1.0.0 + checksum: 2827ec4405295b660d5ec3e400d84d548a22fc38c3de8fb4586258248bb24afc4515f377935fd80b8397debeb56ffe0d2f4e91233e3a1377fe0d1ddbceb605fc + languageName: node + linkType: hard + +"glob-parent@npm:^5.0.0, glob-parent@npm:^5.1.0, glob-parent@npm:~5.1.0": + version: 5.1.1 + resolution: "glob-parent@npm:5.1.1" + dependencies: + is-glob: ^4.0.1 + checksum: 2af6e196fba4071fb07ba261366e446ba2b320e6db0a2069cf8e12117c5811abc6721f08546148048882d01120df47e56aa5a965517a6e5ba19bfeb792655119 + languageName: node + linkType: hard + +"glob-to-regexp@npm:^0.3.0": + version: 0.3.0 + resolution: "glob-to-regexp@npm:0.3.0" + checksum: 9e6e3f1170a223617ec5f26a59781acbf7ce2ebd998845517f10f8b405a0f35a073b88e3bd96e464ecd054e2b31262e4f0c8916a2f6fd9b3c5bb1404f955294e + languageName: node + linkType: hard + +"glob@npm:7.1.6, glob@npm:^7.0.0, glob@npm:^7.0.3, glob@npm:^7.1.1, glob@npm:^7.1.2, glob@npm:^7.1.3, glob@npm:^7.1.4, glob@npm:^7.1.6": + version: 7.1.6 + resolution: "glob@npm:7.1.6" + 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 + checksum: 789977b52432865bd63846da5c75a6efc2c56abdc0cb5ffcdb8e91eeb67a58fa5594c1195d18b2b4aff99675b0739ed6bd61024b26562e0cca18c8f993efdc82 + languageName: node + linkType: hard + +"global-dirs@npm:^2.0.1": + version: 2.0.1 + resolution: "global-dirs@npm:2.0.1" + dependencies: + ini: ^1.3.5 + checksum: 8dfdc04e846b748b6e1278e0db1827e968ae585468f5d1847fc5223a69a3d7920107dae0c569431f60bc490104b0b66f072a14728aec6dd6987134d362cb63cb + languageName: node + linkType: hard + +"global-modules@npm:2.0.0": + version: 2.0.0 + resolution: "global-modules@npm:2.0.0" + dependencies: + global-prefix: ^3.0.0 + checksum: 27e41b03a8d340637806ae30540b934f2fd1f3f3d1d73b86ab8a622c972a69faa0f63473325318af5a5bd9d429d76fb1f1c9445a6e8797ec01de307f3876cd42 + languageName: node + linkType: hard + +"global-prefix@npm:^3.0.0": + version: 3.0.0 + resolution: "global-prefix@npm:3.0.0" + dependencies: + ini: ^1.3.5 + kind-of: ^6.0.2 + which: ^1.3.1 + checksum: 5043a8455af20dd2185705caac446c8e8176638cbd364dcf288f41f4a07f2ef77cdeb5203916e7bd8b2884995d725a0b422d3483117cac796612ba61ea3d116e + languageName: node + linkType: hard + +"globals@npm:^11.1.0": + version: 11.12.0 + resolution: "globals@npm:11.12.0" + checksum: 2563d3306a7e646fd9ec484b0ca29bf8847d9dc6ebbe86026f11e31bda04f420f6536c2decbd4cb96350379801d2cce352ab373c40be8b024324775b31f882f9 + languageName: node + linkType: hard + +"globals@npm:^12.1.0": + version: 12.4.0 + resolution: "globals@npm:12.4.0" + dependencies: + type-fest: ^0.8.1 + checksum: 0b9764bdeab0bc9762dea8954a0d4c5db029420bd8bf693df9098ce7e045ccaf9b2d259185396fd048b051d42fdc8dc7ab02af62e3dbeb2324a78a05aac8d33c + languageName: node + linkType: hard + +"globby@npm:11.0.1": + version: 11.0.1 + resolution: "globby@npm:11.0.1" + 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 + checksum: e7239e9e468c3692aec31dc97b5efc13dd21edf38820baeda98118ade39f475c4ff9e7610859eb4a3c75277ca2616e371265fec3c626aba5db4335bc41c59ac7 + languageName: node + linkType: hard + +"globby@npm:8.0.2": + version: 8.0.2 + resolution: "globby@npm:8.0.2" + dependencies: + array-union: ^1.0.1 + dir-glob: 2.0.0 + fast-glob: ^2.0.2 + glob: ^7.1.2 + ignore: ^3.3.5 + pify: ^3.0.0 + slash: ^1.0.0 + checksum: de3e13ccbb64f63bb0a3c8ddb3d5bd91f1f73665e2b325f8b47f1721c670e062d0a921abaa2d77c803d8ec793c3888a5503177751d372fb62fab1d47f4166f3e + languageName: node + linkType: hard + +"globby@npm:^10.0.1": + version: 10.0.2 + resolution: "globby@npm:10.0.2" + dependencies: + "@types/glob": ^7.1.1 + array-union: ^2.1.0 + dir-glob: ^3.0.1 + fast-glob: ^3.0.3 + glob: ^7.1.3 + ignore: ^5.1.1 + merge2: ^1.2.3 + slash: ^3.0.0 + checksum: 53924c2b46f104d99a6b15da92b9f9f1e9f004bce745fdf56cf985afd615897bd6fd8fe01303f5758943e643c0885e8abaae0b5a596c13523c9431bf071c3f23 + languageName: node + linkType: hard + +"globby@npm:^6.1.0": + version: 6.1.0 + resolution: "globby@npm:6.1.0" + dependencies: + array-union: ^1.0.1 + glob: ^7.0.3 + object-assign: ^4.0.1 + pify: ^2.0.0 + pinkie-promise: ^2.0.0 + checksum: 7acac933247f203624c502e6db54995d355ae2ce618be40a6a125c73bac9fa1bb775cf2b0959d92807605534f7b29cf711bc354febb8a6dc2ecbaa1cbf59efa5 + languageName: node + linkType: hard + +"globby@npm:^7.1.1": + version: 7.1.1 + resolution: "globby@npm:7.1.1" + dependencies: + array-union: ^1.0.1 + dir-glob: ^2.0.0 + glob: ^7.1.2 + ignore: ^3.3.5 + pify: ^3.0.0 + slash: ^1.0.0 + checksum: 448df8785eaf29b5a065b982da928eee2b865cd7be2e45dcbb614538a342d140fced4884f7972bbbe9d28d9b525cb0453753232b8d1d6e9066e7ffd00c675eaa + languageName: node + linkType: hard + +"globby@npm:^9.2.0": + version: 9.2.0 + resolution: "globby@npm:9.2.0" + dependencies: + "@types/glob": ^7.1.1 + array-union: ^1.0.2 + dir-glob: ^2.2.2 + fast-glob: ^2.2.6 + glob: ^7.1.3 + ignore: ^4.0.3 + pify: ^4.0.1 + slash: ^2.0.0 + checksum: af02094ec14d269e61b1100918f8d7ea12e04b4acad735babdb400d93d62810caa5fb90b5506b7251f99c1fe677f02985ddab20953ded841b0f553a8674456e3 + languageName: node + linkType: hard + +"good-listener@npm:^1.2.2": + version: 1.2.2 + resolution: "good-listener@npm:1.2.2" + dependencies: + delegate: ^3.1.2 + checksum: 640a1627e528ceb3337595a8020f44d09455f284c18c765eaf9ce5dcdf1799810e7b11ca2b61582a5a4db20aad0b7e6b820235864822d84df541d74383bcd01c + languageName: node + linkType: hard + +"got@npm:^9.6.0": + version: 9.6.0 + resolution: "got@npm:9.6.0" + dependencies: + "@sindresorhus/is": ^0.14.0 + "@szmarczak/http-timer": ^1.1.2 + cacheable-request: ^6.0.0 + decompress-response: ^3.3.0 + duplexer3: ^0.1.4 + get-stream: ^4.1.0 + lowercase-keys: ^1.0.1 + mimic-response: ^1.0.1 + p-cancelable: ^1.0.0 + to-readable-stream: ^1.0.0 + url-parse-lax: ^3.0.0 + checksum: 4cfb862eb7e2d023f486efbd9ad5ab199ea44f957dc72be9518bf54d832ad4281ef3b63eac4d861b189690c3b7674eef3e1cb4f41285a83fa43293431ab879bd + languageName: node + linkType: hard + +"graceful-fs@npm:^4.1.11, graceful-fs@npm:^4.1.15, graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0, graceful-fs@npm:^4.2.2, graceful-fs@npm:^4.2.3, graceful-fs@npm:^4.2.4": + version: 4.2.4 + resolution: "graceful-fs@npm:4.2.4" + checksum: d095ee4dc6eacc76814cd52d5d185b860119378a6fd4888e7d4e94983095c54d4f6369942a5e3d759cdbdd4e3ee7eaeb27a39ff938c6ee4610894fd9de46b6cb + languageName: node + linkType: hard + +"graphql-config@npm:^3.0.2": + version: 3.0.3 + resolution: "graphql-config@npm:3.0.3" + dependencies: + "@graphql-tools/graphql-file-loader": ^6.0.0 + "@graphql-tools/json-file-loader": ^6.0.0 + "@graphql-tools/load": ^6.0.0 + "@graphql-tools/merge": ^6.0.0 + "@graphql-tools/url-loader": ^6.0.0 + "@graphql-tools/utils": ^6.0.0 + cosmiconfig: 6.0.0 + minimatch: 3.0.4 + string-env-interpolation: 1.0.1 + tslib: ^2.0.0 + peerDependencies: + graphql: ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: 818f86c30e3438f29ff905f6ee7e9f1333b0b250d30625592ed45ac90d7850745fb55a809684ec3868aeb0009a1ab90bf99032ea5d55dba97f308a072417705a + languageName: node + linkType: hard + +"graphql-extensions@npm:^0.12.4": + version: 0.12.4 + resolution: "graphql-extensions@npm:0.12.4" + dependencies: + "@apollographql/apollo-tools": ^0.4.3 + apollo-server-env: ^2.4.5 + apollo-server-types: ^0.5.1 + peerDependencies: + graphql: ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: 2587b0c6030086b977234df9fd4a05ec13c27ca1299a5432f749bb450d3fba8b55caadfb179f0d78429f4de8536f789f844f56666d7f7a93786ab89a1d384221 + languageName: node + linkType: hard + +"graphql-request@npm:^2.0.0": + version: 2.0.0 + resolution: "graphql-request@npm:2.0.0" + checksum: 6c546ec4dc81c823be43eb5a9a6ff94fda5d0a06a3b381fe0796f82c08fae59ff4164c44744280fc5cdf0aba32cf5202ff640a15ef5f9a4bada275514e66b6b1 + languageName: node + linkType: hard + +"graphql-subscriptions@npm:^1.0.0": + version: 1.1.0 + resolution: "graphql-subscriptions@npm:1.1.0" + dependencies: + iterall: ^1.2.1 + peerDependencies: + graphql: ^0.10.5 || ^0.11.3 || ^0.12.0 || ^0.13.0 || ^14.0.0 + checksum: 3e10eebf446ebc3f4a2ec9c5798495234cbb446ad4b37e292c0419249366795168c3dc46fa981dd46f11da7c470cab4dc4e3b7ee98831ccd57e71d3d0d9567b8 + languageName: node + linkType: hard + +"graphql-tag@npm:2.10.4": + version: 2.10.4 + resolution: "graphql-tag@npm:2.10.4" + peerDependencies: + graphql: ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: 19c20d48c290f95eb367dadbaebe0c1e1b23f468135948addc21e103f2b2a6d14de7d0abb2a6c56e1a96ddc914d5a394a430a94048d589d2e95eae50acffbb50 + languageName: node + linkType: hard + +"graphql-tag@npm:2.11.0, graphql-tag@npm:^2.11.0, graphql-tag@npm:^2.9.2": + version: 2.11.0 + resolution: "graphql-tag@npm:2.11.0" + peerDependencies: + graphql: ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: 400355590180cce2f39df5c599cad20ee982bb7e4a63ad70857aa0fe2e82e3ef6233a4db2b80a03e6dfa84bf3ecb13dc2947936eaf31753c94876e22be45ea78 + languageName: node + linkType: hard + +"graphql-tools@npm:5.0.0, graphql-tools@npm:^5.0.0": + version: 5.0.0 + resolution: "graphql-tools@npm:5.0.0" + dependencies: + apollo-link: ^1.2.14 + apollo-upload-client: ^13.0.0 + deprecated-decorator: ^0.1.6 + form-data: ^3.0.0 + iterall: ^1.3.0 + node-fetch: ^2.6.0 + tslib: ^1.11.1 + uuid: ^7.0.3 + peerDependencies: + graphql: ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: 6c51826578b07bffef4ef7a5404b60ab172b46c15128f8d6a0c9797413bac607ab7ad9cc0184c17014313e7073823dbfd30138e8b40fc226a574d3a9dd597cf1 + languageName: node + linkType: hard + +"graphql-tools@npm:^4.0.0": + version: 4.0.8 + resolution: "graphql-tools@npm:4.0.8" + dependencies: + apollo-link: ^1.2.14 + apollo-utilities: ^1.0.1 + deprecated-decorator: ^0.1.6 + iterall: ^1.1.3 + uuid: ^3.1.0 + peerDependencies: + graphql: ^0.13.0 || ^14.0.0 || ^15.0.0 + checksum: 93f62ea9b1d66c5a9a5b43ef510be462b4d64e0e469e9d49b42f9b1343a445902096170f6c58b35988495ae628fd456666254cb2cbf14ea2814bb053c9c84057 + languageName: node + linkType: hard + +"graphql-upload@npm:^8.0.2": + version: 8.1.0 + resolution: "graphql-upload@npm:8.1.0" + dependencies: + busboy: ^0.3.1 + fs-capacitor: ^2.0.4 + http-errors: ^1.7.3 + object-path: ^0.11.4 + peerDependencies: + graphql: 0.13.1 - 14 + checksum: e5fa68b3ebcc74d54bf9e6e413456c3e89a9ee7bb6c203fb1baa1cb8284df15936a3c8635b77ea7d3b80284352f9ed600738e318bb7d7d890759bdd6dcfda277 + languageName: node + linkType: hard + +"graphql@npm:14.6.0, graphql@npm:^14.5.3": + version: 14.6.0 + resolution: "graphql@npm:14.6.0" + dependencies: + iterall: ^1.2.2 + checksum: 24cab2758cea2ce592c59af28cac0fc80d2f2eac2f2441ce0152ce3c5a3a2416394aadf71b2d8db58f46c44ca3d20747eb168f58502f6eadafab0f11dea13791 + languageName: node + linkType: hard + +"gray-matter@npm:^4.0.2": + version: 4.0.2 + resolution: "gray-matter@npm:4.0.2" + dependencies: + js-yaml: ^3.11.0 + kind-of: ^6.0.2 + section-matter: ^1.0.0 + strip-bom-string: ^1.0.0 + checksum: a4e24f74db6e7827012bb82633330d25b7a220676e4438c6213c145e4b7412872f6ce0fc19d01991331222b6c90dbd6243c937700776ed43b956728f08b94f23 + languageName: node + linkType: hard + +"growly@npm:^1.3.0": + version: 1.3.0 + resolution: "growly@npm:1.3.0" + checksum: c87f7e8c785cac6ee60719c9d62f7d790a85dafa13d62c4667664e3a21ee771f5fd19df3f374d2f7bdf297b8f687cf70e19bb066aba4832e6f6caa5190812578 + languageName: node + linkType: hard + +"gud@npm:^1.0.0": + version: 1.0.0 + resolution: "gud@npm:1.0.0" + checksum: 08be6bf30eb713b0e115a4676418b3805b739703956fd861710f59ce355c047102954e4d79172b180912d06794e8d94f702e9367ac6843c2fae40c8c726a4907 + languageName: node + linkType: hard + +"gzip-size@npm:5.1.1, gzip-size@npm:^5.0.0": + version: 5.1.1 + resolution: "gzip-size@npm:5.1.1" + dependencies: + duplexer: ^0.1.1 + pify: ^4.0.1 + checksum: 26729da888e89dd4f7b2d244aca6766d872f2e67b339971ca1cd26f32b4ca95167420b3e79d033f437ab689e25db47cfc228924cfab8baff185ec536b63c5fec + languageName: node + linkType: hard + +"handle-thing@npm:^2.0.0": + version: 2.0.1 + resolution: "handle-thing@npm:2.0.1" + checksum: 7509fca9ebc8c119c8d36a7de19216dfcd120a2f9ac0a7f4e7836549561f728bfe4d86fbe604805c0f4d574c2eed756c54486b9ddc436d0387d8397c7c00a434 + languageName: node + linkType: hard + +"handlebars@npm:^4.7.6": + version: 4.7.6 + resolution: "handlebars@npm:4.7.6" + dependencies: + minimist: ^1.2.5 + neo-async: ^2.6.0 + source-map: ^0.6.1 + uglify-js: ^3.1.4 + wordwrap: ^1.0.0 + dependenciesMeta: + uglify-js: + optional: true + bin: + handlebars: bin/handlebars + checksum: 50276715da3e410f1d485635029b77e09b8c9244d9e49119d5f39ed978a3d44ce94f5d6120efeb707da0ba9dd0cddf140d8d2ac160721d93aa9f4234474ad318 + languageName: node + linkType: hard + +"har-schema@npm:^2.0.0": + version: 2.0.0 + resolution: "har-schema@npm:2.0.0" + checksum: e27ac33a968b8a3b2cc32e53afaec8aa795d08b058ef9b09b3bbce74db7ecadcabf60a6186e3bb901335d2c72bbf9e2af59429d736b5e80dc0edf18b3e1c5860 + languageName: node + linkType: hard + +"har-validator@npm:~5.1.3": + version: 5.1.5 + resolution: "har-validator@npm:5.1.5" + dependencies: + ajv: ^6.12.3 + har-schema: ^2.0.0 + checksum: 01b905cdaa7632c926a962c8127a77b98387935ef3aa0b44dae871eae2592ba6da948a3bdbb3eeceb90fa1599300f16716e50147965a7ea7c4e7c4e57ac69727 + languageName: node + linkType: hard + +"hard-rejection@npm:^2.1.0": + version: 2.1.0 + resolution: "hard-rejection@npm:2.1.0" + checksum: 27bc09d185ca8131356f0f3391ae5965c5ed8ec9eddf697d604e33c76eb995831e60ac636e5e5839587d0499f29719171c19d0af5fa12e9e7f7c0a1689e22b6f + languageName: node + linkType: hard + +"harmony-reflect@npm:^1.4.6": + version: 1.6.1 + resolution: "harmony-reflect@npm:1.6.1" + checksum: cd8ee880be124d0f634e5f58027c2e6c9f600c2874a1e2481cb7acd369f0df6fb41b496aa3fbf247fb6a4a2de8d70b7587854c652493a6c6c21964ce70573100 + languageName: node + linkType: hard + +"has-ansi@npm:^2.0.0": + version: 2.0.0 + resolution: "has-ansi@npm:2.0.0" + dependencies: + ansi-regex: ^2.0.0 + checksum: c6805f5d01ced45ba247ff2b8c914f401e70aa9086552d8eafbdf6bc0b0e38ea4a3bf1a387d100ff5f07e5854bca96532a01777820a16be2cdf8cf6582091bad + languageName: node + linkType: hard + +"has-flag@npm:^3.0.0": + version: 3.0.0 + resolution: "has-flag@npm:3.0.0" + checksum: 63aade480d27aeedb3b5b63a2e069d47d0006bf182338d662e7941cdc024e68a28418e0efa8dc5df30db9c4ee2407f39e6ea3f16cfbc6b83848b450826a28aa0 + languageName: node + linkType: hard + +"has-flag@npm:^4.0.0": + version: 4.0.0 + resolution: "has-flag@npm:4.0.0" + checksum: 2e5391139d3d287231ccb58659702392f6e3abeac3296fb4721afaff46493f3d9b99a9329ae015dfe973aa206ed5c75f43e86aec0267dce79aa5c2b6e811b3ad + languageName: node + linkType: hard + +"has-symbols@npm:^1.0.0, has-symbols@npm:^1.0.1": + version: 1.0.1 + resolution: "has-symbols@npm:1.0.1" + checksum: 84e2a03ada6f530f0c1ebea64df5932556ac20a4b78998f1f2b5dd0cf736843e8082c488b0ea7f08b9aec72fb6d8b736beed2fd62fac60dcaebfdc0b8d2aa7ac + languageName: node + linkType: hard + +"has-unicode@npm:^2.0.0, has-unicode@npm:^2.0.1": + version: 2.0.1 + resolution: "has-unicode@npm:2.0.1" + checksum: ed3719f95cbd7dada9e3fde6fad113eae6d317bc8e818a2350954914c098ca6eddb203261af2c291c49a14c52f83610becbc7ab8d569bee81261b9c260a435f2 + languageName: node + linkType: hard + +"has-value@npm:^0.3.1": + version: 0.3.1 + resolution: "has-value@npm:0.3.1" + dependencies: + get-value: ^2.0.3 + has-values: ^0.1.4 + isobject: ^2.0.0 + checksum: d78fab4523ad531894a84d840e00ac8041e5958e44a418c56517ac62436b7c827154ab79748b4b7f6aa1358cd7d74f888be52744115c56e6acedc7cb5523e213 + languageName: node + linkType: hard + +"has-value@npm:^1.0.0": + version: 1.0.0 + resolution: "has-value@npm:1.0.0" + dependencies: + get-value: ^2.0.6 + has-values: ^1.0.0 + isobject: ^3.0.0 + checksum: e05422bce9a522e79332cba48ec7c01fb4c4b04b0d030417fdc9e2ea53508479d7efcb3184d4f7a5cf5070a99043836f18962bab25c728362d2abc29ec18b574 + languageName: node + linkType: hard + +"has-values@npm:^0.1.4": + version: 0.1.4 + resolution: "has-values@npm:0.1.4" + checksum: df7ac830e460d399b181203c12cacaeaa1dcf0febceeed78fcfa0a6354879aa6c64c6b1ec049ce1c850a9b545d7a85fecc71741a5b743e0ad5dbd3e9928adff6 + languageName: node + linkType: hard + +"has-values@npm:^1.0.0": + version: 1.0.0 + resolution: "has-values@npm:1.0.0" + dependencies: + is-number: ^3.0.0 + kind-of: ^4.0.0 + checksum: b69c45d5132bc29d54a9a28e5ee53a35ab4109f3335a035c37e3511fe94234e848169e2e7d583f4fa889a92646f3018287361d47d9f636c0e2880c0856c79a58 + languageName: node + linkType: hard + +"has-yarn@npm:^2.1.0": + version: 2.1.0 + resolution: "has-yarn@npm:2.1.0" + checksum: 105682f263a3437972c75594cdda237ce8454f67cae37a36a507701f300dade0460231dabbe873a7df035b7c0a0b3a686c9fcd1eebb29c73ca35753ecae6fb7d + languageName: node + linkType: hard + +"has@npm:^1.0.0, has@npm:^1.0.3": + version: 1.0.3 + resolution: "has@npm:1.0.3" + dependencies: + function-bind: ^1.1.1 + checksum: c686e15300d41364486c099a9259d9c418022c294244843dcd712c4c286ff839d4f23a25413baa28c4d2c1e828afc2aaab70f685400b391533980223c71fa1ca + languageName: node + linkType: hard + +"hash-base@npm:^3.0.0": + version: 3.1.0 + resolution: "hash-base@npm:3.1.0" + dependencies: + inherits: ^2.0.4 + readable-stream: ^3.6.0 + safe-buffer: ^5.2.0 + checksum: 9f4b0d183daf13f79ef60f117efc7004bb3570de48fe2d3c7d03c546313490decb2dff2b08d71b8a0049a7de4b79eda16096c2a96f33a7f4916e7616bce4dc11 + languageName: node + linkType: hard + +"hash.js@npm:^1.0.0, hash.js@npm:^1.0.3": + version: 1.1.7 + resolution: "hash.js@npm:1.1.7" + dependencies: + inherits: ^2.0.3 + minimalistic-assert: ^1.0.1 + checksum: fceb7fb87e224f4b399212f902d3a34c3ed8512560868b56dde92f617fac9c66b501e583bab2996ed7493be5ab3385e05a69d2209fa6a9144391b22e1c2d245b + languageName: node + linkType: hard + +"hast-to-hyperscript@npm:^9.0.0": + version: 9.0.0 + resolution: "hast-to-hyperscript@npm:9.0.0" + dependencies: + "@types/unist": ^2.0.3 + comma-separated-tokens: ^1.0.0 + property-information: ^5.3.0 + space-separated-tokens: ^1.0.0 + style-to-object: ^0.3.0 + unist-util-is: ^4.0.0 + web-namespaces: ^1.0.0 + checksum: 5eab0013e590a36bfd8166cd7037be4ad69474ec6b6448ec9c1f73763caeb0aa8b792d5c5c637389085b334eccb1b1b222475f8f377e584ef09f68164425bbf7 + languageName: node + linkType: hard + +"hast-util-from-parse5@npm:^5.0.0": + version: 5.0.3 + resolution: "hast-util-from-parse5@npm:5.0.3" + dependencies: + ccount: ^1.0.3 + hastscript: ^5.0.0 + property-information: ^5.0.0 + web-namespaces: ^1.1.2 + xtend: ^4.0.1 + checksum: a427cec361d38d8b0647e9afc05f9173ed0aa9a225441e401ff8c08f762e5e084d335389a0125dc2b74cdfb044a939053e0b79ce61ac41a1dce5b1f10ecae054 + languageName: node + linkType: hard + +"hast-util-from-parse5@npm:^6.0.0": + version: 6.0.0 + resolution: "hast-util-from-parse5@npm:6.0.0" + dependencies: + "@types/parse5": ^5.0.0 + ccount: ^1.0.0 + hastscript: ^5.0.0 + property-information: ^5.0.0 + vfile: ^4.0.0 + web-namespaces: ^1.0.0 + checksum: 99d97f90bd0a6b998896f9275c1dd159e037ae5d64edcde0912c322591f5a87edaa0e79dc98cbb48f6b37c279e2a9b3de697a35b195c3656e842369af6bf45d8 + languageName: node + linkType: hard + +"hast-util-parse-selector@npm:^2.0.0": + version: 2.2.4 + resolution: "hast-util-parse-selector@npm:2.2.4" + checksum: affd2e8d834305c3fe495b499d063fb84c697d467b22e225d7598c24e1b987af5e44957f9af43f6f80074b8e8d34728836f3e348049575016735a8d623c4f947 + languageName: node + linkType: hard + +"hast-util-raw@npm:6.0.0": + version: 6.0.0 + resolution: "hast-util-raw@npm:6.0.0" + dependencies: + "@types/hast": ^2.0.0 + hast-util-from-parse5: ^6.0.0 + hast-util-to-parse5: ^6.0.0 + html-void-elements: ^1.0.0 + parse5: ^6.0.0 + unist-util-position: ^3.0.0 + vfile: ^4.0.0 + web-namespaces: ^1.0.0 + xtend: ^4.0.0 + zwitch: ^1.0.0 + checksum: 86c2f501447d2943c1d5bf97edf379fa20066ef6c45a100fbb9eb588d1f0a723ec18f102c94aff03c7f386ea3774f54e358770e526a315ae47f9dcb1761b857f + languageName: node + linkType: hard + +"hast-util-to-parse5@npm:^6.0.0": + version: 6.0.0 + resolution: "hast-util-to-parse5@npm:6.0.0" + dependencies: + hast-to-hyperscript: ^9.0.0 + property-information: ^5.0.0 + web-namespaces: ^1.0.0 + xtend: ^4.0.0 + zwitch: ^1.0.0 + checksum: b974907c87bfef66b0205f72ba06ca08d3b5eab702b0e60c59d266bf94e33525327d5e159e15c36658e2f0b06467eddf361391b3ef7df78b9ee9214f5ddf04da + languageName: node + linkType: hard + +"hastscript@npm:^5.0.0": + version: 5.1.2 + resolution: "hastscript@npm:5.1.2" + dependencies: + comma-separated-tokens: ^1.0.0 + hast-util-parse-selector: ^2.0.0 + property-information: ^5.0.0 + space-separated-tokens: ^1.0.0 + checksum: 4d2d5b37c1455ef7b9de77043c8388af7f05cfc7ab176160ae9927ae4a684b2768ae971decc7d63ea77c1e3c13aeff5218f9b0477d1842774e7b7a9a097598e8 + languageName: node + linkType: hard + +"he@npm:^1.1.0, he@npm:^1.2.0": + version: 1.2.0 + resolution: "he@npm:1.2.0" + bin: + he: bin/he + checksum: 212122003c20c8c17ac0c83a419b4c8e835411ff6ab9195d053ea6e4a0597cc005b5b8eabcbd57b0b0c0fe676f0049e09315845fff4e051198845491cbba260e + languageName: node + linkType: hard + +"header-case@npm:^2.0.3": + version: 2.0.3 + resolution: "header-case@npm:2.0.3" + dependencies: + capital-case: ^1.0.3 + tslib: ^1.10.0 + checksum: 13440c681db83c41ad67ded7f094c23e14535a54697637585bf049c73fe44443d7561e35aa687b994f6fa737505c7a41256c39df84510dd58ac08c2eb0c1c95c + languageName: node + linkType: hard + +"hex-color-regex@npm:^1.1.0": + version: 1.1.0 + resolution: "hex-color-regex@npm:1.1.0" + checksum: 89899f5f74cdef884e352fe8791018f2f112c338b97f3b486f7d5f4760a9c58181f688eb147937f9f2dd69c976a7296b53d1509c9a0871903eeb26a8382e486c + languageName: node + linkType: hard + +"highlight.js@npm:^10.0.0": + version: 10.1.2 + resolution: "highlight.js@npm:10.1.2" + checksum: 12ad98d6f2b89ff7f46e2f9404bb3f3783c81cc5a98362e89e7f56d9d0315952149561e5f1661073e0bf8528412ce9262a331f27da4e263d122d34daa5473d08 + languageName: node + linkType: hard + +"highlight.js@npm:^9.6.0": + version: 9.18.3 + resolution: "highlight.js@npm:9.18.3" + checksum: b6b518f937ce65779cbebb219f94ed685cdbad142f222a183afa5d0dd24dfb6b1aeaef40087ff74a2ea978c3ae9b814452bfdef685c98971e4b840f306ccdb82 + languageName: node + linkType: hard + +"history@npm:^4.9.0": + version: 4.10.1 + resolution: "history@npm:4.10.1" + dependencies: + "@babel/runtime": ^7.1.2 + loose-envify: ^1.2.0 + resolve-pathname: ^3.0.0 + tiny-invariant: ^1.0.2 + tiny-warning: ^1.0.0 + value-equal: ^1.0.1 + checksum: 3b302b54c08f61f040a265ae9608c6dba88260179b9ddfe542042465ccf79e2ff19e792cb70c6e0240e80bc00b29aad5308d1f277815b1e95662bd5b819c625b + languageName: node + linkType: hard + +"hmac-drbg@npm:^1.0.0": + version: 1.0.1 + resolution: "hmac-drbg@npm:1.0.1" + dependencies: + hash.js: ^1.0.3 + minimalistic-assert: ^1.0.0 + minimalistic-crypto-utils: ^1.0.1 + checksum: 729d5a55bf793619830aca5e62d101dfdb4164fe30c056cdcaecb32b1a69a23aa663d88e876d9d56cb69b1c3d95395ea60b0a715763c461188b37dca3dea930d + languageName: node + linkType: hard + +"hoist-non-react-statics@npm:^3.1.0, hoist-non-react-statics@npm:^3.3.0, hoist-non-react-statics@npm:^3.3.2": + version: 3.3.2 + resolution: "hoist-non-react-statics@npm:3.3.2" + dependencies: + react-is: ^16.7.0 + checksum: d3e3791d6e3a2741ce0ba38e878081dec49247ef22982a990c80941ee1f564ef16cd5a511bcc8c5e54f1ce8205535e0414ca5feea722c0690c80040be7ebf9df + languageName: node + linkType: hard + +"hoopy@npm:^0.1.4": + version: 0.1.4 + resolution: "hoopy@npm:0.1.4" + checksum: 29b8c7e502d159fa4214396a3f90c3b0bd8c614333b6f2dd5510a77587a8aed87abd89ca8df928f31021858adc30586abcd7ab457ec1c1767e99e870e30ab031 + languageName: node + linkType: hard + +"hosted-git-info@npm:^2.1.4, hosted-git-info@npm:^2.7.1": + version: 2.8.8 + resolution: "hosted-git-info@npm:2.8.8" + checksum: 3ecc389dc6ecbd5463fada7e04461e96f3c817fe2f989ca41e9dd3b503745a0bfa26fba405861b2831ca64edc1abc5d2fbc97ee977303f89650dac4fbfdc2d7a + languageName: node + linkType: hard + +"hpack.js@npm:^2.1.6": + version: 2.1.6 + resolution: "hpack.js@npm:2.1.6" + dependencies: + inherits: ^2.0.1 + obuf: ^1.0.0 + readable-stream: ^2.0.1 + wbuf: ^1.1.0 + checksum: a22a28aa318167f29d65994ac28a238356142a3dcbcdcf20b0a87f14a746af7017596c91a895933d79ee68edf0303a4de5e629a2141cb1dbddb2cd9cad07418b + languageName: node + linkType: hard + +"hsl-regex@npm:^1.0.0": + version: 1.0.0 + resolution: "hsl-regex@npm:1.0.0" + checksum: b04a50c6c75fc4035e9e212a2c581dcae64289f0ad45bb010a32dd3899c9a5ac95c4d23507a89027aa7950a8a9241de0e6ad66bc87535f261c0eef4817222a1f + languageName: node + linkType: hard + +"hsla-regex@npm:^1.0.0": + version: 1.0.0 + resolution: "hsla-regex@npm:1.0.0" + checksum: 2460f935b556795a7cadc17978bc4cd90f74aaba05505f7040e7809336c68e757dcdcc2121004a4d926a6f04295cf68a575a81c0fd2d4e7280dc201a98eb2859 + languageName: node + linkType: hard + +"html-comment-regex@npm:^1.1.0": + version: 1.1.2 + resolution: "html-comment-regex@npm:1.1.2" + checksum: f3bf135002dc424aa5e59aa5f7697b4538898ce8af2375a42c4fcb53dbde3d430ec406b9ea59853b6fef7ca6f8de2939f12b285045850a70a757628bd5483cbf + languageName: node + linkType: hard + +"html-encoding-sniffer@npm:^1.0.2": + version: 1.0.2 + resolution: "html-encoding-sniffer@npm:1.0.2" + dependencies: + whatwg-encoding: ^1.0.1 + checksum: fff1462d9845f08315b41a19b3deaeebf465b4abc44c12218ee2be42a4655dec18b8ca4ae2ea72270d564164a3092b9a72701c1c529777e378036a49c4f6bc80 + languageName: node + linkType: hard + +"html-encoding-sniffer@npm:^2.0.1": + version: 2.0.1 + resolution: "html-encoding-sniffer@npm:2.0.1" + dependencies: + whatwg-encoding: ^1.0.5 + checksum: 6f49e83a2e9225ba92c4586701cd21c0cf26c4c1f1a5f330a911c90a792649cc47b5bb3e67e78ba23dfa6b5b9c70af34231f44729b173d52b4ba305467b39042 + languageName: node + linkType: hard + +"html-entities@npm:^1.2.1, html-entities@npm:^1.3.1": + version: 1.3.1 + resolution: "html-entities@npm:1.3.1" + checksum: 53d37e5161230ad7f2c16dd2b54945069d84b5167113eac55e39a8fffed357378afc022d5dc66045b132ea46232cab41aee86e79dd5cd0618e0b78776b9085b5 + languageName: node + linkType: hard + +"html-escaper@npm:^2.0.0": + version: 2.0.2 + resolution: "html-escaper@npm:2.0.2" + checksum: a216ae96fa647155ce31ebf14e45b602eb84ab7b4a99d329d85d855d8a74d54c0c4146ac7eb4ada2761d3e22c067e73d6c66b54faefee37229ac025cfc97a513 + languageName: node + linkType: hard + +"html-minifier-terser@npm:^5.0.1, html-minifier-terser@npm:^5.0.5": + version: 5.1.1 + resolution: "html-minifier-terser@npm:5.1.1" + dependencies: + camel-case: ^4.1.1 + clean-css: ^4.2.3 + commander: ^4.1.1 + he: ^1.2.0 + param-case: ^3.0.3 + relateurl: ^0.2.7 + terser: ^4.6.3 + bin: + html-minifier-terser: cli.js + checksum: d05dea891f5977a35691306b1fb40438cffd6620c2f5a69d7ecb67bfa836af1d36c24978edd1616dc6d27e230561bd756c5f11b3054e6ebf2f8448289e3ca73d + languageName: node + linkType: hard + +"html-tags@npm:^3.1.0": + version: 3.1.0 + resolution: "html-tags@npm:3.1.0" + checksum: 0f87b0f46d6064e5cd705f2accd869b0d28fe251b1260663ad527641497f4a1ed5a0a0a56ac9619c20b57c67862726ec9e62d4de0630bf836e1342e777b299c1 + languageName: node + linkType: hard + +"html-void-elements@npm:^1.0.0": + version: 1.0.5 + resolution: "html-void-elements@npm:1.0.5" + checksum: 62cb426bd3fee67f027b43f994d19003b3df8426d38f820f7fccddf9eba7fca502f6f3ee306432c8ed4e81439764cd45c2f304ea7e9e3374c682a3771e357696 + languageName: node + linkType: hard + +"html-webpack-plugin@npm:4.0.0-beta.11": + version: 4.0.0-beta.11 + resolution: "html-webpack-plugin@npm:4.0.0-beta.11" + dependencies: + html-minifier-terser: ^5.0.1 + loader-utils: ^1.2.3 + lodash: ^4.17.15 + pretty-error: ^2.1.1 + tapable: ^1.1.3 + util.promisify: 1.0.0 + peerDependencies: + webpack: ^4.0.0 + checksum: cefb7fc1c819e888a3721c9eb7a5f4fdafcc7d94a82d3bff06d65d526ee83e61ea34ff6a4478188c72c83dc0aed36132f7e3490031f0b11ea4f990d7d2381372 + languageName: node + linkType: hard + +"html-webpack-plugin@npm:^4.0.4": + version: 4.3.0 + resolution: "html-webpack-plugin@npm:4.3.0" + dependencies: + "@types/html-minifier-terser": ^5.0.0 + "@types/tapable": ^1.0.5 + "@types/webpack": ^4.41.8 + html-minifier-terser: ^5.0.1 + loader-utils: ^1.2.3 + lodash: ^4.17.15 + pretty-error: ^2.1.1 + tapable: ^1.1.3 + util.promisify: 1.0.0 + peerDependencies: + webpack: ">=4.0.0 < 6.0.0" + checksum: 13c23547ac83142f2e23a993a82e6fa6beb21291848a856c09d27e0dae12f5781699ed9c1fe798fb03cf317a6a4dce164d224fd6023640abc167f222b59a0fa0 + languageName: node + linkType: hard + +"htmlparser2@npm:^3.3.0, htmlparser2@npm:^3.9.1": + version: 3.10.1 + resolution: "htmlparser2@npm:3.10.1" + dependencies: + domelementtype: ^1.3.1 + domhandler: ^2.3.0 + domutils: ^1.5.1 + entities: ^1.1.1 + inherits: ^2.0.1 + readable-stream: ^3.1.1 + checksum: 94fa6312e6c378b1c0f1626d3f468f0b25c5dcf6689bfa61fa0002c044c4c77842b5122feb84b501b02539165917febba0ffe754046996c9e8ed77c1bb65e66c + languageName: node + linkType: hard + +"http-cache-semantics@npm:^3.8.1": + version: 3.8.1 + resolution: "http-cache-semantics@npm:3.8.1" + checksum: 715784dc204c31e725f5fc95ccfa49237299e184820b7608e78df04ca1d16441ccc752a00005c283d6936d6b7458abbe2875804f484fe46f8bfd4500e88e7e8e + languageName: node + linkType: hard + +"http-cache-semantics@npm:^4.0.0": + version: 4.1.0 + resolution: "http-cache-semantics@npm:4.1.0" + checksum: 451df9784af2acbe0cc1fd70291285c08ca4a8966ab5ee4d3975e003d1ad4d74c81473086d628f31296b31221966fda8bc5ea1e29dd8f1f33f9fc2b0fdca65ca + languageName: node + linkType: hard + +"http-deceiver@npm:^1.2.7": + version: 1.2.7 + resolution: "http-deceiver@npm:1.2.7" + checksum: d0b10fce2548f9ffda9dc1707224e009ea9c132f3df7df2ba1d293a91c5f21efea618bc3737a21116b427c3d09187649b0158582f9174d2b61cd69bee7939d7d + languageName: node + linkType: hard + +"http-errors@npm:1.7.2, http-errors@npm:~1.7.2": + version: 1.7.2 + resolution: "http-errors@npm:1.7.2" + dependencies: + depd: ~1.1.2 + inherits: 2.0.3 + setprototypeof: 1.1.1 + statuses: ">= 1.5.0 < 2" + toidentifier: 1.0.0 + checksum: 8ce4a4af05a3652c81768a2754ced24b86ff62e7bee147a27b6ef8cde24e7a48f9fbfcb87ec6f67781879b95f1b35d3f8d6378e8555eb7d469ce875f4e184418 + languageName: node + linkType: hard + +"http-errors@npm:^1.7.3": + version: 1.8.0 + resolution: "http-errors@npm:1.8.0" + dependencies: + depd: ~1.1.2 + inherits: 2.0.4 + setprototypeof: 1.2.0 + statuses: ">= 1.5.0 < 2" + toidentifier: 1.0.0 + checksum: 95ad78508b2929923dac83edd7ce513db87c4214df83a6664559810566da73d9a6892ffdcd76738d9ab9d33172b4c7e304436a4031d471569a7344396fea0ecb + languageName: node + linkType: hard + +"http-errors@npm:~1.6.2": + version: 1.6.3 + resolution: "http-errors@npm:1.6.3" + dependencies: + depd: ~1.1.2 + inherits: 2.0.3 + setprototypeof: 1.1.0 + statuses: ">= 1.4.0 < 2" + checksum: 850a3bf69ffc56c5151cea4a31bdf47412b7a6af3ee3f4fc92d3c4d90f8398d8843806f0d81916b310b661eed93722272cf2d41c2cac2fd5d1d1c66d4077942c + languageName: node + linkType: hard + +"http-parser-js@npm:>=0.5.1": + version: 0.5.2 + resolution: "http-parser-js@npm:0.5.2" + checksum: a089b78a37379ca31b645696577e08b43c82cab802f3a1db3338151d68ad6839632de78277001735b2c5b59c78870f08d4d2bb73417bbea1ee8c894021228b46 + languageName: node + linkType: hard + +"http-proxy-agent@npm:^2.1.0": + version: 2.1.0 + resolution: "http-proxy-agent@npm:2.1.0" + dependencies: + agent-base: 4 + debug: 3.1.0 + checksum: 627c6a7437c8ad731587c40a83c356b7e09acaaf87e7ed96cc78daa81741dd293043063d04f743682772118c59342ab99701f80b1f836f0d582ad3e89e084229 + languageName: node + linkType: hard + +"http-proxy-agent@npm:^4.0.1": + version: 4.0.1 + resolution: "http-proxy-agent@npm:4.0.1" + dependencies: + "@tootallnate/once": 1 + agent-base: 6 + debug: 4 + checksum: 6703aeb5c5d398d93757c38eb0d77df10239ff3fefee27614aad2831f06f9ca6c8b21c43e9ff02464b5284cba3c6cedefffd210750871277ebf652cbe3230566 + languageName: node + linkType: hard + +"http-proxy-middleware@npm:0.19.1": + version: 0.19.1 + resolution: "http-proxy-middleware@npm:0.19.1" + dependencies: + http-proxy: ^1.17.0 + is-glob: ^4.0.0 + lodash: ^4.17.11 + micromatch: ^3.1.10 + checksum: 30f6e99935057bdd1e8323f34ee933822606fd762a912813182d4846b9acbf49f1e1767f0939f9ea1a503291727c1023dadaa41986b05b1d1ca9d420c67b5e09 + languageName: node + linkType: hard + +"http-proxy@npm:^1.17.0": + version: 1.18.1 + resolution: "http-proxy@npm:1.18.1" + dependencies: + eventemitter3: ^4.0.0 + follow-redirects: ^1.0.0 + requires-port: ^1.0.0 + checksum: fc2062718d77868eff0d2707652d7e0d302a0f85d90f317daa410df5c41fbe009589c80bc73cc72a44368bb37d071c8f52aaa5b3ce82a08f3524a79ddf178b9b + languageName: node + linkType: hard + +"http-signature@npm:~1.2.0": + version: 1.2.0 + resolution: "http-signature@npm:1.2.0" + dependencies: + assert-plus: ^1.0.0 + jsprim: ^1.2.2 + sshpk: ^1.7.0 + checksum: d28227eed37cb0dae0e76c46b2a5e611c678808433e5642238f17dba7f2c9c8f8d1646122d57ec1a110ecc7e8b9f5b7aa0462f1e2a5fa3b41f2fca5a69af7edf + languageName: node + linkType: hard + +"https-browserify@npm:^1.0.0": + version: 1.0.0 + resolution: "https-browserify@npm:1.0.0" + checksum: 9746a4ef0283691774f207039efed38e31e86732ed15bcebf1878e2e7cf4b87e8a4e5fe3cce342caba9545ce0e7e2bcf44fe08edb52284b1b53bfe026e1e8f07 + languageName: node + linkType: hard + +"https-proxy-agent@npm:^2.2.3": + version: 2.2.4 + resolution: "https-proxy-agent@npm:2.2.4" + dependencies: + agent-base: ^4.3.0 + debug: ^3.1.0 + checksum: 4e42bed005d75debcfd6d3901edbd391dd72cda32a2ece4584443eb7025ac0a0f85fb01f45d385608a380f6bf2d659c632776ac17b898c6d991fd9ec1d32a1f0 + languageName: node + linkType: hard + +"https-proxy-agent@npm:^5.0.0": + version: 5.0.0 + resolution: "https-proxy-agent@npm:5.0.0" + dependencies: + agent-base: 6 + debug: 4 + checksum: 18aa04ea08cc069fa0c83d03475d1bc43e13bfa43d5cffc0c3a07430f755e1ac914049570302775adac82aa5a779643ef2c6c270c057d7a8523a7f6f46b4866a + languageName: node + linkType: hard + +"human-signals@npm:^1.1.1": + version: 1.1.1 + resolution: "human-signals@npm:1.1.1" + checksum: cac115f635090055427bbd9d066781b17de3a2d8bbf839d920ae2fa52c3eab4efc63b4c8abc10e9a8b979233fa932c43a83a48864003a8c684ed9fb78135dd45 + languageName: node + linkType: hard + +"humanize-ms@npm:^1.2.1": + version: 1.2.1 + resolution: "humanize-ms@npm:1.2.1" + dependencies: + ms: ^2.0.0 + checksum: 4a08769434132a229a6153e77c869a9fe7132dc003d90119d54958e7b75feb65a3c4eca19fb18921568878ac455b6f399013279ad33248d94bd61a25def1fdda + languageName: node + linkType: hard + +"husky@npm:4.2.5": + version: 4.2.5 + resolution: "husky@npm:4.2.5" + dependencies: + chalk: ^4.0.0 + ci-info: ^2.0.0 + compare-versions: ^3.6.0 + cosmiconfig: ^6.0.0 + find-versions: ^3.2.0 + opencollective-postinstall: ^2.0.2 + pkg-dir: ^4.2.0 + please-upgrade-node: ^3.2.0 + slash: ^3.0.0 + which-pm-runs: ^1.0.0 + bin: + husky-run: bin/run.js + husky-upgrade: lib/upgrader/bin.js + checksum: 9d03d38c66688ab61166b425aa70229665c93a2a6fbd0d7388923205622fe34c6cc4c251777337b0813a40891750a18d603eff8451a58d06953807535a8908ed + languageName: node + linkType: hard + +"hyphenate-style-name@npm:^1.0.3": + version: 1.0.4 + resolution: "hyphenate-style-name@npm:1.0.4" + checksum: 4cfeb47e98eab9c25e6dece20da772cc914a9f8e5ee794cf8db105b0649dd64a61d8ee8ff32acf23ae0ac181db8fcbe4a6abb2f7de48ae52b42a85bbf1aacb86 + languageName: node + linkType: hard + +"iconv-lite@npm:0.4.24, iconv-lite@npm:^0.4.17, iconv-lite@npm:^0.4.24": + version: 0.4.24 + resolution: "iconv-lite@npm:0.4.24" + dependencies: + safer-buffer: ">= 2.1.2 < 3" + checksum: a9b9521066ee81853a8561e92bd7240bc5d3b7d5ef7da807a475e7858b0246e318b6af518c30a20a8749ef5eafeaa9631079446e4e696c7b60f468b34dc2cbfc + languageName: node + linkType: hard + +"iconv-lite@npm:^0.6.2": + version: 0.6.2 + resolution: "iconv-lite@npm:0.6.2" + dependencies: + safer-buffer: ">= 2.1.2 < 3.0.0" + checksum: 0785670120f57b5912c6a4391d6a69914906746d259b59de884dc6d324a52a0abde38d5804f67370192fec6878d01e7306de525568abcea70eb41c2bceb9f547 + languageName: node + linkType: hard + +"icss-utils@npm:^4.0.0, icss-utils@npm:^4.1.1": + version: 4.1.1 + resolution: "icss-utils@npm:4.1.1" + dependencies: + postcss: ^7.0.14 + checksum: 437ba4f7c9543db7a007f3968698ae26c966e2c54e34ac08c8f88737d06181ffacc5de8d17435940367135822a98655e3c6c8f70504d22b2f5cbc8e10798f873 + languageName: node + linkType: hard + +"identity-obj-proxy@npm:3.0.0": + version: 3.0.0 + resolution: "identity-obj-proxy@npm:3.0.0" + dependencies: + harmony-reflect: ^1.4.6 + checksum: 87f71cb15bc6173123a97f37f4fe2a9e1e44d9ceaceb19b0b233a0ab62bcc08793a019bc00241d876a73421ec4005fd28952805ef72725cda5866d712d789fe7 + languageName: node + linkType: hard + +"ieee754@npm:^1.1.4": + version: 1.1.13 + resolution: "ieee754@npm:1.1.13" + checksum: 9ef12932e8aeae1c614f314783b3770fac5daae7ae92ebffcda97da58efd77c0289181093666f6048e02c566ceeec4d0edf3b04b57ce8e0b57e9b3814a870469 + languageName: node + linkType: hard + +"iferr@npm:^0.1.5": + version: 0.1.5 + resolution: "iferr@npm:0.1.5" + checksum: 9d366dcc6356bfc0156ba7b86c7ef1a8ede7533fc7b100b4700de618774f1b48aa60185a2193f8260870b9168daa38aee5b11d38c92f5100af8ccdf22b5c2717 + languageName: node + linkType: hard + +"ignore-by-default@npm:^1.0.1": + version: 1.0.1 + resolution: "ignore-by-default@npm:1.0.1" + checksum: c5c70afd7cfa3fb6bb14455e0154d76cda22c54438147f55f85a1012d211e120965686f277e9777a05a91fa77cbaf67d018f8a93d8cba67775e8579ac7856c93 + languageName: node + linkType: hard + +"ignore-walk@npm:^3.0.1": + version: 3.0.3 + resolution: "ignore-walk@npm:3.0.3" + dependencies: + minimatch: ^3.0.4 + checksum: 08394ce8c47dc086d44ef65a1e1d30352ff3d6605bdec90f59e985b710cc660aafa7975cb30312891d21d826d10b3a8b3210c5d68251678e2dcd366362865170 + languageName: node + linkType: hard + +"ignore@npm:^3.3.5": + version: 3.3.10 + resolution: "ignore@npm:3.3.10" + checksum: eda1ee571684bccf3cf9eeb09aba8e85c1331f3f7773af67f70662ffc96a11ef284132bbf65e748249648f296b01276ed9ad4a11d912086fed418892a48e0733 + languageName: node + linkType: hard + +"ignore@npm:^4.0.3, ignore@npm:^4.0.6": + version: 4.0.6 + resolution: "ignore@npm:4.0.6" + checksum: 8f7b7f7c261d110604aed4340771933b0a42ffd2075e87bf8b4229ceb679659c5384c99e25c059f53a2b0e16cebaa4c49f7e837d1f374d1abf91fea46ccddd1a + languageName: node + linkType: hard + +"ignore@npm:^5.1.1, ignore@npm:^5.1.4": + version: 5.1.8 + resolution: "ignore@npm:5.1.8" + checksum: b08e3d5b5d94eca13475f29a5d47d221060e9cdd7e38d7647088e29d90130669a970fecbc4cdb41b8fa295c6673740c729d3dc05dadc381f593efb42282cbf9f + languageName: node + linkType: hard + +"immer@npm:1.10.0": + version: 1.10.0 + resolution: "immer@npm:1.10.0" + checksum: 9cec946ed092e0a9e5c33789e3bdddce2b1831ddb17eaade00be032ea5dcbb157a674e18e3050c84b451023ec9060a6ccc0f92ed54f637733ee410d81d0da8b9 + languageName: node + linkType: hard + +"immutable@npm:~3.7.6": + version: 3.7.6 + resolution: "immutable@npm:3.7.6" + checksum: 33fb106a330bae44cea58a2bc51c667850ea198396f329787718ab9ae70f6302734d0beb81e22de06876e38807f813a81bb09628e096ef89d9b5e06185edd16a + languageName: node + linkType: hard + +"import-cwd@npm:^2.0.0": + version: 2.1.0 + resolution: "import-cwd@npm:2.1.0" + dependencies: + import-from: ^2.1.0 + checksum: 2b8cb7bab332ae13d24aaa226b1b59a438e2e5dc07e6dcc735860d0520f9591a8ed55f60444658123c30958057e4b0f552bb5140e6e243d7fbd4b24bfee29d85 + languageName: node + linkType: hard + +"import-fresh@npm:^2.0.0": + version: 2.0.0 + resolution: "import-fresh@npm:2.0.0" + dependencies: + caller-path: ^2.0.0 + resolve-from: ^3.0.0 + checksum: c95204ecfbea5b6c8fb792faaa765ee2d0c5912eb92485dc9e4f9f40326438b182ac4de8eec769c28dbc35656309fb79d0bae591e7305e7cfd069c2347c745ca + languageName: node + linkType: hard + +"import-fresh@npm:^3.0.0, import-fresh@npm:^3.1.0, import-fresh@npm:^3.2.1": + version: 3.2.1 + resolution: "import-fresh@npm:3.2.1" + dependencies: + parent-module: ^1.0.0 + resolve-from: ^4.0.0 + checksum: 5ace95063123e8c2e30cfe302421f3ef1598d4fff9763c1b6bbed0ab4e700a16e45078fbfc3f7a8a5c3680e01edf707bca25354dec90a268b9803074e46bc89c + languageName: node + linkType: hard + +"import-from@npm:3.0.0": + version: 3.0.0 + resolution: "import-from@npm:3.0.0" + dependencies: + resolve-from: ^5.0.0 + checksum: ba66d42da541286fe50afe800a506534560c067eac7fa1c5fa83b4ea69eb92952adf6bff4ae6a3ea2e45780a874aa0341e4101e6ebc3f9b8fd6b83ac29fafe1b + languageName: node + linkType: hard + +"import-from@npm:^2.1.0": + version: 2.1.0 + resolution: "import-from@npm:2.1.0" + dependencies: + resolve-from: ^3.0.0 + checksum: eb8dddd9d20058d3b3bb303f8e352cbd1bd53174d4fb2814fb64fc20b8796964116873aa7ebefbe57ec282ac6a2fce51c21dd47870de36e5d63304e612b18996 + languageName: node + linkType: hard + +"import-lazy@npm:^2.1.0": + version: 2.1.0 + resolution: "import-lazy@npm:2.1.0" + checksum: 4907a2ddbe39df77b28cbb3e0a41d675f56990b935cd579df7ccd143501f5496382cfbf8d53f359a41660d4a8963bec22a5d68e12d8fae9c828bf59664114963 + languageName: node + linkType: hard + +"import-local@npm:^2.0.0": + version: 2.0.0 + resolution: "import-local@npm:2.0.0" + dependencies: + pkg-dir: ^3.0.0 + resolve-cwd: ^2.0.0 + bin: + import-local-fixture: fixtures/cli.js + checksum: 4729bf153cf0d5ca5ee15f7fd7c93d17e7f129704525d5272e33a800cdf656b70d31bb2a5a25c3743d431b35e3fe8edd44b4e36cd7f10c71c092ca0cae76ef8e + languageName: node + linkType: hard + +"import-local@npm:^3.0.2": + version: 3.0.2 + resolution: "import-local@npm:3.0.2" + dependencies: + pkg-dir: ^4.2.0 + resolve-cwd: ^3.0.0 + bin: + import-local-fixture: fixtures/cli.js + checksum: 9ba5f1697b8b11aae8dab7964bf1c2409ed5dc51dd03fe8698fb32df04a3a683adbe9d95e6bb963a384373ec8d055c508f0c534b45aac1de4a3b4b653e6cfe82 + languageName: node + linkType: hard + +"imurmurhash@npm:^0.1.4": + version: 0.1.4 + resolution: "imurmurhash@npm:0.1.4" + checksum: 34d414d789286f6ef4d2b954c76c7df40dd7cabffef9b9959c8bd148677e98151f4fa5344aae2e3ad2b62308555ccbba3022e535a3e24288c9babb1308e35532 + languageName: node + linkType: hard + +"indent-string@npm:4.0.0, indent-string@npm:^4.0.0": + version: 4.0.0 + resolution: "indent-string@npm:4.0.0" + checksum: 3e54996c6e15ca00a7a4403be705bce4fb3bb4ac637da2e1473006e42a651863f53bfb8c3438c1b3aac77817768ac0cde0e7b7a81a6cf24a1286227a06510dbf + languageName: node + linkType: hard + +"indent-string@npm:^2.1.0": + version: 2.1.0 + resolution: "indent-string@npm:2.1.0" + dependencies: + repeating: ^2.0.0 + checksum: 5c6bc6548e7c65c6f69c50a6cee286c4093e0d5a43cebaf4dae5b2acc321455dde8d80c421c9a14920ad44743a56bbe87082b1a619cd829477ab8da34dec1b59 + languageName: node + linkType: hard + +"indent-string@npm:^3.0.0": + version: 3.2.0 + resolution: "indent-string@npm:3.2.0" + checksum: 00d5200e3afc1ecfde7e82a28d14ce5e01ae5f07f883b5fdaa80146bb15854764f6a0e0ce5e41e30f377e25285139925adaf744b1754d83d69ab3852de7cd450 + languageName: node + linkType: hard + +"indexes-of@npm:^1.0.1": + version: 1.0.1 + resolution: "indexes-of@npm:1.0.1" + checksum: e1c232a32631c709bb8a2188d0a53c02aae18904fff0165322a353dfd2985e0b3ea184b2b15b74acc363a0344dc6e8dc927b874935a738e8ce0e5253e4a9da98 + languageName: node + linkType: hard + +"infer-owner@npm:^1.0.3, infer-owner@npm:^1.0.4": + version: 1.0.4 + resolution: "infer-owner@npm:1.0.4" + checksum: 56aa1d87b05936947765b1d9ace5f8d7ccd8cf6ccc1d69b67e8eaaee0e1ee2960d5accd51deb50d884665a5a1af3bcbb80f5d249c01a00280365bba59db9687b + languageName: node + linkType: hard + +"infima@npm:0.2.0-alpha.12": + version: 0.2.0-alpha.12 + resolution: "infima@npm:0.2.0-alpha.12" + checksum: 98ca8e96ae4beec11886cf704640d9c91c650fe7d245f0f0edf68f0cbba4d05ccacc626a7ddb15bce8be449e5a0b88876a49831e4fd125e6b1f86e3d3bad99a7 + languageName: node + linkType: hard + +"inflight@npm:^1.0.4": + version: 1.0.6 + resolution: "inflight@npm:1.0.6" + dependencies: + once: ^1.3.0 + wrappy: 1 + checksum: 17c53fc42cbe7f7f471d2bc41b97a0cde4b79a74d5ff59997d3f75210566fa278e17596da526d43de2bd07e222706240ce50e60097e54f2cde2e64cbbb372638 + languageName: node + linkType: hard + +"inherits@npm:2, inherits@npm:2.0.4, inherits@npm:^2.0.0, inherits@npm:^2.0.1, inherits@npm:^2.0.3, inherits@npm:^2.0.4, inherits@npm:~2.0.1, inherits@npm:~2.0.3": + version: 2.0.4 + resolution: "inherits@npm:2.0.4" + checksum: 98426da247ddfc3dcd7d7daedd90c3ca32d5b08deca08949726f12d49232aef94772a07b36cf4ff833e105ae2ef931777f6de4a6dd8245a216b9299ad4a50bea + languageName: node + linkType: hard + +"inherits@npm:2.0.1": + version: 2.0.1 + resolution: "inherits@npm:2.0.1" + checksum: 6f59f627a64cff6f4b5a2723184d831e6fc376cf88b8a94821caa2cad9d44da6d79583335024c01a541d9a25767785928a28f6e2192bb14be9ce800b315b4faa + languageName: node + linkType: hard + +"inherits@npm:2.0.3": + version: 2.0.3 + resolution: "inherits@npm:2.0.3" + checksum: 9488f9433effbc24474f6baee8014e5337c7f99305ecb4204fa5864ae7655c24225780d87fc65ed8d3d374715a18c5dc8c69fe3bf9745cde2e7acd0ac068a07b + languageName: node + linkType: hard + +"ini@npm:^1.3.2, ini@npm:^1.3.4, ini@npm:^1.3.5, ini@npm:~1.3.0": + version: 1.3.5 + resolution: "ini@npm:1.3.5" + checksum: 304a78d1e0ec49c6dc316b6a21bee5340ba85159c6581235b26a4cf27e2bac5f66f2c8f0e074ceaf3c48085f89fb974691cbf812df2128d2d74c5ef726d1b19a + languageName: node + linkType: hard + +"init-package-json@npm:^1.10.3": + version: 1.10.3 + resolution: "init-package-json@npm:1.10.3" + dependencies: + glob: ^7.1.1 + npm-package-arg: ^4.0.0 || ^5.0.0 || ^6.0.0 + promzard: ^0.3.0 + read: ~1.0.1 + read-package-json: 1 || 2 + semver: 2.x || 3.x || 4 || 5 + validate-npm-package-license: ^3.0.1 + validate-npm-package-name: ^3.0.0 + checksum: b6288a1b4fd82aa80293432f160106982ab3b29dd3c4b7ca701a31b10657e08e60572dc5c17b0f78788e8142b6b36ef98d134b19d3f417da42291bd46c0ad350 + languageName: node + linkType: hard + +"inline-style-parser@npm:0.1.1": + version: 0.1.1 + resolution: "inline-style-parser@npm:0.1.1" + checksum: 02f3b430cd6b9d13a255dafc54f45855cbb3db3c314228c6e58e19ce8dd2bb8e89f3a311bedcc5ded185ba2cc64195d1dddf54076b2160beee379fd7cdf6fb08 + languageName: node + linkType: hard + +"inquirer@npm:3.0.6": + version: 3.0.6 + resolution: "inquirer@npm:3.0.6" + dependencies: + ansi-escapes: ^1.1.0 + chalk: ^1.0.0 + cli-cursor: ^2.1.0 + cli-width: ^2.0.0 + external-editor: ^2.0.1 + figures: ^2.0.0 + lodash: ^4.3.0 + mute-stream: 0.0.7 + run-async: ^2.2.0 + rx: ^4.1.0 + string-width: ^2.0.0 + strip-ansi: ^3.0.0 + through: ^2.3.6 + checksum: 3f0fbad1f626853b209a40bcdb4dd6784ee17bc01a1cd2ddc5a390ab5b8ae40e51bccfc226233a9cd025cc24b9d8421b422f52e5db76ff69f220c746af016d9f + languageName: node + linkType: hard + +"inquirer@npm:7.0.4": + version: 7.0.4 + resolution: "inquirer@npm:7.0.4" + dependencies: + ansi-escapes: ^4.2.1 + chalk: ^2.4.2 + cli-cursor: ^3.1.0 + cli-width: ^2.0.0 + external-editor: ^3.0.3 + figures: ^3.0.0 + lodash: ^4.17.15 + mute-stream: 0.0.8 + run-async: ^2.2.0 + rxjs: ^6.5.3 + string-width: ^4.1.0 + strip-ansi: ^5.1.0 + through: ^2.3.6 + checksum: 4a33e940a3b2f656129ec38c961c5514daebe2192b1ac6fd3be7a02cfe601b57701af2df022fb54be9d8a6da5022548b4a82769f73b968ef2f1ee70697f78bdd + languageName: node + linkType: hard + +"inquirer@npm:7.3.3, inquirer@npm:^7.0.0, inquirer@npm:^7.2.0": + version: 7.3.3 + resolution: "inquirer@npm:7.3.3" + dependencies: + ansi-escapes: ^4.2.1 + chalk: ^4.1.0 + cli-cursor: ^3.1.0 + cli-width: ^3.0.0 + external-editor: ^3.0.3 + figures: ^3.0.0 + lodash: ^4.17.19 + mute-stream: 0.0.8 + run-async: ^2.4.0 + rxjs: ^6.6.0 + string-width: ^4.1.0 + strip-ansi: ^6.0.0 + through: ^2.3.6 + checksum: fa0cbd9594a04e04c5c10a806e9a86b23986acdc7d07c75afdbc03412ff03b1d201efa83d9d64929afe99a901a093bfc9ae7ab13560f8e557cb98eddbe5bf37d + languageName: node + linkType: hard + +"inquirer@npm:^6.2.0": + version: 6.5.2 + resolution: "inquirer@npm:6.5.2" + dependencies: + ansi-escapes: ^3.2.0 + chalk: ^2.4.2 + cli-cursor: ^2.1.0 + cli-width: ^2.0.0 + external-editor: ^3.0.3 + figures: ^2.0.0 + lodash: ^4.17.12 + mute-stream: 0.0.7 + run-async: ^2.2.0 + rxjs: ^6.4.0 + string-width: ^2.1.0 + strip-ansi: ^5.1.0 + through: ^2.3.6 + checksum: f3185658ee9eac60cf1296810df3e94aa3957aab7c49dd3a9b4fab5b257c4f24f5a682ad7072448bf9492c0101cdf0ee3daf3531da513b76b583815668a2512a + languageName: node + linkType: hard + +"internal-ip@npm:^4.3.0": + version: 4.3.0 + resolution: "internal-ip@npm:4.3.0" + dependencies: + default-gateway: ^4.2.0 + ipaddr.js: ^1.9.0 + checksum: 2cf2248053bd471a3f07880d76a86fa64fb16f2fe5006c0efda218224050ea383618788627498734055cc7027926b7749288f88981bb35433da3f4171824afd0 + languageName: node + linkType: hard + +"internal-slot@npm:^1.0.2": + version: 1.0.2 + resolution: "internal-slot@npm:1.0.2" + dependencies: + es-abstract: ^1.17.0-next.1 + has: ^1.0.3 + side-channel: ^1.0.2 + checksum: 02b2bcc612fbbaa5de71acec354a7bb50d8b3b2d2df775b6df61ea41419f92b69e0562f80125d7fa3667c9fb485cc88726f8a181fb544d880c79564f0f7d7d1e + languageName: node + linkType: hard + +"interpret@npm:^1.0.0": + version: 1.4.0 + resolution: "interpret@npm:1.4.0" + checksum: f15725d76206525546f559030ddc967db025c6db904eb8798a70ec3c07e42c5537c5cbc73a15eafd4ae5cdabad35601abf8878261c03dcc8217747e8037575fe + languageName: node + linkType: hard + +"invariant@npm:^2.2.2, invariant@npm:^2.2.4": + version: 2.2.4 + resolution: "invariant@npm:2.2.4" + dependencies: + loose-envify: ^1.0.0 + checksum: 96d8a2a4f0ad21020c5847546fc36bec5c0870d99f071aaa93df00c1036439d48211a1823ab6128f78a15ccc4c4f62baf6a65f6c0ed489270dd44d0a04f443a1 + languageName: node + linkType: hard + +"invert-kv@npm:^2.0.0": + version: 2.0.0 + resolution: "invert-kv@npm:2.0.0" + checksum: 10b0fa3fd436b0340149fdb3c66cc2d1c0746e612fe1b5d356d9f520fd7f5c5f9c39bd9dddf184612ff421738005ad9c3e72386b97fb055c00c983e4ea1bc30d + languageName: node + linkType: hard + +"ioredis@npm:^4.14.1": + version: 4.18.0 + resolution: "ioredis@npm:4.18.0" + dependencies: + cluster-key-slot: ^1.1.0 + debug: ^4.1.1 + denque: ^1.1.0 + lodash.defaults: ^4.2.0 + lodash.flatten: ^4.4.0 + redis-commands: 1.6.0 + redis-errors: ^1.2.0 + redis-parser: ^3.0.0 + standard-as-callback: ^2.0.1 + checksum: 92e2e05b38fb748f5c599cbe78f2629a21ca52ab57d19422d59b3bb9504052ec6416fc37315f51de6786e760ebdfd943585d494f2663aa8a27977821cf2086f9 + languageName: node + linkType: hard + +"ip-regex@npm:^2.1.0": + version: 2.1.0 + resolution: "ip-regex@npm:2.1.0" + checksum: 2fd2190ada81b55a8a6f913bcb5a6fd6ff9da127905b4c01521f09a1d391e86d415dfe8c131ed2989d536949bb2f9654a71b9fa6f7ae2ac3ae6111b2026cc902 + languageName: node + linkType: hard + +"ip@npm:1.1.5, ip@npm:^1.1.0, ip@npm:^1.1.5": + version: 1.1.5 + resolution: "ip@npm:1.1.5" + checksum: 3ad007368cf797ec9b73fbac0a644077198dd85a128d0fe39697a78a9cdd47915577eee5c4eca9933549b575ac4716107896c2d4aa43a1622b3f72104232cad4 + languageName: node + linkType: hard + +"ipaddr.js@npm:1.9.1, ipaddr.js@npm:^1.9.0": + version: 1.9.1 + resolution: "ipaddr.js@npm:1.9.1" + checksum: de15bc7e63973d960abc43c9fbbf19589c726774f59d157d1b29382a1e86ae87c68cbd8b5c78a1712a87fc4fcd91e10762c7671950c66a1a19040ff4fd2f9c9b + languageName: node + linkType: hard + +"is-absolute-url@npm:^2.0.0": + version: 2.1.0 + resolution: "is-absolute-url@npm:2.1.0" + checksum: f9d193d86b5a255de08eb22653026e09952b5b1335c1c1c9c171237cb056c54d8c12ef45a069ac34270b7e960e46c89bc43f52d911317a2aaaab6d315c0da0e0 + languageName: node + linkType: hard + +"is-absolute-url@npm:^3.0.3": + version: 3.0.3 + resolution: "is-absolute-url@npm:3.0.3" + checksum: 1beac700465defee2bfa881cafcf144f3365cf0f748d62880e4a726c1de525ac39e8203bed14032f10509916dd392908e24d50ce1c1a444b44655a74708f9556 + languageName: node + linkType: hard + +"is-absolute@npm:^1.0.0": + version: 1.0.0 + resolution: "is-absolute@npm:1.0.0" + dependencies: + is-relative: ^1.0.0 + is-windows: ^1.0.1 + checksum: 4b8ebda658ee6d820cc9ef77c7228f5048e4824cd0092415d41d94ae9d59d8cf27cb1a322958161059be1887d7d8bc85ef10e1444ed763731b45229b74bb7ad1 + languageName: node + linkType: hard + +"is-accessor-descriptor@npm:^0.1.6": + version: 0.1.6 + resolution: "is-accessor-descriptor@npm:0.1.6" + dependencies: + kind-of: ^3.0.2 + checksum: 7a7fca21855f7f5e56706d34ce089bc95b78db4ee0d11f554b642ac06b508452aaf26ffdf5dc0680c99f66e2043d78ab659760c417af60fd067ae0f09717d3cc + languageName: node + linkType: hard + +"is-accessor-descriptor@npm:^1.0.0": + version: 1.0.0 + resolution: "is-accessor-descriptor@npm:1.0.0" + dependencies: + kind-of: ^6.0.0 + checksum: 3973215c2eaea260a33d8ab227f56dc1f9bf085f68a1a27e3108378917482369992b907a57ae05a72a16591af174cf5206efca3faf608fb36eaca675f2841e13 + languageName: node + linkType: hard + +"is-alphabetical@npm:1.0.4, is-alphabetical@npm:^1.0.0": + version: 1.0.4 + resolution: "is-alphabetical@npm:1.0.4" + checksum: a4a2afcf65788695c1b14755e6bf890ba5991d6789d4b6ea3c8bd7ba8c7a2dce1da37dc62e8b19b397ca3f927d60203df792e79b9a5c35c69f488a782f96e3b5 + languageName: node + linkType: hard + +"is-alphanumerical@npm:^1.0.0": + version: 1.0.4 + resolution: "is-alphanumerical@npm:1.0.4" + dependencies: + is-alphabetical: ^1.0.0 + is-decimal: ^1.0.0 + checksum: d97ec38a74117d147f7feaa46e43f2fdd6075a6650d8b5c44357e7854462068525c9a8cc079943b9e06fb8e182d0262b5f38cf9c79a4138f12f069a52ec1e56b + languageName: node + linkType: hard + +"is-arguments@npm:^1.0.4": + version: 1.0.4 + resolution: "is-arguments@npm:1.0.4" + checksum: a04bc21254cfbb77c934ec51165ef7629c12cabd2a92c2c4333280b5117f138fcec6369dd2ab7d8fe24e3af7dbc2a4ce389c53ed0b55b0f8818788c3c09f4ad2 + languageName: node + linkType: hard + +"is-arrayish@npm:^0.2.1": + version: 0.2.1 + resolution: "is-arrayish@npm:0.2.1" + checksum: fc2bbe14dbcb27b490e63b7fbf0e3b0aae843e5e1fa96d79450bb9617797615a575c78c454ffc8e027c3ad50d63d83e85a7387784979dcd46686d2eb5f412db0 + languageName: node + linkType: hard + +"is-arrayish@npm:^0.3.1": + version: 0.3.2 + resolution: "is-arrayish@npm:0.3.2" + checksum: 0687b6b8f2443a45116ce25d8b11979591af625bd8a7515f5d8de2fcb80979655bc9d1cbbd2146c34f2728a234d1ea81d397e06f1ae3feb02c8f6df16766a4a0 + languageName: node + linkType: hard + +"is-binary-path@npm:^1.0.0": + version: 1.0.1 + resolution: "is-binary-path@npm:1.0.1" + dependencies: + binary-extensions: ^1.0.0 + checksum: 25a2cda1e504403a179d1daf2773d6ea47ce383e912bc695bb9e923b5d5468447e239499be5c2212c7508be7777196810f8307e1d1f0e83a6191425eb22c2887 + languageName: node + linkType: hard + +"is-binary-path@npm:~2.1.0": + version: 2.1.0 + resolution: "is-binary-path@npm:2.1.0" + dependencies: + binary-extensions: ^2.0.0 + checksum: 49a1446a3cf3719e91a061f0e52add18fd065325c652c277519a2ad333440dc8b449076a893277a46940ef16f05a908716667ca8f986b28c677b9acb11e10a36 + languageName: node + linkType: hard + +"is-buffer@npm:^1.0.2, is-buffer@npm:^1.1.5": + version: 1.1.6 + resolution: "is-buffer@npm:1.1.6" + checksum: 336ec78f00e88efe6ff6f1aa08d06aadb942a6cd320e5f538ac00648378fb964743b3737c88ce7ce8741c067e4a3b78f596b83ee1a3c72dc2885ea0b03dc84f2 + languageName: node + linkType: hard + +"is-buffer@npm:^2.0.0": + version: 2.0.4 + resolution: "is-buffer@npm:2.0.4" + checksum: cd1cbc19e5ad2f33284109210945606494bf1adbe775b157b18ffeeb98571187d5fd1dc3fcd36566f67b90a776e364262f496c8998f8f369694b68ad334f8655 + languageName: node + linkType: hard + +"is-callable@npm:^1.1.4, is-callable@npm:^1.2.0": + version: 1.2.0 + resolution: "is-callable@npm:1.2.0" + checksum: 8a5e68b7c3a95159c98595789015da72e71432e638c4bc0aad4722ea6a1ffeca178838cfb6012f5b9cc1a8c61b737704bd658d8f588959a46a899961667e99f5 + languageName: node + linkType: hard + +"is-ci@npm:^2.0.0": + version: 2.0.0 + resolution: "is-ci@npm:2.0.0" + dependencies: + ci-info: ^2.0.0 + bin: + is-ci: bin.js + checksum: 09083018edafd63221ff0506356f13c0aaf4b75a6435ea648bc67d07ddab199b2d5b9297de43d0821df1a14c18cd9f1edd1775a0166abfe37390843e79137213 + languageName: node + linkType: hard + +"is-color-stop@npm:^1.0.0": + version: 1.1.0 + resolution: "is-color-stop@npm:1.1.0" + dependencies: + css-color-names: ^0.0.4 + hex-color-regex: ^1.1.0 + hsl-regex: ^1.0.0 + hsla-regex: ^1.0.0 + rgb-regex: ^1.0.1 + rgba-regex: ^1.0.0 + checksum: 0e3d46b1e1669891fe38f019188c6edc8b6239ba21b391c2f25bd1887975f11fed0764771adb550e30c7726f737547953c9260b411c9813e573b8b9434e760c4 + languageName: node + linkType: hard + +"is-data-descriptor@npm:^0.1.4": + version: 0.1.4 + resolution: "is-data-descriptor@npm:0.1.4" + dependencies: + kind-of: ^3.0.2 + checksum: 51db89bb4676b871a67f371f665dcf9c3fabb84e26b411beff42fb3b5505cdc0e33eeb1aeaa9c0400eb6d372a3b241c23a6953b5902397e5ff212cfbfd9edcda + languageName: node + linkType: hard + +"is-data-descriptor@npm:^1.0.0": + version: 1.0.0 + resolution: "is-data-descriptor@npm:1.0.0" + dependencies: + kind-of: ^6.0.0 + checksum: 0297518899d51c498987b1cc64fde72b0300f93a09669b6653a4d56a9cfb40c85b5988e52e36b10e88d17ad13b1927932f4631ddc02f10fa1d44a1e3150d31cd + languageName: node + linkType: hard + +"is-date-object@npm:^1.0.1": + version: 1.0.2 + resolution: "is-date-object@npm:1.0.2" + checksum: 0e322699464a99da638c8a583b74dfb791732b6bc9c102bc0b7ac6303d83c86b9935f19b8d2ed4de52092241190c8826b099cb31972dea49a99b755293c0b1cf + languageName: node + linkType: hard + +"is-decimal@npm:^1.0.0": + version: 1.0.4 + resolution: "is-decimal@npm:1.0.4" + checksum: 57a0e1a87f01538ac21997202ac694f0572abf50488c54a4154014517f07d88394a61195c1ee32bdf69014e535b946e9e3869eece6818baea5827171d38a23f9 + languageName: node + linkType: hard + +"is-descriptor@npm:^0.1.0": + version: 0.1.6 + resolution: "is-descriptor@npm:0.1.6" + dependencies: + is-accessor-descriptor: ^0.1.6 + is-data-descriptor: ^0.1.4 + kind-of: ^5.0.0 + checksum: cab6979fb6412eefca8e9bc3b59d239b2ce4916d6025f184eb6c3031b5d381cb536630606a4635f0f43197164a090bb500c762f713f17846c1e34dd9ae6ef607 + languageName: node + linkType: hard + +"is-descriptor@npm:^1.0.0, is-descriptor@npm:^1.0.2": + version: 1.0.2 + resolution: "is-descriptor@npm:1.0.2" + dependencies: + is-accessor-descriptor: ^1.0.0 + is-data-descriptor: ^1.0.0 + kind-of: ^6.0.2 + checksum: be8004010eac165fa9a61513a51881c4bac324d060916d44bfee2be03edf500d5994591707147f1f4c93ae611f97de27debdd8325702158fcd0cf8fcca3fbe06 + languageName: node + linkType: hard + +"is-directory@npm:^0.3.1": + version: 0.3.1 + resolution: "is-directory@npm:0.3.1" + checksum: e921dc18177e0ec9d1f05637b356d2974f2dacf9e120a90243a95f02bdd24a9c8bf7eb30ae51a7aa8d0e5dbb8a845fd58b105626535b693154d602f4618a8f5a + languageName: node + linkType: hard + +"is-docker@npm:^2.0.0": + version: 2.1.1 + resolution: "is-docker@npm:2.1.1" + bin: + is-docker: cli.js + checksum: dc8e36fa63a246728e5dd4b3ab2d454f685d3dcc1fecbe62144a0c3bc1f5eef0cf67cb3af1b4a9d274dd18877b954b651c7ef0a483abae6a7a2baa8f987554ba + languageName: node + linkType: hard + +"is-extendable@npm:^0.1.0, is-extendable@npm:^0.1.1": + version: 0.1.1 + resolution: "is-extendable@npm:0.1.1" + checksum: 9d051e68c38b09c242564b62d98cdcc0ba5b20421340c95d5ae023955dcaf31ae1d614e1eb7a18a6358d4c47ea77d811623e1777a0589df9ac5928c370edd5e5 + languageName: node + linkType: hard + +"is-extendable@npm:^1.0.1": + version: 1.0.1 + resolution: "is-extendable@npm:1.0.1" + dependencies: + is-plain-object: ^2.0.4 + checksum: 2bf711afe60cc99f46699015c444db8f06c9c5553dd2b26fd8cb663fcec4bf00df1c11d02e28a8cc97b8efb49315c3c3fcf6ce1ceb09341af8e4fcccde516dd7 + languageName: node + linkType: hard + +"is-extglob@npm:^2.1.0, is-extglob@npm:^2.1.1": + version: 2.1.1 + resolution: "is-extglob@npm:2.1.1" + checksum: ca623e2c56c893714a237aff645ec7caa8fea4d78868682af8d6803d7f0780323f8d566311e0dc6f942c886e81cbfa517597e48fcada7f3bf78a4d099eeecdd3 + languageName: node + linkType: hard + +"is-finite@npm:^1.0.0": + version: 1.1.0 + resolution: "is-finite@npm:1.1.0" + checksum: d2ea9746ecc273e50183f56a51073862ff9f39bb1e63f6e2830da6be77d0d17c78e5ad1f8573d26c2a23457ab4a1b444472a46d64ba6f73824435cd734517ad4 + languageName: node + linkType: hard + +"is-fullwidth-code-point@npm:^1.0.0": + version: 1.0.0 + resolution: "is-fullwidth-code-point@npm:1.0.0" + dependencies: + number-is-nan: ^1.0.0 + checksum: fc3d51ef082eaf0c0d44e94b74cf43b97446e008b147b08186daea8bd5ff402596f04b5fe4fa4c0457470beab5c2de8339c49c96b5be65fe9fdf88f60a0001e8 + languageName: node + linkType: hard + +"is-fullwidth-code-point@npm:^2.0.0": + version: 2.0.0 + resolution: "is-fullwidth-code-point@npm:2.0.0" + checksum: e1e5284f848ab6885665967cd768292a75022304d4401e78937a68f423047c29bfe87a43a9cdb67a3210fff7bcd5da51469122a0eff59b03261c379e58dbe921 + languageName: node + linkType: hard + +"is-fullwidth-code-point@npm:^3.0.0": + version: 3.0.0 + resolution: "is-fullwidth-code-point@npm:3.0.0" + checksum: a01a19ecac34386ae3a4e801c5639d6e31082d1ddc418e7cd96317fef3c8b24ec8531558e9d3d35b33551ab9c5cf20bf2cdefa583927b7ff60c27c8d7c216063 + languageName: node + linkType: hard + +"is-generator-fn@npm:^2.0.0": + version: 2.1.0 + resolution: "is-generator-fn@npm:2.1.0" + checksum: 9639f8167925388f07d0ae190f1ebfe026e90db954480e6d28e776cf94040a00ea9158e1ac816bf77676e539bcbcf9cb4e997a599d80171e4bc52df76965e453 + languageName: node + linkType: hard + +"is-glob@npm:4.0.1, is-glob@npm:^4.0.0, is-glob@npm:^4.0.1, is-glob@npm:~4.0.1": + version: 4.0.1 + resolution: "is-glob@npm:4.0.1" + dependencies: + is-extglob: ^2.1.1 + checksum: 98cd4f715f0fb81da34aa6c8be4a5ef02d8cfac3ebc885153012abc2a0410df5a572f9d0393134fcba9192c7a845da96142c5f74a3c02787efe178ed798615e6 + languageName: node + linkType: hard + +"is-glob@npm:^3.1.0": + version: 3.1.0 + resolution: "is-glob@npm:3.1.0" + dependencies: + is-extglob: ^2.1.0 + checksum: 9911e04e28285c50bfd5ff79950c6cf712ed9d959ef640acba2daeca8a17a921494b78b3143d5d1749c4dc3bbeb296b8955064a4f17d014112f0c63a239322d6 + languageName: node + linkType: hard + +"is-hexadecimal@npm:^1.0.0": + version: 1.0.4 + resolution: "is-hexadecimal@npm:1.0.4" + checksum: 653c1d0115196e97ed20177393cff833fbdfdbed3d28abdffbfd0fe50b9c62bf7e76ee56a9a47fec84f30ca0d40256fd065a71a65b0ed32fc77650b39c8c9295 + languageName: node + linkType: hard + +"is-in-browser@npm:^1.0.2, is-in-browser@npm:^1.1.3": + version: 1.1.3 + resolution: "is-in-browser@npm:1.1.3" + checksum: 2696bb61677f15181c32a552c0d1aeea33fc8a5c945e2f21e6673207b256b6cf8170a94f6e9f4e242dc943aaa4325eacad709ac1ec6fd82767f3367755bab5ce + languageName: node + linkType: hard + +"is-installed-globally@npm:^0.3.1": + version: 0.3.2 + resolution: "is-installed-globally@npm:0.3.2" + dependencies: + global-dirs: ^2.0.1 + is-path-inside: ^3.0.1 + checksum: 10fc4fb09fe86c0ed5fa21e821607c6e1ca258386787b1aaad3afbe59470d0c3b50b076cbc996173b9b4c0de7d6a8b741aabf9229ab09d6c37ff663e51631529 + languageName: node + linkType: hard + +"is-npm@npm:^4.0.0": + version: 4.0.0 + resolution: "is-npm@npm:4.0.0" + checksum: 94ab2edae37293ceba039729ba1de851448059979138f72d7184a89a484bf70fbefc462268fecf59865e54ce972c15164229acc73bd56c025a7afc7dd0702c40 + languageName: node + linkType: hard + +"is-number@npm:^3.0.0": + version: 3.0.0 + resolution: "is-number@npm:3.0.0" + dependencies: + kind-of: ^3.0.2 + checksum: ae03986dedb1e414cfef5402b24c9be5e9171bc77fdaa189f468144e801b23d8abaa9bf52fb882295558a042fbb0192fb3f80759a010073884eff9ee3f196962 + languageName: node + linkType: hard + +"is-number@npm:^7.0.0": + version: 7.0.0 + resolution: "is-number@npm:7.0.0" + checksum: eec6e506c6de472af4bdfd0cc477e8aeb76f0a7066c8680fcdfed5324ee31a7d2b59d22313007c58aa80eb937f0c40eefdceedb851997d46b490b49f87160369 + languageName: node + linkType: hard + +"is-obj@npm:^1.0.0, is-obj@npm:^1.0.1": + version: 1.0.1 + resolution: "is-obj@npm:1.0.1" + checksum: 0913a3bb6424d6bfb37e2daa5ef4a5d31a388b0f5a53f36bbe1fd95f1264efe92c6fd87a5c3f41e25b3db42fe60924fe6ae1f0efb274375b090fd093a5301ccf + languageName: node + linkType: hard + +"is-obj@npm:^2.0.0": + version: 2.0.0 + resolution: "is-obj@npm:2.0.0" + checksum: ffa67ed5df66e37757876cd976380737a0430551789a0457b8c031eaedef8f5c6bc4ab6d903e529efb777545f8718ab73d9badde61c8b08720a3747ccff0b2a0 + languageName: node + linkType: hard + +"is-observable@npm:^1.1.0": + version: 1.1.0 + resolution: "is-observable@npm:1.1.0" + dependencies: + symbol-observable: ^1.1.0 + checksum: 6c408927886b91671661a3fd37a102ffc48f4b9f618a7d0272a8c2c3bf5b266a17b7805caf16110ba1d43add4f4e1585b65ae6e532167b3d1e22e62f3ac355c9 + languageName: node + linkType: hard + +"is-path-cwd@npm:^2.0.0, is-path-cwd@npm:^2.2.0": + version: 2.2.0 + resolution: "is-path-cwd@npm:2.2.0" + checksum: 900f6e81445b9979705952189d7dbada79dbe6d77be3b5fc95aed3dc1cc9d77de5b286db2d525942a72a717c81aa549509b76705883415fb655183dfefce9541 + languageName: node + linkType: hard + +"is-path-in-cwd@npm:^2.0.0": + version: 2.1.0 + resolution: "is-path-in-cwd@npm:2.1.0" + dependencies: + is-path-inside: ^2.1.0 + checksum: d814427f4e8757e960031bf9cf202f764a688a7d6be3bc8889335e5dc112e88731fda95556b8b6c7dc030358f4e6385e27ac9af95d0406411fc5271a94abef86 + languageName: node + linkType: hard + +"is-path-inside@npm:^2.1.0": + version: 2.1.0 + resolution: "is-path-inside@npm:2.1.0" + dependencies: + path-is-inside: ^1.0.2 + checksum: e289fc4ec6df457600bac34068b7c564bf17eee703888d9eea2b0a363a0ac67bb5864e715ba428904dd683287154cab0f7f9536d7e4c23e3410c5cc024a5839b + languageName: node + linkType: hard + +"is-path-inside@npm:^3.0.1": + version: 3.0.2 + resolution: "is-path-inside@npm:3.0.2" + checksum: 709ba85a713d25fb058a4c2f62e9e7160bcc1a3e48af2f201045cde027fc1efe61a6e1b5c1cf21b8329f764e3649e160976fde14317c1b848caa9c1f31d5beec + languageName: node + linkType: hard + +"is-plain-obj@npm:^1.0.0, is-plain-obj@npm:^1.1.0": + version: 1.1.0 + resolution: "is-plain-obj@npm:1.1.0" + checksum: d2eb5a32eacd7c79f3b2fe20552d091805a5ae88a7ca2aa71226bf822e4d690ef046ed2beb795f32666a401dfbf9a25ee3d4acde5426f963d55474468708ad22 + languageName: node + linkType: hard + +"is-plain-obj@npm:^2.0.0": + version: 2.1.0 + resolution: "is-plain-obj@npm:2.1.0" + checksum: 2314302f9140d1e9607731d523f207d8000281aebbabe0083210342c0758976f75f0f5db405e55910bd4dc9a04baddbeab9d476290642b5a0d31431cc9bda4b3 + languageName: node + linkType: hard + +"is-plain-object@npm:^2.0.1, is-plain-object@npm:^2.0.3, is-plain-object@npm:^2.0.4": + version: 2.0.4 + resolution: "is-plain-object@npm:2.0.4" + dependencies: + isobject: ^3.0.1 + checksum: 2f3232267366f3cdf13d53deda1b282ba7959f28ccb2ee8e0ca168f859f0d7126c27c846ebb7c2b9821a09bbda2e1835fd4020337ba666cf3c03dc256aab7ba1 + languageName: node + linkType: hard + +"is-plain-object@npm:^4.0.0": + version: 4.1.1 + resolution: "is-plain-object@npm:4.1.1" + checksum: c63fb5bf602956ab72ca6accb0d005e8bdc5edea68fb53461c9ebbfc9ce365a339a61f2c94f6a889b66c852c91232c652cc01cb81740d2d2b7f23a92ce46e479 + languageName: node + linkType: hard + +"is-potential-custom-element-name@npm:^1.0.0": + version: 1.0.0 + resolution: "is-potential-custom-element-name@npm:1.0.0" + checksum: 55b1ae44cf9241ea5b08414318d12a4d2eb157cb5722908fc7ef268c6d175894cb59d298092a87f9ed54af5b60fc572fa7f6b34b8633120dbe6edaa6c5169d0b + languageName: node + linkType: hard + +"is-promise@npm:^2.1.0": + version: 2.2.2 + resolution: "is-promise@npm:2.2.2" + checksum: 6fe84293b8750d3604a909979a7517a38b1618817f1fbbfdaf4d6138642117c85fbee12927b4d51349a5bcd9bdf8d1bf181f09145ede2d7eb41f4b394ab2ce7d + languageName: node + linkType: hard + +"is-regex@npm:^1.0.4, is-regex@npm:^1.1.0": + version: 1.1.1 + resolution: "is-regex@npm:1.1.1" + dependencies: + has-symbols: ^1.0.1 + checksum: 0c5b9d335c125cc59a83b9446b172d419303034f3cb570e95bfb7b45fc1dfb8bedd7ecf5e8139a99b8fed66894ee516fd7ce376feb109504f64c53092c7f07ee + languageName: node + linkType: hard + +"is-regexp@npm:^1.0.0": + version: 1.0.0 + resolution: "is-regexp@npm:1.0.0" + checksum: b6c3ea4f405d31e20c9612f0480b5deb86d71477f3e08c78a889a8b7b4c9f9e9944b2621b997bede7b94b6f8607dc8333b521b6b69a2f8ad97c80d9eb47d04a9 + languageName: node + linkType: hard + +"is-relative@npm:^1.0.0": + version: 1.0.0 + resolution: "is-relative@npm:1.0.0" + dependencies: + is-unc-path: ^1.0.0 + checksum: a93a7b57d8fa2090757eb2193a58fcf318cd2963787d25cd756842b75c1d78a814105245deec16303a0df3e9263dbb587d55545ad684d6035b3534016a2bc4b3 + languageName: node + linkType: hard + +"is-resolvable@npm:^1.0.0": + version: 1.1.0 + resolution: "is-resolvable@npm:1.1.0" + checksum: ef1a289c54e1115f668cd4fbfd6dc53d6bfa02c2c12e812a578aefbe795b72339cde37e9ee5709d15a21009cadadba2c61cf810f2dd1da29e3c651776c98dda8 + languageName: node + linkType: hard + +"is-root@npm:2.1.0, is-root@npm:^2.1.0": + version: 2.1.0 + resolution: "is-root@npm:2.1.0" + checksum: 7b5afc397e773d7fd3cce118479485b9b6e5d1e3df4aae8fc43d13ad2b3b49a08cbdfbd16ec393fbef8e5cf6187f6ec816dc5616fcffec5a055fceadf13dabb2 + languageName: node + linkType: hard + +"is-ssh@npm:^1.3.0": + version: 1.3.2 + resolution: "is-ssh@npm:1.3.2" + dependencies: + protocols: ^1.1.0 + checksum: a0dca2d8635505958cca01fd813a14aa53583717c64abbb1ae65a87715d5f5e57d9a8ab7f65d6ba3772badf7fe0e11a18fae67c01ecb957b847b972b007f4da3 + languageName: node + linkType: hard + +"is-stream@npm:^1.0.1, is-stream@npm:^1.1.0": + version: 1.1.0 + resolution: "is-stream@npm:1.1.0" + checksum: 39843ee9ff68ebda05237199f18831eb6e0e28db7799ee9ddaac5573b0681f18b4dc427afdb7b7ad906db545e4648999c42a1810b277acc8451593ff59da00fa + languageName: node + linkType: hard + +"is-stream@npm:^2.0.0": + version: 2.0.0 + resolution: "is-stream@npm:2.0.0" + checksum: f92ba04a8b8fafbade79bdaada53a044025db2fbd3fc2be978434db9a097a4afa457c2e3222c70c2ffc38854bde3a352593d6315463a54394f08ca9e51e32b50 + languageName: node + linkType: hard + +"is-string@npm:^1.0.5": + version: 1.0.5 + resolution: "is-string@npm:1.0.5" + checksum: c64c791eb75935db9055291bc598edc22f03d3879b8a050b2955ba8087642d006338a1dedf7ac414c95f985c77c2d6fce655498d33c0df248fa92228a9945720 + languageName: node + linkType: hard + +"is-svg@npm:^3.0.0": + version: 3.0.0 + resolution: "is-svg@npm:3.0.0" + dependencies: + html-comment-regex: ^1.1.0 + checksum: 7dd3f5f18dc7816dcf370b937c3d12f3a74e6aab886032e34d187af7627acaa1c1b0230be6af83dbe02b0f10d97a2d392b12c9be7627fc11a1c588851953c46e + languageName: node + linkType: hard + +"is-symbol@npm:^1.0.2": + version: 1.0.3 + resolution: "is-symbol@npm:1.0.3" + dependencies: + has-symbols: ^1.0.1 + checksum: 753aa0cf95069387521b110c6646df4e0b5cce76cf604521c26b4f5d30a997a95036ed5930c0cca9e850ac6fccb04de551cc95aab71df471ee88e04ed1a96f21 + languageName: node + linkType: hard + +"is-text-path@npm:^1.0.1": + version: 1.0.1 + resolution: "is-text-path@npm:1.0.1" + dependencies: + text-extensions: ^1.0.0 + checksum: 7c46df2e802e4ec57ee3c75664a32008625c4fbccf9e0a4bb7713f84983075b4e1386711c3764d3a67a1fc54a4b3a27ebdb0350bdeb80aaddd56166bf4f5654e + languageName: node + linkType: hard + +"is-typedarray@npm:^1.0.0, is-typedarray@npm:~1.0.0": + version: 1.0.0 + resolution: "is-typedarray@npm:1.0.0" + checksum: 4e21156e7360a5916eded35c5938adf6278299a8055640864eebb251e4351cd605beccddf9af27477e19f753d453412fe0c21379bb54b55cfdf5add263076959 + languageName: node + linkType: hard + +"is-unc-path@npm:^1.0.0": + version: 1.0.0 + resolution: "is-unc-path@npm:1.0.0" + dependencies: + unc-path-regex: ^0.1.2 + checksum: ee43c89aa0dcf0292e50b0994cdb02d8c14bebea54d87f447915374982a66ffdf6e24780c7306c23a454a083c5b05a87dc84c9432bb17bbeddb1a4c6e52575c0 + languageName: node + linkType: hard + +"is-utf8@npm:^0.2.0": + version: 0.2.1 + resolution: "is-utf8@npm:0.2.1" + checksum: c72f604d72b72f6a57f9b2e22c9b6f480e869b3f0efe141bd1dfbc36655225043ca8c1316ff8e343ef641cf80868c9e4a37345492f31402abd5ab68e09367977 + languageName: node + linkType: hard + +"is-whitespace-character@npm:^1.0.0": + version: 1.0.4 + resolution: "is-whitespace-character@npm:1.0.4" + checksum: fd6dbced044036b5c46213399b6f8825ca664a42278cfbeede1970ab3511a1b5ed64ee63b5a7b25afa094762fe778223b530e956dd28f894ceb4c10516fc7b27 + languageName: node + linkType: hard + +"is-windows@npm:^1.0.0, is-windows@npm:^1.0.1, is-windows@npm:^1.0.2": + version: 1.0.2 + resolution: "is-windows@npm:1.0.2" + checksum: dd1ed8339a28c68fb52f05931c832488dafc90063e53b97a69ead219a5584d7f3e6e564731c2f983962ff5403afeb05365d88ce9af34c8dae76a14911020d73a + languageName: node + linkType: hard + +"is-word-character@npm:^1.0.0": + version: 1.0.4 + resolution: "is-word-character@npm:1.0.4" + checksum: 84da3b0a2c0a15623fbfa40a1a81d3ffa37879745b83eb4079edc9d4d3be0bd97de3c04defaf822c16a3d991688d18285dec30f233ac57aa5a2e31a2e22f95d0 + languageName: node + linkType: hard + +"is-wsl@npm:^1.1.0": + version: 1.1.0 + resolution: "is-wsl@npm:1.1.0" + checksum: 0f15cf5d5ff025afb0ba9cb49fd425b5d533b2af700533d343b7fa9aaca2f6c8242ba1c1a4e30c925522816bf0172fec2ae7cacaae682c91ffa0cd3f88ff1e8e + languageName: node + linkType: hard + +"is-wsl@npm:^2.1.1, is-wsl@npm:^2.2.0": + version: 2.2.0 + resolution: "is-wsl@npm:2.2.0" + dependencies: + is-docker: ^2.0.0 + checksum: 3dcc4073d4682b9f9a4c59411bb73716cfff88eae58a6bd0af302b8ee016263a5150302bb296bc81a4cb0d3b66c86d82b3ee0146ed15f6558022bc847a2549a2 + languageName: node + linkType: hard + +"is-yarn-global@npm:^0.3.0": + version: 0.3.0 + resolution: "is-yarn-global@npm:0.3.0" + checksum: 5a66f706f24e76979ce252a8f5ff4bb680da3c3eb978a2930f0147fecaa583eefb4ee1765bcfb85c0b4e83f67a231355e158a89b0047e83649f8f11a93563ef9 + languageName: node + linkType: hard + +"is_js@npm:^0.9.0": + version: 0.9.0 + resolution: "is_js@npm:0.9.0" + checksum: 07f24094f8f705aea62138b30c87f8008db7d6b465130c7790cea5bec7b1a22195b9a26869c6b3c416f3226833d523e2d70abf14be6940aa6958fd0476aaa6df + languageName: node + linkType: hard + +"isarray@npm:0.0.1": + version: 0.0.1 + resolution: "isarray@npm:0.0.1" + checksum: daeda3c23646200b0b464b7a9030d10008d7701fc6b7a1b45cafe42b4f4d2dde20835b56f19a49e04bb218245b7f7a2bcc6d0f696cff3711e4eddaa2031c611f + languageName: node + linkType: hard + +"isarray@npm:1.0.0, isarray@npm:^1.0.0, isarray@npm:~1.0.0": + version: 1.0.0 + resolution: "isarray@npm:1.0.0" + checksum: b0ff31a290e783f7b3fb73f2951ee7fc2946dc197b05f73577dc77f87dc3be2e0f66007bedf069123d4e5c4b691e7c89a241f6ca06f0c0f4765cdac5aa4b4047 + languageName: node + linkType: hard + +"isexe@npm:^2.0.0": + version: 2.0.0 + resolution: "isexe@npm:2.0.0" + checksum: 7b437980bb77881a146fba85cfbdf01edc2b148673e9c2722a1e49661fea73adf524430a80fdbfb8ce9f60d43224e682c657c45030482bd39e0c488fc29b4afe + languageName: node + linkType: hard + +"isobject@npm:^2.0.0": + version: 2.1.0 + resolution: "isobject@npm:2.1.0" + dependencies: + isarray: 1.0.0 + checksum: 2e7d7dd8d5874d1c32a0380f8b5d8d84aee782e0137e5978f75e27402ee2d49ca194baf7acd43d176f4fe0d925090b8b336461741674f402558e954c8c4ee886 + languageName: node + linkType: hard + +"isobject@npm:^3.0.0, isobject@npm:^3.0.1": + version: 3.0.1 + resolution: "isobject@npm:3.0.1" + checksum: b537a9ccdd8d40ec552fe7ff5db3731f1deb77581adf9beb8ae812f8d08acfa0e74b193159ac50fb01084d7ade06d114077f984e21b8340531241bf85be9a0ab + languageName: node + linkType: hard + +"isomorphic-fetch@npm:^2.1.1, isomorphic-fetch@npm:^2.2.1": + version: 2.2.1 + resolution: "isomorphic-fetch@npm:2.2.1" + dependencies: + node-fetch: ^1.0.1 + whatwg-fetch: ">=0.10.0" + checksum: a4174e332ae98fc93269162f1d8a3ee1f7255257d4eaeea5145d4068f64ac2dbff7e7f681889097238e1e009f7a74ba1a23ffd8ed967402777a32cca96204508 + languageName: node + linkType: hard + +"isstream@npm:~0.1.2": + version: 0.1.2 + resolution: "isstream@npm:0.1.2" + checksum: 8e6e5c4cf1823562db7035d2e7bac388412060fe9bc6727eca8c608def5aa57709165c51c2e68a2fce6ff0b64d79489501b84715060c5e8a477b87b6cbcd1eca + languageName: node + linkType: hard + +"istanbul-lib-coverage@npm:^2.0.2, istanbul-lib-coverage@npm:^2.0.5": + version: 2.0.5 + resolution: "istanbul-lib-coverage@npm:2.0.5" + checksum: 72737ebc48c31a45ab80fb1161b4c79a7d035d3088007ec55ec7a53b8bf6ae107a8222335e018978720270d71f2036abe73e150da4733f573be32398ad6aedd1 + languageName: node + linkType: hard + +"istanbul-lib-coverage@npm:^3.0.0": + version: 3.0.0 + resolution: "istanbul-lib-coverage@npm:3.0.0" + checksum: c8effc09ae00fc7974a10ee245fa2c3eceda840e8f46245b80bddc7101b84cf2ac0bcce514aa47e338de610cad06af1b6e3c21f679aebf03e398651898ca9aad + languageName: node + linkType: hard + +"istanbul-lib-instrument@npm:^3.0.1, istanbul-lib-instrument@npm:^3.3.0": + version: 3.3.0 + resolution: "istanbul-lib-instrument@npm:3.3.0" + dependencies: + "@babel/generator": ^7.4.0 + "@babel/parser": ^7.4.3 + "@babel/template": ^7.4.0 + "@babel/traverse": ^7.4.3 + "@babel/types": ^7.4.0 + istanbul-lib-coverage: ^2.0.5 + semver: ^6.0.0 + checksum: d7a7dae5db459ac4365cea3ecdaf0586c79bfb850059e2fc2364c060ca6bcbbf686675d8944d6490a52f0d018781403ec5902523430e7a404d4f2b2ad82e1aef + languageName: node + linkType: hard + +"istanbul-lib-instrument@npm:^4.0.0, istanbul-lib-instrument@npm:^4.0.3": + version: 4.0.3 + resolution: "istanbul-lib-instrument@npm:4.0.3" + dependencies: + "@babel/core": ^7.7.5 + "@istanbuljs/schema": ^0.1.2 + istanbul-lib-coverage: ^3.0.0 + semver: ^6.3.0 + checksum: 478e43e75d3a0e8af3902dd11a8606b665dda005e4aaf6d1919c6ed570a557dc253553a56a26466df02e5703e722fba6a37f4f847cc6d1d0e8314df024d1d76c + languageName: node + linkType: hard + +"istanbul-lib-report@npm:^2.0.4": + version: 2.0.8 + resolution: "istanbul-lib-report@npm:2.0.8" + dependencies: + istanbul-lib-coverage: ^2.0.5 + make-dir: ^2.1.0 + supports-color: ^6.1.0 + checksum: 63b898ed9e59f84eacfccb1b1450c09815ca8a70b7ff763ad489dd332d1ead6a81eefdc4e14e61ab6d05feaba78d8f3231d5eaa9ef3207ce5cd74be437393f1f + languageName: node + linkType: hard + +"istanbul-lib-report@npm:^3.0.0": + version: 3.0.0 + resolution: "istanbul-lib-report@npm:3.0.0" + dependencies: + istanbul-lib-coverage: ^3.0.0 + make-dir: ^3.0.0 + supports-color: ^7.1.0 + checksum: aada59dfceae04005f684031a627f1e9730634262a5426837a9b60c49530d626dc727be5930e7ae6303ce0d4357fb8331eda0935b8c6b999df5d376bdc825991 + languageName: node + linkType: hard + +"istanbul-lib-source-maps@npm:^3.0.1": + version: 3.0.6 + resolution: "istanbul-lib-source-maps@npm:3.0.6" + dependencies: + debug: ^4.1.1 + istanbul-lib-coverage: ^2.0.5 + make-dir: ^2.1.0 + rimraf: ^2.6.3 + source-map: ^0.6.1 + checksum: f883303e1487669a9a2eb88c98fbdc5dec4c5610caa087c7629eb6a5718f8af53ad541cc820b1a92879590a4cef4a6ea60d579be047dd4a011829a74df4db27e + languageName: node + linkType: hard + +"istanbul-lib-source-maps@npm:^4.0.0": + version: 4.0.0 + resolution: "istanbul-lib-source-maps@npm:4.0.0" + dependencies: + debug: ^4.1.1 + istanbul-lib-coverage: ^3.0.0 + source-map: ^0.6.1 + checksum: 018b5feeb4a3eb32675abb0129e88e48009de6c0b1c1c7006e8dadd5b15e54f4c09cbbeba0febf8bd7bacd25a514abc61c91e4340479d859a0c185448f692099 + languageName: node + linkType: hard + +"istanbul-reports@npm:^2.2.6": + version: 2.2.7 + resolution: "istanbul-reports@npm:2.2.7" + dependencies: + html-escaper: ^2.0.0 + checksum: 828f4afd30f1248aaf2ae65a606aa889611165de2c71eaa6a8953eeb4bdbf4b19072b5ec224d465a7511ed02a63a8fabf08c915ab08f7016310a512d4e14c2ac + languageName: node + linkType: hard + +"istanbul-reports@npm:^3.0.2": + version: 3.0.2 + resolution: "istanbul-reports@npm:3.0.2" + dependencies: + html-escaper: ^2.0.0 + istanbul-lib-report: ^3.0.0 + checksum: d4ed416e13fe0fc709566439086660ddab58dce9d6a655053c5315715aac8225bc7e9fcae553c2c3d8cc66cd4b59498a50b92d543a4820c5be0e5ee30178cdf0 + languageName: node + linkType: hard + +"iterall@npm:^1.1.3, iterall@npm:^1.2.1, iterall@npm:^1.2.2, iterall@npm:^1.3.0": + version: 1.3.0 + resolution: "iterall@npm:1.3.0" + checksum: 25ae2d07cf97fc35d43fa7af814839689416b83d3ade0fec97a62c58b7b9fad5ff89dd0ede99f2d67cae2697ffa6987f0ab10876f40ae6466e802609a05b1006 + languageName: node + linkType: hard + +"jest-changed-files@npm:^24.9.0": + version: 24.9.0 + resolution: "jest-changed-files@npm:24.9.0" + dependencies: + "@jest/types": ^24.9.0 + execa: ^1.0.0 + throat: ^4.0.0 + checksum: cd341b76fa05b94dece212afd819b68f84408fe21e784bd08d7da88dfb155682d92b3573fb3b90d2e87bbbfa09c077d4bfc4fbfcb48c6c69a741fc6c1471f602 + languageName: node + linkType: hard + +"jest-changed-files@npm:^26.2.0": + version: 26.2.0 + resolution: "jest-changed-files@npm:26.2.0" + dependencies: + "@jest/types": ^26.2.0 + execa: ^4.0.0 + throat: ^5.0.0 + checksum: d38d62d2ad736cb83a10fd26bb125029cdf24d2905ccc3993493c92fb1f1b6a34ebc992031e87a7a436610edfd4f76412a2c84b41f783123f4c111a325ce1052 + languageName: node + linkType: hard + +"jest-cli@npm:^24.9.0": + version: 24.9.0 + resolution: "jest-cli@npm:24.9.0" + dependencies: + "@jest/core": ^24.9.0 + "@jest/test-result": ^24.9.0 + "@jest/types": ^24.9.0 + chalk: ^2.0.1 + exit: ^0.1.2 + import-local: ^2.0.0 + is-ci: ^2.0.0 + jest-config: ^24.9.0 + jest-util: ^24.9.0 + jest-validate: ^24.9.0 + prompts: ^2.0.1 + realpath-native: ^1.1.0 + yargs: ^13.3.0 + bin: + jest: ./bin/jest.js + checksum: ae39e4654c51f6b61c81f9aa8780945522adcfc107fec4f5e9c987207a987069082575a4f660cfcc013136e98c9b9e43d31287ddb68e01492fb498eb02fa8fb0 + languageName: node + linkType: hard + +"jest-cli@npm:^26.2.2": + version: 26.2.2 + resolution: "jest-cli@npm:26.2.2" + dependencies: + "@jest/core": ^26.2.2 + "@jest/test-result": ^26.2.0 + "@jest/types": ^26.2.0 + chalk: ^4.0.0 + exit: ^0.1.2 + graceful-fs: ^4.2.4 + import-local: ^3.0.2 + is-ci: ^2.0.0 + jest-config: ^26.2.2 + jest-util: ^26.2.0 + jest-validate: ^26.2.0 + prompts: ^2.0.1 + yargs: ^15.3.1 + bin: + jest: bin/jest.js + checksum: 2367a776e5ff439e0e7d0763369b620f812f0e7dbbe3e19e627aa92f8152265fa31cc877aed311be251b751ae17a208f6fe61fefcc423771a3a6342ae8b53605 + languageName: node + linkType: hard + +"jest-config@npm:^24.9.0": + version: 24.9.0 + resolution: "jest-config@npm:24.9.0" + dependencies: + "@babel/core": ^7.1.0 + "@jest/test-sequencer": ^24.9.0 + "@jest/types": ^24.9.0 + babel-jest: ^24.9.0 + chalk: ^2.0.1 + glob: ^7.1.1 + jest-environment-jsdom: ^24.9.0 + jest-environment-node: ^24.9.0 + jest-get-type: ^24.9.0 + jest-jasmine2: ^24.9.0 + jest-regex-util: ^24.3.0 + jest-resolve: ^24.9.0 + jest-util: ^24.9.0 + jest-validate: ^24.9.0 + micromatch: ^3.1.10 + pretty-format: ^24.9.0 + realpath-native: ^1.1.0 + checksum: 00c16a265423ca5c5ee229f9088e709bd85dbcfd80b0b0c50d2d885445935b651e6b45e80065419f3727b96f0273e655cc23964d0cdcf65b33f7065de482cf10 + languageName: node + linkType: hard + +"jest-config@npm:^26.2.2": + version: 26.2.2 + resolution: "jest-config@npm:26.2.2" + dependencies: + "@babel/core": ^7.1.0 + "@jest/test-sequencer": ^26.2.2 + "@jest/types": ^26.2.0 + babel-jest: ^26.2.2 + chalk: ^4.0.0 + deepmerge: ^4.2.2 + glob: ^7.1.1 + graceful-fs: ^4.2.4 + jest-environment-jsdom: ^26.2.0 + jest-environment-node: ^26.2.0 + jest-get-type: ^26.0.0 + jest-jasmine2: ^26.2.2 + jest-regex-util: ^26.0.0 + jest-resolve: ^26.2.2 + jest-util: ^26.2.0 + jest-validate: ^26.2.0 + micromatch: ^4.0.2 + pretty-format: ^26.2.0 + checksum: 8b0920927ad71c23b0aaeed4b46f56f85b3b36a31259dc6888c6800df8cca65322464e7701821b402ef4664d3c72487679f308a547e47be2edbad856301f487d + languageName: node + linkType: hard + +"jest-diff@npm:^24.9.0": + version: 24.9.0 + resolution: "jest-diff@npm:24.9.0" + dependencies: + chalk: ^2.0.1 + diff-sequences: ^24.9.0 + jest-get-type: ^24.9.0 + pretty-format: ^24.9.0 + checksum: ba4aa10e5712ad365700921c90362dae8c2ab5b2c599b6f64fc4f3013f6208d760cb2980d491010e602e4a36b28a5c18fceba251f7602929d93300ae03ae931c + languageName: node + linkType: hard + +"jest-diff@npm:^25.2.1": + version: 25.5.0 + resolution: "jest-diff@npm:25.5.0" + dependencies: + chalk: ^3.0.0 + diff-sequences: ^25.2.6 + jest-get-type: ^25.2.6 + pretty-format: ^25.5.0 + checksum: 14a2634ecb159a9a2f061239db1cea0c889e7a72ab05bd1fa799db30efca2ce79291372823f5e3468d9bc856f404f312e44e89c171eea8132b5835d12f71d0b3 + languageName: node + linkType: hard + +"jest-diff@npm:^26.2.0": + version: 26.2.0 + resolution: "jest-diff@npm:26.2.0" + dependencies: + chalk: ^4.0.0 + diff-sequences: ^26.0.0 + jest-get-type: ^26.0.0 + pretty-format: ^26.2.0 + checksum: 30942bce9a1d98ff1a0dcd3ac579c61933e7cd15fe0bcb24496d0597ba78038f505a45fb83336adc4534ef4366e523e96909cf6b7a74a1b6d59f64c4bebc0d09 + languageName: node + linkType: hard + +"jest-docblock@npm:^24.3.0": + version: 24.9.0 + resolution: "jest-docblock@npm:24.9.0" + dependencies: + detect-newline: ^2.1.0 + checksum: c68724ccda9d8cc8d8bea2c23cfdf252c6a903f61802d063f2e6ab983463899a490897c3172bd853ca0c887c998a49bcac11cc6fa56fe6d68ddd7f1bc58760b6 + languageName: node + linkType: hard + +"jest-docblock@npm:^26.0.0": + version: 26.0.0 + resolution: "jest-docblock@npm:26.0.0" + dependencies: + detect-newline: ^3.0.0 + checksum: 54b8ea1c8445a4b15e9ee5035f1bd60b0d492b87258995133a1b5df43a07803c93b54e8adaa45eae05778bd61ad57745491c625e7aa65198a9aa4f0c79030b56 + languageName: node + linkType: hard + +"jest-each@npm:^24.9.0": + version: 24.9.0 + resolution: "jest-each@npm:24.9.0" + dependencies: + "@jest/types": ^24.9.0 + chalk: ^2.0.1 + jest-get-type: ^24.9.0 + jest-util: ^24.9.0 + pretty-format: ^24.9.0 + checksum: 6916be0ce87d6cf5b059cb1238e024497ad7fadc18d891f7f4b2334ce7d83d4e9531c06fd8bf2e1ee9b41b8b6f3cb0206f46e8632e85824c53abec698528a5dd + languageName: node + linkType: hard + +"jest-each@npm:^26.2.0": + version: 26.2.0 + resolution: "jest-each@npm:26.2.0" + dependencies: + "@jest/types": ^26.2.0 + chalk: ^4.0.0 + jest-get-type: ^26.0.0 + jest-util: ^26.2.0 + pretty-format: ^26.2.0 + checksum: 99487076e6f3b653b0416d5fdf511a1d9fb8cc7b1ce4c07f99927d76c7ebb77535d76b294b835c9455eaf239680d946267c5345ada8d7310712c0cf88c8c98d1 + languageName: node + linkType: hard + +"jest-environment-jsdom-fourteen@npm:1.0.1": + version: 1.0.1 + resolution: "jest-environment-jsdom-fourteen@npm:1.0.1" + dependencies: + "@jest/environment": ^24.3.0 + "@jest/fake-timers": ^24.3.0 + "@jest/types": ^24.3.0 + jest-mock: ^24.0.0 + jest-util: ^24.0.0 + jsdom: ^14.1.0 + checksum: c90070cf92a338aff49bd46c634e9bc42bb198d841f880bb63610de6c4877251936750b24e4e7821888c70528a6797846028cb20775b6d62becfaa58b58381fc + languageName: node + linkType: hard + +"jest-environment-jsdom@npm:^24.9.0": + version: 24.9.0 + resolution: "jest-environment-jsdom@npm:24.9.0" + dependencies: + "@jest/environment": ^24.9.0 + "@jest/fake-timers": ^24.9.0 + "@jest/types": ^24.9.0 + jest-mock: ^24.9.0 + jest-util: ^24.9.0 + jsdom: ^11.5.1 + checksum: 403539fe7d01142b0588fa1a95add2bbf1aec61cb328b95cdb65b5748145ef59da1abf621c798a2bfce911fde87898f6a4f1dd21810a8062584b571a3941b83c + languageName: node + linkType: hard + +"jest-environment-jsdom@npm:^26.2.0": + version: 26.2.0 + resolution: "jest-environment-jsdom@npm:26.2.0" + dependencies: + "@jest/environment": ^26.2.0 + "@jest/fake-timers": ^26.2.0 + "@jest/types": ^26.2.0 + "@types/node": "*" + jest-mock: ^26.2.0 + jest-util: ^26.2.0 + jsdom: ^16.2.2 + checksum: 65198f8bc5969d101f4824d27e6a6e55c699764a3d80ea52c1cb2dc685f84a07b87dddcbb797eed429561a15717daa95f2186d07f0e9b47c1faa657f914141ee + languageName: node + linkType: hard + +"jest-environment-node@npm:^24.9.0": + version: 24.9.0 + resolution: "jest-environment-node@npm:24.9.0" + dependencies: + "@jest/environment": ^24.9.0 + "@jest/fake-timers": ^24.9.0 + "@jest/types": ^24.9.0 + jest-mock: ^24.9.0 + jest-util: ^24.9.0 + checksum: cc8592650b9f99c90faab9effbfc76e00da6a8ab3c15e21644192034d428539ad7ed3c5e76bce29a5cfcf737818f950077cd06eefae13d0bf4eea5656ffca56a + languageName: node + linkType: hard + +"jest-environment-node@npm:^26.2.0": + version: 26.2.0 + resolution: "jest-environment-node@npm:26.2.0" + dependencies: + "@jest/environment": ^26.2.0 + "@jest/fake-timers": ^26.2.0 + "@jest/types": ^26.2.0 + "@types/node": "*" + jest-mock: ^26.2.0 + jest-util: ^26.2.0 + checksum: 1d2dad5ff938eef3e9b4c44da3a2927299b5c06d2f0cdb7a869c5427cd1fbbeb2280caabe86a70d9e0a282323ab5156f1283295b9565192cc5999f0ddbb613dd + languageName: node + linkType: hard + +"jest-get-type@npm:^24.9.0": + version: 24.9.0 + resolution: "jest-get-type@npm:24.9.0" + checksum: 0e6164dff23f8cd664a46642d2167b743e67349c57ff908259b56e3f5c81f8d2a13de2dd473a1a3d7682adcfe85888d14b0496ba51c5c8095eb52bf7526c3918 + languageName: node + linkType: hard + +"jest-get-type@npm:^25.2.6": + version: 25.2.6 + resolution: "jest-get-type@npm:25.2.6" + checksum: 6051fcb75cdaa8fad66fd5a1e91d2c1597e9ccc54eecd5cd489fd73a00e322d28cb5859b656a8224a41eddab0ecfb875df9ec62f545a76afa1a55d3ba97fba6d + languageName: node + linkType: hard + +"jest-get-type@npm:^26.0.0": + version: 26.0.0 + resolution: "jest-get-type@npm:26.0.0" + checksum: df81e05d3e759dcadcd575ff559db63e3774c36c4c6e02a4ae8e925fe47f1e9fbdd4f157fbe317c691df5e5a256a15fcd76699c6121d90b6749ce25dbca75817 + languageName: node + linkType: hard + +"jest-haste-map@npm:^24.9.0": + version: 24.9.0 + resolution: "jest-haste-map@npm:24.9.0" + dependencies: + "@jest/types": ^24.9.0 + anymatch: ^2.0.0 + fb-watchman: ^2.0.0 + fsevents: ^1.2.7 + graceful-fs: ^4.1.15 + invariant: ^2.2.4 + jest-serializer: ^24.9.0 + jest-util: ^24.9.0 + jest-worker: ^24.9.0 + micromatch: ^3.1.10 + sane: ^4.0.3 + walker: ^1.0.7 + dependenciesMeta: + fsevents: + optional: true + checksum: 4b836aebac76df7fdf0c67924453900cb2f1f4cef211007d707c1cd0d8c4041694089f3c84720643aa4b1fbab743d1d2da0317e16a6d8aa81302438f05b8a967 + languageName: node + linkType: hard + +"jest-haste-map@npm:^26.2.2": + version: 26.2.2 + resolution: "jest-haste-map@npm:26.2.2" + dependencies: + "@jest/types": ^26.2.0 + "@types/graceful-fs": ^4.1.2 + "@types/node": "*" + anymatch: ^3.0.3 + fb-watchman: ^2.0.0 + fsevents: ^2.1.2 + graceful-fs: ^4.2.4 + jest-regex-util: ^26.0.0 + jest-serializer: ^26.2.0 + jest-util: ^26.2.0 + jest-worker: ^26.2.1 + micromatch: ^4.0.2 + sane: ^4.0.3 + walker: ^1.0.7 + dependenciesMeta: + fsevents: + optional: true + checksum: af1cfc77f9a5ce74fddb7102519239f7a62d373d97ab55941a2a025fc134a682b7cb91bac3c1e7811735797540f569f634c7e81ff31bd5a745ca46f1c296181e + languageName: node + linkType: hard + +"jest-jasmine2@npm:^24.9.0": + version: 24.9.0 + resolution: "jest-jasmine2@npm:24.9.0" + dependencies: + "@babel/traverse": ^7.1.0 + "@jest/environment": ^24.9.0 + "@jest/test-result": ^24.9.0 + "@jest/types": ^24.9.0 + chalk: ^2.0.1 + co: ^4.6.0 + expect: ^24.9.0 + is-generator-fn: ^2.0.0 + jest-each: ^24.9.0 + jest-matcher-utils: ^24.9.0 + jest-message-util: ^24.9.0 + jest-runtime: ^24.9.0 + jest-snapshot: ^24.9.0 + jest-util: ^24.9.0 + pretty-format: ^24.9.0 + throat: ^4.0.0 + checksum: 15e181e873ddb6a83c8eb7a53add5de805fd399d5c1e15fd2bfe3e6dcfb79c9a31b69d0ced91b4f0c92bbd1c80cd73244f5bb291cf0c194c0f9a130ef60af885 + languageName: node + linkType: hard + +"jest-jasmine2@npm:^26.2.2": + version: 26.2.2 + resolution: "jest-jasmine2@npm:26.2.2" + dependencies: + "@babel/traverse": ^7.1.0 + "@jest/environment": ^26.2.0 + "@jest/source-map": ^26.1.0 + "@jest/test-result": ^26.2.0 + "@jest/types": ^26.2.0 + "@types/node": "*" + chalk: ^4.0.0 + co: ^4.6.0 + expect: ^26.2.0 + is-generator-fn: ^2.0.0 + jest-each: ^26.2.0 + jest-matcher-utils: ^26.2.0 + jest-message-util: ^26.2.0 + jest-runtime: ^26.2.2 + jest-snapshot: ^26.2.2 + jest-util: ^26.2.0 + pretty-format: ^26.2.0 + throat: ^5.0.0 + checksum: b4aa2bee7cb0d45a78b89c817e90635e98c6ddb1585d80d7c5f12ee98a2f903bec2466062cabc09f62cf5dbc0509d55e625bc534e6d509d975a6d54e6c5d1acf + languageName: node + linkType: hard + +"jest-leak-detector@npm:^24.9.0": + version: 24.9.0 + resolution: "jest-leak-detector@npm:24.9.0" + dependencies: + jest-get-type: ^24.9.0 + pretty-format: ^24.9.0 + checksum: 68f09bbbee0ef57c9ec47c163d46adb4ad34b256b6ee7d5ca639cba6f57e0661ff216635adad54e6c5e19b47fd38fc68ff252ce2ebf86f205340d317531eabb7 + languageName: node + linkType: hard + +"jest-leak-detector@npm:^26.2.0": + version: 26.2.0 + resolution: "jest-leak-detector@npm:26.2.0" + dependencies: + jest-get-type: ^26.0.0 + pretty-format: ^26.2.0 + checksum: ffccb99b6b0a3cd328c054d2efedfc7eba5ee8a698541707c174d3ef7ec5129b7e7f305d149f60910fd001c986e5a39f1fb3a63b5c2792428b46a2c79dd92a5d + languageName: node + linkType: hard + +"jest-localstorage-mock@npm:2.4.2": + version: 2.4.2 + resolution: "jest-localstorage-mock@npm:2.4.2" + checksum: c582f6d3755968c783cc6ae4c0082a7d0c766514ebc519ed0d44ce7f82c2c513f344e7aaafe9792f354b37cf40eb1c1d2ea7c77328fb859d2cb636e711aea9dd + languageName: node + linkType: hard + +"jest-matcher-utils@npm:^24.9.0": + version: 24.9.0 + resolution: "jest-matcher-utils@npm:24.9.0" + dependencies: + chalk: ^2.0.1 + jest-diff: ^24.9.0 + jest-get-type: ^24.9.0 + pretty-format: ^24.9.0 + checksum: 3f7d216a5f3ba562692e8f54add1391516af7dba4ad8e48256a732bbb2fef177b0a9095c3e3f21172ef1f461a73f3fa2c02a60093e3f4d556d6967d25c47e4b7 + languageName: node + linkType: hard + +"jest-matcher-utils@npm:^26.2.0": + version: 26.2.0 + resolution: "jest-matcher-utils@npm:26.2.0" + dependencies: + chalk: ^4.0.0 + jest-diff: ^26.2.0 + jest-get-type: ^26.0.0 + pretty-format: ^26.2.0 + checksum: 3df11cb20242c4432bc6bc237e260ede3b6266e3be7e32c8c7f24454fa200058f698adb92847ad1cde212b8ad23005f23aaff0b654e1de3fcb06d8ed6059565b + languageName: node + linkType: hard + +"jest-message-util@npm:^24.9.0": + version: 24.9.0 + resolution: "jest-message-util@npm:24.9.0" + dependencies: + "@babel/code-frame": ^7.0.0 + "@jest/test-result": ^24.9.0 + "@jest/types": ^24.9.0 + "@types/stack-utils": ^1.0.1 + chalk: ^2.0.1 + micromatch: ^3.1.10 + slash: ^2.0.0 + stack-utils: ^1.0.1 + checksum: da57503c89eefbb520217fad8cc3b0b6f1b0dc33212dd7d00fcdf179586aab2686999d982a26cd9bf2eef47a1dc33eb668a9f0e668d1337cf06c28cac3f1eff6 + languageName: node + linkType: hard + +"jest-message-util@npm:^26.2.0": + version: 26.2.0 + resolution: "jest-message-util@npm:26.2.0" + dependencies: + "@babel/code-frame": ^7.0.0 + "@jest/types": ^26.2.0 + "@types/stack-utils": ^1.0.1 + chalk: ^4.0.0 + graceful-fs: ^4.2.4 + micromatch: ^4.0.2 + slash: ^3.0.0 + stack-utils: ^2.0.2 + checksum: 56d71adf1c9b536a8cbb911bd5043e960ba006422c60dbf81b92c45ea017aa01973007668e143ca31fd6fd0a6d9b018a638887634d7f134a9a3b7b3557e71148 + languageName: node + linkType: hard + +"jest-mock@npm:^24.0.0, jest-mock@npm:^24.9.0": + version: 24.9.0 + resolution: "jest-mock@npm:24.9.0" + dependencies: + "@jest/types": ^24.9.0 + checksum: efb18eadac77dfb2a0c193ee50f03ac2374b516d749925912cf45de6312037601d95814b6981992720da4bed8d0db08724bfd65ac25db9eb20c94102f6d65055 + languageName: node + linkType: hard + +"jest-mock@npm:^26.2.0": + version: 26.2.0 + resolution: "jest-mock@npm:26.2.0" + dependencies: + "@jest/types": ^26.2.0 + "@types/node": "*" + checksum: a69f52d63ec72f3f11757ee07c8a8c179f64e7fa4d58e7c862cba1dcba9e0222a256c09636206620b53fbd09e03268622173b10942afc1ebb2d53dcc599791cd + languageName: node + linkType: hard + +"jest-pnp-resolver@npm:^1.2.1, jest-pnp-resolver@npm:^1.2.2": + version: 1.2.2 + resolution: "jest-pnp-resolver@npm:1.2.2" + peerDependencies: + jest-resolve: "*" + peerDependenciesMeta: + jest-resolve: + optional: true + checksum: d91c86e3899f35ac1a6d40fa29e94212fc9b8e5e70d31d77ff281413441c844ec44a3673a3860f9b2155fed6738548f52eee9e63845e8d5f8550a890533c78cc + languageName: node + linkType: hard + +"jest-regex-util@npm:^24.3.0, jest-regex-util@npm:^24.9.0": + version: 24.9.0 + resolution: "jest-regex-util@npm:24.9.0" + checksum: 3a30d04bcfd779397d38c6b663c0e45492bba83908c57d3498bd682aa4dd299565edb7620e38de2225c19bc06ad8febfb268101494caee39b08c1d1493050a8d + languageName: node + linkType: hard + +"jest-regex-util@npm:^26.0.0": + version: 26.0.0 + resolution: "jest-regex-util@npm:26.0.0" + checksum: a3d08a852a7b79e3071ebe112b9fb4122efe6b987477e6769eb78814a8306d3c9e29ed544f25bb6a6d3737668b67ee4339810ed5fe5a9d6318639d6f81f47d3d + languageName: node + linkType: hard + +"jest-resolve-dependencies@npm:^24.9.0": + version: 24.9.0 + resolution: "jest-resolve-dependencies@npm:24.9.0" + dependencies: + "@jest/types": ^24.9.0 + jest-regex-util: ^24.3.0 + jest-snapshot: ^24.9.0 + checksum: d8f94798ec73b7bf5ef39334fb89318b15a1dc11fd53c3e5114e723b35283b7fe5b0e929d1f69824a86a11ecf37584c818e5f0476bd5a774cf9f43d70c277fd2 + languageName: node + linkType: hard + +"jest-resolve-dependencies@npm:^26.2.2": + version: 26.2.2 + resolution: "jest-resolve-dependencies@npm:26.2.2" + dependencies: + "@jest/types": ^26.2.0 + jest-regex-util: ^26.0.0 + jest-snapshot: ^26.2.2 + checksum: 55f6a7518194e5dc4a3370e35852935a5d4afdb7026ccafa71e6a427e0237c3a0cbb29304bf93d9cda8ddabb948a157e9edb7c9e2d8b485a4befe7d11109b101 + languageName: node + linkType: hard + +"jest-resolve@npm:24.9.0, jest-resolve@npm:^24.9.0": + version: 24.9.0 + resolution: "jest-resolve@npm:24.9.0" + dependencies: + "@jest/types": ^24.9.0 + browser-resolve: ^1.11.3 + chalk: ^2.0.1 + jest-pnp-resolver: ^1.2.1 + realpath-native: ^1.1.0 + checksum: 2d6c5abf8b570b324d49caca820875aea566df3b9725978183975147f6bae0f9c9ad7b2601522c7c9be88da86e428cb360f4e8d8f94d7290ff312b9289692528 + languageName: node + linkType: hard + +"jest-resolve@npm:26.2.2, jest-resolve@npm:^26.2.2": + version: 26.2.2 + resolution: "jest-resolve@npm:26.2.2" + dependencies: + "@jest/types": ^26.2.0 + chalk: ^4.0.0 + graceful-fs: ^4.2.4 + jest-pnp-resolver: ^1.2.2 + jest-util: ^26.2.0 + read-pkg-up: ^7.0.1 + resolve: ^1.17.0 + slash: ^3.0.0 + checksum: 80665c16506408bcf2012bfcc4e4ba7782feac02e2405fc69ce2092d7f62057583a45bbc6d63107335d638ec76afa433f7c045f9e4970756b3e56abb3b962d77 + languageName: node + linkType: hard + +"jest-runner@npm:^24.9.0": + version: 24.9.0 + resolution: "jest-runner@npm:24.9.0" + dependencies: + "@jest/console": ^24.7.1 + "@jest/environment": ^24.9.0 + "@jest/test-result": ^24.9.0 + "@jest/types": ^24.9.0 + chalk: ^2.4.2 + exit: ^0.1.2 + graceful-fs: ^4.1.15 + jest-config: ^24.9.0 + jest-docblock: ^24.3.0 + jest-haste-map: ^24.9.0 + jest-jasmine2: ^24.9.0 + jest-leak-detector: ^24.9.0 + jest-message-util: ^24.9.0 + jest-resolve: ^24.9.0 + jest-runtime: ^24.9.0 + jest-util: ^24.9.0 + jest-worker: ^24.6.0 + source-map-support: ^0.5.6 + throat: ^4.0.0 + checksum: 51dd123e13f43af87631089a11eac8aa51335e50f3d4df04c09a3560d4761a659c78af473aa82a7fe84c6f9a899e94526b09effcd4f7068b55ba930d63276a58 + languageName: node + linkType: hard + +"jest-runner@npm:^26.2.2": + version: 26.2.2 + resolution: "jest-runner@npm:26.2.2" + dependencies: + "@jest/console": ^26.2.0 + "@jest/environment": ^26.2.0 + "@jest/test-result": ^26.2.0 + "@jest/types": ^26.2.0 + "@types/node": "*" + chalk: ^4.0.0 + emittery: ^0.7.1 + exit: ^0.1.2 + graceful-fs: ^4.2.4 + jest-config: ^26.2.2 + jest-docblock: ^26.0.0 + jest-haste-map: ^26.2.2 + jest-leak-detector: ^26.2.0 + jest-message-util: ^26.2.0 + jest-resolve: ^26.2.2 + jest-runtime: ^26.2.2 + jest-util: ^26.2.0 + jest-worker: ^26.2.1 + source-map-support: ^0.5.6 + throat: ^5.0.0 + checksum: 732732b3f86c4148f335c68a37d1538b4ab2b678b7b90cb51a0614f8861cd9f78d53cc35b7616f339feb9006226214e2750eb17f2ab64305123ad8f4e8317bdf + languageName: node + linkType: hard + +"jest-runtime@npm:^24.9.0": + version: 24.9.0 + resolution: "jest-runtime@npm:24.9.0" + dependencies: + "@jest/console": ^24.7.1 + "@jest/environment": ^24.9.0 + "@jest/source-map": ^24.3.0 + "@jest/transform": ^24.9.0 + "@jest/types": ^24.9.0 + "@types/yargs": ^13.0.0 + chalk: ^2.0.1 + exit: ^0.1.2 + glob: ^7.1.3 + graceful-fs: ^4.1.15 + jest-config: ^24.9.0 + jest-haste-map: ^24.9.0 + jest-message-util: ^24.9.0 + jest-mock: ^24.9.0 + jest-regex-util: ^24.3.0 + jest-resolve: ^24.9.0 + jest-snapshot: ^24.9.0 + jest-util: ^24.9.0 + jest-validate: ^24.9.0 + realpath-native: ^1.1.0 + slash: ^2.0.0 + strip-bom: ^3.0.0 + yargs: ^13.3.0 + bin: + jest-runtime: ./bin/jest-runtime.js + checksum: 0e213eb6d84508f048e8c8caa79ef81f5b72969d2a64421771018b4d5a1b84081d2e94b096c74759aaf980e40e659d46aa939a2f235021fe318c4685b8fb51d7 + languageName: node + linkType: hard + +"jest-runtime@npm:^26.2.2": + version: 26.2.2 + resolution: "jest-runtime@npm:26.2.2" + dependencies: + "@jest/console": ^26.2.0 + "@jest/environment": ^26.2.0 + "@jest/fake-timers": ^26.2.0 + "@jest/globals": ^26.2.0 + "@jest/source-map": ^26.1.0 + "@jest/test-result": ^26.2.0 + "@jest/transform": ^26.2.2 + "@jest/types": ^26.2.0 + "@types/yargs": ^15.0.0 + chalk: ^4.0.0 + collect-v8-coverage: ^1.0.0 + exit: ^0.1.2 + glob: ^7.1.3 + graceful-fs: ^4.2.4 + jest-config: ^26.2.2 + jest-haste-map: ^26.2.2 + jest-message-util: ^26.2.0 + jest-mock: ^26.2.0 + jest-regex-util: ^26.0.0 + jest-resolve: ^26.2.2 + jest-snapshot: ^26.2.2 + jest-util: ^26.2.0 + jest-validate: ^26.2.0 + slash: ^3.0.0 + strip-bom: ^4.0.0 + yargs: ^15.3.1 + bin: + jest-runtime: bin/jest-runtime.js + checksum: 8956e3a15e939ef9ac4687e2da8c800ff6b75e062af3e01f5b4a3ab2e57a5eb086c4d20921555a352313ad3e255a2e1bdb2c2b19d9a0452c0761e795a3b643a0 + languageName: node + linkType: hard + +"jest-serializer@npm:^24.9.0": + version: 24.9.0 + resolution: "jest-serializer@npm:24.9.0" + checksum: 8d959a8adae01788d840a945614af605e9eeda82d583bc9a66f89648b2dc37f32614873947c0c1ced0d82554163daf218f92392ab59f66343eafa7aec57797aa + languageName: node + linkType: hard + +"jest-serializer@npm:^26.2.0": + version: 26.2.0 + resolution: "jest-serializer@npm:26.2.0" + dependencies: + "@types/node": "*" + graceful-fs: ^4.2.4 + checksum: 7ce0ef906db55653a4181275f4faecebc6bc141331fbdd6fcb21d51fd1daebf57364b044a48f283e3aa97f2e2883de1f8605874bbc428360e7e795f1eb224e0d + languageName: node + linkType: hard + +"jest-snapshot@npm:^24.9.0": + version: 24.9.0 + resolution: "jest-snapshot@npm:24.9.0" + dependencies: + "@babel/types": ^7.0.0 + "@jest/types": ^24.9.0 + chalk: ^2.0.1 + expect: ^24.9.0 + jest-diff: ^24.9.0 + jest-get-type: ^24.9.0 + jest-matcher-utils: ^24.9.0 + jest-message-util: ^24.9.0 + jest-resolve: ^24.9.0 + mkdirp: ^0.5.1 + natural-compare: ^1.4.0 + pretty-format: ^24.9.0 + semver: ^6.2.0 + checksum: 875ef5174862eb7e5712ffb01048a256a8dd7a74e2dfe22d6cfc728c52685ea8c771f9c5caacb1aad4d63d870b8c6ea7c28b9c0501cbff1a82c21540a131faba + languageName: node + linkType: hard + +"jest-snapshot@npm:^26.2.2": + version: 26.2.2 + resolution: "jest-snapshot@npm:26.2.2" + dependencies: + "@babel/types": ^7.0.0 + "@jest/types": ^26.2.0 + "@types/prettier": ^2.0.0 + chalk: ^4.0.0 + expect: ^26.2.0 + graceful-fs: ^4.2.4 + jest-diff: ^26.2.0 + jest-get-type: ^26.0.0 + jest-haste-map: ^26.2.2 + jest-matcher-utils: ^26.2.0 + jest-message-util: ^26.2.0 + jest-resolve: ^26.2.2 + natural-compare: ^1.4.0 + pretty-format: ^26.2.0 + semver: ^7.3.2 + checksum: 87367f25a986cc9d5afa1078f5c4f54f98a619563503a91b581068a87eb743e2592adaa594a3fec9cd2f1bdad7bea7aae02f70da670b02c9f118592139dc7858 + languageName: node + linkType: hard + +"jest-util@npm:26.x, jest-util@npm:^26.2.0": + version: 26.2.0 + resolution: "jest-util@npm:26.2.0" + dependencies: + "@jest/types": ^26.2.0 + "@types/node": "*" + chalk: ^4.0.0 + graceful-fs: ^4.2.4 + is-ci: ^2.0.0 + micromatch: ^4.0.2 + checksum: 5989debfaf93aeff084335b082ec38df4b2f0ae29f626c88e0300a49d0f407e30ffe238e1666464bde3b5d42e02f99912b43f2fbee71fe7b0111ddba2dd6fd92 + languageName: node + linkType: hard + +"jest-util@npm:^24.0.0, jest-util@npm:^24.9.0": + version: 24.9.0 + resolution: "jest-util@npm:24.9.0" + dependencies: + "@jest/console": ^24.9.0 + "@jest/fake-timers": ^24.9.0 + "@jest/source-map": ^24.9.0 + "@jest/test-result": ^24.9.0 + "@jest/types": ^24.9.0 + callsites: ^3.0.0 + chalk: ^2.0.1 + graceful-fs: ^4.1.15 + is-ci: ^2.0.0 + mkdirp: ^0.5.1 + slash: ^2.0.0 + source-map: ^0.6.0 + checksum: 884ec3a45cc43eb3488784f23dd9f748e11752a1987639e24d093971e192c84568e92791c4b2834e2b1c21cd25010136549cef0b187b2af747ac3b1bd48cf367 + languageName: node + linkType: hard + +"jest-validate@npm:^24.9.0": + version: 24.9.0 + resolution: "jest-validate@npm:24.9.0" + dependencies: + "@jest/types": ^24.9.0 + camelcase: ^5.3.1 + chalk: ^2.0.1 + jest-get-type: ^24.9.0 + leven: ^3.1.0 + pretty-format: ^24.9.0 + checksum: 13eaacc34264fbb075ef541b8c8732e4dbc8ac6c2ad8978e0a5c5b130d74ff5d45d622ffa5eea5bf364a305d460b670dd63ce75e8c8bb5d6d1a35145c36d14ae + languageName: node + linkType: hard + +"jest-validate@npm:^26.2.0": + version: 26.2.0 + resolution: "jest-validate@npm:26.2.0" + dependencies: + "@jest/types": ^26.2.0 + camelcase: ^6.0.0 + chalk: ^4.0.0 + jest-get-type: ^26.0.0 + leven: ^3.1.0 + pretty-format: ^26.2.0 + checksum: 8059509fc12fb5532c6321e622a45a632ed61b66c60b388cce25dbb8fbe2defdcbe8a7670bd2817edddd3a14bcaad31863ad84b5e93876700d9576672423841f + languageName: node + linkType: hard + +"jest-watch-typeahead@npm:0.4.2": + version: 0.4.2 + resolution: "jest-watch-typeahead@npm:0.4.2" + dependencies: + ansi-escapes: ^4.2.1 + chalk: ^2.4.1 + jest-regex-util: ^24.9.0 + jest-watcher: ^24.3.0 + slash: ^3.0.0 + string-length: ^3.1.0 + strip-ansi: ^5.0.0 + checksum: cc2aabcba614f57574dcf24922a2492c5de4f10f1a573a93041319207c06373935885cba883c8f6c5dfbda5cc5d76f2a8bd22b3094d63f0637f251f9681d9974 + languageName: node + linkType: hard + +"jest-watcher@npm:^24.3.0, jest-watcher@npm:^24.9.0": + version: 24.9.0 + resolution: "jest-watcher@npm:24.9.0" + dependencies: + "@jest/test-result": ^24.9.0 + "@jest/types": ^24.9.0 + "@types/yargs": ^13.0.0 + ansi-escapes: ^3.0.0 + chalk: ^2.0.1 + jest-util: ^24.9.0 + string-length: ^2.0.0 + checksum: 3291a283f165cd5f7794727583ec9c5692801afc3a8b2e8f7d167ba544785fded0a8bcaff7fafc7a54dfb5ba5e72c811ecb8adbb1cf0485759ac2b75fce1981d + languageName: node + linkType: hard + +"jest-watcher@npm:^26.2.0": + version: 26.2.0 + resolution: "jest-watcher@npm:26.2.0" + dependencies: + "@jest/test-result": ^26.2.0 + "@jest/types": ^26.2.0 + "@types/node": "*" + ansi-escapes: ^4.2.1 + chalk: ^4.0.0 + jest-util: ^26.2.0 + string-length: ^4.0.1 + checksum: 9afc2405d60b72fc545191ba20f3624eebb09b8c9132123c98b53ad05afe2d619b6577d188ee675b389e46865e317079a8381accadcc6fb7413ca4c05ab14605 + languageName: node + linkType: hard + +"jest-worker@npm:^24.6.0, jest-worker@npm:^24.9.0": + version: 24.9.0 + resolution: "jest-worker@npm:24.9.0" + dependencies: + merge-stream: ^2.0.0 + supports-color: ^6.1.0 + checksum: 9740355081d8f98b15e035405a76a9eafc4ee2b943e00bbc74c34fa632a23e2c2d9d9efb4eb86165435ff76f8bc95dcd74ec63b5acbeb2f0755c83e77d0e71f4 + languageName: node + linkType: hard + +"jest-worker@npm:^25.1.0, jest-worker@npm:^25.4.0": + version: 25.5.0 + resolution: "jest-worker@npm:25.5.0" + dependencies: + merge-stream: ^2.0.0 + supports-color: ^7.0.0 + checksum: 20ae005c58f9db5be0f9bced0df6aeca340c64e7e0c7c27264b5f5964c94013e98ccd678df935d629889136ce45594d230e547624ccce73de581a05d4a8e6315 + languageName: node + linkType: hard + +"jest-worker@npm:^26.2.1": + version: 26.2.1 + resolution: "jest-worker@npm:26.2.1" + dependencies: + "@types/node": "*" + merge-stream: ^2.0.0 + supports-color: ^7.0.0 + checksum: ec735534aa8295909383d4a9d0866724c7b98ea38bd3a0c5b061031c037d00dcb32ec7c5b1b77dfb45023b345aa2eaadc876574940bbe21cbc660a9113382d5f + languageName: node + linkType: hard + +"jest@npm:24.9.0": + version: 24.9.0 + resolution: "jest@npm:24.9.0" + dependencies: + import-local: ^2.0.0 + jest-cli: ^24.9.0 + bin: + jest: ./bin/jest.js + checksum: d5cc3c0b51ec59b6bd7ec0755e821b62b9e2e4ed0d94c255ceef11ad7d481c5232350bd8acf87d87b2a57e78b08dfab507aa91cf5d6e6ab4f964d4913c64488e + languageName: node + linkType: hard + +"jest@npm:26.2.2": + version: 26.2.2 + resolution: "jest@npm:26.2.2" + dependencies: + "@jest/core": ^26.2.2 + import-local: ^3.0.2 + jest-cli: ^26.2.2 + bin: + jest: bin/jest.js + checksum: e4d79bfeffdffffe899eb45b3d7736d1c65acd632edddd3923a5395fabb67da4170c8dfa79f82e763c10d14cbd6ceea909203fe83b407ccf4eb9989f26ddc839 + languageName: node + linkType: hard + +"js-tokens@npm:^3.0.0 || ^4.0.0, js-tokens@npm:^4.0.0": + version: 4.0.0 + resolution: "js-tokens@npm:4.0.0" + checksum: 1fc4e4667ac2d972aba65148b9cbf9c17566b2394d3504238d8492bbd3e68f496c657eab06b26b40b17db5cac0a34d153a12130e2d2d2bb6dc2cdc8a4764eb1b + languageName: node + linkType: hard + +"js-tokens@npm:^3.0.2": + version: 3.0.2 + resolution: "js-tokens@npm:3.0.2" + checksum: 81e634d5a909ba8294758ddca47a0c0cfee90e84cc14973c072a3a27456b387ed8def0f24aff7074c02c3ba47531f4ad8b58320f5f5c4216ef46257de5350568 + languageName: node + linkType: hard + +"js-yaml@npm:^3.11.0, js-yaml@npm:^3.13.1, js-yaml@npm:^3.14.0": + version: 3.14.0 + resolution: "js-yaml@npm:3.14.0" + dependencies: + argparse: ^1.0.7 + esprima: ^4.0.0 + bin: + js-yaml: bin/js-yaml.js + checksum: 2eb95464e5263aedc20ae2d9280f0e29b00adab15ece080ec42473d7055efaab24b904108644d115f687efe05a5bde02972b883aafa93607c4c108f667a56fa7 + languageName: node + linkType: hard + +"jsbn@npm:~0.1.0": + version: 0.1.1 + resolution: "jsbn@npm:0.1.1" + checksum: b530d48a64e6aff9523407856a54c5b9beee30f34a410612057f4fa097d90072fc8403c49604dacf0c3e7620dca43c2b7f0de3f954af611e43716a254c46f6f5 + languageName: node + linkType: hard + +"jsdom@npm:^11.5.1": + version: 11.12.0 + resolution: "jsdom@npm:11.12.0" + dependencies: + abab: ^2.0.0 + acorn: ^5.5.3 + acorn-globals: ^4.1.0 + array-equal: ^1.0.0 + cssom: ">= 0.3.2 < 0.4.0" + cssstyle: ^1.0.0 + data-urls: ^1.0.0 + domexception: ^1.0.1 + escodegen: ^1.9.1 + html-encoding-sniffer: ^1.0.2 + left-pad: ^1.3.0 + nwsapi: ^2.0.7 + parse5: 4.0.0 + pn: ^1.1.0 + request: ^2.87.0 + request-promise-native: ^1.0.5 + sax: ^1.2.4 + symbol-tree: ^3.2.2 + tough-cookie: ^2.3.4 + w3c-hr-time: ^1.0.1 + webidl-conversions: ^4.0.2 + whatwg-encoding: ^1.0.3 + whatwg-mimetype: ^2.1.0 + whatwg-url: ^6.4.1 + ws: ^5.2.0 + xml-name-validator: ^3.0.0 + checksum: 215a43d1d78440d613167d3de27becae99c7b522730c41cdf141d6a4e9ee0f756f165904f0637b5a99b1a3335241ea460e70a7998347e1769d3568f1417980de + languageName: node + linkType: hard + +"jsdom@npm:^14.1.0": + version: 14.1.0 + resolution: "jsdom@npm:14.1.0" + dependencies: + abab: ^2.0.0 + acorn: ^6.0.4 + acorn-globals: ^4.3.0 + array-equal: ^1.0.0 + cssom: ^0.3.4 + cssstyle: ^1.1.1 + data-urls: ^1.1.0 + domexception: ^1.0.1 + escodegen: ^1.11.0 + html-encoding-sniffer: ^1.0.2 + nwsapi: ^2.1.3 + parse5: 5.1.0 + pn: ^1.1.0 + request: ^2.88.0 + request-promise-native: ^1.0.5 + saxes: ^3.1.9 + symbol-tree: ^3.2.2 + tough-cookie: ^2.5.0 + w3c-hr-time: ^1.0.1 + w3c-xmlserializer: ^1.1.2 + webidl-conversions: ^4.0.2 + whatwg-encoding: ^1.0.5 + whatwg-mimetype: ^2.3.0 + whatwg-url: ^7.0.0 + ws: ^6.1.2 + xml-name-validator: ^3.0.0 + checksum: 1a0948d5302dd079feab5caf9ea7d38f455c6d5238a3f3a0de88f386e2723a089875c0ede155ff284425fba5e9f848d1bf980f7546421efce702283586f84b52 + languageName: node + linkType: hard + +"jsdom@npm:^16.2.2": + version: 16.4.0 + resolution: "jsdom@npm:16.4.0" + dependencies: + abab: ^2.0.3 + acorn: ^7.1.1 + acorn-globals: ^6.0.0 + cssom: ^0.4.4 + cssstyle: ^2.2.0 + data-urls: ^2.0.0 + decimal.js: ^10.2.0 + domexception: ^2.0.1 + escodegen: ^1.14.1 + html-encoding-sniffer: ^2.0.1 + is-potential-custom-element-name: ^1.0.0 + nwsapi: ^2.2.0 + parse5: 5.1.1 + request: ^2.88.2 + request-promise-native: ^1.0.8 + saxes: ^5.0.0 + symbol-tree: ^3.2.4 + tough-cookie: ^3.0.1 + w3c-hr-time: ^1.0.2 + w3c-xmlserializer: ^2.0.0 + webidl-conversions: ^6.1.0 + whatwg-encoding: ^1.0.5 + whatwg-mimetype: ^2.3.0 + whatwg-url: ^8.0.0 + ws: ^7.2.3 + xml-name-validator: ^3.0.0 + peerDependencies: + canvas: ^2.5.0 + peerDependenciesMeta: + canvas: + optional: true + checksum: adca681df01b62452970357bb941c5a0a67f784afbf32c57bb07d7b3799a853f161e4c7a1ccce75fd9089b5c5e5601acf9eab5fe440899d96c08b5bdc3d2cad5 + languageName: node + linkType: hard + +"jsesc@npm:^2.5.1": + version: 2.5.2 + resolution: "jsesc@npm:2.5.2" + bin: + jsesc: bin/jsesc + checksum: ca91ec33d74c55959e4b6fdbfee2af5f38be74a752cf0a982702e3a16239f26c2abbe19f5f84b15592570dda01872e929a90738615bd445f7b9b859781cfcf68 + languageName: node + linkType: hard + +"jsesc@npm:~0.5.0": + version: 0.5.0 + resolution: "jsesc@npm:0.5.0" + bin: + jsesc: bin/jsesc + checksum: 1e4574920d3c17c9167fdc14ca66197e8d5d96fb3f37c7473df7857822b7adbf2954d0e126131456f8fd72b6f6908c2367e7a12c18495a5393c37be99acbbb5a + languageName: node + linkType: hard + +"json-buffer@npm:3.0.0": + version: 3.0.0 + resolution: "json-buffer@npm:3.0.0" + checksum: 09b53ecc8ffbb1252d9ef07f37ad616eb0769325d749c87555df786dc70e9855d4ad208255bbf232c86069504756277a7efb6725a31f6e6c4ef39a7b072e75f2 + languageName: node + linkType: hard + +"json-parse-better-errors@npm:^1.0.0, json-parse-better-errors@npm:^1.0.1, json-parse-better-errors@npm:^1.0.2": + version: 1.0.2 + resolution: "json-parse-better-errors@npm:1.0.2" + checksum: b4c4f0e43b43892af887db742b26f9aa6302b09cd5f6e655ead49fca9f47f3cdd300dcf98cf5218778262be51d7b29859221206fc98b87a1a61c5af7618dae89 + languageName: node + linkType: hard + +"json-schema-traverse@npm:^0.4.1": + version: 0.4.1 + resolution: "json-schema-traverse@npm:0.4.1" + checksum: 6f71bddba38aa043cf9c05ff9cf37158a6657909f1dd37032ba164b76923da47a17bb4592ee4f7f9c029dfaf26965b821ac214c1f991bb3bd038c9cfea2da50b + languageName: node + linkType: hard + +"json-schema@npm:0.2.3": + version: 0.2.3 + resolution: "json-schema@npm:0.2.3" + checksum: d382ea841f0af5cf6ae3b63043c6ddbd144086de52342b5dd32d8966872dce1e0ed280f6b27c5fba97e50cf8640f27b593e039cb95df365718ada03ef0feb9f2 + languageName: node + linkType: hard + +"json-stable-stringify-without-jsonify@npm:^1.0.1": + version: 1.0.1 + resolution: "json-stable-stringify-without-jsonify@npm:1.0.1" + checksum: a01b6c65413b2d0dd6797004ace6166bb6f8a0a2a77c742966021c74233cebe48de3c33223f003a9e8e4a241bb882fe92141e538e7e1dad58afd32649444e269 + languageName: node + linkType: hard + +"json-stable-stringify@npm:^1.0.1": + version: 1.0.1 + resolution: "json-stable-stringify@npm:1.0.1" + dependencies: + jsonify: ~0.0.0 + checksum: 0f49a4281b2a82dc0148580764dd8116992f972ddc3574bd1df4bfcec76f52e2b9975febe234cf1b99c7578bb8a285d026888458ea636b8f3b0297d5de032bf7 + languageName: node + linkType: hard + +"json-stringify-safe@npm:^5.0.1, json-stringify-safe@npm:~5.0.1": + version: 5.0.1 + resolution: "json-stringify-safe@npm:5.0.1" + checksum: 261dfb8eb3e72c8b0dda11fd7c20c151ffc1d1b03e529245d51708c8dd8d8c6a225880464adf41a570dff6e5c805fd9d1f47fed948cfb526e4fbe5a67ce4e5f4 + languageName: node + linkType: hard + +"json-to-pretty-yaml@npm:1.2.2": + version: 1.2.2 + resolution: "json-to-pretty-yaml@npm:1.2.2" + dependencies: + remedial: ^1.0.7 + remove-trailing-spaces: ^1.0.6 + checksum: 8c8b5118d9bdbd56a19be490cccabb30befe5f517a605c9859b4541cff87929728cca75ed8db0a53494a45ec06455fe7094fedce0f0aa66f6f08f1ac84a6dc4e + languageName: node + linkType: hard + +"json3@npm:^3.3.2": + version: 3.3.3 + resolution: "json3@npm:3.3.3" + checksum: f79831247f3ecdd4e99996534a171ccd20f34502b799dd53b671af8a7d7ac1228a7d806c100948cc16f3437da5ea0b821e2c44f8372a2a4095a0abebf0fb41ef + languageName: node + linkType: hard + +"json5@npm:2.x, json5@npm:^2.1.2": + version: 2.1.3 + resolution: "json5@npm:2.1.3" + dependencies: + minimist: ^1.2.5 + bin: + json5: lib/cli.js + checksum: 957e4937106cf59975aa0281e68911534d65c8a25be5b4d3559aa55eba351ccab516a943a60ba33e461e4b8af749939986e311de910cbcfd197410b57d971741 + languageName: node + linkType: hard + +"json5@npm:^1.0.1": + version: 1.0.1 + resolution: "json5@npm:1.0.1" + dependencies: + minimist: ^1.2.0 + bin: + json5: lib/cli.js + checksum: df41624f9f40bfacc546f779eef6d161a3312fbb6ec1dbd69f8c4388e9807af653b753371ab19b6d2bab22af2ca7dde62fe03c791596acf76915e1fc4ee6fd88 + languageName: node + linkType: hard + +"jsonfile@npm:^4.0.0": + version: 4.0.0 + resolution: "jsonfile@npm:4.0.0" + dependencies: + graceful-fs: ^4.1.6 + dependenciesMeta: + graceful-fs: + optional: true + checksum: a40b7b64da41c84b0dc7ad753737ba240bb0dc50a94be20ec0b73459707dede69a6f89eb44b4d29e6994ed93ddf8c9b6e57f6b1f09dd707567959880ad6cee7f + languageName: node + linkType: hard + +"jsonfile@npm:^6.0.1": + version: 6.0.1 + resolution: "jsonfile@npm:6.0.1" + dependencies: + graceful-fs: ^4.1.6 + universalify: ^1.0.0 + dependenciesMeta: + graceful-fs: + optional: true + checksum: ebd6932424db468226b0b525b5b8acefd97e46f4fc5f36232c94e928b405716b47b2d7c2342025ecd7a0219f2146ae613d33878b917505698b7dc36ebe082c11 + languageName: node + linkType: hard + +"jsonify@npm:~0.0.0": + version: 0.0.0 + resolution: "jsonify@npm:0.0.0" + checksum: 53630f54108a55e062534503bf4a236165082ff75d2872a08ce8625b476dcf5ad8c990b012b9c740f93c61f20227161eb58dd41a16a0894699cc47d697d6d7c7 + languageName: node + linkType: hard + +"jsonparse@npm:^1.2.0": + version: 1.3.1 + resolution: "jsonparse@npm:1.3.1" + checksum: 6669acd7b39cdc4a4cbb078d1a19d2a07cb81651d5045b907b4d067e5c453d060a274f348b53c51ed817456f1cdfc709a13a76ca47c8304547f03843c043ebcb + languageName: node + linkType: hard + +"jsonwebtoken@npm:8.5.1, jsonwebtoken@npm:^8.5.1": + version: 8.5.1 + resolution: "jsonwebtoken@npm:8.5.1" + dependencies: + jws: ^3.2.2 + lodash.includes: ^4.3.0 + lodash.isboolean: ^3.0.3 + lodash.isinteger: ^4.0.4 + lodash.isnumber: ^3.0.3 + lodash.isplainobject: ^4.0.6 + lodash.isstring: ^4.0.1 + lodash.once: ^4.0.0 + ms: ^2.1.1 + semver: ^5.6.0 + checksum: ea44bbb7a7abab87eee57711a04093a2a04a5757faa3253f521327b840e07eff751986ed6c20985886c5aaa86245a833aa1eeda6eacb0c3fa9ea4e7074cdb0c3 + languageName: node + linkType: hard + +"jsprim@npm:^1.2.2": + version: 1.4.1 + resolution: "jsprim@npm:1.4.1" + dependencies: + assert-plus: 1.0.0 + extsprintf: 1.3.0 + json-schema: 0.2.3 + verror: 1.10.0 + checksum: ee0177b7ef39e6becf18c586d31fabe15d62be88e7867d3aff86466e4a3de9a2cd47b6e597417aebc1cd3c2d43bc662e79ab5eecdadf3ce0643e909432ed6d2c + languageName: node + linkType: hard + +"jss-plugin-camel-case@npm:^10.0.3": + version: 10.3.0 + resolution: "jss-plugin-camel-case@npm:10.3.0" + dependencies: + "@babel/runtime": ^7.3.1 + hyphenate-style-name: ^1.0.3 + jss: ^10.3.0 + checksum: c6386f59e436cc73345e473e088d3931572ac3fc3c24911c0c7ac8b1c64ce4e3bf4557bd7a08e9397274d06e7e09ebdbd9e16afdaa0f040f5410c9c2a430bfc7 + languageName: node + linkType: hard + +"jss-plugin-default-unit@npm:^10.0.3": + version: 10.3.0 + resolution: "jss-plugin-default-unit@npm:10.3.0" + dependencies: + "@babel/runtime": ^7.3.1 + jss: ^10.3.0 + checksum: bb143a5e95418f5d75952d19d03bcc15b4e1d7dab3183f2534915fa7ddca48df706d234b692bb819b6464628f7512edd3957c6dbc1499d1f0156c2259332a411 + languageName: node + linkType: hard + +"jss-plugin-global@npm:^10.0.3": + version: 10.3.0 + resolution: "jss-plugin-global@npm:10.3.0" + dependencies: + "@babel/runtime": ^7.3.1 + jss: ^10.3.0 + checksum: 9bbda712b41df40fa86f4b1aa8ccb1ea8aed5dc2d8fa3edf5327aa33e4129b330091e8d24315dcd4422ec82ca38b92a5cecadca1245ae46c76959026b3093063 + languageName: node + linkType: hard + +"jss-plugin-nested@npm:^10.0.3": + version: 10.3.0 + resolution: "jss-plugin-nested@npm:10.3.0" + dependencies: + "@babel/runtime": ^7.3.1 + jss: ^10.3.0 + tiny-warning: ^1.0.2 + checksum: 16dbc16049b3f4cf13e38ae342b1fc2d0224c516636f0c361356595067f14bb1bf9d6b84d9113609e6b20bdd8fde8dc9814fedada7565042709861cc3feaf897 + languageName: node + linkType: hard + +"jss-plugin-props-sort@npm:^10.0.3": + version: 10.3.0 + resolution: "jss-plugin-props-sort@npm:10.3.0" + dependencies: + "@babel/runtime": ^7.3.1 + jss: ^10.3.0 + checksum: e12562aec70708dbaa54629af233e566e99cc41e68bdda1e30ae2e65f4112f5a89b7a0a2dc84192a8d6a61acbc0629b9a99fd582e1fcb4d4138a27bdf294c127 + languageName: node + linkType: hard + +"jss-plugin-rule-value-function@npm:^10.0.3": + version: 10.3.0 + resolution: "jss-plugin-rule-value-function@npm:10.3.0" + dependencies: + "@babel/runtime": ^7.3.1 + jss: ^10.3.0 + tiny-warning: ^1.0.2 + checksum: 9461389eb372372f441390afaf2981397f6ba8a4058bda78c13e4f62dad03a00a60d08ddec526538b3992c2231bc54d800b34885287eb51b8bfaa4ca69435cb9 + languageName: node + linkType: hard + +"jss-plugin-vendor-prefixer@npm:^10.0.3": + version: 10.3.0 + resolution: "jss-plugin-vendor-prefixer@npm:10.3.0" + dependencies: + "@babel/runtime": ^7.3.1 + css-vendor: ^2.0.8 + jss: ^10.3.0 + checksum: 8a853de9297b64b8f13c949e9810f2dccc0ef8d1dd05cf437b8e4b9e1fc980fec724466f30c37b61fe69c274c19ffdb2aad0300b75cc35ecd964a061bee8e725 + languageName: node + linkType: hard + +"jss@npm:^10.0.3, jss@npm:^10.3.0": + version: 10.3.0 + resolution: "jss@npm:10.3.0" + dependencies: + "@babel/runtime": ^7.3.1 + csstype: ^2.6.5 + is-in-browser: ^1.1.3 + tiny-warning: ^1.0.2 + checksum: a595a9a89d35118421033906e8ea263c60ebb40d2ed857e7c4e5d1cced33e88042273da11fc9fa5fc85160bfae23aca56235ddca807585a8db08758af57775e6 + languageName: node + linkType: hard + +"jsx-ast-utils@npm:^2.2.1, jsx-ast-utils@npm:^2.2.3": + version: 2.4.1 + resolution: "jsx-ast-utils@npm:2.4.1" + dependencies: + array-includes: ^3.1.1 + object.assign: ^4.1.0 + checksum: 36471d635b7e52aacaa8e926edcec2f6fdf5cfb4ccb945e87209b2bd0e4feac586293b465170b8287afbdff138ce4ff9cfc7ca2bd23900f6f3740423c29f49f5 + languageName: node + linkType: hard + +"jwa@npm:^1.4.1": + version: 1.4.1 + resolution: "jwa@npm:1.4.1" + dependencies: + buffer-equal-constant-time: 1.0.1 + ecdsa-sig-formatter: 1.0.11 + safe-buffer: ^5.0.1 + checksum: e3a6234a3a33b0390c35cc7393890b1ca1bac22382755035ad252f6df9e1272dcf0ff0a717c7865657fc30e04b8d5ab07ea27e26f0763c60c557946963402752 + languageName: node + linkType: hard + +"jws@npm:^3.2.2": + version: 3.2.2 + resolution: "jws@npm:3.2.2" + dependencies: + jwa: ^1.4.1 + safe-buffer: ^5.0.1 + checksum: 3990b26ebb6f368bf6c53bf580cd327f207052adedeb7900dde665e143fff9ea5d96d0b4282e85a631a6e3af76ada281a1ccc450b1916d579d07e9d36b564a19 + languageName: node + linkType: hard + +"jwt-decode@npm:2.2.0": + version: 2.2.0 + resolution: "jwt-decode@npm:2.2.0" + checksum: d3e8f2176740df81bffa6b3fe4b7305f0ab6c45a796670113046b0f1fb0dba0b610573d4cf4aa4676c3ba52fe678984c0e63b2525df059c224d3be9b685f45bf + languageName: node + linkType: hard + +"kareem@npm:2.3.1": + version: 2.3.1 + resolution: "kareem@npm:2.3.1" + checksum: 6fc69a89f857aedccc16c1efaea1d6d72d7f47893797109443d31d354c7c70369c7d967fa1ad57c1b180670b828958dd4de513629695d2a1223d7c3f04898391 + languageName: node + linkType: hard + +"keyv@npm:^3.0.0": + version: 3.1.0 + resolution: "keyv@npm:3.1.0" + dependencies: + json-buffer: 3.0.0 + checksum: 6bf032ee504f27e00ae3a366c7e0ca5d93b8f947672871568f2a1456bf56d1bc4e55555158a45188d14483c4c38d0fa1dc7f0585b0d6c640f8e79abc9b4d3162 + languageName: node + linkType: hard + +"killable@npm:^1.0.1": + version: 1.0.1 + resolution: "killable@npm:1.0.1" + checksum: 397df2b8a74b800b5d19986375fe6d5e2c548163f1da49eee8b03bb0fa7e98ae8c5b93d9f34b83634d3a32a9b239f758e6de388b4bedb50f2f438fc91434e92f + languageName: node + linkType: hard + +"kind-of@npm:^2.0.1": + version: 2.0.1 + resolution: "kind-of@npm:2.0.1" + dependencies: + is-buffer: ^1.0.2 + checksum: 0f4fd99fe07d59ab03523297b719f0262fb3c58cbed613a491e3dce141d193bc673612b4936b42b3da38268c534432886be52c9b31b95d0e741ae122d7249230 + languageName: node + linkType: hard + +"kind-of@npm:^3.0.2, kind-of@npm:^3.0.3, kind-of@npm:^3.2.0": + version: 3.2.2 + resolution: "kind-of@npm:3.2.2" + dependencies: + is-buffer: ^1.1.5 + checksum: e8a1835c4baa9b52666cd5d8ae89e6b9b9f5978600a30ba75fc92da332d1ba182bda90aa7372fc992a3eb6da261dc3fea0f136af24ddc87cfb668d40c817af56 + languageName: node + linkType: hard + +"kind-of@npm:^4.0.0": + version: 4.0.0 + resolution: "kind-of@npm:4.0.0" + dependencies: + is-buffer: ^1.1.5 + checksum: 2e7296c614f54ba9cdcab4c389ec9d8f6ed7955c661b4bd075d5c1b67107ee00263a82aa12f76b61209e9d93f4949ee3d20c6ff17a8b0d199d84ba06d6f59478 + languageName: node + linkType: hard + +"kind-of@npm:^5.0.0": + version: 5.1.0 + resolution: "kind-of@npm:5.1.0" + checksum: c98cfe70c805a7a3a10ec4399fac2884fb4b277494baffea0712a5e8de49a0bbdc36d9cfedf7879f47567fa4d7f4d92fd5b69582bc8666100b3560e03bd88844 + languageName: node + linkType: hard + +"kind-of@npm:^6.0.0, kind-of@npm:^6.0.2, kind-of@npm:^6.0.3": + version: 6.0.3 + resolution: "kind-of@npm:6.0.3" + checksum: 5de5d6577796af87a983199d6350ed41c670abec4a306cc43ca887c1afdbd6b89af9ab00016e3ca17eb7ad89ebfd9bb817d33baa89f855c6c95398a8b8abbf08 + languageName: node + linkType: hard + +"kleur@npm:^3.0.3": + version: 3.0.3 + resolution: "kleur@npm:3.0.3" + checksum: 20ef0e37fb3f9aebbec8a75b61f547051aa61e3a6c51bd2678e77a11d69d73885a76966aea77f09c40677c7dfa274a5e16741ec89859213c9f798d4a96f77521 + languageName: node + linkType: hard + +"last-call-webpack-plugin@npm:^3.0.0": + version: 3.0.0 + resolution: "last-call-webpack-plugin@npm:3.0.0" + dependencies: + lodash: ^4.17.5 + webpack-sources: ^1.1.0 + checksum: aaa8255d4e1e9f20fd98aa6dd89af4e8efa27a516d4c3a183cd1b368c20ac4102f4ddb659010fce5ea1eaed66b59d88ea6cd1063b75c8db1e43ba129c64b68c4 + languageName: node + linkType: hard + +"latest-version@npm:^5.0.0": + version: 5.1.0 + resolution: "latest-version@npm:5.1.0" + dependencies: + package-json: ^6.3.0 + checksum: 63c1f224358d094a75782cc48a5b3eeaf70a70c0e18f8b814480e50ed0ecedb4bc5f2c9cc44c7983fbf31e865f0376526bf9a563c304f3261971f38d8f51c5c6 + languageName: node + linkType: hard + +"lazy-cache@npm:^0.2.3": + version: 0.2.7 + resolution: "lazy-cache@npm:0.2.7" + checksum: fde942600bbaed35f93dc86e7573a0997f36e05421cd547c2387a902b58823f9e0950d5aa284588929a72c1b072257c04426e1d777fc750a9c7ec8753134152e + languageName: node + linkType: hard + +"lazy-cache@npm:^1.0.3": + version: 1.0.4 + resolution: "lazy-cache@npm:1.0.4" + checksum: c033cdd7acd8da6a992ec84915f0443abda7669d04567e140cf1e1568434419422c13a931be0ea24e79e4ef32a255cac7932dbfd9cd20153c4d53f793acd4344 + languageName: node + linkType: hard + +"lcid@npm:^2.0.0": + version: 2.0.0 + resolution: "lcid@npm:2.0.0" + dependencies: + invert-kv: ^2.0.0 + checksum: 147695e053a0193d82eb75d199089e0563fa27773d1d3c8cbec6c7bc16edcb8bc01949a3f2e687b853999711107e9adba2f4dc266bb65f536b8ac50a5eeceaab + languageName: node + linkType: hard + +"left-pad@npm:^1.3.0": + version: 1.3.0 + resolution: "left-pad@npm:1.3.0" + checksum: d27d5f51e3e25ffa7d4de92d62d740e723dfa7ce004f835592cc3e80d940303b29ceed43bf572a4071c58cb07a4558a40b50bfcbe2e1b911d2bef58c4e786613 + languageName: node + linkType: hard + +"lerna@npm:3.22.1": + version: 3.22.1 + resolution: "lerna@npm:3.22.1" + dependencies: + "@lerna/add": 3.21.0 + "@lerna/bootstrap": 3.21.0 + "@lerna/changed": 3.21.0 + "@lerna/clean": 3.21.0 + "@lerna/cli": 3.18.5 + "@lerna/create": 3.22.0 + "@lerna/diff": 3.21.0 + "@lerna/exec": 3.21.0 + "@lerna/import": 3.22.0 + "@lerna/info": 3.21.0 + "@lerna/init": 3.21.0 + "@lerna/link": 3.21.0 + "@lerna/list": 3.21.0 + "@lerna/publish": 3.22.1 + "@lerna/run": 3.21.0 + "@lerna/version": 3.22.1 + import-local: ^2.0.0 + npmlog: ^4.1.2 + bin: + lerna: cli.js + checksum: ee9d147889ea0f1fb6730e52b8537fc78cea5a289ed625a4dbe9e0283b926ac991133e3077c8cbadd37d12d6a4994c159b811d610636b05bde9bab12bc1352a0 + languageName: node + linkType: hard + +"leven@npm:^3.1.0": + version: 3.1.0 + resolution: "leven@npm:3.1.0" + checksum: 6ebca7529809b8d099ab8793091b1ee8712a87932fae14c7d0c2693b0fcc0640aea72141a6539c03b9dae53a34f15a43dc151bb5c04eded0d1d38b277bfd206a + languageName: node + linkType: hard + +"levenary@npm:^1.1.1": + version: 1.1.1 + resolution: "levenary@npm:1.1.1" + dependencies: + leven: ^3.1.0 + checksum: 6d3b78e3953b0e5c4c9a703cce2c11c817e2465c010daf08e3c5964c259c850d233584009e5939f0cf4af2b6455f7f7e3a092ea119f63a2a81e273cd2d5e09e2 + languageName: node + linkType: hard + +"levn@npm:^0.3.0, levn@npm:~0.3.0": + version: 0.3.0 + resolution: "levn@npm:0.3.0" + dependencies: + prelude-ls: ~1.1.2 + type-check: ~0.3.2 + checksum: 775861da38dcb7e5f1de5bea2a1c7ffaede6e9e8632cfbac76be145ecb295370f46bb41307613c283d66f1fee5d8cc448ca3323c4a02d0fb1e913b2f78de2abb + languageName: node + linkType: hard + +"levn@npm:^0.4.1": + version: 0.4.1 + resolution: "levn@npm:0.4.1" + dependencies: + prelude-ls: ^1.2.1 + type-check: ~0.4.0 + checksum: 2f6ddfb0b956f2cb6b1608253a62b0c30e7392dd3c7b4cf284dfe2889b44d8385eaa81597646e253752c312a960ccb5e4d596968e476d5f6614f4ca60e5218e9 + languageName: node + linkType: hard + +"lines-and-columns@npm:^1.1.6": + version: 1.1.6 + resolution: "lines-and-columns@npm:1.1.6" + checksum: 798b80ed7ae3fba34d43fe29591ccb4f16f6fca1da4e1f9922b92264b91d931012433c248daf8e44caa74feb40c0eaa0f27a14f8ee68b6ffb425f3c3f785af27 + languageName: node + linkType: hard + +"lint-staged@npm:10.2.11": + version: 10.2.11 + resolution: "lint-staged@npm:10.2.11" + dependencies: + chalk: ^4.0.0 + cli-truncate: 2.1.0 + commander: ^5.1.0 + cosmiconfig: ^6.0.0 + debug: ^4.1.1 + dedent: ^0.7.0 + enquirer: ^2.3.5 + execa: ^4.0.1 + listr2: ^2.1.0 + log-symbols: ^4.0.0 + micromatch: ^4.0.2 + normalize-path: ^3.0.0 + please-upgrade-node: ^3.2.0 + string-argv: 0.3.1 + stringify-object: ^3.3.0 + bin: + lint-staged: bin/lint-staged.js + checksum: 0d1c408dfea1173b6a691b223228db5a617365bd3ee6b7151fc3cd0b69ecbc1a48ced6675163baa67851c1492ab9025490932d9bf0597dc496638c5a1b4b68ab + languageName: node + linkType: hard + +"listr-silent-renderer@npm:^1.1.1": + version: 1.1.1 + resolution: "listr-silent-renderer@npm:1.1.1" + checksum: ea91806bd07da1c99189ab2665b613c82ad91350e3f2f28dd1d7b274d335752acda1d861cadf05dbc40ae9d329187e7470ab927cd676c62abc74040d311c4fc3 + languageName: node + linkType: hard + +"listr-update-renderer@npm:0.5.0, listr-update-renderer@npm:^0.5.0": + version: 0.5.0 + resolution: "listr-update-renderer@npm:0.5.0" + dependencies: + chalk: ^1.1.3 + cli-truncate: ^0.2.1 + elegant-spinner: ^1.0.1 + figures: ^1.7.0 + indent-string: ^3.0.0 + log-symbols: ^1.0.2 + log-update: ^2.3.0 + strip-ansi: ^3.0.1 + peerDependencies: + listr: ^0.14.2 + checksum: 0219b8752f556a16432b7123c30deeefbd9a2d0bb3421ad71da2719834fbdad2daaf55067607da5cc54fd761aba549bf67292200f39cc8523ffd9052d36636ba + languageName: node + linkType: hard + +"listr-verbose-renderer@npm:^0.5.0": + version: 0.5.0 + resolution: "listr-verbose-renderer@npm:0.5.0" + dependencies: + chalk: ^2.4.1 + cli-cursor: ^2.1.0 + date-fns: ^1.27.2 + figures: ^2.0.0 + checksum: 83aec28ed114420c4ca4c4109e2432ffc071f9ea4a7d87b7bdb2856b97fa4d9f1f4b003a4871ce35d3863bdf7f9b1af7151da23c8f842cddfa66f8afd5b11c7b + languageName: node + linkType: hard + +"listr2@npm:^2.1.0": + version: 2.4.1 + resolution: "listr2@npm:2.4.1" + dependencies: + chalk: ^4.1.0 + cli-truncate: ^2.1.0 + figures: ^3.2.0 + indent-string: ^4.0.0 + log-update: ^4.0.0 + p-map: ^4.0.0 + rxjs: ^6.6.0 + through: ^2.3.8 + peerDependencies: + enquirer: ">= 2.3.0 < 3" + checksum: 0deb2f6174551c54080aa2e6f3b5d5eecc316ef52cde1075e3b872c20de0ee01bacc9777e21a7ec294e621e2c7462943de67f55574e287688bfee0e64e9fbe22 + languageName: node + linkType: hard + +"listr@npm:0.14.3": + version: 0.14.3 + resolution: "listr@npm:0.14.3" + dependencies: + "@samverschueren/stream-to-observable": ^0.3.0 + is-observable: ^1.1.0 + is-promise: ^2.1.0 + is-stream: ^1.1.0 + listr-silent-renderer: ^1.1.1 + listr-update-renderer: ^0.5.0 + listr-verbose-renderer: ^0.5.0 + p-map: ^2.0.0 + rxjs: ^6.3.3 + checksum: 97a194b6ad32aa59e9fdb0f21e1937cfe11f19218a175af1e468360dd587d300b19aa29f51baceb497cbfa555c7583da2871f5df4acf4d42233970df7d6418ea + languageName: node + linkType: hard + +"load-json-file@npm:^1.0.0": + version: 1.1.0 + resolution: "load-json-file@npm:1.1.0" + dependencies: + graceful-fs: ^4.1.2 + parse-json: ^2.2.0 + pify: ^2.0.0 + pinkie-promise: ^2.0.0 + strip-bom: ^2.0.0 + checksum: 3966dbc0c48f14df4091d89f4daf1e44b156f2c4e0870bf737b99e5925e0179277fc34226f03b7137a2e277d4e641cf626c6108c28910bbdce01e3d85e0d70b9 + languageName: node + linkType: hard + +"load-json-file@npm:^2.0.0": + version: 2.0.0 + resolution: "load-json-file@npm:2.0.0" + dependencies: + graceful-fs: ^4.1.2 + parse-json: ^2.2.0 + pify: ^2.0.0 + strip-bom: ^3.0.0 + checksum: c6ea93d36099dd6e778c6c018c9e184ad65d278a9538c2280f959b040b1a9a756d8856bdaf8a38c8f1454eca19bf4798ea59f79ccd8bb1c33aa8b7ecbe157f0c + languageName: node + linkType: hard + +"load-json-file@npm:^4.0.0": + version: 4.0.0 + resolution: "load-json-file@npm:4.0.0" + dependencies: + graceful-fs: ^4.1.2 + parse-json: ^4.0.0 + pify: ^3.0.0 + strip-bom: ^3.0.0 + checksum: 692f33387be2439e920e394a70754499c22eabe567f55fee7c0a8994c050e27360c1b39c5375d214539ebb7d609d28e69f6bd6e3c070d30bc202c99289e27f96 + languageName: node + linkType: hard + +"load-json-file@npm:^5.3.0": + version: 5.3.0 + resolution: "load-json-file@npm:5.3.0" + dependencies: + graceful-fs: ^4.1.15 + parse-json: ^4.0.0 + pify: ^4.0.1 + strip-bom: ^3.0.0 + type-fest: ^0.3.0 + checksum: c45b21cf66cb3a5948ef1ab12db94f9bf8d298c713014c8d9b6667062413916b57eb3c8ca365e1e84d422014c8c4d749ceb3e7335d2400e3e062e4009314eae7 + languageName: node + linkType: hard + +"loader-fs-cache@npm:^1.0.2": + version: 1.0.3 + resolution: "loader-fs-cache@npm:1.0.3" + dependencies: + find-cache-dir: ^0.1.1 + mkdirp: ^0.5.1 + checksum: 7fa16d623f529288bb961a6ba68f4e756e18b5611de9ef10f4d9d72d70ba149fa2a0d51f79c282d5bb59d7c3ce184d20b6d1d68b9bc618b45c7e1940a6be47df + languageName: node + linkType: hard + +"loader-runner@npm:^2.4.0": + version: 2.4.0 + resolution: "loader-runner@npm:2.4.0" + checksum: 9173b602e82801c734d5f78fdbcb7f2de2dd8f68ef0afb9793bd2cc9eab37cd0bc99fda020f83204b5acdcf2ea23d062c49767778c6c1108f6c90face5dde225 + languageName: node + linkType: hard + +"loader-utils@npm:1.2.3": + version: 1.2.3 + resolution: "loader-utils@npm:1.2.3" + dependencies: + big.js: ^5.2.2 + emojis-list: ^2.0.0 + json5: ^1.0.1 + checksum: 61b44f2d301c063f4937de087bffa1289ec65a88d7bccb1527baf1f63f1278761e18eb230b86f40fbea20776ed5aadcbb1ab468088ccde86858d2a4f77db1467 + languageName: node + linkType: hard + +"loader-utils@npm:^1.1.0, loader-utils@npm:^1.2.3, loader-utils@npm:^1.4.0": + version: 1.4.0 + resolution: "loader-utils@npm:1.4.0" + dependencies: + big.js: ^5.2.2 + emojis-list: ^3.0.0 + json5: ^1.0.1 + checksum: 9fd690e57ad78d32ff2942383b4a7a175eba575280ba5aca3b4d03183fec34aa0db314f49bd3301adf7e60b02471644161bf53149e8f2d18fd6a52627e95a927 + languageName: node + linkType: hard + +"loader-utils@npm:^2.0.0": + version: 2.0.0 + resolution: "loader-utils@npm:2.0.0" + dependencies: + big.js: ^5.2.2 + emojis-list: ^3.0.0 + json5: ^2.1.2 + checksum: a1c2e48781e1501e126a32c39bc1fb1a7e2f02bd99e5aeb8853ddaf3c121fffefcc4579367f97ca6890b58369e571af1c9ec82e4e20db238d560ab359ff25c33 + languageName: node + linkType: hard + +"localstorage-polyfill@npm:1.0.1": + version: 1.0.1 + resolution: "localstorage-polyfill@npm:1.0.1" + checksum: c03dabb9af6e469de9de729dbb59bbff0b238d34c2a3f64466fca6a9aeed457f30ca8eb78dc81847f551a0ec96d69e192635f7fa93f23cf8dc7f27109a1a6f28 + languageName: node + linkType: hard + +"locate-path@npm:^2.0.0": + version: 2.0.0 + resolution: "locate-path@npm:2.0.0" + dependencies: + p-locate: ^2.0.0 + path-exists: ^3.0.0 + checksum: ee5a888d686f8d555ebfa6c4f6f3b7c5cdfa5f382dee17e0b3fde7456fc68301ddb6a79790a412659d1e067f2f58fd74c683b203fc20368deaed45fb985b4fda + languageName: node + linkType: hard + +"locate-path@npm:^3.0.0": + version: 3.0.0 + resolution: "locate-path@npm:3.0.0" + dependencies: + p-locate: ^3.0.0 + path-exists: ^3.0.0 + checksum: 0b6bf0c1bb09021499f6198ed6a4ae367e8224e2493a74cc7bc5f4e6eca9ed880a5f7fdfb4d57b7e21d3e289c3abfe152cd510cacb1d03049f9d81d9a7d302ca + languageName: node + linkType: hard + +"locate-path@npm:^5.0.0": + version: 5.0.0 + resolution: "locate-path@npm:5.0.0" + dependencies: + p-locate: ^4.1.0 + checksum: c58f49d45c8672d0a290dea0ce41fcb27205b3f2d61452ba335ef3b42ad36c10c31b1f061b46d96dd4b81e9a00e8a2897bc124d75623b80a9f6d36b1e754a6b5 + languageName: node + linkType: hard + +"lodash-es@npm:^4.17.14": + version: 4.17.15 + resolution: "lodash-es@npm:4.17.15" + checksum: ee2871b76deefd1754527e659a8c8b688f2e427e67b30709296878e18ad9cb54b4f0fc16a7161298156b4e0ebc2a37dfe501a3ea8725f195763f9de8a7ba6da6 + languageName: node + linkType: hard + +"lodash._reinterpolate@npm:^3.0.0": + version: 3.0.0 + resolution: "lodash._reinterpolate@npm:3.0.0" + checksum: 27513557d6fe526296324f1de9e1b8e8ac88ef2a2544a655e825f3ab0f52c5a675f1a73a0c9ff3c64fda031c56dfb4deb9dac7c7d21f9a04bc63dd7db5a5a73d + languageName: node + linkType: hard + +"lodash.assignin@npm:^4.0.9": + version: 4.2.0 + resolution: "lodash.assignin@npm:4.2.0" + checksum: 0f6714535147b9114e3acb59a80b8e43f1d2c7b9ab0fee3ae5e8df93cecda3c6f6c1e513b2ce8b8e81d89b15481f2df69cfe0abf2584c739f96890cca858b173 + languageName: node + linkType: hard + +"lodash.bind@npm:^4.1.4": + version: 4.2.1 + resolution: "lodash.bind@npm:4.2.1" + checksum: 8f6e03432ca47650aaa7565c33511272fdcc2c51eefaa12d8fac06704610a1987b68a62cabe0a18068412df7066e62ee0bc4e10d5fbaf1b28e4edb275bed3b46 + languageName: node + linkType: hard + +"lodash.camelcase@npm:^4.3.0": + version: 4.3.0 + resolution: "lodash.camelcase@npm:4.3.0" + checksum: 3cb674ed3b37bb698f2ec5a1c3f607d157279f3015877132e8be5c22cf8048988cb9bf1e61c90dbefea3895a459c095773cc266a5b1a9f4202bcd062b3983e37 + languageName: node + linkType: hard + +"lodash.chunk@npm:^4.2.0": + version: 4.2.0 + resolution: "lodash.chunk@npm:4.2.0" + checksum: c037c4a5217a9bd15b459e9666f80c720cf097f35ed18d9bdb129f13b697b631a9be29f3eb926f39afd06b500f717c5a37e95056aaa4b561cf3df71d2f56d882 + languageName: node + linkType: hard + +"lodash.clonedeep@npm:^4.5.0": + version: 4.5.0 + resolution: "lodash.clonedeep@npm:4.5.0" + checksum: 41e2fe4c57c56a66a4775a6ddeebe9272f0ce4d257d97b3cb8724a9b01eeec9b09ce7e8603d6926baf5f48c287d988f0de4bf5aa244ea86b1f22c1e6f203cc27 + languageName: node + linkType: hard + +"lodash.defaults@npm:^4.0.1, lodash.defaults@npm:^4.2.0": + version: 4.2.0 + resolution: "lodash.defaults@npm:4.2.0" + checksum: fde72e71f7b7ece10c24e43dd601574168467d50bc76687302d40de341d5cb8e35b100105d938458747d2ad5f20d8bb736e62523ef39d1a8b40f7307c50f10ac + languageName: node + linkType: hard + +"lodash.filter@npm:^4.4.0": + version: 4.6.0 + resolution: "lodash.filter@npm:4.6.0" + checksum: b4f23b12f04c56484871a05016830b601f2c87405b1ddaf5f786d1040991ef081a9864e70b00e495b8fe3fb0d47fd288af240d55ce46a8ab6722168127455872 + languageName: node + linkType: hard + +"lodash.flatmap@npm:^4.5.0": + version: 4.5.0 + resolution: "lodash.flatmap@npm:4.5.0" + checksum: 9d8cc646282e5437d948cfe9c5265e8581b64719e318937a79a111fbfb27f380ce9a927954bd56298b81023a937b0aa3e313bf2ef37fd61be7175c39d81999e1 + languageName: node + linkType: hard + +"lodash.flatten@npm:^4.2.0, lodash.flatten@npm:^4.4.0": + version: 4.4.0 + resolution: "lodash.flatten@npm:4.4.0" + checksum: f22a7f6f163256d87345b07c76122e03d03abbf943b6c3aa5e5fafb7d5bce765013aedfc2aae7e649af0907287a2cf85de24237dbdd3ecd485a77d56e070b54c + languageName: node + linkType: hard + +"lodash.foreach@npm:^4.3.0": + version: 4.5.0 + resolution: "lodash.foreach@npm:4.5.0" + checksum: aa177589a923db147831937b2b74746276247a4c0870c8dfe14bcebb009e9a89b33287589ba0af90a6fa2355b0759cea03ab6d0a25219a25d0d96222de4a831f + languageName: node + linkType: hard + +"lodash.get@npm:^4.4.2": + version: 4.4.2 + resolution: "lodash.get@npm:4.4.2" + checksum: 447e575e3caa5131ef44e5a0c135b1614f3c937d86b3be0568f9da7b0fd015010af3b6b4e41edf6e2698c9ce2dcc061ca71b31f274f799c991dceb018be16e4f + languageName: node + linkType: hard + +"lodash.groupby@npm:^4.6.0": + version: 4.6.0 + resolution: "lodash.groupby@npm:4.6.0" + checksum: fb4c30f93ca5a11c4234df33578c1c7f9d86edb8e85a808cffa6fc2064b3a1856e93948489b1774264cf35995a29f82cbf6fd31093d9ebcb9a9c8fd7225f4686 + languageName: node + linkType: hard + +"lodash.has@npm:^4.5.2": + version: 4.5.2 + resolution: "lodash.has@npm:4.5.2" + checksum: ed2cbed6f3f06fe2ae0a604464208a758197624810e58c4928de3ab9a00d2ac736ade10f49b6ea77f96c702f9d104189a57a7af0bfa1725e8554524aa9466f41 + languageName: node + linkType: hard + +"lodash.includes@npm:^4.3.0": + version: 4.3.0 + resolution: "lodash.includes@npm:4.3.0" + checksum: 20d6b1bf7841a4eb21bcb124641a1d5fb368e3c86fb8834d80149ec92caef67f3bf316405e4ec309591f0a83e461cebb7b43b2b57d00fd45d1eb3009fe13be97 + languageName: node + linkType: hard + +"lodash.isboolean@npm:^3.0.3": + version: 3.0.3 + resolution: "lodash.isboolean@npm:3.0.3" + checksum: e5b7a921f47759773266e66664e4a54f2438cc213fe336c5b96321d4328ebb2785e939bbcd07b29d5a20cdc6140d471abae1e94cdfb25937dc91ddc5150f41a0 + languageName: node + linkType: hard + +"lodash.isinteger@npm:^4.0.4": + version: 4.0.4 + resolution: "lodash.isinteger@npm:4.0.4" + checksum: a29551cc9aaaf24cc4fdd7ce1734c7a19c748c704f061ef079f6026dc9666ac10e8ae08e4f0cd3aeb6094e20be043a7402c72ce70cbae9ea6ecce67ad997332c + languageName: node + linkType: hard + +"lodash.ismatch@npm:^4.4.0": + version: 4.4.0 + resolution: "lodash.ismatch@npm:4.4.0" + checksum: f6e3ef9fd357b9bb8d3e496916fe4761be816721fbd6019e12cb13dc2c59780bf57f8c1b1a7aed98f2a0f57fe7fa12496b454a315f659bc4bad1100184ed589c + languageName: node + linkType: hard + +"lodash.isnumber@npm:^3.0.3": + version: 3.0.3 + resolution: "lodash.isnumber@npm:3.0.3" + checksum: a33b10bf57dd27b32aac0bb4159d3f40db6b294095f42d7ff9f966a004932cdcc12417bf0750a9d3ac0c62690dd020d7d227b05ef486a8c9061963acf2ea3fad + languageName: node + linkType: hard + +"lodash.isplainobject@npm:^4.0.6": + version: 4.0.6 + resolution: "lodash.isplainobject@npm:4.0.6" + checksum: 72a114b610ec32a42b8cb47680d1729398caea0ee0631c0b220b97b21e7df19312377cb077acb6593bf6c5abdbdb43c530aa66b440e30d53324986d386808cd0 + languageName: node + linkType: hard + +"lodash.isstring@npm:^4.0.1": + version: 4.0.1 + resolution: "lodash.isstring@npm:4.0.1" + checksum: 20c46960b74fd63c27b534f1725cd4141ac19b35c7250affee37c8b7899b1a4c5e9820becfafe571a4d48cd4c86206ee03c2e93fe943dbeab82ddd5cab710540 + languageName: node + linkType: hard + +"lodash.kebabcase@npm:^4.1.1": + version: 4.1.1 + resolution: "lodash.kebabcase@npm:4.1.1" + checksum: cee7b365bf62c9ae357d8c5cbd1dc767ce626fecea31b8ff7919cb15adaf2c36652fb07688bf8d55e71c456ac8e5dc7c85bf12f88716114bde232645714d538f + languageName: node + linkType: hard + +"lodash.map@npm:^4.4.0": + version: 4.6.0 + resolution: "lodash.map@npm:4.6.0" + checksum: f8a8f4072c8ed72f07d63514e45d7267fa619a7998b8a1ccb875db4c265e655f4a71c5d527370185070be80900ab574c5cd285debce557e6cb4f9692a02ffa62 + languageName: node + linkType: hard + +"lodash.memoize@npm:4.x, lodash.memoize@npm:^4.1.2": + version: 4.1.2 + resolution: "lodash.memoize@npm:4.1.2" + checksum: 080c1095b7795b293a06078737550dc0c8138192cadbafb4e4b1303357d367ac589a1a570fad8de154175b008ca7b2b48d6a7f1755a143e13b764e20a7104080 + languageName: node + linkType: hard + +"lodash.merge@npm:^4.4.0": + version: 4.6.2 + resolution: "lodash.merge@npm:4.6.2" + checksum: 4e2bb42a87a148991458d7c384bc197e96f7115e9536fc8e2c86ae9e99ce1c1f693ff15eb85761952535f48d72253aed8e673d9f32dde3e671cd91e3fde220a7 + languageName: node + linkType: hard + +"lodash.once@npm:^4.0.0": + version: 4.1.1 + resolution: "lodash.once@npm:4.1.1" + checksum: 236e00ca5f20304fab5b38aa3aedb034959153dae6edf33d7f9b00406ced8f24ed232a74f1200505d9049165ceea2ce1256199e1683b0a25e9de89091d4b13c2 + languageName: node + linkType: hard + +"lodash.padstart@npm:^4.6.1": + version: 4.6.1 + resolution: "lodash.padstart@npm:4.6.1" + checksum: c1fffb1c848c39f5424026641416d1dddeae9e98af5e022945364ba7c06556ea59766b70ffabe9a013538b98d29992f232a0ed02f47d3aef5fc8267780a8a50f + languageName: node + linkType: hard + +"lodash.pick@npm:^4.2.1, lodash.pick@npm:^4.4.0": + version: 4.4.0 + resolution: "lodash.pick@npm:4.4.0" + checksum: 3cf24484b1bd36652bfbe1e925e6955ee0332f1612919331a2d6115d5617bcaaf559e4fb21f4160d51eb2359f7a8dc0e478773da516b4ccc15ef261327064aab + languageName: node + linkType: hard + +"lodash.pickby@npm:^4.6.0": + version: 4.6.0 + resolution: "lodash.pickby@npm:4.6.0" + checksum: 4be8dc90315a03aa002d9c3899a5803f8ba22739442a187de2258a332666d51a0800db8b87875543ebc05bdc6919d12a0d8b6d8ab2e0fcdd20fe1cf908f15c31 + languageName: node + linkType: hard + +"lodash.reduce@npm:^4.4.0": + version: 4.6.0 + resolution: "lodash.reduce@npm:4.6.0" + checksum: 1f8eb29e6f14ceb7abae77c1815eaeca329a8fe419b02236f60ab19dfc88c8475e959990afe93118534c4d7c9d17fed1f1876a36dda16cb70e27eb779fecf15a + languageName: node + linkType: hard + +"lodash.reject@npm:^4.4.0": + version: 4.6.0 + resolution: "lodash.reject@npm:4.6.0" + checksum: cc377681a5449065b0dd14c6c57b384257e9ab7b5af9efe69b7c3ab17c2ab02e0b72005fd6153fcd2ba0ba741aa53e11936ad2b7037e0f593e6a510a783b6ffc + languageName: node + linkType: hard + +"lodash.set@npm:^4.3.2": + version: 4.3.2 + resolution: "lodash.set@npm:4.3.2" + checksum: 4dfedacae1c1cf86385a2b6e30ba538f06c90d703a0abd83a11432d80ec24b4016fe27359cdc0554a02a31a468789cbb282801dd755e54581cf0295477e2341d + languageName: node + linkType: hard + +"lodash.some@npm:^4.4.0": + version: 4.6.0 + resolution: "lodash.some@npm:4.6.0" + checksum: ac19755d79e0745643762f0415b667034837b137d801f0bd0a7fa2a21b653f3f9342076f6fd2ddb394109a96cd68a157b84d961d3c91e47b37a5d96a40c2233e + languageName: node + linkType: hard + +"lodash.sortby@npm:^4.6.0, lodash.sortby@npm:^4.7.0": + version: 4.7.0 + resolution: "lodash.sortby@npm:4.7.0" + checksum: 43cde11276c66da7b3eda5e9f00dc6edc276d2bcf0a5969ffc62b612cd1c4baf2eff5e84cee11383005722c460a9ca0f521fad4fa1cd2dc1ef013ee4da2dfe63 + languageName: node + linkType: hard + +"lodash.template@npm:^4.0.2, lodash.template@npm:^4.4.0, lodash.template@npm:^4.5.0": + version: 4.5.0 + resolution: "lodash.template@npm:4.5.0" + dependencies: + lodash._reinterpolate: ^3.0.0 + lodash.templatesettings: ^4.0.0 + checksum: e27068e20b7a374938c20ab76a093dd49e9626bfbe1882d9d05d81efefe3210cfcd6ad24f1cb0d956ce57d75855fec17bd386a4aa54762a144bd7c0891ee7ee1 + languageName: node + linkType: hard + +"lodash.templatesettings@npm:^4.0.0": + version: 4.2.0 + resolution: "lodash.templatesettings@npm:4.2.0" + dependencies: + lodash._reinterpolate: ^3.0.0 + checksum: 45546a5b76376b138ef4f01aa2722813127c639428eb9baef3fbac176b509ee2dab5cb9d1ee8267dbeeef8d49371f9a748af3df83649bf8b75fa54993f65b7aa + languageName: node + linkType: hard + +"lodash.toarray@npm:^4.4.0": + version: 4.4.0 + resolution: "lodash.toarray@npm:4.4.0" + checksum: f2b8de1812789321335dd5f4cb60625c4b8874cb3b300367d8a22990072459b76eb893feacd243686493393cccd035115cc149563f7aa5123d06d9a3b2825bf1 + languageName: node + linkType: hard + +"lodash.uniq@npm:4.5.0, lodash.uniq@npm:^4.5.0": + version: 4.5.0 + resolution: "lodash.uniq@npm:4.5.0" + checksum: 47cb25b59bf40ef3bdf441b7b6cb41d0b95ae0ca576be2c206724dd66041fa8aadab55c1210792671aa0b1c9878d5c0be48927bf4d22f3ed50e5f79d3b2e90b7 + languageName: node + linkType: hard + +"lodash@npm:4.17.15": + version: 4.17.15 + resolution: "lodash@npm:4.17.15" + checksum: aec3fbb7570aa67bda500b8299b1b1821d60646bede87f76a74dfcc7666ab3445267d734ec71424d70809d52ad67a1356fab5ab694a3faa1908d68e9d48f00f5 + languageName: node + linkType: hard + +"lodash@npm:4.17.19, lodash@npm:>=3.5 <5, lodash@npm:^4.17.11, lodash@npm:^4.17.12, lodash@npm:^4.17.13, lodash@npm:^4.17.14, lodash@npm:^4.17.15, lodash@npm:^4.17.19, lodash@npm:^4.17.5, lodash@npm:^4.2.1, lodash@npm:^4.3.0, lodash@npm:^4.5.2, lodash@npm:~4.17.15": + version: 4.17.19 + resolution: "lodash@npm:4.17.19" + checksum: ff2b7a95f0129dba9101e346d44e0eda0f159d76bbbf23721eec1969b87a32bde3de0cfef0733218c64620e9be08040a973278d46a686540233b356115f3527c + languageName: node + linkType: hard + +"log-symbols@npm:4.0.0, log-symbols@npm:^4.0.0": + version: 4.0.0 + resolution: "log-symbols@npm:4.0.0" + dependencies: + chalk: ^4.0.0 + checksum: 2cbdb0427d1853f2bd36645bff42aaca200902284f28aadacb3c0fa4c8c43fe6bfb71b5d61ab08b67063d066d7c55b8bf5fbb43b03e4a150dbcdd643e9cd1dbf + languageName: node + linkType: hard + +"log-symbols@npm:^1.0.2": + version: 1.0.2 + resolution: "log-symbols@npm:1.0.2" + dependencies: + chalk: ^1.0.0 + checksum: 69ba19d52b32bdcc659752321bc89e21d697088b7dce8ed1fed9582e3e37eef6a859502eeb721d8b7d08f0b5cb3d92b16a4321e01393ba8bace23f2a834be077 + languageName: node + linkType: hard + +"log-update@npm:^2.3.0": + version: 2.3.0 + resolution: "log-update@npm:2.3.0" + dependencies: + ansi-escapes: ^3.0.0 + cli-cursor: ^2.0.0 + wrap-ansi: ^3.0.1 + checksum: 9b284678617abcdeb6da5589b82f88bdad7129b6d8cd428c010c5e4e1b6d7a4ccfcadb3375701e4cf7900cff735fcff123b9dea3fd28f7636e129f3a7566455c + languageName: node + linkType: hard + +"log-update@npm:^4.0.0": + version: 4.0.0 + resolution: "log-update@npm:4.0.0" + dependencies: + ansi-escapes: ^4.3.0 + cli-cursor: ^3.1.0 + slice-ansi: ^4.0.0 + wrap-ansi: ^6.2.0 + checksum: 65ee082f30570fb315a0f674cccef4d16ef5a7c9d2651a65099e665f0adbf848af5e4f9e580b6e81d5677a4df3d7ea06ff8118fe8428a570a4a387875bb8210c + languageName: node + linkType: hard + +"loglevel@npm:^1.6.6, loglevel@npm:^1.6.7, loglevel@npm:^1.6.8": + version: 1.6.8 + resolution: "loglevel@npm:1.6.8" + checksum: 847939b08549649a0495e1b0d25ac89cec537a057fbb6deae468a066236ca0295aabce314366c026605537c345ece982d88783c7f44ab3599a40554bb09442ed + languageName: node + linkType: hard + +"long@npm:^4.0.0": + version: 4.0.0 + resolution: "long@npm:4.0.0" + checksum: 9cebc1ee8b9ea15278c977f61250ac41becdf7216104905f0d198c147ed2a7a090a2d83bb212878d3dc3ccb0199e6428862f848ec4b0ecfeab4dfe24eccf21b3 + languageName: node + linkType: hard + +"loose-envify@npm:^1.0.0, loose-envify@npm:^1.1.0, loose-envify@npm:^1.2.0, loose-envify@npm:^1.3.1, loose-envify@npm:^1.4.0": + version: 1.4.0 + resolution: "loose-envify@npm:1.4.0" + dependencies: + js-tokens: ^3.0.0 || ^4.0.0 + bin: + loose-envify: cli.js + checksum: 5c3b47bbe5f597a3889fb001a3a98aaea2a3fafa48089c19034de1e0121bf57dbee609d184478514d74d5c5a7e9cfa3d846343455e5123b060040d46c39e91dc + languageName: node + linkType: hard + +"loud-rejection@npm:^1.0.0": + version: 1.6.0 + resolution: "loud-rejection@npm:1.6.0" + dependencies: + currently-unhandled: ^0.4.1 + signal-exit: ^3.0.0 + checksum: 9d57f7bc81da9a167dca46f9cc986dd18b0ae822811c69c2374f4945418234bb1ee102ca3a34bacf74e3bee122b27eed15604e57d5e1974f6fef8984861ed9ca + languageName: node + linkType: hard + +"lower-case@npm:2.0.1, lower-case@npm:^2.0.1": + version: 2.0.1 + resolution: "lower-case@npm:2.0.1" + dependencies: + tslib: ^1.10.0 + checksum: 52a55327ea69cbec7693daa11efb94f9e3d13b2697773d3cecd71f68c7eafaca2b0b34f8cc10617a751134e17c8396be992972765f5d5db220047651046762b5 + languageName: node + linkType: hard + +"lowercase-keys@npm:^1.0.0, lowercase-keys@npm:^1.0.1": + version: 1.0.1 + resolution: "lowercase-keys@npm:1.0.1" + checksum: ac9d79c47dd9f831cebb2cbe930e72f7c03b27ab07c5bb9072ee0b4a853ce26d6648403b9eb371b3d400af3790da9ce65cf7207af887f8c134d53dce81559107 + languageName: node + linkType: hard + +"lowercase-keys@npm:^2.0.0": + version: 2.0.0 + resolution: "lowercase-keys@npm:2.0.0" + checksum: 4da67f41865a25360bb05749a66a83c60987c7efa0b8ec443941a19978c21ba916ae9fedca25b96fc652026c4264a437d3fec099d1949716b5483eec42395ec9 + languageName: node + linkType: hard + +"lru-cache@npm:^5.0.0, lru-cache@npm:^5.1.1": + version: 5.1.1 + resolution: "lru-cache@npm:5.1.1" + dependencies: + yallist: ^3.0.2 + checksum: ffd9a280fa3400e731265db502270c2a65432f3fbfac23d480c72f675ec16dbbeddd57d4baf7aca70ab7af49949fad1bcaaf5a5e6e1cfed7316de71bb5dddf1c + languageName: node + linkType: hard + +"lunr@npm:^2.3.8": + version: 2.3.8 + resolution: "lunr@npm:2.3.8" + checksum: b542e6e8137b4be932f003996ab7af5f64f5843c752958723f5a04263e401cf3b7e6f32f08aa7afac3cc93c2a3b580ddee3c8dba0d735b9f4b8c121c306dadfa + languageName: node + linkType: hard + +"macos-release@npm:^2.2.0": + version: 2.4.1 + resolution: "macos-release@npm:2.4.1" + checksum: 0d15f4b163831e3178f3b1eb602938e38690b26caef7b275ae54e2e705d168eb2309d3d4dbc8c08ff03ecb0a04ca2fb3e66cc8b0c42182adc9f90a19b8005e6f + languageName: node + linkType: hard + +"make-dir@npm:^1.0.0": + version: 1.3.0 + resolution: "make-dir@npm:1.3.0" + dependencies: + pify: ^3.0.0 + checksum: 20a14043c61faab5ddc7844e3b325281c81b0975bbe4ae657774fdb51216b6a07b5c5cd90bdaf6a9dfcd7a12e81d9ddb5b3d47c9f27a65f6fea66be701f35b36 + languageName: node + linkType: hard + +"make-dir@npm:^2.0.0, make-dir@npm:^2.1.0": + version: 2.1.0 + resolution: "make-dir@npm:2.1.0" + dependencies: + pify: ^4.0.1 + semver: ^5.6.0 + checksum: 94e2ab9dda2198508057fd75f4e0b5998ee2d1e390c1e03172c32104dbd750ba2314376fec540ce517c8ed7fc526aeebc7d193315d060e229fec0fe55feb2228 + languageName: node + linkType: hard + +"make-dir@npm:^3.0.0, make-dir@npm:^3.0.2": + version: 3.1.0 + resolution: "make-dir@npm:3.1.0" + dependencies: + semver: ^6.0.0 + checksum: 54b6f186c209c1b133d0d1710e6b04c41ebfcb0dac699e5a369ea1223f22c0574ef820b91db37cae6c245f5bda8aff9bfec94f6c23e7d75970446b34a58a79b0 + languageName: node + linkType: hard + +"make-error@npm:1.x, make-error@npm:^1.1.1": + version: 1.3.6 + resolution: "make-error@npm:1.3.6" + checksum: 2c780bab8409b865e8ee86697c599a2bf2765ec64d21eb67ccda27050e039f983feacad05a0d43aba3c966ea03d305d2612e94fec45474bcbc61181f57c5bb88 + languageName: node + linkType: hard + +"make-fetch-happen@npm:^5.0.0": + version: 5.0.2 + resolution: "make-fetch-happen@npm:5.0.2" + dependencies: + agentkeepalive: ^3.4.1 + cacache: ^12.0.0 + http-cache-semantics: ^3.8.1 + http-proxy-agent: ^2.1.0 + https-proxy-agent: ^2.2.3 + lru-cache: ^5.1.1 + mississippi: ^3.0.0 + node-fetch-npm: ^2.0.2 + promise-retry: ^1.1.1 + socks-proxy-agent: ^4.0.0 + ssri: ^6.0.0 + checksum: 7d3a954422a0f85b7b77d86358fa913152768fbc3801e1a045f02b958df15016ab12803083dd98eaeb4b33d9c3090a597e2f9b177af2a2ad1d349f6584b26ccd + languageName: node + linkType: hard + +"makeerror@npm:1.0.x": + version: 1.0.11 + resolution: "makeerror@npm:1.0.11" + dependencies: + tmpl: 1.0.x + checksum: 582016a5e8c56c1101e5fd95ea0ed08e30e5c4fda27e00d1399f75d46bd55fc5475a23089175b61dada21f6a6058886fd00f5985bbe112b943bb0bc833b4ea4d + languageName: node + linkType: hard + +"mamacro@npm:^0.0.3": + version: 0.0.3 + resolution: "mamacro@npm:0.0.3" + checksum: 9bbd2ecfbd2b05bfa541ea4de3f8aa3771c9442b2bc2d960dd43c346eeba090f3e2d27ac36168363aba7967777032d2d6ff9a52cba191ffdfcff5459300af3b5 + languageName: node + linkType: hard + +"map-age-cleaner@npm:^0.1.1": + version: 0.1.3 + resolution: "map-age-cleaner@npm:0.1.3" + dependencies: + p-defer: ^1.0.0 + checksum: 0f0b8114925d9f9d528c5d5c9cbde83fea203b8edb1cfdb10d31aa2ce1ddccfcefe0bd6924b0d2e3928ff9d895496bf817a22b259fe05f3c4865702e65b71fd3 + languageName: node + linkType: hard + +"map-cache@npm:^0.2.0, map-cache@npm:^0.2.2": + version: 0.2.2 + resolution: "map-cache@npm:0.2.2" + checksum: 3d205d20e0135a5b5f3e2b85e7bfa289cc2fc3c748fe802795e74c6fe157e5f2bed3b7c3a270b82fe36a02123880cb2e0dc525e1ae37ac7e673ce3e75a2e2c56 + languageName: node + linkType: hard + +"map-obj@npm:^1.0.0, map-obj@npm:^1.0.1": + version: 1.0.1 + resolution: "map-obj@npm:1.0.1" + checksum: e68b20e4fa76efdbba9a7af05b879eb7a6c5ccb7a9d813796de825da4c182fc3dab66f4b2a32a9aefae83db152a0172deb1e19a9c2322c6d412b8f9f81ca51a4 + languageName: node + linkType: hard + +"map-obj@npm:^2.0.0": + version: 2.0.0 + resolution: "map-obj@npm:2.0.0" + checksum: fbb18029a290f37666234956a253cad6d801d3f7524e1ae51931dc28b5df75ebe109aa9a24bd0ca49114dc0eebe97d004b7c8885681664b8003bfaf48c24c617 + languageName: node + linkType: hard + +"map-obj@npm:^4.0.0": + version: 4.1.0 + resolution: "map-obj@npm:4.1.0" + checksum: 91827cab5aa21840605cb5e77c8cabd3089251f95f939419a7208c29fb6b1032006d8b2ad9d407c91b6e0a9e282105c1811eabd750df87f8b55ae758f87c2063 + languageName: node + linkType: hard + +"map-visit@npm:^1.0.0": + version: 1.0.0 + resolution: "map-visit@npm:1.0.0" + dependencies: + object-visit: ^1.0.0 + checksum: 9e85e6d802183927229d9ad04d70a0e0c7225451994605674d3ed4e4a21f817b4d9aba42a775e98078ffe47cf67df44a50eb07f965f14afead5015c8692503bd + languageName: node + linkType: hard + +"markdown-escapes@npm:^1.0.0": + version: 1.0.4 + resolution: "markdown-escapes@npm:1.0.4" + checksum: eea95364eccadf6fa656f2fd3f8e0837aee3a86b582a80d9c301c794512caaf0dba021614fcc5b93bfdb6110f2d8b9902da9bc915b33362fc335dca285d6d902 + languageName: node + linkType: hard + +"marked@npm:1.0.0": + version: 1.0.0 + resolution: "marked@npm:1.0.0" + bin: + marked: bin/marked + checksum: 4121f2f5cb7130e57571780181cddac9e3a8692486045f760baad14c6d896c9481180ad8ab8a36fb9476375ddaa860dbc7d29ecf386b2bfa47d4450a9f866cd4 + languageName: node + linkType: hard + +"md5.js@npm:^1.3.4": + version: 1.3.5 + resolution: "md5.js@npm:1.3.5" + dependencies: + hash-base: ^3.0.0 + inherits: ^2.0.1 + safe-buffer: ^5.1.2 + checksum: ca0b260ea29746f1017ad16bc0e164299ae453d2d6a24d635cc6ec03e280f350b09faa4899bfed9387c81457ca55981e9a684336d89faa94b1d2a01903fae2ec + languageName: node + linkType: hard + +"mdast-squeeze-paragraphs@npm:^4.0.0": + version: 4.0.0 + resolution: "mdast-squeeze-paragraphs@npm:4.0.0" + dependencies: + unist-util-remove: ^2.0.0 + checksum: c8bbb62cb0a6dc3f7c466137c35032a47d9284f2f4cfb30e317e4a512b1d505256aa129e2d2ed5cad6d8c35ce0b5c6db4d42bdf8d52ab45493044a0c15ae3848 + languageName: node + linkType: hard + +"mdast-util-definitions@npm:^3.0.0": + version: 3.0.1 + resolution: "mdast-util-definitions@npm:3.0.1" + dependencies: + unist-util-visit: ^2.0.0 + checksum: 304cd53a049259ff7d6aa3124c1c72029aec13d1f4badf8464cce86b58c10d527780321b697bdc48414591b9439ac0da916f2549855e54b954903c30eb577e91 + languageName: node + linkType: hard + +"mdast-util-to-hast@npm:9.1.0": + version: 9.1.0 + resolution: "mdast-util-to-hast@npm:9.1.0" + dependencies: + "@types/mdast": ^3.0.0 + "@types/unist": ^2.0.3 + collapse-white-space: ^1.0.0 + detab: ^2.0.0 + mdast-util-definitions: ^3.0.0 + mdurl: ^1.0.0 + trim-lines: ^1.0.0 + unist-builder: ^2.0.0 + unist-util-generated: ^1.0.0 + unist-util-position: ^3.0.0 + unist-util-visit: ^2.0.0 + checksum: 17ba52fd1adb6a981dbedef95d02c5a7297b2cbefbc9cea56349967298350fa9c4c0ec163069a48078c6ddfd2689d9fae592052d456726e450a07add3f58c6e3 + languageName: node + linkType: hard + +"mdast-util-to-string@npm:^1.1.0": + version: 1.1.0 + resolution: "mdast-util-to-string@npm:1.1.0" + checksum: 0d5ebe2cb573ac817436a0cb0310f7a46c69a742de2de728451fd6293e4825a7894c2112b2651c4c6dcaccb6f545eade1ea58c0e08dcf4a1ddadb636f2fcd52c + languageName: node + linkType: hard + +"mdn-data@npm:2.0.4": + version: 2.0.4 + resolution: "mdn-data@npm:2.0.4" + checksum: bcecf9ae69505ff20a2913fa29849eec8b17fa7ab8c93e4bbec8020003f7fd9329478fc353e010ff0dbbca12fc296ff8cf40b6a5c93294c92df7dc8343880b99 + languageName: node + linkType: hard + +"mdn-data@npm:2.0.6": + version: 2.0.6 + resolution: "mdn-data@npm:2.0.6" + checksum: fc723bad3b7785daa6a18abe3422d710e8941a243703d749b5d4aa4f4bcbdc6a426a434f87001995578b278049fd0f91d5d3f869acd0f27e55a92752e6a4c8e0 + languageName: node + linkType: hard + +"mdurl@npm:^1.0.0": + version: 1.0.1 + resolution: "mdurl@npm:1.0.1" + checksum: ed5e81efed218ca1cb61bbb5c41857c98ce456382d630a2f45a1b050087a10119a24107ca1acd4ccef2f1a17b02b8d61fb3c630d3d7c0f22df906dbdd2e5f7b5 + languageName: node + linkType: hard + +"media-typer@npm:0.3.0": + version: 0.3.0 + resolution: "media-typer@npm:0.3.0" + checksum: be1c825782df7f38eebd451d778f6407bb15a59c8807a69e7f2ad74a25440e474536441c6bf583fdf2803ea23b866e91ff68f565cda297211dd89147758c8df3 + languageName: node + linkType: hard + +"mem@npm:^4.0.0": + version: 4.3.0 + resolution: "mem@npm:4.3.0" + dependencies: + map-age-cleaner: ^0.1.1 + mimic-fn: ^2.0.0 + p-is-promise: ^2.0.0 + checksum: 3af1ac31ef775c5b23bbc0e078d22324c083822fb6ee1a183595359fc23ef638cf90e8c1e044e5f17c871c6e50dc11db11f1aee112d85dc936e3aa2093acd038 + languageName: node + linkType: hard + +"memory-fs@npm:^0.4.1": + version: 0.4.1 + resolution: "memory-fs@npm:0.4.1" + dependencies: + errno: ^0.1.3 + readable-stream: ^2.0.1 + checksum: ba79207118e62d7e3d13b6a00c1b0508b506a7f281e26c5efcc85e7ba0c9e11eda36a242b42f07067367c4b8547b1e905096293fa65dc6b3dbdd8f825b787dd9 + languageName: node + linkType: hard + +"memory-fs@npm:^0.5.0": + version: 0.5.0 + resolution: "memory-fs@npm:0.5.0" + dependencies: + errno: ^0.1.3 + readable-stream: ^2.0.1 + checksum: deb916f33ca09215d6ad58db30854bbf36aaca86e018dcbbbdb7c6160661e8c0b9acdcc23c9931fc6dcd62f3dd5318a7ecab519e3688f7787d0833e5f48c0d0a + languageName: node + linkType: hard + +"memory-pager@npm:^1.0.2": + version: 1.5.0 + resolution: "memory-pager@npm:1.5.0" + checksum: 6812af8165a31e729df25af125ba91b7ea7f3cacaf73a1c139b755be640cab9dfa4bb05b9acfc5d5f1f540b334203f26dac0662576033dd351e0a798abc4d72a + languageName: node + linkType: hard + +"meow@npm:^3.3.0": + version: 3.7.0 + resolution: "meow@npm:3.7.0" + dependencies: + camelcase-keys: ^2.0.0 + decamelize: ^1.1.2 + loud-rejection: ^1.0.0 + map-obj: ^1.0.1 + minimist: ^1.1.3 + normalize-package-data: ^2.3.4 + object-assign: ^4.0.1 + read-pkg-up: ^1.0.1 + redent: ^1.0.0 + trim-newlines: ^1.0.0 + checksum: f0d4feec4052507e9be2902a89143f92c19925130655aa83fc5c5fd51b80c58e140a6d127dae596d8723cc614f31575a49408f70bef7c638f6989276be01d301 + languageName: node + linkType: hard + +"meow@npm:^4.0.0": + version: 4.0.1 + resolution: "meow@npm:4.0.1" + dependencies: + camelcase-keys: ^4.0.0 + decamelize-keys: ^1.0.0 + loud-rejection: ^1.0.0 + minimist: ^1.1.3 + minimist-options: ^3.0.1 + normalize-package-data: ^2.3.4 + read-pkg-up: ^3.0.0 + redent: ^2.0.0 + trim-newlines: ^2.0.0 + checksum: 41a411d7ffe7f5d157856050a43ced7b486a8f5e5fce0abc9d0818325e20d100a0df7e2bb033780e98905353a632700a7045b9f32ce33d2b273385b27d7d1b84 + languageName: node + linkType: hard + +"meow@npm:^7.0.0": + version: 7.0.1 + resolution: "meow@npm:7.0.1" + dependencies: + "@types/minimist": ^1.2.0 + arrify: ^2.0.1 + camelcase: ^6.0.0 + camelcase-keys: ^6.2.2 + decamelize-keys: ^1.1.0 + hard-rejection: ^2.1.0 + minimist-options: ^4.0.2 + normalize-package-data: ^2.5.0 + read-pkg-up: ^7.0.1 + redent: ^3.0.0 + trim-newlines: ^3.0.0 + type-fest: ^0.13.1 + yargs-parser: ^18.1.3 + checksum: a14153d1ac9e5d10e59e4d75b117261fa216ffbdfeaecc9b4f96a56d32de2b426f774dc53e8a079e21816b834c6c41969a78f15711b627d13fed0fdd1b9f8906 + languageName: node + linkType: hard + +"merge-deep@npm:^3.0.2": + version: 3.0.2 + resolution: "merge-deep@npm:3.0.2" + dependencies: + arr-union: ^3.1.0 + clone-deep: ^0.2.4 + kind-of: ^3.0.2 + checksum: 4110b061cc39f4dddc6ca70bd071cf7d5e1ab784266828f2065f2a38baa75e5b84d4542fd62fb4eb5f93c2fe6218e53e65526fb736e6a27763ade5160ada9df7 + languageName: node + linkType: hard + +"merge-descriptors@npm:1.0.1": + version: 1.0.1 + resolution: "merge-descriptors@npm:1.0.1" + checksum: 2d2a09eaac840a7ceac7a13b44b7c8abf3ecccd93a609c3525d8290cb5d814336cc7c0b1dd485ae3bc471ed354eeefb153475ce2e1604ccdf79eebe74021c192 + languageName: node + linkType: hard + +"merge-stream@npm:^2.0.0": + version: 2.0.0 + resolution: "merge-stream@npm:2.0.0" + checksum: cde834809a0e65485e474de3162af9853ab2a07977fd36d328947b7b3e6207df719ffb115b11085ecc570501e15a2aa8bacd772ac53f77873f53b0626e52a39a + languageName: node + linkType: hard + +"merge2@npm:^1.2.3, merge2@npm:^1.3.0": + version: 1.4.1 + resolution: "merge2@npm:1.4.1" + checksum: 7ad40d8b140a5ed4e621b916858410e4f0dd4ced1e5a2b675563347e70f0661d95ba6c3c8007dd3c4e242d0b8eee44559fa75bb90a146cf168debffc0cbc18f3 + languageName: node + linkType: hard + +"methods@npm:~1.1.2": + version: 1.1.2 + resolution: "methods@npm:1.1.2" + checksum: 450e4ea0fd4a0f3de8c0593d753c7d6c8f2ee49766f5ef35c68cc2ac41699d5e295b7d6330fc2b7271b8569a07857e3eb0b5df0599a353c5808265b4b5066168 + languageName: node + linkType: hard + +"microevent.ts@npm:~0.1.1": + version: 0.1.1 + resolution: "microevent.ts@npm:0.1.1" + checksum: fc547fd00a14e8aae4d02b293c6f0b0e03435baf8bcaac48e5d0d0b86752db3cf9cc0fb3d88d22361887b75fcff33b4e6f263d86046f226b3ad10ae86a829b2e + languageName: node + linkType: hard + +"micromatch@npm:^3.1.10, micromatch@npm:^3.1.4": + version: 3.1.10 + resolution: "micromatch@npm:3.1.10" + dependencies: + arr-diff: ^4.0.0 + array-unique: ^0.3.2 + braces: ^2.3.1 + define-property: ^2.0.2 + extend-shallow: ^3.0.2 + extglob: ^2.0.4 + fragment-cache: ^0.2.1 + kind-of: ^6.0.2 + nanomatch: ^1.2.9 + object.pick: ^1.3.0 + regex-not: ^1.0.0 + snapdragon: ^0.8.1 + to-regex: ^3.0.2 + checksum: a60e73539a3ac6c6231f11642257a460861302df5986a94fd418d1b64a817409cda778d7023b53541a2091b523eda2c6f7212721e380d0b696284b7ca0a45bda + languageName: node + linkType: hard + +"micromatch@npm:^4.0.2": + version: 4.0.2 + resolution: "micromatch@npm:4.0.2" + dependencies: + braces: ^3.0.1 + picomatch: ^2.0.5 + checksum: 0cb0e11d647cbb65e398a0a8a1340a7fb751ae2722346219c435704cfac8b3275a94a6464236fe867f52ad46a24046d3bc4ac11b3d21ddb73bc44e27cf1e4904 + languageName: node + linkType: hard + +"miller-rabin@npm:^4.0.0": + version: 4.0.1 + resolution: "miller-rabin@npm:4.0.1" + dependencies: + bn.js: ^4.0.0 + brorand: ^1.0.1 + bin: + miller-rabin: bin/miller-rabin + checksum: e9f78a2c83ceca816cf61853121ad8d1e00f11731b9bf1a1b9a3b9e663ab4722a7553dd9ca644501738d548f7ead5540da1b746143ae0008ba1d7d81cf43f8c4 + languageName: node + linkType: hard + +"mime-db@npm:1.44.0, mime-db@npm:>= 1.43.0 < 2": + version: 1.44.0 + resolution: "mime-db@npm:1.44.0" + checksum: b4e3b2141418572fba9786f7e36324faef15e23032ad0871f56760cb304ee721ba4c8cc795d3c1cac69a2a8b94045c1d6b08c4a8d1ef6ba1226a3a5193915c57 + languageName: node + linkType: hard + +"mime-db@npm:~1.33.0": + version: 1.33.0 + resolution: "mime-db@npm:1.33.0" + checksum: f33acedd5b2bfd57fe987aa01c209abd3c6f762c6746c2a1ffefa77f8c10d39a2af9a591bd44f39f8d42a5ee30e43407cfd8535392773f211c2c7d7b6def90d4 + languageName: node + linkType: hard + +"mime-types@npm:2.1.18": + version: 2.1.18 + resolution: "mime-types@npm:2.1.18" + dependencies: + mime-db: ~1.33.0 + checksum: f1e2fed4f9d04a0d158c48b42f8ac5f1a655b27399674f7bd9f16e6784221ec4c2d30b20f24174f741ee6aa2556170f63b3ec9f51cb4e99e0a04c56799c8317c + languageName: node + linkType: hard + +"mime-types@npm:^2.1.12, mime-types@npm:^2.1.26, mime-types@npm:~2.1.17, mime-types@npm:~2.1.19, mime-types@npm:~2.1.24": + version: 2.1.27 + resolution: "mime-types@npm:2.1.27" + dependencies: + mime-db: 1.44.0 + checksum: 51fe2f2c08c10ac7a2f67e2ce5de30f6500faa88d095418a1ab6e90e30960db7c682a8ecce60d3d4e293ac52c4700ca99399833db998ea9ec83d6f0503b70a94 + languageName: node + linkType: hard + +"mime@npm:1.6.0": + version: 1.6.0 + resolution: "mime@npm:1.6.0" + bin: + mime: cli.js + checksum: d540c24dd3e3a9e25e813714e55ff2f7841a3a1a47aed9786c508bd0251653d5e9abbfb1163c0c6e1be99f872d7fa1538c068bd6e306e9cb12dd9affa841a61e + languageName: node + linkType: hard + +"mime@npm:^2.4.4": + version: 2.4.6 + resolution: "mime@npm:2.4.6" + bin: + mime: cli.js + checksum: 319ec3858894aa9befa9da90e33c4422506689f1e3e7c939095df68abe848050a51070c78a31061769d9192051a8c9f33d14d6771dc0f2ff309fe846898e0807 + languageName: node + linkType: hard + +"mimic-fn@npm:^1.0.0": + version: 1.2.0 + resolution: "mimic-fn@npm:1.2.0" + checksum: 159155e209bdbccae0bf8cd4b4065543fe7a82161541d9860c223583e92e0ae092d809b9f3c2aced74fc00362ff338bfeeec793bf3e14cf27c615a1e3009394d + languageName: node + linkType: hard + +"mimic-fn@npm:^2.0.0, mimic-fn@npm:^2.1.0": + version: 2.1.0 + resolution: "mimic-fn@npm:2.1.0" + checksum: f7d2d7febe3d7dd71da0700b1d455ec6c951a96b463ffcc303c93771b9fe4e45318152ea677c241505b19b39e41d906e5052cfb382d59a44bdb6d3d57f8b467b + languageName: node + linkType: hard + +"mimic-response@npm:^1.0.0, mimic-response@npm:^1.0.1": + version: 1.0.1 + resolution: "mimic-response@npm:1.0.1" + checksum: 64b43c717ed8710bc920576e96d38d0e504e9eec3114af8e00c9e3d7ae53cd459ee38febb0badc83e3a4e6d21cd571db43e9011f8cf014809989c87a1a9f0ea4 + languageName: node + linkType: hard + +"min-indent@npm:^1.0.0": + version: 1.0.1 + resolution: "min-indent@npm:1.0.1" + checksum: c3aeea46bc432e6ce69b86717e98fbb544e338abb5e3c93cfa196c427e3d5a4a6ee4f76e6931a9e424fb53e83451b90fc417ce7db04440a92d68369704ad11d1 + languageName: node + linkType: hard + +"mini-create-react-context@npm:^0.3.0": + version: 0.3.2 + resolution: "mini-create-react-context@npm:0.3.2" + dependencies: + "@babel/runtime": ^7.4.0 + gud: ^1.0.0 + tiny-warning: ^1.0.2 + peerDependencies: + prop-types: ^15.0.0 + react: ^0.14.0 || ^15.0.0 || ^16.0.0 + checksum: ed91c072bd099ae19b4fc7450211ca44907c3d7e1e0c3494bfeb9a697e3a1c6700db41b7cd2a985e72c8b6cad2284e1ebca3826214a2acb77c3bf8c380c2a08e + languageName: node + linkType: hard + +"mini-create-react-context@npm:^0.4.0": + version: 0.4.0 + resolution: "mini-create-react-context@npm:0.4.0" + dependencies: + "@babel/runtime": ^7.5.5 + tiny-warning: ^1.0.3 + peerDependencies: + prop-types: ^15.0.0 + react: ^0.14.0 || ^15.0.0 || ^16.0.0 + checksum: 51f07df1ed473597e997a6be181262cc06a68e6f29e1ff4d7c6f0a201cfb191e840e504fad1e417cbe622cb3575354fb29cde3327443ce428e09927520078ab2 + languageName: node + linkType: hard + +"mini-css-extract-plugin@npm:0.9.0": + version: 0.9.0 + resolution: "mini-css-extract-plugin@npm:0.9.0" + dependencies: + loader-utils: ^1.1.0 + normalize-url: 1.9.1 + schema-utils: ^1.0.0 + webpack-sources: ^1.1.0 + peerDependencies: + webpack: ^4.4.0 + checksum: 654be33368f70857371fcd36e191ffc2ba2f6af338f3e112b3136cf2ccffd6ebf30b0271e87660b81d02a52988edb70d5caaec3a8628725b87ca0b49b4fcc225 + languageName: node + linkType: hard + +"mini-css-extract-plugin@npm:^0.8.0": + version: 0.8.2 + resolution: "mini-css-extract-plugin@npm:0.8.2" + dependencies: + loader-utils: ^1.1.0 + normalize-url: 1.9.1 + schema-utils: ^1.0.0 + webpack-sources: ^1.1.0 + peerDependencies: + webpack: ^4.4.0 + checksum: 99515b64f9d678c4b24efc339de3d060a0385337066e221e8d11da1df2e0d0381a628e26a1871139a5d9c3e51d83c9da77764065b791fda560fb9e3190121fdf + languageName: node + linkType: hard + +"minimalistic-assert@npm:^1.0.0, minimalistic-assert@npm:^1.0.1": + version: 1.0.1 + resolution: "minimalistic-assert@npm:1.0.1" + checksum: 28f1de3cf9edfb82613428a58eb3dd38ec6d33ab761b98abf2d130c81104ea86be540c7e5eb8284f13e0a065ead8b17501de09419b9a98987ed27268ad538dba + languageName: node + linkType: hard + +"minimalistic-crypto-utils@npm:^1.0.0, minimalistic-crypto-utils@npm:^1.0.1": + version: 1.0.1 + resolution: "minimalistic-crypto-utils@npm:1.0.1" + checksum: 736067bddd0e5036a1a4943abe7b63eb1dd0115ad87588420310d26a3d56fc4cd4694b7077fa102956c88d3922dbf7cbc5b7ffe749f27441d13c3e1b1133ab40 + languageName: node + linkType: hard + +"minimatch@npm:3.0.4, minimatch@npm:^3.0.0, minimatch@npm:^3.0.4": + version: 3.0.4 + resolution: "minimatch@npm:3.0.4" + dependencies: + brace-expansion: ^1.1.7 + checksum: 47eab9263962cacd5733e274ecad2d8e54b0f8e124ba35ae69189e296058f634a4967b87a98954f86fa5c830ff177caf827ce0136d28717ed3232951fb4fae62 + languageName: node + linkType: hard + +"minimist-options@npm:^3.0.1": + version: 3.0.2 + resolution: "minimist-options@npm:3.0.2" + dependencies: + arrify: ^1.0.1 + is-plain-obj: ^1.1.0 + checksum: 3b265ce72ef1a55bab293b0c6dce4a44f89fcdf2dd096c6a629defb30b4928fd3770931d89b5e14ac1253178cbeed3af39227f0bdfb87bef49af93b67a48eb7a + languageName: node + linkType: hard + +"minimist-options@npm:^4.0.2": + version: 4.1.0 + resolution: "minimist-options@npm:4.1.0" + dependencies: + arrify: ^1.0.1 + is-plain-obj: ^1.1.0 + kind-of: ^6.0.3 + checksum: 51f1aba56f9c2c2986d85c98a29abec26c632019abd2966a151029cf2cf0903d81894781460e0d5755d4f899bb3884bc86fc9af36ab31469a38d82cf74f4f651 + languageName: node + linkType: hard + +"minimist@npm:1.2.0": + version: 1.2.0 + resolution: "minimist@npm:1.2.0" + checksum: 80a1a219c0243e870be65b9605e2711eb5ce08639ae4ea8d8bbf8997d4eafe8a6b2af856c3e19c33f51faf40025f23c7668c7b916bca6f72e1bc2cf9189526ff + languageName: node + linkType: hard + +"minimist@npm:^1.1.1, minimist@npm:^1.1.3, minimist@npm:^1.2.0, minimist@npm:^1.2.5": + version: 1.2.5 + resolution: "minimist@npm:1.2.5" + checksum: b77b8590147a4e217ff34266236bc39de23b52e6e33054076991ff674c7397a1380a7bde11111916f16f003a94aaa7e4f3d92595a32189644ff607fabc65a5b6 + languageName: node + linkType: hard + +"minipass-collect@npm:^1.0.2": + version: 1.0.2 + resolution: "minipass-collect@npm:1.0.2" + dependencies: + minipass: ^3.0.0 + checksum: 529ef6212333e6b9afc6aa4487a246df6fd28a28e42060533491ebf58fddb349f9b044f017725bddf3e13cae3986c58c24ee2531832f62e6d97379846e04e0a8 + languageName: node + linkType: hard + +"minipass-flush@npm:^1.0.5": + version: 1.0.5 + resolution: "minipass-flush@npm:1.0.5" + dependencies: + minipass: ^3.0.0 + checksum: d354ca0da834e3e79a1f0372d1cb86ba043a96b495624ed6360f7cd1f549e5685d9b292d4193a963497efcf4a4db8563e188cda565b119b8acc00852259e286c + languageName: node + linkType: hard + +"minipass-pipeline@npm:^1.2.2": + version: 1.2.4 + resolution: "minipass-pipeline@npm:1.2.4" + dependencies: + minipass: ^3.0.0 + checksum: 001d5a4a0c14816230984e684e8458d972b92dae52255f17fbc2dae74965f544c3c64f93146c218413004e72acec7f57d0f6ee10a49377ad715cf7d389af710c + languageName: node + linkType: hard + +"minipass@npm:^2.3.5, minipass@npm:^2.6.0, minipass@npm:^2.8.6, minipass@npm:^2.9.0": + version: 2.9.0 + resolution: "minipass@npm:2.9.0" + dependencies: + safe-buffer: ^5.1.2 + yallist: ^3.0.0 + checksum: 57a49f9523fdc495625184f4ef5a101615d3ee0c06f0c37e2ed7140c12deeecbd404539bd605b985100836006409b11b627a3148941dcc4ade24f0f078557836 + languageName: node + linkType: hard + +"minipass@npm:^3.0.0, minipass@npm:^3.1.1": + version: 3.1.3 + resolution: "minipass@npm:3.1.3" + dependencies: + yallist: ^4.0.0 + checksum: d12b95a845f15950bce7a77730c89400cf0c4f55e7066338da1d201ac148ece4ea8efa79e45a2c07c868c61bcaf9e996c4c3d6bf6b85c038ffa454521fc6ecd5 + languageName: node + linkType: hard + +"minizlib@npm:^1.2.1": + version: 1.3.3 + resolution: "minizlib@npm:1.3.3" + dependencies: + minipass: ^2.9.0 + checksum: 8d12782dd943ea92bb3e8e5dc4fe21201b56e77e5f12723c29159cf01dd0d50330dd071897dec270b3861994fb07a982b2473e5c2f42bf5f4b180ab18bf81c06 + languageName: node + linkType: hard + +"minizlib@npm:^2.1.0": + version: 2.1.0 + resolution: "minizlib@npm:2.1.0" + dependencies: + minipass: ^3.0.0 + yallist: ^4.0.0 + checksum: 665346bad842df6fbfd59aa24f49a12d7971e72d8ccd4078f6e3167ad6185b64dec37d6f2cc053fe778230dd54f2a55550454ffec00b4460e14c3f20fe83be6e + languageName: node + linkType: hard + +"mississippi@npm:^3.0.0": + version: 3.0.0 + resolution: "mississippi@npm:3.0.0" + dependencies: + concat-stream: ^1.5.0 + duplexify: ^3.4.2 + end-of-stream: ^1.1.0 + flush-write-stream: ^1.0.0 + from2: ^2.1.0 + parallel-transform: ^1.1.0 + pump: ^3.0.0 + pumpify: ^1.3.3 + stream-each: ^1.1.0 + through2: ^2.0.0 + checksum: 6d30a5ba65e27cdd453148abfeadf9f4a64a156a0dd17640876bf4f75d4ee3d5fbd7658f11cc6322b56c81628585de96dbb2b177476012470df6d05323b46e29 + languageName: node + linkType: hard + +"mixin-deep@npm:^1.2.0": + version: 1.3.2 + resolution: "mixin-deep@npm:1.3.2" + dependencies: + for-in: ^1.0.2 + is-extendable: ^1.0.1 + checksum: 68da98bc1af57ffccde7abdc86ac49feec263b73b3c483ab7e6e2fab9aa2b06fba075da9e86bcda725133c1d2a59e4c810a17b55865c67c827871c25d5713c33 + languageName: node + linkType: hard + +"mixin-object@npm:^2.0.1": + version: 2.0.1 + resolution: "mixin-object@npm:2.0.1" + dependencies: + for-in: ^0.1.3 + is-extendable: ^0.1.1 + checksum: 90adec767dff41d8f9917d729d786ddae6cc9c08dc69133851348042d35c74496079be88fd33e874315b11db535c7761b769a3c3a361f2fb1c2ec8b6672ecac0 + languageName: node + linkType: hard + +"mkdirp-promise@npm:^5.0.1": + version: 5.0.1 + resolution: "mkdirp-promise@npm:5.0.1" + dependencies: + mkdirp: "*" + checksum: 6960dee61a68f271cc808973eb4b783f6d0b43a0cbc72d6e3e27bc61fe47fc982bdea6abd4661754f7299699c5f13a6619b5f85e976e52a744d8f17ccc58105e + languageName: node + linkType: hard + +"mkdirp@npm:*, mkdirp@npm:1.0.4, mkdirp@npm:1.x, mkdirp@npm:^1.0.3": + version: 1.0.4 + resolution: "mkdirp@npm:1.0.4" + bin: + mkdirp: bin/cmd.js + checksum: 1aa3a6a2d7514f094a91329ec09994f5d32d2955a4985ecbb3d86f2aaeafc4aa11521f98d606144c1d49cd9835004d9a73342709b8c692c92e59eacf37412468 + languageName: node + linkType: hard + +"mkdirp@npm:^0.5.0, mkdirp@npm:^0.5.1, mkdirp@npm:^0.5.3, mkdirp@npm:^0.5.5, mkdirp@npm:~0.5.1": + version: 0.5.5 + resolution: "mkdirp@npm:0.5.5" + dependencies: + minimist: ^1.2.5 + bin: + mkdirp: bin/cmd.js + checksum: 9dd9792e891927b14ca02226dbe1daeb717b9517a001620d5e2658bbc72c5e4f06887b6cbcbb60595fa5a56e701073cf250f1ed69c1988a6b89faf9fd6a4d049 + languageName: node + linkType: hard + +"modify-values@npm:^1.0.0": + version: 1.0.1 + resolution: "modify-values@npm:1.0.1" + checksum: 55165ae8b4ea2aafebe5027dd427d4a833d54606c81546f4d3c04943d99d194ac9481fa076719f326d243c475e2dfa5cf0219e68cffbbf9c44b24e46eb889779 + languageName: node + linkType: hard + +"mongodb@npm:3.5.7": + version: 3.5.7 + resolution: "mongodb@npm:3.5.7" + dependencies: + bl: ^2.2.0 + bson: ^1.1.4 + denque: ^1.4.1 + require_optional: ^1.0.1 + safe-buffer: ^5.1.2 + saslprep: ^1.0.0 + dependenciesMeta: + saslprep: + optional: true + checksum: db5554c5772df76705afe2ef3feeab56be5396faf3e794dc51ac66a1aa6353f89d6830e15bb20ebb1507b4c8ad62da75798ad15d3c9790b9c07872c8d35313b9 + languageName: node + linkType: hard + +"mongodb@npm:3.5.9": + version: 3.5.9 + resolution: "mongodb@npm:3.5.9" + dependencies: + bl: ^2.2.0 + bson: ^1.1.4 + denque: ^1.4.1 + require_optional: ^1.0.1 + safe-buffer: ^5.1.2 + saslprep: ^1.0.0 + dependenciesMeta: + saslprep: + optional: true + checksum: 9df68e136852b73c2126d896178c1496dc3a473e8573836df6a347c5e9f63cdf479e4dac90608f38cc00152331a148f447b9afa76cf77b513f3987df5a2b5071 + languageName: node + linkType: hard + +"mongodb@npm:^3.4.1": + version: 3.6.0 + resolution: "mongodb@npm:3.6.0" + dependencies: + bl: ^2.2.0 + bson: ^1.1.4 + denque: ^1.4.1 + require_optional: ^1.0.1 + safe-buffer: ^5.1.2 + saslprep: ^1.0.0 + dependenciesMeta: + saslprep: + optional: true + checksum: 589a434b3482a75ed78cf0116ed08ef30c58199a62eaa781b355a76d022e3f3460bc81ba8935a5cd96e287b790c6f348e4c8053132882fb7673270ebc071a45c + languageName: node + linkType: hard + +"mongoose-legacy-pluralize@npm:1.0.2": + version: 1.0.2 + resolution: "mongoose-legacy-pluralize@npm:1.0.2" + peerDependencies: + mongoose: "*" + checksum: a1f86450b3540a1883cfb093001846806d14cd3a8b80f6681fdac13afcfd4a1f57875fb79009aceacf2e80e3ffd2d5ab7e289ba873c586958ce536eff270dc0a + languageName: node + linkType: hard + +"mongoose@npm:5.9.13": + version: 5.9.13 + resolution: "mongoose@npm:5.9.13" + dependencies: + bson: ^1.1.4 + kareem: 2.3.1 + mongodb: 3.5.7 + mongoose-legacy-pluralize: 1.0.2 + mpath: 0.7.0 + mquery: 3.2.2 + ms: 2.1.2 + regexp-clone: 1.0.0 + safe-buffer: 5.1.2 + sift: 7.0.1 + sliced: 1.0.1 + checksum: 9104247ae7743cce6e8c6b9f13dbdfac2251168d8e0df2d1f801b1e316946e7cee21fa7023c58681d3eb2139aca3e0b991e09905c10921eeadfdbdfd3750198b + languageName: node + linkType: hard + +"mongoose@npm:5.9.25": + version: 5.9.25 + resolution: "mongoose@npm:5.9.25" + dependencies: + bson: ^1.1.4 + kareem: 2.3.1 + mongodb: 3.5.9 + mongoose-legacy-pluralize: 1.0.2 + mpath: 0.7.0 + mquery: 3.2.2 + ms: 2.1.2 + regexp-clone: 1.0.0 + safe-buffer: 5.2.1 + sift: 7.0.1 + sliced: 1.0.1 + checksum: 931d6bc97e721ef9bba1cf4933f1995c8e49fbe6b7dc30bf6bce9c3cbcf2b5c4740a1d506d7c1aa3fde4aea80652c607bbd3220d6af6e2bfdd9cf0a7b756446f + languageName: node + linkType: hard + +"move-concurrently@npm:^1.0.1": + version: 1.0.1 + resolution: "move-concurrently@npm:1.0.1" + dependencies: + aproba: ^1.1.1 + copy-concurrently: ^1.0.0 + fs-write-stream-atomic: ^1.0.8 + mkdirp: ^0.5.1 + rimraf: ^2.5.4 + run-queue: ^1.0.3 + checksum: 0761308ddbaf75291fff3ca26c0297a781d545e76aa34b7c985780d251f75e422433947dc9091d464ca7febef86fe6ecaa60746eb7076adac4a0c620b83540f5 + languageName: node + linkType: hard + +"mpath@npm:0.7.0": + version: 0.7.0 + resolution: "mpath@npm:0.7.0" + checksum: 76e271ff01a637452b1b8bb36825e74020e23d6fa1792455dc2992931b3fdfffcd637dcbe4c02a6bbb9e264f3920be4c5dcf42041f37176b00d5c8175604c4c1 + languageName: node + linkType: hard + +"mquery@npm:3.2.2": + version: 3.2.2 + resolution: "mquery@npm:3.2.2" + dependencies: + bluebird: 3.5.1 + debug: 3.1.0 + regexp-clone: ^1.0.0 + safe-buffer: 5.1.2 + sliced: 1.0.1 + checksum: 80b422ec102e1045999b3f818964db69a56ddf394a64ef7dac3bf164e4824d179717844d00cf414827fb39c61334a88fd3c1b1cab91b624cf6a78db302bd63c4 + languageName: node + linkType: hard + +"ms@npm:2.0.0": + version: 2.0.0 + resolution: "ms@npm:2.0.0" + checksum: 1a230340cc7f322fbe916783d8c8d60455407c6b7fb7f901d6ee34eb272402302c5c7f070a97b8531245cbb4ca6a0a623f6a128d7e5a5440cefa2c669c0b35bb + languageName: node + linkType: hard + +"ms@npm:2.1.1": + version: 2.1.1 + resolution: "ms@npm:2.1.1" + checksum: 81ad38c74df2473ce9fbed8bb71a00220c3d9e237ebd576306c9f6ca3221b251d602c7d199808944be1a3d7cda5883e72c77adb473734ba30f6e032165e05ebc + languageName: node + linkType: hard + +"ms@npm:2.1.2, ms@npm:^2.0.0, ms@npm:^2.1.1": + version: 2.1.2 + resolution: "ms@npm:2.1.2" + checksum: 9b65fb709bc30c0c07289dcbdb61ca032acbb9ea5698b55fa62e2cebb04c5953f1876a1f3f7f4bc2e91d4bf4d86003f3e207c3bc6ee2f716f99827e62389cd0e + languageName: node + linkType: hard + +"multicast-dns-service-types@npm:^1.1.0": + version: 1.1.0 + resolution: "multicast-dns-service-types@npm:1.1.0" + checksum: de10f16134855e368505a174ea0a25c60c74e34a73fd251d09d1d7cbdb70ee23c077b7eec9d4314ae51b1bc134775d490f4b7e2e29a4d9312bbd089456ac20b1 + languageName: node + linkType: hard + +"multicast-dns@npm:^6.0.1": + version: 6.2.3 + resolution: "multicast-dns@npm:6.2.3" + dependencies: + dns-packet: ^1.3.1 + thunky: ^1.0.2 + bin: + multicast-dns: cli.js + checksum: 3a67f9a155f32a543e06ebc058cea63d8ee3122f652289cfc91ec24bf7450433a21a017640852e65f1548d4bcca2b8bd10c3d201e56f66945dc1f2554a7e7939 + languageName: node + linkType: hard + +"multimatch@npm:^3.0.0": + version: 3.0.0 + resolution: "multimatch@npm:3.0.0" + dependencies: + array-differ: ^2.0.3 + array-union: ^1.0.2 + arrify: ^1.0.1 + minimatch: ^3.0.4 + checksum: a63ebe46847f121496bdee4af9e5535d8f6dbc67f776edabf5238b08a80320c3464a65e13a843be40bd56d20f0e6c2acc18b7f1b211d272b9b56e75f9b5ba831 + languageName: node + linkType: hard + +"mute-stream@npm:0.0.7": + version: 0.0.7 + resolution: "mute-stream@npm:0.0.7" + checksum: 698fe32d888ed57c041df482b5cd43f4f51db373191c2e658db728bddfb090294952e11eee585752b8c9e8a02e83c7e47fb6b1664dd1effc685ae38fb1d8bf95 + languageName: node + linkType: hard + +"mute-stream@npm:0.0.8, mute-stream@npm:~0.0.4": + version: 0.0.8 + resolution: "mute-stream@npm:0.0.8" + checksum: 315c40f463ec31deee54c5b8779207feb6b63dd4c58fe0f84ad46abdd6dac1ada578d53efde4a47b0ae4d29d453d35bb39ecdd98ee9ebf538929039a3a9945df + languageName: node + linkType: hard + +"mz@npm:^2.4.0, mz@npm:^2.5.0": + version: 2.7.0 + resolution: "mz@npm:2.7.0" + dependencies: + any-promise: ^1.0.0 + object-assign: ^4.0.1 + thenify-all: ^1.0.0 + checksum: 063966dd8e05dfe952038e88d14fb0a3816d9fa391b5afc75d19e2247b7471fd98ca85ffca45d950b9aab4f8f7536aecf63509af031e1785549468b6400eeda5 + languageName: node + linkType: hard + +"nan@npm:^2.12.1, nan@npm:^2.14.0": + version: 2.14.1 + resolution: "nan@npm:2.14.1" + dependencies: + node-gyp: latest + checksum: eeab7cf260362a578f0b8622716a76d19bc009722049c7274748644ce03b2aa38ca01b3ac730a0497fd2c1ec882a21a0592e800a903994ed4d32acd06bf7eba7 + languageName: node + linkType: hard + +"nanoid@npm:^2.1.0": + version: 2.1.11 + resolution: "nanoid@npm:2.1.11" + checksum: 41453e344e3abb189cd3baa3ab52685601d7220f86ce73f6a1d9594ebae286c2acf47a20b5aa9cf11933b587b69c6007e88f190ca266450c2fbe20be6db43a29 + languageName: node + linkType: hard + +"nanomatch@npm:^1.2.9": + version: 1.2.13 + resolution: "nanomatch@npm:1.2.13" + dependencies: + arr-diff: ^4.0.0 + array-unique: ^0.3.2 + define-property: ^2.0.2 + extend-shallow: ^3.0.2 + fragment-cache: ^0.2.1 + is-windows: ^1.0.2 + kind-of: ^6.0.2 + object.pick: ^1.3.0 + regex-not: ^1.0.0 + snapdragon: ^0.8.1 + to-regex: ^3.0.1 + checksum: 2e1440c5705f0192b9d9b46bb682a1832052974dad359ed473b9f555abb5c55a08b3d5ba45d7d37c53a83f64b7f93866292824d3086a150ff7980e71874feb3b + languageName: node + linkType: hard + +"natural-compare@npm:^1.4.0": + version: 1.4.0 + resolution: "natural-compare@npm:1.4.0" + checksum: 2daf93d9bb516eddb06e2e80657a605af2e494d47c65d090ba43691aaffbc41f520840f1c9d3b7b641977af950217a4ab6ffb85bafcd5dfa8ba6fe4e68c43b53 + languageName: node + linkType: hard + +"negotiator@npm:0.6.2": + version: 0.6.2 + resolution: "negotiator@npm:0.6.2" + checksum: 4b230bd15f0862d16c54ce0243fcfcf835ad59c8e58c467b4504dd28c9868cff71ff485b02cc575dc69dca819b58a1fadc9fb28403f45721f38a8fffde007d54 + languageName: node + linkType: hard + +"neo-async@npm:^2.5.0, neo-async@npm:^2.6.0, neo-async@npm:^2.6.1": + version: 2.6.2 + resolution: "neo-async@npm:2.6.2" + checksum: 34a8f5309135be258a97082af810ea43700a3e0121e7b1ea31b3e22e2663d7c0d502cd949abb6d1ab8c11abfd04500ee61721ec5408b2d4bef8105241fd8a4c2 + languageName: node + linkType: hard + +"next-tick@npm:~1.0.0": + version: 1.0.0 + resolution: "next-tick@npm:1.0.0" + checksum: 18db63c447c6e65a23235b91da9ccdae53f74f9194cfbc71a1fd3170cdf81bd157d9676e47c2ea4ea5bd20e09fb019917b0a45d8e1a63e377175fc083f285234 + languageName: node + linkType: hard + +"nice-try@npm:^1.0.4": + version: 1.0.5 + resolution: "nice-try@npm:1.0.5" + checksum: 330f190bf68146a560008b661e1ddbb2eac667c16990b6bf791516d89cceb707ec67901ad647d2b32674bfa816b916489cead5c2fb6e96864c659573ab5aa3bb + languageName: node + linkType: hard + +"no-case@npm:^3.0.3": + version: 3.0.3 + resolution: "no-case@npm:3.0.3" + dependencies: + lower-case: ^2.0.1 + tslib: ^1.10.0 + checksum: 619e0bd00a3ef0fa6ad9442d32c88adcf47339c5b0d9bdfaaab19380709dad5ba71f865ae584531988ba85a6083e1f0ea0b851bcc49c67aee40a5100104e84b9 + languageName: node + linkType: hard + +"node-emoji@npm:^1.10.0": + version: 1.10.0 + resolution: "node-emoji@npm:1.10.0" + dependencies: + lodash.toarray: ^4.4.0 + checksum: 9c73cd0af03965131225c388339ec5cb3b7239f9d63f15c7755540d265b20a4ecac855fd270af216fb14cdf8232ec4687ab5a52b4b475a681ee1bd74f7562ced + languageName: node + linkType: hard + +"node-fetch-npm@npm:^2.0.2": + version: 2.0.4 + resolution: "node-fetch-npm@npm:2.0.4" + dependencies: + encoding: ^0.1.11 + json-parse-better-errors: ^1.0.0 + safe-buffer: ^5.1.1 + checksum: 378bb7203bdce21173a23ffedd0d084a0afc04e45a09c19f14584870080bef2f00a12543aac73dea69d5df1924a2881894a872b397e9ffda993545affbe3aefc + languageName: node + linkType: hard + +"node-fetch@npm:1.6.3, node-fetch@npm:^1.0.1": + version: 1.6.3 + resolution: "node-fetch@npm:1.6.3" + dependencies: + encoding: ^0.1.11 + is-stream: ^1.0.1 + checksum: c59054372ac431daee9dfc6f77f457b547885e9e977595bf2a7bc75b5a63f220f0771b936609ba8dbd544ec9e38d1393a971059c0f8b833077351c0e82ca49e7 + languageName: node + linkType: hard + +"node-fetch@npm:2.6.0, node-fetch@npm:^2.1.2, node-fetch@npm:^2.2.0, node-fetch@npm:^2.3.0, node-fetch@npm:^2.5.0, node-fetch@npm:^2.6.0": + version: 2.6.0 + resolution: "node-fetch@npm:2.6.0" + checksum: dd9f586a9f7ddb7dd94d2aba9cb693d32f5001e9850098512fbc8a4cbdd56838afa08ed0a6725b9fce9b01ec12b713e622cbfc16d92762d8b937b238330a632a + languageName: node + linkType: hard + +"node-forge@npm:0.9.0": + version: 0.9.0 + resolution: "node-forge@npm:0.9.0" + checksum: 901d6ab679072ad4b4174daed4d1ede43f01131456aba1918d89246ae37f73e40e053d9bf32ab3836e74e9e471c2637f4a6af337ab8c6a562faa3a385aac806c + languageName: node + linkType: hard + +"node-gyp@npm:^5.0.2": + version: 5.1.1 + resolution: "node-gyp@npm:5.1.1" + dependencies: + env-paths: ^2.2.0 + glob: ^7.1.4 + graceful-fs: ^4.2.2 + mkdirp: ^0.5.1 + nopt: ^4.0.1 + npmlog: ^4.1.2 + request: ^2.88.0 + rimraf: ^2.6.3 + semver: ^5.7.1 + tar: ^4.4.12 + which: ^1.3.1 + bin: + node-gyp: bin/node-gyp.js + checksum: dc378a26d50165eb90c4331f221f17149258724ec094d1905120db0a6759452a5d5a631de3701e86bf441f8bfd4e83dd94c8c48bc8ef9f4f3e6a9fba95b0552c + languageName: node + linkType: hard + +"node-gyp@npm:latest": + version: 7.0.0 + resolution: "node-gyp@npm:7.0.0" + dependencies: + env-paths: ^2.2.0 + glob: ^7.1.4 + graceful-fs: ^4.2.3 + nopt: ^4.0.3 + npmlog: ^4.1.2 + request: ^2.88.2 + rimraf: ^2.6.3 + semver: ^7.3.2 + tar: ^6.0.1 + which: ^2.0.2 + bin: + node-gyp: bin/node-gyp.js + checksum: 60e91c374739d7d17f3a41d799543a28d06a3f2e622f70a92a244d186dd12d0df1320e95b7d44cf1d40e401bf8a72f359f94ea2df95fef3ab42eecaa87c62e36 + languageName: node + linkType: hard + +"node-int64@npm:^0.4.0": + version: 0.4.0 + resolution: "node-int64@npm:0.4.0" + checksum: 8fce4b82d4173041114150bc49fe2333a0628a1ae31ab666db816742cbce422ef28eb834a7e66d2d09a0f635d3b5fad8c7330ec792db9558f9f7a47fa4eac87f + languageName: node + linkType: hard + +"node-libs-browser@npm:^2.2.1": + version: 2.2.1 + resolution: "node-libs-browser@npm:2.2.1" + dependencies: + assert: ^1.1.1 + browserify-zlib: ^0.2.0 + buffer: ^4.3.0 + console-browserify: ^1.1.0 + constants-browserify: ^1.0.0 + crypto-browserify: ^3.11.0 + domain-browser: ^1.1.1 + events: ^3.0.0 + https-browserify: ^1.0.0 + os-browserify: ^0.3.0 + path-browserify: 0.0.1 + process: ^0.11.10 + punycode: ^1.2.4 + querystring-es3: ^0.2.0 + readable-stream: ^2.3.3 + stream-browserify: ^2.0.1 + stream-http: ^2.7.2 + string_decoder: ^1.0.0 + timers-browserify: ^2.0.4 + tty-browserify: 0.0.0 + url: ^0.11.0 + util: ^0.11.0 + vm-browserify: ^1.0.1 + checksum: 8da918a5ef93c0bfed8df90bb9d6b12ae08836963aa0b22927eedf6d3eab6e60feb9eae2d394f1eb6d5f0fdd985fb2858b698a3347606b90dfdd5047b5ea6042 + languageName: node + linkType: hard + +"node-modules-regexp@npm:^1.0.0": + version: 1.0.0 + resolution: "node-modules-regexp@npm:1.0.0" + checksum: 90f928a1dbc3c98d39b3d133f8c910e6bd8e45416f8e15151a31c41550cffe4e3022a39c38c20ae4ceca56b6e63741def4f3a2018080d13f5be245f4b060a9b1 + languageName: node + linkType: hard + +"node-notifier@npm:^5.4.2": + version: 5.4.3 + resolution: "node-notifier@npm:5.4.3" + dependencies: + growly: ^1.3.0 + is-wsl: ^1.1.0 + semver: ^5.5.0 + shellwords: ^0.1.1 + which: ^1.3.0 + checksum: 8188c3ea9d9c3cc7840da4109f622eb79e198931d5d6d5d751967f1ef72ea11fc0241d4274a063b9eb3f83f3a4a0cb7dd8557f5fea6391f763afca750e5a66c9 + languageName: node + linkType: hard + +"node-notifier@npm:^7.0.0": + version: 7.0.2 + resolution: "node-notifier@npm:7.0.2" + dependencies: + growly: ^1.3.0 + is-wsl: ^2.2.0 + semver: ^7.3.2 + shellwords: ^0.1.1 + uuid: ^8.2.0 + which: ^2.0.2 + checksum: 61d77d6c98454235efdd9bb278ec6fa044e4e4d9066c60c46ca801d9022f9888e7a52d8b90bb2fd34c7e8c71e7c14660eb7de319df37923b8944a408562065dc + languageName: node + linkType: hard + +"node-releases@npm:^1.1.52, node-releases@npm:^1.1.60": + version: 1.1.60 + resolution: "node-releases@npm:1.1.60" + checksum: bed3480bd1d7a9c3ad0b4acf79eceabfb14c5ba3e5d48619c8ec1fb5197fb358c9d0c117e31c48d52b7dba75b71c1371c5e67d01f55b79cbd2d7b60ca30974d1 + languageName: node + linkType: hard + +"nodemon@npm:2.0.3": + version: 2.0.3 + resolution: "nodemon@npm:2.0.3" + dependencies: + chokidar: ^3.2.2 + debug: ^3.2.6 + ignore-by-default: ^1.0.1 + minimatch: ^3.0.4 + pstree.remy: ^1.1.7 + semver: ^5.7.1 + supports-color: ^5.5.0 + touch: ^3.1.0 + undefsafe: ^2.0.2 + update-notifier: ^4.0.0 + bin: + nodemon: bin/nodemon.js + checksum: 3c6edb9ecb6e9f51dcfa13a8f4afe3b119738e8bad684128be7576f1cf239a8d202142421681adf6172cbab898021c4beebc9d91279449f6db796cc94b65042a + languageName: node + linkType: hard + +"nodemon@npm:2.0.4": + version: 2.0.4 + resolution: "nodemon@npm:2.0.4" + dependencies: + chokidar: ^3.2.2 + debug: ^3.2.6 + ignore-by-default: ^1.0.1 + minimatch: ^3.0.4 + pstree.remy: ^1.1.7 + semver: ^5.7.1 + supports-color: ^5.5.0 + touch: ^3.1.0 + undefsafe: ^2.0.2 + update-notifier: ^4.0.0 + bin: + nodemon: bin/nodemon.js + checksum: b5f32e7feea11cc2e3ae6603f2ed9229f3d13d01e0d7d54aab47d0dac3b5759b07a0f00d0a46de7379a8ca8e5705940508dee6d06e4a22b3f31c57ce52faa936 + languageName: node + linkType: hard + +"nopt@npm:^4.0.1, nopt@npm:^4.0.3": + version: 4.0.3 + resolution: "nopt@npm:4.0.3" + dependencies: + abbrev: 1 + osenv: ^0.1.4 + bin: + nopt: bin/nopt.js + checksum: bf7b8c15fd035bf1faa897ec83c3fe5a459beb51a09dfad9413429382139784c3f05e11847d2e5de7160a813c5c8c6cf74c34f22b483c08fdaf465586f293f49 + languageName: node + linkType: hard + +"nopt@npm:~1.0.10": + version: 1.0.10 + resolution: "nopt@npm:1.0.10" + dependencies: + abbrev: 1 + bin: + nopt: ./bin/nopt.js + checksum: fb74743e70abbabfdfa828be4b85ba7261ebdff439a9d5edc7a86871ddc45d4741e0724df91dff0a274ea4d3b6ef458c3c35a14ca97e53a6fe24264ff1d45a66 + languageName: node + linkType: hard + +"normalize-package-data@npm:^2.0.0, normalize-package-data@npm:^2.3.0, normalize-package-data@npm:^2.3.2, normalize-package-data@npm:^2.3.4, normalize-package-data@npm:^2.3.5, normalize-package-data@npm:^2.4.0, normalize-package-data@npm:^2.5.0": + version: 2.5.0 + resolution: "normalize-package-data@npm:2.5.0" + dependencies: + hosted-git-info: ^2.1.4 + resolve: ^1.10.0 + semver: 2 || 3 || 4 || 5 + validate-npm-package-license: ^3.0.1 + checksum: 97d4d6b061cab51425ddb05c38d126d7a1a2a6f2c9949bef2b5ad7ef19c005df12099ea442e4cb09190929b7770008f94f87b10342a66f739acf92a7ebb9d9f2 + languageName: node + linkType: hard + +"normalize-path@npm:^2.1.1": + version: 2.1.1 + resolution: "normalize-path@npm:2.1.1" + dependencies: + remove-trailing-separator: ^1.0.1 + checksum: 9eb82b2f6abc1b99d820c36405d6b7a26a4cfa49d49d397eb2ad606b1295cb8e243b6071b18826907ae54a9a2b35373a83d827d843d19b76efcfa267d72cb301 + languageName: node + linkType: hard + +"normalize-path@npm:^3.0.0, normalize-path@npm:~3.0.0": + version: 3.0.0 + resolution: "normalize-path@npm:3.0.0" + checksum: 215a701b471948884193628f3e38910353abf445306b519c42c2a30144b8beb8ca0a684da97bfc2ee11eb168c35c776d484274da4bd8f213d2b22f70579380ee + languageName: node + linkType: hard + +"normalize-range@npm:^0.1.2": + version: 0.1.2 + resolution: "normalize-range@npm:0.1.2" + checksum: bca997d800d76b7954b36d394f44bbe65948eb4cca954b2e731cd81a7a5540725dcd237df7cb2006449e705c4803755658b8f23d89f9cc2eb5da464558baba69 + languageName: node + linkType: hard + +"normalize-url@npm:1.9.1": + version: 1.9.1 + resolution: "normalize-url@npm:1.9.1" + dependencies: + object-assign: ^4.0.1 + prepend-http: ^1.0.0 + query-string: ^4.1.0 + sort-keys: ^1.0.0 + checksum: f4ebdd85d720c5a3547407153dfee95220ae452a4f3cd7e5a97fe3e12eeb09d3695930b8869df91728dbd4a50dc5a440d2c3dba03b0c1388b10a5850c791ea4d + languageName: node + linkType: hard + +"normalize-url@npm:^3.0.0, normalize-url@npm:^3.3.0": + version: 3.3.0 + resolution: "normalize-url@npm:3.3.0" + checksum: 5704115f74833cf157a5f104477d9c8e8b4e2c00275624159bcd3c65dbdac93db4f6f008f91364d0f20f93655bd2b643afa9e8875c67b4ab8673cd1dd0fb7a5c + languageName: node + linkType: hard + +"normalize-url@npm:^4.1.0": + version: 4.5.0 + resolution: "normalize-url@npm:4.5.0" + checksum: 09794941dbe5c7b91caf6f3cd1ae167c27f6d09793e4a03601a68b62de7e8ee9e5de21a246130cdbab98b01481de292f9556d492444a527648f9cf1220e4b0df + languageName: node + linkType: hard + +"npm-bundled@npm:^1.0.1": + version: 1.1.1 + resolution: "npm-bundled@npm:1.1.1" + dependencies: + npm-normalize-package-bin: ^1.0.1 + checksum: f51ddba86970fc568a40449f51348de535ac71d93a2ce31195e978d0189899a0da696b3e51a5eb6e77a88890482ac873767c58c81763dda3dab410c9c1e99ca5 + languageName: node + linkType: hard + +"npm-lifecycle@npm:^3.1.2": + version: 3.1.5 + resolution: "npm-lifecycle@npm:3.1.5" + dependencies: + byline: ^5.0.0 + graceful-fs: ^4.1.15 + node-gyp: ^5.0.2 + resolve-from: ^4.0.0 + slide: ^1.1.6 + uid-number: 0.0.6 + umask: ^1.1.0 + which: ^1.3.1 + checksum: 3b053e6e3e59ad0ee486fadfd4b563e5c77835d195675b6d4207c60ca953f2808a8316e1d599206421078f017950832ec6ada6b97d56439e0f9acd24b204c40f + languageName: node + linkType: hard + +"npm-normalize-package-bin@npm:^1.0.0, npm-normalize-package-bin@npm:^1.0.1": + version: 1.0.1 + resolution: "npm-normalize-package-bin@npm:1.0.1" + checksum: 495fae761551a765064f6937ed578a1d749c110355b63f5bbf6df9f0237862639de184a5c13fb9982d2a7745b2bd983e427bf16893ad98f20e53a32ad0254fc9 + languageName: node + linkType: hard + +"npm-package-arg@npm:^4.0.0 || ^5.0.0 || ^6.0.0, npm-package-arg@npm:^6.0.0, npm-package-arg@npm:^6.1.0": + version: 6.1.1 + resolution: "npm-package-arg@npm:6.1.1" + dependencies: + hosted-git-info: ^2.7.1 + osenv: ^0.1.5 + semver: ^5.6.0 + validate-npm-package-name: ^3.0.0 + checksum: 419b015365a39accc71515f3a956f93f1e54c0c315ccd12d32c45a49ac50e7c8e3702bd8ea746050c990be7e5af24284bbd8f0b0195fced4cf8f377c59a4a1d1 + languageName: node + linkType: hard + +"npm-packlist@npm:^1.4.4": + version: 1.4.8 + resolution: "npm-packlist@npm:1.4.8" + dependencies: + ignore-walk: ^3.0.1 + npm-bundled: ^1.0.1 + npm-normalize-package-bin: ^1.0.1 + checksum: 34c4bbd47daccd64e5e432b435ec37339bd472900dccd2a8f003d5004b4fff67b8561aadbbedaa5a5effd1dab9126b89fb28355fef1f3e85ff60ecf6b21433d9 + languageName: node + linkType: hard + +"npm-pick-manifest@npm:^3.0.0": + version: 3.0.2 + resolution: "npm-pick-manifest@npm:3.0.2" + dependencies: + figgy-pudding: ^3.5.1 + npm-package-arg: ^6.0.0 + semver: ^5.4.1 + checksum: 100337ad8d0627da4db86b7dcc10e53ac901125c1f7ee2c19c536d80af3bae516a6613ab90b7b472805a17c4eaaa08934e4c7c17f57a098f813687c457aae1ac + languageName: node + linkType: hard + +"npm-run-path@npm:^2.0.0": + version: 2.0.2 + resolution: "npm-run-path@npm:2.0.2" + dependencies: + path-key: ^2.0.0 + checksum: 0a1bc9a1e0faa7e54a011929b830121d5da393f50cbe37c83f3ffd67781b6d176739ba6e8eab5d56faa05738a60f7eb50389673767db0dc887073932f80b9b60 + languageName: node + linkType: hard + +"npm-run-path@npm:^4.0.0": + version: 4.0.1 + resolution: "npm-run-path@npm:4.0.1" + dependencies: + path-key: ^3.0.0 + checksum: 058fd068804f8c34fcef9393fc895d45400834c9f90bbafc57259f9fd47e8796712e4ad54524f0971b806260a118bf61ac37b0bf9f74e9e58c84bae780ae09e6 + languageName: node + linkType: hard + +"npmlog@npm:^4.1.2": + version: 4.1.2 + resolution: "npmlog@npm:4.1.2" + dependencies: + are-we-there-yet: ~1.1.2 + console-control-strings: ~1.1.0 + gauge: ~2.7.3 + set-blocking: ~2.0.0 + checksum: 0cd63f127c1bbda403a112e83b11804aaee2b58b0bc581c3bde9b82e4d957c7ed0ad3bee499af706cdd3599bb93669d7cbbf29fb500407d35fe75687ac96e2c0 + languageName: node + linkType: hard + +"nprogress@npm:^0.2.0": + version: 0.2.0 + resolution: "nprogress@npm:0.2.0" + checksum: 652dfcfea776f9d9a2c3ad1f79b4cbd3056a03e7c6884966eab70fb184e8e70bfca9e0343ba89d11aa1ed95370d648fb638fab91b5dc027bdad54c8d37c96478 + languageName: node + linkType: hard + +"nth-check@npm:^1.0.2, nth-check@npm:~1.0.1": + version: 1.0.2 + resolution: "nth-check@npm:1.0.2" + dependencies: + boolbase: ~1.0.0 + checksum: 88a58b8b6289344749102019422705e8e6fa870d55e4bd4c71f860105ea5b8145ae71657f6edd6df953964081f52d65936a3eec4af1d9ee42122e42d293b2abe + languageName: node + linkType: hard + +"null-loader@npm:^3.0.0": + version: 3.0.0 + resolution: "null-loader@npm:3.0.0" + dependencies: + loader-utils: ^1.2.3 + schema-utils: ^1.0.0 + peerDependencies: + webpack: ^4.3.0 + checksum: 710c523c620ee9a4b17e7d966da5d4d753d55ba85b8321f1302e784939be18e554cb08d933132194c783d4f40e072ab3aa01059a3dcfc6b9877066d32c593640 + languageName: node + linkType: hard + +"nullthrows@npm:^1.1.1": + version: 1.1.1 + resolution: "nullthrows@npm:1.1.1" + checksum: 47afb80d9784485fe69facb16207a9b3de09258f5c86d4c21680abb3708eb4d3e8b04c2df288938eb7e1a82be0b73b00b991ca3c20ccb8c00a12a5cdc3a08fb5 + languageName: node + linkType: hard + +"num2fraction@npm:^1.2.2": + version: 1.2.2 + resolution: "num2fraction@npm:1.2.2" + checksum: c9bb3e7c6d358cc8a6f354e0f5b56235845255465622f4d2eafec6bf5209dd3500133ab2888fbb444c997e29702e85b79ceef026ccc1c06a2971c2c1a93cee90 + languageName: node + linkType: hard + +"number-is-nan@npm:^1.0.0": + version: 1.0.1 + resolution: "number-is-nan@npm:1.0.1" + checksum: 42251b2653a16f8b47639d93c3b646fff295a4582a6b3a2fc51a651d4511427c247629709063d19befbceb8a3db1a8e9f17016b3a207291e79e4bd1413032918 + languageName: node + linkType: hard + +"nwsapi@npm:^2.0.7, nwsapi@npm:^2.1.3, nwsapi@npm:^2.2.0": + version: 2.2.0 + resolution: "nwsapi@npm:2.2.0" + checksum: fb0f05113a829296f964688503d991b136d02d153769288d12226a4d52e17b50c073eceeee0ff1e8377ca8e86c244e1f9b849c9eed7fca97a03aa8a59f074c06 + languageName: node + linkType: hard + +"oauth-sign@npm:~0.9.0": + version: 0.9.0 + resolution: "oauth-sign@npm:0.9.0" + checksum: af1ab60297c3a687d1d2de5c43c6453c4df6939de3e6114ada4a486ac51fa7ab1769f33000b94c0e8ffced5ae4c57c4f5d36b517792d83e9e9742578a728682e + languageName: node + linkType: hard + +"oauth@npm:^0.9.15": + version: 0.9.15 + resolution: "oauth@npm:0.9.15" + checksum: 2f1609b8e7fc548b3916d601d3bfe6d78585c20a668f36304ea587f6d6c33c9ad1f58c17dc7618fe1ceae9396fcc8e7a8be328960b9f07bd314c088a12f6cefe + languageName: node + linkType: hard + +"object-assign@npm:^4, object-assign@npm:^4.0.1, object-assign@npm:^4.1.0, object-assign@npm:^4.1.1": + version: 4.1.1 + resolution: "object-assign@npm:4.1.1" + checksum: 66cf021898fc1b13ea573ea8635fbd5a76533f50cecbc2fcd5eee1e8029af41bcebe7023788b6d0e06cbe4401ecea075d972f78ec74467cdc571a0f1a4d1a081 + languageName: node + linkType: hard + +"object-copy@npm:^0.1.0": + version: 0.1.0 + resolution: "object-copy@npm:0.1.0" + dependencies: + copy-descriptor: ^0.1.0 + define-property: ^0.2.5 + kind-of: ^3.0.3 + checksum: d91d46e54297cad0544f04e4dff4694f92aca9661f59ad7e803a1ba94a2bb24b38ca4fd59ea827d24c9bdc6f7148d5c838287ee4b2b9c5df9b445b1c0d7a066c + languageName: node + linkType: hard + +"object-hash@npm:^2.0.1": + version: 2.0.3 + resolution: "object-hash@npm:2.0.3" + checksum: e633ae67cd6c5f3cd52af5bef0fe7f25d597b415a6d92a601be0b97a47642908cf333cedfc9e848d25b6c51fd6cf6e64ff6eb3af710eae249a42f6a69ad6b12d + languageName: node + linkType: hard + +"object-inspect@npm:^1.7.0": + version: 1.8.0 + resolution: "object-inspect@npm:1.8.0" + checksum: 4da23a188b3811d75fcd6e7916471465f94e4752159e064f9621040945d375dca1afa092a000a398267d81b4f40bf33cfdbe1e99eff98f1972155efe055f80c8 + languageName: node + linkType: hard + +"object-is@npm:^1.0.1": + version: 1.1.2 + resolution: "object-is@npm:1.1.2" + dependencies: + define-properties: ^1.1.3 + es-abstract: ^1.17.5 + checksum: 9ea7df4475f250c968171fa142b6584bad4c65859af8cb50e06fa8168089ae47afb460776ab60fe5f3aea8ea3c97b30dd0b37d41e23106f2abcc7d6f982bec04 + languageName: node + linkType: hard + +"object-keys@npm:^1.0.11, object-keys@npm:^1.0.12, object-keys@npm:^1.1.1": + version: 1.1.1 + resolution: "object-keys@npm:1.1.1" + checksum: 30d72d768b7f3f42144cee517b80e70c40cf39bb76f100557ffac42779613c591780135c54d8133894a78d2c0ae817e24a5891484722c6019a5cd5b58c745c66 + languageName: node + linkType: hard + +"object-path@npm:0.11.4, object-path@npm:^0.11.4": + version: 0.11.4 + resolution: "object-path@npm:0.11.4" + checksum: 5e3d4690d00cd6febeb19f888858ac0da8dc9f83a0a364401259d9dfaad0fd58c638632a78e63f81710d4e9a59b3f1f9e4aadacf61f31ab9cb1602194fd76d81 + languageName: node + linkType: hard + +"object-visit@npm:^1.0.0": + version: 1.0.1 + resolution: "object-visit@npm:1.0.1" + dependencies: + isobject: ^3.0.0 + checksum: 8666727dbfb957676c0b093cde6d676ed6b847b234d98a4ed7f4d7f7e4b40c00af8067354d5c45052dc40c6830d68b68212c15c96dbcc286cdc96aca58faf548 + languageName: node + linkType: hard + +"object.assign@npm:^4.1.0": + version: 4.1.0 + resolution: "object.assign@npm:4.1.0" + dependencies: + define-properties: ^1.1.2 + function-bind: ^1.1.1 + has-symbols: ^1.0.0 + object-keys: ^1.0.11 + checksum: 92e20891ddf04d9974f7b178ae70d198727dcd638c8a5a422f07f730f40140c4fe02451cdc9c37e9f22392e5487b9162975003a9f20b16a87b9d13fe150cf62d + languageName: node + linkType: hard + +"object.entries@npm:^1.1.0, object.entries@npm:^1.1.1": + version: 1.1.2 + resolution: "object.entries@npm:1.1.2" + dependencies: + define-properties: ^1.1.3 + es-abstract: ^1.17.5 + has: ^1.0.3 + checksum: bcde47ee0396df8bc074e3194b74d3983e3da205321836f132cc55403f26cd06cd8d677492ca35697fa4d52419428fec2e01b60a96db1c22d21f1978d37db97d + languageName: node + linkType: hard + +"object.fromentries@npm:^2.0.2": + version: 2.0.2 + resolution: "object.fromentries@npm:2.0.2" + dependencies: + define-properties: ^1.1.3 + es-abstract: ^1.17.0-next.1 + function-bind: ^1.1.1 + has: ^1.0.3 + checksum: 58fa9edab136a299e81828842e0c2dd12df1985025f13e451a2c5609d8b16e4c7ebd2c574691f3b6edffb44ada8d5d12aef3b060ce1a65660b65e3202a7897a1 + languageName: node + linkType: hard + +"object.getownpropertydescriptors@npm:^2.0.3": + version: 2.1.0 + resolution: "object.getownpropertydescriptors@npm:2.1.0" + dependencies: + define-properties: ^1.1.3 + es-abstract: ^1.17.0-next.1 + checksum: c33dcc3061b56ec4d9f6d30620a364a5218aba8f592662f5ce346fcf523eb0483bc865d3f52848e267217285d831ca0a3d85836787bef5f86ecfa29f77dc249e + languageName: node + linkType: hard + +"object.pick@npm:^1.3.0": + version: 1.3.0 + resolution: "object.pick@npm:1.3.0" + dependencies: + isobject: ^3.0.1 + checksum: e22d555d3bb73c665a5baa1da7789d3a98f557d8712a9bbe34dc59d4adbce9d390245815296025de5260b18794de647401a6b2ae1ba0ab854a6710e2958291f6 + languageName: node + linkType: hard + +"object.values@npm:^1.1.0, object.values@npm:^1.1.1": + version: 1.1.1 + resolution: "object.values@npm:1.1.1" + dependencies: + define-properties: ^1.1.3 + es-abstract: ^1.17.0-next.1 + function-bind: ^1.1.1 + has: ^1.0.3 + checksum: 33e99ceb5cdb4c4b43372aa133ecb1d73d5cf73ebbbe9ec64f45cd39c87d0226ca88d6a354cd8b819fbde6b9ebbc7df1a6a093f91d2c951c51a07546f54fe33d + languageName: node + linkType: hard + +"obuf@npm:^1.0.0, obuf@npm:^1.1.2": + version: 1.1.2 + resolution: "obuf@npm:1.1.2" + checksum: aa741387b0f5dc2b8addec7cd0e05448d8b2892b6e76e167e18a5b90f0b85bd4c9be4c7be01a354dee3353f5c3367b08006adb06e0737d6a8f1b88618147715a + languageName: node + linkType: hard + +"octokit-pagination-methods@npm:^1.1.0": + version: 1.1.0 + resolution: "octokit-pagination-methods@npm:1.1.0" + checksum: c3b42406a1ee8d9bd42db5dce88db519a6fb5031c0983753a7f623486476f57bf7bb6b39bfd119e01f9533d8480aab05a29446997ef1747483e1b871cc2c7d61 + languageName: node + linkType: hard + +"on-finished@npm:~2.3.0": + version: 2.3.0 + resolution: "on-finished@npm:2.3.0" + dependencies: + ee-first: 1.1.1 + checksum: 362e64608287d31ffd96a15fb9305a410b3e4d07c86f277fae907e38af46bc6f5ff948de90eabb81dc5632ca7f9a290085acc5410c378053dfa9860451d97ee5 + languageName: node + linkType: hard + +"on-headers@npm:~1.0.2": + version: 1.0.2 + resolution: "on-headers@npm:1.0.2" + checksum: 51e75c80755169e765aa76238722e5ad1623f62b13bbc23544ade20cdbb6950cf0e6aa91de35d02ec956f47dc072ee460d8eef82354e4abf8fa692885cb3f2d8 + languageName: node + linkType: hard + +"once@npm:^1.3.0, once@npm:^1.3.1, once@npm:^1.4.0": + version: 1.4.0 + resolution: "once@npm:1.4.0" + dependencies: + wrappy: 1 + checksum: 57afc246536cf6494437f982b26475f22bee860f8b77ce8eb1543f42a8bffe04b2c66ddfea9a16cb25ccb80943f8ee4fc639367ef97b7a6a4f2672eb573963f5 + languageName: node + linkType: hard + +"onetime@npm:^2.0.0": + version: 2.0.1 + resolution: "onetime@npm:2.0.1" + dependencies: + mimic-fn: ^1.0.0 + checksum: a4f56fdd3ad40618c06be5dd601dcdc6f6567cc8da7a8955eb208fc027b5f2eec052b15f3097b4575728a2928c24c9d6deaac7bf53883d9d8ffe13abdccdec08 + languageName: node + linkType: hard + +"onetime@npm:^5.1.0": + version: 5.1.2 + resolution: "onetime@npm:5.1.2" + dependencies: + mimic-fn: ^2.1.0 + checksum: e425f6caeb20cf2598ffece94be5663932e34d074f1631b682b13d5f01cc1e0712a7dc711eff1706bb5a5aaab8a52e37bd5edcf560334e3222219d7e8b09c21c + languageName: node + linkType: hard + +"open@npm:^7.0.2": + version: 7.1.0 + resolution: "open@npm:7.1.0" + dependencies: + is-docker: ^2.0.0 + is-wsl: ^2.1.1 + checksum: 8f13f4603de3d20940c2766fc2e410889deff64f27e5eb61e6bdfeadbdc26a2bfe5ef637cb9d7ee6025b3a7623b04bf883633a1c2b32b2d93718c738dabab0ee + languageName: node + linkType: hard + +"opencollective-postinstall@npm:^2.0.2": + version: 2.0.3 + resolution: "opencollective-postinstall@npm:2.0.3" + bin: + opencollective-postinstall: index.js + checksum: d75b06b80eb426aaf099307ca4398f3119c8c86ff3806a95cfe234b979b80c07080040734fe2dc3c51fed5b15bd98dae88340807980bdc74aa1ebf045c74ef06 + languageName: node + linkType: hard + +"opencollective@npm:1.0.3": + version: 1.0.3 + resolution: "opencollective@npm:1.0.3" + dependencies: + babel-polyfill: 6.23.0 + chalk: 1.1.3 + inquirer: 3.0.6 + minimist: 1.2.0 + node-fetch: 1.6.3 + opn: 4.0.2 + bin: + oc: ./dist/bin/opencollective.js + opencollective: ./dist/bin/opencollective.js + checksum: 5426b7551c46de1163157813a2e6ba0abb6654e8c476cad70b447d802a48548c64d853845ea943d0adce14a37a712bc877bddfc3821b204feab911619cabb187 + languageName: node + linkType: hard + +"opener@npm:^1.5.1": + version: 1.5.1 + resolution: "opener@npm:1.5.1" + bin: + opener: bin/opener-bin.js + checksum: 055a1efdc206e1c8ac37ca1d62e16de84c7f6ae48883ac1898f1b8e9e9b918979fe747d439b249975c707b911073072ddc933fa1993d8a7345b729393466fbbf + languageName: node + linkType: hard + +"opn@npm:4.0.2": + version: 4.0.2 + resolution: "opn@npm:4.0.2" + dependencies: + object-assign: ^4.0.1 + pinkie-promise: ^2.0.0 + checksum: ae6dedcef2b67aa466794c92ba79c5c9016fb8d0935e2e16fd67b5510bd61eadfd1f9a3350745145f9aa0e6624d008cacc28d8c214542f44ef49b17824a8e42f + languageName: node + linkType: hard + +"opn@npm:^5.5.0": + version: 5.5.0 + resolution: "opn@npm:5.5.0" + dependencies: + is-wsl: ^1.1.0 + checksum: 0ea3b6550fbbc530a57f958baf5d44253a435d67ad88b4af1df8b3a98693f7c70b71d72f29b09a02d15e94654ec3875aae8cf4fccbf8e4e326671a02f66058d3 + languageName: node + linkType: hard + +"optimism@npm:^0.12.1": + version: 0.12.1 + resolution: "optimism@npm:0.12.1" + dependencies: + "@wry/context": ^0.5.2 + checksum: 3e2a62ca68bd766087b814782ec174f49863b8419af1db5ac6325803041799bd9c04e288ec1ec37f05d82072f5ae0194d0df095fb169eb639fee03f3986be868 + languageName: node + linkType: hard + +"optimize-css-assets-webpack-plugin@npm:5.0.3, optimize-css-assets-webpack-plugin@npm:^5.0.3": + version: 5.0.3 + resolution: "optimize-css-assets-webpack-plugin@npm:5.0.3" + dependencies: + cssnano: ^4.1.10 + last-call-webpack-plugin: ^3.0.0 + peerDependencies: + webpack: ^4.0.0 + checksum: 8ecfdadfc587d4c9276375cb6f7c585c2f68192f8181a414046457b2129b4914442c8c8061fdf23b0fff27a1ed912c7836e11f03b787926050cd83f540790a84 + languageName: node + linkType: hard + +"optionator@npm:^0.8.1, optionator@npm:^0.8.3": + version: 0.8.3 + resolution: "optionator@npm:0.8.3" + dependencies: + deep-is: ~0.1.3 + fast-levenshtein: ~2.0.6 + levn: ~0.3.0 + prelude-ls: ~1.1.2 + type-check: ~0.3.2 + word-wrap: ~1.2.3 + checksum: a5cdced2c92d2bf2b2338b7e29b871eb97987424f7b50d5446853f709f53c855714465ee4bf1842fed2a175445d78cd44376a16666e38ef90ebf4670173d98b8 + languageName: node + linkType: hard + +"optionator@npm:^0.9.1": + version: 0.9.1 + resolution: "optionator@npm:0.9.1" + dependencies: + deep-is: ^0.1.3 + fast-levenshtein: ^2.0.6 + levn: ^0.4.1 + prelude-ls: ^1.2.1 + type-check: ^0.4.0 + word-wrap: ^1.2.3 + checksum: bdf5683f986d00e173e6034837b7b6a9e68c7e1a37d7684b240adf1758db9076cfb04c9f64be29327881bb06c5017afb8b65012c5f02d07b180e9f6f42595ffd + languageName: node + linkType: hard + +"original@npm:^1.0.0": + version: 1.0.2 + resolution: "original@npm:1.0.2" + dependencies: + url-parse: ^1.4.3 + checksum: 6918b9d4545917616aba3788ce3c8c47dc5bcc26b0a3dc7da68d9976ce4d09fd1172d249cbc8063ef3311ddfbc435ef7a48b753abc85f3b74e83cf0c8de9aae3 + languageName: node + linkType: hard + +"os-browserify@npm:^0.3.0": + version: 0.3.0 + resolution: "os-browserify@npm:0.3.0" + checksum: f547c038810977579e11f35ff9aec4c6ac557369af7f4946d054da9e0dc180ffc1b5ef37c8c09b6004487c88c4a500c49ba9a109fbeab7dcb890fe1346b5f9b7 + languageName: node + linkType: hard + +"os-homedir@npm:^1.0.0": + version: 1.0.2 + resolution: "os-homedir@npm:1.0.2" + checksum: 725256246b2cec353250ec46442e3cfa7bc96ef92285d448a90f12f4bbd78c1bf087051b2cef0382da572e1a9ebc8aa24bd0940a3bdc633c3e3012eef1dc6848 + languageName: node + linkType: hard + +"os-locale@npm:^3.0.0": + version: 3.1.0 + resolution: "os-locale@npm:3.1.0" + dependencies: + execa: ^1.0.0 + lcid: ^2.0.0 + mem: ^4.0.0 + checksum: 50611551f032c5e7d938425263f1379093d6acae3c18448599801ee296fbb63a90460ec68ba26a721240322d6032b592c3a837212af2ca81f0a3104956925f68 + languageName: node + linkType: hard + +"os-name@npm:^3.1.0": + version: 3.1.0 + resolution: "os-name@npm:3.1.0" + dependencies: + macos-release: ^2.2.0 + windows-release: ^3.1.0 + checksum: b4e5d610102d443988c4b7d3489c6d31c1ca363ef99af54d75f013164788867ac2458a91bbbc8b3acf1188191a9ae4273e8d7dc352c3eaca536cde6a5f444ad8 + languageName: node + linkType: hard + +"os-tmpdir@npm:^1.0.0, os-tmpdir@npm:~1.0.2": + version: 1.0.2 + resolution: "os-tmpdir@npm:1.0.2" + checksum: ca158a3c2e48748adc7736cdbe4c593723f8ed8581d2aae2f2a30fdb9417d4ba14bed1cd487d47561898a7b1ece88bce69745e9ce0303e1dea9ea7d22d1f1082 + languageName: node + linkType: hard + +"osenv@npm:^0.1.4, osenv@npm:^0.1.5": + version: 0.1.5 + resolution: "osenv@npm:0.1.5" + dependencies: + os-homedir: ^1.0.0 + os-tmpdir: ^1.0.0 + checksum: 1c7462808c5ff0c2816b11f2f46265a98c395586058f98d73a6deac82955744484b277baedceeb962c419f3b75d0831a77ce7cf38b9e4f20729943ba79d72b08 + languageName: node + linkType: hard + +"p-cancelable@npm:^1.0.0": + version: 1.1.0 + resolution: "p-cancelable@npm:1.1.0" + checksum: 01fdd9ac319f0e69e22c18d5b9e5f4dca62a0827d72349c73b0c88b07c760849de49201dcbe4fbbcbe61b4bdce8f4f3596cfbbfed664cf411ff1ab9a80664574 + languageName: node + linkType: hard + +"p-defer@npm:^1.0.0": + version: 1.0.0 + resolution: "p-defer@npm:1.0.0" + checksum: ffaabb161334dd9b471f7136038c9322f5288fdd86e070d75a6c65f1b28893d5ef084d9b94401e285117da65906c2952a96404a45a57ecd010393445ac2b6159 + languageName: node + linkType: hard + +"p-each-series@npm:^1.0.0": + version: 1.0.0 + resolution: "p-each-series@npm:1.0.0" + dependencies: + p-reduce: ^1.0.0 + checksum: 3a8ed61be01368877ca1f632412fd781aa8bc0e9ab6469f0f10074887c1684f38b24e6f2a1479ad7edb5581800dc0aed5b41bfdf194a95c370bcb942ae7f881b + languageName: node + linkType: hard + +"p-each-series@npm:^2.1.0": + version: 2.1.0 + resolution: "p-each-series@npm:2.1.0" + checksum: cc7516dbb8330eb09d3de44df4bba3c4a1b37ed711a3a4a25acef67f262e2a7400e1df1497e947ba505b1773fc2e2bf9e087d15676d511055659c21ed3e3eb3a + languageName: node + linkType: hard + +"p-finally@npm:^1.0.0": + version: 1.0.0 + resolution: "p-finally@npm:1.0.0" + checksum: 01f49b2d9c67573b3a1cb253cd9e1ecf5c912b6ba5de8824118bbc8d647bfa6296820b5a536e91ec68a54395d4e1c58de9a381ded3b688074fb446a8fe351931 + languageName: node + linkType: hard + +"p-finally@npm:^2.0.0": + version: 2.0.1 + resolution: "p-finally@npm:2.0.1" + checksum: d90a9b6b51e2cee60131564b279e4ebaf92c2b05f1afb35477b8a1b7eb77b9c4d6d8c5dac329b45fc85b0efcfdf3a2047279dedb4c1e83fd3fd24eefa3439cfe + languageName: node + linkType: hard + +"p-is-promise@npm:^2.0.0": + version: 2.1.0 + resolution: "p-is-promise@npm:2.1.0" + checksum: 4a15137df9aebb9f91ea9a5d517bbfbbdcadfb56787f0f17cbc8802fc37a2e84239a7e52d6b27fdc212acd2fd428cc8506bd88f1d7d56720c591d43eed8c1d6e + languageName: node + linkType: hard + +"p-limit@npm:3.0.2": + version: 3.0.2 + resolution: "p-limit@npm:3.0.2" + dependencies: + p-try: ^2.0.0 + checksum: 1eb23d6ea77709212bf8d7a98d36c4e8b5276ec791bf74f460c012fadf4580d136f40efafa25d4892a9327102866eafc79b441eed7be339b0da59da416ced600 + languageName: node + linkType: hard + +"p-limit@npm:^1.1.0": + version: 1.3.0 + resolution: "p-limit@npm:1.3.0" + dependencies: + p-try: ^1.0.0 + checksum: 579cbd3d6c606058aa624c464e2cb3c4b56d04ed4cbafdb705633cbe62ba36d77ba2c4289023335ba382f4fbf32c15709465eea18a0e1547c5ebc4b887f2a7da + languageName: node + linkType: hard + +"p-limit@npm:^2.0.0, p-limit@npm:^2.2.0, p-limit@npm:^2.2.1, p-limit@npm:^2.2.2, p-limit@npm:^2.3.0": + version: 2.3.0 + resolution: "p-limit@npm:2.3.0" + dependencies: + p-try: ^2.0.0 + checksum: 5f20492a25c5f93fca2930dbbf41fa1bee46ef70eaa6b49ad1f7b963f309e599bc40507e0a3a531eee4bcd10fec4dd4a63291d0e3b2d84ac97d7403d43d271a9 + languageName: node + linkType: hard + +"p-locate@npm:^2.0.0": + version: 2.0.0 + resolution: "p-locate@npm:2.0.0" + dependencies: + p-limit: ^1.1.0 + checksum: b6dabbd855fba9bfa74b77882f96d0eac6c25d9966e61ab0ed7bf3d19f2e3b766f290ded1aada1ac4ce2627217b00342cf7a1d36482bada59ba6789be412dad7 + languageName: node + linkType: hard + +"p-locate@npm:^3.0.0": + version: 3.0.0 + resolution: "p-locate@npm:3.0.0" + dependencies: + p-limit: ^2.0.0 + checksum: 3ee9e3ed0b1b543f8148ef0981d33013d82a21c338b117a2d15650456f8dc888c19eb8a98484e7e159276c3ad9219c3e2a00b63228cab46bf29aeaaae096b1d6 + languageName: node + linkType: hard + +"p-locate@npm:^4.1.0": + version: 4.1.0 + resolution: "p-locate@npm:4.1.0" + dependencies: + p-limit: ^2.2.0 + checksum: 57f9abef0b29f02ff88c0936a392c9a1fbdd08169e636e0d85b7407c108014d71578c0c6fe93fa49b5bf3857b20d6f16b96389e2b356f7f599d4d2150505844f + languageName: node + linkType: hard + +"p-map-series@npm:^1.0.0": + version: 1.0.0 + resolution: "p-map-series@npm:1.0.0" + dependencies: + p-reduce: ^1.0.0 + checksum: 721c1aaea4ad39ea03e1bb93315a552d58d77ced4d3a23a0efe5ec06ffb41d2f851fab1a381e43253357f79f02c5f954d4e86b4e38d82a8b4f0d6a48034ff511 + languageName: node + linkType: hard + +"p-map@npm:^2.0.0, p-map@npm:^2.1.0": + version: 2.1.0 + resolution: "p-map@npm:2.1.0" + checksum: 8557e841ed832a489aaee7d825b7bea73e0559c452578821f5af418f430a8455727ab8dd5b4318b6b6733096029cfa571aa0e8d21bdd2c213025f02f919f7a9a + languageName: node + linkType: hard + +"p-map@npm:^3.0.0": + version: 3.0.0 + resolution: "p-map@npm:3.0.0" + dependencies: + aggregate-error: ^3.0.0 + checksum: f7ce4709f432323a11f7c808f96add4104774cb7ba88cc9a92b6b5b8ea8a7fa977d28c4e5619669f9cf1315e889769843c6a4772155b08dadbd20d504e4ce2a7 + languageName: node + linkType: hard + +"p-map@npm:^4.0.0": + version: 4.0.0 + resolution: "p-map@npm:4.0.0" + dependencies: + aggregate-error: ^3.0.0 + checksum: d51e630d72b7c38bc9e396710e7a068f0b813fe4db6f4a2d1ce2972e7fa11142c763c3aa39bcfd77c0133688c1ebfdd9b38fa3ac4c6ada20b62df26239c5c0e4 + languageName: node + linkType: hard + +"p-pipe@npm:^1.2.0": + version: 1.2.0 + resolution: "p-pipe@npm:1.2.0" + checksum: 64c9ce534e02f5335b5668221eea7473cc85229d15958db71452670f1eea01d2a13239a4a13818aa6acdb8442669a227e181b448ac67eb6ba624157cc59426e9 + languageName: node + linkType: hard + +"p-queue@npm:^4.0.0": + version: 4.0.0 + resolution: "p-queue@npm:4.0.0" + dependencies: + eventemitter3: ^3.1.0 + checksum: c96ab7313f6e7de9d88364b1fee9951b397b0f0db3cb94aed88019b10b1625ff7377baae1c84d7a70ec2da0086ea3d9575d012ab88ca01fd55b6c5a0ec7d0c03 + languageName: node + linkType: hard + +"p-reduce@npm:^1.0.0": + version: 1.0.0 + resolution: "p-reduce@npm:1.0.0" + checksum: d85bfa41e71746000345eeaa1f17753fa4247b20b703a4c59e0bbf403914060901a823777a55b676897271d1be61b2669553adf31d9bdc3736fe2ff87e9b74cf + languageName: node + linkType: hard + +"p-retry@npm:^3.0.1": + version: 3.0.1 + resolution: "p-retry@npm:3.0.1" + dependencies: + retry: ^0.12.0 + checksum: 26c888de4e64e62e9b6112219fae2c2f45ddc2face5d6c7c98e1b8762bcd4a54bea4f50cdff275b2ee5ebb11b633bfb16f4dd473ecd4d07081385cb716e961cf + languageName: node + linkType: hard + +"p-try@npm:^1.0.0": + version: 1.0.0 + resolution: "p-try@npm:1.0.0" + checksum: 85739d77b3e9f6a52a8545f1adc53621fb5df4d6ef9b59a3f54f3f3159b45c4100d4e63128a1e790e9ff8ff8b86213ace314ff6d2d327c3edcceea18891baa42 + languageName: node + linkType: hard + +"p-try@npm:^2.0.0": + version: 2.2.0 + resolution: "p-try@npm:2.2.0" + checksum: 20983f3765466c1ab617ed153cb53b70ac5df828d854a3334d185e20b37f436e9096f12bc1b7fc96d8908dc927a3685172d3d89e755774f57b7103460c54dcc5 + languageName: node + linkType: hard + +"p-waterfall@npm:^1.0.0": + version: 1.0.0 + resolution: "p-waterfall@npm:1.0.0" + dependencies: + p-reduce: ^1.0.0 + checksum: 86e331822fe942023a636736f9a66ecfc2db2aa706a227500c75727627760ecb1b4a591597a66e440b37baa39084de2eadcb4a5a8808f86e89a7fd128d18205d + languageName: node + linkType: hard + +"package-json@npm:^6.3.0": + version: 6.5.0 + resolution: "package-json@npm:6.5.0" + dependencies: + got: ^9.6.0 + registry-auth-token: ^4.0.0 + registry-url: ^5.0.0 + semver: ^6.2.0 + checksum: 3023e318de5d76bbd650aedd3671b452cb1e018c4d99b72955dde0f22c6ba765c3f6d678ab0ee45e2561842e8399b1fea77a0730dc93c39505e7ebfed7ab2818 + languageName: node + linkType: hard + +"packet-reader@npm:1.0.0": + version: 1.0.0 + resolution: "packet-reader@npm:1.0.0" + checksum: fdbf006717eeb21d21398ed264de33d9bc024c78d1ae3828661f13da242d393188bbee470d48135ec6abebbc370b2642da646e43ead06837a7dff53819da4107 + languageName: node + linkType: hard + +"pako@npm:~1.0.5": + version: 1.0.11 + resolution: "pako@npm:1.0.11" + checksum: 71c60150b68220ec52a404f3c39a4ed38f750e42452b88fe0eb2e6b5c98e91f73f706444359b097aca1e6db83ef8fef50b5a9ec100e30a606cda6da8d45e5439 + languageName: node + linkType: hard + +"parallel-transform@npm:^1.1.0": + version: 1.2.0 + resolution: "parallel-transform@npm:1.2.0" + dependencies: + cyclist: ^1.0.1 + inherits: ^2.0.3 + readable-stream: ^2.1.5 + checksum: 65170af2e76b0d9305a1b8143e7aaa7fd0f726a038315fab7b8a92773a446d35623bc56bbac0ee4e6feb6757243c30408e1cd93da499fa44008fa7f9ded0c6c8 + languageName: node + linkType: hard + +"param-case@npm:3.0.3, param-case@npm:^3.0.3": + version: 3.0.3 + resolution: "param-case@npm:3.0.3" + dependencies: + dot-case: ^3.0.3 + tslib: ^1.10.0 + checksum: ef57facfaf282f6c074e565e26738e7bb043882aea9a4a575b0568d74f003ab8a1c69555d81773d25413287f079a367aa26a9518b3d5b25f2f17b4952a647f40 + languageName: node + linkType: hard + +"parent-module@npm:^1.0.0": + version: 1.0.1 + resolution: "parent-module@npm:1.0.1" + dependencies: + callsites: ^3.0.0 + checksum: 58714b9699f8e84340aaf0781b7cbd82f1c357f6ce9c035c151d0e8c1e9b869c51b95b680882f0d21b4751e817a6c936d4bb2952a1a1d9d9fb27e5a84baec2aa + languageName: node + linkType: hard + +"parent-require@npm:^1.0.0": + version: 1.0.0 + resolution: "parent-require@npm:1.0.0" + checksum: 69e60fb6bf40080777a71552bbc558302b24882cbe8cf31ac64eef78f6555084c68689d2516d2a6a587e2b7a6aa3e4d397cd1cd1931683f11e3868a6bdcc6431 + languageName: node + linkType: hard + +"parse-asn1@npm:^5.0.0, parse-asn1@npm:^5.1.5": + version: 5.1.5 + resolution: "parse-asn1@npm:5.1.5" + dependencies: + asn1.js: ^4.0.0 + browserify-aes: ^1.0.0 + create-hash: ^1.1.0 + evp_bytestokey: ^1.0.0 + pbkdf2: ^3.0.3 + safe-buffer: ^5.1.1 + checksum: 7c76cbaf48cc8d7ebf1ef4b9811630822eee2832a704aa4153b6935178d055604c90f21efdb5797acdd25c5da781d526fc811acf56d5370633d55e27d4648658 + languageName: node + linkType: hard + +"parse-entities@npm:^2.0.0": + version: 2.0.0 + resolution: "parse-entities@npm:2.0.0" + dependencies: + character-entities: ^1.0.0 + character-entities-legacy: ^1.0.0 + character-reference-invalid: ^1.0.0 + is-alphanumerical: ^1.0.0 + is-decimal: ^1.0.0 + is-hexadecimal: ^1.0.0 + checksum: 6a9213216b8c3c18def20beac67a6618d190830fdb5f5b49bec876894404b75e2cd4af4b6913fded084c5572a21042edaf2cf2e991f408c7097901fb8d85c31e + languageName: node + linkType: hard + +"parse-filepath@npm:1.0.2, parse-filepath@npm:^1.0.2": + version: 1.0.2 + resolution: "parse-filepath@npm:1.0.2" + dependencies: + is-absolute: ^1.0.0 + map-cache: ^0.2.0 + path-root: ^0.1.1 + checksum: e9843598f4c90fb9a08563141efc99570031fd037fbcd414a0b92239b059a709a7298d1a9c6861fb6f7d651f558f36dedf795ebb333b850481b558e65f93d72e + languageName: node + linkType: hard + +"parse-github-repo-url@npm:^1.3.0": + version: 1.4.1 + resolution: "parse-github-repo-url@npm:1.4.1" + checksum: 9ee4bc572bda5da4f4112153f0b34800c3e67f666b9dcffb8049de5fd073e4becf99dccdcdb1eff00e4a146ce280eb09eee96bca1362bf3345065a472965ece2 + languageName: node + linkType: hard + +"parse-json@npm:^2.2.0": + version: 2.2.0 + resolution: "parse-json@npm:2.2.0" + dependencies: + error-ex: ^1.2.0 + checksum: 920582196a8edebb3d3c4623b2f057987218272b35ae4d2d310c00bc1bd7e89b87c79358d7e009d54f047ca2eea82eab8d7e1b14e1f7cbbb345ef29fcda29731 + languageName: node + linkType: hard + +"parse-json@npm:^4.0.0": + version: 4.0.0 + resolution: "parse-json@npm:4.0.0" + dependencies: + error-ex: ^1.3.1 + json-parse-better-errors: ^1.0.1 + checksum: fa9d23708f562c447f2077c6007938334a16e772c5a9b25a6eb1853d792bc34560b483bb6079143040bc89e5476288dd2edd5a60024722986e3e434d326218c9 + languageName: node + linkType: hard + +"parse-json@npm:^5.0.0": + version: 5.0.1 + resolution: "parse-json@npm:5.0.1" + dependencies: + "@babel/code-frame": ^7.0.0 + error-ex: ^1.3.1 + json-parse-better-errors: ^1.0.1 + lines-and-columns: ^1.1.6 + checksum: 051a5ebaed679acc1cea7248b96bdab4eaa02bf7c1043ab79cfc2099dd64a137a2b5320b1111e40562bf2912832dd2b58220c36a4c6557906de8bce43a491196 + languageName: node + linkType: hard + +"parse-numeric-range@npm:^0.0.2": + version: 0.0.2 + resolution: "parse-numeric-range@npm:0.0.2" + checksum: a058c6ef46f916b1b76dadf64ee7c7b271228ec607e276d1a927f13c5ee4356f6b3f8771910ac6741e3fc612d429bda9411c7d30c9ddf6c0416915a04a66b6ca + languageName: node + linkType: hard + +"parse-path@npm:^4.0.0": + version: 4.0.2 + resolution: "parse-path@npm:4.0.2" + dependencies: + is-ssh: ^1.3.0 + protocols: ^1.4.0 + checksum: b1c8d4752f7b0bf731eb35fd34f724da066f448a9d5ed00b6b63b6e42859a71dc262713f4dca8df4489a03435358e28a082a26dd6397b48e5a683c91dbbae7dd + languageName: node + linkType: hard + +"parse-url@npm:^5.0.0": + version: 5.0.2 + resolution: "parse-url@npm:5.0.2" + dependencies: + is-ssh: ^1.3.0 + normalize-url: ^3.3.0 + parse-path: ^4.0.0 + protocols: ^1.4.0 + checksum: 412d3851bd52a3016615526034a76ccbf104432d8b4ec5c21782753b9d5e2e36dd55f7de6ce92387299002cdaae0401dc9efcc927535655fd243bc991019dc1a + languageName: node + linkType: hard + +"parse5-htmlparser2-tree-adapter@npm:^5.1.1": + version: 5.1.1 + resolution: "parse5-htmlparser2-tree-adapter@npm:5.1.1" + dependencies: + parse5: ^5.1.1 + checksum: 953c85a031ed1672e36abd5d61a3682af70843f667628ee0e35c64cc7a68cd9ac8f229cb929f6f066c27093abe1b00b2665446ffbb5b495561e9f580a04992d2 + languageName: node + linkType: hard + +"parse5@npm:4.0.0": + version: 4.0.0 + resolution: "parse5@npm:4.0.0" + checksum: 05a06f5bb3e67eede77d5bef314229e23f98e607d10e76c1c1f650bc9831e3e8407c2fe297ee66a7b055e46a9a479bbb68bd0e7de89a640e76ef20dced1cd0c9 + languageName: node + linkType: hard + +"parse5@npm:5.1.0": + version: 5.1.0 + resolution: "parse5@npm:5.1.0" + checksum: f82ab2581011704c1dd3f56fa9509904a169d06bee8d4154d40a774335ad158bc59693c6620d29093252ad120521302ff25b257bcc9aebbe12453f74659a5d65 + languageName: node + linkType: hard + +"parse5@npm:5.1.1, parse5@npm:^5.0.0, parse5@npm:^5.1.1": + version: 5.1.1 + resolution: "parse5@npm:5.1.1" + checksum: fad72ff5010ee8a6f0a38b83fc886b71a54d746d5c4ff5aad74d6ba1fe87b9606585bf32aa200b015ce329e0906f50f2851f29876abeacd5c13567c7a0455362 + languageName: node + linkType: hard + +"parse5@npm:^6.0.0": + version: 6.0.1 + resolution: "parse5@npm:6.0.1" + checksum: e312014edd76a6dc2eac35248ad53477b2594a7b92b7a00f66169483bb87c3d1d36660daddeb720457418dfe0893eb3ad1043085047fc3699167afa6834cb4c4 + languageName: node + linkType: hard + +"parseurl@npm:^1.3.2, parseurl@npm:~1.3.2, parseurl@npm:~1.3.3": + version: 1.3.3 + resolution: "parseurl@npm:1.3.3" + checksum: 52c9e86cb58e38b28f1a50a6354d16648974ab7a2b91b209f97102840471de8adf524427774af6d5bc482fb7c0a6af6ba08ab37de9a1a7ae389ebe074015914b + languageName: node + linkType: hard + +"pascal-case@npm:3.1.1, pascal-case@npm:^3.1.1": + version: 3.1.1 + resolution: "pascal-case@npm:3.1.1" + dependencies: + no-case: ^3.0.3 + tslib: ^1.10.0 + checksum: 56f66aea7f8c06f3e8b9e70c48c3019dcd8c3e5f218be905b4aba84c5880baf58dcb517bbf1becac3628e17c09b6c3bd35428a9e519343e5f04e50dd0d17c5f5 + languageName: node + linkType: hard + +"pascalcase@npm:^0.1.1": + version: 0.1.1 + resolution: "pascalcase@npm:0.1.1" + checksum: 268a9dbf9cd934fcd0ba02733b7d6176834b13a608bbcd295550636b3c6371a6047875175b457e705b283e81ec171884c9cd86d1fd6c49f70f66fbc3783dc0c1 + languageName: node + linkType: hard + +"path-browserify@npm:0.0.1": + version: 0.0.1 + resolution: "path-browserify@npm:0.0.1" + checksum: b7be4bcc030b6cca2f2093d776af57d508a781afb7a72bb2214e93559a57d9265c23f5ded45ae74f25ffe1dfaed98281685f86e1210cd3b68b85a3a217c45922 + languageName: node + linkType: hard + +"path-case@npm:^3.0.3": + version: 3.0.3 + resolution: "path-case@npm:3.0.3" + dependencies: + dot-case: ^3.0.3 + tslib: ^1.10.0 + checksum: 61b82d59d44896924738cf76a0055c1bab48f78aaf5f7b58d40bc365663f2b3ed0e7b0190b244bf3ffa829b49f30f62e54d4e32a38d92759bb2601b933ef9895 + languageName: node + linkType: hard + +"path-dirname@npm:^1.0.0": + version: 1.0.2 + resolution: "path-dirname@npm:1.0.2" + checksum: 4af73745fd97680c95b356b88450cd4c21d6825d0580620331382a6c910b76b3ced4aa2c4ddc2953d938bd758906b3d3aa2f56a2f601ec52763ed2cbbfc0106b + languageName: node + linkType: hard + +"path-exists@npm:^2.0.0": + version: 2.1.0 + resolution: "path-exists@npm:2.1.0" + dependencies: + pinkie-promise: ^2.0.0 + checksum: 71664885c56b48b543b0ccf2fca9d06c022ad88b6431a8d7c32ad8cba94a8e457b31cfc0ceeee7417be31d8e59574b1cb4a4551cb1efffb91f64f74034daea3d + languageName: node + linkType: hard + +"path-exists@npm:^3.0.0": + version: 3.0.0 + resolution: "path-exists@npm:3.0.0" + checksum: 09683e92bafb5657838217cce04e4f2f0530c274bc357c995c3231461030566e9f322b9a8bcc1ea810996e250d9a293ca36dd78dbdd6bfbee42e85a94772d6d5 + languageName: node + linkType: hard + +"path-exists@npm:^4.0.0": + version: 4.0.0 + resolution: "path-exists@npm:4.0.0" + checksum: 6ab15000c5bea4f3e6e6b651983276e27ee42907ea29f5bd68f0d5c425c22f1664ab53c355099723f59b0bfd31aa52d29ea499e1843bf62543e045698f4c77b2 + languageName: node + linkType: hard + +"path-is-absolute@npm:^1.0.0": + version: 1.0.1 + resolution: "path-is-absolute@npm:1.0.1" + checksum: 907e1e3e6ac0aef6e65adffd75b3892191d76a5b94c5cf26b43667c4240531d11872ca6979c209b2e5e1609f7f579d02f64ba9936b48bb59d36cc529f0d965ed + languageName: node + linkType: hard + +"path-is-inside@npm:1.0.2, path-is-inside@npm:^1.0.2": + version: 1.0.2 + resolution: "path-is-inside@npm:1.0.2" + checksum: 9c1841199d18398ee5f6d79f57eaa57f8eb85743353ea97c6d933423f246f044575a10c1847c638c36440b050aef82665b9cb4fc60950866cd239f3d51835ef4 + languageName: node + linkType: hard + +"path-key@npm:^2.0.0, path-key@npm:^2.0.1": + version: 2.0.1 + resolution: "path-key@npm:2.0.1" + checksum: 7dc807a2baa11d6bc0fca72148a0a0ca69ab73d98fbe42e10d22764d1ef547767f2b4ff827c6bc66e733388cd8d54297a45a39499825b9fdfd18959202384029 + languageName: node + linkType: hard + +"path-key@npm:^3.0.0, path-key@npm:^3.1.0": + version: 3.1.1 + resolution: "path-key@npm:3.1.1" + checksum: e44aa3ca9faed0440994883050143b1214fffb907bf3a7bbdba15dc84f60821617c0d84e4cc74e1d84e9274003da50427f54d739b0b47636bcbaff4ec71b9b86 + languageName: node + linkType: hard + +"path-parse@npm:^1.0.6": + version: 1.0.6 + resolution: "path-parse@npm:1.0.6" + checksum: 2eee4b93fb3ae13600e3fca18390d9933bbbcf725a624f6b8df020d87515a74872ff6c58072190d6dc75a5584a683dc6ae5c385ad4e4f4efb6e66af040d56c67 + languageName: node + linkType: hard + +"path-root-regex@npm:^0.1.0": + version: 0.1.2 + resolution: "path-root-regex@npm:0.1.2" + checksum: f301f42475743fd73ebc47019b0477f1006e427fd73f74a7b2dbca0e41c3cdab00d97d8fac45ba2f9f5f20741d4194e955a6326bac8d832f43fc765f474c9a7f + languageName: node + linkType: hard + +"path-root@npm:^0.1.1": + version: 0.1.1 + resolution: "path-root@npm:0.1.1" + dependencies: + path-root-regex: ^0.1.0 + checksum: ccf11d9c9bf9b895f422099021fcff2c5d300f3b032ef5df414fb993cd6968c0c5bab5bdd89e505266f0f156f66bc242a357636d1cbcd8a2cada71e56291269f + languageName: node + linkType: hard + +"path-to-regexp@npm:0.1.7": + version: 0.1.7 + resolution: "path-to-regexp@npm:0.1.7" + checksum: 342fdb0ca48415d6eccdbe6d4180fd0fa4786ccc96ab3f74fcdf7acfc99e075af25e6077c8086c341dcfb4f5f84401ecd21e6cd7b24e0c3b556fb7ffb2570da7 + languageName: node + linkType: hard + +"path-to-regexp@npm:2.2.1": + version: 2.2.1 + resolution: "path-to-regexp@npm:2.2.1" + checksum: 1f9be3a4100c23f845892406bcdfcf79d62044ce24c1c50dca28719123ce7d338ac584e98d21d23eef2702754925511812e768523e59916777ec1f444438d9a4 + languageName: node + linkType: hard + +"path-to-regexp@npm:^1.7.0": + version: 1.8.0 + resolution: "path-to-regexp@npm:1.8.0" + dependencies: + isarray: 0.0.1 + checksum: 4c0d9aaf3fc55db0b2d9aab379856acbf4e437f2252bbc2a178aec9f707c8457f8084ea6243a80e0b37c8c1c20d23e918cd43e772a7e71142a8ad67af699686b + languageName: node + linkType: hard + +"path-type@npm:^1.0.0": + version: 1.1.0 + resolution: "path-type@npm:1.1.0" + dependencies: + graceful-fs: ^4.1.2 + pify: ^2.0.0 + pinkie-promise: ^2.0.0 + checksum: c6ac7d4c7d613331ae1837a10c96a0f4fe76dc9273f98e37ce589c06b7ea6f811479ac735dbae06327d93cc6340d0cba944e9d38b0365b7b0bc0438f3fb242e0 + languageName: node + linkType: hard + +"path-type@npm:^2.0.0": + version: 2.0.0 + resolution: "path-type@npm:2.0.0" + dependencies: + pify: ^2.0.0 + checksum: d028f828dffe48a0062dc4370d5118a0c45f5fb075b013a1dfb13eadd1426eba0c8c2a13fa78f19fc4fd8771ef2012e9d062f8f970c8e56df36d4fbbe5073b26 + languageName: node + linkType: hard + +"path-type@npm:^3.0.0": + version: 3.0.0 + resolution: "path-type@npm:3.0.0" + dependencies: + pify: ^3.0.0 + checksum: db700bfc22254b38d0c8378440ec8b7b869f5d0b946d02abd281bcc6ea456a573167a8a80dd8280848998bb9739c2009f80bcf0dbf5c9d75ab18650e07fb893f + languageName: node + linkType: hard + +"path-type@npm:^4.0.0": + version: 4.0.0 + resolution: "path-type@npm:4.0.0" + checksum: ef5835f2eb47e4d06004c7ec7bd51175c0455eaecd5ee99a9774bca5ef43242616e25b44ccc0ba86a0bf42b9f197550fcc0dfa7580e5ff9dca53c035e9bd86a9 + languageName: node + linkType: hard + +"pbkdf2@npm:^3.0.3": + version: 3.1.1 + resolution: "pbkdf2@npm:3.1.1" + dependencies: + create-hash: ^1.1.2 + create-hmac: ^1.1.4 + ripemd160: ^2.0.1 + safe-buffer: ^5.0.1 + sha.js: ^2.4.8 + checksum: 780dd6d50e750d302651638ff1edfe899d3a345e702f6c36fbdbdef3cfefd12d3d76698565022f4cd97d3f8ced5098f4ae2fdd067d3e1fca2849a70eb60e7620 + languageName: node + linkType: hard + +"performance-now@npm:^2.1.0": + version: 2.1.0 + resolution: "performance-now@npm:2.1.0" + checksum: bb4ebed0b03d6c3ad3ae4eddd1182c895d385cff9096af441c19c130aaae3ea70229438ebc3297dfc52c86022f6becf177a810050823d01bf5280779cd2de624 + languageName: node + linkType: hard + +"pg-connection-string@npm:^2.2.2": + version: 2.3.0 + resolution: "pg-connection-string@npm:2.3.0" + checksum: 610d03707d0544af81900facd4b7ef2d7527ea9c016c091c292966d77b53ca56327a3e1fc9a527b94094df356cba1be3bc8de72903ef9c1cd9622d4469d91196 + languageName: node + linkType: hard + +"pg-int8@npm:1.0.1": + version: 1.0.1 + resolution: "pg-int8@npm:1.0.1" + checksum: b18c3a18e56a4f6de7c3c9df384a7ae47e7a3333ce1f36d324649116dfef4767ba01413993b12aa573ac44da1912d58cc6959eeb1c0f53a4ddb58861d1342a89 + languageName: node + linkType: hard + +"pg-pool@npm:^3.2.0": + version: 3.2.1 + resolution: "pg-pool@npm:3.2.1" + peerDependencies: + pg: ">=8.0" + checksum: 626e876971c7ef6d4f2b9e7cf858bda3ec30fd18761cc31e576d62451b7ad08ba5ea04916b49c13366a1fe11e652cabb01027e9504b68fe11b0113b8207d564e + languageName: node + linkType: hard + +"pg-protocol@npm:^1.2.2": + version: 1.2.5 + resolution: "pg-protocol@npm:1.2.5" + checksum: d61b446eebf2ed4a6c9f46f6b6e882ebb4dcfd2cd0d6b2b16954233cb41985f6cb0e61d18e816125d52734ceff5ab5ec1541e9402e07bea0131686742be97e5a + languageName: node + linkType: hard + +"pg-types@npm:^2.1.0": + version: 2.2.0 + resolution: "pg-types@npm:2.2.0" + dependencies: + pg-int8: 1.0.1 + postgres-array: ~2.0.0 + postgres-bytea: ~1.0.0 + postgres-date: ~1.0.4 + postgres-interval: ^1.1.0 + checksum: 3c36335465f058de7b075aab93b3db73ae651d6b0f618948aeb47fab74e064d4d9bd183cdaaf172ebcf9496999b2c6e83ae29048a84757eb30eab486aeb6723b + languageName: node + linkType: hard + +"pg@npm:8.1.0": + version: 8.1.0 + resolution: "pg@npm:8.1.0" + dependencies: + buffer-writer: 2.0.0 + packet-reader: 1.0.0 + pg-connection-string: ^2.2.2 + pg-pool: ^3.2.0 + pg-protocol: ^1.2.2 + pg-types: ^2.1.0 + pgpass: 1.x + semver: 4.3.2 + checksum: a8a8bde05e8875db39aac87712c4ad00f931eb7d74ba16b3f5d83abc1bcebca9ba17213306d46bfc56cd43b67d2231c416c6dfcf71d3d21dab2ee3c76181b2c6 + languageName: node + linkType: hard + +"pgpass@npm:1.x": + version: 1.0.2 + resolution: "pgpass@npm:1.0.2" + dependencies: + split: ^1.0.0 + checksum: a3cdfddbae177c862c72c492a614e0d4197b0c580b80c11e16cc69969cc3f2b31299a77c1d9b6296ae8a6d673f162e05007cc2de878973ea7cee86bb7164cb18 + languageName: node + linkType: hard + +"picomatch@npm:^2.0.4, picomatch@npm:^2.0.5, picomatch@npm:^2.2.1": + version: 2.2.2 + resolution: "picomatch@npm:2.2.2" + checksum: 20fa75e0a58b39d83425b3db68744d5f6f361fd4fd66ec7745d884036d502abba0d553a637703af79939b844164b13e60eea339ccb043d7fbd74c3da2592b864 + languageName: node + linkType: hard + +"pify@npm:^2.0.0, pify@npm:^2.3.0": + version: 2.3.0 + resolution: "pify@npm:2.3.0" + checksum: d5758aa570bbd5969c62b5f745065006827ef4859b32af302e3df2bb5978e6c1e50c2360d7ffefa102e451084f4530115c84570c185ba5153ee9871c977fe278 + languageName: node + linkType: hard + +"pify@npm:^3.0.0": + version: 3.0.0 + resolution: "pify@npm:3.0.0" + checksum: 18af2b29148c4d6fd4c7741dbd953ff76beea17d1b4a6d5792d7ff1d7202f43671c3f29313aa5ec01a66d050dbdbb0cf23f17de69531da8dc8bda42d327cf960 + languageName: node + linkType: hard + +"pify@npm:^4.0.1": + version: 4.0.1 + resolution: "pify@npm:4.0.1" + checksum: 786486a8c94a7e1980ea56c59dcc05ebf0793740b71df9b9f273e48032e6301c5ecc5cc237c5a9ff45b13db27678b4d71aa37a2777bc11473c1310718b648e98 + languageName: node + linkType: hard + +"pinkie-promise@npm:^2.0.0": + version: 2.0.1 + resolution: "pinkie-promise@npm:2.0.1" + dependencies: + pinkie: ^2.0.0 + checksum: 1e32e05ffdfb691b04a42d05d5452698853099efe1bab70bfa538e9a793e609b66cc59180cc5fc2158062a2fc5991c9c268a82b2b655247aa005020167e31d75 + languageName: node + linkType: hard + +"pinkie@npm:^2.0.0": + version: 2.0.4 + resolution: "pinkie@npm:2.0.4" + checksum: 2cb484c9da47b2f420fddffe7cbfeac950106a848343d147c2b2668d12b71aa3d09297bfe37ec32539a27c6dc7db414414f5ee166d6b2ca0d95f6dfe9dde60d7 + languageName: node + linkType: hard + +"pirates@npm:^4.0.1": + version: 4.0.1 + resolution: "pirates@npm:4.0.1" + dependencies: + node-modules-regexp: ^1.0.0 + checksum: 21604008c36ab6e14ac458e1a267dd7322cfd36b9e1042e9e277dd064582717e30b9aba8c0a47d738bf004ee7946ed27f6b982d30968534f2c6b5b168a52b555 + languageName: node + linkType: hard + +"pkg-dir@npm:^1.0.0": + version: 1.0.0 + resolution: "pkg-dir@npm:1.0.0" + dependencies: + find-up: ^1.0.0 + checksum: bde536bc8f27a677514cd63de9eeb0af09666820699a7bded5aa51789a016991cb72a835612442201a4ba6f4a9646ea524c6e14507ef2ecdb8553f99dd7ec622 + languageName: node + linkType: hard + +"pkg-dir@npm:^2.0.0": + version: 2.0.0 + resolution: "pkg-dir@npm:2.0.0" + dependencies: + find-up: ^2.1.0 + checksum: f8ae3a151714c61283aeb24385b10355a238732fab822a560145c670c21350da2024f01918231222bcdfce53ec5d69056681be2c2cffe3f3a06e462b9ef2ac29 + languageName: node + linkType: hard + +"pkg-dir@npm:^3.0.0": + version: 3.0.0 + resolution: "pkg-dir@npm:3.0.0" + dependencies: + find-up: ^3.0.0 + checksum: f29a7d0134ded2c5fb71eb9439809a415d4b79bd4648581486361a83e0dcca392739603de268410c154f44c60449f3e0855bda65bfb3256f0726a88e91699d8f + languageName: node + linkType: hard + +"pkg-dir@npm:^4.1.0, pkg-dir@npm:^4.2.0": + version: 4.2.0 + resolution: "pkg-dir@npm:4.2.0" + dependencies: + find-up: ^4.0.0 + checksum: 1956ebf3cf5cc36a5d20e93851fcadd5a786774eb08667078561e72e0ab8ace91fc36a028d5305f0bfe7c89f9bf51886e2a3c8cb2c2620accfa3feb8da3c256b + languageName: node + linkType: hard + +"pkg-up@npm:3.1.0, pkg-up@npm:^3.1.0": + version: 3.1.0 + resolution: "pkg-up@npm:3.1.0" + dependencies: + find-up: ^3.0.0 + checksum: df82763250b5283c175918f9410f9651afc1750f951249b31c7c49a6918d9faf13a9ef11e9355cbb0d4d5039a5c9d4c7162755b3e6c26235d2e3baea086e4a54 + languageName: node + linkType: hard + +"please-upgrade-node@npm:^3.2.0": + version: 3.2.0 + resolution: "please-upgrade-node@npm:3.2.0" + dependencies: + semver-compare: ^1.0.0 + checksum: 34cf86f6d577877df5e9ced0bda57babd97bd2dc7e5965a67f990337f01ccd5203a98dc5aa7971e10088b2b1b29628d51d9770996151c7d306ed0069b4ecd745 + languageName: node + linkType: hard + +"pn@npm:^1.1.0": + version: 1.1.0 + resolution: "pn@npm:1.1.0" + checksum: 7df19be13c86dfab22e8484590480e49d496b270430a731be0bb40cea8a16c29e45188a7303d7c57b7140754f807877b0c10aa95400ad30a7ad4fb3f7d132381 + languageName: node + linkType: hard + +"pnp-webpack-plugin@npm:1.6.4, pnp-webpack-plugin@npm:^1.6.4": + version: 1.6.4 + resolution: "pnp-webpack-plugin@npm:1.6.4" + dependencies: + ts-pnp: ^1.1.6 + checksum: 39a484182f8fc08cb1420d4a5ccf16457c6498a4546bfbad9e00df7238ba7d98796e9aa6f82a4e803a627860409ffed491a55c5a1384e09bed60cefeb618586d + languageName: node + linkType: hard + +"popper.js@npm:1.16.1-lts": + version: 1.16.1-lts + resolution: "popper.js@npm:1.16.1-lts" + checksum: 93704853f7e737e3f34cf16d72556a28ccdb041f9046e1f205566d1577132c871a7f0168cb77d8b9a3854f280b03722485231666555f149ae4330beddde70a7b + languageName: node + linkType: hard + +"popper.js@npm:^1.16.1-lts": + version: 1.16.1 + resolution: "popper.js@npm:1.16.1" + checksum: eb53806fb7680e31c7d1db096f95438a40a7cb869f7ee0e27100c0860f11583a0d322606c6073618e7fe8865f834ec36482901b547256d9a0cf2b22434bca75d + languageName: node + linkType: hard + +"portfinder@npm:^1.0.25, portfinder@npm:^1.0.26": + version: 1.0.28 + resolution: "portfinder@npm:1.0.28" + dependencies: + async: ^2.6.2 + debug: ^3.1.1 + mkdirp: ^0.5.5 + checksum: 906dc51482ef9336a812df0b2960119e4464c7d14b69e489bf88bbeea317175a5700712688e953b9b2a2a2de0dc28824f0cb01206c56dd8350f3798e212b5bb8 + languageName: node + linkType: hard + +"posix-character-classes@npm:^0.1.0": + version: 0.1.1 + resolution: "posix-character-classes@npm:0.1.1" + checksum: 984f83c2d4dec5abb9a6ac2b4a184132a58c4af9ce25704bfda2be6e8139335673c45d959ef6ffea3756dc88d3a0cb27c745a84d875ae5142b76e661a37a5f0e + languageName: node + linkType: hard + +"postcss-attribute-case-insensitive@npm:^4.0.1": + version: 4.0.2 + resolution: "postcss-attribute-case-insensitive@npm:4.0.2" + dependencies: + postcss: ^7.0.2 + postcss-selector-parser: ^6.0.2 + checksum: 0de786320f06795664431b32ed65bb29aa895140b75504e95d5e94ff89b713fba365bf319ac82a02958c70b923a778a64e4f07d5444a953fc0f1ced544fbcae5 + languageName: node + linkType: hard + +"postcss-browser-comments@npm:^3.0.0": + version: 3.0.0 + resolution: "postcss-browser-comments@npm:3.0.0" + dependencies: + postcss: ^7 + peerDependencies: + browserslist: ^4 + checksum: 5b15cad45c572ebd1a2abad087f8bd577749dc1edbab6c6f83cc7d8c3e95a8c113798258f4bde4713c304802cdf263a67d3e96a668f37854624650c1a3ec7f3a + languageName: node + linkType: hard + +"postcss-calc@npm:^7.0.1": + version: 7.0.3 + resolution: "postcss-calc@npm:7.0.3" + dependencies: + postcss: ^7.0.27 + postcss-selector-parser: ^6.0.2 + postcss-value-parser: ^4.0.2 + checksum: c2e2f4473c8da6800fb8680893468154973c8f8f6cbc6da837baf4c80ec978ca9c42a8035ebb4a2094bf9e543c9c7a9139bd31c743d9145ca7300334fac60004 + languageName: node + linkType: hard + +"postcss-color-functional-notation@npm:^2.0.1": + version: 2.0.1 + resolution: "postcss-color-functional-notation@npm:2.0.1" + dependencies: + postcss: ^7.0.2 + postcss-values-parser: ^2.0.0 + checksum: 8f83bde47bc0d7d1b97ed1c8b93892698b26735b8dcd9bcac8322e362d544af39c85eea28a7d3a37ce16daaec793ae2b6c01da41541675d67fd83bded691b6bd + languageName: node + linkType: hard + +"postcss-color-gray@npm:^5.0.0": + version: 5.0.0 + resolution: "postcss-color-gray@npm:5.0.0" + dependencies: + "@csstools/convert-colors": ^1.4.0 + postcss: ^7.0.5 + postcss-values-parser: ^2.0.0 + checksum: 99c885049caf46b0bf2fe46d4c43c3c5ddf137c3383adf0fe355e17ffee5321c519e962fdbf2b9d0276eb33109864375baca28032a08ce8dad82db629954a7e8 + languageName: node + linkType: hard + +"postcss-color-hex-alpha@npm:^5.0.3": + version: 5.0.3 + resolution: "postcss-color-hex-alpha@npm:5.0.3" + dependencies: + postcss: ^7.0.14 + postcss-values-parser: ^2.0.1 + checksum: 99e8a9457ce0aa090a4d7e5227bae484a845ff706875d9acbf0304a8f4d669a440d2edead50cd9096df516eae7fa603f4b61e35d33989f2b3ced4f2e8bea6113 + languageName: node + linkType: hard + +"postcss-color-mod-function@npm:^3.0.3": + version: 3.0.3 + resolution: "postcss-color-mod-function@npm:3.0.3" + dependencies: + "@csstools/convert-colors": ^1.4.0 + postcss: ^7.0.2 + postcss-values-parser: ^2.0.0 + checksum: dd484df73c5623bd8cb27d9f465b858f7334ec739e3914fe000b823130c269af105caec81fc0b3280b377954b91ee6606769ebde78833bf9b0b786574baad75e + languageName: node + linkType: hard + +"postcss-color-rebeccapurple@npm:^4.0.1": + version: 4.0.1 + resolution: "postcss-color-rebeccapurple@npm:4.0.1" + dependencies: + postcss: ^7.0.2 + postcss-values-parser: ^2.0.0 + checksum: a6fcc16f2a89ecd5a8258a4d24122e49a58b63bb657fcfaef73c36bd27d766c28a36c895667901afcfaa283def229042306245fab11ea81e29d3d7016684e1a8 + languageName: node + linkType: hard + +"postcss-colormin@npm:^4.0.3": + version: 4.0.3 + resolution: "postcss-colormin@npm:4.0.3" + dependencies: + browserslist: ^4.0.0 + color: ^3.0.0 + has: ^1.0.0 + postcss: ^7.0.0 + postcss-value-parser: ^3.0.0 + checksum: c2632c38a64e2f76b41eb58d97193c77ab71a3d206e8453377019ed8f42c9e94be1b9df66b1e86d44e5af1e2892e7f0316c1d039c83519065eec3824aac78d17 + languageName: node + linkType: hard + +"postcss-convert-values@npm:^4.0.1": + version: 4.0.1 + resolution: "postcss-convert-values@npm:4.0.1" + dependencies: + postcss: ^7.0.0 + postcss-value-parser: ^3.0.0 + checksum: 8fc4a78787642d67faebbce5f80c3e1c2ec49ab57e52f6702079f6dd57caa2c7e1bf1472a8499e548b7c6b078bc6dab664580444d81ce723caf80f4b5240237a + languageName: node + linkType: hard + +"postcss-custom-media@npm:^7.0.8": + version: 7.0.8 + resolution: "postcss-custom-media@npm:7.0.8" + dependencies: + postcss: ^7.0.14 + checksum: f0ac879d17f61225f1e086854720a63a2950d59f115ac66ed440873b69cc7b20f3941bf4667954bd8aa311ec959a98b8044a69c4674364e9bb9452097357b606 + languageName: node + linkType: hard + +"postcss-custom-properties@npm:^8.0.11": + version: 8.0.11 + resolution: "postcss-custom-properties@npm:8.0.11" + dependencies: + postcss: ^7.0.17 + postcss-values-parser: ^2.0.1 + checksum: 2d3c11d4c9d29e80428e2a0f64dacb6f144e97c57a2175f6971588657f07726954414c493a60ba09043fe67be23cc2ebf3ef8b56d93d4d945a49ed9807d1366f + languageName: node + linkType: hard + +"postcss-custom-selectors@npm:^5.1.2": + version: 5.1.2 + resolution: "postcss-custom-selectors@npm:5.1.2" + dependencies: + postcss: ^7.0.2 + postcss-selector-parser: ^5.0.0-rc.3 + checksum: 7d0d5f7751e54b40726d51196ba5569d18488d25ef7b1837ec26d5f32909d3cb4850edd527d70d1a141b7d81aeeed87ca00037f01e318b43fde92e72bb9fa141 + languageName: node + linkType: hard + +"postcss-dir-pseudo-class@npm:^5.0.0": + version: 5.0.0 + resolution: "postcss-dir-pseudo-class@npm:5.0.0" + dependencies: + postcss: ^7.0.2 + postcss-selector-parser: ^5.0.0-rc.3 + checksum: fc4f686058e7e973df5699d59e4532b8c124fbd6a4a1f9f40a92fa4d599b8212e336915f540b556278c696a0cc67d06cddfca0b5bdbd527e761c88c9d97f68b4 + languageName: node + linkType: hard + +"postcss-discard-comments@npm:^4.0.2": + version: 4.0.2 + resolution: "postcss-discard-comments@npm:4.0.2" + dependencies: + postcss: ^7.0.0 + checksum: 7b357a3a4bbb2601ec0c659ed389de4334e185cfebbd991bed4c69d83905ec49b5a988d4b4ee1ea8db5b6f8b66b93f8590c16cf5c22f7efe5bde2ed1cad4ccce + languageName: node + linkType: hard + +"postcss-discard-duplicates@npm:^4.0.2": + version: 4.0.2 + resolution: "postcss-discard-duplicates@npm:4.0.2" + dependencies: + postcss: ^7.0.0 + checksum: 128342e2b913f0dd6f844519049dfb9a7fd82e0680e28d8e8111314af2137fe6b6d8af3503e775b8df56727d18a1dfc76cdb9944c615bf00cecacbde915e199f + languageName: node + linkType: hard + +"postcss-discard-empty@npm:^4.0.1": + version: 4.0.1 + resolution: "postcss-discard-empty@npm:4.0.1" + dependencies: + postcss: ^7.0.0 + checksum: f06a00331cef0ba05362060642b3661fff63a1a02803984ce071e3af71061ee40083953021ae0665e6c650193f25b9155dca8c94cfe78a4d1b667a5e2d3e738d + languageName: node + linkType: hard + +"postcss-discard-overridden@npm:^4.0.1": + version: 4.0.1 + resolution: "postcss-discard-overridden@npm:4.0.1" + dependencies: + postcss: ^7.0.0 + checksum: be24bca265926d22af134ed3ede7a2a27d65e32c5e5ebe3b83603e84599fc2b5587e3e0344c01e4e660f9f4072100ee6d1b56bacd0a6d428f2e0e0acd9bd4046 + languageName: node + linkType: hard + +"postcss-double-position-gradients@npm:^1.0.0": + version: 1.0.0 + resolution: "postcss-double-position-gradients@npm:1.0.0" + dependencies: + postcss: ^7.0.5 + postcss-values-parser: ^2.0.0 + checksum: 151194816535419a9f90f837bdc872ac5a3972e4d409b0c601fcd0fb069d4bdae51955a5b92f7192102c5b30d846f91d77e1182402df42de9ba5379dd228b6d9 + languageName: node + linkType: hard + +"postcss-env-function@npm:^2.0.2": + version: 2.0.2 + resolution: "postcss-env-function@npm:2.0.2" + dependencies: + postcss: ^7.0.2 + postcss-values-parser: ^2.0.0 + checksum: 1cba45f90af655de776ed51a3672995130e5c9c3eab59a8bfa062e4e8bedce03faf63900fd0da69f701a2ab4c4bcf61698535526bf8996ab16920a16c2186426 + languageName: node + linkType: hard + +"postcss-flexbugs-fixes@npm:4.1.0": + version: 4.1.0 + resolution: "postcss-flexbugs-fixes@npm:4.1.0" + dependencies: + postcss: ^7.0.0 + checksum: ac9583f1d84aa7e59df0b3c0055c5952f00f91cf07be6c62bfbfb1c966c7061e2afa0535ac45dbe80df3b56ba6202579393427348c67d7c9dfa08867091b375e + languageName: node + linkType: hard + +"postcss-focus-visible@npm:^4.0.0": + version: 4.0.0 + resolution: "postcss-focus-visible@npm:4.0.0" + dependencies: + postcss: ^7.0.2 + checksum: df9f0b029cd4770b5f7e803e9cd098a36dc8e06415adc735eb87da07d459e1704ce972f7db4e2674e9b01e45add3dd0689a8628b6784c7a22833576025ca9b60 + languageName: node + linkType: hard + +"postcss-focus-within@npm:^3.0.0": + version: 3.0.0 + resolution: "postcss-focus-within@npm:3.0.0" + dependencies: + postcss: ^7.0.2 + checksum: 9339299c411a3707309f1eb91919564be2f698c96920b3d93ab81ad6737318a30f2b383780682c173647b76392c11eba446746973e98213379f1f6ce4f522c88 + languageName: node + linkType: hard + +"postcss-font-variant@npm:^4.0.0": + version: 4.0.0 + resolution: "postcss-font-variant@npm:4.0.0" + dependencies: + postcss: ^7.0.2 + checksum: fe9f8f01240df7144c4395571724815e270989d1dfe969bcf1a86a7a07fb9fb26f1e1d6ab784f8ef4234dce91c40f4cb62a3865835240fcc2aad92b27f1aadf9 + languageName: node + linkType: hard + +"postcss-gap-properties@npm:^2.0.0": + version: 2.0.0 + resolution: "postcss-gap-properties@npm:2.0.0" + dependencies: + postcss: ^7.0.2 + checksum: fa8be8b253cd479f5e3c050796f6250c27e7cce69965535c694ad6093f21adcf83e90bbb4b63c472628d42d1089d43bf9aeac8df4b4d29709f78d4b49dc29fb2 + languageName: node + linkType: hard + +"postcss-image-set-function@npm:^3.0.1": + version: 3.0.1 + resolution: "postcss-image-set-function@npm:3.0.1" + dependencies: + postcss: ^7.0.2 + postcss-values-parser: ^2.0.0 + checksum: e5612a60755963cd8270c8d793fcc246ec02e2387d5e8faf8ee4e871b65aea3625ebf7d3382db826e8ed44b0922d3f53a9a3b317fe4187e837ae045d6721eb49 + languageName: node + linkType: hard + +"postcss-initial@npm:^3.0.0": + version: 3.0.2 + resolution: "postcss-initial@npm:3.0.2" + dependencies: + lodash.template: ^4.5.0 + postcss: ^7.0.2 + checksum: ec01ff4da60e616240bb7409ab4edd778fc94a1a310bc118125d495f6c4f4406ae323b2a83fd49e3e086bf3e270e4121776a9c7e0de7b84df0cc69a617535bfe + languageName: node + linkType: hard + +"postcss-lab-function@npm:^2.0.1": + version: 2.0.1 + resolution: "postcss-lab-function@npm:2.0.1" + dependencies: + "@csstools/convert-colors": ^1.4.0 + postcss: ^7.0.2 + postcss-values-parser: ^2.0.0 + checksum: 034195cfd91b0f817ccbb1dc2ed6d7c75134ceacaebb270ee7f5a78e110bc753af9e3235a58614b32961f6e8781151206ee8703221b5d75b3e2ccdff7f261dea + languageName: node + linkType: hard + +"postcss-load-config@npm:^2.0.0": + version: 2.1.0 + resolution: "postcss-load-config@npm:2.1.0" + dependencies: + cosmiconfig: ^5.0.0 + import-cwd: ^2.0.0 + checksum: 06db8cf48d442b30b1fd99807278a0845731ae28a9a68e9c13082e6ce04d47d2729cd99909448aa12ed8a5f1ba1a8b5f63542b8e453a3ce45a786e576cba06d8 + languageName: node + linkType: hard + +"postcss-loader@npm:3.0.0, postcss-loader@npm:^3.0.0": + version: 3.0.0 + resolution: "postcss-loader@npm:3.0.0" + dependencies: + loader-utils: ^1.1.0 + postcss: ^7.0.0 + postcss-load-config: ^2.0.0 + schema-utils: ^1.0.0 + checksum: 50b2d8892d9b2cc6d9c81990ffb839d1716d3f571fcac7bd0dd3208447a016ce5c776b5f7de9eeb575ee5f7329221d5e22c9d1e41d56eb76ed87ce4401f90d4f + languageName: node + linkType: hard + +"postcss-logical@npm:^3.0.0": + version: 3.0.0 + resolution: "postcss-logical@npm:3.0.0" + dependencies: + postcss: ^7.0.2 + checksum: fdd9f0519bf3a2cc283991b5f31b45f44eac4803af605f4dac4ccdb7379a4362a4f89b1c3303ad511c68d08ca005e32ffc58768aadd8a1f925dfda78c774a07d + languageName: node + linkType: hard + +"postcss-media-minmax@npm:^4.0.0": + version: 4.0.0 + resolution: "postcss-media-minmax@npm:4.0.0" + dependencies: + postcss: ^7.0.2 + checksum: 9b4953f4a5ec61c2d451b06a7e475515b128955404750270fdfd4d84ab3c2cf9a6573e33617d0036278855e04782d09623d2391f056b18dc87cc71f2df62c4b7 + languageName: node + linkType: hard + +"postcss-merge-longhand@npm:^4.0.11": + version: 4.0.11 + resolution: "postcss-merge-longhand@npm:4.0.11" + dependencies: + css-color-names: 0.0.4 + postcss: ^7.0.0 + postcss-value-parser: ^3.0.0 + stylehacks: ^4.0.0 + checksum: f6ae3d8f2b07d30de78b17d7f58828571bf161d1a1d99d9371a59e1f0b18f13b7b684b34bf2b4c0d5c28e2d0eb0901a57b8c69ad558660aa3c81b9af16702cf6 + languageName: node + linkType: hard + +"postcss-merge-rules@npm:^4.0.3": + version: 4.0.3 + resolution: "postcss-merge-rules@npm:4.0.3" + dependencies: + browserslist: ^4.0.0 + caniuse-api: ^3.0.0 + cssnano-util-same-parent: ^4.0.0 + postcss: ^7.0.0 + postcss-selector-parser: ^3.0.0 + vendors: ^1.0.0 + checksum: 18907817119fa00c5b016631c5e623d59061a0ae2a5e54069b19af0c09cde66ed11db8f585f33be0231f55a925beb13edc17b5336c3421050ce8e7d5708b27b9 + languageName: node + linkType: hard + +"postcss-minify-font-values@npm:^4.0.2": + version: 4.0.2 + resolution: "postcss-minify-font-values@npm:4.0.2" + dependencies: + postcss: ^7.0.0 + postcss-value-parser: ^3.0.0 + checksum: 9fc541821f5235f4ea38fdd2671bd1d624894375e044e3f4de3bb161217a4f1501da72f4485e130b8b750c0c6d32ba36cd82ec3d252a07943006b62308938a3c + languageName: node + linkType: hard + +"postcss-minify-gradients@npm:^4.0.2": + version: 4.0.2 + resolution: "postcss-minify-gradients@npm:4.0.2" + dependencies: + cssnano-util-get-arguments: ^4.0.0 + is-color-stop: ^1.0.0 + postcss: ^7.0.0 + postcss-value-parser: ^3.0.0 + checksum: 4c54f4fa49c8b7568b92c2e29bb15602e384837f95f278efb1792f3d650a2b7ff0a2115f62d90b18bc77b94f0bab9a9035ce1fb73953d6046e14e754ae8680af + languageName: node + linkType: hard + +"postcss-minify-params@npm:^4.0.2": + version: 4.0.2 + resolution: "postcss-minify-params@npm:4.0.2" + dependencies: + alphanum-sort: ^1.0.0 + browserslist: ^4.0.0 + cssnano-util-get-arguments: ^4.0.0 + postcss: ^7.0.0 + postcss-value-parser: ^3.0.0 + uniqs: ^2.0.0 + checksum: dbcb82b7b16fece458fa677d1a9da5f5b4984a1880ef51a50f554d31e1825c52e33b08357fef3a4077faa06e78cdc765dc8757482ca18703e72e2826694d4937 + languageName: node + linkType: hard + +"postcss-minify-selectors@npm:^4.0.2": + version: 4.0.2 + resolution: "postcss-minify-selectors@npm:4.0.2" + dependencies: + alphanum-sort: ^1.0.0 + has: ^1.0.0 + postcss: ^7.0.0 + postcss-selector-parser: ^3.0.0 + checksum: 8fde92b5561ceb5dfbede1000457a022b231634daccfec0afeda799aedf21cb0ab52e38dc4c16110aed557c4cbc91570f71c3d5f58de419fd662ccb0656cd43d + languageName: node + linkType: hard + +"postcss-modules-extract-imports@npm:^2.0.0": + version: 2.0.0 + resolution: "postcss-modules-extract-imports@npm:2.0.0" + dependencies: + postcss: ^7.0.5 + checksum: 82e59325814e133cfbef4a4237b68eba017c15a350dac938049cefa2d212b22037c54ec8adda7b6cc23c845ea9a47e0538caa3649f9f9ed527788826a1b17670 + languageName: node + linkType: hard + +"postcss-modules-local-by-default@npm:^3.0.2": + version: 3.0.3 + resolution: "postcss-modules-local-by-default@npm:3.0.3" + dependencies: + icss-utils: ^4.1.1 + postcss: ^7.0.32 + postcss-selector-parser: ^6.0.2 + postcss-value-parser: ^4.1.0 + checksum: 6d34b3b1dc38cba7a3c50ef1bf6f5a0573c638b92a74cf47a730b9e029ad0f1464a944470a4aa51fdaaa8e4c47fcbb52f167d2da0342778776cdd6bafe9b146e + languageName: node + linkType: hard + +"postcss-modules-scope@npm:^2.1.1, postcss-modules-scope@npm:^2.2.0": + version: 2.2.0 + resolution: "postcss-modules-scope@npm:2.2.0" + dependencies: + postcss: ^7.0.6 + postcss-selector-parser: ^6.0.0 + checksum: c560d3aa7b440917980e27bc284bcf1a4ffb0a401de2fb19e1b4b9912f5658e1511453b124d122d7021065e38bd287c0d77aed97ae9f919453655b58a2b91dd0 + languageName: node + linkType: hard + +"postcss-modules-values@npm:^3.0.0": + version: 3.0.0 + resolution: "postcss-modules-values@npm:3.0.0" + dependencies: + icss-utils: ^4.0.0 + postcss: ^7.0.6 + checksum: 01dc4ea51ecc12654b9e46773180d2cf731b69ad7abf5e4b9368b653dbbbc28aa3e1db31027b50d8d7534c0c206e684ae2edaaedb120220871559e43ebe81c9c + languageName: node + linkType: hard + +"postcss-nesting@npm:^7.0.0": + version: 7.0.1 + resolution: "postcss-nesting@npm:7.0.1" + dependencies: + postcss: ^7.0.2 + checksum: ffc3c12f831b83f3276be86d6cf4d7e897146cbd7d40c01765ff8b25bcc238e9503741a63acd157e8a54df588f8a5a6d46aa6c2c27ab242985503b4d2208ddab + languageName: node + linkType: hard + +"postcss-normalize-charset@npm:^4.0.1": + version: 4.0.1 + resolution: "postcss-normalize-charset@npm:4.0.1" + dependencies: + postcss: ^7.0.0 + checksum: 4e40b321c45c1d8428ac9e6d7bc63ca92be5d4f65747e9b2d34e8d59bcc42a6b1a6fa9f0781e45f29c8fa0221299a61dc8b2b2a7314653e9841c6512d7820e79 + languageName: node + linkType: hard + +"postcss-normalize-display-values@npm:^4.0.2": + version: 4.0.2 + resolution: "postcss-normalize-display-values@npm:4.0.2" + dependencies: + cssnano-util-get-match: ^4.0.0 + postcss: ^7.0.0 + postcss-value-parser: ^3.0.0 + checksum: 4bd5952f1c0a5cf2a731a84b1ce218f6d9df7d2304233449bb82aa7a54c5a150cbdcb4160297206b017dce03b170e7e1a5c85a75a470b878c85b3eeabf652626 + languageName: node + linkType: hard + +"postcss-normalize-positions@npm:^4.0.2": + version: 4.0.2 + resolution: "postcss-normalize-positions@npm:4.0.2" + dependencies: + cssnano-util-get-arguments: ^4.0.0 + has: ^1.0.0 + postcss: ^7.0.0 + postcss-value-parser: ^3.0.0 + checksum: 9d7d79703adeede66302169559603ef314b02acada5f9ff99748d54d6b91386ca0d39ffc0d13c203e8b09fe106ee55504aa5b693d9928766ba2487dd67e0c48d + languageName: node + linkType: hard + +"postcss-normalize-repeat-style@npm:^4.0.2": + version: 4.0.2 + resolution: "postcss-normalize-repeat-style@npm:4.0.2" + dependencies: + cssnano-util-get-arguments: ^4.0.0 + cssnano-util-get-match: ^4.0.0 + postcss: ^7.0.0 + postcss-value-parser: ^3.0.0 + checksum: dcb89339fd8e2411e0f14dec0b22976459b1ad8ced45d5e0a7cc9f8b4ce2a0562dc92f850192c089387541bc931d9cc7cac105cc85f6e5918b80c27669e3f68d + languageName: node + linkType: hard + +"postcss-normalize-string@npm:^4.0.2": + version: 4.0.2 + resolution: "postcss-normalize-string@npm:4.0.2" + dependencies: + has: ^1.0.0 + postcss: ^7.0.0 + postcss-value-parser: ^3.0.0 + checksum: 91116aa9c6c85b3b2ba09f85e31c1e23650e4204ce8936dfd3b46585d7c69e19b6359aa87415ad8b6041a87b7b218cd2c732e5a7b7b5be754e95a41ad6439696 + languageName: node + linkType: hard + +"postcss-normalize-timing-functions@npm:^4.0.2": + version: 4.0.2 + resolution: "postcss-normalize-timing-functions@npm:4.0.2" + dependencies: + cssnano-util-get-match: ^4.0.0 + postcss: ^7.0.0 + postcss-value-parser: ^3.0.0 + checksum: 92bca529aacd9cc0189cf809a2de77d3f4d035ceea6c63365cb6247516ab6cc6525b826a1288c8d77ed1ed21f2f24eb052dd570fb38e95f89e95d2c0eefa82b7 + languageName: node + linkType: hard + +"postcss-normalize-unicode@npm:^4.0.1": + version: 4.0.1 + resolution: "postcss-normalize-unicode@npm:4.0.1" + dependencies: + browserslist: ^4.0.0 + postcss: ^7.0.0 + postcss-value-parser: ^3.0.0 + checksum: 84714ba7c1d0d304d7227ddf53f754b3dde4f6f00d7d4456d925e504e986c1210786a1a4b59e1d127b4a8d1786a9def716f13868b5a622d078f7950404c69392 + languageName: node + linkType: hard + +"postcss-normalize-url@npm:^4.0.1": + version: 4.0.1 + resolution: "postcss-normalize-url@npm:4.0.1" + dependencies: + is-absolute-url: ^2.0.0 + normalize-url: ^3.0.0 + postcss: ^7.0.0 + postcss-value-parser: ^3.0.0 + checksum: 76d75e27e95a563a6f698c83bff4254d7bae916f48ff1b28b4750dc7f07b4fd67699fb3737bc0c9b077ed5ed676a19993597d4208c20d773fcbfa48b39cd9066 + languageName: node + linkType: hard + +"postcss-normalize-whitespace@npm:^4.0.2": + version: 4.0.2 + resolution: "postcss-normalize-whitespace@npm:4.0.2" + dependencies: + postcss: ^7.0.0 + postcss-value-parser: ^3.0.0 + checksum: 7093ca8313659807290f6b039e9064787e777002cf7c84f896667c2c9cf6d349c32b809153dcf5475145ae6a6c2d198a769681ec16321ca227db4b682a5f5344 + languageName: node + linkType: hard + +"postcss-normalize@npm:8.0.1": + version: 8.0.1 + resolution: "postcss-normalize@npm:8.0.1" + dependencies: + "@csstools/normalize.css": ^10.1.0 + browserslist: ^4.6.2 + postcss: ^7.0.17 + postcss-browser-comments: ^3.0.0 + sanitize.css: ^10.0.0 + checksum: befdfa1b1e48765a3849b761076cdec50ef83030402bc8f84e1bb4750e574677cd8ff316bf2bf78816aad8c41c405ba0ef938908788671daef98a1bddeeaea6e + languageName: node + linkType: hard + +"postcss-ordered-values@npm:^4.1.2": + version: 4.1.2 + resolution: "postcss-ordered-values@npm:4.1.2" + dependencies: + cssnano-util-get-arguments: ^4.0.0 + postcss: ^7.0.0 + postcss-value-parser: ^3.0.0 + checksum: 6f394641453559d51aecbd61301293b9a274cb5774c47de7488d559597354924c7b11ea66ec009b960d80f0945fc92fde33c3380463b039e8d00b8a0e57037ab + languageName: node + linkType: hard + +"postcss-overflow-shorthand@npm:^2.0.0": + version: 2.0.0 + resolution: "postcss-overflow-shorthand@npm:2.0.0" + dependencies: + postcss: ^7.0.2 + checksum: 4e47823ea03539ad6aefed9ccd5e6e47d364310af7ac38007cfe5ac3ae5bb3cbcfe92f6edc02b8be60f65af4b7f4f349f284df089836b2f463022708a0355b9a + languageName: node + linkType: hard + +"postcss-page-break@npm:^2.0.0": + version: 2.0.0 + resolution: "postcss-page-break@npm:2.0.0" + dependencies: + postcss: ^7.0.2 + checksum: 6e8fcbad5252bbb61df1c89ebaa43c5d8c15a73002bb3d93de4d2d1d805d47d90291dc9a7fc785ef7a82f563c7fd33c24761e5253326639402f875f25e161d65 + languageName: node + linkType: hard + +"postcss-place@npm:^4.0.1": + version: 4.0.1 + resolution: "postcss-place@npm:4.0.1" + dependencies: + postcss: ^7.0.2 + postcss-values-parser: ^2.0.0 + checksum: db35406cb7166d9883a8875897ec21fefe8b23e036b7ecd4dca9ed374e7deefecc983c9dacf60ccff20e0a5b8e11c6dee33216527f840943381a11aaaa41c453 + languageName: node + linkType: hard + +"postcss-preset-env@npm:6.7.0, postcss-preset-env@npm:^6.7.0": + version: 6.7.0 + resolution: "postcss-preset-env@npm:6.7.0" + 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 + checksum: 2867000f4da242b1b966b9fdb93962d6ba29943a99fee6809504469420a57b8021dbe468a4f0e188d0f6a0582894c312c45774d80fba730fb9da3c2d0acb81a7 + languageName: node + linkType: hard + +"postcss-pseudo-class-any-link@npm:^6.0.0": + version: 6.0.0 + resolution: "postcss-pseudo-class-any-link@npm:6.0.0" + dependencies: + postcss: ^7.0.2 + postcss-selector-parser: ^5.0.0-rc.3 + checksum: ee673573fb1c7f47788534599bf991bf33f364583432632d1d6f811fce0be081975e27850f51ec8c928fa6cb03998ab6c0af1a85d7627a384b7fe6da104dc23f + languageName: node + linkType: hard + +"postcss-reduce-initial@npm:^4.0.3": + version: 4.0.3 + resolution: "postcss-reduce-initial@npm:4.0.3" + dependencies: + browserslist: ^4.0.0 + caniuse-api: ^3.0.0 + has: ^1.0.0 + postcss: ^7.0.0 + checksum: ed276a820860d13cccd794954ed759af1e2278bfa2c863bb120ebd307404b2f8a1525e307b5ef9295d2b02ee72b1a8b31bfc2cf33d377ec0c7ca77d225298c3e + languageName: node + linkType: hard + +"postcss-reduce-transforms@npm:^4.0.2": + version: 4.0.2 + resolution: "postcss-reduce-transforms@npm:4.0.2" + dependencies: + cssnano-util-get-match: ^4.0.0 + has: ^1.0.0 + postcss: ^7.0.0 + postcss-value-parser: ^3.0.0 + checksum: 2bf993ff44b4e7b1c242955cf437d502447b93dcadfd812cecca0b4aa7ed8779b8c27c09a8c244b957aaef54ebdcd525a3f67b800a0c9a081775a31b245340ba + languageName: node + linkType: hard + +"postcss-replace-overflow-wrap@npm:^3.0.0": + version: 3.0.0 + resolution: "postcss-replace-overflow-wrap@npm:3.0.0" + dependencies: + postcss: ^7.0.2 + checksum: b9b6f604b80b81b62206a4aad0743ebdad3afbac0e1e906f9223573eb8e9eaf20cde7f7f55aa3e8fd2a7075a67386f85d74f04a029bb6ad8729463401239ac36 + languageName: node + linkType: hard + +"postcss-safe-parser@npm:4.0.1": + version: 4.0.1 + resolution: "postcss-safe-parser@npm:4.0.1" + dependencies: + postcss: ^7.0.0 + checksum: dd61696f1e83293b5430b72eeff4e6c85fa92baf06b4bb25cf7db1e72fcde21e22ecf94cc9e1316bb4515744515b302689f1e2e70f1df81e518ea41f2d727955 + languageName: node + linkType: hard + +"postcss-selector-matches@npm:^4.0.0": + version: 4.0.0 + resolution: "postcss-selector-matches@npm:4.0.0" + dependencies: + balanced-match: ^1.0.0 + postcss: ^7.0.2 + checksum: 8445f6453b60a94c657fc56c7673a46abbaa91ca270d97e53a8555ac0b9cc5ab75a9a88fa9163a5b0cbe9b0214d1578722f18c8bcab4d2c1ded5c8b6da6e5d53 + languageName: node + linkType: hard + +"postcss-selector-not@npm:^4.0.0": + version: 4.0.0 + resolution: "postcss-selector-not@npm:4.0.0" + dependencies: + balanced-match: ^1.0.0 + postcss: ^7.0.2 + checksum: 7b3139dbe441b20f3ce45bc0682829423ade9c63fc73baade595d521282ac8710a0b316082fa43561c3c2654bb6c1e17f2b8d350d04177696531c4335fe73508 + languageName: node + linkType: hard + +"postcss-selector-parser@npm:^3.0.0": + version: 3.1.2 + resolution: "postcss-selector-parser@npm:3.1.2" + dependencies: + dot-prop: ^5.2.0 + indexes-of: ^1.0.1 + uniq: ^1.0.1 + checksum: 021ffdeef1007d4ab24439fee8e2cba188681899eae8dbc882a0e860d2ff8392f232c87e3f69eadc0a3d630b897a9ceb9f49adbe30b954a23ed91e61d3ea248c + languageName: node + linkType: hard + +"postcss-selector-parser@npm:^5.0.0-rc.3, postcss-selector-parser@npm:^5.0.0-rc.4": + version: 5.0.0 + resolution: "postcss-selector-parser@npm:5.0.0" + dependencies: + cssesc: ^2.0.0 + indexes-of: ^1.0.1 + uniq: ^1.0.1 + checksum: eabe69f66f66c7469d7c1618821235d474c9f96d77d7247cb1d5e7481d0ad9b2f632bf5dd8a8a895f1a00df93b10b6c02a61e6f276406d61503ffb0bd67cf5cd + languageName: node + linkType: hard + +"postcss-selector-parser@npm:^6.0.0, postcss-selector-parser@npm:^6.0.2": + version: 6.0.2 + resolution: "postcss-selector-parser@npm:6.0.2" + dependencies: + cssesc: ^3.0.0 + indexes-of: ^1.0.1 + uniq: ^1.0.1 + checksum: 0c8bec00e966038572228df54782ef4eefcd76902e5fc3822e6ad8f144c097c48acd9d00376d95cbbd902bfc0ecdf078e3a42eaba2679e1e43b4f91660534121 + languageName: node + linkType: hard + +"postcss-svgo@npm:^4.0.2": + version: 4.0.2 + resolution: "postcss-svgo@npm:4.0.2" + dependencies: + is-svg: ^3.0.0 + postcss: ^7.0.0 + postcss-value-parser: ^3.0.0 + svgo: ^1.0.0 + checksum: a2a6e324fc1d15523aa6b70649a6afa1bc31f7457ffc3819601508424e35d0b1369463a84b4845d7218463198e1ee1db0234bd48766f925278c9f8272c731ece + languageName: node + linkType: hard + +"postcss-unique-selectors@npm:^4.0.1": + version: 4.0.1 + resolution: "postcss-unique-selectors@npm:4.0.1" + dependencies: + alphanum-sort: ^1.0.0 + postcss: ^7.0.0 + uniqs: ^2.0.0 + checksum: 1f1fdc108654b6d08e499b1b4227a8023f01376ca15f461fe5c62a07bc2b553e688ca2d7e60c7443ce372d09c8121d79a402272d6880785c8659067922622c2a + languageName: node + linkType: hard + +"postcss-value-parser@npm:^3.0.0": + version: 3.3.1 + resolution: "postcss-value-parser@npm:3.3.1" + checksum: 834603f6bd822846cc20b1f95e648dea67353eb506898cc5fb540b32e9a956c1030754b9503270eb00c61c3734409d7ec94fba2b4f0a89954bc855bad7e9267c + languageName: node + linkType: hard + +"postcss-value-parser@npm:^4.0.2, postcss-value-parser@npm:^4.1.0": + version: 4.1.0 + resolution: "postcss-value-parser@npm:4.1.0" + checksum: 70831403886859289f650550a38889857022c5bbe264fd5d39cfad5207b3e1d33422edc031c1a922f3ae29d0dff98837a8bf126c840374d2b0079e7d57cf7d71 + languageName: node + linkType: hard + +"postcss-values-parser@npm:^2.0.0, postcss-values-parser@npm:^2.0.1": + version: 2.0.1 + resolution: "postcss-values-parser@npm:2.0.1" + dependencies: + flatten: ^1.0.2 + indexes-of: ^1.0.1 + uniq: ^1.0.1 + checksum: dfc25618bed3ba74da9adb4df9535dc0edd03e4618fb6774d0327934970876f93f565071bce97faa96ef236da2ce43ec2efeae240fc2eedc0e764e379b3e9441 + languageName: node + linkType: hard + +"postcss@npm:7.0.21": + version: 7.0.21 + resolution: "postcss@npm:7.0.21" + dependencies: + chalk: ^2.4.2 + source-map: ^0.6.1 + supports-color: ^6.1.0 + checksum: 1c8617c2209480ddf3a460d668e69e3228035add75d7d7588c4122d11c7ae58d8b41e5c7a130c1969f2150c2a5bf5f78c5dcf146bb1bbfaf1ab1163ea7df4cf0 + languageName: node + linkType: hard + +"postcss@npm:^7, postcss@npm:^7.0.0, postcss@npm:^7.0.1, postcss@npm:^7.0.14, postcss@npm:^7.0.17, postcss@npm:^7.0.2, postcss@npm:^7.0.23, postcss@npm:^7.0.27, postcss@npm:^7.0.32, postcss@npm:^7.0.5, postcss@npm:^7.0.6": + version: 7.0.32 + resolution: "postcss@npm:7.0.32" + dependencies: + chalk: ^2.4.2 + source-map: ^0.6.1 + supports-color: ^6.1.0 + checksum: 340f4f6ca6bd37961927f68bf7e38d071a7cba0468240cbba64ccf78012b2acbec974491284cb200e438dd3e655314e6d9508562523cbf9a49d5b00fd7e769fa + languageName: node + linkType: hard + +"postgres-array@npm:~2.0.0": + version: 2.0.0 + resolution: "postgres-array@npm:2.0.0" + checksum: 99fd702c5c2bd44c55dac48935b321e564c0363cd9ec53f59e8df2c0141644055beb0d18d69007706a4d082c8557c2e5d03e9ccfeb6d455c98e75f35fe3ead94 + languageName: node + linkType: hard + +"postgres-bytea@npm:~1.0.0": + version: 1.0.0 + resolution: "postgres-bytea@npm:1.0.0" + checksum: a3399e064521b039dfc23338423c687cbdbf422d9a0e92bb92fd19b6a5dbbab7847cc4a6e16d2a59f186096ec5e6bf7e9e4328b5d906b40e16f0d18794b4e29e + languageName: node + linkType: hard + +"postgres-date@npm:~1.0.4": + version: 1.0.6 + resolution: "postgres-date@npm:1.0.6" + checksum: 441a47cc6edf39cb8b97d83630898d55f940ccf9d9a261c4ff89daa9af0aca4b0358b1f2c852a843bbfa41dfb55fce6f6cb99448937635c8d4f5b415409d310e + languageName: node + linkType: hard + +"postgres-interval@npm:^1.1.0": + version: 1.2.0 + resolution: "postgres-interval@npm:1.2.0" + dependencies: + xtend: ^4.0.0 + checksum: a882aae6c34a85ac6054d9c950d36bf2455cada769598c2eaf28326a45a722f23b8ba8b96efde939f38a663d5fc51ff93241afedf186ac9e9f9cf0af177370a1 + languageName: node + linkType: hard + +"prelude-ls@npm:^1.2.1": + version: 1.2.1 + resolution: "prelude-ls@npm:1.2.1" + checksum: bc1649f521e8928cde0e1b349b224de2e6f00b71361a4a44f2e4a615342b6e1ae30366c32d26412dabe74d999a40f79c0ae044ae6b17cf19af935e74d12ea4fa + languageName: node + linkType: hard + +"prelude-ls@npm:~1.1.2": + version: 1.1.2 + resolution: "prelude-ls@npm:1.1.2" + checksum: 189c969c92151b0de7a6e5d2ae0c4e50bbec5675cdd9fee3b7509d9d74b6416787ee36a8c12a07e8afb01454a8185b695b3395912484fa118e071fea45223b9b + languageName: node + linkType: hard + +"prepend-http@npm:^1.0.0": + version: 1.0.4 + resolution: "prepend-http@npm:1.0.4" + checksum: f723f34a23394b568a9ff0cd502bdda244b343c03b12a259343566eab1184cf41a6c7e9975d9e6010ccb2901b7c428d296e56a67a72d0a6ecb0f13531a3fa44e + languageName: node + linkType: hard + +"prepend-http@npm:^2.0.0": + version: 2.0.0 + resolution: "prepend-http@npm:2.0.0" + checksum: d39325775adce38e18213fd19656af4abd7672ef6b1e330437079bb237de011d49a70bfb56b35037603d30ef279cceddb33794f70168582d50845c2ade29968e + languageName: node + linkType: hard + +"prettier-linter-helpers@npm:^1.0.0": + version: 1.0.0 + resolution: "prettier-linter-helpers@npm:1.0.0" + dependencies: + fast-diff: ^1.1.2 + checksum: 6d698b9c8dc28e52c8d69df520cde3410cc06cc40471acf81b4b7c18ca08e73d0efb0f878654985bb02fce4f8d3d64cdf64fe9f3ffad3e1dc7e17b837d4ddcb2 + languageName: node + linkType: hard + +"prettier@npm:2.0.5": + version: 2.0.5 + resolution: "prettier@npm:2.0.5" + bin: + prettier: bin-prettier.js + checksum: d249d89361870a29b20e8b268cb09e908490b8c9e21f70393d12a213701f29ba7e95b7f9ce0ad63929c16ce475176742481911737ae3da4a498873e4a3b90990 + languageName: node + linkType: hard + +"pretty-bytes@npm:^5.1.0": + version: 5.3.0 + resolution: "pretty-bytes@npm:5.3.0" + checksum: ecc6b1670f7ebcf6c78b91edad97ffdc0be58283ff5fa6c95c99c6bda48d2aa1858367fae8eccce35bc36eb90ec3cbcc24b9d7e29fd6ad98cc52d53d2e307789 + languageName: node + linkType: hard + +"pretty-error@npm:^2.1.1": + version: 2.1.1 + resolution: "pretty-error@npm:2.1.1" + dependencies: + renderkid: ^2.0.1 + utila: ~0.4 + checksum: dc2a92f59888eac1bd3861b439944ab50c46fcc957c3147126270f1e9e06c7bbacde1ab23ab2fc73c8f3a1961094db0878ec8a569f1d5606343a0ada7899cfc4 + languageName: node + linkType: hard + +"pretty-format@npm:^24.9.0": + version: 24.9.0 + resolution: "pretty-format@npm:24.9.0" + dependencies: + "@jest/types": ^24.9.0 + ansi-regex: ^4.0.0 + ansi-styles: ^3.2.0 + react-is: ^16.8.4 + checksum: a61c5c21a638239ebdc9bfe259746dc1aca29555f8da997318031ebee3ea36662f60f329132365c0cace2a0d122a1f7f9550261b3f04aaa18029d16efc5b45fe + languageName: node + linkType: hard + +"pretty-format@npm:^25.2.1, pretty-format@npm:^25.5.0": + version: 25.5.0 + resolution: "pretty-format@npm:25.5.0" + dependencies: + "@jest/types": ^25.5.0 + ansi-regex: ^5.0.0 + ansi-styles: ^4.0.0 + react-is: ^16.12.0 + checksum: f7cc631d51e22c809d429d20facfd886ba0b212d419d153467872f68688256c2c55563bf70e943b7347ec9180b41a1d19c4235dc171850f9d5382a52959c0245 + languageName: node + linkType: hard + +"pretty-format@npm:^26.2.0": + version: 26.2.0 + resolution: "pretty-format@npm:26.2.0" + dependencies: + "@jest/types": ^26.2.0 + ansi-regex: ^5.0.0 + ansi-styles: ^4.0.0 + react-is: ^16.12.0 + checksum: b75917fbcf69ef3365f26a8e942e33b155d919a15b12b00954c45fdb6103c02d8436b9293d3be85d2adb98d0e56bb265cabf3b247ca11c156de2088cfc7c579b + languageName: node + linkType: hard + +"pretty-time@npm:^1.1.0": + version: 1.1.0 + resolution: "pretty-time@npm:1.1.0" + checksum: 1467cfb88f0478c277dd4b47419d536f92e417ce17da927390145f9e69ba3ac5c36e54b2a5244538c64e3ed8d299c604117c3018b3a15772c5d030030adbdef6 + languageName: node + linkType: hard + +"prism-react-renderer@npm:^1.1.0": + version: 1.1.1 + resolution: "prism-react-renderer@npm:1.1.1" + peerDependencies: + react: ">=0.14.9" + checksum: f3996b4fb45a620d806501b8b8c411e9084e779ef58986f45e988cc46759ae7dc9e27bd2a29dc7bff7cb9561d4ead8c8c66eeaba34bdbe65504dce66f718ee06 + languageName: node + linkType: hard + +"prismjs@npm:^1.20.0": + version: 1.21.0 + resolution: "prismjs@npm:1.21.0" + dependencies: + clipboard: ^2.0.0 + dependenciesMeta: + clipboard: + optional: true + checksum: 27f763abe2b8e93ad18b64b0d08ce990cbe5c80244c80d121d9010b0a890f2ae12286d59155b9669a89007a1868e861a0ad62051a8f602a6da79b9cebe68b65a + languageName: node + linkType: hard + +"process-nextick-args@npm:~2.0.0": + version: 2.0.1 + resolution: "process-nextick-args@npm:2.0.1" + checksum: ddeb0f07d0d5efa649c2c5e39d1afd0e3668df2b392d036c8a508b0034f7beffbc474b3c2f7fd3fed2dc4113cef8f1f7e00d05690df3c611b36f6c7efd7852d1 + languageName: node + linkType: hard + +"process@npm:^0.11.10": + version: 0.11.10 + resolution: "process@npm:0.11.10" + checksum: ed93a85e9185b40fb01788c588a87c1a9da0eb925ef7cebebbe1b8bbf0eba1802130366603a29e3b689c116969d4fe018de6aed3474bbeb5aefb3716b85d6449 + languageName: node + linkType: hard + +"progress@npm:^2.0.0, progress@npm:^2.0.3": + version: 2.0.3 + resolution: "progress@npm:2.0.3" + checksum: c46ef5a1de4d527dfd32fe56a7df0c1c8b420a4c02617196813bf7f10ac7c2a929afc265d44fdd68f5c439a7e7cb3d70d569716c82d6b4148ec72089860a1312 + languageName: node + linkType: hard + +"promise-inflight@npm:^1.0.1": + version: 1.0.1 + resolution: "promise-inflight@npm:1.0.1" + checksum: c06bce0fc60b1c7979f291e489b9017db9c15f872d5cef0dfbb2b56694e9db574bc5c28f332a7033cdbd3a1d6417c5a1ee03889743638f0241e82e5a6b9c277f + languageName: node + linkType: hard + +"promise-retry@npm:^1.1.1": + version: 1.1.1 + resolution: "promise-retry@npm:1.1.1" + dependencies: + err-code: ^1.0.0 + retry: ^0.10.0 + checksum: a2ed89ee42c0e0c6ba4f15d312b3eeb3a24993a7ef7af537b9abdd685702900bed89df64b7d77197fbfae0911c76d1098604c0c1e3be5375f5c515b54aab1cb3 + languageName: node + linkType: hard + +"promise@npm:^7.1.1": + version: 7.3.1 + resolution: "promise@npm:7.3.1" + dependencies: + asap: ~2.0.3 + checksum: 23267a4b078fcb02c57b06ca1a1d5739109deb0932c0fd79615a2c5636dd0571ac6a161f19c4ea9683a4ab89791da13112678fa410b65334de490e97c33410ae + languageName: node + linkType: hard + +"promise@npm:^8.0.3": + version: 8.1.0 + resolution: "promise@npm:8.1.0" + dependencies: + asap: ~2.0.6 + checksum: ec94008d8a673c276dbc7722c215f583026b8d2588fb83f40e69908c553801eac7fbe3034c9bca853d5c422af20826abdfb9391b982a888868d9c88281dc59fb + languageName: node + linkType: hard + +"prompts@npm:^2.0.1": + version: 2.3.2 + resolution: "prompts@npm:2.3.2" + dependencies: + kleur: ^3.0.3 + sisteransi: ^1.0.4 + checksum: a910ba767eb61bfba15d8ef602fb50eb3f99809790e078941833c59f549557f1edd6dcdf8c749568379c2f2babe930bd3b87755fea639ad516fa1a1974e0fe7b + languageName: node + linkType: hard + +"promzard@npm:^0.3.0": + version: 0.3.0 + resolution: "promzard@npm:0.3.0" + dependencies: + read: 1 + checksum: d907a0a7804a67a7abd80c4808cefb5d20999fef08ec148801f2bdef820e632ac3da964d408cb5adec2de7481f26265f5924d0813af23f5fa745afbbf3962dcc + languageName: node + linkType: hard + +"prop-types@npm:^15.5.0, prop-types@npm:^15.6.0, prop-types@npm:^15.6.2, prop-types@npm:^15.7.2": + version: 15.7.2 + resolution: "prop-types@npm:15.7.2" + dependencies: + loose-envify: ^1.4.0 + object-assign: ^4.1.1 + react-is: ^16.8.1 + checksum: a440dd406c5cf53bf39f3e898d2c65178511d34ca3c8c789b30c177992408b9e4273969726b274719aa69ccce5ab34b2fd8caa60b90f23cd2e910cdcf682de52 + languageName: node + linkType: hard + +"property-information@npm:^5.0.0, property-information@npm:^5.3.0": + version: 5.5.0 + resolution: "property-information@npm:5.5.0" + dependencies: + xtend: ^4.0.0 + checksum: b87b54a0e36dae1a7d3c6b8414351956368daace4a8bd5635f80eb869f96bfe168beff3db5594de6fdfcc7c8d6c6253f88788c512a9af56284d1e9c96416a9c7 + languageName: node + linkType: hard + +"proto-list@npm:~1.2.1": + version: 1.2.4 + resolution: "proto-list@npm:1.2.4" + checksum: e722a11c66837cab0d5b81dd3f18717b73ea068fad0ceaf71d856e82167699c632201d0a1793ea48c997f1ac8544e9af89debc5cbd389b639370bc1adfb3abb4 + languageName: node + linkType: hard + +"protocols@npm:^1.1.0, protocols@npm:^1.4.0": + version: 1.4.8 + resolution: "protocols@npm:1.4.8" + checksum: 7d3189138ec5f1dc00d01d215a0c79fb6d47a6f7e2bf9c7efb94580f1ecef227560c9f85d56f2135b762810faa150065e4d5c3ad82bf7b2f1cb4d427182021bc + languageName: node + linkType: hard + +"protoduck@npm:^5.0.1": + version: 5.0.1 + resolution: "protoduck@npm:5.0.1" + dependencies: + genfun: ^5.0.0 + checksum: 457d23035d5199f63f93c2d98ece54a9b4fb77c04360a41b84b93f119740ae75a587b5a6e8760bbc150ae0e72f1e26bac6926ea7cea39293f3633f7dd1d19984 + languageName: node + linkType: hard + +"proxy-addr@npm:~2.0.5": + version: 2.0.6 + resolution: "proxy-addr@npm:2.0.6" + dependencies: + forwarded: ~0.1.2 + ipaddr.js: 1.9.1 + checksum: a7dcfd70258cdc3b73c5dc4a35c73db9857f3bf4cf5e6404380e8ea558f8c5569147e721a01195d00b450e36b4dde727fc9d22fdea14310ba38faa595530cd58 + languageName: node + linkType: hard + +"prr@npm:~1.0.1": + version: 1.0.1 + resolution: "prr@npm:1.0.1" + checksum: ac5c0986b46390140b920b8e7f6b56e769a00620af02b6bbdfc6658e8a36b876569c8f174a7c209843f5b9af3d13cbf847c2a9dded4d965b01afbfa5ea8d0761 + languageName: node + linkType: hard + +"psl@npm:^1.1.28": + version: 1.8.0 + resolution: "psl@npm:1.8.0" + checksum: 92d47c6257456878bfa8190d76b84de69bcefdc129eeee3f9fe204c15fd08d35fe5b8627033f39b455e40a9375a1474b25ff4ab2c5448dd8c8f75da692d0f5b4 + languageName: node + linkType: hard + +"pstree.remy@npm:^1.1.7": + version: 1.1.8 + resolution: "pstree.remy@npm:1.1.8" + checksum: 44bad8f697d546234a7ea253c672e8120be2572f153aff77c5b73f751164e4b49c923c535fe2bfc530d6041a7b879bc108818d88653673161c2c8678b4cdb3fc + languageName: node + linkType: hard + +"public-encrypt@npm:^4.0.0": + version: 4.0.3 + resolution: "public-encrypt@npm:4.0.3" + dependencies: + bn.js: ^4.1.0 + browserify-rsa: ^4.0.0 + create-hash: ^1.1.0 + parse-asn1: ^5.0.0 + randombytes: ^2.0.1 + safe-buffer: ^5.1.2 + checksum: 85b1be24b589d3ec4e39c2cc8542d6bf914e04d60278bd1ca0b4c36c678971b9f43303288c90e80cdd82ef20f2ec1fcd2726c8f093ba88187779acd82559b208 + languageName: node + linkType: hard + +"pump@npm:^2.0.0": + version: 2.0.1 + resolution: "pump@npm:2.0.1" + dependencies: + end-of-stream: ^1.1.0 + once: ^1.3.1 + checksum: 25c657a8f65bb7a8c3c9f806bd282c70a71b4ce41fab66800519fc0ed6b9ab05304569c2d0a1a5711bf39216392c4a583930c582e8fc760391f9f7b2fc6fe14e + languageName: node + linkType: hard + +"pump@npm:^3.0.0": + version: 3.0.0 + resolution: "pump@npm:3.0.0" + dependencies: + end-of-stream: ^1.1.0 + once: ^1.3.1 + checksum: 5464d5cf6c6f083cc60cb45b074fb9a4a92ba4d3e0d89e9b2fa1906d8151fd3766784a426725ccf1af50d1c29963ac20b13829933549830e08a6704e3f95e08c + languageName: node + linkType: hard + +"pumpify@npm:^1.3.3": + version: 1.5.1 + resolution: "pumpify@npm:1.5.1" + dependencies: + duplexify: ^3.6.0 + inherits: ^2.0.3 + pump: ^2.0.0 + checksum: c143607284efa8b91baf8e199e90a6560cf599bdb7928686d1f33d3d8bbf71f3bc8c673ed6747ed36b8771982376faa0d5dafc0580eb433c73a825031016aa77 + languageName: node + linkType: hard + +"punycode@npm:1.3.2": + version: 1.3.2 + resolution: "punycode@npm:1.3.2" + checksum: e67fddacd83b918ca2f4a47b1fd13858108779cdc2a3f2db3233ff82a25f9305d46e1d9891f7b9ad21ed36454adfc675d4559621fcffed2cf2067abd04e121cd + languageName: node + linkType: hard + +"punycode@npm:^1.2.4, punycode@npm:^1.3.2": + version: 1.4.1 + resolution: "punycode@npm:1.4.1" + checksum: 5ce1e044cee2b12f1c65ccd523d7e71d6578f2c77f5c21c2e7a9d588535559c9508571d42638c131dab93cbe9a7b37bce1a7475d43fc8236c99dfe1efc36cfa5 + languageName: node + linkType: hard + +"punycode@npm:^2.1.0, punycode@npm:^2.1.1": + version: 2.1.1 + resolution: "punycode@npm:2.1.1" + checksum: 0202dc191cb35bfd88870ac99a1e824b03486d4cee20b543ef337a6dee8d8b11017da32a3e4c40b69b19976e982c030b62bd72bba42884acb691bc5ef91354c8 + languageName: node + linkType: hard + +"pupa@npm:^2.0.1": + version: 2.0.1 + resolution: "pupa@npm:2.0.1" + dependencies: + escape-goat: ^2.0.0 + checksum: d03edb9fd7d707e54618711896ab4a96c80fcfb380e413a9130157dc08a3553bf62fa7c7407edbba57095d4ba993df6de4f28a56dd5eca93b5dccbe1fc4a82db + languageName: node + linkType: hard + +"q@npm:^1.1.2, q@npm:^1.5.1": + version: 1.5.1 + resolution: "q@npm:1.5.1" + checksum: f610c1295a4f1b334affbe5333bc8c6160b907d011a62f1c6d05d4ca985535ea271fd8684e1e655b4659cc5b71f5be9ac4ccc84482d869b5a0576955598a7dca + languageName: node + linkType: hard + +"qr.js@npm:0.0.0": + version: 0.0.0 + resolution: "qr.js@npm:0.0.0" + checksum: 83e1d6140ec8781d0def39a70d7ef9e7a7ff455697d8e078b86aeeb773dd33fd5235d4f94710b871fc3cfdefb806165503b8241cd4cd9b18a4b9b4160f48db43 + languageName: node + linkType: hard + +"qrcode.react@npm:1.0.0": + version: 1.0.0 + resolution: "qrcode.react@npm:1.0.0" + dependencies: + loose-envify: ^1.4.0 + prop-types: ^15.6.0 + qr.js: 0.0.0 + peerDependencies: + react: ^15.5.3 || ^16.0.0 + checksum: cb0d10f126d3080a6e640f46075aff567ade4c39ed5b74ece13361227f04fda8c3237090fff81d9bfbdfc5f5b60220d763a44b1cc6c7cc35b406ad08c6fcafed + languageName: node + linkType: hard + +"qs@npm:6.7.0": + version: 6.7.0 + resolution: "qs@npm:6.7.0" + checksum: 8590470436ff0a75ae35e6b45fd7260e2beb537ff8ec1104f9703a349b09ce1aa27e8e1c06b9ad25ac62fc098e12cc65df93042a233128a0276ccd6de4c7819a + languageName: node + linkType: hard + +"qs@npm:~6.5.2": + version: 6.5.2 + resolution: "qs@npm:6.5.2" + checksum: fa0410eff2c05ce3328e11f82db4015e7819c986ee056d6b62b06ae112f4929af09ea3b879ca168ff9f0338f50972bba487ad0e46c879e42bfaf63c3c2ea7f09 + languageName: node + linkType: hard + +"query-string@npm:^4.1.0": + version: 4.3.4 + resolution: "query-string@npm:4.3.4" + dependencies: + object-assign: ^4.1.0 + strict-uri-encode: ^1.0.0 + checksum: fcdbc2e76024a3afd0c5ea3addda75311d5d10402ddb5a03542dec430d36dbc44c87a11765ffa952d53e0b96e187298929561b88cc196a828f8728d2a3545ab8 + languageName: node + linkType: hard + +"querystring-es3@npm:^0.2.0": + version: 0.2.1 + resolution: "querystring-es3@npm:0.2.1" + checksum: 3c388906aa5644e55cdbede78f99a4d05a6e36a45b06929ad8713a2020a5cefeb6ec23adaa27584d968cf658e5d237b5e216f5e48930d040cd6b810679714741 + languageName: node + linkType: hard + +"querystring@npm:0.2.0": + version: 0.2.0 + resolution: "querystring@npm:0.2.0" + checksum: 1e76c51462f0ffb148e0b2fdeb811f61377800298605229d32efcdaaaf0a8fd4314a4b4405e1fbf130a5ca421c0e51f926fab5bb9f8b9b3b8c394f4e2d33d3d1 + languageName: node + linkType: hard + +"querystringify@npm:^2.1.1": + version: 2.1.1 + resolution: "querystringify@npm:2.1.1" + checksum: 35301cc744d5de15040a6bdb6b751ef127f65a82675c5f3a9139a4ce0d047ed8b61a459a93261cd7ae0becfa389edd3f02e8aec1c025ae3e7f0d06dc758baa98 + languageName: node + linkType: hard + +"quick-lru@npm:^1.0.0": + version: 1.1.0 + resolution: "quick-lru@npm:1.1.0" + checksum: b1e9e3561a5fa42df0ecacc53aa59e623f949f75ec9c70c7c7d0bec40beb070cad589a2c9f51ff625ab9d23503da0d3b829be9ec0bf743694ea6817d823c25ad + languageName: node + linkType: hard + +"quick-lru@npm:^4.0.1": + version: 4.0.1 + resolution: "quick-lru@npm:4.0.1" + checksum: 91847e4b07453655f73513b96a3b49e3bb8bf37de1ce2075d44e5dddb2f08050c5dc858d97884d61618bb44487945880b4b481fe93e94a3622b43036f8b94e11 + languageName: node + linkType: hard + +"raf@npm:^3.4.1": + version: 3.4.1 + resolution: "raf@npm:3.4.1" + dependencies: + performance-now: ^2.1.0 + checksum: 567b0160be46ed20b124a05ace6e653f4ad3c047c48d02ac76161e9ac624488c0fdf622b2f4fb9c35c0c828a13dfa549044ad1db89c7af075cb0f99403b88c4b + languageName: node + linkType: hard + +"random-bytes@npm:~1.0.0": + version: 1.0.0 + resolution: "random-bytes@npm:1.0.0" + checksum: e60b4e1611b410b16dee4819040b19f787cce83e10f87518d0e0f807f2814b5f432d824740a79712903364ffc963c67ed1acbfb6d54201e9ab28fe80071617c9 + languageName: node + linkType: hard + +"randombytes@npm:^2.0.0, randombytes@npm:^2.0.1, randombytes@npm:^2.0.5, randombytes@npm:^2.1.0": + version: 2.1.0 + resolution: "randombytes@npm:2.1.0" + dependencies: + safe-buffer: ^5.1.0 + checksum: ede2693af09732ceab1c273dd70db787f34a7b8d95bab13f1aca763483c0113452a78e53d61ff18d393dcea586d388e01f198a5132a4a85cebba31ec54164b75 + languageName: node + linkType: hard + +"randomfill@npm:^1.0.3": + version: 1.0.4 + resolution: "randomfill@npm:1.0.4" + dependencies: + randombytes: ^2.0.5 + safe-buffer: ^5.1.0 + checksum: 24658ce99e0a325f27d157fbff9b111f9fa2f56876031ac9a09bcd6c5ae53d3c3f1b124d7e1b813803ee1b09e50dd1561ac7f7a8ba2930319cbcda5e827602ab + languageName: node + linkType: hard + +"range-parser@npm:1.2.0": + version: 1.2.0 + resolution: "range-parser@npm:1.2.0" + checksum: 8260023192a5def4c6db4ced82e6546306937f1202417b846f2e8b565426e71697086f509a070f66fd23a57e9f96aba108f08d16d4be23d418c8c68a73b539bd + languageName: node + linkType: hard + +"range-parser@npm:^1.2.1, range-parser@npm:~1.2.1": + version: 1.2.1 + resolution: "range-parser@npm:1.2.1" + checksum: 05074f5b23dbdc24acdae9821dd684fbc9c0d770cdaa4469ab529d8e0fc1338aa33561a4c7c14a1f9bdcb3b5e9a3770e5a80318258a72289a7ef05fcda72a707 + languageName: node + linkType: hard + +"raw-body@npm:2.4.0": + version: 2.4.0 + resolution: "raw-body@npm:2.4.0" + dependencies: + bytes: 3.1.0 + http-errors: 1.7.2 + iconv-lite: 0.4.24 + unpipe: 1.0.0 + checksum: 46dc02f8b4f358786d41e18fb55533fbe4702d390e22bbe2b9c98c88dec41cab23ea2315f3ae0bf4bc0213a2872c89943d3df6857f4e21f996ea9d2d92f1bcaa + languageName: node + linkType: hard + +"rc@npm:^1.2.8": + version: 1.2.8 + resolution: "rc@npm:1.2.8" + dependencies: + deep-extend: ^0.6.0 + ini: ~1.3.0 + minimist: ^1.2.0 + strip-json-comments: ~2.0.1 + bin: + rc: ./cli.js + checksum: ea2b7f7cee201a67923a2240de594a5d9b59bd312b814b06536d3d609a416dfd6fb9b85ea2abfd3b8a4eb5ed33eaff946ee75a8f2b7fb10941073c5cfee6b7a5 + languageName: node + linkType: hard + +"react-app-polyfill@npm:^1.0.6": + version: 1.0.6 + resolution: "react-app-polyfill@npm:1.0.6" + dependencies: + core-js: ^3.5.0 + object-assign: ^4.1.1 + promise: ^8.0.3 + raf: ^3.4.1 + regenerator-runtime: ^0.13.3 + whatwg-fetch: ^3.0.0 + checksum: 94d24bf1d69a0cbb26d8adbb14ba600b29c7c5adc06c9f9c8337d0f8ee7358ee2c443d806f8ca96fdf002d7f37c1a5fae6a796f63164df44a4fc3996aeb2d71f + languageName: node + linkType: hard + +"react-dev-utils@npm:^10.2.1": + version: 10.2.1 + resolution: "react-dev-utils@npm:10.2.1" + dependencies: + "@babel/code-frame": 7.8.3 + address: 1.1.2 + browserslist: 4.10.0 + chalk: 2.4.2 + cross-spawn: 7.0.1 + detect-port-alt: 1.1.6 + escape-string-regexp: 2.0.0 + filesize: 6.0.1 + find-up: 4.1.0 + fork-ts-checker-webpack-plugin: 3.1.1 + global-modules: 2.0.0 + globby: 8.0.2 + gzip-size: 5.1.1 + immer: 1.10.0 + inquirer: 7.0.4 + is-root: 2.1.0 + loader-utils: 1.2.3 + open: ^7.0.2 + pkg-up: 3.1.0 + react-error-overlay: ^6.0.7 + recursive-readdir: 2.2.2 + shell-quote: 1.7.2 + strip-ansi: 6.0.0 + text-table: 0.2.0 + checksum: 658b918e96b6c17d369f7ae9b67694c1cf6a90ee7a10ffd3b3a06263ddea053faeface6e45961c8336f58f375ebac5ad3766dabc525d10882dd94466fc36e7eb + languageName: node + linkType: hard + +"react-dom@npm:16.13.1": + version: 16.13.1 + resolution: "react-dom@npm:16.13.1" + dependencies: + loose-envify: ^1.1.0 + object-assign: ^4.1.1 + prop-types: ^15.6.2 + scheduler: ^0.19.1 + peerDependencies: + react: ^16.13.1 + checksum: fb5c3ad41360c6a8674f33916aa895d05e79d063d31a6963074220c1cda9e07e880799d01670b4ebd570b4d3457584f13cc898b5033a05641e8e801f5611607e + languageName: node + linkType: hard + +"react-error-overlay@npm:^6.0.7": + version: 6.0.7 + resolution: "react-error-overlay@npm:6.0.7" + checksum: 35533e193f9ca6dbb5cffe6c52b748dc68dbab0b9e54cb5c12cd0d8fb48ee6dea67eb33d1a3e4483d0dc16664a22b3c4f7f86441daa6774d18501d1dbd0c8283 + languageName: node + linkType: hard + +"react-fast-compare@npm:^2.0.1": + version: 2.0.4 + resolution: "react-fast-compare@npm:2.0.4" + checksum: 4e4bfc3597414a36ee35977259012fff30c4f13a0e5dcabf958e91991bef8e9a3faee9dd666cfbdb0c2a0f0ddaf242ac2912054caa956a793c4cdff274dc5aec + languageName: node + linkType: hard + +"react-fast-compare@npm:^3.1.1": + version: 3.2.0 + resolution: "react-fast-compare@npm:3.2.0" + checksum: 6fe65c889eb4f326e97769135f97b3d63ac68737866f9c37f9625c9de4f5eaa9abed6f748eb3fd6a66808392118842916309cab7cfa99c67991f0c837433d6d2 + languageName: node + linkType: hard + +"react-helmet@npm:^6.0.0-beta": + version: 6.1.0 + resolution: "react-helmet@npm:6.1.0" + dependencies: + object-assign: ^4.1.1 + prop-types: ^15.7.2 + react-fast-compare: ^3.1.1 + react-side-effect: ^2.1.0 + peerDependencies: + react: ">=16.3.0" + checksum: 56fd795b0aecc89bac8d2733268751f0ef463bf6764090f8a801778741d4a6eaf135234cdaa50188bbda29c8e2d3ec43e9a42d1ec06b60092645c8754c7bad81 + languageName: node + linkType: hard + +"react-is@npm:^16.12.0, react-is@npm:^16.6.0, react-is@npm:^16.7.0, react-is@npm:^16.8.0, react-is@npm:^16.8.1, react-is@npm:^16.8.4": + version: 16.13.1 + resolution: "react-is@npm:16.13.1" + checksum: 11bcf1267a314a522615f626f3ce3727a3a24cdbf61c4d452add3550a7875326669631326cfb1ba3e92b6f72244c32ffecf93ad21c0cad8455d3e169d0e3f060 + languageName: node + linkType: hard + +"react-loadable-ssr-addon@npm:^0.2.3": + version: 0.2.3 + resolution: "react-loadable-ssr-addon@npm:0.2.3" + peerDependencies: + react-loadable: "*" + webpack: ">=4.41.1" + checksum: ae41b0538c4937a00185b847c84666e42b28954c99a795571fdbf2bb7f718f949a15c1cfa030af7012ba3481cebe1025d11c4018d6bd85c97cd2df53279cf4d8 + languageName: node + linkType: hard + +"react-loadable@npm:^5.5.0": + version: 5.5.0 + resolution: "react-loadable@npm:5.5.0" + dependencies: + prop-types: ^15.5.0 + peerDependencies: + react: "*" + checksum: fb14650fe86f20c2554e3645482ed67eb4ce0e46d72e06f91a7f57739e90b1b42c31e8597d7d415ee69bc16f85211bafec7b24ddadd7f3fe72c176f45931158d + languageName: node + linkType: hard + +"react-router-config@npm:^5.1.1": + version: 5.1.1 + resolution: "react-router-config@npm:5.1.1" + dependencies: + "@babel/runtime": ^7.1.2 + peerDependencies: + react: ">=15" + react-router: ">=5" + checksum: 2aca4e345dfcfa16fd166ce8f44119cdd1d9636bb501f44e4769b2f881f08e6ec0cbe75b5dc1739ca0076fa76b67cccc569821d35b99d7c7c6a55229c73b5958 + languageName: node + linkType: hard + +"react-router-dom@npm:5.1.2": + version: 5.1.2 + resolution: "react-router-dom@npm:5.1.2" + dependencies: + "@babel/runtime": ^7.1.2 + history: ^4.9.0 + loose-envify: ^1.3.1 + prop-types: ^15.6.2 + react-router: 5.1.2 + tiny-invariant: ^1.0.2 + tiny-warning: ^1.0.0 + peerDependencies: + react: ">=15" + checksum: d09e55a5d5605375f54cafd2679ffef3ff322818bcb520d52307aa5d2f6ec63cc19de99926c84c2faf52ea23aada1b6ac812ace9088ada3654ba0a7caa1219a3 + languageName: node + linkType: hard + +"react-router-dom@npm:5.2.0, react-router-dom@npm:^5.1.2": + version: 5.2.0 + resolution: "react-router-dom@npm:5.2.0" + dependencies: + "@babel/runtime": ^7.1.2 + history: ^4.9.0 + loose-envify: ^1.3.1 + prop-types: ^15.6.2 + react-router: 5.2.0 + tiny-invariant: ^1.0.2 + tiny-warning: ^1.0.0 + peerDependencies: + react: ">=15" + checksum: 9ad2d72630491f324a0f0c1dbcc3dc04d8d7cee7cb9dc9effd115fe736ba06104360a78a624170f863738d77e487d459864206a79d91d3c9663cf1dadb3b637f + languageName: node + linkType: hard + +"react-router@npm:5.1.2": + version: 5.1.2 + resolution: "react-router@npm:5.1.2" + dependencies: + "@babel/runtime": ^7.1.2 + history: ^4.9.0 + hoist-non-react-statics: ^3.1.0 + loose-envify: ^1.3.1 + mini-create-react-context: ^0.3.0 + path-to-regexp: ^1.7.0 + prop-types: ^15.6.2 + react-is: ^16.6.0 + tiny-invariant: ^1.0.2 + tiny-warning: ^1.0.0 + peerDependencies: + react: ">=15" + checksum: 534e43eaafd9519c0e2f3dc0996f738b9e81d6e5625681530f0804ac3268e507ef223b3a356e55286a694fee377cb4b831243aca5aa7a9f940d278a2b6641ca3 + languageName: node + linkType: hard + +"react-router@npm:5.2.0, react-router@npm:^5.1.2": + version: 5.2.0 + resolution: "react-router@npm:5.2.0" + dependencies: + "@babel/runtime": ^7.1.2 + history: ^4.9.0 + hoist-non-react-statics: ^3.1.0 + loose-envify: ^1.3.1 + mini-create-react-context: ^0.4.0 + path-to-regexp: ^1.7.0 + prop-types: ^15.6.2 + react-is: ^16.6.0 + tiny-invariant: ^1.0.2 + tiny-warning: ^1.0.0 + peerDependencies: + react: ">=15" + checksum: 4437eaa9bab02d46a7d6ea4915731c1f31642d6c3e3f7b9f951f5c6a9a73f35d4deb43a2d6b4be85f27816a20de96c3b9a9239f4b7e9136742106794ad20e95c + languageName: node + linkType: hard + +"react-scripts@npm:3.4.1": + version: 3.4.1 + resolution: "react-scripts@npm:3.4.1" + dependencies: + "@babel/core": 7.9.0 + "@svgr/webpack": 4.3.3 + "@typescript-eslint/eslint-plugin": ^2.10.0 + "@typescript-eslint/parser": ^2.10.0 + babel-eslint: 10.1.0 + babel-jest: ^24.9.0 + babel-loader: 8.1.0 + babel-plugin-named-asset-import: ^0.3.6 + babel-preset-react-app: ^9.1.2 + camelcase: ^5.3.1 + case-sensitive-paths-webpack-plugin: 2.3.0 + css-loader: 3.4.2 + dotenv: 8.2.0 + dotenv-expand: 5.1.0 + eslint: ^6.6.0 + eslint-config-react-app: ^5.2.1 + eslint-loader: 3.0.3 + eslint-plugin-flowtype: 4.6.0 + eslint-plugin-import: 2.20.1 + eslint-plugin-jsx-a11y: 6.2.3 + eslint-plugin-react: 7.19.0 + eslint-plugin-react-hooks: ^1.6.1 + file-loader: 4.3.0 + fs-extra: ^8.1.0 + fsevents: 2.1.2 + html-webpack-plugin: 4.0.0-beta.11 + identity-obj-proxy: 3.0.0 + jest: 24.9.0 + jest-environment-jsdom-fourteen: 1.0.1 + jest-resolve: 24.9.0 + jest-watch-typeahead: 0.4.2 + mini-css-extract-plugin: 0.9.0 + optimize-css-assets-webpack-plugin: 5.0.3 + pnp-webpack-plugin: 1.6.4 + postcss-flexbugs-fixes: 4.1.0 + postcss-loader: 3.0.0 + postcss-normalize: 8.0.1 + postcss-preset-env: 6.7.0 + postcss-safe-parser: 4.0.1 + react-app-polyfill: ^1.0.6 + react-dev-utils: ^10.2.1 + resolve: 1.15.0 + resolve-url-loader: 3.1.1 + sass-loader: 8.0.2 + semver: 6.3.0 + style-loader: 0.23.1 + terser-webpack-plugin: 2.3.5 + ts-pnp: 1.1.6 + url-loader: 2.3.0 + webpack: 4.42.0 + webpack-dev-server: 3.10.3 + webpack-manifest-plugin: 2.2.0 + workbox-webpack-plugin: 4.3.1 + peerDependencies: + typescript: ^3.2.1 + dependenciesMeta: + fsevents: + optional: true + peerDependenciesMeta: + typescript: + optional: true + bin: + react-scripts: ./bin/react-scripts.js + checksum: 417fc7cfb3c7b632f8286e02febf2301ae4a4bc25299a9ef8662c777dcaef8de9d7f2320cd7491bf796674fa1de7d86fdb9e9a2852266167e19085dd78b15f79 + languageName: node + linkType: hard + +"react-side-effect@npm:^2.1.0": + version: 2.1.0 + resolution: "react-side-effect@npm:2.1.0" + peerDependencies: + react: ^16.3.0 + checksum: 643a9898953776783515df3510a438f262f6dff059c3f880b7bbc180957cd0f9a0c4d7b3ae72c347d0f7c56bbd16466e850c5d9e213abad024df3b6c3a430564 + languageName: node + linkType: hard + +"react-toggle@npm:^4.1.1": + version: 4.1.1 + resolution: "react-toggle@npm:4.1.1" + dependencies: + classnames: ^2.2.5 + peerDependencies: + prop-types: ^15.3.0 || ^16.0.0 + react: ^15.3.0 || ^16.0.0 + react-dom: ^15.3.0 || ^16.0.0 + checksum: 311291a755f0a9dfca24b96711e3cb8d1996b200b3ea5f96a1f96248a52620f820842406574282db7555ea7f2573accbfbadcbaf969314ba2744474322e81cc9 + languageName: node + linkType: hard + +"react-transition-group@npm:^4.3.0, react-transition-group@npm:^4.4.0": + version: 4.4.1 + resolution: "react-transition-group@npm:4.4.1" + dependencies: + "@babel/runtime": ^7.5.5 + dom-helpers: ^5.0.1 + loose-envify: ^1.4.0 + prop-types: ^15.6.2 + peerDependencies: + react: ">=16.6.0" + react-dom: ">=16.6.0" + checksum: e14446123f820e804335c64be5270333c29e8cfaa43dfc33387e132c5d521cf4a0a7c2408058a147b254ae82a6569f373394d83e977ef340d6937bc2f4ff7d6c + languageName: node + linkType: hard + +"react@npm:16.13.1": + version: 16.13.1 + resolution: "react@npm:16.13.1" + dependencies: + loose-envify: ^1.1.0 + object-assign: ^4.1.1 + prop-types: ^15.6.2 + checksum: 13dcc9ba8a7521ecc3d7e69998dbc5703ae9515308d06a94a474ad34b42f1fc109372265e924a8c9b11d20fa1828407c290b8f61617c36734c4ca907ae7e5f45 + languageName: node + linkType: hard + +"read-cmd-shim@npm:^1.0.1": + version: 1.0.5 + resolution: "read-cmd-shim@npm:1.0.5" + dependencies: + graceful-fs: ^4.1.2 + checksum: f7dbfe21160ebd3c02d9a6c1dce60693c78b8f6576f30621b32ffbf8eb65852d2c227467d19a7ea685e7c71c8c55032daeb15aa90640b6940d4589a1e0438694 + languageName: node + linkType: hard + +"read-package-json@npm:1 || 2, read-package-json@npm:^2.0.0, read-package-json@npm:^2.0.13": + version: 2.1.1 + resolution: "read-package-json@npm:2.1.1" + dependencies: + glob: ^7.1.1 + graceful-fs: ^4.1.2 + json-parse-better-errors: ^1.0.1 + normalize-package-data: ^2.0.0 + npm-normalize-package-bin: ^1.0.0 + dependenciesMeta: + graceful-fs: + optional: true + checksum: 123b4e6a8f1880c9461a534de4aef75ee86b4814e93c207b716d2398a55aa47675f14895a8a91ae1b7536a83fd81982c41f96d8a1eacebaa590e8a2e2682be51 + languageName: node + linkType: hard + +"read-package-tree@npm:^5.1.6": + version: 5.3.1 + resolution: "read-package-tree@npm:5.3.1" + dependencies: + read-package-json: ^2.0.0 + readdir-scoped-modules: ^1.0.0 + util-promisify: ^2.1.0 + checksum: 122f219db372aaeef9cd647f8b7c9f9d48ea6751fc521d100d3820b00a51979627f2667abd9dd69d657d955275c7a7fd07699d3d349be87c6415a2c567341b07 + languageName: node + linkType: hard + +"read-pkg-up@npm:^1.0.1": + version: 1.0.1 + resolution: "read-pkg-up@npm:1.0.1" + dependencies: + find-up: ^1.0.0 + read-pkg: ^1.0.0 + checksum: 05a0d7fd655c650b11c86abfb5fc37d6ad2df7392965b3be09271414c30adadaaa37bb9f016b30f5972607d1e2d98626749f01ca602c75256ab8358394447aa7 + languageName: node + linkType: hard + +"read-pkg-up@npm:^2.0.0": + version: 2.0.0 + resolution: "read-pkg-up@npm:2.0.0" + dependencies: + find-up: ^2.0.0 + read-pkg: ^2.0.0 + checksum: f35e4cb4577b994fc9497886672c748de766ab034e24f029111b6bbbfe757b2e27b6d2b82a28a38f45d9d89ea8a9b1d3c04854e5f991d5deed48f4c9ff7baeb9 + languageName: node + linkType: hard + +"read-pkg-up@npm:^3.0.0": + version: 3.0.0 + resolution: "read-pkg-up@npm:3.0.0" + dependencies: + find-up: ^2.0.0 + read-pkg: ^3.0.0 + checksum: 3ef50bea6df7ee0153b41f2bd2dda66ccd1fd06117a312b940b4158801c5b3cd2e4d9e9e2a81486f3197412385d7b52f17f70012e35ddb1e30acd7b425e00e38 + languageName: node + linkType: hard + +"read-pkg-up@npm:^4.0.0": + version: 4.0.0 + resolution: "read-pkg-up@npm:4.0.0" + dependencies: + find-up: ^3.0.0 + read-pkg: ^3.0.0 + checksum: e611538e096723fa15f36960a293b26704145d646a3ddae6a206fa50ddba18f655b2901581ef06943758cebe8660bbf6b3b07bad645f2256cf2f775e64867ea5 + languageName: node + linkType: hard + +"read-pkg-up@npm:^7.0.1": + version: 7.0.1 + resolution: "read-pkg-up@npm:7.0.1" + dependencies: + find-up: ^4.1.0 + read-pkg: ^5.2.0 + type-fest: ^0.8.1 + checksum: b8f97cc1f8235ce752b10b7b6423b0460411b4a6046186de8980429bbad8709537a4d6fac6e35a97c8630d19bab29d9013644cc5296be2d5043db3e40094b0cc + languageName: node + linkType: hard + +"read-pkg@npm:^1.0.0": + version: 1.1.0 + resolution: "read-pkg@npm:1.1.0" + dependencies: + load-json-file: ^1.0.0 + normalize-package-data: ^2.3.2 + path-type: ^1.0.0 + checksum: 01fdadf10e5643baffe30c294d06d8cb6dab9724f2cff0cdccbadcfab74a0050c968a0faa7a1d5191fc89eb27ab9dbec1f90ff9ac489cb77b9c0f81c630720ec + languageName: node + linkType: hard + +"read-pkg@npm:^2.0.0": + version: 2.0.0 + resolution: "read-pkg@npm:2.0.0" + dependencies: + load-json-file: ^2.0.0 + normalize-package-data: ^2.3.2 + path-type: ^2.0.0 + checksum: ddf911317fba54abb447b1d76dd1785c37e1360f7b1e39d83201f6f3807572391ab7392f11727a9c4d90600ebc6616d22e72514d2291688c89ebd440148840b4 + languageName: node + linkType: hard + +"read-pkg@npm:^3.0.0": + version: 3.0.0 + resolution: "read-pkg@npm:3.0.0" + dependencies: + load-json-file: ^4.0.0 + normalize-package-data: ^2.3.2 + path-type: ^3.0.0 + checksum: 8cc577b41ddd70a0037d6c0414acfab8db3a25a30c7854decf3d613f1f4240c8a47e20fddbd82724e02d4eb5a0c489e2621b4a5bb3558e09ce81f53306d1b850 + languageName: node + linkType: hard + +"read-pkg@npm:^4.0.1": + version: 4.0.1 + resolution: "read-pkg@npm:4.0.1" + dependencies: + normalize-package-data: ^2.3.2 + parse-json: ^4.0.0 + pify: ^3.0.0 + checksum: cc1ed67240e0f8c51e11ab3dbe17041ceae75427925babf816812e437d0adfbe2c8449142a41feaed81a5c2572a986e27be2fa093dab8b3f2eb29951ca24f8d2 + languageName: node + linkType: hard + +"read-pkg@npm:^5.2.0": + version: 5.2.0 + resolution: "read-pkg@npm:5.2.0" + dependencies: + "@types/normalize-package-data": ^2.4.0 + normalize-package-data: ^2.5.0 + parse-json: ^5.0.0 + type-fest: ^0.6.0 + checksum: 641102f0955f64304f97ed388bfe3b7ce55d74b1ffe1be06be1ae75479ce4910aa7177460d1982af6963f80b293a25f25d593a52a4328d941fd9b7d89fde2dbf + languageName: node + linkType: hard + +"read@npm:1, read@npm:~1.0.1": + version: 1.0.7 + resolution: "read@npm:1.0.7" + dependencies: + mute-stream: ~0.0.4 + checksum: 78dd30f529452e53a3eab0fdab0e353b3732096ea398c3e3edb15d8ebefc3be6c8cfd509e03a79bdd8f028cd1e3f11eee47d643bd992599d8c1393b87233767d + languageName: node + linkType: hard + +"readable-stream@npm:1 || 2, readable-stream@npm:2 || 3, readable-stream@npm:^2.0.0, readable-stream@npm:^2.0.1, readable-stream@npm:^2.0.2, readable-stream@npm:^2.0.6, readable-stream@npm:^2.1.5, readable-stream@npm:^2.2.2, readable-stream@npm:^2.3.3, readable-stream@npm:^2.3.5, readable-stream@npm:^2.3.6, readable-stream@npm:~2.3.6": + version: 2.3.7 + resolution: "readable-stream@npm:2.3.7" + 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 + checksum: 6e3826560627a751feb3a8aec073ef94c6e47b8c8e06eb5d136323b5f09db9d2077c23a42a8d54ed0123695af54b36c1e4271a8ec55112b15f4b89020d8dec72 + languageName: node + linkType: hard + +"readable-stream@npm:^3.0.2, readable-stream@npm:^3.0.6, readable-stream@npm:^3.1.1, readable-stream@npm:^3.6.0": + version: 3.6.0 + resolution: "readable-stream@npm:3.6.0" + dependencies: + inherits: ^2.0.3 + string_decoder: ^1.1.1 + util-deprecate: ^1.0.1 + checksum: f178b1daa80d9e58ebba71dbb08486430aa6f0dea3a22a1b7401f3f6983077d0bc0edea43099db06b8d006c9ad48d6383e8fb72c05d5b187670aeaf1b9b44f00 + languageName: node + linkType: hard + +"readdir-scoped-modules@npm:^1.0.0": + version: 1.1.0 + resolution: "readdir-scoped-modules@npm:1.1.0" + dependencies: + debuglog: ^1.0.1 + dezalgo: ^1.0.0 + graceful-fs: ^4.1.2 + once: ^1.3.0 + checksum: 7e39782c059a38faf401e6ac7c56178b64f22c5d74208cf19ed8c1e2c92ce0d44a1604d24feb26247437a53f3e275af4ad74bfcc0a5d12d836339600d490080b + languageName: node + linkType: hard + +"readdirp@npm:^2.2.1": + version: 2.2.1 + resolution: "readdirp@npm:2.2.1" + dependencies: + graceful-fs: ^4.1.11 + micromatch: ^3.1.10 + readable-stream: ^2.0.2 + checksum: 00b5209ee5278ba6faa2fbcabb817e8f64a498ff7fee8cfd30634a04140e673375582812c67c59e25ee3ee9979687b1c832f33e1bbacd8ac3340bab0645b8374 + languageName: node + linkType: hard + +"readdirp@npm:~3.4.0": + version: 3.4.0 + resolution: "readdirp@npm:3.4.0" + dependencies: + picomatch: ^2.2.1 + checksum: 0159f43eb0a90cf4fde5989b607e0a6bef4e6332dc8648f1b50fbc013f1158e1d021bcfd6dad1dc2895da2bb14cdac408239d047e3d61a01dd3a44376e6ec1f1 + languageName: node + linkType: hard + +"reading-time@npm:^1.2.0": + version: 1.2.0 + resolution: "reading-time@npm:1.2.0" + checksum: 411ff81920c1c6841bd2542276a4ed5c529d2b0ab182cedf072eb768f1ac4acd3c50b6adc9572ac9540e6109bb9e5a004a553b510b15a70748f87047d2788ccf + languageName: node + linkType: hard + +"realpath-native@npm:^1.1.0": + version: 1.1.0 + resolution: "realpath-native@npm:1.1.0" + dependencies: + util.promisify: ^1.0.0 + checksum: 67ce6bdaf8f8dd2a85e771b7b79b74b8a47299315a0a3553947df1ab4117de80d1910a2ba856a480d9e4284172cf8d7df209117f5522475e30bb7ecdee63b75b + languageName: node + linkType: hard + +"rechoir@npm:^0.6.2": + version: 0.6.2 + resolution: "rechoir@npm:0.6.2" + dependencies: + resolve: ^1.1.6 + checksum: 6646a6bce733282d182bf04816b15d4e2d63736b3453cf62a8568aaa1399621a73b3942315161f549e090f9a3c61bc09f4cb674f928c369a40037621e10295bd + languageName: node + linkType: hard + +"recursive-readdir@npm:2.2.2": + version: 2.2.2 + resolution: "recursive-readdir@npm:2.2.2" + dependencies: + minimatch: 3.0.4 + checksum: 7ca5c180a8f1158171bd68ecb8b540e3c4e187de52a724eeea5383faece2b8ccae45f99e212d69ac7af574e1014d4963bfdf13fa124f18604aa9f47563e9f086 + languageName: node + linkType: hard + +"redent@npm:^1.0.0": + version: 1.0.0 + resolution: "redent@npm:1.0.0" + dependencies: + indent-string: ^2.1.0 + strip-indent: ^1.0.1 + checksum: 961d06c069c2a3932e9cde95822eceffa4d09ae01af33c123b0387d67bc976fd895b2012a3b8988c336b6f79cd17a8cc0a4a5f003b1e60cafad0d3b905111527 + languageName: node + linkType: hard + +"redent@npm:^2.0.0": + version: 2.0.0 + resolution: "redent@npm:2.0.0" + dependencies: + indent-string: ^3.0.0 + strip-indent: ^2.0.0 + checksum: 6ab188445205d271b23636716d394f983f183c44b12d922c4cd06a172d23c657c44f92d46691dcc6c8f6d5286904a444e16e61d10fc03e12f7f8280e50da9181 + languageName: node + linkType: hard + +"redent@npm:^3.0.0": + version: 3.0.0 + resolution: "redent@npm:3.0.0" + dependencies: + indent-string: ^4.0.0 + strip-indent: ^3.0.0 + checksum: 78c8aa0a1076f47e0e198bfc8a9aa7d4ae3163c6951bd5de1015e47661bba62ea36573337bbeb4b309b48cc71954edbe43ae4aa3163db1996a781b757c5c47d7 + languageName: node + linkType: hard + +"redis-commands@npm:1.6.0": + version: 1.6.0 + resolution: "redis-commands@npm:1.6.0" + checksum: 11ad01e57fab4927c7410817fcaaf71079d5b50ebb05f9b38ba5719b9461e7b78f7a3f1f8a6d352336a6af336ef4fdc9a21ff1abb5111890edb71d56634ff53f + languageName: node + linkType: hard + +"redis-errors@npm:^1.0.0, redis-errors@npm:^1.2.0": + version: 1.2.0 + resolution: "redis-errors@npm:1.2.0" + checksum: b260bb64a1c8523d32a56701681ac3e5cc6bb0a4eb09f1d30729ebba397021d274216ff189909c08fe3c6b706ec8b74948e20ea410b6f69d31b35bda3fb82a59 + languageName: node + linkType: hard + +"redis-parser@npm:^3.0.0": + version: 3.0.0 + resolution: "redis-parser@npm:3.0.0" + dependencies: + redis-errors: ^1.0.0 + checksum: 45dbcb05bed2c80a4aac288bbefed2347ecf3508c24d542ab42efa21fd63b5aaca4208b206f05818835a2ac43abe09250c2638c11c3b0b66a5d67e83985e350f + languageName: node + linkType: hard + +"reflect-metadata@npm:^0.1.13": + version: 0.1.13 + resolution: "reflect-metadata@npm:0.1.13" + checksum: 629101e6c8b7e0d3166fa51953f908f45b5c73dbaf1375c4f8c3ed62221b870c951343b9b031d0c49957e7262a88020f41be25731ee85b5d779f12c7cec66005 + languageName: node + linkType: hard + +"regenerate-unicode-properties@npm:^8.2.0": + version: 8.2.0 + resolution: "regenerate-unicode-properties@npm:8.2.0" + dependencies: + regenerate: ^1.4.0 + checksum: afe83304fbb5e8f74334b6f6f3f19ba261b9036aade352db14f4e5c2776fcf6e6a5da465628545f2f6f50f898a1b5246711b2cafedaa01c3f329d186e850af04 + languageName: node + linkType: hard + +"regenerate@npm:^1.4.0": + version: 1.4.1 + resolution: "regenerate@npm:1.4.1" + checksum: 67fe7ea33291997b20634105c7b6787bcc03e137da348c1cc0d617b3d97d9ed1e05ce4b6dabcb86be7ddf198000f78275bcabd67e66889ba7daa296926f8eada + languageName: node + linkType: hard + +"regenerator-runtime@npm:^0.10.0": + version: 0.10.5 + resolution: "regenerator-runtime@npm:0.10.5" + checksum: 7c567ca91def0bf10f759fa2017b7423f4bb62fb828068d093561e4094c4ce5c0de5e42bb2a51e1656d23d643857fda0a6b568c175dd34b28d76efe7a4abf6d9 + languageName: node + linkType: hard + +"regenerator-runtime@npm:^0.11.0": + version: 0.11.1 + resolution: "regenerator-runtime@npm:0.11.1" + checksum: d98d44b9f5c9c3c670dcb615c5f5374931f937f3075dc8338126f45231643aa8c47ed2bfdef6ae593e311be54ca02d25d943971ca86a3dc1fa99068c2e1b88b2 + languageName: node + linkType: hard + +"regenerator-runtime@npm:^0.13.3, regenerator-runtime@npm:^0.13.4": + version: 0.13.7 + resolution: "regenerator-runtime@npm:0.13.7" + checksum: 6ef567c662088b1b292214920cbd72443059298d477f72e1a37e0a113bafbfac9057cbfe35ae617284effc4b423493326a78561bbff7b04162c7949bdb9624e8 + languageName: node + linkType: hard + +"regenerator-transform@npm:^0.14.2": + version: 0.14.5 + resolution: "regenerator-transform@npm:0.14.5" + dependencies: + "@babel/runtime": ^7.8.4 + checksum: ed07c2c1d08f4828807f9366621ca1d62102969f5af575662c9e5f085f7b49df068e4944e17c7016898bc125cdc7b0d74014e9856bff3a6a147714c4e7de3ed9 + languageName: node + linkType: hard + +"regex-not@npm:^1.0.0, regex-not@npm:^1.0.2": + version: 1.0.2 + resolution: "regex-not@npm:1.0.2" + dependencies: + extend-shallow: ^3.0.2 + safe-regex: ^1.1.0 + checksum: 3d6d95b4fda3cabe7222b3800876491825a865ae6ca4c90bb10fd0f6442d0c57d180657bb65358b4509bdd1cecad1bd2d23e7d15a69f9c523f501cc4431b950b + languageName: node + linkType: hard + +"regex-parser@npm:2.2.10": + version: 2.2.10 + resolution: "regex-parser@npm:2.2.10" + checksum: b8c026e9a7b1f2dacba70a71c3464e8c2b43dbf44b719f8a8b3a244cd47177f99dc8ff184ee02302635728f378eb9828e8845620fbb79deb153b597a5619232b + languageName: node + linkType: hard + +"regexp-clone@npm:1.0.0, regexp-clone@npm:^1.0.0": + version: 1.0.0 + resolution: "regexp-clone@npm:1.0.0" + checksum: 0cb16b8806a0a4e3e0f8887c1465d03ff25371fde03d03ab3b2fe7bc521faaabaac36feabcdcdf63bcbce05a7d0eca113eb5b4d3b9a9efc77dc1c0fa87a2811d + languageName: node + linkType: hard + +"regexp.prototype.flags@npm:^1.2.0, regexp.prototype.flags@npm:^1.3.0": + version: 1.3.0 + resolution: "regexp.prototype.flags@npm:1.3.0" + dependencies: + define-properties: ^1.1.3 + es-abstract: ^1.17.0-next.1 + checksum: 468e19b3aed632653333741346cab170787b9bc79eecdfdd3d7ba5be26574c135edc2ce286d9d4154b635158c3c44f9614fca51cbf6d4d3f529ef89cf7e03908 + languageName: node + linkType: hard + +"regexpp@npm:^2.0.1": + version: 2.0.1 + resolution: "regexpp@npm:2.0.1" + checksum: e537f6c1b59f31a8d6381c64408d7a852aa98794896702fdadef2fa8b049f7d876da30cd0c6f6a64488aa58ad3b225d606cc689059628056b5a593e5422c38d6 + languageName: node + linkType: hard + +"regexpp@npm:^3.0.0, regexpp@npm:^3.1.0": + version: 3.1.0 + resolution: "regexpp@npm:3.1.0" + checksum: 69d0ce6b449cf35d3732d6341a1e70850360ffc619f8eef10629871c462e614853fffb80d3f00fc17cd0bb5b8f34b0cde5be4b434e72c0eb3fbba2360c8b5ac4 + languageName: node + linkType: hard + +"regexpu-core@npm:^4.7.0": + version: 4.7.0 + resolution: "regexpu-core@npm:4.7.0" + dependencies: + regenerate: ^1.4.0 + regenerate-unicode-properties: ^8.2.0 + regjsgen: ^0.5.1 + regjsparser: ^0.6.4 + unicode-match-property-ecmascript: ^1.0.4 + unicode-match-property-value-ecmascript: ^1.2.0 + checksum: 8947f4c4ac23494cb842e6a0b82f29dd76737486d78f833c1ba2436a046a134435e442a615d988c6dc6b9cdaf611aafd3627ce8d2f62a8e580f094101916cad4 + languageName: node + linkType: hard + +"registry-auth-token@npm:^4.0.0": + version: 4.2.0 + resolution: "registry-auth-token@npm:4.2.0" + dependencies: + rc: ^1.2.8 + checksum: bbdcbe2210ec119538ea5f57df65149bac03e03c0d7fd0e0d0ff323140bb20d62e07a32f825e45902e2aea99e588fd042411a056b477c33761e3a88b846fd87d + languageName: node + linkType: hard + +"registry-url@npm:^5.0.0": + version: 5.1.0 + resolution: "registry-url@npm:5.1.0" + dependencies: + rc: ^1.2.8 + checksum: 50802a1d43efb18505ffc1f242b8af43bde95e95ac2461f453ef21d4bce793d4230076147809f1ade7452afaa537c6e0324dd4a7bc9d83f1b6f5cc7e1300c544 + languageName: node + linkType: hard + +"regjsgen@npm:^0.5.1": + version: 0.5.2 + resolution: "regjsgen@npm:0.5.2" + checksum: 629afab3d9ce61e104064cda66aca74ec9a1921151cc985d93c5cb58453ed7f7c23479bdb1a4a0826d200ed28c3871a7b8a8938e634ab00194195012893bccbc + languageName: node + linkType: hard + +"regjsparser@npm:^0.6.4": + version: 0.6.4 + resolution: "regjsparser@npm:0.6.4" + dependencies: + jsesc: ~0.5.0 + bin: + regjsparser: bin/parser + checksum: cf7838462ebe0256ef25618eab5981dc080501efde6458906a47ee1c017c93f7e27723d4a56f658014d5c8381a60d189e19f05198ef343e106343642471b1594 + languageName: node + linkType: hard + +"rehype-parse@npm:^6.0.2": + version: 6.0.2 + resolution: "rehype-parse@npm:6.0.2" + dependencies: + hast-util-from-parse5: ^5.0.0 + parse5: ^5.0.0 + xtend: ^4.0.0 + checksum: f22fca4b56612b24e4e7c921edbff5d02b6ba5058b34905b6480fe826d3ecf87e54d039fdc285991b006c98c497818d672e919b0ebb89a46d13fb97626c50c90 + languageName: node + linkType: hard + +"relateurl@npm:^0.2.7": + version: 0.2.7 + resolution: "relateurl@npm:0.2.7" + checksum: 856db0385d82022042584c14702ce58cb4d74c6b6a6d98ba85357638e64c081e6cb85adbbadebc82eec87b6e70ba43ae02d8655e565dbd4baffdc405a1b0b614 + languageName: node + linkType: hard + +"relay-compiler@npm:10.0.0": + version: 10.0.0 + resolution: "relay-compiler@npm:10.0.0" + dependencies: + "@babel/core": ^7.0.0 + "@babel/generator": ^7.5.0 + "@babel/parser": ^7.0.0 + "@babel/runtime": ^7.0.0 + "@babel/traverse": ^7.0.0 + "@babel/types": ^7.0.0 + babel-preset-fbjs: ^3.3.0 + chalk: ^4.0.0 + fb-watchman: ^2.0.0 + fbjs: ^1.0.0 + glob: ^7.1.1 + immutable: ~3.7.6 + nullthrows: ^1.1.1 + relay-runtime: 10.0.0 + signedsource: ^1.0.0 + yargs: ^15.3.1 + peerDependencies: + graphql: ^15.0.0 + bin: + relay-compiler: bin/relay-compiler + checksum: 8f420f3d96e3d293484581c5d9ebe7d7108be557c839e4ad67e25c75bc7f3fbac40b2426af9fb07261c89e06acba57945d3b3755dc6bd955cf5ef18550f77085 + languageName: node + linkType: hard + +"relay-runtime@npm:10.0.0": + version: 10.0.0 + resolution: "relay-runtime@npm:10.0.0" + dependencies: + "@babel/runtime": ^7.0.0 + fbjs: ^1.0.0 + checksum: b4c3a053eeaf2d7986d255f5e024d9266147226d9c28f8659900bb9d2a7333e0f0bfe6ec26d8b13d5fac7a5af86e179c424d7ba54a3103b4e3ad00c01db78dfd + languageName: node + linkType: hard + +"remark-admonitions@npm:^1.2.1": + version: 1.2.1 + resolution: "remark-admonitions@npm:1.2.1" + dependencies: + rehype-parse: ^6.0.2 + unified: ^8.4.2 + unist-util-visit: ^2.0.1 + checksum: 8d932f7eee2d68fcac2deac421c25a8bba870fbf7d2a898449dae20497cdfb16f175348546dada0e27867c8172aea5aa66b2675be65bc87c042db57a96551c27 + languageName: node + linkType: hard + +"remark-emoji@npm:^2.1.0": + version: 2.1.0 + resolution: "remark-emoji@npm:2.1.0" + dependencies: + emoticon: ^3.2.0 + node-emoji: ^1.10.0 + unist-util-visit: ^2.0.2 + checksum: 6c7fc18224319c0d16e9a3da8c2e8e870b9b925da00fa4e6f9661e6a01b07547932d8e51f17af410cb251a349ac2228366575cc95f92dcf8628cbada6ca57cff + languageName: node + linkType: hard + +"remark-footnotes@npm:1.0.0": + version: 1.0.0 + resolution: "remark-footnotes@npm:1.0.0" + checksum: a21c8cad3ecc9997ff91239e1a6b3b3613ace3ef5fae701eeeb8745fa2251f43729d08cd1ec2f78183ef78420fb8c1c9b263b3e46b3eaaed453fd72561e434c8 + languageName: node + linkType: hard + +"remark-mdx@npm:1.6.16": + version: 1.6.16 + resolution: "remark-mdx@npm:1.6.16" + dependencies: + "@babel/core": 7.10.5 + "@babel/helper-plugin-utils": 7.10.4 + "@babel/plugin-proposal-object-rest-spread": 7.10.4 + "@babel/plugin-syntax-jsx": 7.10.4 + "@mdx-js/util": 1.6.16 + is-alphabetical: 1.0.4 + remark-parse: 8.0.3 + unified: 9.1.0 + checksum: 1086f5f4dbc4c4d37a8b731afab3a88cf994f1acd779b91e7f3a44f758c6baa2696ec67917361fbe471a1c344f6243eefaddae68bb2d7cb9fa782cbcd22eb7ca + languageName: node + linkType: hard + +"remark-parse@npm:8.0.3": + version: 8.0.3 + resolution: "remark-parse@npm:8.0.3" + dependencies: + ccount: ^1.0.0 + collapse-white-space: ^1.0.2 + is-alphabetical: ^1.0.0 + is-decimal: ^1.0.0 + is-whitespace-character: ^1.0.0 + is-word-character: ^1.0.0 + markdown-escapes: ^1.0.0 + parse-entities: ^2.0.0 + repeat-string: ^1.5.4 + state-toggle: ^1.0.0 + trim: 0.0.1 + trim-trailing-lines: ^1.0.0 + unherit: ^1.0.4 + unist-util-remove-position: ^2.0.0 + vfile-location: ^3.0.0 + xtend: ^4.0.1 + checksum: c1c1bde733599bc689a0e4b3cb7b720c09e6b0713ef19986a9e7525406887429bdf535a112e5939eb5133456fb81ee7a29f08f63c9702d0bb5c3592120670285 + languageName: node + linkType: hard + +"remark-squeeze-paragraphs@npm:4.0.0": + version: 4.0.0 + resolution: "remark-squeeze-paragraphs@npm:4.0.0" + dependencies: + mdast-squeeze-paragraphs: ^4.0.0 + checksum: 3ff09ba3e47452dfddef98a0a53d064b20bcdd6d568f4f02766651e60f506ee970b25d282683c25820515856b48a068ae0032cc01151110d605b6ba07b40a30d + languageName: node + linkType: hard + +"remedial@npm:^1.0.7": + version: 1.0.8 + resolution: "remedial@npm:1.0.8" + checksum: 21e31d786dd40e0bb3ae46fdd4968e0a9efcb38b9e27460a06d5ae7546e62b2d63a2ed318d5714cc28f2a68986faa73de298233071fdb2d806b07fa9399763f4 + languageName: node + linkType: hard + +"remove-trailing-separator@npm:^1.0.1": + version: 1.1.0 + resolution: "remove-trailing-separator@npm:1.1.0" + checksum: 17dadf3d1f7c51411b7c426c8e2d6a660359bc8dae7686137120483fe4345bfca4bf7460d2c302aa741a7886c932d8dad708d2b971669d74e0fb3ff9a4814408 + languageName: node + linkType: hard + +"remove-trailing-spaces@npm:^1.0.6": + version: 1.0.8 + resolution: "remove-trailing-spaces@npm:1.0.8" + checksum: 982e024d84356320a669c9f703a20980c0ee1a35482e1310e39136fd8291467240e2ca9c12d6285541c4ccd7a49763aea952b91cda75e7ef43d2b325d4abfa17 + languageName: node + linkType: hard + +"renderkid@npm:^2.0.1": + version: 2.0.3 + resolution: "renderkid@npm:2.0.3" + dependencies: + css-select: ^1.1.0 + dom-converter: ^0.2 + htmlparser2: ^3.3.0 + strip-ansi: ^3.0.0 + utila: ^0.4.0 + checksum: 6520020e223b934fba7faf2c87242b065196d48a6ef8fc6c2c371379ed9c3a40cd8254d7db4b1cfb1bfad254b17d346800270bb0b8e7b96002285f5b9bf13c98 + languageName: node + linkType: hard + +"repeat-element@npm:^1.1.2": + version: 1.1.3 + resolution: "repeat-element@npm:1.1.3" + checksum: 6a59b879efdd3512a786be5de1bc05c110822fec6820bb5a38dfdfdd4488e7ba0cf6d15b28da21544e6f072ae60762ee9efa784f2988128e656c97a8b0be46cb + languageName: node + linkType: hard + +"repeat-string@npm:^1.5.4, repeat-string@npm:^1.6.1": + version: 1.6.1 + resolution: "repeat-string@npm:1.6.1" + checksum: 99c431ba7bef7a5d39819d562ebca89206368b45f73213677a3b562e25b5dd272d9e6a2ca8105001df14b6fc8cc71f0b10258c86e16cf8a256318fac1ddc8a77 + languageName: node + linkType: hard + +"repeating@npm:^2.0.0": + version: 2.0.1 + resolution: "repeating@npm:2.0.1" + dependencies: + is-finite: ^1.0.0 + checksum: a788561778bfcbe4fc6fd15cb912ed53665933514524e4b5a998934ef20793c0afd21229f411d15bc5b7ab171eca7ac531655070f1dfc427f723bae57b61d55a + languageName: node + linkType: hard + +"replace-ext@npm:1.0.0": + version: 1.0.0 + resolution: "replace-ext@npm:1.0.0" + checksum: edc3de6cad8bfca257f18a7d0fcdb81d84333cb781737bae29b665bbe903c2acae2649f04044b36358caf325bfe9f44b7404936a0841f14e4faea9c2f4dde432 + languageName: node + linkType: hard + +"replaceall@npm:^0.1.6": + version: 0.1.6 + resolution: "replaceall@npm:0.1.6" + checksum: 80186192d91fdf2fbfdf836b338957b8bcb1b90cdd20e619f360244ddb11fee49f137c4e4c913f2d1feb0d66c77eb8189fe5b5fee517a9e3a1f666e99df67dca + languageName: node + linkType: hard + +"request-ip@npm:2.1.3, request-ip@npm:^2.1.3": + version: 2.1.3 + resolution: "request-ip@npm:2.1.3" + dependencies: + is_js: ^0.9.0 + checksum: 17676000eea4271e5301cae1169928fa536507f55e0b756d6bf7d7f37b97fd4b07220c18152d96cfb529bfefc0ecf986d2e3fdf3ec8f2943c9e2083c8a33ceac + languageName: node + linkType: hard + +"request-promise-core@npm:1.1.4": + version: 1.1.4 + resolution: "request-promise-core@npm:1.1.4" + dependencies: + lodash: ^4.17.19 + peerDependencies: + request: ^2.34 + checksum: 7c9c90bf00158f6669e7167425cd113edadaca44b5aebc7c6a7969d9f50d93bfae8275038bdf6389b4e94f1cacacca7e5830d28701692818bdfba353eeb2ddfd + languageName: node + linkType: hard + +"request-promise-native@npm:^1.0.5, request-promise-native@npm:^1.0.8": + version: 1.0.9 + resolution: "request-promise-native@npm:1.0.9" + dependencies: + request-promise-core: 1.1.4 + stealthy-require: ^1.1.1 + tough-cookie: ^2.3.3 + peerDependencies: + request: ^2.34 + checksum: 532570f00559f826ad372d36a152c3cf1aa184d0876b04ed7c18a9fa391fa2108978eca837ae1fb681d2dab63bd6c74c6660022b82ecdb2682d77859314d0b6e + languageName: node + linkType: hard + +"request-promise@npm:^4.2.5": + version: 4.2.6 + resolution: "request-promise@npm:4.2.6" + dependencies: + bluebird: ^3.5.0 + request-promise-core: 1.1.4 + stealthy-require: ^1.1.1 + tough-cookie: ^2.3.3 + peerDependencies: + request: ^2.34 + checksum: 6a715e7817dd11a77ac2a1eaa334a3fb5616436be1a2ffe07f605711a1cd6bf87149aa6173dfda8897f81e399b86f98ed088c594fa1a726958777fcb4a26a991 + languageName: node + linkType: hard + +"request@npm:2.88.2, request@npm:^2.87.0, request@npm:^2.88.0, request@npm:^2.88.2": + version: 2.88.2 + resolution: "request@npm:2.88.2" + dependencies: + aws-sign2: ~0.7.0 + aws4: ^1.8.0 + caseless: ~0.12.0 + combined-stream: ~1.0.6 + extend: ~3.0.2 + forever-agent: ~0.6.1 + form-data: ~2.3.2 + har-validator: ~5.1.3 + http-signature: ~1.2.0 + is-typedarray: ~1.0.0 + isstream: ~0.1.2 + json-stringify-safe: ~5.0.1 + mime-types: ~2.1.19 + oauth-sign: ~0.9.0 + performance-now: ^2.1.0 + qs: ~6.5.2 + safe-buffer: ^5.1.2 + tough-cookie: ~2.5.0 + tunnel-agent: ^0.6.0 + uuid: ^3.3.2 + checksum: 7a74841f3024cac21d8c3cca7f7f2e4243fbd62464d2f291fddb94008a9d010e20c4a1488f4224b03412a4438a699db2a3de11019e486c8e656f86b0b79bf022 + languageName: node + linkType: hard + +"require-directory@npm:^2.1.1": + version: 2.1.1 + resolution: "require-directory@npm:2.1.1" + checksum: f495d02d89c385af2df4b26f0216ece091e99710d358d0ede424126c476d0c639e8bd77dcd237c00a6a5658f3d862e7513164f8c280263052667d06df830eb23 + languageName: node + linkType: hard + +"require-like@npm:>= 0.1.1": + version: 0.1.2 + resolution: "require-like@npm:0.1.2" + checksum: eb99bcb48cc0769e6f552b0bad53c61b4a5df8fd21ec2ef74ab78a3082eca323abc190f14e149e42eb4e02ae26624632d09c966f07c7791fcfd1da32d39a9d7a + languageName: node + linkType: hard + +"require-main-filename@npm:^1.0.1": + version: 1.0.1 + resolution: "require-main-filename@npm:1.0.1" + checksum: 26719298b8ba213424f69beea3898fa5bdddeb7039cbc78d8680524f05b459c7d9c523fda12d1aabe74d4475458480ba231ab5147fefb3855b8e6b6b65666d99 + languageName: node + linkType: hard + +"require-main-filename@npm:^2.0.0": + version: 2.0.0 + resolution: "require-main-filename@npm:2.0.0" + checksum: 8d3633149a7fef67d14613146247137fe1dc4cc969bf2d1adcd40e3c28056de503229f41e78cba5efebad3a223cbfb4215fd220d879148df10c6d9a877099dbd + languageName: node + linkType: hard + +"require_optional@npm:^1.0.1": + version: 1.0.1 + resolution: "require_optional@npm:1.0.1" + dependencies: + resolve-from: ^2.0.0 + semver: ^5.1.0 + checksum: 2a7cae14fcb0f7aac9e1837bde2edc1e95b2cf635376df09e973151ea735b77f2069e6bf9e1a1c5dd27f052e0b00a477db15807302a1ceeb487307ea61416bee + languageName: node + linkType: hard + +"requires-port@npm:^1.0.0": + version: 1.0.0 + resolution: "requires-port@npm:1.0.0" + checksum: 0db25fb2ac9b4f2345a350846b7ba99d1f25a6686b1728246d14f05450c8f2fc066bdfae4561b4be2627c184a030a27e17268cfefdf46836e271db13734bc49e + languageName: node + linkType: hard + +"resolve-cwd@npm:^2.0.0": + version: 2.0.0 + resolution: "resolve-cwd@npm:2.0.0" + dependencies: + resolve-from: ^3.0.0 + checksum: f5d5526526d646c013f8ccb946861907e9f5fcfb951b2495add0f6a344a6796111b1c88e5227bc846d04a0e07182cc856a694ad0dd559dfa6a795a4eaff4477e + languageName: node + linkType: hard + +"resolve-cwd@npm:^3.0.0": + version: 3.0.0 + resolution: "resolve-cwd@npm:3.0.0" + dependencies: + resolve-from: ^5.0.0 + checksum: 97edfbbf83ade94e880c2e62d0faf76eb245ea5696fc70f59eaa2747773e19108a1fa0fba13f53d471d9f245454bb1592dc4f537c6dfd19b8016ef8639a9fadc + languageName: node + linkType: hard + +"resolve-from@npm:5.0.0, resolve-from@npm:^5.0.0": + version: 5.0.0 + resolution: "resolve-from@npm:5.0.0" + checksum: 0d29fc7012eb21f34d2637fa0602694f60e64c14bf5fbd5395b72f6ea5540a6906cbeef062edefc34c22fd802bfe8ae46ef936e6c4a3f1b1047390f9738dd76f + languageName: node + linkType: hard + +"resolve-from@npm:^2.0.0": + version: 2.0.0 + resolution: "resolve-from@npm:2.0.0" + checksum: e2cfa9d4402ceb731ce14f639248c8a8a364db8710ba3360a4492046c6688084235645a4f4004ac7d9acf40bc0644fac6d8c24f9012c7e5773234a7c09d57cb4 + languageName: node + linkType: hard + +"resolve-from@npm:^3.0.0": + version: 3.0.0 + resolution: "resolve-from@npm:3.0.0" + checksum: dc0c83b3b867753b9fe3a901587fa70efc596a69355eb133fd68f8bbaef4e77266ef38b8a01a2d664aa32ba732425d54413b3d581ca7dff96bee177c61a0c84d + languageName: node + linkType: hard + +"resolve-from@npm:^4.0.0": + version: 4.0.0 + resolution: "resolve-from@npm:4.0.0" + checksum: 87a4357c0c1c2d165012ec04a3b2aa58931c0c0be257890806760b627bad36c9bceb6f9b2a3726f8570c67f2c9ff3ecc9507fe65cc3ad8d45cdab015245c649f + languageName: node + linkType: hard + +"resolve-pathname@npm:^3.0.0": + version: 3.0.0 + resolution: "resolve-pathname@npm:3.0.0" + checksum: 88ed8b3dd2b5cec68d35c319dc831cd879155da153208bb9c035f263cd9220fcf0af49158456871f64a181511f8e95c483c3700a958f4110f36e513b78cfd9f0 + languageName: node + linkType: hard + +"resolve-url-loader@npm:3.1.1": + version: 3.1.1 + resolution: "resolve-url-loader@npm:3.1.1" + dependencies: + adjust-sourcemap-loader: 2.0.0 + camelcase: 5.3.1 + compose-function: 3.0.3 + convert-source-map: 1.7.0 + es6-iterator: 2.0.3 + loader-utils: 1.2.3 + postcss: 7.0.21 + rework: 1.0.1 + rework-visit: 1.0.0 + source-map: 0.6.1 + checksum: 7b113ac9e6cc5340ef41f7318411fc920bceb2282f4f397fbe563dd1dc6dfafc4c89f21f729c137c1de31864d9672461f85bafd8060e12aeee85ba80011c2b9a + languageName: node + linkType: hard + +"resolve-url@npm:^0.2.1": + version: 0.2.1 + resolution: "resolve-url@npm:0.2.1" + checksum: 9e1cd0028d0f2e157a889a02653637c1c1d7f133aa47b75261b4590e84105e63fae3b6be31bad50d5b94e01898d9dbe6b95abe28db7eab46e22321f7cbf00273 + languageName: node + linkType: hard resolve@1.1.7: - version "1.1.7" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" - integrity sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs= - -resolve@1.15.0: - version "1.15.0" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.15.0.tgz#1b7ca96073ebb52e741ffd799f6b39ea462c67f5" - integrity sha512-+hTmAldEGE80U2wJJDC1lebb5jWqvTYAfm3YZ1ckk1gBr0MnCqUKlwK1e+anaFljIl+F5tR5IoZcm4ZDA1zMQw== - dependencies: - path-parse "^1.0.6" - -resolve@^1.1.6, resolve@^1.10.0, resolve@^1.12.0, resolve@^1.13.1, resolve@^1.15.1, resolve@^1.17.0, resolve@^1.3.2, resolve@^1.8.1: - version "1.17.0" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.17.0.tgz#b25941b54968231cc2d1bb76a79cb7f2c0bf8444" - integrity sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w== - dependencies: - path-parse "^1.0.6" - -responselike@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/responselike/-/responselike-1.0.2.tgz#918720ef3b631c5642be068f15ade5a46f4ba1e7" - integrity sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec= - dependencies: - lowercase-keys "^1.0.0" - -restore-cursor@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" - integrity sha1-n37ih/gv0ybU/RYpI9YhKe7g368= - dependencies: - onetime "^2.0.0" - signal-exit "^3.0.2" - -restore-cursor@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e" - integrity sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA== - dependencies: - onetime "^5.1.0" - signal-exit "^3.0.2" - -ret@~0.1.10: - version "0.1.15" - resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" - integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== - -retry@0.12.0, retry@^0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" - integrity sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs= - -retry@^0.10.0: - version "0.10.1" - resolved "https://registry.yarnpkg.com/retry/-/retry-0.10.1.tgz#e76388d217992c252750241d3d3956fed98d8ff4" - integrity sha1-52OI0heZLCUnUCQdPTlW/tmNj/Q= - -reusify@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" - integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== - -rework-visit@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/rework-visit/-/rework-visit-1.0.0.tgz#9945b2803f219e2f7aca00adb8bc9f640f842c9a" - integrity sha1-mUWygD8hni96ygCtuLyfZA+ELJo= - -rework@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/rework/-/rework-1.0.1.tgz#30806a841342b54510aa4110850cd48534144aa7" - integrity sha1-MIBqhBNCtUUQqkEQhQzUhTQUSqc= - dependencies: - convert-source-map "^0.3.3" - css "^2.0.0" - -rgb-regex@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/rgb-regex/-/rgb-regex-1.0.1.tgz#c0e0d6882df0e23be254a475e8edd41915feaeb1" - integrity sha1-wODWiC3w4jviVKR16O3UGRX+rrE= - -rgba-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/rgba-regex/-/rgba-regex-1.0.0.tgz#43374e2e2ca0968b0ef1523460b7d730ff22eeb3" - integrity sha1-QzdOLiyglosO8VI0YLfXMP8i7rM= - -rimraf@2.6.3: - version "2.6.3" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab" - integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA== - dependencies: - glob "^7.1.3" - -rimraf@3.0.2, rimraf@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" - integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== - dependencies: - glob "^7.1.3" - -rimraf@^2.5.4, rimraf@^2.6.2, rimraf@^2.6.3, rimraf@^2.7.1: - version "2.7.1" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" - integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== - dependencies: - glob "^7.1.3" - -ripemd160@^2.0.0, ripemd160@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c" - integrity sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA== - dependencies: - hash-base "^3.0.0" - inherits "^2.0.1" - -rsvp@^4.8.4: - version "4.8.5" - resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-4.8.5.tgz#c8f155311d167f68f21e168df71ec5b083113734" - integrity sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA== - -run-async@^2.2.0, run-async@^2.4.0: - version "2.4.1" - resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455" - integrity sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ== - -run-parallel@^1.1.9: - version "1.1.9" - resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.1.9.tgz#c9dd3a7cf9f4b2c4b6244e173a6ed866e61dd679" - integrity sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q== - -run-queue@^1.0.0, run-queue@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47" - integrity sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec= - dependencies: - aproba "^1.1.1" - -rx@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/rx/-/rx-4.1.0.tgz#a5f13ff79ef3b740fe30aa803fb09f98805d4782" - integrity sha1-pfE/957zt0D+MKqAP7CfmIBdR4I= - -rxjs@^6.3.3, rxjs@^6.4.0, rxjs@^6.5.2, rxjs@^6.5.3, rxjs@^6.5.5: - version "6.5.5" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.5.5.tgz#c5c884e3094c8cfee31bf27eb87e54ccfc87f9ec" - integrity sha512-WfQI+1gohdf0Dai/Bbmk5L5ItH5tYqm3ki2c5GdWhKjalzjg93N3avFjVStyZZz+A2Em+ZxKH5bNghw9UeylGQ== - dependencies: - tslib "^1.9.0" - -rxjs@^6.6.0: - version "6.6.0" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.0.tgz#af2901eedf02e3a83ffa7f886240ff9018bbec84" - integrity sha512-3HMA8z/Oz61DUHe+SdOiQyzIf4tOx5oQHmMir7IZEu6TMqCLHT4LRcmNaUS0NwOz8VLvmmBduMsoaUvMaIiqzg== - dependencies: - tslib "^1.9.0" - -safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: - version "5.1.2" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" - integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== - -safe-buffer@5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.0.tgz#b74daec49b1148f88c64b68d49b1e815c1f2f519" - integrity sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg== - -safe-buffer@5.2.1, safe-buffer@>=5.1.0, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@~5.2.0: - version "5.2.1" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" - integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== - -safe-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" - integrity sha1-QKNmnzsHfR6UPURinhV91IAjvy4= - dependencies: - ret "~0.1.10" - -"safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: - version "2.1.2" - resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" - integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== - -sane@^4.0.3: - version "4.1.0" - resolved "https://registry.yarnpkg.com/sane/-/sane-4.1.0.tgz#ed881fd922733a6c461bc189dc2b6c006f3ffded" - integrity sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA== - dependencies: - "@cnakazawa/watch" "^1.0.3" - anymatch "^2.0.0" - capture-exit "^2.0.0" - exec-sh "^0.3.2" - execa "^1.0.0" - fb-watchman "^2.0.0" - micromatch "^3.1.4" - minimist "^1.1.1" - walker "~1.0.5" - -sanitize.css@^10.0.0: - version "10.0.0" - resolved "https://registry.yarnpkg.com/sanitize.css/-/sanitize.css-10.0.0.tgz#b5cb2547e96d8629a60947544665243b1dc3657a" - integrity sha512-vTxrZz4dX5W86M6oVWVdOVe72ZiPs41Oi7Z6Km4W5Turyz28mrXSJhhEBZoRtzJWIv3833WKVwLSDWWkEfupMg== - -saslprep@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/saslprep/-/saslprep-1.0.3.tgz#4c02f946b56cf54297e347ba1093e7acac4cf226" - integrity sha512-/MY/PEMbk2SuY5sScONwhUDsV2p77Znkb/q3nSVstq/yQzYJOH/Azh29p9oJLsl3LnQwSvZDKagDGBsBwSooag== - dependencies: - sparse-bitfield "^3.0.3" - -sass-loader@8.0.2: - version "8.0.2" - resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-8.0.2.tgz#debecd8c3ce243c76454f2e8290482150380090d" - integrity sha512-7o4dbSK8/Ol2KflEmSco4jTjQoV988bM82P9CZdmo9hR3RLnvNc0ufMNdMrB0caq38JQ/FgF4/7RcbcfKzxoFQ== - dependencies: - clone-deep "^4.0.1" - loader-utils "^1.2.3" - neo-async "^2.6.1" - schema-utils "^2.6.1" - semver "^6.3.0" - -sax@>=0.6.0, sax@^1.2.4, sax@~1.2.4: - version "1.2.4" - resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" - integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== - -saxes@^3.1.9: - version "3.1.11" - resolved "https://registry.yarnpkg.com/saxes/-/saxes-3.1.11.tgz#d59d1fd332ec92ad98a2e0b2ee644702384b1c5b" - integrity sha512-Ydydq3zC+WYDJK1+gRxRapLIED9PWeSuuS41wqyoRmzvhhh9nc+QQrVMKJYzJFULazeGhzSV0QleN2wD3boh2g== - dependencies: - xmlchars "^2.1.1" - -saxes@^5.0.0: - version "5.0.1" - resolved "https://registry.yarnpkg.com/saxes/-/saxes-5.0.1.tgz#eebab953fa3b7608dbe94e5dadb15c888fa6696d" - integrity sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw== - dependencies: - xmlchars "^2.2.0" - -scheduler@^0.18.0: - version "0.18.0" - resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.18.0.tgz#5901ad6659bc1d8f3fdaf36eb7a67b0d6746b1c4" - integrity sha512-agTSHR1Nbfi6ulI0kYNK0203joW2Y5W4po4l+v03tOoiJKpTBbxpNhWDvqc/4IcOw+KLmSiQLTasZ4cab2/UWQ== - dependencies: - loose-envify "^1.1.0" - object-assign "^4.1.1" - -scheduler@^0.19.1: - version "0.19.1" - resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.19.1.tgz#4f3e2ed2c1a7d65681f4c854fa8c5a1ccb40f196" - integrity sha512-n/zwRWRYSUj0/3g/otKDRPMh6qv2SYMWNq85IEa8iZyAv8od9zDYpGSnpBEjNgcMNq6Scbu5KfIPxNF72R/2EA== - dependencies: - loose-envify "^1.1.0" - object-assign "^4.1.1" - -schema-utils@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-1.0.0.tgz#0b79a93204d7b600d4b2850d1f66c2a34951c770" - integrity sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g== - dependencies: - ajv "^6.1.0" - ajv-errors "^1.0.0" - ajv-keywords "^3.1.0" - -schema-utils@^2.5.0, schema-utils@^2.6.0, schema-utils@^2.6.1, schema-utils@^2.6.4, schema-utils@^2.6.5: - version "2.7.0" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.7.0.tgz#17151f76d8eae67fbbf77960c33c676ad9f4efc7" - integrity sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A== - dependencies: - "@types/json-schema" "^7.0.4" - ajv "^6.12.2" - ajv-keywords "^3.4.1" - -scuid@^1.0.2: - version "1.1.0" - resolved "https://registry.yarnpkg.com/scuid/-/scuid-1.1.0.tgz#d3f9f920956e737a60f72d0e4ad280bf324d5dab" - integrity sha512-MuCAyrGZcTLfQoH2XoBlQ8C6bzwN88XT/0slOGz0pn8+gIP85BOAfYa44ZXQUTOwRwPU0QvgU+V+OSajl/59Xg== - -select-hose@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" - integrity sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo= - -selfsigned@^1.10.7: - version "1.10.7" - resolved "https://registry.yarnpkg.com/selfsigned/-/selfsigned-1.10.7.tgz#da5819fd049d5574f28e88a9bcc6dbc6e6f3906b" - integrity sha512-8M3wBCzeWIJnQfl43IKwOmC4H/RAp50S8DF60znzjW5GVqTcSe2vWclt7hmYVPkKPlHWOu5EaWOMZ2Y6W8ZXTA== - dependencies: - node-forge "0.9.0" - -semver-compare@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/semver-compare/-/semver-compare-1.0.0.tgz#0dee216a1c941ab37e9efb1788f6afc5ff5537fc" - integrity sha1-De4hahyUGrN+nvsXiPavxf9VN/w= - -semver-diff@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/semver-diff/-/semver-diff-3.1.1.tgz#05f77ce59f325e00e2706afd67bb506ddb1ca32b" - integrity sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg== - dependencies: - semver "^6.3.0" - -semver-regex@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/semver-regex/-/semver-regex-2.0.0.tgz#a93c2c5844539a770233379107b38c7b4ac9d338" - integrity sha512-mUdIBBvdn0PLOeP3TEkMH7HHeUP3GjsXCwKarjv/kGmUFOYg1VqEemKhoQpWMu6X2I8kHeuVdGibLGkVK+/5Qw== - -"semver@2 || 3 || 4 || 5", "semver@2.x || 3.x || 4 || 5", semver@^5.1.0, semver@^5.4.1, semver@^5.5.0, semver@^5.5.1, semver@^5.6.0, semver@^5.7.0, semver@^5.7.1: - version "5.7.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" - integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== - -semver@4.3.2: - version "4.3.2" - resolved "https://registry.yarnpkg.com/semver/-/semver-4.3.2.tgz#c7a07158a80bedd052355b770d82d6640f803be7" - integrity sha1-x6BxWKgL7dBSNVt3DYLWZA+AO+c= - -semver@6.3.0, semver@^6.0.0, semver@^6.1.2, semver@^6.2.0, semver@^6.3.0: - version "6.3.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" - integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== - -semver@7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.0.0.tgz#5f3ca35761e47e05b206c6daff2cf814f0316b8e" - integrity sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A== - -semver@7.x, semver@^7.2.1, semver@^7.3.2: - version "7.3.2" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.2.tgz#604962b052b81ed0786aae84389ffba70ffd3938" - integrity sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ== - -send@0.17.1: - version "0.17.1" - resolved "https://registry.yarnpkg.com/send/-/send-0.17.1.tgz#c1d8b059f7900f7466dd4938bdc44e11ddb376c8" - integrity sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg== - 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" - -sentence-case@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/sentence-case/-/sentence-case-3.0.3.tgz#47576e4adff7abf42c63c815b0543c9d2f85a930" - integrity sha512-ZPr4dgTcNkEfcGOMFQyDdJrTU9uQO1nb1cjf+nuzb6FxgMDgKddZOM29qEsB7jvsZSMruLRcL2KfM4ypKpa0LA== - dependencies: - no-case "^3.0.3" - tslib "^1.10.0" - upper-case-first "^2.0.1" - -serialize-javascript@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-2.1.2.tgz#ecec53b0e0317bdc95ef76ab7074b7384785fa61" - integrity sha512-rs9OggEUF0V4jUSecXazOYsLfu7OGK2qIn3c7IPBiffz32XniEp/TX9Xmc9LQfK2nQ2QKHvZ2oygKUGU0lG4jQ== - -serialize-javascript@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-3.1.0.tgz#8bf3a9170712664ef2561b44b691eafe399214ea" - integrity sha512-JIJT1DGiWmIKhzRsG91aS6Ze4sFUrYbltlkg2onR5OrnNM02Kl/hnY/T4FN2omvyeBbQmMJv+K4cPOpGzOTFBg== - dependencies: - randombytes "^2.1.0" - -serve-index@^1.9.1: - version "1.9.1" - resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239" - integrity sha1-03aNabHn2C5c4FD/9bRTvqEqkjk= - 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" - -serve-static@1.14.1: - version "1.14.1" - resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.14.1.tgz#666e636dc4f010f7ef29970a88a674320898b2f9" - integrity sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg== - dependencies: - encodeurl "~1.0.2" - escape-html "~1.0.3" - parseurl "~1.3.3" - send "0.17.1" - -set-blocking@^2.0.0, set-blocking@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" - integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= - -set-value@^2.0.0, set-value@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b" - integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw== - dependencies: - extend-shallow "^2.0.1" - is-extendable "^0.1.1" - is-plain-object "^2.0.3" - split-string "^3.0.1" - -setimmediate@^1.0.4, setimmediate@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" - integrity sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU= - -setprototypeof@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" - integrity sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ== - -setprototypeof@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.1.tgz#7e95acb24aa92f5885e0abef5ba131330d4ae683" - integrity sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw== - -sha.js@^2.4.0, sha.js@^2.4.11, sha.js@^2.4.8: - version "2.4.11" - resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7" - integrity sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ== - dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" - -shallow-clone@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-0.1.2.tgz#5909e874ba77106d73ac414cfec1ffca87d97060" - integrity sha1-WQnodLp3EG1zrEFM/sH/yofZcGA= - dependencies: - is-extendable "^0.1.1" - kind-of "^2.0.1" - lazy-cache "^0.2.3" - mixin-object "^2.0.1" - -shallow-clone@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-3.0.1.tgz#8f2981ad92531f55035b01fb230769a40e02efa3" - integrity sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA== - dependencies: - kind-of "^6.0.2" - -shebang-command@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" - integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo= - dependencies: - shebang-regex "^1.0.0" - -shebang-command@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" - integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== - dependencies: - shebang-regex "^3.0.0" - -shebang-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" - integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= - -shebang-regex@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" - integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== - -shell-quote@1.7.2: - version "1.7.2" - resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.7.2.tgz#67a7d02c76c9da24f99d20808fcaded0e0e04be2" - integrity sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg== - -shelljs@^0.8.3: - version "0.8.4" - resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.8.4.tgz#de7684feeb767f8716b326078a8a00875890e3c2" - integrity sha512-7gk3UZ9kOfPLIAbslLzyWeGiEqx9e3rxwZM0KE6EL8GlGwjym9Mrlx5/p33bWTu9YG6vcS4MBxYZDHYr5lr8BQ== - dependencies: - glob "^7.0.0" - interpret "^1.0.0" - rechoir "^0.6.2" - -shellwords@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b" - integrity sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww== - -shortid@^2.2.15: - version "2.2.15" - resolved "https://registry.yarnpkg.com/shortid/-/shortid-2.2.15.tgz#2b902eaa93a69b11120373cd42a1f1fe4437c122" - integrity sha512-5EaCy2mx2Jgc/Fdn9uuDuNIIfWBpzY4XIlhoqtXF6qsf+/+SGZ+FxDdX/ZsMZiWupIWNqAEmiNY4RC+LSmCeOw== - dependencies: - nanoid "^2.1.0" - -side-channel@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.2.tgz#df5d1abadb4e4bf4af1cd8852bf132d2f7876947" - integrity sha512-7rL9YlPHg7Ancea1S96Pa8/QWb4BtXL/TZvS6B8XFetGBeuhAsfmUspK6DokBeZ64+Kj9TCNRD/30pVz1BvQNA== - dependencies: - es-abstract "^1.17.0-next.1" - object-inspect "^1.7.0" - -sift@7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/sift/-/sift-7.0.1.tgz#47d62c50b159d316f1372f8b53f9c10cd21a4b08" - integrity sha512-oqD7PMJ+uO6jV9EQCl0LrRw1OwsiPsiFQR5AR30heR+4Dl7jBBbDLnNvWiak20tzZlSE1H7RB30SX/1j/YYT7g== - -signal-exit@^3.0.0, signal-exit@^3.0.2: - version "3.0.3" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" - integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== - -signedsource@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/signedsource/-/signedsource-1.0.0.tgz#1ddace4981798f93bd833973803d80d52e93ad6a" - integrity sha1-HdrOSYF5j5O9gzlzgD2A1S6TrWo= - -simple-git@2.10.0: - version "2.10.0" - resolved "https://registry.yarnpkg.com/simple-git/-/simple-git-2.10.0.tgz#9b9b6af5c7660b8ede5636296cc78774f85ac636" - integrity sha512-/lqaK+C7FwGe3du9E9gIIMjpRSPif71Ct80cYqpevdLGSU9LJXL+CBf2tT6bxXgmp/i3NsOj37jP43KjhlEZIA== - dependencies: - "@kwsites/file-exists" "^1.1.1" - debug "^4.1.1" - -simple-swizzle@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/simple-swizzle/-/simple-swizzle-0.2.2.tgz#a4da6b635ffcccca33f70d17cb92592de95e557a" - integrity sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo= - dependencies: - is-arrayish "^0.3.1" - -sisteransi@^1.0.4: - version "1.0.5" - resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" - integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg== - -slash@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" - integrity sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU= - -slash@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-2.0.0.tgz#de552851a1759df3a8f206535442f5ec4ddeab44" - integrity sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A== - -slash@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" - integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== - -slice-ansi@0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-0.0.4.tgz#edbf8903f66f7ce2f8eafd6ceed65e264c831b35" - integrity sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU= - -slice-ansi@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-2.1.0.tgz#cacd7693461a637a5788d92a7dd4fba068e81636" - integrity sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ== - dependencies: - ansi-styles "^3.2.0" - astral-regex "^1.0.0" - is-fullwidth-code-point "^2.0.0" - -slice-ansi@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-3.0.0.tgz#31ddc10930a1b7e0b67b08c96c2f49b77a789787" - integrity sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ== - dependencies: - ansi-styles "^4.0.0" - astral-regex "^2.0.0" - is-fullwidth-code-point "^3.0.0" - -slice-ansi@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-4.0.0.tgz#500e8dd0fd55b05815086255b3195adf2a45fe6b" - integrity sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ== - dependencies: - ansi-styles "^4.0.0" - astral-regex "^2.0.0" - is-fullwidth-code-point "^3.0.0" - -sliced@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/sliced/-/sliced-1.0.1.tgz#0b3a662b5d04c3177b1926bea82b03f837a2ef41" - integrity sha1-CzpmK10Ewxd7GSa+qCsD+Dei70E= - -slide@^1.1.6: - version "1.1.6" - resolved "https://registry.yarnpkg.com/slide/-/slide-1.1.6.tgz#56eb027d65b4d2dce6cb2e2d32c4d4afc9e1d707" - integrity sha1-VusCfWW00tzmyy4tMsTUr8nh1wc= - -smart-buffer@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-4.1.0.tgz#91605c25d91652f4661ea69ccf45f1b331ca21ba" - integrity sha512-iVICrxOzCynf/SNaBQCw34eM9jROU/s5rzIhpOvzhzuYHfJR/DhZfDkXiZSgKXfgv26HT3Yni3AV/DGw0cGnnw== - -snake-case@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/snake-case/-/snake-case-3.0.3.tgz#c598b822ab443fcbb145ae8a82c5e43526d5bbee" - integrity sha512-WM1sIXEO+rsAHBKjGf/6R1HBBcgbncKS08d2Aqec/mrDSpU80SiOU41hO7ny6DToHSyrlwTYzQBIK1FPSx4Y3Q== - dependencies: - dot-case "^3.0.3" - tslib "^1.10.0" - -snapdragon-node@^2.0.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" - integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== - dependencies: - define-property "^1.0.0" - isobject "^3.0.0" - snapdragon-util "^3.0.1" - -snapdragon-util@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" - integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== - dependencies: - kind-of "^3.2.0" - -snapdragon@^0.8.1: - version "0.8.2" - resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" - integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== - dependencies: - base "^0.11.1" - debug "^2.2.0" - define-property "^0.2.5" - extend-shallow "^2.0.1" - map-cache "^0.2.2" - source-map "^0.5.6" - source-map-resolve "^0.5.0" - use "^3.1.0" - -sockjs-client@1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.4.0.tgz#c9f2568e19c8fd8173b4997ea3420e0bb306c7d5" - integrity sha512-5zaLyO8/nri5cua0VtOrFXBPK1jbL4+1cebT/mmKA1E1ZXOvJrII75bPu0l0k843G/+iAbhEqzyKr0w/eCCj7g== - dependencies: - debug "^3.2.5" - eventsource "^1.0.7" - faye-websocket "~0.11.1" - inherits "^2.0.3" - json3 "^3.3.2" - url-parse "^1.4.3" - -sockjs@0.3.19: - version "0.3.19" - resolved "https://registry.yarnpkg.com/sockjs/-/sockjs-0.3.19.tgz#d976bbe800af7bd20ae08598d582393508993c0d" - integrity sha512-V48klKZl8T6MzatbLlzzRNhMepEys9Y4oGFpypBFFn1gLI/QQ9HtLLyWJNbPlwGLelOVOEijUbTTJeLLI59jLw== - dependencies: - faye-websocket "^0.10.0" - uuid "^3.0.1" - -socks-proxy-agent@^4.0.0: - version "4.0.2" - resolved "https://registry.yarnpkg.com/socks-proxy-agent/-/socks-proxy-agent-4.0.2.tgz#3c8991f3145b2799e70e11bd5fbc8b1963116386" - integrity sha512-NT6syHhI9LmuEMSK6Kd2V7gNv5KFZoLE7V5udWmn0de+3Mkj3UMA/AJPLyeNUVmElCurSHtUdM3ETpR3z770Wg== - dependencies: - agent-base "~4.2.1" - socks "~2.3.2" - -socks@~2.3.2: - version "2.3.3" - resolved "https://registry.yarnpkg.com/socks/-/socks-2.3.3.tgz#01129f0a5d534d2b897712ed8aceab7ee65d78e3" - integrity sha512-o5t52PCNtVdiOvzMry7wU4aOqYWL0PeCXRWBEiJow4/i/wr+wpsJQ9awEu1EonLIqsfGd5qSgDdxEOvCdmBEpA== - dependencies: - ip "1.1.5" - smart-buffer "^4.1.0" - -sort-keys@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-1.1.2.tgz#441b6d4d346798f1b4e49e8920adfba0e543f9ad" - integrity sha1-RBttTTRnmPG05J6JIK37oOVD+a0= - dependencies: - is-plain-obj "^1.0.0" - -sort-keys@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-2.0.0.tgz#658535584861ec97d730d6cf41822e1f56684128" - integrity sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg= - dependencies: - is-plain-obj "^1.0.0" - -source-list-map@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" - integrity sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw== - -source-map-resolve@^0.5.0, source-map-resolve@^0.5.2: - version "0.5.3" - resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a" - integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw== - dependencies: - atob "^2.1.2" - decode-uri-component "^0.2.0" - resolve-url "^0.2.1" - source-map-url "^0.4.0" - urix "^0.1.0" - -source-map-support@^0.5.17, source-map-support@^0.5.6, source-map-support@~0.5.12: - version "0.5.19" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.19.tgz#a98b62f86dcaf4f67399648c085291ab9e8fed61" - integrity sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw== - dependencies: - buffer-from "^1.0.0" - source-map "^0.6.0" - -source-map-url@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3" - integrity sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM= - -source-map@0.6.1, source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" - integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== - -source-map@^0.5.0, source-map@^0.5.6: - version "0.5.7" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" - integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= - -source-map@^0.7.3: - version "0.7.3" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" - integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== - -sparse-bitfield@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz#ff4ae6e68656056ba4b3e792ab3334d38273ca11" - integrity sha1-/0rm5oZWBWuks+eSqzM004JzyhE= - dependencies: - memory-pager "^1.0.2" - -spawn-command@^0.0.2-1: - version "0.0.2-1" - resolved "https://registry.yarnpkg.com/spawn-command/-/spawn-command-0.0.2-1.tgz#62f5e9466981c1b796dc5929937e11c9c6921bd0" - integrity sha1-YvXpRmmBwbeW3Fkpk34RycaSG9A= - -spdx-correct@^3.0.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9" - integrity sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w== - dependencies: - spdx-expression-parse "^3.0.0" - spdx-license-ids "^3.0.0" - -spdx-exceptions@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d" - integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== - -spdx-expression-parse@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" - integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== - dependencies: - spdx-exceptions "^2.1.0" - spdx-license-ids "^3.0.0" - -spdx-license-ids@^3.0.0: - version "3.0.5" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz#3694b5804567a458d3c8045842a6358632f62654" - integrity sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q== - -spdy-transport@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-3.0.0.tgz#00d4863a6400ad75df93361a1608605e5dcdcf31" - integrity sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw== - 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" - -spdy@^4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/spdy/-/spdy-4.0.2.tgz#b74f466203a3eda452c02492b91fb9e84a27677b" - integrity sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA== - 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" - -speakeasy@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/speakeasy/-/speakeasy-2.0.0.tgz#85c91a071b09a5cb8642590d983566165f57613a" - integrity sha1-hckaBxsJpcuGQlkNmDVmFl9XYTo= - dependencies: - base32.js "0.0.1" - -split-string@^3.0.1, split-string@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" - integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== - dependencies: - extend-shallow "^3.0.0" - -split2@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/split2/-/split2-2.2.0.tgz#186b2575bcf83e85b7d18465756238ee4ee42493" - integrity sha512-RAb22TG39LhI31MbreBgIuKiIKhVsawfTgEGqKHTK87aG+ul/PB8Sqoi3I7kVdRWiCfrKxK3uo4/YUkpNvhPbw== - dependencies: - through2 "^2.0.2" - -split@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/split/-/split-1.0.1.tgz#605bd9be303aa59fb35f9229fbea0ddec9ea07d9" - integrity sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg== - dependencies: - through "2" - -sprintf-js@~1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" - integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= - -sshpk@^1.7.0: - version "1.16.1" - resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.16.1.tgz#fb661c0bef29b39db40769ee39fa70093d6f6877" - integrity sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg== - dependencies: - asn1 "~0.2.3" - assert-plus "^1.0.0" - bcrypt-pbkdf "^1.0.0" - dashdash "^1.12.0" - ecc-jsbn "~0.1.1" - getpass "^0.1.1" - jsbn "~0.1.0" - safer-buffer "^2.0.2" - tweetnacl "~0.14.0" - -ssri@^6.0.0, ssri@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/ssri/-/ssri-6.0.1.tgz#2a3c41b28dd45b62b63676ecb74001265ae9edd8" - integrity sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA== - dependencies: - figgy-pudding "^3.5.1" - -ssri@^7.0.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/ssri/-/ssri-7.1.0.tgz#92c241bf6de82365b5c7fb4bd76e975522e1294d" - integrity sha512-77/WrDZUWocK0mvA5NTRQyveUf+wsrIc6vyrxpS8tVvYBcX215QbafrJR3KtkpskIzoFLqqNuuYQvxaMjXJ/0g== - dependencies: - figgy-pudding "^3.5.1" - minipass "^3.1.1" - -stable@^0.1.8: - version "0.1.8" - resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" - integrity sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w== - -stack-utils@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-1.0.2.tgz#33eba3897788558bebfc2db059dc158ec36cebb8" - integrity sha512-MTX+MeG5U994cazkjd/9KNAapsHnibjMLnfXodlkXw76JEea0UiNzrqidzo1emMwk7w5Qhc9jd4Bn9TBb1MFwA== - -stack-utils@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.2.tgz#5cf48b4557becb4638d0bc4f21d23f5d19586593" - integrity sha512-0H7QK2ECz3fyZMzQ8rH0j2ykpfbnd20BFtfg/SqVC2+sCTtcw0aDTGB7dk+de4U4uUeuz6nOtJcrkFFLG1B0Rg== - dependencies: - escape-string-regexp "^2.0.0" - -standard-as-callback@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/standard-as-callback/-/standard-as-callback-2.0.1.tgz#ed8bb25648e15831759b6023bdb87e6b60b38126" - integrity sha512-NQOxSeB8gOI5WjSaxjBgog2QFw55FV8TkS6Y07BiB3VJ8xNTvUYm0wl0s8ObgQ5NhdpnNfigMIKjgPESzgr4tg== - -static-extend@^0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" - integrity sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY= - dependencies: - define-property "^0.2.5" - object-copy "^0.1.0" - -"statuses@>= 1.4.0 < 2", "statuses@>= 1.5.0 < 2", statuses@~1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" - integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= - -stealthy-require@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/stealthy-require/-/stealthy-require-1.1.1.tgz#35b09875b4ff49f26a777e509b3090a3226bf24b" - integrity sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks= - -stream-browserify@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.2.tgz#87521d38a44aa7ee91ce1cd2a47df0cb49dd660b" - integrity sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg== - dependencies: - inherits "~2.0.1" - readable-stream "^2.0.2" - -stream-each@^1.1.0: - version "1.2.3" - resolved "https://registry.yarnpkg.com/stream-each/-/stream-each-1.2.3.tgz#ebe27a0c389b04fbcc233642952e10731afa9bae" - integrity sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw== - dependencies: - end-of-stream "^1.1.0" - stream-shift "^1.0.0" - -stream-http@^2.7.2: - version "2.8.3" - resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.8.3.tgz#b2d242469288a5a27ec4fe8933acf623de6514fc" - integrity sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw== - dependencies: - builtin-status-codes "^3.0.0" - inherits "^2.0.1" - readable-stream "^2.3.6" - to-arraybuffer "^1.0.0" - xtend "^4.0.0" - -stream-shift@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.1.tgz#d7088281559ab2778424279b0877da3c392d5a3d" - integrity sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ== - -streamsearch@0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/streamsearch/-/streamsearch-0.1.2.tgz#808b9d0e56fc273d809ba57338e929919a1a9f1a" - integrity sha1-gIudDlb8Jz2Am6VzOOkpkZoanxo= - -strict-uri-encode@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713" - integrity sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM= - -string-argv@0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/string-argv/-/string-argv-0.3.1.tgz#95e2fbec0427ae19184935f816d74aaa4c5c19da" - integrity sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg== - -string-env-interpolation@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/string-env-interpolation/-/string-env-interpolation-1.0.1.tgz#ad4397ae4ac53fe6c91d1402ad6f6a52862c7152" - integrity sha512-78lwMoCcn0nNu8LszbP1UA7g55OeE4v7rCeWnM5B453rnNr4aq+5it3FEYtZrSEiMvHZOZ9Jlqb0OD0M2VInqg== - -string-length@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/string-length/-/string-length-2.0.0.tgz#d40dbb686a3ace960c1cffca562bf2c45f8363ed" - integrity sha1-1A27aGo6zpYMHP/KVivyxF+DY+0= - dependencies: - astral-regex "^1.0.0" - strip-ansi "^4.0.0" - -string-length@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/string-length/-/string-length-3.1.0.tgz#107ef8c23456e187a8abd4a61162ff4ac6e25837" - integrity sha512-Ttp5YvkGm5v9Ijagtaz1BnN+k9ObpvS0eIBblPMp2YWL8FBmi9qblQ9fexc2k/CXFgrTIteU3jAw3payCnwSTA== - dependencies: - astral-regex "^1.0.0" - strip-ansi "^5.2.0" - -string-length@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/string-length/-/string-length-4.0.1.tgz#4a973bf31ef77c4edbceadd6af2611996985f8a1" - integrity sha512-PKyXUd0LK0ePjSOnWn34V2uD6acUWev9uy0Ft05k0E8xRW+SKcA0F7eMr7h5xlzfn+4O3N+55rduYyet3Jk+jw== - dependencies: - char-regex "^1.0.2" - strip-ansi "^6.0.0" - -string-width@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" - integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M= - dependencies: - code-point-at "^1.0.0" - is-fullwidth-code-point "^1.0.0" - strip-ansi "^3.0.0" - -"string-width@^1.0.2 || 2", string-width@^2.0.0, string-width@^2.1.0, string-width@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" - integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== - dependencies: - is-fullwidth-code-point "^2.0.0" - strip-ansi "^4.0.0" - -string-width@^3.0.0, string-width@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" - integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== - dependencies: - emoji-regex "^7.0.1" - is-fullwidth-code-point "^2.0.0" - strip-ansi "^5.1.0" - -string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.0.tgz#952182c46cc7b2c313d1596e623992bd163b72b5" - integrity sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg== - dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.0" - -string.prototype.matchall@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.2.tgz#48bb510326fb9fdeb6a33ceaa81a6ea04ef7648e" - integrity sha512-N/jp6O5fMf9os0JU3E72Qhf590RSRZU/ungsL/qJUYVTNv7hTG0P/dbPjxINVN9jpscu3nzYwKESU3P3RY5tOg== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.0" - has-symbols "^1.0.1" - internal-slot "^1.0.2" - regexp.prototype.flags "^1.3.0" - side-channel "^1.0.2" - -string.prototype.trimend@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz#85812a6b847ac002270f5808146064c995fb6913" - integrity sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.5" - -string.prototype.trimstart@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz#14af6d9f34b053f7cfc89b72f8f2ee14b9039a54" - integrity sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.5" - -string_decoder@^1.0.0, string_decoder@^1.1.1: - version "1.3.0" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" - integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== - dependencies: - safe-buffer "~5.2.0" - -string_decoder@~1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" - integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== - dependencies: - safe-buffer "~5.1.0" - -stringify-object@^3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/stringify-object/-/stringify-object-3.3.0.tgz#703065aefca19300d3ce88af4f5b3956d7556629" - integrity sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw== - dependencies: - get-own-enumerable-property-symbols "^3.0.0" - is-obj "^1.0.1" - is-regexp "^1.0.0" - -strip-ansi@6.0.0, strip-ansi@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532" - integrity sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w== - dependencies: - ansi-regex "^5.0.0" - -strip-ansi@^3.0.0, strip-ansi@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" - integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= - dependencies: - ansi-regex "^2.0.0" - -strip-ansi@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" - integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8= - dependencies: - ansi-regex "^3.0.0" - -strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" - integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== - dependencies: - ansi-regex "^4.1.0" - -strip-bom@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" - integrity sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4= - dependencies: - is-utf8 "^0.2.0" - -strip-bom@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" - integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= - -strip-bom@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" - integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w== - -strip-comments@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/strip-comments/-/strip-comments-1.0.2.tgz#82b9c45e7f05873bee53f37168af930aa368679d" - integrity sha512-kL97alc47hoyIQSV165tTt9rG5dn4w1dNnBhOQ3bOU1Nc1hel09jnXANaHJ7vzHLd4Ju8kseDGzlev96pghLFw== - dependencies: - babel-extract-comments "^1.0.0" - babel-plugin-transform-object-rest-spread "^6.26.0" - -strip-eof@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" - integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8= - -strip-final-newline@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" - integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== - -strip-indent@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2" - integrity sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI= - dependencies: - get-stdin "^4.0.1" - -strip-indent@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-2.0.0.tgz#5ef8db295d01e6ed6cbf7aab96998d7822527b68" - integrity sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g= - -strip-indent@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-3.0.0.tgz#c32e1cee940b6b3432c771bc2c54bcce73cd3001" - integrity sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ== - dependencies: - min-indent "^1.0.0" - -strip-json-comments@^3.0.1, strip-json-comments@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.0.tgz#7638d31422129ecf4457440009fba03f9f9ac180" - integrity sha512-e6/d0eBu7gHtdCqFt0xJr642LdToM5/cN4Qb9DbHjVx1CP5RyeM+zH7pbecEmDv/lBqb0QH+6Uqq75rxFPkM0w== - -strip-json-comments@~2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" - integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= - -strong-log-transformer@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/strong-log-transformer/-/strong-log-transformer-2.1.0.tgz#0f5ed78d325e0421ac6f90f7f10e691d6ae3ae10" - integrity sha512-B3Hgul+z0L9a236FAUC9iZsL+nVHgoCJnqCbN588DjYxvGXaXaaFbfmQ/JhvKjZwsOukuR72XbHv71Qkug0HxA== - dependencies: - duplexer "^0.1.1" - minimist "^1.2.0" - through "^2.3.4" - -style-loader@0.23.1: - version "0.23.1" - resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-0.23.1.tgz#cb9154606f3e771ab6c4ab637026a1049174d925" - integrity sha512-XK+uv9kWwhZMZ1y7mysB+zoihsEj4wneFWAS5qoiLwzW0WzSqMrrsIy+a3zkQJq0ipFtBpX5W3MqyRIBF/WFGg== - dependencies: - loader-utils "^1.1.0" - schema-utils "^1.0.0" - -stylehacks@^4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-4.0.3.tgz#6718fcaf4d1e07d8a1318690881e8d96726a71d5" - integrity sha512-7GlLk9JwlElY4Y6a/rmbH2MhVlTyVmiJd1PfTCqFaIBEGMYNsrO/v3SeGTdhBThLg4Z+NbOk/qFMwCa+J+3p/g== - dependencies: - browserslist "^4.0.0" - postcss "^7.0.0" - postcss-selector-parser "^3.0.0" - -subscriptions-transport-ws@0.9.16, subscriptions-transport-ws@^0.9.11, subscriptions-transport-ws@^0.9.16: - version "0.9.16" - resolved "https://registry.yarnpkg.com/subscriptions-transport-ws/-/subscriptions-transport-ws-0.9.16.tgz#90a422f0771d9c32069294c08608af2d47f596ec" - integrity sha512-pQdoU7nC+EpStXnCfh/+ho0zE0Z+ma+i7xvj7bkXKb1dvYHSZxgRPaU6spRP+Bjzow67c/rRDoix5RT0uU9omw== - dependencies: - backo2 "^1.0.2" - eventemitter3 "^3.1.0" - iterall "^1.2.1" - symbol-observable "^1.0.4" - ws "^5.2.0" - -supports-color@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" - integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= - -supports-color@^5.3.0, supports-color@^5.5.0: - version "5.5.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" - integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== - dependencies: - has-flag "^3.0.0" - -supports-color@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.1.0.tgz#0764abc69c63d5ac842dd4867e8d025e880df8f3" - integrity sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ== - dependencies: - has-flag "^3.0.0" - -supports-color@^7.0.0, supports-color@^7.1.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.1.0.tgz#68e32591df73e25ad1c4b49108a2ec507962bfd1" - integrity sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g== - dependencies: - has-flag "^4.0.0" - -supports-hyperlinks@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-2.1.0.tgz#f663df252af5f37c5d49bbd7eeefa9e0b9e59e47" - integrity sha512-zoE5/e+dnEijk6ASB6/qrK+oYdm2do1hjoLWrqUC/8WEIW1gbxFcKuBof7sW8ArN6e+AYvsE8HBGiVRWL/F5CA== - dependencies: - has-flag "^4.0.0" - supports-color "^7.0.0" - -svg-parser@^2.0.0: - version "2.0.4" - resolved "https://registry.yarnpkg.com/svg-parser/-/svg-parser-2.0.4.tgz#fdc2e29e13951736140b76cb122c8ee6630eb6b5" - integrity sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ== - -svgo@^1.0.0, svgo@^1.2.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/svgo/-/svgo-1.3.2.tgz#b6dc511c063346c9e415b81e43401145b96d4167" - integrity sha512-yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw== - dependencies: - chalk "^2.4.1" - coa "^2.0.2" - css-select "^2.0.0" - css-select-base-adapter "^0.1.1" - css-tree "1.0.0-alpha.37" - csso "^4.0.2" - js-yaml "^3.13.1" - mkdirp "~0.5.1" - object.values "^1.1.0" - sax "~1.2.4" - stable "^0.1.8" - unquote "~1.1.1" - util.promisify "~1.0.0" - -symbol-observable@^1.0.4, symbol-observable@^1.1.0, symbol-observable@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.2.0.tgz#c22688aed4eab3cdc2dfeacbb561660560a00804" - integrity sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ== - -symbol-tree@^3.2.2, symbol-tree@^3.2.4: - version "3.2.4" - resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" - integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== - -table@^5.2.3: - version "5.4.6" - resolved "https://registry.yarnpkg.com/table/-/table-5.4.6.tgz#1292d19500ce3f86053b05f0e8e7e4a3bb21079e" - integrity sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug== - dependencies: - ajv "^6.10.2" - lodash "^4.17.14" - slice-ansi "^2.1.0" - string-width "^3.0.0" - -tapable@^1.0.0, tapable@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.1.3.tgz#a1fccc06b58db61fd7a45da2da44f5f3a3e67ba2" - integrity sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA== - -tar@^4.4.10, tar@^4.4.12, tar@^4.4.8: - version "4.4.13" - resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.13.tgz#43b364bc52888d555298637b10d60790254ab525" - integrity sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA== - dependencies: - chownr "^1.1.1" - fs-minipass "^1.2.5" - minipass "^2.8.6" - minizlib "^1.2.1" - mkdirp "^0.5.0" - safe-buffer "^5.1.2" - yallist "^3.0.3" - -temp-dir@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/temp-dir/-/temp-dir-1.0.0.tgz#0a7c0ea26d3a39afa7e0ebea9c1fc0bc4daa011d" - integrity sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0= - -temp-dir@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/temp-dir/-/temp-dir-2.0.0.tgz#bde92b05bdfeb1516e804c9c00ad45177f31321e" - integrity sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg== - -temp-write@^3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/temp-write/-/temp-write-3.4.0.tgz#8cff630fb7e9da05f047c74ce4ce4d685457d492" - integrity sha1-jP9jD7fp2gXwR8dM5M5NaFRX1JI= - dependencies: - graceful-fs "^4.1.2" - is-stream "^1.1.0" - make-dir "^1.0.0" - pify "^3.0.0" - temp-dir "^1.0.0" - uuid "^3.0.1" - -tempfile@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/tempfile/-/tempfile-3.0.0.tgz#5376a3492de7c54150d0cc0612c3f00e2cdaf76c" - integrity sha512-uNFCg478XovRi85iD42egu+eSFUmmka750Jy7L5tfHI5hQKKtbPnxaSaXAbBqCDYrw3wx4tXjKwci4/QmsZJxw== - dependencies: - temp-dir "^2.0.0" - uuid "^3.3.2" - -term-size@^2.1.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/term-size/-/term-size-2.2.0.tgz#1f16adedfe9bdc18800e1776821734086fcc6753" - integrity sha512-a6sumDlzyHVJWb8+YofY4TW112G6p2FCPEAFk+59gIYHv3XHRhm9ltVQ9kli4hNWeQBwSpe8cRN25x0ROunMOw== - -terminal-link@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/terminal-link/-/terminal-link-2.1.1.tgz#14a64a27ab3c0df933ea546fba55f2d078edc994" - integrity sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ== - dependencies: - ansi-escapes "^4.2.1" - supports-hyperlinks "^2.0.0" - -terser-webpack-plugin@2.3.5: - version "2.3.5" - resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-2.3.5.tgz#5ad971acce5c517440ba873ea4f09687de2f4a81" - integrity sha512-WlWksUoq+E4+JlJ+h+U+QUzXpcsMSSNXkDy9lBVkSqDn1w23Gg29L/ary9GeJVYCGiNJJX7LnVc4bwL1N3/g1w== - dependencies: - cacache "^13.0.1" - find-cache-dir "^3.2.0" - jest-worker "^25.1.0" - p-limit "^2.2.2" - schema-utils "^2.6.4" - serialize-javascript "^2.1.2" - source-map "^0.6.1" - terser "^4.4.3" - webpack-sources "^1.4.3" - -terser-webpack-plugin@^1.4.3: - version "1.4.4" - resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.4.4.tgz#2c63544347324baafa9a56baaddf1634c8abfc2f" - integrity sha512-U4mACBHIegmfoEe5fdongHESNJWqsGU+W0S/9+BmYGVQDw1+c2Ow05TpMhxjPK1sRb7cuYq1BPl1e5YHJMTCqA== - dependencies: - cacache "^12.0.2" - find-cache-dir "^2.1.0" - is-wsl "^1.1.0" - schema-utils "^1.0.0" - serialize-javascript "^3.1.0" - source-map "^0.6.1" - terser "^4.1.2" - webpack-sources "^1.4.0" - worker-farm "^1.7.0" - -terser@^4.1.2, terser@^4.4.3, terser@^4.6.3: - version "4.7.0" - resolved "https://registry.yarnpkg.com/terser/-/terser-4.7.0.tgz#15852cf1a08e3256a80428e865a2fa893ffba006" - integrity sha512-Lfb0RiZcjRDXCC3OSHJpEkxJ9Qeqs6mp2v4jf2MHfy8vGERmVDuvjXdd/EnP5Deme5F2yBRBymKmKHCBg2echw== - dependencies: - commander "^2.20.0" - source-map "~0.6.1" - source-map-support "~0.5.12" - -test-exclude@^5.2.3: - version "5.2.3" - resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-5.2.3.tgz#c3d3e1e311eb7ee405e092dac10aefd09091eac0" - integrity sha512-M+oxtseCFO3EDtAaGH7iiej3CBkzXqFMbzqYAACdzKui4eZA+pq3tZEwChvOdNfa7xxy8BfbmgJSIr43cC/+2g== - dependencies: - glob "^7.1.3" - minimatch "^3.0.4" - read-pkg-up "^4.0.0" - require-main-filename "^2.0.0" - -test-exclude@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e" - integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w== - dependencies: - "@istanbuljs/schema" "^0.1.2" - glob "^7.1.4" - minimatch "^3.0.4" - -text-extensions@^1.0.0: - version "1.9.0" - resolved "https://registry.yarnpkg.com/text-extensions/-/text-extensions-1.9.0.tgz#1853e45fee39c945ce6f6c36b2d659b5aabc2a26" - integrity sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ== - -text-table@0.2.0, text-table@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" - integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= - -thenify-all@^1.0.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/thenify-all/-/thenify-all-1.6.0.tgz#1a1918d402d8fc3f98fbf234db0bcc8cc10e9726" - integrity sha1-GhkY1ALY/D+Y+/I02wvMjMEOlyY= - dependencies: - thenify ">= 3.1.0 < 4" - -"thenify@>= 3.1.0 < 4": - version "3.3.0" - resolved "https://registry.yarnpkg.com/thenify/-/thenify-3.3.0.tgz#e69e38a1babe969b0108207978b9f62b88604839" - integrity sha1-5p44obq+lpsBCCB5eLn2K4hgSDk= - dependencies: - any-promise "^1.0.0" - -throat@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/throat/-/throat-4.1.0.tgz#89037cbc92c56ab18926e6ba4cbb200e15672a6a" - integrity sha1-iQN8vJLFarGJJua6TLsgDhVnKmo= - -throat@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/throat/-/throat-5.0.0.tgz#c5199235803aad18754a667d659b5e72ce16764b" - integrity sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA== - -through2@^2.0.0, through2@^2.0.2: - version "2.0.5" - resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" - integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== - dependencies: - readable-stream "~2.3.6" - xtend "~4.0.1" - -through2@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/through2/-/through2-3.0.1.tgz#39276e713c3302edf9e388dd9c812dd3b825bd5a" - integrity sha512-M96dvTalPT3YbYLaKaCuwu+j06D/8Jfib0o/PxbVt6Amhv3dUAtW6rTV1jPgJSBG83I/e04Y6xkVdVhSRhi0ww== - dependencies: - readable-stream "2 || 3" - -through@2, "through@>=2.2.7 <3", through@^2.3.4, through@^2.3.6, through@^2.3.8: - version "2.3.8" - resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" - integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= - -thunky@^1.0.2: - version "1.1.0" - resolved "https://registry.yarnpkg.com/thunky/-/thunky-1.1.0.tgz#5abaf714a9405db0504732bbccd2cedd9ef9537d" - integrity sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA== - -timers-browserify@^2.0.4: - version "2.0.11" - resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.11.tgz#800b1f3eee272e5bc53ee465a04d0e804c31211f" - integrity sha512-60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ== - dependencies: - setimmediate "^1.0.4" - -timsort@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/timsort/-/timsort-0.3.0.tgz#405411a8e7e6339fe64db9a234de11dc31e02bd4" - integrity sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q= - -tiny-invariant@^1.0.2: - version "1.1.0" - resolved "https://registry.yarnpkg.com/tiny-invariant/-/tiny-invariant-1.1.0.tgz#634c5f8efdc27714b7f386c35e6760991d230875" - integrity sha512-ytxQvrb1cPc9WBEI/HSeYYoGD0kWnGEOR8RY6KomWLBVhqz0RgTwVO9dLrGz7dC+nN9llyI7OKAgRq8Vq4ZBSw== - -tiny-warning@^1.0.0, tiny-warning@^1.0.2, tiny-warning@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/tiny-warning/-/tiny-warning-1.0.3.tgz#94a30db453df4c643d0fd566060d60a875d84754" - integrity sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA== - -tmp@^0.0.33: - version "0.0.33" - resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" - integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== - dependencies: - os-tmpdir "~1.0.2" - -tmpl@1.0.x: - version "1.0.4" - resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.4.tgz#23640dd7b42d00433911140820e5cf440e521dd1" - integrity sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE= - -to-arraybuffer@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43" - integrity sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M= - -to-fast-properties@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" - integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= - -to-object-path@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" - integrity sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68= - dependencies: - kind-of "^3.0.2" - -to-readable-stream@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/to-readable-stream/-/to-readable-stream-1.0.0.tgz#ce0aa0c2f3df6adf852efb404a783e77c0475771" - integrity sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q== - -to-regex-range@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" - integrity sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg= - dependencies: - is-number "^3.0.0" - repeat-string "^1.6.1" - -to-regex-range@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" - integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== - dependencies: - is-number "^7.0.0" - -to-regex@^3.0.1, to-regex@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" - integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== - dependencies: - define-property "^2.0.2" - extend-shallow "^3.0.2" - regex-not "^1.0.2" - safe-regex "^1.1.0" - -toidentifier@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.0.tgz#7e1be3470f1e77948bc43d94a3c8f4d7752ba553" - integrity sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw== - -touch@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/touch/-/touch-3.1.0.tgz#fe365f5f75ec9ed4e56825e0bb76d24ab74af83b" - integrity sha512-WBx8Uy5TLtOSRtIq+M03/sKDrXCLHxwDcquSP2c43Le03/9serjQBIztjRz6FkJez9D/hleyAXTBGLwwZUw9lA== - dependencies: - nopt "~1.0.10" - -tough-cookie@^2.3.3, tough-cookie@^2.3.4, tough-cookie@^2.5.0, tough-cookie@~2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" - integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g== - dependencies: - psl "^1.1.28" - punycode "^2.1.1" - -tough-cookie@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-3.0.1.tgz#9df4f57e739c26930a018184887f4adb7dca73b2" - integrity sha512-yQyJ0u4pZsv9D4clxO69OEjLWYw+jbgspjTue4lTQZLfV0c5l1VmK2y1JK8E9ahdpltPOaAThPcp5nKPUgSnsg== - dependencies: - ip-regex "^2.1.0" - psl "^1.1.28" - punycode "^2.1.1" - -tr46@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/tr46/-/tr46-1.0.1.tgz#a8b13fd6bfd2489519674ccde55ba3693b706d09" - integrity sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk= - dependencies: - punycode "^2.1.0" - -tr46@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/tr46/-/tr46-2.0.2.tgz#03273586def1595ae08fedb38d7733cee91d2479" - integrity sha512-3n1qG+/5kg+jrbTzwAykB5yRYtQCTqOGKq5U5PE3b0a1/mzo6snDhjGS0zJVJunO0NrT3Dg1MLy5TjWP/UJppg== - dependencies: - punycode "^2.1.1" - -tree-kill@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/tree-kill/-/tree-kill-1.2.2.tgz#4ca09a9092c88b73a7cdc5e8a01b507b0790a0cc" - integrity sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A== - -trim-newlines@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613" - integrity sha1-WIeWa7WCpFA6QetST301ARgVphM= - -trim-newlines@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-2.0.0.tgz#b403d0b91be50c331dfc4b82eeceb22c3de16d20" - integrity sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA= - -trim-newlines@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-3.0.0.tgz#79726304a6a898aa8373427298d54c2ee8b1cb30" - integrity sha512-C4+gOpvmxaSMKuEf9Qc134F1ZuOHVXKRbtEflf4NTtuuJDEIJ9p5PXsalL8SkeRw+qit1Mo+yuvMPAKwWg/1hA== - -trim-off-newlines@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/trim-off-newlines/-/trim-off-newlines-1.0.1.tgz#9f9ba9d9efa8764c387698bcbfeb2c848f11adb3" - integrity sha1-n5up2e+odkw4dpi8v+sshI8RrbM= - -ts-invariant@^0.4.0, ts-invariant@^0.4.4: - version "0.4.4" - resolved "https://registry.yarnpkg.com/ts-invariant/-/ts-invariant-0.4.4.tgz#97a523518688f93aafad01b0e80eb803eb2abd86" - integrity sha512-uEtWkFM/sdZvRNNDL3Ehu4WVpwaulhwQszV8mrtcdeE8nN00BV9mAmQ88RkrBhFgl9gMgvjJLAQcZbnPXI9mlA== - dependencies: - tslib "^1.9.3" - -ts-jest@26.1.4: - version "26.1.4" - resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-26.1.4.tgz#87d41a96016a8efe4b8cc14501d3785459af6fa6" - integrity sha512-Nd7diUX6NZWfWq6FYyvcIPR/c7GbEF75fH1R6coOp3fbNzbRJBZZAn0ueVS0r8r9ral1VcrpneAFAwB3TsVS1Q== - dependencies: - bs-logger "0.x" - buffer-from "1.x" - fast-json-stable-stringify "2.x" - jest-util "26.x" - json5 "2.x" - lodash.memoize "4.x" - make-error "1.x" - mkdirp "1.x" - semver "7.x" - yargs-parser "18.x" - -ts-log@2.1.4: - version "2.1.4" - resolved "https://registry.yarnpkg.com/ts-log/-/ts-log-2.1.4.tgz#063c5ad1cbab5d49d258d18015963489fb6fb59a" - integrity sha512-P1EJSoyV+N3bR/IWFeAqXzKPZwHpnLY6j7j58mAvewHRipo+BQM2Y1f9Y9BjEQznKwgqqZm7H8iuixmssU7tYQ== - -ts-node@8.10.1: - version "8.10.1" - resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-8.10.1.tgz#77da0366ff8afbe733596361d2df9a60fc9c9bd3" - integrity sha512-bdNz1L4ekHiJul6SHtZWs1ujEKERJnHs4HxN7rjTyyVOFf3HaJ6sLqe6aPG62XTzAB/63pKRh5jTSWL0D7bsvw== - dependencies: - arg "^4.1.0" - diff "^4.0.1" - make-error "^1.1.1" - source-map-support "^0.5.17" - yn "3.1.1" - -ts-node@8.10.2: - version "8.10.2" - resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-8.10.2.tgz#eee03764633b1234ddd37f8db9ec10b75ec7fb8d" - integrity sha512-ISJJGgkIpDdBhWVu3jufsWpK3Rzo7bdiIXJjQc0ynKxVOVcg2oIrf2H2cejminGrptVc6q6/uynAHNCuWGbpVA== - dependencies: - arg "^4.1.0" - diff "^4.0.1" - make-error "^1.1.1" - source-map-support "^0.5.17" - yn "3.1.1" - -ts-pnp@1.1.6: - version "1.1.6" - resolved "https://registry.yarnpkg.com/ts-pnp/-/ts-pnp-1.1.6.tgz#389a24396d425a0d3162e96d2b4638900fdc289a" - integrity sha512-CrG5GqAAzMT7144Cl+UIFP7mz/iIhiy+xQ6GGcnjTezhALT02uPMRw7tgDSESgB5MsfKt55+GPWw4ir1kVtMIQ== - -ts-pnp@^1.1.6: - version "1.2.0" - resolved "https://registry.yarnpkg.com/ts-pnp/-/ts-pnp-1.2.0.tgz#a500ad084b0798f1c3071af391e65912c86bca92" - integrity sha512-csd+vJOb/gkzvcCHgTGSChYpy5f1/XKNsmvBGO4JXS+z1v2HobugDz4s1IeFXM3wZB44uczs+eazB5Q/ccdhQw== - -tslib@1.11.1: - version "1.11.1" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.11.1.tgz#eb15d128827fbee2841549e171f45ed338ac7e35" - integrity sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA== - -tslib@2.0.0, tslib@^2.0.0, tslib@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.0.0.tgz#18d13fc2dce04051e20f074cc8387fd8089ce4f3" - integrity sha512-lTqkx847PI7xEDYJntxZH89L2/aXInsyF2luSafe/+0fHOMjlBNXdH6th7f70qxLDhul7KZK0zC8V5ZIyHl0/g== - -tslib@^1.10.0, tslib@^1.11.1, tslib@^1.8.1, tslib@^1.9.0, tslib@^1.9.3: - version "1.13.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.13.0.tgz#c881e13cc7015894ed914862d276436fa9a47043" - integrity sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q== - -tsutils@^3.17.1: - version "3.17.1" - resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.17.1.tgz#ed719917f11ca0dee586272b2ac49e015a2dd759" - integrity sha512-kzeQ5B8H3w60nFY2g8cJIuH7JDpsALXySGtwGJ0p2LSjLgay3NdIpqq5SoOBe46bKDW2iq25irHCr8wjomUS2g== - dependencies: - tslib "^1.8.1" - -tty-browserify@0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" - integrity sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY= - -tunnel-agent@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" - integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= - dependencies: - safe-buffer "^5.0.1" - -tweetnacl@^0.14.3, tweetnacl@~0.14.0: - version "0.14.5" - resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" - integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= - -type-check@^0.4.0, type-check@~0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" - integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== - dependencies: - prelude-ls "^1.2.1" - -type-check@~0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" - integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= - dependencies: - prelude-ls "~1.1.2" - -type-detect@4.0.8: - version "4.0.8" - resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" - integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== - -type-fest@^0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.11.0.tgz#97abf0872310fed88a5c466b25681576145e33f1" - integrity sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ== - -type-fest@^0.13.1: - version "0.13.1" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.13.1.tgz#0172cb5bce80b0bd542ea348db50c7e21834d934" - integrity sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg== - -type-fest@^0.3.0: - version "0.3.1" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.3.1.tgz#63d00d204e059474fe5e1b7c011112bbd1dc29e1" - integrity sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ== - -type-fest@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.6.0.tgz#8d2a2370d3df886eb5c90ada1c5bf6188acf838b" - integrity sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg== - -type-fest@^0.8.1: - version "0.8.1" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" - integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== - -type-is@^1.6.16, type-is@~1.6.17, type-is@~1.6.18: - version "1.6.18" - resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" - integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== - dependencies: - media-typer "0.3.0" - mime-types "~2.1.24" - -type@^1.0.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/type/-/type-1.2.0.tgz#848dd7698dafa3e54a6c479e759c4bc3f18847a0" - integrity sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg== - -type@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/type/-/type-2.0.0.tgz#5f16ff6ef2eb44f260494dae271033b29c09a9c3" - integrity sha512-KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow== - -typedarray-to-buffer@^3.1.5: - version "3.1.5" - resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080" - integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q== - dependencies: - is-typedarray "^1.0.0" - -typedarray@^0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" - integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= - -typeorm@0.2.25, typeorm@^0.2.25: - version "0.2.25" - resolved "https://registry.yarnpkg.com/typeorm/-/typeorm-0.2.25.tgz#1a33513b375b78cc7740d2405202208b918d7dde" - integrity sha512-yzQ995fyDy5wolSLK9cmjUNcmQdixaeEm2TnXB5HN++uKbs9TiR6Y7eYAHpDlAE8s9J1uniDBgytecCZVFergQ== - dependencies: - app-root-path "^3.0.0" - buffer "^5.1.0" - chalk "^2.4.2" - cli-highlight "^2.0.0" - debug "^4.1.1" - dotenv "^6.2.0" - glob "^7.1.2" - js-yaml "^3.13.1" - mkdirp "^1.0.3" - reflect-metadata "^0.1.13" - sha.js "^2.4.11" - tslib "^1.9.0" - xml2js "^0.4.17" - yargonaut "^1.1.2" - yargs "^13.2.1" + version: 1.1.7 + resolution: "resolve@npm:1.1.7" + checksum: 3e928e9586d51dd985d42f524646267f08269261d844adfb54bf2e3a2f96e9bdb2be8e3db686145a7ac2b65c7cd894bdfa7b48b80b828ea5cb1d2abc403778b0 + languageName: node + linkType: hard + +"resolve@1.15.0, resolve@^1.12.0, resolve@^1.3.2": + version: 1.15.0 + resolution: "resolve@npm:1.15.0" + dependencies: + path-parse: ^1.0.6 + checksum: cfeb171d758a17a681b77c26b61dbfcdf328c19aaba8ce7563f3dac5644e650d15a44735fd7bc60fe58beb41a64c009f6575367a30f39d1300011ec60fa058f4 + languageName: node + linkType: hard + +"resolve@^1.1.6, resolve@^1.10.0, resolve@^1.13.1, resolve@^1.15.1, resolve@^1.17.0, resolve@^1.8.1": + version: 1.17.0 + resolution: "resolve@npm:1.17.0" + dependencies: + path-parse: ^1.0.6 + checksum: 5e3cdb8cf68c20b0c5edeb6505e7fab20c6776af0cae4b978836e557420aef7bb50acd25339bbb143b7f80533aa1988c7e827a0061aee9c237926a7d2c41f8d0 + languageName: node + linkType: hard + +"resolve@patch:resolve@1.1.7#builtin": + version: 1.1.7 + resolution: "resolve@patch:resolve@npm%3A1.1.7#builtin::version=1.1.7&hash=3388aa" + checksum: ca4e21815c78134fdb248d2175d98c2ead024c680a3a9c7b8ee13fc8a7f5157e061b13ae29ee07a60e1b9faea33c3740cb88d48d94966d7e94479add70d3f544 + languageName: node + linkType: hard + +"resolve@patch:resolve@1.15.0#builtin, resolve@patch:resolve@^1.12.0#builtin, resolve@patch:resolve@^1.3.2#builtin": + version: 1.15.0 + resolution: "resolve@patch:resolve@npm%3A1.15.0#builtin::version=1.15.0&hash=3388aa" + dependencies: + path-parse: ^1.0.6 + checksum: d544b03a55066b160338ca597c4a510247e4476dec897fc81e486e1e2a5c06083300dbd43675fb5c59b4bc331d12880e7cd397bef159dd0e5a0876a35296be33 + languageName: node + linkType: hard + +"resolve@patch:resolve@^1.1.6#builtin, resolve@patch:resolve@^1.10.0#builtin, resolve@patch:resolve@^1.13.1#builtin, resolve@patch:resolve@^1.15.1#builtin, resolve@patch:resolve@^1.17.0#builtin, resolve@patch:resolve@^1.8.1#builtin": + version: 1.17.0 + resolution: "resolve@patch:resolve@npm%3A1.17.0#builtin::version=1.17.0&hash=3388aa" + dependencies: + path-parse: ^1.0.6 + checksum: 4bcfb568860d0c361fd16c26b6fce429711138ff0de7dd353bdd73fcb5c7eede2f4602d40ccfa08ff45ec7ef9830845eab2021a46036af0a6e5b58bab1ff6399 + languageName: node + linkType: hard + +"responselike@npm:^1.0.2": + version: 1.0.2 + resolution: "responselike@npm:1.0.2" + dependencies: + lowercase-keys: ^1.0.0 + checksum: c904f1499418d0729e9592079ea653c8fd35d50a7cca1a17d58ef3137382f915cbd344daaa7fe2e2b064a6d9fab4bcdd8b2ab963c523829427b440b775fba8fd + languageName: node + linkType: hard + +"restore-cursor@npm:^2.0.0": + version: 2.0.0 + resolution: "restore-cursor@npm:2.0.0" + dependencies: + onetime: ^2.0.0 + signal-exit: ^3.0.2 + checksum: 950c88d84a4cb44d4db29766ab1f2c95e2d23e89a9c65e95e5ecc83be061d0405c5f9366ce6e53b769c9e718acd3be523cba55a9bd5e898b0d7ca1e69194438d + languageName: node + linkType: hard + +"restore-cursor@npm:^3.1.0": + version: 3.1.0 + resolution: "restore-cursor@npm:3.1.0" + dependencies: + onetime: ^5.1.0 + signal-exit: ^3.0.2 + checksum: 38e0af0830336dbc7d36b8d02e9194489dc52aaf64f41d02c427303a78552019434ad87082d67ce171a569a8be898caf7c70d5e17bd347cf6f7bd38d332d0bd4 + languageName: node + linkType: hard + +"ret@npm:~0.1.10": + version: 0.1.15 + resolution: "ret@npm:0.1.15" + checksum: 749c2fcae7071f5ecea4f8a18e35a79a8e8a58e522a16d843ecb9dfe9e647a76d92ae85c22690b02f87d3ab78b6b1f73341efc2fabbf59ed54dcfd9b1bdff883 + languageName: node + linkType: hard + +"retry@npm:0.12.0, retry@npm:^0.12.0": + version: 0.12.0 + resolution: "retry@npm:0.12.0" + checksum: 51f2fddddb2f157a0738c53c515682813a881df566da36992f3cf0a975ea84a19434c5abbc682056e97351540bcc7ea38fce2622d0b191c3b5cc1020b71ea0f2 + languageName: node + linkType: hard + +"retry@npm:^0.10.0": + version: 0.10.1 + resolution: "retry@npm:0.10.1" + checksum: 431b8b2e7551736512e18b9727b28f020ba9c3beab317eb769b84bdffd040bf55cbaa7a70f63984329ed003d9bfdef42fa589fce849fbdcb5f79f1ab8d68ee47 + languageName: node + linkType: hard + +"reusify@npm:^1.0.4": + version: 1.0.4 + resolution: "reusify@npm:1.0.4" + checksum: 08ef02ed0514f020a51131ba2e6c27c66ccebe25d49cfc83467a0d4054db4634a2853480d0895c710b645ab66af1a6fb3e183888306ae559413bd96c69f39ccd + languageName: node + linkType: hard + +"rework-visit@npm:1.0.0": + version: 1.0.0 + resolution: "rework-visit@npm:1.0.0" + checksum: ff782e79aabef1bae937a0873f75f2cec5e4269d3778bb31d020f47d259169617e742d222340a636aa81aa234bc9b34a14ee5695bcdbb80d71b6ad358b8b8307 + languageName: node + linkType: hard + +"rework@npm:1.0.1": + version: 1.0.1 + resolution: "rework@npm:1.0.1" + dependencies: + convert-source-map: ^0.3.3 + css: ^2.0.0 + checksum: fffaf7b8df23f304a9c2a58f9ded2a696f0b6ce36d92e38cb70bd769c992290dee9cbbf7b6aed089f0287d59a7954636092f43aefe2ab49ade926600ace19ffe + languageName: node + linkType: hard + +"rgb-regex@npm:^1.0.1": + version: 1.0.1 + resolution: "rgb-regex@npm:1.0.1" + checksum: 7701e22ec451e55a919c88f61a8006c70d004cc06d09a3e4806b0ffaff2ac0138fbbb3896d0e21f716c745e4ad6ae62114bf0920a78c7381e994e57b73575baf + languageName: node + linkType: hard + +"rgba-regex@npm:^1.0.0": + version: 1.0.0 + resolution: "rgba-regex@npm:1.0.0" + checksum: 4ffb946276ee7d7259a518eae89a3c6cce99736449ebed2c88ab26a076543766c62194c7dd06b8e4f5375e91c6e9bd21ebfc3ddf4b143f3688f260cafd9d466b + languageName: node + linkType: hard + +"rimraf@npm:2.6.3": + version: 2.6.3 + resolution: "rimraf@npm:2.6.3" + dependencies: + glob: ^7.1.3 + bin: + rimraf: ./bin.js + checksum: c9ce1854f19327606934558f4729b0f7aa7b9f1a3e7ca292d56261cce1074e20b0a0b16689166da6d8ab24ed9c30f7c71fba0df38e1d37f0233b6f48307c5c7a + languageName: node + linkType: hard + +"rimraf@npm:3.0.2, rimraf@npm:^3.0.0": + version: 3.0.2 + resolution: "rimraf@npm:3.0.2" + dependencies: + glob: ^7.1.3 + bin: + rimraf: bin.js + checksum: f0de3e445581e64a8a077af476cc30708e659f5779ec2ca2a161556d0792aa318a685923798ae22055b4ecd02b9aff444ef619578f7af53cf8e0e248031e3dee + languageName: node + linkType: hard + +"rimraf@npm:^2.5.4, rimraf@npm:^2.6.2, rimraf@npm:^2.6.3, rimraf@npm:^2.7.1": + version: 2.7.1 + resolution: "rimraf@npm:2.7.1" + dependencies: + glob: ^7.1.3 + bin: + rimraf: ./bin.js + checksum: 059efac2838ef917d4d1da1d80e724ad28c120cdf14ca6ed27ca72db2dc70be3e25421cba5947c6ec3d804c1d2bb9a247254653816ee0722bf943ffdd1ae19ef + languageName: node + linkType: hard + +"ripemd160@npm:^2.0.0, ripemd160@npm:^2.0.1": + version: 2.0.2 + resolution: "ripemd160@npm:2.0.2" + dependencies: + hash-base: ^3.0.0 + inherits: ^2.0.1 + checksum: e0370fbe779b1f15d74c3e7dffc0ce40b57b845fc7e431fab8a571958d5fd9c91eb0038a252604600e20786d117badea0cc4cf8816b8a6be6b9166b565ad6797 + languageName: node + linkType: hard + +"root-workspace-0b6124@workspace:.": + version: 0.0.0-use.local + resolution: "root-workspace-0b6124@workspace:." + dependencies: + "@typescript-eslint/eslint-plugin": 3.7.0 + "@typescript-eslint/parser": 3.7.0 + conventional-changelog-cli: 2.0.34 + eslint: 7.5.0 + eslint-config-prettier: 6.11.0 + eslint-plugin-jest: 23.18.0 + eslint-plugin-prettier: 3.1.4 + husky: 4.2.5 + lerna: 3.22.1 + lint-staged: 10.2.11 + opencollective: 1.0.3 + prettier: 2.0.5 + ts-jest: 26.1.4 + typescript: 3.9.5 + languageName: unknown + linkType: soft + +"rsvp@npm:^4.8.4": + version: 4.8.5 + resolution: "rsvp@npm:4.8.5" + checksum: eb70274fb392bb5e4f33ce8ebdee411fc8ce813ccf7d1684830c6752ba1b0346f0527107dcd7ce690ba7c1a9f2c731918fcd4ded11f57ed612897527a46c5f44 + languageName: node + linkType: hard + +"run-async@npm:^2.2.0, run-async@npm:^2.4.0": + version: 2.4.1 + resolution: "run-async@npm:2.4.1" + checksum: b1f06da336029be9c08312309ccdda107558ebf3e1212e960d7a54020f888a449ade2cb8b432a9a6750537ed80119a3c798f7592e8f8518f193ff4c50c13d4a3 + languageName: node + linkType: hard + +"run-parallel@npm:^1.1.9": + version: 1.1.9 + resolution: "run-parallel@npm:1.1.9" + checksum: a05ca86e9908b2d2f90d659a0eb4129e040341729fc9ac1fa8971bf0d77ca6ccfb69f9a559cecce9cd541a9328fa4fa19a3faa6d24698d93cf751efb90aec61f + languageName: node + linkType: hard + +"run-queue@npm:^1.0.0, run-queue@npm:^1.0.3": + version: 1.0.3 + resolution: "run-queue@npm:1.0.3" + dependencies: + aproba: ^1.1.1 + checksum: ffc37a7b55630b3d878c77be5125ba71c4f38345bf9ee83f2a122d546cc3fc74985f8e639d926fcfb33f475bf4a0ae122791bd8dd24bce5355eed0968420ba34 + languageName: node + linkType: hard + +"rx@npm:^4.1.0": + version: 4.1.0 + resolution: "rx@npm:4.1.0" + checksum: 2f8818608864d0a3fcaf8210f4dcc9a8acef2ad041c6b9478bbf2059d1b1efe289226d436a05dfb9038996b833529c28e69eab0f10f26baf3fadc1e5fb8f24bd + languageName: node + linkType: hard + +"rxjs@npm:^6.3.3, rxjs@npm:^6.4.0, rxjs@npm:^6.5.2, rxjs@npm:^6.5.3, rxjs@npm:^6.6.0": + version: 6.6.2 + resolution: "rxjs@npm:6.6.2" + dependencies: + tslib: ^1.9.0 + checksum: 9b16cd36093b87ce454726f14783e204b80431e6657d36191877e4d9d4b0713c73e5ee8b45be336b081d47b10cd016b3812ea3bd4b27bf87942b1410aa18ee04 + languageName: node + linkType: hard + +"safe-buffer@npm:5.1.2, safe-buffer@npm:~5.1.0, safe-buffer@npm:~5.1.1": + version: 5.1.2 + resolution: "safe-buffer@npm:5.1.2" + checksum: 2708587c1b5e70a5e420714ceb59f30f5791c6e831d39812125a008eca63a4ac18578abd020a0776ea497ff03b4543f2b2a223a7b9073bf2d6c7af9ec6829218 + languageName: node + linkType: hard + +"safe-buffer@npm:5.2.0": + version: 5.2.0 + resolution: "safe-buffer@npm:5.2.0" + checksum: e513079353a235749e64dc3b1ade741caf651c09d1291ee826e68d42c08913dcd2c76b291dd23979b0fd0bd551d99f4a3d8cc05aef4e9c75bebf6cbbd310b129 + languageName: node + linkType: hard + +"safe-buffer@npm:5.2.1, safe-buffer@npm:>=5.1.0, safe-buffer@npm:^5.0.1, safe-buffer@npm:^5.1.0, safe-buffer@npm:^5.1.1, safe-buffer@npm:^5.1.2, safe-buffer@npm:^5.2.0, safe-buffer@npm:~5.2.0": + version: 5.2.1 + resolution: "safe-buffer@npm:5.2.1" + checksum: 0bb57f0d8f9d1fa4fe35ad8a2db1f83a027d48f2822d59ede88fd5cd4ddad83c0b497213feb7a70fbf90597a70c5217f735b0eb1850df40ce9b4ae81dd22b3f9 + languageName: node + linkType: hard + +"safe-regex@npm:^1.1.0": + version: 1.1.0 + resolution: "safe-regex@npm:1.1.0" + dependencies: + ret: ~0.1.10 + checksum: c355e3163fda56bef5ef0896de55ab1e26504def2c7f9ee96ee8b90171a7da7a596048d256e61a51e2d041d9f4625d956d3702ebcfb7627c7a4846896d6ce3a4 + languageName: node + linkType: hard + +"safer-buffer@npm:>= 2.1.2 < 3, safer-buffer@npm:>= 2.1.2 < 3.0.0, safer-buffer@npm:^2.0.2, safer-buffer@npm:^2.1.0, safer-buffer@npm:~2.1.0": + version: 2.1.2 + resolution: "safer-buffer@npm:2.1.2" + checksum: 549ba83f5b314b59898efe3422120ce1ca7987a6eae5925a5fa5db930dc414d4a9dde0a5594f89638cd6ea60b6840ea961872908933ac2428d1726489db46fa5 + languageName: node + linkType: hard + +"sane@npm:^4.0.3": + version: 4.1.0 + resolution: "sane@npm:4.1.0" + dependencies: + "@cnakazawa/watch": ^1.0.3 + anymatch: ^2.0.0 + capture-exit: ^2.0.0 + exec-sh: ^0.3.2 + execa: ^1.0.0 + fb-watchman: ^2.0.0 + micromatch: ^3.1.4 + minimist: ^1.1.1 + walker: ~1.0.5 + bin: + sane: ./src/cli.js + checksum: e384e252021b1afef7459e994fe3ea79d114a0e7d23a03e660444abf15a2b4c50ce7eac2810b2c289e857c618d96fb35ee66356ebd4d6cb97cb11b54b2b29600 + languageName: node + linkType: hard + +"sanitize.css@npm:^10.0.0": + version: 10.0.0 + resolution: "sanitize.css@npm:10.0.0" + checksum: 26a08c35f331db1fb87c61b0c50b6607c4259dc44f428d7e3e36aa19f44bcfa423e19ed3e2c6598eeb571759bd8d486b2c4b7720c21e4ecab7d4a045b85b3963 + languageName: node + linkType: hard + +"saslprep@npm:^1.0.0": + version: 1.0.3 + resolution: "saslprep@npm:1.0.3" + dependencies: + sparse-bitfield: ^3.0.3 + checksum: d007f50fe6578814d7b6c06f528cf7b08f1e12292b1c7d671a29a7a709cec29527d85352d1de3e020b3ee30017a9abd58252ff27b5042b889acd4a67b089c38c + languageName: node + linkType: hard + +"sass-loader@npm:8.0.2": + version: 8.0.2 + resolution: "sass-loader@npm:8.0.2" + dependencies: + clone-deep: ^4.0.1 + loader-utils: ^1.2.3 + neo-async: ^2.6.1 + schema-utils: ^2.6.1 + semver: ^6.3.0 + peerDependencies: + fibers: ">= 3.1.0" + node-sass: ^4.0.0 + sass: ^1.3.0 + webpack: ^4.36.0 || ^5.0.0 + peerDependenciesMeta: + fibers: + optional: true + node-sass: + optional: true + sass: + optional: true + checksum: e23d9b308f0792fb9ca3ebe314d5c9c96dfa833f89f457e4fc9c5026dacbfbb81e65b1e9b924f6aa11d749e2ba033acf7d1767929d6f9628c45525535bceb889 + languageName: node + linkType: hard + +"sax@npm:>=0.6.0, sax@npm:^1.2.4, sax@npm:~1.2.4": + version: 1.2.4 + resolution: "sax@npm:1.2.4" + checksum: 9d7668d69105e89e2c1a4b2fdc12c72e1a2f78b825f7b4a8a2ea5cdfebf70920bd17715bed55264c3b3959616a0695f8ad2d098bf6944fbd0953ee9c695dceef + languageName: node + linkType: hard + +"saxes@npm:^3.1.9": + version: 3.1.11 + resolution: "saxes@npm:3.1.11" + dependencies: + xmlchars: ^2.1.1 + checksum: dbdbd14f903e2a18c3efb422401ad0630dd25e4ed6a52fd01e42b205508ee70e5170da4d39ab2957eca54dc2934b9c8fa6f2f90292b136bfa935db7877177a08 + languageName: node + linkType: hard + +"saxes@npm:^5.0.0": + version: 5.0.1 + resolution: "saxes@npm:5.0.1" + dependencies: + xmlchars: ^2.2.0 + checksum: 6ad14be68da9b84af0fa3de346fd78bd3a8e8a73a462e2852279a1fff1e2619988919294001abe3ecef3783f9498962a0619d960ccca4ec2ca914526fde1acc2 + languageName: node + linkType: hard + +"scheduler@npm:^0.18.0": + version: 0.18.0 + resolution: "scheduler@npm:0.18.0" + dependencies: + loose-envify: ^1.1.0 + object-assign: ^4.1.1 + checksum: 007678c559669029a5f8a029022548c2f39258b8087d1da0a3f5c5360abf3aa2794a87f56998151432f48910eca53331206cd712b751188623ca3d1bcab38b9f + languageName: node + linkType: hard + +"scheduler@npm:^0.19.1": + version: 0.19.1 + resolution: "scheduler@npm:0.19.1" + dependencies: + loose-envify: ^1.1.0 + object-assign: ^4.1.1 + checksum: 804f990b9f370cca6d42b65f3cba2cc2bfed4973ee5623bed1ea36a6627842db8c891e2e5ac003f06f9ee892d1d3396921e27fa077346caf0213af05776e8dee + languageName: node + linkType: hard + +"schema-utils@npm:^1.0.0": + version: 1.0.0 + resolution: "schema-utils@npm:1.0.0" + dependencies: + ajv: ^6.1.0 + ajv-errors: ^1.0.0 + ajv-keywords: ^3.1.0 + checksum: d2f753e7a17c6054cb8c6d0806daeddac73ea2a192e452f506e50af14da1999d1435618b81a616d9f72e1606c0e46bf1870c9b429bce5d3a949d34455e6e54ff + languageName: node + linkType: hard + +"schema-utils@npm:^2.0.0, schema-utils@npm:^2.5.0, schema-utils@npm:^2.6.0, schema-utils@npm:^2.6.1, schema-utils@npm:^2.6.4, schema-utils@npm:^2.6.5, schema-utils@npm:^2.6.6, schema-utils@npm:^2.7.0": + version: 2.7.0 + resolution: "schema-utils@npm:2.7.0" + dependencies: + "@types/json-schema": ^7.0.4 + ajv: ^6.12.2 + ajv-keywords: ^3.4.1 + checksum: 5d3e7c9e532712bbe0b7ba2f0bdbebc88ca3066c00ceb89877667c3c7b7ea5ee65e0ff7ffbf5164ebda43b0726166d4d39b382e91e9554b7ad2f6b06e77f947d + languageName: node + linkType: hard + +"scuid@npm:^1.1.0": + version: 1.1.0 + resolution: "scuid@npm:1.1.0" + checksum: 04c2383a8e9c88dbe27382ab46e580f6dcfe7b73080a57373597cca324f72ae31808e9f0f9b1c62f18be204ce1bfd55270125b4e88ae2b840bf3517b2f1b6b50 + languageName: node + linkType: hard + +"section-matter@npm:^1.0.0": + version: 1.0.0 + resolution: "section-matter@npm:1.0.0" + dependencies: + extend-shallow: ^2.0.1 + kind-of: ^6.0.0 + checksum: 4c64ed0cf3fb58ab216a04185ee5b51790c8033bd121cf69bf74c9686d7100198606a63dbc05db336ebca28cd80a325d9b7ad564d7e0929ead8556eb3a38de65 + languageName: node + linkType: hard + +"select-hose@npm:^2.0.0": + version: 2.0.0 + resolution: "select-hose@npm:2.0.0" + checksum: 4da089c0225bfddf86d6e3942d822bab66da27c39c72baacab5bb8b1bfa7e5da45b8dfac95bd7fbe2d5b0def50c1383d1701b92f22891400abcd562bb4324af7 + languageName: node + linkType: hard + +"select@npm:^1.1.2": + version: 1.1.2 + resolution: "select@npm:1.1.2" + checksum: 66be63b7cf0973af48cebcca47909d0ba703bb7f01373f9ebf19880dc8fe9c97f41e2ebdefee144f60bbf416cafbf77dfb98cd1776e62d7afc336b843f1009b1 + languageName: node + linkType: hard + +"selfsigned@npm:^1.10.7": + version: 1.10.7 + resolution: "selfsigned@npm:1.10.7" + dependencies: + node-forge: 0.9.0 + checksum: ef53d4801c5cb67690dba94b105e3d87d243f1b1254c7cc02db51d7cb352ddfece065951874515b7c23d52025c250d9f50d74dbe547ba38cca8d15c5ad4ad5e6 + languageName: node + linkType: hard + +"semver-compare@npm:^1.0.0": + version: 1.0.0 + resolution: "semver-compare@npm:1.0.0" + checksum: 9f3a74ca5f829c6b643668281228e2af310d9cb918a9d722e0c9426c4244c32346d29e955bbe796c46341f644fc741d888ca02e573f7aa230542809b03b0d8ec + languageName: node + linkType: hard + +"semver-diff@npm:^3.1.1": + version: 3.1.1 + resolution: "semver-diff@npm:3.1.1" + dependencies: + semver: ^6.3.0 + checksum: d5c9b693e6118bf56226b52fe4bb51f1f05fd7b91bd7979d3d01b32d4e136e16e4ea110f28f0690608712473d682e7a71a05f0ab65b8ba4a70d63b536d4c6278 + languageName: node + linkType: hard + +"semver-regex@npm:^2.0.0": + version: 2.0.0 + resolution: "semver-regex@npm:2.0.0" + checksum: 9b96cc8bd559c1d46968b334ccc88115a2d9d2f7a2125d6838471114ed0c52057e77aae760fbe4932aee06687584733b32aed6d2c9654b2db33e383bfb8f26ce + languageName: node + linkType: hard + +"semver@npm:2 || 3 || 4 || 5, semver@npm:2.x || 3.x || 4 || 5, semver@npm:^5.1.0, semver@npm:^5.4.1, semver@npm:^5.5.0, semver@npm:^5.5.1, semver@npm:^5.6.0, semver@npm:^5.7.0, semver@npm:^5.7.1": + version: 5.7.1 + resolution: "semver@npm:5.7.1" + bin: + semver: ./bin/semver + checksum: 06ff0ed753ebf741b7602be8faad620d6e160a2cb3f61019d00d919c8bca141638aa23c34da779b8595afdc9faa3678bfbb5f60366b6a4f65f98cf86605bbcdb + languageName: node + linkType: hard + +"semver@npm:4.3.2": + version: 4.3.2 + resolution: "semver@npm:4.3.2" + bin: + semver: ./bin/semver + checksum: 325999b7241266b130324d54edba4432413de2afe358c7c482ccf104d3b870eabb655db2178ee966473f4dfcbdcf5f5808d1fb26a670908ba3cca2568ea5f95b + languageName: node + linkType: hard + +"semver@npm:6.3.0, semver@npm:^6.0.0, semver@npm:^6.1.2, semver@npm:^6.2.0, semver@npm:^6.3.0": + version: 6.3.0 + resolution: "semver@npm:6.3.0" + bin: + semver: ./bin/semver.js + checksum: f0d155c06a67cc7e500c92d929339f1c6efd4ce9fe398aee6acc00a2333489cca0f5b4e76ee7292beba237fcca4b5a3d4a6153471f105f56299801bdab37289f + languageName: node + linkType: hard + +"semver@npm:7.0.0": + version: 7.0.0 + resolution: "semver@npm:7.0.0" + bin: + semver: bin/semver.js + checksum: 5162b31e9902be1d51d63523eb21d28164d632f527cb0dc439a58d6eaf1a2f3c49c4e2a0f7cf8d650f673638ae34ac7e0c7c2048ff66bc5dc1298ef8551575b5 + languageName: node + linkType: hard + +"semver@npm:7.x, semver@npm:^7.2.1, semver@npm:^7.3.2": + version: 7.3.2 + resolution: "semver@npm:7.3.2" + bin: + semver: bin/semver.js + checksum: bceb46d396d039afb5be2b2860bce1b0a43ecbadc72dde7ebe9c56dd9035ca50d9b8e086208ff9bbe53773ebde0bcfc6fc0842d7358398bca7054bb9ced801e3 + languageName: node + linkType: hard + +"send@npm:0.17.1": + version: 0.17.1 + resolution: "send@npm:0.17.1" + 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 + checksum: 58e4ab2e07e8dfb206ca954a9b85f4e367aba0e4d59ce4c9c96a82034385b67f25d33ad526fdb69d635744bbe4d8afea06e2c0348d7d32920e3489d86dc3ec6f + languageName: node + linkType: hard + +"sentence-case@npm:^3.0.3": + version: 3.0.3 + resolution: "sentence-case@npm:3.0.3" + dependencies: + no-case: ^3.0.3 + tslib: ^1.10.0 + upper-case-first: ^2.0.1 + checksum: cfa123198b9c5303b0c132bd8dd9c456513fa6798264e5f492e0a9cb9d08643dfc40ed7d678940e2162aa1795de9843962cffea082b7586ae650bd1b2be37a96 + languageName: node + linkType: hard + +"serialize-javascript@npm:^2.1.2": + version: 2.1.2 + resolution: "serialize-javascript@npm:2.1.2" + checksum: 9a4d4da6469e327332203438eed9a408e0618519d18aaba3790c88bf87712df4d577423d8fbd7122753800fa12afe19540cba111178ab0cf1f33c2b5771731bf + languageName: node + linkType: hard + +"serialize-javascript@npm:^3.1.0": + version: 3.1.0 + resolution: "serialize-javascript@npm:3.1.0" + dependencies: + randombytes: ^2.1.0 + checksum: e3036658c26b4aa0c74b89c91dc702f1b98c34ffc108e7944e2e227f910896367e98374a1a8c9923385ddfccd1759bfbd133d7857f4e315070594bb8761740e7 + languageName: node + linkType: hard + +"serve-handler@npm:^6.1.3": + version: 6.1.3 + resolution: "serve-handler@npm:6.1.3" + dependencies: + bytes: 3.0.0 + content-disposition: 0.5.2 + fast-url-parser: 1.1.3 + mime-types: 2.1.18 + minimatch: 3.0.4 + path-is-inside: 1.0.2 + path-to-regexp: 2.2.1 + range-parser: 1.2.0 + checksum: 493e7556ec53bc6c8616ffc58697d93c5ebc8ddeb38de39b5381140a8467bb720fbbd58fbe91de25ea9ccc98ce8b11131ccd7e160ddf891ca5199e7f1437cc18 + languageName: node + linkType: hard + +"serve-index@npm:^1.9.1": + version: 1.9.1 + resolution: "serve-index@npm:1.9.1" + 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 + checksum: 035c0b7d5f0457753cf6fdb3ee7d4eb94fab8abd888780ba4d84feaacc72e462ba369d5dfb92c9f0a8c770f2a13b2de32f36c237eb206fc9e1662ada61b5f489 + languageName: node + linkType: hard + +"serve-static@npm:1.14.1": + version: 1.14.1 + resolution: "serve-static@npm:1.14.1" + dependencies: + encodeurl: ~1.0.2 + escape-html: ~1.0.3 + parseurl: ~1.3.3 + send: 0.17.1 + checksum: 97e8c94ec02950d019000ca12a8e0b4fdeaaabb7ae965c1c05557b55b48114716ae92688972a8d9f06a5e2d5957c305253a859ec223bb39a1e0732366d0e2768 + languageName: node + linkType: hard + +"set-blocking@npm:^2.0.0, set-blocking@npm:~2.0.0": + version: 2.0.0 + resolution: "set-blocking@npm:2.0.0" + checksum: 0ac2403b0c2d39bf452f6d5d17dfd3cb952b9113098e1231cc0614c436e2f465637e39d27cf3b93556f5c59795e9790fd7e98da784c5f9919edeba4295ffeb29 + languageName: node + linkType: hard + +"set-value@npm:^2.0.0, set-value@npm:^2.0.1": + version: 2.0.1 + resolution: "set-value@npm:2.0.1" + dependencies: + extend-shallow: ^2.0.1 + is-extendable: ^0.1.1 + is-plain-object: ^2.0.3 + split-string: ^3.0.1 + checksum: a97a99a00cc5ed3034ccd690ff4dde167e4182ec4ef2fd5277637a6e388839292559301408b91405534b44e76450bdd443ac95427fde40e9a1a62102c1262bd1 + languageName: node + linkType: hard + +"setimmediate@npm:^1.0.4, setimmediate@npm:^1.0.5": + version: 1.0.5 + resolution: "setimmediate@npm:1.0.5" + checksum: 87884d8add4779fe47ccf763396a5bf875640ae34d80a10802da4de5c25d87647c12f6e7748fd5b8c143b57201caf2a5a781631456c228825f166ca305c12f20 + languageName: node + linkType: hard + +"setprototypeof@npm:1.1.0": + version: 1.1.0 + resolution: "setprototypeof@npm:1.1.0" + checksum: 8a3fb2ff4bf7daf0f8fb0e52d87d6e3dc387599e1c7a42833fddc1d711e87f7f187a6f957137a435ae154a98877e4357569f1fb48f3d17e96242621cd469e1f6 + languageName: node + linkType: hard + +"setprototypeof@npm:1.1.1": + version: 1.1.1 + resolution: "setprototypeof@npm:1.1.1" + checksum: 0efed4da5aec7535828ac07c3b560f0a54257a4a7d5390ffabe5530a083974aef577651507974215edb92a51efa142f22fb3242e24d630ba6adcbfc9e7f1ff2b + languageName: node + linkType: hard + +"setprototypeof@npm:1.2.0": + version: 1.2.0 + resolution: "setprototypeof@npm:1.2.0" + checksum: 72691439857719aa33ec11ebc97960347f0f96e75c2fe65d0f2ca5c9c44fb1aa026e2ae528959624ed3ae3820fe06bfb1aded306402c5c941afd3dfdf47f79d0 + languageName: node + linkType: hard + +"sha.js@npm:^2.4.0, sha.js@npm:^2.4.11, sha.js@npm:^2.4.8": + version: 2.4.11 + resolution: "sha.js@npm:2.4.11" + dependencies: + inherits: ^2.0.1 + safe-buffer: ^5.0.1 + bin: + sha.js: ./bin.js + checksum: 7554240ab76e683f7115123eb4815aae16b5fc6f2cdff97009831ad5b17b107ffcef022526211f7306957bce7a67fa4d0ccad79a3040c5073414365595e90516 + languageName: node + linkType: hard + +"shallow-clone@npm:^0.1.2": + version: 0.1.2 + resolution: "shallow-clone@npm:0.1.2" + dependencies: + is-extendable: ^0.1.1 + kind-of: ^2.0.1 + lazy-cache: ^0.2.3 + mixin-object: ^2.0.1 + checksum: 33b5ed403c14b77c930c4ad92d88cafdc318598a8ccb4e52c59d6db96d27dd50e415e2170eb1b3423adff2c0e036d7d27d62ac474edbe0712874b39c674c2d5f + languageName: node + linkType: hard + +"shallow-clone@npm:^3.0.0": + version: 3.0.1 + resolution: "shallow-clone@npm:3.0.1" + dependencies: + kind-of: ^6.0.2 + checksum: e329e054c286f0681fd8a9e5c353999519332f12510a99e189ea9cfa0337adb6f1414639d44493418ef6790a693b78c354525269f5db25a9feddd8b4d7891a62 + languageName: node + linkType: hard + +"shebang-command@npm:^1.2.0": + version: 1.2.0 + resolution: "shebang-command@npm:1.2.0" + dependencies: + shebang-regex: ^1.0.0 + checksum: 2a1e0092a6b80b14ec742ef4e982be8aa670edc7de3e8c68b26744fb535051f7d92518106387b52e9aabe0c1ceae33d23a7dfdb94c3d7f5035c3868b723a2854 + languageName: node + linkType: hard + +"shebang-command@npm:^2.0.0": + version: 2.0.0 + resolution: "shebang-command@npm:2.0.0" + dependencies: + shebang-regex: ^3.0.0 + checksum: 85aa394d8cedeedf2e03524d6defef67a2b07d3a17d7ee50d4281d62d3fca898f26ebe7aa7bf674d51b80f197aa1d346bc1a10e8efb04377b534f4322c621012 + languageName: node + linkType: hard + +"shebang-regex@npm:^1.0.0": + version: 1.0.0 + resolution: "shebang-regex@npm:1.0.0" + checksum: cf1a41cb09023e7d39739d7145fcba57c3fabc6728b78ce706f7315cf52dfadf30f7eea664e069224fbcbbfb6ab853bc55ac45f494b47ee73fc209c98487fae5 + languageName: node + linkType: hard + +"shebang-regex@npm:^3.0.0": + version: 3.0.0 + resolution: "shebang-regex@npm:3.0.0" + checksum: ea18044ffaf18129ced5a246660a9171a7dff98999aaa9de8abb237d8a7711d8a1f76e16881399994ee429156717ce1c6a50c665bb18a4d55a7f80b9125b1f7d + languageName: node + linkType: hard + +"shell-quote@npm:1.7.2": + version: 1.7.2 + resolution: "shell-quote@npm:1.7.2" + checksum: 3b3d06814ca464cde8594c27bdd57a1f4c06b26ad2988b08b5819f97ac1edfd7cb7313fda1c909da33211972c72c5a7906b7da2b62078109f9d3274d3f404fa9 + languageName: node + linkType: hard + +"shelljs@npm:^0.8.3, shelljs@npm:^0.8.4": + version: 0.8.4 + resolution: "shelljs@npm:0.8.4" + dependencies: + glob: ^7.0.0 + interpret: ^1.0.0 + rechoir: ^0.6.2 + bin: + shjs: bin/shjs + checksum: bdf68e3c2a8a6d191dde3be2800bfcfd688c126344ccaf6cf7024cdaf824d0d3523b8e514cd52264f739cbabd2b0569637dd5a8183377347225af918e03ff5dc + languageName: node + linkType: hard + +"shellwords@npm:^0.1.1": + version: 0.1.1 + resolution: "shellwords@npm:0.1.1" + checksum: 3559ff550917ece921d252edf42eb54827540e9676e537137ace236df8f9b78e48c542ae0b3f8876fea0faf5826c97629d5b8cb9ac7dee287260e9804fb8132c + languageName: node + linkType: hard + +"shortid@npm:^2.2.15": + version: 2.2.15 + resolution: "shortid@npm:2.2.15" + dependencies: + nanoid: ^2.1.0 + checksum: 0b657c406153029ba5fe3df357115d31c53929b6e603cbd2ff2aae7ddc016290179dfaa49625a3abc8967df8d53d04bd2c07a617562c1057ace8558f67558235 + languageName: node + linkType: hard + +"side-channel@npm:^1.0.2": + version: 1.0.2 + resolution: "side-channel@npm:1.0.2" + dependencies: + es-abstract: ^1.17.0-next.1 + object-inspect: ^1.7.0 + checksum: cbac23d542734932f164d3b4fdbd0307f97aae96c135c03100ad1d23b2ce2cd887899e94d4c231b0af880760314e381e5ca63d2d56e9fcc43e0d7d535db12624 + languageName: node + linkType: hard + +"sift@npm:7.0.1": + version: 7.0.1 + resolution: "sift@npm:7.0.1" + checksum: 267d30f964324df4e55152d977cdca8da0a04e24f82c0ae0737d0dc771f613a415f5d26ad97ed5bcedbb032be2dfd78da9e4060b6131b4ee7cb0bd09e1095cf8 + languageName: node + linkType: hard + +"signal-exit@npm:^3.0.0, signal-exit@npm:^3.0.2": + version: 3.0.3 + resolution: "signal-exit@npm:3.0.3" + checksum: f8f3fec95c8d1f9ad7e3cce07e1195f84e7a85cdcb4e825e8a2b76aa5406a039083d2bc9662b3cf40e6948262f41277047d20e6fbd58c77edced0b18fab647d8 + languageName: node + linkType: hard + +"signedsource@npm:^1.0.0": + version: 1.0.0 + resolution: "signedsource@npm:1.0.0" + checksum: e6fdfce197bf4ad37c79078137ff8da4655da37caee4fa1c170475e12e0c4bb5104163fefaf81280099e284a19e81eded08a84bab1c4a358c710237473e37c96 + languageName: node + linkType: hard + +"simple-swizzle@npm:^0.2.2": + version: 0.2.2 + resolution: "simple-swizzle@npm:0.2.2" + dependencies: + is-arrayish: ^0.3.1 + checksum: a5a2c1c86cea94f42ab843508e7c68b5bbfd15acb08056d600ac2e9c7f7c41bc417e71160ea3034a5411d3cce186c801f7a56badfb3a854906ce163120318875 + languageName: node + linkType: hard + +"sisteransi@npm:^1.0.4": + version: 1.0.5 + resolution: "sisteransi@npm:1.0.5" + checksum: 6554debe10fa4c6a7e8d58531313fdb61c39bb435ba420f8d7a01d8aaffecc654cca846b586e33f3c904350e24f229d5bbd8069abdb583c93252849a0f73e933 + languageName: node + linkType: hard + +"sitemap@npm:^3.2.2": + version: 3.2.2 + resolution: "sitemap@npm:3.2.2" + dependencies: + lodash.chunk: ^4.2.0 + lodash.padstart: ^4.6.1 + whatwg-url: ^7.0.0 + xmlbuilder: ^13.0.0 + checksum: bb5c150de4d8cb5f12700d4857f27b680e4f63c9efa0dade30f835a79c1b3cc0ca4d2c6fbcf856fbc9f4269c37183fa26241166afb7c668a567c72aa89a0385d + languageName: node + linkType: hard + +"slash@npm:^1.0.0": + version: 1.0.0 + resolution: "slash@npm:1.0.0" + checksum: fb026d08e401ab066ab62d3588922fd3efede998c0f4dc2041f83c5032f561defa92adc72a8ab02b28aaf1b82cc062e1963c6833e86804c5035d93c05387d06e + languageName: node + linkType: hard + +"slash@npm:^2.0.0": + version: 2.0.0 + resolution: "slash@npm:2.0.0" + checksum: 19b39a8b711b2820521ed23f915ecd86c6f1f64190a26ea2890367bcdbf6963b9f812c78dde91836cef67674f8463fe1cee1d58414716992f2949b102ffc57a1 + languageName: node + linkType: hard + +"slash@npm:^3.0.0": + version: 3.0.0 + resolution: "slash@npm:3.0.0" + checksum: fc3e8597d822ee3ba6cd76e9b001cd5be315f9b81c3a03a29bb611c003d1484e3b29a9e7bc020298fa669b585ff7c9268f44513f60c186216eb6af3111a3e838 + languageName: node + linkType: hard + +"slice-ansi@npm:0.0.4": + version: 0.0.4 + resolution: "slice-ansi@npm:0.0.4" + checksum: 8fa79b3017a15042d91ab50f6c1ba5fa5ed6ff034f9bb1afe4597f5c7fff510deeae98b1f81e9139580909a497936866e40287f35973c7117e62829407fa2e81 + languageName: node + linkType: hard + +"slice-ansi@npm:^2.1.0": + version: 2.1.0 + resolution: "slice-ansi@npm:2.1.0" + dependencies: + ansi-styles: ^3.2.0 + astral-regex: ^1.0.0 + is-fullwidth-code-point: ^2.0.0 + checksum: 7578393cac91c28f8cb5fa5df36b826ad62c9e66313d2547770db8401570fa8f4aa20cd84ef9244fa054d8e9cc6bfc02578784bb89b238d384b99f2728a35a6d + languageName: node + linkType: hard + +"slice-ansi@npm:^3.0.0": + version: 3.0.0 + resolution: "slice-ansi@npm:3.0.0" + dependencies: + ansi-styles: ^4.0.0 + astral-regex: ^2.0.0 + is-fullwidth-code-point: ^3.0.0 + checksum: a31bd5c48a4997dcfc9494613cbf38157ae956b05ccdeedf905113e6ff81fd2b7d3b5c3f368e36fe941be28e0031ead4ea39355e9d647915357ce96ce70ace5b + languageName: node + linkType: hard + +"slice-ansi@npm:^4.0.0": + version: 4.0.0 + resolution: "slice-ansi@npm:4.0.0" + dependencies: + ansi-styles: ^4.0.0 + astral-regex: ^2.0.0 + is-fullwidth-code-point: ^3.0.0 + checksum: f411aa051802605c3dc8523edee42d39ef59d7c36e6bef6bf1e61d9d2a83894187f6af56911a43ec8e58b921996722d75b354a4c3050b924426ffd1b05da33f9 + languageName: node + linkType: hard + +"sliced@npm:1.0.1": + version: 1.0.1 + resolution: "sliced@npm:1.0.1" + checksum: af6bd9d9116298828d84a0c4ad417f941c61b72ed16cc289b97ad3669c2c41d13763b79385f3ac44c40a1e82f8c0774d18587b3b7125034fa6f80d10363a234c + languageName: node + linkType: hard + +"slide@npm:^1.1.6": + version: 1.1.6 + resolution: "slide@npm:1.1.6" + checksum: 13cc5b7889a79dba9f84096d63319086eb63e5b6876cfb2ef57e6b40f81ff03b1e370c931f11024ffd3c5540e17e449405bbc23f34ae0314a73636fc9366a545 + languageName: node + linkType: hard + +"smart-buffer@npm:^4.1.0": + version: 4.1.0 + resolution: "smart-buffer@npm:4.1.0" + checksum: 00a23d82a20eced9622cbba18ba781f9f8968ccfa70af7a33336ae55f54651c073aa072084c521f7e78199767e5b3584a0bbf3a47bb60e3e5b79ea4fc1ca61a1 + languageName: node + linkType: hard + +"snake-case@npm:^3.0.3": + version: 3.0.3 + resolution: "snake-case@npm:3.0.3" + dependencies: + dot-case: ^3.0.3 + tslib: ^1.10.0 + checksum: e14d63f5e7f22ef95f7a7a4d79919eb1b0b50f4351dfb2af415258e9159512a4f220c5358dd6125f243a9cbac9ccb7eddc6b47d5fe3bf58ff323cce6b03c0af5 + languageName: node + linkType: hard + +"snapdragon-node@npm:^2.0.1": + version: 2.1.1 + resolution: "snapdragon-node@npm:2.1.1" + dependencies: + define-property: ^1.0.0 + isobject: ^3.0.0 + snapdragon-util: ^3.0.1 + checksum: 75918b0d6061b6acf2b9a9833b8ba7cef068df141925e790269f25f0a33d1ceb9a0ebfc39286891c112bfffbbf87744223127dba53f55e85318e335e324b65b9 + languageName: node + linkType: hard + +"snapdragon-util@npm:^3.0.1": + version: 3.0.1 + resolution: "snapdragon-util@npm:3.0.1" + dependencies: + kind-of: ^3.2.0 + checksum: d1a7ab4171376f2caacae601372dacf7fdad055e63f5e7eb3e9bd87f069b41d6fc8f54726d26968682e1ba448d5de80e94f7613d9b708646b161c4789988fa75 + languageName: node + linkType: hard + +"snapdragon@npm:^0.8.1": + version: 0.8.2 + resolution: "snapdragon@npm:0.8.2" + dependencies: + base: ^0.11.1 + debug: ^2.2.0 + define-property: ^0.2.5 + extend-shallow: ^2.0.1 + map-cache: ^0.2.2 + source-map: ^0.5.6 + source-map-resolve: ^0.5.0 + use: ^3.1.0 + checksum: c30b63a732bf37dbd2147bf57b4d9eac651ab7b313d1521f73855154b2c2f5a3f2ad18bd47e21cc64b6991f868ecb2a99f8da973ca86da39956f1f0f720b7033 + languageName: node + linkType: hard + +"sockjs-client@npm:1.4.0": + version: 1.4.0 + resolution: "sockjs-client@npm:1.4.0" + dependencies: + debug: ^3.2.5 + eventsource: ^1.0.7 + faye-websocket: ~0.11.1 + inherits: ^2.0.3 + json3: ^3.3.2 + url-parse: ^1.4.3 + checksum: efe7e7bcf2758f5ab3947f750b9909ea442022911dfad5883f5133085b587d0ac96f579a0463be8ea0613d1d4c5ee68af33b0896b58b4b7734571d9290b6c1c0 + languageName: node + linkType: hard + +"sockjs@npm:0.3.19": + version: 0.3.19 + resolution: "sockjs@npm:0.3.19" + dependencies: + faye-websocket: ^0.10.0 + uuid: ^3.0.1 + checksum: 04c93f75468230e1279340799e3d5fa39978e591e1af4544b9981609c8b2b5f2720269fa11ee1e1bd4413e49bd717792e21f6d467f93337d2a9718ab9e9dc5f7 + languageName: node + linkType: hard + +"sockjs@npm:0.3.20": + version: 0.3.20 + resolution: "sockjs@npm:0.3.20" + dependencies: + faye-websocket: ^0.10.0 + uuid: ^3.4.0 + websocket-driver: 0.6.5 + checksum: 9a8596f800e66bdb718165e1e51bb20d04ebf2f9f837cb459a83060b78230ae787bb6bbbc75ded3c20409b935a6cf0e03fc762cf26b558cc1f7b557b6acc9fbc + languageName: node + linkType: hard + +"socks-proxy-agent@npm:^4.0.0": + version: 4.0.2 + resolution: "socks-proxy-agent@npm:4.0.2" + dependencies: + agent-base: ~4.2.1 + socks: ~2.3.2 + checksum: 9ba2aa45f8b0ccce092a014bb5ceca5d443b4808afaf933527d7628ac3462c497f4029a8fb7a5b7aef76326d2c9ab10d1470acf47a5543edd368ef2ed4810afe + languageName: node + linkType: hard + +"socks@npm:~2.3.2": + version: 2.3.3 + resolution: "socks@npm:2.3.3" + dependencies: + ip: 1.1.5 + smart-buffer: ^4.1.0 + checksum: 7078b67b57180f35230e01fb04b39bad4509bb1c43a434391a33f121405cc6b7b00e1a6565914f3ad633674a3a0296cd20cc2afcceadaf594c6bd45381ba018a + languageName: node + linkType: hard + +"sort-keys@npm:^1.0.0": + version: 1.1.2 + resolution: "sort-keys@npm:1.1.2" + dependencies: + is-plain-obj: ^1.0.0 + checksum: 78d9165ed35a19591685375cf85b7f45d94d0538af8cf162dec9ae67e6c631468169f9242e06f799a5bbb4207e90413f32dc528323f1f5d8edb0be51bf9f8880 + languageName: node + linkType: hard + +"sort-keys@npm:^2.0.0": + version: 2.0.0 + resolution: "sort-keys@npm:2.0.0" + dependencies: + is-plain-obj: ^1.0.0 + checksum: c0437ce7fbcc35e6f255f46cc4ba350cadac3199f4af3ee8c8b305f50a35b6ead4fec814a4d86ffa49c8ec9e5bf064877232a7d45270c6e31f725209a1c4ef3d + languageName: node + linkType: hard + +"source-list-map@npm:^2.0.0": + version: 2.0.1 + resolution: "source-list-map@npm:2.0.1" + checksum: d8d45f29987d00d995ccda308dcc78b710031a9958fdb5d26674d32220c952eb7a8562062638d91896628ae4eef30e1cd112a6a547563dfda0b013024c2a9bf7 + languageName: node + linkType: hard + +"source-map-resolve@npm:^0.5.0, source-map-resolve@npm:^0.5.2": + version: 0.5.3 + resolution: "source-map-resolve@npm:0.5.3" + dependencies: + atob: ^2.1.2 + decode-uri-component: ^0.2.0 + resolve-url: ^0.2.1 + source-map-url: ^0.4.0 + urix: ^0.1.0 + checksum: 042ad0c0ba70458ba45fc8726a4eb61068ca0a5273578994803e25fc0fb8da00854cf5004616c9b6d0cb7fcd528c50313789d75dfc56a2f5c789cbd332bf4331 + languageName: node + linkType: hard + +"source-map-support@npm:^0.5.17, source-map-support@npm:^0.5.6, source-map-support@npm:~0.5.12": + version: 0.5.19 + resolution: "source-map-support@npm:0.5.19" + dependencies: + buffer-from: ^1.0.0 + source-map: ^0.6.0 + checksum: 59d4efaae97755155b078413ecba63517e3ef054cc7ab767bbd30e6f3054be2ae8e8f5cce7eef53b7eb93e98fe27a58dd8f5e7abfb13144ba420ddaf5267bbb2 + languageName: node + linkType: hard + +"source-map-url@npm:^0.4.0": + version: 0.4.0 + resolution: "source-map-url@npm:0.4.0" + checksum: 84d509cfa1f6f5e0d2a36e17b8097422954e3007fbe4b741c2f1ec91551ac5493ffa0c21862a54bb8e0d31701fe2cba1129aced695f515d35d375bfad755eb98 + languageName: node + linkType: hard + +"source-map@npm:0.6.1, source-map@npm:^0.6.0, source-map@npm:^0.6.1, source-map@npm:~0.6.0, source-map@npm:~0.6.1": + version: 0.6.1 + resolution: "source-map@npm:0.6.1" + checksum: 8647829a0611724114022be455ca1c8a2c8ae61df81c5b3667d9b398207226a1e21174fb7bbf0b4dbeb27ac358222afb5a14f1c74a62a62b8883b012e5eb1270 + languageName: node + linkType: hard + +"source-map@npm:^0.5.0, source-map@npm:^0.5.6": + version: 0.5.7 + resolution: "source-map@npm:0.5.7" + checksum: 737face96577a2184a42f141607fcc2c9db5620cb8517ae8ab3924476defa138fc26b0bab31e98cbd6f19211ecbf78400b59f801ff7a0f87aa9faa79f7433e10 + languageName: node + linkType: hard + +"source-map@npm:^0.7.3": + version: 0.7.3 + resolution: "source-map@npm:0.7.3" + checksum: 351ce26ffa1ebf203660c0d70d7566c81e65d2d994d1c2d94da140808e02da34961673ce12ecea9b40797b96fbeb8c70bf71a4ad9f779f1a4fdbba75530bb386 + languageName: node + linkType: hard + +"space-separated-tokens@npm:^1.0.0": + version: 1.1.5 + resolution: "space-separated-tokens@npm:1.1.5" + checksum: 2b143776c39176e7faa020d9c96d41ecc33862139b8bc92d5551561e9ae7adbe537b3a51d381da563a953dbda82ea117cefaa7dec9075fb869596cb02d582abe + languageName: node + linkType: hard + +"sparse-bitfield@npm:^3.0.3": + version: 3.0.3 + resolution: "sparse-bitfield@npm:3.0.3" + dependencies: + memory-pager: ^1.0.2 + checksum: 3d7ea483df832df45c1a9b4905b2e2ffb9107b6b43db664ffaf03371000f9ec0db664c8d94600443e344c91be36c52a299ba627f2d15c7f2bcd2c2b7ded6f3b0 + languageName: node + linkType: hard + +"spawn-command@npm:^0.0.2-1": + version: 0.0.2 + resolution: "spawn-command@npm:0.0.2" + checksum: 961fb1551f2d5848509ec661f639c515e582034b010724fcaad6949148e21c50226e30889dd710a70dce25c4ba43437665aad621fc37c0f8a75fa9ec3e46a69f + languageName: node + linkType: hard + +"spdx-correct@npm:^3.0.0": + version: 3.1.1 + resolution: "spdx-correct@npm:3.1.1" + dependencies: + spdx-expression-parse: ^3.0.0 + spdx-license-ids: ^3.0.0 + checksum: f3413eb225ef9f13aa2ec05230ff7669bffad055a7f62ec85164dd27f00a9f1e19880554a8fa5350fc434764ff895836c207f98813511a0180b0e929581bfe01 + languageName: node + linkType: hard + +"spdx-exceptions@npm:^2.1.0": + version: 2.3.0 + resolution: "spdx-exceptions@npm:2.3.0" + checksum: 3cbd2498897dc384158666a9dd7435e3b42ece5da42fd967b218b790e248381d001ec77a676d13d1f4e8da317d97b7bc0ebf4fff37bfbb95923d49b024030c96 + languageName: node + linkType: hard + +"spdx-expression-parse@npm:^3.0.0": + version: 3.0.1 + resolution: "spdx-expression-parse@npm:3.0.1" + dependencies: + spdx-exceptions: ^2.1.0 + spdx-license-ids: ^3.0.0 + checksum: f0211cada3fa7cd9db2243143fb0e66e28a46d72d8268f38ad2196aac49408d87892cda6e5600d43d6b05ed2707cb2f4148deb27b092aafabc50a67038f4cbf5 + languageName: node + linkType: hard + +"spdx-license-ids@npm:^3.0.0": + version: 3.0.5 + resolution: "spdx-license-ids@npm:3.0.5" + checksum: 4ff7c0615a3c69a195b206a425e6a633ccb24e680ac21f5464b249b57ebb5c3f356f84a8e713599758be69ee4a849319d7fce7041b69e29acd9d31daed3fb8eb + languageName: node + linkType: hard + +"spdy-transport@npm:^3.0.0": + version: 3.0.0 + resolution: "spdy-transport@npm:3.0.0" + 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 + checksum: e717ce9d76a03052205950632cb316e4de863764fd968404820cb84f4a93da259e43d5c973c3444847157a41ad6316ffdd7a2862454a7862ebd84388d1ce6e2a + languageName: node + linkType: hard + +"spdy@npm:^4.0.1, spdy@npm:^4.0.2": + version: 4.0.2 + resolution: "spdy@npm:4.0.2" + 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 + checksum: 388d39324d706a0a73d1d16fa93397029b3eb47ff2aaa3ad58c3d9c7682ce53eb847795560dc08190b7e3f8404e8bf4814ff3fd74cf0c849796310f1cd8a5f92 + languageName: node + linkType: hard + +"speakeasy@npm:^2.0.0": + version: 2.0.0 + resolution: "speakeasy@npm:2.0.0" + dependencies: + base32.js: 0.0.1 + checksum: e52c99c35b57b527976fe81e6d23485da5aab1d6e3123338f4304cefb78d810177bd01224fed0d99be63da8f3ffd310f1ce4a0f097c5246b103f2753da66a20e + languageName: node + linkType: hard + +"split-string@npm:^3.0.1, split-string@npm:^3.0.2": + version: 3.1.0 + resolution: "split-string@npm:3.1.0" + dependencies: + extend-shallow: ^3.0.0 + checksum: 9b610d1509f8213dad7d38b5f0b49109ab53c2a93e7886c370a66b9eeb723706cd01b04b61b3d906ff6369314429412f8fad54b93d57fa50103d85884f0c175f + languageName: node + linkType: hard + +"split2@npm:^2.0.0": + version: 2.2.0 + resolution: "split2@npm:2.2.0" + dependencies: + through2: ^2.0.2 + checksum: cf58dc8aa424499cd68a9e7d9ae94441ff972ce0c1f9599bef9d65b3f4384913c557eeec939ea34e2832309d90b6ad6993c5b51b152cba2f72500299464e6a9c + languageName: node + linkType: hard + +"split@npm:^1.0.0": + version: 1.0.1 + resolution: "split@npm:1.0.1" + dependencies: + through: 2 + checksum: ed6bb44fd1b46527ff4435b6b843fcfe46c3ffcf19d4f7bc936a7dbf38b42c9c171112452a94ba631d6e8e0be80c87c1e79fb24a3c67e016756e8b5da35a0e9a + languageName: node + linkType: hard + +"sprintf-js@npm:~1.0.2": + version: 1.0.3 + resolution: "sprintf-js@npm:1.0.3" + checksum: 51df1bce9e577287f56822d79ac5bd94f6c634fccf193895f2a1d2db2e975b6aa7bc97afae9cf11d49b7c37fe4afc188ff5c4878be91f2c86eabd11c5df8b62c + languageName: node + linkType: hard + +"sshpk@npm:^1.7.0": + version: 1.16.1 + resolution: "sshpk@npm:1.16.1" + dependencies: + asn1: ~0.2.3 + assert-plus: ^1.0.0 + bcrypt-pbkdf: ^1.0.0 + dashdash: ^1.12.0 + ecc-jsbn: ~0.1.1 + getpass: ^0.1.1 + jsbn: ~0.1.0 + safer-buffer: ^2.0.2 + tweetnacl: ~0.14.0 + bin: + sshpk-conv: bin/sshpk-conv + sshpk-sign: bin/sshpk-sign + sshpk-verify: bin/sshpk-verify + checksum: 4bd7422634ec3730404186179e5d9ba913accc64449f18d594b3a757a3b81000719adc94cf0c93a7b3da42487ae42404a1f37bfaa7908a60743d4478382b9d78 + languageName: node + linkType: hard + +"ssri@npm:^6.0.0, ssri@npm:^6.0.1": + version: 6.0.1 + resolution: "ssri@npm:6.0.1" + dependencies: + figgy-pudding: ^3.5.1 + checksum: 828c8c24c993c77646e22e869f93ee0fd3406fed7d793a46fd2cb88b8fcf49ca610ac79a88776b2be62df92be7878cda334c8d98e041d6182eac33cf16cc65b6 + languageName: node + linkType: hard + +"ssri@npm:^7.0.0": + version: 7.1.0 + resolution: "ssri@npm:7.1.0" + dependencies: + figgy-pudding: ^3.5.1 + minipass: ^3.1.1 + checksum: 99506ae2e3371727892120e84a36ad11fd257bdd6e2c8adee942e96427f4cdf386802ed11787df2d22f2910afe8ec1919f804be0966ada353efde480dfd8c6a3 + languageName: node + linkType: hard + +"stable@npm:^0.1.8": + version: 0.1.8 + resolution: "stable@npm:0.1.8" + checksum: a430967bb543d4d1a5cbec81b48034006a467464f5d4bdf72bd7279da406956e1f8edaa56aab74ec17cc4e56ee61668dc4f1b380255507cf2f70c6ba589f7c48 + languageName: node + linkType: hard + +"stack-utils@npm:^1.0.1": + version: 1.0.2 + resolution: "stack-utils@npm:1.0.2" + checksum: 593a8bc5ca6d4bc0f97a5eb9b4d5739614a1037ccbeb05989de7e24c9352e2744c779611fa30a441ab40a97a1cc770d6cd4acdbc621fd80ea8d309c3d8068c49 + languageName: node + linkType: hard + +"stack-utils@npm:^2.0.2": + version: 2.0.2 + resolution: "stack-utils@npm:2.0.2" + dependencies: + escape-string-regexp: ^2.0.0 + checksum: a9fa702767defa95a14fe7a78083eadfc254c5e12e105b034242b47cc4e9ba4ba345b54b7218b8abbbf8f38d6a327b20aa0fdebb582eae5118f2cd004e7bace5 + languageName: node + linkType: hard + +"standard-as-callback@npm:^2.0.1": + version: 2.0.1 + resolution: "standard-as-callback@npm:2.0.1" + checksum: 58a0ddb90d674f6af7e099c1fedd339276e98a218fd88f1a6134a4910c5ff8d272815cf8cc758b2d61fa3f523853c8fa6ef3cb0692912e7ff35870dedffa8ffc + languageName: node + linkType: hard + +"state-toggle@npm:^1.0.0": + version: 1.0.3 + resolution: "state-toggle@npm:1.0.3" + checksum: 8c013394b3a345e89ceeaf9a57c670c48e324cff733c2e8e0add75695fea23e7f478f479ccd399d75305d02f90a3ce651d47dfcc77b057334412f543909add14 + languageName: node + linkType: hard + +"static-extend@npm:^0.1.1": + version: 0.1.2 + resolution: "static-extend@npm:0.1.2" + dependencies: + define-property: ^0.2.5 + object-copy: ^0.1.0 + checksum: c42052c35259769fabbede527b2ae81962b53cf3b7a5cb07bd5b0b295777641ba81ddb2f4a62df9970c96303357fc6ffb90f61a4a9e127e6e42c7895af9cd5ce + languageName: node + linkType: hard + +"statuses@npm:>= 1.4.0 < 2, statuses@npm:>= 1.5.0 < 2, statuses@npm:~1.5.0": + version: 1.5.0 + resolution: "statuses@npm:1.5.0" + checksum: 57735269bf231176a60deb80f6d60214cb4a87663b0937e79497afe9aebe2597f8377fd28893f4d1776205f18dd0b927774a26b72051411ac5108e9e2dfc77d2 + languageName: node + linkType: hard + +"std-env@npm:^2.2.1": + version: 2.2.1 + resolution: "std-env@npm:2.2.1" + dependencies: + ci-info: ^1.6.0 + checksum: b778cd317198f14e9d4cd6d36a225554ba3498c004c5217874b82f5bd08d5d43bc47bca9b5bcb9386b87844f1f5de4ee588539a25e79ef10be3a4a67093a9f41 + languageName: node + linkType: hard + +"stealthy-require@npm:^1.1.1": + version: 1.1.1 + resolution: "stealthy-require@npm:1.1.1" + checksum: f24a9bc613817dea37afcbf64578f2ba0195916d906ebdaa1c1d5b8e9d51fd462cbf4c61ae04217babd0cf662e6c0115fd972dffa8e62a7f6f44f3109fb4c796 + languageName: node + linkType: hard + +"stream-browserify@npm:^2.0.1": + version: 2.0.2 + resolution: "stream-browserify@npm:2.0.2" + dependencies: + inherits: ~2.0.1 + readable-stream: ^2.0.2 + checksum: d50d9a28df714f2d599f416388541de445bfa417039a4808a1ca68381f0152205b8e50dbc04e39959b3b1a9c5e561cab1ecb1bdf4f6ab2f66f6b1450000049d9 + languageName: node + linkType: hard + +"stream-each@npm:^1.1.0": + version: 1.2.3 + resolution: "stream-each@npm:1.2.3" + dependencies: + end-of-stream: ^1.1.0 + stream-shift: ^1.0.0 + checksum: 2b64a88075c48ab3f97f11a940118d529d09c2470bd582e19dc3136ccf372d9cba17c7e96f09abcf5644d124ce994b6e4bbb14925b78e5836ed46059a0af2991 + languageName: node + linkType: hard + +"stream-http@npm:^2.7.2": + version: 2.8.3 + resolution: "stream-http@npm:2.8.3" + dependencies: + builtin-status-codes: ^3.0.0 + inherits: ^2.0.1 + readable-stream: ^2.3.6 + to-arraybuffer: ^1.0.0 + xtend: ^4.0.0 + checksum: 7ef9e10567b1a49d6c05730427280ef7623a6b407df3981d5d14d30d56225c4d64857d7473ab8eca93dbcaaf897e4f4fda8b5b482cf26255e26f1a31d696c1b8 + languageName: node + linkType: hard + +"stream-shift@npm:^1.0.0": + version: 1.0.1 + resolution: "stream-shift@npm:1.0.1" + checksum: 5d777b222e460dc660ee29acad4f99649eb8d0051d3cb648fc92f3f77557b33d0a8ad656291c2cfa87703204191534a6003c2b035606a699674d0bb600353ad3 + languageName: node + linkType: hard + +"streamsearch@npm:0.1.2": + version: 0.1.2 + resolution: "streamsearch@npm:0.1.2" + checksum: f72befba95082d49be19cd4318112bc141f6cd7cbb201ee8079887f6f3cbcdf79c311977ce0eaa93d7d8c3e6b9727412f6177a87ced5b98d0fd4075723ad8eaf + languageName: node + linkType: hard + +"strict-uri-encode@npm:^1.0.0": + version: 1.1.0 + resolution: "strict-uri-encode@npm:1.1.0" + checksum: 6c80f6998a45414d7c124772383cc10ce7bd22586af80762407cded1569666564fb8c0a4c9c997ac39a1116d46dfffc5d57135e759a0acb66a4da1191f5a3a4a + languageName: node + linkType: hard + +"string-argv@npm:0.3.1": + version: 0.3.1 + resolution: "string-argv@npm:0.3.1" + checksum: 002a6902698eff6bd463ddd2b03864bf9be08a1359879243d94d3906ebbe984ff355d73224064be7504d20262eadb06897b3d40b5d7cefccacc69c9dc45c8d0e + languageName: node + linkType: hard + +"string-env-interpolation@npm:1.0.1": + version: 1.0.1 + resolution: "string-env-interpolation@npm:1.0.1" + checksum: 6a5942f31390b47488ea791cfc0c38f63e063e5d0fff460d95782010d1f08bab74bd08b9223c54e8dcadd26b360816aeeb25a5e4bc56b343538557400258962b + languageName: node + linkType: hard + +"string-length@npm:^2.0.0": + version: 2.0.0 + resolution: "string-length@npm:2.0.0" + dependencies: + astral-regex: ^1.0.0 + strip-ansi: ^4.0.0 + checksum: 44d79c40a4c998b333e72c5772e1b7b140687a3039315fa0579b4967a6dd2bff6d20c06489241ff32f261a4614e2d326305353bc6db4001179d43bf96c90754f + languageName: node + linkType: hard + +"string-length@npm:^3.1.0": + version: 3.1.0 + resolution: "string-length@npm:3.1.0" + dependencies: + astral-regex: ^1.0.0 + strip-ansi: ^5.2.0 + checksum: 10b2df41a57675f3d9dde96788261a4a37612c57929455b3c5fbbc2d7e6823432ba303321636f62a1f183cc8632db49dc81bd60e167ed21cd709570533a591ce + languageName: node + linkType: hard + +"string-length@npm:^4.0.1": + version: 4.0.1 + resolution: "string-length@npm:4.0.1" + dependencies: + char-regex: ^1.0.2 + strip-ansi: ^6.0.0 + checksum: afc433824703f1fe3d7e34a980055eb376e9f52ed69b90196c7520819cbc5550b9b1a6abaa22704f4f01c7b40191f22a5e7fe3885a005959b4487d89c7e94b94 + languageName: node + linkType: hard + +"string-width@npm:^1.0.1": + version: 1.0.2 + resolution: "string-width@npm:1.0.2" + dependencies: + code-point-at: ^1.0.0 + is-fullwidth-code-point: ^1.0.0 + strip-ansi: ^3.0.0 + checksum: b11745daa9398a1b3bb37ffa64263f9869c5f790901ed1242decb08171785346447112ead561cffde6b222a5ebeab9d2b382c72ae688859e852aa29325ca9d0b + languageName: node + linkType: hard + +"string-width@npm:^1.0.2 || 2, string-width@npm:^2.0.0, string-width@npm:^2.1.0, string-width@npm:^2.1.1": + version: 2.1.1 + resolution: "string-width@npm:2.1.1" + dependencies: + is-fullwidth-code-point: ^2.0.0 + strip-ansi: ^4.0.0 + checksum: 906b4887c39d247e9d12dfffb42bfe68655b52d27758eb13e069dce0f4cf2e7f82441dbbe44f7279298781e6f68e1c659451bd4d9e2bbe9d487a157ad14ae1bd + languageName: node + linkType: hard + +"string-width@npm:^3.0.0, string-width@npm:^3.1.0": + version: 3.1.0 + resolution: "string-width@npm:3.1.0" + dependencies: + emoji-regex: ^7.0.1 + is-fullwidth-code-point: ^2.0.0 + strip-ansi: ^5.1.0 + checksum: 54c5d1842dc122d8e0251ad50e00e91c06368f1aca44f41a67cd5ce013c4ba8f5a26f1b7f72a3e1644f38c62092a82c86b646aff514073894faf84b9564a38a0 + languageName: node + linkType: hard + +"string-width@npm:^4.0.0, string-width@npm:^4.1.0, string-width@npm:^4.2.0": + version: 4.2.0 + resolution: "string-width@npm:4.2.0" + dependencies: + emoji-regex: ^8.0.0 + is-fullwidth-code-point: ^3.0.0 + strip-ansi: ^6.0.0 + checksum: cf1e8acddf3d6d6e9e168628cc58cf1b33b1e7e801af2a0c18316e4e8beb62361eb9aad6eab2fc86de972ab149cb7262aedc2a5d0c2ce28873c91b171cce84d7 + languageName: node + linkType: hard + +"string.prototype.matchall@npm:^4.0.2": + version: 4.0.2 + resolution: "string.prototype.matchall@npm:4.0.2" + dependencies: + define-properties: ^1.1.3 + es-abstract: ^1.17.0 + has-symbols: ^1.0.1 + internal-slot: ^1.0.2 + regexp.prototype.flags: ^1.3.0 + side-channel: ^1.0.2 + checksum: 0ca2937d28a80ad10b3173ff8e2f4ac0aa101b127b8256c3a6e749b7ab619e250208848c7fd9a740760df7e94c5b225fc6d0830e0f9d0e1ef615f3149cd194a9 + languageName: node + linkType: hard + +"string.prototype.trimend@npm:^1.0.1": + version: 1.0.1 + resolution: "string.prototype.trimend@npm:1.0.1" + dependencies: + define-properties: ^1.1.3 + es-abstract: ^1.17.5 + checksum: 93046463de6a3b4ae27d0622ae8795239c8d372b1be1a60122fce591bf7578b719becf00bf04326642a868bc6185f35901119b61a246509dd0dc0666b2a803ed + languageName: node + linkType: hard + +"string.prototype.trimstart@npm:^1.0.1": + version: 1.0.1 + resolution: "string.prototype.trimstart@npm:1.0.1" + dependencies: + define-properties: ^1.1.3 + es-abstract: ^1.17.5 + checksum: 20c4a940f1ba65b0aa5abf0c319dceba4fbf04d24553583b0b82eba2711815d1e40663ce36175ed06475701dbe797cac81be1ec1dc4bb4416b2077e8b0409036 + languageName: node + linkType: hard + +"string_decoder@npm:^1.0.0, string_decoder@npm:^1.1.1": + version: 1.3.0 + resolution: "string_decoder@npm:1.3.0" + dependencies: + safe-buffer: ~5.2.0 + checksum: 0a09afb610cb538707fcf0a50a080f159040529eabdba82f23b04f1d1f90adf9ba18cc3800231c6ab2ee55dece047f4bed87c56da52b2afd85c3c7fb73eb7e48 + languageName: node + linkType: hard + +"string_decoder@npm:~1.1.1": + version: 1.1.1 + resolution: "string_decoder@npm:1.1.1" + dependencies: + safe-buffer: ~5.1.0 + checksum: bc2dc169d83df1b9e94defe7716bcad8a19ffe8211b029581cb0c6f9e83a6a7ba9ec3be38d179708a8643c692868a2b8b004ab159555dc26089ad3fa7b2158f5 + languageName: node + linkType: hard + +"stringify-object@npm:^3.3.0": + version: 3.3.0 + resolution: "stringify-object@npm:3.3.0" + dependencies: + get-own-enumerable-property-symbols: ^3.0.0 + is-obj: ^1.0.1 + is-regexp: ^1.0.0 + checksum: 4b0a6802f0294a3a340f31822a0802a4945f12b0823e640c9a3dd64b487abf0a0e7099b43d6133a9aa28a9b99ffe187ee5e066f0798ea60019c87e156bcaf6d3 + languageName: node + linkType: hard + +"strip-ansi@npm:6.0.0, strip-ansi@npm:^6.0.0": + version: 6.0.0 + resolution: "strip-ansi@npm:6.0.0" + dependencies: + ansi-regex: ^5.0.0 + checksum: 10568c91cadbef182a807c38dfa718dce15a35b12fcc97b96b6b2029d0508ef66ca93fabddeb49482d9b027495d1e18591858e80f27ad26861c4967c60fd207f + languageName: node + linkType: hard + +"strip-ansi@npm:^3.0.0, strip-ansi@npm:^3.0.1": + version: 3.0.1 + resolution: "strip-ansi@npm:3.0.1" + dependencies: + ansi-regex: ^2.0.0 + checksum: 98772dcf440d08f65790ee38cd186b1f139fa69b430e75f9d9c11f97058662f82a22c2ba03a30f502f948958264e99051524fbf1819edaa8a8bbb909ece297da + languageName: node + linkType: hard + +"strip-ansi@npm:^4.0.0": + version: 4.0.0 + resolution: "strip-ansi@npm:4.0.0" + dependencies: + ansi-regex: ^3.0.0 + checksum: 9ac63872c2ba5e8a946c6f3a9c1ab81db5b43bce0d24a33b016e5666d3efda421f721447a1962611053a3ca1595b8742b0216fcc25886958d4565b7afcd27013 + languageName: node + linkType: hard + +"strip-ansi@npm:^5.0.0, strip-ansi@npm:^5.1.0, strip-ansi@npm:^5.2.0": + version: 5.2.0 + resolution: "strip-ansi@npm:5.2.0" + dependencies: + ansi-regex: ^4.1.0 + checksum: 44a0d0d354f5f7b15f83323879a9112ea746daae7bef0b68238a27626ee757d9a04ce6590433841e14b325e8e7c5d62b8442885e50497e21b7cbca6da40d54ea + languageName: node + linkType: hard + +"strip-bom-string@npm:^1.0.0": + version: 1.0.0 + resolution: "strip-bom-string@npm:1.0.0" + checksum: 63cf934fcf06551b5529af0cd20638568754b25fc1365356da028081c61ef6619388596800976f93c1d32731c8068cea6103eda025dedb6e68b5d0818103df2b + languageName: node + linkType: hard + +"strip-bom@npm:^2.0.0": + version: 2.0.0 + resolution: "strip-bom@npm:2.0.0" + dependencies: + is-utf8: ^0.2.0 + checksum: d488310c44b2a089d1d2ff54e90198eb8d32e6d2016ae811c732b1a6472dea15ae72dc21ee35ee6729cf71e9b663b3216d3e48cd1e5fba3b6093fd0b19ae7d0b + languageName: node + linkType: hard + +"strip-bom@npm:^3.0.0": + version: 3.0.0 + resolution: "strip-bom@npm:3.0.0" + checksum: 361dd1dd08ae626940061570d20bcf73909d0459734b8880eb3d14176aa28f41cf85d13af036c323ce739e04ef3930a71b516950c5985b318bae3757ecb2974c + languageName: node + linkType: hard + +"strip-bom@npm:^4.0.0": + version: 4.0.0 + resolution: "strip-bom@npm:4.0.0" + checksum: 25a231aacba2c6ecf37d7389721ff214c7f979e97407c935eeb41f5c5513c80119aada86049408feab74d22e7f1b29d90c942d4d47a4e47868dd16daed035823 + languageName: node + linkType: hard + +"strip-comments@npm:^1.0.2": + version: 1.0.2 + resolution: "strip-comments@npm:1.0.2" + dependencies: + babel-extract-comments: ^1.0.0 + babel-plugin-transform-object-rest-spread: ^6.26.0 + checksum: 21d667d3ba6dc0e0cd377c64856e51a8399ea2e4b3e43df6f356c0e0a7bc7b6cf962d7069a1e9d0f2d72a67d2fe4b3b85e0e3dea23d71aa518b318744159326a + languageName: node + linkType: hard + +"strip-eof@npm:^1.0.0": + version: 1.0.0 + resolution: "strip-eof@npm:1.0.0" + checksum: 905cd8718ad2e7b3a9c4bc6a9ed409c38b8cef638845a9471884547de0dbe611828d584e749a38d3eebc2d3c830ea9c619d78875a639b7413d93080661807376 + languageName: node + linkType: hard + +"strip-final-newline@npm:^2.0.0": + version: 2.0.0 + resolution: "strip-final-newline@npm:2.0.0" + checksum: 74dbd8a602409706748db730200efab53ba739ed7888310e74e45697efbd760981df6d6f0fa34b23e973135fb07d3b22adae6e6d58898f692a094e49692c6c33 + languageName: node + linkType: hard + +"strip-indent@npm:^1.0.1": + version: 1.0.1 + resolution: "strip-indent@npm:1.0.1" + dependencies: + get-stdin: ^4.0.1 + bin: + strip-indent: cli.js + checksum: 9ec818484a53a8f564b7a56148db2883dad4fe665cc76583df5eb5b2e216b5ed48e4d63d1da525e990030c47c41d648e48053a505dd29f7a87568733b147a533 + languageName: node + linkType: hard + +"strip-indent@npm:^2.0.0": + version: 2.0.0 + resolution: "strip-indent@npm:2.0.0" + checksum: 3b416b1dcd3d462adf3c49b552c946ef84ac595a5821923e3eb270304898ba3d1fa569dc212d43e502c54ee296590dfa25b08da488d5fc0920785fe4341d76b0 + languageName: node + linkType: hard + +"strip-indent@npm:^3.0.0": + version: 3.0.0 + resolution: "strip-indent@npm:3.0.0" + dependencies: + min-indent: ^1.0.0 + checksum: 4a7860e94372753b90a48d032758464efbf194880880fd7636965b7137ae4af24ce77a43d223a602cac787e2e95214aaa2f2470a65986e3d6ffa0e1c3dd887f6 + languageName: node + linkType: hard + +"strip-json-comments@npm:^3.0.1, strip-json-comments@npm:^3.1.0": + version: 3.1.1 + resolution: "strip-json-comments@npm:3.1.1" + checksum: f16719ce25abc58a55ef82b1c27f541dcfa5d544f17158f62d10be21ff9bd22fde45a53c592b29d80ad3c97ccb67b7451c4833913fdaeadb508a40f5e0a9c206 + languageName: node + linkType: hard + +"strip-json-comments@npm:~2.0.1": + version: 2.0.1 + resolution: "strip-json-comments@npm:2.0.1" + checksum: e60d99aa2849c27a04dce0620334f45822197df6b83664dd3746971e9a0a766d989dbb8d87f9cb7350725d2b5df401a2343222ad06e36a1ba7d62c6633267fcb + languageName: node + linkType: hard + +"strong-log-transformer@npm:^2.0.0": + version: 2.1.0 + resolution: "strong-log-transformer@npm:2.1.0" + dependencies: + duplexer: ^0.1.1 + minimist: ^1.2.0 + through: ^2.3.4 + bin: + sl-log-transformer: bin/sl-log-transformer.js + checksum: 46e84ece91a275cff500755cb10a730af3bdf64ebe559d85b2041d4c6b40a02f14a6f78c1af01c9aa280661110403e4de27a560e5281410fdaf8a37b1cbe647b + languageName: node + linkType: hard + +"style-loader@npm:0.23.1": + version: 0.23.1 + resolution: "style-loader@npm:0.23.1" + dependencies: + loader-utils: ^1.1.0 + schema-utils: ^1.0.0 + checksum: 9d8f17677bcc9a6b0dc3f23909dcb3c9976e3e37d53768ff5ffe915a62e50c6ed347b79d4f5613670289547bbfa0e1be968ac89ecffb600553e1931c761b1167 + languageName: node + linkType: hard + +"style-to-object@npm:0.3.0, style-to-object@npm:^0.3.0": + version: 0.3.0 + resolution: "style-to-object@npm:0.3.0" + dependencies: + inline-style-parser: 0.1.1 + checksum: 869b30171c2c0d1ed1928e86c3644d691d96277e484fdafaa99df3ad3b1e11e0fcfc2ac2def4e3dd068df49995de585918dbda2ff833b5691bc8206d1cda37ad + languageName: node + linkType: hard + +"stylehacks@npm:^4.0.0": + version: 4.0.3 + resolution: "stylehacks@npm:4.0.3" + dependencies: + browserslist: ^4.0.0 + postcss: ^7.0.0 + postcss-selector-parser: ^3.0.0 + checksum: 1345ad348db3c98f7d0423762e13e816a8c1ba0b1d90d79f3528513be429f1cf68b7fa9c9d379870208586e7ff4cfb68b4121bbd904df03b17e84d62efcff288 + languageName: node + linkType: hard + +"subscriptions-transport-ws@npm:0.9.17, subscriptions-transport-ws@npm:^0.9.11, subscriptions-transport-ws@npm:^0.9.16": + version: 0.9.17 + resolution: "subscriptions-transport-ws@npm:0.9.17" + dependencies: + backo2: ^1.0.2 + eventemitter3: ^3.1.0 + iterall: ^1.2.1 + symbol-observable: ^1.0.4 + ws: ^5.2.0 + peerDependencies: + graphql: ">=0.10.0" + checksum: 262d8194021262a42b678de1d2aaa86f951b0f2de4c545a4599166efd082c41a36cc2332bfb28ff2e8c0c4670d2959a47aebbb84b900ba22eccb6f0c5be0e2cc + languageName: node + linkType: hard + +"supports-color@npm:^2.0.0": + version: 2.0.0 + resolution: "supports-color@npm:2.0.0" + checksum: 5d6fb449e29f779cc639756f0d6b9ab6138048e753683cd2c647f36a9254714051909a5f569e6aa83c5310c8dfe8a1f481967e02bef401ac8eed46ee0950d779 + languageName: node + linkType: hard + +"supports-color@npm:^5.3.0, supports-color@npm:^5.5.0": + version: 5.5.0 + resolution: "supports-color@npm:5.5.0" + dependencies: + has-flag: ^3.0.0 + checksum: edacee6425498440744c418be94b0660181aad2a1828bcf2be85c42bd385da2fd8b2b358d9b62b0c5b03ff5cd3e992458d7b8f879d9fb42f2201fe05a4848a29 + languageName: node + linkType: hard + +"supports-color@npm:^6.1.0": + version: 6.1.0 + resolution: "supports-color@npm:6.1.0" + dependencies: + has-flag: ^3.0.0 + checksum: 86821571295ad9f808d5e0149f13c2b0ca6faaf1325c427b369e6f4b2b1e4759046b7a4ea0e3c3c7f2546035fa2fb0d6a90f31c6c4f751eaedbcdc1b983a08cc + languageName: node + linkType: hard + +"supports-color@npm:^7.0.0, supports-color@npm:^7.1.0": + version: 7.1.0 + resolution: "supports-color@npm:7.1.0" + dependencies: + has-flag: ^4.0.0 + checksum: 6130f36b2a71f73014a6ef306bbaa5415d8daa5c0294082762a0505e4fb6800b8a9d037b60ed54f0c69cdfc37860034047d6004481c21f22dd43151b5e9334f0 + languageName: node + linkType: hard + +"supports-hyperlinks@npm:^2.0.0": + version: 2.1.0 + resolution: "supports-hyperlinks@npm:2.1.0" + dependencies: + has-flag: ^4.0.0 + supports-color: ^7.0.0 + checksum: 8b3b6d71ee298d7f9a3ff4bfb928bd037c0b691b01bdfebb77deb3384976cd78c180d564dc3689ce5fe254d323252f7064efa1364bf24ab81efa6b080e51eddb + languageName: node + linkType: hard + +"svg-parser@npm:^2.0.0, svg-parser@npm:^2.0.2": + version: 2.0.4 + resolution: "svg-parser@npm:2.0.4" + checksum: 507b0ea204adf43bcba0df34bd8549a1a67f42007d518d4d56cad99bfda4295b5d9b67c1ca4661fb7474dbb593e34a69dd30fb4db804df85f32163fa785b3c31 + languageName: node + linkType: hard + +"svgo@npm:^1.0.0, svgo@npm:^1.2.2": + version: 1.3.2 + resolution: "svgo@npm:1.3.2" + dependencies: + chalk: ^2.4.1 + coa: ^2.0.2 + css-select: ^2.0.0 + css-select-base-adapter: ^0.1.1 + css-tree: 1.0.0-alpha.37 + csso: ^4.0.2 + js-yaml: ^3.13.1 + mkdirp: ~0.5.1 + object.values: ^1.1.0 + sax: ~1.2.4 + stable: ^0.1.8 + unquote: ~1.1.1 + util.promisify: ~1.0.0 + bin: + svgo: ./bin/svgo + checksum: e1659738423f625561fa23769d0a010f5ba08e83926ce697491153fa29a8cb2452fa5abb14c1bb489aa186718856f8768d4da870210a79302d47535c57c30d30 + languageName: node + linkType: hard + +"symbol-observable@npm:^1.0.4, symbol-observable@npm:^1.1.0, symbol-observable@npm:^1.2.0": + version: 1.2.0 + resolution: "symbol-observable@npm:1.2.0" + checksum: 268834a1d4cba19d40f367e5c2755f612969c8418e43a3be17408e392802a667f8bb542893440d58a080a8ea8da05ea98e27e472b9f4ff6fbda78a21a1a41c53 + languageName: node + linkType: hard + +"symbol-tree@npm:^3.2.2, symbol-tree@npm:^3.2.4": + version: 3.2.4 + resolution: "symbol-tree@npm:3.2.4" + checksum: 0b9af4e5f005f9f0b9c916d91a1b654422ffa49ef09c5c4b6efa7a778f63976be9f410e57db1e9ea7576eea0631a34b69a5622674aa92a60a896ccf2afca87a7 + languageName: node + linkType: hard + +"table@npm:^5.2.3": + version: 5.4.6 + resolution: "table@npm:5.4.6" + dependencies: + ajv: ^6.10.2 + lodash: ^4.17.14 + slice-ansi: ^2.1.0 + string-width: ^3.0.0 + checksum: 38877a196c0a57b955e4965fa3ff1cede38649b6e1f6286aa5435579dfd01663fdf8d19c87510e67a79474d75ae0144a0819f2054d654c45d7f525270aafe56b + languageName: node + linkType: hard + +"tapable@npm:^1.0.0, tapable@npm:^1.1.3": + version: 1.1.3 + resolution: "tapable@npm:1.1.3" + checksum: b2c2ab20260394b867fd249d8b6ab3e4645e00f9cce16b558b0de5a86291ef05f536f578744549d1618c9032c7f99bc1d6f68967e4aa11cb0dca4461dc4714bc + languageName: node + linkType: hard + +"tar@npm:^4.4.10, tar@npm:^4.4.12, tar@npm:^4.4.8": + version: 4.4.13 + resolution: "tar@npm:4.4.13" + dependencies: + chownr: ^1.1.1 + fs-minipass: ^1.2.5 + minipass: ^2.8.6 + minizlib: ^1.2.1 + mkdirp: ^0.5.0 + safe-buffer: ^5.1.2 + yallist: ^3.0.3 + checksum: d325c316ac329ecb18f2b8cd3f85a80ab4a4105ada601b9253aaafae3fc14268e3cd874ccc265b6a08e60ebd17fbc31bd3dbc0d1018f874b536eb2a6e8ef6d9c + languageName: node + linkType: hard + +"tar@npm:^6.0.1": + version: 6.0.2 + resolution: "tar@npm:6.0.2" + dependencies: + chownr: ^2.0.0 + fs-minipass: ^2.0.0 + minipass: ^3.0.0 + minizlib: ^2.1.0 + mkdirp: ^1.0.3 + yallist: ^4.0.0 + checksum: 7d28cc13d74a87d0dcd9fa89038225f171e506882f9e4d6f44bfd3943f868e6ae9f46a6f03c82cca8ad2d4dde3384862cb7e789bfa06e3af602eec561c765787 + languageName: node + linkType: hard + +"temp-dir@npm:^1.0.0": + version: 1.0.0 + resolution: "temp-dir@npm:1.0.0" + checksum: 4cc703b6ac3a3989c9da69c1b861babddff5e14a7913c26b4933049983a2d8392d3c6bbfa4bbd2ec4b9762a2460e8e7599f827dbc7c8ef1662e6e905d0f92b0b + languageName: node + linkType: hard + +"temp-dir@npm:^2.0.0": + version: 2.0.0 + resolution: "temp-dir@npm:2.0.0" + checksum: d7816d1ce5ea605ffe79f5692c96eef7e14b3dd01799be5462233046db9a169e2bee927c4391f577528137318198f5a18540c174cb6b054768213e7bffd5cb25 + languageName: node + linkType: hard + +"temp-write@npm:^3.4.0": + version: 3.4.0 + resolution: "temp-write@npm:3.4.0" + dependencies: + graceful-fs: ^4.1.2 + is-stream: ^1.1.0 + make-dir: ^1.0.0 + pify: ^3.0.0 + temp-dir: ^1.0.0 + uuid: ^3.0.1 + checksum: b5e93a498e1e674e5de055c77a74dd944a5dcabd2d90d50530334ee59dc1cfae6d29d42d470618ef7daf99df548f3253724d5298ff18f331e85228b602500d86 + languageName: node + linkType: hard + +"tempfile@npm:^3.0.0": + version: 3.0.0 + resolution: "tempfile@npm:3.0.0" + dependencies: + temp-dir: ^2.0.0 + uuid: ^3.3.2 + checksum: 00235007da9d0b299547ccf927a982b12b66e0dff3c53b3280af572210e13ddd39a03dd5d89ba6a37a6a21dcb61dae9a6a7bb7455c764df3779decda875c96f8 + languageName: node + linkType: hard + +"term-size@npm:^2.1.0": + version: 2.2.0 + resolution: "term-size@npm:2.2.0" + checksum: 02307492dfe602234355d55f23f4ce0125ad2dea428a63337e031bc97d2f7832b12c66eb64853f4dc30bdfc05377bc161da8659ecc30303a1ac616a619f284bb + languageName: node + linkType: hard + +"terminal-link@npm:^2.0.0": + version: 2.1.1 + resolution: "terminal-link@npm:2.1.1" + dependencies: + ansi-escapes: ^4.2.1 + supports-hyperlinks: ^2.0.0 + checksum: f84553e11e9dc9034c9a62aeada2985e2c50adf161b773b3e4a5cf174b0d14f6b8868eb1dcdf91c3f71e3d932a3be158b8742c2a43ee459e9b88a246d78a6dc1 + languageName: node + linkType: hard + +"terser-webpack-plugin@npm:2.3.5": + version: 2.3.5 + resolution: "terser-webpack-plugin@npm:2.3.5" + dependencies: + cacache: ^13.0.1 + find-cache-dir: ^3.2.0 + jest-worker: ^25.1.0 + p-limit: ^2.2.2 + schema-utils: ^2.6.4 + serialize-javascript: ^2.1.2 + source-map: ^0.6.1 + terser: ^4.4.3 + webpack-sources: ^1.4.3 + peerDependencies: + webpack: ^4.0.0 || ^5.0.0 + checksum: 5fe02a3b3119b4955871c147257a994953fb6c0ec1ed257943b1af628741cedad809d3c8c32da623176eb9402dd11b951f3267518f4b66479899de8ecba07421 + languageName: node + linkType: hard + +"terser-webpack-plugin@npm:^1.4.3": + version: 1.4.4 + resolution: "terser-webpack-plugin@npm:1.4.4" + dependencies: + cacache: ^12.0.2 + find-cache-dir: ^2.1.0 + is-wsl: ^1.1.0 + schema-utils: ^1.0.0 + serialize-javascript: ^3.1.0 + source-map: ^0.6.1 + terser: ^4.1.2 + webpack-sources: ^1.4.0 + worker-farm: ^1.7.0 + peerDependencies: + webpack: ^4.0.0 + checksum: 51f918c64828ea651559aa52d64176b752e994b5101302628969561f13b91ddc1f846912b19ad1f6b9dd79e3f5654ca9d436d519dabb8e9c504bada7915bb421 + languageName: node + linkType: hard + +"terser-webpack-plugin@npm:^2.3.5": + version: 2.3.7 + resolution: "terser-webpack-plugin@npm:2.3.7" + dependencies: + cacache: ^13.0.1 + find-cache-dir: ^3.3.1 + jest-worker: ^25.4.0 + p-limit: ^2.3.0 + schema-utils: ^2.6.6 + serialize-javascript: ^3.1.0 + source-map: ^0.6.1 + terser: ^4.6.12 + webpack-sources: ^1.4.3 + peerDependencies: + webpack: ^4.0.0 || ^5.0.0 + checksum: 8012bc882ae77753077c55a79dd2bd41df3b855c369be5c1ba15093826e94d1f0adacaa2f2b4a0011e38749a4672924ced3cafe6fef2b4b5981ccd12a38cb993 + languageName: node + linkType: hard + +"terser@npm:^4.1.2, terser@npm:^4.4.3, terser@npm:^4.6.12, terser@npm:^4.6.3": + version: 4.8.0 + resolution: "terser@npm:4.8.0" + dependencies: + commander: ^2.20.0 + source-map: ~0.6.1 + source-map-support: ~0.5.12 + bin: + terser: bin/terser + checksum: d7ab95898b40e2aa3513b02fc74f520f8e65072a19d7f687b8224af01512ad4d2227bc1375c22cd050f67eb1ca3e440b4f09652c5f48f13ed9ee81c0c26015a3 + languageName: node + linkType: hard + +"test-exclude@npm:^5.2.3": + version: 5.2.3 + resolution: "test-exclude@npm:5.2.3" + dependencies: + glob: ^7.1.3 + minimatch: ^3.0.4 + read-pkg-up: ^4.0.0 + require-main-filename: ^2.0.0 + checksum: d441f2531cf102d267de7f4ceecb4eacc8de2a6703abbab20591d0e8b30877a0e4cdcb88f88bd292f36950feda87b25e159e2fd407c275b13cce15a2a56eefaf + languageName: node + linkType: hard + +"test-exclude@npm:^6.0.0": + version: 6.0.0 + resolution: "test-exclude@npm:6.0.0" + dependencies: + "@istanbuljs/schema": ^0.1.2 + glob: ^7.1.4 + minimatch: ^3.0.4 + checksum: 68294d10066726cbced152aeb8a39cf9fd199199c62afb39290b824f613090f2535fc6acbad7d78f1f34cf00f4f00d42fa14f02d6262b910a7c9e2db2ecfa388 + languageName: node + linkType: hard + +"text-extensions@npm:^1.0.0": + version: 1.9.0 + resolution: "text-extensions@npm:1.9.0" + checksum: fecf1f4962209f8309cd90b045305c417016c4afa34d9df58b0885b7031da57acdef0771512eb031dbc795759972089ff099ba944b0437576d0012eb20db7825 + languageName: node + linkType: hard + +"text-table@npm:0.2.0, text-table@npm:^0.2.0": + version: 0.2.0 + resolution: "text-table@npm:0.2.0" + checksum: 373904ce70524ba11ec7e1905c44fb92671132d5e0b0aba2fb48057161f8bf9cbf7f6178f0adf31810150cf44fb52c7b912dc722bff3fddf9688378596dbeb56 + languageName: node + linkType: hard + +"thenify-all@npm:^1.0.0": + version: 1.6.0 + resolution: "thenify-all@npm:1.6.0" + dependencies: + thenify: ">= 3.1.0 < 4" + checksum: 22775c13a183d349b58e0236ba9b28dd75ec5f000c55bc893958a04585b712d32d1878022bee4eb89a7c5a85485cf837732dbeed2d6ed860eff217d54a63e581 + languageName: node + linkType: hard + +"thenify@npm:>= 3.1.0 < 4": + version: 3.3.1 + resolution: "thenify@npm:3.3.1" + dependencies: + any-promise: ^1.0.0 + checksum: c3cbda4f5f0ee82d6a282b3a2ed3f890fad65b5c855d61f8f1946c6daf7e0d7a1e84377ded30b16ae2bedd13f02ba35266af3ca018272b08629c85753b1cd682 + languageName: node + linkType: hard + +"throat@npm:^4.0.0": + version: 4.1.0 + resolution: "throat@npm:4.1.0" + checksum: 91326ef6842bd3d8d39ac104fbcb8998c911deacc639ae2de8522bbb1e526e6db4263927ad1eec71f1d31e7cec111a501371f67514ec449f517f7357814eda55 + languageName: node + linkType: hard + +"throat@npm:^5.0.0": + version: 5.0.0 + resolution: "throat@npm:5.0.0" + checksum: 2fa41c09ccd97982cd6601eca704913f5d8ef5cc4070fcd71c67e7240da7c0df86f65f5cb23f5c3132ab5567154740114cc92379663aa098b6076a39481b0f5f + languageName: node + linkType: hard + +"through2@npm:^2.0.0, through2@npm:^2.0.2": + version: 2.0.5 + resolution: "through2@npm:2.0.5" + dependencies: + readable-stream: ~2.3.6 + xtend: ~4.0.1 + checksum: 7427403555ead550d3cbe11f69eb07797e27505fc365cf53572111556a7c08625adb5159cad0fc4b9f57babfd937692e34b3a8a20ba35072f4e85f83d340661c + languageName: node + linkType: hard + +"through2@npm:^3.0.0": + version: 3.0.2 + resolution: "through2@npm:3.0.2" + dependencies: + inherits: ^2.0.4 + readable-stream: 2 || 3 + checksum: 26c76a8989c8870e422c262506b55020ab42ae9c0888b8096dd140f8d6ac09ada59f71cddd630ccc5b3aa0bba373c223a27b969e830ee6040f12db952c15a8cd + languageName: node + linkType: hard + +"through@npm:2, through@npm:>=2.2.7 <3, through@npm:^2.3.4, through@npm:^2.3.6, through@npm:^2.3.8": + version: 2.3.8 + resolution: "through@npm:2.3.8" + checksum: 918d9151680b5355990011eb8c4b02e8cb8cf6e9fb6ea3d3e5a1faa688343789e261634ae35de4ea9167ab029d1e7bac6af2fe61b843931768d405fdc3e8897c + languageName: node + linkType: hard + +"thunky@npm:^1.0.2": + version: 1.1.0 + resolution: "thunky@npm:1.1.0" + checksum: eceb856b6412ecd02c24731a2441698aa57622e03b0a4d6d1dea47d7b173aca54980fd2fba5b3a2e11ccec48373c46483f7f55a46717bfc07645395fa57267a6 + languageName: node + linkType: hard + +"timers-browserify@npm:^2.0.4": + version: 2.0.11 + resolution: "timers-browserify@npm:2.0.11" + dependencies: + setimmediate: ^1.0.4 + checksum: 73faad065e503db39235ea6c7803cd42c6be41365a427f95fcba773d42c4a77d595ace955a2248f638cd983c61f8e928422dbf27d9237dd876645ed88a595e29 + languageName: node + linkType: hard + +"timsort@npm:^0.3.0": + version: 0.3.0 + resolution: "timsort@npm:0.3.0" + checksum: d8300c3ecf1a3751413de82b04ad283b461ab6fb1041820c825d13b4ae74526e2101ab5fb84c57a0c6e1f4d7f67173b5d8754ed8bb7447c6a9ce1db8562eb82c + languageName: node + linkType: hard + +"tiny-emitter@npm:^2.0.0": + version: 2.1.0 + resolution: "tiny-emitter@npm:2.1.0" + checksum: 0055509c72e5fe35d6ab66fa6339342e0f29129e77ed2086e475fdf80be43a8651f2517be76513b46a042c8356396f4da5a35e2e23457252176808d5a892036a + languageName: node + linkType: hard + +"tiny-invariant@npm:^1.0.2": + version: 1.1.0 + resolution: "tiny-invariant@npm:1.1.0" + checksum: 64318fbd77c451cfff23b57b9f3aef56594d9cea051a87dc538c9b371f97e8d474eaa2a7cbd60b8aa23f852393152495e8651b197607465fdf9c8ff134043b1b + languageName: node + linkType: hard + +"tiny-warning@npm:^1.0.0, tiny-warning@npm:^1.0.2, tiny-warning@npm:^1.0.3": + version: 1.0.3 + resolution: "tiny-warning@npm:1.0.3" + checksum: 6cf9f66cb765b893976b8cd1c1310338861f30fb04d02ef2c8e0a748cbc2ed5acd8bb1954b78c15f640ad4116def67134d7d705f2a0c9bf27e6e2eb3e92bff29 + languageName: node + linkType: hard + +"tmp@npm:^0.0.33": + version: 0.0.33 + resolution: "tmp@npm:0.0.33" + dependencies: + os-tmpdir: ~1.0.2 + checksum: 77666ca424a78fcfcc27a6576f24f01aa1300b10d22e4f1808809e560777672dd2d4a112604ab2ad86ec7cafd24472b9ccc41373c2b5b83797f27e6aff06cbe5 + languageName: node + linkType: hard + +"tmpl@npm:1.0.x": + version: 1.0.4 + resolution: "tmpl@npm:1.0.4" + checksum: 44de07fb81a7273937f3de4b856d12b981b7a9b05a244e6e514e15b072241304cf108f145d2510783eceb91293e237f7e2562b37c8a6e7e6f3fe40daa44259d2 + languageName: node + linkType: hard + +"to-arraybuffer@npm:^1.0.0": + version: 1.0.1 + resolution: "to-arraybuffer@npm:1.0.1" + checksum: 23e72a6636e32fa992a4ad952564af136460b8b9ac603737fd8e7ecefe762284c4368f3f455b4252c95401cb2d3c8e356da1ef915a7c40152b62592ee38911c4 + languageName: node + linkType: hard + +"to-fast-properties@npm:^2.0.0": + version: 2.0.0 + resolution: "to-fast-properties@npm:2.0.0" + checksum: 40e61984243b183d575a2f3a87d008bd57102115701ee9037fd673e34becf12ee90262631857410169ca82f401a662ed94482235cea8f3b8dea48b87eaabc467 + languageName: node + linkType: hard + +"to-object-path@npm:^0.3.0": + version: 0.3.0 + resolution: "to-object-path@npm:0.3.0" + dependencies: + kind-of: ^3.0.2 + checksum: a6a5a502259af744ac4e86752c8e71395c4106cae6f4e2a5c711e6f5de4cdbd08691e9295bf5b6e86b3e12722274fc3c5c0410f5fcf42ca783cc43f62139b5d0 + languageName: node + linkType: hard + +"to-readable-stream@npm:^1.0.0": + version: 1.0.0 + resolution: "to-readable-stream@npm:1.0.0" + checksum: aa4b65d3e7a60d7b51204585187bdfd2159788a22ec241451c782552699e8dec39dcb8a9cd4957e03f32191ca18d3ea80abd9bb40005a8f1631df8fbba22b413 + languageName: node + linkType: hard + +"to-regex-range@npm:^2.1.0": + version: 2.1.1 + resolution: "to-regex-range@npm:2.1.1" + dependencies: + is-number: ^3.0.0 + repeat-string: ^1.6.1 + checksum: 801501b59d6a2892d88b2ccb78416d6778aec1549da593f83b7bb433a5540995e4c6f2d954ff44d53f38c094d04c0da3ed6f61f110d9cd2ea00cb570b90e81e4 + languageName: node + linkType: hard + +"to-regex-range@npm:^5.0.1": + version: 5.0.1 + resolution: "to-regex-range@npm:5.0.1" + dependencies: + is-number: ^7.0.0 + checksum: 2b6001e314e4998a07137c197e333fac2f86d46d0593da90b678ae64e2daa07274b508f83cca09e6b3504cdf222497dcb5b7daceb6dc13a9a8872f58a27db907 + languageName: node + linkType: hard + +"to-regex@npm:^3.0.1, to-regex@npm:^3.0.2": + version: 3.0.2 + resolution: "to-regex@npm:3.0.2" + dependencies: + define-property: ^2.0.2 + extend-shallow: ^3.0.2 + regex-not: ^1.0.2 + safe-regex: ^1.1.0 + checksum: ed733fdff8970628ef2d425564d1331a812e57cbb6ab7675c970046b2b792cbf2386c8292e45bb201bf85ca71a7708e3e1ffb979f5cd089ad4a82a12df75939b + languageName: node + linkType: hard + +"toidentifier@npm:1.0.0": + version: 1.0.0 + resolution: "toidentifier@npm:1.0.0" + checksum: 95720e8a0f98f1525f50ccbecbc2a23f0a1b4e448de03819dbbeda03adf0d2010fe64525fbc9d549765242550d341bb891672e4ac0b2cac58613cdd742324255 + languageName: node + linkType: hard + +"touch@npm:^3.1.0": + version: 3.1.0 + resolution: "touch@npm:3.1.0" + dependencies: + nopt: ~1.0.10 + bin: + nodetouch: ./bin/nodetouch.js + checksum: 97a6a508e3e0e00120a1ffd49656ea5124f629e9c1147f189abd795c4e6723460a593ea97c95f5dfaa97845f30438ec50e7a0d2a91e942f59ffa919b635e7092 + languageName: node + linkType: hard + +"tough-cookie@npm:^2.3.3, tough-cookie@npm:^2.3.4, tough-cookie@npm:^2.5.0, tough-cookie@npm:~2.5.0": + version: 2.5.0 + resolution: "tough-cookie@npm:2.5.0" + dependencies: + psl: ^1.1.28 + punycode: ^2.1.1 + checksum: bf5d6fac5ce0bebc5876cb9b9a79d3d9ea21c9e4099f3d3e64701d6ba170a052cb88cece6737ec2473bac4f0a4f6c75d46ec17985be8587c6bbdd38d91625cb4 + languageName: node + linkType: hard + +"tough-cookie@npm:^3.0.1": + version: 3.0.1 + resolution: "tough-cookie@npm:3.0.1" + dependencies: + ip-regex: ^2.1.0 + psl: ^1.1.28 + punycode: ^2.1.1 + checksum: dc1eee69c61a6d5598144ff41c9b5e758207130d92d2b89facad075140a99c10d674a6278764b9edfe8e074cb7840c15e7b786b93d0672875026c2ce5172d774 + languageName: node + linkType: hard + +"tr46@npm:^1.0.1": + version: 1.0.1 + resolution: "tr46@npm:1.0.1" + dependencies: + punycode: ^2.1.0 + checksum: 66e2e4d6799d3c2fcc56ad6084e8ab7b3e744f138babc86100e5e2bfaf011231d00d229cfccfaf338da953b96c3ea9128d182274915c1516c5189ee75b7c0ad9 + languageName: node + linkType: hard + +"tr46@npm:^2.0.2": + version: 2.0.2 + resolution: "tr46@npm:2.0.2" + dependencies: + punycode: ^2.1.1 + checksum: c8c221907944e8b577c4fff14d180a213c21a29b54a12a031aa6986cbb711a5d470588b556a7be9c7844f09142e12deef6b76fe10f6bd4d274b54f1a7e0aac9e + languageName: node + linkType: hard + +"tree-kill@npm:^1.2.2": + version: 1.2.2 + resolution: "tree-kill@npm:1.2.2" + bin: + tree-kill: cli.js + checksum: 967643efa4a231868232ea9d046c3ba7494ea6061fbb1e661c699b43ca0f0a14dad0782a631d915959d562830035166bab80ed726f9fe33b838af8a7516624ed + languageName: node + linkType: hard + +"trim-lines@npm:^1.0.0": + version: 1.1.3 + resolution: "trim-lines@npm:1.1.3" + checksum: 6f919954bcd6ad4c1a11b3bfae25c7661d3e1c5ebb13b145bdbe04cd88f1b76018fc72b946ba79a0537a6885c0cfaad7266eb020bb02bfad38c8e4b1d653ef28 + languageName: node + linkType: hard + +"trim-newlines@npm:^1.0.0": + version: 1.0.0 + resolution: "trim-newlines@npm:1.0.0" + checksum: acc229ae8f6e7615df28a9cdb33a40db3f385afa9076c8b53a0a2d63d49dd646a6a4827ad93e1bc92ef24286121f66042c00da089f1585e473c010ca88309c78 + languageName: node + linkType: hard + +"trim-newlines@npm:^2.0.0": + version: 2.0.0 + resolution: "trim-newlines@npm:2.0.0" + checksum: 131158217ddcd0beaa6882542100f21bdfa409c2df180a23c4578dc4faa1158040ce9bcea2d99c5d630df6a76fa43913bcfef8289bf7c8687e28d403eaaf5805 + languageName: node + linkType: hard + +"trim-newlines@npm:^3.0.0": + version: 3.0.0 + resolution: "trim-newlines@npm:3.0.0" + checksum: 51bfbec0014ae58cdbf3c55e34cfe7f1a92a77d362990bb4cc8d6edf51f1c21f28b92e442adec3ef9cef69194b532b28c1a0a06d9ee78b2b0fd28d191a2b738e + languageName: node + linkType: hard + +"trim-off-newlines@npm:^1.0.0": + version: 1.0.1 + resolution: "trim-off-newlines@npm:1.0.1" + checksum: c590b9e8c1d91ac1b57b65f8ed7cc7837e702d86f47c725462cc7e03f3850dfa92a32f956d350632208aa78e9be03917a21d9ef5d139c30be13bb51bf576209f + languageName: node + linkType: hard + +"trim-trailing-lines@npm:^1.0.0": + version: 1.1.3 + resolution: "trim-trailing-lines@npm:1.1.3" + checksum: e09d4a1f5817726747a3ef0c99766934c56b308bb383cba27d689fa7bd1be7bf935743a4a08818f9069d4d762b68b1376dadece94d061f6e95b41ab649051f2f + languageName: node + linkType: hard + +"trim@npm:0.0.1": + version: 0.0.1 + resolution: "trim@npm:0.0.1" + checksum: ecf84783845ebf947081fa6cded3f5ebba7482caebc915995bef9b4bece86d1e11d57c16c8007529312dff2c0c3808a2fe21b200b22d2ca7a6a6cf94c6873b65 + languageName: node + linkType: hard + +"trough@npm:^1.0.0": + version: 1.0.5 + resolution: "trough@npm:1.0.5" + checksum: c116d9e7ddb7d9eca4ebe4c6acb4d909829e97824d9a79caec8af0899120e55b9a8311a7821706864728fbdc72b38644ca25e9357de28a50a10ed4bd8e5d6234 + languageName: node + linkType: hard + +"tryer@npm:^1.0.1": + version: 1.0.1 + resolution: "tryer@npm:1.0.1" + checksum: 0d0fa95e8a3b518d5dc51442cf9dc185ebbc534173c4bf74c3fd4e118489b6a2f00765040c893d37dcabbe5dd401ddf5729cdba9857a50e2aabc614f42702341 + languageName: node + linkType: hard + +"ts-invariant@npm:^0.4.0, ts-invariant@npm:^0.4.4": + version: 0.4.4 + resolution: "ts-invariant@npm:0.4.4" + dependencies: + tslib: ^1.9.3 + checksum: 0280fb0e853db923605d84d83a7587342b2fcf718af5eac858cc461fcaa95837543de5f6d0a9afd8caf84faa01ffcc2a21cf71f5f51894d3e854b8a9504786bc + languageName: node + linkType: hard + +"ts-jest@npm:26.1.4": + version: 26.1.4 + resolution: "ts-jest@npm:26.1.4" + dependencies: + bs-logger: 0.x + buffer-from: 1.x + fast-json-stable-stringify: 2.x + jest-util: 26.x + json5: 2.x + lodash.memoize: 4.x + make-error: 1.x + mkdirp: 1.x + semver: 7.x + yargs-parser: 18.x + peerDependencies: + jest: ">=26 <27" + typescript: ">=3.8 <4.0" + bin: + ts-jest: cli.js + checksum: e69d84f07e4c2fe8ccb7556c00ff5f72fa41c18cb0ba38544265a62702556309d1cea59cef6297a2deef8042b45dcbd8b8493e3f8449372db563f2c4cef5b1d6 + languageName: node + linkType: hard + +"ts-log@npm:2.1.4": + version: 2.1.4 + resolution: "ts-log@npm:2.1.4" + checksum: 67ff102edceb006831294f45c444caf572e805ab5455d4e777350f75758c8374628df2337363de8e0928e4ec7169b789dd4899bf18d4174ef8a7127aabfd323e + languageName: node + linkType: hard + +"ts-node@npm:8.10.1": + version: 8.10.1 + resolution: "ts-node@npm:8.10.1" + dependencies: + arg: ^4.1.0 + diff: ^4.0.1 + make-error: ^1.1.1 + source-map-support: ^0.5.17 + yn: 3.1.1 + peerDependencies: + typescript: ">=2.7" + bin: + ts-node: dist/bin.js + ts-node-script: dist/bin-script.js + ts-node-transpile-only: dist/bin-transpile.js + ts-script: dist/bin-script-deprecated.js + checksum: 4eda8591d422bdb9b9464921b4b1d850d3f32a4500db4c067a6d72b8f5c92934645b8d2e5a37c633361ce5664e6d7e426db6049cdf574276196d539c2c526385 + languageName: node + linkType: hard + +"ts-node@npm:8.10.2": + version: 8.10.2 + resolution: "ts-node@npm:8.10.2" + dependencies: + arg: ^4.1.0 + diff: ^4.0.1 + make-error: ^1.1.1 + source-map-support: ^0.5.17 + yn: 3.1.1 + peerDependencies: + typescript: ">=2.7" + bin: + ts-node: dist/bin.js + ts-node-script: dist/bin-script.js + ts-node-transpile-only: dist/bin-transpile.js + ts-script: dist/bin-script-deprecated.js + checksum: cd6e023e073d65ea346cf4a5b70bfd1e7c7f342c967a23a83038fd3462067558a4dda4fc8b238e6709db69aca3847590a93b4c52ae001e23ed9fef3b4fecbc71 + languageName: node + linkType: hard + +"ts-pnp@npm:1.1.6, ts-pnp@npm:^1.1.6": + version: 1.1.6 + resolution: "ts-pnp@npm:1.1.6" + peerDependencies: + typescript: "*" + peerDependenciesMeta: + typescript: + optional: true + checksum: 0c1ab7d1b85820a4ad12d25f18e6e9b68e57095412cb436266e8d0c58508892d871cd6d39512701e1117b0ad6354f0596d7f9ef9a0e630538ef3c7ff1970e0ef + languageName: node + linkType: hard + +"tslib@npm:1.11.1": + version: 1.11.1 + resolution: "tslib@npm:1.11.1" + checksum: d40eba08de267b2d3c458ddbf51f9010a45b8e752d3bf8c0fed63e266afc9277c6a26e65e51223335b8753f9f106aeb600e704f2a6eae05729160671a97c52e7 + languageName: node + linkType: hard + +"tslib@npm:2.0.0, tslib@npm:^2.0.0, tslib@npm:~2.0.0": + version: 2.0.0 + resolution: "tslib@npm:2.0.0" + checksum: a7369a224f12e223fb42f2a720389601a24a1e1c96c55bf0d8d4b60c131e574c175ae23578b8d1bd3f4ec790c7e0a82b43733f022f866d48a23aeadd3910755d + languageName: node + linkType: hard + +"tslib@npm:^1.10.0, tslib@npm:^1.11.1, tslib@npm:^1.8.1, tslib@npm:^1.9.0, tslib@npm:^1.9.3": + version: 1.13.0 + resolution: "tslib@npm:1.13.0" + checksum: 5dc3bdaea3b67c76ef4a14c28fcb2171da7bcf292fd9c59a260098729626b1ce766c52b588f08e324ed9a0c52ea8a93a815920f980d75981abc9d850fbf310fb + languageName: node + linkType: hard + +"tsutils@npm:^3.17.1": + version: 3.17.1 + resolution: "tsutils@npm:3.17.1" + dependencies: + tslib: ^1.8.1 + peerDependencies: + typescript: ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" + checksum: bed8ff7998d90a7ab9f3bdb26d36dae0edfcdb3e4f07994fb59df8d42e62ee07d591d3a435fb65cb50b6ca9af6b76c9bc9423a216186e5085d91793fa169c248 + languageName: node + linkType: hard + +"tty-browserify@npm:0.0.0": + version: 0.0.0 + resolution: "tty-browserify@npm:0.0.0" + checksum: ef28fe256a17bac17d094e0120a042aee441efca0a44734082caa697b8326cc9888a8042b754cb6830205b65fe716960ba159597fdbcb8b53abf08ae5c9acd7f + languageName: node + linkType: hard + +"tunnel-agent@npm:^0.6.0": + version: 0.6.0 + resolution: "tunnel-agent@npm:0.6.0" + dependencies: + safe-buffer: ^5.0.1 + checksum: 03db75a4f994fee610d3485c492e95105ed265a9fecd49d14c98e9982f973ecc0220d0c1bc264e37802e423a1274bb63788a873e4e07009408ae3ac517347fd7 + languageName: node + linkType: hard + +"tweetnacl@npm:^0.14.3, tweetnacl@npm:~0.14.0": + version: 0.14.5 + resolution: "tweetnacl@npm:0.14.5" + checksum: e1c9d52e2e9f582fd0df9ea26ba5a9ab88b9a38b69625d8e55c5e8870a4832ac8c32f8854b41fce7b59f97258bb103535363f9eda7050aa70e75824b972c7dde + languageName: node + linkType: hard + +"type-check@npm:^0.4.0, type-check@npm:~0.4.0": + version: 0.4.0 + resolution: "type-check@npm:0.4.0" + dependencies: + prelude-ls: ^1.2.1 + checksum: 6c2e1ce339567e122504f0c729cfa35d877fb2da293b99110f0819eca81e6ed8d3ba9bb36c0bc0ee4904d5340dbe678f8642a395c1c67b1d0f69f081efb47f4a + languageName: node + linkType: hard + +"type-check@npm:~0.3.2": + version: 0.3.2 + resolution: "type-check@npm:0.3.2" + dependencies: + prelude-ls: ~1.1.2 + checksum: 4e080645319c12bb78119f7e8bb333cab8dacad2c1988597aabf44da985ad36fce3419707e93ed0fc84514b7eec94e4d8817e33d0aab8c81de394916e00d6806 + languageName: node + linkType: hard + +"type-detect@npm:4.0.8": + version: 4.0.8 + resolution: "type-detect@npm:4.0.8" + checksum: e01dc6ac9098192a7859fb86c7b4073709a4e13a5cc02c54d54412378bb099563fda7a7a85640f33e3a7c2e8189182eb1511f263e67f402b2d63fe81afdde785 + languageName: node + linkType: hard + +"type-fest@npm:^0.11.0": + version: 0.11.0 + resolution: "type-fest@npm:0.11.0" + checksum: 02e5cadf13590a5724cacf8d9133320efd173f6fb1b695fcb29e56551a315bf0f07ca988a780a1999b7b55bb3eaaa7f37223615207236d393af17bba6749dc95 + languageName: node + linkType: hard + +"type-fest@npm:^0.13.1": + version: 0.13.1 + resolution: "type-fest@npm:0.13.1" + checksum: 11acce4f34c75a838914bdc4a0133d2dd0864e313897471974880df82624159521bae691a6100ff99f93be2d0f8871ecdab18573d2c67e61905cf2f5cbfa52a6 + languageName: node + linkType: hard + +"type-fest@npm:^0.3.0": + version: 0.3.1 + resolution: "type-fest@npm:0.3.1" + checksum: 508923061144ff7ebc69d4f49bc812c7b8a81c633d10e89191092efb5746531ee6c4dd912db1447e954a766186ed48eee0dcfa53047c55a7646076a76640ff43 + languageName: node + linkType: hard + +"type-fest@npm:^0.6.0": + version: 0.6.0 + resolution: "type-fest@npm:0.6.0" + checksum: c77f687caff9f8effffd6091fbdb57b8e7265213e067c34086d37dc6ac3b640abd3dd3921402a6ba9eb56621719c552ae5e91d183d1e6d075f9aff859a347f00 + languageName: node + linkType: hard + +"type-fest@npm:^0.8.1": + version: 0.8.1 + resolution: "type-fest@npm:0.8.1" + checksum: f8c4b4249f52e8bea7a4fc55b3653c96c2d547240e4c772e001d02b7cc38b8c3eb493ab9fbe985a76a203cd1aa7044776b728a71ba12bf36e7131f989597885b + languageName: node + linkType: hard + +"type-is@npm:^1.6.16, type-is@npm:~1.6.17, type-is@npm:~1.6.18": + version: 1.6.18 + resolution: "type-is@npm:1.6.18" + dependencies: + media-typer: 0.3.0 + mime-types: ~2.1.24 + checksum: 20a3514f1d835c979237995129d1f8c564325301e3a8f1c732bcbe1d7fa0ca1f65994e41a79e9030d79f31e5459bb9be5c377848fcb477cb3049a661b3713d74 + languageName: node + linkType: hard + +"type@npm:^1.0.1": + version: 1.2.0 + resolution: "type@npm:1.2.0" + checksum: 1589416fd9d0a0a1bf18c62dbc7452b0f22017efd5bfc2912050bb57421b084801563ff13b3e3efd60df45590f23e1f3d27d892aeeec9b3ed142c917a4858812 + languageName: node + linkType: hard + +"type@npm:^2.0.0": + version: 2.0.0 + resolution: "type@npm:2.0.0" + checksum: aa673b5a91fce3827f7f13fdd0b78582fa1946c493e42d4afaa5566295725630cc274069e55da48bcffe0fb6aa7d398be1e4808fd5b132eb6355db6cec3ef023 + languageName: node + linkType: hard + +"typedarray-to-buffer@npm:^3.1.5": + version: 3.1.5 + resolution: "typedarray-to-buffer@npm:3.1.5" + dependencies: + is-typedarray: ^1.0.0 + checksum: e6e0e6812acc3496612d81abe026bb6c71bfc0f3daa00716a3236fe37c46a81508de8306df8a29ae81e2a2c4293b6b8067c77b65003e0022134d544902b9acec + languageName: node + linkType: hard + +"typedarray@npm:^0.0.6": + version: 0.0.6 + resolution: "typedarray@npm:0.0.6" + checksum: c9ef0176aaf32593514c31e5c6edc1db970847aff6e1f0a0570a6ac0cc996335792f394c2fcec59cc76691d22a01888ea073a2f3c6930cfcf7c519addf4e2ad7 + languageName: node + linkType: hard + +"typedoc-default-themes@npm:^0.10.1": + version: 0.10.2 + resolution: "typedoc-default-themes@npm:0.10.2" + dependencies: + lunr: ^2.3.8 + checksum: 8766471937395067504b3f21edd8c9f89e6901c2912aff0b4371a5dfceea31e4a1f9d08282c2998d0bc0a70e3d6943b3043ebe90e6b11dfdaf52c4a05e32d980 + languageName: node + linkType: hard + +"typedoc-plugin-markdown@npm:2.3.1": + version: 2.3.1 + resolution: "typedoc-plugin-markdown@npm:2.3.1" + dependencies: + fs-extra: ^9.0.0 + handlebars: ^4.7.6 + peerDependencies: + typedoc: ">=0.17.0" + checksum: 108aad8f46cccc74b9f93adbbc9b27a65b1d36f2d2c3c56439a5db7984080713183df0d1124b774ed9f7706779ccab1a811ccc18f4ef3ccbcbc511afd99e067a + languageName: node + linkType: hard + +"typedoc@npm:0.17.6": + version: 0.17.6 + resolution: "typedoc@npm:0.17.6" + dependencies: + fs-extra: ^8.1.0 + handlebars: ^4.7.6 + highlight.js: ^10.0.0 + lodash: ^4.17.15 + lunr: ^2.3.8 + marked: 1.0.0 + minimatch: ^3.0.0 + progress: ^2.0.3 + shelljs: ^0.8.4 + typedoc-default-themes: ^0.10.1 + peerDependencies: + typescript: ">=3.8.3" + bin: + typedoc: bin/typedoc + checksum: ce00f66ace092b9a9260a8d523a1f0a245d438485e4456ccd3dda494be0690845c9a14ebe762b8d8d5e3c4ba177bf015dc33d8cb635cc9a2cddcc23ba778f92b + languageName: node + linkType: hard + +"typeorm@npm:0.2.25, typeorm@npm:^0.2.25": + version: 0.2.25 + resolution: "typeorm@npm:0.2.25" + dependencies: + app-root-path: ^3.0.0 + buffer: ^5.1.0 + chalk: ^2.4.2 + cli-highlight: ^2.0.0 + debug: ^4.1.1 + dotenv: ^6.2.0 + glob: ^7.1.2 + js-yaml: ^3.13.1 + mkdirp: ^1.0.3 + reflect-metadata: ^0.1.13 + sha.js: ^2.4.11 + tslib: ^1.9.0 + xml2js: ^0.4.17 + yargonaut: ^1.1.2 + yargs: ^13.2.1 + bin: + typeorm: cli.js + checksum: 8004ad64c4aee55f44bada594fc86a70f50a2f5914d533cf8fbbf4d0623aed00a28e0682f5f260ebf0b012cd3a6f85f3cf2873317b9137070da53bc2d2220a8c + languageName: node + linkType: hard typescript@3.7.5: - version "3.7.5" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.7.5.tgz#0692e21f65fd4108b9330238aac11dd2e177a1ae" - integrity sha512-/P5lkRXkWHNAbcJIiHPfRoKqyd7bsyCma1hZNUGfn20qm64T6ZBlrzprymeu918H+mB/0rIg2gGK/BXkhhYgBw== + version: 3.7.5 + resolution: "typescript@npm:3.7.5" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: 48a96fb7dc48746e6b76cf0946545181b0d5013368e510768402f1374e6c6a9f29b00e8ca4f40bc7523a655473f7bc7c55d1c8458970e96b7187bcee1b47e96b + languageName: node + linkType: hard typescript@3.8.3: - version "3.8.3" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.8.3.tgz#409eb8544ea0335711205869ec458ab109ee1061" - integrity sha512-MYlEfn5VrLNsgudQTVJeNaQFUAI7DkhnOjdpAp4T+ku1TfQClewlbSuTVHiA+8skNBgaf02TL/kLOvig4y3G8w== + version: 3.8.3 + resolution: "typescript@npm:3.8.3" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: 519b11576247fe3570d89a2aa757d8f666aafc0cb9465a6cdd4df09c1dc6bf7285f0c6008d2ac7a55ea26457e767aaab819f58439d80af2cce1d9805b2be1034 + languageName: node + linkType: hard typescript@3.9.5: - version "3.9.5" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.9.5.tgz#586f0dba300cde8be52dd1ac4f7e1009c1b13f36" - integrity sha512-hSAifV3k+i6lEoCJ2k6R2Z/rp/H3+8sdmcn5NrS3/3kE7+RyZXm9aqvxWqjEXHAd8b0pShatpcdMTvEdvAJltQ== + version: 3.9.5 + resolution: "typescript@npm:3.9.5" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: 15618435493667083eb43dc7b36c4d3dd47fd9e9c8a14f0ac4019bbf6124b6cc518b6ed506400913db1bf50831207ee8201b5d827680076930b562923f4f18a0 + languageName: node + linkType: hard typescript@3.9.7: - version "3.9.7" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.9.7.tgz#98d600a5ebdc38f40cb277522f12dc800e9e25fa" - integrity sha512-BLbiRkiBzAwsjut4x/dsibSTB6yWpwT5qWmC2OfuCg3GgVQCSgMs4vEctYPhsaGtd0AeuuHMkjZ2h2WG8MSzRw== - -ua-parser-js@^0.7.18: - version "0.7.21" - resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.21.tgz#853cf9ce93f642f67174273cc34565ae6f308777" - integrity sha512-+O8/qh/Qj8CgC6eYBVBykMrNtp5Gebn4dlGD/kKXVkJNDwyrAwSIqwz8CDf+tsAIWVycKcku6gIXJ0qwx/ZXaQ== - -uglify-js@^3.1.4: - version "3.9.4" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.9.4.tgz#867402377e043c1fc7b102253a22b64e5862401b" - integrity sha512-8RZBJq5smLOa7KslsNsVcSH+KOXf1uDU8yqLeNuVKwmT0T3FA0ZoXlinQfRad7SDcbZZRZE4ov+2v71EnxNyCA== - dependencies: - commander "~2.20.3" - -uid-number@0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" - integrity sha1-DqEOgDXo61uOREnwbaHHMGY7qoE= - -uid-safe@~2.1.5: - version "2.1.5" - resolved "https://registry.yarnpkg.com/uid-safe/-/uid-safe-2.1.5.tgz#2b3d5c7240e8fc2e58f8aa269e5ee49c0857bd3a" - integrity sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA== - dependencies: - random-bytes "~1.0.0" - -umask@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/umask/-/umask-1.1.0.tgz#f29cebf01df517912bb58ff9c4e50fde8e33320d" - integrity sha1-8pzr8B31F5ErtY/5xOUP3o4zMg0= - -unc-path-regex@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/unc-path-regex/-/unc-path-regex-0.1.2.tgz#e73dd3d7b0d7c5ed86fbac6b0ae7d8c6a69d50fa" - integrity sha1-5z3T17DXxe2G+6xrCufYxqadUPo= - -undefsafe@^2.0.2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/undefsafe/-/undefsafe-2.0.3.tgz#6b166e7094ad46313b2202da7ecc2cd7cc6e7aae" - integrity sha512-nrXZwwXrD/T/JXeygJqdCO6NZZ1L66HrxM/Z7mIq2oPanoN0F1nLx3lwJMu6AwJY69hdixaFQOuoYsMjE5/C2A== - dependencies: - debug "^2.2.0" - -unicode-canonical-property-names-ecmascript@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz#2619800c4c825800efdd8343af7dd9933cbe2818" - integrity sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ== - -unicode-match-property-ecmascript@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz#8ed2a32569961bce9227d09cd3ffbb8fed5f020c" - integrity sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg== - dependencies: - unicode-canonical-property-names-ecmascript "^1.0.4" - unicode-property-aliases-ecmascript "^1.0.4" - -unicode-match-property-value-ecmascript@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz#0d91f600eeeb3096aa962b1d6fc88876e64ea531" - integrity sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ== - -unicode-property-aliases-ecmascript@^1.0.4: - version "1.1.0" - resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz#dd57a99f6207bedff4628abefb94c50db941c8f4" - integrity sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg== - -union-value@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" - integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg== - dependencies: - arr-union "^3.1.0" - get-value "^2.0.6" - is-extendable "^0.1.1" - set-value "^2.0.1" - -uniq@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff" - integrity sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8= - -uniqs@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/uniqs/-/uniqs-2.0.0.tgz#ffede4b36b25290696e6e165d4a59edb998e6b02" - integrity sha1-/+3ks2slKQaW5uFl1KWe25mOawI= - -unique-filename@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230" - integrity sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ== - dependencies: - unique-slug "^2.0.0" - -unique-slug@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-2.0.2.tgz#baabce91083fc64e945b0f3ad613e264f7cd4e6c" - integrity sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w== - dependencies: - imurmurhash "^0.1.4" - -unique-string@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-2.0.0.tgz#39c6451f81afb2749de2b233e3f7c5e8843bd89d" - integrity sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg== - dependencies: - crypto-random-string "^2.0.0" - -universal-user-agent@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-4.0.1.tgz#fd8d6cb773a679a709e967ef8288a31fcc03e557" - integrity sha512-LnST3ebHwVL2aNe4mejI9IQh2HfZ1RLo8Io2HugSif8ekzD1TlWpHpColOB/eh8JHMLkGH3Akqf040I+4ylNxg== - dependencies: - os-name "^3.1.0" - -universal-user-agent@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-5.0.0.tgz#a3182aa758069bf0e79952570ca757de3579c1d9" - integrity sha512-B5TPtzZleXyPrUMKCpEHFmVhMN6EhmJYjG5PQna9s7mXeSqGTLap4OpqLl5FCEFUI3UBmllkETwKf/db66Y54Q== - dependencies: - os-name "^3.1.0" - -universalify@^0.1.0: - version "0.1.2" - resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" - integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== - -universalify@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/universalify/-/universalify-1.0.0.tgz#b61a1da173e8435b2fe3c67d29b9adf8594bd16d" - integrity sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug== - -unixify@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unixify/-/unixify-1.0.0.tgz#3a641c8c2ffbce4da683a5c70f03a462940c2090" - integrity sha1-OmQcjC/7zk2mg6XHDwOkYpQMIJA= - dependencies: - normalize-path "^2.1.1" - -unpipe@1.0.0, unpipe@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" - integrity sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw= - -unquote@~1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/unquote/-/unquote-1.1.1.tgz#8fded7324ec6e88a0ff8b905e7c098cdc086d544" - integrity sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ= - -unset-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" - integrity sha1-g3aHP30jNRef+x5vw6jtDfyKtVk= - dependencies: - has-value "^0.3.1" - isobject "^3.0.0" - -upath@^1.1.1, upath@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894" - integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg== - -update-notifier@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/update-notifier/-/update-notifier-4.1.0.tgz#4866b98c3bc5b5473c020b1250583628f9a328f3" - integrity sha512-w3doE1qtI0/ZmgeoDoARmI5fjDoT93IfKgEGqm26dGUOh8oNpaSTsGNdYRN/SjOuo10jcJGwkEL3mroKzktkew== - dependencies: - boxen "^4.2.0" - chalk "^3.0.0" - configstore "^5.0.1" - has-yarn "^2.1.0" - import-lazy "^2.1.0" - is-ci "^2.0.0" - is-installed-globally "^0.3.1" - is-npm "^4.0.0" - is-yarn-global "^0.3.0" - latest-version "^5.0.0" - pupa "^2.0.1" - semver-diff "^3.1.1" - xdg-basedir "^4.0.0" - -upper-case-first@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/upper-case-first/-/upper-case-first-2.0.1.tgz#32ab436747d891cc20ab1e43d601cb4d0a7fbf4a" - integrity sha512-105J8XqQ+9RxW3l9gHZtgve5oaiR9TIwvmZAMAIZWRHe00T21cdvewKORTlOJf/zXW6VukuTshM+HXZNWz7N5w== - dependencies: - tslib "^1.10.0" - -upper-case@2.0.1, upper-case@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-2.0.1.tgz#6214d05e235dc817822464ccbae85822b3d8665f" - integrity sha512-laAsbea9SY5osxrv7S99vH9xAaJKrw5Qpdh4ENRLcaxipjKsiaBwiAsxfa8X5mObKNTQPsupSq0J/VIxsSJe3A== - dependencies: - tslib "^1.10.0" - -uri-js@^4.2.2: - version "4.2.2" - resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0" - integrity sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ== - dependencies: - punycode "^2.1.0" - -urix@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" - integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= - -url-loader@2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-2.3.0.tgz#e0e2ef658f003efb8ca41b0f3ffbf76bab88658b" - integrity sha512-goSdg8VY+7nPZKUEChZSEtW5gjbS66USIGCeSJ1OVOJ7Yfuh/36YxCwMi5HVEJh6mqUYOoy3NJ0vlOMrWsSHog== - dependencies: - loader-utils "^1.2.3" - mime "^2.4.4" - schema-utils "^2.5.0" - -url-parse-lax@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-3.0.0.tgz#16b5cafc07dbe3676c1b1999177823d6503acb0c" - integrity sha1-FrXK/Afb42dsGxmZF3gj1lA6yww= - dependencies: - prepend-http "^2.0.0" - -url-parse@^1.4.3: - version "1.4.7" - resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.4.7.tgz#a8a83535e8c00a316e403a5db4ac1b9b853ae278" - integrity sha512-d3uaVyzDB9tQoSXFvuSUNFibTd9zxd2bkVrDRvF5TmvWWQwqE4lgYJ5m+x1DbecWkw+LK4RNl2CU1hHuOKPVlg== - dependencies: - querystringify "^2.1.1" - requires-port "^1.0.0" - -url@^0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" - integrity sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE= - dependencies: - punycode "1.3.2" - querystring "0.2.0" - -use@^3.1.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" - integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== - -util-deprecate@^1.0.1, util-deprecate@~1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" - integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= - -util-promisify@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/util-promisify/-/util-promisify-2.1.0.tgz#3c2236476c4d32c5ff3c47002add7c13b9a82a53" - integrity sha1-PCI2R2xNMsX/PEcAKt18E7moKlM= - dependencies: - object.getownpropertydescriptors "^2.0.3" - -util.promisify@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.0.tgz#440f7165a459c9a16dc145eb8e72f35687097030" - integrity sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA== - dependencies: - define-properties "^1.1.2" - object.getownpropertydescriptors "^2.0.3" - -util.promisify@^1.0.0, util.promisify@~1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.1.tgz#6baf7774b80eeb0f7520d8b81d07982a59abbaee" - integrity sha512-g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.2" - has-symbols "^1.0.1" - object.getownpropertydescriptors "^2.1.0" - -util@0.10.3: - version "0.10.3" - resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9" - integrity sha1-evsa/lCAUkZInj23/g7TeTNqwPk= - dependencies: - inherits "2.0.1" - -util@^0.11.0: - version "0.11.1" - resolved "https://registry.yarnpkg.com/util/-/util-0.11.1.tgz#3236733720ec64bb27f6e26f421aaa2e1b588d61" - integrity sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ== - dependencies: - inherits "2.0.3" - -utila@^0.4.0, utila@~0.4: - version "0.4.0" - resolved "https://registry.yarnpkg.com/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c" - integrity sha1-ihagXURWV6Oupe7MWxKk+lN5dyw= - -utils-merge@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" - integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= - -uuid@^3.0.1, uuid@^3.1.0, uuid@^3.3.2: - version "3.4.0" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" - integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== - -uuid@^7.0.3: - version "7.0.3" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-7.0.3.tgz#c5c9f2c8cf25dc0a372c4df1441c41f5bd0c680b" - integrity sha512-DPSke0pXhTZgoF/d+WSt2QaKMCFSfx7QegxEWT+JOuHF5aWrKEn0G+ztjuJg/gG8/ItK+rbPCD/yNv8yyih6Cg== - -uuid@^8.0.0: - version "8.1.0" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.1.0.tgz#6f1536eb43249f473abc6bd58ff983da1ca30d8d" - integrity sha512-CI18flHDznR0lq54xBycOVmphdCYnQLKn8abKn7PXUiKUGdEd+/l9LWNJmugXel4hXq7S+RMNl34ecyC9TntWg== - -v8-compile-cache@^2.0.3: - version "2.1.1" - resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.1.1.tgz#54bc3cdd43317bca91e35dcaf305b1a7237de745" - integrity sha512-8OQ9CL+VWyt3JStj7HX7/ciTL2V3Rl1Wf5OL+SNTm0yK1KvtReVulksyeRnCANHHuUxHlQig+JJDlUhBt1NQDQ== - -v8-to-istanbul@^4.1.3: - version "4.1.4" - resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-4.1.4.tgz#b97936f21c0e2d9996d4985e5c5156e9d4e49cd6" - integrity sha512-Rw6vJHj1mbdK8edjR7+zuJrpDtKIgNdAvTSAcpYfgMIw+u2dPDntD3dgN4XQFLU2/fvFQdzj+EeSGfd/jnY5fQ== - dependencies: - "@types/istanbul-lib-coverage" "^2.0.1" - convert-source-map "^1.6.0" - source-map "^0.7.3" - -valid-url@1.0.9: - version "1.0.9" - resolved "https://registry.yarnpkg.com/valid-url/-/valid-url-1.0.9.tgz#1c14479b40f1397a75782f115e4086447433a200" - integrity sha1-HBRHm0DxOXp1eC8RXkCGRHQzogA= - -validate-npm-package-license@^3.0.1, validate-npm-package-license@^3.0.3: - version "3.0.4" - resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" - integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== - dependencies: - spdx-correct "^3.0.0" - spdx-expression-parse "^3.0.0" - -validate-npm-package-name@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz#5fa912d81eb7d0c74afc140de7317f0ca7df437e" - integrity sha1-X6kS2B630MdK/BQN5zF/DKffQ34= - dependencies: - builtins "^1.0.3" - -value-equal@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/value-equal/-/value-equal-1.0.1.tgz#1e0b794c734c5c0cade179c437d356d931a34d6c" - integrity sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw== - -vary@^1, vary@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" - integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= - -vendors@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/vendors/-/vendors-1.0.4.tgz#e2b800a53e7a29b93506c3cf41100d16c4c4ad8e" - integrity sha512-/juG65kTL4Cy2su4P8HjtkTxk6VmJDiOPBufWniqQ6wknac6jNiXS9vU+hO3wgusiyqWlzTbVHi0dyJqRONg3w== - -verror@1.10.0: - version "1.10.0" - resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" - integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA= - dependencies: - assert-plus "^1.0.0" - core-util-is "1.0.2" - extsprintf "^1.2.0" - -vm-browserify@^1.0.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-1.1.2.tgz#78641c488b8e6ca91a75f511e7a3b32a86e5dda0" - integrity sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ== - -vue-template-compiler@^2.6.11: - version "2.6.11" - resolved "https://registry.yarnpkg.com/vue-template-compiler/-/vue-template-compiler-2.6.11.tgz#c04704ef8f498b153130018993e56309d4698080" - integrity sha512-KIq15bvQDrcCjpGjrAhx4mUlyyHfdmTaoNfeoATHLAiWB+MU3cx4lOzMwrnUh9cCxy0Lt1T11hAFY6TQgroUAA== - dependencies: - de-indent "^1.0.2" - he "^1.1.0" - -w3c-hr-time@^1.0.1, w3c-hr-time@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd" - integrity sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ== - dependencies: - browser-process-hrtime "^1.0.0" - -w3c-xmlserializer@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-1.1.2.tgz#30485ca7d70a6fd052420a3d12fd90e6339ce794" - integrity sha512-p10l/ayESzrBMYWRID6xbuCKh2Fp77+sA0doRuGn4tTIMrrZVeqfpKjXHY+oDh3K4nLdPgNwMTVP6Vp4pvqbNg== - dependencies: - domexception "^1.0.1" - webidl-conversions "^4.0.2" - xml-name-validator "^3.0.0" - -w3c-xmlserializer@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz#3e7104a05b75146cc60f564380b7f683acf1020a" - integrity sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA== - dependencies: - xml-name-validator "^3.0.0" - -walker@^1.0.7, walker@~1.0.5: - version "1.0.7" - resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.7.tgz#2f7f9b8fd10d677262b18a884e28d19618e028fb" - integrity sha1-L3+bj9ENZ3JisYqITijRlhjgKPs= - dependencies: - makeerror "1.0.x" - -watchpack-chokidar2@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/watchpack-chokidar2/-/watchpack-chokidar2-2.0.0.tgz#9948a1866cbbd6cb824dea13a7ed691f6c8ddff0" - integrity sha512-9TyfOyN/zLUbA288wZ8IsMZ+6cbzvsNyEzSBp6e/zkifi6xxbl8SmQ/CxQq32k8NNqrdVEVUVSEf56L4rQ/ZxA== - dependencies: - chokidar "^2.1.8" - -watchpack@^1.6.0: - version "1.7.2" - resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.7.2.tgz#c02e4d4d49913c3e7e122c3325365af9d331e9aa" - integrity sha512-ymVbbQP40MFTp+cNMvpyBpBtygHnPzPkHqoIwRRj/0B8KhqQwV8LaKjtbaxF2lK4vl8zN9wCxS46IFCU5K4W0g== - dependencies: - graceful-fs "^4.1.2" - neo-async "^2.5.0" - optionalDependencies: - chokidar "^3.4.0" - watchpack-chokidar2 "^2.0.0" - -wbuf@^1.1.0, wbuf@^1.7.3: - version "1.7.3" - resolved "https://registry.yarnpkg.com/wbuf/-/wbuf-1.7.3.tgz#c1d8d149316d3ea852848895cb6a0bfe887b87df" - integrity sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA== - dependencies: - minimalistic-assert "^1.0.0" - -wcwidth@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8" - integrity sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g= - dependencies: - defaults "^1.0.3" - -webidl-conversions@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" - integrity sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg== - -webidl-conversions@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-5.0.0.tgz#ae59c8a00b121543a2acc65c0434f57b0fc11aff" - integrity sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA== - -webidl-conversions@^6.0.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514" - integrity sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w== - -webpack-dev-middleware@^3.7.2: - version "3.7.2" - resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-3.7.2.tgz#0019c3db716e3fa5cecbf64f2ab88a74bab331f3" - integrity sha512-1xC42LxbYoqLNAhV6YzTYacicgMZQTqRd27Sim9wn5hJrX3I5nxYy1SxSd4+gjUFsz1dQFj+yEe6zEVmSkeJjw== - dependencies: - memory-fs "^0.4.1" - mime "^2.4.4" - mkdirp "^0.5.1" - range-parser "^1.2.1" - webpack-log "^2.0.0" - -webpack-dev-server@3.10.3: - version "3.10.3" - resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-3.10.3.tgz#f35945036813e57ef582c2420ef7b470e14d3af0" - integrity sha512-e4nWev8YzEVNdOMcNzNeCN947sWJNd43E5XvsJzbAL08kGc2frm1tQ32hTJslRS+H65LCb/AaUCYU7fjHCpDeQ== - dependencies: - ansi-html "0.0.7" - bonjour "^3.5.0" - chokidar "^2.1.8" - compression "^1.7.4" - connect-history-api-fallback "^1.6.0" - debug "^4.1.1" - del "^4.1.1" - express "^4.17.1" - html-entities "^1.2.1" - http-proxy-middleware "0.19.1" - import-local "^2.0.0" - internal-ip "^4.3.0" - ip "^1.1.5" - is-absolute-url "^3.0.3" - killable "^1.0.1" - loglevel "^1.6.6" - opn "^5.5.0" - p-retry "^3.0.1" - portfinder "^1.0.25" - schema-utils "^1.0.0" - selfsigned "^1.10.7" - semver "^6.3.0" - serve-index "^1.9.1" - sockjs "0.3.19" - sockjs-client "1.4.0" - spdy "^4.0.1" - strip-ansi "^3.0.1" - supports-color "^6.1.0" - url "^0.11.0" - webpack-dev-middleware "^3.7.2" - webpack-log "^2.0.0" - ws "^6.2.1" - yargs "12.0.5" - -webpack-log@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/webpack-log/-/webpack-log-2.0.0.tgz#5b7928e0637593f119d32f6227c1e0ac31e1b47f" - integrity sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg== - dependencies: - ansi-colors "^3.0.0" - uuid "^3.3.2" - -webpack-manifest-plugin@2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/webpack-manifest-plugin/-/webpack-manifest-plugin-2.2.0.tgz#19ca69b435b0baec7e29fbe90fb4015de2de4f16" - integrity sha512-9S6YyKKKh/Oz/eryM1RyLVDVmy3NSPV0JXMRhZ18fJsq+AwGxUY34X54VNwkzYcEmEkDwNxuEOboCZEebJXBAQ== - dependencies: - fs-extra "^7.0.0" - lodash ">=3.5 <5" - object.entries "^1.1.0" - tapable "^1.0.0" - -webpack-sources@^1.1.0, webpack-sources@^1.4.0, webpack-sources@^1.4.1, webpack-sources@^1.4.3: - version "1.4.3" - resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933" - integrity sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ== - dependencies: - source-list-map "^2.0.0" - source-map "~0.6.1" - -webpack@4.42.0: - version "4.42.0" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.42.0.tgz#b901635dd6179391d90740a63c93f76f39883eb8" - integrity sha512-EzJRHvwQyBiYrYqhyjW9AqM90dE4+s1/XtCfn7uWg6cS72zH+2VPFAlsnW0+W0cDi0XRjNKUMoJtpSi50+Ph6w== - dependencies: - "@webassemblyjs/ast" "1.8.5" - "@webassemblyjs/helper-module-context" "1.8.5" - "@webassemblyjs/wasm-edit" "1.8.5" - "@webassemblyjs/wasm-parser" "1.8.5" - acorn "^6.2.1" - ajv "^6.10.2" - ajv-keywords "^3.4.1" - chrome-trace-event "^1.0.2" - enhanced-resolve "^4.1.0" - eslint-scope "^4.0.3" - json-parse-better-errors "^1.0.2" - loader-runner "^2.4.0" - loader-utils "^1.2.3" - memory-fs "^0.4.1" - micromatch "^3.1.10" - mkdirp "^0.5.1" - neo-async "^2.6.1" - node-libs-browser "^2.2.1" - schema-utils "^1.0.0" - tapable "^1.1.3" - terser-webpack-plugin "^1.4.3" - watchpack "^1.6.0" - webpack-sources "^1.4.1" - -websocket-driver@>=0.5.1: - version "0.7.4" - resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.7.4.tgz#89ad5295bbf64b480abcba31e4953aca706f5760" - integrity sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg== - dependencies: - http-parser-js ">=0.5.1" - safe-buffer ">=5.1.0" - websocket-extensions ">=0.1.1" - -websocket-extensions@>=0.1.1: - version "0.1.4" - resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.4.tgz#7f8473bc839dfd87608adb95d7eb075211578a42" - integrity sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg== - -websocket@1.0.31: - version "1.0.31" - resolved "https://registry.yarnpkg.com/websocket/-/websocket-1.0.31.tgz#e5d0f16c3340ed87670e489ecae6144c79358730" - integrity sha512-VAouplvGKPiKFDTeCCO65vYHsyay8DqoBSlzIO3fayrfOgU94lQN5a1uWVnFrMLceTJw/+fQXR5PGbUVRaHshQ== - dependencies: - debug "^2.2.0" - es5-ext "^0.10.50" - nan "^2.14.0" - typedarray-to-buffer "^3.1.5" - yaeti "^0.0.6" - -whatwg-encoding@^1.0.1, whatwg-encoding@^1.0.3, whatwg-encoding@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0" - integrity sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw== - dependencies: - iconv-lite "0.4.24" - -whatwg-fetch@2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-2.0.4.tgz#dde6a5df315f9d39991aa17621853d720b85566f" - integrity sha512-dcQ1GWpOD/eEQ97k66aiEVpNnapVj90/+R+SXTPYGHpYBBypfKJEQjLrvMZ7YXbKm21gXd4NcuxUTjiv1YtLng== - -whatwg-fetch@>=0.10.0, whatwg-fetch@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.0.0.tgz#fc804e458cc460009b1a2b966bc8817d2578aefb" - integrity sha512-9GSJUgz1D4MfyKU7KRqwOjXCXTqWdFNvEr7eUBYchQiVc744mqK/MzXPNR2WsPkmkOa4ywfg8C2n8h+13Bey1Q== - -whatwg-mimetype@^2.1.0, whatwg-mimetype@^2.2.0, whatwg-mimetype@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf" - integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g== - -whatwg-url@^6.4.1: - version "6.5.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-6.5.0.tgz#f2df02bff176fd65070df74ad5ccbb5a199965a8" - integrity sha512-rhRZRqx/TLJQWUpQ6bmrt2UV4f0HCQ463yQuONJqC6fO2VoEb1pTYddbe59SkYq87aoM5A3bdhMZiUiVws+fzQ== - dependencies: - lodash.sortby "^4.7.0" - tr46 "^1.0.1" - webidl-conversions "^4.0.2" - -whatwg-url@^7.0.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-7.1.0.tgz#c2c492f1eca612988efd3d2266be1b9fc6170d06" - integrity sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg== - dependencies: - lodash.sortby "^4.7.0" - tr46 "^1.0.1" - webidl-conversions "^4.0.2" - -whatwg-url@^8.0.0: - version "8.1.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.1.0.tgz#c628acdcf45b82274ce7281ee31dd3c839791771" - integrity sha512-vEIkwNi9Hqt4TV9RdnaBPNt+E2Sgmo3gePebCRgZ1R7g6d23+53zCTnuB0amKI4AXq6VM8jj2DUAa0S1vjJxkw== - dependencies: - lodash.sortby "^4.7.0" - tr46 "^2.0.2" - webidl-conversions "^5.0.0" - -which-module@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" - integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= - -which-pm-runs@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/which-pm-runs/-/which-pm-runs-1.0.0.tgz#670b3afbc552e0b55df6b7780ca74615f23ad1cb" - integrity sha1-Zws6+8VS4LVd9rd4DKdGFfI60cs= - -which@^1.2.9, which@^1.3.0, which@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" - integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== - dependencies: - isexe "^2.0.0" - -which@^2.0.1, which@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" - integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== - dependencies: - isexe "^2.0.0" - -wide-align@^1.1.0: - version "1.1.3" - resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" - integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA== - dependencies: - string-width "^1.0.2 || 2" - -widest-line@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-3.1.0.tgz#8292333bbf66cb45ff0de1603b136b7ae1496eca" - integrity sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg== - dependencies: - string-width "^4.0.0" - -windows-release@^3.1.0: - version "3.3.1" - resolved "https://registry.yarnpkg.com/windows-release/-/windows-release-3.3.1.tgz#cb4e80385f8550f709727287bf71035e209c4ace" - integrity sha512-Pngk/RDCaI/DkuHPlGTdIkDiTAnAkyMjoQMZqRsxydNl1qGXNIoZrB7RK8g53F2tEgQBMqQJHQdYZuQEEAu54A== - dependencies: - execa "^1.0.0" - -word-wrap@^1.2.3, word-wrap@~1.2.3: - version "1.2.3" - resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" - integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== - -wordwrap@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" - integrity sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus= - -workbox-background-sync@^4.3.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/workbox-background-sync/-/workbox-background-sync-4.3.1.tgz#26821b9bf16e9e37fd1d640289edddc08afd1950" - integrity sha512-1uFkvU8JXi7L7fCHVBEEnc3asPpiAL33kO495UMcD5+arew9IbKW2rV5lpzhoWcm/qhGB89YfO4PmB/0hQwPRg== - dependencies: - workbox-core "^4.3.1" - -workbox-broadcast-update@^4.3.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/workbox-broadcast-update/-/workbox-broadcast-update-4.3.1.tgz#e2c0280b149e3a504983b757606ad041f332c35b" - integrity sha512-MTSfgzIljpKLTBPROo4IpKjESD86pPFlZwlvVG32Kb70hW+aob4Jxpblud8EhNb1/L5m43DUM4q7C+W6eQMMbA== - dependencies: - workbox-core "^4.3.1" - -workbox-build@^4.3.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/workbox-build/-/workbox-build-4.3.1.tgz#414f70fb4d6de47f6538608b80ec52412d233e64" - integrity sha512-UHdwrN3FrDvicM3AqJS/J07X0KXj67R8Cg0waq1MKEOqzo89ap6zh6LmaLnRAjpB+bDIz+7OlPye9iii9KBnxw== - dependencies: - "@babel/runtime" "^7.3.4" - "@hapi/joi" "^15.0.0" - common-tags "^1.8.0" - fs-extra "^4.0.2" - glob "^7.1.3" - lodash.template "^4.4.0" - pretty-bytes "^5.1.0" - stringify-object "^3.3.0" - strip-comments "^1.0.2" - workbox-background-sync "^4.3.1" - workbox-broadcast-update "^4.3.1" - workbox-cacheable-response "^4.3.1" - workbox-core "^4.3.1" - workbox-expiration "^4.3.1" - workbox-google-analytics "^4.3.1" - workbox-navigation-preload "^4.3.1" - workbox-precaching "^4.3.1" - workbox-range-requests "^4.3.1" - workbox-routing "^4.3.1" - workbox-strategies "^4.3.1" - workbox-streams "^4.3.1" - workbox-sw "^4.3.1" - workbox-window "^4.3.1" - -workbox-cacheable-response@^4.3.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/workbox-cacheable-response/-/workbox-cacheable-response-4.3.1.tgz#f53e079179c095a3f19e5313b284975c91428c91" - integrity sha512-Rp5qlzm6z8IOvnQNkCdO9qrDgDpoPNguovs0H8C+wswLuPgSzSp9p2afb5maUt9R1uTIwOXrVQMmPfPypv+npw== - dependencies: - workbox-core "^4.3.1" - -workbox-core@^4.3.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/workbox-core/-/workbox-core-4.3.1.tgz#005d2c6a06a171437afd6ca2904a5727ecd73be6" - integrity sha512-I3C9jlLmMKPxAC1t0ExCq+QoAMd0vAAHULEgRZ7kieCdUd919n53WC0AfvokHNwqRhGn+tIIj7vcb5duCjs2Kg== - -workbox-expiration@^4.3.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/workbox-expiration/-/workbox-expiration-4.3.1.tgz#d790433562029e56837f341d7f553c4a78ebe921" - integrity sha512-vsJLhgQsQouv9m0rpbXubT5jw0jMQdjpkum0uT+d9tTwhXcEZks7qLfQ9dGSaufTD2eimxbUOJfWLbNQpIDMPw== - dependencies: - workbox-core "^4.3.1" - -workbox-google-analytics@^4.3.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/workbox-google-analytics/-/workbox-google-analytics-4.3.1.tgz#9eda0183b103890b5c256e6f4ea15a1f1548519a" - integrity sha512-xzCjAoKuOb55CBSwQrbyWBKqp35yg1vw9ohIlU2wTy06ZrYfJ8rKochb1MSGlnoBfXGWss3UPzxR5QL5guIFdg== - dependencies: - workbox-background-sync "^4.3.1" - workbox-core "^4.3.1" - workbox-routing "^4.3.1" - workbox-strategies "^4.3.1" - -workbox-navigation-preload@^4.3.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/workbox-navigation-preload/-/workbox-navigation-preload-4.3.1.tgz#29c8e4db5843803b34cd96dc155f9ebd9afa453d" - integrity sha512-K076n3oFHYp16/C+F8CwrRqD25GitA6Rkd6+qAmLmMv1QHPI2jfDwYqrytOfKfYq42bYtW8Pr21ejZX7GvALOw== - dependencies: - workbox-core "^4.3.1" - -workbox-precaching@^4.3.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/workbox-precaching/-/workbox-precaching-4.3.1.tgz#9fc45ed122d94bbe1f0ea9584ff5940960771cba" - integrity sha512-piSg/2csPoIi/vPpp48t1q5JLYjMkmg5gsXBQkh/QYapCdVwwmKlU9mHdmy52KsDGIjVaqEUMFvEzn2LRaigqQ== - dependencies: - workbox-core "^4.3.1" - -workbox-range-requests@^4.3.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/workbox-range-requests/-/workbox-range-requests-4.3.1.tgz#f8a470188922145cbf0c09a9a2d5e35645244e74" - integrity sha512-S+HhL9+iTFypJZ/yQSl/x2Bf5pWnbXdd3j57xnb0V60FW1LVn9LRZkPtneODklzYuFZv7qK6riZ5BNyc0R0jZA== - dependencies: - workbox-core "^4.3.1" - -workbox-routing@^4.3.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/workbox-routing/-/workbox-routing-4.3.1.tgz#a675841af623e0bb0c67ce4ed8e724ac0bed0cda" - integrity sha512-FkbtrODA4Imsi0p7TW9u9MXuQ5P4pVs1sWHK4dJMMChVROsbEltuE79fBoIk/BCztvOJ7yUpErMKa4z3uQLX+g== - dependencies: - workbox-core "^4.3.1" - -workbox-strategies@^4.3.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/workbox-strategies/-/workbox-strategies-4.3.1.tgz#d2be03c4ef214c115e1ab29c9c759c9fe3e9e646" - integrity sha512-F/+E57BmVG8dX6dCCopBlkDvvhg/zj6VDs0PigYwSN23L8hseSRwljrceU2WzTvk/+BSYICsWmRq5qHS2UYzhw== - dependencies: - workbox-core "^4.3.1" - -workbox-streams@^4.3.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/workbox-streams/-/workbox-streams-4.3.1.tgz#0b57da70e982572de09c8742dd0cb40a6b7c2cc3" - integrity sha512-4Kisis1f/y0ihf4l3u/+ndMkJkIT4/6UOacU3A4BwZSAC9pQ9vSvJpIi/WFGQRH/uPXvuVjF5c2RfIPQFSS2uA== - dependencies: - workbox-core "^4.3.1" - -workbox-sw@^4.3.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/workbox-sw/-/workbox-sw-4.3.1.tgz#df69e395c479ef4d14499372bcd84c0f5e246164" - integrity sha512-0jXdusCL2uC5gM3yYFT6QMBzKfBr2XTk0g5TPAV4y8IZDyVNDyj1a8uSXy3/XrvkVTmQvLN4O5k3JawGReXr9w== - -workbox-webpack-plugin@4.3.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/workbox-webpack-plugin/-/workbox-webpack-plugin-4.3.1.tgz#47ff5ea1cc074b6c40fb5a86108863a24120d4bd" - integrity sha512-gJ9jd8Mb8wHLbRz9ZvGN57IAmknOipD3W4XNE/Lk/4lqs5Htw4WOQgakQy/o/4CoXQlMCYldaqUg+EJ35l9MEQ== - dependencies: - "@babel/runtime" "^7.0.0" - json-stable-stringify "^1.0.1" - workbox-build "^4.3.1" - -workbox-window@^4.3.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/workbox-window/-/workbox-window-4.3.1.tgz#ee6051bf10f06afa5483c9b8dfa0531994ede0f3" - integrity sha512-C5gWKh6I58w3GeSc0wp2Ne+rqVw8qwcmZnQGpjiek8A2wpbxSJb1FdCoQVO+jDJs35bFgo/WETgl1fqgsxN0Hg== - dependencies: - workbox-core "^4.3.1" - -worker-farm@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.7.0.tgz#26a94c5391bbca926152002f69b84a4bf772e5a8" - integrity sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw== - dependencies: - errno "~0.1.7" - -worker-rpc@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/worker-rpc/-/worker-rpc-0.1.1.tgz#cb565bd6d7071a8f16660686051e969ad32f54d5" - integrity sha512-P1WjMrUB3qgJNI9jfmpZ/htmBEjFh//6l/5y8SD9hg1Ef5zTTVVoRjTrTEzPrNBQvmhMxkoTsjOXN10GWU7aCg== - dependencies: - microevent.ts "~0.1.1" - -wrap-ansi@7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" - integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== - dependencies: - ansi-styles "^4.0.0" - string-width "^4.1.0" - strip-ansi "^6.0.0" - -wrap-ansi@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" - integrity sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU= - dependencies: - string-width "^1.0.1" - strip-ansi "^3.0.1" - -wrap-ansi@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-3.0.1.tgz#288a04d87eda5c286e060dfe8f135ce8d007f8ba" - integrity sha1-KIoE2H7aXChuBg3+jxNc6NAH+Lo= - dependencies: - string-width "^2.1.1" - strip-ansi "^4.0.0" - -wrap-ansi@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz#1fd1f67235d5b6d0fee781056001bfb694c03b09" - integrity sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q== - dependencies: - ansi-styles "^3.2.0" - string-width "^3.0.0" - strip-ansi "^5.0.0" - -wrap-ansi@^6.2.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53" - integrity sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA== - dependencies: - ansi-styles "^4.0.0" - string-width "^4.1.0" - strip-ansi "^6.0.0" - -wrappy@1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" - integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= - -write-file-atomic@2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.4.1.tgz#d0b05463c188ae804396fd5ab2a370062af87529" - integrity sha512-TGHFeZEZMnv+gBFRfjAcxL5bPHrsGKtnb4qsFAws7/vlh+QfwAaySIw4AXP9ZskTTh5GWu3FLuJhsWVdiJPGvg== - dependencies: - graceful-fs "^4.1.11" - imurmurhash "^0.1.4" - signal-exit "^3.0.2" - -write-file-atomic@^2.0.0, write-file-atomic@^2.3.0, write-file-atomic@^2.4.2: - version "2.4.3" - resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.4.3.tgz#1fd2e9ae1df3e75b8d8c367443c692d4ca81f481" - integrity sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ== - dependencies: - graceful-fs "^4.1.11" - imurmurhash "^0.1.4" - signal-exit "^3.0.2" - -write-file-atomic@^3.0.0: - version "3.0.3" - resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8" - integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q== - dependencies: - imurmurhash "^0.1.4" - is-typedarray "^1.0.0" - signal-exit "^3.0.2" - typedarray-to-buffer "^3.1.5" - -write-json-file@^2.2.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/write-json-file/-/write-json-file-2.3.0.tgz#2b64c8a33004d54b8698c76d585a77ceb61da32f" - integrity sha1-K2TIozAE1UuGmMdtWFp3zrYdoy8= - dependencies: - detect-indent "^5.0.0" - graceful-fs "^4.1.2" - make-dir "^1.0.0" - pify "^3.0.0" - sort-keys "^2.0.0" - write-file-atomic "^2.0.0" - -write-json-file@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/write-json-file/-/write-json-file-3.2.0.tgz#65bbdc9ecd8a1458e15952770ccbadfcff5fe62a" - integrity sha512-3xZqT7Byc2uORAatYiP3DHUUAVEkNOswEWNs9H5KXiicRTvzYzYqKjYc4G7p+8pltvAw641lVByKVtMpf+4sYQ== - dependencies: - detect-indent "^5.0.0" - graceful-fs "^4.1.15" - make-dir "^2.1.0" - pify "^4.0.1" - sort-keys "^2.0.0" - write-file-atomic "^2.4.2" - -write-pkg@^3.1.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/write-pkg/-/write-pkg-3.2.0.tgz#0e178fe97820d389a8928bc79535dbe68c2cff21" - integrity sha512-tX2ifZ0YqEFOF1wjRW2Pk93NLsj02+n1UP5RvO6rCs0K6R2g1padvf006cY74PQJKMGS2r42NK7FD0dG6Y6paw== - dependencies: - sort-keys "^2.0.0" - write-json-file "^2.2.0" - -write@1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/write/-/write-1.0.3.tgz#0800e14523b923a387e415123c865616aae0f5c3" - integrity sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig== - dependencies: - mkdirp "^0.5.1" - -ws@^5.2.0: - version "5.2.2" - resolved "https://registry.yarnpkg.com/ws/-/ws-5.2.2.tgz#dffef14866b8e8dc9133582514d1befaf96e980f" - integrity sha512-jaHFD6PFv6UgoIVda6qZllptQsMlDEJkTQcybzzXDYM1XO9Y8em691FGMPmM46WGyLU4z9KMgQN+qrux/nhlHA== - dependencies: - async-limiter "~1.0.0" - -ws@^6.0.0, ws@^6.1.2, ws@^6.2.1: - version "6.2.1" - resolved "https://registry.yarnpkg.com/ws/-/ws-6.2.1.tgz#442fdf0a47ed64f59b6a5d8ff130f4748ed524fb" - integrity sha512-GIyAXC2cB7LjvpgMt9EKS2ldqr0MTrORaleiOno6TweZ6r3TKtoFQWay/2PceJ3RuBasOHzXNn5Lrw1X0bEjqA== - dependencies: - async-limiter "~1.0.0" - -ws@^7.2.3: - version "7.3.0" - resolved "https://registry.yarnpkg.com/ws/-/ws-7.3.0.tgz#4b2f7f219b3d3737bc1a2fbf145d825b94d38ffd" - integrity sha512-iFtXzngZVXPGgpTlP1rBqsUK82p9tKqsWRPg5L56egiljujJT3vGAYnHANvFxBieXrTFavhzhxW52jnaWV+w2w== - -xdg-basedir@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-4.0.0.tgz#4bc8d9984403696225ef83a1573cbbcb4e79db13" - integrity sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q== - -xml-name-validator@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" - integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== - -xml2js@^0.4.17: - version "0.4.23" - resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.23.tgz#a0c69516752421eb2ac758ee4d4ccf58843eac66" - integrity sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug== - dependencies: - sax ">=0.6.0" - xmlbuilder "~11.0.0" - -xmlbuilder@~11.0.0: - version "11.0.1" - resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-11.0.1.tgz#be9bae1c8a046e76b31127726347d0ad7002beb3" - integrity sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA== - -xmlchars@^2.1.1, xmlchars@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" - integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw== - -xregexp@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/xregexp/-/xregexp-4.3.0.tgz#7e92e73d9174a99a59743f67a4ce879a04b5ae50" - integrity sha512-7jXDIFXh5yJ/orPn4SXjuVrWWoi4Cr8jfV1eHv9CixKSbU+jY4mxfrBwAuDvupPNKpMUY+FeIqsVw/JLT9+B8g== - dependencies: - "@babel/runtime-corejs3" "^7.8.3" - -xss@^1.0.6: - version "1.0.7" - resolved "https://registry.yarnpkg.com/xss/-/xss-1.0.7.tgz#a554cbd5e909324bd6893fb47fff441ad54e2a95" - integrity sha512-A9v7tblGvxu8TWXQC9rlpW96a+LN1lyw6wyhpTmmGW+FwRMactchBR3ROKSi33UPCUcUHSu8s9YP6F+K3Mw//w== - dependencies: - commander "^2.20.3" - cssfilter "0.0.10" - -xtend@^4.0.0, xtend@~4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" - integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== - -"y18n@^3.2.1 || ^4.0.0", y18n@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" - integrity sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w== - -yaeti@^0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/yaeti/-/yaeti-0.0.6.tgz#f26f484d72684cf42bedfb76970aa1608fbf9577" - integrity sha1-8m9ITXJoTPQr7ft2lwqhYI+/lXc= - -yallist@^3.0.0, yallist@^3.0.2, yallist@^3.0.3: - version "3.1.1" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" - integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== - -yallist@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" - integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== - -yaml-ast-parser@^0.0.40: - version "0.0.40" - resolved "https://registry.yarnpkg.com/yaml-ast-parser/-/yaml-ast-parser-0.0.40.tgz#08536d4e73d322b1c9ce207ab8dd70e04d20ae6e" - integrity sha1-CFNtTnPTIrHJziB6uN1w4E0grm4= - -yaml@^1.7.2: - version "1.10.0" - resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.0.tgz#3b593add944876077d4d683fee01081bd9fff31e" - integrity sha512-yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg== - -yargonaut@^1.1.2: - version "1.1.4" - resolved "https://registry.yarnpkg.com/yargonaut/-/yargonaut-1.1.4.tgz#c64f56432c7465271221f53f5cc517890c3d6e0c" - integrity sha512-rHgFmbgXAAzl+1nngqOcwEljqHGG9uUZoPjsdZEs1w5JW9RXYzrSvH/u70C1JE5qFi0qjsdhnUX/dJRpWqitSA== - dependencies: - chalk "^1.1.1" - figlet "^1.1.1" - parent-require "^1.0.0" - -yargs-parser@18.x, yargs-parser@^18.1.1, yargs-parser@^18.1.2, yargs-parser@^18.1.3: - version "18.1.3" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-18.1.3.tgz#be68c4975c6b2abf469236b0c870362fab09a7b0" - integrity sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ== - dependencies: - camelcase "^5.0.0" - decamelize "^1.2.0" - -yargs-parser@^11.1.1: - version "11.1.1" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-11.1.1.tgz#879a0865973bca9f6bab5cbdf3b1c67ec7d3bcf4" - integrity sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ== - dependencies: - camelcase "^5.0.0" - decamelize "^1.2.0" - -yargs-parser@^13.1.2: - version "13.1.2" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.2.tgz#130f09702ebaeef2650d54ce6e3e5706f7a4fb38" - integrity sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg== - dependencies: - camelcase "^5.0.0" - decamelize "^1.2.0" - -yargs-parser@^15.0.1: - version "15.0.1" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-15.0.1.tgz#54786af40b820dcb2fb8025b11b4d659d76323b3" - integrity sha512-0OAMV2mAZQrs3FkNpDQcBk1x5HXb8X4twADss4S0Iuk+2dGnLOE/fRHrsYm542GduMveyA77OF4wrNJuanRCWw== - dependencies: - camelcase "^5.0.0" - decamelize "^1.2.0" - -yargs@12.0.5: - version "12.0.5" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-12.0.5.tgz#05f5997b609647b64f66b81e3b4b10a368e7ad13" - integrity sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw== - dependencies: - cliui "^4.0.0" - decamelize "^1.2.0" - find-up "^3.0.0" - get-caller-file "^1.0.1" - os-locale "^3.0.0" - require-directory "^2.1.1" - require-main-filename "^1.0.1" - set-blocking "^2.0.0" - string-width "^2.0.0" - which-module "^2.0.0" - y18n "^3.2.1 || ^4.0.0" - yargs-parser "^11.1.1" - -yargs@15.4.1: - version "15.4.1" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-15.4.1.tgz#0d87a16de01aee9d8bec2bfbf74f67851730f4f8" - integrity sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A== - dependencies: - cliui "^6.0.0" - decamelize "^1.2.0" - find-up "^4.1.0" - get-caller-file "^2.0.1" - require-directory "^2.1.1" - require-main-filename "^2.0.0" - set-blocking "^2.0.0" - string-width "^4.2.0" - which-module "^2.0.0" - y18n "^4.0.0" - yargs-parser "^18.1.2" - -yargs@^13.2.1, yargs@^13.3.0: - version "13.3.2" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.2.tgz#ad7ffefec1aa59565ac915f82dccb38a9c31a2dd" - integrity sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw== - dependencies: - cliui "^5.0.0" - find-up "^3.0.0" - get-caller-file "^2.0.1" - require-directory "^2.1.1" - require-main-filename "^2.0.0" - set-blocking "^2.0.0" - string-width "^3.0.0" - which-module "^2.0.0" - y18n "^4.0.0" - yargs-parser "^13.1.2" - -yargs@^14.2.2: - version "14.2.3" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-14.2.3.tgz#1a1c3edced1afb2a2fea33604bc6d1d8d688a414" - integrity sha512-ZbotRWhF+lkjijC/VhmOT9wSgyBQ7+zr13+YLkhfsSiTriYsMzkTUFP18pFhWwBeMa5gUc1MzbhrO6/VB7c9Xg== - dependencies: - cliui "^5.0.0" - decamelize "^1.2.0" - find-up "^3.0.0" - get-caller-file "^2.0.1" - require-directory "^2.1.1" - require-main-filename "^2.0.0" - set-blocking "^2.0.0" - string-width "^3.0.0" - which-module "^2.0.0" - y18n "^4.0.0" - yargs-parser "^15.0.1" - -yargs@^15.0.0, yargs@^15.3.1: - version "15.3.1" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-15.3.1.tgz#9505b472763963e54afe60148ad27a330818e98b" - integrity sha512-92O1HWEjw27sBfgmXiixJWT5hRBp2eobqXicLtPBIDBhYB+1HpwZlXmbW2luivBJHBzki+7VyCLRtAkScbTBQA== - dependencies: - cliui "^6.0.0" - decamelize "^1.2.0" - find-up "^4.1.0" - get-caller-file "^2.0.1" - require-directory "^2.1.1" - require-main-filename "^2.0.0" - set-blocking "^2.0.0" - string-width "^4.2.0" - which-module "^2.0.0" - y18n "^4.0.0" - yargs-parser "^18.1.1" - -yn@3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50" - integrity sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q== - -zen-observable-ts@^0.8.21: - version "0.8.21" - resolved "https://registry.yarnpkg.com/zen-observable-ts/-/zen-observable-ts-0.8.21.tgz#85d0031fbbde1eba3cd07d3ba90da241215f421d" - integrity sha512-Yj3yXweRc8LdRMrCC8nIc4kkjWecPAUVh0TI0OUrWXx6aX790vLcDlWca6I4vsyCGH3LpWxq0dJRcMOFoVqmeg== - dependencies: - tslib "^1.9.3" - zen-observable "^0.8.0" - -zen-observable@^0.8.0, zen-observable@^0.8.14: - version "0.8.15" - resolved "https://registry.yarnpkg.com/zen-observable/-/zen-observable-0.8.15.tgz#96415c512d8e3ffd920afd3889604e30b9eaac15" - integrity sha512-PQ2PC7R9rslx84ndNBZB/Dkv8V8fZEpk83RLgXtYd0fwUgEjseMn1Dgajh2x6S8QbZAFa9p2qVCEuYZNgve0dQ== + version: 3.9.7 + resolution: "typescript@npm:3.9.7" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: 10848a9c35fd8c70a8792b8bd9485317534bcd58768793d3b7d9c7486e9fd30cf345f83fa2a324e0bf6088bc8a4d8d061d58fda38b18c2ff187cf01fbbff6267 + languageName: node + linkType: hard + +"typescript@patch:typescript@3.7.5#builtin": + version: 3.7.5 + resolution: "typescript@patch:typescript@npm%3A3.7.5#builtin::version=3.7.5&hash=5b02a2" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: cf3413606dfe8a8c8e08392afe1f52975541b900ad407bc072279ad27b57ce4939eac389e74477bb0f8747122cf3442b944023ddfd87143d3b9ea3122fff40ad + languageName: node + linkType: hard + +"typescript@patch:typescript@3.8.3#builtin": + version: 3.8.3 + resolution: "typescript@patch:typescript@npm%3A3.8.3#builtin::version=3.8.3&hash=5b02a2" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: dcadfa6d7c90af4ac23181cccda22bdc7270f23a2c8773ab0b6047e2b9b86bcd885da5c5acc020addc1a0df042940ab8e9bbfb33aedcf884bea554fe60fccd32 + languageName: node + linkType: hard + +"typescript@patch:typescript@3.9.5#builtin": + version: 3.9.5 + resolution: "typescript@patch:typescript@npm%3A3.9.5#builtin::version=3.9.5&hash=5b02a2" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: 452cdd20d801630727433a990652c1e65f5eb5586383dda60f178b4fbda5c7951256f9aa31327c73722af9b1b664e3a53d724aabfd8a68866e9b1631818f004c + languageName: node + linkType: hard + +"typescript@patch:typescript@3.9.7#builtin": + version: 3.9.7 + resolution: "typescript@patch:typescript@npm%3A3.9.7#builtin::version=3.9.7&hash=5b02a2" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: f0d3d9c987860c7c458229ab6dd7e3d322405db36b70abccba610b5efd9f9451e4e67a3fc7983c0d3741033c1f1a8d7aa859a1510caa8f20fad762fc39648bfa + languageName: node + linkType: hard + +"ua-parser-js@npm:^0.7.18": + version: 0.7.21 + resolution: "ua-parser-js@npm:0.7.21" + checksum: 5bd2d949e2f0befebf1e7fabde12978ea619e604e1d43a4f165c51543caf9cea5f40512734f224435e248101beffcba1153d38cfb9dc88152f13bf79e9a106ee + languageName: node + linkType: hard + +"uglify-js@npm:^3.1.4": + version: 3.10.1 + resolution: "uglify-js@npm:3.10.1" + bin: + uglifyjs: bin/uglifyjs + checksum: 35a8096aebc49c0f7740999e9952e16f9b5dcadde36e7449082ae4e12926aeb05df55e860d9d756a8d9a35fdcbf57d113c3056927aecdce80511bd7988e30388 + languageName: node + linkType: hard + +"uid-number@npm:0.0.6": + version: 0.0.6 + resolution: "uid-number@npm:0.0.6" + checksum: 6580f5afd08cdd655aec7bfb51ac834dcbaae3bbff147f9c138fa128d31fdaef9b274ef04cf9d5a9a2df51b9d9fb24a15741d82ed77e380bdbd5208f410102b3 + languageName: node + linkType: hard + +"uid-safe@npm:~2.1.5": + version: 2.1.5 + resolution: "uid-safe@npm:2.1.5" + dependencies: + random-bytes: ~1.0.0 + checksum: 3babb99505759403264600665e7e639ac8ab4a5e608bcc9442e35a59bc72c6c4c0e305de70612b7e3ab4866d5e3adeeb419a22f011b64d445039b947a33824ee + languageName: node + linkType: hard + +"umask@npm:^1.1.0": + version: 1.1.0 + resolution: "umask@npm:1.1.0" + checksum: d9bb200f64cb1318ed598fee371c15068b22dbf5b573b14fe174bcd832588e589b3368955aed530edbea874ce9dee6a15b16a2a2638a9f9bd3eccff36ce4f9e5 + languageName: node + linkType: hard + +"unc-path-regex@npm:^0.1.2": + version: 0.1.2 + resolution: "unc-path-regex@npm:0.1.2" + checksum: 585e29357917a8b529e05db14a3f2e9486258a5826ca9c0eb4f9173c006968ceffba201766d2ff08d38a1e014b69c519294981b29e669a81ea357c0ffd6e326b + languageName: node + linkType: hard + +"undefsafe@npm:^2.0.2": + version: 2.0.3 + resolution: "undefsafe@npm:2.0.3" + dependencies: + debug: ^2.2.0 + checksum: 0974f82a8750c3c247d5a9cf7fe91279d1fad0069dda7b717937e7960addddedf2ddabe3ffb1f504929acd0c924ef654c5c85185aee4c514a0fbf2e2a4efcf39 + languageName: node + linkType: hard + +"unherit@npm:^1.0.4": + version: 1.1.3 + resolution: "unherit@npm:1.1.3" + dependencies: + inherits: ^2.0.0 + xtend: ^4.0.0 + checksum: 387415adc7d392cf2e20ac406560444ae2b814f1a696469bbaea1a5b5e2dc0b4c9342704510050e9469efab6ce7580054084b9810392cf715b25e396f86ecd87 + languageName: node + linkType: hard + +"unicode-canonical-property-names-ecmascript@npm:^1.0.4": + version: 1.0.4 + resolution: "unicode-canonical-property-names-ecmascript@npm:1.0.4" + checksum: 8b51950f8f6725acfd0cc33117e7061cc5b3ba97760aab6003db1e31b90ac41e626f289a5a39f8e2c3ed3fbb6b4774c1877fd6156a4c6f4e05736b9ff7a2e783 + languageName: node + linkType: hard + +"unicode-match-property-ecmascript@npm:^1.0.4": + version: 1.0.4 + resolution: "unicode-match-property-ecmascript@npm:1.0.4" + dependencies: + unicode-canonical-property-names-ecmascript: ^1.0.4 + unicode-property-aliases-ecmascript: ^1.0.4 + checksum: 481203b4b86861f278424ef694293bad9a090d606ac5bdb71a096fe3bbf413555d25f17e888ef9815841ece01c6a7d9f566752c04681cba8e27aec1a7e519641 + languageName: node + linkType: hard + +"unicode-match-property-value-ecmascript@npm:^1.2.0": + version: 1.2.0 + resolution: "unicode-match-property-value-ecmascript@npm:1.2.0" + checksum: 892ca3933535a30d939de026941f0e615330cb6906b62f76561b76dbe6de2aab1eb2a3c5971056813efd31c48f889b4709d34d4d8327e4ff66e3ac72b58a703e + languageName: node + linkType: hard + +"unicode-property-aliases-ecmascript@npm:^1.0.4": + version: 1.1.0 + resolution: "unicode-property-aliases-ecmascript@npm:1.1.0" + checksum: 2fa80e62a6ec395af3ee4747ce9738d2fee25ef963fb5650e358b2eb878d7f047f5ccdbd5f92e9605d13276f995fc3c4e3084475b03722cdd7ce9d58a148b2bd + languageName: node + linkType: hard + +"unified@npm:9.1.0": + version: 9.1.0 + resolution: "unified@npm:9.1.0" + dependencies: + bail: ^1.0.0 + extend: ^3.0.0 + is-buffer: ^2.0.0 + is-plain-obj: ^2.0.0 + trough: ^1.0.0 + vfile: ^4.0.0 + checksum: 746aa0d0f4179ca55c15ce027227fadc22bf7d3cb5ff5c9a5c22fb27857a92c2a26c17bb6c26ccd44b7f35c91c0663ff3bd165f42e577a08b25a7f87c524883f + languageName: node + linkType: hard + +"unified@npm:^8.4.2": + version: 8.4.2 + resolution: "unified@npm:8.4.2" + dependencies: + bail: ^1.0.0 + extend: ^3.0.0 + is-plain-obj: ^2.0.0 + trough: ^1.0.0 + vfile: ^4.0.0 + checksum: d94242a81660436d762f18587e080da8065fea7a81b2008ee411b4dccef7df7d98f969ea4db1ee12b18fb7ac91b8b94fbc8f95b016410e5dff29c9bcad8eb812 + languageName: node + linkType: hard + +"union-value@npm:^1.0.0": + version: 1.0.1 + resolution: "union-value@npm:1.0.1" + dependencies: + arr-union: ^3.1.0 + get-value: ^2.0.6 + is-extendable: ^0.1.1 + set-value: ^2.0.1 + checksum: bd6ae611f09e98d3918ee425b0cb61987e9240672c9822cfac642b0240e7a807c802c1968e0205176d7fa91ca0bba5f625a6937b26b2269620a1402589852fd8 + languageName: node + linkType: hard + +"uniq@npm:^1.0.1": + version: 1.0.1 + resolution: "uniq@npm:1.0.1" + checksum: a5603a5b3128616f268e7695e47cd1eb8d583cf8ee1278434140cd83d2f3f98e5d65a22cf4187f0345ca8d8a0a9f1d07e1f06cb46312135ad4a6303fd28fc317 + languageName: node + linkType: hard + +"uniqs@npm:^2.0.0": + version: 2.0.0 + resolution: "uniqs@npm:2.0.0" + checksum: f6467e9cb94e25d40e25dc600bec69ec5c6c3ba58ec168fecfd2a74cd8a92f54383dfbcbb9f8a50ba389c7e6e9cfd08e03ae80391792357d6a4e616f907af3f6 + languageName: node + linkType: hard + +"unique-filename@npm:^1.1.1": + version: 1.1.1 + resolution: "unique-filename@npm:1.1.1" + dependencies: + unique-slug: ^2.0.0 + checksum: 0e674206bdda0c949b4ef86b073ba614f11de6141310834a236860888e592826da988837a7277f91a943752a691c5ab7ab939a19e7c0a5d7fcf1b7265720bf86 + languageName: node + linkType: hard + +"unique-slug@npm:^2.0.0": + version: 2.0.2 + resolution: "unique-slug@npm:2.0.2" + dependencies: + imurmurhash: ^0.1.4 + checksum: 3b17dabc13b3cc41897715e106d4403b88c225739e70bbb6d1142e0fb680261b20574cae133b0ac0eedcf514fc19766d6fa37411f9e9ee038daaa4ae83e7cd70 + languageName: node + linkType: hard + +"unique-string@npm:^2.0.0": + version: 2.0.0 + resolution: "unique-string@npm:2.0.0" + dependencies: + crypto-random-string: ^2.0.0 + checksum: a2748b41eaada391800773c16674fe4e9a3f078162e49b2c6b4e67d36061a0f97be4b7851136d786ed5e4ddc90770400fd54bf32aed1e08ec9a9219d9b66bad3 + languageName: node + linkType: hard + +"unist-builder@npm:2.0.3, unist-builder@npm:^2.0.0": + version: 2.0.3 + resolution: "unist-builder@npm:2.0.3" + checksum: 64f9231bac9050b65d8cb97bc64e93782f93551e4a6a4e75ff89f580fa92740520bbd9ec44b7917c29785d498a3f432c326c5f55bd44e8949b98f5f63b14ec44 + languageName: node + linkType: hard + +"unist-util-generated@npm:^1.0.0": + version: 1.1.5 + resolution: "unist-util-generated@npm:1.1.5" + checksum: 56355ea74f37f3e97fa814afd64ef63abcc368aaddc83bf19836bc9601c8d12851fc5c3146854761df4510d9e6e194c3406217a743eee65da1cd4b43da39b510 + languageName: node + linkType: hard + +"unist-util-is@npm:^4.0.0": + version: 4.0.2 + resolution: "unist-util-is@npm:4.0.2" + checksum: 497967dc7781da4113888a412ed03f8f099f5a76e63055609564d71a43a8d9508169234dc9013f8fead5cb9874ec935e266801c1ada588fadd0d56ebf74291ff + languageName: node + linkType: hard + +"unist-util-position@npm:^3.0.0": + version: 3.1.0 + resolution: "unist-util-position@npm:3.1.0" + checksum: 3e51e44fa7157a7bbffc3bf073bf830a5a46a8a68a6c0d871362148d54ef3be1d0e382d6ae2308258467f45b0a7907edccda74288ff28feb51fab43ee0076950 + languageName: node + linkType: hard + +"unist-util-remove-position@npm:^2.0.0": + version: 2.0.1 + resolution: "unist-util-remove-position@npm:2.0.1" + dependencies: + unist-util-visit: ^2.0.0 + checksum: 0b1a7046c45ab74da969ff269d4fad711d4e15e2dba6f6aa9020845b0a4c2a2733d9fdd437ad46da49be6146f88fbc66db92ee8c45c6d195943003303dc2f8b0 + languageName: node + linkType: hard + +"unist-util-remove@npm:^2.0.0": + version: 2.0.0 + resolution: "unist-util-remove@npm:2.0.0" + dependencies: + unist-util-is: ^4.0.0 + checksum: 7e79d9f95d14ad9697d80e5e74094262d6a2bf207cff75b079257f1123c614b30a9192007724e9cea10f598cb1b16fc243ed0ef7bce71c56253b17127a2f0c08 + languageName: node + linkType: hard + +"unist-util-stringify-position@npm:^2.0.0": + version: 2.0.3 + resolution: "unist-util-stringify-position@npm:2.0.3" + dependencies: + "@types/unist": ^2.0.2 + checksum: 2017497ef71da8d430232daf5845f182b1892c774648e08d8b40fb2ff06980b231b463db33a8adc2138ac1451535861152bfd2ac7c85ed05123c64a7e2523b68 + languageName: node + linkType: hard + +"unist-util-visit-parents@npm:^3.0.0": + version: 3.1.0 + resolution: "unist-util-visit-parents@npm:3.1.0" + dependencies: + "@types/unist": ^2.0.0 + unist-util-is: ^4.0.0 + checksum: a4283d04758205de230a9a0239740242c7ca94a650e74c1eaabd1dc18e3c21569a7c2b729fe4547df61783ca12d914bd2944d9e42177bc4c93fb9909d493184c + languageName: node + linkType: hard + +"unist-util-visit@npm:2.0.3, unist-util-visit@npm:^2.0.0, unist-util-visit@npm:^2.0.1, unist-util-visit@npm:^2.0.2": + version: 2.0.3 + resolution: "unist-util-visit@npm:2.0.3" + dependencies: + "@types/unist": ^2.0.0 + unist-util-is: ^4.0.0 + unist-util-visit-parents: ^3.0.0 + checksum: 7af837673e377693cf4c7bd966d5e088b52bd4a9c6e92f9b16ae5760a31243f627fbf3432ada6541e2b9091b8096007cb22aa8439cbbf04613898773743302d3 + languageName: node + linkType: hard + +"universal-user-agent@npm:^4.0.0": + version: 4.0.1 + resolution: "universal-user-agent@npm:4.0.1" + dependencies: + os-name: ^3.1.0 + checksum: 553ee1f53f3d9a93d4c752a7633ac1b05d4863496c76727ad6356af87d39e344c9a02225e0bf560bffd60122797bb890c8e389829265ad868d27d9eb14ab813f + languageName: node + linkType: hard + +"universal-user-agent@npm:^6.0.0": + version: 6.0.0 + resolution: "universal-user-agent@npm:6.0.0" + checksum: 725797ab636f1786a824f805eca2b227019ae8e82fdbe03e3e26a7f2917669bfcf7ef723c7d4b2c60a5e1603108d32bec3987b4f52821360523cb609fb7ae782 + languageName: node + linkType: hard + +"universalify@npm:^0.1.0": + version: 0.1.2 + resolution: "universalify@npm:0.1.2" + checksum: 420fc6547357782c700d53e9a92506a8e95345b13e97684c8f9ab75237912ec2ebb6af8ac10d4f7406b7b6bd21c58f6c5c0811414fb0b4091b78b4743fa6806e + languageName: node + linkType: hard + +"universalify@npm:^1.0.0": + version: 1.0.0 + resolution: "universalify@npm:1.0.0" + checksum: d74303a8d9ff18598804f3e9f261c9376cad55b81a92346f086e59261803ae75bef347044dd6a25549eb3b1490c0dd106dc07154cd7ccad8f037fdae947c125d + languageName: node + linkType: hard + +"unixify@npm:1.0.0": + version: 1.0.0 + resolution: "unixify@npm:1.0.0" + dependencies: + normalize-path: ^2.1.1 + checksum: 8a939fba417b50b84b4bded80bb26d1dc6aaf56eb292ec09e133e569ab7710e13dbb5210d49ff4153e419f560b4cda58b6dfaa8476df6b23be361552c563a65e + languageName: node + linkType: hard + +"unpipe@npm:1.0.0, unpipe@npm:~1.0.0": + version: 1.0.0 + resolution: "unpipe@npm:1.0.0" + checksum: ba244e8bf640475b2143af95be5d71353cd4d238d63abf5dfe700c67841f066eb0819fc60dee7f2348ef647a5644a06ba024b9a0ab6d399fc07a05eb72a30ac7 + languageName: node + linkType: hard + +"unquote@npm:~1.1.1": + version: 1.1.1 + resolution: "unquote@npm:1.1.1" + checksum: 468981e4547c46bd4ebafd5555b6b1e6bd5433f52fcbc99f6868f29ecb1581dde472ee02a0e42ecbadd52012d03b0ad90ee94edf660a921f6a6608b8884e290a + languageName: node + linkType: hard + +"unset-value@npm:^1.0.0": + version: 1.0.0 + resolution: "unset-value@npm:1.0.0" + dependencies: + has-value: ^0.3.1 + isobject: ^3.0.0 + checksum: b4c4853f2744a91e9bb5ccb3dfb28f78c32310bf851f0e6b9e781d3ca5244a803632926b2af701da5f9153a03e405023cebc1f90b87711f73b5fc86b6c33efae + languageName: node + linkType: hard + +"upath@npm:^1.1.1, upath@npm:^1.2.0": + version: 1.2.0 + resolution: "upath@npm:1.2.0" + checksum: ecb08ff3e7e3b152e03bceb7089e6f0077bf3494764397a301eb99a7a5cd4c593ea4d0b13a7714195ad8a3ddca9d7a5964037a1c0bc712e1ba7b67a79165a0be + languageName: node + linkType: hard + +"update-notifier@npm:^4.0.0, update-notifier@npm:^4.1.0": + version: 4.1.0 + resolution: "update-notifier@npm:4.1.0" + dependencies: + boxen: ^4.2.0 + chalk: ^3.0.0 + configstore: ^5.0.1 + has-yarn: ^2.1.0 + import-lazy: ^2.1.0 + is-ci: ^2.0.0 + is-installed-globally: ^0.3.1 + is-npm: ^4.0.0 + is-yarn-global: ^0.3.0 + latest-version: ^5.0.0 + pupa: ^2.0.1 + semver-diff: ^3.1.1 + xdg-basedir: ^4.0.0 + checksum: 2d35bb8785da43c247c5c7b7734c50c040378de61569afbfc22681b46066240ccdf717b38a62483926f6452f26a547418768627a2f0dede70ca6f4f0b5c78309 + languageName: node + linkType: hard + +"upper-case-first@npm:^2.0.1": + version: 2.0.1 + resolution: "upper-case-first@npm:2.0.1" + dependencies: + tslib: ^1.10.0 + checksum: 35bd4852c8fd1806aff568ccf494c357b4ee4b8fb69a4164a74fc65c4bb5c826de433b0863d0699a5609a735d1818b733ac72bbaaa2d3f5dfe15fc377366dfcd + languageName: node + linkType: hard + +"upper-case@npm:2.0.1, upper-case@npm:^2.0.1": + version: 2.0.1 + resolution: "upper-case@npm:2.0.1" + dependencies: + tslib: ^1.10.0 + checksum: 69c914af89d1257ae9390535c3ee7f0144e97dd9cc54038eb4488efb6f004dc2bfaf87aaefdfe521ed660c8c6f30539c82af59424b671dafc5510f8fc7506af5 + languageName: node + linkType: hard + +"uri-js@npm:^4.2.2": + version: 4.2.2 + resolution: "uri-js@npm:4.2.2" + dependencies: + punycode: ^2.1.0 + checksum: 651a49f55d6d65a15e589ed5ffa23bf99e495699e246c1c3fecbe6f232c675589fdae4e93a88608525ff130f39b6fb854c19982820813a2d94c005c11eafd7ed + languageName: node + linkType: hard + +"urix@npm:^0.1.0": + version: 0.1.0 + resolution: "urix@npm:0.1.0" + checksum: 6bdfca4e7fb7d035537068a47a04ace1bacfa32e6b1aaf54c5a0340c83125a186d59109a19b9a3a1c1f986d3eb718b82faf9ad03d53cb99cf868068580b15b3b + languageName: node + linkType: hard + +"url-loader@npm:2.3.0": + version: 2.3.0 + resolution: "url-loader@npm:2.3.0" + dependencies: + loader-utils: ^1.2.3 + mime: ^2.4.4 + schema-utils: ^2.5.0 + peerDependencies: + file-loader: "*" + webpack: ^4.0.0 + peerDependenciesMeta: + file-loader: + optional: true + checksum: c24821b422c2057b6e8adc57f2855851c12a4449c5cbcc6ca7317d44185cfd11d8bea70cd7c8cca84032eb0ee033b24ed26ba0ad2a19fe2f58c5a9f47b31d14f + languageName: node + linkType: hard + +"url-loader@npm:^4.1.0": + version: 4.1.0 + resolution: "url-loader@npm:4.1.0" + dependencies: + loader-utils: ^2.0.0 + mime-types: ^2.1.26 + schema-utils: ^2.6.5 + peerDependencies: + file-loader: "*" + webpack: ^4.0.0 || ^5.0.0 + peerDependenciesMeta: + file-loader: + optional: true + checksum: 5870b969687458608c7cb7fc4e7f46a15478f506724828af3ddbe957318485b428f0fd9f08f01c413e8b556b08d7eb9520d5863e871b0bc279762a47d300a0b5 + languageName: node + linkType: hard + +"url-parse-lax@npm:^3.0.0": + version: 3.0.0 + resolution: "url-parse-lax@npm:3.0.0" + dependencies: + prepend-http: ^2.0.0 + checksum: 334817036b300c35023798b8ceac23ea61b51f231a867112e3a85778d65191a3ccb67e7b69b608d45433d55da392cf0d72cd3c85f2542f6ec34733e455c229d5 + languageName: node + linkType: hard + +"url-parse@npm:^1.4.3": + version: 1.4.7 + resolution: "url-parse@npm:1.4.7" + dependencies: + querystringify: ^2.1.1 + requires-port: ^1.0.0 + checksum: 33c44a24b9a9e9da7f2591652dc944b6164b93ad1d3ee4eea889b396788f716bd2d6c9d0a2b3ee2e8f863bde69bacbc12c3a4b4e666506ee4c88ea7444004f95 + languageName: node + linkType: hard + +"url@npm:^0.11.0": + version: 0.11.0 + resolution: "url@npm:0.11.0" + dependencies: + punycode: 1.3.2 + querystring: 0.2.0 + checksum: 537f785b16f873fdd2b63ccb7a61463b8e41370fdba95385b0102f3ed7b953c300d95b8755ec3b65f3e406372d47d16c3c989e196b25b70f42190da1fc36c56f + languageName: node + linkType: hard + +"use@npm:^3.1.0": + version: 3.1.1 + resolution: "use@npm:3.1.1" + checksum: 8dd3bdeeda53864c779e0fa8d799064739708f80b45d06fa48a1a6ba192dc3f9e3266d4556f223cd718d27aedfd957922152e7463c00ac46e185f8331353fb6f + languageName: node + linkType: hard + +"util-deprecate@npm:^1.0.1, util-deprecate@npm:~1.0.1": + version: 1.0.2 + resolution: "util-deprecate@npm:1.0.2" + checksum: 73c2b1cf0210ccac300645384d8443cabbd93194117b2dc1b3bae8d8279ad39aedac857e020c4ea505e96a1045059c7359db3df6a9df0be6b8584166c9d61dc9 + languageName: node + linkType: hard + +"util-promisify@npm:^2.1.0": + version: 2.1.0 + resolution: "util-promisify@npm:2.1.0" + dependencies: + object.getownpropertydescriptors: ^2.0.3 + checksum: 8d8c1b511901c64386b82424e6539b8be4c9181f3dfee6a98b5da6dc4b46e9c8dc90eea762043df8d15f38d7fce976e3fcfa98f3b8084f09217a27eae5f5ebb2 + languageName: node + linkType: hard + +"util.promisify@npm:1.0.0, util.promisify@npm:^1.0.0, util.promisify@npm:~1.0.0": + version: 1.0.0 + resolution: "util.promisify@npm:1.0.0" + dependencies: + define-properties: ^1.1.2 + object.getownpropertydescriptors: ^2.0.3 + checksum: 0dffbe1af61c9c034b5e7b411461e46c17c788d855fb02bcbf96cd0f603c086eb83160a3c878c4d69bede9a42118a7ce2b3cc05ed5a235e1c1c04c93bd5608e7 + languageName: node + linkType: hard + +"util@npm:0.10.3": + version: 0.10.3 + resolution: "util@npm:0.10.3" + dependencies: + inherits: 2.0.1 + checksum: 05c1a09f3af90250365386331b3986c0753af1900f20279f9302409b27e9d9d3c03a9cf4efba48aae859d04348ebfe56d68f89688113f61171da9c4fbe6baaca + languageName: node + linkType: hard + +"util@npm:^0.11.0": + version: 0.11.1 + resolution: "util@npm:0.11.1" + dependencies: + inherits: 2.0.3 + checksum: f05afc3d9a284eff28017d8bd474d56fbd27e7a5ad81f44720341b02ae5554ac9c06d0d08034aaf537d56116624232123054e58ec3873133144bda3b521de9ef + languageName: node + linkType: hard + +"utila@npm:^0.4.0, utila@npm:~0.4": + version: 0.4.0 + resolution: "utila@npm:0.4.0" + checksum: 6799b0a5666ac26fb547068e6967e51b534e290174b10ae26e500c216197b0faed9be8a12108bc408ce475ce1002c866aac2d1d4e1453dc72b441d8900f2063a + languageName: node + linkType: hard + +"utils-merge@npm:1.0.1": + version: 1.0.1 + resolution: "utils-merge@npm:1.0.1" + checksum: a457956ebc09efbda05da8bf213ab89140bb9dffa3c42b3315dd8fc3c45d67a1b802741f58b7bba4872113201fc275fc86470289d8bd32b74297b5e5b5980705 + languageName: node + linkType: hard + +"uuid@npm:^3.0.1, uuid@npm:^3.1.0, uuid@npm:^3.3.2, uuid@npm:^3.4.0": + version: 3.4.0 + resolution: "uuid@npm:3.4.0" + bin: + uuid: ./bin/uuid + checksum: 1ce3f37e214d6d0dc94a6a9663a0365013ace66bc3fd5b203e6f5d2eeb978aaee1192367222386345d30b4c6a447928c501121aa84c637724bf105ef57284949 + languageName: node + linkType: hard + +"uuid@npm:^7.0.3": + version: 7.0.3 + resolution: "uuid@npm:7.0.3" + bin: + uuid: dist/bin/uuid + checksum: a56be8a5bbf2bae755d749d0693637274935b5ae250dfaaaf79241391cf1a7c142a202492196363ec62ec51a476e5e3fc4de2944d854abf2e9b35a33e0e31d4c + languageName: node + linkType: hard + +"uuid@npm:^8.0.0, uuid@npm:^8.2.0": + version: 8.3.0 + resolution: "uuid@npm:8.3.0" + bin: + uuid: dist/bin/uuid + checksum: a2bdb8a3eb80a53506e9657e7e1f70d7600562bf43fa010a645fd1deb7de1686df61c496c6f9826bac4be8db4d1ac1b976dd6fdf3bd083207eec1674507936fb + languageName: node + linkType: hard + +"v8-compile-cache@npm:^2.0.3": + version: 2.1.1 + resolution: "v8-compile-cache@npm:2.1.1" + checksum: 1290922fe1501a732155206f2d516f91bdfd7acf318542ffe2813ff06465cf49051fae7e1a40f3e0a56cf78b41f799473f6e389fec0534e4ecc62eb4105cf22f + languageName: node + linkType: hard + +"v8-to-istanbul@npm:^4.1.3": + version: 4.1.4 + resolution: "v8-to-istanbul@npm:4.1.4" + dependencies: + "@types/istanbul-lib-coverage": ^2.0.1 + convert-source-map: ^1.6.0 + source-map: ^0.7.3 + checksum: 9d6c0cd729340d3d19e2d5d59f5b5f1e63a2e0828a209d61d42992eb66e797629ed1a845833166b3ea9a8f84465244d7ab2cc955677b686be0f533402217dedd + languageName: node + linkType: hard + +"valid-url@npm:1.0.9": + version: 1.0.9 + resolution: "valid-url@npm:1.0.9" + checksum: 988964543cb297c1d953dbf665de06cc8c46791eaf5ef3bb32b03b103c53dced7dfaa8f19863255126cbd75049a67f19415d9e647b603b759922284ccc48e776 + languageName: node + linkType: hard + +"validate-npm-package-license@npm:^3.0.1, validate-npm-package-license@npm:^3.0.3": + version: 3.0.4 + resolution: "validate-npm-package-license@npm:3.0.4" + dependencies: + spdx-correct: ^3.0.0 + spdx-expression-parse: ^3.0.0 + checksum: 940899bd4eacfa012ceecb10a5814ba0e8103da5243aa74d0d62f1f8a405efcd23e034fb7193e2d05b392870c53aabcb1f66439b062075cdcb28bc5d562a8ff6 + languageName: node + linkType: hard + +"validate-npm-package-name@npm:^3.0.0": + version: 3.0.0 + resolution: "validate-npm-package-name@npm:3.0.0" + dependencies: + builtins: ^1.0.3 + checksum: 3c5a5b154a32d141a8fff660e4cdfcbd359bfafb1fc544772d50fb04377bea2eb7073bd49d914309c21c1fd19af68849e8022791573b88fc6413560a8dcf5016 + languageName: node + linkType: hard + +"value-equal@npm:^1.0.1": + version: 1.0.1 + resolution: "value-equal@npm:1.0.1" + checksum: ae8cc7bbb2bebcaf78ecbf7669944cfc6e23f50361d0d97dc903abbfb9ce5111ce1dc5cb2575646db69636a84b2a3b224e2191088edc3442fb4669c2365af874 + languageName: node + linkType: hard + +"vary@npm:^1, vary@npm:~1.1.2": + version: 1.1.2 + resolution: "vary@npm:1.1.2" + checksum: 591f059f727ac1ba0d97cb7767f8583a03fcbb07db7be2b7dce838ede520ec0e958a41cb19077054769077fdc49a9b9a2dc391c83426bfee89c054b8cc7404bf + languageName: node + linkType: hard + +"vendors@npm:^1.0.0": + version: 1.0.4 + resolution: "vendors@npm:1.0.4" + checksum: f49cf918e866901eb36e0dc85970fde99929a3f298e1c55b4e20517eda18e16fb57da3eee72801e7d371f9b33684492879ed5ceebae4d1bed48c6e1a62ef6e58 + languageName: node + linkType: hard + +"verror@npm:1.10.0": + version: 1.10.0 + resolution: "verror@npm:1.10.0" + dependencies: + assert-plus: ^1.0.0 + core-util-is: 1.0.2 + extsprintf: ^1.2.0 + checksum: 38ea80312cb42e5e8b4ac562d108d675b2354a79f8f125d363671f692657461b9181fd26f4fc9acdca433f8afee099cb78058806e1303e6b15b8fb022affba94 + languageName: node + linkType: hard + +"vfile-location@npm:^3.0.0": + version: 3.0.1 + resolution: "vfile-location@npm:3.0.1" + checksum: 2a9165f1c69a99f6ac4e05c66fc547fb2ab3c56a79f6bb02592bda756f423b905f104e66591bd08b2c5c957dc55d7a94335fa95d337385ba99aad160136ff904 + languageName: node + linkType: hard + +"vfile-message@npm:^2.0.0": + version: 2.0.4 + resolution: "vfile-message@npm:2.0.4" + dependencies: + "@types/unist": ^2.0.0 + unist-util-stringify-position: ^2.0.0 + checksum: a88f41883cb9b5adad1066803eabe6c7ce5f877dd5e5dd61cc4273ee53a2d0d62100b105778cd474ef9b7b32c06abe17f176032d24b7028d5cee8d623cc31200 + languageName: node + linkType: hard + +"vfile@npm:^4.0.0": + version: 4.2.0 + resolution: "vfile@npm:4.2.0" + dependencies: + "@types/unist": ^2.0.0 + is-buffer: ^2.0.0 + replace-ext: 1.0.0 + unist-util-stringify-position: ^2.0.0 + vfile-message: ^2.0.0 + checksum: 281f8bca81ef8600814ed5d6610cf6c10a412e3e3ffdf20ccd4d924f41d91799c52129ababff85efa96d4ee219b04b8bdd205767f62e7bc80619c36bdd5993f6 + languageName: node + linkType: hard + +"vm-browserify@npm:^1.0.1": + version: 1.1.2 + resolution: "vm-browserify@npm:1.1.2" + checksum: fc571a62d2cf797ae8773ebb3cb0d2bea50ed02059e128dd9087975929fce4c80a6485ce1aaf7d44ef69db99dfdcde50b6be5d5eb73b296660d761c32fb544fe + languageName: node + linkType: hard + +"vue-template-compiler@npm:^2.6.11": + version: 2.6.11 + resolution: "vue-template-compiler@npm:2.6.11" + dependencies: + de-indent: ^1.0.2 + he: ^1.1.0 + checksum: 36834e209793d8fac90603a4362eb9808ef313edb8a13c59a62d2918cf468ea0c6a2a08130753156eb7cf6d9b8d7edf05dcc9199777c0dbfa9b22c02ba1e3380 + languageName: node + linkType: hard + +"w3c-hr-time@npm:^1.0.1, w3c-hr-time@npm:^1.0.2": + version: 1.0.2 + resolution: "w3c-hr-time@npm:1.0.2" + dependencies: + browser-process-hrtime: ^1.0.0 + checksum: bb021b4c4b15acc26a7b0de5b6f4c02d829b458345af162713685e84698380fabffc7856f4a85ba368f23c8419d3a7a726b628b993ffeb0d5a83d0d57d4cbf72 + languageName: node + linkType: hard + +"w3c-xmlserializer@npm:^1.1.2": + version: 1.1.2 + resolution: "w3c-xmlserializer@npm:1.1.2" + dependencies: + domexception: ^1.0.1 + webidl-conversions: ^4.0.2 + xml-name-validator: ^3.0.0 + checksum: 9a7b5c7e32d4fa3d272a38e62595ff43169a9aa1b000d27a6b2613df759071034a8e870f7e6ebae8d0024d3056eeff1cad0fdab118ad4430c3d1cac3384dcd29 + languageName: node + linkType: hard + +"w3c-xmlserializer@npm:^2.0.0": + version: 2.0.0 + resolution: "w3c-xmlserializer@npm:2.0.0" + dependencies: + xml-name-validator: ^3.0.0 + checksum: 2327c8a6c7302ed4b685125c193f4b4b859ee12cd6e1938407a02dda9cfcfff7f0c103de387b268444c4b61d7892d5260b5c684eb7519886fb3a07798bd565ba + languageName: node + linkType: hard + +"wait-file@npm:^1.0.5": + version: 1.0.5 + resolution: "wait-file@npm:1.0.5" + dependencies: + "@hapi/joi": ^15.1.0 + fs-extra: ^8.1.0 + rx: ^4.1.0 + checksum: e58db3db59373c75f955dfb3b4398065aa2689336a300af1aeee7c1cb19eb31f721564033fa29f8badfcaa1647d0b5f55eb7b488f4746c77c4e9ca1f3d6cad86 + languageName: node + linkType: hard + +"walker@npm:^1.0.7, walker@npm:~1.0.5": + version: 1.0.7 + resolution: "walker@npm:1.0.7" + dependencies: + makeerror: 1.0.x + checksum: c014f264c473fc4464ba8f59eb9f7ffa1c0cf2c83b65353de28a6012d8dd29e974bf2b0fbd5c71231f56762a3ea0d970b635f7d6f6d670ff83f426741ce6a4da + languageName: node + linkType: hard + +"watchpack-chokidar2@npm:^2.0.0": + version: 2.0.0 + resolution: "watchpack-chokidar2@npm:2.0.0" + dependencies: + chokidar: ^2.1.8 + checksum: 1ef78773db2e712d2ad8b2b36f448df9e8f891c003414671aa5fd32fab5649784c20fa82a2cdb6973145a5c31b817e4e181de2812a484d27f25af2fb3146c379 + languageName: node + linkType: hard + +"watchpack@npm:^1.6.0, watchpack@npm:^1.7.4": + version: 1.7.4 + resolution: "watchpack@npm:1.7.4" + dependencies: + chokidar: ^3.4.1 + graceful-fs: ^4.1.2 + neo-async: ^2.5.0 + watchpack-chokidar2: ^2.0.0 + dependenciesMeta: + chokidar: + optional: true + watchpack-chokidar2: + optional: true + checksum: 61876d6e60ddb1e9b0a6143c65a4453543bb1a27638254635d179d4681f15af200de9a61c1a3faec220a29e41ca37381e604345ffa9d48c064a29cff4cb25732 + languageName: node + linkType: hard + +"wbuf@npm:^1.1.0, wbuf@npm:^1.7.3": + version: 1.7.3 + resolution: "wbuf@npm:1.7.3" + dependencies: + minimalistic-assert: ^1.0.0 + checksum: 5916a49cb25fc8c70e4e7eb2d01955061132687a79879292fbdee632952f368c12bc5a641d0404794dbc0e3563f8b6e74dda04467b3e96be8bcd0b919bd47a8c + languageName: node + linkType: hard + +"wcwidth@npm:^1.0.0": + version: 1.0.1 + resolution: "wcwidth@npm:1.0.1" + dependencies: + defaults: ^1.0.3 + checksum: abf8ba432dd19a95af63895de6af932900a9451e175745551aeca0fd2d46604bc72ff80aa83adc3f67fb8389191329340e2864aefcf20655ffe91f0dbee5d953 + languageName: node + linkType: hard + +"web-namespaces@npm:^1.0.0, web-namespaces@npm:^1.1.2": + version: 1.1.4 + resolution: "web-namespaces@npm:1.1.4" + checksum: 0899d2a4a088b15761b6234ff6610f9598112d58f27adad86f7881ad51631317b47033bfa84cdeb62a37c8b6c3ece618f4ff720fd42c99f4907a1d9390c9dae0 + languageName: node + linkType: hard + +"webidl-conversions@npm:^4.0.2": + version: 4.0.2 + resolution: "webidl-conversions@npm:4.0.2" + checksum: 75c2ada4262cda41410ec898178f4f2a31419a905415a98a0bd1b93441ce4a2b942bae2d0ac6d637b749b9d3b309be5a49dbc3b06aae9d9e65280554268a2c94 + languageName: node + linkType: hard + +"webidl-conversions@npm:^5.0.0": + version: 5.0.0 + resolution: "webidl-conversions@npm:5.0.0" + checksum: af4e465fb3111f45930e48f8e4206d6ae41675f03f35d6dfa10b2d7186430236ef1b406d8c3e57f75c8a60e424ca715c9fe6b6b2316a1b999ecffe8280414dff + languageName: node + linkType: hard + +"webidl-conversions@npm:^6.1.0": + version: 6.1.0 + resolution: "webidl-conversions@npm:6.1.0" + checksum: 0ded175044ec0a06f41014b9ffc36a67eb22bff53b9cb43fa1e9d05eaded43a100d993a8179d3a9f0f820ff1e5b812107a97c8643b600a6ab5bef1e11fcae66b + languageName: node + linkType: hard + +"webpack-bundle-analyzer@npm:^3.6.1": + version: 3.8.0 + resolution: "webpack-bundle-analyzer@npm:3.8.0" + dependencies: + acorn: ^7.1.1 + acorn-walk: ^7.1.1 + bfj: ^6.1.1 + chalk: ^2.4.1 + commander: ^2.18.0 + ejs: ^2.6.1 + express: ^4.16.3 + filesize: ^3.6.1 + gzip-size: ^5.0.0 + lodash: ^4.17.15 + mkdirp: ^0.5.1 + opener: ^1.5.1 + ws: ^6.0.0 + bin: + webpack-bundle-analyzer: lib/bin/analyzer.js + checksum: 9ebe98aa5e4b81fb38e079c93c4fd3ae0117872c146cb4b8fba173d51df77d01e11f630197e249bcd58fc4d2cec0579b0366e9782facb612686861c9f2103a9e + languageName: node + linkType: hard + +"webpack-dev-middleware@npm:^3.7.2": + version: 3.7.2 + resolution: "webpack-dev-middleware@npm:3.7.2" + dependencies: + memory-fs: ^0.4.1 + mime: ^2.4.4 + mkdirp: ^0.5.1 + range-parser: ^1.2.1 + webpack-log: ^2.0.0 + peerDependencies: + webpack: ^4.0.0 + checksum: 88480e7d7f8116f2a992a4f4b3ca5f2ce93e11edbedd029858f43a789109fcd001bad9fcf34df7bb0e8cb33d342205a789abafd6f6315e9fc54bc436e6caa78f + languageName: node + linkType: hard + +"webpack-dev-server@npm:3.10.3": + version: 3.10.3 + resolution: "webpack-dev-server@npm:3.10.3" + dependencies: + ansi-html: 0.0.7 + bonjour: ^3.5.0 + chokidar: ^2.1.8 + compression: ^1.7.4 + connect-history-api-fallback: ^1.6.0 + debug: ^4.1.1 + del: ^4.1.1 + express: ^4.17.1 + html-entities: ^1.2.1 + http-proxy-middleware: 0.19.1 + import-local: ^2.0.0 + internal-ip: ^4.3.0 + ip: ^1.1.5 + is-absolute-url: ^3.0.3 + killable: ^1.0.1 + loglevel: ^1.6.6 + opn: ^5.5.0 + p-retry: ^3.0.1 + portfinder: ^1.0.25 + schema-utils: ^1.0.0 + selfsigned: ^1.10.7 + semver: ^6.3.0 + serve-index: ^1.9.1 + sockjs: 0.3.19 + sockjs-client: 1.4.0 + spdy: ^4.0.1 + strip-ansi: ^3.0.1 + supports-color: ^6.1.0 + url: ^0.11.0 + webpack-dev-middleware: ^3.7.2 + webpack-log: ^2.0.0 + ws: ^6.2.1 + yargs: 12.0.5 + peerDependencies: + webpack: ^4.0.0 || ^5.0.0 + webpack-cli: "*" + peerDependenciesMeta: + webpack-cli: + optional: true + bin: + webpack-dev-server: bin/webpack-dev-server.js + checksum: 99af2c4746e68dce739a9a4375f99c66915d976243bb473757ea9d8486121be2b7266b810048ee07796602b4640e2cd85494498444bc6e6daf4bc61d7ea7ae8a + languageName: node + linkType: hard + +"webpack-dev-server@npm:^3.11.0": + version: 3.11.0 + resolution: "webpack-dev-server@npm:3.11.0" + dependencies: + ansi-html: 0.0.7 + bonjour: ^3.5.0 + chokidar: ^2.1.8 + compression: ^1.7.4 + connect-history-api-fallback: ^1.6.0 + debug: ^4.1.1 + del: ^4.1.1 + express: ^4.17.1 + html-entities: ^1.3.1 + http-proxy-middleware: 0.19.1 + import-local: ^2.0.0 + internal-ip: ^4.3.0 + ip: ^1.1.5 + is-absolute-url: ^3.0.3 + killable: ^1.0.1 + loglevel: ^1.6.8 + opn: ^5.5.0 + p-retry: ^3.0.1 + portfinder: ^1.0.26 + schema-utils: ^1.0.0 + selfsigned: ^1.10.7 + semver: ^6.3.0 + serve-index: ^1.9.1 + sockjs: 0.3.20 + sockjs-client: 1.4.0 + spdy: ^4.0.2 + strip-ansi: ^3.0.1 + supports-color: ^6.1.0 + url: ^0.11.0 + webpack-dev-middleware: ^3.7.2 + webpack-log: ^2.0.0 + ws: ^6.2.1 + yargs: ^13.3.2 + peerDependencies: + webpack: ^4.0.0 || ^5.0.0 + webpack-cli: "*" + peerDependenciesMeta: + webpack-cli: + optional: true + bin: + webpack-dev-server: bin/webpack-dev-server.js + checksum: 1d3445745634cee36df9a01edcb8ed56eadd647a0d72751e8646c038c4d76f40194b841f97ed819971988f85c5b531c571cc776288011ffafd201c9f3ccd444d + languageName: node + linkType: hard + +"webpack-log@npm:^2.0.0": + version: 2.0.0 + resolution: "webpack-log@npm:2.0.0" + dependencies: + ansi-colors: ^3.0.0 + uuid: ^3.3.2 + checksum: 250db04c41e278aa15a4f452808ef32ca8eca0f7df9d4c7c28b3d94e45d2649fbeb90a0adbee1c675447209b6a35136e13c1fb31476c3ca81c972bb41f0535bb + languageName: node + linkType: hard + +"webpack-manifest-plugin@npm:2.2.0": + version: 2.2.0 + resolution: "webpack-manifest-plugin@npm:2.2.0" + dependencies: + fs-extra: ^7.0.0 + lodash: ">=3.5 <5" + object.entries: ^1.1.0 + tapable: ^1.0.0 + peerDependencies: + webpack: 2 || 3 || 4 + checksum: 00f084e2c2883fa68996758446784e366c76fb32a4cffa5131824dc7c2f8ab8b8c24e8cb8c3bd0776f2ef0471fddc9c37ec7712add925341885ee0cdbc48c4b8 + languageName: node + linkType: hard + +"webpack-merge@npm:^4.2.2": + version: 4.2.2 + resolution: "webpack-merge@npm:4.2.2" + dependencies: + lodash: ^4.17.15 + checksum: 038c6d8ba45f538ce8e4505a8a3d90fbd2e554ba2065bacffe4d7cff0229cce9f0d983bf56061f8e0fef86c711da7232f88681aab285c06673b3916b1040cd9e + languageName: node + linkType: hard + +"webpack-sources@npm:^1.1.0, webpack-sources@npm:^1.4.0, webpack-sources@npm:^1.4.1, webpack-sources@npm:^1.4.3": + version: 1.4.3 + resolution: "webpack-sources@npm:1.4.3" + dependencies: + source-list-map: ^2.0.0 + source-map: ~0.6.1 + checksum: 2a753b36adf0ddd4dadf6ff375824108a918d180c4ea5383b377526f543e6db0c1ecd40b4154bae8e94c4b209b7814d764879691a468fe230ef9eb32b27fdde4 + languageName: node + linkType: hard + +"webpack@npm:4.42.0": + version: 4.42.0 + resolution: "webpack@npm:4.42.0" + dependencies: + "@webassemblyjs/ast": 1.8.5 + "@webassemblyjs/helper-module-context": 1.8.5 + "@webassemblyjs/wasm-edit": 1.8.5 + "@webassemblyjs/wasm-parser": 1.8.5 + acorn: ^6.2.1 + ajv: ^6.10.2 + ajv-keywords: ^3.4.1 + chrome-trace-event: ^1.0.2 + enhanced-resolve: ^4.1.0 + eslint-scope: ^4.0.3 + json-parse-better-errors: ^1.0.2 + loader-runner: ^2.4.0 + loader-utils: ^1.2.3 + memory-fs: ^0.4.1 + micromatch: ^3.1.10 + mkdirp: ^0.5.1 + neo-async: ^2.6.1 + node-libs-browser: ^2.2.1 + schema-utils: ^1.0.0 + tapable: ^1.1.3 + terser-webpack-plugin: ^1.4.3 + watchpack: ^1.6.0 + webpack-sources: ^1.4.1 + bin: + webpack: bin/webpack.js + checksum: fd8b6560ce9346f306e010cba47561ce234fd307984ef708a348fd3278d5da10c61ac927e817c53ecb09375b6436583644e0aade0bf581e7dde4b62aca90b22c + languageName: node + linkType: hard + +"webpack@npm:^4.41.2": + version: 4.44.1 + resolution: "webpack@npm:4.44.1" + dependencies: + "@webassemblyjs/ast": 1.9.0 + "@webassemblyjs/helper-module-context": 1.9.0 + "@webassemblyjs/wasm-edit": 1.9.0 + "@webassemblyjs/wasm-parser": 1.9.0 + acorn: ^6.4.1 + ajv: ^6.10.2 + ajv-keywords: ^3.4.1 + chrome-trace-event: ^1.0.2 + enhanced-resolve: ^4.3.0 + eslint-scope: ^4.0.3 + json-parse-better-errors: ^1.0.2 + loader-runner: ^2.4.0 + loader-utils: ^1.2.3 + memory-fs: ^0.4.1 + micromatch: ^3.1.10 + mkdirp: ^0.5.3 + neo-async: ^2.6.1 + node-libs-browser: ^2.2.1 + schema-utils: ^1.0.0 + tapable: ^1.1.3 + terser-webpack-plugin: ^1.4.3 + watchpack: ^1.7.4 + webpack-sources: ^1.4.1 + peerDependencies: + webpack-cli: "*" + webpack-command: "*" + peerDependenciesMeta: + webpack-cli: + optional: true + webpack-command: + optional: true + bin: + webpack: bin/webpack.js + checksum: d4d140010bdf1fe4a5ef5435733e4b4fb71081cafd5e995adca0ca6259e271c7b51af909477e03bbbeb35487bd399a672bb0bc4a4726baebac059444b489b412 + languageName: node + linkType: hard + +"webpackbar@npm:^4.0.0": + version: 4.0.0 + resolution: "webpackbar@npm:4.0.0" + dependencies: + ansi-escapes: ^4.2.1 + chalk: ^2.4.2 + consola: ^2.10.0 + figures: ^3.0.0 + pretty-time: ^1.1.0 + std-env: ^2.2.1 + text-table: ^0.2.0 + wrap-ansi: ^6.0.0 + peerDependencies: + webpack: ^3.0.0 || ^4.0.0 + checksum: 2a5944c7a1e48d5d0fc5d9c555ef5c3c2e5349193e4bc4d607a178cb8d9dab3826bf87be165228f871e929af6798cb88e44c378645703567c0742c0e9f7b5b27 + languageName: node + linkType: hard + +"websocket-driver@npm:0.6.5": + version: 0.6.5 + resolution: "websocket-driver@npm:0.6.5" + dependencies: + websocket-extensions: ">=0.1.1" + checksum: 1169a0ecccf514a98abc54a1b9c9aa56ef662e9169336cc4bc684c4f95a52b93f499d52d2b2f1eb7ccae79dcc41d6cfe8bf9b4cf05f4c69756d7c75fa53d312f + languageName: node + linkType: hard + +"websocket-driver@npm:>=0.5.1": + version: 0.7.4 + resolution: "websocket-driver@npm:0.7.4" + dependencies: + http-parser-js: ">=0.5.1" + safe-buffer: ">=5.1.0" + websocket-extensions: ">=0.1.1" + checksum: 9627c9fc5b02bc3ac48e14f2819aa62d005dff429b996ae3416c58150eb4373ecef301c68875bc16d056e8701dc91306f3b6b00536ae551af3828f114ab66b41 + languageName: node + linkType: hard + +"websocket-extensions@npm:>=0.1.1": + version: 0.1.4 + resolution: "websocket-extensions@npm:0.1.4" + checksum: bbafc0ffa1c6f54606aac88ce366c6a0d72c7827291f40c15a1c325f9f4abe7f7176ab844dd43eab4f07276d9e748dd241d671874c4a0df5cbb0fbed133908dc + languageName: node + linkType: hard + +"websocket@npm:1.0.31": + version: 1.0.31 + resolution: "websocket@npm:1.0.31" + dependencies: + debug: ^2.2.0 + es5-ext: ^0.10.50 + nan: ^2.14.0 + node-gyp: latest + typedarray-to-buffer: ^3.1.5 + yaeti: ^0.0.6 + checksum: 48eb77e9c86cf091f57e01cd95513950aa207ddf4e454a0de17b0151a2a63d0073edbc472733a2c4059d68f4fc55a057b5dae89b2bc94a3cd3e152782e195456 + languageName: node + linkType: hard + +"whatwg-encoding@npm:^1.0.1, whatwg-encoding@npm:^1.0.3, whatwg-encoding@npm:^1.0.5": + version: 1.0.5 + resolution: "whatwg-encoding@npm:1.0.5" + dependencies: + iconv-lite: 0.4.24 + checksum: 44e4276ad2c770d1eb8c5a49294b863c581ef4bc78a10ac6a73a7eba00b377bc53ae0501d7ffce29a2c051b6af5ebbbd135f1da7d8eb98097af2cf12f7b2c984 + languageName: node + linkType: hard + +"whatwg-fetch@npm:>=0.10.0, whatwg-fetch@npm:^3.0.0": + version: 3.4.0 + resolution: "whatwg-fetch@npm:3.4.0" + checksum: 87205a81198481e96d969e732ce1e0518e25d8049c4fe2796f1446780d6290e6ca9a482370fd81177845661466446af6fb62400f09ca65189feb2a7bc203be09 + languageName: node + linkType: hard + +"whatwg-mimetype@npm:^2.1.0, whatwg-mimetype@npm:^2.2.0, whatwg-mimetype@npm:^2.3.0": + version: 2.3.0 + resolution: "whatwg-mimetype@npm:2.3.0" + checksum: 926e6ef8c7e53d158e501ce5e3c0e491d343c3c97e71b3d30451ffe4b1d6f81844c336b46a446a0b4f3fe4f327d76e3451d53ee8055344a0f5f2f35b84518011 + languageName: node + linkType: hard + +"whatwg-url@npm:^6.4.1": + version: 6.5.0 + resolution: "whatwg-url@npm:6.5.0" + dependencies: + lodash.sortby: ^4.7.0 + tr46: ^1.0.1 + webidl-conversions: ^4.0.2 + checksum: 454a06402d3ccec0057b8b2d00231153a38bb985749268903111166175e599254175461515b351cd3e6c7e1a9674c35adbcf708304cd38e6aae5b81c6ac9e095 + languageName: node + linkType: hard + +"whatwg-url@npm:^7.0.0": + version: 7.1.0 + resolution: "whatwg-url@npm:7.1.0" + dependencies: + lodash.sortby: ^4.7.0 + tr46: ^1.0.1 + webidl-conversions: ^4.0.2 + checksum: ccbf75d3dfa6d97a7705acc250a43041dfcfa0c9695a5148cac844c39a29657d7c07b3c4533ebabb2401fedcd5eb98626256add2760403b0889c9983ea1a76aa + languageName: node + linkType: hard + +"whatwg-url@npm:^8.0.0": + version: 8.1.0 + resolution: "whatwg-url@npm:8.1.0" + dependencies: + lodash.sortby: ^4.7.0 + tr46: ^2.0.2 + webidl-conversions: ^5.0.0 + checksum: 1cc612b2733d71bd9db47537836440aac8ce016e57d33d4f1e5f5cfb6952fccca9085507812f4374920a6835f09125ee359e41ce550b7ca83b9f560a544c14b8 + languageName: node + linkType: hard + +"which-module@npm:^2.0.0": + version: 2.0.0 + resolution: "which-module@npm:2.0.0" + checksum: 3d2107ab18c3c2a0ffa4f1a2a0a8862d0bb3fd5c72b10df9cbd75a15b496533bf4c4dc6fa65cefba6fdb8af7935ffb939ef4c8f2eb7835b03d1b93680e9101e9 + languageName: node + linkType: hard + +"which-pm-runs@npm:^1.0.0": + version: 1.0.0 + resolution: "which-pm-runs@npm:1.0.0" + checksum: 0bb79a782e98955afec8f35a3ae95c4711fdd3d0743772ee98211da67c2421fdd4c92c95c93532cc0b4dcc085d8e27f3ad2f8a9173cb632692379bd3d2818821 + languageName: node + linkType: hard + +"which@npm:^1.2.9, which@npm:^1.3.0, which@npm:^1.3.1": + version: 1.3.1 + resolution: "which@npm:1.3.1" + dependencies: + isexe: ^2.0.0 + bin: + which: ./bin/which + checksum: 298d95f9c185c4da22c1bfb1fdfa37c2ba56df8a6b98706ab361bf31a7d3a4845afaecfc48d4de7a259048842b5f2977f51b56f5c06c1f6a83dcf5a9e3de634a + languageName: node + linkType: hard + +"which@npm:^2.0.1, which@npm:^2.0.2": + version: 2.0.2 + resolution: "which@npm:2.0.2" + dependencies: + isexe: ^2.0.0 + bin: + node-which: ./bin/node-which + checksum: ea9b1db1266b08f7880717cf70dd9012dd523e5a317f10fbe4d5e8c1a761c5fd237f88642f2ba33b23f973ff4002c9b26648d63084ab208d8ecef36497315f6e + languageName: node + linkType: hard + +"wide-align@npm:^1.1.0": + version: 1.1.3 + resolution: "wide-align@npm:1.1.3" + dependencies: + string-width: ^1.0.2 || 2 + checksum: 4f850f84da84b7471d7b92f55e381e7ba286210470fe77a61e02464ef66d10e96057a0d137bc013fbbedb7363a26e79c0e8b21d99bb572467d3fee0465b8fd27 + languageName: node + linkType: hard + +"widest-line@npm:^3.1.0": + version: 3.1.0 + resolution: "widest-line@npm:3.1.0" + dependencies: + string-width: ^4.0.0 + checksum: 729c30582e49bdcb1372216eedfd71d1640a1344a4b4e970bc9f33d575b56b130f530b383fbab2cf2bcffb76ea4357e6a66939778d8de91ca66037651d94e01a + languageName: node + linkType: hard + +"windows-release@npm:^3.1.0": + version: 3.3.1 + resolution: "windows-release@npm:3.3.1" + dependencies: + execa: ^1.0.0 + checksum: 209dd36f044399c4d1c52b8352ba924d2d79da51959a1e5aa34a22b67e869a513df430f618cb897002c4be014e180f57a5c3d160208605352053f54887bffb2d + languageName: node + linkType: hard + +"word-wrap@npm:^1.2.3, word-wrap@npm:~1.2.3": + version: 1.2.3 + resolution: "word-wrap@npm:1.2.3" + checksum: 6526abd75d4409c76d1989cf2fbf6080b903db29824be3d17d0a0b8f6221486c76a021174eda2616cf311199787983c34bae3c5e7b51d2ad7476f2066cddb75a + languageName: node + linkType: hard + +"wordwrap@npm:^1.0.0": + version: 1.0.0 + resolution: "wordwrap@npm:1.0.0" + checksum: b4f3f8104a727d1b08e77f43f3692977146f13074392747a3d9cfd631d0fc3ff1c0c034d44fcd7a22183c6505d2fc305421e3512671f8a56f903055671ace4ce + languageName: node + linkType: hard + +"workbox-background-sync@npm:^4.3.1": + version: 4.3.1 + resolution: "workbox-background-sync@npm:4.3.1" + dependencies: + workbox-core: ^4.3.1 + checksum: 7c87660653e882b407e8e336ad13efab0fa7d8b4ee47e4ba5f06b844bee43ce1e9418dcc07f7b22043dc610e2e77c4a0e2ca0e29332acf4606b3a33cd20eaddd + languageName: node + linkType: hard + +"workbox-broadcast-update@npm:^4.3.1": + version: 4.3.1 + resolution: "workbox-broadcast-update@npm:4.3.1" + dependencies: + workbox-core: ^4.3.1 + checksum: f1e1c3fe64a5fce04e3119c955710e7f7f6fd03d80b7fb0128b8b8ddcfdd149c73bc6d57caddcac381f44c9cdd68173c42f0086eca9ba556d076035d932c79ed + languageName: node + linkType: hard + +"workbox-build@npm:^4.3.1": + version: 4.3.1 + resolution: "workbox-build@npm:4.3.1" + dependencies: + "@babel/runtime": ^7.3.4 + "@hapi/joi": ^15.0.0 + common-tags: ^1.8.0 + fs-extra: ^4.0.2 + glob: ^7.1.3 + lodash.template: ^4.4.0 + pretty-bytes: ^5.1.0 + stringify-object: ^3.3.0 + strip-comments: ^1.0.2 + workbox-background-sync: ^4.3.1 + workbox-broadcast-update: ^4.3.1 + workbox-cacheable-response: ^4.3.1 + workbox-core: ^4.3.1 + workbox-expiration: ^4.3.1 + workbox-google-analytics: ^4.3.1 + workbox-navigation-preload: ^4.3.1 + workbox-precaching: ^4.3.1 + workbox-range-requests: ^4.3.1 + workbox-routing: ^4.3.1 + workbox-strategies: ^4.3.1 + workbox-streams: ^4.3.1 + workbox-sw: ^4.3.1 + workbox-window: ^4.3.1 + checksum: 1e4324c80acfe288f3a2923912fdee72bf2002c81181eb49c1e8c8d49569cfa761ff3ff98e30dc120ab30d12a85390247cfc6f2b7efd84b793b6b4e441bd05d9 + languageName: node + linkType: hard + +"workbox-cacheable-response@npm:^4.3.1": + version: 4.3.1 + resolution: "workbox-cacheable-response@npm:4.3.1" + dependencies: + workbox-core: ^4.3.1 + checksum: b7fff34cc313fa1f38be938729c9ac1a2afbbdf59a7e5f3b81ca2505d54daae5fa95cdc7a10560470efea4913c67f3846bcb5f6b4e7182c2b174e29654107f64 + languageName: node + linkType: hard + +"workbox-core@npm:^4.3.1": + version: 4.3.1 + resolution: "workbox-core@npm:4.3.1" + checksum: a217ef1f1b6313019e3e229e04ba4b3ba1399892efc22bf41c9ecac948ef7eb00cdc3a3bd26753d4e3da16e3e64ad18d8b3c1b4f9960215b86df5cb9fe27d31b + languageName: node + linkType: hard + +"workbox-expiration@npm:^4.3.1": + version: 4.3.1 + resolution: "workbox-expiration@npm:4.3.1" + dependencies: + workbox-core: ^4.3.1 + checksum: 6381413c37f9d55081fa9ff5cb0495c9295ba63122126d982f3cd17740c85e1f5c40a3294544f7553d197f62db442f5757802508c2ae8562c9fb7a2c1f352860 + languageName: node + linkType: hard + +"workbox-google-analytics@npm:^4.3.1": + version: 4.3.1 + resolution: "workbox-google-analytics@npm:4.3.1" + dependencies: + workbox-background-sync: ^4.3.1 + workbox-core: ^4.3.1 + workbox-routing: ^4.3.1 + workbox-strategies: ^4.3.1 + checksum: 73c3377b6e28066afad879a45d43399a8be7b2eb37e2b9839e846ba47dd8bbd7c3759b39f7ddb8a0d8d31b7c216a0142f523302918af5d2d4f27de6d5869e9bd + languageName: node + linkType: hard + +"workbox-navigation-preload@npm:^4.3.1": + version: 4.3.1 + resolution: "workbox-navigation-preload@npm:4.3.1" + dependencies: + workbox-core: ^4.3.1 + checksum: 49a6b372c2d25ad9c792456e4a2fc58401ca83596bd7d4e66f1f84f8027a8a1ebd7da5f677126566eb4a21068349a6ac4b99c2ea5eb49df1477c081fed7ea996 + languageName: node + linkType: hard + +"workbox-precaching@npm:^4.3.1": + version: 4.3.1 + resolution: "workbox-precaching@npm:4.3.1" + dependencies: + workbox-core: ^4.3.1 + checksum: d883319e5e6a1101a22376dc0c9c3dce42a24cac7c2fcd24f7c40a9a5cb50b0f12d6e8c68088423d7f2151225ef35c514e7540fd84b20d6520811e43f9d8d1d6 + languageName: node + linkType: hard + +"workbox-range-requests@npm:^4.3.1": + version: 4.3.1 + resolution: "workbox-range-requests@npm:4.3.1" + dependencies: + workbox-core: ^4.3.1 + checksum: 758c997b5a43c0a969d6e0774f6a36894906f11bc81f105a4c5a86bdb6ca224670c4aa344a0e820fc7ef020b1a9ac2f1e7639d2e9d1206ada7c945f38ad919dc + languageName: node + linkType: hard + +"workbox-routing@npm:^4.3.1": + version: 4.3.1 + resolution: "workbox-routing@npm:4.3.1" + dependencies: + workbox-core: ^4.3.1 + checksum: cda5e5a00e1184986858052bf6425247108ea335491b2c72b5b5e91d3d74264c75786ed95aef49a3af848b1af80748bdef356275a2896acf727e2da517bf6454 + languageName: node + linkType: hard + +"workbox-strategies@npm:^4.3.1": + version: 4.3.1 + resolution: "workbox-strategies@npm:4.3.1" + dependencies: + workbox-core: ^4.3.1 + checksum: f14178c47fe49ddd27eff12e6163d8d6acdd749b5478f4492239949e1ddcf4c3e6d32e5dce53a4b56c7c5304f0dce5faddd84759aa3ae2ab026be6b67900643c + languageName: node + linkType: hard + +"workbox-streams@npm:^4.3.1": + version: 4.3.1 + resolution: "workbox-streams@npm:4.3.1" + dependencies: + workbox-core: ^4.3.1 + checksum: e589f5aaa6ebb862de19967ae192a5b4b1cdafd4940eb28abc70e311963797a25e3df34887fa4ae21520f8b3d46a16a81b2ab0150e8550bcf55b7aff169e5de9 + languageName: node + linkType: hard + +"workbox-sw@npm:^4.3.1": + version: 4.3.1 + resolution: "workbox-sw@npm:4.3.1" + checksum: 11c0a16d6cbbbcfbd9086b4d22ffc6a5ff6dbd0680d2580458cba6e07cbb3643fea8c191c4312331925118a27628de6b5759642bb305d89b61f9a158aae3c238 + languageName: node + linkType: hard + +"workbox-webpack-plugin@npm:4.3.1": + version: 4.3.1 + resolution: "workbox-webpack-plugin@npm:4.3.1" + dependencies: + "@babel/runtime": ^7.0.0 + json-stable-stringify: ^1.0.1 + workbox-build: ^4.3.1 + peerDependencies: + webpack: ^2.0.0 || ^3.0.0 || ^4.0.0 + checksum: 0a2b5c15d0562cb3fff3ce87f0882e7e1d2aa4420d1a391143bcdc88f80254bcf9c5b760919c971bdb6b59f2e7efc7ff19c98869c25b6059829a0e9af6b05f00 + languageName: node + linkType: hard + +"workbox-window@npm:^4.3.1": + version: 4.3.1 + resolution: "workbox-window@npm:4.3.1" + dependencies: + workbox-core: ^4.3.1 + checksum: 43f4b0d09dca986c83f9c7b3af49f61f3a335e9f03632ef2a4a35ea80eec2ef5feeb916b649094a9231002464824e79d92faaba061356501aba7395024c0a4f6 + languageName: node + linkType: hard + +"worker-farm@npm:^1.7.0": + version: 1.7.0 + resolution: "worker-farm@npm:1.7.0" + dependencies: + errno: ~0.1.7 + checksum: ef76a6892bdf6a4231e6d657c13e2e960278535915d6235d9e0e3e23b65da94a56e5bed17ac5fda282370601d4cd18f4cba9552aa52f4fa9a25cc9fd3fcf58a9 + languageName: node + linkType: hard + +"worker-rpc@npm:^0.1.0": + version: 0.1.1 + resolution: "worker-rpc@npm:0.1.1" + dependencies: + microevent.ts: ~0.1.1 + checksum: f1ff1b619f37d304b4d0011ee2d2648b5ee93a984ed8ef869c7d42386d36fd042c63ae797a720dd4a32d9d0a7686e84ebbee2dbb26e0b00cf0cfbd65bc4f19eb + languageName: node + linkType: hard + +"wrap-ansi@npm:7.0.0": + version: 7.0.0 + resolution: "wrap-ansi@npm:7.0.0" + dependencies: + ansi-styles: ^4.0.0 + string-width: ^4.1.0 + strip-ansi: ^6.0.0 + checksum: 09939dd775ae565bb99a25a6c072fe3775a95fa71751b5533c94265fe986ba3e3ab071a027ab76cf26876bd9afd10ac3c2d06d7c4bcce148bf7d2d9514e3a0df + languageName: node + linkType: hard + +"wrap-ansi@npm:^2.0.0": + version: 2.1.0 + resolution: "wrap-ansi@npm:2.1.0" + dependencies: + string-width: ^1.0.1 + strip-ansi: ^3.0.1 + checksum: d1846c06645c23dc25489e7df74df33164665c53fc609f9275ebcae11e1106f2d07038ffd8063433d1aaf9c657c42f8f45c77b7c749e358bf022351d86921d3b + languageName: node + linkType: hard + +"wrap-ansi@npm:^3.0.1": + version: 3.0.1 + resolution: "wrap-ansi@npm:3.0.1" + dependencies: + string-width: ^2.1.1 + strip-ansi: ^4.0.0 + checksum: a5425ff35d2b2d8b683045f1bbb947b7e018cf0ed7aee01aa68fc1d97b4babb09a98d1c3020d0848fdaec9bc96b008acab9d93bfd71e37959b96a4764b0ba026 + languageName: node + linkType: hard + +"wrap-ansi@npm:^5.1.0": + version: 5.1.0 + resolution: "wrap-ansi@npm:5.1.0" + dependencies: + ansi-styles: ^3.2.0 + string-width: ^3.0.0 + strip-ansi: ^5.0.0 + checksum: 9622c3aa2742645e9a6941d297436a433c65ffe1b1416578ad56e0df657716bda6857401c5c9cc485c0abbc04e852aafedf295d87e2d6ec58a01799d6bcb2fdf + languageName: node + linkType: hard + +"wrap-ansi@npm:^6.0.0, wrap-ansi@npm:^6.2.0": + version: 6.2.0 + resolution: "wrap-ansi@npm:6.2.0" + dependencies: + ansi-styles: ^4.0.0 + string-width: ^4.1.0 + strip-ansi: ^6.0.0 + checksum: ee4ed8b2994cfbdcd571f4eadde9d8ba00b8a74113483fe5d0c5f9e84054e43df8e9092d7da35c5b051faeca8fe32bd6cea8bf5ae8ad4896d6ea676a347e90af + languageName: node + linkType: hard + +"wrappy@npm:1": + version: 1.0.2 + resolution: "wrappy@npm:1.0.2" + checksum: 519fcda0fcdf0c16327be2de9d98646742307bc830277e8868529fcf7566f2b330a6453c233e0cdcb767d5838dd61a90984a02ecc983bcddebea5ad0833bbf98 + languageName: node + linkType: hard + +"write-file-atomic@npm:2.4.1": + version: 2.4.1 + resolution: "write-file-atomic@npm:2.4.1" + dependencies: + graceful-fs: ^4.1.11 + imurmurhash: ^0.1.4 + signal-exit: ^3.0.2 + checksum: d5a00706d00cb4a13bca748d85d4d149b9a997201cdbedc9162810c9ac04188e191b1b06ca868df670db972ae9dbd4022a4eff2aec0c7dce73376dccb6d4efab + languageName: node + linkType: hard + +"write-file-atomic@npm:^2.0.0, write-file-atomic@npm:^2.3.0, write-file-atomic@npm:^2.4.2": + version: 2.4.3 + resolution: "write-file-atomic@npm:2.4.3" + dependencies: + graceful-fs: ^4.1.11 + imurmurhash: ^0.1.4 + signal-exit: ^3.0.2 + checksum: ef7113c80ff888aeebddc8ab83e1279d7548738fda89fd071d3cf9603ade689bb1a9c2c49a4d66a24f06724dc9e50fe59048a2bd303f47e31f1e4928d5c7d177 + languageName: node + linkType: hard + +"write-file-atomic@npm:^3.0.0": + version: 3.0.3 + resolution: "write-file-atomic@npm:3.0.3" + dependencies: + imurmurhash: ^0.1.4 + is-typedarray: ^1.0.0 + signal-exit: ^3.0.2 + typedarray-to-buffer: ^3.1.5 + checksum: a26a8699c30cdc81d041b2c1049c6773f1e8401edda365874e9ca2dcf1fcf024dfeb43eea5e08c2e9b4e77be08a160d37f8d6c5d8c2d3ceccdf3d06e5cb38d35 + languageName: node + linkType: hard + +"write-json-file@npm:^2.2.0": + version: 2.3.0 + resolution: "write-json-file@npm:2.3.0" + dependencies: + detect-indent: ^5.0.0 + graceful-fs: ^4.1.2 + make-dir: ^1.0.0 + pify: ^3.0.0 + sort-keys: ^2.0.0 + write-file-atomic: ^2.0.0 + checksum: ce8fd134bc3371cb1dbed27006a42b63d723af49cff8992aadbdac29313b6c5843908bd2714d7c96bdacfd51d1ba89001db897f35d1b8e8252943311d3ff2d1e + languageName: node + linkType: hard + +"write-json-file@npm:^3.2.0": + version: 3.2.0 + resolution: "write-json-file@npm:3.2.0" + dependencies: + detect-indent: ^5.0.0 + graceful-fs: ^4.1.15 + make-dir: ^2.1.0 + pify: ^4.0.1 + sort-keys: ^2.0.0 + write-file-atomic: ^2.4.2 + checksum: 2a4eb5925cf200c3fa5af5607f85a5eb7d279ef388feedb5d67d1a1d43d1102c17cd3f4ebe2ebcb30123db1c884e88c2a8f689cbcb6b18fbd60a48764c59537b + languageName: node + linkType: hard + +"write-pkg@npm:^3.1.0": + version: 3.2.0 + resolution: "write-pkg@npm:3.2.0" + dependencies: + sort-keys: ^2.0.0 + write-json-file: ^2.2.0 + checksum: bae5e2a2ce5c6cf9c7ee825b1b8ebacb2dec70fc74a162aeee64cac3e9fbe58d0f5ba0a5f8928960cb350af0f7bbee35d215c103d3fa8e05464925aa58d3e85f + languageName: node + linkType: hard + +"write@npm:1.0.3": + version: 1.0.3 + resolution: "write@npm:1.0.3" + dependencies: + mkdirp: ^0.5.1 + checksum: e8f8fddefea3eaaf4c8bacf072161f82d5e05c5fb8f003e1bae52673b94b88a4954d97688c7403a20301d2f6e9f61363b1affe74286b499b39bc0c42f17a56cb + languageName: node + linkType: hard + +"ws@npm:^5.2.0": + version: 5.2.2 + resolution: "ws@npm:5.2.2" + dependencies: + async-limiter: ~1.0.0 + checksum: c8217b54821ac9109bd395029487fd2a577867d6227624079dfa04c927728be13fdbe43070b2d349e9360d7dd17416c33362ba1062bff3bd9ddab6e9a9272915 + languageName: node + linkType: hard + +"ws@npm:^6.0.0, ws@npm:^6.1.2, ws@npm:^6.2.1": + version: 6.2.1 + resolution: "ws@npm:6.2.1" + dependencies: + async-limiter: ~1.0.0 + checksum: 35d32b09e28f799f04708c3a7bd9eff469ae63e60543d7e18335f28689228a42ee21210f48de680aad6e5317df76b5b1183d1a1ea4b4d14cb6e0943528f40e76 + languageName: node + linkType: hard + +"ws@npm:^7.2.3": + version: 7.3.1 + resolution: "ws@npm:7.3.1" + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: ^5.0.2 + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + checksum: 9302f1f6658c5f3ecd6d35d1c5a38ad708d8e5404cba66ad884ead072ef7a4c948f54d728649a2cb3af1865ca0e15f903e0e2ac9df30c1a0d4dd00d00e6e0d4a + languageName: node + linkType: hard + +"xdg-basedir@npm:^4.0.0": + version: 4.0.0 + resolution: "xdg-basedir@npm:4.0.0" + checksum: 928953cb7dda8e2475932f748847a3aae751f44864a0067b03e5ca66820a36e1e9ffb647f9b06fb68ebcb0b9d06d5aee630717a1d2501be14cec99f82efa2fe6 + languageName: node + linkType: hard + +"xml-js@npm:^1.6.11": + version: 1.6.11 + resolution: "xml-js@npm:1.6.11" + dependencies: + sax: ^1.2.4 + bin: + xml-js: ./bin/cli.js + checksum: 375073635884af60c5f02d1b586dfd4f4ba08285d5a4241f562f0692fa514c2764d31f6a92e07e9d499fc5855ea62f95931e691811aabf739958c18fe06256a6 + languageName: node + linkType: hard + +"xml-name-validator@npm:^3.0.0": + version: 3.0.0 + resolution: "xml-name-validator@npm:3.0.0" + checksum: b96679a42e6be36d2433987fe3cc45e972d20d7c2c2a787a2d6b2da94392bd9f23f671cdba29a91211289a2fa8e6965e466dbc1105d0e5730fc3a43e4f1a0688 + languageName: node + linkType: hard + +"xml2js@npm:^0.4.17": + version: 0.4.23 + resolution: "xml2js@npm:0.4.23" + dependencies: + sax: ">=0.6.0" + xmlbuilder: ~11.0.0 + checksum: 5e6e53955714a9d094c9f39ac7509706d136a3dae76684059019ca949e131775f69715715879df86b1a49519ffea3805ff2e930596e229c5f6228ce027e8a80e + languageName: node + linkType: hard + +"xmlbuilder@npm:^13.0.0": + version: 13.0.2 + resolution: "xmlbuilder@npm:13.0.2" + checksum: d29631d8991d4fa5e954c7fb7ea4a3d5b37b8bd72264241d60844e9f54e52b3f1415c78104f1e3c720f7dd6e9591234b37897ae883dfe4a1a280f99e9fec4c6f + languageName: node + linkType: hard + +"xmlbuilder@npm:~11.0.0": + version: 11.0.1 + resolution: "xmlbuilder@npm:11.0.1" + checksum: 8f479b28b5897d903dc514c45c54c869b2f798c0eb44b11e35f7d6e3e631fb9d7aaaec6b9db6b92b715b4ded00d9d8ed8c08e9fd7e2a5f220b14b7b54403fa10 + languageName: node + linkType: hard + +"xmlchars@npm:^2.1.1, xmlchars@npm:^2.2.0": + version: 2.2.0 + resolution: "xmlchars@npm:2.2.0" + checksum: 69bbb61e8d939873c8aa7d006d082944de2eb6f12f55e53fdfc670d544e677736b59e498ece303f264bd1dc39b77557eef1c1c9bfb09eb5e1e30ac552420d81e + languageName: node + linkType: hard + +"xregexp@npm:^4.3.0": + version: 4.3.0 + resolution: "xregexp@npm:4.3.0" + dependencies: + "@babel/runtime-corejs3": ^7.8.3 + checksum: 2dcef4888ea32e7c01b8f42d1ee3df24970de14b299a8f534ccecf2252d297092f92d037502176ec334b6c8d7cd1dd3dba0d3cf949e26f418d50b46846268839 + languageName: node + linkType: hard + +"xss@npm:^1.0.6": + version: 1.0.8 + resolution: "xss@npm:1.0.8" + dependencies: + commander: ^2.20.3 + cssfilter: 0.0.10 + bin: + xss: bin/xss + checksum: d16f355b9c7ae0529a7c13976f27945e3e46d0fc44c8f725d2c0e48e4e873d623d90d08202aedc4441bc6ee87d2695dda2659abdb3af14fa9428c18df7193d73 + languageName: node + linkType: hard + +"xtend@npm:^4.0.0, xtend@npm:^4.0.1, xtend@npm:~4.0.1": + version: 4.0.2 + resolution: "xtend@npm:4.0.2" + checksum: 37ee522a3e9fb9b143a400c30b21dc122aa8c9c9411c6afae1005a4617dc20a21765c114d544e37a6bb60c2733dd8ee0a44ed9e80d884ac78cccd30b5e0ab0da + languageName: node + linkType: hard + +"y18n@npm:^3.2.1 || ^4.0.0, y18n@npm:^4.0.0": + version: 4.0.0 + resolution: "y18n@npm:4.0.0" + checksum: 5b7434c95d31ffa2b9b97df98e2d786446a0ff21c30e0265088caa4818a3335559a425763e55b6d9370d9fcecb75a36ae5bb901184676bd255f96ee3c743f667 + languageName: node + linkType: hard + +"yaeti@npm:^0.0.6": + version: 0.0.6 + resolution: "yaeti@npm:0.0.6" + checksum: fa9beece5a26aac7a2fa71ced85f660184a936883cc16fdd4f7a6bf2f2ea3454af6ceff77128be76ddeb6578d955a5282670187d439a3ee77733d0c12a18de1c + languageName: node + linkType: hard + +"yallist@npm:^3.0.0, yallist@npm:^3.0.2, yallist@npm:^3.0.3": + version: 3.1.1 + resolution: "yallist@npm:3.1.1" + checksum: f352c93b92f601bb0399210bca37272e669c961e9bd886bac545380598765cbfdfb4f166e7b6c57ca4ec8a5af4ab3fa0fd78a47f9a7d655a3d580ff0fc9e7d79 + languageName: node + linkType: hard + +"yallist@npm:^4.0.0": + version: 4.0.0 + resolution: "yallist@npm:4.0.0" + checksum: a2960ef879af6ee67a76cae29bac9d8bffeb6e9e366c217dbd21464e7fce071933705544724f47e90ba5209cf9c83c17d5582dd04415d86747a826b2a231efb8 + languageName: node + linkType: hard + +"yaml-ast-parser@npm:^0.0.43": + version: 0.0.43 + resolution: "yaml-ast-parser@npm:0.0.43" + checksum: 8a1cca44d28eb998fef4e14ab3d6edf8a4c1725975abdc2bfd25ad2c189cb12ccf9b7dd8665bfa357e45adf39775d21f90acd8134a7f4d7223fed088f7186e95 + languageName: node + linkType: hard + +"yaml@npm:^1.10.0, yaml@npm:^1.7.2": + version: 1.10.0 + resolution: "yaml@npm:1.10.0" + checksum: d4cc9f9724f8d0aebc2cf52e4e6aa7059f12d50deb54b5225d103462fb2af36e5c0bb419101ca4b1f0cd3b4db9e4139cf2c690e863ac6227648d39d6f4e2522c + languageName: node + linkType: hard + +"yargonaut@npm:^1.1.2": + version: 1.1.4 + resolution: "yargonaut@npm:1.1.4" + dependencies: + chalk: ^1.1.1 + figlet: ^1.1.1 + parent-require: ^1.0.0 + checksum: 75cc5ae1f312c6c159adc6f31cb7dc8be8e9cdb47b99c34d3109a1b1b21e40813eb8fffdacb429af11baf2bb7fc31d2ee2e3c7b0876a12c69e39fb4c23ad8ea3 + languageName: node + linkType: hard + +"yargs-parser@npm:18.x, yargs-parser@npm:^18.1.2, yargs-parser@npm:^18.1.3": + version: 18.1.3 + resolution: "yargs-parser@npm:18.1.3" + dependencies: + camelcase: ^5.0.0 + decamelize: ^1.2.0 + checksum: 33871721679053cc38165afc6356c06c3e820459589b5db78f315886105070eb90cbb583cd6515fa4231937d60c80262ca2b7c486d5942576802446318a39597 + languageName: node + linkType: hard + +"yargs-parser@npm:^11.1.1": + version: 11.1.1 + resolution: "yargs-parser@npm:11.1.1" + dependencies: + camelcase: ^5.0.0 + decamelize: ^1.2.0 + checksum: f6aa81f2be5636f9bd3526faf5117459cd333c2158502502cc68437e3893fabca981050d71ec1c2300c36f44fb3bbc7d0dc8224ff5bee619a59f255398a49082 + languageName: node + linkType: hard + +"yargs-parser@npm:^13.1.2": + version: 13.1.2 + resolution: "yargs-parser@npm:13.1.2" + dependencies: + camelcase: ^5.0.0 + decamelize: ^1.2.0 + checksum: 82d3b7ab99085d70a5121399ad407d2b98d296538bf7012ac2ce044a61160ca891ea617de6374699d81955d9a61c36a3b2a6a51588e38f710bd211ce2e63c33c + languageName: node + linkType: hard + +"yargs-parser@npm:^15.0.1": + version: 15.0.1 + resolution: "yargs-parser@npm:15.0.1" + dependencies: + camelcase: ^5.0.0 + decamelize: ^1.2.0 + checksum: 1969d5cf00b9ff37e4958f2fde76728b6ed0b3be36f25870348f825bc99671665488580179af344209c9e08acf12249a9812c0f426b4062cbf00509ee7815fee + languageName: node + linkType: hard + +"yargs@npm:12.0.5": + version: 12.0.5 + resolution: "yargs@npm:12.0.5" + dependencies: + cliui: ^4.0.0 + decamelize: ^1.2.0 + find-up: ^3.0.0 + get-caller-file: ^1.0.1 + os-locale: ^3.0.0 + require-directory: ^2.1.1 + require-main-filename: ^1.0.1 + set-blocking: ^2.0.0 + string-width: ^2.0.0 + which-module: ^2.0.0 + y18n: ^3.2.1 || ^4.0.0 + yargs-parser: ^11.1.1 + checksum: f015926a07c7bc7cfb55d4a40c6e40eb7d91a62e817093058e2fa6b0c804807c4c2c248eed29e8378a6323a79701a5a7a1daf8b55b87151e2ea4286c7b1b365a + languageName: node + linkType: hard + +"yargs@npm:15.4.1, yargs@npm:^15.0.0, yargs@npm:^15.3.1": + version: 15.4.1 + resolution: "yargs@npm:15.4.1" + dependencies: + cliui: ^6.0.0 + decamelize: ^1.2.0 + find-up: ^4.1.0 + get-caller-file: ^2.0.1 + require-directory: ^2.1.1 + require-main-filename: ^2.0.0 + set-blocking: ^2.0.0 + string-width: ^4.2.0 + which-module: ^2.0.0 + y18n: ^4.0.0 + yargs-parser: ^18.1.2 + checksum: dbf687d6b938f01bbf11e158dde6df906282b70cd9295af0217ee8cefbd83ad09d49fa9458d0d5325b0e66f03df954a38986db96f91e5b46ccdbbaf9a0157b23 + languageName: node + linkType: hard + +"yargs@npm:^13.2.1, yargs@npm:^13.3.0, yargs@npm:^13.3.2": + version: 13.3.2 + resolution: "yargs@npm:13.3.2" + dependencies: + cliui: ^5.0.0 + find-up: ^3.0.0 + get-caller-file: ^2.0.1 + require-directory: ^2.1.1 + require-main-filename: ^2.0.0 + set-blocking: ^2.0.0 + string-width: ^3.0.0 + which-module: ^2.0.0 + y18n: ^4.0.0 + yargs-parser: ^13.1.2 + checksum: 92c612cd14a9217d7421ae4f42bc7c460472633bfc2e45f7f86cd614a61a845670d3bac7c2228c39df7fcecce0b8c12b2af65c785b1f757de974dcf84b5074f9 + languageName: node + linkType: hard + +"yargs@npm:^14.2.2": + version: 14.2.3 + resolution: "yargs@npm:14.2.3" + dependencies: + cliui: ^5.0.0 + decamelize: ^1.2.0 + find-up: ^3.0.0 + get-caller-file: ^2.0.1 + require-directory: ^2.1.1 + require-main-filename: ^2.0.0 + set-blocking: ^2.0.0 + string-width: ^3.0.0 + which-module: ^2.0.0 + y18n: ^4.0.0 + yargs-parser: ^15.0.1 + checksum: cfe46545a6ddb535e7704a5311986e638734b4a11ed548ca7b3af43ecf99089563d54b1353e47c2d12cc7402f5a3e7c6b95c84f968a1f66bdb209c25aea638c9 + languageName: node + linkType: hard + +"yn@npm:3.1.1": + version: 3.1.1 + resolution: "yn@npm:3.1.1" + checksum: bff63b80568d80c711670935427494dde47cdf97e8b04196b140ce0af519c81c5ee857eddad0caa8b422dd65aea0157bbfaacbb1546bebba623f0f383d5d9ae5 + languageName: node + linkType: hard + +"zen-observable-ts@npm:^0.8.21": + version: 0.8.21 + resolution: "zen-observable-ts@npm:0.8.21" + dependencies: + tslib: ^1.9.3 + zen-observable: ^0.8.0 + checksum: 031ac9c2441a9b2d388417ab402e759fcb72e74c926ecd2500708da309c54e4ecad2c3d1ce85f039d30f670fca092facd21f3e25d6dba5c055504eb08012acb0 + languageName: node + linkType: hard + +"zen-observable@npm:^0.8.0, zen-observable@npm:^0.8.14": + version: 0.8.15 + resolution: "zen-observable@npm:0.8.15" + checksum: 7d155f8a75b9314f9f31e70a31edcd897b0e8a1313737502ab84a573e49d2c333b738e415c156334a6e910c363ce546b59fa7921eff61440285caa99c843df74 + languageName: node + linkType: hard + +"zwitch@npm:^1.0.0": + version: 1.0.5 + resolution: "zwitch@npm:1.0.5" + checksum: 5005166809cfe1f87a75aa8186a606414482c9c7fccff523a621a94ea4b22c7e60599c0cf47669df9946c4a1dea342ebf5d512cbeeacd567814382fee122a3a0 + languageName: node + linkType: hard From dc8c0498c1c996ae1fa4e1aad177b5884817ec30 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Pradel?= Date: Mon, 10 Aug 2020 11:27:14 +0200 Subject: [PATCH 130/146] feat(mfa): create new mfa service (#1038) --- .prettierignore | 1 + packages/database-manager/package.json | 2 +- packages/graphql-api/src/models.ts | 2 +- .../graphql-client/src/graphql-operations.ts | 39 ++- packages/mfa/README.md | 20 ++ packages/mfa/__tests__/accounts-mfa.ts | 30 ++ packages/mfa/package.json | 39 +++ packages/mfa/src/accounts-mfa.ts | 268 ++++++++++++++++++ packages/mfa/src/errors.ts | 74 +++++ packages/mfa/src/index.ts | 1 + packages/mfa/src/types/error-messages.ts | 26 ++ packages/mfa/src/types/index.ts | 1 + packages/mfa/tsconfig.json | 9 + packages/password/package.json | 2 +- packages/server/src/accounts-server.ts | 4 +- packages/two-factor/package.json | 2 +- packages/types/src/index.ts | 2 + .../types/src/types/authentication-result.ts | 7 + .../types/src/types/authentication-service.ts | 3 +- .../src/types/mfa/authenticator-service.ts | 28 ++ yarn.lock | 16 ++ 21 files changed, 549 insertions(+), 27 deletions(-) create mode 100644 packages/mfa/README.md create mode 100644 packages/mfa/__tests__/accounts-mfa.ts create mode 100644 packages/mfa/package.json create mode 100644 packages/mfa/src/accounts-mfa.ts create mode 100644 packages/mfa/src/errors.ts create mode 100644 packages/mfa/src/index.ts create mode 100644 packages/mfa/src/types/error-messages.ts create mode 100644 packages/mfa/src/types/index.ts create mode 100644 packages/mfa/tsconfig.json create mode 100644 packages/types/src/types/authentication-result.ts create mode 100644 packages/types/src/types/mfa/authenticator-service.ts diff --git a/.prettierignore b/.prettierignore index 9e2538460..61198655d 100644 --- a/.prettierignore +++ b/.prettierignore @@ -7,3 +7,4 @@ packages/graphql-api/src/models.ts packages/graphql-client/src/graphql-operations.ts website/.docusaurus website/docs/api +.yarn diff --git a/packages/database-manager/package.json b/packages/database-manager/package.json index 52ebf754d..9ca2bf6e3 100644 --- a/packages/database-manager/package.json +++ b/packages/database-manager/package.json @@ -14,7 +14,7 @@ "compile": "tsc", "prepublishOnly": "yarn compile", "test": "npm run test", - "testonly": "jest --coverage", + "testonly": "jest", "coverage": "jest --coverage" }, "files": [ diff --git a/packages/graphql-api/src/models.ts b/packages/graphql-api/src/models.ts index 425503ef6..276e28c30 100644 --- a/packages/graphql-api/src/models.ts +++ b/packages/graphql-api/src/models.ts @@ -1,7 +1,7 @@ /* eslint-disable */ import { GraphQLResolveInfo } from 'graphql'; export type Maybe = T | null; -export type Exact = { [K in keyof T]: T[K] }; +export type Exact = { [K in keyof T]: T[K] }; export type RequireFields = { [X in Exclude]?: T[X] } & { [P in K]-?: NonNullable }; /** All built-in and custom scalars, mapped to their actual values */ diff --git a/packages/graphql-client/src/graphql-operations.ts b/packages/graphql-client/src/graphql-operations.ts index 4a639ec5e..909289562 100644 --- a/packages/graphql-client/src/graphql-operations.ts +++ b/packages/graphql-client/src/graphql-operations.ts @@ -1,8 +1,7 @@ /* eslint-disable */ -import { DocumentNode } from 'graphql'; -import { TypedDocumentNode } from '@graphql-typed-document-node/core'; +import { TypedDocumentNode as DocumentNode } from '@graphql-typed-document-node/core'; export type Maybe = T | null; -export type Exact = { [K in keyof T]: T[K] }; +export type Exact = { [K in keyof T]: T[K] }; /** All built-in and custom scalars, mapped to their actual values */ export type Scalars = { @@ -422,20 +421,20 @@ export type GetUserQuery = ( )> } ); -export const UserFieldsFragmentDoc: DocumentNode = {"kind":"Document","definitions":[{"kind":"FragmentDefinition","name":{"kind":"Name","value":"userFields"},"typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"User"}},"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"emails"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"address"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"verified"},"arguments":[],"directives":[]}]}},{"kind":"Field","name":{"kind":"Name","value":"username"},"arguments":[],"directives":[]}]}}]}; -export const AddEmailDocument: TypedDocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"addEmail"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"newEmail"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"addEmail"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"newEmail"},"value":{"kind":"Variable","name":{"kind":"Name","value":"newEmail"}}}],"directives":[]}]}}]}; -export const AuthenticateWithServiceDocument: TypedDocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"authenticateWithService"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"serviceName"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"params"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"AuthenticateParamsInput"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"verifyAuthentication"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"serviceName"},"value":{"kind":"Variable","name":{"kind":"Name","value":"serviceName"}}},{"kind":"Argument","name":{"kind":"Name","value":"params"},"value":{"kind":"Variable","name":{"kind":"Name","value":"params"}}}],"directives":[]}]}}]}; -export const ChangePasswordDocument: TypedDocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"changePassword"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"oldPassword"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"newPassword"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"changePassword"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"oldPassword"},"value":{"kind":"Variable","name":{"kind":"Name","value":"oldPassword"}}},{"kind":"Argument","name":{"kind":"Name","value":"newPassword"},"value":{"kind":"Variable","name":{"kind":"Name","value":"newPassword"}}}],"directives":[]}]}}]}; -export const CreateUserDocument: TypedDocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"createUser"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"user"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"CreateUserInput"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"createUser"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"user"},"value":{"kind":"Variable","name":{"kind":"Name","value":"user"}}}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"userId"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"loginResult"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"sessionId"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"tokens"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"refreshToken"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"accessToken"},"arguments":[],"directives":[]}]}},{"kind":"Field","name":{"kind":"Name","value":"user"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"FragmentSpread","name":{"kind":"Name","value":"userFields"},"directives":[]}]}}]}}]}}]}},...UserFieldsFragmentDoc.definitions]}; -export const ImpersonateDocument: TypedDocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"impersonate"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"accessToken"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"impersonated"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"ImpersonationUserIdentityInput"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"impersonate"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"accessToken"},"value":{"kind":"Variable","name":{"kind":"Name","value":"accessToken"}}},{"kind":"Argument","name":{"kind":"Name","value":"impersonated"},"value":{"kind":"Variable","name":{"kind":"Name","value":"impersonated"}}}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"authorized"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"tokens"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"refreshToken"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"accessToken"},"arguments":[],"directives":[]}]}},{"kind":"Field","name":{"kind":"Name","value":"user"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"FragmentSpread","name":{"kind":"Name","value":"userFields"},"directives":[]}]}}]}}]}},...UserFieldsFragmentDoc.definitions]}; -export const AuthenticateDocument: TypedDocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"authenticate"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"serviceName"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"params"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"AuthenticateParamsInput"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"authenticate"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"serviceName"},"value":{"kind":"Variable","name":{"kind":"Name","value":"serviceName"}}},{"kind":"Argument","name":{"kind":"Name","value":"params"},"value":{"kind":"Variable","name":{"kind":"Name","value":"params"}}}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"sessionId"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"tokens"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"refreshToken"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"accessToken"},"arguments":[],"directives":[]}]}},{"kind":"Field","name":{"kind":"Name","value":"user"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"FragmentSpread","name":{"kind":"Name","value":"userFields"},"directives":[]}]}}]}}]}},...UserFieldsFragmentDoc.definitions]}; -export const LogoutDocument: TypedDocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"logout"},"variableDefinitions":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"logout"},"arguments":[],"directives":[]}]}}]}; -export const RefreshTokensDocument: TypedDocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"refreshTokens"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"accessToken"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"refreshToken"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"refreshTokens"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"accessToken"},"value":{"kind":"Variable","name":{"kind":"Name","value":"accessToken"}}},{"kind":"Argument","name":{"kind":"Name","value":"refreshToken"},"value":{"kind":"Variable","name":{"kind":"Name","value":"refreshToken"}}}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"sessionId"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"tokens"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"refreshToken"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"accessToken"},"arguments":[],"directives":[]}]}}]}}]}}]}; -export const ResetPasswordDocument: TypedDocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"resetPassword"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"token"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"newPassword"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"resetPassword"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"token"},"value":{"kind":"Variable","name":{"kind":"Name","value":"token"}}},{"kind":"Argument","name":{"kind":"Name","value":"newPassword"},"value":{"kind":"Variable","name":{"kind":"Name","value":"newPassword"}}}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"sessionId"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"tokens"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"refreshToken"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"accessToken"},"arguments":[],"directives":[]}]}}]}}]}}]}; -export const SendResetPasswordEmailDocument: TypedDocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"sendResetPasswordEmail"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"email"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"sendResetPasswordEmail"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"email"},"value":{"kind":"Variable","name":{"kind":"Name","value":"email"}}}],"directives":[]}]}}]}; -export const SendVerificationEmailDocument: TypedDocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"sendVerificationEmail"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"email"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"sendVerificationEmail"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"email"},"value":{"kind":"Variable","name":{"kind":"Name","value":"email"}}}],"directives":[]}]}}]}; -export const TwoFactorSetDocument: TypedDocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"twoFactorSet"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"secret"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"TwoFactorSecretKeyInput"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"code"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"twoFactorSet"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"secret"},"value":{"kind":"Variable","name":{"kind":"Name","value":"secret"}}},{"kind":"Argument","name":{"kind":"Name","value":"code"},"value":{"kind":"Variable","name":{"kind":"Name","value":"code"}}}],"directives":[]}]}}]}; -export const TwoFactorUnsetDocument: TypedDocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"twoFactorUnset"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"code"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"twoFactorUnset"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"code"},"value":{"kind":"Variable","name":{"kind":"Name","value":"code"}}}],"directives":[]}]}}]}; -export const VerifyEmailDocument: TypedDocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"verifyEmail"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"token"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"verifyEmail"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"token"},"value":{"kind":"Variable","name":{"kind":"Name","value":"token"}}}],"directives":[]}]}}]}; -export const GetTwoFactorSecretDocument: TypedDocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"getTwoFactorSecret"},"variableDefinitions":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"twoFactorSecret"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"ascii"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"base32"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"hex"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"qr_code_ascii"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"qr_code_hex"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"qr_code_base32"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"google_auth_qr"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"otpauth_url"},"arguments":[],"directives":[]}]}}]}}]}; -export const GetUserDocument: TypedDocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"getUser"},"variableDefinitions":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"getUser"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"FragmentSpread","name":{"kind":"Name","value":"userFields"},"directives":[]}]}}]}},...UserFieldsFragmentDoc.definitions]}; \ No newline at end of file +export const UserFieldsFragmentDoc: DocumentNode = {"kind":"Document","definitions":[{"kind":"FragmentDefinition","name":{"kind":"Name","value":"userFields"},"typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"User"}},"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"emails"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"address"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"verified"},"arguments":[],"directives":[]}]}},{"kind":"Field","name":{"kind":"Name","value":"username"},"arguments":[],"directives":[]}]}}]}; +export const AddEmailDocument: DocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"addEmail"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"newEmail"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"addEmail"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"newEmail"},"value":{"kind":"Variable","name":{"kind":"Name","value":"newEmail"}}}],"directives":[]}]}}]}; +export const AuthenticateWithServiceDocument: DocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"authenticateWithService"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"serviceName"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"params"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"AuthenticateParamsInput"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"verifyAuthentication"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"serviceName"},"value":{"kind":"Variable","name":{"kind":"Name","value":"serviceName"}}},{"kind":"Argument","name":{"kind":"Name","value":"params"},"value":{"kind":"Variable","name":{"kind":"Name","value":"params"}}}],"directives":[]}]}}]}; +export const ChangePasswordDocument: DocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"changePassword"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"oldPassword"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"newPassword"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"changePassword"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"oldPassword"},"value":{"kind":"Variable","name":{"kind":"Name","value":"oldPassword"}}},{"kind":"Argument","name":{"kind":"Name","value":"newPassword"},"value":{"kind":"Variable","name":{"kind":"Name","value":"newPassword"}}}],"directives":[]}]}}]}; +export const CreateUserDocument: DocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"createUser"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"user"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"CreateUserInput"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"createUser"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"user"},"value":{"kind":"Variable","name":{"kind":"Name","value":"user"}}}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"userId"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"loginResult"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"sessionId"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"tokens"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"refreshToken"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"accessToken"},"arguments":[],"directives":[]}]}},{"kind":"Field","name":{"kind":"Name","value":"user"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"FragmentSpread","name":{"kind":"Name","value":"userFields"},"directives":[]}]}}]}}]}}]}},...UserFieldsFragmentDoc.definitions]}; +export const ImpersonateDocument: DocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"impersonate"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"accessToken"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"impersonated"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"ImpersonationUserIdentityInput"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"impersonate"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"accessToken"},"value":{"kind":"Variable","name":{"kind":"Name","value":"accessToken"}}},{"kind":"Argument","name":{"kind":"Name","value":"impersonated"},"value":{"kind":"Variable","name":{"kind":"Name","value":"impersonated"}}}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"authorized"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"tokens"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"refreshToken"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"accessToken"},"arguments":[],"directives":[]}]}},{"kind":"Field","name":{"kind":"Name","value":"user"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"FragmentSpread","name":{"kind":"Name","value":"userFields"},"directives":[]}]}}]}}]}},...UserFieldsFragmentDoc.definitions]}; +export const AuthenticateDocument: DocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"authenticate"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"serviceName"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"params"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"AuthenticateParamsInput"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"authenticate"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"serviceName"},"value":{"kind":"Variable","name":{"kind":"Name","value":"serviceName"}}},{"kind":"Argument","name":{"kind":"Name","value":"params"},"value":{"kind":"Variable","name":{"kind":"Name","value":"params"}}}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"sessionId"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"tokens"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"refreshToken"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"accessToken"},"arguments":[],"directives":[]}]}},{"kind":"Field","name":{"kind":"Name","value":"user"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"FragmentSpread","name":{"kind":"Name","value":"userFields"},"directives":[]}]}}]}}]}},...UserFieldsFragmentDoc.definitions]}; +export const LogoutDocument: DocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"logout"},"variableDefinitions":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"logout"},"arguments":[],"directives":[]}]}}]}; +export const RefreshTokensDocument: DocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"refreshTokens"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"accessToken"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"refreshToken"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"refreshTokens"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"accessToken"},"value":{"kind":"Variable","name":{"kind":"Name","value":"accessToken"}}},{"kind":"Argument","name":{"kind":"Name","value":"refreshToken"},"value":{"kind":"Variable","name":{"kind":"Name","value":"refreshToken"}}}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"sessionId"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"tokens"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"refreshToken"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"accessToken"},"arguments":[],"directives":[]}]}}]}}]}}]}; +export const ResetPasswordDocument: DocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"resetPassword"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"token"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"newPassword"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"resetPassword"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"token"},"value":{"kind":"Variable","name":{"kind":"Name","value":"token"}}},{"kind":"Argument","name":{"kind":"Name","value":"newPassword"},"value":{"kind":"Variable","name":{"kind":"Name","value":"newPassword"}}}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"sessionId"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"tokens"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"refreshToken"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"accessToken"},"arguments":[],"directives":[]}]}}]}}]}}]}; +export const SendResetPasswordEmailDocument: DocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"sendResetPasswordEmail"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"email"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"sendResetPasswordEmail"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"email"},"value":{"kind":"Variable","name":{"kind":"Name","value":"email"}}}],"directives":[]}]}}]}; +export const SendVerificationEmailDocument: DocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"sendVerificationEmail"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"email"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"sendVerificationEmail"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"email"},"value":{"kind":"Variable","name":{"kind":"Name","value":"email"}}}],"directives":[]}]}}]}; +export const TwoFactorSetDocument: DocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"twoFactorSet"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"secret"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"TwoFactorSecretKeyInput"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"code"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"twoFactorSet"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"secret"},"value":{"kind":"Variable","name":{"kind":"Name","value":"secret"}}},{"kind":"Argument","name":{"kind":"Name","value":"code"},"value":{"kind":"Variable","name":{"kind":"Name","value":"code"}}}],"directives":[]}]}}]}; +export const TwoFactorUnsetDocument: DocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"twoFactorUnset"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"code"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"twoFactorUnset"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"code"},"value":{"kind":"Variable","name":{"kind":"Name","value":"code"}}}],"directives":[]}]}}]}; +export const VerifyEmailDocument: DocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"verifyEmail"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"token"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"verifyEmail"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"token"},"value":{"kind":"Variable","name":{"kind":"Name","value":"token"}}}],"directives":[]}]}}]}; +export const GetTwoFactorSecretDocument: DocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"getTwoFactorSecret"},"variableDefinitions":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"twoFactorSecret"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"ascii"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"base32"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"hex"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"qr_code_ascii"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"qr_code_hex"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"qr_code_base32"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"google_auth_qr"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"otpauth_url"},"arguments":[],"directives":[]}]}}]}}]}; +export const GetUserDocument: DocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"getUser"},"variableDefinitions":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"getUser"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"FragmentSpread","name":{"kind":"Name","value":"userFields"},"directives":[]}]}}]}},...UserFieldsFragmentDoc.definitions]}; \ No newline at end of file diff --git a/packages/mfa/README.md b/packages/mfa/README.md new file mode 100644 index 000000000..cb60080ff --- /dev/null +++ b/packages/mfa/README.md @@ -0,0 +1,20 @@ +# @accounts/mfa + +[![npm](https://img.shields.io/npm/v/@accounts/mfa)](https://www.npmjs.com/package/@accounts/mfa) +[![npm downloads](https://img.shields.io/npm/dm/@accounts/mfa)](https://www.npmjs.com/package/@accounts/mfa) +[![codecov](https://img.shields.io/codecov/c/github/accounts-js/accounts)](https://codecov.io/gh/accounts-js/accounts) +[![License](https://img.shields.io/github/license/accounts-js/accounts)](https://github.com/accounts-js/accounts/blob/master/LICENSE) + +## Documentation + +- [API documentation](https://www.accountsjs.com/docs/api/mfa/globals) + +## Installation + +``` +yarn add @accounts/mfa +``` + +## Contributing + +Any contribution is very welcome, read our [contributing guide](https://github.com/accounts-js/accounts/blob/master/CONTRIBUTING.md) to see how to locally setup the repository and see our development process. diff --git a/packages/mfa/__tests__/accounts-mfa.ts b/packages/mfa/__tests__/accounts-mfa.ts new file mode 100644 index 000000000..b9c4149cf --- /dev/null +++ b/packages/mfa/__tests__/accounts-mfa.ts @@ -0,0 +1,30 @@ +import { AccountsMfa } from '../src/accounts-mfa'; + +describe('AccountsMfa', () => { + describe('authenticate', () => { + it('should throw an error if mfaToken is not passed', async () => { + const accountsMfa = new AccountsMfa({ factors: {} }); + await expect(accountsMfa.authenticate({} as any, {})).rejects.toThrowError( + 'Invalid mfa token' + ); + }); + }); + + describe('challenge', () => { + it('should throw an error if mfaToken is not passed', async () => { + const accountsMfa = new AccountsMfa({ factors: {} }); + await expect( + accountsMfa.challenge(undefined as any, undefined as any, {}) + ).rejects.toThrowError('Invalid mfa token'); + }); + }); + + describe('findUserAuthenticatorsByMfaToken', () => { + it('should throw an error if mfaToken is not passed', async () => { + const accountsMfa = new AccountsMfa({ factors: {} }); + await expect( + accountsMfa.findUserAuthenticatorsByMfaToken(undefined as any) + ).rejects.toThrowError('Invalid mfa token'); + }); + }); +}); diff --git a/packages/mfa/package.json b/packages/mfa/package.json new file mode 100644 index 000000000..237a2414e --- /dev/null +++ b/packages/mfa/package.json @@ -0,0 +1,39 @@ +{ + "name": "@accounts/mfa", + "version": "0.29.0", + "main": "lib/index.js", + "typings": "lib/index.d.ts", + "scripts": { + "clean": "rimraf lib", + "start": "tsc --watch", + "precompile": "yarn clean", + "compile": "tsc", + "prepublishOnly": "yarn compile", + "testonly": "jest", + "coverage": "jest --coverage" + }, + "files": [ + "src", + "lib" + ], + "author": "Leo Pradel", + "license": "MIT", + "jest": { + "testEnvironment": "node", + "preset": "ts-jest" + }, + "dependencies": { + "tslib": "2.0.0" + }, + "devDependencies": { + "@accounts/server": "^0.29.0", + "@accounts/types": "^0.29.0", + "@types/jest": "26.0.9", + "@types/node": "14.0.14", + "jest": "26.2.2", + "rimraf": "3.0.2" + }, + "peerDependencies": { + "@accounts/server": "^0.29.0" + } +} diff --git a/packages/mfa/src/accounts-mfa.ts b/packages/mfa/src/accounts-mfa.ts new file mode 100644 index 000000000..8e947439d --- /dev/null +++ b/packages/mfa/src/accounts-mfa.ts @@ -0,0 +1,268 @@ +import { + AuthenticationService, + User, + DatabaseInterface, + ConnectionInformations, + AuthenticatorService, + Authenticator, + MfaChallenge, +} from '@accounts/types'; +import { AccountsServer, AccountsJsError } from '@accounts/server'; +import { ErrorMessages } from './types'; +import { + errors, + AuthenticateErrors, + ChallengeErrors, + AssociateError, + AssociateByMfaTokenError, + FindUserAuthenticatorsByMfaTokenError, +} from './errors'; + +export interface AccountsMfaOptions { + /** + * Accounts mfa module errors + */ + errors?: ErrorMessages; + /** + * Factors used for mfa + */ + factors: { [key: string]: AuthenticatorService | undefined }; +} + +interface AccountsMfaAuthenticateParams { + mfaToken: string; +} + +const defaultOptions = { + errors, +}; + +export class AccountsMfa implements AuthenticationService { + public serviceName = 'mfa'; + public server!: AccountsServer; + private options: AccountsMfaOptions & typeof defaultOptions; + private db!: DatabaseInterface; + private factors: { [key: string]: AuthenticatorService | undefined }; + + constructor(options: AccountsMfaOptions) { + this.options = { ...defaultOptions, ...options }; + this.factors = options.factors; + } + + public setStore(store: DatabaseInterface) { + this.db = store; + } + + /** + * @throws {@link AuthenticateErrors} + */ + public async authenticate( + params: AccountsMfaAuthenticateParams, + infos: ConnectionInformations + ): Promise { + const mfaToken = params.mfaToken; + const mfaChallenge = mfaToken ? await this.db.findMfaChallengeByToken(mfaToken) : null; + if (!mfaChallenge || !mfaChallenge.authenticatorId) { + throw new AccountsJsError( + this.options.errors.invalidMfaToken, + AuthenticateErrors.InvalidMfaToken + ); + } + const authenticator = await this.db.findAuthenticatorById(mfaChallenge.authenticatorId); + if (!authenticator) { + throw new AccountsJsError( + this.options.errors.invalidMfaToken, + AuthenticateErrors.InvalidMfaToken + ); + } + const factor = this.factors[authenticator.type]; + if (!factor) { + throw new AccountsJsError( + this.options.errors.factorNotFound(authenticator.type), + AuthenticateErrors.FactorNotFound + ); + } + // TODO we need to implement some time checking for the mfaToken (eg: expire after X minutes, probably based on the authenticator configuration) + if (!(await factor.authenticate(mfaChallenge, authenticator, params, infos))) { + throw new AccountsJsError( + this.options.errors.authenticationFailed(authenticator.type), + AuthenticateErrors.AuthenticationFailed + ); + } + // We activate the authenticator if user is using a challenge with scope 'associate' + if (!authenticator.active && mfaChallenge.scope === 'associate') { + await this.db.activateAuthenticator(authenticator.id); + } else if (!authenticator.active) { + throw new AccountsJsError( + this.options.errors.factorNotFound(authenticator.type), + AuthenticateErrors.AuthenticatorNotActive + ); + } + + // We invalidate the current mfa challenge so it can't be reused later + await this.db.deactivateMfaChallenge(mfaChallenge.id); + + return this.db.findUserById(mfaChallenge.userId); + } + /** + * @description Request a challenge for the MFA authentication. + * @param {string} mfaToken - A valid mfa token you obtained during the login process. + * @param {string} authenticatorId - The ID of the authenticator to challenge. + * @param {ConnectionInformations} infos - User connection informations. + * @throws {@link ChallengeErrors} + */ + public async challenge( + mfaToken: string, + authenticatorId: string, + infos: ConnectionInformations + ): Promise { + const [mfaChallenge, authenticator] = await Promise.all([ + mfaToken ? await this.db.findMfaChallengeByToken(mfaToken) : null, + authenticatorId ? await this.db.findAuthenticatorById(authenticatorId) : null, + ]); + if (!mfaChallenge || !this.isMfaChallengeValid(mfaChallenge)) { + throw new AccountsJsError( + this.options.errors.invalidMfaToken, + ChallengeErrors.InvalidMfaToken + ); + } + if (!authenticator) { + throw new AccountsJsError( + this.options.errors.authenticatorNotFound, + ChallengeErrors.AuthenticatorNotFound + ); + } + // A user should be able to challenge only his own authenticators + // This should never happen but it's just an extra check to be safe + if (mfaChallenge.userId !== authenticator.userId) { + throw new AccountsJsError( + this.options.errors.invalidMfaToken, + ChallengeErrors.InvalidMfaToken + ); + } + const factor = this.factors[authenticator.type]; + if (!factor) { + throw new AccountsJsError( + this.options.errors.factorNotFound(authenticator.type), + ChallengeErrors.FactorNotFound + ); + } + // If authenticator do not have a challenge method, we attach the authenticator id to the challenge + if (!factor.challenge) { + await this.db.updateMfaChallenge(mfaChallenge.id, { + authenticatorId: authenticator.id, + }); + return { + mfaToken: mfaChallenge.token, + authenticatorId: authenticator.id, + }; + } + return factor.challenge(mfaChallenge, authenticator, infos); + } + + /** + * @description Start the association of a new authenticator. + * @param {string} userId - User id to link the new authenticator. + * @param {string} serviceName - Service name of the authenticator service. + * @param {any} params - Params for the the authenticator service. + * @param {ConnectionInformations} infos - User connection informations. + * @throws {@link AssociateError} + */ + public async associate( + userId: string, + factorName: string, + params: any, + infos: ConnectionInformations + ): Promise { + const factor = this.factors[factorName]; + if (!factor) { + throw new AccountsJsError( + this.options.errors.factorNotFound(factorName), + AssociateError.FactorNotFound + ); + } + + return factor.associate(userId, params, infos); + } + + /** + * @description Start the association of a new authenticator, this method is called when the user is + * enforced to associate an authenticator before the first login. + * @param {string} userId - User id to link the new authenticator. + * @param {string} serviceName - Service name of the authenticator service. + * @param {any} params - Params for the the authenticator service. + * @param {ConnectionInformations} infos - User connection informations. + * @throws {@link AssociateByMfaTokenError} + */ + public async associateByMfaToken( + mfaToken: string, + factorName: string, + params: any, + infos: ConnectionInformations + ): Promise { + const factor = this.factors[factorName]; + if (!factor) { + throw new AccountsJsError( + this.options.errors.factorNotFound(factorName), + AssociateByMfaTokenError.FactorNotFound + ); + } + const mfaChallenge = mfaToken ? await this.db.findMfaChallengeByToken(mfaToken) : null; + if ( + !mfaChallenge || + !this.isMfaChallengeValid(mfaChallenge) || + mfaChallenge.scope !== 'associate' + ) { + throw new AccountsJsError( + this.options.errors.invalidMfaToken, + AssociateByMfaTokenError.InvalidMfaToken + ); + } + + return factor.associate(mfaChallenge, params, infos); + } + + /** + * @description Return the list of the active and inactive authenticators for this user. + * The authenticators objects are whitelisted to not expose any sensitive informations to the client. + * If you want to get all the fields from the database, use the database `findUserAuthenticators` method directly. + * @param {string} userId - User id linked to the authenticators. + */ + public async findUserAuthenticators(userId: string): Promise { + const authenticators = await this.db.findUserAuthenticators(userId); + return authenticators.map( + (authenticator) => + this.factors[authenticator.type]?.sanitize?.(authenticator) ?? authenticator + ); + } + + /** + * @description Return the list of the active authenticators for this user. + * @param {string} mfaToken - A valid mfa token you obtained during the login process. + * @throws {@link FindUserAuthenticatorsByMfaTokenError} + */ + public async findUserAuthenticatorsByMfaToken(mfaToken: string): Promise { + const mfaChallenge = mfaToken ? await this.db.findMfaChallengeByToken(mfaToken) : null; + if (!mfaChallenge || !this.isMfaChallengeValid(mfaChallenge)) { + throw new AccountsJsError( + this.options.errors.invalidMfaToken, + FindUserAuthenticatorsByMfaTokenError.InvalidMfaToken + ); + } + const authenticators = await this.db.findUserAuthenticators(mfaChallenge.userId); + return authenticators + .filter((authenticator) => authenticator.active) + .map( + (authenticator) => + this.factors[authenticator.type]?.sanitize?.(authenticator) ?? authenticator + ); + } + + public isMfaChallengeValid(mfaChallenge: MfaChallenge): boolean { + // TODO need to check that the challenge is not expired + if (mfaChallenge.deactivated) { + return false; + } + return true; + } +} diff --git a/packages/mfa/src/errors.ts b/packages/mfa/src/errors.ts new file mode 100644 index 000000000..52458a448 --- /dev/null +++ b/packages/mfa/src/errors.ts @@ -0,0 +1,74 @@ +import { ErrorMessages } from './types'; + +export const errors: ErrorMessages = { + invalidMfaToken: 'Invalid mfa token', + invalidAuthenticatorId: 'Invalid authenticator id', + authenticatorNotFound: 'Authenticator not found', + authenticatorNotActive: 'Authenticator is not active', + factorNotFound: (factorName: string) => `No service with the name ${factorName} was registered.`, + authenticationFailed: (factorName: string) => + `Authenticator ${factorName} was not able to authenticate user`, +}; + +export enum AuthenticateErrors { + /** + * Will throw if mfa token validation failed. + */ + InvalidMfaToken = 'InvalidMfaToken', + /** + * Mfa factor is not registered on the server + */ + FactorNotFound = 'FactorNotFound', + /** + * Will throw if authenticator is not active. + */ + AuthenticatorNotActive = 'AuthenticatorNotActive', + /** + * Will throw if factor failed to verify the current login attempt. + */ + AuthenticationFailed = 'AuthenticationFailed', +} + +export enum ChallengeErrors { + /** + * Will throw if mfa token validation failed. + */ + InvalidMfaToken = 'InvalidMfaToken', + /** + * Will throw if authenticator id validation failed. + */ + InvalidAuthenticatorId = 'InvalidAuthenticatorId', + /** + * Will throw if authenticator is not found. + */ + AuthenticatorNotFound = 'AuthenticatorNotFound', + /** + * Mfa factor is not registered on the server + */ + FactorNotFound = 'FactorNotFound', +} + +export enum AssociateError { + /** + * Mfa factor is not registered on the server + */ + FactorNotFound = 'FactorNotFound', +} + +export enum AssociateByMfaTokenError { + /** + * Will throw if mfa token validation failed. + */ + InvalidMfaToken = 'InvalidMfaToken', + /** + * Mfa factor is not registered on the server + */ + FactorNotFound = 'FactorNotFound', +} + +export enum FindUserAuthenticatorsByMfaTokenError { + /** + * Will throw if mfa token validation failed. + */ + InvalidMfaToken = 'InvalidMfaToken', +} diff --git a/packages/mfa/src/index.ts b/packages/mfa/src/index.ts new file mode 100644 index 000000000..60991d3af --- /dev/null +++ b/packages/mfa/src/index.ts @@ -0,0 +1 @@ +export { AccountsMfa, AccountsMfaOptions } from './accounts-mfa'; diff --git a/packages/mfa/src/types/error-messages.ts b/packages/mfa/src/types/error-messages.ts new file mode 100644 index 000000000..607444e4e --- /dev/null +++ b/packages/mfa/src/types/error-messages.ts @@ -0,0 +1,26 @@ +export interface ErrorMessages { + /** + * Default to 'Invalid mfa token'. + */ + invalidMfaToken: string; + /** + * Default to 'Invalid authenticator id'. + */ + invalidAuthenticatorId: string; + /** + * Default to 'Authenticator not found'. + */ + authenticatorNotFound: string; + /** + * Default to 'Authenticator is not active'. + */ + authenticatorNotActive: string; + /** + * Default to 'No service with the name ${factorName} was registered.'. + */ + factorNotFound: (factorName: string) => string; + /** + * Default to 'Authenticator ${authenticator.type} was not able to authenticate user.'. + */ + authenticationFailed: (factorName: string) => string; +} diff --git a/packages/mfa/src/types/index.ts b/packages/mfa/src/types/index.ts new file mode 100644 index 000000000..85168ce1d --- /dev/null +++ b/packages/mfa/src/types/index.ts @@ -0,0 +1 @@ +export { ErrorMessages } from './error-messages'; diff --git a/packages/mfa/tsconfig.json b/packages/mfa/tsconfig.json new file mode 100644 index 000000000..4ec56d0f8 --- /dev/null +++ b/packages/mfa/tsconfig.json @@ -0,0 +1,9 @@ +{ + "extends": "../../tsconfig", + "compilerOptions": { + "rootDir": "./src", + "outDir": "./lib", + "importHelpers": true + }, + "exclude": ["node_modules", "__tests__", "lib"] +} diff --git a/packages/password/package.json b/packages/password/package.json index 5ce5f26d1..68907833b 100644 --- a/packages/password/package.json +++ b/packages/password/package.json @@ -10,7 +10,7 @@ "precompile": "yarn clean", "compile": "tsc", "prepublishOnly": "yarn compile", - "testonly": "jest --coverage", + "testonly": "jest", "coverage": "jest --coverage" }, "files": [ diff --git a/packages/server/src/accounts-server.ts b/packages/server/src/accounts-server.ts index 210a35230..aeab0ea73 100644 --- a/packages/server/src/accounts-server.ts +++ b/packages/server/src/accounts-server.ts @@ -145,7 +145,7 @@ Please set ambiguousErrorMessages to false to be able to use autologin.` ); } - const user: CustomUser | null = await this.services[serviceName].authenticate(params); + const user: CustomUser | null = await this.services[serviceName].authenticate(params, infos); hooksInfo.user = user; if (!user) { throw new AccountsJsError( @@ -192,7 +192,7 @@ Please set ambiguousErrorMessages to false to be able to use autologin.` ); } - const user: CustomUser | null = await this.services[serviceName].authenticate(params); + const user: CustomUser | null = await this.services[serviceName].authenticate(params, infos); hooksInfo.user = user; if (!user) { throw new AccountsJsError( diff --git a/packages/two-factor/package.json b/packages/two-factor/package.json index c9d3c3e6d..55bd1fa32 100644 --- a/packages/two-factor/package.json +++ b/packages/two-factor/package.json @@ -14,7 +14,7 @@ "compile": "tsc", "prepublishOnly": "yarn compile", "test": "npm run test", - "testonly": "jest --coverage", + "testonly": "jest", "coverage": "jest --coverage" }, "files": [ diff --git a/packages/types/src/index.ts b/packages/types/src/index.ts index ff895c1eb..7de443e62 100644 --- a/packages/types/src/index.ts +++ b/packages/types/src/index.ts @@ -7,6 +7,7 @@ export * from './types/create-user'; export * from './types/create-user-result'; export * from './types/email-record'; export * from './types/login-result'; +export * from './types/authentication-result'; export * from './types/impersonation-result'; export * from './types/login-user-identity'; export * from './types/hook-listener'; @@ -21,3 +22,4 @@ export * from './types/mfa/authenticator'; export * from './types/mfa/create-authenticator'; export * from './types/mfa/mfa-challenge'; export * from './types/mfa/create-mfa-challenge'; +export * from './types/mfa/authenticator-service'; diff --git a/packages/types/src/types/authentication-result.ts b/packages/types/src/types/authentication-result.ts new file mode 100644 index 000000000..a2d365b71 --- /dev/null +++ b/packages/types/src/types/authentication-result.ts @@ -0,0 +1,7 @@ +import { LoginResult } from './login-result'; + +interface MultiFactorResult { + mfaToken: string; +} + +export type AuthenticationResult = LoginResult | MultiFactorResult; diff --git a/packages/types/src/types/authentication-service.ts b/packages/types/src/types/authentication-service.ts index 8009e08d9..9034bc740 100644 --- a/packages/types/src/types/authentication-service.ts +++ b/packages/types/src/types/authentication-service.ts @@ -1,5 +1,6 @@ import { User } from './user'; import { DatabaseInterface } from './database-interface'; +import { ConnectionInformations } from './connection-informations'; // TODO : Fix circular dependency for better type checking // import AccountsServer from '@accounts/server'; @@ -8,5 +9,5 @@ export interface AuthenticationService { server: any; serviceName: string; setStore(store: DatabaseInterface): void; - authenticate(params: any): Promise; + authenticate(params: any, infos: ConnectionInformations): Promise; } diff --git a/packages/types/src/types/mfa/authenticator-service.ts b/packages/types/src/types/mfa/authenticator-service.ts new file mode 100644 index 000000000..e173ce6de --- /dev/null +++ b/packages/types/src/types/mfa/authenticator-service.ts @@ -0,0 +1,28 @@ +import { DatabaseInterface } from '../database-interface'; +import { Authenticator } from './authenticator'; +import { MfaChallenge } from './mfa-challenge'; +import { ConnectionInformations } from '../connection-informations'; + +export interface AuthenticatorService { + server: any; + authenticatorName: string; + setStore(store: DatabaseInterface): void; + associate( + userIdOrMfaChallenge: string | MfaChallenge, + params: any, + infos: ConnectionInformations + ): Promise; + challenge?( + mfaChallenge: MfaChallenge, + authenticator: Authenticator, + infos: ConnectionInformations + ): Promise; + authenticate( + mfaChallenge: MfaChallenge, + authenticator: Authenticator, + params: any, + infos: ConnectionInformations + ): Promise; + sanitize?(authenticator: Authenticator): Authenticator; + // TODO ability to delete an authenticator +} diff --git a/yarn.lock b/yarn.lock index 77ded08ba..34e394e78 100644 --- a/yarn.lock +++ b/yarn.lock @@ -229,6 +229,22 @@ __metadata: languageName: unknown linkType: soft +"@accounts/mfa@workspace:packages/mfa": + version: 0.0.0-use.local + resolution: "@accounts/mfa@workspace:packages/mfa" + dependencies: + "@accounts/server": ^0.29.0 + "@accounts/types": ^0.29.0 + "@types/jest": 26.0.9 + "@types/node": 14.0.14 + jest: 26.2.2 + rimraf: 3.0.2 + tslib: 2.0.0 + peerDependencies: + "@accounts/server": ^0.29.0 + languageName: unknown + linkType: soft + "@accounts/mongo@^0.29.0, @accounts/mongo@workspace:packages/database-mongo": version: 0.0.0-use.local resolution: "@accounts/mongo@workspace:packages/database-mongo" From e347fd477e7c49e1b30f9d1ccb12f7ac0a78ad77 Mon Sep 17 00:00:00 2001 From: pradel Date: Mon, 10 Aug 2020 11:40:56 +0200 Subject: [PATCH 131/146] Update index.ts --- packages/authenticator-otp/src/index.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/authenticator-otp/src/index.ts b/packages/authenticator-otp/src/index.ts index fb7cc0025..8ed2a3571 100644 --- a/packages/authenticator-otp/src/index.ts +++ b/packages/authenticator-otp/src/index.ts @@ -31,7 +31,7 @@ const defaultOptions = { }; export class AuthenticatorOtp implements AuthenticatorService { - public serviceName = 'otp'; + public authenticatorName = 'otp'; public server!: AccountsServer; private options: AuthenticatorOtpOptions & typeof defaultOptions; @@ -60,7 +60,7 @@ export class AuthenticatorOtp implements AuthenticatorService { const otpauthUri = optlibAuthenticator.keyuri(userName, this.options.appName, secret); const authenticatorId = await this.db.createAuthenticator({ - type: this.serviceName, + type: this.authenticatorName, userId, secret, active: false, From 61aabe34e00f724f68c6f973d86ef868f89c5e99 Mon Sep 17 00:00:00 2001 From: pradel Date: Mon, 10 Aug 2020 11:54:49 +0200 Subject: [PATCH 132/146] update --- packages/server/package.json | 1 + packages/server/src/accounts-mfa.ts | 167 ------------------------- packages/server/src/accounts-server.ts | 9 +- yarn.lock | 3 +- 4 files changed, 6 insertions(+), 174 deletions(-) delete mode 100644 packages/server/src/accounts-mfa.ts diff --git a/packages/server/package.json b/packages/server/package.json index 0a7dccb3f..a98ee482e 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -44,6 +44,7 @@ "author": "Tim Mikeladze", "license": "MIT", "dependencies": { + "@accounts/mfa": "^0.29.0", "@accounts/types": "^0.29.0", "@types/jsonwebtoken": "8.3.9", "emittery": "0.5.1", diff --git a/packages/server/src/accounts-mfa.ts b/packages/server/src/accounts-mfa.ts deleted file mode 100644 index fdf7e3aac..000000000 --- a/packages/server/src/accounts-mfa.ts +++ /dev/null @@ -1,167 +0,0 @@ -import { - DatabaseInterface, - Authenticator, - AuthenticatorService, - ConnectionInformations, - MfaChallenge, -} from '@accounts/types'; - -export class AccountsMFA { - private db: DatabaseInterface; - private authenticators: { [key: string]: AuthenticatorService }; - - constructor(db: DatabaseInterface, authenticators?: { [key: string]: AuthenticatorService }) { - this.db = db; - this.authenticators = authenticators || {}; - } - - /** - * @description Request a challenge for the MFA authentication. - * @param {string} mfaToken - A valid mfa token you obtained during the login process. - * @param {string} authenticatorId - The ID of the authenticator to challenge. - * @param {ConnectionInformations} infos - User connection informations. - */ - public async challenge( - mfaToken: string, - authenticatorId: string, - infos: ConnectionInformations - ): Promise { - if (!mfaToken) { - throw new Error('Mfa token invalid'); - } - if (!authenticatorId) { - throw new Error('Authenticator id invalid'); - } - const mfaChallenge = await this.db.findMfaChallengeByToken(mfaToken); - // TODO need to check that the challenge is not expired - if (!mfaChallenge || !this.isMfaChallengeValid(mfaChallenge)) { - throw new Error('Mfa token invalid'); - } - const authenticator = await this.db.findAuthenticatorById(authenticatorId); - if (!authenticator) { - throw new Error('Authenticator not found'); - } - // A user should be able to challenge only is own authenticators - if (mfaChallenge.userId !== authenticator.userId) { - throw new Error('Mfa token invalid'); - } - const authenticatorService = this.authenticators[authenticator.type]; - if (!authenticatorService) { - throw new Error(`No authenticator with the name ${authenticator.type} was registered.`); - } - // If authenticator do not have a challenge method, we attach the authenticator id to the challenge - if (!authenticatorService.challenge) { - await this.db.updateMfaChallenge(mfaChallenge.id, { - authenticatorId: authenticator.id, - }); - return { - mfaToken: mfaChallenge.token, - authenticatorId: authenticator.id, - }; - } - return authenticatorService.challenge(mfaChallenge, authenticator, infos); - } - - /** - * @description Start the association of a new authenticator. - * @param {string} userId - User id to link the new authenticator. - * @param {string} serviceName - Service name of the authenticator service. - * @param {any} params - Params for the the authenticator service. - * @param {ConnectionInformations} infos - User connection informations. - */ - public async associate( - userId: string, - serviceName: string, - params: any, - infos: ConnectionInformations - ): Promise { - if (!this.authenticators[serviceName]) { - throw new Error(`No authenticator with the name ${serviceName} was registered.`); - } - - const associate = await this.authenticators[serviceName].associate(userId, params, infos); - return associate; - } - - /** - * @description Start the association of a new authenticator, this method is called when the user is - * enforced to associate an authenticator before the first login. - * @param {string} userId - User id to link the new authenticator. - * @param {string} serviceName - Service name of the authenticator service. - * @param {any} params - Params for the the authenticator service. - * @param {ConnectionInformations} infos - User connection informations. - */ - public async associateByMfaToken( - mfaToken: string, - serviceName: string, - params: any, - infos: ConnectionInformations - ): Promise { - if (!this.authenticators[serviceName]) { - throw new Error(`No authenticator with the name ${serviceName} was registered.`); - } - if (!mfaToken) { - throw new Error('Mfa token invalid'); - } - const mfaChallenge = await this.db.findMfaChallengeByToken(mfaToken); - if ( - !mfaChallenge || - !this.isMfaChallengeValid(mfaChallenge) || - mfaChallenge.scope !== 'associate' - ) { - throw new Error('Mfa token invalid'); - } - - const associate = await this.authenticators[serviceName].associate(mfaChallenge, params, infos); - return associate; - } - - /** - * @description Return the list of the active and inactive authenticators for this user. - * The authenticators objects are whitelisted to not expose any sensitive informations to the client. - * If you want to get all the fields from the database, use the database `findUserAuthenticators` method directly. - * @param {string} userId - User id linked to the authenticators. - */ - public async findUserAuthenticators(userId: string): Promise { - const authenticators = await this.db.findUserAuthenticators(userId); - return authenticators.map((authenticator) => { - const authenticatorService = this.authenticators[authenticator.type]; - if (authenticatorService?.sanitize) { - return authenticatorService.sanitize(authenticator); - } - return authenticator; - }); - } - - /** - * @description Return the list of the active authenticators for this user. - * @param {string} mfaToken - A valid mfa token you obtained during the login process. - */ - public async findUserAuthenticatorsByMfaToken(mfaToken: string): Promise { - if (!mfaToken) { - throw new Error('Mfa token invalid'); - } - const mfaChallenge = await this.db.findMfaChallengeByToken(mfaToken); - if (!mfaChallenge || !this.isMfaChallengeValid(mfaChallenge)) { - throw new Error('Mfa token invalid'); - } - const authenticators = await this.db.findUserAuthenticators(mfaChallenge.userId); - return authenticators - .filter((authenticator) => authenticator.active) - .map((authenticator) => { - const authenticatorService = this.authenticators[authenticator.type]; - if (authenticatorService?.sanitize) { - return authenticatorService.sanitize(authenticator); - } - return authenticator; - }); - } - - public isMfaChallengeValid(mfaChallenge: MfaChallenge): boolean { - // TODO need to check that the challenge is not expired - if (mfaChallenge.deactivated) { - return false; - } - return true; - } -} diff --git a/packages/server/src/accounts-server.ts b/packages/server/src/accounts-server.ts index 89354496a..4cc1c522a 100644 --- a/packages/server/src/accounts-server.ts +++ b/packages/server/src/accounts-server.ts @@ -15,12 +15,10 @@ import { ConnectionInformations, AuthenticationResult, } from '@accounts/types'; - +import { AccountsMfa } from '@accounts/mfa'; import { generateAccessToken, generateRefreshToken, generateRandomToken } from './utils/tokens'; - import { emailTemplates, sendMail } from './utils/email'; import { ServerHooks } from './utils/server-hooks'; - import { AccountsServerOptions } from './types/accounts-server-options'; import { JwtData } from './types/jwt-data'; import { EmailTemplateType } from './types/email-template-type'; @@ -35,7 +33,6 @@ import { LogoutErrors, ResumeSessionErrors, } from './errors'; -import { AccountsMFA } from './accounts-mfa'; const defaultOptions = { ambiguousErrorMessages: true, @@ -60,7 +57,7 @@ const defaultOptions = { export class AccountsServer { public options: AccountsServerOptions & typeof defaultOptions; - public mfa: AccountsMFA; + public mfa: AccountsMfa; private services: { [key: string]: AuthenticationService }; private authenticators: { [key: string]: AuthenticatorService }; private db: DatabaseInterface; @@ -104,7 +101,7 @@ Please set ambiguousErrorMessages to false to be able to use autologin.` } // Initialize the MFA module - this.mfa = new AccountsMFA(this.options.db, authenticators); + this.mfa = new AccountsMfa({ factors: authenticators! }); // Initialize hooks this.hooks = new Emittery(); diff --git a/yarn.lock b/yarn.lock index 1fb933282..0d3d94b73 100644 --- a/yarn.lock +++ b/yarn.lock @@ -246,7 +246,7 @@ __metadata: languageName: unknown linkType: soft -"@accounts/mfa@workspace:packages/mfa": +"@accounts/mfa@^0.29.0, @accounts/mfa@workspace:packages/mfa": version: 0.0.0-use.local resolution: "@accounts/mfa@workspace:packages/mfa" dependencies: @@ -403,6 +403,7 @@ __metadata: version: 0.0.0-use.local resolution: "@accounts/server@workspace:packages/server" dependencies: + "@accounts/mfa": ^0.29.0 "@accounts/types": ^0.29.0 "@types/jest": 26.0.9 "@types/jsonwebtoken": 8.3.9 From debd09228c349dcd69e6972533a6149b6651d0c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Pradel?= Date: Mon, 10 Aug 2020 14:13:38 +0200 Subject: [PATCH 133/146] feat(otp): create otp factor (#1042) --- packages/factor-otp/README.md | 20 ++++ packages/factor-otp/__tests__/index.ts | 112 ++++++++++++++++++ packages/factor-otp/package.json | 46 ++++++++ packages/factor-otp/src/index.ts | 114 +++++++++++++++++++ packages/factor-otp/tsconfig.json | 9 ++ website/docs/mfa/otp.md | 152 +++++++++++++++++++++++++ yarn.lock | 107 +++++++++++++++++ 7 files changed, 560 insertions(+) create mode 100644 packages/factor-otp/README.md create mode 100644 packages/factor-otp/__tests__/index.ts create mode 100644 packages/factor-otp/package.json create mode 100644 packages/factor-otp/src/index.ts create mode 100644 packages/factor-otp/tsconfig.json create mode 100644 website/docs/mfa/otp.md diff --git a/packages/factor-otp/README.md b/packages/factor-otp/README.md new file mode 100644 index 000000000..94fcb2327 --- /dev/null +++ b/packages/factor-otp/README.md @@ -0,0 +1,20 @@ +# @accounts/factor-otp + +[![npm](https://img.shields.io/npm/v/@accounts/factor-otp)](https://www.npmjs.com/package/@accounts/factor-otp) +[![npm downloads](https://img.shields.io/npm/dm/@accounts/factor-otp)](https://www.npmjs.com/package/@accounts/factor-otp) +[![codecov](https://img.shields.io/codecov/c/github/accounts-js/accounts)](https://codecov.io/gh/accounts-js/accounts) +[![License](https://img.shields.io/github/license/accounts-js/accounts)](https://github.com/accounts-js/accounts/blob/master/LICENSE) + +## Documentation + +- [API documentation](https://www.accountsjs.com/docs/api/factor-otp/globals) + +## Installation + +``` +yarn add @accounts/factor-otp +``` + +## Contributing + +Any contribution is very welcome, read our [contributing guide](https://github.com/accounts-js/accounts/blob/master/CONTRIBUTING.md) to see how to locally setup the repository and see our development process. diff --git a/packages/factor-otp/__tests__/index.ts b/packages/factor-otp/__tests__/index.ts new file mode 100644 index 000000000..dbb9c32c1 --- /dev/null +++ b/packages/factor-otp/__tests__/index.ts @@ -0,0 +1,112 @@ +import { authenticator as optlibAuthenticator } from 'otplib'; +import { FactorOtp } from '../src'; + +const factorOtp = new FactorOtp(); + +const mockedDb = { + createAuthenticator: jest.fn(() => Promise.resolve('authenticatorIdTest')), + findAuthenticatorById: jest.fn(), + createMfaChallenge: jest.fn(), + updateMfaChallenge: jest.fn(), +}; + +factorOtp.setStore(mockedDb as any); + +describe('FactorOtp', () => { + beforeEach(() => { + jest.clearAllMocks(); + }); + + describe('associate', () => { + it('create a new mfa challenge when userId is passed', async () => { + const result = await factorOtp.associate('userIdTest'); + + expect(mockedDb.createAuthenticator).toHaveBeenCalledWith({ + type: 'otp', + userId: 'userIdTest', + secret: expect.any(String), + active: false, + }); + expect(mockedDb.createMfaChallenge).toHaveBeenCalledWith({ + authenticatorId: 'authenticatorIdTest', + scope: 'associate', + token: expect.any(String), + userId: 'userIdTest', + }); + expect(result).toEqual({ + id: 'authenticatorIdTest', + mfaToken: expect.any(String), + secret: expect.any(String), + }); + }); + + it('update mfa challenge when challenge is passed', async () => { + const result = await factorOtp.associate({ + id: 'mfaChallengeIdTest', + token: 'mfaChallengeTokenTest', + userId: 'userIdTest', + } as any); + + expect(mockedDb.createAuthenticator).toHaveBeenCalledWith({ + type: 'otp', + userId: 'userIdTest', + secret: expect.any(String), + active: false, + }); + expect(mockedDb.updateMfaChallenge).toHaveBeenCalledWith('mfaChallengeIdTest', { + authenticatorId: 'authenticatorIdTest', + }); + expect(result).toEqual({ + id: 'authenticatorIdTest', + mfaToken: expect.any(String), + secret: expect.any(String), + }); + }); + }); + + describe('authenticate', () => { + it('should throw if code is not provided', async () => { + await expect(factorOtp.authenticate({} as any, {} as any, {})).rejects.toThrowError( + 'Code required' + ); + }); + + it('should return false if code is invalid to resolve the challenge', async () => { + const result = await factorOtp.associate('userIdTest'); + const resultAuthenticate = await factorOtp.authenticate( + {} as any, + { secret: result.secret } as any, + { + code: '1233456', + } + ); + expect(resultAuthenticate).toBe(false); + }); + + it('should return true if code is valid', async () => { + const result = await factorOtp.associate('userIdTest'); + const code = optlibAuthenticator.generate(result.secret); + const resultAuthentiate = await factorOtp.authenticate( + {} as any, + { secret: result.secret } as any, + { + code, + } + ); + expect(resultAuthentiate).toBe(true); + }); + }); + + describe('sanitize', () => { + it('should remove the secret property', async () => { + const authenticator = { + id: '123', + secret: 'shouldBeRemoved', + }; + const result = factorOtp.sanitize(authenticator as any); + expect(result).toEqual({ + id: authenticator.id, + }); + }); + }); +}); diff --git a/packages/factor-otp/package.json b/packages/factor-otp/package.json new file mode 100644 index 000000000..760db805a --- /dev/null +++ b/packages/factor-otp/package.json @@ -0,0 +1,46 @@ +{ + "name": "@accounts/factor-otp", + "version": "0.29.0", + "description": "@accounts/factor-otp", + "main": "lib/index.js", + "typings": "lib/index.d.ts", + "publishConfig": { + "access": "public" + }, + "scripts": { + "clean": "rimraf lib", + "start": "tsc --watch", + "precompile": "yarn clean", + "compile": "tsc", + "prepublishOnly": "yarn compile", + "test": "yarn testonly", + "test-ci": "yarn lint && yarn coverage", + "testonly": "jest", + "test:watch": "jest --watch", + "coverage": "yarn testonly --coverage" + }, + "jest": { + "preset": "ts-jest" + }, + "repository": { + "type": "git", + "url": "https://github.com/accounts-js/accounts/tree/master/packages/factor-otp" + }, + "author": "Leo Pradel", + "license": "MIT", + "devDependencies": { + "@accounts/server": "^0.29.0", + "@types/jest": "26.0.0", + "@types/node": "12.7.4", + "jest": "26.2.2", + "rimraf": "3.0.2" + }, + "dependencies": { + "@accounts/types": "^0.29.0", + "otplib": "12.0.1", + "tslib": "2.0.1" + }, + "peerDependencies": { + "@accounts/server": "^0.29.0" + } +} diff --git a/packages/factor-otp/src/index.ts b/packages/factor-otp/src/index.ts new file mode 100644 index 000000000..d418f5d06 --- /dev/null +++ b/packages/factor-otp/src/index.ts @@ -0,0 +1,114 @@ +import { + DatabaseInterface, + AuthenticatorService, + Authenticator, + MfaChallenge, +} from '@accounts/types'; +import { AccountsServer, generateRandomToken } from '@accounts/server'; +import { authenticator as optlibAuthenticator } from 'otplib'; + +interface DbAuthenticatorOtp extends Authenticator { + secret: string; +} + +export interface FactorOtpOptions { + /** + * Tokens in the previous and future x-windows that should be considered valid. + */ + window?: number; +} + +const defaultOptions = { + window: 0, +}; + +export class FactorOtp implements AuthenticatorService { + public authenticatorName = 'otp'; + public server!: AccountsServer; + + private options: FactorOtpOptions & typeof defaultOptions; + private db!: DatabaseInterface; + + constructor(options: FactorOtpOptions = {}) { + this.options = { ...defaultOptions, ...options }; + optlibAuthenticator.options = { window: this.options.window }; + } + + public setStore(store: DatabaseInterface) { + this.db = store; + } + + /** + * @description Start the association of a new OTP device + */ + public async associate( + userIdOrMfaChallenge: string | MfaChallenge + ): Promise<{ id: string; mfaToken: string; secret: string }> { + const userId = + typeof userIdOrMfaChallenge === 'string' ? userIdOrMfaChallenge : userIdOrMfaChallenge.userId; + const mfaChallenge = typeof userIdOrMfaChallenge === 'string' ? null : userIdOrMfaChallenge; + + const secret = optlibAuthenticator.generateSecret(); + + // TODO update pending (not active) authenticator if there is one + + const authenticatorId = await this.db.createAuthenticator({ + type: this.authenticatorName, + userId, + secret, + active: false, + }); + + let mfaToken: string; + if (mfaChallenge) { + mfaToken = mfaChallenge.token; + await this.db.updateMfaChallenge(mfaChallenge.id, { + authenticatorId, + }); + } else { + // We create a new challenge for the authenticator so it can be verified later + mfaToken = generateRandomToken(); + await this.db.createMfaChallenge({ + userId, + authenticatorId, + token: mfaToken, + scope: 'associate', + }); + } + + return { + id: authenticatorId, + mfaToken, + secret, + }; + } + + /** + * @description Verify that the code provided by the user is valid + */ + public async authenticate( + mfaChallenge: MfaChallenge, + authenticator: DbAuthenticatorOtp, + { code }: { code?: string } + ): Promise { + if (!code) { + throw new Error('Code required'); + } + + return optlibAuthenticator.check(code, authenticator.secret); + } + + /** + * @description Remove the sensitive fields from the database authenticator. The object + * returned by this function can be exposed to the user safely. + */ + public sanitize(authenticator: DbAuthenticatorOtp): Authenticator { + // The secret key should never be exposed to the user after the authenticator is linked + const { + // eslint-disable-next-line @typescript-eslint/no-unused-vars + secret, + ...safeAuthenticator + } = authenticator; + return safeAuthenticator; + } +} diff --git a/packages/factor-otp/tsconfig.json b/packages/factor-otp/tsconfig.json new file mode 100644 index 000000000..4ec56d0f8 --- /dev/null +++ b/packages/factor-otp/tsconfig.json @@ -0,0 +1,9 @@ +{ + "extends": "../../tsconfig", + "compilerOptions": { + "rootDir": "./src", + "outDir": "./lib", + "importHelpers": true + }, + "exclude": ["node_modules", "__tests__", "lib"] +} diff --git a/website/docs/mfa/otp.md b/website/docs/mfa/otp.md new file mode 100644 index 000000000..23093f7f1 --- /dev/null +++ b/website/docs/mfa/otp.md @@ -0,0 +1,152 @@ +--- +id: otp +title: One-Time Password +sidebar_label: OTP +--- + +[Github](https://github.com/accounts-js/accounts/tree/master/packages/factor-otp) | +[npm](https://www.npmjs.com/package/@accounts/factor-otp) + +The `@accounts/factor-otp` package provide a secure way to use OTP as a multi factor authentication step. +This package will give the ability to your users to link an authenticator app (eg: Google Authenticator) to secure their account. + +> In order to generate and verify the validity of the OTP codes we are using the [otplib](https://github.com/yeojz/otplib) npm package + +# Server configuration + +The first step is to setup the server configuration. + +## Installation + +``` +# With yarn +yarn add @accounts/factor-otp +# Or if you use npm +npm install @accounts/factor-otp --save +``` + +## Usage + +```javascript +import AccountsServer from '@accounts/server'; +import { FactorOtp } from '@accounts/factor-otp'; + +// We create a new password instance with some custom config +const factorOtp = new FactorOtp(...config); + +// We pass the password instance the AccountsServer service list +const accountsServer = new AccountsServer( + ...config, + { + // Your services + }, + { + // List of MFA factors + otp: factorOtp, + } +); +``` + +## Options + +```typescript +interface FactorOtpOptions { + /** + * Tokens in the previous and future x-windows that should be considered valid. + */ + window?: number; +} +``` + +## Examples + +To see how to integrate the package into your app you can check these examples: + +- [GraphQL Server](https://github.com/accounts-js/accounts/tree/master/examples/graphql-server-typescript) +- [Express REST Server](https://github.com/accounts-js/accounts/tree/master/examples/rest-express-typescript) + +# Client configuration + +In order to follow this process you will need to have `AccountsClient` already setup (it will be referred as `accountsClient` variable). + +## Start the association + +First step will be to request a new association for the device. To do so, we have to call the `mfaAssociate` client function. + +```typescript +// This will trigger a request on the server +const data = await accountsClient.mfaAssociate('otp'); +// Data have the following structure +{ + // Token that will be used later to activate the new authenticator + mfaToken: string; + // Id of the object stored in the database + id: string; + // Secret to show to the user so they can save it in a safe place + secret: string; +} +``` + +## Displaying a QR code to the user + +Second step will be to display a QR code that can be scanned by a user so it will be added easily to his authenticator app. + +- If you are using plain js you can do the following: + +```javascript +import qrcode from 'qrcode'; + +const data = await accountsClient.mfaAssociate('otp'); + +// Format a valid uri string for the authenticator app. +// You can customise it with the user email for example, you can also change the issue. +const otpauthUri = `otpauth://totp/accounts-js:${user.email}?secret=${data.secret}&issuer=accounts-js`; + +qrcode.toDataURL(otpauthUri, (err, imageUrl) => { + if (err) { + console.log('Error with QR'); + return; + } + // You can now display the imageUrl to the user so he can scan it with his authenticator app + console.log(imageUrl); +}); +``` + +- If you are using react you can do the following: + +```javascript +import QRCode from 'qrcode.react'; + +const data = await accountsClient.mfaAssociate('otp'); + +// Format a valid uri string for the authenticator app. +// You can customise it with the user email for example, you can also change the issue. +const otpauthUri = `otpauth://totp/accounts-js:${user.email}?secret=${data.secret}&issuer=accounts-js`; + +// In your render function +; +``` + +## Confirm the association + +Finally, in order to activate the new authenticator, we need to validate the OTP code. +You will need to login using the `mfa` service by using the code you collected from the user coming from his authenticator app. + +```javascript +// oneTimeCode is the OTP code entered by the user +const oneTimeCode = '...'; + +await accountsRest.loginWithService('mfa', { + mfaToken: secret.mfaToken, + code: oneTimeCode, +}); +``` + +If the call was successful, the authenticator is now activated and will be required next time the user try to login. + +## Examples + +To see how to integrate the package into your app you can check these examples: + +- [React GraphQL](https://github.com/accounts-js/accounts/tree/master/examples/react-graphql-typescript) +- [React REST](https://github.com/accounts-js/accounts/tree/master/examples/react-rest-typescript) diff --git a/yarn.lock b/yarn.lock index 34e394e78..af8f6bce3 100644 --- a/yarn.lock +++ b/yarn.lock @@ -171,6 +171,23 @@ __metadata: languageName: unknown linkType: soft +"@accounts/factor-otp@workspace:packages/factor-otp": + version: 0.0.0-use.local + resolution: "@accounts/factor-otp@workspace:packages/factor-otp" + dependencies: + "@accounts/server": ^0.29.0 + "@accounts/types": ^0.29.0 + "@types/jest": 26.0.0 + "@types/node": 12.7.4 + jest: 26.2.2 + otplib: 12.0.1 + rimraf: 3.0.2 + tslib: 2.0.1 + peerDependencies: + "@accounts/server": ^0.29.0 + languageName: unknown + linkType: soft + "@accounts/graphql-api@^0.29.0, @accounts/graphql-api@workspace:packages/graphql-api": version: 0.0.0-use.local resolution: "@accounts/graphql-api@workspace:packages/graphql-api" @@ -5290,6 +5307,54 @@ __metadata: languageName: node linkType: hard +"@otplib/core@npm:^12.0.1": + version: 12.0.1 + resolution: "@otplib/core@npm:12.0.1" + checksum: c4a6f3f0c5c5fe3765a92611b281f5ca0147480aabfed46c4f018219db91c67a1693724bec62f7bb08cbb237f0f74c70b28a783805ad6757c4681580e98f9fd4 + languageName: node + linkType: hard + +"@otplib/plugin-crypto@npm:^12.0.1": + version: 12.0.1 + resolution: "@otplib/plugin-crypto@npm:12.0.1" + dependencies: + "@otplib/core": ^12.0.1 + checksum: e319991527167f800dafd3c7353c5b54cb85b229b5dd1e60d56a7004c0534eb3bd7ef2dda94d81a69d160ed45283ffc182260196cc7eec13c4ab35bc2a990348 + languageName: node + linkType: hard + +"@otplib/plugin-thirty-two@npm:^12.0.1": + version: 12.0.1 + resolution: "@otplib/plugin-thirty-two@npm:12.0.1" + dependencies: + "@otplib/core": ^12.0.1 + thirty-two: ^1.0.2 + checksum: 52f6d5208b0a90b347d419b931d51a63ae46440b89040e78710d4bdda37f1831da8e60a7dfb14c1411dd28fea05d817beea7d3451b803c1880ededb307c711fc + languageName: node + linkType: hard + +"@otplib/preset-default@npm:^12.0.1": + version: 12.0.1 + resolution: "@otplib/preset-default@npm:12.0.1" + dependencies: + "@otplib/core": ^12.0.1 + "@otplib/plugin-crypto": ^12.0.1 + "@otplib/plugin-thirty-two": ^12.0.1 + checksum: 8b702af09bf077c37c81883837b2ef199290e3308634eb6258f6d7976f55e263f06e3c39caa88caa2e2e91a08e71913635cf3b4adca925945fe2e2aece8c6793 + languageName: node + linkType: hard + +"@otplib/preset-v11@npm:^12.0.1": + version: 12.0.1 + resolution: "@otplib/preset-v11@npm:12.0.1" + dependencies: + "@otplib/core": ^12.0.1 + "@otplib/plugin-crypto": ^12.0.1 + "@otplib/plugin-thirty-two": ^12.0.1 + checksum: 2dac0d8df213775a703ff845ab5dbf808d395e85988a9ff3d1615486fe8654fb2f0be7bde2f85c12857254ac3ab6e4bbfdafe54cdadf92f0c38a036c24f06698 + languageName: node + linkType: hard + "@protobufjs/aspromise@npm:^1.1.1, @protobufjs/aspromise@npm:^1.1.2": version: 1.1.2 resolution: "@protobufjs/aspromise@npm:1.1.2" @@ -5990,6 +6055,16 @@ __metadata: languageName: node linkType: hard +"@types/jest@npm:26.0.0": + version: 26.0.0 + resolution: "@types/jest@npm:26.0.0" + dependencies: + jest-diff: ^25.2.1 + pretty-format: ^25.2.1 + checksum: 6c482e91e8ac3850a1db50d086900c810951eab7514d6b705a616934afd362f606b638a2967edad1ff716aa2ec7cc7631f68774fe9c19e3576ceb90c8df68f7b + languageName: node + linkType: hard + "@types/jest@npm:26.0.9": version: 26.0.9 resolution: "@types/jest@npm:26.0.9" @@ -6184,6 +6259,13 @@ __metadata: languageName: node linkType: hard +"@types/node@npm:12.7.4": + version: 12.7.4 + resolution: "@types/node@npm:12.7.4" + checksum: ccafdc6e77ab785b6b7f3caae7ca58a72b7f8e281b780bb4d29827ac6a471337416138283df08d4f9932696b03bb2fb8072d10ff6a3c941eac3d59043a17060c + languageName: node + linkType: hard + "@types/node@npm:14.0.13": version: 14.0.13 resolution: "@types/node@npm:14.0.13" @@ -20151,6 +20233,17 @@ fsevents@^1.2.7: languageName: node linkType: hard +"otplib@npm:12.0.1": + version: 12.0.1 + resolution: "otplib@npm:12.0.1" + dependencies: + "@otplib/core": ^12.0.1 + "@otplib/preset-default": ^12.0.1 + "@otplib/preset-v11": ^12.0.1 + checksum: afb790659af994513c320e2d4b673f2f36a7a9e5c6eeb69f8ecfbe68337964989cdb3c139aa8e8b276b364b3a4019f692a213ad26a75edb34b747a61d1fa273d + languageName: node + linkType: hard + "p-cancelable@npm:^1.0.0": version: 1.1.0 resolution: "p-cancelable@npm:1.1.0" @@ -25532,6 +25625,13 @@ resolve@1.1.7: languageName: node linkType: hard +"thirty-two@npm:^1.0.2": + version: 1.0.2 + resolution: "thirty-two@npm:1.0.2" + checksum: 81c46a540b8f8984e3f39dbae6df0b1407cfa0b4d0ec17d5aa392d465f033bcc5dbe910260ccd4424711627890ad8b20ba67d9019fbd15f03f2658ce652b2847 + languageName: node + linkType: hard + "throat@npm:^4.0.0": version: 4.1.0 resolution: "throat@npm:4.1.0" @@ -25928,6 +26028,13 @@ resolve@1.1.7: languageName: node linkType: hard +"tslib@npm:2.0.1": + version: 2.0.1 + resolution: "tslib@npm:2.0.1" + checksum: 7b42337a07f536c9650c72471cdf51317f07eb981692e91b8979fee3f6e20136a8f047e6ecdc5f2f3201132a6cc4e0096fa3c58655eba3803bf7fe739ccd088e + languageName: node + linkType: hard + "tslib@npm:^1.10.0, tslib@npm:^1.11.1, tslib@npm:^1.8.1, tslib@npm:^1.9.0, tslib@npm:^1.9.3": version: 1.13.0 resolution: "tslib@npm:1.13.0" From 938ff048e0beaaf2be80a6f54bf95c0eed8e10d4 Mon Sep 17 00:00:00 2001 From: pradel Date: Mon, 10 Aug 2020 14:16:25 +0200 Subject: [PATCH 134/146] delete --- packages/authenticator-otp/README.md | 3 - packages/authenticator-otp/__tests__/index.ts | 80 ------------ packages/authenticator-otp/package.json | 46 ------- packages/authenticator-otp/src/index.ts | 122 ------------------ packages/authenticator-otp/tsconfig.json | 9 -- 5 files changed, 260 deletions(-) delete mode 100644 packages/authenticator-otp/README.md delete mode 100644 packages/authenticator-otp/__tests__/index.ts delete mode 100644 packages/authenticator-otp/package.json delete mode 100644 packages/authenticator-otp/src/index.ts delete mode 100644 packages/authenticator-otp/tsconfig.json diff --git a/packages/authenticator-otp/README.md b/packages/authenticator-otp/README.md deleted file mode 100644 index 620e3cee7..000000000 --- a/packages/authenticator-otp/README.md +++ /dev/null @@ -1,3 +0,0 @@ -# @accounts/authenticator-otp - -TODO diff --git a/packages/authenticator-otp/__tests__/index.ts b/packages/authenticator-otp/__tests__/index.ts deleted file mode 100644 index eb319b677..000000000 --- a/packages/authenticator-otp/__tests__/index.ts +++ /dev/null @@ -1,80 +0,0 @@ -import { AuthenticatorOtp } from '../src'; - -const authenticatorOtp = new AuthenticatorOtp(); - -const mockedDb = { - createAuthenticator: jest.fn(() => Promise.resolve('authenticatorIdTest')), - findAuthenticatorById: jest.fn(), - createMfaChallenge: jest.fn(), - updateMfaChallenge: jest.fn(), -}; - -authenticatorOtp.setStore(mockedDb as any); - -describe('AuthenticatorOtp', () => { - beforeEach(() => { - jest.clearAllMocks(); - }); - - describe('associate', () => { - it('create a new mfa challenge when userId is passed', async () => { - const result = await authenticatorOtp.associate('userIdTest'); - - expect(mockedDb.createAuthenticator).toHaveBeenCalledWith({ - type: 'otp', - userId: 'userIdTest', - secret: expect.any(String), - active: false, - }); - expect(mockedDb.createMfaChallenge).toHaveBeenCalledWith({ - authenticatorId: 'authenticatorIdTest', - scope: 'associate', - token: expect.any(String), - userId: 'userIdTest', - }); - expect(result).toEqual({ - id: 'authenticatorIdTest', - mfaToken: expect.any(String), - secret: expect.any(String), - otpauthUri: expect.any(String), - }); - }); - - it('update mfa challenge when challenge is passed', async () => { - const result = await authenticatorOtp.associate({ - id: 'mfaChallengeIdTest', - token: 'mfaChallengeTokenTest', - userId: 'userIdTest', - } as any); - - expect(mockedDb.createAuthenticator).toHaveBeenCalledWith({ - type: 'otp', - userId: 'userIdTest', - secret: expect.any(String), - active: false, - }); - expect(mockedDb.updateMfaChallenge).toHaveBeenCalledWith('mfaChallengeIdTest', { - authenticatorId: 'authenticatorIdTest', - }); - expect(result).toEqual({ - id: 'authenticatorIdTest', - mfaToken: expect.any(String), - secret: expect.any(String), - otpauthUri: expect.any(String), - }); - }); - }); - - describe('sanitize', () => { - it('should remove the secret property', async () => { - const authenticator = { - id: '123', - secret: 'shouldBeRemoved', - }; - const result = authenticatorOtp.sanitize(authenticator as any); - expect(result).toEqual({ - id: authenticator.id, - }); - }); - }); -}); diff --git a/packages/authenticator-otp/package.json b/packages/authenticator-otp/package.json deleted file mode 100644 index 77303a950..000000000 --- a/packages/authenticator-otp/package.json +++ /dev/null @@ -1,46 +0,0 @@ -{ - "name": "@accounts/authenticator-otp", - "version": "0.29.0", - "description": "@accounts/authenticator-otp", - "main": "lib/index.js", - "typings": "lib/index.d.ts", - "publishConfig": { - "access": "public" - }, - "scripts": { - "clean": "rimraf lib", - "start": "tsc --watch", - "precompile": "yarn clean", - "compile": "tsc", - "prepublishOnly": "yarn compile", - "test": "yarn testonly", - "test-ci": "yarn lint && yarn coverage", - "testonly": "jest", - "test:watch": "jest --watch", - "coverage": "yarn testonly --coverage" - }, - "jest": { - "preset": "ts-jest" - }, - "repository": { - "type": "git", - "url": "https://github.com/accounts-js/accounts/tree/master/packages/authenticator-otp" - }, - "author": "Leo Pradel", - "license": "MIT", - "devDependencies": { - "@accounts/server": "^0.29.0", - "@types/jest": "26.0.0", - "@types/node": "12.7.4", - "jest": "26.0.1", - "rimraf": "3.0.2" - }, - "dependencies": { - "@accounts/types": "^0.29.0", - "otplib": "11.0.1", - "tslib": "1.10.0" - }, - "peerDependencies": { - "@accounts/server": "^0.27.0" - } -} diff --git a/packages/authenticator-otp/src/index.ts b/packages/authenticator-otp/src/index.ts deleted file mode 100644 index 8ed2a3571..000000000 --- a/packages/authenticator-otp/src/index.ts +++ /dev/null @@ -1,122 +0,0 @@ -import { - DatabaseInterface, - AuthenticatorService, - Authenticator, - MfaChallenge, -} from '@accounts/types'; -import { AccountsServer, generateRandomToken } from '@accounts/server'; -import { authenticator as optlibAuthenticator } from 'otplib'; - -interface DbAuthenticatorOtp extends Authenticator { - secret: string; -} - -export interface AuthenticatorOtpOptions { - /** - * Two factor app name that will be displayed inside the user authenticator app. - */ - appName?: string; - - /** - * Two factor user name that will be displayed inside the user authenticator app, - * usually a name, email etc.. - * Will be called every time a user register a new device. - * That way you can display something like "Github (leo@accountsjs.com)" in the authenticator app. - */ - userName?: (userId: string) => Promise | string; -} - -const defaultOptions = { - appName: 'accounts-js', -}; - -export class AuthenticatorOtp implements AuthenticatorService { - public authenticatorName = 'otp'; - public server!: AccountsServer; - - private options: AuthenticatorOtpOptions & typeof defaultOptions; - private db!: DatabaseInterface; - - constructor(options: AuthenticatorOtpOptions = {}) { - this.options = { ...defaultOptions, ...options }; - } - - public setStore(store: DatabaseInterface) { - this.db = store; - } - - /** - * @description Start the association of a new OTP device - */ - public async associate( - userIdOrMfaChallenge: string | MfaChallenge - ): Promise<{ id: string; mfaToken: string; secret: string; otpauthUri: string }> { - const userId = - typeof userIdOrMfaChallenge === 'string' ? userIdOrMfaChallenge : userIdOrMfaChallenge.userId; - const mfaChallenge = typeof userIdOrMfaChallenge === 'string' ? null : userIdOrMfaChallenge; - - const secret = optlibAuthenticator.generateSecret(); - const userName = this.options.userName ? await this.options.userName(userId) : userId; - const otpauthUri = optlibAuthenticator.keyuri(userName, this.options.appName, secret); - - const authenticatorId = await this.db.createAuthenticator({ - type: this.authenticatorName, - userId, - secret, - active: false, - }); - - let mfaToken: string; - if (mfaChallenge) { - mfaToken = mfaChallenge.token; - await this.db.updateMfaChallenge(mfaChallenge.id, { - authenticatorId, - }); - } else { - // We create a new challenge for the authenticator so it can be verified later - mfaToken = generateRandomToken(); - await this.db.createMfaChallenge({ - userId, - authenticatorId, - token: mfaToken, - scope: 'associate', - }); - } - - return { - id: authenticatorId, - mfaToken, - secret, - otpauthUri, - }; - } - - /** - * @description Verify that the code provided by the user is valid - */ - public async authenticate( - mfaChallenge: MfaChallenge, - authenticator: DbAuthenticatorOtp, - { code }: { code?: string } - ): Promise { - if (!code) { - throw new Error('Code required'); - } - - return optlibAuthenticator.check(code, authenticator.secret); - } - - /** - * @description Remove the sensitive fields from the database authenticator. The object - * returned by this function can be exposed to the user safely. - */ - public sanitize(authenticator: DbAuthenticatorOtp): Authenticator { - // The secret key should never be exposed to the user after the authenticator is linked - const { - // eslint-disable-next-line @typescript-eslint/no-unused-vars - secret, - ...safeAuthenticator - } = authenticator; - return safeAuthenticator; - } -} diff --git a/packages/authenticator-otp/tsconfig.json b/packages/authenticator-otp/tsconfig.json deleted file mode 100644 index 4ec56d0f8..000000000 --- a/packages/authenticator-otp/tsconfig.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "extends": "../../tsconfig", - "compilerOptions": { - "rootDir": "./src", - "outDir": "./lib", - "importHelpers": true - }, - "exclude": ["node_modules", "__tests__", "lib"] -} From 626536204c11425c933d48b7d51cd2b931852fb5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Pradel?= Date: Mon, 10 Aug 2020 14:46:06 +0200 Subject: [PATCH 135/146] fix(rest-example): fix mongo usage (#1043) --- examples/rest-express-typescript/src/index.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/rest-express-typescript/src/index.ts b/examples/rest-express-typescript/src/index.ts index 070bbef6a..9816475ee 100644 --- a/examples/rest-express-typescript/src/index.ts +++ b/examples/rest-express-typescript/src/index.ts @@ -5,7 +5,7 @@ import mongoose from 'mongoose'; import { AccountsServer, ServerHooks } from '@accounts/server'; import { AccountsPassword } from '@accounts/password'; import accountsExpress, { userLoader } from '@accounts/rest-express'; -import MongoDBInterface from '@accounts/mongo'; +import { Mongo } from '@accounts/mongo'; mongoose.connect(process.env.MONGO_URL || 'mongodb://localhost:27017/accounts-js-rest-example', { useNewUrlParser: true, @@ -44,7 +44,7 @@ const accountsPassword = new AccountsPassword({ const accountsServer = new AccountsServer( { - db: new MongoDBInterface(db), + db: new Mongo(db), tokenSecret: 'secret', }, { From 8331c4729ddfaeff2e55f6f3c3d8994cf7aee232 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Pradel?= Date: Mon, 10 Aug 2020 17:51:35 +0200 Subject: [PATCH 136/146] chore: upgrade deps (#1044) --- CONTRIBUTING.md | 1 - examples/accounts-boost/package.json | 16 +- .../graphql-server-typeorm-postgres/README.md | 1 - .../package.json | 16 +- examples/graphql-server-typescript/README.md | 1 - .../graphql-server-typescript/package.json | 14 +- examples/react-graphql-typescript/README.md | 1 - .../react-graphql-typescript/package.json | 10 +- examples/react-rest-typescript/README.md | 1 - examples/react-rest-typescript/package.json | 22 +- .../react-rest-typescript/src/TwoFactor.tsx | 6 +- .../src/components/Container.tsx | 4 +- .../components/UnauthenticatedContainer.tsx | 4 +- examples/rest-express-typescript/README.md | 1 - examples/rest-express-typescript/package.json | 12 +- netlify.toml | 2 +- package.json | 15 +- packages/apollo-link-accounts/package.json | 6 +- packages/boost/package.json | 8 +- packages/client-password/package.json | 6 +- packages/client/package.json | 8 +- packages/database-manager/package.json | 6 +- packages/database-mongo/package.json | 12 +- packages/database-redis/package.json | 10 +- packages/database-tests/package.json | 6 +- packages/database-typeorm/package.json | 12 +- packages/e2e/package.json | 22 +- packages/error/package.json | 6 +- packages/express-session/package.json | 10 +- packages/factor-otp/package.json | 6 +- packages/graphql-api/package.json | 14 +- packages/graphql-client/package.json | 8 +- packages/mfa/package.json | 6 +- packages/oauth-instagram/package.json | 10 +- packages/oauth-twitter/package.json | 6 +- packages/oauth/package.json | 6 +- packages/password/package.json | 10 +- packages/rest-client/package.json | 10 +- packages/rest-express/package.json | 10 +- packages/server/package.json | 14 +- packages/two-factor/package.json | 10 +- packages/types/package.json | 6 +- website/docs/contributing.md | 1 - website/package.json | 2 +- yarn.lock | 1784 ++++++----------- 45 files changed, 821 insertions(+), 1321 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index e544028bc..1331f9e11 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -19,7 +19,6 @@ The Accounts project was intended - since its inception - to be a community main #### Useful Commands: - Install project dependencies: `yarn` -- Link together all the packages: `yarn setup` - Compile the packages `yarn compile` - Watch the packages for changes and recompile: `yarn start` (You need to run this command in the package subfolder you are updating) - If you want to use the accounts project in your own project, use `yarn link @accounts/` within your project. diff --git a/examples/accounts-boost/package.json b/examples/accounts-boost/package.json index 36c3caf31..7b6fd56c2 100644 --- a/examples/accounts-boost/package.json +++ b/examples/accounts-boost/package.json @@ -14,19 +14,19 @@ }, "dependencies": { "@accounts/boost": "^0.29.0", - "@graphql-tools/merge": "6.0.11", + "@graphql-tools/merge": "6.0.16", "apollo-link-context": "1.0.20", "apollo-link-http": "1.5.17", - "apollo-server": "2.14.4", - "graphql": "14.6.0", + "apollo-server": "2.16.1", + "graphql": "14.7.0", "graphql-tools": "5.0.0", - "lodash": "4.17.15", + "lodash": "4.17.19", "node-fetch": "2.6.0", - "tslib": "2.0.0" + "tslib": "2.0.1" }, "devDependencies": { - "nodemon": "2.0.3", - "ts-node": "8.10.1", - "typescript": "3.8.3" + "nodemon": "2.0.4", + "ts-node": "8.10.2", + "typescript": "3.9.7" } } diff --git a/examples/graphql-server-typeorm-postgres/README.md b/examples/graphql-server-typeorm-postgres/README.md index 59b2d5eb3..b3f3df0ad 100755 --- a/examples/graphql-server-typeorm-postgres/README.md +++ b/examples/graphql-server-typeorm-postgres/README.md @@ -8,7 +8,6 @@ In order to be able to run this example on your machine you first need to do the - Clone the repository `git clone git@github.com:accounts-js/accounts.git` - Install project dependencies: `yarn` -- Link together all the packages: `yarn setup` - Compile the packages `yarn compile` - Go to the example folder `cd examples/graphql-server-typeorm-postgres` diff --git a/examples/graphql-server-typeorm-postgres/package.json b/examples/graphql-server-typeorm-postgres/package.json index a2366efbf..9ff7203c0 100755 --- a/examples/graphql-server-typeorm-postgres/package.json +++ b/examples/graphql-server-typeorm-postgres/package.json @@ -17,18 +17,18 @@ "@accounts/server": "^0.29.0", "@accounts/typeorm": "^0.29.0", "@graphql-modules/core": "0.7.17", - "@graphql-tools/merge": "6.0.11", - "apollo-server": "2.14.4", + "@graphql-tools/merge": "6.0.16", + "apollo-server": "2.16.1", "dotenv": "^8.2.0", - "graphql": "14.6.0", - "pg": "8.1.0", + "graphql": "14.7.0", + "pg": "8.3.0", "typeorm": "0.2.25" }, "devDependencies": { "@accounts/types": "^0.29.0", - "@types/node": "14.0.13", - "nodemon": "2.0.3", - "ts-node": "8.10.1", - "typescript": "3.8.3" + "@types/node": "14.0.27", + "nodemon": "2.0.4", + "ts-node": "8.10.2", + "typescript": "3.9.7" } } diff --git a/examples/graphql-server-typescript/README.md b/examples/graphql-server-typescript/README.md index df1c625f5..8b35eff88 100644 --- a/examples/graphql-server-typescript/README.md +++ b/examples/graphql-server-typescript/README.md @@ -8,7 +8,6 @@ In order to be able to run this example on your machine you first need to do the - Clone the repository `git clone git@github.com:accounts-js/accounts.git` - Install project dependencies: `yarn` -- Link together all the packages: `yarn setup` - Compile the packages `yarn compile` - Go to the example folder `cd examples/graphql-server-typescript` diff --git a/examples/graphql-server-typescript/package.json b/examples/graphql-server-typescript/package.json index da184f6d1..7dd9d27b3 100644 --- a/examples/graphql-server-typescript/package.json +++ b/examples/graphql-server-typescript/package.json @@ -17,16 +17,16 @@ "@accounts/rest-express": "^0.29.0", "@accounts/server": "^0.29.0", "@graphql-modules/core": "0.7.17", - "@graphql-tools/merge": "6.0.11", - "apollo-server": "2.16.0", - "graphql": "14.6.0", + "@graphql-tools/merge": "6.0.16", + "apollo-server": "2.16.1", + "graphql": "14.7.0", "lodash": "4.17.19", - "mongoose": "5.9.25", - "tslib": "2.0.0" + "mongoose": "5.9.28", + "tslib": "2.0.1" }, "devDependencies": { - "@types/mongoose": "5.7.32", - "@types/node": "14.0.13", + "@types/mongoose": "5.7.36", + "@types/node": "14.0.27", "nodemon": "2.0.4", "ts-node": "8.10.2", "typescript": "3.9.7" diff --git a/examples/react-graphql-typescript/README.md b/examples/react-graphql-typescript/README.md index 87901c824..cb4a3913d 100644 --- a/examples/react-graphql-typescript/README.md +++ b/examples/react-graphql-typescript/README.md @@ -8,7 +8,6 @@ In order to be able to run this example on your machine you first need to do the - Clone the repository `git clone git@github.com:accounts-js/accounts.git` - Install project dependencies: `yarn` -- Link together all the packages: `yarn setup` - Compile the packages `yarn compile` - Go to the example folder `cd examples/react-graphql-typescript` diff --git a/examples/react-graphql-typescript/package.json b/examples/react-graphql-typescript/package.json index 6ddfe8551..b645d2e4f 100644 --- a/examples/react-graphql-typescript/package.json +++ b/examples/react-graphql-typescript/package.json @@ -31,18 +31,18 @@ "@apollo/client": "3.1.3", "@material-ui/core": "4.11.0", "@material-ui/styles": "4.10.0", - "graphql": "14.6.0", - "graphql-tag": "2.10.4", + "graphql": "14.7.0", + "graphql-tag": "2.11.0", "qrcode.react": "1.0.0", "react": "16.13.1", "react-dom": "16.13.1", "react-router-dom": "5.2.0", - "tslib": "2.0.0" + "tslib": "2.0.1" }, "devDependencies": { - "@types/node": "14.0.13", + "@types/node": "14.0.27", "@types/qrcode.react": "1.0.1", - "@types/react": "16.9.43", + "@types/react": "16.9.45", "@types/react-dom": "16.9.8", "@types/react-router": "5.1.8", "@types/react-router-dom": "5.1.5", diff --git a/examples/react-rest-typescript/README.md b/examples/react-rest-typescript/README.md index 0da8eea9a..76ddadc20 100644 --- a/examples/react-rest-typescript/README.md +++ b/examples/react-rest-typescript/README.md @@ -10,7 +10,6 @@ In order to be able to run this example on your machine you first need to do the - Clone the repository `git clone git@github.com:accounts-js/accounts.git` - Install project dependencies: `yarn` -- Link together all the packages: `yarn setup` - Compile the packages `yarn compile` - Go to the example folder `cd examples/react-rest-typescript` diff --git a/examples/react-rest-typescript/package.json b/examples/react-rest-typescript/package.json index 1af145a77..620d4f60f 100644 --- a/examples/react-rest-typescript/package.json +++ b/examples/react-rest-typescript/package.json @@ -27,25 +27,25 @@ "@accounts/client": "^0.29.0", "@accounts/client-password": "^0.29.0", "@accounts/rest-client": "^0.29.0", - "@material-ui/core": "4.9.13", + "@material-ui/core": "4.11.0", "@material-ui/icons": "4.9.1", - "@material-ui/lab": "4.0.0-alpha.50", - "@material-ui/styles": "4.9.13", - "formik": "2.1.4", + "@material-ui/lab": "4.0.0-alpha.56", + "@material-ui/styles": "4.10.0", + "formik": "2.1.5", "qrcode.react": "1.0.0", "react": "16.13.1", "react-dom": "16.13.1", - "react-router-dom": "5.1.2", - "tslib": "2.0.0" + "react-router-dom": "5.2.0", + "tslib": "2.0.1" }, "devDependencies": { - "@types/node": "14.0.13", - "@types/qrcode.react": "1.0.0", - "@types/react": "16.9.36", + "@types/node": "14.0.27", + "@types/qrcode.react": "1.0.1", + "@types/react": "16.9.45", "@types/react-dom": "16.9.8", - "@types/react-router": "5.1.7", + "@types/react-router": "5.1.8", "@types/react-router-dom": "5.1.5", "react-scripts": "3.4.1", - "typescript": "3.7.5" + "typescript": "3.9.7" } } diff --git a/examples/react-rest-typescript/src/TwoFactor.tsx b/examples/react-rest-typescript/src/TwoFactor.tsx index f1c3dd347..396fea5dc 100644 --- a/examples/react-rest-typescript/src/TwoFactor.tsx +++ b/examples/react-rest-typescript/src/TwoFactor.tsx @@ -14,7 +14,7 @@ import QRCode from 'qrcode.react'; import { useFormik, FormikErrors } from 'formik'; import { accountsRest } from './accounts'; -const useStyles = makeStyles(theme => ({ +const useStyles = makeStyles((theme) => ({ card: { marginTop: theme.spacing(3), }, @@ -42,12 +42,12 @@ interface TwoFactorValues { export const TwoFactor = () => { const classes = useStyles(); - const [secret, setSecret] = useState(); + const [secret, setSecret] = useState(); const formik = useFormik({ initialValues: { oneTimeCode: '', }, - validate: values => { + validate: (values) => { const errors: FormikErrors = {}; if (!values.oneTimeCode) { errors.oneTimeCode = 'Required'; diff --git a/examples/react-rest-typescript/src/components/Container.tsx b/examples/react-rest-typescript/src/components/Container.tsx index 7cabbbaf7..e54f22424 100644 --- a/examples/react-rest-typescript/src/components/Container.tsx +++ b/examples/react-rest-typescript/src/components/Container.tsx @@ -1,7 +1,7 @@ import React from 'react'; import { makeStyles, Container as MuiContainer } from '@material-ui/core'; -const useStyles = makeStyles(theme => ({ +const useStyles = makeStyles((theme) => ({ container: { paddingTop: theme.spacing(3), paddingBottom: theme.spacing(3), @@ -12,7 +12,7 @@ const useStyles = makeStyles(theme => ({ })); interface ContainerProps { - children: React.ReactNode; + children: any; maxWidth?: 'sm' | 'md'; } diff --git a/examples/react-rest-typescript/src/components/UnauthenticatedContainer.tsx b/examples/react-rest-typescript/src/components/UnauthenticatedContainer.tsx index c2daf2bcb..4fcf865bf 100644 --- a/examples/react-rest-typescript/src/components/UnauthenticatedContainer.tsx +++ b/examples/react-rest-typescript/src/components/UnauthenticatedContainer.tsx @@ -1,7 +1,7 @@ import React from 'react'; import { makeStyles, Container } from '@material-ui/core'; -const useStyles = makeStyles(theme => ({ +const useStyles = makeStyles((theme) => ({ root: { display: 'flex', }, @@ -17,7 +17,7 @@ const useStyles = makeStyles(theme => ({ })); interface UnauthenticatedContainerProps { - children: React.ReactNode; + children: any; } export const UnauthenticatedContainer = ({ children }: UnauthenticatedContainerProps) => { diff --git a/examples/rest-express-typescript/README.md b/examples/rest-express-typescript/README.md index 3f38a59b4..48675b10e 100644 --- a/examples/rest-express-typescript/README.md +++ b/examples/rest-express-typescript/README.md @@ -10,7 +10,6 @@ In order to be able to run this example on your machine you first need to do the - Clone the repository `git clone git@github.com:accounts-js/accounts.git` - Install project dependencies: `yarn` -- Link together all the packages: `yarn setup` - Compile the packages `yarn compile` - Go to the example folder `cd examples/rest-express-typescript` diff --git a/examples/rest-express-typescript/package.json b/examples/rest-express-typescript/package.json index 46c67c2a9..8ea6485be 100644 --- a/examples/rest-express-typescript/package.json +++ b/examples/rest-express-typescript/package.json @@ -17,13 +17,13 @@ "body-parser": "1.19.0", "cors": "2.8.5", "express": "4.17.1", - "mongoose": "5.9.13", - "tslib": "2.0.0" + "mongoose": "5.9.28", + "tslib": "2.0.1" }, "devDependencies": { - "@types/node": "14.0.13", - "nodemon": "2.0.3", - "ts-node": "8.10.1", - "typescript": "3.8.3" + "@types/node": "14.0.27", + "nodemon": "2.0.4", + "ts-node": "8.10.2", + "typescript": "3.9.7" } } diff --git a/netlify.toml b/netlify.toml index bc78a2b30..f4482d8d9 100644 --- a/netlify.toml +++ b/netlify.toml @@ -1,7 +1,7 @@ [build] base = "." publish = "website/build" - command = "yarn setup && yarn compile && cd website && yarn generate-api-docs && yarn build" + command = "yarn compile && cd website && yarn generate-api-docs && yarn build" [build.environment] NODE_VERSION = "12" diff --git a/package.json b/package.json index 2af230151..3cd8a187b 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,6 @@ "private": true, "version": "0.22.0", "scripts": { - "setup": "yarn run link", "start": "lerna exec -- yarn start", "link": "lerna exec -- yarn link", "unlink": "lerna exec -- yarn unlink", @@ -20,7 +19,7 @@ "coverage": "lerna run coverage", "codecov": "codecov", "generate:changelog": "conventional-changelog -p conventionalcommits -n ./conventional-changelog.config.json -c ./conventional-changelog.context.json -i CHANGELOG.md -s", - "reset": "yarn clean; yarn install; yarn setup; yarn compile" + "reset": "yarn clean; yarn install; yarn compile" }, "workspaces": { "packages": [ @@ -61,12 +60,12 @@ }, "license": "MIT", "devDependencies": { - "@typescript-eslint/eslint-plugin": "3.7.0", - "@typescript-eslint/parser": "3.7.0", - "conventional-changelog-cli": "2.0.34", - "eslint": "7.5.0", + "@typescript-eslint/eslint-plugin": "3.8.0", + "@typescript-eslint/parser": "3.8.0", + "conventional-changelog-cli": "2.0.35", + "eslint": "7.6.0", "eslint-config-prettier": "6.11.0", - "eslint-plugin-jest": "23.18.0", + "eslint-plugin-jest": "23.20.0", "eslint-plugin-prettier": "3.1.4", "husky": "4.2.5", "lerna": "3.22.1", @@ -74,7 +73,7 @@ "opencollective": "1.0.3", "prettier": "2.0.5", "ts-jest": "26.1.4", - "typescript": "3.9.5" + "typescript": "3.9.7" }, "collective": { "type": "opencollective", diff --git a/packages/apollo-link-accounts/package.json b/packages/apollo-link-accounts/package.json index 34e610998..1141a1ec9 100644 --- a/packages/apollo-link-accounts/package.json +++ b/packages/apollo-link-accounts/package.json @@ -27,13 +27,13 @@ "@apollo/client": "^3.0.0" }, "dependencies": { - "tslib": "2.0.0" + "tslib": "2.0.1" }, "devDependencies": { "@accounts/client": "^0.29.0", "@apollo/client": "3.1.3", - "@types/node": "14.0.14", - "graphql": "14.6.0", + "@types/node": "14.0.27", + "graphql": "14.7.0", "rimraf": "3.0.2" } } diff --git a/packages/boost/package.json b/packages/boost/package.json index ec5f6a838..dfbd3cdc9 100644 --- a/packages/boost/package.json +++ b/packages/boost/package.json @@ -32,11 +32,11 @@ "@accounts/server": "^0.29.0", "@accounts/types": "^0.29.0", "@graphql-modules/core": "0.7.17", - "apollo-server": "^2.9.3", - "graphql": "14.6.0", + "apollo-server": "^2.16.1", + "graphql": "14.7.0", "graphql-tools": "^5.0.0", "jsonwebtoken": "^8.5.1", - "lodash": "^4.17.15", - "tslib": "2.0.0" + "lodash": "^4.17.19", + "tslib": "2.0.1" } } diff --git a/packages/client-password/package.json b/packages/client-password/package.json index bb3a72b69..d57c50695 100644 --- a/packages/client-password/package.json +++ b/packages/client-password/package.json @@ -34,13 +34,13 @@ "license": "MIT", "devDependencies": { "@types/jest": "26.0.9", - "@types/node": "14.0.14", - "jest": "26.2.2", + "@types/node": "14.0.27", + "jest": "26.3.0", "rimraf": "3.0.2" }, "dependencies": { "@accounts/client": "^0.29.0", "@accounts/types": "^0.29.0", - "tslib": "2.0.0" + "tslib": "2.0.1" } } diff --git a/packages/client/package.json b/packages/client/package.json index 975990409..3a76c8ce9 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -49,9 +49,9 @@ "devDependencies": { "@types/jest": "26.0.9", "@types/jwt-decode": "2.2.1", - "@types/node": "14.0.14", - "jest": "26.2.2", - "jest-localstorage-mock": "2.4.2", + "@types/node": "14.0.27", + "jest": "26.3.0", + "jest-localstorage-mock": "2.4.3", "jsonwebtoken": "8.5.1", "localstorage-polyfill": "1.0.1", "rimraf": "3.0.2" @@ -59,6 +59,6 @@ "dependencies": { "@accounts/types": "^0.29.0", "jwt-decode": "2.2.0", - "tslib": "2.0.0" + "tslib": "2.0.1" } } diff --git a/packages/database-manager/package.json b/packages/database-manager/package.json index 9ca2bf6e3..d5403e503 100644 --- a/packages/database-manager/package.json +++ b/packages/database-manager/package.json @@ -40,12 +40,12 @@ "license": "MIT", "devDependencies": { "@types/jest": "26.0.9", - "@types/node": "14.0.14", - "jest": "26.2.2", + "@types/node": "14.0.27", + "jest": "26.3.0", "rimraf": "3.0.2" }, "dependencies": { "@accounts/types": "^0.29.0", - "tslib": "2.0.0" + "tslib": "2.0.1" } } diff --git a/packages/database-mongo/package.json b/packages/database-mongo/package.json index 5dcae3ef4..7cbf7ecfb 100644 --- a/packages/database-mongo/package.json +++ b/packages/database-mongo/package.json @@ -31,15 +31,15 @@ "devDependencies": { "@accounts/database-tests": "^0.29.0", "@types/jest": "26.0.9", - "@types/lodash": "4.14.157", + "@types/lodash": "4.14.159", "@types/mongodb": "3.5.25", - "@types/node": "14.0.14", - "jest": "26.2.2" + "@types/node": "14.0.27", + "jest": "26.3.0" }, "dependencies": { "@accounts/types": "^0.29.0", - "lodash": "^4.17.15", - "mongodb": "^3.4.1", - "tslib": "2.0.0" + "lodash": "^4.17.19", + "mongodb": "^3.6.0", + "tslib": "2.0.1" } } diff --git a/packages/database-redis/package.json b/packages/database-redis/package.json index c9e174bb6..7abacd9bd 100644 --- a/packages/database-redis/package.json +++ b/packages/database-redis/package.json @@ -35,16 +35,16 @@ "@accounts/database-tests": "^0.29.0", "@types/ioredis": "4.14.9", "@types/jest": "26.0.9", - "@types/lodash": "4.14.157", - "@types/node": "14.0.14", + "@types/lodash": "4.14.159", + "@types/node": "14.0.27", "@types/shortid": "0.0.29", - "jest": "26.2.2" + "jest": "26.3.0" }, "dependencies": { "@accounts/types": "^0.29.0", "ioredis": "^4.14.1", - "lodash": "^4.17.15", + "lodash": "^4.17.19", "shortid": "^2.2.15", - "tslib": "2.0.0" + "tslib": "2.0.1" } } diff --git a/packages/database-tests/package.json b/packages/database-tests/package.json index c3aaa3e5a..75d52f0fc 100644 --- a/packages/database-tests/package.json +++ b/packages/database-tests/package.json @@ -23,11 +23,11 @@ "license": "MIT", "devDependencies": { "@types/jest": "26.0.9", - "@types/node": "14.0.14", - "jest": "26.2.2" + "@types/node": "14.0.27", + "jest": "26.3.0" }, "dependencies": { "@accounts/types": "^0.29.0", - "tslib": "2.0.0" + "tslib": "2.0.1" } } diff --git a/packages/database-typeorm/package.json b/packages/database-typeorm/package.json index de2bfeca4..8e9c3f658 100644 --- a/packages/database-typeorm/package.json +++ b/packages/database-typeorm/package.json @@ -28,16 +28,16 @@ "devDependencies": { "@accounts/database-tests": "^0.29.0", "@types/jest": "26.0.9", - "@types/lodash": "4.14.157", - "@types/node": "14.0.14", - "jest": "26.2.2", - "pg": "8.1.0" + "@types/lodash": "4.14.159", + "@types/node": "14.0.27", + "jest": "26.3.0", + "pg": "8.3.0" }, "dependencies": { "@accounts/types": "^0.29.0", - "lodash": "^4.17.15", + "lodash": "^4.17.19", "reflect-metadata": "^0.1.13", - "tslib": "2.0.0", + "tslib": "2.0.1", "typeorm": "^0.2.25" } } diff --git a/packages/e2e/package.json b/packages/e2e/package.json index cf67662e9..21685ce10 100644 --- a/packages/e2e/package.json +++ b/packages/e2e/package.json @@ -26,14 +26,14 @@ "license": "MIT", "devDependencies": { "@types/body-parser": "1.19.0", - "@types/express": "4.17.6", + "@types/express": "4.17.7", "@types/jest": "26.0.9", - "@types/lodash": "4.14.157", - "@types/mongoose": "5.7.16", - "@types/node": "14.0.14", + "@types/lodash": "4.14.159", + "@types/mongoose": "5.7.36", + "@types/node": "14.0.27", "@types/node-fetch": "2.5.7", - "jest": "26.2.2", - "jest-localstorage-mock": "2.4.2" + "jest": "26.3.0", + "jest-localstorage-mock": "2.4.3" }, "dependencies": { "@accounts/client": "^0.29.0", @@ -49,15 +49,15 @@ "@accounts/types": "^0.29.0", "@apollo/client": "3.1.3", "@graphql-modules/core": "0.7.17", - "apollo-server": "2.14.4", + "apollo-server": "2.16.1", "body-parser": "1.19.0", "core-js": "3.6.5", "express": "4.17.1", - "graphql": "14.6.0", - "lodash": "4.17.15", - "mongoose": "5.9.13", + "graphql": "14.7.0", + "lodash": "4.17.19", + "mongoose": "5.9.28", "node-fetch": "2.6.0", - "tslib": "2.0.0", + "tslib": "2.0.1", "typeorm": "0.2.25" } } diff --git a/packages/error/package.json b/packages/error/package.json index 1cf01f7f1..43b956a74 100644 --- a/packages/error/package.json +++ b/packages/error/package.json @@ -44,12 +44,12 @@ "author": "Elies Lou (Aetherall)", "license": "MIT", "dependencies": { - "tslib": "2.0.0" + "tslib": "2.0.1" }, "devDependencies": { "@types/jest": "26.0.9", - "@types/node": "14.0.14", - "jest": "26.2.2", + "@types/node": "14.0.27", + "jest": "26.3.0", "rimraf": "3.0.2" } } diff --git a/packages/express-session/package.json b/packages/express-session/package.json index a51dbabd3..79e127d00 100644 --- a/packages/express-session/package.json +++ b/packages/express-session/package.json @@ -39,14 +39,14 @@ "license": "MIT", "devDependencies": { "@accounts/server": "^0.29.0", - "@types/express": "4.17.6", + "@types/express": "4.17.7", "@types/express-session": "1.17.0", "@types/jest": "26.0.9", - "@types/lodash": "4.14.157", + "@types/lodash": "4.14.159", "@types/request-ip": "0.0.35", "express": "4.17.1", "express-session": "1.17.1", - "jest": "26.2.2" + "jest": "26.3.0" }, "peerDependencies": { "@accounts/server": "^0.19.0", @@ -55,8 +55,8 @@ }, "dependencies": { "@accounts/types": "^0.29.0", - "lodash": "^4.17.15", + "lodash": "^4.17.19", "request-ip": "^2.1.3", - "tslib": "2.0.0" + "tslib": "2.0.1" } } diff --git a/packages/factor-otp/package.json b/packages/factor-otp/package.json index 760db805a..3dc383b5c 100644 --- a/packages/factor-otp/package.json +++ b/packages/factor-otp/package.json @@ -30,9 +30,9 @@ "license": "MIT", "devDependencies": { "@accounts/server": "^0.29.0", - "@types/jest": "26.0.0", - "@types/node": "12.7.4", - "jest": "26.2.2", + "@types/jest": "26.0.9", + "@types/node": "14.0.27", + "jest": "26.3.0", "rimraf": "3.0.2" }, "dependencies": { diff --git a/packages/graphql-api/package.json b/packages/graphql-api/package.json index 566b80182..db7c05a87 100644 --- a/packages/graphql-api/package.json +++ b/packages/graphql-api/package.json @@ -41,9 +41,9 @@ "graphql-tools": "^5.0.0" }, "dependencies": { - "@graphql-tools/merge": "6.0.11", + "@graphql-tools/merge": "6.0.16", "request-ip": "2.1.3", - "tslib": "2.0.0" + "tslib": "2.0.1" }, "devDependencies": { "@accounts/password": "^0.29.0", @@ -59,11 +59,11 @@ "@graphql-modules/core": "0.7.17", "@types/jest": "26.0.9", "@types/request-ip": "0.0.35", - "concurrently": "5.2.0", - "graphql": "14.6.0", + "concurrently": "5.3.0", + "graphql": "14.7.0", "graphql-tools": "5.0.0", - "jest": "26.2.2", - "lodash": "4.17.15", - "ts-node": "8.10.1" + "jest": "26.3.0", + "lodash": "4.17.19", + "ts-node": "8.10.2" } } diff --git a/packages/graphql-client/package.json b/packages/graphql-client/package.json index 10b829aff..ba24d6a54 100644 --- a/packages/graphql-client/package.json +++ b/packages/graphql-client/package.json @@ -35,8 +35,8 @@ "dependencies": { "@accounts/client": "^0.29.0", "@accounts/types": "^0.29.0", - "@graphql-typed-document-node/core": "0.0.1", - "tslib": "2.0.0" + "@graphql-typed-document-node/core": "3.0.0", + "tslib": "2.0.1" }, "devDependencies": { "@graphql-codegen/add": "1.17.7", @@ -45,8 +45,8 @@ "@graphql-codegen/typescript": "1.17.7", "@graphql-codegen/typescript-operations": "1.17.7", "@types/jest": "26.0.9", - "graphql": "14.6.0", - "jest": "26.2.2", + "graphql": "14.7.0", + "jest": "26.3.0", "lodash": "4.17.19" } } diff --git a/packages/mfa/package.json b/packages/mfa/package.json index 237a2414e..1ceedc6ad 100644 --- a/packages/mfa/package.json +++ b/packages/mfa/package.json @@ -23,14 +23,14 @@ "preset": "ts-jest" }, "dependencies": { - "tslib": "2.0.0" + "tslib": "2.0.1" }, "devDependencies": { "@accounts/server": "^0.29.0", "@accounts/types": "^0.29.0", "@types/jest": "26.0.9", - "@types/node": "14.0.14", - "jest": "26.2.2", + "@types/node": "14.0.27", + "jest": "26.3.0", "rimraf": "3.0.2" }, "peerDependencies": { diff --git a/packages/oauth-instagram/package.json b/packages/oauth-instagram/package.json index 241a8a8ba..c9b874ec8 100644 --- a/packages/oauth-instagram/package.json +++ b/packages/oauth-instagram/package.json @@ -23,14 +23,14 @@ }, "dependencies": { "@accounts/oauth": "^0.29.0", - "request": "^2.88.0", - "request-promise": "^4.2.5", - "tslib": "2.0.0" + "request": "^2.88.2", + "request-promise": "^4.2.6", + "tslib": "2.0.1" }, "devDependencies": { "@types/jest": "26.0.9", - "@types/node": "14.0.14", + "@types/node": "14.0.27", "@types/request-promise": "4.1.46", - "jest": "26.2.2" + "jest": "26.3.0" } } diff --git a/packages/oauth-twitter/package.json b/packages/oauth-twitter/package.json index 62e5cbddd..30e2db6e2 100644 --- a/packages/oauth-twitter/package.json +++ b/packages/oauth-twitter/package.json @@ -24,12 +24,12 @@ "dependencies": { "@accounts/oauth": "^0.29.0", "oauth": "^0.9.15", - "tslib": "2.0.0" + "tslib": "2.0.1" }, "devDependencies": { "@types/jest": "26.0.9", - "@types/node": "14.0.14", + "@types/node": "14.0.27", "@types/oauth": "0.9.1", - "jest": "26.2.2" + "jest": "26.3.0" } } diff --git a/packages/oauth/package.json b/packages/oauth/package.json index 478194366..9ba9e64f1 100644 --- a/packages/oauth/package.json +++ b/packages/oauth/package.json @@ -23,12 +23,12 @@ }, "dependencies": { "@accounts/types": "^0.29.0", - "tslib": "2.0.0" + "tslib": "2.0.1" }, "devDependencies": { "@accounts/server": "^0.29.0", "@types/jest": "26.0.9", - "@types/node": "14.0.14", - "jest": "26.2.2" + "@types/node": "14.0.27", + "jest": "26.3.0" } } diff --git a/packages/password/package.json b/packages/password/package.json index 68907833b..e9955a9ee 100644 --- a/packages/password/package.json +++ b/packages/password/package.json @@ -24,17 +24,17 @@ "dependencies": { "@accounts/two-factor": "^0.29.0", "bcryptjs": "^2.4.3", - "lodash": "^4.17.15", - "tslib": "2.0.0" + "lodash": "^4.17.19", + "tslib": "2.0.1" }, "devDependencies": { "@accounts/server": "^0.29.0", "@accounts/types": "^0.29.0", "@types/bcryptjs": "2.4.2", "@types/jest": "26.0.9", - "@types/lodash": "4.14.157", - "@types/node": "14.0.14", - "jest": "26.2.2", + "@types/lodash": "4.14.159", + "@types/node": "14.0.27", + "jest": "26.3.0", "rimraf": "3.0.2" }, "peerDependencies": { diff --git a/packages/rest-client/package.json b/packages/rest-client/package.json index c05a4542d..856c4413e 100644 --- a/packages/rest-client/package.json +++ b/packages/rest-client/package.json @@ -44,9 +44,9 @@ "devDependencies": { "@accounts/client": "^0.29.0", "@types/jest": "26.0.9", - "@types/lodash": "4.14.157", - "@types/node": "14.0.14", - "jest": "26.2.2", + "@types/lodash": "4.14.159", + "@types/node": "14.0.27", + "jest": "26.3.0", "node-fetch": "2.6.0" }, "peerDependencies": { @@ -54,7 +54,7 @@ }, "dependencies": { "@accounts/types": "^0.29.0", - "lodash": "^4.17.15", - "tslib": "2.0.0" + "lodash": "^4.17.19", + "tslib": "2.0.1" } } diff --git a/packages/rest-express/package.json b/packages/rest-express/package.json index ab46f110e..2b13585e8 100644 --- a/packages/rest-express/package.json +++ b/packages/rest-express/package.json @@ -41,19 +41,19 @@ "devDependencies": { "@accounts/password": "^0.29.0", "@accounts/server": "^0.29.0", - "@types/express": "4.17.6", + "@types/express": "4.17.7", "@types/jest": "26.0.9", - "@types/node": "14.0.14", + "@types/node": "14.0.27", "@types/request-ip": "0.0.35", - "jest": "26.2.2" + "jest": "26.3.0" }, "peerDependencies": { "@accounts/server": "^0.19.0" }, "dependencies": { "@accounts/types": "^0.29.0", - "express": "^4.17.0", + "express": "^4.17.1", "request-ip": "^2.1.3", - "tslib": "2.0.0" + "tslib": "2.0.1" } } diff --git a/packages/server/package.json b/packages/server/package.json index 0a7dccb3f..6b46aa430 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -45,19 +45,19 @@ "license": "MIT", "dependencies": { "@accounts/types": "^0.29.0", - "@types/jsonwebtoken": "8.3.9", - "emittery": "0.5.1", + "@types/jsonwebtoken": "8.5.0", + "emittery": "0.7.1", "jsonwebtoken": "8.5.1", "jwt-decode": "2.2.0", - "lodash": "4.17.15", - "tslib": "2.0.0" + "lodash": "4.17.19", + "tslib": "2.0.1" }, "devDependencies": { "@types/jest": "26.0.9", "@types/jwt-decode": "2.2.1", - "@types/lodash": "4.14.157", - "@types/node": "14.0.14", - "jest": "26.2.2", + "@types/lodash": "4.14.159", + "@types/node": "14.0.27", + "jest": "26.3.0", "rimraf": "3.0.2" } } diff --git a/packages/two-factor/package.json b/packages/two-factor/package.json index 55bd1fa32..37df891d1 100644 --- a/packages/two-factor/package.json +++ b/packages/two-factor/package.json @@ -27,15 +27,15 @@ }, "dependencies": { "@accounts/types": "^0.29.0", - "@types/lodash": "^4.14.138", + "@types/lodash": "^4.14.159", "@types/speakeasy": "2.0.2", - "lodash": "^4.17.15", + "lodash": "^4.17.19", "speakeasy": "^2.0.0", - "tslib": "2.0.0" + "tslib": "2.0.1" }, "devDependencies": { "@types/jest": "26.0.9", - "@types/node": "14.0.14", - "jest": "26.2.2" + "@types/node": "14.0.27", + "jest": "26.3.0" } } diff --git a/packages/types/package.json b/packages/types/package.json index 21394eefe..5db4d6088 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -44,12 +44,12 @@ "author": "Elies Lou (Aetherall)", "license": "MIT", "dependencies": { - "tslib": "2.0.0" + "tslib": "2.0.1" }, "devDependencies": { "@types/jest": "26.0.9", - "@types/node": "14.0.14", - "jest": "26.2.2", + "@types/node": "14.0.27", + "jest": "26.3.0", "rimraf": "3.0.2" } } diff --git a/website/docs/contributing.md b/website/docs/contributing.md index 85a6a6ee0..60ff6eb27 100644 --- a/website/docs/contributing.md +++ b/website/docs/contributing.md @@ -23,7 +23,6 @@ The Accounts project was intended - since its inception - to be a community main #### Useful Commands: - Install project dependencies: `yarn` -- Link together all the packages: `yarn setup` - Watch the packages for changes and recompile: `yarn start` - If you want to use the accounts project in your own project, use `yarn link @accounts/` within your project. diff --git a/website/package.json b/website/package.json index e450e580b..3ad15b236 100755 --- a/website/package.json +++ b/website/package.json @@ -30,7 +30,7 @@ ] }, "devDependencies": { - "ts-node": "8.10.1", + "ts-node": "8.10.2", "typedoc": "0.17.6", "typedoc-plugin-markdown": "2.3.1" } diff --git a/yarn.lock b/yarn.lock index af8f6bce3..01dca2d18 100644 --- a/yarn.lock +++ b/yarn.lock @@ -11,10 +11,10 @@ __metadata: dependencies: "@accounts/client": ^0.29.0 "@apollo/client": 3.1.3 - "@types/node": 14.0.14 - graphql: 14.6.0 + "@types/node": 14.0.27 + graphql: 14.7.0 rimraf: 3.0.2 - tslib: 2.0.0 + tslib: 2.0.1 peerDependencies: "@apollo/client": ^3.0.0 languageName: unknown @@ -29,13 +29,13 @@ __metadata: "@accounts/server": ^0.29.0 "@accounts/types": ^0.29.0 "@graphql-modules/core": 0.7.17 - apollo-server: ^2.9.3 - graphql: 14.6.0 + apollo-server: ^2.16.1 + graphql: 14.7.0 graphql-tools: ^5.0.0 jsonwebtoken: ^8.5.1 - lodash: ^4.17.15 + lodash: ^4.17.19 rimraf: 3.0.2 - tslib: 2.0.0 + tslib: 2.0.1 languageName: unknown linkType: soft @@ -46,10 +46,10 @@ __metadata: "@accounts/client": ^0.29.0 "@accounts/types": ^0.29.0 "@types/jest": 26.0.9 - "@types/node": 14.0.14 - jest: 26.2.2 + "@types/node": 14.0.27 + jest: 26.3.0 rimraf: 3.0.2 - tslib: 2.0.0 + tslib: 2.0.1 languageName: unknown linkType: soft @@ -60,14 +60,14 @@ __metadata: "@accounts/types": ^0.29.0 "@types/jest": 26.0.9 "@types/jwt-decode": 2.2.1 - "@types/node": 14.0.14 - jest: 26.2.2 - jest-localstorage-mock: 2.4.2 + "@types/node": 14.0.27 + jest: 26.3.0 + jest-localstorage-mock: 2.4.3 jsonwebtoken: 8.5.1 jwt-decode: 2.2.0 localstorage-polyfill: 1.0.1 rimraf: 3.0.2 - tslib: 2.0.0 + tslib: 2.0.1 languageName: unknown linkType: soft @@ -77,10 +77,10 @@ __metadata: dependencies: "@accounts/types": ^0.29.0 "@types/jest": 26.0.9 - "@types/node": 14.0.14 - jest: 26.2.2 + "@types/node": 14.0.27 + jest: 26.3.0 rimraf: 3.0.2 - tslib: 2.0.0 + tslib: 2.0.1 languageName: unknown linkType: soft @@ -90,9 +90,9 @@ __metadata: dependencies: "@accounts/types": ^0.29.0 "@types/jest": 26.0.9 - "@types/node": 14.0.14 - jest: 26.2.2 - tslib: 2.0.0 + "@types/node": 14.0.27 + jest: 26.3.0 + tslib: 2.0.1 languageName: unknown linkType: soft @@ -114,23 +114,23 @@ __metadata: "@apollo/client": 3.1.3 "@graphql-modules/core": 0.7.17 "@types/body-parser": 1.19.0 - "@types/express": 4.17.6 + "@types/express": 4.17.7 "@types/jest": 26.0.9 - "@types/lodash": 4.14.157 - "@types/mongoose": 5.7.16 - "@types/node": 14.0.14 + "@types/lodash": 4.14.159 + "@types/mongoose": 5.7.36 + "@types/node": 14.0.27 "@types/node-fetch": 2.5.7 - apollo-server: 2.14.4 + apollo-server: 2.16.1 body-parser: 1.19.0 core-js: 3.6.5 express: 4.17.1 - graphql: 14.6.0 - jest: 26.2.2 - jest-localstorage-mock: 2.4.2 - lodash: 4.17.15 - mongoose: 5.9.13 + graphql: 14.7.0 + jest: 26.3.0 + jest-localstorage-mock: 2.4.3 + lodash: 4.17.19 + mongoose: 5.9.28 node-fetch: 2.6.0 - tslib: 2.0.0 + tslib: 2.0.1 typeorm: 0.2.25 languageName: unknown linkType: soft @@ -140,10 +140,10 @@ __metadata: resolution: "@accounts/error@workspace:packages/error" dependencies: "@types/jest": 26.0.9 - "@types/node": 14.0.14 - jest: 26.2.2 + "@types/node": 14.0.27 + jest: 26.3.0 rimraf: 3.0.2 - tslib: 2.0.0 + tslib: 2.0.1 languageName: unknown linkType: soft @@ -153,17 +153,17 @@ __metadata: dependencies: "@accounts/server": ^0.29.0 "@accounts/types": ^0.29.0 - "@types/express": 4.17.6 + "@types/express": 4.17.7 "@types/express-session": 1.17.0 "@types/jest": 26.0.9 - "@types/lodash": 4.14.157 + "@types/lodash": 4.14.159 "@types/request-ip": 0.0.35 express: 4.17.1 express-session: 1.17.1 - jest: 26.2.2 - lodash: ^4.17.15 + jest: 26.3.0 + lodash: ^4.17.19 request-ip: ^2.1.3 - tslib: 2.0.0 + tslib: 2.0.1 peerDependencies: "@accounts/server": ^0.19.0 express: ^4.16.3 @@ -177,9 +177,9 @@ __metadata: dependencies: "@accounts/server": ^0.29.0 "@accounts/types": ^0.29.0 - "@types/jest": 26.0.0 - "@types/node": 12.7.4 - jest: 26.2.2 + "@types/jest": 26.0.9 + "@types/node": 14.0.27 + jest: 26.3.0 otplib: 12.0.1 rimraf: 3.0.2 tslib: 2.0.1 @@ -203,17 +203,17 @@ __metadata: "@graphql-codegen/typescript-resolvers": 1.17.7 "@graphql-codegen/typescript-type-graphql": 1.17.7 "@graphql-modules/core": 0.7.17 - "@graphql-tools/merge": 6.0.11 + "@graphql-tools/merge": 6.0.16 "@types/jest": 26.0.9 "@types/request-ip": 0.0.35 - concurrently: 5.2.0 - graphql: 14.6.0 + concurrently: 5.3.0 + graphql: 14.7.0 graphql-tools: 5.0.0 - jest: 26.2.2 - lodash: 4.17.15 + jest: 26.3.0 + lodash: 4.17.19 request-ip: 2.1.3 - ts-node: 8.10.1 - tslib: 2.0.0 + ts-node: 8.10.2 + tslib: 2.0.1 peerDependencies: "@accounts/password": ^0.28.0 "@accounts/server": ^0.28.0 @@ -235,12 +235,12 @@ __metadata: "@graphql-codegen/typed-document-node": 1.17.8 "@graphql-codegen/typescript": 1.17.7 "@graphql-codegen/typescript-operations": 1.17.7 - "@graphql-typed-document-node/core": 0.0.1 + "@graphql-typed-document-node/core": 3.0.0 "@types/jest": 26.0.9 - graphql: 14.6.0 - jest: 26.2.2 + graphql: 14.7.0 + jest: 26.3.0 lodash: 4.17.19 - tslib: 2.0.0 + tslib: 2.0.1 peerDependencies: graphql: ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 languageName: unknown @@ -253,10 +253,10 @@ __metadata: "@accounts/server": ^0.29.0 "@accounts/types": ^0.29.0 "@types/jest": 26.0.9 - "@types/node": 14.0.14 - jest: 26.2.2 + "@types/node": 14.0.27 + jest: 26.3.0 rimraf: 3.0.2 - tslib: 2.0.0 + tslib: 2.0.1 peerDependencies: "@accounts/server": ^0.29.0 languageName: unknown @@ -269,13 +269,13 @@ __metadata: "@accounts/database-tests": ^0.29.0 "@accounts/types": ^0.29.0 "@types/jest": 26.0.9 - "@types/lodash": 4.14.157 + "@types/lodash": 4.14.159 "@types/mongodb": 3.5.25 - "@types/node": 14.0.14 - jest: 26.2.2 - lodash: ^4.17.15 - mongodb: ^3.4.1 - tslib: 2.0.0 + "@types/node": 14.0.27 + jest: 26.3.0 + lodash: ^4.17.19 + mongodb: ^3.6.0 + tslib: 2.0.1 languageName: unknown linkType: soft @@ -285,12 +285,12 @@ __metadata: dependencies: "@accounts/oauth": ^0.29.0 "@types/jest": 26.0.9 - "@types/node": 14.0.14 + "@types/node": 14.0.27 "@types/request-promise": 4.1.46 - jest: 26.2.2 - request: ^2.88.0 - request-promise: ^4.2.5 - tslib: 2.0.0 + jest: 26.3.0 + request: ^2.88.2 + request-promise: ^4.2.6 + tslib: 2.0.1 languageName: unknown linkType: soft @@ -300,11 +300,11 @@ __metadata: dependencies: "@accounts/oauth": ^0.29.0 "@types/jest": 26.0.9 - "@types/node": 14.0.14 + "@types/node": 14.0.27 "@types/oauth": 0.9.1 - jest: 26.2.2 + jest: 26.3.0 oauth: ^0.9.15 - tslib: 2.0.0 + tslib: 2.0.1 languageName: unknown linkType: soft @@ -315,9 +315,9 @@ __metadata: "@accounts/server": ^0.29.0 "@accounts/types": ^0.29.0 "@types/jest": 26.0.9 - "@types/node": 14.0.14 - jest: 26.2.2 - tslib: 2.0.0 + "@types/node": 14.0.27 + jest: 26.3.0 + tslib: 2.0.1 languageName: unknown linkType: soft @@ -330,13 +330,13 @@ __metadata: "@accounts/types": ^0.29.0 "@types/bcryptjs": 2.4.2 "@types/jest": 26.0.9 - "@types/lodash": 4.14.157 - "@types/node": 14.0.14 + "@types/lodash": 4.14.159 + "@types/node": 14.0.27 bcryptjs: ^2.4.3 - jest: 26.2.2 - lodash: ^4.17.15 + jest: 26.3.0 + lodash: ^4.17.19 rimraf: 3.0.2 - tslib: 2.0.0 + tslib: 2.0.1 peerDependencies: "@accounts/server": ^0.19.0 languageName: unknown @@ -350,14 +350,14 @@ __metadata: "@accounts/types": ^0.29.0 "@types/ioredis": 4.14.9 "@types/jest": 26.0.9 - "@types/lodash": 4.14.157 - "@types/node": 14.0.14 + "@types/lodash": 4.14.159 + "@types/node": 14.0.27 "@types/shortid": 0.0.29 ioredis: ^4.14.1 - jest: 26.2.2 - lodash: ^4.17.15 + jest: 26.3.0 + lodash: ^4.17.19 shortid: ^2.2.15 - tslib: 2.0.0 + tslib: 2.0.1 languageName: unknown linkType: soft @@ -368,12 +368,12 @@ __metadata: "@accounts/client": ^0.29.0 "@accounts/types": ^0.29.0 "@types/jest": 26.0.9 - "@types/lodash": 4.14.157 - "@types/node": 14.0.14 - jest: 26.2.2 - lodash: ^4.17.15 + "@types/lodash": 4.14.159 + "@types/node": 14.0.27 + jest: 26.3.0 + lodash: ^4.17.19 node-fetch: 2.6.0 - tslib: 2.0.0 + tslib: 2.0.1 peerDependencies: "@accounts/client": ^0.19.0 languageName: unknown @@ -386,14 +386,14 @@ __metadata: "@accounts/password": ^0.29.0 "@accounts/server": ^0.29.0 "@accounts/types": ^0.29.0 - "@types/express": 4.17.6 + "@types/express": 4.17.7 "@types/jest": 26.0.9 - "@types/node": 14.0.14 + "@types/node": 14.0.27 "@types/request-ip": 0.0.35 - express: ^4.17.0 - jest: 26.2.2 + express: ^4.17.1 + jest: 26.3.0 request-ip: ^2.1.3 - tslib: 2.0.0 + tslib: 2.0.1 peerDependencies: "@accounts/server": ^0.19.0 languageName: unknown @@ -405,17 +405,17 @@ __metadata: dependencies: "@accounts/types": ^0.29.0 "@types/jest": 26.0.9 - "@types/jsonwebtoken": 8.3.9 + "@types/jsonwebtoken": 8.5.0 "@types/jwt-decode": 2.2.1 - "@types/lodash": 4.14.157 - "@types/node": 14.0.14 - emittery: 0.5.1 - jest: 26.2.2 + "@types/lodash": 4.14.159 + "@types/node": 14.0.27 + emittery: 0.7.1 + jest: 26.3.0 jsonwebtoken: 8.5.1 jwt-decode: 2.2.0 - lodash: 4.17.15 + lodash: 4.17.19 rimraf: 3.0.2 - tslib: 2.0.0 + tslib: 2.0.1 languageName: unknown linkType: soft @@ -425,13 +425,13 @@ __metadata: dependencies: "@accounts/types": ^0.29.0 "@types/jest": 26.0.9 - "@types/lodash": ^4.14.138 - "@types/node": 14.0.14 + "@types/lodash": ^4.14.159 + "@types/node": 14.0.27 "@types/speakeasy": 2.0.2 - jest: 26.2.2 - lodash: ^4.17.15 + jest: 26.3.0 + lodash: ^4.17.19 speakeasy: ^2.0.0 - tslib: 2.0.0 + tslib: 2.0.1 languageName: unknown linkType: soft @@ -442,13 +442,13 @@ __metadata: "@accounts/database-tests": ^0.29.0 "@accounts/types": ^0.29.0 "@types/jest": 26.0.9 - "@types/lodash": 4.14.157 - "@types/node": 14.0.14 - jest: 26.2.2 - lodash: ^4.17.15 - pg: 8.1.0 + "@types/lodash": 4.14.159 + "@types/node": 14.0.27 + jest: 26.3.0 + lodash: ^4.17.19 + pg: 8.3.0 reflect-metadata: ^0.1.13 - tslib: 2.0.0 + tslib: 2.0.1 typeorm: ^0.2.25 languageName: unknown linkType: soft @@ -458,10 +458,10 @@ __metadata: resolution: "@accounts/types@workspace:packages/types" dependencies: "@types/jest": 26.0.9 - "@types/node": 14.0.14 - jest: 26.2.2 + "@types/node": 14.0.27 + jest: 26.3.0 rimraf: 3.0.2 - tslib: 2.0.0 + tslib: 2.0.1 languageName: unknown linkType: soft @@ -726,7 +726,7 @@ __metadata: languageName: node linkType: hard -"@babel/core@npm:7.9.0, @babel/core@npm:^7.0.0, @babel/core@npm:^7.1.0, @babel/core@npm:^7.4.5, @babel/core@npm:^7.7.5": +"@babel/core@npm:7.9.0": version: 7.9.0 resolution: "@babel/core@npm:7.9.0" dependencies: @@ -750,7 +750,7 @@ __metadata: languageName: node linkType: hard -"@babel/core@npm:^7.9.0": +"@babel/core@npm:^7.0.0, @babel/core@npm:^7.1.0, @babel/core@npm:^7.4.5, @babel/core@npm:^7.7.5, @babel/core@npm:^7.9.0": version: 7.11.1 resolution: "@babel/core@npm:7.11.1" dependencies: @@ -1187,7 +1187,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-proposal-nullish-coalescing-operator@npm:7.8.3, @babel/plugin-proposal-nullish-coalescing-operator@npm:^7.8.3": +"@babel/plugin-proposal-nullish-coalescing-operator@npm:7.8.3": version: 7.8.3 resolution: "@babel/plugin-proposal-nullish-coalescing-operator@npm:7.8.3" dependencies: @@ -1199,7 +1199,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-proposal-nullish-coalescing-operator@npm:^7.10.1, @babel/plugin-proposal-nullish-coalescing-operator@npm:^7.10.4": +"@babel/plugin-proposal-nullish-coalescing-operator@npm:^7.10.1, @babel/plugin-proposal-nullish-coalescing-operator@npm:^7.10.4, @babel/plugin-proposal-nullish-coalescing-operator@npm:^7.8.3": version: 7.10.4 resolution: "@babel/plugin-proposal-nullish-coalescing-operator@npm:7.10.4" dependencies: @@ -1211,7 +1211,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-proposal-numeric-separator@npm:7.8.3, @babel/plugin-proposal-numeric-separator@npm:^7.8.3": +"@babel/plugin-proposal-numeric-separator@npm:7.8.3": version: 7.8.3 resolution: "@babel/plugin-proposal-numeric-separator@npm:7.8.3" dependencies: @@ -1223,7 +1223,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-proposal-numeric-separator@npm:^7.10.4": +"@babel/plugin-proposal-numeric-separator@npm:^7.10.4, @babel/plugin-proposal-numeric-separator@npm:^7.8.3": version: 7.10.4 resolution: "@babel/plugin-proposal-numeric-separator@npm:7.10.4" dependencies: @@ -1273,7 +1273,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-proposal-optional-chaining@npm:7.9.0, @babel/plugin-proposal-optional-chaining@npm:^7.9.0": +"@babel/plugin-proposal-optional-chaining@npm:7.9.0": version: 7.9.0 resolution: "@babel/plugin-proposal-optional-chaining@npm:7.9.0" dependencies: @@ -1285,7 +1285,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-proposal-optional-chaining@npm:^7.10.3, @babel/plugin-proposal-optional-chaining@npm:^7.11.0": +"@babel/plugin-proposal-optional-chaining@npm:^7.10.3, @babel/plugin-proposal-optional-chaining@npm:^7.11.0, @babel/plugin-proposal-optional-chaining@npm:^7.9.0": version: 7.11.0 resolution: "@babel/plugin-proposal-optional-chaining@npm:7.11.0" dependencies: @@ -1819,7 +1819,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-react-display-name@npm:7.8.3, @babel/plugin-transform-react-display-name@npm:^7.8.3": +"@babel/plugin-transform-react-display-name@npm:7.8.3": version: 7.8.3 resolution: "@babel/plugin-transform-react-display-name@npm:7.8.3" dependencies: @@ -1830,7 +1830,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-react-display-name@npm:^7.0.0, @babel/plugin-transform-react-display-name@npm:^7.10.4": +"@babel/plugin-transform-react-display-name@npm:^7.0.0, @babel/plugin-transform-react-display-name@npm:^7.10.4, @babel/plugin-transform-react-display-name@npm:^7.8.3": version: 7.10.4 resolution: "@babel/plugin-transform-react-display-name@npm:7.10.4" dependencies: @@ -2287,7 +2287,7 @@ __metadata: languageName: node linkType: hard -"@babel/runtime@npm:^7.0.0, @babel/runtime@npm:^7.1.2, @babel/runtime@npm:^7.3.1, @babel/runtime@npm:^7.3.4, @babel/runtime@npm:^7.4.0, @babel/runtime@npm:^7.4.4, @babel/runtime@npm:^7.4.5, @babel/runtime@npm:^7.5.5, @babel/runtime@npm:^7.7.2, @babel/runtime@npm:^7.8.3, @babel/runtime@npm:^7.8.4, @babel/runtime@npm:^7.8.7, @babel/runtime@npm:^7.9.2": +"@babel/runtime@npm:^7.0.0, @babel/runtime@npm:^7.1.2, @babel/runtime@npm:^7.3.1, @babel/runtime@npm:^7.3.4, @babel/runtime@npm:^7.4.4, @babel/runtime@npm:^7.4.5, @babel/runtime@npm:^7.5.5, @babel/runtime@npm:^7.7.2, @babel/runtime@npm:^7.8.3, @babel/runtime@npm:^7.8.4, @babel/runtime@npm:^7.8.7, @babel/runtime@npm:^7.9.2": version: 7.11.2 resolution: "@babel/runtime@npm:7.11.2" dependencies: @@ -2823,18 +2823,18 @@ __metadata: resolution: "@examples/accounts-boost@workspace:examples/accounts-boost" dependencies: "@accounts/boost": ^0.29.0 - "@graphql-tools/merge": 6.0.11 + "@graphql-tools/merge": 6.0.16 apollo-link-context: 1.0.20 apollo-link-http: 1.5.17 - apollo-server: 2.14.4 - graphql: 14.6.0 + apollo-server: 2.16.1 + graphql: 14.7.0 graphql-tools: 5.0.0 - lodash: 4.17.15 + lodash: 4.17.19 node-fetch: 2.6.0 - nodemon: 2.0.3 - ts-node: 8.10.1 - tslib: 2.0.0 - typescript: 3.8.3 + nodemon: 2.0.4 + ts-node: 8.10.2 + tslib: 2.0.1 + typescript: 3.9.7 languageName: unknown linkType: soft @@ -2849,16 +2849,16 @@ __metadata: "@accounts/rest-express": ^0.29.0 "@accounts/server": ^0.29.0 "@graphql-modules/core": 0.7.17 - "@graphql-tools/merge": 6.0.11 - "@types/mongoose": 5.7.32 - "@types/node": 14.0.13 - apollo-server: 2.16.0 - graphql: 14.6.0 + "@graphql-tools/merge": 6.0.16 + "@types/mongoose": 5.7.36 + "@types/node": 14.0.27 + apollo-server: 2.16.1 + graphql: 14.7.0 lodash: 4.17.19 - mongoose: 5.9.25 + mongoose: 5.9.28 nodemon: 2.0.4 ts-node: 8.10.2 - tslib: 2.0.0 + tslib: 2.0.1 typescript: 3.9.7 languageName: unknown linkType: soft @@ -2873,16 +2873,16 @@ __metadata: "@accounts/typeorm": ^0.29.0 "@accounts/types": ^0.29.0 "@graphql-modules/core": 0.7.17 - "@graphql-tools/merge": 6.0.11 - "@types/node": 14.0.13 - apollo-server: 2.14.4 + "@graphql-tools/merge": 6.0.16 + "@types/node": 14.0.27 + apollo-server: 2.16.1 dotenv: ^8.2.0 - graphql: 14.6.0 - nodemon: 2.0.3 - pg: 8.1.0 - ts-node: 8.10.1 + graphql: 14.7.0 + nodemon: 2.0.4 + pg: 8.3.0 + ts-node: 8.10.2 typeorm: 0.2.25 - typescript: 3.8.3 + typescript: 3.9.7 languageName: unknown linkType: soft @@ -2897,20 +2897,20 @@ __metadata: "@apollo/client": 3.1.3 "@material-ui/core": 4.11.0 "@material-ui/styles": 4.10.0 - "@types/node": 14.0.13 + "@types/node": 14.0.27 "@types/qrcode.react": 1.0.1 - "@types/react": 16.9.43 + "@types/react": 16.9.45 "@types/react-dom": 16.9.8 "@types/react-router": 5.1.8 "@types/react-router-dom": 5.1.5 - graphql: 14.6.0 - graphql-tag: 2.10.4 + graphql: 14.7.0 + graphql-tag: 2.11.0 qrcode.react: 1.0.0 react: 16.13.1 react-dom: 16.13.1 react-router-dom: 5.2.0 react-scripts: 3.4.1 - tslib: 2.0.0 + tslib: 2.0.1 typescript: 3.9.7 languageName: unknown linkType: soft @@ -2922,24 +2922,24 @@ __metadata: "@accounts/client": ^0.29.0 "@accounts/client-password": ^0.29.0 "@accounts/rest-client": ^0.29.0 - "@material-ui/core": 4.9.13 + "@material-ui/core": 4.11.0 "@material-ui/icons": 4.9.1 - "@material-ui/lab": 4.0.0-alpha.50 - "@material-ui/styles": 4.9.13 - "@types/node": 14.0.13 - "@types/qrcode.react": 1.0.0 - "@types/react": 16.9.36 + "@material-ui/lab": 4.0.0-alpha.56 + "@material-ui/styles": 4.10.0 + "@types/node": 14.0.27 + "@types/qrcode.react": 1.0.1 + "@types/react": 16.9.45 "@types/react-dom": 16.9.8 - "@types/react-router": 5.1.7 + "@types/react-router": 5.1.8 "@types/react-router-dom": 5.1.5 - formik: 2.1.4 + formik: 2.1.5 qrcode.react: 1.0.0 react: 16.13.1 react-dom: 16.13.1 - react-router-dom: 5.1.2 + react-router-dom: 5.2.0 react-scripts: 3.4.1 - tslib: 2.0.0 - typescript: 3.7.5 + tslib: 2.0.1 + typescript: 3.9.7 languageName: unknown linkType: soft @@ -2951,15 +2951,15 @@ __metadata: "@accounts/password": ^0.29.0 "@accounts/rest-express": ^0.29.0 "@accounts/server": ^0.29.0 - "@types/node": 14.0.13 + "@types/node": 14.0.27 body-parser: 1.19.0 cors: 2.8.5 express: 4.17.1 - mongoose: 5.9.13 - nodemon: 2.0.3 - ts-node: 8.10.1 - tslib: 2.0.0 - typescript: 3.8.3 + mongoose: 5.9.28 + nodemon: 2.0.4 + ts-node: 8.10.2 + tslib: 2.0.1 + typescript: 3.9.7 languageName: unknown linkType: soft @@ -3405,20 +3405,7 @@ __metadata: languageName: node linkType: hard -"@graphql-tools/merge@npm:6.0.11, @graphql-tools/merge@npm:^6.0.0": - version: 6.0.11 - resolution: "@graphql-tools/merge@npm:6.0.11" - dependencies: - "@graphql-tools/schema": 6.0.11 - "@graphql-tools/utils": 6.0.11 - tslib: ~2.0.0 - peerDependencies: - graphql: ^14.0.0 || ^15.0.0 - checksum: 33d0d0d738077788c10647aa6e3a6c1d35e38f2d72e8c79bd62a32c551ef09618afb21a12a30c4bafcb3921506e33a843da0abd6bd380505276a84517b6063fb - languageName: node - linkType: hard - -"@graphql-tools/merge@npm:6.0.16": +"@graphql-tools/merge@npm:6.0.16, @graphql-tools/merge@npm:^6.0.0": version: 6.0.16 resolution: "@graphql-tools/merge@npm:6.0.16" dependencies: @@ -3477,18 +3464,6 @@ __metadata: languageName: node linkType: hard -"@graphql-tools/schema@npm:6.0.11": - version: 6.0.11 - resolution: "@graphql-tools/schema@npm:6.0.11" - dependencies: - "@graphql-tools/utils": 6.0.11 - tslib: ~2.0.0 - peerDependencies: - graphql: ^14.0.0 || ^15.0.0 - checksum: aa1770ec0bee9dd9c1cfcefa9074dee17acc60d40a8d5c3b06736f1522c3c990c21181364ff8b24efa47fd45ed8d912711224cfdb017cc2407d1e4c59251c009 - languageName: node - linkType: hard - "@graphql-tools/schema@npm:6.0.16": version: 6.0.16 resolution: "@graphql-tools/schema@npm:6.0.16" @@ -3520,18 +3495,6 @@ __metadata: languageName: node linkType: hard -"@graphql-tools/utils@npm:6.0.11": - version: 6.0.11 - resolution: "@graphql-tools/utils@npm:6.0.11" - dependencies: - "@ardatan/aggregate-error": 0.0.1 - camel-case: 4.1.1 - peerDependencies: - graphql: ^14.0.0 || ^15.0.0 - checksum: 5dc40b64f6851f0fe403d8465005c67bbb1380a2819440b3ac7faa441b2fe15de0950436691aac6111358f522f6b09fb1aa550d44e51773a895bf104a977b253 - languageName: node - linkType: hard - "@graphql-tools/utils@npm:6.0.15": version: 6.0.15 resolution: "@graphql-tools/utils@npm:6.0.15" @@ -3571,12 +3534,12 @@ __metadata: languageName: node linkType: hard -"@graphql-typed-document-node/core@npm:0.0.1": - version: 0.0.1 - resolution: "@graphql-typed-document-node/core@npm:0.0.1" +"@graphql-typed-document-node/core@npm:3.0.0": + version: 3.0.0 + resolution: "@graphql-typed-document-node/core@npm:3.0.0" peerDependencies: graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 - checksum: cc5241116bc75b7b867be066a02e1abd3f948aa8b7df44a135e813d66b4b8aaea8bb93ac10f6ea2609876aa6ec156b9e034f7dd0d787a7cab530b556a97c98ae + checksum: ca4ed2ff8919b752e74c490d445b5c33037f6eb580b2fb5e3a227ae13ca7d9b9c2eb7d76592095c4d00708a5c44c6775438ec800f210ea1d4995b273a118519e languageName: node linkType: hard @@ -3705,17 +3668,17 @@ __metadata: languageName: node linkType: hard -"@jest/console@npm:^26.2.0": - version: 26.2.0 - resolution: "@jest/console@npm:26.2.0" +"@jest/console@npm:^26.3.0": + version: 26.3.0 + resolution: "@jest/console@npm:26.3.0" dependencies: - "@jest/types": ^26.2.0 + "@jest/types": ^26.3.0 "@types/node": "*" chalk: ^4.0.0 - jest-message-util: ^26.2.0 - jest-util: ^26.2.0 + jest-message-util: ^26.3.0 + jest-util: ^26.3.0 slash: ^3.0.0 - checksum: e3823e2358f2e4307d9092bb013de5d1de7ae8c636328d35ee991917b1eb8bf4fdd7e97a499024600b06963559392667f3d80886badde531e19f0d0ae4bdd676 + checksum: eb3c6e4a9337eb5009e9af564b985c0eeabf6565e5802ba3a6ee815993e73f8b51fe73f9b607918fb1d146d892926e7b03ef3b07c58ed1843317423850035529 languageName: node linkType: hard @@ -3755,39 +3718,39 @@ __metadata: languageName: node linkType: hard -"@jest/core@npm:^26.2.2": - version: 26.2.2 - resolution: "@jest/core@npm:26.2.2" +"@jest/core@npm:^26.3.0": + version: 26.3.0 + resolution: "@jest/core@npm:26.3.0" dependencies: - "@jest/console": ^26.2.0 - "@jest/reporters": ^26.2.2 - "@jest/test-result": ^26.2.0 - "@jest/transform": ^26.2.2 - "@jest/types": ^26.2.0 + "@jest/console": ^26.3.0 + "@jest/reporters": ^26.3.0 + "@jest/test-result": ^26.3.0 + "@jest/transform": ^26.3.0 + "@jest/types": ^26.3.0 "@types/node": "*" ansi-escapes: ^4.2.1 chalk: ^4.0.0 exit: ^0.1.2 graceful-fs: ^4.2.4 - jest-changed-files: ^26.2.0 - jest-config: ^26.2.2 - jest-haste-map: ^26.2.2 - jest-message-util: ^26.2.0 + jest-changed-files: ^26.3.0 + jest-config: ^26.3.0 + jest-haste-map: ^26.3.0 + jest-message-util: ^26.3.0 jest-regex-util: ^26.0.0 - jest-resolve: ^26.2.2 - jest-resolve-dependencies: ^26.2.2 - jest-runner: ^26.2.2 - jest-runtime: ^26.2.2 - jest-snapshot: ^26.2.2 - jest-util: ^26.2.0 - jest-validate: ^26.2.0 - jest-watcher: ^26.2.0 + jest-resolve: ^26.3.0 + jest-resolve-dependencies: ^26.3.0 + jest-runner: ^26.3.0 + jest-runtime: ^26.3.0 + jest-snapshot: ^26.3.0 + jest-util: ^26.3.0 + jest-validate: ^26.3.0 + jest-watcher: ^26.3.0 micromatch: ^4.0.2 p-each-series: ^2.1.0 rimraf: ^3.0.0 slash: ^3.0.0 strip-ansi: ^6.0.0 - checksum: fbad6ea72be2e7321fb58076c0a6e8bed6d5fa9f472848f1550437388518f903f72a5d3f2a249073a040015250261af8fbc9d5ec1e38776ee7b0f646475c1890 + checksum: dc0c438cb3bd77fa5d6d4f747dea115fd34defa11716cef66e4e2daec22dc625ef987297d5790b3e1121fff19c8227645b2fe39f1b61a8baf73af0097b690967 languageName: node linkType: hard @@ -3803,15 +3766,15 @@ __metadata: languageName: node linkType: hard -"@jest/environment@npm:^26.2.0": - version: 26.2.0 - resolution: "@jest/environment@npm:26.2.0" +"@jest/environment@npm:^26.3.0": + version: 26.3.0 + resolution: "@jest/environment@npm:26.3.0" dependencies: - "@jest/fake-timers": ^26.2.0 - "@jest/types": ^26.2.0 + "@jest/fake-timers": ^26.3.0 + "@jest/types": ^26.3.0 "@types/node": "*" - jest-mock: ^26.2.0 - checksum: f9974385bd47df5a0fee618dafe908ddf8e5abf08d6d0975512a3fb8ef935fcbad3f863f661ebf49313fd716989aed15be7afe05b61f776591da2be9f7768cb6 + jest-mock: ^26.3.0 + checksum: 45ba6a961f87eced71d495edd08e32c2602be3b68db19d70484b4db90882e0f5a557baab350073ef5b61bbaf9d3d4a227a1151aa1c74cf0ed4b04f52190c0f00 languageName: node linkType: hard @@ -3826,28 +3789,28 @@ __metadata: languageName: node linkType: hard -"@jest/fake-timers@npm:^26.2.0": - version: 26.2.0 - resolution: "@jest/fake-timers@npm:26.2.0" +"@jest/fake-timers@npm:^26.3.0": + version: 26.3.0 + resolution: "@jest/fake-timers@npm:26.3.0" dependencies: - "@jest/types": ^26.2.0 + "@jest/types": ^26.3.0 "@sinonjs/fake-timers": ^6.0.1 "@types/node": "*" - jest-message-util: ^26.2.0 - jest-mock: ^26.2.0 - jest-util: ^26.2.0 - checksum: b917001dfa7533e22159f2e3813a2e9933c7e8acac411bd3593700c220c06f49b23956764df28ba1f519f9b1b136ac506eea09a362ef8b2d18b97f3148fac410 + jest-message-util: ^26.3.0 + jest-mock: ^26.3.0 + jest-util: ^26.3.0 + checksum: 9aa553c39dcd6db1a9e2bbab0ff7e42145d6ea01397676dafcb06d60be49e3dc3df90b6da7f24981b0035a5aec1aac4516e0e022696eedf5b89ffb863eedba01 languageName: node linkType: hard -"@jest/globals@npm:^26.2.0": - version: 26.2.0 - resolution: "@jest/globals@npm:26.2.0" +"@jest/globals@npm:^26.3.0": + version: 26.3.0 + resolution: "@jest/globals@npm:26.3.0" dependencies: - "@jest/environment": ^26.2.0 - "@jest/types": ^26.2.0 - expect: ^26.2.0 - checksum: 627008bda51bed3be53babe46ee72c84868b335f6d6898e9bcb59b100ae06c1d7d48f445b8b99c2e2deaa139010d385d24082c8f1b679442eb701e6f64b71e77 + "@jest/environment": ^26.3.0 + "@jest/types": ^26.3.0 + expect: ^26.3.0 + checksum: b6b320d95253bdc8da6cbcfc99087f7ebe3ff32e833fdbfe474fe356b1ef230bf466fa317e4400a2a25443c844b51595d6cf7d471fb84397dc86447c3e5cca0c languageName: node linkType: hard @@ -3880,15 +3843,15 @@ __metadata: languageName: node linkType: hard -"@jest/reporters@npm:^26.2.2": - version: 26.2.2 - resolution: "@jest/reporters@npm:26.2.2" +"@jest/reporters@npm:^26.3.0": + version: 26.3.0 + resolution: "@jest/reporters@npm:26.3.0" dependencies: "@bcoe/v8-coverage": ^0.2.3 - "@jest/console": ^26.2.0 - "@jest/test-result": ^26.2.0 - "@jest/transform": ^26.2.2 - "@jest/types": ^26.2.0 + "@jest/console": ^26.3.0 + "@jest/test-result": ^26.3.0 + "@jest/transform": ^26.3.0 + "@jest/types": ^26.3.0 chalk: ^4.0.0 collect-v8-coverage: ^1.0.0 exit: ^0.1.2 @@ -3899,20 +3862,20 @@ __metadata: istanbul-lib-report: ^3.0.0 istanbul-lib-source-maps: ^4.0.0 istanbul-reports: ^3.0.2 - jest-haste-map: ^26.2.2 - jest-resolve: ^26.2.2 - jest-util: ^26.2.0 - jest-worker: ^26.2.1 + jest-haste-map: ^26.3.0 + jest-resolve: ^26.3.0 + jest-util: ^26.3.0 + jest-worker: ^26.3.0 node-notifier: ^7.0.0 slash: ^3.0.0 source-map: ^0.6.0 string-length: ^4.0.1 terminal-link: ^2.0.0 - v8-to-istanbul: ^4.1.3 + v8-to-istanbul: ^5.0.1 dependenciesMeta: node-notifier: optional: true - checksum: 69be9eea5283c1d8e0432ca55d041efd2e9f6e30d503e6655f03c6334f4d4a7cf19e9e4052568ad656c9d635308ffb3b09201a7376a9f9e222a5b6b1d89ba7c9 + checksum: 7df477392cf339899fe701f633a36df4ed5b1e23d16e2c172737e559d0e8c072c27fc2a9f80f3eb9143b783be061aa2e9a7ab98c6ba4458cced297dec776337d languageName: node linkType: hard @@ -3927,14 +3890,14 @@ __metadata: languageName: node linkType: hard -"@jest/source-map@npm:^26.1.0": - version: 26.1.0 - resolution: "@jest/source-map@npm:26.1.0" +"@jest/source-map@npm:^26.3.0": + version: 26.3.0 + resolution: "@jest/source-map@npm:26.3.0" dependencies: callsites: ^3.0.0 graceful-fs: ^4.2.4 source-map: ^0.6.0 - checksum: f2d1d8cee4a9d859f112e9fcceb4751093d65b41e36e2ec319926a26e9c28f99d7582f4ba73ae9cf5fcf168a103b189fe0cd8dc3a82e6956d067d087d4c4296d + checksum: 99450dfdae9ddc0cd8d25d33d0268ae20ac054026deeef7db20eff46852ca2b04c83f868d25b0f40fba3db88110fdb3abf2d0ca15f4921714b8907e284354824 languageName: node linkType: hard @@ -3949,15 +3912,15 @@ __metadata: languageName: node linkType: hard -"@jest/test-result@npm:^26.2.0": - version: 26.2.0 - resolution: "@jest/test-result@npm:26.2.0" +"@jest/test-result@npm:^26.3.0": + version: 26.3.0 + resolution: "@jest/test-result@npm:26.3.0" dependencies: - "@jest/console": ^26.2.0 - "@jest/types": ^26.2.0 + "@jest/console": ^26.3.0 + "@jest/types": ^26.3.0 "@types/istanbul-lib-coverage": ^2.0.0 collect-v8-coverage: ^1.0.0 - checksum: 64fb226ecbf9da509b541ff96ce507046c221731ec256eab1159de3de19b9bc003af99b6ea78ac4af871243f70532b84feecdf8f78898aa6d297eb9d67ca37c6 + checksum: 0ea27fefe66d75538f3d6c7211a7ba44467f50149141c728b35617de2376d6d1b220265c9a4ce8a6cb397a717153e14b63ccaa12527165f7a8befa0fce737809 languageName: node linkType: hard @@ -3973,16 +3936,16 @@ __metadata: languageName: node linkType: hard -"@jest/test-sequencer@npm:^26.2.2": - version: 26.2.2 - resolution: "@jest/test-sequencer@npm:26.2.2" +"@jest/test-sequencer@npm:^26.3.0": + version: 26.3.0 + resolution: "@jest/test-sequencer@npm:26.3.0" dependencies: - "@jest/test-result": ^26.2.0 + "@jest/test-result": ^26.3.0 graceful-fs: ^4.2.4 - jest-haste-map: ^26.2.2 - jest-runner: ^26.2.2 - jest-runtime: ^26.2.2 - checksum: 13b8e3da503ff7cc5afbdb71abf10c85ebb1250a0c00301d80a9634ffbdf5c418ef56a929cfb9353a9b1e1bc6b64bc54983bfae4dbe2abd13c3e1c56e4ce2ce4 + jest-haste-map: ^26.3.0 + jest-runner: ^26.3.0 + jest-runtime: ^26.3.0 + checksum: 0ffe9d8840fd59e3473dfb164fdab853ff8124a68be436b3ffe95353afd2bab546c9dd5204ee8810d2018f59a8cdc95721c1e2a1f2ed0e78c70d399eff2d5110 languageName: node linkType: hard @@ -4010,26 +3973,26 @@ __metadata: languageName: node linkType: hard -"@jest/transform@npm:^26.2.2": - version: 26.2.2 - resolution: "@jest/transform@npm:26.2.2" +"@jest/transform@npm:^26.3.0": + version: 26.3.0 + resolution: "@jest/transform@npm:26.3.0" dependencies: "@babel/core": ^7.1.0 - "@jest/types": ^26.2.0 + "@jest/types": ^26.3.0 babel-plugin-istanbul: ^6.0.0 chalk: ^4.0.0 convert-source-map: ^1.4.0 fast-json-stable-stringify: ^2.0.0 graceful-fs: ^4.2.4 - jest-haste-map: ^26.2.2 + jest-haste-map: ^26.3.0 jest-regex-util: ^26.0.0 - jest-util: ^26.2.0 + jest-util: ^26.3.0 micromatch: ^4.0.2 pirates: ^4.0.1 slash: ^3.0.0 source-map: ^0.6.1 write-file-atomic: ^3.0.0 - checksum: ac84cc720d4fe59ffc9369414605c54cac1bcf49a51230e49899f62b371f05bd9897b8eac73a212fae90f9555fee0199094aec890269c862d8abe63938e9d450 + checksum: 3ed7f9e4dfa2e5ad96e0d3bd8072fe1591c05fa840ee8c75d84407cb3ea999ea68a132d4a63ee874d02550548a60c658483f89ee8650098a4b71db9d78ffa596 languageName: node linkType: hard @@ -4056,16 +4019,16 @@ __metadata: languageName: node linkType: hard -"@jest/types@npm:^26.2.0": - version: 26.2.0 - resolution: "@jest/types@npm:26.2.0" +"@jest/types@npm:^26.3.0": + version: 26.3.0 + resolution: "@jest/types@npm:26.3.0" dependencies: "@types/istanbul-lib-coverage": ^2.0.0 - "@types/istanbul-reports": ^1.1.1 + "@types/istanbul-reports": ^3.0.0 "@types/node": "*" "@types/yargs": ^15.0.0 chalk: ^4.0.0 - checksum: 369e0123c9451480749fd516645df44e20818054b5cbb7538502751dfe4a88a691441b76df5fb1bda4b7116cb5023bc834141d64ae9d46c240d72417b5ea60a9 + checksum: 151547a8fd46cad58a52fdeedec6a1102c8946bed0f48ae80e12329bcd58b54fd239f43c953f6b076d57abe8ffab25ecda6acc837409e4ae0bcab247847da976 languageName: node linkType: hard @@ -4899,34 +4862,6 @@ __metadata: languageName: node linkType: hard -"@material-ui/core@npm:4.9.13": - version: 4.9.13 - resolution: "@material-ui/core@npm:4.9.13" - dependencies: - "@babel/runtime": ^7.4.4 - "@material-ui/react-transition-group": ^4.3.0 - "@material-ui/styles": ^4.9.13 - "@material-ui/system": ^4.9.13 - "@material-ui/types": ^5.0.1 - "@material-ui/utils": ^4.9.12 - "@types/react-transition-group": ^4.2.0 - clsx: ^1.0.4 - hoist-non-react-statics: ^3.3.2 - popper.js: ^1.16.1-lts - prop-types: ^15.7.2 - react-is: ^16.8.0 - react-transition-group: ^4.3.0 - peerDependencies: - "@types/react": ^16.8.6 - react: ^16.8.0 - react-dom: ^16.8.0 - peerDependenciesMeta: - "@types/react": - optional: true - checksum: 3e0a06f2fe74d46b3fa802712b4c068fbb2f066dfa67c7c53b6fe33ef4ca1955b725900f7649b685a4d17907cca43dcc08e6a5efcb3c0b7fa5f87d4f2d58e3a3 - languageName: node - linkType: hard - "@material-ui/icons@npm:4.9.1": version: 4.9.1 resolution: "@material-ui/icons@npm:4.9.1" @@ -4944,12 +4879,12 @@ __metadata: languageName: node linkType: hard -"@material-ui/lab@npm:4.0.0-alpha.50": - version: 4.0.0-alpha.50 - resolution: "@material-ui/lab@npm:4.0.0-alpha.50" +"@material-ui/lab@npm:4.0.0-alpha.56": + version: 4.0.0-alpha.56 + resolution: "@material-ui/lab@npm:4.0.0-alpha.56" dependencies: "@babel/runtime": ^7.4.4 - "@material-ui/utils": ^4.9.6 + "@material-ui/utils": ^4.10.2 clsx: ^1.0.4 prop-types: ^15.7.2 react-is: ^16.8.0 @@ -4961,26 +4896,11 @@ __metadata: peerDependenciesMeta: "@types/react": optional: true - checksum: ee40ab7895efc6ddb4262da04a6bd1631956c89ae7d61b95e319935635c4f7e669909359cf4a2cd8e0815a49f798212b43eef32be6a2e3e4eaa7849e62351067 - languageName: node - linkType: hard - -"@material-ui/react-transition-group@npm:^4.3.0": - version: 4.3.0 - resolution: "@material-ui/react-transition-group@npm:4.3.0" - dependencies: - "@babel/runtime": ^7.5.5 - dom-helpers: ^5.0.1 - loose-envify: ^1.4.0 - prop-types: ^15.6.2 - peerDependencies: - react: ">=16.6.0" - react-dom: ">=16.6.0" - checksum: 55a7b8d787d7194ac39a249333509ac6c011909bb3f17c15102b1f8b60c4d7c43782f6625861e6c35f8c9348d74a1144009272c0a0f65bced2bca20a625450d1 + checksum: ed04d1f6c3cd926e05b4c6423c16411b6ece41adcb0a40e7a69fd29029628bc164db4579f5158fb1e7b0e26cd37769b7fc28e5a5eb3f2f7147d9c27cb1937256 languageName: node linkType: hard -"@material-ui/styles@npm:4.10.0, @material-ui/styles@npm:^4.10.0, @material-ui/styles@npm:^4.9.13": +"@material-ui/styles@npm:4.10.0, @material-ui/styles@npm:^4.10.0": version: 4.10.0 resolution: "@material-ui/styles@npm:4.10.0" dependencies: @@ -5011,38 +4931,7 @@ __metadata: languageName: node linkType: hard -"@material-ui/styles@npm:4.9.13": - version: 4.9.13 - resolution: "@material-ui/styles@npm:4.9.13" - dependencies: - "@babel/runtime": ^7.4.4 - "@emotion/hash": ^0.8.0 - "@material-ui/types": ^5.0.1 - "@material-ui/utils": ^4.9.6 - clsx: ^1.0.4 - csstype: ^2.5.2 - hoist-non-react-statics: ^3.3.2 - jss: ^10.0.3 - jss-plugin-camel-case: ^10.0.3 - jss-plugin-default-unit: ^10.0.3 - jss-plugin-global: ^10.0.3 - jss-plugin-nested: ^10.0.3 - jss-plugin-props-sort: ^10.0.3 - jss-plugin-rule-value-function: ^10.0.3 - jss-plugin-vendor-prefixer: ^10.0.3 - prop-types: ^15.7.2 - peerDependencies: - "@types/react": ^16.8.6 - react: ^16.8.0 - react-dom: ^16.8.0 - peerDependenciesMeta: - "@types/react": - optional: true - checksum: 23cb49be5314886f90b856ca81d48aa13ba90c845f471b20dde1aa954c90b1d78a270736d44f282f3efa52cca00b79555c347d372a4f00fd443ba4593dffb9ec - languageName: node - linkType: hard - -"@material-ui/system@npm:^4.9.13, @material-ui/system@npm:^4.9.14": +"@material-ui/system@npm:^4.9.14": version: 4.9.14 resolution: "@material-ui/system@npm:4.9.14" dependencies: @@ -5061,7 +4950,7 @@ __metadata: languageName: node linkType: hard -"@material-ui/types@npm:^5.0.1, @material-ui/types@npm:^5.1.0": +"@material-ui/types@npm:^5.1.0": version: 5.1.0 resolution: "@material-ui/types@npm:5.1.0" peerDependencies: @@ -5073,7 +4962,7 @@ __metadata: languageName: node linkType: hard -"@material-ui/utils@npm:^4.10.2, @material-ui/utils@npm:^4.9.12, @material-ui/utils@npm:^4.9.6": +"@material-ui/utils@npm:^4.10.2, @material-ui/utils@npm:^4.9.6": version: 4.10.2 resolution: "@material-ui/utils@npm:4.10.2" dependencies: @@ -5917,19 +5806,7 @@ __metadata: languageName: node linkType: hard -"@types/express@npm:*, @types/express@npm:4.17.6": - version: 4.17.6 - resolution: "@types/express@npm:4.17.6" - dependencies: - "@types/body-parser": "*" - "@types/express-serve-static-core": "*" - "@types/qs": "*" - "@types/serve-static": "*" - checksum: 45e31c66a048bfb8ddfb28f9c7f448f89eb8667132dc13f0e35397d5e4df05796f920a114bb774ba910bb3795a18d17a3ea8ae6aaf4d0d2e6b6c5622866f21d0 - languageName: node - linkType: hard - -"@types/express@npm:4.17.7": +"@types/express@npm:*, @types/express@npm:4.17.7": version: 4.17.7 resolution: "@types/express@npm:4.17.7" dependencies: @@ -6055,13 +5932,12 @@ __metadata: languageName: node linkType: hard -"@types/jest@npm:26.0.0": - version: 26.0.0 - resolution: "@types/jest@npm:26.0.0" +"@types/istanbul-reports@npm:^3.0.0": + version: 3.0.0 + resolution: "@types/istanbul-reports@npm:3.0.0" dependencies: - jest-diff: ^25.2.1 - pretty-format: ^25.2.1 - checksum: 6c482e91e8ac3850a1db50d086900c810951eab7514d6b705a616934afd362f606b638a2967edad1ff716aa2ec7cc7631f68774fe9c19e3576ceb90c8df68f7b + "@types/istanbul-lib-report": "*" + checksum: 8aee794ea2e8065aa83e0a1017420068d10110f5e67f8473f5751e74462509306c451f79db3856e6848507519bf1d4de7d101daede6539701cc4d74b4646acd9 languageName: node linkType: hard @@ -6096,16 +5972,7 @@ __metadata: languageName: node linkType: hard -"@types/jsonwebtoken@npm:8.3.9": - version: 8.3.9 - resolution: "@types/jsonwebtoken@npm:8.3.9" - dependencies: - "@types/node": "*" - checksum: 71a1fb7334ec2793cf5565379e2450cfe0e8f4f85ae664acff47dc1fa548ea0c3b68f20d705645b4783c6d33421ff468151aec5c75a85c58cd53a31fe4640596 - languageName: node - linkType: hard - -"@types/jsonwebtoken@npm:^8.5.0": +"@types/jsonwebtoken@npm:8.5.0, @types/jsonwebtoken@npm:^8.5.0": version: 8.5.0 resolution: "@types/jsonwebtoken@npm:8.5.0" dependencies: @@ -6161,14 +6028,7 @@ __metadata: languageName: node linkType: hard -"@types/lodash@npm:4.14.157": - version: 4.14.157 - resolution: "@types/lodash@npm:4.14.157" - checksum: ea8d890a4d78f4690f9d8e5cb03f3581e8ea59047696e2c2114087ec471e891b3ce683e5344c9c15ea7bd9730b79e5fd808b3eff80a01741503ea59922c2bb83 - languageName: node - linkType: hard - -"@types/lodash@npm:^4.14.138": +"@types/lodash@npm:4.14.159, @types/lodash@npm:^4.14.159": version: 4.14.159 resolution: "@types/lodash@npm:4.14.159" checksum: 15fc1b690916aec2e169327759fbc71b0cb25ca0cd0003c4d20d2e5b4ed14b7bc2feb2835d643e0335eabc1536e7c11b499de591eb794fbb764523cb06c66eee @@ -6222,23 +6082,13 @@ __metadata: languageName: node linkType: hard -"@types/mongoose@npm:5.7.16": - version: 5.7.16 - resolution: "@types/mongoose@npm:5.7.16" +"@types/mongoose@npm:5.7.36": + version: 5.7.36 + resolution: "@types/mongoose@npm:5.7.36" dependencies: "@types/mongodb": "*" "@types/node": "*" - checksum: f75388f755ae80ded172699f9c3d0a2cdf1e88c50dbf80477982b8a2cadd736c8c040124e52a349d77112309eda3d9770dd73b27d7b6b937e6ff24f0cce7b80d - languageName: node - linkType: hard - -"@types/mongoose@npm:5.7.32": - version: 5.7.32 - resolution: "@types/mongoose@npm:5.7.32" - dependencies: - "@types/mongodb": "*" - "@types/node": "*" - checksum: f2916fc06dea343cfb9f110b891bd1cbd5cf6fe4db4be6cc73cc6e06ce4a2a7d58a5a1eda8944016a2cc29c6175f0aa551a074da8524d4f91588ab87ed09aac5 + checksum: 8d83e182bcd139f013e5419f8ad4c65507c0cdd4765068629d026ea274cc6894d962e509033071822f36147946554a8f7c905e24f2372791cd7efd7596915bc9 languageName: node linkType: hard @@ -6252,24 +6102,10 @@ __metadata: languageName: node linkType: hard -"@types/node@npm:*, @types/node@npm:14.0.14, @types/node@npm:>= 8": - version: 14.0.14 - resolution: "@types/node@npm:14.0.14" - checksum: 0a2072aa7de32e6535ce6bc7383965fc0a4b7bbf6d76f69027db72e86381921c820a8a2173f75fa210d9fb3286c707079d3804ef33c76a065bcb890858e50ee9 - languageName: node - linkType: hard - -"@types/node@npm:12.7.4": - version: 12.7.4 - resolution: "@types/node@npm:12.7.4" - checksum: ccafdc6e77ab785b6b7f3caae7ca58a72b7f8e281b780bb4d29827ac6a471337416138283df08d4f9932696b03bb2fb8072d10ff6a3c941eac3d59043a17060c - languageName: node - linkType: hard - -"@types/node@npm:14.0.13": - version: 14.0.13 - resolution: "@types/node@npm:14.0.13" - checksum: 2f2be6f7f1a916b0f4d58949bd934a8e41c0dcb15c493c17c3eaf78da3065c09650030f0dfe2e8c11880d597ee001d7cd925129218037fdb4432e80f7d895673 +"@types/node@npm:*, @types/node@npm:14.0.27, @types/node@npm:>= 8": + version: 14.0.27 + resolution: "@types/node@npm:14.0.27" + checksum: 54ecf408eb94f44685e12ef395d8d9d5789cb9e209f171153b6b951272af6b8da099778d09d66454aa5d35ce246f3922ebd7476ed768bf3bd4267306c12a6703 languageName: node linkType: hard @@ -6331,15 +6167,6 @@ __metadata: languageName: node linkType: hard -"@types/qrcode.react@npm:1.0.0": - version: 1.0.0 - resolution: "@types/qrcode.react@npm:1.0.0" - dependencies: - "@types/react": "*" - checksum: f2605dcac9f5c047c923cb50f5b1ffcf297568f5559d8a07ec2e838b61f722a6571a42f38595bc9ae233f024d200fd7428ab3eeb65a18be093773a4cb247a611 - languageName: node - linkType: hard - "@types/qrcode.react@npm:1.0.1": version: 1.0.1 resolution: "@types/qrcode.react@npm:1.0.1" @@ -6393,16 +6220,6 @@ __metadata: languageName: node linkType: hard -"@types/react-router@npm:5.1.7": - version: 5.1.7 - resolution: "@types/react-router@npm:5.1.7" - dependencies: - "@types/history": "*" - "@types/react": "*" - checksum: b8cae75e5fb6918698929db4c2609c7f4c2c9616f2c9a3f2b7609732298f4d35d104b756e03c1574ba19b1505ca9bb56f61372a40b4e08e0324174e00dc77071 - languageName: node - linkType: hard - "@types/react-transition-group@npm:^4.2.0": version: 4.4.0 resolution: "@types/react-transition-group@npm:4.4.0" @@ -6412,7 +6229,7 @@ __metadata: languageName: node linkType: hard -"@types/react@npm:*": +"@types/react@npm:*, @types/react@npm:16.9.45": version: 16.9.45 resolution: "@types/react@npm:16.9.45" dependencies: @@ -6422,26 +6239,6 @@ __metadata: languageName: node linkType: hard -"@types/react@npm:16.9.36": - version: 16.9.36 - resolution: "@types/react@npm:16.9.36" - dependencies: - "@types/prop-types": "*" - csstype: ^2.2.0 - checksum: 63731d81fcd0407ea17f265aa042bbf01f208798ca773e1a158ccb721798cffb4b398cc1c098fe8a71ff053601a51171bb607c3ff2ba14e1ff063aefe94f08cd - languageName: node - linkType: hard - -"@types/react@npm:16.9.43": - version: 16.9.43 - resolution: "@types/react@npm:16.9.43" - dependencies: - "@types/prop-types": "*" - csstype: ^2.2.0 - checksum: b9d4491463ab013e0752bf6f99bd578f91504f74dfd1ebd7fbceebbdffe89762b040494a78403e249bb72d1645d2784f844890e7b1acdb3634432533ff9732fb - languageName: node - linkType: hard - "@types/request-ip@npm:0.0.35": version: 0.0.35 resolution: "@types/request-ip@npm:0.0.35" @@ -6625,11 +6422,11 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/eslint-plugin@npm:3.7.0": - version: 3.7.0 - resolution: "@typescript-eslint/eslint-plugin@npm:3.7.0" +"@typescript-eslint/eslint-plugin@npm:3.8.0": + version: 3.8.0 + resolution: "@typescript-eslint/eslint-plugin@npm:3.8.0" dependencies: - "@typescript-eslint/experimental-utils": 3.7.0 + "@typescript-eslint/experimental-utils": 3.8.0 debug: ^4.1.1 functional-red-black-tree: ^1.0.1 regexpp: ^3.0.0 @@ -6642,7 +6439,7 @@ __metadata: peerDependenciesMeta: typescript: optional: true - checksum: eb13dab2b1e2a422080e5b0e57244a9de4ce09ac9c4b55e26006f17fec85fd65af36c57d634c7ab0d7cd82092b32c711cee93fc0a1b7baa31c04578320234ca4 + checksum: eedb39dbed67a6db875d247de498404a5dfdf3c19d6146be18ad4f7823288ab4c4a49b41094ae7ff3824378b1b36b02f4c1851c79cf08d1f89b3278fb729b521 languageName: node linkType: hard @@ -6679,29 +6476,29 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/experimental-utils@npm:3.7.0": - version: 3.7.0 - resolution: "@typescript-eslint/experimental-utils@npm:3.7.0" +"@typescript-eslint/experimental-utils@npm:3.8.0": + version: 3.8.0 + resolution: "@typescript-eslint/experimental-utils@npm:3.8.0" dependencies: "@types/json-schema": ^7.0.3 - "@typescript-eslint/types": 3.7.0 - "@typescript-eslint/typescript-estree": 3.7.0 + "@typescript-eslint/types": 3.8.0 + "@typescript-eslint/typescript-estree": 3.8.0 eslint-scope: ^5.0.0 eslint-utils: ^2.0.0 peerDependencies: eslint: "*" - checksum: 5c83b89902b2659facf8eeac47da1344b9984ad9fb1f790f89793433f23cf5fe493f64832fb1db70db1bd60ad632b9962d5c2308b9960f6ee2948a3115e1fa12 + checksum: 6403f33cf6e68cd86cc9f8363a8e414bf5be5b5a31917dae0cc6078dac41563aaf199f696b3d652160b2f347f83584f6309ffff2dd2af83d6f18d50783bfcd30 languageName: node linkType: hard -"@typescript-eslint/parser@npm:3.7.0": - version: 3.7.0 - resolution: "@typescript-eslint/parser@npm:3.7.0" +"@typescript-eslint/parser@npm:3.8.0": + version: 3.8.0 + resolution: "@typescript-eslint/parser@npm:3.8.0" dependencies: "@types/eslint-visitor-keys": ^1.0.0 - "@typescript-eslint/experimental-utils": 3.7.0 - "@typescript-eslint/types": 3.7.0 - "@typescript-eslint/typescript-estree": 3.7.0 + "@typescript-eslint/experimental-utils": 3.8.0 + "@typescript-eslint/types": 3.8.0 + "@typescript-eslint/typescript-estree": 3.8.0 eslint-visitor-keys: ^1.1.0 peerDependencies: eslint: ^5.0.0 || ^6.0.0 || ^7.0.0 @@ -6709,7 +6506,7 @@ __metadata: peerDependenciesMeta: typescript: optional: true - checksum: b34e5240ed78c283fb348733e590308debd9e7190dfc598e2a189e6e0d2eda952b1f2821a9ba2b41eb5e91217b49601246962bee1599e2dd02a74ef9f466b791 + checksum: b1cf09ac2e6c9dfd18c5e480e6a8a01d8376b059a985ced616fd92039ff2cd4db9a5e0c86069e8cb3ae10ef65bd63ea4fc8fe309875ffdd985ef583366953318 languageName: node linkType: hard @@ -6731,10 +6528,10 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/types@npm:3.7.0": - version: 3.7.0 - resolution: "@typescript-eslint/types@npm:3.7.0" - checksum: f484d333d000f529858369a1a87afcb403c9b1412eb25cd66560f28f9bb71d4f53372353e06486a0128ebb91ac83fff24537ea83cd8f39d486b54411d8538160 +"@typescript-eslint/types@npm:3.8.0": + version: 3.8.0 + resolution: "@typescript-eslint/types@npm:3.8.0" + checksum: e6eaaccda7abbabbc1e2fb18b7a7aaef326bd33ed984ab9140afa7a8dd967a898290042c50f32f01b53cd417d1f0e5081d2f0582c760f09cf3cc9f262cbe77e0 languageName: node linkType: hard @@ -6758,12 +6555,12 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/typescript-estree@npm:3.7.0": - version: 3.7.0 - resolution: "@typescript-eslint/typescript-estree@npm:3.7.0" +"@typescript-eslint/typescript-estree@npm:3.8.0": + version: 3.8.0 + resolution: "@typescript-eslint/typescript-estree@npm:3.8.0" dependencies: - "@typescript-eslint/types": 3.7.0 - "@typescript-eslint/visitor-keys": 3.7.0 + "@typescript-eslint/types": 3.8.0 + "@typescript-eslint/visitor-keys": 3.8.0 debug: ^4.1.1 glob: ^7.1.6 is-glob: ^4.0.1 @@ -6775,16 +6572,16 @@ __metadata: peerDependenciesMeta: typescript: optional: true - checksum: d9ee7fadba54eaba6736a227614048df2d19ba9969058b3ddbe018136098edc24fd715441cb2b55cb6398aba3dd3d872ee65d98328223dda3849c9cd29bc8ea8 + checksum: 2e7948abe9ea112fdc0000a535d01ea8755d213c6c6961d8a178ef107239ce70d1502e31593d868603d6d3f3a4644c5dc906b89408cc9e46dac8dae68d66db82 languageName: node linkType: hard -"@typescript-eslint/visitor-keys@npm:3.7.0": - version: 3.7.0 - resolution: "@typescript-eslint/visitor-keys@npm:3.7.0" +"@typescript-eslint/visitor-keys@npm:3.8.0": + version: 3.8.0 + resolution: "@typescript-eslint/visitor-keys@npm:3.8.0" dependencies: eslint-visitor-keys: ^1.1.0 - checksum: 62212d8ccbea49dea5dca17ade8ab0eed64f94023f5b337a14c8f6a74cea8533d92cd09abd197abcb8e30924779adda88135732d85e8392e0007992ee11ee65c + checksum: cb1252b3f0f4c912a0035be264b33323c93d156da178e202b5ef339e6e3ea334f2c9c6d373eb29eb46979240dc4e4c60af4e124c998130b41fe6aa7473bcda1d languageName: node linkType: hard @@ -7249,7 +7046,7 @@ __metadata: docusaurus-plugin-fathom: 1.1.0 react: 16.13.1 react-dom: 16.13.1 - ts-node: 8.10.1 + ts-node: 8.10.2 typedoc: 0.17.6 typedoc-plugin-markdown: 2.3.1 languageName: unknown @@ -7753,7 +7550,7 @@ __metadata: languageName: node linkType: hard -"apollo-server-core@npm:^2.14.4, apollo-server-core@npm:^2.16.0, apollo-server-core@npm:^2.16.1": +"apollo-server-core@npm:^2.16.1": version: 2.16.1 resolution: "apollo-server-core@npm:2.16.1" dependencies: @@ -7804,7 +7601,7 @@ __metadata: languageName: node linkType: hard -"apollo-server-express@npm:^2.14.4, apollo-server-express@npm:^2.16.0, apollo-server-express@npm:^2.16.1": +"apollo-server-express@npm:^2.16.1": version: 2.16.1 resolution: "apollo-server-express@npm:2.16.1" dependencies: @@ -7854,37 +7651,7 @@ __metadata: languageName: node linkType: hard -"apollo-server@npm:2.14.4": - version: 2.14.4 - resolution: "apollo-server@npm:2.14.4" - dependencies: - apollo-server-core: ^2.14.4 - apollo-server-express: ^2.14.4 - express: ^4.0.0 - graphql-subscriptions: ^1.0.0 - graphql-tools: ^4.0.0 - peerDependencies: - graphql: ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 - checksum: 55cd245e2bb5a6785b479fdc60a1135784d677137a2266024db04719a92d9a26df9f8e340da9bf66dfd7e44fb53897e17c2672cbbef6f130e0a1614d879e529e - languageName: node - linkType: hard - -"apollo-server@npm:2.16.0": - version: 2.16.0 - resolution: "apollo-server@npm:2.16.0" - dependencies: - apollo-server-core: ^2.16.0 - apollo-server-express: ^2.16.0 - express: ^4.0.0 - graphql-subscriptions: ^1.0.0 - graphql-tools: ^4.0.0 - peerDependencies: - graphql: ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 - checksum: d1f69bb02db8c84564b3294508e2ab39adca03ae4e25ea82e3a90a4638c22350596c3f8088b61150ce50d3f5c6dfcefeba8bd4f6911e9f5a3ed135a0dbf33095 - languageName: node - linkType: hard - -"apollo-server@npm:^2.9.3": +"apollo-server@npm:2.16.1, apollo-server@npm:^2.16.1": version: 2.16.1 resolution: "apollo-server@npm:2.16.1" dependencies: @@ -8381,21 +8148,21 @@ __metadata: languageName: node linkType: hard -"babel-jest@npm:^26.2.2": - version: 26.2.2 - resolution: "babel-jest@npm:26.2.2" +"babel-jest@npm:^26.3.0": + version: 26.3.0 + resolution: "babel-jest@npm:26.3.0" dependencies: - "@jest/transform": ^26.2.2 - "@jest/types": ^26.2.0 + "@jest/transform": ^26.3.0 + "@jest/types": ^26.3.0 "@types/babel__core": ^7.1.7 babel-plugin-istanbul: ^6.0.0 - babel-preset-jest: ^26.2.0 + babel-preset-jest: ^26.3.0 chalk: ^4.0.0 graceful-fs: ^4.2.4 slash: ^3.0.0 peerDependencies: "@babel/core": ^7.0.0 - checksum: 3f6abe43220c125805e6ff51b395050a93981f159ad7ea4caf291c88e07b162ee11318a80ba661bff0aa75fe910dbc45339a0d2357abe6368576c15e3709910b + checksum: 8960dd73e3c5e13227b7abe00c9f1858fdf73fb6894ab04ec3797572125afd4e5dfdd1f70aca84811cd0f762927ef85a7b77dca87013d0d51b2f4486cecefb26 languageName: node linkType: hard @@ -8553,7 +8320,7 @@ __metadata: languageName: node linkType: hard -"babel-preset-current-node-syntax@npm:^0.1.2": +"babel-preset-current-node-syntax@npm:^0.1.3": version: 0.1.3 resolution: "babel-preset-current-node-syntax@npm:0.1.3" dependencies: @@ -8623,15 +8390,15 @@ __metadata: languageName: node linkType: hard -"babel-preset-jest@npm:^26.2.0": - version: 26.2.0 - resolution: "babel-preset-jest@npm:26.2.0" +"babel-preset-jest@npm:^26.3.0": + version: 26.3.0 + resolution: "babel-preset-jest@npm:26.3.0" dependencies: babel-plugin-jest-hoist: ^26.2.0 - babel-preset-current-node-syntax: ^0.1.2 + babel-preset-current-node-syntax: ^0.1.3 peerDependencies: "@babel/core": ^7.0.0 - checksum: c0a4347c78a902406544934df60d4cfb868cc3db16543cc2cf392bdbec52809ed96b1040b21aa35dfde1d33947540f7107070f90588bce939536d6264c464c7d + checksum: 0048f763e9cb9c5df778da04883d8791a6b3bace45fed9186a3689ab9bd8d3644372dada3aafa9000f0e3c20690069348350cbeba3025ab3ae6feb5f47aef673 languageName: node linkType: hard @@ -10189,9 +9956,9 @@ __metadata: languageName: node linkType: hard -"concurrently@npm:5.2.0": - version: 5.2.0 - resolution: "concurrently@npm:5.2.0" +"concurrently@npm:5.3.0": + version: 5.3.0 + resolution: "concurrently@npm:5.3.0" dependencies: chalk: ^2.4.2 date-fns: ^2.0.1 @@ -10204,7 +9971,7 @@ __metadata: yargs: ^13.3.0 bin: concurrently: bin/concurrently.js - checksum: 3fd4d40a286fee797db0cb04845a13bf6c05b1fffed357ecc61a57e4acb8a0b5b085ae2828aefa52a87d0292eb61e2bdc24ef15a77bc44db4b1db59d1b90ba30 + checksum: c46bb460ea0fdf1a15232d84b6122e1ec56655043c154d2be70375ab6eafe04a9224d0da35af5bf190e09d85343bda7a670a886cc67e678fabc4996e9f41650f languageName: node linkType: hard @@ -10334,18 +10101,18 @@ __metadata: languageName: node linkType: hard -"conventional-changelog-cli@npm:2.0.34": - version: 2.0.34 - resolution: "conventional-changelog-cli@npm:2.0.34" +"conventional-changelog-cli@npm:2.0.35": + version: 2.0.35 + resolution: "conventional-changelog-cli@npm:2.0.35" dependencies: add-stream: ^1.0.0 - conventional-changelog: ^3.1.21 + conventional-changelog: ^3.1.22 lodash: ^4.17.15 meow: ^7.0.0 tempfile: ^3.0.0 bin: conventional-changelog: cli.js - checksum: 4ca4bf2d7f814a250580f4e59209c253fdfffe130ef83a7c2a6481b5505a66fa91ce95cbe7a1680b6ca4aad41f6471b4fe430aafec48a7201e5a56ae89e3eaab + checksum: 1ff57e7ed3e0802f33c7e671ab159a5c4b1d4b1995d41b531ff515469b3c1a9f12d17d8dd1f831cb4a52e52677f8481c88b42ec1d11ee0e23d10c02d26187efd languageName: node linkType: hard @@ -10486,7 +10253,7 @@ __metadata: languageName: node linkType: hard -"conventional-changelog@npm:^3.1.21": +"conventional-changelog@npm:^3.1.22": version: 3.1.22 resolution: "conventional-changelog@npm:3.1.22" dependencies: @@ -11159,7 +10926,7 @@ __metadata: languageName: node linkType: hard -"csstype@npm:^2.2.0, csstype@npm:^2.5.2, csstype@npm:^2.6.5": +"csstype@npm:^2.5.2, csstype@npm:^2.6.5": version: 2.6.13 resolution: "csstype@npm:2.6.13" checksum: 0a84ef4b068e464039ee4cc79e621a38b4b8b5c683fd12d42dbb810e6457ac454c3c7e578e4d327f958fc563fc03aec0e74b57180abd5804d6e2590ae3cf7086 @@ -11695,10 +11462,10 @@ __metadata: languageName: node linkType: hard -"diff-sequences@npm:^26.0.0": - version: 26.0.0 - resolution: "diff-sequences@npm:26.0.0" - checksum: 0b5fdd1803e9d5f99e25ae28e22d48e17eabddfbf398ec74e6695777530778ef6bd9c9f46377a9f332ba9a0e6f2b7be45a54cd5b86e26f7514543d8d27f2d904 +"diff-sequences@npm:^26.3.0": + version: 26.3.0 + resolution: "diff-sequences@npm:26.3.0" + checksum: 8d15e420a34976858cd7e867868e9baca8c5513d97530fd27eaf54ba72de92fc9763b9261c321efdb2e66feec55074b55b198815ad37f038d5d183fe094cb751 languageName: node linkType: hard @@ -11830,17 +11597,7 @@ __metadata: languageName: node linkType: hard -"dom-serializer@npm:0": - version: 0.2.2 - resolution: "dom-serializer@npm:0.2.2" - dependencies: - domelementtype: ^2.0.1 - entities: ^2.0.0 - checksum: 598e05e71b8cdb03424393c0631818b978b9fee2dd18d0215a9ee97a6dee86bddd1dcfae4609c173185a9f1bcde24d4a87e1f0d512d66b76536b21fc3f34fc03 - languageName: node - linkType: hard - -"dom-serializer@npm:~0.1.0": +"dom-serializer@npm:0, dom-serializer@npm:~0.1.0": version: 0.1.1 resolution: "dom-serializer@npm:0.1.1" dependencies: @@ -11864,13 +11621,6 @@ __metadata: languageName: node linkType: hard -"domelementtype@npm:^2.0.1": - version: 2.0.1 - resolution: "domelementtype@npm:2.0.1" - checksum: 9ddda35625a244de9a4832b1cf861f80e146faf6f0e70efe5a88c2c54c34e29e745f7048992dadc3af91c031abe035782f4dc16e6e7862eff6e80bd7c79327df - languageName: node - linkType: hard - "domexception@npm:^1.0.1": version: 1.0.1 resolution: "domexception@npm:1.0.1" @@ -12055,14 +11805,7 @@ __metadata: languageName: node linkType: hard -"emittery@npm:0.5.1": - version: 0.5.1 - resolution: "emittery@npm:0.5.1" - checksum: f972aacc49c041002b0d2b2f64f62c3f492a7068c863bc5d86bcf4b749ebef2c6f93dc9765f4d73b627ae9f926474be0ea4485c4ae88219ebb7eca923148a3f7 - languageName: node - linkType: hard - -"emittery@npm:^0.7.1": +"emittery@npm:0.7.1, emittery@npm:^0.7.1": version: 0.7.1 resolution: "emittery@npm:0.7.1" checksum: 917b0995126e004ddf175e7d0a74ae8608083846c3f3608e964bf13caba220a003b7455ced5bf813a40e977605be48e53c74f6150fbe587a47ef6b985b8a447e @@ -12163,13 +11906,6 @@ __metadata: languageName: node linkType: hard -"entities@npm:^2.0.0": - version: 2.0.3 - resolution: "entities@npm:2.0.3" - checksum: 02dfe1fbf531dd667420ff4e963ddc049203471ba8ad2873655303aff4cf65f27823effb397521af4d58b5609d33fc0492b0cc073c8374f3bbe6d3b5bcec1a42 - languageName: node - linkType: hard - "env-paths@npm:^2.2.0": version: 2.2.0 resolution: "env-paths@npm:2.2.0" @@ -12446,14 +12182,14 @@ __metadata: languageName: node linkType: hard -"eslint-plugin-jest@npm:23.18.0": - version: 23.18.0 - resolution: "eslint-plugin-jest@npm:23.18.0" +"eslint-plugin-jest@npm:23.20.0": + version: 23.20.0 + resolution: "eslint-plugin-jest@npm:23.20.0" dependencies: "@typescript-eslint/experimental-utils": ^2.5.0 peerDependencies: eslint: ">=5" - checksum: 56bb63ff745c228288407e820369587b88bb47077139f425892a3629591c5e0d28372a17cfb976e2413b748521b01df05bde196017f9dcdd79902a182828b96b + checksum: 2f3b875346cad48925c306044482590fa35231ec80bf74ff5d5137a722ec4186430e23c13ee318b978c0b2f3264db6f965bf469b2e6c7c8b72c86ca6560e1211 languageName: node linkType: hard @@ -12564,9 +12300,9 @@ __metadata: languageName: node linkType: hard -"eslint@npm:7.5.0": - version: 7.5.0 - resolution: "eslint@npm:7.5.0" +"eslint@npm:7.6.0": + version: 7.6.0 + resolution: "eslint@npm:7.6.0" dependencies: "@babel/code-frame": ^7.0.0 ajv: ^6.10.0 @@ -12606,7 +12342,7 @@ __metadata: v8-compile-cache: ^2.0.3 bin: eslint: bin/eslint.js - checksum: 5a65f133db997f39e48082636496e11db168c7385839111b2ecbb9d4fa16d9eaeae9a88f0317ddcc5118fe388c2907ab0f302c752fb36e56ace6e3660070ea42 + checksum: 1b73da24232b5796a84caac4d01e39fecc6b89690e0c27b33570f898cb7f6b5d41ed255db9d8880d2eb85cda03d2379d6667abdb8a2d05c45fd17abc0beca8a6 languageName: node linkType: hard @@ -12892,17 +12628,17 @@ __metadata: languageName: node linkType: hard -"expect@npm:^26.2.0": - version: 26.2.0 - resolution: "expect@npm:26.2.0" +"expect@npm:^26.3.0": + version: 26.3.0 + resolution: "expect@npm:26.3.0" dependencies: - "@jest/types": ^26.2.0 + "@jest/types": ^26.3.0 ansi-styles: ^4.0.0 - jest-get-type: ^26.0.0 - jest-matcher-utils: ^26.2.0 - jest-message-util: ^26.2.0 + jest-get-type: ^26.3.0 + jest-matcher-utils: ^26.3.0 + jest-message-util: ^26.3.0 jest-regex-util: ^26.0.0 - checksum: fc0f842ee098229a5027a4768c0a82a5ef900758a7bf21cdb75f7ad41f7bc3beba6a572eac54437867da0a2f5b46bcc2f7b619c8dbaf98f92fe7271441048d17 + checksum: 94ce13f4b3f2efbb8f4ec05887010fb99878890f3347c4c723502eacd377044d61a25f4251dace63d6e7575d30e16ea84c40de5f988481981313ba9b1687d112 languageName: node linkType: hard @@ -12922,7 +12658,7 @@ __metadata: languageName: node linkType: hard -"express@npm:4.17.1, express@npm:^4.0.0, express@npm:^4.16.3, express@npm:^4.17.0, express@npm:^4.17.1": +"express@npm:4.17.1, express@npm:^4.0.0, express@npm:^4.16.3, express@npm:^4.17.1": version: 4.17.1 resolution: "express@npm:4.17.1" dependencies: @@ -13428,9 +13164,9 @@ __metadata: linkType: hard "follow-redirects@npm:^1.0.0": - version: 1.12.1 - resolution: "follow-redirects@npm:1.12.1" - checksum: afd9b64329e7001a9c79cfb2da85bd3c525994d3b67509a45b4a070385e7a9519d6732a5b5c30b1578369b3e747f7db06089354c91a677a13ef0c38c93116872 + version: 1.13.0 + resolution: "follow-redirects@npm:1.13.0" + checksum: f220828d3f153da30ea616fdbe9f6676e74e4e68c51d336a751037c1d556e2de34aa5918f58951fa19bb6517c9c88b4403a0a8bdfc40d3e779d37def2ac0f2c4 languageName: node linkType: hard @@ -13513,9 +13249,9 @@ __metadata: languageName: node linkType: hard -"formik@npm:2.1.4": - version: 2.1.4 - resolution: "formik@npm:2.1.4" +"formik@npm:2.1.5": + version: 2.1.5 + resolution: "formik@npm:2.1.5" dependencies: deepmerge: ^2.1.1 hoist-non-react-statics: ^3.3.0 @@ -13526,8 +13262,8 @@ __metadata: tiny-warning: ^1.0.2 tslib: ^1.10.0 peerDependencies: - react: ">=16.3.0" - checksum: ff90492b85421182727bcae01f60851d53c66237c7afd0281d279ad978cc385920c7e764b07c7192d4d5384bdec0ba3a14ec4d0f9af438fe92d89b22b6b432d7 + react: ">=16.8.0" + checksum: 5a84001cc471afd4b214bf470b93038a46ebe89c4f90c43c59f1093262dd3cf8a21bdc95f656cc7034e1883c0706a5ace7ac6178bc211cfe0afb5716276a1f05 languageName: node linkType: hard @@ -14178,15 +13914,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"graphql-tag@npm:2.10.4": - version: 2.10.4 - resolution: "graphql-tag@npm:2.10.4" - peerDependencies: - graphql: ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 - checksum: 19c20d48c290f95eb367dadbaebe0c1e1b23f468135948addc21e103f2b2a6d14de7d0abb2a6c56e1a96ddc914d5a394a430a94048d589d2e95eae50acffbb50 - languageName: node - linkType: hard - "graphql-tag@npm:2.11.0, graphql-tag@npm:^2.11.0, graphql-tag@npm:^2.9.2": version: 2.11.0 resolution: "graphql-tag@npm:2.11.0" @@ -14243,12 +13970,12 @@ fsevents@^1.2.7: languageName: node linkType: hard -"graphql@npm:14.6.0, graphql@npm:^14.5.3": - version: 14.6.0 - resolution: "graphql@npm:14.6.0" +"graphql@npm:14.7.0, graphql@npm:^14.5.3": + version: 14.7.0 + resolution: "graphql@npm:14.7.0" dependencies: iterall: ^1.2.2 - checksum: 24cab2758cea2ce592c59af28cac0fc80d2f2eac2f2441ce0152ce3c5a3a2416394aadf71b2d8db58f46c44ca3d20747eb168f58502f6eadafab0f11dea13791 + checksum: 3b7d50f98f5c66db36327d6dd331367c6da166d701b5bad669664e8602a180ee50dcb5ae3e1f9874e7fa59c1217f50a52a922fc77b5a1e04276426e67815b0ed languageName: node linkType: hard @@ -14271,13 +13998,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"gud@npm:^1.0.0": - version: 1.0.0 - resolution: "gud@npm:1.0.0" - checksum: 08be6bf30eb713b0e115a4676418b3805b739703956fd861710f59ce355c047102954e4d79172b180912d06794e8d94f702e9367ac6843c2fae40c8c726a4907 - languageName: node - linkType: hard - "gzip-size@npm:5.1.1, gzip-size@npm:^5.0.0": version: 5.1.1 resolution: "gzip-size@npm:5.1.1" @@ -14841,13 +14561,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"http-parser-js@npm:>=0.5.1": - version: 0.5.2 - resolution: "http-parser-js@npm:0.5.2" - checksum: a089b78a37379ca31b645696577e08b43c82cab802f3a1db3338151d68ad6839632de78277001735b2c5b59c78870f08d4d2bb73417bbea1ee8c894021228b46 - languageName: node - linkType: hard - "http-proxy-agent@npm:^2.1.0": version: 2.1.0 resolution: "http-proxy-agent@npm:2.1.0" @@ -16217,14 +15930,14 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-changed-files@npm:^26.2.0": - version: 26.2.0 - resolution: "jest-changed-files@npm:26.2.0" +"jest-changed-files@npm:^26.3.0": + version: 26.3.0 + resolution: "jest-changed-files@npm:26.3.0" dependencies: - "@jest/types": ^26.2.0 + "@jest/types": ^26.3.0 execa: ^4.0.0 throat: ^5.0.0 - checksum: d38d62d2ad736cb83a10fd26bb125029cdf24d2905ccc3993493c92fb1f1b6a34ebc992031e87a7a436610edfd4f76412a2c84b41f783123f4c111a325ce1052 + checksum: 851301f4ca3b43f54370f36c928d55cb84bdc95471778c1f0c035c1f08123e7a4b3da2bf9bb6ac16f307c472dd5919f2b9f96924eb93bafc3588faea751e53d6 languageName: node linkType: hard @@ -16251,26 +15964,26 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-cli@npm:^26.2.2": - version: 26.2.2 - resolution: "jest-cli@npm:26.2.2" +"jest-cli@npm:^26.3.0": + version: 26.3.0 + resolution: "jest-cli@npm:26.3.0" dependencies: - "@jest/core": ^26.2.2 - "@jest/test-result": ^26.2.0 - "@jest/types": ^26.2.0 + "@jest/core": ^26.3.0 + "@jest/test-result": ^26.3.0 + "@jest/types": ^26.3.0 chalk: ^4.0.0 exit: ^0.1.2 graceful-fs: ^4.2.4 import-local: ^3.0.2 is-ci: ^2.0.0 - jest-config: ^26.2.2 - jest-util: ^26.2.0 - jest-validate: ^26.2.0 + jest-config: ^26.3.0 + jest-util: ^26.3.0 + jest-validate: ^26.3.0 prompts: ^2.0.1 yargs: ^15.3.1 bin: jest: bin/jest.js - checksum: 2367a776e5ff439e0e7d0763369b620f812f0e7dbbe3e19e627aa92f8152265fa31cc877aed311be251b751ae17a208f6fe61fefcc423771a3a6342ae8b53605 + checksum: 1640bd0d4b79be63ae5e558d47bb977c09ec57be8bdf31a88016262ed4ce9af66723e6b5050d93b8e18485ecedb3e6a31e349942068dc66454a578ca350a09da languageName: node linkType: hard @@ -16299,29 +16012,29 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-config@npm:^26.2.2": - version: 26.2.2 - resolution: "jest-config@npm:26.2.2" +"jest-config@npm:^26.3.0": + version: 26.3.0 + resolution: "jest-config@npm:26.3.0" dependencies: "@babel/core": ^7.1.0 - "@jest/test-sequencer": ^26.2.2 - "@jest/types": ^26.2.0 - babel-jest: ^26.2.2 + "@jest/test-sequencer": ^26.3.0 + "@jest/types": ^26.3.0 + babel-jest: ^26.3.0 chalk: ^4.0.0 deepmerge: ^4.2.2 glob: ^7.1.1 graceful-fs: ^4.2.4 - jest-environment-jsdom: ^26.2.0 - jest-environment-node: ^26.2.0 - jest-get-type: ^26.0.0 - jest-jasmine2: ^26.2.2 + jest-environment-jsdom: ^26.3.0 + jest-environment-node: ^26.3.0 + jest-get-type: ^26.3.0 + jest-jasmine2: ^26.3.0 jest-regex-util: ^26.0.0 - jest-resolve: ^26.2.2 - jest-util: ^26.2.0 - jest-validate: ^26.2.0 + jest-resolve: ^26.3.0 + jest-util: ^26.3.0 + jest-validate: ^26.3.0 micromatch: ^4.0.2 - pretty-format: ^26.2.0 - checksum: 8b0920927ad71c23b0aaeed4b46f56f85b3b36a31259dc6888c6800df8cca65322464e7701821b402ef4664d3c72487679f308a547e47be2edbad856301f487d + pretty-format: ^26.3.0 + checksum: 12d40b99442f181e590673f3edcf7585e0fa954ab23e3ccca3d4ff4a70811379e0960156670d536490462c12286ee18d89f3147c9edea1a71ffef800bcaabe10 languageName: node linkType: hard @@ -16349,15 +16062,15 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-diff@npm:^26.2.0": - version: 26.2.0 - resolution: "jest-diff@npm:26.2.0" +"jest-diff@npm:^26.3.0": + version: 26.3.0 + resolution: "jest-diff@npm:26.3.0" dependencies: chalk: ^4.0.0 - diff-sequences: ^26.0.0 - jest-get-type: ^26.0.0 - pretty-format: ^26.2.0 - checksum: 30942bce9a1d98ff1a0dcd3ac579c61933e7cd15fe0bcb24496d0597ba78038f505a45fb83336adc4534ef4366e523e96909cf6b7a74a1b6d59f64c4bebc0d09 + diff-sequences: ^26.3.0 + jest-get-type: ^26.3.0 + pretty-format: ^26.3.0 + checksum: 7ed2d78d0219968673ab410dbd6a0b37e322173c376b8c34163266238cbe5bfe08cdb56aec4476b7977f0f32d60cbcfa443b1830755a1db9d908041dc4c3a0ba languageName: node linkType: hard @@ -16392,16 +16105,16 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-each@npm:^26.2.0": - version: 26.2.0 - resolution: "jest-each@npm:26.2.0" +"jest-each@npm:^26.3.0": + version: 26.3.0 + resolution: "jest-each@npm:26.3.0" dependencies: - "@jest/types": ^26.2.0 + "@jest/types": ^26.3.0 chalk: ^4.0.0 - jest-get-type: ^26.0.0 - jest-util: ^26.2.0 - pretty-format: ^26.2.0 - checksum: 99487076e6f3b653b0416d5fdf511a1d9fb8cc7b1ce4c07f99927d76c7ebb77535d76b294b835c9455eaf239680d946267c5345ada8d7310712c0cf88c8c98d1 + jest-get-type: ^26.3.0 + jest-util: ^26.3.0 + pretty-format: ^26.3.0 + checksum: 701f7fa497a538473dc6f9ed48a048b570b09aff10419c301763e535bfcc9348cbd96c8f6a2b3722cc44080690cbb52829cc9f188168897a8f261a6537d8388c languageName: node linkType: hard @@ -16433,18 +16146,18 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-environment-jsdom@npm:^26.2.0": - version: 26.2.0 - resolution: "jest-environment-jsdom@npm:26.2.0" +"jest-environment-jsdom@npm:^26.3.0": + version: 26.3.0 + resolution: "jest-environment-jsdom@npm:26.3.0" dependencies: - "@jest/environment": ^26.2.0 - "@jest/fake-timers": ^26.2.0 - "@jest/types": ^26.2.0 + "@jest/environment": ^26.3.0 + "@jest/fake-timers": ^26.3.0 + "@jest/types": ^26.3.0 "@types/node": "*" - jest-mock: ^26.2.0 - jest-util: ^26.2.0 + jest-mock: ^26.3.0 + jest-util: ^26.3.0 jsdom: ^16.2.2 - checksum: 65198f8bc5969d101f4824d27e6a6e55c699764a3d80ea52c1cb2dc685f84a07b87dddcbb797eed429561a15717daa95f2186d07f0e9b47c1faa657f914141ee + checksum: dd43fd161ef1eb9e483e1917ab73fb9802f91877842b97c2844f9ea718a62ab1719b5297326427f6aff112e4d94807f445c7e213a14c23b8239e1ac43747ce88 languageName: node linkType: hard @@ -16461,17 +16174,17 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-environment-node@npm:^26.2.0": - version: 26.2.0 - resolution: "jest-environment-node@npm:26.2.0" +"jest-environment-node@npm:^26.3.0": + version: 26.3.0 + resolution: "jest-environment-node@npm:26.3.0" dependencies: - "@jest/environment": ^26.2.0 - "@jest/fake-timers": ^26.2.0 - "@jest/types": ^26.2.0 + "@jest/environment": ^26.3.0 + "@jest/fake-timers": ^26.3.0 + "@jest/types": ^26.3.0 "@types/node": "*" - jest-mock: ^26.2.0 - jest-util: ^26.2.0 - checksum: 1d2dad5ff938eef3e9b4c44da3a2927299b5c06d2f0cdb7a869c5427cd1fbbeb2280caabe86a70d9e0a282323ab5156f1283295b9565192cc5999f0ddbb613dd + jest-mock: ^26.3.0 + jest-util: ^26.3.0 + checksum: a88ac84b5d78b36c6f231b30dd933f4a7d076108b253637286ef039fa7a5543f3fea050f150c25ca663a9d12546dc70930a7c7a89caa07b4b039daf3820731b6 languageName: node linkType: hard @@ -16489,10 +16202,10 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-get-type@npm:^26.0.0": - version: 26.0.0 - resolution: "jest-get-type@npm:26.0.0" - checksum: df81e05d3e759dcadcd575ff559db63e3774c36c4c6e02a4ae8e925fe47f1e9fbdd4f157fbe317c691df5e5a256a15fcd76699c6121d90b6749ce25dbca75817 +"jest-get-type@npm:^26.3.0": + version: 26.3.0 + resolution: "jest-get-type@npm:26.3.0" + checksum: fc3e2d2b90cca74597c4ad6234c2fcc2ccb62894d0f7afe22fc55b5d93a2f02d3080ccef50f09c979d4b5a060bc76c4343911556d75ed9e892e0ebda6d54c44b languageName: node linkType: hard @@ -16519,11 +16232,11 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-haste-map@npm:^26.2.2": - version: 26.2.2 - resolution: "jest-haste-map@npm:26.2.2" +"jest-haste-map@npm:^26.3.0": + version: 26.3.0 + resolution: "jest-haste-map@npm:26.3.0" dependencies: - "@jest/types": ^26.2.0 + "@jest/types": ^26.3.0 "@types/graceful-fs": ^4.1.2 "@types/node": "*" anymatch: ^3.0.3 @@ -16531,16 +16244,16 @@ fsevents@^1.2.7: fsevents: ^2.1.2 graceful-fs: ^4.2.4 jest-regex-util: ^26.0.0 - jest-serializer: ^26.2.0 - jest-util: ^26.2.0 - jest-worker: ^26.2.1 + jest-serializer: ^26.3.0 + jest-util: ^26.3.0 + jest-worker: ^26.3.0 micromatch: ^4.0.2 sane: ^4.0.3 walker: ^1.0.7 dependenciesMeta: fsevents: optional: true - checksum: af1cfc77f9a5ce74fddb7102519239f7a62d373d97ab55941a2a025fc134a682b7cb91bac3c1e7811735797540f569f634c7e81ff31bd5a745ca46f1c296181e + checksum: 6a526146d7f4db00f690384cc18ec89805617006bcdc02080b16ca53bc0a843a5cd74469997a24302c536575ca90e36b59f92eda80b189a2d44560e840642c1d languageName: node linkType: hard @@ -16568,29 +16281,29 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-jasmine2@npm:^26.2.2": - version: 26.2.2 - resolution: "jest-jasmine2@npm:26.2.2" +"jest-jasmine2@npm:^26.3.0": + version: 26.3.0 + resolution: "jest-jasmine2@npm:26.3.0" dependencies: "@babel/traverse": ^7.1.0 - "@jest/environment": ^26.2.0 - "@jest/source-map": ^26.1.0 - "@jest/test-result": ^26.2.0 - "@jest/types": ^26.2.0 + "@jest/environment": ^26.3.0 + "@jest/source-map": ^26.3.0 + "@jest/test-result": ^26.3.0 + "@jest/types": ^26.3.0 "@types/node": "*" chalk: ^4.0.0 co: ^4.6.0 - expect: ^26.2.0 + expect: ^26.3.0 is-generator-fn: ^2.0.0 - jest-each: ^26.2.0 - jest-matcher-utils: ^26.2.0 - jest-message-util: ^26.2.0 - jest-runtime: ^26.2.2 - jest-snapshot: ^26.2.2 - jest-util: ^26.2.0 - pretty-format: ^26.2.0 + jest-each: ^26.3.0 + jest-matcher-utils: ^26.3.0 + jest-message-util: ^26.3.0 + jest-runtime: ^26.3.0 + jest-snapshot: ^26.3.0 + jest-util: ^26.3.0 + pretty-format: ^26.3.0 throat: ^5.0.0 - checksum: b4aa2bee7cb0d45a78b89c817e90635e98c6ddb1585d80d7c5f12ee98a2f903bec2466062cabc09f62cf5dbc0509d55e625bc534e6d509d975a6d54e6c5d1acf + checksum: 61023c78f5745f3b0e205f79936a95c8270e528612dc929c56e422e287abbc8a0f0147f4847d851bc60facea484f67dd55438106081812a584701794f97ca2df languageName: node linkType: hard @@ -16604,20 +16317,20 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-leak-detector@npm:^26.2.0": - version: 26.2.0 - resolution: "jest-leak-detector@npm:26.2.0" +"jest-leak-detector@npm:^26.3.0": + version: 26.3.0 + resolution: "jest-leak-detector@npm:26.3.0" dependencies: - jest-get-type: ^26.0.0 - pretty-format: ^26.2.0 - checksum: ffccb99b6b0a3cd328c054d2efedfc7eba5ee8a698541707c174d3ef7ec5129b7e7f305d149f60910fd001c986e5a39f1fb3a63b5c2792428b46a2c79dd92a5d + jest-get-type: ^26.3.0 + pretty-format: ^26.3.0 + checksum: 71cf1dbfd1a38af5ce83f002c485736a6c8aa0039b582b2609ed4d941a0233df0be890991ae767cceb3f771047158641d5c4e9c970e8454464490d779e056bd5 languageName: node linkType: hard -"jest-localstorage-mock@npm:2.4.2": - version: 2.4.2 - resolution: "jest-localstorage-mock@npm:2.4.2" - checksum: c582f6d3755968c783cc6ae4c0082a7d0c766514ebc519ed0d44ce7f82c2c513f344e7aaafe9792f354b37cf40eb1c1d2ea7c77328fb859d2cb636e711aea9dd +"jest-localstorage-mock@npm:2.4.3": + version: 2.4.3 + resolution: "jest-localstorage-mock@npm:2.4.3" + checksum: 9b06aa9a29285f03ee2c6c605fcfbe89d25da94a5bc08b28881eec4a3baaadbd4ec16a5d209cd3d663637010960be2a14648f2195009947b36bb5fba1293e067 languageName: node linkType: hard @@ -16633,15 +16346,15 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-matcher-utils@npm:^26.2.0": - version: 26.2.0 - resolution: "jest-matcher-utils@npm:26.2.0" +"jest-matcher-utils@npm:^26.3.0": + version: 26.3.0 + resolution: "jest-matcher-utils@npm:26.3.0" dependencies: chalk: ^4.0.0 - jest-diff: ^26.2.0 - jest-get-type: ^26.0.0 - pretty-format: ^26.2.0 - checksum: 3df11cb20242c4432bc6bc237e260ede3b6266e3be7e32c8c7f24454fa200058f698adb92847ad1cde212b8ad23005f23aaff0b654e1de3fcb06d8ed6059565b + jest-diff: ^26.3.0 + jest-get-type: ^26.3.0 + pretty-format: ^26.3.0 + checksum: 6ea39701140bae2346d1412485f2d6b916c12671298e21858b906e0578e791015fadf396ddaa40440b25a3678c894804b753e863708694eefe7bd6df586d37e6 languageName: node linkType: hard @@ -16661,19 +16374,19 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-message-util@npm:^26.2.0": - version: 26.2.0 - resolution: "jest-message-util@npm:26.2.0" +"jest-message-util@npm:^26.3.0": + version: 26.3.0 + resolution: "jest-message-util@npm:26.3.0" dependencies: "@babel/code-frame": ^7.0.0 - "@jest/types": ^26.2.0 + "@jest/types": ^26.3.0 "@types/stack-utils": ^1.0.1 chalk: ^4.0.0 graceful-fs: ^4.2.4 micromatch: ^4.0.2 slash: ^3.0.0 stack-utils: ^2.0.2 - checksum: 56d71adf1c9b536a8cbb911bd5043e960ba006422c60dbf81b92c45ea017aa01973007668e143ca31fd6fd0a6d9b018a638887634d7f134a9a3b7b3557e71148 + checksum: 768bbe1646d88ad71d195341afff3106fbc6e17ff62bfd6ae15c09badedb48ea2899a20562495168e50fbf0d527472668f4a84e30d232b91e429020b3aa7e137 languageName: node linkType: hard @@ -16686,13 +16399,13 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-mock@npm:^26.2.0": - version: 26.2.0 - resolution: "jest-mock@npm:26.2.0" +"jest-mock@npm:^26.3.0": + version: 26.3.0 + resolution: "jest-mock@npm:26.3.0" dependencies: - "@jest/types": ^26.2.0 + "@jest/types": ^26.3.0 "@types/node": "*" - checksum: a69f52d63ec72f3f11757ee07c8a8c179f64e7fa4d58e7c862cba1dcba9e0222a256c09636206620b53fbd09e03268622173b10942afc1ebb2d53dcc599791cd + checksum: b76b5d1f0b1adca7735eb4068504528ea39714642894a05101b41f3ecfae3358df3f3db54b98a2b624d8dd34f4c90a1848328c0b41d9112c85600574652e12fe languageName: node linkType: hard @@ -16733,14 +16446,14 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-resolve-dependencies@npm:^26.2.2": - version: 26.2.2 - resolution: "jest-resolve-dependencies@npm:26.2.2" +"jest-resolve-dependencies@npm:^26.3.0": + version: 26.3.0 + resolution: "jest-resolve-dependencies@npm:26.3.0" dependencies: - "@jest/types": ^26.2.0 + "@jest/types": ^26.3.0 jest-regex-util: ^26.0.0 - jest-snapshot: ^26.2.2 - checksum: 55f6a7518194e5dc4a3370e35852935a5d4afdb7026ccafa71e6a427e0237c3a0cbb29304bf93d9cda8ddabb948a157e9edb7c9e2d8b485a4befe7d11109b101 + jest-snapshot: ^26.3.0 + checksum: 1b19b1117eab84cecaa5aa930ff1f7dabd2e98e0cbc2e2b7b8d82e7d1089d6f616f8678973df8fc0adb5eb291f837eda075140932ff377552716bb73b37239be languageName: node linkType: hard @@ -16757,19 +16470,19 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-resolve@npm:26.2.2, jest-resolve@npm:^26.2.2": - version: 26.2.2 - resolution: "jest-resolve@npm:26.2.2" +"jest-resolve@npm:26.3.0, jest-resolve@npm:^26.3.0": + version: 26.3.0 + resolution: "jest-resolve@npm:26.3.0" dependencies: - "@jest/types": ^26.2.0 + "@jest/types": ^26.3.0 chalk: ^4.0.0 graceful-fs: ^4.2.4 jest-pnp-resolver: ^1.2.2 - jest-util: ^26.2.0 + jest-util: ^26.3.0 read-pkg-up: ^7.0.1 resolve: ^1.17.0 slash: ^3.0.0 - checksum: 80665c16506408bcf2012bfcc4e4ba7782feac02e2405fc69ce2092d7f62057583a45bbc6d63107335d638ec76afa433f7c045f9e4970756b3e56abb3b962d77 + checksum: f11c4115b54cb929e651d3cc63b386cefbded9388fc78a35aff5c9a5c0b81899d9001004b844925e50a1f9c219d33ab3dbc45b7af3209f7e5426b083f3e565f6 languageName: node linkType: hard @@ -16800,31 +16513,31 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-runner@npm:^26.2.2": - version: 26.2.2 - resolution: "jest-runner@npm:26.2.2" +"jest-runner@npm:^26.3.0": + version: 26.3.0 + resolution: "jest-runner@npm:26.3.0" dependencies: - "@jest/console": ^26.2.0 - "@jest/environment": ^26.2.0 - "@jest/test-result": ^26.2.0 - "@jest/types": ^26.2.0 + "@jest/console": ^26.3.0 + "@jest/environment": ^26.3.0 + "@jest/test-result": ^26.3.0 + "@jest/types": ^26.3.0 "@types/node": "*" chalk: ^4.0.0 emittery: ^0.7.1 exit: ^0.1.2 graceful-fs: ^4.2.4 - jest-config: ^26.2.2 + jest-config: ^26.3.0 jest-docblock: ^26.0.0 - jest-haste-map: ^26.2.2 - jest-leak-detector: ^26.2.0 - jest-message-util: ^26.2.0 - jest-resolve: ^26.2.2 - jest-runtime: ^26.2.2 - jest-util: ^26.2.0 - jest-worker: ^26.2.1 + jest-haste-map: ^26.3.0 + jest-leak-detector: ^26.3.0 + jest-message-util: ^26.3.0 + jest-resolve: ^26.3.0 + jest-runtime: ^26.3.0 + jest-util: ^26.3.0 + jest-worker: ^26.3.0 source-map-support: ^0.5.6 throat: ^5.0.0 - checksum: 732732b3f86c4148f335c68a37d1538b4ab2b678b7b90cb51a0614f8861cd9f78d53cc35b7616f339feb9006226214e2750eb17f2ab64305123ad8f4e8317bdf + checksum: 82c9b45b457a03b5abbd1a41c4737b155375521624eca7678653e3f0007ee314121bc56f8d5534ba2886e2440e5b278995ce5491dfd4070003ce8943c457a689 languageName: node linkType: hard @@ -16861,39 +16574,39 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-runtime@npm:^26.2.2": - version: 26.2.2 - resolution: "jest-runtime@npm:26.2.2" +"jest-runtime@npm:^26.3.0": + version: 26.3.0 + resolution: "jest-runtime@npm:26.3.0" dependencies: - "@jest/console": ^26.2.0 - "@jest/environment": ^26.2.0 - "@jest/fake-timers": ^26.2.0 - "@jest/globals": ^26.2.0 - "@jest/source-map": ^26.1.0 - "@jest/test-result": ^26.2.0 - "@jest/transform": ^26.2.2 - "@jest/types": ^26.2.0 + "@jest/console": ^26.3.0 + "@jest/environment": ^26.3.0 + "@jest/fake-timers": ^26.3.0 + "@jest/globals": ^26.3.0 + "@jest/source-map": ^26.3.0 + "@jest/test-result": ^26.3.0 + "@jest/transform": ^26.3.0 + "@jest/types": ^26.3.0 "@types/yargs": ^15.0.0 chalk: ^4.0.0 collect-v8-coverage: ^1.0.0 exit: ^0.1.2 glob: ^7.1.3 graceful-fs: ^4.2.4 - jest-config: ^26.2.2 - jest-haste-map: ^26.2.2 - jest-message-util: ^26.2.0 - jest-mock: ^26.2.0 + jest-config: ^26.3.0 + jest-haste-map: ^26.3.0 + jest-message-util: ^26.3.0 + jest-mock: ^26.3.0 jest-regex-util: ^26.0.0 - jest-resolve: ^26.2.2 - jest-snapshot: ^26.2.2 - jest-util: ^26.2.0 - jest-validate: ^26.2.0 + jest-resolve: ^26.3.0 + jest-snapshot: ^26.3.0 + jest-util: ^26.3.0 + jest-validate: ^26.3.0 slash: ^3.0.0 strip-bom: ^4.0.0 yargs: ^15.3.1 bin: jest-runtime: bin/jest-runtime.js - checksum: 8956e3a15e939ef9ac4687e2da8c800ff6b75e062af3e01f5b4a3ab2e57a5eb086c4d20921555a352313ad3e255a2e1bdb2c2b19d9a0452c0761e795a3b643a0 + checksum: 447fac31591b13bf75834e9fb6b3f5c66ff6c7fa7f1c34936be77b4653aadb9a6422b81257be86bc6ecd08863ef6d6a6af62baf8d2e8326bfa38193f601a2c64 languageName: node linkType: hard @@ -16904,13 +16617,13 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-serializer@npm:^26.2.0": - version: 26.2.0 - resolution: "jest-serializer@npm:26.2.0" +"jest-serializer@npm:^26.3.0": + version: 26.3.0 + resolution: "jest-serializer@npm:26.3.0" dependencies: "@types/node": "*" graceful-fs: ^4.2.4 - checksum: 7ce0ef906db55653a4181275f4faecebc6bc141331fbdd6fcb21d51fd1daebf57364b044a48f283e3aa97f2e2883de1f8605874bbc428360e7e795f1eb224e0d + checksum: b481e69eeedb993095df9493001dc8431bd9127ac681966c4041f54d439a54b45355147dca2b0414388ec64ba1b10b2a6c5258e38eb3e3d8fb99c471ba3fad3f languageName: node linkType: hard @@ -16935,40 +16648,40 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-snapshot@npm:^26.2.2": - version: 26.2.2 - resolution: "jest-snapshot@npm:26.2.2" +"jest-snapshot@npm:^26.3.0": + version: 26.3.0 + resolution: "jest-snapshot@npm:26.3.0" dependencies: "@babel/types": ^7.0.0 - "@jest/types": ^26.2.0 + "@jest/types": ^26.3.0 "@types/prettier": ^2.0.0 chalk: ^4.0.0 - expect: ^26.2.0 + expect: ^26.3.0 graceful-fs: ^4.2.4 - jest-diff: ^26.2.0 - jest-get-type: ^26.0.0 - jest-haste-map: ^26.2.2 - jest-matcher-utils: ^26.2.0 - jest-message-util: ^26.2.0 - jest-resolve: ^26.2.2 + jest-diff: ^26.3.0 + jest-get-type: ^26.3.0 + jest-haste-map: ^26.3.0 + jest-matcher-utils: ^26.3.0 + jest-message-util: ^26.3.0 + jest-resolve: ^26.3.0 natural-compare: ^1.4.0 - pretty-format: ^26.2.0 + pretty-format: ^26.3.0 semver: ^7.3.2 - checksum: 87367f25a986cc9d5afa1078f5c4f54f98a619563503a91b581068a87eb743e2592adaa594a3fec9cd2f1bdad7bea7aae02f70da670b02c9f118592139dc7858 + checksum: eb08984502b3b3fe12267976958c9f469cd8dce3c10fce76a5de77f86304c46a4e9c1a0096f1f5b11534de88d7a4defa9144ea38f6468a573884451525ff625a languageName: node linkType: hard -"jest-util@npm:26.x, jest-util@npm:^26.2.0": - version: 26.2.0 - resolution: "jest-util@npm:26.2.0" +"jest-util@npm:26.x, jest-util@npm:^26.3.0": + version: 26.3.0 + resolution: "jest-util@npm:26.3.0" dependencies: - "@jest/types": ^26.2.0 + "@jest/types": ^26.3.0 "@types/node": "*" chalk: ^4.0.0 graceful-fs: ^4.2.4 is-ci: ^2.0.0 micromatch: ^4.0.2 - checksum: 5989debfaf93aeff084335b082ec38df4b2f0ae29f626c88e0300a49d0f407e30ffe238e1666464bde3b5d42e02f99912b43f2fbee71fe7b0111ddba2dd6fd92 + checksum: a3574473c503e44db396403823dc2c1495f31db5ae6a11182d3cfaa08af26a4a70c0efd848f199ce423cc9541b7cd2fe2430d22e5bbce28038352120203a116e languageName: node linkType: hard @@ -17006,17 +16719,17 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-validate@npm:^26.2.0": - version: 26.2.0 - resolution: "jest-validate@npm:26.2.0" +"jest-validate@npm:^26.3.0": + version: 26.3.0 + resolution: "jest-validate@npm:26.3.0" dependencies: - "@jest/types": ^26.2.0 + "@jest/types": ^26.3.0 camelcase: ^6.0.0 chalk: ^4.0.0 - jest-get-type: ^26.0.0 + jest-get-type: ^26.3.0 leven: ^3.1.0 - pretty-format: ^26.2.0 - checksum: 8059509fc12fb5532c6321e622a45a632ed61b66c60b388cce25dbb8fbe2defdcbe8a7670bd2817edddd3a14bcaad31863ad84b5e93876700d9576672423841f + pretty-format: ^26.3.0 + checksum: 8e51c559da700d83866f5679e76cba65516a52e5c684d571a5fb869f216435ab59ce0e25f1a844c97e648d5f6ed3b15d0294269f1212b9949b5562619b598ad4 languageName: node linkType: hard @@ -17050,18 +16763,18 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-watcher@npm:^26.2.0": - version: 26.2.0 - resolution: "jest-watcher@npm:26.2.0" +"jest-watcher@npm:^26.3.0": + version: 26.3.0 + resolution: "jest-watcher@npm:26.3.0" dependencies: - "@jest/test-result": ^26.2.0 - "@jest/types": ^26.2.0 + "@jest/test-result": ^26.3.0 + "@jest/types": ^26.3.0 "@types/node": "*" ansi-escapes: ^4.2.1 chalk: ^4.0.0 - jest-util: ^26.2.0 + jest-util: ^26.3.0 string-length: ^4.0.1 - checksum: 9afc2405d60b72fc545191ba20f3624eebb09b8c9132123c98b53ad05afe2d619b6577d188ee675b389e46865e317079a8381accadcc6fb7413ca4c05ab14605 + checksum: d31132f5160846fa254cb3d88f7e7b61bab765a4201913c6b02fe5af4e474d9bf7b460e832ce896da00902630a4370d418a44a2cb60ee7634e4f89dd66a30ace languageName: node linkType: hard @@ -17085,14 +16798,14 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-worker@npm:^26.2.1": - version: 26.2.1 - resolution: "jest-worker@npm:26.2.1" +"jest-worker@npm:^26.3.0": + version: 26.3.0 + resolution: "jest-worker@npm:26.3.0" dependencies: "@types/node": "*" merge-stream: ^2.0.0 supports-color: ^7.0.0 - checksum: ec735534aa8295909383d4a9d0866724c7b98ea38bd3a0c5b061031c037d00dcb32ec7c5b1b77dfb45023b345aa2eaadc876574940bbe21cbc660a9113382d5f + checksum: 6b7190ef8f6e0dec1a2ed865624e45bc7a7d18795911890423813d1972521abe6f1f2e57076070cb70efa3b5f1b5cf54f33bc7e0bcda41d04341df47f0487d59 languageName: node linkType: hard @@ -17108,16 +16821,16 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest@npm:26.2.2": - version: 26.2.2 - resolution: "jest@npm:26.2.2" +"jest@npm:26.3.0": + version: 26.3.0 + resolution: "jest@npm:26.3.0" dependencies: - "@jest/core": ^26.2.2 + "@jest/core": ^26.3.0 import-local: ^3.0.2 - jest-cli: ^26.2.2 + jest-cli: ^26.3.0 bin: jest: bin/jest.js - checksum: e4d79bfeffdffffe899eb45b3d7736d1c65acd632edddd3923a5395fabb67da4170c8dfa79f82e763c10d14cbd6ceea909203fe83b407ccf4eb9989f26ddc839 + checksum: 3e41a3d5e4e4a602387ac68092cb7f3be33a016c8433a64c8d7bd02d48acb40e364b2c838fe470f6c8102580ac6aedfa4e8959a89749b5ecfc98b1bf25715771 languageName: node linkType: hard @@ -18876,20 +18589,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"mini-create-react-context@npm:^0.3.0": - version: 0.3.2 - resolution: "mini-create-react-context@npm:0.3.2" - dependencies: - "@babel/runtime": ^7.4.0 - gud: ^1.0.0 - tiny-warning: ^1.0.2 - peerDependencies: - prop-types: ^15.0.0 - react: ^0.14.0 || ^15.0.0 || ^16.0.0 - checksum: ed91c072bd099ae19b4fc7450211ca44907c3d7e1e0c3494bfeb9a697e3a1c6700db41b7cd2a985e72c8b6cad2284e1ebca3826214a2acb77c3bf8c380c2a08e - languageName: node - linkType: hard - "mini-create-react-context@npm:^0.4.0": version: 0.4.0 resolution: "mini-create-react-context@npm:0.4.0" @@ -19128,26 +18827,9 @@ fsevents@^1.2.7: languageName: node linkType: hard -"mongodb@npm:3.5.7": - version: 3.5.7 - resolution: "mongodb@npm:3.5.7" - dependencies: - bl: ^2.2.0 - bson: ^1.1.4 - denque: ^1.4.1 - require_optional: ^1.0.1 - safe-buffer: ^5.1.2 - saslprep: ^1.0.0 - dependenciesMeta: - saslprep: - optional: true - checksum: db5554c5772df76705afe2ef3feeab56be5396faf3e794dc51ac66a1aa6353f89d6830e15bb20ebb1507b4c8ad62da75798ad15d3c9790b9c07872c8d35313b9 - languageName: node - linkType: hard - -"mongodb@npm:3.5.9": - version: 3.5.9 - resolution: "mongodb@npm:3.5.9" +"mongodb@npm:3.5.10": + version: 3.5.10 + resolution: "mongodb@npm:3.5.10" dependencies: bl: ^2.2.0 bson: ^1.1.4 @@ -19158,11 +18840,11 @@ fsevents@^1.2.7: dependenciesMeta: saslprep: optional: true - checksum: 9df68e136852b73c2126d896178c1496dc3a473e8573836df6a347c5e9f63cdf479e4dac90608f38cc00152331a148f447b9afa76cf77b513f3987df5a2b5071 + checksum: f13f4c434510363b347f502cfb06e7334aae532a56e79411dfc480b38eec14fbfd7d9e7e40b0fe98beff285f09d08ac1f8134df5be881fbb9e2b5eebb5ccb2f4 languageName: node linkType: hard -"mongodb@npm:^3.4.1": +"mongodb@npm:^3.6.0": version: 3.6.0 resolution: "mongodb@npm:3.6.0" dependencies: @@ -19188,32 +18870,13 @@ fsevents@^1.2.7: languageName: node linkType: hard -"mongoose@npm:5.9.13": - version: 5.9.13 - resolution: "mongoose@npm:5.9.13" - dependencies: - bson: ^1.1.4 - kareem: 2.3.1 - mongodb: 3.5.7 - mongoose-legacy-pluralize: 1.0.2 - mpath: 0.7.0 - mquery: 3.2.2 - ms: 2.1.2 - regexp-clone: 1.0.0 - safe-buffer: 5.1.2 - sift: 7.0.1 - sliced: 1.0.1 - checksum: 9104247ae7743cce6e8c6b9f13dbdfac2251168d8e0df2d1f801b1e316946e7cee21fa7023c58681d3eb2139aca3e0b991e09905c10921eeadfdbdfd3750198b - languageName: node - linkType: hard - -"mongoose@npm:5.9.25": - version: 5.9.25 - resolution: "mongoose@npm:5.9.25" +"mongoose@npm:5.9.28": + version: 5.9.28 + resolution: "mongoose@npm:5.9.28" dependencies: bson: ^1.1.4 kareem: 2.3.1 - mongodb: 3.5.9 + mongodb: 3.5.10 mongoose-legacy-pluralize: 1.0.2 mpath: 0.7.0 mquery: 3.2.2 @@ -19222,7 +18885,7 @@ fsevents@^1.2.7: safe-buffer: 5.2.1 sift: 7.0.1 sliced: 1.0.1 - checksum: 931d6bc97e721ef9bba1cf4933f1995c8e49fbe6b7dc30bf6bce9c3cbcf2b5c4740a1d506d7c1aa3fde4aea80652c607bbd3220d6af6e2bfdd9cf0a7b756446f + checksum: 4579cd987c33a509439de3956e04f95613b55671e5363d935528e38973d455ca1ead5b56e0755972e768f9158b0ed67e44e6d1fcfc2171bc59329611af5a8440 languageName: node linkType: hard @@ -19581,26 +19244,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"nodemon@npm:2.0.3": - version: 2.0.3 - resolution: "nodemon@npm:2.0.3" - dependencies: - chokidar: ^3.2.2 - debug: ^3.2.6 - ignore-by-default: ^1.0.1 - minimatch: ^3.0.4 - pstree.remy: ^1.1.7 - semver: ^5.7.1 - supports-color: ^5.5.0 - touch: ^3.1.0 - undefsafe: ^2.0.2 - update-notifier: ^4.0.0 - bin: - nodemon: bin/nodemon.js - checksum: 3c6edb9ecb6e9f51dcfa13a8f4afe3b119738e8bad684128be7576f1cf239a8d202142421681adf6172cbab898021c4beebc9d91279449f6db796cc94b65042a - languageName: node - linkType: hard - "nodemon@npm:2.0.4": version: 2.0.4 resolution: "nodemon@npm:2.0.4" @@ -20845,7 +20488,7 @@ fsevents@^1.2.7: languageName: node linkType: hard -"pg-connection-string@npm:^2.2.2": +"pg-connection-string@npm:^2.3.0": version: 2.3.0 resolution: "pg-connection-string@npm:2.3.0" checksum: 610d03707d0544af81900facd4b7ef2d7527ea9c016c091c292966d77b53ca56327a3e1fc9a527b94094df356cba1be3bc8de72903ef9c1cd9622d4469d91196 @@ -20859,7 +20502,7 @@ fsevents@^1.2.7: languageName: node linkType: hard -"pg-pool@npm:^3.2.0": +"pg-pool@npm:^3.2.1": version: 3.2.1 resolution: "pg-pool@npm:3.2.1" peerDependencies: @@ -20868,7 +20511,7 @@ fsevents@^1.2.7: languageName: node linkType: hard -"pg-protocol@npm:^1.2.2": +"pg-protocol@npm:^1.2.5": version: 1.2.5 resolution: "pg-protocol@npm:1.2.5" checksum: d61b446eebf2ed4a6c9f46f6b6e882ebb4dcfd2cd0d6b2b16954233cb41985f6cb0e61d18e816125d52734ceff5ab5ec1541e9402e07bea0131686742be97e5a @@ -20888,19 +20531,19 @@ fsevents@^1.2.7: languageName: node linkType: hard -"pg@npm:8.1.0": - version: 8.1.0 - resolution: "pg@npm:8.1.0" +"pg@npm:8.3.0": + version: 8.3.0 + resolution: "pg@npm:8.3.0" dependencies: buffer-writer: 2.0.0 packet-reader: 1.0.0 - pg-connection-string: ^2.2.2 - pg-pool: ^3.2.0 - pg-protocol: ^1.2.2 + pg-connection-string: ^2.3.0 + pg-pool: ^3.2.1 + pg-protocol: ^1.2.5 pg-types: ^2.1.0 pgpass: 1.x semver: 4.3.2 - checksum: a8a8bde05e8875db39aac87712c4ad00f931eb7d74ba16b3f5d83abc1bcebca9ba17213306d46bfc56cd43b67d2231c416c6dfcf71d3d21dab2ee3c76181b2c6 + checksum: bc862ee5dc3661414e6230d6e74d16d4bc282876d2b2848cca4111b8cbb2fcc9a37727cbaf13c106750550c5ab3f3f8982ca7b353fb895b58f0b1058c88a05f5 languageName: node linkType: hard @@ -21043,13 +20686,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"popper.js@npm:^1.16.1-lts": - version: 1.16.1 - resolution: "popper.js@npm:1.16.1" - checksum: eb53806fb7680e31c7d1db096f95438a40a7cb869f7ee0e27100c0860f11583a0d322606c6073618e7fe8865f834ec36482901b547256d9a0cf2b22434bca75d - languageName: node - linkType: hard - "portfinder@npm:^1.0.25, portfinder@npm:^1.0.26": version: 1.0.28 resolution: "portfinder@npm:1.0.28" @@ -21998,15 +21634,15 @@ fsevents@^1.2.7: languageName: node linkType: hard -"pretty-format@npm:^26.2.0": - version: 26.2.0 - resolution: "pretty-format@npm:26.2.0" +"pretty-format@npm:^26.3.0": + version: 26.3.0 + resolution: "pretty-format@npm:26.3.0" dependencies: - "@jest/types": ^26.2.0 + "@jest/types": ^26.3.0 ansi-regex: ^5.0.0 ansi-styles: ^4.0.0 react-is: ^16.12.0 - checksum: b75917fbcf69ef3365f26a8e942e33b155d919a15b12b00954c45fdb6103c02d8436b9293d3be85d2adb98d0e56bb265cabf3b247ca11c156de2088cfc7c579b + checksum: eba811e0167cc71edaecd4753437458c58f6f8bbe37fbccb363b02b27a8e4b6df81f26b91f8a0ece672a4de6fa3bdc22f646e021298c5247935398fca2cbbcfb languageName: node linkType: hard @@ -22558,23 +22194,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"react-router-dom@npm:5.1.2": - version: 5.1.2 - resolution: "react-router-dom@npm:5.1.2" - dependencies: - "@babel/runtime": ^7.1.2 - history: ^4.9.0 - loose-envify: ^1.3.1 - prop-types: ^15.6.2 - react-router: 5.1.2 - tiny-invariant: ^1.0.2 - tiny-warning: ^1.0.0 - peerDependencies: - react: ">=15" - checksum: d09e55a5d5605375f54cafd2679ffef3ff322818bcb520d52307aa5d2f6ec63cc19de99926c84c2faf52ea23aada1b6ac812ace9088ada3654ba0a7caa1219a3 - languageName: node - linkType: hard - "react-router-dom@npm:5.2.0, react-router-dom@npm:^5.1.2": version: 5.2.0 resolution: "react-router-dom@npm:5.2.0" @@ -22592,26 +22211,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"react-router@npm:5.1.2": - version: 5.1.2 - resolution: "react-router@npm:5.1.2" - dependencies: - "@babel/runtime": ^7.1.2 - history: ^4.9.0 - hoist-non-react-statics: ^3.1.0 - loose-envify: ^1.3.1 - mini-create-react-context: ^0.3.0 - path-to-regexp: ^1.7.0 - prop-types: ^15.6.2 - react-is: ^16.6.0 - tiny-invariant: ^1.0.2 - tiny-warning: ^1.0.0 - peerDependencies: - react: ">=15" - checksum: 534e43eaafd9519c0e2f3dc0996f738b9e81d6e5625681530f0804ac3268e507ef223b3a356e55286a694fee377cb4b831243aca5aa7a9f940d278a2b6641ca3 - languageName: node - linkType: hard - "react-router@npm:5.2.0, react-router@npm:^5.1.2": version: 5.2.0 resolution: "react-router@npm:5.2.0" @@ -22725,7 +22324,7 @@ fsevents@^1.2.7: languageName: node linkType: hard -"react-transition-group@npm:^4.3.0, react-transition-group@npm:^4.4.0": +"react-transition-group@npm:^4.4.0": version: 4.4.1 resolution: "react-transition-group@npm:4.4.1" dependencies: @@ -23437,7 +23036,7 @@ fsevents@^1.2.7: languageName: node linkType: hard -"request-promise@npm:^4.2.5": +"request-promise@npm:^4.2.6": version: 4.2.6 resolution: "request-promise@npm:4.2.6" dependencies: @@ -23609,7 +23208,7 @@ resolve@1.1.7: languageName: node linkType: hard -"resolve@1.15.0, resolve@^1.12.0, resolve@^1.3.2": +"resolve@1.15.0, resolve@^1.12.0, resolve@^1.3.2, resolve@^1.8.1": version: 1.15.0 resolution: "resolve@npm:1.15.0" dependencies: @@ -23618,7 +23217,7 @@ resolve@1.1.7: languageName: node linkType: hard -"resolve@^1.1.6, resolve@^1.10.0, resolve@^1.13.1, resolve@^1.15.1, resolve@^1.17.0, resolve@^1.8.1": +"resolve@^1.1.6, resolve@^1.10.0, resolve@^1.13.1, resolve@^1.15.1, resolve@^1.17.0": version: 1.17.0 resolution: "resolve@npm:1.17.0" dependencies: @@ -23634,7 +23233,7 @@ resolve@1.1.7: languageName: node linkType: hard -"resolve@patch:resolve@1.15.0#builtin, resolve@patch:resolve@^1.12.0#builtin, resolve@patch:resolve@^1.3.2#builtin": +"resolve@patch:resolve@1.15.0#builtin, resolve@patch:resolve@^1.12.0#builtin, resolve@patch:resolve@^1.3.2#builtin, resolve@patch:resolve@^1.8.1#builtin": version: 1.15.0 resolution: "resolve@patch:resolve@npm%3A1.15.0#builtin::version=1.15.0&hash=3388aa" dependencies: @@ -23643,7 +23242,7 @@ resolve@1.1.7: languageName: node linkType: hard -"resolve@patch:resolve@^1.1.6#builtin, resolve@patch:resolve@^1.10.0#builtin, resolve@patch:resolve@^1.13.1#builtin, resolve@patch:resolve@^1.15.1#builtin, resolve@patch:resolve@^1.17.0#builtin, resolve@patch:resolve@^1.8.1#builtin": +"resolve@patch:resolve@^1.1.6#builtin, resolve@patch:resolve@^1.10.0#builtin, resolve@patch:resolve@^1.13.1#builtin, resolve@patch:resolve@^1.15.1#builtin, resolve@patch:resolve@^1.17.0#builtin": version: 1.17.0 resolution: "resolve@patch:resolve@npm%3A1.17.0#builtin::version=1.17.0&hash=3388aa" dependencies: @@ -23787,12 +23386,12 @@ resolve@1.1.7: version: 0.0.0-use.local resolution: "root-workspace-0b6124@workspace:." dependencies: - "@typescript-eslint/eslint-plugin": 3.7.0 - "@typescript-eslint/parser": 3.7.0 - conventional-changelog-cli: 2.0.34 - eslint: 7.5.0 + "@typescript-eslint/eslint-plugin": 3.8.0 + "@typescript-eslint/parser": 3.8.0 + conventional-changelog-cli: 2.0.35 + eslint: 7.6.0 eslint-config-prettier: 6.11.0 - eslint-plugin-jest: 23.18.0 + eslint-plugin-jest: 23.20.0 eslint-plugin-prettier: 3.1.4 husky: 4.2.5 lerna: 3.22.1 @@ -23800,7 +23399,7 @@ resolve@1.1.7: opencollective: 1.0.3 prettier: 2.0.5 ts-jest: 26.1.4 - typescript: 3.9.5 + typescript: 3.9.7 languageName: unknown linkType: soft @@ -23864,7 +23463,7 @@ resolve@1.1.7: languageName: node linkType: hard -"safe-buffer@npm:5.2.1, safe-buffer@npm:>=5.1.0, safe-buffer@npm:^5.0.1, safe-buffer@npm:^5.1.0, safe-buffer@npm:^5.1.1, safe-buffer@npm:^5.1.2, safe-buffer@npm:^5.2.0, safe-buffer@npm:~5.2.0": +"safe-buffer@npm:5.2.1, safe-buffer@npm:^5.0.1, safe-buffer@npm:^5.1.0, safe-buffer@npm:^5.1.1, safe-buffer@npm:^5.1.2, safe-buffer@npm:^5.2.0, safe-buffer@npm:~5.2.0": version: 5.2.1 resolution: "safe-buffer@npm:5.2.1" checksum: 0bb57f0d8f9d1fa4fe35ad8a2db1f83a027d48f2822d59ede88fd5cd4ddad83c0b497213feb7a70fbf90597a70c5217f735b0eb1850df40ce9b4ae81dd22b3f9 @@ -25962,26 +25561,6 @@ resolve@1.1.7: languageName: node linkType: hard -"ts-node@npm:8.10.1": - version: 8.10.1 - resolution: "ts-node@npm:8.10.1" - dependencies: - arg: ^4.1.0 - diff: ^4.0.1 - make-error: ^1.1.1 - source-map-support: ^0.5.17 - yn: 3.1.1 - peerDependencies: - typescript: ">=2.7" - bin: - ts-node: dist/bin.js - ts-node-script: dist/bin-script.js - ts-node-transpile-only: dist/bin-transpile.js - ts-script: dist/bin-script-deprecated.js - checksum: 4eda8591d422bdb9b9464921b4b1d850d3f32a4500db4c067a6d72b8f5c92934645b8d2e5a37c633361ce5664e6d7e426db6049cdf574276196d539c2c526385 - languageName: node - linkType: hard - "ts-node@npm:8.10.2": version: 8.10.2 resolution: "ts-node@npm:8.10.2" @@ -26021,14 +25600,14 @@ resolve@1.1.7: languageName: node linkType: hard -"tslib@npm:2.0.0, tslib@npm:^2.0.0, tslib@npm:~2.0.0": +"tslib@npm:2.0.0": version: 2.0.0 resolution: "tslib@npm:2.0.0" checksum: a7369a224f12e223fb42f2a720389601a24a1e1c96c55bf0d8d4b60c131e574c175ae23578b8d1bd3f4ec790c7e0a82b43733f022f866d48a23aeadd3910755d languageName: node linkType: hard -"tslib@npm:2.0.1": +"tslib@npm:2.0.1, tslib@npm:^2.0.0, tslib@npm:~2.0.0": version: 2.0.1 resolution: "tslib@npm:2.0.1" checksum: 7b42337a07f536c9650c72471cdf51317f07eb981692e91b8979fee3f6e20136a8f047e6ecdc5f2f3201132a6cc4e0096fa3c58655eba3803bf7fe739ccd088e @@ -26244,36 +25823,6 @@ resolve@1.1.7: languageName: node linkType: hard -typescript@3.7.5: - version: 3.7.5 - resolution: "typescript@npm:3.7.5" - bin: - tsc: bin/tsc - tsserver: bin/tsserver - checksum: 48a96fb7dc48746e6b76cf0946545181b0d5013368e510768402f1374e6c6a9f29b00e8ca4f40bc7523a655473f7bc7c55d1c8458970e96b7187bcee1b47e96b - languageName: node - linkType: hard - -typescript@3.8.3: - version: 3.8.3 - resolution: "typescript@npm:3.8.3" - bin: - tsc: bin/tsc - tsserver: bin/tsserver - checksum: 519b11576247fe3570d89a2aa757d8f666aafc0cb9465a6cdd4df09c1dc6bf7285f0c6008d2ac7a55ea26457e767aaab819f58439d80af2cce1d9805b2be1034 - languageName: node - linkType: hard - -typescript@3.9.5: - version: 3.9.5 - resolution: "typescript@npm:3.9.5" - bin: - tsc: bin/tsc - tsserver: bin/tsserver - checksum: 15618435493667083eb43dc7b36c4d3dd47fd9e9c8a14f0ac4019bbf6124b6cc518b6ed506400913db1bf50831207ee8201b5d827680076930b562923f4f18a0 - languageName: node - linkType: hard - typescript@3.9.7: version: 3.9.7 resolution: "typescript@npm:3.9.7" @@ -26284,36 +25833,6 @@ typescript@3.9.7: languageName: node linkType: hard -"typescript@patch:typescript@3.7.5#builtin": - version: 3.7.5 - resolution: "typescript@patch:typescript@npm%3A3.7.5#builtin::version=3.7.5&hash=5b02a2" - bin: - tsc: bin/tsc - tsserver: bin/tsserver - checksum: cf3413606dfe8a8c8e08392afe1f52975541b900ad407bc072279ad27b57ce4939eac389e74477bb0f8747122cf3442b944023ddfd87143d3b9ea3122fff40ad - languageName: node - linkType: hard - -"typescript@patch:typescript@3.8.3#builtin": - version: 3.8.3 - resolution: "typescript@patch:typescript@npm%3A3.8.3#builtin::version=3.8.3&hash=5b02a2" - bin: - tsc: bin/tsc - tsserver: bin/tsserver - checksum: dcadfa6d7c90af4ac23181cccda22bdc7270f23a2c8773ab0b6047e2b9b86bcd885da5c5acc020addc1a0df042940ab8e9bbfb33aedcf884bea554fe60fccd32 - languageName: node - linkType: hard - -"typescript@patch:typescript@3.9.5#builtin": - version: 3.9.5 - resolution: "typescript@patch:typescript@npm%3A3.9.5#builtin::version=3.9.5&hash=5b02a2" - bin: - tsc: bin/tsc - tsserver: bin/tsserver - checksum: 452cdd20d801630727433a990652c1e65f5eb5586383dda60f178b4fbda5c7951256f9aa31327c73722af9b1b664e3a53d724aabfd8a68866e9b1631818f004c - languageName: node - linkType: hard - "typescript@patch:typescript@3.9.7#builtin": version: 3.9.7 resolution: "typescript@patch:typescript@npm%3A3.9.7#builtin::version=3.9.7&hash=5b02a2" @@ -26863,14 +26382,14 @@ typescript@3.9.7: languageName: node linkType: hard -"v8-to-istanbul@npm:^4.1.3": - version: 4.1.4 - resolution: "v8-to-istanbul@npm:4.1.4" +"v8-to-istanbul@npm:^5.0.1": + version: 5.0.1 + resolution: "v8-to-istanbul@npm:5.0.1" dependencies: "@types/istanbul-lib-coverage": ^2.0.1 convert-source-map: ^1.6.0 source-map: ^0.7.3 - checksum: 9d6c0cd729340d3d19e2d5d59f5b5f1e63a2e0828a209d61d42992eb66e797629ed1a845833166b3ea9a8f84465244d7ab2cc955677b686be0f533402217dedd + checksum: 8647a626cf515db0df18eff22b073f0d8f51c500cfed011013d3010ce9c79a71f9d88d1ed15c3e312bb10466e161721e4b4f803fdabf263dd37e659d912e9911 languageName: node linkType: hard @@ -27371,7 +26890,7 @@ typescript@3.9.7: languageName: node linkType: hard -"websocket-driver@npm:0.6.5": +"websocket-driver@npm:0.6.5, websocket-driver@npm:>=0.5.1": version: 0.6.5 resolution: "websocket-driver@npm:0.6.5" dependencies: @@ -27380,17 +26899,6 @@ typescript@3.9.7: languageName: node linkType: hard -"websocket-driver@npm:>=0.5.1": - version: 0.7.4 - resolution: "websocket-driver@npm:0.7.4" - dependencies: - http-parser-js: ">=0.5.1" - safe-buffer: ">=5.1.0" - websocket-extensions: ">=0.1.1" - checksum: 9627c9fc5b02bc3ac48e14f2819aa62d005dff429b996ae3416c58150eb4373ecef301c68875bc16d056e8701dc91306f3b6b00536ae551af3828f114ab66b41 - languageName: node - linkType: hard - "websocket-extensions@npm:>=0.1.1": version: 0.1.4 resolution: "websocket-extensions@npm:0.1.4" From be084d88c81217deb9f89673e2f2c48fa8e12670 Mon Sep 17 00:00:00 2001 From: pradel Date: Tue, 11 Aug 2020 09:56:35 +0200 Subject: [PATCH 137/146] changes --- examples/rest-express-typescript/package.json | 2 +- packages/server/src/accounts-server.ts | 47 -- website/docs/mfa/create-custom.md | 2 +- yarn.lock | 431 +++++++----------- 4 files changed, 166 insertions(+), 316 deletions(-) diff --git a/examples/rest-express-typescript/package.json b/examples/rest-express-typescript/package.json index 9b808375a..9e8b31a4e 100644 --- a/examples/rest-express-typescript/package.json +++ b/examples/rest-express-typescript/package.json @@ -10,7 +10,7 @@ "test": "yarn build" }, "dependencies": { - "@accounts/authenticator-otp": "^0.29.0", + "@accounts/factor-otp": "^0.29.0", "@accounts/mongo": "^0.29.0", "@accounts/password": "^0.29.0", "@accounts/rest-express": "^0.29.0", diff --git a/packages/server/src/accounts-server.ts b/packages/server/src/accounts-server.ts index 4cc1c522a..d05f5a46e 100644 --- a/packages/server/src/accounts-server.ts +++ b/packages/server/src/accounts-server.ts @@ -199,53 +199,6 @@ Please set ambiguousErrorMessages to false to be able to use autologin.` params, }; try { - if (serviceName === 'mfa') { - const mfaToken = params.mfaToken; - if (!mfaToken) { - throw new Error('Mfa token is required'); - } - const mfaChallenge = await this.db.findMfaChallengeByToken(mfaToken); - if (!mfaChallenge || !mfaChallenge.authenticatorId) { - throw new Error('Mfa token invalid'); - } - const authenticator = await this.db.findAuthenticatorById(mfaChallenge.authenticatorId); - if (!authenticator) { - throw new Error('Mfa token invalid'); - } - if (!this.authenticators[authenticator.type]) { - throw new Error(`No authenticator with the name ${serviceName} was registered.`); - } - // TODO we need to implement some time checking for the mfaToken (eg: expire after X minutes, probably based on the authenticator configuration) - if ( - !(await this.authenticators[authenticator.type].authenticate( - mfaChallenge, - authenticator, - params, - infos - )) - ) { - throw new Error(`Authenticator ${authenticator.type} was not able to authenticate user`); - } - // We activate the authenticator if user is using a challenge with scope 'associate' - if (!authenticator.active && mfaChallenge.scope === 'associate') { - await this.db.activateAuthenticator(authenticator.id); - } else if (!authenticator.active) { - throw new Error('Authenticator is not active'); - } - - // We invalidate the current mfa challenge so it can't be reused later - await this.db.deactivateMfaChallenge(mfaChallenge.id); - - const user = await this.db.findUserById(mfaChallenge.userId); - if (!user) { - throw new Error('user not found'); - } - hooksInfo.user = user; - const loginResult = await this.loginWithUser(user, infos); - this.hooks.emit(ServerHooks.LoginSuccess, hooksInfo); - return loginResult; - } - if (!this.services[serviceName]) { throw new AccountsJsError( `No service with the name ${serviceName} was registered.`, diff --git a/website/docs/mfa/create-custom.md b/website/docs/mfa/create-custom.md index 2e32bdaa7..4c4f28468 100644 --- a/website/docs/mfa/create-custom.md +++ b/website/docs/mfa/create-custom.md @@ -49,4 +49,4 @@ Add your custom logic and then link it to your accounts-js server. For best practices and inspiration you should check the source code of the official factors we provide: -- [One-Time Password](https://github.com/accounts-js/accounts/tree/master/packages/authenticator-otp) +- [One-Time Password](https://github.com/accounts-js/accounts/tree/master/packages/factor-otp) diff --git a/yarn.lock b/yarn.lock index 6c82b035e..7c891da54 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1,3 +1,6 @@ +# This file is generated by running "yarn install" inside your project. +# Manual changes might be lost - proceed with caution! + __metadata: version: 4 cacheKey: 5 @@ -17,23 +20,6 @@ __metadata: languageName: unknown linkType: soft -"@accounts/authenticator-otp@^0.29.0, @accounts/authenticator-otp@workspace:packages/authenticator-otp": - version: 0.0.0-use.local - resolution: "@accounts/authenticator-otp@workspace:packages/authenticator-otp" - dependencies: - "@accounts/server": ^0.29.0 - "@accounts/types": ^0.29.0 - "@types/jest": 26.0.0 - "@types/node": 12.7.4 - jest: 26.0.1 - otplib: 11.0.1 - rimraf: 3.0.2 - tslib: 1.10.0 - peerDependencies: - "@accounts/server": ^0.27.0 - languageName: unknown - linkType: soft - "@accounts/boost@^0.29.0, @accounts/boost@workspace:packages/boost": version: 0.0.0-use.local resolution: "@accounts/boost@workspace:packages/boost" @@ -185,7 +171,7 @@ __metadata: languageName: unknown linkType: soft -"@accounts/factor-otp@workspace:packages/factor-otp": +"@accounts/factor-otp@^0.29.0, @accounts/factor-otp@workspace:packages/factor-otp": version: 0.0.0-use.local resolution: "@accounts/factor-otp@workspace:packages/factor-otp" dependencies: @@ -1086,16 +1072,7 @@ __metadata: languageName: node linkType: hard -"@babel/parser@npm:7.11.1": - version: 7.11.1 - resolution: "@babel/parser@npm:7.11.1" - bin: - parser: ./bin/babel-parser.js - checksum: a9eb7293d5e7ed4fe1d7d3898cfe45deca0a1a78ebf7cf1a805e9fb918654d9b8f56720ead85cd568d27900bb0b19c778fdc6421a89963e3fbc4062efb028604 - languageName: node - linkType: hard - -"@babel/parser@npm:^7.0.0, @babel/parser@npm:^7.1.0, @babel/parser@npm:^7.10.4, @babel/parser@npm:^7.10.5, @babel/parser@npm:^7.11.0, @babel/parser@npm:^7.11.1, @babel/parser@npm:^7.4.3, @babel/parser@npm:^7.7.0, @babel/parser@npm:^7.9.0, @babel/parser@npm:^7.9.4": +"@babel/parser@npm:7.11.3, @babel/parser@npm:^7.0.0, @babel/parser@npm:^7.1.0, @babel/parser@npm:^7.10.4, @babel/parser@npm:^7.10.5, @babel/parser@npm:^7.11.0, @babel/parser@npm:^7.11.1, @babel/parser@npm:^7.4.3, @babel/parser@npm:^7.7.0, @babel/parser@npm:^7.9.0, @babel/parser@npm:^7.9.4": version: 7.11.3 resolution: "@babel/parser@npm:7.11.3" bin: @@ -2962,7 +2939,7 @@ __metadata: version: 0.0.0-use.local resolution: "@examples/rest-express-typescript@workspace:examples/rest-express-typescript" dependencies: - "@accounts/authenticator-otp": ^0.29.0 + "@accounts/factor-otp": ^0.29.0 "@accounts/mongo": ^0.29.0 "@accounts/password": ^0.29.0 "@accounts/rest-express": ^0.29.0 @@ -3280,134 +3257,135 @@ __metadata: linkType: hard "@graphql-tools/apollo-engine-loader@npm:^6.0.0": - version: 6.0.16 - resolution: "@graphql-tools/apollo-engine-loader@npm:6.0.16" + version: 6.0.17 + resolution: "@graphql-tools/apollo-engine-loader@npm:6.0.17" dependencies: - "@graphql-tools/utils": 6.0.16 + "@graphql-tools/utils": 6.0.17 cross-fetch: 3.0.5 tslib: ~2.0.0 peerDependencies: graphql: ^14.0.0 || ^15.0.0 - checksum: 4d9a7ad99f86bc7f088ff46d2a67e1abc133e5a5e31929256ab282de160b188a5c1149ade239a4fddbb44c76cfb4b29ac627bddfb5000b12cd5f085057ff9cc7 + checksum: 43b84d40ae9bb72bdee40798a2ca28a942887b123cf27b6d5ef800f8e45774ba7256ec23b7ad7dec4d227d75aef7ebdb04c1857ba8e2f3781b802f8656b898a2 languageName: node linkType: hard "@graphql-tools/code-file-loader@npm:^6.0.0": - version: 6.0.16 - resolution: "@graphql-tools/code-file-loader@npm:6.0.16" + version: 6.0.17 + resolution: "@graphql-tools/code-file-loader@npm:6.0.17" dependencies: - "@graphql-tools/graphql-tag-pluck": 6.0.16 - "@graphql-tools/utils": 6.0.16 + "@graphql-tools/graphql-tag-pluck": 6.0.17 + "@graphql-tools/utils": 6.0.17 fs-extra: 9.0.1 tslib: ~2.0.0 peerDependencies: graphql: ^14.0.0 || ^15.0.0 - checksum: c672c7d42d68140e85eca860469e002bdf433045fa8bc5fb98c2615d28ed82afedcbd79ccf1fbd04d1b3f8b38ce45162975c14cdeefdd015c415e750ea5f7e41 + checksum: 0323caa2a7a9320b1579f126b2857ae1160a4d796fec2a127507146bfa9c3f663899694e1297bdf2604390d5def634104edf6f9ef26bd3fd448b64e78c1d49a1 languageName: node linkType: hard -"@graphql-tools/delegate@npm:6.0.16": - version: 6.0.16 - resolution: "@graphql-tools/delegate@npm:6.0.16" +"@graphql-tools/delegate@npm:6.0.17": + version: 6.0.17 + resolution: "@graphql-tools/delegate@npm:6.0.17" dependencies: "@ardatan/aggregate-error": 0.0.1 - "@graphql-tools/schema": 6.0.16 - "@graphql-tools/utils": 6.0.16 + "@graphql-tools/schema": 6.0.17 + "@graphql-tools/utils": 6.0.17 + is-promise: 4.0.0 tslib: ~2.0.0 peerDependencies: graphql: ^14.0.0 || ^15.0.0 - checksum: 1f500c3ec28395e1950ec6858a6e50bae1002fe4031314717536c763c9c8337d2347fd0737889c41266bea59ddf3418bf29c8eb9fbbea2681afa4427c804a34f + checksum: 7d80701d694fdbbc2306b231d46bdc4ac1e8f72801b73fe869abd2b01c81643aae8f3b5161c3364267ac1cb1e148878a92caf324c5366dfb608fb4342acc7961 languageName: node linkType: hard "@graphql-tools/git-loader@npm:^6.0.0": - version: 6.0.16 - resolution: "@graphql-tools/git-loader@npm:6.0.16" + version: 6.0.17 + resolution: "@graphql-tools/git-loader@npm:6.0.17" dependencies: - "@graphql-tools/graphql-tag-pluck": 6.0.16 - "@graphql-tools/utils": 6.0.16 + "@graphql-tools/graphql-tag-pluck": 6.0.17 + "@graphql-tools/utils": 6.0.17 peerDependencies: graphql: ^14.0.0 || ^15.0.0 - checksum: f827f418abee261e612049bda8ac87bf832f4433c74fa806846db6761497702561758eb697085287553b80b8e93c32c7b462e9dc0951558fd5c12abf3e81489c + checksum: bdd51a9ba649bbf937cace6f36a5d91430e1930f0756d534f07832e19714afa4b34312355c38b384f9fb978609a4216794bb7276a0df8d2f37bef464767d5212 languageName: node linkType: hard "@graphql-tools/github-loader@npm:^6.0.0": - version: 6.0.16 - resolution: "@graphql-tools/github-loader@npm:6.0.16" + version: 6.0.17 + resolution: "@graphql-tools/github-loader@npm:6.0.17" dependencies: - "@graphql-tools/graphql-tag-pluck": 6.0.16 - "@graphql-tools/utils": 6.0.16 + "@graphql-tools/graphql-tag-pluck": 6.0.17 + "@graphql-tools/utils": 6.0.17 cross-fetch: 3.0.5 peerDependencies: graphql: ^14.0.0 || ^15.0.0 - checksum: d97471b617143db724866f4132ea19af6997e356851d2620b9ac1cff45b7c46cf6cb2c1eb4f7140be63639375b856514e36b6bb4572f7d456f49b8ddda62acd2 + checksum: 61f165b1cd324222979bb20130243721bce1484a424e6ec419372ebcffe4679270ad1ed6951287837f416302f3fdafb67d7777315c346d8c94cd3f5bde6632b2 languageName: node linkType: hard "@graphql-tools/graphql-file-loader@npm:^6.0.0": - version: 6.0.16 - resolution: "@graphql-tools/graphql-file-loader@npm:6.0.16" + version: 6.0.17 + resolution: "@graphql-tools/graphql-file-loader@npm:6.0.17" dependencies: - "@graphql-tools/import": 6.0.16 - "@graphql-tools/utils": 6.0.16 + "@graphql-tools/import": 6.0.17 + "@graphql-tools/utils": 6.0.17 fs-extra: 9.0.1 tslib: ~2.0.0 peerDependencies: graphql: ^14.0.0 || ^15.0.0 - checksum: 70590463a1367028d5d6dbc730c6dba9834a3e6cd6f44c5d8d477da74d6a5bb8f733e394f33ba3ff9dc7004e40e905f5dcf84e6d9261938012a035c88e249e80 + checksum: 2982d76f5cec26f2f489903feef450eb7a6eb734719782798a6c771e8453759f1b8ba4073c63fb9a50923dabf783e8cfc7c334eba0450a1f5d64a3a0974abc9a languageName: node linkType: hard -"@graphql-tools/graphql-tag-pluck@npm:6.0.16": - version: 6.0.16 - resolution: "@graphql-tools/graphql-tag-pluck@npm:6.0.16" +"@graphql-tools/graphql-tag-pluck@npm:6.0.17": + version: 6.0.17 + resolution: "@graphql-tools/graphql-tag-pluck@npm:6.0.17" dependencies: - "@babel/parser": 7.11.1 + "@babel/parser": 7.11.3 "@babel/traverse": 7.11.0 "@babel/types": 7.11.0 - "@graphql-tools/utils": 6.0.16 + "@graphql-tools/utils": 6.0.17 vue-template-compiler: ^2.6.11 peerDependencies: graphql: ^14.0.0 || ^15.0.0 dependenciesMeta: vue-template-compiler: optional: true - checksum: 5ec2d9f89d76c9c2a9370679667acf68b7cac5003aa02f5633daf54bc40c5f4c80f09b4f139dc3b46e28c8dcfe4311887bb9d7163f167b97a2763dcf94bf0a82 + checksum: e9d609ed338d56145359de1bc6658b61f53f3fe2c39fe1e689d04e76d936cc401238323a2e35a5a8201ab869b366bc66e6fb2b116415a66df6af11eceb92e2ab languageName: node linkType: hard -"@graphql-tools/import@npm:6.0.16": - version: 6.0.16 - resolution: "@graphql-tools/import@npm:6.0.16" +"@graphql-tools/import@npm:6.0.17": + version: 6.0.17 + resolution: "@graphql-tools/import@npm:6.0.17" dependencies: fs-extra: 9.0.1 resolve-from: 5.0.0 peerDependencies: graphql: ^14.0.0 || ^15.0.0 - checksum: bfe2ca95bea4ee15bb5deaa7bb778a2063c3580cd10c004dddf82abb3ef978761f4e8af8a168aee674bba680a1284d8b14f281d73aa393850a45848efe4cba9d + checksum: 899093bdfa58f0e0e042fa9d3fdb60f15c43a7e5f37c7b956cd8c9ce2d383f7689fa5577172887e87c9247373fb58c78eb6050ee21fbb9ea7067bdc6cf259520 languageName: node linkType: hard "@graphql-tools/json-file-loader@npm:^6.0.0": - version: 6.0.16 - resolution: "@graphql-tools/json-file-loader@npm:6.0.16" + version: 6.0.17 + resolution: "@graphql-tools/json-file-loader@npm:6.0.17" dependencies: - "@graphql-tools/utils": 6.0.16 + "@graphql-tools/utils": 6.0.17 fs-extra: 9.0.1 tslib: ~2.0.0 peerDependencies: graphql: ^14.0.0 || ^15.0.0 - checksum: ba92d09a4076afb4da47c0c89d8dd5c27e36c3783baaf68ebfa36d6923a018da2fccce06aa9e0b2b4f34135d92c0c469cdd398058cea85fe93aa9ee9ef5bee3f + checksum: 4ab90a021b951870656850f8909f7d97a05964f6f5dd8233699dfeabe80ae1aba0fd84e220820d64e85f8dcc7cc7df7673ad7712dd4357a67587c1956207abc3 languageName: node linkType: hard "@graphql-tools/load@npm:^6.0.0": - version: 6.0.16 - resolution: "@graphql-tools/load@npm:6.0.16" + version: 6.0.17 + resolution: "@graphql-tools/load@npm:6.0.17" dependencies: - "@graphql-tools/merge": 6.0.16 - "@graphql-tools/utils": 6.0.16 + "@graphql-tools/merge": 6.0.17 + "@graphql-tools/utils": 6.0.17 globby: 11.0.1 import-from: 3.0.0 is-glob: 4.0.1 @@ -3417,7 +3395,7 @@ __metadata: valid-url: 1.0.9 peerDependencies: graphql: ^14.0.0 || ^15.0.0 - checksum: 6d38798d04d5c0ff512afb4f87334cb5b1b0e805a4bb1c52347462b3f44169d236bcc44aebdaa89c40786b5428489f05b0c05180efbc51f00c7f8e0765a5cdda + checksum: dade58a42e38a38841e5e3083bb5ecde6cd40a07fca820aac48e32c6d6fc3e3c09ef0dcae4135f9eedec0b5db98dd83ef88fc66b00c77fa32db99832bf40ab3c languageName: node linkType: hard @@ -3434,12 +3412,25 @@ __metadata: languageName: node linkType: hard +"@graphql-tools/merge@npm:6.0.17": + version: 6.0.17 + resolution: "@graphql-tools/merge@npm:6.0.17" + dependencies: + "@graphql-tools/schema": 6.0.17 + "@graphql-tools/utils": 6.0.17 + tslib: ~2.0.0 + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 + checksum: 9a7ec82bad14531e1fa6be581668be2108af788fa4434bba812426077c5478fe01ef18b2af7c3ffe8b2770b39e6ee1a6702ef6f2684b05017c2ee7599b94d00a + languageName: node + linkType: hard + "@graphql-tools/prisma-loader@npm:^6.0.0": - version: 6.0.16 - resolution: "@graphql-tools/prisma-loader@npm:6.0.16" + version: 6.0.17 + resolution: "@graphql-tools/prisma-loader@npm:6.0.17" dependencies: - "@graphql-tools/url-loader": 6.0.16 - "@graphql-tools/utils": 6.0.16 + "@graphql-tools/url-loader": 6.0.17 + "@graphql-tools/utils": 6.0.17 "@types/http-proxy-agent": ^2.0.2 "@types/js-yaml": ^3.12.5 "@types/json-stable-stringify": ^1.0.32 @@ -3450,7 +3441,7 @@ __metadata: debug: ^4.1.1 dotenv: ^8.2.0 fs-extra: 9.0.1 - graphql-request: ^2.0.0 + graphql-request: ^3.0.0 http-proxy-agent: ^4.0.1 https-proxy-agent: ^5.0.0 isomorphic-fetch: ^2.2.1 @@ -3464,7 +3455,7 @@ __metadata: yaml-ast-parser: ^0.0.43 peerDependencies: graphql: ^14.0.0 || ^15.0.0 - checksum: 3fdd468e63aae33eec2b0a4cf5bbf969de7d4d75756ad3eaed7b31d22ff57ef03e0e78bc2f101e8aa2097ad2a458b52b302431bbac2a2e9cbdabc5f9876827f0 + checksum: 70f7f64bda66723dbfbcf6c08e37a603bf6c2a4fa20da09b840c378e4555c85ec7c99c7f58c2984a6a3aae3dd2a6c2d017af5249c08cf5e32b97213db27434e7 languageName: node linkType: hard @@ -3492,13 +3483,25 @@ __metadata: languageName: node linkType: hard -"@graphql-tools/url-loader@npm:6.0.16, @graphql-tools/url-loader@npm:^6.0.0": - version: 6.0.16 - resolution: "@graphql-tools/url-loader@npm:6.0.16" +"@graphql-tools/schema@npm:6.0.17": + version: 6.0.17 + resolution: "@graphql-tools/schema@npm:6.0.17" dependencies: - "@graphql-tools/delegate": 6.0.16 - "@graphql-tools/utils": 6.0.16 - "@graphql-tools/wrap": 6.0.16 + "@graphql-tools/utils": 6.0.17 + tslib: ~2.0.0 + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 + checksum: 2ab2fd3d692c34ce3ebddbdbf6243262488404db637b7cd5c0fa7a4e657dd9ca891d4cfa1f1578cdd56d24d76ec02a6b9197f61f5dc283bd6e548c85adea818c + languageName: node + linkType: hard + +"@graphql-tools/url-loader@npm:6.0.17, @graphql-tools/url-loader@npm:^6.0.0": + version: 6.0.17 + resolution: "@graphql-tools/url-loader@npm:6.0.17" + dependencies: + "@graphql-tools/delegate": 6.0.17 + "@graphql-tools/utils": 6.0.17 + "@graphql-tools/wrap": 6.0.17 "@types/websocket": 1.0.1 cross-fetch: 3.0.5 subscriptions-transport-ws: 0.9.17 @@ -3507,7 +3510,7 @@ __metadata: websocket: 1.0.31 peerDependencies: graphql: ^14.0.0 || ^15.0.0 - checksum: b02907838abcad21ad0f3ef815c3a171a4033874f09df17c81d7c713485bdb720675e3cbcf6bbcc375617e3aca510f185e16edf89c73b172b386b522266f5159 + checksum: d3ba40137c25cdb825072377ecb8a857a1b2240103e788dd2d1ca8198fb423002f7b75df3c415dc5498adc79b974257fb10ee3c36e971147cab336e49ca79d88 languageName: node linkType: hard @@ -3523,7 +3526,7 @@ __metadata: languageName: node linkType: hard -"@graphql-tools/utils@npm:6.0.16, @graphql-tools/utils@npm:^6.0.0": +"@graphql-tools/utils@npm:6.0.16": version: 6.0.16 resolution: "@graphql-tools/utils@npm:6.0.16" dependencies: @@ -3535,18 +3538,31 @@ __metadata: languageName: node linkType: hard -"@graphql-tools/wrap@npm:6.0.16": - version: 6.0.16 - resolution: "@graphql-tools/wrap@npm:6.0.16" +"@graphql-tools/utils@npm:6.0.17, @graphql-tools/utils@npm:^6.0.0": + version: 6.0.17 + resolution: "@graphql-tools/utils@npm:6.0.17" dependencies: - "@graphql-tools/delegate": 6.0.16 - "@graphql-tools/schema": 6.0.16 - "@graphql-tools/utils": 6.0.16 + "@ardatan/aggregate-error": 0.0.1 + camel-case: 4.1.1 + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 + checksum: 87db53d078a507f9b6471f9322e2ef955c987eaf3ed66e51ba181c703f36678392bdfd74c303730cca46dd3f1d4d74db6adab5daab46540d1de7612368434df3 + languageName: node + linkType: hard + +"@graphql-tools/wrap@npm:6.0.17": + version: 6.0.17 + resolution: "@graphql-tools/wrap@npm:6.0.17" + dependencies: + "@graphql-tools/delegate": 6.0.17 + "@graphql-tools/schema": 6.0.17 + "@graphql-tools/utils": 6.0.17 aggregate-error: 3.0.1 + is-promise: 4.0.0 tslib: ~2.0.0 peerDependencies: graphql: ^14.0.0 || ^15.0.0 - checksum: 3bb34dcffc7c1ff7092146b37293b9b9ea8a882067b46289a2471997f47455e9a687db290b65af74ce88579e1197448e4d3e3d5e4de07f8f2cc5079bcba3083d + checksum: c64a911176b6cf1be8f60ac1fb010a29d09a47456f93536a944309c9cac6ed02200056d48c9ff9c539b82574464f73cb4c81affe09f6daea7bd030970b4438e7 languageName: node linkType: hard @@ -3734,42 +3750,6 @@ __metadata: languageName: node linkType: hard -"@jest/core@npm:^26.0.1, @jest/core@npm:^26.2.2": - version: 26.2.2 - resolution: "@jest/core@npm:26.2.2" - dependencies: - "@jest/console": ^26.3.0 - "@jest/reporters": ^26.3.0 - "@jest/test-result": ^26.3.0 - "@jest/transform": ^26.3.0 - "@jest/types": ^26.3.0 - "@types/node": "*" - ansi-escapes: ^4.2.1 - chalk: ^4.0.0 - exit: ^0.1.2 - graceful-fs: ^4.2.4 - jest-changed-files: ^26.3.0 - jest-config: ^26.3.0 - jest-haste-map: ^26.3.0 - jest-message-util: ^26.3.0 - jest-regex-util: ^26.0.0 - jest-resolve: ^26.3.0 - jest-resolve-dependencies: ^26.3.0 - jest-runner: ^26.3.0 - jest-runtime: ^26.3.0 - jest-snapshot: ^26.3.0 - jest-util: ^26.3.0 - jest-validate: ^26.3.0 - jest-watcher: ^26.3.0 - micromatch: ^4.0.2 - p-each-series: ^2.1.0 - rimraf: ^3.0.0 - slash: ^3.0.0 - strip-ansi: ^6.0.0 - checksum: dc0c438cb3bd77fa5d6d4f747dea115fd34defa11716cef66e4e2daec22dc625ef987297d5790b3e1121fff19c8227645b2fe39f1b61a8baf73af0097b690967 - languageName: node - linkType: hard - "@jest/core@npm:^26.3.0": version: 26.3.0 resolution: "@jest/core@npm:26.3.0" @@ -6281,33 +6261,13 @@ __metadata: languageName: node linkType: hard -"@types/react@npm:*, @types/react@npm:16.9.43": - version: 16.9.43 - resolution: "@types/react@npm:16.9.43" - dependencies: - "@types/prop-types": "*" - csstype: ^2.2.0 - checksum: b9d4491463ab013e0752bf6f99bd578f91504f74dfd1ebd7fbceebbdffe89762b040494a78403e249bb72d1645d2784f844890e7b1acdb3634432533ff9732fb - languageName: node - linkType: hard - "@types/react@npm:*, @types/react@npm:16.9.45": version: 16.9.45 resolution: "@types/react@npm:16.9.45" dependencies: "@types/prop-types": "*" - csstype: ^2.2.0 - checksum: b9d4491463ab013e0752bf6f99bd578f91504f74dfd1ebd7fbceebbdffe89762b040494a78403e249bb72d1645d2784f844890e7b1acdb3634432533ff9732fb - languageName: node - linkType: hard - -"@types/react@npm:16.9.36": - version: 16.9.36 - resolution: "@types/react@npm:16.9.36" - dependencies: - "@types/prop-types": "*" - csstype: ^2.2.0 - checksum: 63731d81fcd0407ea17f265aa042bbf01f208798ca773e1a158ccb721798cffb4b398cc1c098fe8a71ff053601a51171bb607c3ff2ba14e1ff063aefe94f08cd + csstype: ^3.0.2 + checksum: 285b9f607d2789ea2810a303b52496f8561e8352362372a84bcb069128ddb6c5a000a372067a5b456054f6680c5c922e8875fafdb97935a5814afa74ea906868 languageName: node linkType: hard @@ -7972,13 +7932,6 @@ __metadata: languageName: node linkType: hard -"arrify@npm:^2.0.1": - version: 2.0.1 - resolution: "arrify@npm:2.0.1" - checksum: 2a19726815590d829e07998aefa2c352bd9061e58bf4391ffffa227129995841a710bef2d8b4c9408a6b0679d96c96bd23764bdbcc29bb21666c976816093972 - languageName: node - linkType: hard - "asap@npm:^2.0.0, asap@npm:~2.0.3, asap@npm:~2.0.6": version: 2.0.6 resolution: "asap@npm:2.0.6" @@ -8911,9 +8864,9 @@ __metadata: linkType: hard "bson@npm:^1.1.4": - version: 1.1.4 - resolution: "bson@npm:1.1.4" - checksum: ec5d5fb1f57273c9203dfb31b0df30a58abb4e701851373233ae6693bcaac240631c42b05615fc91601458a76c56d9999a8fbfc8ec68163ac0273138db43cf70 + version: 1.1.5 + resolution: "bson@npm:1.1.5" + checksum: d1e6fe96baac02dacc54cc33f8accce7bd289a22f0e98804e76adbb9af463ee414f6c8aed15fa18c133330fe859a7bb750e432f39549bd823bc73c5e6dc8e1e4 languageName: node linkType: hard @@ -9271,9 +9224,9 @@ __metadata: linkType: hard "caniuse-lite@npm:^1.0.0, caniuse-lite@npm:^1.0.30000981, caniuse-lite@npm:^1.0.30001035, caniuse-lite@npm:^1.0.30001109, caniuse-lite@npm:^1.0.30001111": - version: 1.0.30001112 - resolution: "caniuse-lite@npm:1.0.30001112" - checksum: 08293122dfa4c1493cdc78357008eb1af36eec5a61d6201d689c1d3b4bd62218be8e2eda72f85223e239a7ef00ac0f1dede8aafc24b7d1297f67c627ea241b28 + version: 1.0.30001113 + resolution: "caniuse-lite@npm:1.0.30001113" + checksum: 8409f81f6aa3c2a927aa6b0b96b76ed050266f5cc00582e1be3c3183f14c31f414cd6cdbebeda4aef86994be8001e30f1ea7b13bf71537f73c606166b44f78de languageName: node linkType: hard @@ -10592,7 +10545,7 @@ __metadata: languageName: node linkType: hard -"cross-fetch@npm:3.0.5": +"cross-fetch@npm:3.0.5, cross-fetch@npm:^3.0.4": version: 3.0.5 resolution: "cross-fetch@npm:3.0.5" dependencies: @@ -11849,9 +11802,9 @@ __metadata: linkType: hard "electron-to-chromium@npm:^1.3.378, electron-to-chromium@npm:^1.3.523": - version: 1.3.526 - resolution: "electron-to-chromium@npm:1.3.526" - checksum: 7a7fa4a9bd412565fc8ea8a40520f245be12b51d1d84a3b15af2540e1e7021d30af1ba77383b10433c028129ea3c303c559b58b1959dae46aeeb963f80cb3811 + version: 1.3.528 + resolution: "electron-to-chromium@npm:1.3.528" + checksum: f0fa5b3c87b3bb485043da687d5f38eb61de03019979a72f92820f9036a8bf476aa8a89f5dd1d9fe529c931745a432b02cf082cee56679cb2204c8517911356b languageName: node linkType: hard @@ -13968,10 +13921,14 @@ fsevents@^1.2.7: languageName: node linkType: hard -"graphql-request@npm:^2.0.0": - version: 2.0.0 - resolution: "graphql-request@npm:2.0.0" - checksum: 6c546ec4dc81c823be43eb5a9a6ff94fda5d0a06a3b381fe0796f82c08fae59ff4164c44744280fc5cdf0aba32cf5202ff640a15ef5f9a4bada275514e66b6b1 +"graphql-request@npm:^3.0.0": + version: 3.0.0 + resolution: "graphql-request@npm:3.0.0" + dependencies: + cross-fetch: ^3.0.4 + peerDependencies: + graphql: 14.x || 15.x + checksum: 7de3794166f74f9d8ac4dc16e1359875034e503436f744202e0ea8a133e77111865e7c554bac527885ae3038cba3acb2d417abafe64a31a4b8322b1f2ff3cc21 languageName: node linkType: hard @@ -15647,6 +15604,13 @@ fsevents@^1.2.7: languageName: node linkType: hard +"is-promise@npm:4.0.0": + version: 4.0.0 + resolution: "is-promise@npm:4.0.0" + checksum: 7085bdc4eaff389c5730a1d54f014880e90ca1e4b7f0a49de9f3c5f5d2fb9e0c3a878ac226d3aa9190bfe4a78400e66d911427ef4812455756293cdb02fb05cf + languageName: node + linkType: hard + "is-promise@npm:^2.1.0": version: 2.2.2 resolution: "is-promise@npm:2.2.2" @@ -16036,29 +16000,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest-cli@npm:^26.0.1, jest-cli@npm:^26.2.2": - version: 26.2.2 - resolution: "jest-cli@npm:26.2.2" - dependencies: - "@jest/core": ^26.3.0 - "@jest/test-result": ^26.3.0 - "@jest/types": ^26.3.0 - chalk: ^4.0.0 - exit: ^0.1.2 - graceful-fs: ^4.2.4 - import-local: ^3.0.2 - is-ci: ^2.0.0 - jest-config: ^26.3.0 - jest-util: ^26.3.0 - jest-validate: ^26.3.0 - prompts: ^2.0.1 - yargs: ^15.3.1 - bin: - jest: bin/jest.js - checksum: 1640bd0d4b79be63ae5e558d47bb977c09ec57be8bdf31a88016262ed4ce9af66723e6b5050d93b8e18485ecedb3e6a31e349942068dc66454a578ca350a09da - languageName: node - linkType: hard - "jest-cli@npm:^26.3.0": version: 26.3.0 resolution: "jest-cli@npm:26.3.0" @@ -16916,32 +16857,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"jest@npm:26.0.1": - version: 26.0.1 - resolution: "jest@npm:26.0.1" - dependencies: - "@jest/core": ^26.0.1 - import-local: ^3.0.2 - jest-cli: ^26.0.1 - bin: - jest: bin/jest.js - checksum: ede5edbfa183057b4bb1bd4f4c43c402844e6f5b7871fd1f266c3a318839bc8cd07bc77024d680da9c6f7a47c548e67c809a478e49673bd5307d4a2b752b33c1 - languageName: node - linkType: hard - -"jest@npm:26.2.2": - version: 26.2.2 - resolution: "jest@npm:26.2.2" - dependencies: - "@jest/core": ^26.3.0 - import-local: ^3.0.2 - jest-cli: ^26.3.0 - bin: - jest: bin/jest.js - checksum: 3e41a3d5e4e4a602387ac68092cb7f3be33a016c8433a64c8d7bd02d48acb40e364b2c838fe470f6c8102580ac6aedfa4e8959a89749b5ecfc98b1bf25715771 - languageName: node - linkType: hard - "jest@npm:26.3.0": version: 26.3.0 resolution: "jest@npm:26.3.0" @@ -17650,8 +17565,8 @@ fsevents@^1.2.7: linkType: hard "listr2@npm:^2.1.0": - version: 2.4.1 - resolution: "listr2@npm:2.4.1" + version: 2.5.1 + resolution: "listr2@npm:2.5.1" dependencies: chalk: ^4.1.0 cli-truncate: ^2.1.0 @@ -17659,11 +17574,11 @@ fsevents@^1.2.7: indent-string: ^4.0.0 log-update: ^4.0.0 p-map: ^4.0.0 - rxjs: ^6.6.0 + rxjs: ^6.6.2 through: ^2.3.8 peerDependencies: enquirer: ">= 2.3.0 < 3" - checksum: 0deb2f6174551c54080aa2e6f3b5d5eecc316ef52cde1075e3b872c20de0ee01bacc9777e21a7ec294e621e2c7462943de67f55574e287688bfee0e64e9fbe22 + checksum: e746edec471ade98aed1e6bfb4ca920e71d414a8be61a2bdcd8d090ceb63540ac732ecde6d0087953095bac08f49143fc912f8789855dad519b528bfcc65821a languageName: node linkType: hard @@ -18523,23 +18438,21 @@ fsevents@^1.2.7: linkType: hard "meow@npm:^7.0.0": - version: 7.0.1 - resolution: "meow@npm:7.0.1" + version: 7.1.0 + resolution: "meow@npm:7.1.0" dependencies: "@types/minimist": ^1.2.0 - arrify: ^2.0.1 - camelcase: ^6.0.0 camelcase-keys: ^6.2.2 decamelize-keys: ^1.1.0 hard-rejection: ^2.1.0 - minimist-options: ^4.0.2 + minimist-options: 4.1.0 normalize-package-data: ^2.5.0 read-pkg-up: ^7.0.1 redent: ^3.0.0 trim-newlines: ^3.0.0 type-fest: ^0.13.1 yargs-parser: ^18.1.3 - checksum: a14153d1ac9e5d10e59e4d75b117261fa216ffbdfeaecc9b4f96a56d32de2b426f774dc53e8a079e21816b834c6c41969a78f15711b627d13fed0fdd1b9f8906 + checksum: ee2470f2ee727dba6de3320e9a45d673180d180fbb72acebf8f54c4b6545e8c0e80ce85ae5fe3d129656c12708f1a93911384868383ae55f3dbbd5112d7105e3 languageName: node linkType: hard @@ -18774,24 +18687,24 @@ fsevents@^1.2.7: languageName: node linkType: hard -"minimist-options@npm:^3.0.1": - version: 3.0.2 - resolution: "minimist-options@npm:3.0.2" +"minimist-options@npm:4.1.0": + version: 4.1.0 + resolution: "minimist-options@npm:4.1.0" dependencies: arrify: ^1.0.1 is-plain-obj: ^1.1.0 - checksum: 3b265ce72ef1a55bab293b0c6dce4a44f89fcdf2dd096c6a629defb30b4928fd3770931d89b5e14ac1253178cbeed3af39227f0bdfb87bef49af93b67a48eb7a + kind-of: ^6.0.3 + checksum: 51f1aba56f9c2c2986d85c98a29abec26c632019abd2966a151029cf2cf0903d81894781460e0d5755d4f899bb3884bc86fc9af36ab31469a38d82cf74f4f651 languageName: node linkType: hard -"minimist-options@npm:^4.0.2": - version: 4.1.0 - resolution: "minimist-options@npm:4.1.0" +"minimist-options@npm:^3.0.1": + version: 3.0.2 + resolution: "minimist-options@npm:3.0.2" dependencies: arrify: ^1.0.1 is-plain-obj: ^1.1.0 - kind-of: ^6.0.3 - checksum: 51f1aba56f9c2c2986d85c98a29abec26c632019abd2966a151029cf2cf0903d81894781460e0d5755d4f899bb3884bc86fc9af36ab31469a38d82cf74f4f651 + checksum: 3b265ce72ef1a55bab293b0c6dce4a44f89fcdf2dd096c6a629defb30b4928fd3770931d89b5e14ac1253178cbeed3af39227f0bdfb87bef49af93b67a48eb7a languageName: node linkType: hard @@ -19997,15 +19910,6 @@ fsevents@^1.2.7: languageName: node linkType: hard -"otplib@npm:11.0.1": - version: 11.0.1 - resolution: "otplib@npm:11.0.1" - dependencies: - thirty-two: 1.0.2 - checksum: 3823e1c5791767394c67a64f7a436e544dc58dd5eb389bd0914feec51ec327d7ebb07484333d9f886a503a68704efd07a2391f602f10c7b8c1419c89cb944dd0 - languageName: node - linkType: hard - "otplib@npm:12.0.1": version: 12.0.1 resolution: "otplib@npm:12.0.1" @@ -23570,7 +23474,7 @@ resolve@1.1.7: languageName: node linkType: hard -"rxjs@npm:^6.3.3, rxjs@npm:^6.4.0, rxjs@npm:^6.5.2, rxjs@npm:^6.5.3, rxjs@npm:^6.6.0": +"rxjs@npm:^6.3.3, rxjs@npm:^6.4.0, rxjs@npm:^6.5.2, rxjs@npm:^6.5.3, rxjs@npm:^6.6.0, rxjs@npm:^6.6.2": version: 6.6.2 resolution: "rxjs@npm:6.6.2" dependencies: @@ -25354,7 +25258,7 @@ resolve@1.1.7: languageName: node linkType: hard -"thirty-two@npm:1.0.2, thirty-two@npm:^1.0.2": +"thirty-two@npm:^1.0.2": version: 1.0.2 resolution: "thirty-two@npm:1.0.2" checksum: 81c46a540b8f8984e3f39dbae6df0b1407cfa0b4d0ec17d5aa392d465f033bcc5dbe910260ccd4424711627890ad8b20ba67d9019fbd15f03f2658ce652b2847 @@ -25723,13 +25627,6 @@ resolve@1.1.7: languageName: node linkType: hard -"tslib@npm:1.10.0": - version: 1.10.0 - resolution: "tslib@npm:1.10.0" - checksum: d03db5b8d205cd908421bd16c53c7912b857e4cbe4a54ea2b5f7c7a22cd86317462ea1783b093a36d78a1611fa10baf51696a94bb5c1e13c818145b8954a02c9 - languageName: node - linkType: hard - "tslib@npm:1.11.1": version: 1.11.1 resolution: "tslib@npm:1.11.1" @@ -27168,11 +27065,11 @@ typescript@3.9.7: linkType: hard "windows-release@npm:^3.1.0": - version: 3.3.1 - resolution: "windows-release@npm:3.3.1" + version: 3.3.3 + resolution: "windows-release@npm:3.3.3" dependencies: execa: ^1.0.0 - checksum: 209dd36f044399c4d1c52b8352ba924d2d79da51959a1e5aa34a22b67e869a513df430f618cb897002c4be014e180f57a5c3d160208605352053f54887bffb2d + checksum: 87a218d7e15ffbe5f0a6bd6e0e989a6d57d1e481c0c2939b356de0581d3d467e3f4e6457d9420867a517ee681ef46ac417179d6d720d3e9d20430735d7fea99c languageName: node linkType: hard From 3e930bc6cdd7e73830e03e963d0c1562cb883737 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Pradel?= Date: Wed, 12 Aug 2020 10:41:47 +0200 Subject: [PATCH 138/146] feat(server)!: loginWithService return challenge (#1045) --- packages/graphql-api/introspection.json | 2 +- packages/graphql-api/src/models.ts | 26 ++++++- .../graphql-api/src/modules/accounts/index.ts | 4 +- .../src/modules/accounts/resolvers/index.ts | 15 ++++ .../src/modules/accounts/resolvers/user.ts | 1 - .../src/modules/accounts/schema/mutation.ts | 2 +- .../graphql-api/src/modules/core/schema.ts | 6 ++ .../graphql-client/src/graphql-operations.ts | 13 +++- .../mutations/login-with-service.graphql | 16 ++-- packages/mfa/src/accounts-mfa.ts | 4 + .../src/endpoints/oauth/provider-callback.ts | 12 +-- packages/server/__tests__/account-server.ts | 78 ++++++++++++++++++- packages/server/src/accounts-server.ts | 43 ++++++++-- .../src/types/accounts-server-options.ts | 5 ++ website/docs/mfa/create-custom.md | 52 +++++++++++++ website/docs/mfa/introduction.md | 31 ++++++++ 16 files changed, 281 insertions(+), 29 deletions(-) create mode 100644 packages/graphql-api/src/modules/accounts/resolvers/index.ts delete mode 100644 packages/graphql-api/src/modules/accounts/resolvers/user.ts create mode 100644 website/docs/mfa/create-custom.md create mode 100644 website/docs/mfa/introduction.md diff --git a/packages/graphql-api/introspection.json b/packages/graphql-api/introspection.json index ecad15584..b2ab1904d 100644 --- a/packages/graphql-api/introspection.json +++ b/packages/graphql-api/introspection.json @@ -1 +1 @@ -{"__schema":{"queryType":{"name":"Query"},"mutationType":{"name":"Mutation"},"subscriptionType":null,"types":[{"kind":"OBJECT","name":"Query","description":null,"fields":[{"name":"twoFactorSecret","description":null,"args":[],"type":{"kind":"OBJECT","name":"TwoFactorSecretKey","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"getUser","description":null,"args":[],"type":{"kind":"OBJECT","name":"User","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"TwoFactorSecretKey","description":null,"fields":[{"name":"ascii","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"base32","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"hex","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"qr_code_ascii","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"qr_code_hex","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"qr_code_base32","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"google_auth_qr","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"otpauth_url","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"String","description":"The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"User","description":null,"fields":[{"name":"id","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"emails","description":null,"args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"EmailRecord","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"username","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"ID","description":"The `ID` scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as `\"4\"`) or integer (such as `4`) input value will be accepted as an ID.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"EmailRecord","description":null,"fields":[{"name":"address","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"verified","description":null,"args":[],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"Boolean","description":"The `Boolean` scalar type represents `true` or `false`.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"Mutation","description":null,"fields":[{"name":"createUser","description":null,"args":[{"name":"user","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"INPUT_OBJECT","name":"CreateUserInput","ofType":null}},"defaultValue":null}],"type":{"kind":"OBJECT","name":"CreateUserResult","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"verifyEmail","description":null,"args":[{"name":"token","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"resetPassword","description":null,"args":[{"name":"token","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"newPassword","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"OBJECT","name":"LoginResult","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"sendVerificationEmail","description":null,"args":[{"name":"email","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"sendResetPasswordEmail","description":null,"args":[{"name":"email","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"addEmail","description":null,"args":[{"name":"newEmail","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"changePassword","description":null,"args":[{"name":"oldPassword","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"newPassword","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"twoFactorSet","description":null,"args":[{"name":"secret","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"INPUT_OBJECT","name":"TwoFactorSecretKeyInput","ofType":null}},"defaultValue":null},{"name":"code","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"twoFactorUnset","description":null,"args":[{"name":"code","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"impersonate","description":null,"args":[{"name":"accessToken","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"impersonated","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"INPUT_OBJECT","name":"ImpersonationUserIdentityInput","ofType":null}},"defaultValue":null}],"type":{"kind":"OBJECT","name":"ImpersonateReturn","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"refreshTokens","description":null,"args":[{"name":"accessToken","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"refreshToken","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"OBJECT","name":"LoginResult","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"logout","description":null,"args":[],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"authenticate","description":null,"args":[{"name":"serviceName","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"params","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"INPUT_OBJECT","name":"AuthenticateParamsInput","ofType":null}},"defaultValue":null}],"type":{"kind":"OBJECT","name":"LoginResult","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"verifyAuthentication","description":null,"args":[{"name":"serviceName","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"params","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"INPUT_OBJECT","name":"AuthenticateParamsInput","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"CreateUserInput","description":null,"fields":null,"inputFields":[{"name":"username","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"email","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"password","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"CreateUserResult","description":null,"fields":[{"name":"userId","description":null,"args":[],"type":{"kind":"SCALAR","name":"ID","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"loginResult","description":null,"args":[],"type":{"kind":"OBJECT","name":"LoginResult","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"LoginResult","description":null,"fields":[{"name":"sessionId","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"tokens","description":null,"args":[],"type":{"kind":"OBJECT","name":"Tokens","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"user","description":null,"args":[],"type":{"kind":"OBJECT","name":"User","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"Tokens","description":null,"fields":[{"name":"refreshToken","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"accessToken","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"TwoFactorSecretKeyInput","description":null,"fields":null,"inputFields":[{"name":"ascii","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"base32","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"hex","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"qr_code_ascii","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"qr_code_hex","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"qr_code_base32","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"google_auth_qr","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"otpauth_url","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"ImpersonationUserIdentityInput","description":null,"fields":null,"inputFields":[{"name":"userId","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"username","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"email","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"ImpersonateReturn","description":null,"fields":[{"name":"authorized","description":null,"args":[],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"tokens","description":null,"args":[],"type":{"kind":"OBJECT","name":"Tokens","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"user","description":null,"args":[],"type":{"kind":"OBJECT","name":"User","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"AuthenticateParamsInput","description":null,"fields":null,"inputFields":[{"name":"access_token","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"access_token_secret","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"provider","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"password","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"user","description":null,"type":{"kind":"INPUT_OBJECT","name":"UserInput","ofType":null},"defaultValue":null},{"name":"code","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"UserInput","description":null,"fields":null,"inputFields":[{"name":"id","description":null,"type":{"kind":"SCALAR","name":"ID","ofType":null},"defaultValue":null},{"name":"email","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"username","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__Schema","description":"A GraphQL Schema defines the capabilities of a GraphQL server. It exposes all available types and directives on the server, as well as the entry points for query, mutation, and subscription operations.","fields":[{"name":"types","description":"A list of all types supported by this server.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}}}},"isDeprecated":false,"deprecationReason":null},{"name":"queryType","description":"The type that query operations will be rooted at.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"mutationType","description":"If this server supports mutation, the type that mutation operations will be rooted at.","args":[],"type":{"kind":"OBJECT","name":"__Type","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"subscriptionType","description":"If this server support subscription, the type that subscription operations will be rooted at.","args":[],"type":{"kind":"OBJECT","name":"__Type","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"directives","description":"A list of all directives supported by this server.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Directive","ofType":null}}}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__Type","description":"The fundamental unit of any GraphQL Schema is the type. There are many kinds of types in GraphQL as represented by the `__TypeKind` enum.\n\nDepending on the kind of a type, certain fields describe information about that type. Scalar types provide no information beyond a name and description, while Enum types provide their values. Object and Interface types provide the fields they describe. Abstract types, Union and Interface, provide the Object types possible at runtime. List and NonNull types compose other types.","fields":[{"name":"kind","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"ENUM","name":"__TypeKind","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"name","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"fields","description":null,"args":[{"name":"includeDeprecated","description":null,"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"defaultValue":"false"}],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Field","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"interfaces","description":null,"args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"possibleTypes","description":null,"args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"enumValues","description":null,"args":[{"name":"includeDeprecated","description":null,"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"defaultValue":"false"}],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__EnumValue","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"inputFields","description":null,"args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__InputValue","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"ofType","description":null,"args":[],"type":{"kind":"OBJECT","name":"__Type","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"ENUM","name":"__TypeKind","description":"An enum describing what kind of type a given `__Type` is.","fields":null,"inputFields":null,"interfaces":null,"enumValues":[{"name":"SCALAR","description":"Indicates this type is a scalar.","isDeprecated":false,"deprecationReason":null},{"name":"OBJECT","description":"Indicates this type is an object. `fields` and `interfaces` are valid fields.","isDeprecated":false,"deprecationReason":null},{"name":"INTERFACE","description":"Indicates this type is an interface. `fields` and `possibleTypes` are valid fields.","isDeprecated":false,"deprecationReason":null},{"name":"UNION","description":"Indicates this type is a union. `possibleTypes` is a valid field.","isDeprecated":false,"deprecationReason":null},{"name":"ENUM","description":"Indicates this type is an enum. `enumValues` is a valid field.","isDeprecated":false,"deprecationReason":null},{"name":"INPUT_OBJECT","description":"Indicates this type is an input object. `inputFields` is a valid field.","isDeprecated":false,"deprecationReason":null},{"name":"LIST","description":"Indicates this type is a list. `ofType` is a valid field.","isDeprecated":false,"deprecationReason":null},{"name":"NON_NULL","description":"Indicates this type is a non-null. `ofType` is a valid field.","isDeprecated":false,"deprecationReason":null}],"possibleTypes":null},{"kind":"OBJECT","name":"__Field","description":"Object and Interface types are described by a list of Fields, each of which has a name, potentially a list of arguments, and a return type.","fields":[{"name":"name","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"args","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__InputValue","ofType":null}}}},"isDeprecated":false,"deprecationReason":null},{"name":"type","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"isDeprecated","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"deprecationReason","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__InputValue","description":"Arguments provided to Fields or Directives and the input fields of an InputObject are represented as Input Values which describe their type and optionally a default value.","fields":[{"name":"name","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"type","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"defaultValue","description":"A GraphQL-formatted string representing the default value for this input value.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__EnumValue","description":"One possible value for a given Enum. Enum values are unique values, not a placeholder for a string or numeric value. However an Enum value is returned in a JSON response as a string.","fields":[{"name":"name","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"isDeprecated","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"deprecationReason","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__Directive","description":"A Directive provides a way to describe alternate runtime execution and type validation behavior in a GraphQL document.\n\nIn some cases, you need to provide options to alter GraphQL's execution behavior in ways field arguments will not suffice, such as conditionally including or skipping a field. Directives provide this by describing additional information to the executor.","fields":[{"name":"name","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"locations","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"ENUM","name":"__DirectiveLocation","ofType":null}}}},"isDeprecated":false,"deprecationReason":null},{"name":"args","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__InputValue","ofType":null}}}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"ENUM","name":"__DirectiveLocation","description":"A Directive can be adjacent to many parts of the GraphQL language, a __DirectiveLocation describes one such possible adjacencies.","fields":null,"inputFields":null,"interfaces":null,"enumValues":[{"name":"QUERY","description":"Location adjacent to a query operation.","isDeprecated":false,"deprecationReason":null},{"name":"MUTATION","description":"Location adjacent to a mutation operation.","isDeprecated":false,"deprecationReason":null},{"name":"SUBSCRIPTION","description":"Location adjacent to a subscription operation.","isDeprecated":false,"deprecationReason":null},{"name":"FIELD","description":"Location adjacent to a field.","isDeprecated":false,"deprecationReason":null},{"name":"FRAGMENT_DEFINITION","description":"Location adjacent to a fragment definition.","isDeprecated":false,"deprecationReason":null},{"name":"FRAGMENT_SPREAD","description":"Location adjacent to a fragment spread.","isDeprecated":false,"deprecationReason":null},{"name":"INLINE_FRAGMENT","description":"Location adjacent to an inline fragment.","isDeprecated":false,"deprecationReason":null},{"name":"VARIABLE_DEFINITION","description":"Location adjacent to a variable definition.","isDeprecated":false,"deprecationReason":null},{"name":"SCHEMA","description":"Location adjacent to a schema definition.","isDeprecated":false,"deprecationReason":null},{"name":"SCALAR","description":"Location adjacent to a scalar definition.","isDeprecated":false,"deprecationReason":null},{"name":"OBJECT","description":"Location adjacent to an object type definition.","isDeprecated":false,"deprecationReason":null},{"name":"FIELD_DEFINITION","description":"Location adjacent to a field definition.","isDeprecated":false,"deprecationReason":null},{"name":"ARGUMENT_DEFINITION","description":"Location adjacent to an argument definition.","isDeprecated":false,"deprecationReason":null},{"name":"INTERFACE","description":"Location adjacent to an interface definition.","isDeprecated":false,"deprecationReason":null},{"name":"UNION","description":"Location adjacent to a union definition.","isDeprecated":false,"deprecationReason":null},{"name":"ENUM","description":"Location adjacent to an enum definition.","isDeprecated":false,"deprecationReason":null},{"name":"ENUM_VALUE","description":"Location adjacent to an enum value definition.","isDeprecated":false,"deprecationReason":null},{"name":"INPUT_OBJECT","description":"Location adjacent to an input object type definition.","isDeprecated":false,"deprecationReason":null},{"name":"INPUT_FIELD_DEFINITION","description":"Location adjacent to an input object field definition.","isDeprecated":false,"deprecationReason":null}],"possibleTypes":null}],"directives":[{"name":"auth","description":null,"locations":["FIELD_DEFINITION","OBJECT"],"args":[]},{"name":"skip","description":"Directs the executor to skip this field or fragment when the `if` argument is true.","locations":["FIELD","FRAGMENT_SPREAD","INLINE_FRAGMENT"],"args":[{"name":"if","description":"Skipped when true.","type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"defaultValue":null}]},{"name":"include","description":"Directs the executor to include this field or fragment only when the `if` argument is true.","locations":["FIELD","FRAGMENT_SPREAD","INLINE_FRAGMENT"],"args":[{"name":"if","description":"Included when true.","type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"defaultValue":null}]},{"name":"deprecated","description":"Marks an element of a GraphQL schema as no longer supported.","locations":["FIELD_DEFINITION","ENUM_VALUE"],"args":[{"name":"reason","description":"Explains why this element was deprecated, usually also including a suggestion for how to access supported similar data. Formatted using the Markdown syntax (as specified by [CommonMark](https://commonmark.org/).","type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":"\"No longer supported\""}]}]}} \ No newline at end of file +{"__schema":{"queryType":{"name":"Query"},"mutationType":{"name":"Mutation"},"subscriptionType":null,"types":[{"kind":"OBJECT","name":"Query","description":null,"fields":[{"name":"twoFactorSecret","description":null,"args":[],"type":{"kind":"OBJECT","name":"TwoFactorSecretKey","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"getUser","description":null,"args":[],"type":{"kind":"OBJECT","name":"User","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"TwoFactorSecretKey","description":null,"fields":[{"name":"ascii","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"base32","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"hex","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"qr_code_ascii","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"qr_code_hex","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"qr_code_base32","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"google_auth_qr","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"otpauth_url","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"String","description":"The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"User","description":null,"fields":[{"name":"id","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"emails","description":null,"args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"EmailRecord","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"username","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"ID","description":"The `ID` scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as `\"4\"`) or integer (such as `4`) input value will be accepted as an ID.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"EmailRecord","description":null,"fields":[{"name":"address","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"verified","description":null,"args":[],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"Boolean","description":"The `Boolean` scalar type represents `true` or `false`.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"Mutation","description":null,"fields":[{"name":"createUser","description":null,"args":[{"name":"user","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"INPUT_OBJECT","name":"CreateUserInput","ofType":null}},"defaultValue":null}],"type":{"kind":"OBJECT","name":"CreateUserResult","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"verifyEmail","description":null,"args":[{"name":"token","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"resetPassword","description":null,"args":[{"name":"token","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"newPassword","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"OBJECT","name":"LoginResult","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"sendVerificationEmail","description":null,"args":[{"name":"email","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"sendResetPasswordEmail","description":null,"args":[{"name":"email","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"addEmail","description":null,"args":[{"name":"newEmail","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"changePassword","description":null,"args":[{"name":"oldPassword","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"newPassword","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"twoFactorSet","description":null,"args":[{"name":"secret","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"INPUT_OBJECT","name":"TwoFactorSecretKeyInput","ofType":null}},"defaultValue":null},{"name":"code","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"twoFactorUnset","description":null,"args":[{"name":"code","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"impersonate","description":null,"args":[{"name":"accessToken","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"impersonated","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"INPUT_OBJECT","name":"ImpersonationUserIdentityInput","ofType":null}},"defaultValue":null}],"type":{"kind":"OBJECT","name":"ImpersonateReturn","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"refreshTokens","description":null,"args":[{"name":"accessToken","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"refreshToken","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"OBJECT","name":"LoginResult","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"logout","description":null,"args":[],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"authenticate","description":null,"args":[{"name":"serviceName","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"params","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"INPUT_OBJECT","name":"AuthenticateParamsInput","ofType":null}},"defaultValue":null}],"type":{"kind":"UNION","name":"AuthenticationResult","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"verifyAuthentication","description":null,"args":[{"name":"serviceName","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"params","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"INPUT_OBJECT","name":"AuthenticateParamsInput","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"CreateUserInput","description":null,"fields":null,"inputFields":[{"name":"username","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"email","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"password","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"CreateUserResult","description":null,"fields":[{"name":"userId","description":null,"args":[],"type":{"kind":"SCALAR","name":"ID","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"loginResult","description":null,"args":[],"type":{"kind":"OBJECT","name":"LoginResult","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"LoginResult","description":null,"fields":[{"name":"sessionId","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"tokens","description":null,"args":[],"type":{"kind":"OBJECT","name":"Tokens","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"user","description":null,"args":[],"type":{"kind":"OBJECT","name":"User","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"Tokens","description":null,"fields":[{"name":"refreshToken","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"accessToken","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"TwoFactorSecretKeyInput","description":null,"fields":null,"inputFields":[{"name":"ascii","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"base32","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"hex","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"qr_code_ascii","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"qr_code_hex","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"qr_code_base32","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"google_auth_qr","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"otpauth_url","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"ImpersonationUserIdentityInput","description":null,"fields":null,"inputFields":[{"name":"userId","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"username","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"email","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"ImpersonateReturn","description":null,"fields":[{"name":"authorized","description":null,"args":[],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"tokens","description":null,"args":[],"type":{"kind":"OBJECT","name":"Tokens","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"user","description":null,"args":[],"type":{"kind":"OBJECT","name":"User","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"AuthenticateParamsInput","description":null,"fields":null,"inputFields":[{"name":"access_token","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"access_token_secret","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"provider","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"password","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"user","description":null,"type":{"kind":"INPUT_OBJECT","name":"UserInput","ofType":null},"defaultValue":null},{"name":"code","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"UserInput","description":null,"fields":null,"inputFields":[{"name":"id","description":null,"type":{"kind":"SCALAR","name":"ID","ofType":null},"defaultValue":null},{"name":"email","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"username","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"UNION","name":"AuthenticationResult","description":null,"fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":[{"kind":"OBJECT","name":"LoginResult","ofType":null},{"kind":"OBJECT","name":"MultiFactorResult","ofType":null}]},{"kind":"OBJECT","name":"MultiFactorResult","description":null,"fields":[{"name":"mfaToken","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__Schema","description":"A GraphQL Schema defines the capabilities of a GraphQL server. It exposes all available types and directives on the server, as well as the entry points for query, mutation, and subscription operations.","fields":[{"name":"types","description":"A list of all types supported by this server.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}}}},"isDeprecated":false,"deprecationReason":null},{"name":"queryType","description":"The type that query operations will be rooted at.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"mutationType","description":"If this server supports mutation, the type that mutation operations will be rooted at.","args":[],"type":{"kind":"OBJECT","name":"__Type","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"subscriptionType","description":"If this server support subscription, the type that subscription operations will be rooted at.","args":[],"type":{"kind":"OBJECT","name":"__Type","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"directives","description":"A list of all directives supported by this server.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Directive","ofType":null}}}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__Type","description":"The fundamental unit of any GraphQL Schema is the type. There are many kinds of types in GraphQL as represented by the `__TypeKind` enum.\n\nDepending on the kind of a type, certain fields describe information about that type. Scalar types provide no information beyond a name and description, while Enum types provide their values. Object and Interface types provide the fields they describe. Abstract types, Union and Interface, provide the Object types possible at runtime. List and NonNull types compose other types.","fields":[{"name":"kind","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"ENUM","name":"__TypeKind","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"name","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"fields","description":null,"args":[{"name":"includeDeprecated","description":null,"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"defaultValue":"false"}],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Field","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"interfaces","description":null,"args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"possibleTypes","description":null,"args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"enumValues","description":null,"args":[{"name":"includeDeprecated","description":null,"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"defaultValue":"false"}],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__EnumValue","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"inputFields","description":null,"args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__InputValue","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"ofType","description":null,"args":[],"type":{"kind":"OBJECT","name":"__Type","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"ENUM","name":"__TypeKind","description":"An enum describing what kind of type a given `__Type` is.","fields":null,"inputFields":null,"interfaces":null,"enumValues":[{"name":"SCALAR","description":"Indicates this type is a scalar.","isDeprecated":false,"deprecationReason":null},{"name":"OBJECT","description":"Indicates this type is an object. `fields` and `interfaces` are valid fields.","isDeprecated":false,"deprecationReason":null},{"name":"INTERFACE","description":"Indicates this type is an interface. `fields` and `possibleTypes` are valid fields.","isDeprecated":false,"deprecationReason":null},{"name":"UNION","description":"Indicates this type is a union. `possibleTypes` is a valid field.","isDeprecated":false,"deprecationReason":null},{"name":"ENUM","description":"Indicates this type is an enum. `enumValues` is a valid field.","isDeprecated":false,"deprecationReason":null},{"name":"INPUT_OBJECT","description":"Indicates this type is an input object. `inputFields` is a valid field.","isDeprecated":false,"deprecationReason":null},{"name":"LIST","description":"Indicates this type is a list. `ofType` is a valid field.","isDeprecated":false,"deprecationReason":null},{"name":"NON_NULL","description":"Indicates this type is a non-null. `ofType` is a valid field.","isDeprecated":false,"deprecationReason":null}],"possibleTypes":null},{"kind":"OBJECT","name":"__Field","description":"Object and Interface types are described by a list of Fields, each of which has a name, potentially a list of arguments, and a return type.","fields":[{"name":"name","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"args","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__InputValue","ofType":null}}}},"isDeprecated":false,"deprecationReason":null},{"name":"type","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"isDeprecated","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"deprecationReason","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__InputValue","description":"Arguments provided to Fields or Directives and the input fields of an InputObject are represented as Input Values which describe their type and optionally a default value.","fields":[{"name":"name","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"type","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"defaultValue","description":"A GraphQL-formatted string representing the default value for this input value.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__EnumValue","description":"One possible value for a given Enum. Enum values are unique values, not a placeholder for a string or numeric value. However an Enum value is returned in a JSON response as a string.","fields":[{"name":"name","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"isDeprecated","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"deprecationReason","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__Directive","description":"A Directive provides a way to describe alternate runtime execution and type validation behavior in a GraphQL document.\n\nIn some cases, you need to provide options to alter GraphQL's execution behavior in ways field arguments will not suffice, such as conditionally including or skipping a field. Directives provide this by describing additional information to the executor.","fields":[{"name":"name","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"locations","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"ENUM","name":"__DirectiveLocation","ofType":null}}}},"isDeprecated":false,"deprecationReason":null},{"name":"args","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__InputValue","ofType":null}}}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"ENUM","name":"__DirectiveLocation","description":"A Directive can be adjacent to many parts of the GraphQL language, a __DirectiveLocation describes one such possible adjacencies.","fields":null,"inputFields":null,"interfaces":null,"enumValues":[{"name":"QUERY","description":"Location adjacent to a query operation.","isDeprecated":false,"deprecationReason":null},{"name":"MUTATION","description":"Location adjacent to a mutation operation.","isDeprecated":false,"deprecationReason":null},{"name":"SUBSCRIPTION","description":"Location adjacent to a subscription operation.","isDeprecated":false,"deprecationReason":null},{"name":"FIELD","description":"Location adjacent to a field.","isDeprecated":false,"deprecationReason":null},{"name":"FRAGMENT_DEFINITION","description":"Location adjacent to a fragment definition.","isDeprecated":false,"deprecationReason":null},{"name":"FRAGMENT_SPREAD","description":"Location adjacent to a fragment spread.","isDeprecated":false,"deprecationReason":null},{"name":"INLINE_FRAGMENT","description":"Location adjacent to an inline fragment.","isDeprecated":false,"deprecationReason":null},{"name":"VARIABLE_DEFINITION","description":"Location adjacent to a variable definition.","isDeprecated":false,"deprecationReason":null},{"name":"SCHEMA","description":"Location adjacent to a schema definition.","isDeprecated":false,"deprecationReason":null},{"name":"SCALAR","description":"Location adjacent to a scalar definition.","isDeprecated":false,"deprecationReason":null},{"name":"OBJECT","description":"Location adjacent to an object type definition.","isDeprecated":false,"deprecationReason":null},{"name":"FIELD_DEFINITION","description":"Location adjacent to a field definition.","isDeprecated":false,"deprecationReason":null},{"name":"ARGUMENT_DEFINITION","description":"Location adjacent to an argument definition.","isDeprecated":false,"deprecationReason":null},{"name":"INTERFACE","description":"Location adjacent to an interface definition.","isDeprecated":false,"deprecationReason":null},{"name":"UNION","description":"Location adjacent to a union definition.","isDeprecated":false,"deprecationReason":null},{"name":"ENUM","description":"Location adjacent to an enum definition.","isDeprecated":false,"deprecationReason":null},{"name":"ENUM_VALUE","description":"Location adjacent to an enum value definition.","isDeprecated":false,"deprecationReason":null},{"name":"INPUT_OBJECT","description":"Location adjacent to an input object type definition.","isDeprecated":false,"deprecationReason":null},{"name":"INPUT_FIELD_DEFINITION","description":"Location adjacent to an input object field definition.","isDeprecated":false,"deprecationReason":null}],"possibleTypes":null}],"directives":[{"name":"auth","description":null,"locations":["FIELD_DEFINITION","OBJECT"],"args":[]},{"name":"skip","description":"Directs the executor to skip this field or fragment when the `if` argument is true.","locations":["FIELD","FRAGMENT_SPREAD","INLINE_FRAGMENT"],"args":[{"name":"if","description":"Skipped when true.","type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"defaultValue":null}]},{"name":"include","description":"Directs the executor to include this field or fragment only when the `if` argument is true.","locations":["FIELD","FRAGMENT_SPREAD","INLINE_FRAGMENT"],"args":[{"name":"if","description":"Included when true.","type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"defaultValue":null}]},{"name":"deprecated","description":"Marks an element of a GraphQL schema as no longer supported.","locations":["FIELD_DEFINITION","ENUM_VALUE"],"args":[{"name":"reason","description":"Explains why this element was deprecated, usually also including a suggestion for how to access supported similar data. Formatted using the Markdown syntax (as specified by [CommonMark](https://commonmark.org/).","type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":"\"No longer supported\""}]}]}} \ No newline at end of file diff --git a/packages/graphql-api/src/models.ts b/packages/graphql-api/src/models.ts index 276e28c30..e4bbbe5aa 100644 --- a/packages/graphql-api/src/models.ts +++ b/packages/graphql-api/src/models.ts @@ -23,6 +23,8 @@ export type AuthenticateParamsInput = { code?: Maybe; }; +export type AuthenticationResult = LoginResult | MultiFactorResult; + export type CreateUserInput = { username?: Maybe; email?: Maybe; @@ -61,6 +63,11 @@ export type LoginResult = { user?: Maybe; }; +export type MultiFactorResult = { + __typename?: 'MultiFactorResult'; + mfaToken: Scalars['String']; +}; + export type Mutation = { __typename?: 'Mutation'; createUser?: Maybe; @@ -75,7 +82,7 @@ export type Mutation = { impersonate?: Maybe; refreshTokens?: Maybe; logout?: Maybe; - authenticate?: Maybe; + authenticate?: Maybe; verifyAuthentication?: Maybe; }; @@ -281,6 +288,8 @@ export type ResolversTypes = { ImpersonateReturn: ResolverTypeWrapper; AuthenticateParamsInput: AuthenticateParamsInput; UserInput: UserInput; + AuthenticationResult: ResolversTypes['LoginResult'] | ResolversTypes['MultiFactorResult']; + MultiFactorResult: ResolverTypeWrapper; }; /** Mapping between all available schema types and the resolvers parents */ @@ -302,12 +311,18 @@ export type ResolversParentTypes = { ImpersonateReturn: ImpersonateReturn; AuthenticateParamsInput: AuthenticateParamsInput; UserInput: UserInput; + AuthenticationResult: ResolversParentTypes['LoginResult'] | ResolversParentTypes['MultiFactorResult']; + MultiFactorResult: MultiFactorResult; }; export type AuthDirectiveArgs = { }; export type AuthDirectiveResolver = DirectiveResolverFn; +export type AuthenticationResultResolvers = { + __resolveType: TypeResolveFn<'LoginResult' | 'MultiFactorResult', ParentType, ContextType>; +}; + export type CreateUserResultResolvers = { userId?: Resolver, ParentType, ContextType>; loginResult?: Resolver, ParentType, ContextType>; @@ -334,6 +349,11 @@ export type LoginResultResolvers; }; +export type MultiFactorResultResolvers = { + mfaToken?: Resolver; + __isTypeOf?: IsTypeOfResolverFn; +}; + export type MutationResolvers = { createUser?: Resolver, ParentType, ContextType, RequireFields>; verifyEmail?: Resolver, ParentType, ContextType, RequireFields>; @@ -347,7 +367,7 @@ export type MutationResolvers, ParentType, ContextType, RequireFields>; refreshTokens?: Resolver, ParentType, ContextType, RequireFields>; logout?: Resolver, ParentType, ContextType>; - authenticate?: Resolver, ParentType, ContextType, RequireFields>; + authenticate?: Resolver, ParentType, ContextType, RequireFields>; verifyAuthentication?: Resolver, ParentType, ContextType, RequireFields>; }; @@ -382,10 +402,12 @@ export type UserResolvers = { + AuthenticationResult?: AuthenticationResultResolvers; CreateUserResult?: CreateUserResultResolvers; EmailRecord?: EmailRecordResolvers; ImpersonateReturn?: ImpersonateReturnResolvers; LoginResult?: LoginResultResolvers; + MultiFactorResult?: MultiFactorResultResolvers; Mutation?: MutationResolvers; Query?: QueryResolvers; Tokens?: TokensResolvers; diff --git a/packages/graphql-api/src/modules/accounts/index.ts b/packages/graphql-api/src/modules/accounts/index.ts index 8cdba17b5..910712cac 100644 --- a/packages/graphql-api/src/modules/accounts/index.ts +++ b/packages/graphql-api/src/modules/accounts/index.ts @@ -10,7 +10,7 @@ import getMutationTypeDefs from './schema/mutation'; import getSchemaDef from './schema/schema-def'; import { Query } from './resolvers/query'; import { Mutation } from './resolvers/mutation'; -import { User as UserResolvers } from './resolvers/user'; +import { resolvers as CustomResolvers } from './resolvers'; import { AccountsPasswordModule } from '../accounts-password'; import { AuthenticatedDirective } from '../../utils/authenticated-directive'; import { context } from '../../utils'; @@ -64,7 +64,7 @@ export const AccountsModule: GraphQLModule< ({ [config.rootQueryName || 'Query']: Query, [config.rootMutationName || 'Mutation']: Mutation, - User: UserResolvers, + ...CustomResolvers, } as any), // If necessary, import AccountsPasswordModule together with this module imports: ({ config }) => [ diff --git a/packages/graphql-api/src/modules/accounts/resolvers/index.ts b/packages/graphql-api/src/modules/accounts/resolvers/index.ts new file mode 100644 index 000000000..573c6d08e --- /dev/null +++ b/packages/graphql-api/src/modules/accounts/resolvers/index.ts @@ -0,0 +1,15 @@ +import { Resolvers } from '../../../models'; + +export const resolvers: Resolvers = { + AuthenticationResult: { + __resolveType(obj) { + if ('sessionId' in obj) { + return 'LoginResult'; + } + if ('mfaToken' in obj) { + return 'MultiFactorResult'; + } + return null; + }, + }, +}; diff --git a/packages/graphql-api/src/modules/accounts/resolvers/user.ts b/packages/graphql-api/src/modules/accounts/resolvers/user.ts deleted file mode 100644 index 43ad76b20..000000000 --- a/packages/graphql-api/src/modules/accounts/resolvers/user.ts +++ /dev/null @@ -1 +0,0 @@ -export const User = {}; diff --git a/packages/graphql-api/src/modules/accounts/schema/mutation.ts b/packages/graphql-api/src/modules/accounts/schema/mutation.ts index dc29521b0..cffd75d6b 100644 --- a/packages/graphql-api/src/modules/accounts/schema/mutation.ts +++ b/packages/graphql-api/src/modules/accounts/schema/mutation.ts @@ -9,7 +9,7 @@ export default (config: AccountsModuleConfig) => gql` # Example: Login with password # authenticate(serviceName: "password", params: {password: "", user: {email: ""}}) - authenticate(serviceName: String!, params: AuthenticateParamsInput!): LoginResult + authenticate(serviceName: String!, params: AuthenticateParamsInput!): AuthenticationResult verifyAuthentication(serviceName: String!, params: AuthenticateParamsInput!): Boolean } `; diff --git a/packages/graphql-api/src/modules/core/schema.ts b/packages/graphql-api/src/modules/core/schema.ts index 2ecfbb9e9..b0fb801af 100644 --- a/packages/graphql-api/src/modules/core/schema.ts +++ b/packages/graphql-api/src/modules/core/schema.ts @@ -23,4 +23,10 @@ export default ({ userAsInterface }: CoreAccountsModuleConfig) => gql` tokens: Tokens user: User } + + type MultiFactorResult { + mfaToken: String! + } + + union AuthenticationResult = LoginResult | MultiFactorResult `; diff --git a/packages/graphql-client/src/graphql-operations.ts b/packages/graphql-client/src/graphql-operations.ts index 909289562..e5adac851 100644 --- a/packages/graphql-client/src/graphql-operations.ts +++ b/packages/graphql-client/src/graphql-operations.ts @@ -21,6 +21,8 @@ export type AuthenticateParamsInput = { code?: Maybe; }; +export type AuthenticationResult = LoginResult | MultiFactorResult; + export type CreateUserInput = { username?: Maybe; email?: Maybe; @@ -59,6 +61,11 @@ export type LoginResult = { user?: Maybe; }; +export type MultiFactorResult = { + __typename?: 'MultiFactorResult'; + mfaToken: Scalars['String']; +}; + export type Mutation = { __typename?: 'Mutation'; createUser?: Maybe; @@ -73,7 +80,7 @@ export type Mutation = { impersonate?: Maybe; refreshTokens?: Maybe; logout?: Maybe; - authenticate?: Maybe; + authenticate?: Maybe; verifyAuthentication?: Maybe; }; @@ -301,7 +308,7 @@ export type AuthenticateMutation = ( { __typename?: 'User' } & UserFieldsFragment )> } - )> } + ) | { __typename?: 'MultiFactorResult' }> } ); export type LogoutMutationVariables = Exact<{ [key: string]: never; }>; @@ -427,7 +434,7 @@ export const AuthenticateWithServiceDocument: DocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"changePassword"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"oldPassword"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"newPassword"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"changePassword"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"oldPassword"},"value":{"kind":"Variable","name":{"kind":"Name","value":"oldPassword"}}},{"kind":"Argument","name":{"kind":"Name","value":"newPassword"},"value":{"kind":"Variable","name":{"kind":"Name","value":"newPassword"}}}],"directives":[]}]}}]}; export const CreateUserDocument: DocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"createUser"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"user"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"CreateUserInput"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"createUser"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"user"},"value":{"kind":"Variable","name":{"kind":"Name","value":"user"}}}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"userId"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"loginResult"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"sessionId"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"tokens"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"refreshToken"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"accessToken"},"arguments":[],"directives":[]}]}},{"kind":"Field","name":{"kind":"Name","value":"user"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"FragmentSpread","name":{"kind":"Name","value":"userFields"},"directives":[]}]}}]}}]}}]}},...UserFieldsFragmentDoc.definitions]}; export const ImpersonateDocument: DocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"impersonate"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"accessToken"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"impersonated"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"ImpersonationUserIdentityInput"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"impersonate"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"accessToken"},"value":{"kind":"Variable","name":{"kind":"Name","value":"accessToken"}}},{"kind":"Argument","name":{"kind":"Name","value":"impersonated"},"value":{"kind":"Variable","name":{"kind":"Name","value":"impersonated"}}}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"authorized"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"tokens"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"refreshToken"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"accessToken"},"arguments":[],"directives":[]}]}},{"kind":"Field","name":{"kind":"Name","value":"user"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"FragmentSpread","name":{"kind":"Name","value":"userFields"},"directives":[]}]}}]}}]}},...UserFieldsFragmentDoc.definitions]}; -export const AuthenticateDocument: DocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"authenticate"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"serviceName"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"params"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"AuthenticateParamsInput"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"authenticate"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"serviceName"},"value":{"kind":"Variable","name":{"kind":"Name","value":"serviceName"}}},{"kind":"Argument","name":{"kind":"Name","value":"params"},"value":{"kind":"Variable","name":{"kind":"Name","value":"params"}}}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"sessionId"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"tokens"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"refreshToken"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"accessToken"},"arguments":[],"directives":[]}]}},{"kind":"Field","name":{"kind":"Name","value":"user"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"FragmentSpread","name":{"kind":"Name","value":"userFields"},"directives":[]}]}}]}}]}},...UserFieldsFragmentDoc.definitions]}; +export const AuthenticateDocument: DocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"authenticate"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"serviceName"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"params"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"AuthenticateParamsInput"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"authenticate"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"serviceName"},"value":{"kind":"Variable","name":{"kind":"Name","value":"serviceName"}}},{"kind":"Argument","name":{"kind":"Name","value":"params"},"value":{"kind":"Variable","name":{"kind":"Name","value":"params"}}}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"LoginResult"}},"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"sessionId"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"tokens"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"refreshToken"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"accessToken"},"arguments":[],"directives":[]}]}},{"kind":"Field","name":{"kind":"Name","value":"user"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"FragmentSpread","name":{"kind":"Name","value":"userFields"},"directives":[]}]}}]}}]}}]}},...UserFieldsFragmentDoc.definitions]}; export const LogoutDocument: DocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"logout"},"variableDefinitions":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"logout"},"arguments":[],"directives":[]}]}}]}; export const RefreshTokensDocument: DocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"refreshTokens"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"accessToken"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"refreshToken"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"refreshTokens"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"accessToken"},"value":{"kind":"Variable","name":{"kind":"Name","value":"accessToken"}}},{"kind":"Argument","name":{"kind":"Name","value":"refreshToken"},"value":{"kind":"Variable","name":{"kind":"Name","value":"refreshToken"}}}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"sessionId"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"tokens"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"refreshToken"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"accessToken"},"arguments":[],"directives":[]}]}}]}}]}}]}; export const ResetPasswordDocument: DocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"resetPassword"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"token"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"newPassword"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"resetPassword"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"token"},"value":{"kind":"Variable","name":{"kind":"Name","value":"token"}}},{"kind":"Argument","name":{"kind":"Name","value":"newPassword"},"value":{"kind":"Variable","name":{"kind":"Name","value":"newPassword"}}}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"sessionId"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"tokens"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"refreshToken"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"accessToken"},"arguments":[],"directives":[]}]}}]}}]}}]}; diff --git a/packages/graphql-client/src/graphql/mutations/login-with-service.graphql b/packages/graphql-client/src/graphql/mutations/login-with-service.graphql index 421ef4457..bd87b8ee9 100644 --- a/packages/graphql-client/src/graphql/mutations/login-with-service.graphql +++ b/packages/graphql-client/src/graphql/mutations/login-with-service.graphql @@ -1,12 +1,14 @@ mutation authenticate($serviceName: String!, $params: AuthenticateParamsInput!) { authenticate(serviceName: $serviceName, params: $params) { - sessionId - tokens { - refreshToken - accessToken - } - user { - ...userFields + ... on LoginResult { + sessionId + tokens { + refreshToken + accessToken + } + user { + ...userFields + } } } } diff --git a/packages/mfa/src/accounts-mfa.ts b/packages/mfa/src/accounts-mfa.ts index 8e947439d..aa74ab7f4 100644 --- a/packages/mfa/src/accounts-mfa.ts +++ b/packages/mfa/src/accounts-mfa.ts @@ -51,6 +51,10 @@ export class AccountsMfa implements Authenticati public setStore(store: DatabaseInterface) { this.db = store; + + for (const factorName in this.options.factors) { + this.options.factors[factorName]!.setStore(this.db); + } } /** diff --git a/packages/rest-express/src/endpoints/oauth/provider-callback.ts b/packages/rest-express/src/endpoints/oauth/provider-callback.ts index c677eac8a..428ce8bd2 100644 --- a/packages/rest-express/src/endpoints/oauth/provider-callback.ts +++ b/packages/rest-express/src/endpoints/oauth/provider-callback.ts @@ -12,7 +12,7 @@ export const providerCallback = ( options?: AccountsExpressOptions ) => async (req: express.Request, res: express.Response) => { try { - const loggedInUser = await accountsServer.loginWithService( + const authenticationResult = await accountsServer.loginWithService( 'oauth', { ...(req.params || {}), @@ -23,14 +23,14 @@ export const providerCallback = ( req.infos ); - if (options && options.onOAuthSuccess) { - options.onOAuthSuccess(req, res, loggedInUser); + if ('id' in authenticationResult && options && options.onOAuthSuccess) { + options.onOAuthSuccess(req, res, authenticationResult); } - if (options && options.transformOAuthResponse) { - res.json(options.transformOAuthResponse(loggedInUser)); + if ('id' in authenticationResult && options && options.transformOAuthResponse) { + res.json(options.transformOAuthResponse(authenticationResult)); } else { - res.json(loggedInUser); + res.json(authenticationResult); } } catch (err) { if (options && options.onOAuthError) { diff --git a/packages/server/__tests__/account-server.ts b/packages/server/__tests__/account-server.ts index b4d7fe1e1..4a25e2abb 100644 --- a/packages/server/__tests__/account-server.ts +++ b/packages/server/__tests__/account-server.ts @@ -2,6 +2,7 @@ import jwtDecode from 'jwt-decode'; import { AccountsServer } from '../src/accounts-server'; import { JwtData } from '../src/types/jwt-data'; import { ServerHooks } from '../src/utils/server-hooks'; +import { LoginResult } from '@accounts/types'; const delay = (timeout: number) => new Promise((resolve) => setTimeout(resolve, timeout)); @@ -88,9 +89,84 @@ describe('AccountsServer', () => { facebook: service, } ); - const res = await accountServer.loginWithService('facebook', {}, {}); + const res = (await accountServer.loginWithService('facebook', {}, {})) as LoginResult; expect(res.tokens).toBeTruthy(); }); + + describe('mfa', () => { + it('should do nothing if there is no active authenticators', async () => { + const authenticate = jest.fn(() => Promise.resolve({ id: 'userId' })); + const createSession = jest.fn(() => Promise.resolve('sessionId')); + const findUserAuthenticators = jest.fn(() => Promise.resolve([])); + const service: any = { authenticate, setStore: jest.fn() }; + const accountServer = new AccountsServer( + { + db: { createSession, findUserAuthenticators } as any, + tokenSecret: 'secret1', + }, + { + mfa: service, + facebook: service, + } + ); + const res = (await accountServer.loginWithService('facebook', {}, {})) as LoginResult; + expect(findUserAuthenticators).toBeCalledWith('userId'); + expect(res.tokens).toBeTruthy(); + }); + + it('should create a challenge if there is an active authenticator', async () => { + const authenticate = jest.fn(() => Promise.resolve({ id: 'userId' })); + const createSession = jest.fn(() => Promise.resolve('sessionId')); + const findUserAuthenticators = jest.fn(() => Promise.resolve([{ active: true }])); + const createMfaChallenge = jest.fn(() => Promise.resolve()); + const service: any = { authenticate, setStore: jest.fn() }; + const accountServer = new AccountsServer( + { + db: { createSession, findUserAuthenticators, createMfaChallenge } as any, + tokenSecret: 'secret1', + }, + { + mfa: service, + facebook: service, + } + ); + const res = await accountServer.loginWithService('facebook', {}, {}); + expect(findUserAuthenticators).toBeCalledWith('userId'); + expect(createMfaChallenge).toBeCalledWith({ userId: 'userId', token: expect.any(String) }); + expect(res).toEqual({ + mfaToken: expect.any(String), + }); + }); + + it('should create a challenge with associate scope if enforceMfaForLogin is true', async () => { + const authenticate = jest.fn(() => Promise.resolve({ id: 'userId' })); + const createSession = jest.fn(() => Promise.resolve('sessionId')); + const findUserAuthenticators = jest.fn(() => Promise.resolve([])); + const createMfaChallenge = jest.fn(() => Promise.resolve()); + const service: any = { authenticate, setStore: jest.fn() }; + const accountServer = new AccountsServer( + { + db: { createSession, findUserAuthenticators, createMfaChallenge } as any, + tokenSecret: 'secret1', + enforceMfaForLogin: true, + }, + { + mfa: service, + facebook: service, + } + ); + const res = await accountServer.loginWithService('facebook', {}, {}); + expect(findUserAuthenticators).toBeCalledWith('userId'); + expect(createMfaChallenge).toBeCalledWith({ + userId: 'userId', + scope: 'associate', + token: expect.any(String), + }); + expect(res).toEqual({ + mfaToken: expect.any(String), + }); + }); + }); }); describe('authenticateWithService', () => { diff --git a/packages/server/src/accounts-server.ts b/packages/server/src/accounts-server.ts index aeab0ea73..fedb5ed79 100644 --- a/packages/server/src/accounts-server.ts +++ b/packages/server/src/accounts-server.ts @@ -12,13 +12,11 @@ import { DatabaseInterface, AuthenticationService, ConnectionInformations, + AuthenticationResult, } from '@accounts/types'; - import { generateAccessToken, generateRefreshToken, generateRandomToken } from './utils/tokens'; - import { emailTemplates, sendMail } from './utils/email'; import { ServerHooks } from './utils/server-hooks'; - import { AccountsServerOptions } from './types/accounts-server-options'; import { JwtData } from './types/jwt-data'; import { EmailTemplateType } from './types/email-template-type'; @@ -97,6 +95,10 @@ Please set ambiguousErrorMessages to false to be able to use autologin.` return this.services; } + public getService(serviceName: string): AuthenticationService | undefined { + return this.services[serviceName]; + } + public getOptions(): AccountsServerOptions { return this.options; } @@ -175,7 +177,7 @@ Please set ambiguousErrorMessages to false to be able to use autologin.` serviceName: string, params: any, infos: ConnectionInformations - ): Promise { + ): Promise { const hooksInfo: any = { // The service name, such as “password” or “twitter”. service: serviceName, @@ -192,7 +194,7 @@ Please set ambiguousErrorMessages to false to be able to use autologin.` ); } - const user: CustomUser | null = await this.services[serviceName].authenticate(params, infos); + const user = await this.services[serviceName].authenticate(params, infos); hooksInfo.user = user; if (!user) { throw new AccountsJsError( @@ -207,6 +209,37 @@ Please set ambiguousErrorMessages to false to be able to use autologin.` ); } + // This must be called only if user is using the mfa service + if (this.getService('mfa')) { + // We check if the user have at least one active authenticator + // If yes we create a new mfaChallenge for the user to resolve + // If no we can login the user + const authenticators = await this.db.findUserAuthenticators(user.id); + const activeAuthenticator = authenticators.find((authenticator) => authenticator.active); + if (activeAuthenticator) { + // We create a new challenge for the authenticator so it can be verified later + const mfaChallengeToken = generateRandomToken(); + // associate.id refer to the authenticator id + await this.db.createMfaChallenge({ + userId: user.id, + token: mfaChallengeToken, + }); + return { mfaToken: mfaChallengeToken }; + } + + // We force the user to register a new device before first login + if (this.options.enforceMfaForLogin) { + // We create a new challenge for the authenticator so it can be verified later + const mfaChallengeToken = generateRandomToken(); + await this.db.createMfaChallenge({ + userId: user.id, + token: mfaChallengeToken, + scope: 'associate', + }); + return { mfaToken: mfaChallengeToken }; + } + } + // Let the user validate the login attempt await this.hooks.emitSerial(ServerHooks.ValidateLogin, hooksInfo); const loginResult = await this.loginWithUser(user, infos); diff --git a/packages/server/src/types/accounts-server-options.ts b/packages/server/src/types/accounts-server-options.ts index 2192d8088..7503b1dda 100644 --- a/packages/server/src/types/accounts-server-options.ts +++ b/packages/server/src/types/accounts-server-options.ts @@ -63,4 +63,9 @@ export interface AccountsServerOptions { * Default 'false'. */ useStatelessSession?: boolean; + /** + * If set to true, the user will be asked to register a new MFA authenticator the first time + * he tries to login. + */ + enforceMfaForLogin?: boolean; } diff --git a/website/docs/mfa/create-custom.md b/website/docs/mfa/create-custom.md new file mode 100644 index 000000000..4c4f28468 --- /dev/null +++ b/website/docs/mfa/create-custom.md @@ -0,0 +1,52 @@ +--- +id: create-custom +title: Creating a custom factor +sidebar_label: Creating a custom factor +--- + +One of the features of accounts-js it's his modular architecture. This allow you to easily create your custom factors if the lib not provide the one you are looking for. + +_Since accounts-js is written in typescript, in this guide we will also assume that your factor is written in typescript. But the same logic can be applied to javascript._ + +## Default template + +All you need to do is to create a new file in your project (eg: `my-custom-factor.ts`) and then copy paste the following template: + +```ts +import { DatabaseInterface, AuthenticatorService, Authenticator } from '@accounts/types'; +import { AccountsServer } from '@accounts/server'; + +interface DbAuthenticatorMyCustomFactor extends Authenticator {} + +export class AuthenticatorMyCustomFactor implements AuthenticatorService { + public serviceName = 'my-custom-factor'; + + public server!: AccountsServer; + + private options: AuthenticatorOtpOptions & typeof defaultOptions; + private db!: DatabaseInterface; + + public setStore(store: DatabaseInterface) { + this.db = store; + } + + public async associate(userId: string, params: any): Promise { + // This method is called when a user start the association of a new factor. + } + + public async authenticate(authenticator: DbAuthenticatorOtp, params: any): Promise { + // This method is called when we need to resolve the challenge for the user. + // eg: when a user login or is trying to finish the association of an authenticator. + } + + public sanitize(authenticator: DbAuthenticatorMyCustomFactor): Authenticator { + // This methods is called every time a user query for the authenticators linked to his account. + } +} +``` + +Add your custom logic and then link it to your accounts-js server. + +For best practices and inspiration you should check the source code of the official factors we provide: + +- [One-Time Password](https://github.com/accounts-js/accounts/tree/master/packages/factor-otp) diff --git a/website/docs/mfa/introduction.md b/website/docs/mfa/introduction.md new file mode 100644 index 000000000..8502780c9 --- /dev/null +++ b/website/docs/mfa/introduction.md @@ -0,0 +1,31 @@ +--- +id: introduction +title: Multi-factor Authentication +sidebar_label: Introduction +--- + +Multi-factor authentication (MFA) is an authentication method in which a computer user is granted access only after successfully presenting two or more pieces of evidence (or factors) to an authentication mechanism: + +- knowledge (something the user and only the user knows) +- possession (something the user and only the user has) +- inherence (something the user and only the user is) + +https://en.wikipedia.org/wiki/Multi-factor_authentication + +## Vocabulary + +- **Factor**: Service responsible of the authentication flow, for example OTM, sms, device binding... +- **Authenticator**: Entity representing the hardware or software piece that will be used by a factor to resolve a challenge. +- **Challenge**: Entity the user needs to resolve in order to get a successful authentication. + +## Official factors + +For now, we provide the following official factors: + +- [One-Time Password](/docs/mfa/otp) + +## Community factors + +- Create a pull request if you want your factor to be listed here. + +Not finding the one you are looking for? Check the guide to see how to [create a custom factor](/docs/mfa/create-custom). From 2d80d340cc7ab8a5c49fe90cd7ccc1e8b20fccc2 Mon Sep 17 00:00:00 2001 From: pradel Date: Wed, 12 Aug 2020 10:46:19 +0200 Subject: [PATCH 139/146] fix --- packages/server/package.json | 1 - yarn.lock | 3 +-- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/packages/server/package.json b/packages/server/package.json index 73606e46e..6b46aa430 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -44,7 +44,6 @@ "author": "Tim Mikeladze", "license": "MIT", "dependencies": { - "@accounts/mfa": "^0.29.0", "@accounts/types": "^0.29.0", "@types/jsonwebtoken": "8.5.0", "emittery": "0.7.1", diff --git a/yarn.lock b/yarn.lock index 7c891da54..8c960a35a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -246,7 +246,7 @@ __metadata: languageName: unknown linkType: soft -"@accounts/mfa@^0.29.0, @accounts/mfa@workspace:packages/mfa": +"@accounts/mfa@workspace:packages/mfa": version: 0.0.0-use.local resolution: "@accounts/mfa@workspace:packages/mfa" dependencies: @@ -403,7 +403,6 @@ __metadata: version: 0.0.0-use.local resolution: "@accounts/server@workspace:packages/server" dependencies: - "@accounts/mfa": ^0.29.0 "@accounts/types": ^0.29.0 "@types/jest": 26.0.9 "@types/jsonwebtoken": 8.5.0 From 8738f6e19055031e629bacbe90043500dfe1ff37 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Pradel?= Date: Wed, 12 Aug 2020 12:23:35 +0200 Subject: [PATCH 140/146] feat(rest-express): create mfa endpoints (#1047) --- .../__tests__/endpoints/mfa/associate.ts | 140 ++++++++++++++++++ .../__tests__/endpoints/mfa/authenticators.ts | 111 ++++++++++++++ .../__tests__/endpoints/mfa/challenge.ts | 67 +++++++++ .../__tests__/express-middleware.ts | 26 ++++ packages/rest-express/package.json | 1 + .../src/endpoints/mfa/associate.ts | 44 ++++++ .../src/endpoints/mfa/authenticators.ts | 39 +++++ .../src/endpoints/mfa/challenge.ts | 18 +++ .../rest-express/src/express-middleware.ts | 20 +++ yarn.lock | 3 +- 10 files changed, 468 insertions(+), 1 deletion(-) create mode 100644 packages/rest-express/__tests__/endpoints/mfa/associate.ts create mode 100644 packages/rest-express/__tests__/endpoints/mfa/authenticators.ts create mode 100644 packages/rest-express/__tests__/endpoints/mfa/challenge.ts create mode 100644 packages/rest-express/src/endpoints/mfa/associate.ts create mode 100644 packages/rest-express/src/endpoints/mfa/authenticators.ts create mode 100644 packages/rest-express/src/endpoints/mfa/challenge.ts diff --git a/packages/rest-express/__tests__/endpoints/mfa/associate.ts b/packages/rest-express/__tests__/endpoints/mfa/associate.ts new file mode 100644 index 000000000..23b69940d --- /dev/null +++ b/packages/rest-express/__tests__/endpoints/mfa/associate.ts @@ -0,0 +1,140 @@ +import { associate, associateByMfaToken } from '../../../src/endpoints/mfa/associate'; + +const res: any = { + json: jest.fn(), + status: jest.fn(() => res), +}; + +const mfaService = { + associate: jest.fn(() => ({ mfaService: 'mfaServiceTest' })), + associateByMfaToken: jest.fn(() => ({ mfaService: 'mfaServiceTest' })), +}; + +describe('associate', () => { + beforeEach(() => { + jest.clearAllMocks(); + }); + + it('should return an error if user is not logged in', async () => { + const middleware = associate({} as any); + await middleware({} as any, res); + expect(res.status).toBeCalledWith(401); + expect(res.json).toBeCalledWith({ message: 'Unauthorized' }); + }); + + it('should call mfa associate method', async () => { + const req = { + userId: 'userIdTest', + body: { + type: 'typeBody', + params: 'paramsBody', + }, + infos: { + ip: 'ipTest', + userAgent: 'userAgentTest', + }, + }; + const middleware = associate({ + getService: () => mfaService, + } as any); + await middleware(req as any, res); + expect(mfaService.associate).toBeCalledWith( + 'userIdTest', + req.body.type, + req.body.params, + req.infos + ); + expect(res.json).toBeCalledWith({ mfaService: 'mfaServiceTest' }); + }); + + it('Sends error if it was thrown', async () => { + const error = { message: 'Error' }; + mfaService.associate.mockImplementationOnce(() => { + throw error; + }); + const req = { + userId: 'userIdTest', + body: { + type: 'typeBody', + params: 'paramsBody', + }, + infos: { + ip: 'ipTest', + userAgent: 'userAgentTest', + }, + }; + const middleware = associate({ + getService: () => mfaService, + } as any); + await middleware(req as any, res); + expect(mfaService.associate).toBeCalledWith( + 'userIdTest', + req.body.type, + req.body.params, + req.infos + ); + expect(res.status).toHaveBeenCalledWith(400); + expect(res.json).toHaveBeenCalledWith(error); + }); +}); + +describe('associateByMfaToken', () => { + beforeEach(() => { + jest.clearAllMocks(); + }); + + it('should call mfa associateByMfaToken method', async () => { + const req = { + body: { + mfaToken: 'mfaTokenBody', + type: 'typeBody', + params: 'paramsBody', + }, + infos: { + ip: 'ipTest', + userAgent: 'userAgentTest', + }, + }; + const middleware = associateByMfaToken({ + getService: () => mfaService, + } as any); + await middleware(req as any, res); + expect(mfaService.associateByMfaToken).toBeCalledWith( + req.body.mfaToken, + req.body.type, + req.body.params, + req.infos + ); + expect(res.json).toBeCalledWith({ mfaService: 'mfaServiceTest' }); + }); + + it('Sends error if it was thrown', async () => { + const error = { message: 'Error' }; + mfaService.associateByMfaToken.mockImplementationOnce(() => { + throw error; + }); + const req = { + body: { + mfaToken: 'mfaTokenBody', + type: 'typeBody', + params: 'paramsBody', + }, + infos: { + ip: 'ipTest', + userAgent: 'userAgentTest', + }, + }; + const middleware = associateByMfaToken({ + getService: () => mfaService, + } as any); + await middleware(req as any, res); + expect(mfaService.associateByMfaToken).toBeCalledWith( + req.body.mfaToken, + req.body.type, + req.body.params, + req.infos + ); + expect(res.status).toHaveBeenCalledWith(400); + expect(res.json).toHaveBeenCalledWith(error); + }); +}); diff --git a/packages/rest-express/__tests__/endpoints/mfa/authenticators.ts b/packages/rest-express/__tests__/endpoints/mfa/authenticators.ts new file mode 100644 index 000000000..b55b13ad5 --- /dev/null +++ b/packages/rest-express/__tests__/endpoints/mfa/authenticators.ts @@ -0,0 +1,111 @@ +import { + authenticators, + authenticatorsByMfaToken, +} from '../../../src/endpoints/mfa/authenticators'; + +const res: any = { + json: jest.fn(), + status: jest.fn(() => res), +}; + +const mfaService = { + findUserAuthenticators: jest.fn(() => ({ mfaService: 'mfaServiceTest' })), + findUserAuthenticatorsByMfaToken: jest.fn(() => ({ mfaService: 'mfaServiceTest' })), +}; + +describe('authenticators', () => { + beforeEach(() => { + jest.clearAllMocks(); + }); + + it('should return an error if user is not logged in', async () => { + const middleware = authenticators({} as any); + await middleware({} as any, res); + expect(res.status).toBeCalledWith(401); + expect(res.json).toBeCalledWith({ message: 'Unauthorized' }); + }); + + it('should call mfa findUserAuthenticators method', async () => { + const req = { + userId: 'userIdTest', + infos: { + ip: 'ipTest', + userAgent: 'userAgentTest', + }, + }; + const middleware = authenticators({ + getService: () => mfaService, + } as any); + await middleware(req as any, res); + expect(mfaService.findUserAuthenticators).toBeCalledWith('userIdTest'); + expect(res.json).toBeCalledWith({ mfaService: 'mfaServiceTest' }); + }); + + it('Sends error if it was thrown', async () => { + const error = { message: 'Error' }; + mfaService.findUserAuthenticators.mockImplementationOnce(() => { + throw error; + }); + const req = { + userId: 'userIdTest', + infos: { + ip: 'ipTest', + userAgent: 'userAgentTest', + }, + }; + const middleware = authenticators({ + getService: () => mfaService, + } as any); + await middleware(req as any, res); + expect(mfaService.findUserAuthenticators).toBeCalledWith('userIdTest'); + expect(res.status).toHaveBeenCalledWith(400); + expect(res.json).toHaveBeenCalledWith(error); + }); +}); + +describe('authenticatorsByMfaToken', () => { + beforeEach(() => { + jest.clearAllMocks(); + }); + + it('should call mfa findUserAuthenticatorsByMfaToken method', async () => { + const req = { + query: { + mfaToken: 'mfaTokenBody', + }, + infos: { + ip: 'ipTest', + userAgent: 'userAgentTest', + }, + }; + const middleware = authenticatorsByMfaToken({ + getService: () => mfaService, + } as any); + await middleware(req as any, res); + expect(mfaService.findUserAuthenticatorsByMfaToken).toBeCalledWith(req.query.mfaToken); + expect(res.json).toBeCalledWith({ mfaService: 'mfaServiceTest' }); + }); + + it('Sends error if it was thrown', async () => { + const error = { message: 'Error' }; + mfaService.findUserAuthenticatorsByMfaToken.mockImplementationOnce(() => { + throw error; + }); + const req = { + query: { + mfaToken: 'mfaTokenBody', + }, + infos: { + ip: 'ipTest', + userAgent: 'userAgentTest', + }, + }; + const middleware = authenticatorsByMfaToken({ + getService: () => mfaService, + } as any); + await middleware(req as any, res); + expect(mfaService.findUserAuthenticatorsByMfaToken).toBeCalledWith(req.query.mfaToken); + expect(res.status).toHaveBeenCalledWith(400); + expect(res.json).toHaveBeenCalledWith(error); + }); +}); diff --git a/packages/rest-express/__tests__/endpoints/mfa/challenge.ts b/packages/rest-express/__tests__/endpoints/mfa/challenge.ts new file mode 100644 index 000000000..ac53f726b --- /dev/null +++ b/packages/rest-express/__tests__/endpoints/mfa/challenge.ts @@ -0,0 +1,67 @@ +import { challenge } from '../../../src/endpoints/mfa/challenge'; + +const res: any = { + json: jest.fn(), + status: jest.fn(() => res), +}; + +const mfaService = { + challenge: jest.fn(() => ({ mfaService: 'mfaServiceTest' })), +}; + +describe('challenge', () => { + beforeEach(() => { + jest.clearAllMocks(); + }); + + it('should call mfa associateByMfaToken method', async () => { + const req = { + body: { + mfaToken: 'mfaTokenBody', + authenticatorId: 'authenticatorIdBody', + }, + infos: { + ip: 'ipTest', + userAgent: 'userAgentTest', + }, + }; + const middleware = challenge({ + getService: () => mfaService, + } as any); + await middleware(req as any, res); + expect(mfaService.challenge).toBeCalledWith( + req.body.mfaToken, + req.body.authenticatorId, + req.infos + ); + expect(res.json).toBeCalledWith({ mfaService: 'mfaServiceTest' }); + }); + + it('Sends error if it was thrown', async () => { + const error = { message: 'Error' }; + mfaService.challenge.mockImplementationOnce(() => { + throw error; + }); + const req = { + body: { + mfaToken: 'mfaTokenBody', + authenticatorId: 'authenticatorIdBody', + }, + infos: { + ip: 'ipTest', + userAgent: 'userAgentTest', + }, + }; + const middleware = challenge({ + getService: () => mfaService, + } as any); + await middleware(req as any, res); + expect(mfaService.challenge).toBeCalledWith( + req.body.mfaToken, + req.body.authenticatorId, + req.infos + ); + expect(res.status).toHaveBeenCalledWith(400); + expect(res.json).toHaveBeenCalledWith(error); + }); +}); diff --git a/packages/rest-express/__tests__/express-middleware.ts b/packages/rest-express/__tests__/express-middleware.ts index 02835f767..6817620bc 100644 --- a/packages/rest-express/__tests__/express-middleware.ts +++ b/packages/rest-express/__tests__/express-middleware.ts @@ -36,6 +36,31 @@ describe('express middleware', () => { expect((router.get as jest.Mock).mock.calls[0][0]).toBe('test/user'); }); + it('Defines password endpoints when mfa service is present', () => { + accountsExpress( + { + getServices: () => ({ + mfa: {}, + }), + } as any, + { path: 'test' } + ); + expect((router.post as jest.Mock).mock.calls[0][0]).toBe('test/impersonate'); + expect((router.post as jest.Mock).mock.calls[1][0]).toBe('test/user'); + expect((router.post as jest.Mock).mock.calls[2][0]).toBe('test/refreshTokens'); + expect((router.post as jest.Mock).mock.calls[3][0]).toBe('test/logout'); + expect((router.post as jest.Mock).mock.calls[4][0]).toBe('test/:service/verifyAuthentication'); + expect((router.post as jest.Mock).mock.calls[5][0]).toBe('test/:service/authenticate'); + + expect((router.post as jest.Mock).mock.calls[6][0]).toBe('test/mfa/associate'); + expect((router.post as jest.Mock).mock.calls[7][0]).toBe('test/mfa/associateByMfaToken'); + expect((router.post as jest.Mock).mock.calls[8][0]).toBe('test/mfa/challenge'); + + expect((router.get as jest.Mock).mock.calls[0][0]).toBe('test/user'); + expect((router.get as jest.Mock).mock.calls[1][0]).toBe('test/mfa/authenticators'); + expect((router.get as jest.Mock).mock.calls[2][0]).toBe('test/mfa/authenticatorsByMfaToken'); + }); + it('Defines password endpoints when password service is present', () => { accountsExpress( { @@ -51,6 +76,7 @@ describe('express middleware', () => { expect((router.post as jest.Mock).mock.calls[3][0]).toBe('test/logout'); expect((router.post as jest.Mock).mock.calls[4][0]).toBe('test/:service/verifyAuthentication'); expect((router.post as jest.Mock).mock.calls[5][0]).toBe('test/:service/authenticate'); + expect((router.post as jest.Mock).mock.calls[6][0]).toBe('test/password/register'); expect((router.post as jest.Mock).mock.calls[7][0]).toBe('test/password/verifyEmail'); expect((router.post as jest.Mock).mock.calls[8][0]).toBe('test/password/resetPassword'); diff --git a/packages/rest-express/package.json b/packages/rest-express/package.json index 2b13585e8..e26f60d3b 100644 --- a/packages/rest-express/package.json +++ b/packages/rest-express/package.json @@ -39,6 +39,7 @@ "author": "Tim Mikeladze", "license": "MIT", "devDependencies": { + "@accounts/mfa": "^0.29.0", "@accounts/password": "^0.29.0", "@accounts/server": "^0.29.0", "@types/express": "4.17.7", diff --git a/packages/rest-express/src/endpoints/mfa/associate.ts b/packages/rest-express/src/endpoints/mfa/associate.ts new file mode 100644 index 000000000..5af3c4b8f --- /dev/null +++ b/packages/rest-express/src/endpoints/mfa/associate.ts @@ -0,0 +1,44 @@ +import * as express from 'express'; +import { AccountsServer } from '@accounts/server'; +import { AccountsMfa } from '@accounts/mfa'; +import { sendError } from '../../utils/send-error'; + +export const associate = (accountsServer: AccountsServer) => async ( + req: express.Request, + res: express.Response +) => { + try { + const userId: string | undefined = (req as any).userId; + if (!userId) { + res.status(401); + res.json({ message: 'Unauthorized' }); + return; + } + + const { type, params } = req.body; + const accountsMfa = accountsServer.getService('mfa') as AccountsMfa; + const mfaAssociateResult = await accountsMfa.associate(userId, type, params, req.infos); + res.json(mfaAssociateResult); + } catch (err) { + sendError(res, err); + } +}; + +export const associateByMfaToken = (accountsServer: AccountsServer) => async ( + req: express.Request, + res: express.Response +) => { + try { + const { mfaToken, type, params } = req.body; + const accountsMfa = accountsServer.getService('mfa') as AccountsMfa; + const mfaAssociateResult = await accountsMfa.associateByMfaToken( + mfaToken, + type, + params, + req.infos + ); + res.json(mfaAssociateResult); + } catch (err) { + sendError(res, err); + } +}; diff --git a/packages/rest-express/src/endpoints/mfa/authenticators.ts b/packages/rest-express/src/endpoints/mfa/authenticators.ts new file mode 100644 index 000000000..780f9c4a3 --- /dev/null +++ b/packages/rest-express/src/endpoints/mfa/authenticators.ts @@ -0,0 +1,39 @@ +import * as express from 'express'; +import { AccountsServer } from '@accounts/server'; +import { AccountsMfa } from '@accounts/mfa'; +import { sendError } from '../../utils/send-error'; + +export const authenticators = (accountsServer: AccountsServer) => async ( + req: express.Request, + res: express.Response +) => { + try { + const userId: string | undefined = (req as any).userId; + if (!userId) { + res.status(401); + res.json({ message: 'Unauthorized' }); + return; + } + + const accountsMfa = accountsServer.getService('mfa') as AccountsMfa; + const userAuthenticators = await accountsMfa.findUserAuthenticators(userId); + res.json(userAuthenticators); + } catch (err) { + sendError(res, err); + } +}; + +export const authenticatorsByMfaToken = (accountsServer: AccountsServer) => async ( + req: express.Request, + res: express.Response +) => { + try { + const { mfaToken } = req.query as { mfaToken: string }; + + const accountsMfa = accountsServer.getService('mfa') as AccountsMfa; + const userAuthenticators = await accountsMfa.findUserAuthenticatorsByMfaToken(mfaToken); + res.json(userAuthenticators); + } catch (err) { + sendError(res, err); + } +}; diff --git a/packages/rest-express/src/endpoints/mfa/challenge.ts b/packages/rest-express/src/endpoints/mfa/challenge.ts new file mode 100644 index 000000000..7392acd15 --- /dev/null +++ b/packages/rest-express/src/endpoints/mfa/challenge.ts @@ -0,0 +1,18 @@ +import * as express from 'express'; +import { AccountsServer } from '@accounts/server'; +import { AccountsMfa } from '@accounts/mfa'; +import { sendError } from '../../utils/send-error'; + +export const challenge = (accountsServer: AccountsServer) => async ( + req: express.Request, + res: express.Response +) => { + try { + const { mfaToken, authenticatorId } = req.body; + const accountsMfa = accountsServer.getService('mfa') as AccountsMfa; + const challengeResult = await accountsMfa.challenge(mfaToken, authenticatorId, req.infos); + res.json(challengeResult); + } catch (err) { + sendError(res, err); + } +}; diff --git a/packages/rest-express/src/express-middleware.ts b/packages/rest-express/src/express-middleware.ts index db8e00b5d..6cf04f8b8 100644 --- a/packages/rest-express/src/express-middleware.ts +++ b/packages/rest-express/src/express-middleware.ts @@ -17,6 +17,9 @@ import { addEmail } from './endpoints/password/add-email'; import { userLoader } from './user-loader'; import { AccountsExpressOptions } from './types'; import { getUserAgent } from './utils/get-user-agent'; +import { challenge } from './endpoints/mfa/challenge'; +import { authenticators, authenticatorsByMfaToken } from './endpoints/mfa/authenticators'; +import { associate, associateByMfaToken } from './endpoints/mfa/associate'; const defaultOptions: AccountsExpressOptions = { path: '/accounts', @@ -65,6 +68,23 @@ const accountsExpress = ( const services = accountsServer.getServices(); + // @accounts/mfa + if (services.mfa) { + router.post(`${path}/mfa/associate`, userLoader(accountsServer), associate(accountsServer)); + + router.post(`${path}/mfa/associateByMfaToken`, associateByMfaToken(accountsServer)); + + router.get( + `${path}/mfa/authenticators`, + userLoader(accountsServer), + authenticators(accountsServer) + ); + + router.get(`${path}/mfa/authenticatorsByMfaToken`, authenticatorsByMfaToken(accountsServer)); + + router.post(`${path}/mfa/challenge`, challenge(accountsServer)); + } + // @accounts/password if (services.password) { router.post(`${path}/password/register`, registerPassword(accountsServer)); diff --git a/yarn.lock b/yarn.lock index 01dca2d18..5b36b794a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -246,7 +246,7 @@ __metadata: languageName: unknown linkType: soft -"@accounts/mfa@workspace:packages/mfa": +"@accounts/mfa@^0.29.0, @accounts/mfa@workspace:packages/mfa": version: 0.0.0-use.local resolution: "@accounts/mfa@workspace:packages/mfa" dependencies: @@ -383,6 +383,7 @@ __metadata: version: 0.0.0-use.local resolution: "@accounts/rest-express@workspace:packages/rest-express" dependencies: + "@accounts/mfa": ^0.29.0 "@accounts/password": ^0.29.0 "@accounts/server": ^0.29.0 "@accounts/types": ^0.29.0 From c70129401deeb22902b941c90ae836c77c7f0547 Mon Sep 17 00:00:00 2001 From: pradel Date: Wed, 12 Aug 2020 12:26:08 +0200 Subject: [PATCH 141/146] Update express-middleware.ts --- packages/rest-express/src/express-middleware.ts | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/packages/rest-express/src/express-middleware.ts b/packages/rest-express/src/express-middleware.ts index 871c98f7f..9faa90fa3 100644 --- a/packages/rest-express/src/express-middleware.ts +++ b/packages/rest-express/src/express-middleware.ts @@ -69,20 +69,6 @@ const accountsExpress = ( router.post(`${path}/:service/authenticate`, serviceAuthenticate(accountsServer)); - router.post(`${path}/mfa/associate`, userLoader(accountsServer), associate(accountsServer)); - - router.post(`${path}/mfa/associateByMfaToken`, associateByMfaToken(accountsServer)); - - router.get( - `${path}/mfa/authenticators`, - userLoader(accountsServer), - authenticators(accountsServer) - ); - - router.get(`${path}/mfa/authenticatorsByMfaToken`, authenticatorsByMfaToken(accountsServer)); - - router.post(`${path}/mfa/challenge`, challenge(accountsServer)); - const services = accountsServer.getServices(); // @accounts/mfa From 976a1e9a22719a67ed130d1101e0f9406469c1ce Mon Sep 17 00:00:00 2001 From: pradel Date: Wed, 12 Aug 2020 12:27:05 +0200 Subject: [PATCH 142/146] Update provider-callback.ts --- packages/rest-express/src/endpoints/oauth/provider-callback.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/rest-express/src/endpoints/oauth/provider-callback.ts b/packages/rest-express/src/endpoints/oauth/provider-callback.ts index 3c5798a6f..428ce8bd2 100644 --- a/packages/rest-express/src/endpoints/oauth/provider-callback.ts +++ b/packages/rest-express/src/endpoints/oauth/provider-callback.ts @@ -2,7 +2,6 @@ import * as express from 'express'; import { AccountsServer } from '@accounts/server'; import { sendError } from '../../utils/send-error'; import { AccountsExpressOptions } from '../../types'; -import { LoginResult } from '@accounts/types'; interface RequestWithSession extends express.Request { session: any; From 02e8b1021500e103291afdc5eef0b1f50e16c0ac Mon Sep 17 00:00:00 2001 From: pradel Date: Wed, 12 Aug 2020 12:28:16 +0200 Subject: [PATCH 143/146] Update express-middleware.ts --- packages/rest-express/src/express-middleware.ts | 3 --- 1 file changed, 3 deletions(-) diff --git a/packages/rest-express/src/express-middleware.ts b/packages/rest-express/src/express-middleware.ts index 9faa90fa3..6cf04f8b8 100644 --- a/packages/rest-express/src/express-middleware.ts +++ b/packages/rest-express/src/express-middleware.ts @@ -13,9 +13,6 @@ import { serviceVerifyAuthentication } from './endpoints/verify-authentication'; import { registerPassword } from './endpoints/password/register'; import { twoFactorSecret, twoFactorSet, twoFactorUnset } from './endpoints/password/two-factor'; import { changePassword } from './endpoints/password/change-password'; -import { associate, associateByMfaToken } from './endpoints/mfa/associate'; -import { authenticators, authenticatorsByMfaToken } from './endpoints/mfa/authenticators'; -import { challenge } from './endpoints/mfa/challenge'; import { addEmail } from './endpoints/password/add-email'; import { userLoader } from './user-loader'; import { AccountsExpressOptions } from './types'; From a9d890ca95f083f257366461af8d5bdf30109b6a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Pradel?= Date: Thu, 13 Aug 2020 09:44:39 +0200 Subject: [PATCH 144/146] feat(graphql-api): create mfa operations (#1048) --- .../accounts-mfa/resolvers/mutations.ts | 79 ++++++++++++ .../modules/accounts-mfa/resolvers/query.ts | 40 ++++++ .../__tests__/modules/accounts/index.ts | 4 +- packages/graphql-api/introspection.json | 2 +- packages/graphql-api/package.json | 8 +- packages/graphql-api/src/models.ts | 115 +++++++++++++++++- .../src/modules/accounts-mfa/index.ts | 47 +++++++ .../accounts-mfa/resolvers/mutation.ts | 30 +++++ .../modules/accounts-mfa/resolvers/query.ts | 18 +++ .../modules/accounts-mfa/schema/mutation.ts | 13 ++ .../src/modules/accounts-mfa/schema/query.ts | 11 ++ .../src/modules/accounts-mfa/schema/types.ts | 23 ++++ .../graphql-api/src/modules/accounts/index.ts | 16 ++- packages/graphql-api/src/modules/index.ts | 1 + packages/graphql-api/src/schema.ts | 4 +- yarn.lock | 8 +- 16 files changed, 399 insertions(+), 20 deletions(-) create mode 100644 packages/graphql-api/__tests__/modules/accounts-mfa/resolvers/mutations.ts create mode 100644 packages/graphql-api/__tests__/modules/accounts-mfa/resolvers/query.ts create mode 100644 packages/graphql-api/src/modules/accounts-mfa/index.ts create mode 100644 packages/graphql-api/src/modules/accounts-mfa/resolvers/mutation.ts create mode 100644 packages/graphql-api/src/modules/accounts-mfa/resolvers/query.ts create mode 100644 packages/graphql-api/src/modules/accounts-mfa/schema/mutation.ts create mode 100644 packages/graphql-api/src/modules/accounts-mfa/schema/query.ts create mode 100644 packages/graphql-api/src/modules/accounts-mfa/schema/types.ts diff --git a/packages/graphql-api/__tests__/modules/accounts-mfa/resolvers/mutations.ts b/packages/graphql-api/__tests__/modules/accounts-mfa/resolvers/mutations.ts new file mode 100644 index 000000000..bb44814fe --- /dev/null +++ b/packages/graphql-api/__tests__/modules/accounts-mfa/resolvers/mutations.ts @@ -0,0 +1,79 @@ +import { AccountsMfa } from '@accounts/mfa'; +import { Mutation } from '../../../../src/modules/accounts-mfa/resolvers/mutation'; + +describe('accounts-mfa resolvers mutations', () => { + const accountsMfaMock = { + challenge: jest.fn(), + associate: jest.fn(), + associateByMfaToken: jest.fn(), + }; + const injector = { + get: jest.fn(() => accountsMfaMock), + }; + const user = { id: 'idTest' }; + const infos = { + ip: 'ipTest', + userAgent: 'userAgentTest', + }; + + beforeEach(() => { + jest.clearAllMocks(); + }); + + describe('challenge', () => { + it('should call associateByMfaToken', async () => { + const mfaToken = 'mfaTokenTest'; + const authenticatorId = 'authenticatorIdTest'; + await Mutation.challenge!( + {}, + { mfaToken, authenticatorId }, + { injector, infos } as any, + {} as any + ); + expect(injector.get).toHaveBeenCalledWith(AccountsMfa); + expect(accountsMfaMock.challenge).toHaveBeenCalledWith(mfaToken, authenticatorId, infos); + }); + }); + + describe('associate', () => { + it('should throw if no user in context', async () => { + await expect(Mutation.associate!({}, {} as any, {} as any, {} as any)).rejects.toThrowError( + 'Unauthorized' + ); + }); + + it('should call associate', async () => { + const type = 'typeTest'; + const params = 'paramsTest'; + await Mutation.associate!( + {}, + { type, params: params as any }, + { user, injector, infos } as any, + {} as any + ); + expect(injector.get).toHaveBeenCalledWith(AccountsMfa); + expect(accountsMfaMock.associate).toHaveBeenCalledWith(user.id, type, params, infos); + }); + }); + + describe('associateByMfaToken', () => { + it('should call associateByMfaToken', async () => { + const mfaToken = 'mfaTokenTest'; + const type = 'typeTest'; + const params = 'paramsTest'; + await Mutation.associateByMfaToken!( + {}, + { mfaToken, type, params: params as any }, + { injector, infos } as any, + {} as any + ); + expect(injector.get).toHaveBeenCalledWith(AccountsMfa); + expect(accountsMfaMock.associateByMfaToken).toHaveBeenCalledWith( + mfaToken, + type, + params, + infos + ); + }); + }); +}); diff --git a/packages/graphql-api/__tests__/modules/accounts-mfa/resolvers/query.ts b/packages/graphql-api/__tests__/modules/accounts-mfa/resolvers/query.ts new file mode 100644 index 000000000..0f912a4f2 --- /dev/null +++ b/packages/graphql-api/__tests__/modules/accounts-mfa/resolvers/query.ts @@ -0,0 +1,40 @@ +import { AccountsMfa } from '@accounts/mfa'; +import { Query } from '../../../../src/modules/accounts-mfa/resolvers/query'; + +describe('accounts-mfa resolvers query', () => { + const accountsMfaMock = { + findUserAuthenticators: jest.fn(), + findUserAuthenticatorsByMfaToken: jest.fn(), + }; + const injector = { + get: jest.fn(() => accountsMfaMock), + }; + const user = { id: 'idTest' }; + + beforeEach(() => { + jest.clearAllMocks(); + }); + + describe('authenticators', () => { + it('should throw if no user in context', async () => { + await expect(Query.authenticators!({}, {}, {} as any, {} as any)).rejects.toThrowError( + 'Unauthorized' + ); + }); + + it('should call findUserAuthenticators', async () => { + await Query.authenticators!({}, {}, { injector, user } as any, {} as any); + expect(injector.get).toHaveBeenCalledWith(AccountsMfa); + expect(accountsMfaMock.findUserAuthenticators).toHaveBeenCalledWith(user.id); + }); + }); + + describe('authenticatorsByMfaToken', () => { + it('should call findUserAuthenticators', async () => { + const mfaToken = 'mfaTokenTest'; + await Query.authenticatorsByMfaToken!({}, { mfaToken }, { injector } as any, {} as any); + expect(injector.get).toHaveBeenCalledWith(AccountsMfa); + expect(accountsMfaMock.findUserAuthenticatorsByMfaToken).toHaveBeenCalledWith(mfaToken); + }); + }); +}); diff --git a/packages/graphql-api/__tests__/modules/accounts/index.ts b/packages/graphql-api/__tests__/modules/accounts/index.ts index 6158d83f2..ca2347de9 100644 --- a/packages/graphql-api/__tests__/modules/accounts/index.ts +++ b/packages/graphql-api/__tests__/modules/accounts/index.ts @@ -2,9 +2,7 @@ import { print } from 'graphql'; import { AccountsModule } from '../../../src/modules/accounts/index'; const accountsServer = { - getServices: () => ({ - password: {}, - }), + getService: () => ({}), }; describe('AccountsModule', () => { diff --git a/packages/graphql-api/introspection.json b/packages/graphql-api/introspection.json index b2ab1904d..551444236 100644 --- a/packages/graphql-api/introspection.json +++ b/packages/graphql-api/introspection.json @@ -1 +1 @@ -{"__schema":{"queryType":{"name":"Query"},"mutationType":{"name":"Mutation"},"subscriptionType":null,"types":[{"kind":"OBJECT","name":"Query","description":null,"fields":[{"name":"twoFactorSecret","description":null,"args":[],"type":{"kind":"OBJECT","name":"TwoFactorSecretKey","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"getUser","description":null,"args":[],"type":{"kind":"OBJECT","name":"User","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"TwoFactorSecretKey","description":null,"fields":[{"name":"ascii","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"base32","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"hex","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"qr_code_ascii","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"qr_code_hex","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"qr_code_base32","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"google_auth_qr","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"otpauth_url","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"String","description":"The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"User","description":null,"fields":[{"name":"id","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"emails","description":null,"args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"EmailRecord","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"username","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"ID","description":"The `ID` scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as `\"4\"`) or integer (such as `4`) input value will be accepted as an ID.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"EmailRecord","description":null,"fields":[{"name":"address","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"verified","description":null,"args":[],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"Boolean","description":"The `Boolean` scalar type represents `true` or `false`.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"Mutation","description":null,"fields":[{"name":"createUser","description":null,"args":[{"name":"user","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"INPUT_OBJECT","name":"CreateUserInput","ofType":null}},"defaultValue":null}],"type":{"kind":"OBJECT","name":"CreateUserResult","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"verifyEmail","description":null,"args":[{"name":"token","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"resetPassword","description":null,"args":[{"name":"token","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"newPassword","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"OBJECT","name":"LoginResult","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"sendVerificationEmail","description":null,"args":[{"name":"email","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"sendResetPasswordEmail","description":null,"args":[{"name":"email","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"addEmail","description":null,"args":[{"name":"newEmail","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"changePassword","description":null,"args":[{"name":"oldPassword","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"newPassword","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"twoFactorSet","description":null,"args":[{"name":"secret","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"INPUT_OBJECT","name":"TwoFactorSecretKeyInput","ofType":null}},"defaultValue":null},{"name":"code","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"twoFactorUnset","description":null,"args":[{"name":"code","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"impersonate","description":null,"args":[{"name":"accessToken","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"impersonated","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"INPUT_OBJECT","name":"ImpersonationUserIdentityInput","ofType":null}},"defaultValue":null}],"type":{"kind":"OBJECT","name":"ImpersonateReturn","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"refreshTokens","description":null,"args":[{"name":"accessToken","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"refreshToken","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"OBJECT","name":"LoginResult","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"logout","description":null,"args":[],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"authenticate","description":null,"args":[{"name":"serviceName","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"params","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"INPUT_OBJECT","name":"AuthenticateParamsInput","ofType":null}},"defaultValue":null}],"type":{"kind":"UNION","name":"AuthenticationResult","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"verifyAuthentication","description":null,"args":[{"name":"serviceName","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"params","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"INPUT_OBJECT","name":"AuthenticateParamsInput","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"CreateUserInput","description":null,"fields":null,"inputFields":[{"name":"username","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"email","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"password","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"CreateUserResult","description":null,"fields":[{"name":"userId","description":null,"args":[],"type":{"kind":"SCALAR","name":"ID","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"loginResult","description":null,"args":[],"type":{"kind":"OBJECT","name":"LoginResult","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"LoginResult","description":null,"fields":[{"name":"sessionId","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"tokens","description":null,"args":[],"type":{"kind":"OBJECT","name":"Tokens","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"user","description":null,"args":[],"type":{"kind":"OBJECT","name":"User","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"Tokens","description":null,"fields":[{"name":"refreshToken","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"accessToken","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"TwoFactorSecretKeyInput","description":null,"fields":null,"inputFields":[{"name":"ascii","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"base32","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"hex","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"qr_code_ascii","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"qr_code_hex","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"qr_code_base32","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"google_auth_qr","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"otpauth_url","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"ImpersonationUserIdentityInput","description":null,"fields":null,"inputFields":[{"name":"userId","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"username","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"email","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"ImpersonateReturn","description":null,"fields":[{"name":"authorized","description":null,"args":[],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"tokens","description":null,"args":[],"type":{"kind":"OBJECT","name":"Tokens","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"user","description":null,"args":[],"type":{"kind":"OBJECT","name":"User","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"AuthenticateParamsInput","description":null,"fields":null,"inputFields":[{"name":"access_token","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"access_token_secret","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"provider","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"password","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"user","description":null,"type":{"kind":"INPUT_OBJECT","name":"UserInput","ofType":null},"defaultValue":null},{"name":"code","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"UserInput","description":null,"fields":null,"inputFields":[{"name":"id","description":null,"type":{"kind":"SCALAR","name":"ID","ofType":null},"defaultValue":null},{"name":"email","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"username","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"UNION","name":"AuthenticationResult","description":null,"fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":[{"kind":"OBJECT","name":"LoginResult","ofType":null},{"kind":"OBJECT","name":"MultiFactorResult","ofType":null}]},{"kind":"OBJECT","name":"MultiFactorResult","description":null,"fields":[{"name":"mfaToken","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__Schema","description":"A GraphQL Schema defines the capabilities of a GraphQL server. It exposes all available types and directives on the server, as well as the entry points for query, mutation, and subscription operations.","fields":[{"name":"types","description":"A list of all types supported by this server.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}}}},"isDeprecated":false,"deprecationReason":null},{"name":"queryType","description":"The type that query operations will be rooted at.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"mutationType","description":"If this server supports mutation, the type that mutation operations will be rooted at.","args":[],"type":{"kind":"OBJECT","name":"__Type","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"subscriptionType","description":"If this server support subscription, the type that subscription operations will be rooted at.","args":[],"type":{"kind":"OBJECT","name":"__Type","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"directives","description":"A list of all directives supported by this server.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Directive","ofType":null}}}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__Type","description":"The fundamental unit of any GraphQL Schema is the type. There are many kinds of types in GraphQL as represented by the `__TypeKind` enum.\n\nDepending on the kind of a type, certain fields describe information about that type. Scalar types provide no information beyond a name and description, while Enum types provide their values. Object and Interface types provide the fields they describe. Abstract types, Union and Interface, provide the Object types possible at runtime. List and NonNull types compose other types.","fields":[{"name":"kind","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"ENUM","name":"__TypeKind","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"name","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"fields","description":null,"args":[{"name":"includeDeprecated","description":null,"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"defaultValue":"false"}],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Field","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"interfaces","description":null,"args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"possibleTypes","description":null,"args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"enumValues","description":null,"args":[{"name":"includeDeprecated","description":null,"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"defaultValue":"false"}],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__EnumValue","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"inputFields","description":null,"args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__InputValue","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"ofType","description":null,"args":[],"type":{"kind":"OBJECT","name":"__Type","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"ENUM","name":"__TypeKind","description":"An enum describing what kind of type a given `__Type` is.","fields":null,"inputFields":null,"interfaces":null,"enumValues":[{"name":"SCALAR","description":"Indicates this type is a scalar.","isDeprecated":false,"deprecationReason":null},{"name":"OBJECT","description":"Indicates this type is an object. `fields` and `interfaces` are valid fields.","isDeprecated":false,"deprecationReason":null},{"name":"INTERFACE","description":"Indicates this type is an interface. `fields` and `possibleTypes` are valid fields.","isDeprecated":false,"deprecationReason":null},{"name":"UNION","description":"Indicates this type is a union. `possibleTypes` is a valid field.","isDeprecated":false,"deprecationReason":null},{"name":"ENUM","description":"Indicates this type is an enum. `enumValues` is a valid field.","isDeprecated":false,"deprecationReason":null},{"name":"INPUT_OBJECT","description":"Indicates this type is an input object. `inputFields` is a valid field.","isDeprecated":false,"deprecationReason":null},{"name":"LIST","description":"Indicates this type is a list. `ofType` is a valid field.","isDeprecated":false,"deprecationReason":null},{"name":"NON_NULL","description":"Indicates this type is a non-null. `ofType` is a valid field.","isDeprecated":false,"deprecationReason":null}],"possibleTypes":null},{"kind":"OBJECT","name":"__Field","description":"Object and Interface types are described by a list of Fields, each of which has a name, potentially a list of arguments, and a return type.","fields":[{"name":"name","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"args","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__InputValue","ofType":null}}}},"isDeprecated":false,"deprecationReason":null},{"name":"type","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"isDeprecated","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"deprecationReason","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__InputValue","description":"Arguments provided to Fields or Directives and the input fields of an InputObject are represented as Input Values which describe their type and optionally a default value.","fields":[{"name":"name","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"type","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"defaultValue","description":"A GraphQL-formatted string representing the default value for this input value.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__EnumValue","description":"One possible value for a given Enum. Enum values are unique values, not a placeholder for a string or numeric value. However an Enum value is returned in a JSON response as a string.","fields":[{"name":"name","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"isDeprecated","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"deprecationReason","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__Directive","description":"A Directive provides a way to describe alternate runtime execution and type validation behavior in a GraphQL document.\n\nIn some cases, you need to provide options to alter GraphQL's execution behavior in ways field arguments will not suffice, such as conditionally including or skipping a field. Directives provide this by describing additional information to the executor.","fields":[{"name":"name","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"locations","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"ENUM","name":"__DirectiveLocation","ofType":null}}}},"isDeprecated":false,"deprecationReason":null},{"name":"args","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__InputValue","ofType":null}}}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"ENUM","name":"__DirectiveLocation","description":"A Directive can be adjacent to many parts of the GraphQL language, a __DirectiveLocation describes one such possible adjacencies.","fields":null,"inputFields":null,"interfaces":null,"enumValues":[{"name":"QUERY","description":"Location adjacent to a query operation.","isDeprecated":false,"deprecationReason":null},{"name":"MUTATION","description":"Location adjacent to a mutation operation.","isDeprecated":false,"deprecationReason":null},{"name":"SUBSCRIPTION","description":"Location adjacent to a subscription operation.","isDeprecated":false,"deprecationReason":null},{"name":"FIELD","description":"Location adjacent to a field.","isDeprecated":false,"deprecationReason":null},{"name":"FRAGMENT_DEFINITION","description":"Location adjacent to a fragment definition.","isDeprecated":false,"deprecationReason":null},{"name":"FRAGMENT_SPREAD","description":"Location adjacent to a fragment spread.","isDeprecated":false,"deprecationReason":null},{"name":"INLINE_FRAGMENT","description":"Location adjacent to an inline fragment.","isDeprecated":false,"deprecationReason":null},{"name":"VARIABLE_DEFINITION","description":"Location adjacent to a variable definition.","isDeprecated":false,"deprecationReason":null},{"name":"SCHEMA","description":"Location adjacent to a schema definition.","isDeprecated":false,"deprecationReason":null},{"name":"SCALAR","description":"Location adjacent to a scalar definition.","isDeprecated":false,"deprecationReason":null},{"name":"OBJECT","description":"Location adjacent to an object type definition.","isDeprecated":false,"deprecationReason":null},{"name":"FIELD_DEFINITION","description":"Location adjacent to a field definition.","isDeprecated":false,"deprecationReason":null},{"name":"ARGUMENT_DEFINITION","description":"Location adjacent to an argument definition.","isDeprecated":false,"deprecationReason":null},{"name":"INTERFACE","description":"Location adjacent to an interface definition.","isDeprecated":false,"deprecationReason":null},{"name":"UNION","description":"Location adjacent to a union definition.","isDeprecated":false,"deprecationReason":null},{"name":"ENUM","description":"Location adjacent to an enum definition.","isDeprecated":false,"deprecationReason":null},{"name":"ENUM_VALUE","description":"Location adjacent to an enum value definition.","isDeprecated":false,"deprecationReason":null},{"name":"INPUT_OBJECT","description":"Location adjacent to an input object type definition.","isDeprecated":false,"deprecationReason":null},{"name":"INPUT_FIELD_DEFINITION","description":"Location adjacent to an input object field definition.","isDeprecated":false,"deprecationReason":null}],"possibleTypes":null}],"directives":[{"name":"auth","description":null,"locations":["FIELD_DEFINITION","OBJECT"],"args":[]},{"name":"skip","description":"Directs the executor to skip this field or fragment when the `if` argument is true.","locations":["FIELD","FRAGMENT_SPREAD","INLINE_FRAGMENT"],"args":[{"name":"if","description":"Skipped when true.","type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"defaultValue":null}]},{"name":"include","description":"Directs the executor to include this field or fragment only when the `if` argument is true.","locations":["FIELD","FRAGMENT_SPREAD","INLINE_FRAGMENT"],"args":[{"name":"if","description":"Included when true.","type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"defaultValue":null}]},{"name":"deprecated","description":"Marks an element of a GraphQL schema as no longer supported.","locations":["FIELD_DEFINITION","ENUM_VALUE"],"args":[{"name":"reason","description":"Explains why this element was deprecated, usually also including a suggestion for how to access supported similar data. Formatted using the Markdown syntax (as specified by [CommonMark](https://commonmark.org/).","type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":"\"No longer supported\""}]}]}} \ No newline at end of file +{"__schema":{"queryType":{"name":"Query"},"mutationType":{"name":"Mutation"},"subscriptionType":null,"types":[{"kind":"OBJECT","name":"Query","description":null,"fields":[{"name":"twoFactorSecret","description":null,"args":[],"type":{"kind":"OBJECT","name":"TwoFactorSecretKey","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"authenticators","description":null,"args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"OBJECT","name":"Authenticator","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"authenticatorsByMfaToken","description":null,"args":[{"name":"mfaToken","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"LIST","name":null,"ofType":{"kind":"OBJECT","name":"Authenticator","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"getUser","description":null,"args":[],"type":{"kind":"OBJECT","name":"User","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"TwoFactorSecretKey","description":null,"fields":[{"name":"ascii","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"base32","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"hex","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"qr_code_ascii","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"qr_code_hex","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"qr_code_base32","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"google_auth_qr","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"otpauth_url","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"String","description":"The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"Authenticator","description":null,"fields":[{"name":"id","description":null,"args":[],"type":{"kind":"SCALAR","name":"ID","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"type","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"active","description":null,"args":[],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"activatedAt","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"ID","description":"The `ID` scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as `\"4\"`) or integer (such as `4`) input value will be accepted as an ID.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"SCALAR","name":"Boolean","description":"The `Boolean` scalar type represents `true` or `false`.","fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"User","description":null,"fields":[{"name":"id","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"ID","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"emails","description":null,"args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"EmailRecord","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"username","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"EmailRecord","description":null,"fields":[{"name":"address","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"verified","description":null,"args":[],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"Mutation","description":null,"fields":[{"name":"createUser","description":null,"args":[{"name":"user","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"INPUT_OBJECT","name":"CreateUserInput","ofType":null}},"defaultValue":null}],"type":{"kind":"OBJECT","name":"CreateUserResult","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"verifyEmail","description":null,"args":[{"name":"token","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"resetPassword","description":null,"args":[{"name":"token","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"newPassword","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"OBJECT","name":"LoginResult","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"sendVerificationEmail","description":null,"args":[{"name":"email","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"sendResetPasswordEmail","description":null,"args":[{"name":"email","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"addEmail","description":null,"args":[{"name":"newEmail","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"changePassword","description":null,"args":[{"name":"oldPassword","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"newPassword","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"twoFactorSet","description":null,"args":[{"name":"secret","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"INPUT_OBJECT","name":"TwoFactorSecretKeyInput","ofType":null}},"defaultValue":null},{"name":"code","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"twoFactorUnset","description":null,"args":[{"name":"code","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"challenge","description":null,"args":[{"name":"mfaToken","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"authenticatorId","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"UNION","name":"ChallengeResult","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"associate","description":null,"args":[{"name":"type","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"params","description":null,"type":{"kind":"INPUT_OBJECT","name":"AssociateParamsInput","ofType":null},"defaultValue":null}],"type":{"kind":"UNION","name":"AssociationResult","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"associateByMfaToken","description":null,"args":[{"name":"mfaToken","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"type","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"params","description":null,"type":{"kind":"INPUT_OBJECT","name":"AssociateParamsInput","ofType":null},"defaultValue":null}],"type":{"kind":"UNION","name":"AssociationResult","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"impersonate","description":null,"args":[{"name":"accessToken","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"impersonated","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"INPUT_OBJECT","name":"ImpersonationUserIdentityInput","ofType":null}},"defaultValue":null}],"type":{"kind":"OBJECT","name":"ImpersonateReturn","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"refreshTokens","description":null,"args":[{"name":"accessToken","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"refreshToken","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null}],"type":{"kind":"OBJECT","name":"LoginResult","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"logout","description":null,"args":[],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"authenticate","description":null,"args":[{"name":"serviceName","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"params","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"INPUT_OBJECT","name":"AuthenticateParamsInput","ofType":null}},"defaultValue":null}],"type":{"kind":"UNION","name":"AuthenticationResult","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"verifyAuthentication","description":null,"args":[{"name":"serviceName","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"defaultValue":null},{"name":"params","description":null,"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"INPUT_OBJECT","name":"AuthenticateParamsInput","ofType":null}},"defaultValue":null}],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"CreateUserInput","description":null,"fields":null,"inputFields":[{"name":"username","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"email","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"password","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"CreateUserResult","description":null,"fields":[{"name":"userId","description":null,"args":[],"type":{"kind":"SCALAR","name":"ID","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"loginResult","description":null,"args":[],"type":{"kind":"OBJECT","name":"LoginResult","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"LoginResult","description":null,"fields":[{"name":"sessionId","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"tokens","description":null,"args":[],"type":{"kind":"OBJECT","name":"Tokens","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"user","description":null,"args":[],"type":{"kind":"OBJECT","name":"User","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"Tokens","description":null,"fields":[{"name":"refreshToken","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"accessToken","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"TwoFactorSecretKeyInput","description":null,"fields":null,"inputFields":[{"name":"ascii","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"base32","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"hex","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"qr_code_ascii","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"qr_code_hex","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"qr_code_base32","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"google_auth_qr","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"otpauth_url","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"UNION","name":"ChallengeResult","description":null,"fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":[{"kind":"OBJECT","name":"DefaultChallengeResult","ofType":null}]},{"kind":"OBJECT","name":"DefaultChallengeResult","description":null,"fields":[{"name":"mfaToken","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"authenticatorId","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"AssociateParamsInput","description":null,"fields":null,"inputFields":[{"name":"_","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"UNION","name":"AssociationResult","description":null,"fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":[{"kind":"OBJECT","name":"OTPAssociationResult","ofType":null}]},{"kind":"OBJECT","name":"OTPAssociationResult","description":null,"fields":[{"name":"mfaToken","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"authenticatorId","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"ImpersonationUserIdentityInput","description":null,"fields":null,"inputFields":[{"name":"userId","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"username","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"email","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"ImpersonateReturn","description":null,"fields":[{"name":"authorized","description":null,"args":[],"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"tokens","description":null,"args":[],"type":{"kind":"OBJECT","name":"Tokens","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"user","description":null,"args":[],"type":{"kind":"OBJECT","name":"User","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"AuthenticateParamsInput","description":null,"fields":null,"inputFields":[{"name":"access_token","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"access_token_secret","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"provider","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"password","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"user","description":null,"type":{"kind":"INPUT_OBJECT","name":"UserInput","ofType":null},"defaultValue":null},{"name":"code","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"INPUT_OBJECT","name":"UserInput","description":null,"fields":null,"inputFields":[{"name":"id","description":null,"type":{"kind":"SCALAR","name":"ID","ofType":null},"defaultValue":null},{"name":"email","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null},{"name":"username","description":null,"type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":null}],"interfaces":null,"enumValues":null,"possibleTypes":null},{"kind":"UNION","name":"AuthenticationResult","description":null,"fields":null,"inputFields":null,"interfaces":null,"enumValues":null,"possibleTypes":[{"kind":"OBJECT","name":"LoginResult","ofType":null},{"kind":"OBJECT","name":"MultiFactorResult","ofType":null}]},{"kind":"OBJECT","name":"MultiFactorResult","description":null,"fields":[{"name":"mfaToken","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__Schema","description":"A GraphQL Schema defines the capabilities of a GraphQL server. It exposes all available types and directives on the server, as well as the entry points for query, mutation, and subscription operations.","fields":[{"name":"types","description":"A list of all types supported by this server.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}}}},"isDeprecated":false,"deprecationReason":null},{"name":"queryType","description":"The type that query operations will be rooted at.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"mutationType","description":"If this server supports mutation, the type that mutation operations will be rooted at.","args":[],"type":{"kind":"OBJECT","name":"__Type","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"subscriptionType","description":"If this server support subscription, the type that subscription operations will be rooted at.","args":[],"type":{"kind":"OBJECT","name":"__Type","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"directives","description":"A list of all directives supported by this server.","args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Directive","ofType":null}}}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__Type","description":"The fundamental unit of any GraphQL Schema is the type. There are many kinds of types in GraphQL as represented by the `__TypeKind` enum.\n\nDepending on the kind of a type, certain fields describe information about that type. Scalar types provide no information beyond a name and description, while Enum types provide their values. Object and Interface types provide the fields they describe. Abstract types, Union and Interface, provide the Object types possible at runtime. List and NonNull types compose other types.","fields":[{"name":"kind","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"ENUM","name":"__TypeKind","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"name","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"fields","description":null,"args":[{"name":"includeDeprecated","description":null,"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"defaultValue":"false"}],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Field","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"interfaces","description":null,"args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"possibleTypes","description":null,"args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"enumValues","description":null,"args":[{"name":"includeDeprecated","description":null,"type":{"kind":"SCALAR","name":"Boolean","ofType":null},"defaultValue":"false"}],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__EnumValue","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"inputFields","description":null,"args":[],"type":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__InputValue","ofType":null}}},"isDeprecated":false,"deprecationReason":null},{"name":"ofType","description":null,"args":[],"type":{"kind":"OBJECT","name":"__Type","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"ENUM","name":"__TypeKind","description":"An enum describing what kind of type a given `__Type` is.","fields":null,"inputFields":null,"interfaces":null,"enumValues":[{"name":"SCALAR","description":"Indicates this type is a scalar.","isDeprecated":false,"deprecationReason":null},{"name":"OBJECT","description":"Indicates this type is an object. `fields` and `interfaces` are valid fields.","isDeprecated":false,"deprecationReason":null},{"name":"INTERFACE","description":"Indicates this type is an interface. `fields` and `possibleTypes` are valid fields.","isDeprecated":false,"deprecationReason":null},{"name":"UNION","description":"Indicates this type is a union. `possibleTypes` is a valid field.","isDeprecated":false,"deprecationReason":null},{"name":"ENUM","description":"Indicates this type is an enum. `enumValues` is a valid field.","isDeprecated":false,"deprecationReason":null},{"name":"INPUT_OBJECT","description":"Indicates this type is an input object. `inputFields` is a valid field.","isDeprecated":false,"deprecationReason":null},{"name":"LIST","description":"Indicates this type is a list. `ofType` is a valid field.","isDeprecated":false,"deprecationReason":null},{"name":"NON_NULL","description":"Indicates this type is a non-null. `ofType` is a valid field.","isDeprecated":false,"deprecationReason":null}],"possibleTypes":null},{"kind":"OBJECT","name":"__Field","description":"Object and Interface types are described by a list of Fields, each of which has a name, potentially a list of arguments, and a return type.","fields":[{"name":"name","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"args","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__InputValue","ofType":null}}}},"isDeprecated":false,"deprecationReason":null},{"name":"type","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"isDeprecated","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"deprecationReason","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__InputValue","description":"Arguments provided to Fields or Directives and the input fields of an InputObject are represented as Input Values which describe their type and optionally a default value.","fields":[{"name":"name","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"type","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__Type","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"defaultValue","description":"A GraphQL-formatted string representing the default value for this input value.","args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__EnumValue","description":"One possible value for a given Enum. Enum values are unique values, not a placeholder for a string or numeric value. However an Enum value is returned in a JSON response as a string.","fields":[{"name":"name","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"isDeprecated","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"deprecationReason","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"OBJECT","name":"__Directive","description":"A Directive provides a way to describe alternate runtime execution and type validation behavior in a GraphQL document.\n\nIn some cases, you need to provide options to alter GraphQL's execution behavior in ways field arguments will not suffice, such as conditionally including or skipping a field. Directives provide this by describing additional information to the executor.","fields":[{"name":"name","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"String","ofType":null}},"isDeprecated":false,"deprecationReason":null},{"name":"description","description":null,"args":[],"type":{"kind":"SCALAR","name":"String","ofType":null},"isDeprecated":false,"deprecationReason":null},{"name":"locations","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"ENUM","name":"__DirectiveLocation","ofType":null}}}},"isDeprecated":false,"deprecationReason":null},{"name":"args","description":null,"args":[],"type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"LIST","name":null,"ofType":{"kind":"NON_NULL","name":null,"ofType":{"kind":"OBJECT","name":"__InputValue","ofType":null}}}},"isDeprecated":false,"deprecationReason":null}],"inputFields":null,"interfaces":[],"enumValues":null,"possibleTypes":null},{"kind":"ENUM","name":"__DirectiveLocation","description":"A Directive can be adjacent to many parts of the GraphQL language, a __DirectiveLocation describes one such possible adjacencies.","fields":null,"inputFields":null,"interfaces":null,"enumValues":[{"name":"QUERY","description":"Location adjacent to a query operation.","isDeprecated":false,"deprecationReason":null},{"name":"MUTATION","description":"Location adjacent to a mutation operation.","isDeprecated":false,"deprecationReason":null},{"name":"SUBSCRIPTION","description":"Location adjacent to a subscription operation.","isDeprecated":false,"deprecationReason":null},{"name":"FIELD","description":"Location adjacent to a field.","isDeprecated":false,"deprecationReason":null},{"name":"FRAGMENT_DEFINITION","description":"Location adjacent to a fragment definition.","isDeprecated":false,"deprecationReason":null},{"name":"FRAGMENT_SPREAD","description":"Location adjacent to a fragment spread.","isDeprecated":false,"deprecationReason":null},{"name":"INLINE_FRAGMENT","description":"Location adjacent to an inline fragment.","isDeprecated":false,"deprecationReason":null},{"name":"VARIABLE_DEFINITION","description":"Location adjacent to a variable definition.","isDeprecated":false,"deprecationReason":null},{"name":"SCHEMA","description":"Location adjacent to a schema definition.","isDeprecated":false,"deprecationReason":null},{"name":"SCALAR","description":"Location adjacent to a scalar definition.","isDeprecated":false,"deprecationReason":null},{"name":"OBJECT","description":"Location adjacent to an object type definition.","isDeprecated":false,"deprecationReason":null},{"name":"FIELD_DEFINITION","description":"Location adjacent to a field definition.","isDeprecated":false,"deprecationReason":null},{"name":"ARGUMENT_DEFINITION","description":"Location adjacent to an argument definition.","isDeprecated":false,"deprecationReason":null},{"name":"INTERFACE","description":"Location adjacent to an interface definition.","isDeprecated":false,"deprecationReason":null},{"name":"UNION","description":"Location adjacent to a union definition.","isDeprecated":false,"deprecationReason":null},{"name":"ENUM","description":"Location adjacent to an enum definition.","isDeprecated":false,"deprecationReason":null},{"name":"ENUM_VALUE","description":"Location adjacent to an enum value definition.","isDeprecated":false,"deprecationReason":null},{"name":"INPUT_OBJECT","description":"Location adjacent to an input object type definition.","isDeprecated":false,"deprecationReason":null},{"name":"INPUT_FIELD_DEFINITION","description":"Location adjacent to an input object field definition.","isDeprecated":false,"deprecationReason":null}],"possibleTypes":null}],"directives":[{"name":"auth","description":null,"locations":["FIELD_DEFINITION","OBJECT"],"args":[]},{"name":"skip","description":"Directs the executor to skip this field or fragment when the `if` argument is true.","locations":["FIELD","FRAGMENT_SPREAD","INLINE_FRAGMENT"],"args":[{"name":"if","description":"Skipped when true.","type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"defaultValue":null}]},{"name":"include","description":"Directs the executor to include this field or fragment only when the `if` argument is true.","locations":["FIELD","FRAGMENT_SPREAD","INLINE_FRAGMENT"],"args":[{"name":"if","description":"Included when true.","type":{"kind":"NON_NULL","name":null,"ofType":{"kind":"SCALAR","name":"Boolean","ofType":null}},"defaultValue":null}]},{"name":"deprecated","description":"Marks an element of a GraphQL schema as no longer supported.","locations":["FIELD_DEFINITION","ENUM_VALUE"],"args":[{"name":"reason","description":"Explains why this element was deprecated, usually also including a suggestion for how to access supported similar data. Formatted using the Markdown syntax (as specified by [CommonMark](https://commonmark.org/).","type":{"kind":"SCALAR","name":"String","ofType":null},"defaultValue":"\"No longer supported\""}]}]}} \ No newline at end of file diff --git a/packages/graphql-api/package.json b/packages/graphql-api/package.json index db7c05a87..86c446ff4 100644 --- a/packages/graphql-api/package.json +++ b/packages/graphql-api/package.json @@ -33,9 +33,10 @@ }, "homepage": "https://github.com/js-accounts/graphql-api", "peerDependencies": { - "@accounts/password": "^0.28.0", - "@accounts/server": "^0.28.0", - "@accounts/types": "^0.28.0", + "@accounts/mfa": "^0.29.0", + "@accounts/password": "^0.29.0", + "@accounts/server": "^0.29.0", + "@accounts/types": "^0.29.0", "@graphql-modules/core": "0.7.17", "graphql-tag": "^2.10.0", "graphql-tools": "^5.0.0" @@ -46,6 +47,7 @@ "tslib": "2.0.1" }, "devDependencies": { + "@accounts/mfa": "^0.29.0", "@accounts/password": "^0.29.0", "@accounts/server": "^0.29.0", "@accounts/types": "^0.29.0", diff --git a/packages/graphql-api/src/models.ts b/packages/graphql-api/src/models.ts index e4bbbe5aa..5ed8ced01 100644 --- a/packages/graphql-api/src/models.ts +++ b/packages/graphql-api/src/models.ts @@ -14,6 +14,12 @@ export type Scalars = { }; +export type AssociateParamsInput = { + _?: Maybe; +}; + +export type AssociationResult = OtpAssociationResult; + export type AuthenticateParamsInput = { access_token?: Maybe; access_token_secret?: Maybe; @@ -25,6 +31,16 @@ export type AuthenticateParamsInput = { export type AuthenticationResult = LoginResult | MultiFactorResult; +export type Authenticator = { + __typename?: 'Authenticator'; + id?: Maybe; + type?: Maybe; + active?: Maybe; + activatedAt?: Maybe; +}; + +export type ChallengeResult = DefaultChallengeResult; + export type CreateUserInput = { username?: Maybe; email?: Maybe; @@ -37,6 +53,12 @@ export type CreateUserResult = { loginResult?: Maybe; }; +export type DefaultChallengeResult = { + __typename?: 'DefaultChallengeResult'; + mfaToken?: Maybe; + authenticatorId?: Maybe; +}; + export type EmailRecord = { __typename?: 'EmailRecord'; address?: Maybe; @@ -79,6 +101,9 @@ export type Mutation = { changePassword?: Maybe; twoFactorSet?: Maybe; twoFactorUnset?: Maybe; + challenge?: Maybe; + associate?: Maybe; + associateByMfaToken?: Maybe; impersonate?: Maybe; refreshTokens?: Maybe; logout?: Maybe; @@ -135,6 +160,25 @@ export type MutationTwoFactorUnsetArgs = { }; +export type MutationChallengeArgs = { + mfaToken: Scalars['String']; + authenticatorId: Scalars['String']; +}; + + +export type MutationAssociateArgs = { + type: Scalars['String']; + params?: Maybe; +}; + + +export type MutationAssociateByMfaTokenArgs = { + mfaToken: Scalars['String']; + type: Scalars['String']; + params?: Maybe; +}; + + export type MutationImpersonateArgs = { accessToken: Scalars['String']; impersonated: ImpersonationUserIdentityInput; @@ -158,12 +202,25 @@ export type MutationVerifyAuthenticationArgs = { params: AuthenticateParamsInput; }; +export type OtpAssociationResult = { + __typename?: 'OTPAssociationResult'; + mfaToken?: Maybe; + authenticatorId?: Maybe; +}; + export type Query = { __typename?: 'Query'; twoFactorSecret?: Maybe; + authenticators?: Maybe>>; + authenticatorsByMfaToken?: Maybe>>; getUser?: Maybe; }; + +export type QueryAuthenticatorsByMfaTokenArgs = { + mfaToken: Scalars['String']; +}; + export type Tokens = { __typename?: 'Tokens'; refreshToken?: Maybe; @@ -274,16 +331,22 @@ export type ResolversTypes = { Query: ResolverTypeWrapper<{}>; TwoFactorSecretKey: ResolverTypeWrapper; String: ResolverTypeWrapper; - User: ResolverTypeWrapper; + Authenticator: ResolverTypeWrapper; ID: ResolverTypeWrapper; - EmailRecord: ResolverTypeWrapper; Boolean: ResolverTypeWrapper; + User: ResolverTypeWrapper; + EmailRecord: ResolverTypeWrapper; Mutation: ResolverTypeWrapper<{}>; CreateUserInput: CreateUserInput; CreateUserResult: ResolverTypeWrapper; LoginResult: ResolverTypeWrapper; Tokens: ResolverTypeWrapper; TwoFactorSecretKeyInput: TwoFactorSecretKeyInput; + ChallengeResult: ResolversTypes['DefaultChallengeResult']; + DefaultChallengeResult: ResolverTypeWrapper; + AssociateParamsInput: AssociateParamsInput; + AssociationResult: ResolversTypes['OTPAssociationResult']; + OTPAssociationResult: ResolverTypeWrapper; ImpersonationUserIdentityInput: ImpersonationUserIdentityInput; ImpersonateReturn: ResolverTypeWrapper; AuthenticateParamsInput: AuthenticateParamsInput; @@ -297,16 +360,22 @@ export type ResolversParentTypes = { Query: {}; TwoFactorSecretKey: TwoFactorSecretKey; String: Scalars['String']; - User: User; + Authenticator: Authenticator; ID: Scalars['ID']; - EmailRecord: EmailRecord; Boolean: Scalars['Boolean']; + User: User; + EmailRecord: EmailRecord; Mutation: {}; CreateUserInput: CreateUserInput; CreateUserResult: CreateUserResult; LoginResult: LoginResult; Tokens: Tokens; TwoFactorSecretKeyInput: TwoFactorSecretKeyInput; + ChallengeResult: ResolversParentTypes['DefaultChallengeResult']; + DefaultChallengeResult: DefaultChallengeResult; + AssociateParamsInput: AssociateParamsInput; + AssociationResult: ResolversParentTypes['OTPAssociationResult']; + OTPAssociationResult: OtpAssociationResult; ImpersonationUserIdentityInput: ImpersonationUserIdentityInput; ImpersonateReturn: ImpersonateReturn; AuthenticateParamsInput: AuthenticateParamsInput; @@ -319,16 +388,38 @@ export type AuthDirectiveArgs = { }; export type AuthDirectiveResolver = DirectiveResolverFn; +export type AssociationResultResolvers = { + __resolveType: TypeResolveFn<'OTPAssociationResult', ParentType, ContextType>; +}; + export type AuthenticationResultResolvers = { __resolveType: TypeResolveFn<'LoginResult' | 'MultiFactorResult', ParentType, ContextType>; }; +export type AuthenticatorResolvers = { + id?: Resolver, ParentType, ContextType>; + type?: Resolver, ParentType, ContextType>; + active?: Resolver, ParentType, ContextType>; + activatedAt?: Resolver, ParentType, ContextType>; + __isTypeOf?: IsTypeOfResolverFn; +}; + +export type ChallengeResultResolvers = { + __resolveType: TypeResolveFn<'DefaultChallengeResult', ParentType, ContextType>; +}; + export type CreateUserResultResolvers = { userId?: Resolver, ParentType, ContextType>; loginResult?: Resolver, ParentType, ContextType>; __isTypeOf?: IsTypeOfResolverFn; }; +export type DefaultChallengeResultResolvers = { + mfaToken?: Resolver, ParentType, ContextType>; + authenticatorId?: Resolver, ParentType, ContextType>; + __isTypeOf?: IsTypeOfResolverFn; +}; + export type EmailRecordResolvers = { address?: Resolver, ParentType, ContextType>; verified?: Resolver, ParentType, ContextType>; @@ -364,6 +455,9 @@ export type MutationResolvers, ParentType, ContextType, RequireFields>; twoFactorSet?: Resolver, ParentType, ContextType, RequireFields>; twoFactorUnset?: Resolver, ParentType, ContextType, RequireFields>; + challenge?: Resolver, ParentType, ContextType, RequireFields>; + associate?: Resolver, ParentType, ContextType, RequireFields>; + associateByMfaToken?: Resolver, ParentType, ContextType, RequireFields>; impersonate?: Resolver, ParentType, ContextType, RequireFields>; refreshTokens?: Resolver, ParentType, ContextType, RequireFields>; logout?: Resolver, ParentType, ContextType>; @@ -371,8 +465,16 @@ export type MutationResolvers, ParentType, ContextType, RequireFields>; }; +export type OtpAssociationResultResolvers = { + mfaToken?: Resolver, ParentType, ContextType>; + authenticatorId?: Resolver, ParentType, ContextType>; + __isTypeOf?: IsTypeOfResolverFn; +}; + export type QueryResolvers = { twoFactorSecret?: Resolver, ParentType, ContextType>; + authenticators?: Resolver>>, ParentType, ContextType>; + authenticatorsByMfaToken?: Resolver>>, ParentType, ContextType, RequireFields>; getUser?: Resolver, ParentType, ContextType>; }; @@ -402,13 +504,18 @@ export type UserResolvers = { + AssociationResult?: AssociationResultResolvers; AuthenticationResult?: AuthenticationResultResolvers; + Authenticator?: AuthenticatorResolvers; + ChallengeResult?: ChallengeResultResolvers; CreateUserResult?: CreateUserResultResolvers; + DefaultChallengeResult?: DefaultChallengeResultResolvers; EmailRecord?: EmailRecordResolvers; ImpersonateReturn?: ImpersonateReturnResolvers; LoginResult?: LoginResultResolvers; MultiFactorResult?: MultiFactorResultResolvers; Mutation?: MutationResolvers; + OTPAssociationResult?: OtpAssociationResultResolvers; Query?: QueryResolvers; Tokens?: TokensResolvers; TwoFactorSecretKey?: TwoFactorSecretKeyResolvers; diff --git a/packages/graphql-api/src/modules/accounts-mfa/index.ts b/packages/graphql-api/src/modules/accounts-mfa/index.ts new file mode 100644 index 000000000..90eaccea0 --- /dev/null +++ b/packages/graphql-api/src/modules/accounts-mfa/index.ts @@ -0,0 +1,47 @@ +import { GraphQLModule } from '@graphql-modules/core'; +import { AccountsServer } from '@accounts/server'; +import { AccountsMfa } from '@accounts/mfa'; + +import TypesTypeDefs from './schema/types'; +import getQueryTypeDefs from './schema/query'; +import getMutationTypeDefs from './schema/mutation'; +import { Query } from './resolvers/query'; +import { Mutation } from './resolvers/mutation'; +import { AccountsRequest } from '../accounts'; +import { context } from '../../utils'; +import { CoreAccountsModule } from '../core'; + +export interface AccountsMfaModuleConfig { + accountsServer: AccountsServer; + accountsMfa: AccountsMfa; + rootQueryName?: string; + rootMutationName?: string; + extendTypeDefs?: boolean; + withSchemaDefinition?: boolean; + headerName?: string; + userAsInterface?: boolean; + excludeAddUserInContext?: boolean; +} + +export const AccountsMfaModule = new GraphQLModule({ + name: 'accounts-mfa', + typeDefs: ({ config }) => [TypesTypeDefs, getQueryTypeDefs(config), getMutationTypeDefs(config)], + resolvers: ({ config }) => + ({ + [config.rootQueryName || 'Query']: Query, + [config.rootMutationName || 'Mutation']: Mutation, + } as any), + imports: ({ config }) => [ + CoreAccountsModule.forRoot({ + userAsInterface: config.userAsInterface, + }), + ], + providers: ({ config }) => [ + { + provide: AccountsServer, + useValue: config.accountsServer, + }, + ], + context: context('accounts-mfa'), + configRequired: true, +}); diff --git a/packages/graphql-api/src/modules/accounts-mfa/resolvers/mutation.ts b/packages/graphql-api/src/modules/accounts-mfa/resolvers/mutation.ts new file mode 100644 index 000000000..c5cf889b5 --- /dev/null +++ b/packages/graphql-api/src/modules/accounts-mfa/resolvers/mutation.ts @@ -0,0 +1,30 @@ +import { ModuleContext } from '@graphql-modules/core'; +import { AccountsMfa } from '@accounts/mfa'; +import { AccountsModuleContext } from '../../accounts'; +import { MutationResolvers } from '../../../models'; + +export const Mutation: MutationResolvers> = { + challenge: async (_, { mfaToken, authenticatorId }, { injector, infos }) => { + const challengeResponse = await injector + .get(AccountsMfa) + .challenge(mfaToken, authenticatorId, infos); + return challengeResponse; + }, + associate: async (_, { type, params }, { injector, user, infos }) => { + const userId = user?.id; + if (!userId) { + throw new Error('Unauthorized'); + } + + const associateResponse = await injector + .get(AccountsMfa) + .associate(userId, type, params, infos); + return associateResponse; + }, + associateByMfaToken: async (_, { mfaToken, type, params }, { injector, infos }) => { + const associateResponse = await injector + .get(AccountsMfa) + .associateByMfaToken(mfaToken, type, params, infos); + return associateResponse; + }, +}; diff --git a/packages/graphql-api/src/modules/accounts-mfa/resolvers/query.ts b/packages/graphql-api/src/modules/accounts-mfa/resolvers/query.ts new file mode 100644 index 000000000..eee051ca8 --- /dev/null +++ b/packages/graphql-api/src/modules/accounts-mfa/resolvers/query.ts @@ -0,0 +1,18 @@ +import { ModuleContext } from '@graphql-modules/core'; +import { AccountsMfa } from '@accounts/mfa'; +import { QueryResolvers } from '../../../models'; +import { AccountsModuleContext } from '../../accounts'; + +export const Query: QueryResolvers> = { + authenticators: async (_, __, { user, injector }) => { + const userId = user?.id; + if (!userId) { + throw new Error('Unauthorized'); + } + + return injector.get(AccountsMfa).findUserAuthenticators(userId); + }, + authenticatorsByMfaToken: async (_, { mfaToken }, { injector }) => { + return injector.get(AccountsMfa).findUserAuthenticatorsByMfaToken(mfaToken); + }, +}; diff --git a/packages/graphql-api/src/modules/accounts-mfa/schema/mutation.ts b/packages/graphql-api/src/modules/accounts-mfa/schema/mutation.ts new file mode 100644 index 000000000..68c2480bc --- /dev/null +++ b/packages/graphql-api/src/modules/accounts-mfa/schema/mutation.ts @@ -0,0 +1,13 @@ +import gql from 'graphql-tag'; +import { AccountsMfaModuleConfig } from '..'; + +export default (config: AccountsMfaModuleConfig) => gql` + ${config.extendTypeDefs ? 'extend' : ''} type ${config.rootMutationName || 'Mutation'} { + # Request a challenge for the MFA authentication. + challenge(mfaToken: String!, authenticatorId: String!): ChallengeResult + # Start the association of a new authenticator. + associate(type: String!, params: AssociateParamsInput): AssociationResult + # Start the association of a new authenticator, this method is called when the user is enforced to associate an authenticator before the first login. + associateByMfaToken(mfaToken: String!, type: String!, params: AssociateParamsInput): AssociationResult + } +`; diff --git a/packages/graphql-api/src/modules/accounts-mfa/schema/query.ts b/packages/graphql-api/src/modules/accounts-mfa/schema/query.ts new file mode 100644 index 000000000..1f0920572 --- /dev/null +++ b/packages/graphql-api/src/modules/accounts-mfa/schema/query.ts @@ -0,0 +1,11 @@ +import gql from 'graphql-tag'; +import { AccountsMfaModuleConfig } from '..'; + +export default (config: AccountsMfaModuleConfig) => gql` + ${config.extendTypeDefs ? 'extend' : ''} type ${config.rootQueryName || 'Query'} { + # Return the list of the active and inactive authenticators for this user. + authenticators: [Authenticator] + # Return the list of the active authenticators for this user. + authenticatorsByMfaToken(mfaToken: String!): [Authenticator] + } +`; diff --git a/packages/graphql-api/src/modules/accounts-mfa/schema/types.ts b/packages/graphql-api/src/modules/accounts-mfa/schema/types.ts new file mode 100644 index 000000000..46e880376 --- /dev/null +++ b/packages/graphql-api/src/modules/accounts-mfa/schema/types.ts @@ -0,0 +1,23 @@ +import gql from 'graphql-tag'; + +export default gql` + type Authenticator { + id: ID + type: String + active: Boolean + activatedAt: String + } + type DefaultChallengeResult { + mfaToken: String + authenticatorId: String + } + union ChallengeResult = DefaultChallengeResult + type OTPAssociationResult { + mfaToken: String + authenticatorId: String + } + union AssociationResult = OTPAssociationResult + input AssociateParamsInput { + _: String + } +`; diff --git a/packages/graphql-api/src/modules/accounts/index.ts b/packages/graphql-api/src/modules/accounts/index.ts index 910712cac..f6a57b44f 100644 --- a/packages/graphql-api/src/modules/accounts/index.ts +++ b/packages/graphql-api/src/modules/accounts/index.ts @@ -2,7 +2,8 @@ import { GraphQLModule } from '@graphql-modules/core'; import { mergeTypeDefs } from '@graphql-tools/merge'; import { User, ConnectionInformations } from '@accounts/types'; import { AccountsServer } from '@accounts/server'; -import AccountsPassword from '@accounts/password'; +import { AccountsPassword } from '@accounts/password'; +import { AccountsMfa } from '@accounts/mfa'; import { IncomingMessage } from 'http'; import TypesTypeDefs from './schema/types'; import getQueryTypeDefs from './schema/query'; @@ -12,6 +13,7 @@ import { Query } from './resolvers/query'; import { Mutation } from './resolvers/mutation'; import { resolvers as CustomResolvers } from './resolvers'; import { AccountsPasswordModule } from '../accounts-password'; +import { AccountsMfaModule } from '../accounts-mfa'; import { AuthenticatedDirective } from '../../utils/authenticated-directive'; import { context } from '../../utils'; import { CoreAccountsModule } from '../core'; @@ -71,10 +73,18 @@ export const AccountsModule: GraphQLModule< CoreAccountsModule.forRoot({ userAsInterface: config.userAsInterface, }), - ...(config.accountsServer.getServices().password + ...(config.accountsServer.getService('password') ? [ AccountsPasswordModule.forRoot({ - accountsPassword: config.accountsServer.getServices().password as AccountsPassword, + accountsPassword: config.accountsServer.getService('password') as AccountsPassword, + ...config, + }), + ] + : []), + ...(config.accountsServer.getService('mfa') + ? [ + AccountsMfaModule.forRoot({ + accountsMfa: config.accountsServer.getService('mfa') as AccountsMfa, ...config, }), ] diff --git a/packages/graphql-api/src/modules/index.ts b/packages/graphql-api/src/modules/index.ts index 18319d5cd..9446bff79 100644 --- a/packages/graphql-api/src/modules/index.ts +++ b/packages/graphql-api/src/modules/index.ts @@ -1,2 +1,3 @@ export * from './accounts'; export * from './accounts-password'; +export * from './accounts-mfa'; diff --git a/packages/graphql-api/src/schema.ts b/packages/graphql-api/src/schema.ts index 438dc3fc2..c5d407640 100644 --- a/packages/graphql-api/src/schema.ts +++ b/packages/graphql-api/src/schema.ts @@ -2,8 +2,6 @@ import { AccountsModule } from './modules'; export default AccountsModule.forRoot({ accountsServer: { - getServices: () => ({ - password: {}, - }), + getService: () => ({}), } as any, }).typeDefs; diff --git a/yarn.lock b/yarn.lock index 5b36b794a..a5da7598a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -192,6 +192,7 @@ __metadata: version: 0.0.0-use.local resolution: "@accounts/graphql-api@workspace:packages/graphql-api" dependencies: + "@accounts/mfa": ^0.29.0 "@accounts/password": ^0.29.0 "@accounts/server": ^0.29.0 "@accounts/types": ^0.29.0 @@ -215,9 +216,10 @@ __metadata: ts-node: 8.10.2 tslib: 2.0.1 peerDependencies: - "@accounts/password": ^0.28.0 - "@accounts/server": ^0.28.0 - "@accounts/types": ^0.28.0 + "@accounts/mfa": ^0.29.0 + "@accounts/password": ^0.29.0 + "@accounts/server": ^0.29.0 + "@accounts/types": ^0.29.0 "@graphql-modules/core": 0.7.17 graphql-tag: ^2.10.0 graphql-tools: ^5.0.0 From dc9d67574f0e71dd504af41cab44f7fdc9943fe4 Mon Sep 17 00:00:00 2001 From: pradel Date: Thu, 13 Aug 2020 10:01:27 +0200 Subject: [PATCH 145/146] Update accounts-server.ts --- packages/server/src/accounts-server.ts | 20 +------------------- 1 file changed, 1 insertion(+), 19 deletions(-) diff --git a/packages/server/src/accounts-server.ts b/packages/server/src/accounts-server.ts index 5c2a8bc05..509bff6c9 100644 --- a/packages/server/src/accounts-server.ts +++ b/packages/server/src/accounts-server.ts @@ -11,7 +11,6 @@ import { HookListener, DatabaseInterface, AuthenticationService, - AuthenticatorService, ConnectionInformations, AuthenticationResult, } from '@accounts/types'; @@ -56,16 +55,13 @@ const defaultOptions = { export class AccountsServer { public options: AccountsServerOptions & typeof defaultOptions; - public mfa: AccountsMfa; private services: { [key: string]: AuthenticationService }; - private authenticators: { [key: string]: AuthenticatorService }; private db: DatabaseInterface; private hooks: Emittery; constructor( options: AccountsServerOptions, - services: { [key: string]: AuthenticationService }, - authenticators?: { [key: string]: AuthenticatorService } + services: { [key: string]: AuthenticationService } ) { this.options = merge({ ...defaultOptions }, options); if (!this.options.db) { @@ -84,7 +80,6 @@ Please set ambiguousErrorMessages to false to be able to use autologin.` } this.services = services || {}; - this.authenticators = authenticators || {}; this.db = this.options.db; // Set the db to all services @@ -93,15 +88,6 @@ Please set ambiguousErrorMessages to false to be able to use autologin.` this.services[service].server = this; } - // Set the db to all authenticators - for (const service in this.authenticators) { - this.authenticators[service].setStore(this.db); - this.authenticators[service].server = this; - } - - // Initialize the MFA module - this.mfa = new AccountsMfa({ factors: authenticators! }); - // Initialize hooks this.hooks = new Emittery(); } @@ -661,10 +647,6 @@ Please set ambiguousErrorMessages to false to be able to use autologin.` return userObjectSanitizer(baseUser, omit as any, pick as any); } - /** - * Private methods - */ - private internalUserSanitizer(user: CustomUser): CustomUser { return omit(user, ['services']) as any; } From b1eb1b29e04c8af1d765484fb291c54ba59476f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Pradel?= Date: Thu, 13 Aug 2020 12:22:42 +0200 Subject: [PATCH 146/146] feat(client): add mfa operations (#1049) --- .../client-password/src/client-password.ts | 3 +- packages/client/__tests__/accounts-client.ts | 55 ++++++ packages/client/src/accounts-client.ts | 28 ++- packages/client/src/transport-interface.ts | 14 +- packages/e2e/__tests__/password.ts | 13 +- packages/graphql-client/src/graphql-client.ts | 163 ++++++++++++++---- .../graphql-client/src/graphql-operations.ts | 141 +++++++++++++++ .../fragments/associationResult.graphql | 6 + .../fragments/challengeResult.graphql | 6 + .../accounts-mfa/mutations/associate.graphql | 5 + .../mutations/associateByMfaToken.graphql | 5 + .../accounts-mfa/mutations/challenge.graphql | 5 + .../queries/authenticators.graphql | 8 + .../queries/authenticatorsByMfaToken.graphql | 8 + ...e-user-fragment.ts => replace-fragment.ts} | 7 +- packages/rest-client/__tests__/rest-client.ts | 55 ++++++ packages/rest-client/src/rest-client.ts | 55 +++++- 17 files changed, 530 insertions(+), 47 deletions(-) create mode 100644 packages/graphql-client/src/graphql/accounts-mfa/fragments/associationResult.graphql create mode 100644 packages/graphql-client/src/graphql/accounts-mfa/fragments/challengeResult.graphql create mode 100644 packages/graphql-client/src/graphql/accounts-mfa/mutations/associate.graphql create mode 100644 packages/graphql-client/src/graphql/accounts-mfa/mutations/associateByMfaToken.graphql create mode 100644 packages/graphql-client/src/graphql/accounts-mfa/mutations/challenge.graphql create mode 100644 packages/graphql-client/src/graphql/accounts-mfa/queries/authenticators.graphql create mode 100644 packages/graphql-client/src/graphql/accounts-mfa/queries/authenticatorsByMfaToken.graphql rename packages/graphql-client/src/utils/{replace-user-fragment.ts => replace-fragment.ts} (61%) diff --git a/packages/client-password/src/client-password.ts b/packages/client-password/src/client-password.ts index 65a5d1232..980189fb9 100644 --- a/packages/client-password/src/client-password.ts +++ b/packages/client-password/src/client-password.ts @@ -4,6 +4,7 @@ import { CreateUserServicePassword, CreateUserResult, LoginUserPasswordService, + AuthenticationResult, } from '@accounts/types'; import { AccountsClientPasswordOptions } from './types'; @@ -39,7 +40,7 @@ export class AccountsClientPassword { /** * Log the user in with a password. */ - public async login(user: LoginUserPasswordService): Promise { + public async login(user: LoginUserPasswordService): Promise { const hashedPassword = this.hashPassword(user.password as string); return this.client.loginWithService('password', { ...user, diff --git a/packages/client/__tests__/accounts-client.ts b/packages/client/__tests__/accounts-client.ts index 4d9c8e587..2a998d222 100644 --- a/packages/client/__tests__/accounts-client.ts +++ b/packages/client/__tests__/accounts-client.ts @@ -30,6 +30,12 @@ const mockTransport = { verifyEmail: jest.fn(() => Promise.resolve()), sendVerificationEmail: jest.fn(() => Promise.resolve()), impersonate: jest.fn(() => Promise.resolve(impersonateResult)), + getUser: jest.fn(() => Promise.resolve()), + mfaChallenge: jest.fn(() => Promise.resolve()), + mfaAssociate: jest.fn(() => Promise.resolve()), + mfaAssociateByMfaToken: jest.fn(() => Promise.resolve()), + authenticators: jest.fn(() => Promise.resolve()), + authenticatorsByMfaToken: jest.fn(() => Promise.resolve()), }; describe('Accounts', () => { @@ -270,4 +276,53 @@ describe('Accounts', () => { expect(userTokens).toEqual(impersonateResult.tokens); }); }); + + describe('getUser', () => { + it('calls transport', async () => { + await accountsClient.getUser(); + expect(mockTransport.getUser).toHaveBeenCalledWith(); + }); + }); + + describe('mfaChallenge', () => { + it('calls transport', async () => { + await accountsClient.mfaChallenge('mfaTokenTest', 'authenticatorIdTest'); + expect(mockTransport.mfaChallenge).toHaveBeenCalledWith( + 'mfaTokenTest', + 'authenticatorIdTest' + ); + }); + }); + + describe('mfaAssociate', () => { + it('calls transport', async () => { + await accountsClient.mfaAssociate('typeTest'); + expect(mockTransport.mfaAssociate).toHaveBeenCalledWith('typeTest', undefined); + }); + }); + + describe('mfaAssociateByMfaToken', () => { + it('calls transport', async () => { + await accountsClient.mfaAssociateByMfaToken('mfaTokenTest', 'typeTest'); + expect(mockTransport.mfaAssociateByMfaToken).toHaveBeenCalledWith( + 'mfaTokenTest', + 'typeTest', + undefined + ); + }); + }); + + describe('authenticators', () => { + it('calls transport', async () => { + await accountsClient.authenticators(); + expect(mockTransport.authenticators).toHaveBeenCalledWith(); + }); + }); + + describe('authenticatorsByMfaToken', () => { + it('calls transport', async () => { + await accountsClient.authenticatorsByMfaToken('mfaTokenTest'); + expect(mockTransport.authenticatorsByMfaToken).toHaveBeenCalledWith('mfaTokenTest'); + }); + }); }); diff --git a/packages/client/src/accounts-client.ts b/packages/client/src/accounts-client.ts index 09a4b7a41..2db27f3c3 100644 --- a/packages/client/src/accounts-client.ts +++ b/packages/client/src/accounts-client.ts @@ -1,4 +1,4 @@ -import { LoginResult, Tokens, ImpersonationResult, User } from '@accounts/types'; +import { Tokens, ImpersonationResult, User, AuthenticationResult } from '@accounts/types'; import { TransportInterface } from './transport-interface'; import { TokenStorage, AccountsClientOptions } from './types'; import { tokenStorageLocal } from './token-storage-local'; @@ -102,9 +102,11 @@ export class AccountsClient { public async loginWithService( service: string, credentials: { [key: string]: any } - ): Promise { + ): Promise { const response = await this.transport.loginWithService(service, credentials); - await this.setTokens(response.tokens); + if ('tokens' in response) { + await this.setTokens(response.tokens); + } return response; } @@ -198,6 +200,26 @@ export class AccountsClient { await this.clearTokens(); } + public mfaChallenge(mfaToken: string, authenticatorId: string) { + return this.transport.mfaChallenge(mfaToken, authenticatorId); + } + + public mfaAssociate(type: string, params?: any) { + return this.transport.mfaAssociate(type, params); + } + + public mfaAssociateByMfaToken(mfaToken: string, type: string, params?: any) { + return this.transport.mfaAssociateByMfaToken(mfaToken, type, params); + } + + public authenticators() { + return this.transport.authenticators(); + } + + public authenticatorsByMfaToken(mfaToken: string) { + return this.transport.authenticatorsByMfaToken(mfaToken); + } + private getTokenKey(tokenName: TokenKey): string { return `${this.options.tokenStoragePrefix}:${tokenName}`; } diff --git a/packages/client/src/transport-interface.ts b/packages/client/src/transport-interface.ts index 5d1bb42fd..64cc06d49 100644 --- a/packages/client/src/transport-interface.ts +++ b/packages/client/src/transport-interface.ts @@ -5,10 +5,12 @@ import { CreateUser, User, CreateUserResult, + Authenticator, + AuthenticationResult, } from '@accounts/types'; import { AccountsClient } from './accounts-client'; -export interface TransportInterface { +export interface TransportInterface extends TransportMfaInterface { client: AccountsClient; createUser(user: CreateUser): Promise; authenticateWithService( @@ -22,7 +24,7 @@ export interface TransportInterface { authenticateParams: { [key: string]: string | object; } - ): Promise; + ): Promise; logout(): Promise; getUser(): Promise; refreshTokens(accessToken: string, refreshToken: string): Promise; @@ -34,3 +36,11 @@ export interface TransportInterface { changePassword(oldPassword: string, newPassword: string): Promise; impersonate(token: string, impersonated: ImpersonationUserIdentity): Promise; } + +interface TransportMfaInterface { + authenticators(): Promise; + authenticatorsByMfaToken(mfaToken?: string): Promise; + mfaAssociate(type: string, params?: any): Promise; + mfaAssociateByMfaToken(mfaToken: string, type: string, params?: any): Promise; + mfaChallenge(mfaToken: string, authenticatorId: string): Promise; +} diff --git a/packages/e2e/__tests__/password.ts b/packages/e2e/__tests__/password.ts index 2164de22c..afc46dab1 100644 --- a/packages/e2e/__tests__/password.ts +++ b/packages/e2e/__tests__/password.ts @@ -1,4 +1,5 @@ import { servers } from './servers'; +import { LoginResult } from '@accounts/types'; const user = { email: 'johnDoe@gmail.com', @@ -36,12 +37,12 @@ Object.keys(servers).forEach((key) => { }); it('should login the user and get the session', async () => { - const loginResult = await server.accountsClientPassword.login({ + const loginResult = (await server.accountsClientPassword.login({ user: { email: user.email, }, password: user.password, - }); + })) as LoginResult; expect(loginResult.sessionId).toBeTruthy(); expect(loginResult.tokens.accessToken).toBeTruthy(); expect(loginResult.tokens.refreshToken).toBeTruthy(); @@ -91,12 +92,12 @@ Object.keys(servers).forEach((key) => { user.password = newPassword; expect(data).toBeNull(); - const loginResult = await server.accountsClientPassword.login({ + const loginResult = (await server.accountsClientPassword.login({ user: { email: user.email, }, password: user.password, - }); + })) as LoginResult; expect(loginResult.sessionId).toBeTruthy(); expect(loginResult.tokens.accessToken).toBeTruthy(); expect(loginResult.tokens.refreshToken).toBeTruthy(); @@ -116,12 +117,12 @@ Object.keys(servers).forEach((key) => { user.password = newPassword; expect(data).toBeNull(); - const loginResult = await server.accountsClientPassword.login({ + const loginResult = (await server.accountsClientPassword.login({ user: { email: user.email, }, password: user.password, - }); + })) as LoginResult; expect(loginResult.sessionId).toBeTruthy(); expect(loginResult.tokens.accessToken).toBeTruthy(); expect(loginResult.tokens.refreshToken).toBeTruthy(); diff --git a/packages/graphql-client/src/graphql-client.ts b/packages/graphql-client/src/graphql-client.ts index d0b6a6793..a552a2cc9 100644 --- a/packages/graphql-client/src/graphql-client.ts +++ b/packages/graphql-client/src/graphql-client.ts @@ -5,6 +5,7 @@ import { LoginResult, User, CreateUserResult, + Authenticator, } from '@accounts/types'; import { print, DocumentNode } from 'graphql/language'; import { TypedDocumentNode } from '@graphql-typed-document-node/core'; @@ -25,9 +26,14 @@ import { GetUserDocument, ImpersonateDocument, AuthenticateDocument, + ChallengeDocument, + AuthenticatorsDocument, + AuthenticatorsByMfaTokenDocument, + AssociateDocument, + AssociateByMfaTokenDocument, } from './graphql-operations'; import { GraphQLErrorList } from './GraphQLErrorList'; -import { replaceUserFieldsFragment } from './utils/replace-user-fragment'; +import { replaceFragment } from './utils/replace-fragment'; export interface AuthenticateParams { [key: string]: string | object; @@ -35,15 +41,83 @@ export interface AuthenticateParams { export interface OptionsType { graphQLClient: any; + /** + * Change the default user fragment. + * Default to: + * ```graphql + * fragment userFields on User { + * id + * emails { + * address + * verified + * } + * username + * } + * ``` + */ userFieldsFragment?: DocumentNode; + /** + * Change the challenge result fragment. + * Default to: + * ```graphql + * fragment challengeResult on ChallengeResult { + * ... on DefaultChallengeResult { + * mfaToken + * authenticatorId + * } + * } + * ``` + */ + challengeResultFragment?: DocumentNode; + /** + * Change the association result fragment. + * Default to: + * ```graphql + * fragment associationResult on AssociationResult { + * ... on OTPAssociationResult { + * mfaToken + * authenticatorId + * } + * } + * ``` + */ + associationResultFragment?: DocumentNode; } export default class GraphQLClient implements TransportInterface { public client!: AccountsClient; private options: OptionsType; + private operationsWithFragments: { + AuthenticateDocument: DocumentNode; + CreateUserDocument: DocumentNode; + ImpersonateDocument: DocumentNode; + AssociateDocument: DocumentNode; + AssociateByMfaTokenDocument: DocumentNode; + ChallengeDocument: DocumentNode; + }; constructor(options: OptionsType) { this.options = options; + this.operationsWithFragments = { + AuthenticateDocument: this.options.userFieldsFragment + ? replaceFragment(AuthenticateDocument, this.options.userFieldsFragment) + : AuthenticateDocument, + CreateUserDocument: this.options.userFieldsFragment + ? replaceFragment(CreateUserDocument, this.options.userFieldsFragment) + : CreateUserDocument, + ImpersonateDocument: this.options.userFieldsFragment + ? replaceFragment(ImpersonateDocument, this.options.userFieldsFragment) + : ImpersonateDocument, + AssociateDocument: this.options.associationResultFragment + ? replaceFragment(AssociateDocument, this.options.associationResultFragment) + : AssociateDocument, + AssociateByMfaTokenDocument: this.options.associationResultFragment + ? replaceFragment(AssociateByMfaTokenDocument, this.options.associationResultFragment) + : AssociateByMfaTokenDocument, + ChallengeDocument: this.options.challengeResultFragment + ? replaceFragment(ChallengeDocument, this.options.challengeResultFragment) + : ChallengeDocument, + }; } /** @@ -54,13 +128,7 @@ export default class GraphQLClient implements TransportInterface { * @memberof GraphQLClient */ public async createUser(user: CreateUser): Promise { - return this.mutate( - this.options.userFieldsFragment - ? replaceUserFieldsFragment(CreateUserDocument, this.options.userFieldsFragment) - : CreateUserDocument, - 'createUser', - { user } - ); + return this.mutate(this.operationsWithFragments.CreateUserDocument, 'createUser', { user }); } /** @@ -83,16 +151,10 @@ export default class GraphQLClient implements TransportInterface { service: string, authenticateParams: AuthenticateParams ): Promise { - return this.mutate( - this.options.userFieldsFragment - ? replaceUserFieldsFragment(AuthenticateDocument, this.options.userFieldsFragment) - : AuthenticateDocument, - 'authenticate', - { - serviceName: service, - params: authenticateParams, - } - ); + return this.mutate(this.operationsWithFragments.AuthenticateDocument, 'authenticate', { + serviceName: service, + params: authenticateParams, + }); } /** @@ -101,7 +163,7 @@ export default class GraphQLClient implements TransportInterface { public async getUser(): Promise { return this.query( this.options.userFieldsFragment - ? replaceUserFieldsFragment(GetUserDocument, this.options.userFieldsFragment) + ? replaceFragment(GetUserDocument, this.options.userFieldsFragment) : GetUserDocument, 'getUser' ); @@ -195,22 +257,65 @@ export default class GraphQLClient implements TransportInterface { email?: string; } ): Promise { + return this.mutate(this.operationsWithFragments.ImpersonateDocument, 'impersonate', { + accessToken: token, + impersonated: { + userId: impersonated.userId, + username: impersonated.username, + email: impersonated.email, + }, + }); + } + + /** + * @inheritDoc + */ + public async mfaAssociate(type: string, params?: any): Promise { + return this.mutate(this.operationsWithFragments.AssociateDocument, 'associate', { + type, + params, + }); + } + + /** + * @inheritDoc + */ + public async mfaAssociateByMfaToken(mfaToken: string, type: string, params?: any): Promise { return this.mutate( - this.options.userFieldsFragment - ? replaceUserFieldsFragment(ImpersonateDocument, this.options.userFieldsFragment) - : ImpersonateDocument, - 'impersonate', + this.operationsWithFragments.AssociateByMfaTokenDocument, + 'associateByMfaToken', { - accessToken: token, - impersonated: { - userId: impersonated.userId, - username: impersonated.username, - email: impersonated.email, - }, + mfaToken, + type, + params, } ); } + /** + * @inheritDoc + */ + public async authenticators(): Promise { + return this.query(AuthenticatorsDocument, 'authenticators'); + } + + /** + * @inheritDoc + */ + public async authenticatorsByMfaToken(mfaToken?: string): Promise { + return this.query(AuthenticatorsByMfaTokenDocument, 'authenticatorsByMfaToken', { mfaToken }); + } + + /** + * @inheritDoc + */ + public async mfaChallenge(mfaToken: string, authenticatorId: string): Promise { + return this.mutate(this.operationsWithFragments.ChallengeDocument, 'challenge', { + mfaToken, + authenticatorId, + }); + } + private async mutate>( mutation: TypedDocumentNode, resultField: any, diff --git a/packages/graphql-client/src/graphql-operations.ts b/packages/graphql-client/src/graphql-operations.ts index e5adac851..b05fe9e7c 100644 --- a/packages/graphql-client/src/graphql-operations.ts +++ b/packages/graphql-client/src/graphql-operations.ts @@ -12,6 +12,12 @@ export type Scalars = { Float: number; }; +export type AssociateParamsInput = { + _?: Maybe; +}; + +export type AssociationResult = OtpAssociationResult; + export type AuthenticateParamsInput = { access_token?: Maybe; access_token_secret?: Maybe; @@ -23,6 +29,16 @@ export type AuthenticateParamsInput = { export type AuthenticationResult = LoginResult | MultiFactorResult; +export type Authenticator = { + __typename?: 'Authenticator'; + id?: Maybe; + type?: Maybe; + active?: Maybe; + activatedAt?: Maybe; +}; + +export type ChallengeResult = DefaultChallengeResult; + export type CreateUserInput = { username?: Maybe; email?: Maybe; @@ -35,6 +51,12 @@ export type CreateUserResult = { loginResult?: Maybe; }; +export type DefaultChallengeResult = { + __typename?: 'DefaultChallengeResult'; + mfaToken?: Maybe; + authenticatorId?: Maybe; +}; + export type EmailRecord = { __typename?: 'EmailRecord'; address?: Maybe; @@ -77,6 +99,9 @@ export type Mutation = { changePassword?: Maybe; twoFactorSet?: Maybe; twoFactorUnset?: Maybe; + challenge?: Maybe; + associate?: Maybe; + associateByMfaToken?: Maybe; impersonate?: Maybe; refreshTokens?: Maybe; logout?: Maybe; @@ -133,6 +158,25 @@ export type MutationTwoFactorUnsetArgs = { }; +export type MutationChallengeArgs = { + mfaToken: Scalars['String']; + authenticatorId: Scalars['String']; +}; + + +export type MutationAssociateArgs = { + type: Scalars['String']; + params?: Maybe; +}; + + +export type MutationAssociateByMfaTokenArgs = { + mfaToken: Scalars['String']; + type: Scalars['String']; + params?: Maybe; +}; + + export type MutationImpersonateArgs = { accessToken: Scalars['String']; impersonated: ImpersonationUserIdentityInput; @@ -156,12 +200,25 @@ export type MutationVerifyAuthenticationArgs = { params: AuthenticateParamsInput; }; +export type OtpAssociationResult = { + __typename?: 'OTPAssociationResult'; + mfaToken?: Maybe; + authenticatorId?: Maybe; +}; + export type Query = { __typename?: 'Query'; twoFactorSecret?: Maybe; + authenticators?: Maybe>>; + authenticatorsByMfaToken?: Maybe>>; getUser?: Maybe; }; + +export type QueryAuthenticatorsByMfaTokenArgs = { + mfaToken: Scalars['String']; +}; + export type Tokens = { __typename?: 'Tokens'; refreshToken?: Maybe; @@ -204,6 +261,83 @@ export type UserInput = { username?: Maybe; }; +export type AssociationResultFragment = ( + { __typename?: 'OTPAssociationResult' } + & Pick +); + +export type ChallengeResultFragment = ( + { __typename?: 'DefaultChallengeResult' } + & Pick +); + +export type AssociateMutationVariables = Exact<{ + type: Scalars['String']; + params?: Maybe; +}>; + + +export type AssociateMutation = ( + { __typename?: 'Mutation' } + & { associate?: Maybe<( + { __typename?: 'OTPAssociationResult' } + & AssociationResultFragment + )> } +); + +export type AssociateByMfaTokenMutationVariables = Exact<{ + mfaToken: Scalars['String']; + type: Scalars['String']; + params?: Maybe; +}>; + + +export type AssociateByMfaTokenMutation = ( + { __typename?: 'Mutation' } + & { associateByMfaToken?: Maybe<( + { __typename?: 'OTPAssociationResult' } + & AssociationResultFragment + )> } +); + +export type ChallengeMutationVariables = Exact<{ + mfaToken: Scalars['String']; + authenticatorId: Scalars['String']; +}>; + + +export type ChallengeMutation = ( + { __typename?: 'Mutation' } + & { challenge?: Maybe<( + { __typename?: 'DefaultChallengeResult' } + & ChallengeResultFragment + )> } +); + +export type AuthenticatorsQueryVariables = Exact<{ [key: string]: never; }>; + + +export type AuthenticatorsQuery = ( + { __typename?: 'Query' } + & { authenticators?: Maybe + )>>> } +); + +export type AuthenticatorsByMfaTokenQueryVariables = Exact<{ + mfaToken: Scalars['String']; +}>; + + +export type AuthenticatorsByMfaTokenQuery = ( + { __typename?: 'Query' } + & { authenticatorsByMfaToken?: Maybe + )>>> } +); + export type UserFieldsFragment = ( { __typename?: 'User' } & Pick @@ -428,7 +562,14 @@ export type GetUserQuery = ( )> } ); +export const AssociationResultFragmentDoc: DocumentNode = {"kind":"Document","definitions":[{"kind":"FragmentDefinition","name":{"kind":"Name","value":"associationResult"},"typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"AssociationResult"}},"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"OTPAssociationResult"}},"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"mfaToken"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"authenticatorId"},"arguments":[],"directives":[]}]}}]}}]}; +export const ChallengeResultFragmentDoc: DocumentNode = {"kind":"Document","definitions":[{"kind":"FragmentDefinition","name":{"kind":"Name","value":"challengeResult"},"typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"ChallengeResult"}},"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"InlineFragment","typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"DefaultChallengeResult"}},"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"mfaToken"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"authenticatorId"},"arguments":[],"directives":[]}]}}]}}]}; export const UserFieldsFragmentDoc: DocumentNode = {"kind":"Document","definitions":[{"kind":"FragmentDefinition","name":{"kind":"Name","value":"userFields"},"typeCondition":{"kind":"NamedType","name":{"kind":"Name","value":"User"}},"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"emails"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"address"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"verified"},"arguments":[],"directives":[]}]}},{"kind":"Field","name":{"kind":"Name","value":"username"},"arguments":[],"directives":[]}]}}]}; +export const AssociateDocument: DocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"associate"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"type"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"params"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"AssociateParamsInput"}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"associate"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"type"},"value":{"kind":"Variable","name":{"kind":"Name","value":"type"}}},{"kind":"Argument","name":{"kind":"Name","value":"params"},"value":{"kind":"Variable","name":{"kind":"Name","value":"params"}}}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"FragmentSpread","name":{"kind":"Name","value":"associationResult"},"directives":[]}]}}]}},...AssociationResultFragmentDoc.definitions]}; +export const AssociateByMfaTokenDocument: DocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"associateByMfaToken"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"mfaToken"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"type"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"params"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"AssociateParamsInput"}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"associateByMfaToken"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"mfaToken"},"value":{"kind":"Variable","name":{"kind":"Name","value":"mfaToken"}}},{"kind":"Argument","name":{"kind":"Name","value":"type"},"value":{"kind":"Variable","name":{"kind":"Name","value":"type"}}},{"kind":"Argument","name":{"kind":"Name","value":"params"},"value":{"kind":"Variable","name":{"kind":"Name","value":"params"}}}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"FragmentSpread","name":{"kind":"Name","value":"associationResult"},"directives":[]}]}}]}},...AssociationResultFragmentDoc.definitions]}; +export const ChallengeDocument: DocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"challenge"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"mfaToken"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"authenticatorId"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"challenge"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"mfaToken"},"value":{"kind":"Variable","name":{"kind":"Name","value":"mfaToken"}}},{"kind":"Argument","name":{"kind":"Name","value":"authenticatorId"},"value":{"kind":"Variable","name":{"kind":"Name","value":"authenticatorId"}}}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"FragmentSpread","name":{"kind":"Name","value":"challengeResult"},"directives":[]}]}}]}},...ChallengeResultFragmentDoc.definitions]}; +export const AuthenticatorsDocument: DocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"authenticators"},"variableDefinitions":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"authenticators"},"arguments":[],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"type"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"active"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"activatedAt"},"arguments":[],"directives":[]}]}}]}}]}; +export const AuthenticatorsByMfaTokenDocument: DocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"authenticatorsByMfaToken"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"mfaToken"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"authenticatorsByMfaToken"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"mfaToken"},"value":{"kind":"Variable","name":{"kind":"Name","value":"mfaToken"}}}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"type"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"active"},"arguments":[],"directives":[]},{"kind":"Field","name":{"kind":"Name","value":"activatedAt"},"arguments":[],"directives":[]}]}}]}}]}; export const AddEmailDocument: DocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"addEmail"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"newEmail"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"addEmail"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"newEmail"},"value":{"kind":"Variable","name":{"kind":"Name","value":"newEmail"}}}],"directives":[]}]}}]}; export const AuthenticateWithServiceDocument: DocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"authenticateWithService"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"serviceName"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"params"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"AuthenticateParamsInput"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"verifyAuthentication"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"serviceName"},"value":{"kind":"Variable","name":{"kind":"Name","value":"serviceName"}}},{"kind":"Argument","name":{"kind":"Name","value":"params"},"value":{"kind":"Variable","name":{"kind":"Name","value":"params"}}}],"directives":[]}]}}]}; export const ChangePasswordDocument: DocumentNode = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"changePassword"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"oldPassword"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"newPassword"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},"directives":[]}],"directives":[],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"changePassword"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"oldPassword"},"value":{"kind":"Variable","name":{"kind":"Name","value":"oldPassword"}}},{"kind":"Argument","name":{"kind":"Name","value":"newPassword"},"value":{"kind":"Variable","name":{"kind":"Name","value":"newPassword"}}}],"directives":[]}]}}]}; diff --git a/packages/graphql-client/src/graphql/accounts-mfa/fragments/associationResult.graphql b/packages/graphql-client/src/graphql/accounts-mfa/fragments/associationResult.graphql new file mode 100644 index 000000000..21cae50c7 --- /dev/null +++ b/packages/graphql-client/src/graphql/accounts-mfa/fragments/associationResult.graphql @@ -0,0 +1,6 @@ +fragment associationResult on AssociationResult { + ... on OTPAssociationResult { + mfaToken + authenticatorId + } +} diff --git a/packages/graphql-client/src/graphql/accounts-mfa/fragments/challengeResult.graphql b/packages/graphql-client/src/graphql/accounts-mfa/fragments/challengeResult.graphql new file mode 100644 index 000000000..afc70d9a5 --- /dev/null +++ b/packages/graphql-client/src/graphql/accounts-mfa/fragments/challengeResult.graphql @@ -0,0 +1,6 @@ +fragment challengeResult on ChallengeResult { + ... on DefaultChallengeResult { + mfaToken + authenticatorId + } +} diff --git a/packages/graphql-client/src/graphql/accounts-mfa/mutations/associate.graphql b/packages/graphql-client/src/graphql/accounts-mfa/mutations/associate.graphql new file mode 100644 index 000000000..4d19a9f73 --- /dev/null +++ b/packages/graphql-client/src/graphql/accounts-mfa/mutations/associate.graphql @@ -0,0 +1,5 @@ +mutation associate($type: String!, $params: AssociateParamsInput) { + associate(type: $type, params: $params) { + ...associationResult + } +} diff --git a/packages/graphql-client/src/graphql/accounts-mfa/mutations/associateByMfaToken.graphql b/packages/graphql-client/src/graphql/accounts-mfa/mutations/associateByMfaToken.graphql new file mode 100644 index 000000000..ca3b1be7c --- /dev/null +++ b/packages/graphql-client/src/graphql/accounts-mfa/mutations/associateByMfaToken.graphql @@ -0,0 +1,5 @@ +mutation associateByMfaToken($mfaToken: String!, $type: String!, $params: AssociateParamsInput) { + associateByMfaToken(mfaToken: $mfaToken, type: $type, params: $params) { + ...associationResult + } +} diff --git a/packages/graphql-client/src/graphql/accounts-mfa/mutations/challenge.graphql b/packages/graphql-client/src/graphql/accounts-mfa/mutations/challenge.graphql new file mode 100644 index 000000000..73c578907 --- /dev/null +++ b/packages/graphql-client/src/graphql/accounts-mfa/mutations/challenge.graphql @@ -0,0 +1,5 @@ +mutation challenge($mfaToken: String!, $authenticatorId: String!) { + challenge(mfaToken: $mfaToken, authenticatorId: $authenticatorId) { + ...challengeResult + } +} diff --git a/packages/graphql-client/src/graphql/accounts-mfa/queries/authenticators.graphql b/packages/graphql-client/src/graphql/accounts-mfa/queries/authenticators.graphql new file mode 100644 index 000000000..2bc3b9eca --- /dev/null +++ b/packages/graphql-client/src/graphql/accounts-mfa/queries/authenticators.graphql @@ -0,0 +1,8 @@ +query authenticators { + authenticators { + id + type + active + activatedAt + } +} diff --git a/packages/graphql-client/src/graphql/accounts-mfa/queries/authenticatorsByMfaToken.graphql b/packages/graphql-client/src/graphql/accounts-mfa/queries/authenticatorsByMfaToken.graphql new file mode 100644 index 000000000..d8f3e3f8c --- /dev/null +++ b/packages/graphql-client/src/graphql/accounts-mfa/queries/authenticatorsByMfaToken.graphql @@ -0,0 +1,8 @@ +query authenticatorsByMfaToken($mfaToken: String!) { + authenticatorsByMfaToken(mfaToken: $mfaToken) { + id + type + active + activatedAt + } +} diff --git a/packages/graphql-client/src/utils/replace-user-fragment.ts b/packages/graphql-client/src/utils/replace-fragment.ts similarity index 61% rename from packages/graphql-client/src/utils/replace-user-fragment.ts rename to packages/graphql-client/src/utils/replace-fragment.ts index be7d06d5b..c4fe9b315 100644 --- a/packages/graphql-client/src/utils/replace-user-fragment.ts +++ b/packages/graphql-client/src/utils/replace-fragment.ts @@ -2,13 +2,10 @@ import { DocumentNode } from 'graphql'; /** * Utility function used to modify the current query Document. - * We remove the existing the user fragment and add the one provided by the user. + * We remove the existing fragment and add the one provided by the user. * Graphql-codegen add the fragment as the end of the definition array. */ -export const replaceUserFieldsFragment = ( - document: DocumentNode, - userFieldsFragment: DocumentNode -) => { +export const replaceFragment = (document: DocumentNode, userFieldsFragment: DocumentNode) => { return { ...document, definitions: [...document.definitions.slice(0, -1), ...userFieldsFragment.definitions], diff --git a/packages/rest-client/__tests__/rest-client.ts b/packages/rest-client/__tests__/rest-client.ts index 0766e15b2..98fe0a757 100644 --- a/packages/rest-client/__tests__/rest-client.ts +++ b/packages/rest-client/__tests__/rest-client.ts @@ -256,4 +256,59 @@ describe('RestClient', () => { ) )); }); + + describe('mfaChallenge', () => { + it('should call fetch with mfaChallenge path', () => + restClient + .mfaChallenge('mfaToken', 'authenticatorId') + .then(() => + expect((window.fetch as jest.Mock).mock.calls[0][0]).toBe( + 'http://localhost:3000/accounts/mfa/challenge' + ) + )); + }); + + describe('mfaAssociate', () => { + it('should call fetch with mfaAssociate path', () => + restClient + .mfaAssociate('type') + .then(() => + expect((window.fetch as jest.Mock).mock.calls[0][0]).toBe( + 'http://localhost:3000/accounts/mfa/associate' + ) + )); + }); + + describe('mfaAssociateByMfaToken', () => { + it('should call fetch with mfaAssociate path', () => + restClient + .mfaAssociateByMfaToken('mfaToken', 'type') + .then(() => + expect((window.fetch as jest.Mock).mock.calls[0][0]).toBe( + 'http://localhost:3000/accounts/mfa/associateByMfaToken' + ) + )); + }); + + describe('authenticators', () => { + it('should call fetch with authenticators path', () => + restClient + .authenticators() + .then(() => + expect((window.fetch as jest.Mock).mock.calls[0][0]).toBe( + 'http://localhost:3000/accounts/mfa/authenticators' + ) + )); + }); + + describe('authenticatorsByMfaToken', () => { + it('should call fetch with authenticatorsByMfaToken path', () => + restClient + .authenticatorsByMfaToken('mfaToken') + .then(() => + expect((window.fetch as jest.Mock).mock.calls[0][0]).toBe( + 'http://localhost:3000/accounts/mfa/authenticatorsByMfaToken?mfaToken=mfaToken' + ) + )); + }); }); diff --git a/packages/rest-client/src/rest-client.ts b/packages/rest-client/src/rest-client.ts index 27a98c24e..5b9f52593 100644 --- a/packages/rest-client/src/rest-client.ts +++ b/packages/rest-client/src/rest-client.ts @@ -7,6 +7,7 @@ import { ImpersonationUserIdentity, ImpersonationResult, CreateUserResult, + AuthenticationResult, } from '@accounts/types'; import { AccountsJsError } from './accounts-error'; @@ -79,7 +80,7 @@ export class RestClient implements TransportInterface { provider: string, data: any, customHeaders?: object - ): Promise { + ): Promise { const args = { method: 'POST', body: JSON.stringify({ @@ -213,6 +214,9 @@ export class RestClient implements TransportInterface { return this.authFetch('password/changePassword', args, customHeaders); } + /** + * @deprecated + */ public getTwoFactorSecret(customHeaders?: object): Promise { const args = { method: 'POST', @@ -220,6 +224,9 @@ export class RestClient implements TransportInterface { return this.fetch('password/twoFactorSecret', args, customHeaders); } + /** + * @deprecated + */ public twoFactorSet(secret: any, code: string, customHeaders?: object): Promise { const args = { method: 'POST', @@ -231,6 +238,9 @@ export class RestClient implements TransportInterface { return this.authFetch('password/twoFactorSet', args, customHeaders); } + /** + * @deprecated + */ public twoFactorUnset(code: string, customHeaders?: object): Promise { const args = { method: 'POST', @@ -241,6 +251,49 @@ export class RestClient implements TransportInterface { return this.authFetch('password/twoFactorUnset', args, customHeaders); } + public async mfaChallenge(mfaToken: string, authenticatorId: string, customHeaders?: object) { + const args = { + method: 'POST', + body: JSON.stringify({ mfaToken, authenticatorId }), + }; + return this.fetch(`mfa/challenge`, args, customHeaders); + } + + public async mfaAssociate(type: string, params?: any, customHeaders?: object) { + const args = { + method: 'POST', + body: JSON.stringify({ type, params }), + }; + return this.authFetch(`mfa/associate`, args, customHeaders); + } + + public async mfaAssociateByMfaToken( + mfaToken: string, + type: string, + params?: any, + customHeaders?: object + ) { + const args = { + method: 'POST', + body: JSON.stringify({ mfaToken, type, params }), + }; + return this.fetch(`mfa/associateByMfaToken`, args, customHeaders); + } + + public async authenticators(customHeaders?: object) { + const args = { + method: 'GET', + }; + return this.authFetch('mfa/authenticators', args, customHeaders); + } + + public async authenticatorsByMfaToken(mfaToken: string, customHeaders?: object) { + const args = { + method: 'GET', + }; + return this.fetch(`mfa/authenticatorsByMfaToken?mfaToken=${mfaToken}`, args, customHeaders); + } + private _loadHeadersObject(plainHeaders: object): { [key: string]: string } { if (isPlainObject(plainHeaders)) { const customHeaders = headers;